From d6e5f9500061c1be7be5395af4d59963c2a26b0a Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 23 Sep 1993 15:14:12 +0000 Subject: [PATCH] * section.c (SEC_DEBUGGING): New section flag. * elfcode.h (bfd_section_from_shdr): If section is SHT_PROGBITS, and the name starts with .debug, .line or .stab, set SEC_DEBUGGING. * elf32-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added SEC_DEBUGGING to section_flags. * elf64-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added SEC_DEBUGGING and SEC_CODE to section_flags. * bfd-in2.h: Updated. --- bfd/ChangeLog | 12 ++++++++++++ bfd/elf32-target.h | 4 ++-- bfd/elf64-target.h | 4 ++-- bfd/elfcode.h | 7 +++++++ 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index fbcdf5b8410..1f25aa14bf0 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,15 @@ +Thu Sep 23 10:48:27 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) + + * section.c (SEC_DEBUGGING): New section flag. + * elfcode.h (bfd_section_from_shdr): If section is SHT_PROGBITS, + and the name starts with .debug, .line or .stab, set + SEC_DEBUGGING. + * elf32-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added + SEC_DEBUGGING to section_flags. + * elf64-target.h (TARGET_BIG_SYM, TARGET_LITTLE_SYM): Added + SEC_DEBUGGING and SEC_CODE to section_flags. + * bfd-in2.h: Updated. + Wed Sep 22 16:34:14 1993 Ian Lance Taylor (ian@tweedledumb.cygnus.com) * bfd.c (tdata): Add lynx_core_data. diff --git a/bfd/elf32-target.h b/bfd/elf32-target.h index 47b52491ad6..1c1662b742d 100644 --- a/bfd/elf32-target.h +++ b/bfd/elf32-target.h @@ -120,7 +120,7 @@ bfd_target TARGET_BIG_SYM = /* section_flags: mask of all section flags */ (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY | - SEC_CODE | SEC_DATA), + SEC_CODE | SEC_DATA | SEC_DEBUGGING), /* leading_symbol_char: is the first char of a user symbol predictable, and if so what is it */ @@ -202,7 +202,7 @@ bfd_target TARGET_LITTLE_SYM = /* section_flags: mask of all section flags */ (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY | - SEC_CODE | SEC_DATA), + SEC_CODE | SEC_DATA | SEC_DEBUGGING), /* leading_symbol_char: is the first char of a user symbol predictable, and if so what is it */ diff --git a/bfd/elf64-target.h b/bfd/elf64-target.h index fd5f5e11809..d7ee425aae2 100644 --- a/bfd/elf64-target.h +++ b/bfd/elf64-target.h @@ -98,7 +98,7 @@ bfd_target TARGET_BIG_SYM = /* section_flags: mask of all section flags */ (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY | - SEC_CODE | SEC_DATA), + SEC_CODE | SEC_DATA | SEC_DEBUGGING), /* leading_symbol_char: is the first char of a user symbol predictable, and if so what is it */ @@ -180,7 +180,7 @@ bfd_target TARGET_LITTLE_SYM = /* section_flags: mask of all section flags */ (SEC_HAS_CONTENTS | SEC_ALLOC | SEC_LOAD | SEC_RELOC | SEC_READONLY | - SEC_DATA), + SEC_CODE | SEC_DATA | SEC_DEBUGGING), /* leading_symbol_char: is the first char of a user symbol predictable, and if so what is it */ diff --git a/bfd/elfcode.h b/bfd/elfcode.h index 1e234e2daa5..4e86628f929 100644 --- a/bfd/elfcode.h +++ b/bfd/elfcode.h @@ -485,6 +485,13 @@ DEFUN (bfd_section_from_shdr, (abfd, shindex), else if (newsect->flags & SEC_ALLOC) newsect->flags |= SEC_DATA; + /* The debugging sections appear to recognized only by + name. */ + if (strncmp (name, ".debug", sizeof ".debug" - 1) == 0 + || strncmp (name, ".line", sizeof ".line" - 1) == 0 + || strncmp (name, ".stab", sizeof ".stab" - 1) == 0) + newsect->flags |= SEC_DEBUGGING; + hdr->rawdata = (void *) newsect; } else -- 2.30.2