aboutsummaryrefslogtreecommitdiff
path: root/gcc/flags.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2003-04-01 23:08:16 -0800
committerRichard Henderson <rth@gcc.gnu.org>2003-04-01 23:08:16 -0800
commit125ca8fde8648d4ec280387f09d96ff004d21766 (patch)
treef5fd434b155cb047fdfef9811d5e14bb52fc5de9 /gcc/flags.h
parent5b64bfc45b6f8f12a5dfac32d708cae70a31432f (diff)
downloadgcc-125ca8fde8648d4ec280387f09d96ff004d21766.zip
gcc-125ca8fde8648d4ec280387f09d96ff004d21766.tar.gz
gcc-125ca8fde8648d4ec280387f09d96ff004d21766.tar.bz2
except.c (convert_from_eh_region_ranges_1): Smash REG_EH_REGION notes for nothrow calls if flag_forced_unwind_exceptions.
* except.c (convert_from_eh_region_ranges_1): Smash REG_EH_REGION notes for nothrow calls if flag_forced_unwind_exceptions. (build_post_landing_pads): Mind flag_forced_unwind_exceptions. (sjlj_find_directly_reachable_regions): Likewise. (reachable_handlers): Likewise. (can_throw_external): Likewise. (collect_one_action_chain): Record cleanups after catch-all and must-not-throw if flag_forced_unwind_exceptions. * flags.h (flag_forced_unwind_exceptions): Declare. * toplev.c (flag_forced_unwind_exceptions): New. (lang_independent_options): Add it. * doc/invoke.text: Add it. * g++.dg/eh/forced1.C: New. * g++.dg/eh/forced2.C: New. From-SVN: r65158
Diffstat (limited to 'gcc/flags.h')
-rw-r--r--gcc/flags.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/flags.h b/gcc/flags.h
index aed3386..88ed465 100644
--- a/gcc/flags.h
+++ b/gcc/flags.h
@@ -476,6 +476,10 @@ extern int flag_unwind_tables;
extern int flag_asynchronous_unwind_tables;
+/* Nonzero means allow for forced unwinding. */
+
+extern int flag_forced_unwind_exceptions;
+
/* Nonzero means don't place uninitialized global data in common storage
by default. */