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,35 +1062,35 @@
(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)
(#.halt-trap (case (break-subcode chunk dstate)
(nt "Halt trap")) (#.halt-trap
(#.pending-interrupt-trap (nt "Halt trap"))
(nt "Pending interrupt trap")) (#.pending-interrupt-trap
(#.error-trap (nt "Pending interrupt trap"))
(nt "Error trap") (#.error-trap
(sb!disassem:handle-break-args #'snarf-error-junk stream dstate)) (nt "Error trap")
(#.cerror-trap (sb!disassem:handle-break-args #'snarf-error-junk stream dstate))
(nt "Cerror trap") (#.cerror-trap
(sb!disassem:handle-break-args #'snarf-error-junk stream dstate)) (nt "Cerror trap")
(#.breakpoint-trap (sb!disassem:handle-break-args #'snarf-error-junk stream dstate))
(nt "Breakpoint trap")) (#.breakpoint-trap
(#.fun-end-breakpoint-trap (nt "Breakpoint trap"))
(nt "Function end breakpoint trap")) (#.fun-end-breakpoint-trap
(#.after-breakpoint-trap (nt "Function end breakpoint trap"))
(nt "After breakpoint trap")) (#.after-breakpoint-trap
(#.pseudo-atomic-trap (nt "After breakpoint trap"))
(nt "Pseudo atomic trap")) (#.pseudo-atomic-trap
(#.object-not-list-trap (nt "Pseudo atomic trap"))
(nt "Object not list trap")) (#.object-not-list-trap
(#.object-not-instance-trap (nt "Object not list trap"))
(nt "Object not instance trap")) (#.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"