diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 1999-04-20 20:34:22 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 1999-04-20 20:34:22 +0000 |
commit | 645f330b1200e5d32232cce0e5c976d955a83e38 (patch) | |
tree | fc31a2da20bd0f44a355b507b438ef6ff4a779d2 | |
parent | e69d807d7ecee6ba4ccc581f9aa4ce7dd6d32479 (diff) |
workaroun ld overflow bug; general cleanup, alignments, pads, and needed sections/symbols
-rw-r--r-- | sys/arch/hppa/conf/ld.script | 42 |
1 files changed, 22 insertions, 20 deletions
diff --git a/sys/arch/hppa/conf/ld.script b/sys/arch/hppa/conf/ld.script index b2b5c67fbd6..c7ddf28c75f 100644 --- a/sys/arch/hppa/conf/ld.script +++ b/sys/arch/hppa/conf/ld.script @@ -1,4 +1,4 @@ -/* $OpenBSD: ld.script,v 1.2 1999/02/25 16:42:42 mickey Exp $ */ +/* $OpenBSD: ld.script,v 1.3 1999/04/20 20:34:21 mickey Exp $ */ OUTPUT_FORMAT("elf32-hppa") OUTPUT_ARCH(hppa) @@ -7,39 +7,41 @@ SECTIONS { /* Read-only sections, merged into text segment: */ . = + SIZEOF_HEADERS; - .text : + .text BLOCK(4096) : { kernel_text = . ; - *(.text) - *($CODE$) - *(.rodata) - *(.rodata1) + *(.text) *($text$) + *(.rodata) *(.rodata1) *(.reginfo) *(.init) *(.stub) /* .gnu.warning sections are handled specially by elf32.em. */ *(.gnu.warning) - } = 0 - etext = .; + __unwind_start = .; + *(.PARISC.unwind) + __unwind_end = .; + } = 0 /* 0x08000240 nop filled, does not work */ + etext = ABSOLUTE(.); - .data : + .data BLOCK(4096) : { kernel_data = . ; - *(.data) + [a-ps-z]*(.data) r[a-ce-z]*(.data) *libkern.o(.data) + rd_root.o(.data) /* there is an overflow bug in ld */ CONSTRUCTORS - } - .ctors : { *(.ctors) } - .dtors : { *(.dtors) } - edata = .; + . = ALIGN(4096); + } = 0 + .ctors : { *(.ctors) } + .dtors : { *(.dtors) } + edata = ABSOLUTE(.); __bss_start = .; .sbss : { *(.sbss) *(.scommon) } - .bss : + .bss BLOCK(4096) : { - *(.dynbss) - *(.bss) - *(COMMON) - *($COMMON$) + *(.dynbss) *(.bss) + *(COMMON) *($COMMON$) + . = ALIGN(4096); } - end = .; + end = ABSOLUTE(.); } |