summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-12-11 20:03:57 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-12-11 20:03:57 +0000
commit01c73610d0fd4f12f19f44083437106957a737c4 (patch)
tree6ce937ee91e00b763dfd515c00fa6c5b54cfb4ae /llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
parent4e654cd66451354b84cac12b1fc0321a451519d6 (diff)
downloadbcm5719-llvm-01c73610d0fd4f12f19f44083437106957a737c4.tar.gz
bcm5719-llvm-01c73610d0fd4f12f19f44083437106957a737c4.zip
This reverts commit r224043 and r224042.
check-llvm was failing. llvm-svn: 224045
Diffstat (limited to 'llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp')
-rw-r--r--llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp40
1 files changed, 23 insertions, 17 deletions
diff --git a/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp b/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
index 52aff2787ba..cd18dfb6305 100644
--- a/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
+++ b/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
@@ -103,10 +103,10 @@ public:
}
bool addInstSelector() override;
- void addPreRegAlloc() override;
- void addPostRegAlloc() override;
- void addPreSched2() override;
- void addPreEmitPass() override;
+ bool addPreRegAlloc() override;
+ bool addPostRegAlloc() override;
+ bool addPreSched2() override;
+ bool addPreEmitPass() override;
};
} // namespace
@@ -131,45 +131,51 @@ bool HexagonPassConfig::addInstSelector() {
return false;
}
-void HexagonPassConfig::addPreRegAlloc() {
+bool HexagonPassConfig::addPreRegAlloc() {
if (getOptLevel() != CodeGenOpt::None)
if (!DisableHardwareLoops)
- addPass(createHexagonHardwareLoops(), false);
+ addPass(createHexagonHardwareLoops());
+ return false;
}
-void HexagonPassConfig::addPostRegAlloc() {
+bool HexagonPassConfig::addPostRegAlloc() {
const HexagonTargetMachine &TM = getHexagonTargetMachine();
if (getOptLevel() != CodeGenOpt::None)
if (!DisableHexagonCFGOpt)
- addPass(createHexagonCFGOptimizer(TM), false);
+ addPass(createHexagonCFGOptimizer(TM));
+ return false;
}
-void HexagonPassConfig::addPreSched2() {
+bool HexagonPassConfig::addPreSched2() {
const HexagonTargetMachine &TM = getHexagonTargetMachine();
- addPass(createHexagonCopyToCombine(), false);
+ addPass(createHexagonCopyToCombine());
if (getOptLevel() != CodeGenOpt::None)
- addPass(&IfConverterID, false);
+ addPass(&IfConverterID);
addPass(createHexagonSplitConst32AndConst64(TM));
+ printAndVerify("After hexagon split const32/64 pass");
+ return true;
}
-void HexagonPassConfig::addPreEmitPass() {
+bool HexagonPassConfig::addPreEmitPass() {
const HexagonTargetMachine &TM = getHexagonTargetMachine();
bool NoOpt = (getOptLevel() == CodeGenOpt::None);
if (!NoOpt)
- addPass(createHexagonNewValueJump(), false);
+ addPass(createHexagonNewValueJump());
// Expand Spill code for predicate registers.
- addPass(createHexagonExpandPredSpillCode(TM), false);
+ addPass(createHexagonExpandPredSpillCode(TM));
// Split up TFRcondsets into conditional transfers.
- addPass(createHexagonSplitTFRCondSets(TM), false);
+ addPass(createHexagonSplitTFRCondSets(TM));
// Create Packets.
if (!NoOpt) {
if (!DisableHardwareLoops)
- addPass(createHexagonFixupHwLoops(), false);
- addPass(createHexagonPacketizer(), false);
+ addPass(createHexagonFixupHwLoops());
+ addPass(createHexagonPacketizer());
}
+
+ return false;
}
OpenPOWER on IntegriCloud