From 802d48223b68e962dd8d96b20977f7406b9d4d91 Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Thu, 4 Nov 2010 16:03:25 +0000 Subject: [PATCH] bfd/ 2010-11-04 Kai Tietz * coffcode.h (GNU_LINKONCE_WT): New. (sec_to_styp_flags): Add handling of new debug section. (styp_to_sec_flags): Likewise. ld/ 010-11-04 Kai Tietz * scripttempl/pe.sc (.debug_types): New. * scripttempl/pep.sc: Likewise. --- bfd/ChangeLog | 7 +++++++ bfd/coffcode.h | 7 ++++++- ld/ChangeLog | 5 +++++ ld/scripttempl/pe.sc | 6 ++++++ ld/scripttempl/pep.sc | 6 ++++++ 5 files changed, 30 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index ab5b3308307..b31bfa4503c 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2010-11-04 Kai Tietz + + * coffcode.h (GNU_LINKONCE_WT): New. + (sec_to_styp_flags): Add handling of new debug + section. + (styp_to_sec_flags): Likewise. + 2010-11-04 Tristan Gingold * makefile.vms (CFLAGS): Make badalias warnings informational. diff --git a/bfd/coffcode.h b/bfd/coffcode.h index 03ec376bca2..70f98512f9a 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -373,6 +373,7 @@ CODE_FRAGMENT #define DOT_DEBUG ".debug" #define GNU_LINKONCE_WI ".gnu.linkonce.wi." +#define GNU_LINKONCE_WT ".gnu.linkonce.wt." #define DOT_RELOC ".reloc" #if defined (COFF_LONG_SECTION_NAMES) @@ -557,7 +558,8 @@ sec_to_styp_flags (const char *sec_name, flagword sec_flags) styp_flags = STYP_DEBUG_INFO; } #ifdef COFF_LONG_SECTION_NAMES - else if (CONST_STRNEQ (sec_name, GNU_LINKONCE_WI)) + else if (CONST_STRNEQ (sec_name, GNU_LINKONCE_WI) + || CONST_STRNEQ (sec_name, GNU_LINKONCE_WT)) { styp_flags = STYP_DEBUG_INFO; } @@ -641,6 +643,7 @@ sec_to_styp_flags (const char *sec_name, flagword sec_flags) if (CONST_STRNEQ (sec_name, DOT_DEBUG) #ifdef COFF_LONG_SECTION_NAMES || CONST_STRNEQ (sec_name, GNU_LINKONCE_WI) + || CONST_STRNEQ (sec_name, GNU_LINKONCE_WT) #endif || CONST_STRNEQ (sec_name, ".stab")) is_dbg = TRUE; @@ -799,6 +802,7 @@ styp_to_sec_flags (bfd *abfd ATTRIBUTE_UNUSED, #endif #ifdef COFF_LONG_SECTION_NAMES || CONST_STRNEQ (name, GNU_LINKONCE_WI) + || CONST_STRNEQ (name, GNU_LINKONCE_WT) #endif || CONST_STRNEQ (name, ".stab")) { @@ -1132,6 +1136,7 @@ styp_to_sec_flags (bfd *abfd, if (CONST_STRNEQ (name, DOT_DEBUG) #ifdef COFF_LONG_SECTION_NAMES || CONST_STRNEQ (name, GNU_LINKONCE_WI) + || CONST_STRNEQ (name, GNU_LINKONCE_WT) #endif || CONST_STRNEQ (name, ".stab")) is_dbg = TRUE; diff --git a/ld/ChangeLog b/ld/ChangeLog index 2b037e420bf..cd29ee843dc 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,8 @@ +2010-11-04 Kai Tietz + + * scripttempl/pe.sc (.debug_types): New. + * scripttempl/pep.sc: Likewise. + 2010-11-04 Alan Modra * plugin.c (is_ir_dummy_bfd): Don't segfault on NULL abfd. diff --git a/ld/scripttempl/pe.sc b/ld/scripttempl/pe.sc index e178fce0d3b..7d52cc542cf 100644 --- a/ld/scripttempl/pe.sc +++ b/ld/scripttempl/pe.sc @@ -294,5 +294,11 @@ SECTIONS { *(.debug_ranges) } + + /* DWARF 4. */ + .debug_types ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} : + { + *(.debug_types) *(.gnu.linkonce.wt.*) + } } EOF diff --git a/ld/scripttempl/pep.sc b/ld/scripttempl/pep.sc index 3682766fe78..8fa5f052d6b 100644 --- a/ld/scripttempl/pep.sc +++ b/ld/scripttempl/pep.sc @@ -300,5 +300,11 @@ SECTIONS { *(.debug_ranges) } + + /* DWARF 4. */ + .debug_types ${RELOCATING+BLOCK(__section_alignment__)} ${RELOCATING+(NOLOAD)} : + { + *(.debug_types) *(.gnu.linkonce.wt.*) + } } EOF -- 2.30.2