https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80210
--- Comment #4 from Peter Bergner <bergner at gcc dot gnu.org> --- So it seems rs6000_pragma_target_parse() ends up calling rs6000_option_override_internal(), which is modifying the options via global variables. All other arches pass in the option variables to their *__option_override_internal(), that they want updated/set and those seem to be scoped to the area of the file they reside in.