mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-25 14:32:53 +00:00
d05b67dc64
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32133 91177308-0d34-0410-b5e6-96231b3b80d8
32 lines
697 B
LLVM
32 lines
697 B
LLVM
; RUN: llvm-upgrade < %s | llvm-as | 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
|
|
}
|
|
|
|
; 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
|
|
}
|
|
|
|
; 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
|
|
}
|