Add testcase for legalizing ISD::CTTZ efficiently. On PPC, ctlz(int) is

now codegen'd as this:

        addi r2, r3, -1
        andc r2, r2, r3
        cntlzw r2, r2
        subfic r3, r2, 32
        blr


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21881 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Nate Begeman 2005-05-11 23:45:54 +00:00
parent d7c4a4a6c0
commit e066d68eb4

View File

@ -0,0 +1,12 @@
; Make sure this testcase does not use ctpop
; RUN: llvm-as < %s | llc -march=ppc32 | grep -i 'cntlzw'
declare int %llvm.cttz(int)
implementation ; Functions:
int %bar(int %x) {
entry:
%tmp.1 = call int %llvm.cttz( int %x )
ret int %tmp.1
}