Expand description
§AARCHMRS dataset as Rust code
This Rust library provides functionality for synthesizing ARM64 instruction encodings. It was derived from the Arm Limited’s AARCHMRS dataset.
The crate’s module structure follows the dataset tree structure. For each instruction variant described in the dataset, a corresponding Rust function is generated.
The source code of this crate is generated by tools at the same repository at https://github.com/monoid/harm.
As with the original dataset, this code is licensed under BSD-3-Clause license.
§Features
As of 2025-06, the dataset contains descriptions for A64, A32 and T32 instructions sets.
They are guarded by respective feature flags (A64, A32 and T32), and a64 is default.
The meta flag generates additional information for each instructions.
§Regenerating dataset
To regenerate the code, use the aarchmrs-generate binary. The dataset URL and
MD5 checksum are pinned in the aarchmrs-gen crate.
cargo run -p aarchmrs-generate -- \
--doc-file ./aarchmrs-instructions/README.md \
./aarchmrs-instructions/srcPlease, run cargo fmt afterwards.