@@ -163,7 +163,7 @@ define i1 @caller.sext() {
163163; There's nothing we can do besides going to the full range or overdefined.
164164define internal i1 @f.fptosi (i32 %x ) {
165165; CHECK-LABEL: @f.fptosi(
166- ; CHECK-NEXT: [[TO_DOUBLE:%.*]] = sitofp i32 [[X:%.*]] to double
166+ ; CHECK-NEXT: [[TO_DOUBLE:%.*]] = uitofp nneg i32 [[X:%.*]] to double
167167; CHECK-NEXT: [[ADD:%.*]] = fadd double 0.000000e+00, [[TO_DOUBLE]]
168168; CHECK-NEXT: [[TO_I32:%.*]] = fptosi double [[ADD]] to i32
169169; CHECK-NEXT: [[C_1:%.*]] = icmp sgt i32 [[TO_I32]], 300
@@ -204,7 +204,7 @@ define i1 @caller.fptosi() {
204204; There's nothing we can do besides going to the full range or overdefined.
205205define internal i1 @f.fpext (i16 %x ) {
206206; CHECK-LABEL: @f.fpext(
207- ; CHECK-NEXT: [[TO_FLOAT:%.*]] = sitofp i16 [[X:%.*]] to float
207+ ; CHECK-NEXT: [[TO_FLOAT:%.*]] = uitofp nneg i16 [[X:%.*]] to float
208208; CHECK-NEXT: [[TO_DOUBLE:%.*]] = fpext float [[TO_FLOAT]] to double
209209; CHECK-NEXT: [[TO_I64:%.*]] = fptoui float [[TO_FLOAT]] to i64
210210; CHECK-NEXT: [[C_1:%.*]] = icmp sgt i64 [[TO_I64]], 300
@@ -286,7 +286,7 @@ define i1 @caller.inttoptr.ptrtoint() {
286286define i1 @int_range_to_double_cast (i32 %a ) {
287287; CHECK-LABEL: @int_range_to_double_cast(
288288; CHECK-NEXT: [[R:%.*]] = and i32 [[A:%.*]], 255
289- ; CHECK-NEXT: [[T4:%.*]] = sitofp i32 [[R]] to double
289+ ; CHECK-NEXT: [[T4:%.*]] = uitofp nneg i32 [[R]] to double
290290; CHECK-NEXT: [[T10:%.*]] = fadd double 0.000000e+00, [[T4]]
291291; CHECK-NEXT: [[T11:%.*]] = fcmp olt double [[T4]], [[T10]]
292292; CHECK-NEXT: ret i1 [[T11]]
@@ -329,7 +329,7 @@ define i64 @caller.sext_to_zext(i32 %i) {
329329; CHECK-LABEL: @caller.sext_to_zext(
330330; CHECK-NEXT: [[CMP:%.*]] = icmp sle i32 [[I:%.*]], 9
331331; CHECK-NEXT: [[CONV:%.*]] = zext i1 [[CMP]] to i32
332- ; CHECK-NEXT: [[T:%.*]] = call i64 @f.sext_to_zext(i32 [[CONV]])
332+ ; CHECK-NEXT: [[T:%.*]] = call i64 @f.sext_to_zext(i32 [[CONV]]), !range [[RNG0:![0-9]+]]
333333; CHECK-NEXT: ret i64 [[T]]
334334;
335335 %cmp = icmp sle i32 %i , 9
0 commit comments