1*9880d681SAndroid Build Coastguard Worker; RUN: llc -mtriple=thumb-eabi %s -o /dev/null 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Workerdefine float @f1(double %x) { 4*9880d681SAndroid Build Coastguard Workerentry: 5*9880d681SAndroid Build Coastguard Worker %tmp1 = fptrunc double %x to float ; <float> [#uses=1] 6*9880d681SAndroid Build Coastguard Worker ret float %tmp1 7*9880d681SAndroid Build Coastguard Worker} 8*9880d681SAndroid Build Coastguard Worker 9*9880d681SAndroid Build Coastguard Workerdefine double @f2(float %x) { 10*9880d681SAndroid Build Coastguard Workerentry: 11*9880d681SAndroid Build Coastguard Worker %tmp1 = fpext float %x to double ; <double> [#uses=1] 12*9880d681SAndroid Build Coastguard Worker ret double %tmp1 13*9880d681SAndroid Build Coastguard Worker} 14*9880d681SAndroid Build Coastguard Worker 15*9880d681SAndroid Build Coastguard Workerdefine i32 @f3(float %x) { 16*9880d681SAndroid Build Coastguard Workerentry: 17*9880d681SAndroid Build Coastguard Worker %tmp = fptosi float %x to i32 ; <i32> [#uses=1] 18*9880d681SAndroid Build Coastguard Worker ret i32 %tmp 19*9880d681SAndroid Build Coastguard Worker} 20*9880d681SAndroid Build Coastguard Worker 21*9880d681SAndroid Build Coastguard Workerdefine i32 @f4(float %x) { 22*9880d681SAndroid Build Coastguard Workerentry: 23*9880d681SAndroid Build Coastguard Worker %tmp = fptoui float %x to i32 ; <i32> [#uses=1] 24*9880d681SAndroid Build Coastguard Worker ret i32 %tmp 25*9880d681SAndroid Build Coastguard Worker} 26*9880d681SAndroid Build Coastguard Worker 27*9880d681SAndroid Build Coastguard Workerdefine i32 @f5(double %x) { 28*9880d681SAndroid Build Coastguard Workerentry: 29*9880d681SAndroid Build Coastguard Worker %tmp = fptosi double %x to i32 ; <i32> [#uses=1] 30*9880d681SAndroid Build Coastguard Worker ret i32 %tmp 31*9880d681SAndroid Build Coastguard Worker} 32*9880d681SAndroid Build Coastguard Worker 33*9880d681SAndroid Build Coastguard Workerdefine i32 @f6(double %x) { 34*9880d681SAndroid Build Coastguard Workerentry: 35*9880d681SAndroid Build Coastguard Worker %tmp = fptoui double %x to i32 ; <i32> [#uses=1] 36*9880d681SAndroid Build Coastguard Worker ret i32 %tmp 37*9880d681SAndroid Build Coastguard Worker} 38*9880d681SAndroid Build Coastguard Worker 39*9880d681SAndroid Build Coastguard Workerdefine float @f7(i32 %a) { 40*9880d681SAndroid Build Coastguard Workerentry: 41*9880d681SAndroid Build Coastguard Worker %tmp = sitofp i32 %a to float ; <float> [#uses=1] 42*9880d681SAndroid Build Coastguard Worker ret float %tmp 43*9880d681SAndroid Build Coastguard Worker} 44*9880d681SAndroid Build Coastguard Worker 45*9880d681SAndroid Build Coastguard Workerdefine double @f8(i32 %a) { 46*9880d681SAndroid Build Coastguard Workerentry: 47*9880d681SAndroid Build Coastguard Worker %tmp = sitofp i32 %a to double ; <double> [#uses=1] 48*9880d681SAndroid Build Coastguard Worker ret double %tmp 49*9880d681SAndroid Build Coastguard Worker} 50*9880d681SAndroid Build Coastguard Worker 51*9880d681SAndroid Build Coastguard Workerdefine float @f9(i32 %a) { 52*9880d681SAndroid Build Coastguard Workerentry: 53*9880d681SAndroid Build Coastguard Worker %tmp = uitofp i32 %a to float ; <float> [#uses=1] 54*9880d681SAndroid Build Coastguard Worker ret float %tmp 55*9880d681SAndroid Build Coastguard Worker} 56*9880d681SAndroid Build Coastguard Worker 57*9880d681SAndroid Build Coastguard Workerdefine double @f10(i32 %a) { 58*9880d681SAndroid Build Coastguard Workerentry: 59*9880d681SAndroid Build Coastguard Worker %tmp = uitofp i32 %a to double ; <double> [#uses=1] 60*9880d681SAndroid Build Coastguard Worker ret double %tmp 61*9880d681SAndroid Build Coastguard Worker} 62