Skip to main content

sbpf_common/
syscalls.rs

1use crate::syscalls_map::{SyscallMap, compute_syscall_entries_const};
2
3pub const REGISTERED_SYSCALLS: &[&str] = &[
4    "abort",
5    "sol_panic_",
6    "sol_log_",
7    "sol_log_64_",
8    "sol_log_compute_units_",
9    "sol_log_pubkey",
10    "sol_create_program_address",
11    "sol_try_find_program_address",
12    "sol_sha256",
13    "sol_keccak256",
14    "sol_secp256k1_recover",
15    "sol_blake3",
16    "sol_curve_validate_point",
17    "sol_curve_group_op",
18    "sol_get_clock_sysvar",
19    "sol_get_epoch_schedule_sysvar",
20    "sol_get_fees_sysvar",
21    "sol_get_rent_sysvar",
22    "sol_get_last_restart_slot_sysvar",
23    "sol_memcpy_",
24    "sol_memmove_",
25    "sol_memcmp_",
26    "sol_memset_",
27    "sol_invoke_signed_c",
28    "sol_invoke_signed_rust",
29    "sol_alloc_free_",
30    "sol_set_return_data",
31    "sol_get_return_data",
32    "sol_log_data",
33    "sol_get_processed_sibling_instruction",
34    "sol_get_stack_height",
35    "sol_sha512",
36    "sol_curve_multiscalar_mul",
37    "sol_curve_decompress",
38    "sol_curve_pairing_map",
39    "sol_get_epoch_rewards_sysvar",
40    "sol_alt_bn128_group_op",
41    "sol_big_mod_exp",
42    "sol_poseidon",
43    "sol_remaining_compute_units",
44    "sol_alt_bn128_compression",
45    "sol_get_sysvar",
46    "sol_get_epoch_stake",
47];
48
49pub static SYSCALLS: SyscallMap<'static> =
50    SyscallMap::from_entries(&compute_syscall_entries_const::<
51        { REGISTERED_SYSCALLS.len() },
52    >(REGISTERED_SYSCALLS));