summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp
diff options
context:
space:
mode:
authorTanya Lattner <tonic@nondot.org>2005-02-16 04:00:59 +0000
committerTanya Lattner <tonic@nondot.org>2005-02-16 04:00:59 +0000
commitc28fd0db2ea0249e05c8a87b1c7eed22832e782e (patch)
tree67eb95a1fcd344558f2b7b1009e1274cbd4f63a2 /llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp
parent3e7a193bd7ee0932892546d0842cfedd037886a4 (diff)
downloadbcm5719-llvm-c28fd0db2ea0249e05c8a87b1c7eed22832e782e.tar.gz
bcm5719-llvm-c28fd0db2ea0249e05c8a87b1c7eed22832e782e.zip
Fixed node deletion bug.
llvm-svn: 20207
Diffstat (limited to 'llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp')
-rw-r--r--llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp b/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp
index 15dc5b32ce6..985743d8e8b 100644
--- a/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp
+++ b/llvm/lib/Target/SparcV9/ModuloScheduling/ModuloScheduling.cpp
@@ -77,6 +77,8 @@ namespace llvm {
Statistic<> MSLoops("modulosched-schedLoops", "Number of loops successfully modulo-scheduled");
Statistic<> IncreasedII("modulosched-increasedII", "Number of times we had to increase II");
Statistic<> SingleBBLoops("modulosched-singeBBLoops", "Number of single basic block loops");
+ Statistic<> NoSched("modulosched-noSched", "No schedule");
+ Statistic<> SameStage("modulosched-sameStage", "Max stage is 0");
template<>
struct DOTGraphTraits<MSchedGraph*> : public DefaultDOTGraphTraits {
@@ -252,9 +254,13 @@ bool ModuloSchedulingPass::runOnFunction(Function &F) {
++MSLoops;
Changed = true;
}
- else
+ else {
+ if(!haveSched)
+ ++NoSched;
+ else
+ ++SameStage;
DEBUG(std::cerr << "Max stage is 0, so no change in loop or reached cap\n");
-
+ }
//Clear out our maps for the next basic block that is processed
nodeToAttributesMap.clear();
partialOrder.clear();
OpenPOWER on IntegriCloud