Crate evmil

source ·

Modules

  • Functionality related to the analysis (or execution) of bytecode contracts. Using this module we can, for example, extract the control-flow graph of a legacy contract. We can also write arbitrary dataflow analyses which operate over bytecode contracts (e.g. for constant propagation).
  • Functionality for working with bytecode contracts. This includes support for assembling contracts written in assembly language into bytecode.
  • Functionality related to distinguishing different forks of the EVM. This includes mechanisms for identifying what EIPs are active in the current execution.
  • A low-level intermediate language which has close correspondence with bytecode.
  • Various utilities required by other modules.