diff options
| -rw-r--r-- | llvm/test/Transforms/InstCombine/apint-shl-trunc.ll | 34 | 
1 files changed, 18 insertions, 16 deletions
diff --git a/llvm/test/Transforms/InstCombine/apint-shl-trunc.ll b/llvm/test/Transforms/InstCombine/apint-shl-trunc.ll index b4450d4a3a0..44a640d9343 100644 --- a/llvm/test/Transforms/InstCombine/apint-shl-trunc.ll +++ b/llvm/test/Transforms/InstCombine/apint-shl-trunc.ll @@ -1,25 +1,27 @@ +; NOTE: Assertions have been autogenerated by utils/update_test_checks.py  ; RUN: opt < %s -instcombine -S | FileCheck %s  define i1 @test0(i39 %X, i39 %A) {  ; CHECK-LABEL: @test0( -; CHECK: %[[V1:.*]] = shl i39 1, %A -; CHECK: %[[V2:.*]] = and i39 %[[V1]], %X -; CHECK: %[[V3:.*]] = icmp ne i39 %[[V2]], 0 -; CHECK: ret i1 %[[V3]] - -	%B = lshr i39 %X, %A -	%D = trunc i39 %B to i1 -	ret i1 %D +; CHECK-NEXT:    [[TMP1:%.*]] = shl i39 1, %A +; CHECK-NEXT:    [[TMP2:%.*]] = and i39 [[TMP1]], %X +; CHECK-NEXT:    [[D:%.*]] = icmp ne i39 [[TMP2]], 0 +; CHECK-NEXT:    ret i1 [[D]] +; +  %B = lshr i39 %X, %A +  %D = trunc i39 %B to i1 +  ret i1 %D  }  define i1 @test1(i799 %X, i799 %A) {  ; CHECK-LABEL: @test1( -; CHECK: %[[V1:.*]] = shl i799 1, %A -; CHECK: %[[V2:.*]] = and i799 %[[V1]], %X -; CHECK: %[[V3:.*]] = icmp ne i799 %[[V2]], 0 -; CHECK: ret i1 %[[V3]] - -	%B = lshr i799 %X, %A -	%D = trunc i799 %B to i1 -	ret i1 %D +; CHECK-NEXT:    [[TMP1:%.*]] = shl i799 1, %A +; CHECK-NEXT:    [[TMP2:%.*]] = and i799 [[TMP1]], %X +; CHECK-NEXT:    [[D:%.*]] = icmp ne i799 [[TMP2]], 0 +; CHECK-NEXT:    ret i1 [[D]] +; +  %B = lshr i799 %X, %A +  %D = trunc i799 %B to i1 +  ret i1 %D  } +  | 

