Get the latest tech news

The Sail instruction-set semantics specification language


Introduction Sail is a language for expressing the instruction-set architecture (ISA) semantics of processors. Vendor architecture specification documents typically describe the sequential behaviour of their ISA with a combination of prose, tables, and pseudocode for each instruction.

The method like accessor syntax was (overly sweet) syntactic sugar for getter and setter functions following a specific naming convention that was generated by the bitfield. Mappings are a feature of Sail that allow concise expression of bidirectional relationships between values that are common in ISA specifications: for example, bit-representations of an enum type, or the encoding-decoding of instructions. However, all the constraint and sizeof definitions must be re-written to produce executable code, which can result in the generated theorem prover output diverging (in appearance) somewhat from the source input.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of sail

sail

Photo of Sail instruction

Sail instruction

Related news:

News photo

British naval dominance during the age of sail

News photo

Beer on Board in the Age of Sail (2017)

News photo

Netflix’s new animated Witcher spinoff movie sets sail this February