Sync include/plugin-api.h with binutils.

2016-03-03  Than McIntosh <thanm@google.com>

	* plugin-api.h: Add new hooks to the plugin transfer vector to
	to support querying section alignment and section size.
	(ld_plugin_get_input_section_alignment): New hook.
	(ld_plugin_get_input_section_size): New hook.
	(ld_plugin_tag): Add LDPT_GET_INPUT_SECTION_ALIGNMENT
	and LDPT_GET_INPUT_SECTION_SIZE.
	(ld_plugin_tv): Add tv_get_input_section_alignment and
	tv_get_input_section_size.

2016-03-03  Evgenii Stepanov  <eugenis@google.com>

	* plugin-api.h (enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V3.

From-SVN: r233986
This commit is contained in:
Cary Coutant 2016-03-04 14:15:55 -08:00
parent 411d61c4af
commit e94da7c6f1
2 changed files with 42 additions and 2 deletions

View File

@ -1,3 +1,18 @@
2016-03-03 Than McIntosh <thanm@google.com>
* plugin-api.h: Add new hooks to the plugin transfer vector to
to support querying section alignment and section size.
(ld_plugin_get_input_section_alignment): New hook.
(ld_plugin_get_input_section_size): New hook.
(ld_plugin_tag): Add LDPT_GET_INPUT_SECTION_ALIGNMENT
and LDPT_GET_INPUT_SECTION_SIZE.
(ld_plugin_tv): Add tv_get_input_section_alignment and
tv_get_input_section_size.
2016-03-03 Evgenii Stepanov <eugenis@google.com>
* plugin-api.h (enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V3.
2016-01-19 Martin Jambor <mjambor@suse.cz>
* gomp-constants.h (GOMP_DEVICE_HSA): New macro.

View File

@ -1,6 +1,6 @@
/* plugin-api.h -- External linker plugin API. */
/* Copyright (C) 2009-2015 Free Software Foundation, Inc.
/* Copyright (C) 2009-2016 Free Software Foundation, Inc.
Written by Cary Coutant <ccoutant@google.com>.
This file is part of binutils.
@ -345,6 +345,26 @@ enum ld_plugin_status
const struct ld_plugin_section * section_list,
unsigned int num_sections);
/* The linker's interface for retrieving the section alignment requirement
of a specific section in an object. This interface should only be invoked in the
claim_file handler. This function sets *ADDRALIGN to the ELF sh_addralign
value of the input section. */
typedef
enum ld_plugin_status
(*ld_plugin_get_input_section_alignment) (const struct ld_plugin_section section,
unsigned int *addralign);
/* The linker's interface for retrieving the section size of a specific section
in an object. This interface should only be invoked in the claim_file handler.
This function sets *SECSIZE to the ELF sh_size
value of the input section. */
typedef
enum ld_plugin_status
(*ld_plugin_get_input_section_size) (const struct ld_plugin_section section,
uint64_t *secsize);
enum ld_plugin_level
{
LDPL_INFO,
@ -384,7 +404,10 @@ enum ld_plugin_tag
LDPT_ALLOW_SECTION_ORDERING = 24,
LDPT_GET_SYMBOLS_V2 = 25,
LDPT_ALLOW_UNIQUE_SEGMENT_FOR_SECTIONS = 26,
LDPT_UNIQUE_SEGMENT_FOR_SECTIONS = 27
LDPT_UNIQUE_SEGMENT_FOR_SECTIONS = 27,
LDPT_GET_SYMBOLS_V3 = 28,
LDPT_GET_INPUT_SECTION_ALIGNMENT = 29,
LDPT_GET_INPUT_SECTION_SIZE = 30
};
/* The plugin transfer vector. */
@ -416,6 +439,8 @@ struct ld_plugin_tv
ld_plugin_allow_section_ordering tv_allow_section_ordering;
ld_plugin_allow_unique_segment_for_sections tv_allow_unique_segment_for_sections;
ld_plugin_unique_segment_for_sections tv_unique_segment_for_sections;
ld_plugin_get_input_section_alignment tv_get_input_section_alignment;
ld_plugin_get_input_section_size tv_get_input_section_size;
} tv_u;
};