function assumeNotPrecompile(address addr) public;
function assumeNotPrecompile(address addr, uint256 chainid) public;
Uses assume
to filter precompile addresses from the fuzz tests.
Optionally, a chainid
may be specified to filter known precompiles on the respective chain.
These are all the precompile addresses known to the assumeNotPrecompile
functions.
Chain ID | Address | Name |
---|---|---|
ALL | 0x01 |
ECRecover |
ALL | 0x02 |
SHA-256 |
ALL | 0x03 |
RIPEMD-160 |
ALL | 0x04 |
Identity |
ALL | 0x05 |
ModExp |
ALL | 0x06 |
ECAdd |
ALL | 0x07 |
ECMul |
ALL | 0x08 |
ECPairing |
ALL | 0x09 |
Blake2F |
ALL | 0x0a |
PointEvaluation |
10, 420 | 0x4200000000000000000000000000000000000016 |
L2ToL1MessagePasser |
10, 420 | 0x4200000000000000000000000000000000000002 |
DeployerWhitelist |
10, 420 | 0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000 |
LegacyERC20ETH |
10, 420 | 0x4200000000000000000000000000000000000006 |
WETH9 |
10, 420 | 0x4200000000000000000000000000000000000007 |
L2CrossDomainMessenger |
10, 420 | 0x4200000000000000000000000000000000000010 |
L2StandardBridge |
10, 420 | 0x4200000000000000000000000000000000000011 |
SequencerFeeVault |
10, 420 | 0x4200000000000000000000000000000000000012 |
OptimismMintableERC20Factory |
10, 420 | 0x4200000000000000000000000000000000000013 |
L1BlockNumber |
10, 420 | 0x420000000000000000000000000000000000000F |
GasPriceOracle |
10, 420 | 0x4200000000000000000000000000000000000015 |
L1Block |
10, 420 | 0x4200000000000000000000000000000000000042 |
GovernanceToken |
10, 420 | 0x4200000000000000000000000000000000000000 |
LegacyMessagePasser |
10, 420 | 0x4200000000000000000000000000000000000014 |
L2ERC721Bridge |
10, 420 | 0x4200000000000000000000000000000000000017 |
OptimismMintableERC721Factory |
10, 420 | 0x4200000000000000000000000000000000000018 |
ProxyAdmin |
42161, 421613 | 0x0000000000000000000000000000000000000064 |
ArbSys |
42161, 421613 | 0x000000000000000000000000000000000000006E |
ArbRetryableTx |
42161, 421613 | 0x000000000000000000000000000000000000006C |
ArbGasInfo |
42161, 421613 | 0x0000000000000000000000000000000000000066 |
ArbAddressTable |
42161, 421613 | 0x000000000000000000000000000000000000006F |
ArbStatistics |
42161, 421613 | 0x00000000000000000000000000000000000000C8 |
NodeInterface |
42161, 421613 | 0x0000000000000000000000000000000000000067 |
ArbBLS |
42161, 421613 | 0x0000000000000000000000000000000000000065 |
ArbInfo |
42161, 421613 | 0x000000000000000000000000000000000000006D |
ArbAggregator |
42161, 421613 | 0x0000000000000000000000000000000000000068 |
ArbFunctionTable |
433114, 43113 | 0x0200000000000000000000000000000000000000 |
ContractDeployerAllowListAddress |
433114, 43113 | 0x0200000000000000000000000000000000000001 |
ContractNativeMinterAddress |
433114, 43113 | 0x0200000000000000000000000000000000000002 |
TxAllowListAddress |
433114, 43113 | 0x0200000000000000000000000000000000000003 |
FeeConfigManagerAddress |
ALL | 0x4e59b44847b379578588920cA78FbF26c0B4956C |
(Foundry) Create2Deployer |
ALL | 0x7109709ECfa91a80626fF3989D68f67F5b1DD12D |
(Foundry) VM |
ALL | 0x000000000000000000636F6e736F6c652e6c6f67 |
(Foundry) Console |
Some chains also include reserved ranges for precompile contracts.
Chain ID | Start | Stop |
---|---|---|
ALL | 0x00 |
0xff |
433114, 43113 | 0x0100000000000000000000000000000000000000 |
0x01000000000000000000000000000000000000ff |
433114, 43113 | 0x0200000000000000000000000000000000000000 |
0x02000000000000000000000000000000000000ff |
433114, 43113 | 0x0300000000000000000000000000000000000000 |
0x03000000000000000000000000000000000000ff |