[llvm-commits] CVS: llvm/lib/Target/IA64/IA64ISelPattern.cpp

Andrew Lenharth alenhar2 at cs.uiuc.edu
Wed Apr 27 13:10:24 PDT 2005



Changes in directory llvm/lib/Target/IA64:

IA64ISelPattern.cpp updated: 1.30 -> 1.31
---
Log message:

Implement Value* tracking for loads and stores in the selection DAG.  This enables one to use alias analysis in the backends.

(TRUNK)Stores and (EXT|ZEXT|SEXT)Loads have an extra SDOperand which is a SrcValueSDNode which contains the Value*.  Note that if the operation is introduced by the backend, it will still have the operand, but the value* will be null.



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

 IA64ISelPattern.cpp |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)


Index: llvm/lib/Target/IA64/IA64ISelPattern.cpp
diff -u llvm/lib/Target/IA64/IA64ISelPattern.cpp:1.30 llvm/lib/Target/IA64/IA64ISelPattern.cpp:1.31
--- llvm/lib/Target/IA64/IA64ISelPattern.cpp:1.30	Wed Apr 27 06:57:39 2005
+++ llvm/lib/Target/IA64/IA64ISelPattern.cpp	Wed Apr 27 15:10:01 2005
@@ -223,7 +223,7 @@
         //from this parameter
         SDOperand FIN = DAG.getFrameIndex(FI, MVT::i64);
         argt = newroot = DAG.getLoad(getValueType(I->getType()),
-            DAG.getEntryNode(), FIN);
+                                     DAG.getEntryNode(), FIN, DAG.getSrcValue(NULL));
       }
       ++count;
       DAG.setRoot(newroot.getValue(1));
@@ -378,7 +378,7 @@
   MVT::ValueType ArgVT = getValueType(ArgTy);
   SDOperand Result;
   if (!isVANext) {
-    Result = DAG.getLoad(ArgVT, DAG.getEntryNode(), VAList);
+    Result = DAG.getLoad(ArgVT, DAG.getEntryNode(), VAList, DAG.getSrcValue(NULL));
   } else {
     unsigned Amt;
     if (ArgVT == MVT::i32 || ArgVT == MVT::f32)






More information about the llvm-commits mailing list