diff options
| author | Mehdi Amini <mehdi.amini@apple.com> | 2016-06-10 18:37:21 +0000 |
|---|---|---|
| committer | Mehdi Amini <mehdi.amini@apple.com> | 2016-06-10 18:37:21 +0000 |
| commit | 1d396832d3b4e916c3901fed5083ad44b68d288e (patch) | |
| tree | 5f67f8040601137231c42121d75a0e68ef347e61 /llvm/lib/CodeGen/TargetPassConfig.cpp | |
| parent | 4e9cef0491ce508904137eb857df9523f5647ff5 (diff) | |
| download | bcm5719-llvm-1d396832d3b4e916c3901fed5083ad44b68d288e.tar.gz bcm5719-llvm-1d396832d3b4e916c3901fed5083ad44b68d288e.zip | |
Interprocedural Register Allocation (IPRA): add a Transformation Pass
Adds a MachineFunctionPass that scans the body to find calls, and
update the register mask with the one saved by the
RegUsageInfoCollector analysis in PhysicalRegisterUsageInfo.
Patch by Vivek Pandya <vivekvpandya@gmail.com>
Differential Revision: http://reviews.llvm.org/D21180
llvm-svn: 272414
Diffstat (limited to 'llvm/lib/CodeGen/TargetPassConfig.cpp')
| -rw-r--r-- | llvm/lib/CodeGen/TargetPassConfig.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/lib/CodeGen/TargetPassConfig.cpp b/llvm/lib/CodeGen/TargetPassConfig.cpp index 3e7261a895f..1b30cc8ee54 100644 --- a/llvm/lib/CodeGen/TargetPassConfig.cpp +++ b/llvm/lib/CodeGen/TargetPassConfig.cpp @@ -538,6 +538,9 @@ void TargetPassConfig::addISelPrepare() { void TargetPassConfig::addMachinePasses() { AddingMachinePasses = true; + if (UseIPRA) + addPass(createRegUsageInfoPropPass()); + // Insert a machine instr printer pass after the specified pass. if (!StringRef(PrintMachineInstrs.getValue()).equals("") && !StringRef(PrintMachineInstrs.getValue()).equals("option-unspecified")) { |

