aboutsummaryrefslogtreecommitdiff
path: root/gold
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2022-09-25 12:07:36 +0930
committerAlan Modra <amodra@gmail.com>2022-09-26 14:23:29 +0930
commitc21736aed1d4877e090df60362413669dbdc391d (patch)
tree7717a0273d56e9e288dcda305e091b200774908f /gold
parentf3bc603561c993cdb8811c361ec5e9e484628cdc (diff)
downloadgdb-c21736aed1d4877e090df60362413669dbdc391d.zip
gdb-c21736aed1d4877e090df60362413669dbdc391d.tar.gz
gdb-c21736aed1d4877e090df60362413669dbdc391d.tar.bz2
PR29542, PowerPC gold internal error in get_output_view,
We were attempting to set a BSS style section contents. PR 29542 * powerpc.cc (Output_data_plt_powerpc::do_write): Don't set .plt, .iplt or .lplt section contents when position independent.
Diffstat (limited to 'gold')
-rw-r--r--gold/powerpc.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/gold/powerpc.cc b/gold/powerpc.cc
index 22c0462..b950869 100644
--- a/gold/powerpc.cc
+++ b/gold/powerpc.cc
@@ -4338,7 +4338,8 @@ template<int size, bool big_endian>
void
Output_data_plt_powerpc<size, big_endian>::do_write(Output_file* of)
{
- if (!this->sym_ents_.empty())
+ if (!this->sym_ents_.empty()
+ && !parameters->options().output_is_position_independent())
{
const section_size_type offset = this->offset();
const section_size_type oview_size