Skip to content

Commit a85e452

Browse files
committed
Rename to TailDuplicateBaseLegacy and honor optnone
1 parent 1dc08d5 commit a85e452

File tree

1 file changed

+12
-9
lines changed

1 file changed

+12
-9
lines changed

llvm/lib/CodeGen/TailDuplication.cpp

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ using namespace llvm;
3232

3333
namespace {
3434

35-
class TailDuplicateBase : public MachineFunctionPass {
35+
class TailDuplicateBaseLegacy : public MachineFunctionPass {
3636
TailDuplicator Duplicator;
3737
std::unique_ptr<MBFIWrapper> MBFIW;
3838
bool PreRegAlloc;
3939
public:
40-
TailDuplicateBase(char &PassID, bool PreRegAlloc)
41-
: MachineFunctionPass(PassID), PreRegAlloc(PreRegAlloc) {}
40+
TailDuplicateBaseLegacy(char &PassID, bool PreRegAlloc)
41+
: MachineFunctionPass(PassID), PreRegAlloc(PreRegAlloc) {}
4242

4343
bool runOnMachineFunction(MachineFunction &MF) override;
4444

@@ -50,18 +50,18 @@ class TailDuplicateBase : public MachineFunctionPass {
5050
}
5151
};
5252

53-
class TailDuplicateLegacy : public TailDuplicateBase {
53+
class TailDuplicateLegacy : public TailDuplicateBaseLegacy {
5454
public:
5555
static char ID;
56-
TailDuplicateLegacy() : TailDuplicateBase(ID, false) {
56+
TailDuplicateLegacy() : TailDuplicateBaseLegacy(ID, false) {
5757
initializeTailDuplicateLegacyPass(*PassRegistry::getPassRegistry());
5858
}
5959
};
6060

61-
class EarlyTailDuplicateLegacy : public TailDuplicateBase {
61+
class EarlyTailDuplicateLegacy : public TailDuplicateBaseLegacy {
6262
public:
6363
static char ID;
64-
EarlyTailDuplicateLegacy() : TailDuplicateBase(ID, true) {
64+
EarlyTailDuplicateLegacy() : TailDuplicateBaseLegacy(ID, true) {
6565
initializeEarlyTailDuplicateLegacyPass(*PassRegistry::getPassRegistry());
6666
}
6767

@@ -84,7 +84,7 @@ INITIALIZE_PASS(TailDuplicateLegacy, DEBUG_TYPE, "Tail Duplication", false,
8484
INITIALIZE_PASS(EarlyTailDuplicateLegacy, "early-tailduplication",
8585
"Early Tail Duplication", false, false)
8686

87-
bool TailDuplicateBase::runOnMachineFunction(MachineFunction &MF) {
87+
bool TailDuplicateBaseLegacy::runOnMachineFunction(MachineFunction &MF) {
8888
if (skipFunction(MF.getFunction()))
8989
return false;
9090

@@ -108,7 +108,10 @@ bool TailDuplicateBase::runOnMachineFunction(MachineFunction &MF) {
108108
template <typename DerivedT, bool PreRegAlloc>
109109
PreservedAnalyses TailDuplicatePassBase<DerivedT, PreRegAlloc>::run(
110110
MachineFunction &MF, MachineFunctionAnalysisManager &MFAM) {
111-
MFPropsModifier<DerivedT> _(static_cast<DerivedT &>(*this), MF);
111+
MFPropsModifier _(static_cast<DerivedT &>(*this), MF);
112+
113+
if (MF.getFunction().hasOptNone())
114+
return PreservedAnalyses::all();
112115

113116
auto *MBPI = &MFAM.getResult<MachineBranchProbabilityAnalysis>(MF);
114117
auto *PSI = MFAM.getResult<ModuleAnalysisManagerMachineFunctionProxy>(MF)

0 commit comments

Comments
 (0)