063-PR29542-PowerPC-gold-internal-error-in-get_output_vi.patch 989 B

1234567891011121314151617181920212223242526272829
  1. From 041c22e35de06d22566f4c71e4425c3351215e66 Mon Sep 17 00:00:00 2001
  2. From: Alan Modra <[email protected]>
  3. Date: Sun, 25 Sep 2022 12:07:36 +0930
  4. Subject: [PATCH 063/160] PR29542, PowerPC gold internal error in
  5. get_output_view,
  6. We were attempting to set a BSS style section contents.
  7. PR 29542
  8. * powerpc.cc (Output_data_plt_powerpc::do_write): Don't set .plt,
  9. .iplt or .lplt section contents when position independent.
  10. (cherry picked from commit c21736aed1d4877e090df60362413669dbdc391d)
  11. ---
  12. gold/powerpc.cc | 3 ++-
  13. 1 file changed, 2 insertions(+), 1 deletion(-)
  14. --- a/gold/powerpc.cc
  15. +++ b/gold/powerpc.cc
  16. @@ -4338,7 +4338,8 @@ template<int size, bool big_endian>
  17. void
  18. Output_data_plt_powerpc<size, big_endian>::do_write(Output_file* of)
  19. {
  20. - if (!this->sym_ents_.empty())
  21. + if (!this->sym_ents_.empty()
  22. + && !parameters->options().output_is_position_independent())
  23. {
  24. const section_size_type offset = this->offset();
  25. const section_size_type oview_size