diff options
| author | Davide Italiano <davide@freebsd.org> | 2016-12-15 23:48:07 +0000 |
|---|---|---|
| committer | Davide Italiano <davide@freebsd.org> | 2016-12-15 23:48:07 +0000 |
| commit | 67e979e086a6d452f0d69183b3cfc8ac74b3cf2e (patch) | |
| tree | 29afddeffceef4becefa971dac134297d26e112e /llvm/test/Transforms | |
| parent | 85ad36b0e01210fad939126e47a994b76a1cbd10 (diff) | |
| download | bcm5719-llvm-67e979e086a6d452f0d69183b3cfc8ac74b3cf2e.tar.gz bcm5719-llvm-67e979e086a6d452f0d69183b3cfc8ac74b3cf2e.zip | |
[SimplifyLibCalls] Add a test to make sure we lower fls(0) correctly.
llvm-svn: 289895
Diffstat (limited to 'llvm/test/Transforms')
| -rw-r--r-- | llvm/test/Transforms/InstCombine/fls.ll | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/fls.ll b/llvm/test/Transforms/InstCombine/fls.ll index bf608b35dff..9ccc56aa6bc 100644 --- a/llvm/test/Transforms/InstCombine/fls.ll +++ b/llvm/test/Transforms/InstCombine/fls.ll @@ -43,6 +43,15 @@ define i32 @flsnotconst(i64 %z) { ret i32 %goo } +; Make sure we lower fls(0) to 0 and not to `undef`. +; CHECK-LABEL: define i32 @flszero( +; CHECK: ret i32 0 +; CHECK: } +define i32 @flszero() { + %zero = call i32 @fls(i32 0) + ret i32 %zero +} + declare i32 @fls(i32) declare i32 @flsl(i64) declare i32 @flsll(i64) |

