2012-03-14 Doug Kwan <dougkwan@google.com>
* gold/arm.cc (Target_arm::Scan::global): Generate R_ARM_GLOB_DAT dynamic relocations for protected symbols in shared objects.
This commit is contained in:
parent
9eca3be1dd
commit
fa40b62ad4
2 changed files with 8 additions and 1 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2012-03-14 Doug Kwan <dougkwan@google.com>
|
||||||
|
|
||||||
|
* gold/arm.cc (Target_arm::Scan::global): Generate R_ARM_GLOB_DAT
|
||||||
|
dynamic relocations for protected symbols in shared objects.
|
||||||
|
|
||||||
2012-03-13 Ian Lance Taylor <iant@google.com>
|
2012-03-13 Ian Lance Taylor <iant@google.com>
|
||||||
|
|
||||||
* resolve.cc (Symbol_table::resolve): When merging common symbols,
|
* resolve.cc (Symbol_table::resolve): When merging common symbols,
|
||||||
|
|
|
@ -8314,7 +8314,9 @@ Target_arm<big_endian>::Scan::global(Symbol_table* symtab,
|
||||||
Reloc_section* rel_dyn = target->rel_dyn_section(layout);
|
Reloc_section* rel_dyn = target->rel_dyn_section(layout);
|
||||||
if (gsym->is_from_dynobj()
|
if (gsym->is_from_dynobj()
|
||||||
|| gsym->is_undefined()
|
|| gsym->is_undefined()
|
||||||
|| gsym->is_preemptible())
|
|| gsym->is_preemptible()
|
||||||
|
|| (gsym->visibility() == elfcpp::STV_PROTECTED
|
||||||
|
&& parameters->options().shared()))
|
||||||
got->add_global_with_rel(gsym, GOT_TYPE_STANDARD,
|
got->add_global_with_rel(gsym, GOT_TYPE_STANDARD,
|
||||||
rel_dyn, elfcpp::R_ARM_GLOB_DAT);
|
rel_dyn, elfcpp::R_ARM_GLOB_DAT);
|
||||||
else
|
else
|
||||||
|
|
Loading…
Reference in a new issue