* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
@ 2022-03-12 10:50 ` doko at gcc dot gnu.org
2022-03-12 15:37 ` [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-default-pie) hjl.tools at gmail dot com
` (19 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: doko at gcc dot gnu.org @ 2022-03-12 10:50 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #1 from Matthias Klose <doko at gcc dot gnu.org> ---
that is only seen when configuring with --enable-default-pie
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-default-pie)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
2022-03-12 10:50 ` [Bug target/104890] " doko at gcc dot gnu.org
@ 2022-03-12 15:37 ` hjl.tools at gmail dot com
2022-03-13 4:39 ` doko at gcc dot gnu.org
` (18 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-12 15:37 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2022-03-12
Ever confirmed|0 |1
Status|UNCONFIRMED |WAITING
--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> ---
I can't reproduce it with
--disable-bootstrap --enable-cet --with-demangler-in-ld
--prefix=/usr/gcc-12.0.1-x86-64-pie --with-local-prefix=/usr/local
--enable-gnu-indirect-function --enable-clocale=gnu --with-system-zlib
--with-target-system-zlib --disable-libcc1 --disable-libcilkrts
--disable-libsanitizer --enable-default-pie --enable-languages=c,c++
Please provide the prepossessed unwind-dw2.c and show the command-line
passed to cc1 with "gcc -v".
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-default-pie)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
2022-03-12 10:50 ` [Bug target/104890] " doko at gcc dot gnu.org
2022-03-12 15:37 ` [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-default-pie) hjl.tools at gmail dot com
@ 2022-03-13 4:39 ` doko at gcc dot gnu.org
2022-03-13 4:39 ` doko at gcc dot gnu.org
` (17 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: doko at gcc dot gnu.org @ 2022-03-13 4:39 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #3 from Matthias Klose <doko at gcc dot gnu.org> ---
Created attachment 52616
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52616&action=edit
preprocessed source
/home/packages/gcc/12/gcc-12-12-20220313/build/./gcc/cc1 -E -quiet -v -I . -I .
-I ../../.././gcc -I ../../../../src/libgcc -
I ../../../../src/libgcc/. -I ../../../../src/libgcc/../gcc -I
../../../../src/libgcc/../include -I ../../../../src/libgcc/con
fig/libbid -imultilib 32 -imultiarch i386-linux-gnu -iprefix
/home/packages/gcc/12/gcc-12-12-20220313/build/gcc/../lib/gcc/x86
_64-linux-gnu/12/ -isystem
/home/packages/gcc/12/gcc-12-12-20220313/build/./gcc/include -isystem
/home/packages/gcc/12/gcc-12-
12-20220313/build/./gcc/include-fixed -MD unwind-dw2.d -MF unwind-dw2.dep -MP
-MT unwind-dw2.o -D IN_GCC -D USE_ELF_SYMVER -D
IN_LIBGCC2 -D USE_ELF_SYMVER -D ENABLE_DECIMAL_BID_FORMAT -D HAVE_CC_TLS -D
USE_TLS -D HIDE_EXPORTS -isystem /usr/x86_64-linux
-gnu/include -isystem /usr/x86_64-linux-gnu/sys-include -isystem
/home/packages/gcc/12/gcc-12-12-20220313/build/sys-include -i
system ./include ../../../../src/libgcc/unwind-dw2.c -m32 -mlong-double-80
-mshstk -mtune=generic -march=i686 -Wextra -Wall -W
no-narrowing -Wwrite-strings -Wcast-qual -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition -fchecking=1 -fcf-pro
tection=full -fbuilding-libgcc -fno-stack-protector -fpic -fcf-protection=full
-fexceptions -fvisibility=hidden -g -g -g -fwor
king-directory -O2 -O2 -O2 -fpch-preprocess -fasynchronous-unwind-tables -o
unwind-dw2.i
In file included from
/home/packages/gcc/12/gcc-12-12-20220313/build/gcc/include/x86gprintrin.h:45,
from
../../../../src/libgcc/config/i386/shadow-stack-unwind.h:25,
from ./md-unwind-support.h:27,
from ../../../../src/libgcc/unwind-dw2.c:412:
/home/packages/gcc/12/gcc-12-12-20220313/build/gcc/include/cetintrin.h: In
function ‘_Unwind_RaiseException’:
/home/packages/gcc/12/gcc-12-12-20220313/build/gcc/include/cetintrin.h:47:1:
error: inlining failed in call to ‘always_inline’ ‘_get_ssp’: target specific
option mismatch
47 | _get_ssp (void)
| ^~~~~~~~
In file included from ../../../../src/libgcc/unwind-dw2.c:1728:
../../../../src/libgcc/unwind.inc:140:217: note: called from here
140 | uw_install_context (&this_context, &cur_context, frames);
|
^
/home/packages/gcc/12/gcc-12-12-20220313/build/gcc/include/cetintrin.h:55:1:
error: inlining failed in call to ‘always_inline’ ‘_inc_ssp’: target specific
option mismatch
55 | _inc_ssp (unsigned int __B)
| ^~~~~~~~
../../../../src/libgcc/unwind.inc:140:295: note: called from here
140 | uw_install_context (&this_context, &cur_context, frames);
|
^
/home/packages/gcc/12/gcc-12-12-20220313/build/gcc/include/cetintrin.h:55:1:
error: inlining failed in call to ‘always_inline’ ‘_inc_ssp’: target specific
option mismatch
55 | _inc_ssp (unsigned int __B)
| ^~~~~~~~
../../../../src/libgcc/unwind.inc:140:325: note: called from here
140 | uw_install_context (&this_context, &cur_context, frames);
|
^
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-default-pie)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (2 preceding siblings ...)
2022-03-13 4:39 ` doko at gcc dot gnu.org
@ 2022-03-13 4:39 ` doko at gcc dot gnu.org
2022-03-13 5:07 ` doko at gcc dot gnu.org
` (16 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: doko at gcc dot gnu.org @ 2022-03-13 4:39 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
Matthias Klose <doko at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-default-pie)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (3 preceding siblings ...)
2022-03-13 4:39 ` doko at gcc dot gnu.org
@ 2022-03-13 5:07 ` doko at gcc dot gnu.org
2022-03-13 15:53 ` [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet) hjl.tools at gmail dot com
` (15 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: doko at gcc dot gnu.org @ 2022-03-13 5:07 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #4 from Matthias Klose <doko at gcc dot gnu.org> ---
about the configure options, apparently pie is not the culprit, configuring
with --enable-cet is. note that I didn't use --disable-bootstrap.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (4 preceding siblings ...)
2022-03-13 5:07 ` doko at gcc dot gnu.org
@ 2022-03-13 15:53 ` hjl.tools at gmail dot com
2022-03-13 16:17 ` [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686) hjl.tools at gmail dot com
` (14 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-13 15:53 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at redhat dot com
Blocks| |104781
--- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> ---
[hjl@gnu-tgl-2 gcc]$ cat x.c
#include <x86gprintrin.h>
__attribute__((target ("general-regs-only")))
int
foo ()
{
return _get_ssp ();
}
[hjl@gnu-tgl-2 gcc]$ ./xgcc -B./ -S -O2 x.c -mshstk -march=i686 -m32
In file included from ./include/x86gprintrin.h:45,
from x.c:1:
./include/cetintrin.h: In function ‘foo’:
./include/cetintrin.h:47:1: error: inlining failed in call to ‘always_inline’
‘_get_ssp’: target specific option mismatch
47 | _get_ssp (void)
| ^~~~~~~~
x.c:7:10: note: called from here
7 | return _get_ssp ();
| ^~~~~~~~~~~
[hjl@gnu-tgl-2 gcc]$
Referenced Bugs:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104781
[Bug 104781] [12 regression] SEGV in _Unwind_GetGR during i386 Ada bootstrap
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (5 preceding siblings ...)
2022-03-13 15:53 ` [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet) hjl.tools at gmail dot com
@ 2022-03-13 16:17 ` hjl.tools at gmail dot com
2022-03-13 16:17 ` hjl.tools at gmail dot com
` (13 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-13 16:17 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #6 from H.J. Lu <hjl.tools at gmail dot com> ---
Created attachment 52619
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52619&action=edit
A patch
Please try this.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (6 preceding siblings ...)
2022-03-13 16:17 ` [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686) hjl.tools at gmail dot com
@ 2022-03-13 16:17 ` hjl.tools at gmail dot com
2022-03-13 16:20 ` jakub at gcc dot gnu.org
` (12 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-13 16:17 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |WAITING
Target Milestone|--- |12.0
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (7 preceding siblings ...)
2022-03-13 16:17 ` hjl.tools at gmail dot com
@ 2022-03-13 16:20 ` jakub at gcc dot gnu.org
2022-03-13 16:26 ` hjl.tools at gmail dot com
` (11 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: jakub at gcc dot gnu.org @ 2022-03-13 16:20 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Comment on attachment 52619
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52619
A patch
This looks wrong, it will fail with the same configuration if people build with
-msse2.
The question is why __attribute__((target ("general-regs-only"))) disables
SHSTK.
If that is intentional, we should change to what my first patch proposed, i.e.
"no-sse" instead of "general-regs-only" (or "no-mmx,no-sse").
If it is unintentional, we should fix that.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (8 preceding siblings ...)
2022-03-13 16:20 ` jakub at gcc dot gnu.org
@ 2022-03-13 16:26 ` hjl.tools at gmail dot com
2022-03-13 18:09 ` hjl.tools at gmail dot com
` (10 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-13 16:26 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #8 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Jakub Jelinek from comment #7)
> Comment on attachment 52619 [details]
> A patch
>
> This looks wrong, it will fail with the same configuration if people build
> with -msse2.
I have no issues to build 32-bit GCC with SSE2. I got
[hjl@gnu-tgl-2 gcc]$ ./xgcc -B./ -S -O2 -mshstk -march=i686 -m32 /tmp/x.c
In file included from ./include/x86gprintrin.h:45,
from /tmp/x.c:1:
./include/cetintrin.h: In function ‘foo’:
./include/cetintrin.h:47:1: error: inlining failed in call to ‘always_inline’
‘_get_ssp’: target specific option mismatch
47 | _get_ssp (void)
| ^~~~~~~~
/tmp/x.c:7:10: note: called from here
7 | return _get_ssp ();
| ^~~~~~~~~~~
[hjl@gnu-tgl-2 gcc]$ ./xgcc -B./ -S -O2 -mshstk -march=i686 -m32 /tmp/x.c
-msse2
[hjl@gnu-tgl-2 gcc]$
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (9 preceding siblings ...)
2022-03-13 16:26 ` hjl.tools at gmail dot com
@ 2022-03-13 18:09 ` hjl.tools at gmail dot com
2022-03-14 2:08 ` doko at gcc dot gnu.org
` (9 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-13 18:09 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #52619|0 |1
is obsolete| |
--- Comment #9 from H.J. Lu <hjl.tools at gmail dot com> ---
Created attachment 52620
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52620&action=edit
The v2 patch
Please try the v2 patch.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (10 preceding siblings ...)
2022-03-13 18:09 ` hjl.tools at gmail dot com
@ 2022-03-14 2:08 ` doko at gcc dot gnu.org
2022-03-14 8:35 ` rguenth at gcc dot gnu.org
` (8 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: doko at gcc dot gnu.org @ 2022-03-14 2:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
Matthias Klose <doko at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
--- Comment #10 from Matthias Klose <doko at gcc dot gnu.org> ---
The v2 patch fixes the issue for me.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (11 preceding siblings ...)
2022-03-14 2:08 ` doko at gcc dot gnu.org
@ 2022-03-14 8:35 ` rguenth at gcc dot gnu.org
2022-03-14 20:45 ` hjl.tools at gmail dot com
` (7 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-03-14 8:35 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P1
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (12 preceding siblings ...)
2022-03-14 8:35 ` rguenth at gcc dot gnu.org
@ 2022-03-14 20:45 ` hjl.tools at gmail dot com
2022-03-15 9:24 ` cvs-commit at gcc dot gnu.org
` (6 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-14 20:45 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #52620|0 |1
is obsolete| |
--- Comment #11 from H.J. Lu <hjl.tools at gmail dot com> ---
Created attachment 52625
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52625&action=edit
The v3 patch
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (13 preceding siblings ...)
2022-03-14 20:45 ` hjl.tools at gmail dot com
@ 2022-03-15 9:24 ` cvs-commit at gcc dot gnu.org
2022-03-16 13:31 ` cvs-commit at gcc dot gnu.org
` (5 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-03-15 9:24 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #12 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <jakub@gcc.gnu.org>:
https://gcc.gnu.org/g:da24fce323eaf088239e0f900dd23f6b05d552c1
commit r12-7654-gda24fce323eaf088239e0f900dd23f6b05d552c1
Author: Jakub Jelinek <jakub@redhat.com>
Date: Tue Mar 15 10:24:22 2022 +0100
i386: Use no-mmx,no-sse for LIBGCC2_UNWIND_ATTRIBUTE [PR104890]
Regardless of the outcome of the general-regs-only stuff in x86gprintrin.h,
apparently general-regs-only is much bigger hammer than no-sse, and e.g.
using 387 instructions in the unwinder isn't a big deal, it never needs
to realign the stack because of it.
So, the following patch uses no-sse (and adds no-mmx to it, even when not
strictly needed).
2022-03-15 Jakub Jelinek <jakub@redhat.com>
PR target/104890
* config/i386/i386.h (LIBGCC2_UNWIND_ATTRIBUTE): Use no-mmx,no-sse
instead of general-regs-only.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (14 preceding siblings ...)
2022-03-15 9:24 ` cvs-commit at gcc dot gnu.org
@ 2022-03-16 13:31 ` cvs-commit at gcc dot gnu.org
2022-03-16 13:32 ` hjl.tools at gmail dot com
` (4 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-03-16 13:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #13 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by H.J. Lu <hjl@gcc.gnu.org>:
https://gcc.gnu.org/g:3117ffce4c1598a35e724138735b099262353358
commit r12-7673-g3117ffce4c1598a35e724138735b099262353358
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Mar 13 08:57:51 2022 -0700
x86: Also check _SOFT_FLOAT in <x86gprintrin.h>
Push target("general-regs-only") in <x86gprintrin.h> if x87 is enabled.
gcc/
PR target/104890
* config/i386/x86gprintrin.h: Also check _SOFT_FLOAT before
pushing target("general-regs-only").
gcc/testsuite/
PR target/104890
* gcc.target/i386/pr104890.c: New test.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu (--enable-cet --with-arch-32=i686)
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (15 preceding siblings ...)
2022-03-16 13:31 ` cvs-commit at gcc dot gnu.org
@ 2022-03-16 13:32 ` hjl.tools at gmail dot com
2022-03-21 4:27 ` [Bug target/104890] [11 Regression] <x86gprintrin.h> doesn't work with __attribute__((target ("general-regs-only"))) and -march=i686 hjl.tools at gmail dot com
` (3 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-16 13:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #14 from H.J. Lu <hjl.tools at gmail dot com> ---
Fixed for GCC 12 so far.
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [11 Regression] <x86gprintrin.h> doesn't work with __attribute__((target ("general-regs-only"))) and -march=i686
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (16 preceding siblings ...)
2022-03-16 13:32 ` hjl.tools at gmail dot com
@ 2022-03-21 4:27 ` hjl.tools at gmail dot com
2022-03-21 4:31 ` hjl.tools at gmail dot com
` (2 subsequent siblings)
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-21 4:27 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |crazylht at gmail dot com
--- Comment #15 from H.J. Lu <hjl.tools at gmail dot com> ---
[hjl@gnu-skx-1 gcc]$ cat /tmp/x.c
#include <x86gprintrin.h>
__attribute__((target("no-mmx,no-sse")))
void
_Unwind_Resume_or_Rethrow(void)
{
_inc_ssp(1);
}
[hjl@gnu-skx-1 gcc]$ ./xgcc -B./ -O2 -m32 /tmp/x.c -S -march=tigerlake
In file included from ./include/x86gprintrin.h:45,
from /tmp/x.c:1:
./include/cetintrin.h: In function ?_Unwind_Resume_or_Rethrow?:
./include/cetintrin.h:55:1: error: inlining failed in call to ?always_inline?
?_inc_ssp?: target specific option mismatch
55 | _inc_ssp (unsigned int __B)
| ^~~~~~~~
/tmp/x.c:7:3: note: called from here
7 | _inc_ssp(1);
| ^~~~~~~~~~~
[hjl@gnu-skx-1 gcc]$
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [11 Regression] <x86gprintrin.h> doesn't work with __attribute__((target ("general-regs-only"))) and -march=i686
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (17 preceding siblings ...)
2022-03-21 4:27 ` [Bug target/104890] [11 Regression] <x86gprintrin.h> doesn't work with __attribute__((target ("general-regs-only"))) and -march=i686 hjl.tools at gmail dot com
@ 2022-03-21 4:31 ` hjl.tools at gmail dot com
2022-03-22 16:31 ` cvs-commit at gcc dot gnu.org
2022-03-22 16:34 ` hjl.tools at gmail dot com
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-21 4:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #16 from H.J. Lu <hjl.tools at gmail dot com> ---
[hjl@gnu-skx-1 gcc]$ ./xgcc -B./ -O2 -m32 /tmp/x.c -S -march=sapphirerapids
-mshstk
In file included from ./include/x86gprintrin.h:45,
from /tmp/x.c:1:
./include/cetintrin.h: In function ?_Unwind_Resume_or_Rethrow?:
./include/cetintrin.h:55:1: error: inlining failed in call to ?always_inline?
?_inc_ssp?: target specific option mismatch
55 | _inc_ssp (unsigned int __B)
| ^~~~~~~~
/tmp/x.c:7:3: note: called from here
7 | _inc_ssp(1);
| ^~~~~~~~~~~
[hjl@gnu-skx-1 gcc]$ ./xgcc -B./ -O2 -m32 /tmp/x.c -S -march=tigerlake
-mshstkIn file included from ./include/x86gprintrin.h:45,
from /tmp/x.c:1:
./include/cetintrin.h: In function ?_Unwind_Resume_or_Rethrow?:
./include/cetintrin.h:55:1: error: inlining failed in call to ?always_inline?
?_inc_ssp?: target specific option mismatch
55 | _inc_ssp (unsigned int __B)
| ^~~~~~~~
/tmp/x.c:7:3: note: called from here
7 | _inc_ssp(1);
| ^~~~~~~~~~~
[hjl@gnu-skx-1 gcc]$ ./xgcc -B./ -O2 -m32 /tmp/x.c -S -march=alderlake
-mshstkIn file included from ./include/x86gprintrin.h:45,
from /tmp/x.c:1:
./include/cetintrin.h: In function ?_Unwind_Resume_or_Rethrow?:
./include/cetintrin.h:55:1: error: inlining failed in call to ?always_inline?
?_inc_ssp?: target specific option mismatch
55 | _inc_ssp (unsigned int __B)
| ^~~~~~~~
/tmp/x.c:7:3: note: called from here
7 | _inc_ssp(1);
| ^~~~~~~~~~~
[hjl@gnu-skx-1 gcc]$ ./xgcc -B./ -O2 -m32 /tmp/x.c -S -march=cascadelake
-mshstk
[hjl@gnu-skx-1 gcc]$
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [11 Regression] <x86gprintrin.h> doesn't work with __attribute__((target ("general-regs-only"))) and -march=i686
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (18 preceding siblings ...)
2022-03-21 4:31 ` hjl.tools at gmail dot com
@ 2022-03-22 16:31 ` cvs-commit at gcc dot gnu.org
2022-03-22 16:34 ` hjl.tools at gmail dot com
20 siblings, 0 replies; 22+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-03-22 16:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
--- Comment #17 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by H.J. Lu <hjl@gcc.gnu.org>:
https://gcc.gnu.org/g:f407033b7ca27a75cccef8310360e275cdb94d26
commit r11-9685-gf407033b7ca27a75cccef8310360e275cdb94d26
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Mar 13 08:57:51 2022 -0700
x86: Also check _SOFT_FLOAT in <x86gprintrin.h>
Push target("general-regs-only") in <x86gprintrin.h> if x87 is enabled.
gcc/
PR target/104890
* config/i386/x86gprintrin.h: Also check _SOFT_FLOAT before
pushing target("general-regs-only").
gcc/testsuite/
PR target/104890
* gcc.target/i386/pr104890.c: New test.
(cherry picked from commit 3117ffce4c1598a35e724138735b099262353358)
^ permalink raw reply [flat|nested] 22+ messages in thread
* [Bug target/104890] [11 Regression] <x86gprintrin.h> doesn't work with __attribute__((target ("general-regs-only"))) and -march=i686
2022-03-12 10:43 [Bug target/104890] New: [12 Regression] fails to build the 32bit libgcc on x86_64-linux-gnu doko at gcc dot gnu.org
` (19 preceding siblings ...)
2022-03-22 16:31 ` cvs-commit at gcc dot gnu.org
@ 2022-03-22 16:34 ` hjl.tools at gmail dot com
20 siblings, 0 replies; 22+ messages in thread
From: hjl.tools at gmail dot com @ 2022-03-22 16:34 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104890
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Target Milestone|12.0 |11.3
Status|NEW |RESOLVED
--- Comment #18 from H.J. Lu <hjl.tools at gmail dot com> ---
Fixed for GCC 12 and GCC 11.3.
^ permalink raw reply [flat|nested] 22+ messages in thread