[ARM] Register ARMExpandPseudo pass.

This allows -run-pass etc. to refer to it.

(Split off from D35156.)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@312587 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Eli Friedman 2017-09-05 22:45:23 +00:00
parent ef318e5ebe
commit 23b8a4b6a8
3 changed files with 8 additions and 1 deletions

View File

@ -60,6 +60,7 @@ std::vector<BasicBlockInfo> computeAllBlockSizes(MachineFunction *MF);
void initializeARMLoadStoreOptPass(PassRegistry &);
void initializeARMPreAllocLoadStoreOptPass(PassRegistry &);
void initializeARMConstantIslandsPass(PassRegistry &);
void initializeARMExpandPseudoPass(PassRegistry &);
} // end namespace llvm

View File

@ -33,6 +33,8 @@ static cl::opt<bool>
VerifyARMPseudo("verify-arm-pseudo-expand", cl::Hidden,
cl::desc("Verify machine code after expanding ARM pseudos"));
#define ARM_EXPAND_PSEUDO_NAME "ARM pseudo instruction expansion pass"
namespace {
class ARMExpandPseudo : public MachineFunctionPass {
public:
@ -52,7 +54,7 @@ namespace {
}
StringRef getPassName() const override {
return "ARM pseudo instruction expansion pass";
return ARM_EXPAND_PSEUDO_NAME;
}
private:
@ -81,6 +83,9 @@ namespace {
char ARMExpandPseudo::ID = 0;
}
INITIALIZE_PASS(ARMExpandPseudo, DEBUG_TYPE, ARM_EXPAND_PSEUDO_NAME, false,
false)
/// TransferImpOps - Transfer implicit operands on the pseudo instruction to
/// the instructions created from the expansion.
void ARMExpandPseudo::TransferImpOps(MachineInstr &OldMI,

View File

@ -91,6 +91,7 @@ extern "C" void LLVMInitializeARMTarget() {
initializeARMPreAllocLoadStoreOptPass(Registry);
initializeARMConstantIslandsPass(Registry);
initializeARMExecutionDepsFixPass(Registry);
initializeARMExpandPseudoPass(Registry);
}
static std::unique_ptr<TargetLoweringObjectFile> createTLOF(const Triple &TT) {