diff options
Diffstat (limited to 'sys/arch')
-rw-r--r-- | sys/arch/hppa/stand/boot/ld.script | 83 |
1 files changed, 43 insertions, 40 deletions
diff --git a/sys/arch/hppa/stand/boot/ld.script b/sys/arch/hppa/stand/boot/ld.script index 1730d71fd09..099a6d338cf 100644 --- a/sys/arch/hppa/stand/boot/ld.script +++ b/sys/arch/hppa/stand/boot/ld.script @@ -1,45 +1,48 @@ -/* $OpenBSD: ld.script,v 1.1 1998/06/23 18:46:41 mickey Exp $ */ +/* $OpenBSD: ld.script,v 1.2 1999/04/20 20:02:37 mickey Exp $ */ +OUTPUT_FORMAT("elf32-hppa") OUTPUT_ARCH(hppa) ENTRY(begin) -SECTIONS -{ - /* Read-only sections, merged into text segment: */ - . = + SIZEOF_HEADERS; - .text : - { - *(.text) - *(.rodata) - *(.rodata1) - *($CODE$) - } - _etext = .; - PROVIDE (etext = .); - /* Read-write sections, merged into data segment: */ - /* . = (. + 0x0FFF) & 0xFFFFF000; */ - .data : - { - *(.data) - *(.data1) - *(.sdata) - *(.sdata2) - *(.dynamic) - CONSTRUCTORS - } - _edata = .; - PROVIDE (edata = .); - . = (. + 0x0FFF) & 0xFFFFF000; - stack_base = .; - . += 8192; - __bss_start = .; - .bss : - { - *(.sbss) *(.scommon) - *(.dynbss) - *(.bss) - *(COMMON) - } - _end = . ; - PROVIDE (end = .); + +SECTIONS { + + /* Read-only sections, merged into text segment: */ + . = + SIZEOF_HEADERS; + .text : { + *(.text) + *(.rodata) + *(.rodata1) + *($CODE$) + etext = ABSOLUTE(.); + } = 0x08000240 /* nop */ + + /* Read-write sections, merged into data segment: */ + .data : { + $global$ = .; + *(.data) + *(.data1) + *(.sdata) + *(.sdata2) + *(.dynamic) + CONSTRUCTORS + edata = ABSOLUTE(.); + } = 0 + + .bss : { + __bss_start = .; + *(.dynbss) + *(.bss) + *(.sbss) + *(.scommon) + *(COMMON) + end = ABSOLUTE(.); + __bss_end = .; + } + + /* don't need an unwind in the boot, unless we'll have a boot-ddb (; */ + /DISCARD/ : + { + *(.PARISC.unwind) + } } |