* gold.cc (queue_middle_gc_tasks): Use a separate blocker for each
authorIan Lance Taylor <ian@airs.com>
Fri, 12 Feb 2010 04:33:53 +0000 (04:33 +0000)
committerIan Lance Taylor <ian@airs.com>
Fri, 12 Feb 2010 04:33:53 +0000 (04:33 +0000)
commit93ceb76464b573cae4b2f94d3dd36665b3174628
treea1fac640449c18860dd884b8c05d6c4b22a7e9bd
parent37ec92403b4d32b349d239339a1b829cef29f2a2
* 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.
gold/ChangeLog
gold/common.cc
gold/common.h
gold/gold.cc
gold/reloc.cc
gold/reloc.h
This page took 0.028579 seconds and 4 git commands to generate.