llvm.org GIT mirror llvm / 07fc173
include the other bit count intrinsics git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21863 91177308-0d34-0410-b5e6-96231b3b80d8 Chris Lattner 15 years ago
1 changed file(s) with 38 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
1818 store long %d, long* %DP
1919 ret void
2020 }
21
22 declare long %llvm.ctlz(long)
23 declare int %llvm.ctlz(int)
24 declare short %llvm.ctlz(short)
25 declare sbyte %llvm.ctlz(sbyte)
26
27 void %ctlztest(sbyte %A, short %B, int %C, long %D,
28 sbyte *%AP, short* %BP, int* %CP, long* %DP) {
29 %a = call sbyte %llvm.ctlz(sbyte %A)
30 %b = call short %llvm.ctlz(short %B)
31 %c = call int %llvm.ctlz(int %C)
32 %d = call long %llvm.ctlz(long %D)
33
34 store sbyte %a, sbyte* %AP
35 store short %b, short* %BP
36 store int %c, int* %CP
37 store long %d, long* %DP
38 ret void
39 }
40
41 declare long %llvm.cttz(long)
42 declare int %llvm.cttz(int)
43 declare short %llvm.cttz(short)
44 declare sbyte %llvm.cttz(sbyte)
45
46 void %cttztest(sbyte %A, short %B, int %C, long %D,
47 sbyte *%AP, short* %BP, int* %CP, long* %DP) {
48 %a = call sbyte %llvm.cttz(sbyte %A)
49 %b = call short %llvm.cttz(short %B)
50 %c = call int %llvm.cttz(int %C)
51 %d = call long %llvm.cttz(long %D)
52
53 store sbyte %a, sbyte* %AP
54 store short %b, short* %BP
55 store int %c, int* %CP
56 store long %d, long* %DP
57 ret void
58 }