Expand description
AluVM instruction set architecture
Modules
Structs
- Encoding and overflowing flags for integer numbers
- Reserved instruction, which equal to
ControlFlowOp::Fail
.
Enums
- Arithmetic instructions.
- Bit operations & boolean algebra instructions
- Errors encoding instructions
- Operations on byte strings.
- Instructions comparing register values
- Control-flow instructions
- Operations on Curve25519 elliptic curve
- Flags for bytestring delete operation. For the detailed description please read
crate::isa::BytesOp::Del
. - Cryptographic hashing functions
- Turing machine movement after instruction execution
- Flag for bytestring operations indicating whether the string should be extended to a new length or the operation should fail (for instance, see
fill
operation). - Float equality flag
- Flags for bytestring insert operation. For the detailed description please read
crate::isa::BytesOp::Ins
. - Full set of instructions
- List of standardised ISA extensions.
- Merge flags for operations which need to add certain bit value to the register existing value
- Instructions moving and swapping register values
- Non-equality flag
- Errors for parsing string representation for a flag values
- Instructions setting register values
- Rounding flags for float numbers
- Operations on Secp256k1 elliptic curve
- Integer encoding flag
- Flags for bytestring split operation.
Traits
- Non-failiable byte encoding for the instruction set. We can’t use
io
since (1) we are no_std, (2) it operates data with unlimited length (while we are bound by u16), (3) it provides too many fails in situations when we can’t fail because ofu16
-bounding and exclusive in-memory encoding handling. - Marker trait for flag types
- Trait for instructions