This repository has been archived by the owner on Jul 5, 2024. It is now read-only.
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
bus-mapping: Extend CircuitInputBuilder
- CircuitInputBuilder: - Fix `gen_state_access_trace` by splitting the code and address in the context of a call. - Add `codes` field in the CircuitInputBuilder to keep a mapping of code hash -> code. - When doing the `gen_associated_ops` step for opcodes not yet implemented, instead of panic show a log warning, so that we can generate circuit inputs for blocks eventhough the implementation is not complete. This will allow performing integration tests. - Resolve #207 - rpc: - Add `eth_coinbase` and `eth_chainId` methods. - Remove `BlockNumber` in favour of the implementation in `ethers`. - General: - Replace usage of `BlockConstants` by the new struct `ChainConstants`. This way we split constant parameters of the chain into `ChainConstants` and block parameters into `Block`. `BlockConstants` is now only used by the external_tracer. - Move `BlockConstants` from `bus-mapping/src/exec_trace.rs` to `bus-mapping/src/external_tracer.rs`. - Implement the Debug trait for some types manually to make debug output nicer. - Introduce a `circuit_input_builder` integration test with geth. The test builds the circuit inputs for the block where the Greeter.sol contract is deployed, up to step 5 from #222 (whith some missing parts) - Fix `mload` by allowing memory reads at addresses higher than the memory size found in the trace (in such case, a 0 value is read)
- Loading branch information