aboutsummaryrefslogtreecommitdiff
path: root/gcc/defaults.h
diff options
context:
space:
mode:
authorJason Merrill <jason@yorick.cygnus.com>1999-09-09 21:36:20 +0000
committerJason Merrill <jason@gcc.gnu.org>1999-09-09 17:36:20 -0400
commit31cf01446d16abdebb2b05bb8183ba487648900c (patch)
tree723f2802719575de5ff62a84c4285e1397b7da80 /gcc/defaults.h
parenta8f73d4b365bbfe9145bfd4ae16159d632ca0c33 (diff)
downloadgcc-31cf01446d16abdebb2b05bb8183ba487648900c.zip
gcc-31cf01446d16abdebb2b05bb8183ba487648900c.tar.gz
gcc-31cf01446d16abdebb2b05bb8183ba487648900c.tar.bz2
defaults.h (EH_FRAME_SECTION, [...]): Define here.
* defaults.h (EH_FRAME_SECTION, EH_FRAME_SECTION_ASM_OP): Define here. * crtstuff.c: Not here. * dwarf2out.c: Or here. * libgcc2.c (__do_global_ctors, __do_global_dtors): Handle EH frame info. From-SVN: r29241
Diffstat (limited to 'gcc/defaults.h')
-rw-r--r--gcc/defaults.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/gcc/defaults.h b/gcc/defaults.h
index 90d483f..2fe8cd4 100644
--- a/gcc/defaults.h
+++ b/gcc/defaults.h
@@ -1,7 +1,7 @@
/* Definitions of various defaults for how to do assembler output
(most of which are designed to be appropriate for GAS or for
some BSD assembler).
- Copyright (C) 1992, 1996, 1997, 1998 Free Software Foundation, Inc.
+ Copyright (C) 1992, 1996-1999 Free Software Foundation, Inc.
Contributed by Ron Guilmette (rfg@monkeys.com)
This file is part of GNU CC.
@@ -155,6 +155,19 @@ do { fprintf (FILE, "\t%s\t", ASM_LONG); \
#define DWARF2_UNWIND_INFO 1
#endif
+#if defined (DWARF2_UNWIND_INFO) && !defined (EH_FRAME_SECTION)
+# if defined (EH_FRAME_SECTION_ASM_OP)
+# define EH_FRAME_SECTION() eh_frame_section();
+# else
+ /* If we aren't using crtstuff to run ctors, don't use it for EH. */
+# if defined (ASM_OUTPUT_SECTION_NAME) && defined (ASM_OUTPUT_CONSTRUCTOR)
+# define EH_FRAME_SECTION_ASM_OP ".section\t.eh_frame,\"aw\""
+# define EH_FRAME_SECTION() \
+ do { named_section (NULL_TREE, ".eh_frame", 0); } while (0)
+# endif
+# endif
+#endif
+
/* By default, we generate a label at the beginning and end of the
text section, and compute the size of the text section by
subtracting the two. However, on some platforms that doesn't