Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/macppc/stand/fixcoff PR port-macppc/52564: revert p...



details:   https://anonhg.NetBSD.org/src/rev/d58e1da67fe3
branches:  trunk
changeset: 826834:d58e1da67fe3
user:      uwe <uwe%NetBSD.org@localhost>
date:      Mon Oct 02 00:55:55 2017 +0000

description:
PR port-macppc/52564: revert previous and use a different workaround.

The .eh_frame has nothing to do with it, especially since it's not
generated now anyway.  The problem is that

  . = (. + 0x0FFF) & 0xFFFFF000;

now seems to cause binutils to pad the preceding section, and when
that happens to be .text the powermac ofw is unhappy for whatever
reason.

For now provide .pad section that absorbs the padding as a workaround.
The binutils problem still needs to be looked into.

diffstat:

 sys/arch/macppc/stand/fixcoff/elf32_powerpc_merge.x |  4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diffs (21 lines):

diff -r 633f0a063347 -r d58e1da67fe3 sys/arch/macppc/stand/fixcoff/elf32_powerpc_merge.x
--- a/sys/arch/macppc/stand/fixcoff/elf32_powerpc_merge.x       Sun Oct 01 22:59:19 2017 +0000
+++ b/sys/arch/macppc/stand/fixcoff/elf32_powerpc_merge.x       Mon Oct 02 00:55:55 2017 +0000
@@ -32,9 +32,6 @@
     *(.rodata.*)
     *(.rodata1)
     *(.got1)
-  }
-  .eh_frame  :
-  {
     *(.eh_frame_hdr)
     *(.eh_frame)
   }
@@ -43,6 +40,7 @@
   .dtors     : { *(.dtors)   }
   _etext = .;
   PROVIDE (etext = .);
+  .pad       : { LONG(0) }
   /* Read-write section, merged into data segment: */
   . = (. + 0x0FFF) & 0xFFFFF000;
   .data    :



Home | Main Index | Thread Index | Old Index