diff options
author | Jason Merrill <jason@gcc.gnu.org> | 1997-09-10 14:00:28 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 1997-09-10 14:00:28 -0400 |
commit | 0021b564f4ce0b648a8d6ec49b29afe609370788 (patch) | |
tree | 0928096722cf7e87c6973bd7bb029f787ab959db /gcc/varasm.c | |
parent | 0680d170431a1a44f958ca97a9ce01ea12b676b6 (diff) | |
download | gcc-0021b564f4ce0b648a8d6ec49b29afe609370788.tar.gz |
dwarf2 EH support
From-SVN: r15255
Diffstat (limited to 'gcc/varasm.c')
-rw-r--r-- | gcc/varasm.c | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/gcc/varasm.c b/gcc/varasm.c index 9d245830f44..351524dec55 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -170,6 +170,9 @@ static enum in_section { no_section, in_text, in_data, in_named #ifdef BSS_SECTION_ASM_OP , in_bss #endif +#ifdef EH_FRAME_SECTION_ASM_OP + , in_eh_frame +#endif #ifdef EXTRA_SECTIONS , EXTRA_SECTIONS #endif @@ -401,6 +404,18 @@ asm_output_aligned_bss (file, decl, name, size, align) #endif /* BSS_SECTION_ASM_OP */ +#ifdef EH_FRAME_SECTION_ASM_OP +void +eh_frame_section () +{ + if (in_section != in_eh_frame) + { + fprintf (asm_out_file, "%s\n", EH_FRAME_SECTION_ASM_OP); + in_section = in_eh_frame; + } +} +#endif + /* Switch to the section for function DECL. If DECL is NULL_TREE, switch to the text section. @@ -461,15 +476,15 @@ variable_section (decl, reloc) void exception_section () { +#if defined (EXCEPTION_SECTION) + EXCEPTION_SECTION (); +#else #ifdef ASM_OUTPUT_SECTION_NAME named_section (NULL_TREE, ".gcc_except_table", 0); #else if (flag_pic) data_section (); else -#if defined (EXCEPTION_SECTION) - EXCEPTION_SECTION (); -#else readonly_data_section (); #endif #endif |