From 2b914c2b41098b857b931b753aabfdef525f10da Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Tue, 27 Sep 2011 16:03:49 +0000 Subject: [PATCH] * coffcode.h (sec_to_styp_flags): Handle SEC_LINK_DUPLICATES_SAME_CONTENTS, and SEC_LINK_DUPLICATES_SAME_SIZE. --- bfd/ChangeLog | 6 ++++++ bfd/coffcode.h | 10 ++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 684a74d431..d34193192a 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2011-09-27 Kai Tietz + + * coffcode.h (sec_to_styp_flags): Handle + SEC_LINK_DUPLICATES_SAME_CONTENTS, and + SEC_LINK_DUPLICATES_SAME_SIZE. + 2011-09-22 Tristan Gingold * configure.in: Bump version to 2.22.51 diff --git a/bfd/coffcode.h b/bfd/coffcode.h index 6f9685b4ee..62eeb20d76 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -670,7 +670,9 @@ sec_to_styp_flags (const char *sec_name, flagword sec_flags) /* FIXME: There is no gas syntax to specify the debug section flag. */ if (is_dbg) { - sec_flags &= (SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD); + sec_flags &= (SEC_LINK_ONCE | SEC_LINK_DUPLICATES_DISCARD + | SEC_LINK_DUPLICATES_SAME_CONTENTS + | SEC_LINK_DUPLICATES_SAME_SIZE); sec_flags |= SEC_DEBUGGING | SEC_READONLY; } @@ -698,7 +700,11 @@ sec_to_styp_flags (const char *sec_name, flagword sec_flags) /* skip SORT */ if (sec_flags & SEC_LINK_ONCE) styp_flags |= IMAGE_SCN_LNK_COMDAT; - /* skip LINK_DUPLICATES */ + if ((sec_flags + & (SEC_LINK_DUPLICATES_DISCARD | SEC_LINK_DUPLICATES_SAME_CONTENTS + | SEC_LINK_DUPLICATES_SAME_SIZE)) != 0) + styp_flags |= IMAGE_SCN_LNK_COMDAT; + /* skip LINKER_CREATED */ if ((sec_flags & SEC_COFF_NOREAD) == 0) -- 2.34.1