(load-tl-symbol-value temp *current-unwind-protect-block*)
(storew temp block unwind-block-current-uwp-slot)
(storew rbp-tn block unwind-block-current-cont-slot)
- (storew (make-fixup nil :code-object entry-label)
- block catch-block-entry-pc-slot)))
+ (inst lea temp (make-fixup nil :code-object entry-label))
+ (storew temp block catch-block-entry-pc-slot)))
;;; like MAKE-UNWIND-BLOCK, except that we also store in the specified
;;; tag, and link the block into the CURRENT-CATCH list
(load-tl-symbol-value temp *current-unwind-protect-block*)
(storew temp block unwind-block-current-uwp-slot)
(storew rbp-tn block unwind-block-current-cont-slot)
- (storew (make-fixup nil :code-object entry-label)
- block catch-block-entry-pc-slot)
+ (inst lea temp (make-fixup nil :code-object entry-label))
+ (storew temp block catch-block-entry-pc-slot)
(storew tag block catch-block-tag-slot)
(load-tl-symbol-value temp *current-catch-block*)
(storew temp block catch-block-previous-catch-slot)
(move num rcx)
(inst shr rcx word-shift) ; word count for <rep movs>
;; If we got zero, we be done.
- (inst jecxz done)
+ (inst jecxz DONE)
;; Copy them down.
(inst std)
(inst rep)
- (inst movs :dword)
+ (inst movs :qword)
DONE
;; Reset the CSP at last moved arg.