llvm/test/CodeGen/PowerPC/and-elim.ll

19 lines
468 B
LLVM
Raw Normal View History

; RUN: llvm-as < %s | llc -march=ppc32 &&
; RUN: llvm-as < %s | llc -march=ppc32 | not grep rlwin
void %test(ubyte* %P) {
%W = load ubyte* %P
%X = shl ubyte %W, ubyte 1
%Y = add ubyte %X, 2
%Z = and ubyte %Y, 254 ; dead and
store ubyte %Z, ubyte* %P
ret void
}
ushort %test2(ushort %crc) { ; No and's should be needed for the ushorts here.
%tmp.1 = shr ushort %crc, ubyte 1
%tmp.7 = xor ushort %tmp.1, 40961
ret ushort %tmp.7
}