From 64af89e979c2456e78167f1bbddd1e01e2d7a23b Mon Sep 17 00:00:00 2001 From: Geoffrey Keating Date: Tue, 21 Feb 2006 22:27:02 +0000 Subject: Radar 4444941 * dwarf2out.c (gen_subprogram_die): Add DW_AT_MIPS_linkage_name when it might not have been added previously. git-svn-id: https://gcc.gnu.org/svn/gcc/branches/apple-local-200502-branch@111347 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog.apple-ppc | 6 ++++++ gcc/dwarf2out.c | 11 +++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog.apple-ppc b/gcc/ChangeLog.apple-ppc index 444209e1b27..2ce5869206a 100644 --- a/gcc/ChangeLog.apple-ppc +++ b/gcc/ChangeLog.apple-ppc @@ -1,3 +1,9 @@ +2006-02-21 Geoffrey Keating + + Radar 4444941 + * dwarf2out.c (gen_subprogram_die): Add DW_AT_MIPS_linkage_name + when it might not have been added previously. + 2006-02-16 Mike Stump Radar 4419735 diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index c77de0ddde0..3d07181e1d6 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -5141,12 +5141,10 @@ add_AT_lineptr (dw_die_ref die, enum dwarf_attribute attr_kind, attr->dw_attr_next = NULL; attr->dw_attr = attr_kind; attr->dw_attr_val.val_class = dw_val_class_lineptr; -/* APPLE LOCAL end dwarf 4383509 */ attr->dw_attr_val.v.val_lbl_id = xstrdup (label); add_dwarf_attr (die, attr); } -/* APPLE LOCAL begin dwarf 4383509 */ /* Add a section offset attribute value to a DIE, an offset into the debug_macinfo section. */ @@ -7147,10 +7145,8 @@ output_die (dw_die_ref die) case dw_val_class_lineptr: dw2_asm_output_offset (DWARF_OFFSET_SIZE, AT_lbl (a), DEBUG_LINE_SECTION, "%s", name); -/* APPLE LOCAL end dwarf 4383509 */ break; -/* APPLE LOCAL begin dwarf 4383509 */ case dw_val_class_macptr: dw2_asm_output_offset (DWARF_OFFSET_SIZE, AT_lbl (a), DEBUG_MACINFO_SECTION, "%s", name); @@ -11548,6 +11544,13 @@ gen_subprogram_die (tree decl, dw_die_ref context_die) } else if (!DECL_EXTERNAL (decl)) { + /* APPLE LOCAL begin dwarf 4444941 */ + if (TREE_PUBLIC (decl) && DECL_ASSEMBLER_NAME (decl) != DECL_NAME (decl) + && DECL_ABSTRACT_ORIGIN (decl)) + add_AT_string (subr_die, DW_AT_MIPS_linkage_name, + IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (decl))); + /* APPLE LOCAL end dwarf 4444941 */ + if (!old_die || !get_AT (old_die, DW_AT_inline)) equate_decl_number_to_die (decl, subr_die); -- cgit v1.2.3