Mach

Mach is a fast RISC-V instruction encoder and decoder written in portable C. This page runs the decoder entirely in your browser through WebAssembly, so uploaded binaries never leave your device. The following ISA bases and extensions are implemented:

View all 52 supported ISA features
feature version status
RV32I2.1complete
RV64I2.1complete
A2.1complete
Zalrsc1.0complete
Zaamo1.0complete
B1.0complete
C2.0complete
D2.2complete
F2.2complete
H1.0complete
K1.0.1complete
M2.0complete
N1.1legacy1
Q2.2complete
S1.13complete
V1.0complete
Ssctr1.0complete
Sstc1.0complete
XTheadBa1.0complete
XTheadCondMov1.0complete
Zabha1.0complete
Zacas1.0complete
Zalasr1.0complete
Zawrs1.0complete
Zcb1.0complete
Zclsd1.0complete
Zcmop1.0complete
Zcmp1.0complete
Zcmt1.0complete
Zfa1.0complete
Zfbfmin1.0complete
Zfh1.0complete
Zfhmin1.0complete
Zicbom1.0complete
Zicbop1.0complete
Zicboz1.0complete
Zicfilp1.0complete
Zicfiss1.0complete
Zicntr2.0complete
Zicond1.0complete
Zicsr2.0complete
Zifencei2.0complete
Zihintntl1.0complete
Zihintpause2.0complete
Zihpm2.0complete
Zilsd1.0complete
Zimop1.0complete
Zvbb1.0complete
Zvbc1.0complete
Zvfbfmin1.0complete
Zvfbfwma1.0complete
Zvkn1.0complete

1 N 1.1 is the legacy user-level interrupt extension, retained for compatibility.


loading wasm
instructions decode time throughput decoded
- - - -

loading examples... waiting for Mach... -

drop a RISC-V binary here
ELF32, ELF64, or a raw little-endian instruction stream