-rot, over, tuck

main
Clyne 4 weeks ago
parent 80c0fad017
commit 6149780687
Signed by: clyne
GPG Key ID: 3267C8EBF3F9AFC7

@ -98,7 +98,11 @@ N(drop, "drop", &w_dup) { ++sp; NEXT; }
N(swap, "swap", &w_drop) { tmp = sp[0]; sp[0] = sp[1]; sp[1] = tmp; NEXT; }
N(rot, "rot", &w_swap) { tmp = sp[0]; sp[0] = sp[2]; sp[2] = sp[1];
sp[1] = tmp; NEXT; }
N(peek, "@", &w_rot) { *sp = *(intptr_t *)*sp; NEXT; }
N(mrot, "-rot", &w_rot) { tmp = sp[2]; sp[2] = sp[0]; sp[0] = sp[1];
sp[1] = tmp; NEXT; }
N(over, "over", &w_mrot) { --sp; sp[0] = sp[2]; NEXT; }
W(tuck, "tuck", &w_over) swap, over, END
N(peek, "@", &w_tuck) { *sp = *(intptr_t *)*sp; NEXT; }
N(poke, "!", &w_peek) { *(intptr_t *)sp[0] = sp[1]; sp += 2; NEXT; }
N(cpeek, "c@", &w_poke) { *sp = *(char *)*sp; NEXT; }
N(cpoke, "c!", &w_cpeek) { *(char *)sp[0] = (char)sp[1]; sp += 2; NEXT; }

Loading…
Cancel
Save