diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2005-05-15 21:26:59 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2005-05-15 21:26:59 +0000 |
commit | 9b1749b1f49453c91395c753c27f60cadb23bb76 (patch) | |
tree | 967ef865958a647b174b4ef32cc6fd8501efeaf2 | |
parent | f74eb3fa2a0761054277664a9eecb61e93ee614a (diff) | |
download | llvm-9b1749b1f49453c91395c753c27f60cadb23bb76.tar.gz llvm-9b1749b1f49453c91395c753c27f60cadb23bb76.tar.bz2 llvm-9b1749b1f49453c91395c753c27f60cadb23bb76.tar.xz |
Add a case with non-constant argument for testing the transform:
ffs(x) -> (x == 0 ? 0 : llvm.cttz(0)+1)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22069 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | test/Transforms/SimplifyLibCalls/FFS.ll | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/test/Transforms/SimplifyLibCalls/FFS.ll b/test/Transforms/SimplifyLibCalls/FFS.ll index 35b5d3fb6c..4981d13b6d 100644 --- a/test/Transforms/SimplifyLibCalls/FFS.ll +++ b/test/Transforms/SimplifyLibCalls/FFS.ll @@ -4,12 +4,17 @@ declare int %ffs(int) declare int %ffsl(int) declare int %ffsll(long) +declare int %__builtin_ffs(int) + +%non_const = external global int implementation ; Functions: int %main () { + %arg = load int* %non_const + %val0 = call int %ffs(int %arg) %val1 = call int %ffs(int 1) - %val2 = call int %ffs(int 2048) + %val2 = call int %__builtin_ffs(int 2048) %val3 = call int %ffsl(int 65536) %val4 = call int %ffsll(long 1024) %val5 = call int %ffsll(long 17179869184) @@ -19,5 +24,6 @@ int %main () { %rslt3 = add int %val5, %val6 %rslt4 = add int %rslt1, %rslt2 %rslt5 = add int %rslt4, %rslt3 + %rslt6 = add int %rslt5, %val0 ret int %rslt5 } |