This repository has been archived by the owner on May 11, 2020. It is now read-only.
This repository has been archived by the owner on May 11, 2020. It is now read-only.
Idea:, VMs choose a spec level for run #108
Open
Description
Problem statement: I want to use WebAssembly compliant with specification X.Y.
Suggestion:
- Store spec version the operator was introduced in the
operators.Op
structure, add to existing new*Op() functions - When disassembly happens, opcodes present before the spec version cause an error.
- Change the
ReadModule
orDecodeModule
function to take a new argument representing the spec version.
I don't think the working group are intending on supporting any non-backwards-compatible proposals, but in the event they do, we can load a different vm. method into vm.funcTable
to do the different feature without any performance hit. (that said, this is not likely to ever happen according to the footnote here)
Thoughts?
A good testbed on this might be the sign-extension-ops proposal.
Metadata
Assignees
Labels
No labels
Activity