From f44f451f6891d3ee29f2563c08a3cbb58899463c Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Fri, 16 Feb 1990 08:27:35 +0000
Subject: [PATCH] Added error0, error1, and error2 VOPs.

Fixed branch to use a branch instuction instead of a jump instruction.

Removed eql 'cause it is going to have to be written in lisp.
---
 compiler/mips/pred.lisp | 37 +++++++++++++++++++++++++------------
 1 file changed, 25 insertions(+), 12 deletions(-)

diff --git a/compiler/mips/pred.lisp b/compiler/mips/pred.lisp
index f668607ae..6dd78e178 100644
--- a/compiler/mips/pred.lisp
+++ b/compiler/mips/pred.lisp
@@ -7,6 +7,8 @@
 ;;; Scott Fahlman (FAHLMAN@CMUC). 
 ;;; **********************************************************************
 ;;;
+;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/mips/pred.lisp,v 1.2 1990/02/16 08:27:35 wlott Exp $
+;;;
 ;;;    This file contains the VM definition of predicate VOPs for the MIPS.
 ;;;
 ;;; Written by Rob MacLachlan
@@ -25,7 +27,7 @@
 (define-vop (branch)
   (:info dest)
   (:generator 5
-    (inst j dest)
+    (b dest)
     (nop)))
 
 
@@ -55,14 +57,25 @@
     (nop)))
 
 
-#+nil
-(define-vop (if-eql)
-  (:args (x :scs (any-reg descriptor-reg))
-	 (y :scs (any-reg descriptor-reg zero null)))
-  (:conditional)
-  (:info target not-p)
-  (:policy :fast-safe)
-  (:translate eql)
-  #+nil
-  (:generator 3
-    ))
+
+
+;;;; Error VOPs
+
+(define-vop (error0)
+  (:args (code :scs (any-reg descriptor-reg)))
+  (:generator 1000
+    (error-call 0 code)))
+
+(define-vop (error1)
+  (:args (code :scs (any-reg descriptor-reg))
+	 (arg :scs (descriptor-reg)))
+  (:generator 1000
+    (error-call 1 code arg)))
+
+(define-vop (error2)
+  (:args (code :scs (any-reg descriptor-reg))
+	 (arg1 :scs (descriptor-reg))
+	 (arg2 :scs (descriptor-reg)))
+  (:generator 1000
+    (error-call 2 code arg1 arg2)))
+
-- 
GitLab