This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[committed[ Fix darwin bootstrap
- From: Jakub Jelinek <jakub at redhat dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Fri, 10 Sep 2010 12:56:08 +0200
- Subject: [committed[ Fix darwin bootstrap
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
Hi!
I've wrongly thought that die_offset is HWI, when it is dw_offset
aka long int. On both arches I've been bootstrapping this (x86_64
and i686) HWI is long int and thus there were no warnings.
The other change is to disable DW_OP_GNU_implicit_pointer generation
for targets with old tools that can't grok newer extensions.
If DW_OP_implicit_pointer is accepted for DWARF5, then dwarf_version < 5 &&
would be added to the condition.
Committed to trunk as obvious.
2010-09-10 Jakub Jelinek <jakub@redhat.com>
PR bootstrap/45630
* dwarf2out.c (get_ref_die_offset_label): Use %ld instead of
HOST_WIDE_INT_PRINT_DEC to print ref->die_offset.
(implicit_ptr_descriptor): Return NULL if dwarf_strict.
--- gcc/dwarf2out.c.jj 2010-09-09 08:42:55.000000000 +0200
+++ gcc/dwarf2out.c 2010-09-10 12:20:49.816646667 +0200
@@ -6545,8 +6545,7 @@ is_tagged_type (const_tree type)
static void
get_ref_die_offset_label (char *label, dw_die_ref ref)
{
- sprintf (label, "%s+" HOST_WIDE_INT_PRINT_DEC,
- debug_info_section_label, ref->die_offset);
+ sprintf (label, "%s+%ld", debug_info_section_label, ref->die_offset);
}
/* Convert a DIE tag into its string name. */
@@ -14285,6 +14284,8 @@ implicit_ptr_descriptor (rtx rtl, HOST_W
dw_loc_descr_ref ret;
dw_die_ref ref;
+ if (dwarf_strict)
+ return NULL;
gcc_assert (TREE_CODE (DEBUG_IMPLICIT_PTR_DECL (rtl)) == VAR_DECL
|| TREE_CODE (DEBUG_IMPLICIT_PTR_DECL (rtl)) == PARM_DECL
|| TREE_CODE (DEBUG_IMPLICIT_PTR_DECL (rtl)) == RESULT_DECL);
Jakub