bytecodealliance / bytecodealliance/wasmtime
ISLE: add functional tests to DSL
- Dominant language
- Rust
- Stars
- 18.6k
- Forks
- 1.8k
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 121
Description
While discussing the ISLE compiler and the backend-verification project with @avanhatt and others today, the point arose that we don't actually have functional tests for ISLE in isolation; rather, Cranelift itself is our "testsuite". We do test that the ISLE compiler accepts some "good" inputs, rejects some "bad" inputs, and produces buildable and linkable Rust code for other inputs, but we never run that code with test values.
We should add tests that check various basic aspects of functionality, like rule prioritization, invocation of chains of rules, correct pattern-matching and destructuring, and the like. This will be especially useful if/when we improve the ISLE compiler with more advanced optimizations, like inlining, trie reordering, or the like.
Contributor guide
Assessment
This issue has not been assessed yet.