From 38d7c0125d0dbdd38f94e3c8756f75e281d92523 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Fri, 29 Mar 1996 21:34:34 +0000 Subject: [PATCH] * objdump.c (dump_section_header): Print the SEC_LINK_ONCE flag and the SEC_LINK_DUPLICATES field. --- binutils/ChangeLog | 5 +++++ binutils/objdump.c | 33 +++++++++++++++++++++++++++++++-- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 1f48218693..ddcdae1b83 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +Fri Mar 29 16:11:33 1996 Ian Lance Taylor + + * objdump.c (dump_section_header): Print the SEC_LINK_ONCE flag + and the SEC_LINK_DUPLICATES field. + Fri Mar 29 11:35:55 1996 J.T. Conklin (jtc@lisa.cygnus.com) * nlmconv.1: Changed to be recognized by catman -w on Solaris. diff --git a/binutils/objdump.c b/binutils/objdump.c index 5fc00c9b5a..782a265990 100644 --- a/binutils/objdump.c +++ b/binutils/objdump.c @@ -199,7 +199,7 @@ dump_section_header (abfd, section, ignored) { char *comma = ""; - printf ("%3d %-14s%08lx ", section->index, + printf ("%3d %-13s %08lx ", section->index, bfd_get_section_name (abfd, section), (unsigned long) bfd_section_size (abfd, section)); printf_vma (bfd_get_section_vma (abfd, section)); @@ -232,7 +232,33 @@ dump_section_header (abfd, section, ignored) PF (SEC_DEBUGGING, "DEBUGGING"); PF (SEC_NEVER_LOAD, "NEVER_LOAD"); PF (SEC_EXCLUDE, "EXCLUDE"); - PF (SEC_SORT_ENTRIES, "SORT ENTRIES"); + PF (SEC_SORT_ENTRIES, "SORT_ENTRIES"); + + if ((section->flags & SEC_LINK_ONCE) != 0) + { + const char *ls; + + switch (section->flags & SEC_LINK_DUPLICATES) + { + default: + abort (); + case SEC_LINK_DUPLICATES_DISCARD: + ls = "LINK_ONCE_DISCARD"; + break; + case SEC_LINK_DUPLICATES_ONE_ONLY: + ls = "LINK_ONCE_ONE_ONLY"; + break; + case SEC_LINK_DUPLICATES_SAME_SIZE: + ls = "LINK_ONCE_SAME_SIZE"; + break; + case SEC_LINK_DUPLICATES_SAME_CONTENTS: + ls = "LINK_ONCE_SAME_CONTENTS"; + break; + } + printf ("%s%s", comma, ls); + comma = ", "; + } + printf ("\n"); #undef PF } @@ -1089,6 +1115,8 @@ disassemble_data (abfd) sym_name = "*unknown*"; } } + else + sym_name = "*unknown*"; printf ("%s", sym_name); @@ -1328,6 +1356,7 @@ dump_bfd_header (abfd) PF (BFD_IS_RELAXABLE, "BFD_IS_RELAXABLE"); printf ("\nstart address 0x"); printf_vma (abfd->start_address); + printf ("\n"); } static void -- 2.34.1