Crate openvm_deferral_guest

Crate openvm_deferral_guest 

Source

Structs§

OutputKey
Key for looking up raw output.

Enums§

DeferralImmOpcode
Deferral sub-opcode encoded in immediate low bits

Constants§

COMMIT_NUM_BYTES
Number of bytes in a commit, used as identifiers for raw deferral inputs/outputs
DEFERRAL_FUNCT3
All deferral operations use funct3 0b111
DEFERRAL_OPCODE_BITS
Low bits in immediate used to pick deferral sub-opcode
MAX_DEF_CIRCUITS
Maximum number of deferral circuits, as constrained in the deferrals part of the continuations framework. Note that each deferral instruction stores its deferral idx in the most significant 10 bits of the immediate field.
OPCODE
This is custom-1 defined in RISC-V spec document

Functions§

deferred_compute
Execute a deferral call for a compile-time deferral index
deferred_compute_raw
Execute a deferral call for a compile-time deferral index using raw pointers
encode_deferral_imm
Encode deferral immediate as [def_idx(10 bits) | opcode(2 bits)]
get_deferred_output
Retrieve deferral output for a compile-time deferral index into a caller-provided buffer
get_deferred_output_raw
Retrieve deferral output for a compile-time deferral index using raw pointers

Type Aliases§

Commit
Commit type use as a raw deferral input/output identifier