(:temp edi unsigned-reg rdi-offset))
;; Pick off the cases where everything fits in register args.
- (inst jecxz ZERO-VALUES)
+ (inst jrcxz ZERO-VALUES)
(inst cmp ecx (fixnumize 1))
(inst jmp :e ONE-VALUE)
(inst cmp ecx (fixnumize 2))
(inst lea edi (make-ea :qword :base ebx :disp (- n-word-bytes)))
(inst rep)
(inst movs :qword)
+ (inst cld)
;; Restore the count.
(inst mov ecx edx)
(move ecx esi)
(inst sub ecx rsp-tn)
- ;; Check for all the args fitting the the registers.
+ ;; Check for all the args fitting the registers.
(inst cmp ecx (fixnumize 3))
(inst jmp :le REGISTER-ARGS)
(inst sub esi (fixnumize 1))
(inst rep)
(inst movs :qword)
+ (inst cld)
;; Load the register arguments carefully.
(loadw edx rbp-tn -1)
(inst push ebx)
;; And jump into the function.
- (inst jmp
- (make-ea :byte :base eax
- :disp (- (* closure-fun-slot n-word-bytes)
- fun-pointer-lowtag)))
+ (inst jmp
+ (make-ea :byte :base eax
+ :disp (- (* closure-fun-slot n-word-bytes)
+ fun-pointer-lowtag)))
;; All the arguments fit in registers, so load them.
REGISTER-ARGS
LOOP
- (let ((error (generate-error-code nil unseen-throw-tag-error target)))
+ (let ((error (generate-error-code nil 'unseen-throw-tag-error target)))
(inst or catch catch) ; check for NULL pointer
(inst jmp :z error))
(:temp uwp unsigned-reg rsi-offset))
(declare (ignore start count))
- (let ((error (generate-error-code nil invalid-unwind-error)))
+ (let ((error (generate-error-code nil 'invalid-unwind-error)))
(inst or block block) ; check for NULL pointer
(inst jmp :z error))