Add SSVM supported - ParaState/frontier GitHub Wiki

Here we will show you how we extend frontier to support EWASM use SSVM (one of the best EWASM engines).

  1. Rename EVM prefix folder to vm, make it as an abstraction general layer.
  2. Add rust-ssvm to pallet-vm layer and make the architecture is compatible with EVM supported only.
  3. Add EWASM erc20 test.
  4. Deposit event with polkadot.js supported types.
    1. Remapping between EVMC status code and EVM exit reason.
    2. Migrate ExtendExitReason to ExitReason before deposit event to UI.

Below two figures will show the dependency diagram in before and after.

  • Original EVM supported only dependency architecture link

preview

  • SSVM supported dependency architecture link

preview