/* $NetBSD: kern.ldscript,v 1.12 2021/04/23 08:42:25 simonb Exp $ */
#include "assym.h"
/* ldscript for NetBSD/mips kernels and LKMs */
OUTPUT_ARCH(mips)
ENTRY(_start)
/* Do we need any of these?
__DYNAMIC = 0; */
_DYNAMIC_LINK = 0;
SECTIONS
{
/* Read-only sections, merged into text segment. Assumes the
kernel Makefile sets the start address via -Ttext. */
.text :
{
_ftext = . ;
*(.text)
*(.text.*)
__stub_start = . ;
*(.stub*)
__stub_end = . ;
*(.gnu.warning)
} =0
_etext = .;
PROVIDE (etext = .);
.rodata : { *(.rodata) *(.rodata.*) }
.reginfo : { *(.reginfo) }
/* . = . + 0x1000; */
.data :
{
_fdata = . ;
*(.data)
CONSTRUCTORS
. = ALIGN(COHERENCY_UNIT);
*(.data.cacheline_aligned)
. = ALIGN(COHERENCY_UNIT);
*(.data.read_mostly)
. = ALIGN(COHERENCY_UNIT);
}
_gp = ALIGN(16) + 0x7ff0;
.lit8 : { *(.lit8) }
.lit4 : { *(.lit4) }
.sdata : { *(.sdata) }
_edata = .;
PROVIDE (edata = .);
__bss_start = .;
_fbss = .;
.sbss : { *(.sbss) *(.scommon) }
.bss :
{
*(.bss)
*(COMMON)
}
_end = . ;
PROVIDE (end = .);
}