* options.cc (General_options::parse_dynamic_list): New function.
authorCraig Silverstein <csilvers@google.com>
Thu, 6 Nov 2008 07:23:31 +0000 (07:23 +0000)
committerCraig Silverstein <csilvers@google.com>
Thu, 6 Nov 2008 07:23:31 +0000 (07:23 +0000)
commitc82fbeee5970971ab2988ab7fda3439719df09ab
treee3d01b8663155d445595c3a0a9e410e4d82bc3d2
parente0bb29a5842200725829ebdb21dfa1f3c692b223
* options.cc (General_options::parse_dynamic_list): New function.
* options.h (General_options): New flags dynamic_list,
dynamic_list_data, dynamic_list_cpp_new, and
dynamic_list_cpp_typeinfo.  New variable dynamic_list_.
(General_options::in_dynamic_list): New function.
* script.cc (Lex::Mode): New enum DYNAMIC_LIST.
(Lex::can_start_name): Add support for DYNAMIC_LIST mode.
(Lex::can_continue_name): Likewise.
(yylex): Likewise.
(read_script_file): New parameter script_options.
(read_dynamic_list): New function.
(Script_options::define_dynamic_list): New function.
(dynamic_list_keyword_parsecodes): New variable.
(dynamic_list_keywords): New variable.
* script.h (Script_options::define_dynamic_list): New function
prototype.
(read_dynamic_list): New function prototype.
* symtab.cc (strprefix): New macro.
(Symbol::should_add_dynsym_entry): Support dynamic_list,
dynamic_list_data, dynamic_list_cpp_new, and
dynamic_list_cpp_typeinfo.
* yyscript.y (PARSING_DYNAMIC_LIST): New token.
(dynamic_list_expr): New rule.
(dynamic_list_nodes): Likewise.
(dynamic_list_node): Likewise.
* testsuite/Makefile.am (dynamic_list): New test.
* testsuite/Makefile.in: Regenerated.
* testsuite/dynamic_list.t: New file.
* testsuite/dynamic_list.sh: New file.
gold/ChangeLog
gold/options.cc
gold/options.h
gold/script.cc
gold/script.h
gold/symtab.cc
gold/testsuite/Makefile.am
gold/testsuite/Makefile.in
gold/testsuite/dynamic_list.sh [new file with mode: 0755]
gold/testsuite/dynamic_list.t [new file with mode: 0644]
gold/yyscript.y