From: Luke Lau Date: Mon, 29 Jul 2019 23:49:14 +0000 (+0100) Subject: Reset label and lambda counters on compile X-Git-Url: https://git.lukelau.me/?p=scheme.git;a=commitdiff_plain;h=b2dd1447521cd266a2a6fe1c0c48c5bff8a3c072 Reset label and lambda counters on compile Also emit some comments in the assembly for debugging --- diff --git a/codegen.scm b/codegen.scm index c736773..52c494b 100644 --- a/codegen.scm +++ b/codegen.scm @@ -267,6 +267,7 @@ (emit "~a:" exit-label))) (define (codegen-expr e si env) + (emit "# ~a" e) (case (ast-type e) ('closure (codegen-closure (cadr e) (caddr e) si env)) ('app @@ -483,6 +484,8 @@ (emit "movq %rax, (%rsi)"))) (define (codegen program) + (set! cur-label 0) + (set! cur-lambda 0) (let* ((extract-res-0 (extract-strings program)) (strings (car extract-res-0)) (extract-res-1 (extract-lambdas (cdr extract-res-0)))