> After verification, you are right: the problem is older but requires the
> compiler to be configured with --enable-checking=yes.
Thanks for confirming. The problem is present on x86-64/Linux too, I'll have
a quick look later today.
--
Eric Botcazou
> Le 10 oct. 2017 à 11:53, Eric Botcazou a écrit :
>
>> This cause
>>
>> % /opt/gcc/gcc8w/bin/g++ -std=c++11 -O2 -fnon-call-exceptions
>> /opt/gcc/work/gcc/testsuite/g++.dg/pr62079.C -c -m32
>> /opt/gcc/work/gcc/testsuite/g++.dg/pr62079.C: In function 'int main()':
>> /opt/gcc/work/gcc/testsuit
> This cause
>
> % /opt/gcc/gcc8w/bin/g++ -std=c++11 -O2 -fnon-call-exceptions
> /opt/gcc/work/gcc/testsuite/g++.dg/pr62079.C -c -m32
> /opt/gcc/work/gcc/testsuite/g++.dg/pr62079.C: In function 'int main()':
> /opt/gcc/work/gcc/testsuite/g++.dg/pr62079.C:78:1: error: non-cold basic
> block 5 reach
> The attached patch replaces it with an ad-hoc definition of setjmp, …
This cause
% /opt/gcc/gcc8w/bin/g++ -std=c++11 -O2 -fnon-call-exceptions
/opt/gcc/work/gcc/testsuite/g++.dg/pr62079.C -c -m32
/opt/gcc/work/gcc/testsuite/g++.dg/pr62079.C: In function 'int main()':
/opt/gcc/work/gcc/testsuit
> You're right, not clear why I didn't spot it on Aarch64. Hunk reverted.
The attached patch replaces it with an ad-hoc definition of setjmp, like the
ones used for the coverage routines. Tested on Aarch64/Linux with and without
--enable-sjlj-exceptions and on IA-64/Linux without --enable-sjlj
On Sun, 8 Oct 2017, Andreas Schwab wrote:
> On Okt 08 2017, Eric Botcazou wrote:
>
> > * builtins.def (BUILT_IN_SETJMP): Declare as library builtin instead
> > of GCC builtin if DONT_USE_BUILTIN_SETJMP is defined.
>
> This breaks gcc.dg/plugin/must-tail-call-2.c, gcc.dg/torture/pr81083.
> This also breaks gcc.c-torture/compile/951222-1.c:
>
> during GIMPLE pass: lower
> /opt/gcc/gcc-20171008/gcc/testsuite/gcc.c-torture/compile/951222-1.c:4:1:
> internal compiler error: in gimple_call_arg, at gimple.h:3159 0x118ab1b
> gimple_call_arg
You're right, not clear why I didn't spot it o
On Okt 08 2017, Eric Botcazou wrote:
> * builtins.def (BUILT_IN_SETJMP): Declare as library builtin instead
> of GCC builtin if DONT_USE_BUILTIN_SETJMP is defined.
> * except.c (sjlj_emit_function_enter): If DONT_USE_BUILTIN_SETJMP is
> defined, force the creation of a new
On Okt 08 2017, Eric Botcazou wrote:
> * builtins.def (BUILT_IN_SETJMP): Declare as library builtin instead
> of GCC builtin if DONT_USE_BUILTIN_SETJMP is defined.
This breaks gcc.dg/plugin/must-tail-call-2.c, gcc.dg/torture/pr81083.c
and gcc.dg/torture/pr82264.c:
warning: conflicti
DONT_USE_BUILTIN_SETJMP is an old configuration macro that instructs the
compiler to use the usual setjmp/longjmp routines instead of their built-in
variants to implement SJLJ exceptions. It's less efficient but, sometimes,
the setjmp/longjmp routines have specific features that cannot be easil
10 matches
Mail list logo