[Bug preprocessor/99313] ICE while changing global target options via pragma
marxin at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Mar 1 10:33:13 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99313
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Assignee|unassigned at gcc dot gnu.org |marxin at gcc dot gnu.org
Ever confirmed|0 |1
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2021-03-01
--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
The diff comes from here:
(gdb) p ptr1->x_param_max_completely_peel_times
$3 = 16
(gdb) p ptr2->x_param_max_completely_peel_times
$4 = 64
Which comes from here:
if (opts->x_s390_tune >= PROCESSOR_2097_Z10)
{
SET_OPTION_IF_UNSET (opts, opts_set, param_max_unrolled_insns,
100);
SET_OPTION_IF_UNSET (opts, opts_set, param_max_unroll_times, 32);
SET_OPTION_IF_UNSET (opts, opts_set, param_max_completely_peeled_insns,
2000);
SET_OPTION_IF_UNSET (opts, opts_set, param_max_completely_peel_times,
64);
}
So this is an obvious situation where a target option modified optimization
options that is global.
I'm going to add exceptions for it.
More information about the Gcc-bugs
mailing list