mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
late-variable-{ref,set} -> toplevel-{ref,set}
* benchmark/lib.scm: * libguile/vm-i-system.c (toplevel-ref, toplevel-set): * module/system/vm/assemble.scm (codegen): * module/system/vm/disasm.scm (code-annotation): s/late-variable/toplevel/. It's just a better name.
This commit is contained in:
parent
8680d53b8c
commit
f7e5296e04
4 changed files with 8 additions and 8 deletions
|
@ -69,7 +69,7 @@
|
||||||
;; 5 (br-if-not 0 3) ;; -> 11
|
;; 5 (br-if-not 0 3) ;; -> 11
|
||||||
;; 8 (make-int8 0) ;; 0
|
;; 8 (make-int8 0) ;; 0
|
||||||
;; 10 (return)
|
;; 10 (return)
|
||||||
;; 11 (late-variable-ref 0)
|
;; 11 (toplevel-ref 0)
|
||||||
;; 13 (local-ref 0)
|
;; 13 (local-ref 0)
|
||||||
;; 15 (make-int8 1) ;; 1
|
;; 15 (make-int8 1) ;; 1
|
||||||
;; 17 (sub)
|
;; 17 (sub)
|
||||||
|
|
|
@ -285,7 +285,7 @@ VM_DEFINE_INSTRUCTION (variable_ref, "variable-ref", 0, 0, 1)
|
||||||
NEXT;
|
NEXT;
|
||||||
}
|
}
|
||||||
|
|
||||||
VM_DEFINE_INSTRUCTION (late_variable_ref, "late-variable-ref", 1, 0, 1)
|
VM_DEFINE_INSTRUCTION (toplevel_ref, "toplevel-ref", 1, 0, 1)
|
||||||
{
|
{
|
||||||
unsigned objnum = FETCH ();
|
unsigned objnum = FETCH ();
|
||||||
SCM what;
|
SCM what;
|
||||||
|
@ -367,7 +367,7 @@ VM_DEFINE_INSTRUCTION (variable_set, "variable-set", 0, 1, 0)
|
||||||
NEXT;
|
NEXT;
|
||||||
}
|
}
|
||||||
|
|
||||||
VM_DEFINE_INSTRUCTION (late_variable_set, "late-variable-set", 1, 1, 0)
|
VM_DEFINE_INSTRUCTION (toplevel_set, "toplevel-set", 1, 1, 0)
|
||||||
{
|
{
|
||||||
unsigned objnum = FETCH ();
|
unsigned objnum = FETCH ();
|
||||||
SCM what;
|
SCM what;
|
||||||
|
|
|
@ -223,8 +223,8 @@
|
||||||
(set! object-alist (acons var i object-alist))
|
(set! object-alist (acons var i object-alist))
|
||||||
i)))))
|
i)))))
|
||||||
(push-code! (case op
|
(push-code! (case op
|
||||||
((ref) `(late-variable-ref ,i))
|
((ref) `(toplevel-ref ,i))
|
||||||
((set) `(late-variable-set ,i))))))))
|
((set) `(toplevel-set ,i))))))))
|
||||||
((define)
|
((define)
|
||||||
(push-object! (make-vdefine #:name name))
|
(push-object! (make-vdefine #:name name))
|
||||||
(push-code! '(variable-set)))
|
(push-code! '(variable-set)))
|
||||||
|
@ -249,8 +249,8 @@
|
||||||
(set! object-alist (acons var i object-alist))
|
(set! object-alist (acons var i object-alist))
|
||||||
i)))))
|
i)))))
|
||||||
(push-code! (case op
|
(push-code! (case op
|
||||||
((ref) `(late-variable-ref ,i))
|
((ref) `(toplevel-ref ,i))
|
||||||
((set) `(late-variable-set ,i))))))))
|
((set) `(toplevel-set ,i))))))))
|
||||||
(else
|
(else
|
||||||
(error "unknown module var kind" op key)))))
|
(error "unknown module var kind" op key)))))
|
||||||
|
|
||||||
|
|
|
@ -154,7 +154,7 @@
|
||||||
(list "`~a'~@[ (arg)~]"
|
(list "`~a'~@[ (arg)~]"
|
||||||
(binding:name b) (< (binding:index b) nargs)))
|
(binding:name b) (< (binding:index b) nargs)))
|
||||||
(list "(closure variable)"))))
|
(list "(closure variable)"))))
|
||||||
((late-variable-ref late-variable-set)
|
((toplevel-ref toplevel-set)
|
||||||
(and objs
|
(and objs
|
||||||
(let ((v (vector-ref objs (car args))))
|
(let ((v (vector-ref objs (car args))))
|
||||||
(if (and (variable? v) (variable-bound? v))
|
(if (and (variable? v) (variable-bound? v))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue