-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Winch Core Wasm Opcode Support #6528
Copy link
Copy link
Closed
Labels
winchWinch issues or pull requestsWinch issues or pull requests
Description
During the debugging meeting on June 1, 2023, we discussed opening an issue to track the missing Core Wasm opcodes in Winch. The objective of this issue is to make it easier for potential contributors to know where to start.
This list is intended to be a comprehensive compilation of the missing opcodes required to achieve parity with Core Wasm(*). Each entry also includes an owner, indicating that work on a particular opcode is currently in progress.
(*) Excluding SIMD and Reference Types to start, as drafted in the initial RFC. We can open dedicated issues as we get to those and other proposals.
- Unreachable (@saulecabrera)
- Block (@saulecabrera)
- Loop (@saulecabrera)
- If (@saulecabrera)
- Else, (@saulecabrera)
- Br (@saulecabrera)
- BrIf (@saulecabrera)
- Return (@saulecabrera)
- CallIndirect (@saulecabrera)
- BrTable (@saulecabrera)
- Drop (@saulecabrera)
- Select (@saulecabrera)
- LocalTee (@saulecabrera)
- GlobalGet (@saulecabrera)
- GlobalSet (@saulecabrera)
- I32Load (@saulecabrera)
- I64Load (@saulecabrera)
- F32Load (@saulecabrera)
- F64Load (@saulecabrera)
- I32Load8S (@saulecabrera)
- I32Load8U (@saulecabrera)
- I32Load16S (@saulecabrera)
- I32Load16U (@saulecabrera)
- I64Load8S (@saulecabrera)
- I64Load8U (@saulecabrera)
- I64Load16S (@saulecabrera)
- I64Load16U (@saulecabrera)
- I64Load32S (@saulecabrera)
- I64Load32U (@saulecabrera)
- I32Store (@saulecabrera)
- I64Store (@saulecabrera)
- F32Store (@saulecabrera)
- F64Store (@saulecabrera)
- I32Store8 (@saulecabrera)
- I32Store16 (@saulecabrera)
- I64Store8 (@saulecabrera)
- I64Store16 (@saulecabrera)
- I64Store32 (@saulecabrera)
- MemorySize (@saulecabrera)
- MemoryGrow (@saulecabrera)
- F32Const (@saulecabrera)
- F64Const (@saulecabrera)
- F32Eq (@jeffcharles)
- F32Ne(@jeffcharles)
- F32Lt(@jeffcharles)
- F32Gt(@jeffcharles)
- F32Le(@jeffcharles)
- F32Ge(@jeffcharles)
- F64Eq(@jeffcharles)
- F64Ne(@jeffcharles)
- F64Lt(@jeffcharles)
- F64Gt(@jeffcharles)
- F64Le(@jeffcharles)
- F64Ge(@jeffcharles)
- I32Clz (@jeffcharles)
- I32Ctz (@jeffcharles)
- I32Popcnt (@itsrainy)
- I32And (@jeffcharles)
- I32Or (@jeffcharles)
- I32Xor (@jeffcharles)
- I32Shl (@jeffcharles)
- I32ShrS (@jeffcharles)
- I32ShrU (@jeffcharles)
- I32Rotl (@jeffcharles)
- I32Rotr (@jeffcharles)
- I64Clz (@jeffcharles)
- I64Ctz (@jeffcharles)
- I64Popcnt (@itsrainy)
- I64And (@jeffcharles)
- I64Or (@jeffcharles)
- I64Xor (@jeffcharles)
- I64Shl (@jeffcharles)
- I64ShrS (@jeffcharles)
- I64ShrU (@jeffcharles)
- I64Rotl (@jeffcharles)
- I64Rotr (@jeffcharles)
- F32Abs (@elliottt)
- F32Neg (@elliottt)
- F32Ceil (@elliottt)
- F32Floor (@elliottt)
- F32Trunc (@elliottt)
- F32Nearest (@elliottt)
- F32Sqrt (@jeffcharles)
- F32Add (@jeffcharles)
- F32Sub (@jeffcharles)
- F32Mul (@jeffcharles)
- F32Div (@jeffcharles)
- F32Min (@jeffcharles)
- F32Max (@jeffcharles )
- F32Copysign (@jeffcharles)
- F64Abs (@elliottt)
- F64Neg (@elliottt)
- F64Ceil (@elliottt)
- F64Floor (@elliottt)
- F64Trunc (@elliottt)
- F64Nearest (@elliottt)
- F64Sqrt (@jeffcharles)
- F64Add (@jeffcharles)
- F64Sub (@jeffcharles)
- F64Mul (@jeffcharles)
- F64Div (@jeffcharles)
- F64Min (@jeffcharles)
- F64Max (@jeffcharles)
- F64Copysign (@jeffcharles)
- I32WrapI64 (@jeffcharles)
- I32TruncF32S (@jeffcharles)
- I32TruncF32U (@jeffcharles)
- I32TruncF64S (@jeffcharles)
- I32TruncF64U (@jeffcharles)
- I64ExtendI32S(@jeffcharles)
- I64ExtendI32U(@jeffcharles)
- I64TruncF32S (@jeffcharles)
- I64TruncF32U (@jeffcharles)
- I64TruncF64S (@jeffcharles)
- I64TruncF64U (@jeffcharles)
- F32ConvertI32S (@jeffcharles)
- F32ConvertI32U (@jeffcharles)
- F32ConvertI64S (@jeffcharles)
- F32ConvertI64U (@jeffcharles)
- F32DemoteF64 (@jeffcharles)
- F64ConvertI32S (@jeffcharles)
- F64ConvertI32U (@jeffcharles)
- F64ConvertI64S (@jeffcharles)
- F64ConvertI64U (@jeffcharles)
- F64PromoteF32 (@jeffcharles)
- I32ReinterpretF32 (@jeffcharles)
- I64ReinterpretF64 (@jeffcharles)
- F32ReinterpretI32 (@jeffcharles)
- F64ReinterpretI64 (@jeffcharles)
- I32Extend8S(@jeffcharles)
- I32Extend16S (@jeffcharles)
- I64Extend8S(@jeffcharles)
- I64Extend16S(@jeffcharles)
- I64Extend32S(@jeffcharles)
- MemoryInit (@saulecabrera)
- DataDrop (@saulecabrera)
- MemoryCopy (@saulecabrera)
- MemoryFill (@saulecabrera)
- TableInit (@saulecabrera)
- ElemDrop (@saulecabrera)
- TableFill (@saulecabrera)
- TableCopy (@saulecabrera)
- TableGet (@saulecabrera)
- TableSet (@saulecabrera)
- TableGrow (@saulecabrera)
- TableSize (@saulecabrera)
Proposals
- Multi-Value (@saulecabrera)
- Functions
- Blocks
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
winchWinch issues or pull requestsWinch issues or pull requests