/* $NetBSD: kern.ldscript.Xen,v 1.18 2022/01/24 00:15:09 maya Exp $ */
#include "assym.h"
__PAGE_SIZE = 0x1000 ;
ENTRY(_start)
SECTIONS
{
.text : AT (ADDR(.text))
{
*(.text)
*(.text.*)
*(.stub)
. = ALIGN(__PAGE_SIZE);
} :main =0xCC
_etext = . ;
PROVIDE (etext = .) ;
. = ALIGN(__PAGE_SIZE);
__rodata_start = . ;
.rodata.hotpatch :
{
__rodata_hotpatch_start = . ;
*(.rodata.hotpatch)
__rodata_hotpatch_end = . ;
}
.rodata :
{
*(.rodata)
*(.rodata.*)
. = ALIGN(COHERENCY_UNIT);
__CTOR_LIST__ = .;
*(.ctors)
__CTOR_END__ = .;
}
. = ALIGN(__PAGE_SIZE);
__data_start = . ;
.data :
{
*(.data)
}
. = ALIGN(COHERENCY_UNIT);
.data.cacheline_aligned :
{
*(.data.cacheline_aligned)
}
. = ALIGN(COHERENCY_UNIT);
.data.read_mostly :
{
*(.data.read_mostly)
}
. = ALIGN(COHERENCY_UNIT);
_edata = . ;
PROVIDE (edata = .) ;
__bss_start = . ;
.bss :
{
*(.bss)
*(.bss.*)
*(COMMON)
. = ALIGN(__PAGE_SIZE);
}
. = ALIGN(__PAGE_SIZE);
/* End of the kernel image */
__kernel_end = . ;
_end = . ;
PROVIDE (end = .) ;
.note.netbsd.ident :
{
KEEP(*(.note.netbsd.ident));
}
.note.Xen :
{
KEEP(*(.note.Xen));
} :notes
}
PHDRS
{
main PT_LOAD;
notes PT_NOTE;
}