(defun my-make-wired-tn (prim-type-name sc-name offset)
(make-wired-tn (primitive-type-or-lose prim-type-name )
(defun my-make-wired-tn (prim-type-name sc-name offset)
(make-wired-tn (primitive-type-or-lose prim-type-name )
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(multiple-value-bind
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(multiple-value-bind
- (ptype reg-sc stack-sc)
- (if (alien-integer-type-signed type)
- (values 'signed-byte-64 'signed-reg 'signed-stack)
- (values 'unsigned-byte-64 'unsigned-reg 'unsigned-stack))
+ (ptype reg-sc stack-sc)
+ (if (alien-integer-type-signed type)
+ (values 'signed-byte-64 'signed-reg 'signed-stack)
+ (values 'unsigned-byte-64 'unsigned-reg 'unsigned-stack))
- (my-make-wired-tn ptype reg-sc (+ stack-frame-size nl0-offset))
- (my-make-wired-tn ptype stack-sc (* 2 (- stack-frame-size 4)))))))
+ (my-make-wired-tn ptype reg-sc (+ stack-frame-size nl0-offset))
+ (my-make-wired-tn ptype stack-sc (* 2 (- stack-frame-size 4)))))))
(define-alien-type-method (system-area-pointer :arg-tn) (type state)
(declare (ignore type))
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(if (< stack-frame-size 4)
(define-alien-type-method (system-area-pointer :arg-tn) (type state)
(declare (ignore type))
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(if (< stack-frame-size 4)
- (my-make-wired-tn 'system-area-pointer
- 'sap-reg
- (+ stack-frame-size nl0-offset))
- (my-make-wired-tn 'system-area-pointer
- 'sap-stack
- (* 2 (- stack-frame-size 4))))))
+ (my-make-wired-tn 'system-area-pointer
+ 'sap-reg
+ (+ stack-frame-size nl0-offset))
+ (my-make-wired-tn 'system-area-pointer
+ 'sap-stack
+ (* 2 (- stack-frame-size 4))))))
(define-alien-type-method (double-float :arg-tn) (type state)
(declare (ignore type))
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(if (< stack-frame-size 6)
(define-alien-type-method (double-float :arg-tn) (type state)
(declare (ignore type))
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(if (< stack-frame-size 6)
- (my-make-wired-tn 'double-float
- 'double-reg
- (+ stack-frame-size nl0-offset))
- (my-make-wired-tn 'double-float
- 'double-stack
- (* 2 (- stack-frame-size 6))))))
+ (my-make-wired-tn 'double-float
+ 'double-reg
+ (+ stack-frame-size nl0-offset))
+ (my-make-wired-tn 'double-float
+ 'double-stack
+ (* 2 (- stack-frame-size 6))))))
(define-alien-type-method (single-float :arg-tn) (type state)
(declare (ignore type))
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(if (< stack-frame-size 6)
(define-alien-type-method (single-float :arg-tn) (type state)
(declare (ignore type))
(let ((stack-frame-size (arg-state-stack-frame-size state)))
(setf (arg-state-stack-frame-size state) (1+ stack-frame-size))
(if (< stack-frame-size 6)
- (my-make-wired-tn 'single-float
- 'single-reg
- (+ stack-frame-size nl0-offset))
- (my-make-wired-tn 'single-float
- 'single-stack
- (* 2 (- stack-frame-size 6))))))
+ (my-make-wired-tn 'single-float
+ 'single-reg
+ (+ stack-frame-size nl0-offset))
+ (my-make-wired-tn 'single-float
+ 'single-stack
+ (* 2 (- stack-frame-size 6))))))
(my-make-wired-tn ptype reg-sc lip-offset)))
(define-alien-type-method (system-area-pointer :result-tn) (type state)
(declare (ignore type state))
(my-make-wired-tn 'system-area-pointer 'sap-reg lip-offset))
(my-make-wired-tn ptype reg-sc lip-offset)))
(define-alien-type-method (system-area-pointer :result-tn) (type state)
(declare (ignore type state))
(my-make-wired-tn 'system-area-pointer 'sap-reg lip-offset))
(define-alien-type-method (double-float :result-tn) (type state)
(declare (ignore type state))
(my-make-wired-tn 'double-float 'double-reg lip-offset))
(define-alien-type-method (double-float :result-tn) (type state)
(declare (ignore type state))
(my-make-wired-tn 'double-float 'double-reg lip-offset))
- (* (max (arg-state-stack-frame-size arg-state) 4) n-word-bytes)
- (arg-tns)
- (invoke-alien-type-method :result-tn
- (alien-fun-type-result-type type)
- nil)))))
+ (* (max (arg-state-stack-frame-size arg-state) 4) n-word-bytes)
+ (arg-tns)
+ (invoke-alien-type-method :result-tn
+ (alien-fun-type-result-type type)
+ nil)))))
(:temporary (:sc control-stack :offset nfp-save-offset) nfp-save)
(:temporary (:scs (non-descriptor-reg)) temp)
(:vop-var vop)
(:generator 0
(let ((cur-nfp (sb!c::current-nfp-tn vop)))
(when cur-nfp
(:temporary (:sc control-stack :offset nfp-save-offset) nfp-save)
(:temporary (:scs (non-descriptor-reg)) temp)
(:vop-var vop)
(:generator 0
(let ((cur-nfp (sb!c::current-nfp-tn vop)))
(when cur-nfp
(move function cfunc)
(inst li (make-fixup "call_into_c" :foreign) temp)
(inst jsr lip-tn temp (make-fixup "call_into_c" :foreign))
(when cur-nfp
(move function cfunc)
(inst li (make-fixup "call_into_c" :foreign) temp)
(inst jsr lip-tn temp (make-fixup "call_into_c" :foreign))
(when cur-nfp
- (cond ((< delta (ash 1 15))
- (inst lda nsp-tn (- delta) nsp-tn))
- (t
- (inst li delta temp)
- (inst subq nsp-tn temp nsp-tn)))))
+ (cond ((< delta (ash 1 15))
+ (inst lda nsp-tn (- delta) nsp-tn))
+ (t
+ (inst li delta temp)
+ (inst subq nsp-tn temp nsp-tn)))))
- (cond ((< delta (ash 1 15))
- (inst lda nsp-tn delta nsp-tn))
- (t
- (inst li delta temp)
- (inst addq nsp-tn temp nsp-tn)))))))
+ (cond ((< delta (ash 1 15))
+ (inst lda nsp-tn delta nsp-tn))
+ (t
+ (inst li delta temp)
+ (inst addq nsp-tn temp nsp-tn)))))))