diff options
author | Mark Mitchell <mark@codesourcery.com> | 1999-07-22 02:16:55 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 1999-07-22 02:16:55 +0000 |
commit | b366352bbd1d4439e25d46f101ba898e5642b8d9 (patch) | |
tree | 7776410b059bf060eae695d3334b90bfa73b4174 /gcc | |
parent | a6c7a886f4c73309caea4f1eaa3c95a01fa18563 (diff) | |
download | gcc-b366352bbd1d4439e25d46f101ba898e5642b8d9.zip gcc-b366352bbd1d4439e25d46f101ba898e5642b8d9.tar.gz gcc-b366352bbd1d4439e25d46f101ba898e5642b8d9.tar.bz2 |
defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro.
* defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro.
* tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Define it.
* dwarf2out.c (dwarf2out_init): Don't output a label to mark the
start of the text section if DWARF2_GENERATE_TEXT_SECTION_LABEL is
false.
* config/mips/iris6.h (DWARF2_GENERATE_TEXT_SECTION_LABEL):
Define to zero.
From-SVN: r28213
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 10 | ||||
-rw-r--r-- | gcc/config/mips/iris6.h | 5 | ||||
-rw-r--r-- | gcc/defaults.h | 10 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 8 | ||||
-rw-r--r-- | gcc/tm.texi | 7 |
5 files changed, 38 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ffc896a..fb6fc1e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +Wed Jul 21 00:46:58 1999 Mark P. Mitchell <mark@codesourcery.com> + + * defaults.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): New macro. + * tm.texi (DWARF2_GENERATE_TEXT_SECTION_LABEL): Define it. + * dwarf2out.c (dwarf2out_init): Don't output a label to mark the + start of the text section if DWARF2_GENERATE_TEXT_SECTION_LABEL is + false. + * config/mips/iris6.h (DWARF2_GENERATE_TEXT_SECTION_LABEL): + Define to zero. + 1999-07-21 Michael Meissner <meissner@cygnus.com> * print-rtl.c (print_rtx): Print the names of the virtual diff --git a/gcc/config/mips/iris6.h b/gcc/config/mips/iris6.h index 9df7732..47d4ea8 100644 --- a/gcc/config/mips/iris6.h +++ b/gcc/config/mips/iris6.h @@ -34,6 +34,11 @@ Boston, MA 02111-1307, USA. */ irix5.h file. */ #undef DWARF2_UNWIND_INFO +/* The Irix6 assembler will sometimes assign labels to the wrong + section unless the labels are within .ent/.end blocks. Therefore, + we avoid creating such labels. */ +#define DWARF2_GENERATE_TEXT_SECTION_LABEL 0 + /* For Irix 6, -mabi=64 implies TARGET_LONG64. */ /* This is handled in override_options. */ diff --git a/gcc/defaults.h b/gcc/defaults.h index a0e3bfc..14c365a 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -154,3 +154,13 @@ do { fprintf (FILE, "\t%s\t", ASM_LONG); \ #if !defined (DWARF2_UNWIND_INFO) && defined (INCOMING_RETURN_ADDR_RTX) #define DWARF2_UNWIND_INFO 1 #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 + work, and we use the section itself, rather than a label at the + beginning of it, to indicate the start of the section. On such + platforms, define this to zero. */ +#ifndef DWARF2_GENERATE_TEXT_SECTION_LABEL +#define DWARF2_GENERATE_TEXT_SECTION_LABEL 1 +#endif diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 90bedcb..4e1ebee 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -10008,7 +10008,10 @@ dwarf2out_init (asm_out_file, main_input_filename) ASM_GENERATE_INTERNAL_LABEL (text_end_label, TEXT_END_LABEL, 0); ASM_GENERATE_INTERNAL_LABEL (abbrev_section_label, ABBREV_SECTION_LABEL, 0); - ASM_GENERATE_INTERNAL_LABEL (text_section_label, TEXT_SECTION_LABEL, 0); + if (DWARF2_GENERATE_TEXT_SECTION_LABEL) + ASM_GENERATE_INTERNAL_LABEL (text_section_label, TEXT_SECTION_LABEL, 0); + else + strcpy (text_section_label, stripattributes (TEXT_SECTION)); ASM_GENERATE_INTERNAL_LABEL (debug_info_section_label, DEBUG_INFO_SECTION_LABEL, 0); ASM_GENERATE_INTERNAL_LABEL (debug_line_section_label, @@ -10017,7 +10020,8 @@ dwarf2out_init (asm_out_file, main_input_filename) ASM_OUTPUT_SECTION (asm_out_file, ABBREV_SECTION); ASM_OUTPUT_LABEL (asm_out_file, abbrev_section_label); ASM_OUTPUT_SECTION (asm_out_file, TEXT_SECTION); - ASM_OUTPUT_LABEL (asm_out_file, text_section_label); + if (DWARF2_GENERATE_TEXT_SECTION_LABEL) + ASM_OUTPUT_LABEL (asm_out_file, text_section_label); ASM_OUTPUT_SECTION (asm_out_file, DEBUG_INFO_SECTION); ASM_OUTPUT_LABEL (asm_out_file, debug_info_section_label); ASM_OUTPUT_SECTION (asm_out_file, DEBUG_LINE_SECTION); diff --git a/gcc/tm.texi b/gcc/tm.texi index 28fefa8..a44c27b 100644 --- a/gcc/tm.texi +++ b/gcc/tm.texi @@ -6908,6 +6908,13 @@ Normally, if the user specifies only @samp{-ggdb} GNU CC will use Dwarf version 2 if available; this macro disables this. See the description of the @code{PREFERRED_DEBUGGING_TYPE} macro for more details. +@findex DWARF2_GENERATE_TEXT_SECTION_LABEL +@item DWARF2_GENERATE_TEXT_SECTION_LABEL +By default, the Dwarf 2 debugging information generator will generate a +label to mark the beginning of the text section. If it is better simply +to use the name of the text section itself, rather than an explicit label, +to indicate the beginning of the text section, define this macro to zero. + @findex PUT_SDB_@dots{} @item PUT_SDB_@dots{} Define these macros to override the assembler syntax for the special |