altos/lisp: Add save/restore infrastructure. Needs OS support to work.
authorKeith Packard <keithp@keithp.com>
Sat, 12 Nov 2016 05:16:09 +0000 (21:16 -0800)
committerKeith Packard <keithp@keithp.com>
Fri, 18 Nov 2016 06:18:39 +0000 (22:18 -0800)
commit0fd008d75ca451ba68ad8ae773ea8a5ebc1785c5
tree98485dc6304efce6c96774613fba5bf352cbd32a
parentc8d2b9acf4b118f36a114de2af4db42ae04426ed
altos/lisp: Add save/restore infrastructure. Needs OS support to work.

This sticks a few globals past the end of the heap and then asks the
OS to save the heap. On restore, the heap is re-populated by the OS
and then various global variables reset.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/lisp/Makefile
src/lisp/ao_lisp.h
src/lisp/ao_lisp_builtin.c
src/lisp/ao_lisp_eval.c
src/lisp/ao_lisp_make_const.c
src/lisp/ao_lisp_save.c [new file with mode: 0644]