Cargo Features
[dependencies]
revm-precompile = { version = "31.0.0", default-features = false, features = ["std", "hashbrown", "asm-keccak", "asm-sha2", "c-kzg", "portable", "secp256k1", "blst", "bn", "gmp"] }
- default = blst, c-kzg, portable, secp256k1, std
-
These default features are set whenever
revm-precompileis added withoutsomewhere in the dependency tree.default-features = false - std default
-
Enables std of ark-bls12-381
Use the BLS12-381 implementation of arkworks for EIP2537
and std of aurora-engine-modexp
modexp precompiles
ecRecover
p256verify precompile
SHA2-256 and RIPEMD-160
and std of revm-primitives and ripemd
revm-primitives:
revm
and std of ark-bn254, ark-ec, ark-ff, ark-serialize, and ark-std
ark-bn254:
Use arkworks implementation for eip1962
KZG point evaluation precompile
and std of optional rug and optional secp256k1
rug:
gmp wrapper
- hashbrown
-
Enables hashbrown of revm-primitives
- asm-keccak
-
Enables asm-keccak of revm-primitives
- asm-sha2
- c-kzg default
-
Enables the c-kzg point evaluation precompile. Enabled by default as most stable/used implementation.
Enables c-kzg
- portable default
-
Compile in portable mode, without ISA extensions.
Binary can be executed on all systems.Enables portable of optional blst and optional c-kzg
blst:
Use the BLS12-381 implementation of blst for EIP2537
- secp256k1 default
-
Use
secp256k1as a faster alternative tok256. The problem thatsecp256k1has is it fails to build forwasmtarget on Windows and Mac as it is c lib. In Linux it passes. If you don't require to build wasm on win/mac, it is safe to use it and it is enabled by default.Enables secp256k1
Affects
secp256k1::bitcoin_secp256k1… - blst default
-
Enables the blst implementation of the BLS12-381 precompile.
Enables blst
Affects
kzg_point_evaluation::blst… - bn
-
Enables the substrate implementation of eip1962
Enables substrate-bn
Optionally use substrate implementation for eip1962
- gmp
-
Use rug (that wraps gmp) for modexp precompile.
It is faster library but licences as GPL code, if enabled please make sure to follow the license.Enables rug