diff --git a/llvm/test/Transforms/InstSimplify/fptoi-range.ll b/llvm/test/Transforms/InstSimplify/fptoi-range.ll index cc9605259aa811..e0689c26c71903 100644 --- a/llvm/test/Transforms/InstSimplify/fptoi-range.ll +++ b/llvm/test/Transforms/InstSimplify/fptoi-range.ll @@ -32,6 +32,17 @@ define i1 @f16_si16_max2(half %f) { ret i1 %c } +define i1 @f16_si128_max2(half %f) { +; CHECK-LABEL: @f16_si128_max2( +; CHECK-NEXT: [[I:%.*]] = fptosi half [[F:%.*]] to i128 +; CHECK-NEXT: [[C:%.*]] = icmp sgt i128 [[I]], 65504 +; CHECK-NEXT: ret i1 [[C]] +; + %i = fptosi half %f to i128 + %c = icmp sgt i128 %i, 65504 + ret i1 %c +} + define i1 @f16_si_min1(half %f) { ; CHECK-LABEL: @f16_si_min1( ; CHECK-NEXT: ret i1 true @@ -41,6 +52,17 @@ define i1 @f16_si_min1(half %f) { ret i1 %c } +define i1 @f16_si128_min1(half %f) { +; CHECK-LABEL: @f16_si128_min1( +; CHECK-NEXT: [[I:%.*]] = fptosi half [[F:%.*]] to i128 +; CHECK-NEXT: [[C:%.*]] = icmp sge i128 [[I]], -65504 +; CHECK-NEXT: ret i1 [[C]] +; + %i = fptosi half %f to i128 + %c = icmp sge i128 %i, -65504 + ret i1 %c +} + define i1 @f16_si16_min1(half %f) { ; CHECK-LABEL: @f16_si16_min1( ; CHECK-NEXT: [[I:%.*]] = fptosi half [[F:%.*]] to i16