93 lines · plain
1; RUN: llc -mtriple i686-windows-itanium -filetype asm -o - %s | FileCheck %s2 3declare float @llvm.ceil.f32(float)4declare float @llvm.cos.f32(float)5declare float @llvm.exp.f32(float)6declare float @llvm.floor.f32(float)7declare float @llvm.log.f32(float)8declare float @llvm.log10.f32(float)9declare float @llvm.pow.f32(float, float)10declare float @llvm.sin.f32(float)11 12define float @f(float %f) {13 %r = call float @llvm.ceil.f32(float %f)14 ret float %r15}16 17; CHECK-LABEL: _f:18; CHECK-NOT: calll _ceilf19; CHECK: calll _ceil{{$}}20 21define float @g(float %f) {22 %r = call float @llvm.cos.f32(float %f)23 ret float %r24}25 26; CHECK-LABEL: _g:27; CHECK-NOT: calll _cosf28; CHECK: calll _cos{{$}}29 30define float @h(float %f) {31 %r = call float @llvm.exp.f32(float %f)32 ret float %r33}34 35; CHECK-LABEL: _h:36; CHECK-NOT: calll _expf37; CHECK: calll _exp{{$}}38 39define float @i(float %f) {40 %r = call float @llvm.floor.f32(float %f)41 ret float %r42}43 44; CHECK-LABEL: _i:45; CHECK-NOT: calll _floorf46; CHECK: calll _floor{{$}}47 48define float @j(float %f, float %g) {49 %r = frem float %f, %g50 ret float %r51}52 53; CHECK-LABEL: _j:54; CHECK-NOT: calll _fmodf55; CHECK: calll _fmod{{$}}56 57define float @k(float %f) {58 %r = call float @llvm.log.f32(float %f)59 ret float %r60}61 62; CHECK-LABEL: _k:63; CHECK-NOT: calll _logf64; CHECK: calll _log{{$}}65 66define float @l(float %f) {67 %r = call float @llvm.log10.f32(float %f)68 ret float %r69}70 71; CHECK-LABEL: _l:72; CHECK-NOT: calll _log10f73; CHECK: calll _log10{{$}}74 75define float @m(float %f, float %g) {76 %r = call float @llvm.pow.f32(float %f, float %g)77 ret float %r78}79 80; CHECK-LABEL: _m:81; CHECK-NOT: calll _powf82; CHECK: calll _pow{{$}}83 84define float @n(float %f) {85 %r = call float @llvm.sin.f32(float %f)86 ret float %r87}88 89; CHECK-LABEL: _n:90; CHECK-NOT: calll _sinf91; CHECK: calll _sin{{$}}92 93