[llvm-commits] CVS: llvm/lib/Target/X86/X86ISelLowering.cpp

Evan Cheng evan.cheng at apple.com
Tue Jan 31 16:20:33 PST 2006



Changes in directory llvm/lib/Target/X86:

X86ISelLowering.cpp updated: 1.73 -> 1.74
---
Log message:

When folding a load into a return of SSE value, check the chain to
ensure the memory location has not been clobbered.


---
Diffs of the changes:  (+3 -2)

 X86ISelLowering.cpp |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)


Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.73 llvm/lib/Target/X86/X86ISelLowering.cpp:1.74
--- llvm/lib/Target/X86/X86ISelLowering.cpp:1.73	Tue Jan 31 17:19:54 2006
+++ llvm/lib/Target/X86/X86ISelLowering.cpp	Tue Jan 31 18:20:21 2006
@@ -1912,10 +1912,11 @@
         Ops.push_back(Op.getOperand(1));
         Copy = DAG.getNode(X86ISD::FP_SET_RESULT, Tys, Ops);
       } else {
-        SDOperand MemLoc, Chain;
+        SDOperand MemLoc;
+        SDOperand Chain = Op.getOperand(0);
         SDOperand Value = Op.getOperand(1);
 
-        if (Value.getOpcode() == ISD::LOAD) {
+        if (Value.getOpcode() == ISD::LOAD && Chain == Value.getOperand(0)) {
           Chain  = Value.getOperand(0);
           MemLoc = Value.getOperand(1);
         } else {






More information about the llvm-commits mailing list