Add an option to the DAG Combiner to enable it for beta runs, and turn on
that option for PowerPC's beta.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23253 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
index 52110a1..d2501d8 100644
--- a/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+++ b/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
@@ -37,6 +37,7 @@
#define DEBUG_TYPE "dagcombine"
#include "llvm/ADT/Statistic.h"
#include "llvm/CodeGen/SelectionDAG.h"
+#include "llvm/Support/Debug.h"
#include "llvm/Support/MathExtras.h"
#include "llvm/Target/TargetLowering.h"
#include <cmath>
@@ -76,8 +77,8 @@
// Visitation implementation - Implement dag node combining for different
// node types. The semantics are as follows:
// Return Value:
- // null - No change was made
- // otherwise - Node N should be replaced by the returned node.
+ // SDOperand.Val == 0 - No change was made
+ // otherwise - N should be replaced by the returned Operand.
//
SDOperand visitTokenFactor(SDNode *N);
SDOperand visitADD(SDNode *N);
@@ -266,9 +267,9 @@
// CombineTo was used. Since CombineTo takes care of the worklist
// mechanics for us, we have no work to do in this case.
if (RV.Val != N) {
- std::cerr << "\nReplacing "; N->dump();
- std::cerr << "\nWith: "; RV.Val->dump();
- std::cerr << '\n';
+ DEBUG(std::cerr << "\nReplacing "; N->dump();
+ std::cerr << "\nWith: "; RV.Val->dump();
+ std::cerr << '\n');
DAG.ReplaceAllUsesWith(SDOperand(N, 0), RV);
// Push the new node and any users onto the worklist