mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-05 13:26:55 +00:00
Print IR from Hexagon MI passes with -print-before/after-all.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181255 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -49,6 +49,11 @@
|
||||
|
||||
using namespace llvm;
|
||||
|
||||
namespace llvm {
|
||||
void initializeHexagonSplitTFRCondSetsPass(PassRegistry&);
|
||||
}
|
||||
|
||||
|
||||
namespace {
|
||||
|
||||
class HexagonSplitTFRCondSets : public MachineFunctionPass {
|
||||
@@ -58,7 +63,9 @@ class HexagonSplitTFRCondSets : public MachineFunctionPass {
|
||||
public:
|
||||
static char ID;
|
||||
HexagonSplitTFRCondSets(const HexagonTargetMachine& TM) :
|
||||
MachineFunctionPass(ID), QTM(TM), QST(*TM.getSubtargetImpl()) {}
|
||||
MachineFunctionPass(ID), QTM(TM), QST(*TM.getSubtargetImpl()) {
|
||||
initializeHexagonSplitTFRCondSetsPass(*PassRegistry::getPassRegistry());
|
||||
}
|
||||
|
||||
const char *getPassName() const {
|
||||
return "Hexagon Split TFRCondSets";
|
||||
@@ -211,6 +218,17 @@ bool HexagonSplitTFRCondSets::runOnMachineFunction(MachineFunction &Fn) {
|
||||
// Public Constructor Functions
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
static void initializePassOnce(PassRegistry &Registry) {
|
||||
const char *Name = "Hexagon Split TFRCondSets";
|
||||
PassInfo *PI = new PassInfo(Name, "hexagon-split-tfr",
|
||||
&HexagonSplitTFRCondSets::ID, 0, false, false);
|
||||
Registry.registerPass(*PI, true);
|
||||
}
|
||||
|
||||
void llvm::initializeHexagonSplitTFRCondSetsPass(PassRegistry &Registry) {
|
||||
CALL_ONCE_INITIALIZATION(initializePassOnce)
|
||||
}
|
||||
|
||||
FunctionPass*
|
||||
llvm::createHexagonSplitTFRCondSets(const HexagonTargetMachine &TM) {
|
||||
return new HexagonSplitTFRCondSets(TM);
|
||||
|
Reference in New Issue
Block a user