aboutsummaryrefslogtreecommitdiff
path: root/gold/object.cc
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2007-12-14 19:00:21 +0000
committerIan Lance Taylor <iant@google.com>2007-12-14 19:00:21 +0000
commit17a1d0a9b26ce8f4f71073c41483baa0c10ed83b (patch)
tree3cdd95751145e2cf1cbcaedee2df8790c86b935d /gold/object.cc
parent7004837e8d2e02ee35c50d236681e9c30a283619 (diff)
downloadgdb-17a1d0a9b26ce8f4f71073c41483baa0c10ed83b.zip
gdb-17a1d0a9b26ce8f4f71073c41483baa0c10ed83b.tar.gz
gdb-17a1d0a9b26ce8f4f71073c41483baa0c10ed83b.tar.bz2
Rewrite workqueue. This version eliminates the master thread, and
reduces the amount of locking required to find a new thread to run.
Diffstat (limited to 'gold/object.cc')
-rw-r--r--gold/object.cc13
1 files changed, 7 insertions, 6 deletions
diff --git a/gold/object.cc b/gold/object.cc
index 3bf274a..9d62881 100644
--- a/gold/object.cc
+++ b/gold/object.cc
@@ -726,8 +726,8 @@ Sized_relobj<size, big_endian>::do_add_symbols(Symbol_table* symtab,
}
// Finalize the local symbols. Here we add their names to *POOL and
-// *DYNPOOL, and we add their values to THIS->LOCAL_VALUES_.
-// This function is always called from the main thread. The actual
+// *DYNPOOL, and we add their values to THIS->LOCAL_VALUES_. This
+// function is always called from a singleton thread. The actual
// output of the local symbols will occur in a separate task.
template<int size, bool big_endian>
@@ -831,7 +831,7 @@ Sized_relobj<size, big_endian>::do_count_local_symbols(Stringpool* pool,
// Finalize the local symbols. Here we add their values to
// THIS->LOCAL_VALUES_ and set their output symbol table indexes.
-// This function is always called from the main thread. The actual
+// This function is always called from a singleton thread. The actual
// output of the local symbols will occur in a separate task.
template<int size, bool big_endian>
@@ -987,9 +987,10 @@ Sized_relobj<size, big_endian>::local_value(unsigned int shndx,
template<int size, bool big_endian>
void
-Sized_relobj<size, big_endian>::write_local_symbols(Output_file* of,
- const Stringpool* sympool,
- const Stringpool* dynpool)
+Sized_relobj<size, big_endian>::write_local_symbols(
+ Output_file* of,
+ const Stringpool* sympool,
+ const Stringpool* dynpool)
{
if (parameters->strip_all() && this->output_local_dynsym_count_ == 0)
return;