diff options
author | Richard Henderson <rth@redhat.com> | 2001-08-03 18:31:41 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2001-08-03 18:31:41 -0700 |
commit | 7c262518a45491adb8a04f5ec4006dbe957ab7a4 (patch) | |
tree | f3a177e73b80eca5619e6a8d303a81b56c901052 /gcc/config/mips/iris6.h | |
parent | 4e627c414436df3de424b718f70576abab682e04 (diff) | |
download | gcc-7c262518a45491adb8a04f5ec4006dbe957ab7a4.zip gcc-7c262518a45491adb8a04f5ec4006dbe957ab7a4.tar.gz gcc-7c262518a45491adb8a04f5ec4006dbe957ab7a4.tar.bz2 |
target.h (gcc_target): Add asm_out.named_section, section_type_flags, have_named_sections.
* target.h (gcc_target): Add asm_out.named_section,
section_type_flags, have_named_sections.
* target-def.h (TARGET_ASM_NAMED_SECTION): New.
(TARGET_HAVE_NAMED_SECTIONS): New.
(TARGET_SECTION_TYPE_FLAGS): New.
* Makefile.in (toplev.o): Depend on TARGET_H.
(varasm.o, dbxout.o): Likewise.
* c-common.c (decl_attributes): Check targetm.have_named_sections
instead of ifdef ASM_OUTPUT_SECTION_NAME.
* dbxout.c (dbxout_function_decl): Likewise.
(dbxout_function_end): Likewise.
* toplev.c (compile_file): Likewise.
* varasm.c (exception_section): Likewise.
* cp/decl2.c (finish_objects): Likewise.
* defaults.h (EH_FRAME_SECTION): Remove.
(EH_FRAME_SECTION_ASM_OP): Remove.
(EH_FRAME_SECTION_NAME): New.
(UNIQUE_SECTION): Don't depend on ASM_OUTPUT_SECTION_NAME.
(UNIQUE_SECTION_P): Remove.
* dwarf2out.c (SECTION_FORMAT): Remove.
(ASM_OUTPUT_SECTION): Remove.
(output_call_frame_info): Use named_section_flags.
(output_comp_unit, dwarf2out_start_source_file): Likewise.
(dwarf2out_end_source_file, dwarf2out_define): Likewise.
(dwarf2out_undef, dwarf2out_init, dwarf2out_finish): Likewise.
* varasm.c (in_eh_frame, eh_frame_section): Remove.
(named_section_flags): New.
(named_section): Use it and targetm.section_type_flags.
(resolve_unique_section): New.
(assemble_start_function): Use it.
(asm_emit_uninitialised, assemble_variable): Likewise.
(default_section_type_flags): New.
(default_no_named_section, default_elf_asm_named_section): New.
(default_coff_asm_named_section, default_pe_asm_named_section): New.
* output.h: Update varasm.c decls.
(SECTION_*): New flags.
* crtstuff.c: Check EH_FRAME_SECTION_NAME not EH_FRAME_SECTION_ASM_OP.
(__EH_FRAME_BEGIN__, __FRAME_END__): Use attribute section.
* config/elfos.h (UNIQUE_SECTION_P): Remove.
* config/alpha/elf.h, config/arm/linux-elf.h: Likewise.
* config/arm/pe.h, config/arm/unknown-elf.h: Likewise.
* config/i386/cygwin.h, config/i386/djgpp.h: Likewise.
* config/i386/i386-interix.h, config/i386/win32.h: Likewise.
* config/ia64/sysv4.h, config/mcore/mcore-pe.h: Likewise.
* config/mips/elf.h, config/mips/elf64.h: Likewise.
* config/mips/iris6gld.h, config/mips/mips.h: Likewise.
* config/pa/pa64-hpux.h,
* config/elfos.h (ASM_OUTPUT_SECTION_NAME): Remove.
(TARGET_ASM_NAMED_SECTION): New.
* config/psos.h, config/a29k/a29k.h, config/alpha/elf.h: Likewise.
* config/alpha/vms.h, config/arm/coff.h: Likewise.
* config/arm/conix-elf.h, config/arm/elf.h: Likewise.
* config/arm/linux-elf.h, config/arm/pe.h: Likewise.
* config/arm/unknown-elf.h, config/avr/avr.h: Likewise.
* config/c4x/c4x.h, config/h8300/h8300.h: Likewise.
* config/i386/cygwin.h, config/i386/djgpp.h: Likewise.
* config/i386/i386-interix.h, config/i386/i386elf.h : Likewise.
* config/i386/sco5.h, config/i386/win32.h: Likewise.
* config/m68k/coff.h, config/mcore/mcore-pe.h: Likewise.
* config/mcore/mcore.h, config/mips/elf.h: Likewise.
* config/mips/elf64.h, config/mips/iris6.h: Likewise.
* config/mips/netbsd.h, config/mips/openbsd.h: Likewise.
* config/pa/pa64-hpux.h, config/rs6000/sysv4.h: Likewise.
* config/rs6000/xcoff.h, config/sh/sh.h: Likewise.
* config/sparc/sysv4.h: Likewise.
* config/nextstep.h: Error until named sections implemented.
* config/a29k/a29k.c (a29k_asm_named_section): New.
* config/alpha/alpha.c (SECTION_VMS_OVERLAY): New.
(vms_section_type_flags, vms_asm_named_section): New.
* config/arm/arm.c (arm_elf_asm_named_section): New.
* config/avr/avr.c (asm_output_section_name): Remove.
* config/avr/avr-protos.h: Update.
* config/c4x/c4x.c (c4x_asm_named_section): New.
* config/h8300/h8300.c (h8300_asm_named_section): New.
* config/i386/i386.c (sco_asm_named_section): New.
* config/i386/winnt.c (SECTION_PE_SHARED): New.
(i386_pe_section_type_flags): New.
(i386_pe_asm_named_section): New.
* config/i386/i386-protos.h: Update.
* config/m68k/m68k.c (m68k_coff_asm_named_section): New.
* config/mcore/mcore.c (mcore_asm_named_section): New.
* config/mips/mips.c (iris6_asm_named_section): New.
* config/mips/mips.h (ENCODE_SECTION_INFO): Use DECL_ONE_ONLY
instead of UNIQUE_SECTION_P.
* config/rs6000/rs6000.c (rs6000_elf_section_type_flags): New.
(xcoff_asm_named_section): New.
* config/sh/sh.c (sh_asm_named_section): New.
* config/sparc/sparc.c (sparc_elf_asm_named_section): New.
* config/i386/djgpp.h (EH_FRAME_SECTION_ASM_OP): Remove.
* config/i386/sco5.h (EH_FRAME_SECTION_ASM_OP*): Remove.
(EH_FRAME_SECTION_NAME): New.
(EXCEPTION_SECTION): New.
* config/ia64/ia64.h (EH_FRAME_SECTION_ASM_OP): Remove.
(DEBUG_*_SECTION): Remove.
* config/m68k/rtemself.h (EH_FRAME_SECTION_ASM_OP): Remove.
* config/mips/iris6.h (DEBUG_*_SECTION): Remove.
(EH_FRAME_SECTION_ASM_OP): Remove.
* doc/tm.texi (UNIQUE_SECTION_P): Remove.
(ASM_OUTPUT_SECTION_NAME): Remove.
(TARGET_ASM_NAMED_SECTION): New.
(TARGET_HAVE_NAMED_SECTIONS): New.
(TARGET_SECTION_TYPE_FLAGS): New.
(EH_FRAME_SECTION_ASM_OP): Remove.
(EH_FRAME_SECTION_NAME): New.
From-SVN: r44623
Diffstat (limited to 'gcc/config/mips/iris6.h')
-rw-r--r-- | gcc/config/mips/iris6.h | 37 |
1 files changed, 3 insertions, 34 deletions
diff --git a/gcc/config/mips/iris6.h b/gcc/config/mips/iris6.h index 62ddc19..4e3a227 100644 --- a/gcc/config/mips/iris6.h +++ b/gcc/config/mips/iris6.h @@ -217,19 +217,6 @@ Boston, MA 02111-1307, USA. */ #define POPSECTION_ASM_OP "\t.popsection" -#define DEBUG_INFO_SECTION ".debug_info,0x7000001e,0,0,1" -#define DEBUG_LINE_SECTION ".debug_line,0x7000001e,0,0,1" -#define DEBUG_SFNAMES_SECTION ".debug_sfnames,0x7000001e,0,0,1" -#define DEBUG_SRCINFO_SECTION ".debug_srcinfo,0x7000001e,0,0,1" -#define DEBUG_MACINFO_SECTION ".debug_macinfo,0x7000001e,0,0,1" -#define DEBUG_PUBNAMES_SECTION ".debug_pubnames,0x7000001e,0,0,1" -#define DEBUG_ARANGES_SECTION ".debug_aranges,0x7000001e,0,0,1" -#define DEBUG_FRAME_SECTION ".debug_frame,0x7000001e,0x08000000,0,1" -#define DEBUG_ABBREV_SECTION ".debug_abbrev,0x7000001e,0,0,1" -#define DEBUG_LOC_SECTION ".debug_loc,0x7000001e,0,0,1" -#define DEBUG_STR_SECTION ".debug_str,0x7000001e,0,0,1" -#define DEBUG_RANGES_SECTION ".debug_ranges,0x7000001e,0,0,1" - /* ??? If no mabi=X option give, but a mipsX option is, then should depend on the mipsX option. */ /* If no mips[3,4] option given, give the appropriate default for mabi=X */ @@ -278,12 +265,9 @@ Boston, MA 02111-1307, USA. */ #if _MIPS_SZPTR == 64 #define CTORS_SECTION_ASM_OP "\t.section\t.ctors,1,2,0,8" #define DTORS_SECTION_ASM_OP "\t.section\t.dtors,1,2,0,8" -#define EH_FRAME_SECTION_ASM_OP "\t.section\t.eh_frame,1,2,0,8" #else /* _MIPS_SZPTR != 64 */ #define CTORS_SECTION_ASM_OP "\t.section\t.ctors,1,2,0,4" #define DTORS_SECTION_ASM_OP "\t.section\t.dtors,1,2,0,4" -#define EH_FRAME_SECTION_ASM_OP "\t.section\t.eh_frame,1,2,0,4" - #endif /* _MIPS_SZPTR == 64 */ #else /* ! (defined (CRT_BEGIN) || defined (CRT_END)) */ @@ -293,8 +277,6 @@ Boston, MA 02111-1307, USA. */ (Pmode == DImode ? "\t.section\t.ctors,1,2,0,8" : "\t.section\t.ctors,1,2,0,4") #define DTORS_SECTION_ASM_OP \ (Pmode == DImode ? "\t.section\t.dtors,1,2,0,8" : "\t.section\t.dtors,1,2,0,4") -#define EH_FRAME_SECTION_ASM_OP \ - (Pmode == DImode ? "\t.section\t.eh_frame,1,2,0,8" : "\t.section\t.eh_frame,1,2,0,4") #endif /* defined (CRT_BEGIN) || defined (CRT_END) */ /* A default list of other sections which we might be "in" at any given @@ -382,22 +364,9 @@ dtors_section () \ fprintf (FILE, "\n"); \ } while (0) -/* A C statement to output something to the assembler file to switch to section - NAME for object DECL which is either a FUNCTION_DECL, a VAR_DECL or - NULL_TREE. */ - -#define ASM_OUTPUT_SECTION_NAME(F, DECL, NAME, RELOC) \ -do { \ - extern FILE *asm_out_text_file; \ - if ((DECL) && TREE_CODE (DECL) == FUNCTION_DECL) \ - fprintf (asm_out_text_file, "\t.section %s,1,6,4,4\n", (NAME)); \ - else if ((DECL) && DECL_READONLY_SECTION (DECL, RELOC)) \ - fprintf (F, "\t.section %s,1,2,0,8\n", (NAME)); \ - else if (! strcmp (NAME, ".bss")) \ - fprintf (F, "\t.section %s,\"aw\",@nobits\n", (NAME)); \ - else \ - fprintf (F, "\t.section %s,1,3,0,8\n", (NAME)); \ -} while (0) +/* Switch into a generic section. */ +#undef TARGET_ASM_NAMED_SECTION +#define TARGET_ASM_NAMED_SECTION iris6_asm_named_section /* Stuff for constructors. End here. */ |