mirror of
https://github.com/RPCS3/llvm.git
synced 2025-01-01 01:14:12 +00:00
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25876 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
750ac1bdfa
commit
5a7efc9d4f
@ -435,3 +435,32 @@ This could be done in the dag combiner, by swapping a BR_CC when a SETCC of the
|
||||
same operands (but backwards) exists. In this case, this wouldn't save us
|
||||
anything though, because the compares still wouldn't be shared.
|
||||
|
||||
===-------------------------------------------------------------------------===
|
||||
|
||||
The legalizer should lower this:
|
||||
|
||||
bool %test(ulong %x) {
|
||||
%tmp = setlt ulong %x, 4294967296
|
||||
ret bool %tmp
|
||||
}
|
||||
|
||||
into "if x.high == 0", not:
|
||||
|
||||
_test:
|
||||
addi r2, r3, -1
|
||||
cntlzw r2, r2
|
||||
cntlzw r3, r3
|
||||
srwi r2, r2, 5
|
||||
srwi r3, r3, 5
|
||||
li r4, 0
|
||||
cmpwi cr0, r2, 0
|
||||
bne cr0, LBB1_2 ;
|
||||
LBB1_1:
|
||||
or r4, r3, r3
|
||||
LBB1_2:
|
||||
cmplw cr7, r4, r3
|
||||
mfcr r2, 1
|
||||
rlwinm r3, r2, 29, 31, 31
|
||||
blr
|
||||
|
||||
noticed in 2005-05-11-Popcount-ffs-fls.c.
|
||||
|
Loading…
Reference in New Issue
Block a user