diff options
author | Matthias Braun <matze@braunis.de> | 2017-04-28 20:25:05 +0000 |
---|---|---|
committer | Matthias Braun <matze@braunis.de> | 2017-04-28 20:25:05 +0000 |
commit | 744c215e2958c13854c1d730a323132ce2dc9c57 (patch) | |
tree | 96e7d60fb654c50e5fa1fe56957b4c1d71472340 /llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | |
parent | b3bc1ed0d414bb63fbf00427508989272d7fea86 (diff) | |
download | bcm5719-llvm-744c215e2958c13854c1d730a323132ce2dc9c57.tar.gz bcm5719-llvm-744c215e2958c13854c1d730a323132ce2dc9c57.zip |
TargetLowering: Add finalizeLowering() function; NFC
Adds a new method finalizeLowering to TargetLoweringBase. This is in
preparation for an upcoming commit.
This function is meant for target specific adjustments to
MachineFrameInfo or register reservations.
Move the freezeRegisters() and the hasCopyImplyingStackAdjustment()
handling into the new function to prove the concept. As an added bonus
GlobalISel no longer missed the hasCopyImplyingStackAdjustment()
handling with this.
Differential Revision: https://reviews.llvm.org/D32621
llvm-svn: 301679
Diffstat (limited to 'llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp')
-rw-r--r-- | llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp index e7ef782e77f..3aabdaeaa09 100644 --- a/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp @@ -593,13 +593,7 @@ bool SelectionDAGISel::runOnMachineFunction(MachineFunction &mf) { MRI.replaceRegWith(From, To); } - if (TLI->hasCopyImplyingStackAdjustment(MF)) - MFI.setHasCopyImplyingStackAdjustment(true); - - // Freeze the set of reserved registers now that MachineFrameInfo has been - // set up. All the information required by getReservedRegs() should be - // available now. - MRI.freezeReservedRegs(*MF); + TLI->finalizeLowering(*MF); // Release function-specific state. SDB and CurDAG are already cleared // at this point. |