X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fmips-vm.lisp;h=541bb35ee86edf52238873ee7ff4756588dd3667;hb=8d490a4d6b9d7f156cf503826b3e3195e6f3ad39;hp=6b0664e4a4ea1a1e04ebe65d6df8b9142a02626b;hpb=4ae1b794a5d6a90794468cf8017f5307f2c30dfe;p=sbcl.git diff --git a/src/code/mips-vm.lisp b/src/code/mips-vm.lisp index 6b0664e..541bb35 100644 --- a/src/code/mips-vm.lisp +++ b/src/code/mips-vm.lisp @@ -8,14 +8,13 @@ "Returns a string describing the type of the local machine." "MIPS") -(defun machine-version () - "Returns a string describing the version of the local machine." +;;; support for CL:MACHINE-VERSION defined OAOO elsewhere +(defun get-machine-version () #!+little-endian "little-endian" #!-little-endian "big-endian") - -;;; FIXUP-CODE-OBJECT -- Interface -;;; +;;;; FIXUP-CODE-OBJECT + (defun fixup-code-object (code offset value kind) (unless (zerop (rem offset n-word-bytes)) (error "Unaligned instruction? offset=#x~X." offset)) @@ -24,7 +23,7 @@ (%primitive sb!c::code-instructions code)))) (ecase kind (:jump - (assert (zerop (ash value -28))) + (aver (zerop (ash value -28))) (setf (ldb (byte 26 0) (sap-ref-32 sap offset)) (ash value -2))) (:lui @@ -118,12 +117,9 @@ (/show0 "LENGTH,VECTOR,ERROR-NUMBER=..") (/hexstr length) (/hexstr vector) - (copy-from-system-area pc (* n-byte-bits 5) - vector (* n-word-bits - vector-data-offset) - (* length n-byte-bits)) + (copy-ub8-from-system-area pc 5 vector 0 length) (let* ((index 0) - (error-number (sb!c::read-var-integer vector index))) + (error-number (sb!c:read-var-integer vector index))) (/hexstr error-number) (collect ((sc-offsets)) (loop @@ -131,7 +127,7 @@ (/hexstr index) (when (>= index length) (return)) - (sc-offsets (sb!c::read-var-integer vector index))) + (sc-offsets (sb!c:read-var-integer vector index))) (values error-number (sc-offsets)))))))