aboutsummaryrefslogtreecommitdiff
path: root/gcc/dwarf2out.c
diff options
context:
space:
mode:
authorDavid Edelsohn <dje.gcc@gmail.com>2017-07-25 13:11:37 +0000
committerDavid Edelsohn <dje@gcc.gnu.org>2017-07-25 09:11:37 -0400
commit7e78cfda8219a0e7d95232e15fe49cb4de620134 (patch)
tree55d38cf00f94d63fa90cc7d180e0710b5cf31aa8 /gcc/dwarf2out.c
parent8595f67be2d1f44102a345f21d28b4836ad47349 (diff)
downloadgcc-7e78cfda8219a0e7d95232e15fe49cb4de620134.zip
gcc-7e78cfda8219a0e7d95232e15fe49cb4de620134.tar.gz
gcc-7e78cfda8219a0e7d95232e15fe49cb4de620134.tar.bz2
dwarf2asm.c (dw2_asm_output_nstring): Encode double quote character for AIX.
* dwarf2asm.c (dw2_asm_output_nstring): Encode double quote character for AIX. * dwarf2out.c (output_macinfo): Copy debug_line_section_label to dl_section_ref. On AIX, append an expression to subtract the size of the section length to dl_section_ref. From-SVN: r250516
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r--gcc/dwarf2out.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index 2010450..5231683 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -26975,6 +26975,7 @@ output_macinfo (void)
macinfo_entry *ref;
vec<macinfo_entry, va_gc> *files = NULL;
macinfo_hash_type *macinfo_htab = NULL;
+ char dl_section_ref[MAX_ARTIFICIAL_LABEL_BYTES];
if (! length)
return;
@@ -26985,6 +26986,12 @@ output_macinfo (void)
&& (int) DW_MACINFO_start_file == (int) DW_MACRO_start_file
&& (int) DW_MACINFO_end_file == (int) DW_MACRO_end_file);
+ /* AIX Assembler inserts the length, so adjust the reference to match the
+ offset expected by debuggers. */
+ strcpy (dl_section_ref, debug_line_section_label);
+ if (XCOFF_DEBUGGING_INFO)
+ strcat (dl_section_ref, DWARF_INITIAL_LENGTH_SIZE_STR);
+
/* For .debug_macro emit the section header. */
if (!dwarf_strict || dwarf_version >= 5)
{
@@ -26995,7 +27002,7 @@ output_macinfo (void)
else
dw2_asm_output_data (1, 2, "Flags: 32-bit, lineptr present");
dw2_asm_output_offset (DWARF_OFFSET_SIZE,
- (!dwarf_split_debug_info ? debug_line_section_label
+ (!dwarf_split_debug_info ? dl_section_ref
: debug_skeleton_line_section_label),
debug_line_section, NULL);
}