mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-25 13:24:46 +00:00
Codegen:
as: _bar: pushl %esi subl $8, %esp movl 16(%esp), %esi call L_foo$stub fstps (%esi) addl $8, %esp popl %esi #FP_REG_KILL ret instead of: _bar: pushl %esi subl $8, %esp movl 16(%esp), %esi call L_foo$stub fstpl (%esi) cvtsd2ss (%esi), %xmm0 movss %xmm0, (%esi) addl $8, %esp popl %esi #FP_REG_KILL ret git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45401 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -13,3 +13,14 @@ entry:
|
||||
}
|
||||
|
||||
declare double @foo(...)
|
||||
|
||||
define void @bar2(float* %P) {
|
||||
entry:
|
||||
%tmp = tail call double (...)* @foo2( ) ; <double> [#uses=1]
|
||||
%tmp1 = fptrunc double %tmp to float ; <float> [#uses=1]
|
||||
store float %tmp1, float* %P, align 4
|
||||
ret void
|
||||
}
|
||||
|
||||
declare double @foo2(...)
|
||||
|
||||
|
Reference in New Issue
Block a user