diff options
Diffstat (limited to 'llvm/test/Analysis/ScalarEvolution/zext-mul.ll')
| -rw-r--r-- | llvm/test/Analysis/ScalarEvolution/zext-mul.ll | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/llvm/test/Analysis/ScalarEvolution/zext-mul.ll b/llvm/test/Analysis/ScalarEvolution/zext-mul.ll index ae93a9288d8..0c0f16c1dea 100644 --- a/llvm/test/Analysis/ScalarEvolution/zext-mul.ll +++ b/llvm/test/Analysis/ScalarEvolution/zext-mul.ll @@ -19,16 +19,20 @@ define void @no_range() { } ; CHECK-LABEL: @range -; -; This had to be disabled when r334428 was reverted. We should enable this test -; when r334428 is reapplied with a fix. define void @range() { - %a = call i32 @get_int(), !range !0 + %a = call i32 @get_int(), !range !{i32 0, i32 100} %b = mul i32 %a, 4 %c = zext i32 %b to i64 ; CHECK: %c - ; CHECK-NEXT: --> (zext i32 (4 * %a) to i64) + ; CHECK-NEXT: --> (4 * (zext i32 %a to i64))<nuw><nsw> ret void } -!0 = !{i32 0, i32 100} +; CHECK-LABEL: @no_nuw +define void @no_nuw() { + %a = call i32 @get_int(), !range !{i32 0, i32 3} + %b = mul i32 %a, -100 + ; CHECK: %b + ; CHECK-NEXT: --> (-100 * %a)<nsw> + ret void +} |

