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] |
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] |