aboutsummaryrefslogtreecommitdiff
path: root/backend/lib
diff options
context:
space:
mode:
Diffstat (limited to 'backend/lib')
-rw-r--r--backend/lib/CodeGen/MachineOptimizationPipeline.cpp3
-rw-r--r--backend/lib/CodeGen/MachinePseudoExpansion.cpp38
2 files changed, 2 insertions, 39 deletions
diff --git a/backend/lib/CodeGen/MachineOptimizationPipeline.cpp b/backend/lib/CodeGen/MachineOptimizationPipeline.cpp
index dc64b8f..4d20f9a 100644
--- a/backend/lib/CodeGen/MachineOptimizationPipeline.cpp
+++ b/backend/lib/CodeGen/MachineOptimizationPipeline.cpp
@@ -102,9 +102,6 @@ addPostRegisterAllocationPipeline(MachineFunctionPassManager &Pipeline,
Added = addPass<MachineShrinkWrappingPass>(Pipeline, TargetInfo.FrameLowering);
if (!Added)
return std::unexpected(Added.error());
- Added = addPass<PrePEITargetPseudoExpansionPass>(Pipeline, TargetInfo.PseudoExpansion);
- if (!Added)
- return std::unexpected(Added.error());
Added = addPass<PrologueEpilogueInsertionPass>(Pipeline, TargetInfo.FrameLowering);
if (!Added)
return std::unexpected(Added.error());
diff --git a/backend/lib/CodeGen/MachinePseudoExpansion.cpp b/backend/lib/CodeGen/MachinePseudoExpansion.cpp
index 8388079..e81168c 100644
--- a/backend/lib/CodeGen/MachinePseudoExpansion.cpp
+++ b/backend/lib/CodeGen/MachinePseudoExpansion.cpp
@@ -99,9 +99,8 @@ using BlockSizeSnapshot = std::vector<std::pair<MachineBlockStableID, std::uint6
return makeUnexpected(ErrorCode::PseudoExpansionFailed,
"post-selection pseudo expansion created a virtual register");
}
- if (Phase != MachinePseudoExpansionPhase::PrePEI &&
- (Before.FrameObjectCount != After.FrameObjectCount ||
- Before.FrameFrozen != After.FrameFrozen)) {
+ if (Before.FrameObjectCount != After.FrameObjectCount ||
+ Before.FrameFrozen != After.FrameFrozen) {
return makeUnexpected(ErrorCode::PseudoExpansionFailed,
"post-PEI pseudo expansion changed frozen frame resources");
}
@@ -112,8 +111,6 @@ using BlockSizeSnapshot = std::vector<std::pair<MachineBlockStableID, std::uint6
switch (Phase) {
case MachinePseudoExpansionPhase::PreRA:
return PseudoOwner::PreRAExpansion;
- case MachinePseudoExpansionPhase::PrePEI:
- return PseudoOwner::PrePEIExpansion;
case MachinePseudoExpansionPhase::PostRA:
return PseudoOwner::PostRAExpansion;
case MachinePseudoExpansionPhase::TargetLate:
@@ -155,21 +152,6 @@ using BlockSizeSnapshot = std::vector<std::pair<MachineBlockStableID, std::uint6
MachinePassChange::Registers};
return Value;
}();
- static const MachinePassContract PrePEI = [] {
- MachinePassContract Value{
- .Name = "pre-pei-target-pseudo-expansion",
- .Requires = {MachineFunctionProperty::Selected, MachineFunctionProperty::NoPHIs,
- MachineFunctionProperty::NoVRegs, MachineFunctionProperty::TracksLiveness},
- .Sets = {},
- .Clears = {},
- .RequiredAnalyses = {},
- .VerificationStage = PipelineStage::RegisterAllocated,
- };
- Value.ThreadSafety = PassThreadSafety::ThreadSafe;
- Value.DeclaredChanges = {MachinePassChange::Instructions, MachinePassChange::Operands,
- MachinePassChange::Frame};
- return Value;
- }();
static const MachinePassContract PostRA = [] {
MachinePassContract Value{
.Name = "postrapseudos",
@@ -205,8 +187,6 @@ using BlockSizeSnapshot = std::vector<std::pair<MachineBlockStableID, std::uint6
switch (Phase) {
case MachinePseudoExpansionPhase::PreRA:
return PreRA;
- case MachinePseudoExpansionPhase::PrePEI:
- return PrePEI;
case MachinePseudoExpansionPhase::PostRA:
return PostRA;
case MachinePseudoExpansionPhase::TargetLate:
@@ -450,20 +430,6 @@ PreparePostRAPseudosPass::run(MachineFunction &Function, const TargetDescription
return runPreparationTransaction(Function, Target, *Info, Analyses);
}
-const MachinePassContract &PrePEITargetPseudoExpansionPass::contract() const noexcept {
- return phaseContract(MachinePseudoExpansionPhase::PrePEI);
-}
-
-Expected<MachinePassResult>
-PrePEITargetPseudoExpansionPass::run(MachineFunction &Function, const TargetDescription &Target,
- MachineFunctionAnalysisManager &Analyses) {
- if (!Function.properties().containsAll(contract().Requires))
- return makeUnexpected(ErrorCode::VerificationError,
- "pre-PEI pseudo expansion requires allocated tracked-liveness MIR");
- return runExpansionTransaction(Function, Target, *Info, MachinePseudoExpansionPhase::PrePEI,
- nullptr, Analyses);
-}
-
const MachinePassContract &ExpandPostRAPseudosPass::contract() const noexcept {
return phaseContract(MachinePseudoExpansionPhase::PostRA);
}