diff options
| -rw-r--r-- | llvm/test/Transforms/InstCombine/icmp.ll | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/test/Transforms/InstCombine/icmp.ll b/llvm/test/Transforms/InstCombine/icmp.ll index 1b2f8efa632..1aa37142c23 100644 --- a/llvm/test/Transforms/InstCombine/icmp.ll +++ b/llvm/test/Transforms/InstCombine/icmp.ll @@ -282,6 +282,18 @@ define i1 @test23(i32 %x) { ret i1 %i4 } +; FIXME: Vectors should fold too. +define <2 x i1> @test23vec(<2 x i32> %x) { +; CHECK-LABEL: @test23vec( +; CHECK-NEXT: [[I3:%.*]] = sdiv <2 x i32> %x, <i32 -1328634635, i32 -1328634635> +; CHECK-NEXT: [[I4:%.*]] = icmp eq <2 x i32> [[I3]], <i32 -1, i32 -1> +; CHECK-NEXT: ret <2 x i1> [[I4]] +; + %i3 = sdiv <2 x i32> %x, <i32 -1328634635, i32 -1328634635> + %i4 = icmp eq <2 x i32> %i3, <i32 -1, i32 -1> + ret <2 x i1> %i4 +} + @X = global [1000 x i32] zeroinitializer ; PR8882 |

