diff options
author | Cary Coutant <ccoutant@gmail.com> | 2016-12-01 12:50:21 -0800 |
---|---|---|
committer | Cary Coutant <ccoutant@gmail.com> | 2016-12-01 12:53:54 -0800 |
commit | 0f1254327820d7b3f67f873aa40e76679f067288 (patch) | |
tree | f821409dfede3350d4f8deefcb1b3ca0b6f2720b /gold/powerpc.cc | |
parent | 84c93cd5f1ff869eb8c04314738eaa2cddb3c29e (diff) | |
download | gdb-0f1254327820d7b3f67f873aa40e76679f067288.zip gdb-0f1254327820d7b3f67f873aa40e76679f067288.tar.gz gdb-0f1254327820d7b3f67f873aa40e76679f067288.tar.bz2 |
Fix internal error when relaxing branches to STT_SECTION symbols.
gold/
PR gold/20807
* aarch64.cc (Target_aarch64::scan_reloc_section_for_stubs): Handle
section symbols correctly.
* arm.cc (Target_arm): Likewise.
* powerpc.cc (Target_powerpc): Likewise.
Diffstat (limited to 'gold/powerpc.cc')
-rw-r--r-- | gold/powerpc.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gold/powerpc.cc b/gold/powerpc.cc index 1e95d5b..67e171c 100644 --- a/gold/powerpc.cc +++ b/gold/powerpc.cc @@ -2799,6 +2799,8 @@ Target_powerpc<size, big_endian>::Branch_info::make_stub( const Symbol_value<size>* psymval = this->object_->local_symbol(this->r_sym_); Symbol_value<size> symval; + if (psymval->is_section_symbol()) + symval.set_is_section_symbol(); typedef Sized_relobj_file<size, big_endian> ObjType; typename ObjType::Compute_final_local_value_status status = this->object_->compute_final_local_value(this->r_sym_, psymval, |