From b7380bd581f7e09dea5ba63d60aa780d2d91427d Mon Sep 17 00:00:00 2001 From: ch <ch> Date: Sun, 18 Feb 1990 06:23:22 +0000 Subject: [PATCH] Fixed printing of MOVE pseudo-instruction. Added ugly hack to print out a comment when loading symbol constants. --- code/pmax-disassem.lisp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/code/pmax-disassem.lisp b/code/pmax-disassem.lisp index 5aee6243c..620aa2bf1 100644 --- a/code/pmax-disassem.lisp +++ b/code/pmax-disassem.lisp @@ -1,6 +1,6 @@ ;;; -*- Mode: Lisp; Package: MIPS -*- ;;; -;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/pmax-disassem.lisp,v 1.7 1990/02/18 05:26:48 wlott Exp $ +;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/code/pmax-disassem.lisp,v 1.8 1990/02/18 06:23:22 ch Exp $ ;;; ;;; A simple dissambler for the MIPS R2000. ;;; @@ -124,6 +124,13 @@ (cond ((and (zerop rs) (or (string= name "ADDI") (string= name "ADDIU"))) (format stream "~16,8TLOADI~8,8T~A, #x~X~%" (register-name rt) immed)) + ;; I'm not proud of this ... + ((and (= rs c::null-offset) (string= name "ADDI") + (eq register-name-style :lisp)) + (format stream "~16,8T~A~8,8T~A, ~A, #x~X~48,8T; ~S~%" + name (register-name rt) (register-name rs) immed + (nth (1- (floor immed vm:symbol-size)) + vm:initial-symbols))) (t (format stream "~16,8T~A~8,8T~A, ~A, #x~X~%" name (register-name rt) (register-name rs) immed))))) @@ -185,7 +192,7 @@ (cond ((zerop rd) ;; Hack for NOP (format stream "~16,8TNOP~%")) - ((and (zerop rt) (or (string= name "OR") (string= name "ANDU"))) + ((and (zerop rt) (or (string= name "OR") (string= name "ADDU"))) ;; Hack for MOVE (format stream "~16,8TMOVE~8,8T~A, ~A~%" (register-name rd) (register-name rs))) -- GitLab