0.9.4.71:

Fix disassembly printing for mips break instructions.
This commit is contained in:
Thiemo Seufer 2005-09-16 13:22:08 +00:00
parent 40b6c8b103
commit 85483d976c
2 changed files with 28 additions and 28 deletions

View file

@ -222,10 +222,10 @@
(sb!disassem:define-instruction-format (sb!disassem:define-instruction-format
(break 32 :default-printer (break 32 :default-printer
'(:name :tab code (:unless (:constant 0) subcode))) '(:name :tab code (:unless (:constant 0) ", " subcode)))
(op :field (byte 6 26) :value special-op) (op :field (byte 6 26) :value special-op)
(code :field (byte 10 16)) (code :field (byte 10 16))
(subcode :field (byte 10 6) :value 0) (subcode :field (byte 10 6))
(funct :field (byte 6 0) :value #b001101)) (funct :field (byte 6 0) :value #b001101))
(sb!disassem:define-instruction-format (sb!disassem:define-instruction-format
@ -1062,7 +1062,8 @@
(defun break-control (chunk inst stream dstate) (defun break-control (chunk inst stream dstate)
(declare (ignore inst)) (declare (ignore inst))
(flet ((nt (x) (if stream (sb!disassem:note x dstate)))) (flet ((nt (x) (if stream (sb!disassem:note x dstate))))
(case (break-code chunk dstate) (when (= (break-code chunk dstate) 0)
(case (break-subcode chunk dstate)
(#.halt-trap (#.halt-trap
(nt "Halt trap")) (nt "Halt trap"))
(#.pending-interrupt-trap (#.pending-interrupt-trap
@ -1084,13 +1085,12 @@
(#.object-not-list-trap (#.object-not-list-trap
(nt "Object not list trap")) (nt "Object not list trap"))
(#.object-not-instance-trap (#.object-not-instance-trap
(nt "Object not instance trap")) (nt "Object not instance trap"))))))
)))
(define-instruction break (segment code &optional (subcode 0)) (define-instruction break (segment code &optional (subcode 0))
(:declare (type (unsigned-byte 10) code subcode)) (:declare (type (unsigned-byte 10) code subcode))
(:printer break ((op special-op) (funct #b001101)) (:printer break ((op special-op) (funct #b001101))
'(:name :tab code (:unless (:constant 0) subcode)) '(:name :tab code (:unless (:constant 0) ", " subcode))
:control #'break-control) :control #'break-control)
:pinned :pinned
(:cost 0) (:cost 0)

View file

@ -17,4 +17,4 @@
;;; checkins which aren't released. (And occasionally for internal ;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS ;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
"0.9.4.70" "0.9.4.71"