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

Webassembly 2.0 support: part 1 #149

Merged
merged 75 commits into from
Sep 24, 2022
Merged

Conversation

malcolmstill
Copy link
Owner

@malcolmstill malcolmstill commented Sep 4, 2022

Description

Part 1 of adding WebAssembly 2.0 support:

  • reference types
  • table instructions
  • multiple tables
  • bulk memory / table instructions

Follow ups

  • I will add support for vector / SIMD in a second PR
  • The bulk memory / table operations are only functionally correct (using existing functions). These should be optimised to only perform a single check then perform the writes rather than a check for each write

@malcolmstill malcolmstill changed the title Copy in WebAssembly/testsuite e25ae159357c055b3a6fac99043644e208d26d2a Update Webassembly/testsuite Sep 4, 2022
@malcolmstill malcolmstill force-pushed the malcolm/testsuite-update branch from 19e87cc to e1c5bdf Compare September 4, 2022 18:41
- The element section if backwards compatible, so take the code
  after reading the table index and put that in a case for elem
  type 0
- All other elem types not yet implemented
- Adds RefType and NumType enums and expands ValueType
@malcolmstill malcolmstill force-pushed the malcolm/testsuite-update branch from 2c24759 to 8344d85 Compare September 4, 2022 22:30
@malcolmstill malcolmstill changed the title Update Webassembly/testsuite Webassembly 2.0 support: part 1 Sep 24, 2022
@malcolmstill malcolmstill merged commit 7c9ea5a into master Sep 24, 2022
@malcolmstill malcolmstill deleted the malcolm/testsuite-update branch September 24, 2022 14:14
@malcolmstill malcolmstill mentioned this pull request Sep 24, 2022
2 tasks
@malcolmstill
Copy link
Owner Author

Note: 7c9ea5a (this PR) currently is 30% slower for fib(39) than 20b456d (the commit preceding this PR).

The WebAssembly 2.0 features should not have much effect on fib...I wonder if the slow down is due to poorer code generation (maybe from the large misc handler?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant