epsilon-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[epsilon-devel] [Jitter] New stack operations


From: Luca Saiu
Subject: [epsilon-devel] [Jitter] New stack operations
Date: Sun, 17 Feb 2019 17:32:57 +0100
User-agent: Gnus (Gnus v5.13), GNU Emacs 25.1.50.2, x86_64-unknown-linux-gnu

Hello.

I have just finished implementing some stack operations requested by
José, plus a few more.

Jitter now supports roll and its obvious variant -roll (-roll is to roll
what -rot is to rot), rot, -rot, set-at-depth, set-at-nonzero-depth, and
reverse (the reverse operation reverses the order of the topmost n
element of a stack).

All the operations work on both TOS-optimized and non-TOS-optimized
stacks, and are accessible from user macros to be used in instructions.

I have added such instructions to the Uninspired VM, along with a few
instructions useful for debugging stack code.

roll, -roll and reverse are meant to be used only with small constant
arguments, at least in production where efficiency matters: they all
require O(n) memory accesses.

As usual, the commits are in the jitterlisp branch on
  http://ageinghacker.net/git/cgit.cgi/jitter/log/?h=jitterlisp
.

Expect my writeup about the new Structured compiler soon.

Regards,

-- 
Luca Saiu
* GNU epsilon:           http://www.gnu.org/software/epsilon
* My personal web site:  http://ageinghacker.net

I support everyone's freedom of mocking any opinion or belief, no
matter how deeply held, with open disrespect and the same unrelented
enthusiasm of a toddler who has just learned the word "poo".

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]