This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Ping. include/plugin-api.h (LDPR_LINKER_REDEFINED): New enum value. gold/ * expression.cc (Symbol_expression::is_symbol_in_expression): New method. (Unary_expression::is_symbol_in_expression): New method. (Binary_expression::is_symbol_in_expression): New method. (Trinary_expression::is_symbol_in_expression): New method. * plugin.cc (is_referenced_from_outside): Check if the symbol is used in a defsym expression. (get_symbol_resolution_info): Fix symbol resolution if defined or used in defsyms. * script.cc (Script_options::is_defsym_def): New method. (Script_options::is_defsym_use): New method. * script.h (Expression::is_symbol_in_expression): New method. (Symbol_assignment::is_defsym): New method. (Symbol_assignment::value): New method. (Script_options::is_defsym_def): New method. (Script_options::is_defsym_use): New method. * testsuite/Makefile.am (plugin_test_defsym): New test. * testsuite/Makefile.in: Regenerate. * testsuite/plugin_test.c: Check for new symbol resolution. * testsuite/plugin_test_defsym.sh: New script. * testsuite/plugin_test_defsym.c: New test source. On Fri, Feb 2, 2018 at 4:33 PM, Sriraman Tallam <tmsriram@google.com> wrote: > Hello, > > I have a patch that fixes symbol resolutions when defined or used > in defsym expressions. Please take a look. > > include/plugin-api.h (LDPR_LINKER_REDEFINED): New enum value. > > gold/ > * expression.cc (Symbol_expression::is_symbol_in_expression): > New method. > (Unary_expression::is_symbol_in_expression): New method. > (Binary_expression::is_symbol_in_expression): New method. > (Trinary_expression::is_symbol_in_expression): New method. > * plugin.cc (is_referenced_from_outside): Check if the symbol is > used in a defsym expression. > (get_symbol_resolution_info): Fix symbol resolution if defined or > used in defsyms. > * script.cc (Script_options::is_defsym_def): New method. > (Script_options::is_defsym_use): New method. > * script.h (Expression::is_symbol_in_expression): New method. > (Symbol_assignment::is_defsym): New method. > (Symbol_assignment::value): New method. > (Script_options::is_defsym_def): New method. > (Script_options::is_defsym_use): New method. > * testsuite/Makefile.am (plugin_test_defsym): New test. > * testsuite/Makefile.in: Regenerate. > * testsuite/plugin_test.c: Check for new symbol resolution. > * testsuite/plugin_test_defsym.sh: New script. > * testsuite/plugin_test_defsym.c: New test source. > > > Thanks > Sri
Attachment:
plugin_defsym_patch.txt
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |