xref: /openbsd/sys/arch/powerpc64/conf/ld.script (revision 09467b48)
1/*	$OpenBSD: ld.script,v 1.4 2020/07/18 13:16:32 kettenis Exp $	*/
2
3/*
4 * Copyright (c) 2013 Mark Kettenis <kettenis@openbsd.org>
5 *
6 * Permission to use, copy, modify, and distribute this software for any
7 * purpose with or without fee is hereby granted, provided that the above
8 * copyright notice and this permission notice appear in all copies.
9 *
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 */
18
19ENTRY(_start)
20
21PHDRS
22{
23	text PT_LOAD;
24	dynamic PT_DYNAMIC;
25	openbsd_randomize PT_OPENBSD_RANDOMIZE;
26}
27
28SECTIONS
29{
30	. = 0x00100000;
31	.text :
32	{
33		*(.text)
34	} :text
35	PROVIDE (etext = .);
36	PROVIDE (_etext = .);
37
38	. = ALIGN(4096);
39	.rela.dyn : { *(.rela.dyn) }
40
41	.dynamic :
42	{
43		*(.dynamic)
44	} :dynamic :text
45
46	.rodata :
47	{
48		*(.rodata)
49		*(.data.rel.ro)
50	} :text
51
52	.openbsd.randomdata :
53	{
54		*(.openbsd.randomdata)
55	} :openbsd_randomize :text
56	PROVIDE (_erodata = .);
57
58	. = ALIGN(4096);
59	.data :
60	{
61		*(.data)
62	} :text
63
64	. = ALIGN(4096);
65	.got : { *(.got) }
66	.toc : { *(.toc) }
67
68	PROVIDE (__bss_start = .);
69	.bss :
70	{
71		*(.bss)
72	}
73	PROVIDE (end = .);
74	PROVIDE (_end = .);
75
76	/DISCARD/ :
77	{
78		*(.dynsym)
79		*(.dynstr)
80		*(.gnu.hash)
81		*(.hash)
82	}
83}
84