CuEVM
Namespaces | Functions
CuEVM Namespace Reference

Namespaces

 gas_cost
 
 memory
 
 operations
 
 precompile_operations
 
 stack
 
 transaction
 
 utils
 

Functions

__host__ int32_t get_block_info (block_info_t *&block_info_ptr, const cJSON *json, int32_t managed)
 
__host__ int32_t free_block_info (block_info_t *&block_info_ptr, int32_t managed)
 
__global__ void byte_array_t_transfer_kernel (byte_array_t *dst_instances, byte_array_t *src_instances, uint32_t count)
 
__host__ __device__ int32_t evm_word_t_compare (const evm_word_t *a, const evm_word_t *b, uint16_t num_limbs=8)
 
__global__ void copy_state_kernel (CuEVM::flatten_state *flatten_state, CuEVM::plain_account *accounts, CuEVM::plain_storage *storage)
 
__global__ void kernel_evm_multiple_instances (cgbn_error_report_t *report, CuEVM::evm_instance_t *instances, uint32_t count)
 
__host__ int32_t get_evm_instances (ArithEnv &arith, evm_instance_t *&evm_instances, const cJSON *test_json, uint32_t &num_instances, int32_t managed)
 
__host__ void free_evm_instances (evm_instance_t *&evm_instances, uint32_t num_instances, int32_t managed)
 
__global__ void account_t_transfer_kernel (account_t *dst_instances, account_t *src_instances, uint32_t count)
 
__global__ void contract_storage_t_transfer_kernel (contract_storage_t *dst_instances, contract_storage_t *src_instances, uint32_t instance_count)
 
__global__ void state_t_transfer_kernel (state_t *dst_instances, state_t *src_instances, uint32_t count)
 
__global__ void state_access_t_transfer_kernel (state_access_t *dst_instances, state_access_t *src_instances, uint32_t count)
 
__host__ __device__ void cgbn_set_memory (env_t env, bn_t &dst, const uint8_t *src, const uint32_t size)
 
__host__ __device__ void cgbn_set_size_t (env_t env, bn_t &dst, const size_t src)
 
__host__ __device__ int32_t cgbn_get_size_t (env_t env, size_t &dst, const bn_t &src)
 
__host__ __device__ int32_t cgbn_get_uint64_t (env_t env, uint64_t &dst, const bn_t &src)
 
__host__ __device__ int32_t cgbn_get_uint32_t (env_t env, uint32_t &dst, const bn_t &src)
 
__host__ __device__ int32_t cgbn_set_byte_array_t (env_t env, bn_t &out, const byte_array_t &byte_array)
 
__host__ __device__ int32_t get_sub_byte_array_t (ArithEnv &arith, const byte_array_t &byte_array, const bn_t &index, const bn_t &length, byte_array_t &out)
 
__host__ __device__ void get_bit_array (uint8_t *dst_array, uint32_t &array_length, evm_word_t &src_cgbn_mem, uint32_t limb_count)
 
__host__ __device__ void byte_array_from_cgbn_memory (uint8_t *dst_array, size_t &array_length, evm_word_t &src_cgbn_mem, size_t limb_count)
 
__host__ __device__ void memory_from_cgbn (ArithEnv &arith, uint8_t *dst, bn_t &src)
 
__host__ __device__ void evm_address_conversion (ArithEnv &arith, bn_t &address)
 
__host__ __device__ void print_bnt (ArithEnv &arith, const bn_t &bn)
 

Function Documentation

◆ account_t_transfer_kernel()

__global__ void CuEVM::account_t_transfer_kernel ( account_t *  dst_instances,
account_t *  src_instances,
uint32_t  count 
)

◆ byte_array_from_cgbn_memory()

__host__ __device__ void CuEVM::byte_array_from_cgbn_memory ( uint8_t *  dst_array,
size_t &  array_length,
evm_word_t &  src_cgbn_mem,
size_t  limb_count 
)
Here is the caller graph for this function:

◆ byte_array_t_transfer_kernel()

__global__ void CuEVM::byte_array_t_transfer_kernel ( byte_array_t *  dst_instances,
byte_array_t *  src_instances,
uint32_t  count 
)

◆ cgbn_get_size_t()

__host__ __device__ int32_t CuEVM::cgbn_get_size_t ( env_t  env,
size_t &  dst,
const bn_t &  src 
)

