E-Ink News Daily

← Back to list

Reverse-Engineering Instruction Encodings (2001)

This 2001 USENIX paper introduces DERIVE, a tool that automatically reverse-engineers machine instruction encodings by feeding permutations into an assembler and analyzing the resulting binary output. It solved the entire MIPS, SPARC, Alpha, and PowerPC instruction sets, plus nearly all of ARM and x86, producing C declarations usable by disassemblers, JITs, and code rewriters.

Background

Binary analysis tools require accurate instruction encodings to function correctly. Manually writing encodings is tedious and error-prone, especially for complex ISAs like x86. DERIVE pioneered an automated approach using assembler-driven feedback to extract bit-level encodings.

Source
Lobsters
Published
Oct 26, 2026 at 05:58 AM
Score
5.0 / 10