cm.pop

Destroys a stack frame: load `ra` and 0 to 12 saved registers from the stack frame, deallocate the stack frame. This instruction pops (loads) the registers in `reg_list` from stack memory, and then adjusts the stack pointer by `stack_adj`. Restrictions on stack_adj: * it must be enough to store all of the listed registers * it must be a multiple of 16 (bytes): ** for RV32 the allowed values are: 16, 32, 48, 64, 80, 96, 112 ** for RV64 the allowed values are: 16, 32, 48, 64, 80, 96, 112, 128, 144, 160

Synopsis

cm.pop reg_list, stack_adj

Encoding

Type:

01234781510spimmrlist10111010
funct7: 1011101

RISC-V Instruction Encoder/Decoder

open cm.pop in rvcodecjs

Availability