◆ cgbn_get_uint32_t()

__host__ __device__ int32_t CuEVM::cgbn_get_uint32_t ( env_t  env,
uint32_t &  dst,
const bn_t &  src 
)
Here is the caller graph for this function:

◆ cgbn_get_uint64_t()

__host__ __device__ int32_t CuEVM::cgbn_get_uint64_t ( env_t  env,
uint64_t &  dst,
const bn_t &  src 
)

◆ cgbn_set_byte_array_t()

__host__ __device__ int32_t CuEVM::cgbn_set_byte_array_t ( env_t  env,
bn_t &  out,
const byte_array_t &  byte_array 
)

◆ cgbn_set_memory()

__host__ __device__ void CuEVM::cgbn_set_memory ( env_t  env,
bn_t &  dst,
const uint8_t *  src,
const uint32_t  size 
)
Here is the caller graph for this function:

◆ cgbn_set_size_t()

__host__ __device__ void CuEVM::cgbn_set_size_t ( env_t  env,
bn_t &  dst,
const size_t  src 
)

◆ contract_storage_t_transfer_kernel()

__global__ void CuEVM::contract_storage_t_transfer_kernel ( contract_storage_t *  dst_instances,
contract_storage_t *  src_instances,
uint32_t  instance_count 
)

◆ copy_state_kernel()

__global__ void CuEVM::copy_state_kernel ( CuEVM::flatten_state *  flatten_state,
CuEVM::plain_account *  accounts,
CuEVM::plain_storage *  storage 
)

◆ evm_address_conversion()

__host__ __device__ void CuEVM::evm_address_conversion ( ArithEnv &  arith,
bn_t &  address 
)
Here is the caller graph for this function:

◆ evm_word_t_compare()

__host__ __device__ int32_t CuEVM::evm_word_t_compare ( const evm_word_t *  a,
const evm_word_t *  b,
uint16_t  num_limbs = 8 
)

◆ free_block_info()

__host__ int32_t CuEVM::free_block_info ( block_info_t *&  block_info_ptr,
int32_t  managed 
)

◆ free_evm_instances()

__host__ void CuEVM::free_evm_instances ( evm_instance_t *&  evm_instances,
uint32_t  num_instances,
int32_t  managed 
)
Here is the caller graph for this function:

◆ get_bit_array()

__host__ __device__ void CuEVM::get_bit_array ( uint8_t *  dst_array,
uint32_t &  array_length,
evm_word_t &  src_cgbn_mem,
uint32_t  limb_count 
)
Here is the caller graph for this function:

◆ get_block_info()

__host__ int32_t CuEVM::get_block_info ( block_info_t *&  block_info_ptr,
const cJSON *  json,
int32_t  managed 
)
Here is the caller graph for this function:

◆ get_evm_instances()

__host__ int32_t CuEVM::get_evm_instances ( ArithEnv &  arith,
evm_instance_t *&  evm_instances,
const cJSON *  test_json,
uint32_t &  num_instances,
int32_t  managed 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ get_sub_byte_array_t()

__host__ __device__ int32_t CuEVM::get_sub_byte_array_t ( ArithEnv &  arith,
const byte_array_t &  byte_array,
const bn_t &  index,
const bn_t &  length,
byte_array_t &  out 
)

◆ kernel_evm_multiple_instances()

__global__ void CuEVM::kernel_evm_multiple_instances ( cgbn_error_report_t *  report,
CuEVM::evm_instance_t *  instances,
uint32_t  count 
)

◆ memory_from_cgbn()

__host__ __device__ void CuEVM::memory_from_cgbn ( ArithEnv &  arith,
uint8_t *  dst,
bn_t &  src 
)
Here is the caller graph for this function:

◆ print_bnt()

__host__ __device__ void CuEVM::print_bnt ( ArithEnv &  arith,
const bn_t &  bn 
)
Here is the caller graph for this function:

◆ state_access_t_transfer_kernel()

__global__ void CuEVM::state_access_t_transfer_kernel ( state_access_t *  dst_instances,
state_access_t *  src_instances,
uint32_t  count 
)

◆ state_t_transfer_kernel()

__global__ void CuEVM::state_t_transfer_kernel ( state_t *  dst_instances,
state_t *  src_instances,
uint32_t  count 
)