1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- /*
- Linker Script For QEMU RV32 Virtual Machine Type `virt`
- */
- OUTPUT_ARCH( "riscv" )
- ENTRY( _start )
- MEMORY
- {
- ram (wxa!ri) : ORIGIN = 0x80000000, LENGTH = 128M
- }
- PHDRS
- {
- text PT_LOAD;
- data PT_LOAD;
- bss PT_LOAD;
- }
- SECTIONS
- {
- .text : {
- PROVIDE(_text_start = .);
- *(.text.init) *(.text .text.*)
- PROVIDE(_text_end = .);
- } >ram AT>ram :text
- .rodata : {
- PROVIDE(_rodata_start = .);
- *(.rodata .rodata.*)
- PROVIDE(_rodata_end = .);
- } >ram AT>ram :text
- .data : {
- . = ALIGN(4096);
- PROVIDE(_data_start = .);
- *(.sdata .sdata.*) *(.data .data.*)
- PROVIDE(_data_end = .);
- } >ram AT>ram :data
- .bss :{
- PROVIDE(_bss_start = .);
- *(.sbss .sbss.*) *(.bss .bss.*)
- PROVIDE(_bss_end = .);
- } >ram AT>ram :bss
- PROVIDE(_memory_start = ORIGIN(ram));
- PROVIDE(_memory_end = ORIGIN(ram) + LENGTH(ram));
- }
|