1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 20:30:28 +02:00

static-patch! for pair and vector fields

* module/system/vm/assembler.scm (intern-constant): Use static-patch!
  for fields.
This commit is contained in:
Andy Wingo 2013-10-31 19:21:31 +01:00
parent 57a5cc9760
commit c7cb2bc200

View file

@ -543,10 +543,10 @@ table, its existing label is used directly."
(define (field dst n obj) (define (field dst n obj)
(let ((src (recur obj))) (let ((src (recur obj)))
(if src (if src
(list (if (statically-allocatable? obj) (if (statically-allocatable? obj)
`(make-non-immediate 1 ,src) `((static-patch! ,dst ,n ,src))
`(static-ref 1 ,src)) `((static-ref 1 ,src)
`(static-set! 1 ,dst ,n)) (static-set! 1 ,dst ,n)))
'()))) '())))
(define (intern obj label) (define (intern obj label)
(cond (cond