https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105069

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
The ICE started with the PR92860 change.
sh_option_optimization_table has:
static const struct default_options sh_option_optimization_table[] =
  {
    { OPT_LEVELS_SIZE, OPT_mdiv_, SH_DIV_STR_FOR_SIZE, 1 },
    { OPT_LEVELS_0_ONLY, OPT_mdiv_, "", 1 },
    { OPT_LEVELS_ALL, OPT__param_simultaneous_prefetches_, NULL, 2 },
    { OPT_LEVELS_NONE, 0, NULL, 0 }
  };
and so wants to change sh_div_str for -Os or -O0.
But I think SH doesn't support target attribute.
Does sh_override_options_after_change need to do something, or is target
attribute handling now required for backends that do want to change some Target
options based on optimization levels?

Reply via email to