S13
*prog++ = _insn | IMMED | S13(K); \
*prog++ = OR | IMMED | RS1(G0) | S13(K) | RD(DEST); \
*prog++ = LDPTRI | RS1(BASE) | S13(_off) | RD(DEST); \
*prog++ = LD32I | RS1(BASE) | S13(_off) | RD(DEST); \
*prog++ = LD16I | RS1(BASE) | S13(_off) | RD(DEST); \
*prog++ = LD8I | RS1(BASE) | S13(_off) | RD(DEST); \
do { *prog++ = LD32I | RS1(SP) | S13(BIAS - (OFF)) | RD(DEST); \
do { *prog++ = ST32I | RS1(SP) | S13(BIAS - (OFF)) | RD(SRC); \
*prog++ = (JMPL | IMMED | RS1(BASE) | S13(IMM_OFF) | RD(LREG))
#define emit_write_y(REG) *prog++ = WR_Y | IMMED | RS1(REG) | S13(0)
*prog++ = (SUBCC | IMMED | RS1(R1) | S13(IMM) | RD(G0));
*prog++ = (ANDCC | IMMED | RS1(R1) | S13(IMM) | RD(G0));
*prog++ = (SUB | IMMED | RS1(R1) | S13(IMM) | RD(R3))
*prog++ = (ADD | IMMED | RS1(R1) | S13(IMM) | RD(R3))
*prog++ = (AND | IMMED | RS1(R1) | S13(IMM) | RD(R3))
*prog++ = (SUB | IMMED | RS1(SP) | S13(SZ) | RD(SP))
*prog++ = (ADD | IMMED | RS1(SP) | S13(SZ) | RD(SP))
emit(div | IMMED | RS1(dst) | S13(imm) | RD(tmp), ctx);
emit(MULX | IMMED | RS1(tmp) | S13(imm) | RD(tmp), ctx);
rs2 = S13(off);
rs2 = S13(off);
rs2 = S13(off);
emit(XOR | IMMED | RS1(reg) | S13(lbits) | RD(reg), ctx);
emit(insn | IMMED | S13(imm), ctx);
emit(insn | IMMED | S13(imm), ctx);
emit(OR | IMMED | RS1(G0) | S13(K) | RD(dest), ctx);
emit(OR | IMMED | RS1(G0) | S13(K) | RD(dest), ctx);
emit(OR | IMMED | RS1(G0) | S13(K) | RD(dest), ctx);
emit(OR | IMMED | RS1(dest) | S13(low_imm) | RD(dest), ctx);
emit(OR | IMMED | RS1(G0) | S13(the_const) | RD(dest), ctx);
emit(OR | IMMED | RS1(G0) | S13(fast_int) | RD(dest), ctx);
emit(XOR | IMMED | RS1(dest) | S13(low_bits) | RD(dest), ctx);
#define emit_write_y(REG, CTX) emit(WR_Y | IMMED | RS1(REG) | S13(0), CTX)
emit(SUBCC | IMMED | RS1(R1) | S13(IMM) | RD(G0), CTX)
emit(ANDCC | IMMED | RS1(R1) | S13(IMM) | RD(G0), CTX)
emit(SAVE | IMMED | RS1(SP) | S13(-stack_needed) | RD(SP), ctx);
emit(ST32 | IMMED | RS1(SP) | S13(off) | RD(G0), ctx);
emit(ADD | IMMED | RS1(FP) | S13(STACK_BIAS) | RD(vfp), ctx);
emit(JMPL | IMMED | RS1(I7) | S13(8) | RD(G0), ctx);
emit(LD32 | IMMED | RS1(bpf_array) | S13(off) | RD(tmp), ctx);
emit(LD32 | IMMED | RS1(SP) | S13(off) | RD(tmp), ctx);
emit(ST32 | IMMED | RS1(SP) | S13(off) | RD(tmp), ctx);
emit(LD64 | IMMED | RS1(tmp) | S13(off) | RD(tmp), ctx);
emit(LD64 | IMMED | RS1(tmp) | S13(off) | RD(tmp), ctx);
emit(JMPL | IMMED | RS1(tmp) | S13(off) | RD(G0), ctx);