Skip to content

Commit bbb53d1

Browse files
authored
[NFC] Make AMDGPUCombinerHelper methods const (llvm#121903)
(This replaces llvm#121740. Sorry for wasting your time.) This is a follow-up to a previous commit (ee7ca0d) which eliminated several "TODO: make CombinerHelper methods const" remarks. As promised in that ealier commit, this change completes the set by also making the methods of AMDGPUCombinerHelper const so that the Helper member of AMDGPUPreLegalizerCombinerImpl can be const rather than explicitly mutable.
1 parent aee51b4 commit bbb53d1

File tree

3 files changed

+11
-12
lines changed

3 files changed

+11
-12
lines changed

llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.cpp

+5-5
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,7 @@ static unsigned inverseMinMax(unsigned Opc) {
197197
}
198198

199199
bool AMDGPUCombinerHelper::matchFoldableFneg(MachineInstr &MI,
200-
MachineInstr *&MatchInfo) {
200+
MachineInstr *&MatchInfo) const {
201201
Register Src = MI.getOperand(1).getReg();
202202
MatchInfo = MRI.getVRegDef(Src);
203203

@@ -266,7 +266,7 @@ bool AMDGPUCombinerHelper::matchFoldableFneg(MachineInstr &MI,
266266
}
267267

268268
void AMDGPUCombinerHelper::applyFoldableFneg(MachineInstr &MI,
269-
MachineInstr *&MatchInfo) {
269+
MachineInstr *&MatchInfo) const {
270270
// Transform:
271271
// %A = inst %Op1, ...
272272
// %B = fneg %A
@@ -425,7 +425,7 @@ static bool isFPExtFromF16OrConst(const MachineRegisterInfo &MRI,
425425
bool AMDGPUCombinerHelper::matchExpandPromotedF16FMed3(MachineInstr &MI,
426426
Register Src0,
427427
Register Src1,
428-
Register Src2) {
428+
Register Src2) const {
429429
assert(MI.getOpcode() == TargetOpcode::G_FPTRUNC);
430430
Register SrcReg = MI.getOperand(1).getReg();
431431
if (!MRI.hasOneNonDBGUse(SrcReg) || MRI.getType(SrcReg) != LLT::scalar(32))
@@ -438,7 +438,7 @@ bool AMDGPUCombinerHelper::matchExpandPromotedF16FMed3(MachineInstr &MI,
438438
void AMDGPUCombinerHelper::applyExpandPromotedF16FMed3(MachineInstr &MI,
439439
Register Src0,
440440
Register Src1,
441-
Register Src2) {
441+
Register Src2) const {
442442
// We expect fptrunc (fpext x) to fold out, and to constant fold any constant
443443
// sources.
444444
Src0 = Builder.buildFPTrunc(LLT::scalar(16), Src0).getReg(0);
@@ -455,7 +455,7 @@ void AMDGPUCombinerHelper::applyExpandPromotedF16FMed3(MachineInstr &MI,
455455

456456
bool AMDGPUCombinerHelper::matchCombineFmulWithSelectToFldexp(
457457
MachineInstr &MI, MachineInstr &Sel,
458-
std::function<void(MachineIRBuilder &)> &MatchInfo) {
458+
std::function<void(MachineIRBuilder &)> &MatchInfo) const {
459459
assert(MI.getOpcode() == TargetOpcode::G_FMUL);
460460
assert(Sel.getOpcode() == TargetOpcode::G_SELECT);
461461
assert(MI.getOperand(2).getReg() == Sel.getOperand(0).getReg());

llvm/lib/Target/AMDGPU/AMDGPUCombinerHelper.h

+5-5
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,17 @@ class AMDGPUCombinerHelper : public CombinerHelper {
3232
MachineDominatorTree *MDT, const LegalizerInfo *LI,
3333
const GCNSubtarget &STI);
3434

35-
bool matchFoldableFneg(MachineInstr &MI, MachineInstr *&MatchInfo);
36-
void applyFoldableFneg(MachineInstr &MI, MachineInstr *&MatchInfo);
35+
bool matchFoldableFneg(MachineInstr &MI, MachineInstr *&MatchInfo) const;
36+
void applyFoldableFneg(MachineInstr &MI, MachineInstr *&MatchInfo) const;
3737

3838
bool matchExpandPromotedF16FMed3(MachineInstr &MI, Register Src0,
39-
Register Src1, Register Src2);
39+
Register Src1, Register Src2) const;
4040
void applyExpandPromotedF16FMed3(MachineInstr &MI, Register Src0,
41-
Register Src1, Register Src2);
41+
Register Src1, Register Src2) const;
4242

4343
bool matchCombineFmulWithSelectToFldexp(
4444
MachineInstr &MI, MachineInstr &Sel,
45-
std::function<void(MachineIRBuilder &)> &MatchInfo);
45+
std::function<void(MachineIRBuilder &)> &MatchInfo) const;
4646
};
4747

4848
} // namespace llvm

llvm/lib/Target/AMDGPU/AMDGPUPreLegalizerCombiner.cpp

+1-2
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,7 @@ class AMDGPUPreLegalizerCombinerImpl : public Combiner {
4545
protected:
4646
const AMDGPUPreLegalizerCombinerImplRuleConfig &RuleConfig;
4747
const GCNSubtarget &STI;
48-
// TODO: Make CombinerHelper methods const.
49-
mutable AMDGPUCombinerHelper Helper;
48+
const AMDGPUCombinerHelper Helper;
5049

5150
public:
5251
AMDGPUPreLegalizerCombinerImpl(

0 commit comments

Comments
 (0)