* target.h (Target::gc_mark_symbol, do_gc_mark_symbol): New functions.
authorAlan Modra <amodra@gmail.com>
Sun, 9 Sep 2012 03:43:51 +0000 (03:43 +0000)
committerAlan Modra <amodra@gmail.com>
Sun, 9 Sep 2012 03:43:51 +0000 (03:43 +0000)
commite81fea4d172699b2e986bc541f812cac0995da6b
treef53406e2ad174c23989c3052f9f6367ff7967099
parentb7099d964f9a5736272cadb6d19083d643005aa1
* target.h (Target::gc_mark_symbol, do_gc_mark_symbol): New functions.
(Sized_target::gc_add_reference, do_gc_add_reference): New functions.
* gc.h (gc_process_relocs): Call target gc_add_reference.
* gold.cc (queue_middle_tasks): Use gc_mark_symbol on start sym.
* symtab.cc (Symbol_table::gc_mark_undef_symbols): Use gc_mark_symbol.
(Symbol_table::gc_mark_symbol): Call target gc_mark_symbol. Remove
unnecessary cast.
* powerpc.cc (Powerpc_relobj::get_opd_ent): Rearrange parameters
to cater for when we don't need code offset.  Update use.
(Powerpc_relobj::access_from_map_, opd_valid_): New vars.
(Powerpc_relobj::access_from_map, add_reference, opd_valid,
set_opd_valid): New functions.
(Target_powerpc::do_gc_add_reference): New function.
(Target_powerpc::gc_process_relocs): Call gc()->add_reference on
stashed refs.
(Target_powerpc::do_gc_mark_symbol): New function.
gold/ChangeLog
gold/gc.h
gold/gold.cc
gold/powerpc.cc
gold/symtab.cc
gold/target.h