We should investigate how many times precompile functions are used in the current mainnet contracts, and how many transactions have interacted with the current contracts.
Solution
Disassemble contracts bytecode to find out calls to the 0x167, fetch the contract results for these contracts, and get the calls generated in the fetched transactions.
First part:
fetch all contracts on mainnet
disassemble their bytecode, look up for call, staticcall, delegatecall against 0x167 and list how many times each precompile function is used
Second part:
fetch all transactions that have interacted with these contracts
get their calls via MAPI /contracts/results/<tx_hash>/actions
@natanasow this was a great effort.
What's the next steps.
I would suggest
Paste the README result into this ticket for reference even if that branch gets deleted
Open a PR for any changes to existing tools you had to make
Open tickets capturing any features not supported that you had to hack together so that in future we don't have to hack anything together and we can just rerun checked in steps
Problem
We should investigate how many times precompile functions are used in the current mainnet contracts, and how many transactions have interacted with the current contracts.
Solution
Disassemble contracts bytecode to find out calls to the 0x167, fetch the contract results for these contracts, and get the calls generated in the fetched transactions.
First part:
call
,staticcall
,delegatecall
against 0x167 and list how many times each precompile function is usedSecond part:
/contracts/results/<tx_hash>/actions
Alternatives
No response