From: Alkis Evlogimenos Date: Thu, 26 Aug 2004 22:23:32 +0000 (+0000) Subject: Use newly added API in MRegisterInfo and don't expose the allocatable X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=22a2f6d5b05631a21b62e3e103aa1b9469ad0c5c;p=oota-llvm.git Use newly added API in MRegisterInfo and don't expose the allocatable register set anymore. Its users now use the MRegisterInfo API. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16061 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/llvm/CodeGen/LiveVariables.h b/include/llvm/CodeGen/LiveVariables.h index 4eec1d66120..7820f7414d4 100644 --- a/include/llvm/CodeGen/LiveVariables.h +++ b/include/llvm/CodeGen/LiveVariables.h @@ -231,10 +231,6 @@ public: /// register. VarInfo &getVarInfo(unsigned RegIdx); - const std::vector& getAllocatablePhysicalRegisters() const { - return AllocatablePhysicalRegisters; - } - void MarkVirtRegAliveInBlock(VarInfo &VRInfo, MachineBasicBlock *BB); void HandleVirtRegUse(VarInfo &VRInfo, MachineBasicBlock *MBB, MachineInstr *MI); diff --git a/lib/CodeGen/LiveVariables.cpp b/lib/CodeGen/LiveVariables.cpp index 0bdf86406f1..b6d9bc2a601 100644 --- a/lib/CodeGen/LiveVariables.cpp +++ b/lib/CodeGen/LiveVariables.cpp @@ -148,19 +148,7 @@ bool LiveVariables::runOnMachineFunction(MachineFunction &MF) { RegInfo = MF.getTarget().getRegisterInfo(); assert(RegInfo && "Target doesn't have register information?"); - // First time though, initialize AllocatablePhysicalRegisters for the target - if (AllocatablePhysicalRegisters.empty()) { - // Make space, initializing to false... - AllocatablePhysicalRegisters.resize(RegInfo->getNumRegs()); - - // Loop over all of the register classes... - for (MRegisterInfo::regclass_iterator RCI = RegInfo->regclass_begin(), - E = RegInfo->regclass_end(); RCI != E; ++RCI) - // Loop over all of the allocatable registers in the function... - for (TargetRegisterClass::iterator I = (*RCI)->allocation_order_begin(MF), - E = (*RCI)->allocation_order_end(MF); I != E; ++I) - AllocatablePhysicalRegisters[*I] = true; // The reg is allocatable! - } + AllocatablePhysicalRegisters = RegInfo->getAllocatableSet(MF); // PhysRegInfo - Keep track of which instruction was the last use of a // physical register. This is a purely local property, because all physical