summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMichael Shalayeff <mickey@cvs.openbsd.org>1999-04-20 20:34:22 +0000
committerMichael Shalayeff <mickey@cvs.openbsd.org>1999-04-20 20:34:22 +0000
commit645f330b1200e5d32232cce0e5c976d955a83e38 (patch)
treefc31a2da20bd0f44a355b507b438ef6ff4a779d2 /sys
parente69d807d7ecee6ba4ccc581f9aa4ce7dd6d32479 (diff)
workaroun ld overflow bug; general cleanup, alignments, pads, and needed sections/symbols
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/hppa/conf/ld.script42
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(.);
}