[llvm] [MachineLateInstrsCleanup] Minor fixing (NFC). (PR #117816)
Jonas Paulsson via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 26 16:36:25 PST 2024
https://github.com/JonPsson1 updated https://github.com/llvm/llvm-project/pull/117816
>From 253eb29c591a6a30be6fd249d7a0f0d912da5add Mon Sep 17 00:00:00 2001
From: Jonas Paulsson <paulson1 at linux.ibm.com>
Date: Tue, 26 Nov 2024 14:43:22 -0600
Subject: [PATCH] Update comment and remove unused parameter.
---
llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp | 18 +++++++-----------
1 file changed, 7 insertions(+), 11 deletions(-)
diff --git a/llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp b/llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
index 14a49853f68b8e..6399e8a9523685 100644
--- a/llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
+++ b/llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
@@ -57,7 +57,6 @@ class MachineLateInstrsCleanup : public MachineFunctionPass {
void removeRedundantDef(MachineInstr *MI);
void clearKillsForDef(Register Reg, MachineBasicBlock *MBB,
- MachineBasicBlock::iterator I,
BitVector &VisitedPreds);
public:
@@ -110,14 +109,11 @@ bool MachineLateInstrsCleanup::runOnMachineFunction(MachineFunction &MF) {
return Changed;
}
-// Clear any previous kill flag on Reg found before I in MBB. Walk backwards
-// in MBB and if needed continue in predecessors until a use/def of Reg is
-// encountered. This seems to be faster in practice than tracking kill flags
-// in a map.
-void MachineLateInstrsCleanup::
-clearKillsForDef(Register Reg, MachineBasicBlock *MBB,
- MachineBasicBlock::iterator I,
- BitVector &VisitedPreds) {
+// Clear any preceding kill flag on Reg after removing a redundant
+// definition.
+void MachineLateInstrsCleanup::clearKillsForDef(Register Reg,
+ MachineBasicBlock *MBB,
+ BitVector &VisitedPreds) {
VisitedPreds.set(MBB->getNumber());
// Kill flag in MBB
@@ -137,13 +133,13 @@ clearKillsForDef(Register Reg, MachineBasicBlock *MBB,
assert(!MBB->pred_empty() && "Predecessor def not found!");
for (MachineBasicBlock *Pred : MBB->predecessors())
if (!VisitedPreds.test(Pred->getNumber()))
- clearKillsForDef(Reg, Pred, Pred->end(), VisitedPreds);
+ clearKillsForDef(Reg, Pred, VisitedPreds);
}
void MachineLateInstrsCleanup::removeRedundantDef(MachineInstr *MI) {
Register Reg = MI->getOperand(0).getReg();
BitVector VisitedPreds(MI->getMF()->getNumBlockIDs());
- clearKillsForDef(Reg, MI->getParent(), MI->getIterator(), VisitedPreds);
+ clearKillsForDef(Reg, MI->getParent(), VisitedPreds);
MI->eraseFromParent();
++NumRemoved;
}
More information about the llvm-commits
mailing list