mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-20 16:17:38 +00:00
Change the SplitEditor interface to a single instance can be shared for multiple splits.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126912 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -209,17 +209,24 @@ void SplitAnalysis::analyze(const LiveInterval *li) {
|
||||
SplitEditor::SplitEditor(SplitAnalysis &sa,
|
||||
LiveIntervals &lis,
|
||||
VirtRegMap &vrm,
|
||||
MachineDominatorTree &mdt,
|
||||
LiveRangeEdit &edit)
|
||||
MachineDominatorTree &mdt)
|
||||
: SA(sa), LIS(lis), VRM(vrm),
|
||||
MRI(vrm.getMachineFunction().getRegInfo()),
|
||||
MDT(mdt),
|
||||
TII(*vrm.getMachineFunction().getTarget().getInstrInfo()),
|
||||
TRI(*vrm.getMachineFunction().getTarget().getRegisterInfo()),
|
||||
Edit(&edit),
|
||||
Edit(0),
|
||||
OpenIdx(0),
|
||||
RegAssign(Allocator)
|
||||
{
|
||||
{}
|
||||
|
||||
void SplitEditor::reset(LiveRangeEdit &lre) {
|
||||
Edit = &lre;
|
||||
OpenIdx = 0;
|
||||
RegAssign.clear();
|
||||
Values.clear();
|
||||
LiveOutCache.clear();
|
||||
|
||||
// We don't need an AliasAnalysis since we will only be performing
|
||||
// cheap-as-a-copy remats anyway.
|
||||
Edit->anyRematerializable(LIS, TII, 0);
|
||||
|
||||
Reference in New Issue
Block a user