1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00

[InstCombine] Add vector version of a test to show missing optimization.

llvm-svn: 300161
This commit is contained in:
Craig Topper 2017-04-13 01:31:40 +00:00
parent 1553cd1af6
commit cbc8bd7d59

View File

@ -110,6 +110,18 @@ define i64 @test9(i64 %x) {
ret i64 %and
}
; combine -x & 1 into x & 1
define <2 x i64> @test9vec(<2 x i64> %x) {
; CHECK-LABEL: @test9vec(
; CHECK-NEXT: [[SUB:%.*]] = sub nsw <2 x i64> zeroinitializer, [[X:%.*]]
; CHECK-NEXT: [[AND:%.*]] = and <2 x i64> [[SUB]], <i64 1, i64 1>
; CHECK-NEXT: ret <2 x i64> [[AND]]
;
%sub = sub nsw <2 x i64> <i64 0, i64 0>, %x
%and = and <2 x i64> %sub, <i64 1, i64 1>
ret <2 x i64> %and
}
define i64 @test10(i64 %x) {
; CHECK-LABEL: @test10(
; CHECK-NEXT: [[AND:%.*]] = and i64 %x, 1