diff options
author | Ian Lance Taylor <iant@google.com> | 2006-11-06 22:46:08 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2006-11-06 22:46:08 +0000 |
commit | f6ce93d6e999d1a0c450c5e71c5b3468e6217f0a (patch) | |
tree | 945ecd482d35d1c2a590645ef3d5f41fb83dcc4b /gold/readsyms.cc | |
parent | 8d9455b422d98d97f090923445aa2680e6882f20 (diff) | |
download | gdb-f6ce93d6e999d1a0c450c5e71c5b3468e6217f0a.zip gdb-f6ce93d6e999d1a0c450c5e71c5b3468e6217f0a.tar.gz gdb-f6ce93d6e999d1a0c450c5e71c5b3468e6217f0a.tar.bz2 |
Split Object into Dynobj and Relobj, incorporate elfcpp swapping changes.
Diffstat (limited to 'gold/readsyms.cc')
-rw-r--r-- | gold/readsyms.cc | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/gold/readsyms.cc b/gold/readsyms.cc index 9ff7ab7..c120fcb 100644 --- a/gold/readsyms.cc +++ b/gold/readsyms.cc @@ -7,6 +7,7 @@ #include "elfcpp.h" #include "options.h" #include "dirsearch.h" +#include "symtab.h" #include "object.h" #include "archive.h" #include "readsyms.h" @@ -91,7 +92,8 @@ Read_symbols::run(Workqueue* workqueue) Read_symbols_data* sd = new Read_symbols_data; obj->read_symbols(sd); - workqueue->queue_front(new Add_symbols(this->input_objects_, + workqueue->queue_front(new Add_symbols(this->options_, + this->input_objects_, this->symtab_, this->layout_, obj, sd, this->this_blocker_, @@ -111,7 +113,8 @@ Read_symbols::run(Workqueue* workqueue) // This is an archive. Archive* arch = new Archive(this->input_.file().name(), input_file); arch->setup(); - workqueue->queue(new Add_archive_symbols(this->symtab_, + workqueue->queue(new Add_archive_symbols(this->options_, + this->symtab_, this->layout_, this->input_objects_, arch, @@ -159,7 +162,8 @@ Read_symbols::do_group(Workqueue* workqueue) } const int saw_undefined = this->symtab_->saw_undefined(); - workqueue->queue(new Finish_group(this->input_objects_, + workqueue->queue(new Finish_group(this->options_, + this->input_objects_, this->symtab_, this->layout_, input_group, @@ -217,7 +221,8 @@ void Add_symbols::run(Workqueue*) { this->input_objects_->add_object(this->object_); - this->object_->layout(this->layout_, this->sd_); + this->object_->layout(this->options_, this->symtab_, this->layout_, + this->sd_); this->object_->add_symbols(this->symtab_, this->sd_); delete this->sd_; this->sd_ = NULL; @@ -265,7 +270,7 @@ Finish_group::run(Workqueue*) { Task_lock_obj<Archive> tl(**p); - (*p)->add_symbols(this->symtab_, this->layout_, + (*p)->add_symbols(this->options_, this->symtab_, this->layout_, this->input_objects_); } } |