This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[Committed][AArch64] Refactor section_group[] representation.
- From: Marcus Shawcroft <marcus dot shawcroft at arm dot com>
- To: "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Tue, 24 Mar 2015 14:08:17 +0000
- Subject: [Committed][AArch64] Refactor section_group[] representation.
- Authentication-results: sourceware.org; auth=none
Change the behaviour of section_group[] such that .stub_sec points to
the stub section attached to the indexed section rather than the stub
section attached to the link_section pointed to be the index section.
This provides a mechanism to get to the stub section following any
input section. While still allowing the section grouping mechanism to
find the section group stub section associated with an input section
by first following the link_sec pointer.
Committed.
/Marcus
2015-03-24 Marcus Shawcroft <marcus.shawcroft@arm.com>
* elfnn-aarch64.c (_bfd_aarch64_create_or_find_stub_sec): Adjust
update of section_group[].stub_sec.
diff --git a/bfd/elfnn-aarch64.c b/bfd/elfnn-aarch64.c
index 14b4057..d5c1fd5 100644
--- a/bfd/elfnn-aarch64.c
+++ b/bfd/elfnn-aarch64.c
@@ -2350,21 +2350,12 @@ _bfd_aarch64_create_or_find_stub_sec (asection *section,
link_sec = htab->stub_group[section->id].link_sec;
BFD_ASSERT (link_sec != NULL);
- stub_sec = htab->stub_group[section->id].stub_sec;
-
+ stub_sec = htab->stub_group[link_sec->id].stub_sec;
if (stub_sec == NULL)
{
- stub_sec = htab->stub_group[link_sec->id].stub_sec;
- if (stub_sec == NULL)
- {
- stub_sec = _bfd_aarch64_create_stub_section (link_sec, htab);
- if (stub_sec == NULL)
- return NULL;
- htab->stub_group[link_sec->id].stub_sec = stub_sec;
- }
- htab->stub_group[section->id].stub_sec = stub_sec;
+ stub_sec = _bfd_aarch64_create_stub_section (link_sec, htab);
+ htab->stub_group[link_sec->id].stub_sec = stub_sec;
}
-
return stub_sec;
}
--
1.9.1