mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-04-02 16:15:54 +00:00
Reintroduce evmone as an EVM interpreter option behind the 'evmone' build tag. Includes gas refund propagation from evmone to Go StateDB, and C memory allocation for all parameters passed across the CGO boundary.
45 lines
1 KiB
Text
45 lines
1 KiB
Text
OUTPUT_FORMAT("elf64-littleriscv")
|
|
OUTPUT_ARCH("riscv")
|
|
ENTRY(_rt0_riscv64_tamago)
|
|
|
|
MEMORY {
|
|
rom (xa) : ORIGIN = 0x80000000, LENGTH = 0x08000000
|
|
ram (wxa) : ORIGIN = 0xa0000000, LENGTH = 0x20000000
|
|
}
|
|
|
|
PHDRS {
|
|
text PT_LOAD FLAGS(5);
|
|
rodata PT_LOAD FLAGS(4);
|
|
data PT_LOAD FLAGS(6);
|
|
bss PT_LOAD FLAGS(6);
|
|
}
|
|
|
|
SECTIONS
|
|
{
|
|
.text : { *(.text.init) *(.text .text.*) } >rom AT>rom :text
|
|
|
|
. = ALIGN(8);
|
|
PROVIDE(_global_pointer = .);
|
|
.rodata : { *(.rodata .rodata.*) } >rom AT>rom :rodata
|
|
|
|
.data : { *(.data .data.* .sdata .sdata.*) } >ram AT>ram :data
|
|
|
|
. = ALIGN(8);
|
|
.bss : {
|
|
PROVIDE(_bss_start = .);
|
|
*(.bss .bss.* .sbss .sbss.*);
|
|
PROVIDE(_bss_end = .);
|
|
} >ram AT>ram :bss
|
|
|
|
. = ALIGN(8);
|
|
.noptrbss : { *(.noptrbss) } >ram AT>ram :bss
|
|
|
|
. = ALIGN(8);
|
|
PROVIDE(_init_stack_top = . + 0x800000);
|
|
|
|
PROVIDE(_kernel_heap_bottom = _init_stack_top);
|
|
PROVIDE(_kernel_heap_top = ORIGIN(ram) + LENGTH(ram));
|
|
PROVIDE(_kernel_heap_size = _kernel_heap_top - _kernel_heap_bottom);
|
|
|
|
_end = .;
|
|
}
|