forked from OSchip/llvm-project
[AArch64] Register (existing) AArch64ExpandPseudo pass with LLVM pass manager.
Summary: Among other things, this allows -print-after-all/-print-before-all to dump IR around this pass. llvm-svn: 244046
This commit is contained in:
parent
45f3954ce9
commit
9378c16ac8
|
@ -22,18 +22,26 @@
|
|||
#include "llvm/Support/MathExtras.h"
|
||||
using namespace llvm;
|
||||
|
||||
namespace llvm {
|
||||
void initializeAArch64ExpandPseudoPass(PassRegistry &);
|
||||
}
|
||||
|
||||
#define AARCH64_EXPAND_PSEUDO_NAME "AArch64 pseudo instruction expansion pass"
|
||||
|
||||
namespace {
|
||||
class AArch64ExpandPseudo : public MachineFunctionPass {
|
||||
public:
|
||||
static char ID;
|
||||
AArch64ExpandPseudo() : MachineFunctionPass(ID) {}
|
||||
AArch64ExpandPseudo() : MachineFunctionPass(ID) {
|
||||
initializeAArch64ExpandPseudoPass(*PassRegistry::getPassRegistry());
|
||||
}
|
||||
|
||||
const AArch64InstrInfo *TII;
|
||||
|
||||
bool runOnMachineFunction(MachineFunction &Fn) override;
|
||||
|
||||
const char *getPassName() const override {
|
||||
return "AArch64 pseudo instruction expansion pass";
|
||||
return AARCH64_EXPAND_PSEUDO_NAME;
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -45,6 +53,9 @@ private:
|
|||
char AArch64ExpandPseudo::ID = 0;
|
||||
}
|
||||
|
||||
INITIALIZE_PASS(AArch64ExpandPseudo, "aarch64-expand-pseudo",
|
||||
AARCH64_EXPAND_PSEUDO_NAME, false, false)
|
||||
|
||||
/// \brief Transfer implicit operands on the pseudo instruction to the
|
||||
/// instructions created from the expansion.
|
||||
static void transferImpOps(MachineInstr &OldMI, MachineInstrBuilder &UseMI,
|
||||
|
|
Loading…
Reference in New Issue