xref: /openbsd/sys/arch/luna88k/conf/ld.script (revision d415bd75)
1/*	$OpenBSD: ld.script,v 1.6 2019/11/09 20:07:00 guenther Exp $	*/
2
3/*
4 * Copyright (c) 2012 Miodrag Vallat.
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
19OUTPUT_FORMAT("elf32-m88k")
20OUTPUT_ARCH(m88k)
21ENTRY(__start)
22
23PHDRS
24{
25	text			PT_LOAD;
26	data			PT_LOAD;
27	openbsd_randomize	PT_OPENBSD_RANDOMIZE;
28}
29
30SECTIONS
31{
32	.text :
33	{
34		*(.text)
35		PROVIDE(etext = ABSOLUTE(.));
36	}
37	. = ALIGN(0x80000);
38	.rodata :
39	{
40		*(.rodata*)
41		PROVIDE(erodata = ABSOLUTE(.));
42	}
43	. = ALIGN(0x80000);
44	.data :
45	{
46		*(.data)
47	} :data
48	.openbsd.randomdata :
49	{
50		/* XXX shouldn't this be placed next to rodata? */
51		__retguard_start = ABSOLUTE(.);
52		*(.openbsd.randomdata.retguard .openbsd.randomdata.retguard.*)
53		/* XXX . = ALIGN(0x80000); */
54		__retguard_end = ABSOLUTE(.);
55		*(.openbsd.randomdata .openbsd.randomdata.*)
56	} :data :openbsd_randomize
57	PROVIDE(edata = ABSOLUTE(.));
58	.bss :
59	{
60		*(.bss)
61	} :data
62	PROVIDE(end = ABSOLUTE(.));
63	/DISCARD/ :
64	{
65		*(.comment)
66	}
67}
68