foundry_evm_core/
precompiles.rs1use alloy_primitives::{Address, address};
2
3pub const EC_RECOVER: Address = address!("0x0000000000000000000000000000000000000001");
5
6pub const SHA_256: Address = address!("0x0000000000000000000000000000000000000002");
8
9pub const RIPEMD_160: Address = address!("0x0000000000000000000000000000000000000003");
11
12pub const IDENTITY: Address = address!("0x0000000000000000000000000000000000000004");
14
15pub const MOD_EXP: Address = address!("0x0000000000000000000000000000000000000005");
17
18pub const EC_ADD: Address = address!("0x0000000000000000000000000000000000000006");
20
21pub const EC_MUL: Address = address!("0x0000000000000000000000000000000000000007");
23
24pub const EC_PAIRING: Address = address!("0x0000000000000000000000000000000000000008");
26
27pub const BLAKE_2F: Address = address!("0x0000000000000000000000000000000000000009");
29
30pub const POINT_EVALUATION: Address = address!("0x000000000000000000000000000000000000000a");
32
33pub const BLS12_G1ADD: Address = address!("0x000000000000000000000000000000000000000b");
35
36pub const BLS12_G1MSM: Address = address!("0x000000000000000000000000000000000000000c");
38
39pub const BLS12_G2ADD: Address = address!("0x000000000000000000000000000000000000000d");
41
42pub const BLS12_G2MSM: Address = address!("0x000000000000000000000000000000000000000e");
44
45pub const BLS12_PAIRING_CHECK: Address = address!("0x000000000000000000000000000000000000000f");
47
48pub const BLS12_MAP_FP_TO_G1: Address = address!("0x0000000000000000000000000000000000000010");
50
51pub const BLS12_MAP_FP2_TO_G2: Address = address!("0x0000000000000000000000000000000000000011");
53
54pub const P256_VERIFY: Address = address!("0x0000000000000000000000000000000000000100");
56
57pub const CELO_TRANSFER: Address = address!("0x00000000000000000000000000000000000000fd");
61
62pub const PRECOMPILES: &[Address] = &[
64 EC_RECOVER,
65 SHA_256,
66 RIPEMD_160,
67 IDENTITY,
68 MOD_EXP,
69 EC_ADD,
70 EC_MUL,
71 EC_PAIRING,
72 BLAKE_2F,
73 POINT_EVALUATION,
74 BLS12_G1ADD,
75 BLS12_G1MSM,
76 BLS12_G2ADD,
77 BLS12_G2MSM,
78 BLS12_PAIRING_CHECK,
79 BLS12_MAP_FP_TO_G1,
80 BLS12_MAP_FP2_TO_G2,
81 P256_VERIFY,
82];