X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fx86%2Farray.lisp;h=2666d4de78ff58b0fea2114abe6415b9cc18cd96;hb=872175cd9cb5b4966a36d4bd92421cc407a0355b;hp=3afdbc1c068178023bb65c1905948df63834e401;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/compiler/x86/array.lisp b/src/compiler/x86/array.lisp index 3afdbc1..2666d4d 100644 --- a/src/compiler/x86/array.lisp +++ b/src/compiler/x86/array.lisp @@ -10,9 +10,6 @@ ;;;; files for more information. (in-package "SB!VM") - -(file-comment - "$Header$") ;;;; allocator for the array header @@ -301,7 +298,7 @@ (:result-types single-float) (:generator 5 (cond ((zerop (tn-offset value)) - ;; Value is in ST0 + ;; Value is in ST0. (inst fst (make-ea :dword :base object :index index :scale 1 :disp (- (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -338,7 +335,7 @@ (:result-types single-float) (:generator 4 (cond ((zerop (tn-offset value)) - ;; Value is in ST0 + ;; Value is in ST0. (inst fst (make-ea :dword :base object :disp (- (+ (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -408,7 +405,7 @@ (:result-types double-float) (:generator 20 (cond ((zerop (tn-offset value)) - ;; Value is in ST0 + ;; Value is in ST0. (inst fstd (make-ea :dword :base object :index index :scale 2 :disp (- (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -445,7 +442,7 @@ (:result-types double-float) (:generator 19 (cond ((zerop (tn-offset value)) - ;; Value is in ST0 + ;; Value is in ST0. (inst fstd (make-ea :dword :base object :disp (- (+ (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -525,7 +522,7 @@ ;; temp = 3 * index (inst lea temp (make-ea :dword :base index :index index :scale 2)) (cond ((zerop (tn-offset value)) - ;; Value is in ST0 + ;; Value is in ST0. (store-long-float (make-ea :dword :base object :index temp :scale 1 :disp (- (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -562,7 +559,7 @@ (:result-types long-float) (:generator 19 (cond ((zerop (tn-offset value)) - ;; Value is in ST0 + ;; Value is in ST0. (store-long-float (make-ea :dword :base object :disp (- (+ (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -703,7 +700,7 @@ (let ((value-real (complex-single-reg-real-tn value)) (result-real (complex-single-reg-real-tn result))) (cond ((zerop (tn-offset value-real)) - ;; Value is in ST0 + ;; Value is in ST0. (inst fst (make-ea :dword :base object :disp (- (+ (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -805,7 +802,7 @@ (let ((value-real (complex-double-reg-real-tn value)) (result-real (complex-double-reg-real-tn result))) (cond ((zerop (tn-offset value-real)) - ;; Value is in ST0 + ;; Value is in ST0. (inst fstd (make-ea :dword :base object :index index :scale 4 :disp (- (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -855,7 +852,7 @@ (let ((value-real (complex-double-reg-real-tn value)) (result-real (complex-double-reg-real-tn result))) (cond ((zerop (tn-offset value-real)) - ;; Value is in ST0 + ;; Value is in ST0. (inst fstd (make-ea :dword :base object :disp (- (+ (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -966,7 +963,7 @@ (let ((value-real (complex-long-reg-real-tn value)) (result-real (complex-long-reg-real-tn result))) (cond ((zerop (tn-offset value-real)) - ;; Value is in ST0 + ;; Value is in ST0. (store-long-float (make-ea :dword :base object :index temp :scale 2 :disp (- (* sb!vm:vector-data-offset sb!vm:word-bytes) @@ -1016,7 +1013,7 @@ (let ((value-real (complex-long-reg-real-tn value)) (result-real (complex-long-reg-real-tn result))) (cond ((zerop (tn-offset value-real)) - ;; Value is in ST0 + ;; Value is in ST0. (store-long-float (make-ea :dword :base object :disp (- (+ (* sb!vm:vector-data-offset @@ -1060,10 +1057,7 @@ (unless (location= value-imag result-imag) (inst fstd result-imag)) (inst fxch value-imag)))) - -;;;; dtc expanded and fixed the following: - ;;; unsigned-byte-8 (define-vop (data-vector-ref/simple-array-unsigned-byte-8)