summaryrefslogtreecommitdiff
path: root/sys/arch/hppa/conf/ld.script
blob: a5d099d1ddb8cc3b5afa8236eec2ed1e553c7839 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/* 	$OpenBSD: ld.script,v 1.4 1999/05/05 02:48:12 mickey Exp $	*/

OUTPUT_FORMAT("elf32-hppa")
OUTPUT_ARCH(hppa)
ENTRY(__start)
SECTIONS
{
	/* Read-only sections, merged into text segment: */
	. = + SIZEOF_HEADERS;
	.text BLOCK(4096) :
	{
		kernel_text = . ;
		*(.text)
		*(.rodata) *(.rodata1)
		*(.reginfo)
		*(.init)
		*(.stub)
		/* .gnu.warning sections are handled specially by elf32.em.  */
		*(.gnu.warning)
		__unwind_start = .;
		*(.PARISC.unwind)
		__unwind_end = .;
	} = 0 /* 0x08000240 nop filled, does not work */
	etext = ABSOLUTE(.);

	.data BLOCK(4096) :
	{
		$global$ = . ;
		kernel_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
		. = ALIGN(4096);
	} = 0
	.ctors	: { *(.ctors) }
	.dtors	: { *(.dtors) }
	edata = ABSOLUTE(.);

	__bss_start = .;
	.sbss	: { *(.sbss) *(.scommon) }
	.bss BLOCK(4096) :
	{
		*(.dynbss) *(.bss)
		*(COMMON) *($COMMON$)
		. = ALIGN(4096);
	}
	end = ABSOLUTE(.);
}