X-Git-Url: https://git.libre-soc.org/?p=riscv-tests.git;a=blobdiff_plain;f=benchmarks%2Fcommon%2Ftest.ld;h=8141dda44cdef51c9f80f2610a15d67bac6f5e06;hp=952bf539688c5a3da905e0cec0d6cdc8a4f0e9d7;hb=f9e8b267a273eb704f6def6f0fa04140d0654d18;hpb=23507d668862dff15a898f20e109a46c6e95780d diff --git a/benchmarks/common/test.ld b/benchmarks/common/test.ld index 952bf53..8141dda 100644 --- a/benchmarks/common/test.ld +++ b/benchmarks/common/test.ld @@ -13,11 +13,6 @@ OUTPUT_ARCH( "riscv" ) -/* The ENTRY command specifies the entry point (ie. first instruction - to execute). The symbol _start should be defined in each test. */ - -ENTRY( _start ) - /*----------------------------------------------------------------------*/ /* Sections */ /*----------------------------------------------------------------------*/ @@ -26,17 +21,41 @@ SECTIONS { /* text: test code section */ - . = 0x00002000; - .text : - { - crt.o(.text) - *(.text) + . = 0x80000000; + .text.init : { *(.text.init) } + + .tohost ALIGN(0x1000) : { *(.tohost) } + + .text : { *(.text) } + + /* data segment */ + .data : { *(.data) } + + .sdata : { + _gp = . + 0x800; + *(.srodata.cst16) *(.srodata.cst8) *(.srodata.cst4) *(.srodata.cst2) *(.srodata*) + *(.sdata .sdata.* .gnu.linkonce.s.*) + } + + /* bss segment */ + .sbss : { + *(.sbss .sbss.* .gnu.linkonce.sb.*) + *(.scommon) } + .bss : { *(.bss) } - /* data: Initialized data segment */ - .data : + /* thread-local data segment */ + .tdata : + { + _tls_data = .; + *(.tdata.begin) + *(.tdata) + *(.tdata.end) + } + .tbss : { - *(.data) + *(.tbss) + *(.tbss.end) } /* End of uninitalized data segement */