-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Tracking issue for the Cranelift CLIF-level differential fuzzer #3050
Copy link
Copy link
Open
Labels
craneliftIssues related to the Cranelift code generatorIssues related to the Cranelift code generatorfuzzingIssues related to our fuzzing infrastructureIssues related to our fuzzing infrastructure
Description
In #3038 we introduced the initial version of the Cranelift CLIF-level differential fuzzer.
This fuzzer generates CLIF modules that are run on the interpreter and subsequently on the host machine (assuming no traps / invalid memory accesses) comparing the outputs of each run.
Roadmap:
- Initial introduction (Cranelift CLIF-level differential fuzzer #3038)
- Generating test inputs with control flow
- Generate multiple blocks and basic jump instructions (Cranelift CLIF Fuzzer generate blocks and branches #3094)
- Generate
br_table's and other jump table jumps (Cranelift CLIF Fuzzer add jump tables andbr_table#3299)
- Generating memory loads/stores
- Stack
- Interpreter Support (cranelift: Add stack support to the interpreter with virtual addresses #3187)
- Fuzzer Support (fuzzgen: Generate stack load/store instructions #4438)
- Heap
- Interpreter Support (cranelift: Add heap support to the interpreter #3302)
- Fuzzer Support
- Table
- Interpreter Support (cranelift: Implement
table_addrin interpreter #4433) - Fuzzer Support
- Interpreter Support (cranelift: Implement
- Symbols
- Interpreter Support
- Fuzzer Support
- Others
- Cross endianness loads/stores
-
notrapMemFlags -
alignedMemFlags -
readonlyMemFlags
- Stack
- Generating calls
- Generating LibCall's (cranelift: Add LibCalls to the interpreter #4782)
- Generating Function Calls
- Indirect Function Calls
- Full coverage of arithmetic ops
- Extend the codegen in the
cranelift-metacrate to provide a table of acceptable opcodes and types
- Extend the codegen in the
- Full coverage of SIMD ops
- Misc
- Add
SourceLocto instructions - Add ValueLabels to instructions
- Add
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
craneliftIssues related to the Cranelift code generatorIssues related to the Cranelift code generatorfuzzingIssues related to our fuzzing infrastructureIssues related to our fuzzing infrastructure