mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-15 05:24:01 +00:00
Move subreg lowering pass to be right after regalloc, per feedback.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40548 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -73,6 +73,11 @@ LLVMTargetMachine::addPassesToEmitFile(FunctionPassManager &PM,
|
|||||||
if (PrintMachineCode)
|
if (PrintMachineCode)
|
||||||
PM.add(createMachineFunctionPrinterPass(cerr));
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
|
|
||||||
|
PM.add(createLowerSubregsPass());
|
||||||
|
|
||||||
|
if (PrintMachineCode) // Print the subreg lowered code
|
||||||
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
|
|
||||||
// Run post-ra passes.
|
// Run post-ra passes.
|
||||||
if (addPostRegAlloc(PM, Fast) && PrintMachineCode)
|
if (addPostRegAlloc(PM, Fast) && PrintMachineCode)
|
||||||
PM.add(createMachineFunctionPrinterPass(cerr));
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
@ -97,8 +102,6 @@ LLVMTargetMachine::addPassesToEmitFile(FunctionPassManager &PM,
|
|||||||
if (addPreEmitPass(PM, Fast) && PrintMachineCode)
|
if (addPreEmitPass(PM, Fast) && PrintMachineCode)
|
||||||
PM.add(createMachineFunctionPrinterPass(cerr));
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
|
|
||||||
PM.add(createLowerSubregsPass());
|
|
||||||
|
|
||||||
switch (FileType) {
|
switch (FileType) {
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@ -179,6 +182,11 @@ bool LLVMTargetMachine::addPassesToEmitMachineCode(FunctionPassManager &PM,
|
|||||||
if (PrintMachineCode)
|
if (PrintMachineCode)
|
||||||
PM.add(createMachineFunctionPrinterPass(cerr));
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
|
|
||||||
|
PM.add(createLowerSubregsPass());
|
||||||
|
|
||||||
|
if (PrintMachineCode) // Print the subreg lowered code
|
||||||
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
|
|
||||||
// Run post-ra passes.
|
// Run post-ra passes.
|
||||||
if (addPostRegAlloc(PM, Fast) && PrintMachineCode)
|
if (addPostRegAlloc(PM, Fast) && PrintMachineCode)
|
||||||
PM.add(createMachineFunctionPrinterPass(cerr));
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
@ -200,8 +208,6 @@ bool LLVMTargetMachine::addPassesToEmitMachineCode(FunctionPassManager &PM,
|
|||||||
if (addPreEmitPass(PM, Fast) && PrintMachineCode)
|
if (addPreEmitPass(PM, Fast) && PrintMachineCode)
|
||||||
PM.add(createMachineFunctionPrinterPass(cerr));
|
PM.add(createMachineFunctionPrinterPass(cerr));
|
||||||
|
|
||||||
PM.add(createLowerSubregsPass());
|
|
||||||
|
|
||||||
addCodeEmitter(PM, Fast, PrintEmittedAsm, MCE);
|
addCodeEmitter(PM, Fast, PrintEmittedAsm, MCE);
|
||||||
|
|
||||||
// Delete machine code for this function
|
// Delete machine code for this function
|
||||||
|
Reference in New Issue
Block a user