Previous: Branch Instructions, Up: Instruction Set [Contents][Index]
Bytevector operations correspond closely to what the current hardware can do, so it makes sense to inline them to VM instructions, providing a clear path for eventual native compilation. Without this, Scheme programs would need other primitives for accessing raw bytes – but these primitives are as good as any.
Fetch the item at byte offset idx from the raw pointer local ptr, and store it in dst. All accesses use native endianness.
The idx value should be an unboxed unsigned 64-bit integer.
The results are all written to the stack as unboxed values, either as signed 64-bit integers, unsigned 64-bit integers, or IEEE double floating point numbers.
Store val into memory pointed to by raw pointer local ptr, at byte offset idx. Multibyte values are written using native endianness.
The idx value should be an unboxed unsigned 64-bit integer.
The val values are all unboxed, either as signed 64-bit integers, unsigned 64-bit integers, or IEEE double floating point numbers.
Previous: Branch Instructions, Up: Instruction Set [Contents][Index]