From 723fc850f604addee991b01b075efcfe16b0bdab Mon Sep 17 00:00:00 2001 From: Ian Price Date: Thu, 15 Jun 2017 22:34:39 +0100 Subject: [PATCH] Add #:js-inline? and #:js-flatten? debugging options * module/language/js-il/compile-javascript.scm (compile-javascript): Check for #:js-inline? and #:js-flatten?, and turn off inline-single-calls and flatten-blocks respectively. --- module/language/js-il/compile-javascript.scm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/module/language/js-il/compile-javascript.scm b/module/language/js-il/compile-javascript.scm index 67a34921d..ed764410b 100644 --- a/module/language/js-il/compile-javascript.scm +++ b/module/language/js-il/compile-javascript.scm @@ -15,9 +15,13 @@ (eqv? obj (pointer->scm (make-pointer unbound-bits)))) (define (compile-javascript exp env opts) - (set! exp (inline-single-calls exp)) + (match (memq #:js-inline? opts) + ((#:js-inline? #f _ ...) #f) + (_ (set! exp (inline-single-calls exp)))) (set! exp (compile-exp exp)) - (set! exp (flatten-blocks exp)) + (match (memq #:js-flatten? opts) + ((#:js-flatten? #f _ ...) #f) + (_ (set! exp (flatten-blocks exp)))) (values exp env env)) (define *scheme* (make-id "scheme"))