diff options
author | Ian Lance Taylor <iant@google.com> | 2006-08-18 22:29:20 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2006-08-18 22:29:20 +0000 |
commit | 14bfc3f55540e60253cc4aae73261325309f750a (patch) | |
tree | cb74fe438b44c7aa6e02f05e14f13ba1ae0b508a /gold/gold.cc | |
parent | 476308bf9bd077b87791da50a13a74b2698c01c7 (diff) | |
download | gdb-14bfc3f55540e60253cc4aae73261325309f750a.zip gdb-14bfc3f55540e60253cc4aae73261325309f750a.tar.gz gdb-14bfc3f55540e60253cc4aae73261325309f750a.tar.bz2 |
Another snapshot of the current state of the sources. Gets to the
point of symbol resolution and can now issue a multiple definition
error. Also added target selection infrastructure.
Diffstat (limited to 'gold/gold.cc')
-rw-r--r-- | gold/gold.cc | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/gold/gold.cc b/gold/gold.cc index fd349dd..e419f9c 100644 --- a/gold/gold.cc +++ b/gold/gold.cc @@ -11,6 +11,7 @@ #include "workqueue.h" #include "dirsearch.h" #include "readsyms.h" +#include "symtab.h" namespace gold { @@ -65,7 +66,7 @@ void queue_initial_tasks(const General_options& options, const Dirsearch& search_path, const Command_line::Input_argument_list& inputs, - Workqueue* workqueue) + Workqueue* workqueue, Symbol_table* symtab) { if (inputs.empty()) gold_fatal(_("no input files"), false); @@ -81,8 +82,8 @@ queue_initial_tasks(const General_options& options, { Task_token* next_blocker = new Task_token(); next_blocker->add_blocker(); - workqueue->queue(new Read_symbols(options, search_path, *p, this_blocker, - next_blocker)); + workqueue->queue(new Read_symbols(options, symtab, search_path, + *p, this_blocker, next_blocker)); this_blocker = next_blocker; } @@ -113,6 +114,7 @@ main(int argc, char** argv) gold::Workqueue workqueue(command_line.options()); // The symbol table. + Symbol_table symtab; // Get the search path from the -L options. Dirsearch search_path; @@ -120,7 +122,7 @@ main(int argc, char** argv) // Queue up the first set of tasks. queue_initial_tasks(command_line.options(), search_path, - command_line.inputs(), &workqueue); + command_line.inputs(), &workqueue, &symtab); // Run the main task processing loop. workqueue.process(); |