aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNAKAMURA Takumi <geek4civic@gmail.com>2012-03-16 00:01:55 +0000
committerNAKAMURA Takumi <geek4civic@gmail.com>2012-03-16 00:01:55 +0000
commitb99ea7cb3fe8af46bdc2ad68550632f5c16bdaa9 (patch)
treebc6ba336331284580878e7a02e9edd76fd603637
parent2125d5a7e58eb21f34c2a21913d6f1074c63b5cd (diff)
Revert r152613 (and r152614), "Inline the d'tor and add an anchor instead." for workaround of g++-4.4's miscompilation.
It caused MSP430DAGToDAGISel::SelectIndexedBinOp() to be miscompiled. When two ReplaceUses()'s are expanded as inline, vtable in base class is stored to latter (ISelUpdater)ISU. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152877 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/llvm/CodeGen/SelectionDAG.h3
-rw-r--r--lib/CodeGen/SelectionDAG/SelectionDAG.cpp2
2 files changed, 2 insertions, 3 deletions
diff --git a/include/llvm/CodeGen/SelectionDAG.h b/include/llvm/CodeGen/SelectionDAG.h
index c101473c8b..f921ca20be 100644
--- a/include/llvm/CodeGen/SelectionDAG.h
+++ b/include/llvm/CodeGen/SelectionDAG.h
@@ -820,9 +820,8 @@ public:
/// the DAG can optionally implement this interface. This allows the clients
/// to handle the various sorts of updates that happen.
class DAGUpdateListener {
- virtual void anchor();
public:
- virtual ~DAGUpdateListener() {}
+ virtual ~DAGUpdateListener();
/// NodeDeleted - The node N that was deleted and, if E is not null, an
/// equivalent node E that replaced it.
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
index 5111daea25..34659bb1a4 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
@@ -70,7 +70,7 @@ static const fltSemantics *EVTToAPFloatSemantics(EVT VT) {
}
}
-void SelectionDAG::DAGUpdateListener::anchor() {}
+SelectionDAG::DAGUpdateListener::~DAGUpdateListener() {}
//===----------------------------------------------------------------------===//
// ConstantFPSDNode Class