This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH 0/2] PR ld/17878: Merge linker plugin handling into BFD plugin support
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: binutils at sourceware dot org
- Date: Mon, 9 Feb 2015 05:00:58 -0800
- Subject: [PATCH 0/2] PR ld/17878: Merge linker plugin handling into BFD plugin support
- Authentication-results: sourceware.org; auth=none
Hi,
This series merge linker plugin handling into BFD plugin support.
Linker plugin_maybe_claim is the interface of linker plugin support.
This patch extracts linker plugin_maybe_claim into plugin_object_p and
makes it available to BFD via a new function:
void register_ld_plugin_object_p (const bfd_target *(*) (bfd *));
bfd_plugin_object_p calls plugin_object_p first registered by linker. It
adds an enum bfd_plugin_format field and a pointer to plugin dummy BFD so
that plugin_object_p stores plugin dummy BFD to allow plugin_maybe_claim
to retrieve it later.
Tests are added to verify if nm, ar and ld can properly handle LTO IR
stored in plain text file.
H.J. Lu (2):
Merge linker plugin handling into BFD plugin support
Add tests for non-object IR file
bfd/bfd-in2.h | 14 +
bfd/bfd.c | 14 +
bfd/plugin.c | 62 +++-
bfd/plugin.h | 3 +
ld/Makefile.am | 8 +-
ld/Makefile.in | 49 ++-
ld/plugin.c | 101 ++++--
ld/testplug2.c | 693 +++++++++++++++++++++++++++++++++++++
ld/testplug3.c | 674 ++++++++++++++++++++++++++++++++++++
ld/testsuite/ld-plugin/func.c | 3 +
ld/testsuite/ld-plugin/plugin-13.d | 27 ++
ld/testsuite/ld-plugin/plugin-14.d | 33 ++
ld/testsuite/ld-plugin/plugin-15.d | 34 ++
ld/testsuite/ld-plugin/plugin-16.d | 38 ++
ld/testsuite/ld-plugin/plugin-17.d | 37 ++
ld/testsuite/ld-plugin/plugin-18.d | 38 ++
ld/testsuite/ld-plugin/plugin-19.d | 42 +++
ld/testsuite/ld-plugin/plugin-20.d | 7 +
ld/testsuite/ld-plugin/plugin-21.d | 7 +
ld/testsuite/ld-plugin/plugin-22.d | 7 +
ld/testsuite/ld-plugin/plugin-23.d | 7 +
ld/testsuite/ld-plugin/plugin-24.d | 5 +
ld/testsuite/ld-plugin/plugin-25.d | 5 +
ld/testsuite/ld-plugin/plugin-26.d | 24 ++
ld/testsuite/ld-plugin/plugin.exp | 138 ++++++++
25 files changed, 2028 insertions(+), 42 deletions(-)
create mode 100644 ld/testplug2.c
create mode 100644 ld/testplug3.c
create mode 100644 ld/testsuite/ld-plugin/plugin-13.d
create mode 100644 ld/testsuite/ld-plugin/plugin-14.d
create mode 100644 ld/testsuite/ld-plugin/plugin-15.d
create mode 100644 ld/testsuite/ld-plugin/plugin-16.d
create mode 100644 ld/testsuite/ld-plugin/plugin-17.d
create mode 100644 ld/testsuite/ld-plugin/plugin-18.d
create mode 100644 ld/testsuite/ld-plugin/plugin-19.d
create mode 100644 ld/testsuite/ld-plugin/plugin-20.d
create mode 100644 ld/testsuite/ld-plugin/plugin-21.d
create mode 100644 ld/testsuite/ld-plugin/plugin-22.d
create mode 100644 ld/testsuite/ld-plugin/plugin-23.d
create mode 100644 ld/testsuite/ld-plugin/plugin-24.d
create mode 100644 ld/testsuite/ld-plugin/plugin-25.d
create mode 100644 ld/testsuite/ld-plugin/plugin-26.d
--
2.1.0