diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2011-11-23 18:51:17 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2011-11-23 18:51:17 +0000 |
commit | ffe8727f47239229b1830f0a67921f8dc4c69b13 (patch) | |
tree | 417f4807f2ac303fb2e45ded4d924d1d329be5e0 /gcc/toplev.c | |
parent | 810fb8f1d6cadce0899872c310ebbae829d673dd (diff) | |
download | gcc-ffe8727f47239229b1830f0a67921f8dc4c69b13.zip gcc-ffe8727f47239229b1830f0a67921f8dc4c69b13.tar.gz gcc-ffe8727f47239229b1830f0a67921f8dc4c69b13.tar.bz2 |
re PR rtl-optimization/48455 (Huge code size regression for all ARM configurations)
2011-11-23 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/48455
* doc/invoke.texi (-fira-region): Document default values.
* flags-types.h (enum ira_region): Add new value
IRA_REGION_AUTODETECT.
* common.opt (fira-region): Set up initial value to
IRA_REGION_AUTODETECT.
* toplev.c (process_options): Set up flag_ira_region depending on
-O options.
* ira.c (ira.c): Remove optimize guard for ira_build.
From-SVN: r181675
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c index de255b4..9be9109 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1333,6 +1333,11 @@ process_options (void) "and -ftree-loop-linear)"); #endif + /* One region RA really helps to decrease the code size. */ + if (flag_ira_region == IRA_REGION_AUTODETECT) + flag_ira_region + = optimize_size || !optimize ? IRA_REGION_ONE : IRA_REGION_MIXED; + /* Unrolling all loops implies that standard loop unrolling must also be done. */ if (flag_unroll_all_loops) |