From: Georg-Johann Lay Date: Thu, 4 Aug 2016 07:52:38 +0000 (+0000) Subject: re PR target/70677 (Suboptimal cond on AVR: unneeded stack frame) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=90b1c81d64556c24ef208e7fd012c08b044d847e;p=gcc.git re PR target/70677 (Suboptimal cond on AVR: unneeded stack frame) PR 70677 * common/config/avr/avr-common.c (avr_option_optimization_table) [OPT_LEVELS_ALL]: Turn off -fcaller-saves. From-SVN: r239117 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0e5eea4e7ca..940096a131f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-08-04 Georg-Johann Lay + + PR 70677 + * common/config/avr/avr-common.c (avr_option_optimization_table) + [OPT_LEVELS_ALL]: Turn off -fcaller-saves. + 2016-08-04 Georg-Johann Lay PR 55181 diff --git a/gcc/common/config/avr/avr-common.c b/gcc/common/config/avr/avr-common.c index d0272e4cda7..75c877175c1 100644 --- a/gcc/common/config/avr/avr-common.c +++ b/gcc/common/config/avr/avr-common.c @@ -28,6 +28,9 @@ static const struct default_options avr_option_optimization_table[] = { { OPT_LEVELS_1_PLUS, OPT_fomit_frame_pointer, NULL, 1 }, + // The only effect of -fcaller-saves might be that it triggers + // a frame without need when it tries to be smart around calls. + { OPT_LEVELS_ALL, OPT_fcaller_saves, NULL, 0 }, { OPT_LEVELS_NONE, 0, NULL, 0 } };