Changes in directory llvm/lib/CodeGen/SelectionDAG:
LegalizeDAG.cpp updated: 1.466 -> 1.467 --- Log message: Switch ComputeTopDownOrdering over to using a densemap. This speeds up isel as a whole by 3.3%. --- Diffs of the changes: (+3 -2) LegalizeDAG.cpp | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) Index: llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp diff -u llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.466 llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.467 --- llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp:1.466 Fri Feb 2 18:43:46 2007 +++ llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp Fri Feb 2 19:12:36 2007 @@ -25,6 +25,7 @@ #include "llvm/Support/MathExtras.h" #include "llvm/Support/CommandLine.h" #include "llvm/Support/Compiler.h" +#include "llvm/ADT/DenseMap.h" #include "llvm/ADT/SmallVector.h" #include <map> using namespace llvm; @@ -290,7 +291,7 @@ /// ComputeTopDownOrdering - Add the specified node to the Order list if it has /// not been visited yet and if all of its operands have already been visited. static void ComputeTopDownOrdering(SDNode *N, std::vector<SDNode*> &Order, - std::map<SDNode*, unsigned> &Visited) { + DenseMap<SDNode*, unsigned> &Visited) { if (++Visited[N] != N->getNumOperands()) return; // Haven't visited all operands yet @@ -318,7 +319,7 @@ // practice however, this causes us to run out of stack space on large basic // blocks. To avoid this problem, compute an ordering of the nodes where each // node is only legalized after all of its operands are legalized. - std::map<SDNode*, unsigned> Visited; + DenseMap<SDNode*, unsigned> Visited; std::vector<SDNode*> Order; // Compute ordering from all of the leaves in the graphs, those (like the _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits