1*9880d681SAndroid Build Coastguard Worker; RUN: lli -O0 -force-interpreter < %s 2*9880d681SAndroid Build Coastguard Worker 3*9880d681SAndroid Build Coastguard Worker; libffi does not support fp128 so we don’t test it 4*9880d681SAndroid Build Coastguard Workerdeclare float @llvm.sin.f32(float) 5*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.sin.f64(double) 6*9880d681SAndroid Build Coastguard Workerdeclare float @llvm.cos.f32(float) 7*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.cos.f64(double) 8*9880d681SAndroid Build Coastguard Workerdeclare float @llvm.floor.f32(float) 9*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.floor.f64(double) 10*9880d681SAndroid Build Coastguard Workerdeclare float @llvm.ceil.f32(float) 11*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.ceil.f64(double) 12*9880d681SAndroid Build Coastguard Workerdeclare float @llvm.trunc.f32(float) 13*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.trunc.f64(double) 14*9880d681SAndroid Build Coastguard Workerdeclare float @llvm.round.f32(float) 15*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.round.f64(double) 16*9880d681SAndroid Build Coastguard Workerdeclare float @llvm.copysign.f32(float, float) 17*9880d681SAndroid Build Coastguard Workerdeclare double @llvm.copysign.f64(double, double) 18*9880d681SAndroid Build Coastguard Worker 19*9880d681SAndroid Build Coastguard Workerdefine i32 @main() { 20*9880d681SAndroid Build Coastguard Worker %sin32 = call float @llvm.sin.f32(float 0.000000e+00) 21*9880d681SAndroid Build Coastguard Worker %sin64 = call double @llvm.sin.f64(double 0.000000e+00) 22*9880d681SAndroid Build Coastguard Worker %cos32 = call float @llvm.cos.f32(float 0.000000e+00) 23*9880d681SAndroid Build Coastguard Worker %cos64 = call double @llvm.cos.f64(double 0.000000e+00) 24*9880d681SAndroid Build Coastguard Worker %floor32 = call float @llvm.floor.f32(float 0.000000e+00) 25*9880d681SAndroid Build Coastguard Worker %floor64 = call double @llvm.floor.f64(double 0.000000e+00) 26*9880d681SAndroid Build Coastguard Worker %ceil32 = call float @llvm.ceil.f32(float 0.000000e+00) 27*9880d681SAndroid Build Coastguard Worker %ceil64 = call double @llvm.ceil.f64(double 0.000000e+00) 28*9880d681SAndroid Build Coastguard Worker %trunc32 = call float @llvm.trunc.f32(float 0.000000e+00) 29*9880d681SAndroid Build Coastguard Worker %trunc64 = call double @llvm.trunc.f64(double 0.000000e+00) 30*9880d681SAndroid Build Coastguard Worker %round32 = call float @llvm.round.f32(float 0.000000e+00) 31*9880d681SAndroid Build Coastguard Worker %round64 = call double @llvm.round.f64(double 0.000000e+00) 32*9880d681SAndroid Build Coastguard Worker %copysign32 = call float @llvm.copysign.f32(float 0.000000e+00, float 0.000000e+00) 33*9880d681SAndroid Build Coastguard Worker %copysign64 = call double @llvm.copysign.f64(double 0.000000e+00, double 0.000000e+00) 34*9880d681SAndroid Build Coastguard Worker ret i32 0 35*9880d681SAndroid Build Coastguard Worker} 36