diff --git a/extlib/benz/codegen.c b/extlib/benz/codegen.c index 8404ab67..46972122 100644 --- a/extlib/benz/codegen.c +++ b/extlib/benz/codegen.c @@ -923,9 +923,10 @@ codegen_quote(pic_state *pic, codegen_context *cxt, pic_value obj, bool tailpos) static bool codegen_call_vm(pic_state *pic, codegen_context *cxt, pic_value proc, size_t len, bool tailpos) { - pic_sym *sym; - if (pic_sym_ptr(pic_list_ref(pic, proc, 0)) == pic->sGREF) { + pic_sym *sym; + + sym = pic_sym_ptr(pic_list_ref(pic, proc, 1)); #define VM(uid, op) \ if (sym == uid) { \ @@ -934,13 +935,6 @@ codegen_call_vm(pic_state *pic, codegen_context *cxt, pic_value proc, size_t len return true; \ } - /* - TODO: - - call-with-values, values, >, >= - */ - - sym = pic_sym_ptr(pic_list_ref(pic, proc, 1)); - VM(pic->uCONS, OP_CONS) VM(pic->uCAR, OP_CAR) VM(pic->uCDR, OP_CDR)