diff options
author | paperchalice <liujunchang97@outlook.com> | 2024-06-02 14:31:52 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-02 14:31:52 +0800 |
commit | 8917afaf0ec2ebe390284e3727e720eaf97967eb (patch) | |
tree | a27b331fbd47fb4e7623442371912eda70991487 /llvm/lib/Target/AVR | |
parent | de37c06f01772e02465ccc9f538894c76d89a7a1 (diff) | |
download | llvm-8917afaf0ec2ebe390284e3727e720eaf97967eb.zip llvm-8917afaf0ec2ebe390284e3727e720eaf97967eb.tar.gz llvm-8917afaf0ec2ebe390284e3727e720eaf97967eb.tar.bz2 |
Revert "[NewPM][CodeGen] Port selection dag isel to new pass manager" (#94146)
This reverts commit de37c06f01772e02465ccc9f538894c76d89a7a1 to
de37c06f01772e02465ccc9f538894c76d89a7a1
It still breaks EXPENSIVE_CHECKS build. Sorry.
Diffstat (limited to 'llvm/lib/Target/AVR')
-rw-r--r-- | llvm/lib/Target/AVR/AVR.h | 2 | ||||
-rw-r--r-- | llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp | 18 | ||||
-rw-r--r-- | llvm/lib/Target/AVR/AVRTargetMachine.cpp | 2 |
3 files changed, 8 insertions, 14 deletions
diff --git a/llvm/lib/Target/AVR/AVR.h b/llvm/lib/Target/AVR/AVR.h index 0e67bb4..4b1336e 100644 --- a/llvm/lib/Target/AVR/AVR.h +++ b/llvm/lib/Target/AVR/AVR.h @@ -31,7 +31,7 @@ FunctionPass *createAVRExpandPseudoPass(); FunctionPass *createAVRFrameAnalyzerPass(); FunctionPass *createAVRBranchSelectionPass(); -void initializeAVRDAGToDAGISelLegacyPass(PassRegistry &); +void initializeAVRDAGToDAGISelPass(PassRegistry &); void initializeAVRExpandPseudoPass(PassRegistry &); void initializeAVRShiftExpandPass(PassRegistry &); diff --git a/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp b/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp index 77db876..e67a1e2 100644 --- a/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp +++ b/llvm/lib/Target/AVR/AVRISelDAGToDAG.cpp @@ -29,10 +29,12 @@ namespace { /// Lowers LLVM IR (in DAG form) to AVR MC instructions (in DAG form). class AVRDAGToDAGISel : public SelectionDAGISel { public: + static char ID; + AVRDAGToDAGISel() = delete; AVRDAGToDAGISel(AVRTargetMachine &TM, CodeGenOptLevel OptLevel) - : SelectionDAGISel(TM, OptLevel), Subtarget(nullptr) {} + : SelectionDAGISel(ID, TM, OptLevel), Subtarget(nullptr) {} bool runOnMachineFunction(MachineFunction &MF) override; @@ -58,19 +60,11 @@ private: const AVRSubtarget *Subtarget; }; -class AVRDAGToDAGISelLegacy : public SelectionDAGISelLegacy { -public: - static char ID; - AVRDAGToDAGISelLegacy(AVRTargetMachine &TM, CodeGenOptLevel OptLevel) - : SelectionDAGISelLegacy( - ID, std::make_unique<AVRDAGToDAGISel>(TM, OptLevel)) {} -}; - } // namespace -char AVRDAGToDAGISelLegacy::ID = 0; +char AVRDAGToDAGISel::ID = 0; -INITIALIZE_PASS(AVRDAGToDAGISelLegacy, DEBUG_TYPE, PASS_NAME, false, false) +INITIALIZE_PASS(AVRDAGToDAGISel, DEBUG_TYPE, PASS_NAME, false, false) bool AVRDAGToDAGISel::runOnMachineFunction(MachineFunction &MF) { Subtarget = &MF.getSubtarget<AVRSubtarget>(); @@ -592,5 +586,5 @@ bool AVRDAGToDAGISel::trySelect(SDNode *N) { FunctionPass *llvm::createAVRISelDag(AVRTargetMachine &TM, CodeGenOptLevel OptLevel) { - return new AVRDAGToDAGISelLegacy(TM, OptLevel); + return new AVRDAGToDAGISel(TM, OptLevel); } diff --git a/llvm/lib/Target/AVR/AVRTargetMachine.cpp b/llvm/lib/Target/AVR/AVRTargetMachine.cpp index a8c967f..e0776a6 100644 --- a/llvm/lib/Target/AVR/AVRTargetMachine.cpp +++ b/llvm/lib/Target/AVR/AVRTargetMachine.cpp @@ -95,7 +95,7 @@ extern "C" LLVM_EXTERNAL_VISIBILITY void LLVMInitializeAVRTarget() { auto &PR = *PassRegistry::getPassRegistry(); initializeAVRExpandPseudoPass(PR); initializeAVRShiftExpandPass(PR); - initializeAVRDAGToDAGISelLegacyPass(PR); + initializeAVRDAGToDAGISelPass(PR); } const AVRSubtarget *AVRTargetMachine::getSubtargetImpl() const { |