Skip to main content

wave_decode/
lib.rs

1// Copyright 2026 Ojima Abraham
2// SPDX-License-Identifier: Apache-2.0
3
4//! Shared instruction decoder for the WAVE ISA. Provides opcode definitions,
5//!
6//! instruction decoding from binary to structured types, and WBIN container
7//! format parsing. Used by wave-dis and wave-emu.
8
9pub mod decoder;
10pub mod instruction;
11pub mod opcodes;
12pub mod wbin;
13
14pub use decoder::{decode_all, decode_at, DecodeError, Decoder};
15pub use instruction::{DecodedInstruction, Operation};
16pub use opcodes::{
17    special_register_name, AtomicOp, BitOpType, CmpOp, ControlOp, CvtType, F16Op, F16PackedOp,
18    F64DivSqrtOp, F64Op, FUnaryOp, MemWidth, MiscOp, Opcode, Scope, SyncOp, WaveOpType,
19    WaveReduceType, SPECIAL_REGISTER_NAMES,
20};
21pub use wbin::{KernelInfo, WbinError, WbinFile, WbinHeader, WBIN_MAGIC, WBIN_VERSION};