[llvm] r227181 - Have the PBQP register allocator use the subtarget on the MachineFunction.
Lang Hames
lhames at gmail.com
Mon Feb 2 22:16:56 PST 2015
Thanks for the cleanup Eric!
- Lang.
On Tue, Jan 27, 2015 at 12:27 AM, Eric Christopher <echristo at gmail.com>
wrote:
> Author: echristo
> Date: Tue Jan 27 02:27:06 2015
> New Revision: 227181
>
> URL: http://llvm.org/viewvc/llvm-project?rev=227181&view=rev
> Log:
> Have the PBQP register allocator use the subtarget on the MachineFunction.
> (and remove an extraneous private).
>
> Modified:
> llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp
>
> Modified: llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp?rev=227181&r1=227180&r2=227181&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp (original)
> +++ llvm/trunk/lib/CodeGen/RegAllocPBQP.cpp Tue Jan 27 02:27:06 2015
> @@ -172,8 +172,6 @@ public:
> class Interference : public PBQPRAConstraint {
> private:
>
> -private:
> -
> typedef const PBQP::RegAlloc::AllowedRegVector* AllowedRegVecPtr;
> typedef std::pair<AllowedRegVecPtr, AllowedRegVecPtr> IMatrixKey;
> typedef DenseMap<IMatrixKey, PBQPRAGraph::MatrixPtr> IMatrixCache;
> @@ -308,7 +306,7 @@ private:
> PBQPRAGraph::NodeId MId, IMatrixCache &C) {
>
> const TargetRegisterInfo &TRI =
> -
> *G.getMetadata().MF.getTarget().getSubtargetImpl()->getRegisterInfo();
> + *G.getMetadata().MF.getSubtarget().getRegisterInfo();
>
> const auto &NRegs = G.getNodeMetadata(NId).getAllowedRegs();
> const auto &MRegs = G.getNodeMetadata(MId).getAllowedRegs();
> @@ -342,7 +340,7 @@ public:
> void apply(PBQPRAGraph &G) override {
> MachineFunction &MF = G.getMetadata().MF;
> MachineBlockFrequencyInfo &MBFI = G.getMetadata().MBFI;
> - CoalescerPair
> CP(*MF.getTarget().getSubtargetImpl()->getRegisterInfo());
> + CoalescerPair CP(*MF.getSubtarget().getRegisterInfo());
>
> // Scan the machine function and add a coalescing cost whenever
> CoalescerPair
> // gives the Ok.
> @@ -494,7 +492,7 @@ void RegAllocPBQP::initializeGraph(PBQPR
> LiveIntervals &LIS = G.getMetadata().LIS;
> const MachineRegisterInfo &MRI = G.getMetadata().MF.getRegInfo();
> const TargetRegisterInfo &TRI =
> - *G.getMetadata().MF.getTarget().getSubtargetImpl()->getRegisterInfo();
> + *G.getMetadata().MF.getSubtarget().getRegisterInfo();
>
> for (auto VReg : VRegsToAlloc) {
> const TargetRegisterClass *TRC = MRI.getRegClass(VReg);
> @@ -553,8 +551,7 @@ bool RegAllocPBQP::mapPBQPToRegAlloc(con
> Spiller &VRegSpiller) {
> MachineFunction &MF = G.getMetadata().MF;
> LiveIntervals &LIS = G.getMetadata().LIS;
> - const TargetRegisterInfo &TRI =
> - *MF.getTarget().getSubtargetImpl()->getRegisterInfo();
> + const TargetRegisterInfo &TRI = *MF.getSubtarget().getRegisterInfo();
> (void)TRI;
>
> // Set to true if we have any spills
> @@ -670,7 +667,7 @@ bool RegAllocPBQP::runOnMachineFunction(
> // If there are non-empty intervals allocate them using pbqp.
> if (!VRegsToAlloc.empty()) {
>
> - const TargetSubtargetInfo &Subtarget =
> *MF.getTarget().getSubtargetImpl();
> + const TargetSubtargetInfo &Subtarget = MF.getSubtarget();
> std::unique_ptr<PBQPRAConstraintList> ConstraintsRoot =
> llvm::make_unique<PBQPRAConstraintList>();
> ConstraintsRoot->addConstraint(llvm::make_unique<SpillCosts>());
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150202/fd2e8112/attachment.html>
More information about the llvm-commits
mailing list