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

Add debug post-conditions for Wasmi translation #1209

Open
Robbepop opened this issue Sep 30, 2024 · 1 comment · May be fixed by #1233
Open

Add debug post-conditions for Wasmi translation #1209

Robbepop opened this issue Sep 30, 2024 · 1 comment · May be fixed by #1233

Comments

@Robbepop
Copy link
Member

Robbepop commented Sep 30, 2024

In order to improve fuzzing and Wasmi translation stability we should add more post-condition checks to the Wasmi translator.

The reason is that the Wasmi translator has pre-condition checking in the form of wasmparser's Wasm validation but lacks its own post-conditions to verify for debug builds that the Wasmi bytecode it produced aligns with the invariants that it guarantees to its users, i.e. the Wasmi executor.

Those invariants are ciritcal to the correctness of the Wasmi executor since it fully relies on them.

This issue tracks progress of the implementation and lists the concrete conditions that we plan to implement.

The listed post-conditions are checked after function translation has already finished. So they are used to detect bugs in the Wasmi translator more easily.

Post-Conditions

#1233 (comment)

@Robbepop Robbepop changed the title A debug post-conditions for Wasmi translation Add debug post-conditions for Wasmi translation Sep 30, 2024
@Robbepop Robbepop linked a pull request Oct 8, 2024 that will close this issue
8 tasks
@Robbepop
Copy link
Member Author

Robbepop commented Oct 8, 2024

Started implementation here: #1233

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

Successfully merging a pull request may close this issue.

1 participant