Changeset 15260 for release/1.8


Ignore:
Timestamp:
Mar 21, 2012, 12:04:02 AM (7 years ago)
Author:
rme
Message:

GC safety fix to x8632 init-closure vinsn from trunk.

Location:
release/1.8/source
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • release/1.8/source

  • release/1.8/source/compiler/X86/X8632/x8632-vinsns.lisp

    r15022 r15260  
    34023402  (movb (:$b 6) (:@ x8632::misc-data-offset (:%l closure))) ;imm word count
    34033403  (movb (:$b #xbf) (:@ (+ x8632::misc-data-offset 2) (:%l closure))) ;movl $self, %fn
    3404   (movl (:%l closure) (:@ (+ x8632::misc-data-offset 3) (:%l closure)))
    34053404  (movb (:$b #xff) (:@ (+ x8632::misc-data-offset 7) (:%l closure))) ;jmp
    34063405  (movl (:$l #x0150b425) (:@ (+ x8632::misc-data-offset 8) (:%l closure))) ;.SPcall-closure
     
    34083407  ;; (movl ($ 0) (:@ (+ x8632::misc-data-offset 12))) ;"end" of self-references
    34093408  (movb (:$b 7) (:@ (+ x8632::misc-data-offset 16) (:%l closure))) ;self-reference offset
    3410   (movb (:$b x8632::function-boundary-marker) (:@ (+ x8632::misc-data-offset 20) (:%l closure))))
     3409  (movb (:$b x8632::function-boundary-marker) (:@ (+ x8632::misc-data-offset 20) (:%l closure)))
     3410  ;; If the GC moved the closure before we finished creating its
     3411  ;; self-reference table, it wouldn't have updated this self-reference
     3412  (movl (:%l closure) (:@ (+ x8632::misc-data-offset 3) (:%l closure))))
    34113413
    34123414(define-x8632-vinsn finalize-closure (((closure :lisp))
Note: See TracChangeset for help on using the changeset viewer.