Changes in directory llvm/include/llvm/CodeGen:
SelectionDAGNodes.h updated: 1.167 -> 1.168 --- Log message: Give each selectiondag node class a home for it's vtable and rtti info --- Diffs of the changes: (+18 -0) SelectionDAGNodes.h | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+) Index: llvm/include/llvm/CodeGen/SelectionDAGNodes.h diff -u llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.167 llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.168 --- llvm/include/llvm/CodeGen/SelectionDAGNodes.h:1.167 Mon Jan 29 16:58:52 2007 +++ llvm/include/llvm/CodeGen/SelectionDAGNodes.h Sat Feb 3 20:23:32 2007 @@ -1080,6 +1080,7 @@ /// operand. This node should be directly created by end-users and not added to /// the AllNodes list. class HandleSDNode : public SDNode { + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. public: HandleSDNode(SDOperand X) : SDNode(ISD::HANDLENODE, X) {} ~HandleSDNode() { @@ -1091,6 +1092,7 @@ class StringSDNode : public SDNode { std::string Value; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; StringSDNode(const std::string &val) @@ -1106,6 +1108,7 @@ class ConstantSDNode : public SDNode { uint64_t Value; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; ConstantSDNode(bool isTarget, uint64_t val, MVT::ValueType VT) @@ -1134,6 +1137,7 @@ class ConstantFPSDNode : public SDNode { double Value; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; ConstantFPSDNode(bool isTarget, double val, MVT::ValueType VT) @@ -1160,6 +1164,7 @@ class GlobalAddressSDNode : public SDNode { GlobalValue *TheGlobal; int Offset; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; GlobalAddressSDNode(bool isTarget, const GlobalValue *GA, MVT::ValueType VT, @@ -1183,6 +1188,7 @@ class FrameIndexSDNode : public SDNode { int FI; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; FrameIndexSDNode(int fi, MVT::ValueType VT, bool isTarg) @@ -1200,6 +1206,7 @@ class JumpTableSDNode : public SDNode { int JTI; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; JumpTableSDNode(int jti, MVT::ValueType VT, bool isTarg) @@ -1223,6 +1230,7 @@ } Val; int Offset; // It's a MachineConstantPoolValue if top bit is set. unsigned Alignment; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; ConstantPoolSDNode(bool isTarget, Constant *c, MVT::ValueType VT, @@ -1290,6 +1298,7 @@ class BasicBlockSDNode : public SDNode { MachineBasicBlock *MBB; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; BasicBlockSDNode(MachineBasicBlock *mbb) @@ -1307,6 +1316,7 @@ class SrcValueSDNode : public SDNode { const Value *V; int offset; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; SrcValueSDNode(const Value* v, int o) @@ -1325,6 +1335,7 @@ class RegisterSDNode : public SDNode { unsigned Reg; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; RegisterSDNode(unsigned reg, MVT::ValueType VT) @@ -1341,6 +1352,7 @@ class ExternalSymbolSDNode : public SDNode { const char *Symbol; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; ExternalSymbolSDNode(bool isTarget, const char *Sym, MVT::ValueType VT) @@ -1360,6 +1372,7 @@ class CondCodeSDNode : public SDNode { ISD::CondCode Condition; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; CondCodeSDNode(ISD::CondCode Cond) @@ -1379,6 +1392,7 @@ /// to parameterize some operations. class VTSDNode : public SDNode { MVT::ValueType ValueType; + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. protected: friend class SelectionDAG; VTSDNode(MVT::ValueType VT) @@ -1396,6 +1410,8 @@ /// LoadSDNode - This class is used to represent ISD::LOAD nodes. /// class LoadSDNode : public SDNode { + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. + // AddrMode - unindexed, pre-indexed, post-indexed. ISD::MemIndexedMode AddrMode; @@ -1449,6 +1465,8 @@ /// StoreSDNode - This class is used to represent ISD::STORE nodes. /// class StoreSDNode : public SDNode { + virtual void ANCHOR(); // Out-of-line virtual method to give class a home. + // AddrMode - unindexed, pre-indexed, post-indexed. ISD::MemIndexedMode AddrMode; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits