mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-08 14:41:14 +08:00
misc.c (gnat_init_gcc_eh): Set -fnon-call-exceptions for the runtime on platforms where...
* gcc-interface/misc.c (gnat_init_gcc_eh): Set -fnon-call-exceptions for the runtime on platforms where System.Machine_Overflow is true. From-SVN: r266057
This commit is contained in:
parent
0c1e0d63fe
commit
77ece7f52e
@ -1,3 +1,8 @@
|
||||
2018-11-13 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* gcc-interface/misc.c (gnat_init_gcc_eh): Set -fnon-call-exceptions
|
||||
for the runtime on platforms where System.Machine_Overflow is true.
|
||||
|
||||
2018-11-08 Eric Botcazou <ebotcazou@adacore.com>
|
||||
|
||||
* fe.h (Suppress_Checks): Declare.
|
||||
|
@ -405,10 +405,15 @@ gnat_init_gcc_eh (void)
|
||||
as permitted in Ada.
|
||||
Turn off -faggressive-loop-optimizations because it may optimize away
|
||||
out-of-bound array accesses that we want to be able to catch.
|
||||
If checks are disabled, we use the same settings as the C++ compiler. */
|
||||
If checks are disabled, we use the same settings as the C++ compiler,
|
||||
except for the runtime on platforms where S'Machine_Overflow is true
|
||||
because the runtime depends on FP (hardware) checks being properly
|
||||
handled despite being compiled in -gnatp mode. */
|
||||
flag_exceptions = 1;
|
||||
flag_delete_dead_exceptions = 1;
|
||||
if (!Suppress_Checks)
|
||||
if (Suppress_Checks)
|
||||
flag_non_call_exceptions = Machine_Overflows_On_Target && GNAT_Mode;
|
||||
else
|
||||
{
|
||||
flag_non_call_exceptions = 1;
|
||||
flag_aggressive_loop_optimizations = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user