[llvm] [CodeGen] Remove LiveVariables::{isPHIJoin, setPHIJoin} (PR #69128)

Kazu Hirata via llvm-commits llvm-commits at lists.llvm.org
Sun Oct 15 13:55:30 PDT 2023


https://github.com/kazutakahirata created https://github.com/llvm/llvm-project/pull/69128

The last use of isPHIJoin was removed by:

  commit fac770b865f59cbe615241dad153ad20d5138b9e
  Author: Jakob Stoklund Olesen <stoklund at 2pi.dk>
  Date:   Sat Feb 9 00:04:07 2013 +0000

so there is no reason to maintain PHIJoins.


>From 4a7029a16b85909e9789832beb55f3da321f6e3a Mon Sep 17 00:00:00 2001
From: Kazu Hirata <kazu at google.com>
Date: Sun, 15 Oct 2023 13:13:19 -0700
Subject: [PATCH] [CodeGen] Remove LiveVariables::{isPHIJoin,setPHIJoin}

The last use of isPHIJoin was removed by:

  commit fac770b865f59cbe615241dad153ad20d5138b9e
  Author: Jakob Stoklund Olesen <stoklund at 2pi.dk>
  Date:   Sat Feb 9 00:04:07 2013 +0000

so there is no reason to maintain PHIJoins.
---
 llvm/include/llvm/CodeGen/LiveVariables.h | 11 -----------
 llvm/lib/CodeGen/LiveVariables.cpp        |  1 -
 llvm/lib/CodeGen/PHIElimination.cpp       |  3 ---
 3 files changed, 15 deletions(-)

diff --git a/llvm/include/llvm/CodeGen/LiveVariables.h b/llvm/include/llvm/CodeGen/LiveVariables.h
index 90aeb8ceda5590a..9ed4c7bdf7b1771 100644
--- a/llvm/include/llvm/CodeGen/LiveVariables.h
+++ b/llvm/include/llvm/CodeGen/LiveVariables.h
@@ -118,11 +118,6 @@ class LiveVariables : public MachineFunctionPass {
   ///
   IndexedMap<VarInfo, VirtReg2IndexFunctor> VirtRegInfo;
 
-  /// PHIJoins - list of virtual registers that are PHI joins. These registers
-  /// may have multiple definitions, and they require special handling when
-  /// building live intervals.
-  SparseBitVector<> PHIJoins;
-
 private:   // Intermediate data structures
   MachineFunction *MF = nullptr;
 
@@ -302,12 +297,6 @@ class LiveVariables : public MachineFunctionPass {
                    MachineBasicBlock *DomBB,
                    MachineBasicBlock *SuccBB,
                    std::vector<SparseBitVector<>> &LiveInSets);
-
-  /// isPHIJoin - Return true if Reg is a phi join register.
-  bool isPHIJoin(Register Reg) { return PHIJoins.test(Reg.id()); }
-
-  /// setPHIJoin - Mark Reg as a phi join register.
-  void setPHIJoin(Register Reg) { PHIJoins.set(Reg.id()); }
 };
 
 } // End llvm namespace
diff --git a/llvm/lib/CodeGen/LiveVariables.cpp b/llvm/lib/CodeGen/LiveVariables.cpp
index 077276b64aa2269..6b983b6320c711f 100644
--- a/llvm/lib/CodeGen/LiveVariables.cpp
+++ b/llvm/lib/CodeGen/LiveVariables.cpp
@@ -601,7 +601,6 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &mf) {
   PhysRegDef.assign(NumRegs, nullptr);
   PhysRegUse.assign(NumRegs, nullptr);
   PHIVarInfo.resize(MF->getNumBlockIDs());
-  PHIJoins.clear();
 
   // FIXME: LiveIntervals will be updated to remove its dependence on
   // LiveVariables to improve compilation time and eliminate bizarre pass
diff --git a/llvm/lib/CodeGen/PHIElimination.cpp b/llvm/lib/CodeGen/PHIElimination.cpp
index dbb9a9ffdf60b53..10d8378ce58d1cf 100644
--- a/llvm/lib/CodeGen/PHIElimination.cpp
+++ b/llvm/lib/CodeGen/PHIElimination.cpp
@@ -330,9 +330,6 @@ void PHIElimination::LowerPHINode(MachineBasicBlock &MBB,
     if (IncomingReg) {
       LiveVariables::VarInfo &VI = LV->getVarInfo(IncomingReg);
 
-      // Increment use count of the newly created virtual register.
-      LV->setPHIJoin(IncomingReg);
-
       MachineInstr *OldKill = nullptr;
       bool IsPHICopyAfterOldKill = false;
 



More information about the llvm-commits mailing list