mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-15 04:30:12 +00:00
5e4b95b3fe
is actually an instrinsic that will not occur in libc. This list here is not exhaustive but fixes the one places in test-suite where this occurs. I have filed a bug against myself to research the full list and add them to the array of such cases. In the future, actual stub generation will occur in a later phase and we won't need this code because we will know at that time during the compilation that in fact no helper function was even needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188149 91177308-0d34-0410-b5e6-96231b3b80d8
26 lines
1.2 KiB
LLVM
26 lines
1.2 KiB
LLVM
; RUN: llc -mtriple=mipsel-linux-gnu -march=mipsel -mcpu=mips16 -soft-float -mips16-hard-float -relocation-model=static < %s | FileCheck %s -check-prefix=static
|
|
|
|
@y = global double -1.450000e+00, align 8
|
|
@x = common global double 0.000000e+00, align 8
|
|
|
|
; Function Attrs: nounwind optsize
|
|
define i32 @main() #0 {
|
|
entry:
|
|
%0 = load double* @y, align 8
|
|
%call = tail call double @fabs(double %0) #2
|
|
store double %call, double* @x, align 8
|
|
; static-NOT: .ent __call_stub_fp_fabs
|
|
; static-NOT: jal fabs
|
|
ret i32 0
|
|
}
|
|
|
|
; Function Attrs: nounwind optsize readnone
|
|
declare double @fabs(double) #1
|
|
|
|
attributes #0 = { nounwind optsize "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
|
|
attributes #1 = { nounwind optsize readnone "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf"="true" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" }
|
|
attributes #2 = { nounwind optsize readnone }
|
|
|
|
|
|
|