r276405 - in /trunk/gcc: ChangeLog config/i386/...
aoliva@gcc.gnu.org
aoliva@gcc.gnu.org
Tue Oct 1 11:37:00 GMT 2019
Author: aoliva
Date: Tue Oct 1 11:37:01 2019
New Revision: 276405
URL: https://gcc.gnu.org/viewcvs?rev=276405&root=gcc&view=rev
Log:
recompute opt flags after opt level change
flag_omit_frame_pointer is set in machine-independent code depending
on the optimization level. It is then overridden in x86
target-specific code depending on a macro defined by
--enable-frame-pointer.
Uses of attribute optimize go through machine-independent overriding
of flag_omit_frame_pointer, but the x86-specific overriding code did
NOT cover this flag, so, even if the attribute does not change the
optimization level, flag_omit_frame_pointer may end up with a
different value, and prevent inlining because of incompatible flags,
as detected by the gcc.dg/ipa/iinline-attr.c test on an
--enable-frame-pointer x86 toolchain.
for gcc/ChangeLog
* config/i386/i386-options.c
(ix86_recompute_optlev_based_flags): New, moved out of...
(ix86_option_override_internal): ... this. Call it.
(ix86_override_options_after_change): Call it here too.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386-options.c
More information about the Gcc-cvs
mailing list