sco5.h: Let ELF use dwarf2 unwinding.
authorRobert Lipe <robertl@dgii.com>
Sat, 18 Oct 1997 05:21:23 +0000 (05:21 +0000)
committerJeff Law <law@gcc.gnu.org>
Sat, 18 Oct 1997 05:21:23 +0000 (23:21 -0600)
        * i386/sco5.h: Let ELF use dwarf2 unwinding.  COFF uses sjlj.
        (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
        (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
        (DWARF2_UNWIND_INFO): Let this track object file format.
        (EXTRA_SECTIONS): Add in_eh.
        (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
        (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.

From-SVN: r15990

gcc/ChangeLog
gcc/config/i386/sco5.h

index ea2a6b4..2c785dd 100644 (file)
@@ -1,3 +1,13 @@
+Fri Oct 17 23:24:40 1997  Robert Lipe (robertl@dgii.com)
+
+       * i386/sco5.h: Let ELF use dwarf2 unwinding.  COFF uses sjlj.
+       (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Defined.
+       (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
+       (DWARF2_UNWIND_INFO): Let this track object file format.
+       (EXTRA_SECTIONS): Add in_eh.
+       (EH_FRAME_SECTION_ASM_OP, EH_FRAME_SECTION_ASM_OP_ELF): Define.
+       (EH_FRAME_SECTION_ASM_OP_COFF): Likewise.
+
 Fri Oct 17 17:13:42 1997  David S. Miller  <davem@tanya.rutgers.edu>
 
        * sparc/linux64.h (LINK_SPEC): Dynamic linker is ld-linux64.so.2.
index 40862e0..a7c57a5 100644 (file)
@@ -76,6 +76,17 @@ Boston, MA 02111-1307, USA.  */
 #undef GLOBAL_ASM_OP
 #define GLOBAL_ASM_OP                  "\t.globl"
 
+#undef EH_FRAME_SECTION_ASM_OP
+#define EH_FRAME_SECTION_ASM_OP_COFF   "\t.section\t.ehfram, \"x\""
+#define EH_FRAME_SECTION_ASM_OP_ELF    "\t.section\t.eh_frame, \"aw\""
+#define EH_FRAME_SECTION_ASM_OP        \
+  ((TARGET_ELF) ? EH_FRAME_SECTION_ASM_OP_ELF : EH_FRAME_SECTION_ASM_OP_COFF)
+
+/* Avoid problems (long sectino names, forward assembler refs) with DWARF
+   exception unwinding when we're generating COFF */
+#define DWARF2_UNWIND_INFO     \
+  ((TARGET_ELF) ? 1 : 0 )  
+
 #undef CONST_SECTION_ASM_OP
 #define CONST_SECTION_ASM_OP_COFF      "\t.section\t.rodata, \"x\""
 #define CONST_SECTION_ASM_OP_ELF       "\t.section\t.rodata"
@@ -901,6 +912,7 @@ compiler at the end of the day. Onward we go ...
 # undef FINI_SECTION_ASM_OP
 # undef CTORS_SECTION_ASM_OP
 # undef DTORS_SECTION_ASM_OP
+# undef EH_FRAME_SECTION_ASM_OP
 # undef CTOR_LIST_BEGIN
 # undef CTOR_LIST_END
 # undef DO_GLOBAL_CTORS_BODY
@@ -912,11 +924,13 @@ compiler at the end of the day. Onward we go ...
 #  define FINI_SECTION_ASM_OP FINI_SECTION_ASM_OP_ELF
 #  define DTORS_SECTION_ASM_OP DTORS_SECTION_ASM_OP_ELF
 #  define CTORS_SECTION_ASM_OP CTORS_SECTION_ASM_OP_ELF
+#  define EH_FRAME_SECTION_ASM_OP EH_FRAME_SECTION_ASM_OP_ELF
 # else /* ! _SCO_ELF */
 #  define INIT_SECTION_ASM_OP INIT_SECTION_ASM_OP_COFF
 #  define FINI_SECTION_ASM_OP FINI_SECTION_ASM_OP_COFF
 #  define DTORS_SECTION_ASM_OP DTORS_SECTION_ASM_OP_COFF
 #  define CTORS_SECTION_ASM_OP CTORS_SECTION_ASM_OP_COFF
+#  define EH_FRAME_SECTION_ASM_OP ""
 #  define CTOR_LIST_BEGIN asm (INIT_SECTION_ASM_OP); asm ("pushl $0")
 #  define CTOR_LIST_END CTOR_LIST_BEGIN
 #  define DO_GLOBAL_CTORS_BODY                                         \
@@ -927,4 +941,3 @@ do {                                                                        \
 } while (0)
 # endif /* ! _SCO_ELF */
 #endif /* CRT_BEGIN !! CRT_END */
-