diff options
author | Ian Lance Taylor <iant@google.com> | 2008-01-02 23:48:49 +0000 |
---|---|---|
committer | Ian Lance Taylor <iant@google.com> | 2008-01-02 23:48:49 +0000 |
commit | cb29561284eaa37c5c8967e49a5db0a4064368bf (patch) | |
tree | f4e88f9b60483aeb87c7cbfda3445f3da58edcc0 /gold/layout.cc | |
parent | 2745d86e69ec4659f39cfe0406948578f791ac4f (diff) | |
download | gdb-cb29561284eaa37c5c8967e49a5db0a4064368bf.zip gdb-cb29561284eaa37c5c8967e49a5db0a4064368bf.tar.gz gdb-cb29561284eaa37c5c8967e49a5db0a4064368bf.tar.bz2 |
Reduce the number of system calls. Use readv instead of pread. Do
better handling of cached views.
Diffstat (limited to 'gold/layout.cc')
-rw-r--r-- | gold/layout.cc | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gold/layout.cc b/gold/layout.cc index 3897ec7..eebb26c 100644 --- a/gold/layout.cc +++ b/gold/layout.cc @@ -739,7 +739,7 @@ Layout::finalize(const Input_objects* input_objects, Symbol_table* symtab, off = this->set_section_offsets(off, BEFORE_INPUT_SECTIONS_PASS); // Create the symbol table sections. - this->create_symtab_sections(input_objects, symtab, task, &off); + this->create_symtab_sections(input_objects, symtab, &off); if (!parameters->doing_static_link()) this->assign_local_dynsym_offsets(input_objects); @@ -1212,7 +1212,6 @@ Layout::count_local_symbols(const Task* task, void Layout::create_symtab_sections(const Input_objects* input_objects, Symbol_table* symtab, - const Task* task, off_t* poff) { int symsize; @@ -1286,7 +1285,7 @@ Layout::create_symtab_sections(const Input_objects* input_objects, == this->dynsym_section_->data_size() - locsize); } - off = symtab->finalize(task, local_symcount, off, dynoff, dyn_global_index, + off = symtab->finalize(local_symcount, off, dynoff, dyn_global_index, dyncount, &this->sympool_); if (!parameters->strip_all()) |