Expose list of inlinable functions

This commit is contained in:
Justin Ethier 2017-04-17 18:11:51 -04:00
parent 08a960306c
commit 529585d92c

View file

@ -1431,20 +1431,23 @@
(let ((pairs '()) (let ((pairs '())
(head-pair #f)) (head-pair #f))
;; TODO: want some way of being able to get the list in scheme code ;; Expose list of inlinable lambda functions
;; TODO: ;; Attempt to expose inlinable lambdas function (when (not program?)
;; TODO: (let ((cvar-sym (mangle (gensym 'cvar))) (let ( ;(cvar-sym (mangle (gensym 'cvar)))
;; TODO: (pair-sym (mangle (gensym 'pair))) (pair-sym (mangle (gensym 'pair)))
;; TODO: (fnc (string-append (clo-sym (mangle (gensym 'clo)))
;; TODO: "c_" (lib:name->string lib-name) "_inlinable_lambdas"))) (fnc (string-append
;; TODO: (emits* "c_" (lib:name->string lib-name) "_inlinable_lambdas")))
;; TODO: " make_cvar(" cvar-sym (emits*
;; TODO: ", (object *)&" fnc ");") " mclosure0(" clo-sym ", " fnc "); "
;; TODO: (emits* ; " make_cvar(" cvar-sym
;; TODO: "make_pair(" pair-sym ", find_or_add_symbol(\"" fnc ; ", (object *)&" fnc ");"
;; TODO: "\"), &" cvar-sym ");\n") )
;; TODO: (set! pairs (cons pair-sym pairs))) (emits*
;; TODO: ;; END "make_pair(" pair-sym ", find_or_add_symbol(\"" fnc
"\"), &" clo-sym ");\n")
(set! pairs (cons pair-sym pairs))))
;; END
(for-each (for-each
(lambda (g) (lambda (g)