mirror of
https://github.com/pezkuwichain/revive.git
synced 2026-06-14 18:01:05 +00:00
357bf58868
This PR changes the implementation of the emulated EVM heap memory: Instead of linking in a C implementation the code is emitted directly into the contract module. Which allows making it configurable via a compiler parameter (a follow up PR to this). --------- Signed-off-by: Cyrill Leutwiler <bigcyrill@hotmail.com>
24 lines
798 B
Rust
24 lines
798 B
Rust
//! The LLVM context constants.
|
|
|
|
/// The LLVM framework version.
|
|
pub const LLVM_VERSION: semver::Version = semver::Version::new(18, 1, 4);
|
|
|
|
/// The pointer width sized type.
|
|
pub static XLEN: usize = revive_common::BIT_LENGTH_X32;
|
|
|
|
/// The calldata size global variable name.
|
|
pub static GLOBAL_CALLDATA_SIZE: &str = "calldatasize";
|
|
|
|
/// The heap size global variable name.
|
|
pub static GLOBAL_HEAP_SIZE: &str = "__heap_size";
|
|
|
|
/// The heap memory global variable name.
|
|
pub static GLOBAL_HEAP_MEMORY: &str = "__heap_memory";
|
|
|
|
/// The spill buffer global variable name.
|
|
pub static GLOBAL_ADDRESS_SPILL_BUFFER: &str = "address_spill_buffer";
|
|
|
|
/// The deployer call header size that consists of:
|
|
/// - bytecode hash (32 bytes)
|
|
pub const DEPLOYER_CALL_HEADER_SIZE: usize = revive_common::BYTE_LENGTH_WORD;
|