11.2Sreinoud/*	$NetBSD: kern.ldscript,v 1.2 2018/08/17 20:16:07 reinoud Exp $	*/
21.1Sreinoud
31.1Sreinoud#include "assym.h"
41.1Sreinoud
51.2Sreinoud__PAGE_SIZE = 0x1000 ;
61.2Sreinoud
71.1SreinoudENTRY(_start)
81.1SreinoudSECTIONS
91.1Sreinoud{
101.1Sreinoud	/* Read-only sections, merged into text segment: */
111.1Sreinoud	.text :
121.1Sreinoud	{
131.2Sreinoud		. = ALIGN(__PAGE_SIZE);
141.2Sreinoud		*(.text.user)
151.2Sreinoud		. = ALIGN(__PAGE_SIZE);
161.1Sreinoud		*(.text)
171.1Sreinoud		*(.text.*)
181.1Sreinoud		*(.stub)
191.2Sreinoud		. = ALIGN(__PAGE_SIZE);
201.2Sreinoud	} =0xCC
211.2Sreinoud
221.1Sreinoud	_etext = . ;
231.1Sreinoud	PROVIDE (etext = .) ;
241.1Sreinoud
251.2Sreinoud	. = ALIGN(__PAGE_SIZE);
261.1Sreinoud	.rodata :
271.1Sreinoud	{
281.1Sreinoud		*(.rodata)
291.1Sreinoud		*(.rodata.*)
301.1Sreinoud	}
311.1Sreinoud
321.1Sreinoud	/*
331.1Sreinoud	 * Adjust the address for the data segment.  We want to adjust up to
341.1Sreinoud	 * the same address within the page on the next page up.
351.1Sreinoud	 */
361.2Sreinoud	. = ALIGN(__PAGE_SIZE);
371.1Sreinoud	__data_start = . ;
381.1Sreinoud	.data :
391.1Sreinoud	{
401.1Sreinoud		*(.data)
411.1Sreinoud	}
421.1Sreinoud
431.1Sreinoud	. = ALIGN(COHERENCY_UNIT);
441.1Sreinoud	.data.cacheline_aligned :
451.1Sreinoud	{
461.1Sreinoud		*(.data.cacheline_aligned)
471.1Sreinoud	}
481.1Sreinoud	. = ALIGN(COHERENCY_UNIT);
491.1Sreinoud	.data.read_mostly :
501.1Sreinoud	{
511.1Sreinoud		*(.data.read_mostly)
521.1Sreinoud	}
531.1Sreinoud	. = ALIGN(COHERENCY_UNIT);
541.1Sreinoud
551.1Sreinoud	_edata = . ;
561.1Sreinoud	PROVIDE (edata = .) ;
571.1Sreinoud	__bss_start = . ;
581.1Sreinoud	.bss :
591.1Sreinoud	{
601.1Sreinoud		*(.bss)
611.1Sreinoud		*(.bss.*)
621.1Sreinoud		*(COMMON)
631.1Sreinoud	}
641.2Sreinoud
651.2Sreinoud	. = ALIGN(__PAGE_SIZE);
661.1Sreinoud	_end = . ;
671.1Sreinoud	PROVIDE (end = .) ;
681.2Sreinoud
691.2Sreinoud	/*
701.2Sreinoud	 * .note.netbsd.ident :
711.2Sreinoud	 * {
721.2Sreinoud	 * 	KEEP(*(.note.netbsd.ident));
731.2Sreinoud	 * }
741.2Sreinoud	 */
751.1Sreinoud}
761.1Sreinoud
77