diff options
author | Chris Lattner <sabre@nondot.org> | 2005-05-11 05:31:01 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2005-05-11 05:31:01 +0000 |
commit | 07fc17371b11a17e9a6a2f54b729adfafa3c932f (patch) | |
tree | 6b5ed22800b53e0bc1b1914c40e572457c973e81 | |
parent | 18aa680a96c49cf9e28b52f5ab3f2c4f98793636 (diff) |
include the other bit count intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21863 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | test/CodeGen/Generic/llvm-ct-intrinsics.ll | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/test/CodeGen/Generic/llvm-ct-intrinsics.ll b/test/CodeGen/Generic/llvm-ct-intrinsics.ll index b5c9e6feba..2095ca3584 100644 --- a/test/CodeGen/Generic/llvm-ct-intrinsics.ll +++ b/test/CodeGen/Generic/llvm-ct-intrinsics.ll @@ -19,3 +19,41 @@ void %ctpoptest(sbyte %A, short %B, int %C, long %D, store long %d, long* %DP ret void } + +declare long %llvm.ctlz(long) +declare int %llvm.ctlz(int) +declare short %llvm.ctlz(short) +declare sbyte %llvm.ctlz(sbyte) + +void %ctlztest(sbyte %A, short %B, int %C, long %D, + sbyte *%AP, short* %BP, int* %CP, long* %DP) { + %a = call sbyte %llvm.ctlz(sbyte %A) + %b = call short %llvm.ctlz(short %B) + %c = call int %llvm.ctlz(int %C) + %d = call long %llvm.ctlz(long %D) + + store sbyte %a, sbyte* %AP + store short %b, short* %BP + store int %c, int* %CP + store long %d, long* %DP + ret void +} + +declare long %llvm.cttz(long) +declare int %llvm.cttz(int) +declare short %llvm.cttz(short) +declare sbyte %llvm.cttz(sbyte) + +void %cttztest(sbyte %A, short %B, int %C, long %D, + sbyte *%AP, short* %BP, int* %CP, long* %DP) { + %a = call sbyte %llvm.cttz(sbyte %A) + %b = call short %llvm.cttz(short %B) + %c = call int %llvm.cttz(int %C) + %d = call long %llvm.cttz(long %D) + + store sbyte %a, sbyte* %AP + store short %b, short* %BP + store int %c, int* %CP + store long %d, long* %DP + ret void +} |