altos/lisp: Cache freed cons and stack items
[fw/altos] / src / lisp / ao_lisp_make_const.c
index 6a29f402d263cfbe5e11ae478089cb8440c1b9ce..178b041efbc5773d3457f81724ac842ba55b7966 100644 (file)
@@ -33,42 +33,42 @@ struct builtin_func {
 };
 
 struct builtin_func funcs[] = {
-       "eval",         AO_LISP_FUNC_LAMBDA,    builtin_eval,
-       "read",         AO_LISP_FUNC_LAMBDA,    builtin_read,
+       "eval",         AO_LISP_FUNC_F_LAMBDA,  builtin_eval,
+       "read",         AO_LISP_FUNC_F_LAMBDA,  builtin_read,
        "lambda",       AO_LISP_FUNC_NLAMBDA,   builtin_lambda,
        "lexpr",        AO_LISP_FUNC_NLAMBDA,   builtin_lexpr,
        "nlambda",      AO_LISP_FUNC_NLAMBDA,   builtin_nlambda,
        "macro",        AO_LISP_FUNC_NLAMBDA,   builtin_macro,
-       "car",          AO_LISP_FUNC_LAMBDA,    builtin_car,
-       "cdr",          AO_LISP_FUNC_LAMBDA,    builtin_cdr,
-       "cons",         AO_LISP_FUNC_LAMBDA,    builtin_cons,
-       "last",         AO_LISP_FUNC_LAMBDA,    builtin_last,
-       "length",       AO_LISP_FUNC_LAMBDA,    builtin_length,
+       "car",          AO_LISP_FUNC_F_LAMBDA,  builtin_car,
+       "cdr",          AO_LISP_FUNC_F_LAMBDA,  builtin_cdr,
+       "cons",         AO_LISP_FUNC_F_LAMBDA,  builtin_cons,
+       "last",         AO_LISP_FUNC_F_LAMBDA,  builtin_last,
+       "length",       AO_LISP_FUNC_F_LAMBDA,  builtin_length,
        "quote",        AO_LISP_FUNC_NLAMBDA,   builtin_quote,
-       "set",          AO_LISP_FUNC_LAMBDA,    builtin_set,
+       "set",          AO_LISP_FUNC_F_LAMBDA,  builtin_set,
        "setq",         AO_LISP_FUNC_MACRO,     builtin_setq,
        "cond",         AO_LISP_FUNC_NLAMBDA,   builtin_cond,
        "progn",        AO_LISP_FUNC_NLAMBDA,   builtin_progn,
        "while",        AO_LISP_FUNC_NLAMBDA,   builtin_while,
-       "print",        AO_LISP_FUNC_LEXPR,     builtin_print,
-       "patom",        AO_LISP_FUNC_LEXPR,     builtin_patom,
-       "+",            AO_LISP_FUNC_LEXPR,     builtin_plus,
-       "-",            AO_LISP_FUNC_LEXPR,     builtin_minus,
-       "*",            AO_LISP_FUNC_LEXPR,     builtin_times,
-       "/",            AO_LISP_FUNC_LEXPR,     builtin_divide,
-       "%",            AO_LISP_FUNC_LEXPR,     builtin_mod,
-       "=",            AO_LISP_FUNC_LEXPR,     builtin_equal,
-       "<",            AO_LISP_FUNC_LEXPR,     builtin_less,
-       ">",            AO_LISP_FUNC_LEXPR,     builtin_greater,
-       "<=",           AO_LISP_FUNC_LEXPR,     builtin_less_equal,
-       ">=",           AO_LISP_FUNC_LEXPR,     builtin_greater_equal,
-       "pack",         AO_LISP_FUNC_LAMBDA,    builtin_pack,
-       "unpack",       AO_LISP_FUNC_LAMBDA,    builtin_unpack,
-       "flush",        AO_LISP_FUNC_LAMBDA,    builtin_flush,
-       "delay",        AO_LISP_FUNC_LAMBDA,    builtin_delay,
-       "led",          AO_LISP_FUNC_LEXPR,     builtin_led,
-       "save",         AO_LISP_FUNC_LAMBDA,    builtin_save,
-       "restore",      AO_LISP_FUNC_LAMBDA,    builtin_restore,
+       "print",        AO_LISP_FUNC_F_LEXPR,   builtin_print,
+       "patom",        AO_LISP_FUNC_F_LEXPR,   builtin_patom,
+       "+",            AO_LISP_FUNC_F_LEXPR,   builtin_plus,
+       "-",            AO_LISP_FUNC_F_LEXPR,   builtin_minus,
+       "*",            AO_LISP_FUNC_F_LEXPR,   builtin_times,
+       "/",            AO_LISP_FUNC_F_LEXPR,   builtin_divide,
+       "%",            AO_LISP_FUNC_F_LEXPR,   builtin_mod,
+       "=",            AO_LISP_FUNC_F_LEXPR,   builtin_equal,
+       "<",            AO_LISP_FUNC_F_LEXPR,   builtin_less,
+       ">",            AO_LISP_FUNC_F_LEXPR,   builtin_greater,
+       "<=",           AO_LISP_FUNC_F_LEXPR,   builtin_less_equal,
+       ">=",           AO_LISP_FUNC_F_LEXPR,   builtin_greater_equal,
+       "pack",         AO_LISP_FUNC_F_LAMBDA,  builtin_pack,
+       "unpack",       AO_LISP_FUNC_F_LAMBDA,  builtin_unpack,
+       "flush",        AO_LISP_FUNC_F_LAMBDA,  builtin_flush,
+       "delay",        AO_LISP_FUNC_F_LAMBDA,  builtin_delay,
+       "led",          AO_LISP_FUNC_F_LEXPR,   builtin_led,
+       "save",         AO_LISP_FUNC_F_LAMBDA,  builtin_save,
+       "restore",      AO_LISP_FUNC_F_LAMBDA,  builtin_restore,
 };
 
 #define N_FUNC (sizeof funcs / sizeof funcs[0])