diff options
Diffstat (limited to 'test/CodeGen/Generic/intrinsics.ll')
-rw-r--r-- | test/CodeGen/Generic/intrinsics.ll | 53 |
1 files changed, 31 insertions, 22 deletions
diff --git a/test/CodeGen/Generic/intrinsics.ll b/test/CodeGen/Generic/intrinsics.ll index eb3148a..373bec9 100644 --- a/test/CodeGen/Generic/intrinsics.ll +++ b/test/CodeGen/Generic/intrinsics.ll @@ -1,31 +1,40 @@ -; RUN: llvm-upgrade < %s | llvm-as | llc +; RUN: llvm-as < %s | llc ;; SQRT -declare float %llvm.sqrt.f32(float) -declare double %llvm.sqrt.f64(double) -double %test_sqrt(float %F) { - %G = call float %llvm.sqrt.f32(float %F) - %H = cast float %G to double - %I = call double %llvm.sqrt.f64(double %H) - ret double %I +declare float @llvm.sqrt.f32(float) + +declare double @llvm.sqrt.f64(double) + +define double @test_sqrt(float %F) { + %G = call float @llvm.sqrt.f32( float %F ) ; <float> [#uses=1] + %H = fpext float %G to double ; <double> [#uses=1] + %I = call double @llvm.sqrt.f64( double %H ) ; <double> [#uses=1] + ret double %I } + ; SIN -declare float %sinf(float) -declare double %sin(double) -double %test_sin(float %F) { - %G = call float %sinf(float %F) - %H = cast float %G to double - %I = call double %sin(double %H) - ret double %I +declare float @sinf(float) + +declare double @sin(double) + +define double @test_sin(float %F) { + %G = call float @sinf( float %F ) ; <float> [#uses=1] + %H = fpext float %G to double ; <double> [#uses=1] + %I = call double @sin( double %H ) ; <double> [#uses=1] + ret double %I } + ; COS -declare float %cosf(float) -declare double %cos(double) -double %test_cos(float %F) { - %G = call float %cosf(float %F) - %H = cast float %G to double - %I = call double %cos(double %H) - ret double %I +declare float @cosf(float) + +declare double @cos(double) + +define double @test_cos(float %F) { + %G = call float @cosf( float %F ) ; <float> [#uses=1] + %H = fpext float %G to double ; <double> [#uses=1] + %I = call double @cos( double %H ) ; <double> [#uses=1] + ret double %I } + |