diff --git a/llvm/test/Transforms/InstCombine/cast-int-icmp-eq-0.ll b/llvm/test/Transforms/InstCombine/cast-int-icmp-eq-0.ll index 41035857f91e..573c0a162930 100644 --- a/llvm/test/Transforms/InstCombine/cast-int-icmp-eq-0.ll +++ b/llvm/test/Transforms/InstCombine/cast-int-icmp-eq-0.ll @@ -1,18 +1,13 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt < %s -instcombine -S | FileCheck %s -; target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128" - ; This is https://bugs.llvm.org/show_bug.cgi?id=36682 -; FIXME: *all* of these are true tests. ; In *all* of these, sitofp and bitcast should be instcombine'd out. - -; The "sle 0" is canonicalized to "slt 1", so we don't test "sle 0" case. -; The "sge 0" is canonicalized to "sgt -1", so we don't test "sge 0" case. - -; The "sge 1" is canonicalized to "sgt 0", so we don't test "sge 1" case. -; The "sle -1" is canonicalized to "slt 0", so we don't test "sle -1" case. +; "sle 0" is canonicalized to "slt 1", so we don't test "sle 0" case. +; "sge 0" is canonicalized to "sgt -1", so we don't test "sge 0" case. +; "sge 1" is canonicalized to "sgt 0", so we don't test "sge 1" case. +; "sle -1" is canonicalized to "slt 0", so we don't test "sle -1" case. define i1 @i32_cast_cmp_eq_int_0_sitofp_float(i32 %i) { ; CHECK-LABEL: @i32_cast_cmp_eq_int_0_sitofp_float( @@ -621,6 +616,8 @@ define <3 x i1> @i32_cast_cmp_ne_int_0_sitofp_double_vec(<3 x i32> %i) { ret <3 x i1> %cmp } +; FIXME: Vector zero constant with undef is not matched. + define <3 x i1> @i32_cast_cmp_eq_int_0_sitofp_float_vec_undef(<3 x i32> %i) { ; CHECK-LABEL: @i32_cast_cmp_eq_int_0_sitofp_float_vec_undef( ; CHECK-NEXT: [[F:%.*]] = sitofp <3 x i32> [[I:%.*]] to <3 x float>