include/ChangeLog
gcc PR lto/47247 * plugin-api.h (enum ld_plugin_symbol_resolution): Add LDPR_PREVAILING_DEF_IRONLY_EXP. (enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V2. gold/ChangeLog gcc PR lto/47247 * plugin.cc (get_symbols_v2): New function. (Plugin::load): Add LDPT_GET_SYMBOLS_V2. (is_referenced_from_outside): New function. (Pluginobj::get_symbol_resolution_info): Add version parameter, return LDPR_PREVAILING_DEF_IRONLY_EXP when using new version. (get_symbols): Pass version parameter. (get_symbols_v2): New function. * plugin.h (Pluginobj::get_symbol_resolution_info): Add version parameter. * testsuite/plugin_test.c (get_symbols_v2): New static variable. (onload): Add LDPT_GET_SYMBOLS_V2. (all_symbols_read_hook): Use get_symbols_v2; check for LDPR_PREVAILING_DEF_IRONLY_EXP. * testsuite/plugin_test_3.sh: Update expected results.
This commit is contained in:
		| @@ -1,3 +1,10 @@ | |||||||
|  | 2011-09-26  Cary Coutant  <ccoutant@google.com> | ||||||
|  |  | ||||||
|  | 	gcc PR lto/47247 | ||||||
|  | 	* plugin-api.h (enum ld_plugin_symbol_resolution): Add | ||||||
|  | 	LDPR_PREVAILING_DEF_IRONLY_EXP. | ||||||
|  | 	(enum ld_plugin_tag): Add LDPT_GET_SYMBOLS_V2. | ||||||
|  |  | ||||||
| 2011-09-23  Cary Coutant  <ccoutant@google.com> | 2011-09-23  Cary Coutant  <ccoutant@google.com> | ||||||
|  |  | ||||||
| 	PR 40831 | 	PR 40831 | ||||||
|   | |||||||
| @@ -155,7 +155,13 @@ enum ld_plugin_symbol_resolution | |||||||
|   LDPR_RESOLVED_EXEC, |   LDPR_RESOLVED_EXEC, | ||||||
|  |  | ||||||
|   /* This symbol was resolved by a definition in a shared object.  */ |   /* This symbol was resolved by a definition in a shared object.  */ | ||||||
|   LDPR_RESOLVED_DYN |   LDPR_RESOLVED_DYN, | ||||||
|  |  | ||||||
|  |   /* This is the prevailing definition of the symbol, with no | ||||||
|  |      references from regular objects.  It is only referenced from IR | ||||||
|  |      code, but the symbol is exported and may be referenced from | ||||||
|  |      a dynamic object (not seen at link time).  */ | ||||||
|  |   LDPR_PREVAILING_DEF_IRONLY_EXP | ||||||
| }; | }; | ||||||
|  |  | ||||||
| /* The plugin library's "claim file" handler.  */ | /* The plugin library's "claim file" handler.  */ | ||||||
| @@ -347,7 +353,8 @@ enum ld_plugin_tag | |||||||
|   LDPT_GET_INPUT_SECTION_NAME, |   LDPT_GET_INPUT_SECTION_NAME, | ||||||
|   LDPT_GET_INPUT_SECTION_CONTENTS, |   LDPT_GET_INPUT_SECTION_CONTENTS, | ||||||
|   LDPT_UPDATE_SECTION_ORDER, |   LDPT_UPDATE_SECTION_ORDER, | ||||||
|   LDPT_ALLOW_SECTION_ORDERING |   LDPT_ALLOW_SECTION_ORDERING, | ||||||
|  |   LDPT_GET_SYMBOLS_V2 | ||||||
| }; | }; | ||||||
|  |  | ||||||
| /* The plugin transfer vector.  */ | /* The plugin transfer vector.  */ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user