a08d71d3c4d7089552f1e3d2e66c366335ecab2a
[riscv-tests.git] / benchmarks / common / test.ld
1 /*======================================================================*/
2 /* Proxy kernel linker script */
3 /*======================================================================*/
4 /* This is the linker script used when building the proxy kernel. */
5
6 /*----------------------------------------------------------------------*/
7 /* Setup */
8 /*----------------------------------------------------------------------*/
9
10 /* The OUTPUT_ARCH command specifies the machine architecture where the
11 argument is one of the names used in the BFD library. More
12 specifically one of the entires in bfd/cpu-mips.c */
13
14 OUTPUT_ARCH( "riscv" )
15
16 /*----------------------------------------------------------------------*/
17 /* Sections */
18 /*----------------------------------------------------------------------*/
19
20 SECTIONS
21 {
22
23 /* text: test code section */
24 . = 0x80000000;
25 .text.init : { *(.text.init) }
26
27 .tohost ALIGN(0x1000) : { *(.tohost) }
28
29 .text : { *(.text) }
30
31 /* data segment */
32 .data : { *(.data) }
33
34 .sdata : {
35 __global_pointer$ = . + 0x800;
36 *(.srodata.cst16) *(.srodata.cst8) *(.srodata.cst4) *(.srodata.cst2) *(.srodata*)
37 *(.sdata .sdata.* .gnu.linkonce.s.*)
38 }
39
40 /* bss segment */
41 .sbss : {
42 *(.sbss .sbss.* .gnu.linkonce.sb.*)
43 *(.scommon)
44 }
45 .bss : { *(.bss) }
46
47 /* thread-local data segment */
48 .tdata :
49 {
50 _tls_data = .;
51 *(.tdata.begin)
52 *(.tdata)
53 *(.tdata.end)
54 }
55 .tbss :
56 {
57 *(.tbss)
58 *(.tbss.end)
59 }
60
61 /* End of uninitalized data segement */
62 _end = .;
63 }
64