; RUN: llvm-as < %s | llc -march=ppc32 | not grep 'extsh\|rlwinm' int %test1(short %X) { %Y = cast short %X to int ;; dead ret int %Y } int %test2(ushort %X) { %Y = cast ushort %X to int %Z = and int %Y, 65535 ;; dead ret int %Z } void %test3() { %tmp.0 = call short %foo() ;; no extsh! %tmp.1 = setlt short %tmp.0, 1234 br bool %tmp.1, label %then, label %UnifiedReturnBlock then: call int %test1(short 0) ret void UnifiedReturnBlock: ret void } declare short %foo()