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.

Reply via email to