From 07c9d2eb2e9691d05219a18ecde9bc4a511d1a63 Mon Sep 17 00:00:00 2001 From: Stan Shebs Date: Mon, 22 Oct 2001 14:43:31 +0000 Subject: target.h (struct gcc_target): Add asm_out.exception_section, asm_out.eh_frame_section. * target.h (struct gcc_target): Add asm_out.exception_section, asm_out.eh_frame_section. * target-def.h (TARGET_ASM_EXCEPTION_SECTION): New macro. (TARGET_ASM_EH_FRAME_SECTION): New. (TARGET_INITIALIZER): Update. * output.h (default_exception_section): Declare. (default_eh_frame_section): Declare. * dwarf2out.c: Include target.h. (output_call_frame_info): Call target hook for eh frames. (default_eh_frame_section): New function. * except.c: Include target.h. (output_function_exception_table): Call target hook for exception section. * varasm.c (default_exception_section): Rename from exception_section, remove EXCEPTION_SECTION macro. * config/darwin.h (darwin_eh_frame_section): New function. (EXCEPTION_SECTION): Remove. (TARGET_ASM_EXCEPTION_SECTION): Define. * config/nextstep.h (EH_FRAME_SECTION_ASM_OP): Remove. (nextstep_exception_section): New function. (nextstep_eh_frame_section): New function. (TARGET_ASM_EXCEPTION_SECTION): Define. (TARGET_ASM_EH_FRAME_SECTION): Define. * config/pa/som.h (EXCEPTION_SECTION): Remove. (TARGET_ASM_EXCEPTION_SECTION): Define. * config/rs6000/sysv4.h, config/rs6000/xcoff.h (EXCEPTION_SECTION): Remove. (TARGET_ASM_EXCEPTION_SECTION): Define. * config/stormy16/stormy16.h: Remove comments referencing EXCEPTION_SECTION and EH_FRAME_SECTION_ASM_OP. * doc/tm.texi: Document TARGET_ASM_EXCEPTION_SECTION and TARGET_ASM_EH_FRAME_SECTION. From-SVN: r46409 --- gcc/config/nextstep.h | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'gcc/config/nextstep.h') diff --git a/gcc/config/nextstep.h b/gcc/config/nextstep.h index 956b9e2..8275843 100644 --- a/gcc/config/nextstep.h +++ b/gcc/config/nextstep.h @@ -217,13 +217,10 @@ Boston, MA 02111-1307, USA. */ extern void nextstep_asm_out_constructor PARAMS ((struct rtx_def *, int)); extern void nextstep_asm_out_destructor PARAMS ((struct rtx_def *, int)); -/* ??? Should be changed to EH_FRAME_SECTION_NAME, but that requires - named section support. Based on this definition, it seems clear - that the object file format supports named sections, but it has - not been implemented in gcc. */ -#error "Implement named section support" -#define EH_FRAME_SECTION_ASM_OP "\t.section __TEXT,__eh_frame,regular" +#define TARGET_ASM_EXCEPTION_SECTION nextstep_exception_section +#define TARGET_ASM_EH_FRAME_SECTION nextstep_eh_frame_section + /* Don't output a .file directive. That is only used by the assembler for error reporting. */ #undef ASM_FILE_START @@ -326,6 +323,7 @@ FUNCTION () \ #define EXTRA_SECTIONS \ in_const, in_cstring, in_literal4, in_literal8, \ in_constructor, in_destructor, \ + in_nextstep_exception, in_nextstep_eh_frame, \ in_objc_class, in_objc_meta_class, in_objc_category, \ in_objc_class_vars, in_objc_instance_vars, \ in_objc_cls_meth, in_objc_inst_meth, \ @@ -357,6 +355,12 @@ SECTION_FUNCTION (constructor_section, \ SECTION_FUNCTION (destructor_section, \ in_destructor, \ ".destructor", 0, 0) \ +SECTION_FUNCTION (nextstep_exception_section, \ + in_nextstep_exception, \ + ".section __TEXT,__gcc_except_tab,regular", 0, 0) \ +SECTION_FUNCTION (nextstep_eh_frame_section, \ + in_nextstep_eh_frame, \ + ".section __TEXT,__eh_frame,regular", 0, 0) \ SECTION_FUNCTION (objc_class_section, \ in_objc_class, \ ".objc_class", 0, 1) \ -- cgit v1.1