aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/opt.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@adacore.com>2022-02-06 16:06:36 +0000
committerPierre-Marie de Rodat <derodat@adacore.com>2022-05-12 12:38:39 +0000
commitce19ac123abde3d9c52d52e13a00bbbe60e08722 (patch)
treed99855570690c3ea71ec71db7ea07a93672f2c1d /gcc/ada/opt.ads
parent3b4ae9b98b07764b074110ba7215428df9efe320 (diff)
downloadgcc-ce19ac123abde3d9c52d52e13a00bbbe60e08722.zip
gcc-ce19ac123abde3d9c52d52e13a00bbbe60e08722.tar.gz
gcc-ce19ac123abde3d9c52d52e13a00bbbe60e08722.tar.bz2
[Ada] Remove front-end SJLJ processing
We no longer use the so called front-end SJLJ exception mechanism, so get rid of it. gcc/ada/ * ali.adb, ali.ads, bcheck.adb, exp_ch11.adb, fe.h, gnat1drv.adb, opt.adb, opt.ads, targparm.adb, targparm.ads, lib-writ.adb: Get rid of Frontend_Exceptions processing. * libgnat/system-aix.ads, libgnat/system-darwin-arm.ads, libgnat/system-darwin-ppc.ads, libgnat/system-darwin-x86.ads, libgnat/system-djgpp.ads, libgnat/system-dragonfly-x86_64.ads, libgnat/system-freebsd.ads, libgnat/system-hpux-ia64.ads, libgnat/system-hpux.ads, libgnat/system-linux-alpha.ads, libgnat/system-linux-arm.ads, libgnat/system-linux-hppa.ads, libgnat/system-linux-ia64.ads, libgnat/system-linux-m68k.ads, libgnat/system-linux-mips.ads, libgnat/system-linux-ppc.ads, libgnat/system-linux-riscv.ads, libgnat/system-linux-s390.ads, libgnat/system-linux-sh4.ads, libgnat/system-linux-sparc.ads, libgnat/system-linux-x86.ads, libgnat/system-lynxos178-ppc.ads, libgnat/system-lynxos178-x86.ads, libgnat/system-mingw.ads, libgnat/system-qnx-aarch64.ads, libgnat/system-rtems.ads, libgnat/system-solaris-sparc.ads, libgnat/system-solaris-x86.ads, libgnat/system-vxworks-arm-rtp-smp.ads, libgnat/system-vxworks-arm-rtp.ads, libgnat/system-vxworks-arm.ads, libgnat/system-vxworks-e500-kernel.ads, libgnat/system-vxworks-e500-rtp-smp.ads, libgnat/system-vxworks-e500-rtp.ads, libgnat/system-vxworks-ppc-kernel.ads, libgnat/system-vxworks-ppc-rtp-smp.ads, libgnat/system-vxworks-ppc-rtp.ads, libgnat/system-vxworks-x86-kernel.ads, libgnat/system-vxworks-x86-rtp-smp.ads, libgnat/system-vxworks-x86-rtp.ads, libgnat/system-vxworks7-aarch64-rtp-smp.ads, libgnat/system-vxworks7-aarch64.ads, libgnat/system-vxworks7-arm-rtp-smp.ads, libgnat/system-vxworks7-arm.ads, libgnat/system-vxworks7-e500-kernel.ads, libgnat/system-vxworks7-e500-rtp-smp.ads, libgnat/system-vxworks7-e500-rtp.ads, libgnat/system-vxworks7-ppc-kernel.ads, libgnat/system-vxworks7-ppc-rtp-smp.ads, libgnat/system-vxworks7-ppc-rtp.ads, libgnat/system-vxworks7-ppc64-kernel.ads, libgnat/system-vxworks7-ppc64-rtp-smp.ads, libgnat/system-vxworks7-x86-kernel.ads, libgnat/system-vxworks7-x86-rtp-smp.ads, libgnat/system-vxworks7-x86-rtp.ads, libgnat/system-vxworks7-x86_64-kernel.ads, libgnat/system-vxworks7-x86_64-rtp-smp.ads: Remove Frontend_Exceptions line. * gcc-interface/decl.cc, gcc-interface/trans.cc (gnat_to_gnu_entity, gnat_to_gnu_subprog_type, gigi, gnat_to_gnu): Remove Front_End_SJLJ processing and always assume Back_End_Exceptions.
Diffstat (limited to 'gcc/ada/opt.ads')
-rw-r--r--gcc/ada/opt.ads15
1 files changed, 3 insertions, 12 deletions
diff --git a/gcc/ada/opt.ads b/gcc/ada/opt.ads
index c38a93f..0d8b25f 100644
--- a/gcc/ada/opt.ads
+++ b/gcc/ada/opt.ads
@@ -567,13 +567,7 @@ package Opt is
type Exception_Mechanism_Type is
-- Determines the kind of mechanism used to handle exceptions
--
- (Front_End_SJLJ,
- -- Exceptions use setjmp/longjmp generated explicitly by the front end
- -- (this includes gigi or other equivalent parts of the code generator).
- -- AT END handlers are converted into exception handlers by the front
- -- end in this mode.
-
- Back_End_ZCX,
+ (Back_End_ZCX,
-- Exceptions are handled by the back end. The front end simply
-- generates the handlers as they appear in the source, and AT END
-- handlers are left untouched (they are not converted into exception
@@ -589,16 +583,13 @@ package Opt is
-- WARNING: There is a matching C declaration of this type in fe.h
- Exception_Mechanism : Exception_Mechanism_Type := Front_End_SJLJ;
+ Exception_Mechanism : Exception_Mechanism_Type := Back_End_SJLJ;
-- GNAT
-- Set to the appropriate value depending on the flags in system.ads
- -- (Frontend_Exceptions + ZCX_By_Default). The C convention is there to
- -- allow access by gigi.
+ -- (ZCX_By_Default). The C convention is there to allow access by gigi.
-- WARNING: There is a matching C declaration of this variable in fe.h
- function Back_End_Exceptions return Boolean;
- function Front_End_Exceptions return Boolean;
function ZCX_Exceptions return Boolean;
function SJLJ_Exceptions return Boolean;
-- GNAT