From 05b84ac0efd794a609d9a05dc7cbcf912443e0c7 Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Sat, 13 Oct 1990 20:28:59 +0000
Subject: [PATCH] Added stuff to handle all the different fixup kinds.

---
 compiler/generic/core.lisp | 42 +++++++++++++++-----------------------
 1 file changed, 16 insertions(+), 26 deletions(-)

diff --git a/compiler/generic/core.lisp b/compiler/generic/core.lisp
index 87af4b5d4..ffe4e2df3 100644
--- a/compiler/generic/core.lisp
+++ b/compiler/generic/core.lisp
@@ -82,32 +82,22 @@
 	   (name (fixup-name fixup))
 	   (flavor (fixup-flavor fixup))
 	   (offset (third info)))
-      (ecase kind
-	(:addi
-	 ;; ### The lui fixup assumes that an addi follows it.
-	 )
-	(:lui
-	 (ecase flavor
-	   (:assembly-routine
-	    (assert (symbolp name))
-	    (multiple-value-bind
-		(value found)
-		(gethash name lisp::*assembler-routines*)
-	      (unless found
-		(error "Undefined assembler routine: ~S" name))
-	      (lisp::fixup-code-object code offset value)))
-	   (:foreign
-	    (assert (stringp name))
-	    (multiple-value-bind
-		(value found)
-		(gethash name lisp::*foreign-symbols* 0)
-	      (unless found
-		(error "Unknown foreign symbol: ~S" name))
-	      (lisp::fixup-code-object code offset value)))))
-	#+nil
-	(:jump
-	 ;; ### Need to impliment this.
-	 )))))
+      (multiple-value-bind
+	  (value found)
+	  (ecase flavor
+	    (:assembly-routine
+	     (assert (symbolp name))
+	     (gethash name lisp::*assembler-routines*))
+	    (:foreign
+	     (assert (stringp name))
+	     (gethash name lisp::*foreign-symbols*)))
+	(unless found
+	  (error (ecase flavor
+		   (:assembly-routine "Undefined assembler routine: ~S")
+		   (:foreign "Unknown foreign symbol: ~S"))
+		 name))
+	(lisp::fixup-code-object code offset value kind)))))
+
 
 ;;; MAKE-CORE-COMPONENT  --  Interface
 ;;;
-- 
GitLab