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

Refactor store frame information. #2811

Merged

Commits on Apr 7, 2021

  1. Refactor store frame information.

    This commit refactors the store frame information to eliminate the copying of
    data out from `CompiledModule`.
    
    It also moves the population of a `BTreeMap` out of the frame information and
    into `CompiledModule` where it is only ever calculated once rather than at
    every new module instantiation into a `Store`. The map is also lazy-initialized
    so the cost of populating the map is incurred only when a trap occurs.
    
    This should help improve instantiation time of modules with a large number of
    functions and functions with lots of instructions.
    peterhuene committed Apr 7, 2021
    Configuration menu
    Copy the full SHA
    875cb92 View commit details
    Browse the repository at this point in the history
  2. Code review feedback.

    * Remove `once-cell` dependency.
    * Remove function address `BTreeMap` from `CompiledModule` in favor of binary
      searching finished functions directly.
    * Use `with_capacity` when populating `CompiledModule` finished functions and
      trampolines.
    peterhuene committed Apr 7, 2021
    Configuration menu
    Copy the full SHA
    ad9fa11 View commit details
    Browse the repository at this point in the history