diff options
author | Ian Lance Taylor <ian@airs.com> | 2010-02-12 04:33:53 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2010-02-12 04:33:53 +0000 |
commit | 93ceb76464b573cae4b2f94d3dd36665b3174628 (patch) | |
tree | a1fac640449c18860dd884b8c05d6c4b22a7e9bd /gold/ChangeLog | |
parent | 37ec92403b4d32b349d239339a1b829cef29f2a2 (diff) | |
download | gdb-93ceb76464b573cae4b2f94d3dd36665b3174628.zip gdb-93ceb76464b573cae4b2f94d3dd36665b3174628.tar.gz gdb-93ceb76464b573cae4b2f94d3dd36665b3174628.tar.bz2 |
* gold.cc (queue_middle_gc_tasks): Use a separate blocker for each
Read_relocs task.
(queue_middle_tasks): Likewise, and also for Scan_relocs. Run
Allocate_commons_task first.
* reloc.cc (Read_relocs::run): Pass next_blocker_ down to next
task, rather than symtab_lock_.
(Gc_process_relocs::~Gc_process_relocs): New function.
(Gc_process_relocs::is_runnable): Check this_blocker_.
(Gc_process_relocs::locks): Use next_blocker_ rather than
blocker_.
(Scan_relocs::~Scan_relocs): New function.
(Scan_relocs::is_runnable): Check this_blocker_ rather than
symtab_lock_.
(Scan_relocs::locks): Drop symtab_lock_ and blocker_. Add
next_blocker_.
* reloc.h (class Read_relocs): Drop symtab_lock_ and blocker_
fields. Add this_blocker_ and next_blocker_ fields. Adjust
constructor accordingly.
(class Gc_process_relocs): Likewise.
(class Scan_relocs): Likewise.
* common.h (class Allocate_commons_task): Remove symtab_lock_
field, and corresponding constructor parameter.
* common.cc (Allocate_commons_tasK::is_runnable): Remove use of
symtab_lock_.
(Allocate_commons_task::locks): Likewise.
Diffstat (limited to 'gold/ChangeLog')
-rw-r--r-- | gold/ChangeLog | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog index 346806f..03191eb 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,5 +1,33 @@ 2010-02-11 Ian Lance Taylor <iant@google.com> + * gold.cc (queue_middle_gc_tasks): Use a separate blocker for each + Read_relocs task. + (queue_middle_tasks): Likewise, and also for Scan_relocs. Run + Allocate_commons_task first. + * reloc.cc (Read_relocs::run): Pass next_blocker_ down to next + task, rather than symtab_lock_. + (Gc_process_relocs::~Gc_process_relocs): New function. + (Gc_process_relocs::is_runnable): Check this_blocker_. + (Gc_process_relocs::locks): Use next_blocker_ rather than + blocker_. + (Scan_relocs::~Scan_relocs): New function. + (Scan_relocs::is_runnable): Check this_blocker_ rather than + symtab_lock_. + (Scan_relocs::locks): Drop symtab_lock_ and blocker_. Add + next_blocker_. + * reloc.h (class Read_relocs): Drop symtab_lock_ and blocker_ + fields. Add this_blocker_ and next_blocker_ fields. Adjust + constructor accordingly. + (class Gc_process_relocs): Likewise. + (class Scan_relocs): Likewise. + * common.h (class Allocate_commons_task): Remove symtab_lock_ + field, and corresponding constructor parameter. + * common.cc (Allocate_commons_tasK::is_runnable): Remove use of + symtab_lock_. + (Allocate_commons_task::locks): Likewise. + +2010-02-11 Ian Lance Taylor <iant@google.com> + * gold-threads.h (class Once): Define. (class Initialize_lock): Rewrite as child of Once. * gold-threads.cc (class Once_initialize): Define. |