1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 3 2; RUN: opt -S -passes=instsimplify < %s | FileCheck %s 3 4define i60 @test1() { 5; CHECK-LABEL: define i60 @test1() { 6; CHECK-NEXT: ret i60 3 7; 8 %fptoui = fptoui float 0x400D9999A0000000 to i60 9 ret i60 %fptoui 10} 11 12define float @test2() { 13; CHECK-LABEL: define float @test2() { 14; CHECK-NEXT: ret float 1.700000e+01 15; 16 %uitofp = uitofp i60 17 to float 17 ret float %uitofp 18} 19 20define i64 @test3() { 21; CHECK-LABEL: define i64 @test3() { 22; CHECK-NEXT: ret i64 4614256656431372362 23; 24 ret i64 bitcast (double 0x400921FB4D12D84A to i64) 25} 26 27define double @test4() { 28; CHECK-LABEL: define double @test4() { 29; CHECK-NEXT: ret double 2.075080e-322 30; 31 ret double bitcast (i64 42 to double) 32} 33 34define i30 @test5() { 35; CHECK-LABEL: define i30 @test5() { 36; CHECK-NEXT: ret i30 3 37; 38 %fptoui = fptoui float 0x400D9999A0000000 to i30 39 ret i30 %fptoui 40} 41 42define float @test6() { 43; CHECK-LABEL: define float @test6() { 44; CHECK-NEXT: ret float 1.700000e+01 45; 46 %uitofp = uitofp i30 17 to float 47 ret float %uitofp 48} 49 50define i64 @test7() { 51; CHECK-LABEL: define i64 @test7() { 52; CHECK-NEXT: ret i64 4614256656431372362 53; 54 ret i64 bitcast (double 0x400921FB4D12D84A to i64) 55} 56 57define double @test8() { 58; CHECK-LABEL: define double @test8() { 59; CHECK-NEXT: ret double 2.075080e-322 60; 61 ret double bitcast (i64 42 to double) 62} 63