https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100909
Bug ID: 100909 Summary: powerpc64le: Regression causing unexpected error with IBM long double Product: gcc Version: 12.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: tuliom at ascii dot art.br Target Milestone: --- Created attachment 50934 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=50934&action=edit Pre-processed s_modff128-ifunc.c file from glibc I've recently started seeing this regression while building glibc on powerpc64le: gcc -m64 test.i -c -mlong-double-128 -mabi=ibmlongdouble /home/tuliom/tmp/at-build-tray/at15.0-0-alpha.suse-15_ppc64le_ppc64le/builds/glibc_1-64/math/s_modff128-ifunc.c:8:1: error: ‘-mabi=ibmlongdouble’ requires ‘-mlong-double-128’ 8 | DECL_ALIAS_s_modf (modf); | ^~~~~~ Notice that both parameters are being passed to GCC. I've bisected this issue to: commit ebd5e86c0f41dc1d692f9b2b68a510b1f6835a3e Author: Martin Liska <mli...@suse.cz> Date: Wed Mar 10 15:12:31 2021 +0100 Improve global state for options. gcc/c-family/ChangeLog: PR tree-optimization/92860 PR target/99592 * c-attribs.c (handle_optimize_attribute): Save target node before calling parse_optimize_options and save it in case it changes. * c-pragma.c (handle_pragma_target): Similarly for pragma. (handle_pragma_pop_options): Likewise here. gcc/ChangeLog: PR tree-optimization/92860 PR target/99592 * optc-save-gen.awk: Remove exceptions. I can still reproduce it with commit ee9548b36a7f.