Add some out-of-line virtual dtors so that the class has a "home", preventing

vtables for (e.g.) Instruction from being emitted into every .o file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28898 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2006-06-21 16:53:47 +00:00
parent 0ad19703ae
commit 70aa33ee37
7 changed files with 36 additions and 8 deletions

View File

@ -52,11 +52,9 @@ protected:
Instruction(const Type *Ty, unsigned iType, Use *Ops, unsigned NumOps,
const std::string &Name, BasicBlock *InsertAtEnd);
public:
~Instruction() {
assert(Parent == 0 && "Instruction still linked in the program!");
}
// Out of line virtual method, so the vtable, etc has a home.
~Instruction();
/// mayWriteToMemory - Return true if this instruction may modify memory.
///
virtual bool mayWriteToMemory() const { return false; }