Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core/vm: optimize interpreter by wrapping instructions #476

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Commits on Jul 8, 2024

  1. core/vm: add wrapper functions for all opcodes, all versions

    - for each opcode and each version, assign corresponding wrapper based on the version and opcodeName
    - vm/jump_table/ExportInstructionSet: export instruction set attributes based on input version for generating codes, including unsupported instructions of different versions for dummy wrappers
    - vm/interpreter: if not debug mode, call wrapper instead of execute opcodes directly
    Francesco4203 committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    5d400f1 View commit details
    Browse the repository at this point in the history
  2. WrapperCodeGenerator: add script for generating wrappers

    - ExportInstructionSet: export instruction set based on input version to json
    - ImportInstructionSet: import instruction set from json
    - OpCodeWrapperGenerator: generate wrappers for an instruction set
    Francesco4203 committed Jul 8, 2024
    Configuration menu
    Copy the full SHA
    ec0f76f View commit details
    Browse the repository at this point in the history