From fa40b62ad433db232f60443bbe9d222acab81cad Mon Sep 17 00:00:00 2001 From: Doug Kwan Date: Wed, 14 Mar 2012 23:07:07 +0000 Subject: 2012-03-14 Doug Kwan * gold/arm.cc (Target_arm::Scan::global): Generate R_ARM_GLOB_DAT dynamic relocations for protected symbols in shared objects. --- gold/arm.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'gold/arm.cc') diff --git a/gold/arm.cc b/gold/arm.cc index bc704cc..04004a6 100644 --- a/gold/arm.cc +++ b/gold/arm.cc @@ -8314,7 +8314,9 @@ Target_arm::Scan::global(Symbol_table* symtab, Reloc_section* rel_dyn = target->rel_dyn_section(layout); if (gsym->is_from_dynobj() || 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, rel_dyn, elfcpp::R_ARM_GLOB_DAT); else -- cgit v1.1