From 4cd4d194b8827af4971a81ad28968499925f884f Mon Sep 17 00:00:00 2001 From: Frans Kaashoek Date: Tue, 23 Aug 2022 10:54:40 -0400 Subject: Use simple linker script to force data segment to be page aligned --- user/user.ld | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 user/user.ld (limited to 'user') diff --git a/user/user.ld b/user/user.ld new file mode 100644 index 0000000..0ca922b --- /dev/null +++ b/user/user.ld @@ -0,0 +1,36 @@ +OUTPUT_ARCH( "riscv" ) +ENTRY( _main ) + + +SECTIONS +{ + . = 0x0; + + .text : { + *(.text .text.*) + } + + .rodata : { + . = ALIGN(16); + *(.srodata .srodata.*) /* do not need to distinguish this from .rodata */ + . = ALIGN(16); + *(.rodata .rodata.*) + . = ALIGN(0x1000); + } + + .data : { + . = ALIGN(16); + *(.sdata .sdata.*) /* do not need to distinguish this from .data */ + . = ALIGN(16); + *(.data .data.*) + } + + .bss : { + . = ALIGN(16); + *(.sbss .sbss.*) /* do not need to distinguish this from .bss */ + . = ALIGN(16); + *(.bss .bss.*) + } + + PROVIDE(end = .); +} -- cgit v1.2.3