You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently each run of the analyzer constructs a table of hashes for the first n storage slots as part of the StorageSlotHashes lifting pass. We should instead make it possible to construct those hashes externally and then pass them in during analyzer construction.
Doing it externally also allows us to construct more hashes, as the time it takes only happens once, rather than on a per-run basis.
Use this in StorageSlotHashes::new to consolidate behavior.
When constructing the inference::Config, construct a custom set of LiftingPasses in the CLI that constructs StorageSlotHashes and passes in (a clone of) the hashes.
Provide this new config when constructing and running the analyzer.
The text was updated successfully, but these errors were encountered:
# Summary
Adds support for external construction of the storage slot hashes
# Details
- Adds a new method to `StorageSlotHashes` so it can be constructed with a predefined BitMap of the hashes.
- Adds a new method to `LiftingPasses` so it can be constructed with a vector of passes
# Checklist
- [x] Code is formatted by Rustfmt.
- [x] Documentation has been updated if necessary.
Fixes#97
Description
Currently each run of the analyzer constructs a table of hashes for the first
n
storage slots as part of theStorageSlotHashes
lifting pass. We should instead make it possible to construct those hashes externally and then pass them in during analyzer construction.Doing it externally also allows us to construct more hashes, as the time it takes only happens once, rather than on a per-run basis.
Spec
StorageSlotHashes::new_with_hashes(hashes: BiMap<U256, usize>) -> Self
.StorageSlotHashes::new
to consolidate behavior.inference::Config
, construct a custom set ofLiftingPasses
in the CLI that constructsStorageSlotHashes
and passes in (a clone of) the hashes.The text was updated successfully, but these errors were encountered: