diff options
author | Kit Barton <kbarton@ca.ibm.com> | 2015-09-10 01:55:44 +0000 |
---|---|---|
committer | Kit Barton <kbarton@ca.ibm.com> | 2015-09-10 01:55:44 +0000 |
commit | d3b904d440fee3c869d8c8a2c33dffd8bc82b384 (patch) | |
tree | b82766eaa7459b64e27e73abf2c8ad9bc9b2735a /clang/lib/CodeGen/CodeGenModule.cpp | |
parent | 05541459fa1388759c697c0d53380f1505e649a4 (diff) | |
download | bcm5719-llvm-d3b904d440fee3c869d8c8a2c33dffd8bc82b384.tar.gz bcm5719-llvm-d3b904d440fee3c869d8c8a2c33dffd8bc82b384.zip |
Enable the shrink wrapping optimization for PPC64.
The changes in this patch are as follows:
1. Modify the emitPrologue and emitEpilogue methods to work properly when the prologue and epilogue blocks are not the first/last blocks in the function
2. Fix a bug in PPCEarlyReturn optimization caused by an empty entry block in the function
3. Override the runShrinkWrap PredicateFtor (defined in TargetMachine) to check whether shrink wrapping should run:
Shrink wrapping will run on PPC64 (Little Endian and Big Endian) unless -enable-shrink-wrap=false is specified on command line
A new test case, ppc-shrink-wrapping.ll was created based on the existing shrink wrapping tests for x86, arm, and arm64.
Phabricator review: http://reviews.llvm.org/D11817
llvm-svn: 247237
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions