projects
/
oota-llvm.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c8d3a62
)
Treat floating point ST1 the same as ST0 when lowering for a call result
author
Mon P Wang
<wangmp@apple.com>
Thu, 21 Aug 2008 19:54:16 +0000
(19:54 +0000)
committer
Mon P Wang
<wangmp@apple.com>
Thu, 21 Aug 2008 19:54:16 +0000
(19:54 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55135
91177308
-0d34-0410-b5e6-
96231b3b80d8
lib/Target/X86/X86ISelLowering.cpp
patch
|
blob
|
history
diff --git
a/lib/Target/X86/X86ISelLowering.cpp
b/lib/Target/X86/X86ISelLowering.cpp
index 9a77c8e61c6edb48c8df86a718ef5c9340fd164a..fdc461894d6a4db16dc504e510941872a811c79a 100644
(file)
--- a/
lib/Target/X86/X86ISelLowering.cpp
+++ b/
lib/Target/X86/X86ISelLowering.cpp
@@
-969,7
+969,8
@@
LowerCallResult(SDValue Chain, SDValue InFlag, SDNode *TheCall,
// If this is a call to a function that returns an fp value on the floating
// point stack, but where we prefer to use the value in xmm registers, copy
// it out as F80 and use a truncate to move it from fp stack reg to xmm reg.
- if (RVLocs[i].getLocReg() == X86::ST0 &&
+ if ((RVLocs[i].getLocReg() == X86::ST0 ||
+ RVLocs[i].getLocReg() == X86::ST1) &&
isScalarFPTypeInSSEReg(RVLocs[i].getValVT())) {
CopyVT = MVT::f80;
}