From 0d83580fd5355a48a4f1bdeaf5be1a27e0a1cbae Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Wed, 6 Jun 2018 18:37:18 -0400 Subject: [PATCH] WIP --- scheme/cyclone/cgen.sld | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/scheme/cyclone/cgen.sld b/scheme/cyclone/cgen.sld index 6a03c287..e950a35a 100644 --- a/scheme/cyclone/cgen.sld +++ b/scheme/cyclone/cgen.sld @@ -711,7 +711,7 @@ ;; c-compile-app : app-exp (string -> void) -> string (define (c-compile-app exp append-preamble cont trace cps?) - ;(trace:debug `(c-compile-app: ,exp)) + (trace:info `(c-compile-app: ,exp ,trace)) (let (($tmp (mangle (gensym 'tmp)))) (let* ((args (app->args exp)) (fun (app->fun exp))) @@ -719,8 +719,9 @@ ((and (pair? trace) (not (null? (cdr trace))) (adbv:direct-rec-call? (adb:get (cdr trace))) - TODO: what to put here? only want this for the direct rec calls... - (equal? (car exp) (cdr trace)) + (tagged-list? '%closure-ref fun) + (equal? (cadr fun) (cdr trace)) ;; Needed? + (equal? (car args) (cdr trace)) ) (let* ((cgen (c-compile-args