diff options
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/Transforms/InstCombine/add.ll | 12 | ||||
| -rw-r--r-- | llvm/test/Transforms/InstCombine/add2.ll | 9 |
2 files changed, 10 insertions, 11 deletions
diff --git a/llvm/test/Transforms/InstCombine/add.ll b/llvm/test/Transforms/InstCombine/add.ll index e1fcbe0b1af..3394bad0849 100644 --- a/llvm/test/Transforms/InstCombine/add.ll +++ b/llvm/test/Transforms/InstCombine/add.ll @@ -266,7 +266,6 @@ define i32 @test17(i32 %A) { ; CHECK-NEXT: ret i32 [[C]] ; %B = xor i32 %A, -1 - ; == sub int 0, %A %C = add i32 %B, 1 ret i32 %C } @@ -277,11 +276,20 @@ define i8 @test18(i8 %A) { ; CHECK-NEXT: ret i8 [[C]] ; %B = xor i8 %A, -1 - ; == sub ubyte 16, %A %C = add i8 %B, 17 ret i8 %C } +define <2 x i64> @test18vec(<2 x i64> %A) { +; CHECK-LABEL: @test18vec( +; CHECK-NEXT: [[ADD:%.*]] = sub <2 x i64> <i64 1, i64 2>, %A +; CHECK-NEXT: ret <2 x i64> [[ADD]] +; + %xor = xor <2 x i64> %A, <i64 -1, i64 -1> + %add = add <2 x i64> %xor, <i64 2, i64 3> + ret <2 x i64> %add +} + define i32 @test19(i1 %C) { ; CHECK-LABEL: @test19( ; CHECK-NEXT: [[V:%.*]] = select i1 %C, i32 1123, i32 133 diff --git a/llvm/test/Transforms/InstCombine/add2.ll b/llvm/test/Transforms/InstCombine/add2.ll index 2fe9e8cadeb..59f757f8628 100644 --- a/llvm/test/Transforms/InstCombine/add2.ll +++ b/llvm/test/Transforms/InstCombine/add2.ll @@ -68,15 +68,6 @@ define <2 x i64> @test7(<2 x i64> %A) { ; CHECK-NEXT: ret <2 x i64> %add } -define <2 x i64> @test8(<2 x i64> %A) { - %xor = xor <2 x i64> %A, <i64 -1, i64 -1> - %add = add <2 x i64> %xor, <i64 2, i64 3> - ret <2 x i64> %add -; CHECK-LABEL: @test8( -; CHECK-NEXT: %add = sub <2 x i64> <i64 1, i64 2>, %A -; CHECK-NEXT: ret <2 x i64> %add -} - define i16 @test9(i16 %a) { %b = mul i16 %a, 2 %c = mul i16 %a, 32767 |

