blob: ae1f57d07d29abc77a378c43231b40a1fb52cd34 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
; RUN: llvm-upgrade < %s | llvm-as | llc -march=ppc32 &&
; RUN: llvm-upgrade < %s | llvm-as | 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
}
|