Skip to content

Commit 1fdf02a

Browse files
authored
[LLVM][CodeGen] Add convenience accessors for MachineFunctionProperties (#140002)
Add per-property has<Prop>/set<Prop>/reset<Prop> functions to MachineFunctionProperties.
1 parent eee9582 commit 1fdf02a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+152
-246
lines changed

llvm/include/llvm/CodeGen/BranchFoldingPass.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@ class BranchFolderPass : public PassInfoMixin<BranchFolderPass> {
2121
MachineFunctionAnalysisManager &MFAM);
2222

2323
MachineFunctionProperties getRequiredProperties() const {
24-
return MachineFunctionProperties().set(
25-
MachineFunctionProperties::Property::NoPHIs);
24+
return MachineFunctionProperties().setNoPHIs();
2625
}
2726
};
2827

llvm/include/llvm/CodeGen/ExecutionDomainFix.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,8 +148,7 @@ class ExecutionDomainFix : public MachineFunctionPass {
148148
bool runOnMachineFunction(MachineFunction &MF) override;
149149

150150
MachineFunctionProperties getRequiredProperties() const override {
151-
return MachineFunctionProperties().set(
152-
MachineFunctionProperties::Property::NoVRegs);
151+
return MachineFunctionProperties().setNoVRegs();
153152
}
154153

155154
private:

llvm/include/llvm/CodeGen/GlobalISel/InstructionSelect.h

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,13 @@ class InstructionSelect : public MachineFunctionPass {
4141

4242
MachineFunctionProperties getRequiredProperties() const override {
4343
return MachineFunctionProperties()
44-
.set(MachineFunctionProperties::Property::IsSSA)
45-
.set(MachineFunctionProperties::Property::Legalized)
46-
.set(MachineFunctionProperties::Property::RegBankSelected);
44+
.setIsSSA()
45+
.setLegalized()
46+
.setRegBankSelected();
4747
}
4848

4949
MachineFunctionProperties getSetProperties() const override {
50-
return MachineFunctionProperties().set(
51-
MachineFunctionProperties::Property::Selected);
50+
return MachineFunctionProperties().setSelected();
5251
}
5352

5453
InstructionSelect(CodeGenOptLevel OL = CodeGenOptLevel::Default,

llvm/include/llvm/CodeGen/GlobalISel/Legalizer.h

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -56,19 +56,15 @@ class Legalizer : public MachineFunctionPass {
5656
void getAnalysisUsage(AnalysisUsage &AU) const override;
5757

5858
MachineFunctionProperties getRequiredProperties() const override {
59-
return MachineFunctionProperties().set(
60-
MachineFunctionProperties::Property::IsSSA);
59+
return MachineFunctionProperties().setIsSSA();
6160
}
6261

6362
MachineFunctionProperties getSetProperties() const override {
64-
return MachineFunctionProperties().set(
65-
MachineFunctionProperties::Property::Legalized);
63+
return MachineFunctionProperties().setLegalized();
6664
}
6765

6866
MachineFunctionProperties getClearedProperties() const override {
69-
return MachineFunctionProperties()
70-
.set(MachineFunctionProperties::Property::NoPHIs)
71-
.set(MachineFunctionProperties::Property::NoVRegs);
67+
return MachineFunctionProperties().setNoPHIs().setNoVRegs();
7268
}
7369

7470
bool runOnMachineFunction(MachineFunction &MF) override;

llvm/include/llvm/CodeGen/GlobalISel/LoadStoreOpt.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,7 @@ class LoadStoreOpt : public MachineFunctionPass {
169169
StringRef getPassName() const override { return "LoadStoreOpt"; }
170170

171171
MachineFunctionProperties getRequiredProperties() const override {
172-
return MachineFunctionProperties()
173-
.set(MachineFunctionProperties::Property::IsSSA);
172+
return MachineFunctionProperties().setIsSSA();
174173
}
175174

176175
void getAnalysisUsage(AnalysisUsage &AU) const override;

llvm/include/llvm/CodeGen/GlobalISel/Localizer.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,7 @@ class Localizer : public MachineFunctionPass {
8585
StringRef getPassName() const override { return "Localizer"; }
8686

8787
MachineFunctionProperties getRequiredProperties() const override {
88-
return MachineFunctionProperties()
89-
.set(MachineFunctionProperties::Property::IsSSA);
88+
return MachineFunctionProperties().setIsSSA();
9089
}
9190

9291
void getAnalysisUsage(AnalysisUsage &AU) const override;

llvm/include/llvm/CodeGen/GlobalISel/RegBankSelect.h

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -624,19 +624,15 @@ class RegBankSelect : public MachineFunctionPass {
624624
void getAnalysisUsage(AnalysisUsage &AU) const override;
625625

626626
MachineFunctionProperties getRequiredProperties() const override {
627-
return MachineFunctionProperties()
628-
.set(MachineFunctionProperties::Property::IsSSA)
629-
.set(MachineFunctionProperties::Property::Legalized);
627+
return MachineFunctionProperties().setIsSSA().setLegalized();
630628
}
631629

632630
MachineFunctionProperties getSetProperties() const override {
633-
return MachineFunctionProperties().set(
634-
MachineFunctionProperties::Property::RegBankSelected);
631+
return MachineFunctionProperties().setRegBankSelected();
635632
}
636633

637634
MachineFunctionProperties getClearedProperties() const override {
638-
return MachineFunctionProperties()
639-
.set(MachineFunctionProperties::Property::NoPHIs);
635+
return MachineFunctionProperties().setNoPHIs();
640636
}
641637

642638
/// Check that our input is fully legal: we require the function to have the

llvm/include/llvm/CodeGen/IndirectThunks.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,8 +157,8 @@ void ThunkInserter<Derived, InsertedThunksTy>::createThunkFunction(
157157
// generate one. At least GlobalISel asserts if this invariant isn't
158158
// respected.
159159

160-
// Set MF properties. We never use vregs...
161-
MF.getProperties().set(MachineFunctionProperties::Property::NoVRegs);
160+
// Set MF properties. We never use vregs.
161+
MF.getProperties().setNoVRegs();
162162
}
163163

164164
template <typename Derived, typename InsertedThunksTy>

llvm/include/llvm/CodeGen/LiveDebugVariables.h

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,7 @@ class LiveDebugVariablesWrapperLegacy : public MachineFunctionPass {
8888
void getAnalysisUsage(AnalysisUsage &) const override;
8989

9090
MachineFunctionProperties getSetProperties() const override {
91-
return MachineFunctionProperties().set(
92-
MachineFunctionProperties::Property::TracksDebugUserValues);
91+
return MachineFunctionProperties().setTracksDebugUserValues();
9392
}
9493
};
9594

@@ -102,8 +101,7 @@ class LiveDebugVariablesAnalysis
102101
using Result = LiveDebugVariables;
103102

104103
MachineFunctionProperties getSetProperties() const {
105-
return MachineFunctionProperties().set(
106-
MachineFunctionProperties::Property::TracksDebugUserValues);
104+
return MachineFunctionProperties().setTracksDebugUserValues();
107105
}
108106

109107
Result run(MachineFunction &MF, MachineFunctionAnalysisManager &MFAM);

llvm/include/llvm/CodeGen/MachineCSE.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ class MachineCSEPass : public PassInfoMixin<MachineCSEPass> {
1919
MachineFunctionAnalysisManager &MFAM);
2020

2121
MachineFunctionProperties getRequiredProperties() const {
22-
return MachineFunctionProperties().set(
23-
MachineFunctionProperties::Property::IsSSA);
22+
return MachineFunctionProperties().setIsSSA();
2423
}
2524
};
2625

0 commit comments

Comments
 (0)