[llvm-commits] CVS: llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

Lauro Ramos Venancio lauro.venancio at gmail.com
Sat Apr 21 13:56:47 PDT 2007



Changes in directory llvm/lib/CodeGen/SelectionDAG:

SelectionDAG.cpp updated: 1.400 -> 1.401
---
Log message:

X86 TLS: Implement review feedback.


---
Diffs of the changes:  (+11 -1)

 SelectionDAG.cpp |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletion(-)


Index: llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
diff -u llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.400 llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.401
--- llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp:1.400	Sat Apr 21 13:36:27 2007
+++ llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp	Sat Apr 21 15:56:26 2007
@@ -13,7 +13,6 @@
 
 #include "llvm/CodeGen/SelectionDAG.h"
 #include "llvm/Constants.h"
-#include "llvm/GlobalValue.h"
 #include "llvm/GlobalVariable.h"
 #include "llvm/Intrinsics.h"
 #include "llvm/Assembly/Writer.h"
@@ -2573,6 +2572,17 @@
   MorphNodeTo(ISD::HANDLENODE, VTs, 0, 0);  // Drops operand uses.
 }
 
+GlobalAddressSDNode::GlobalAddressSDNode(bool isTarget, const GlobalValue *GA,
+                                         MVT::ValueType VT, int o)
+  : SDNode(isa<GlobalVariable>(GA) &&
+           dyn_cast<GlobalVariable>(GA)->isThreadLocal() ?
+           // Thread Local
+           (isTarget ? ISD::TargetGlobalTLSAddress : ISD::GlobalTLSAddress) :
+           // Non Thread Local
+           (isTarget ? ISD::TargetGlobalAddress : ISD::GlobalAddress),
+           getSDVTList(VT)), Offset(o) {
+  TheGlobal = const_cast<GlobalValue*>(GA);
+}
 
 /// Profile - Gather unique data for the node.
 ///






More information about the llvm-commits mailing list