mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-13 06:38:44 +00:00
cfdbb7caa8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26387 91177308-0d34-0410-b5e6-96231b3b80d8
19 lines
468 B
LLVM
19 lines
468 B
LLVM
; 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
|
|
}
|
|
|