Skip to content
Snippets Groups Projects
Commit 9ff2fa16 authored by wlott's avatar wlott
Browse files

Ripped out pointer-compare and check<= stuff.

parent 2e82ff17
No related branches found
No related tags found
No related merge requests found
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
;;; Scott Fahlman (FAHLMAN@CMUC). ;;; Scott Fahlman (FAHLMAN@CMUC).
;;; ********************************************************************** ;;; **********************************************************************
;;; ;;;
;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/rt/system.lisp,v 1.6 1992/03/10 09:01:56 wlott Exp $ ;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/rt/system.lisp,v 1.7 1992/03/10 10:01:15 wlott Exp $
;;; ;;;
;;; IBM RT VM definitions of various system hacking operations. ;;; IBM RT VM definitions of various system hacking operations.
;;; ;;;
...@@ -19,60 +19,6 @@ ...@@ -19,60 +19,6 @@
(in-package "RT") (in-package "RT")
;;;; Random pointer comparison VOPs
(define-vop (pointer-compare)
(:args (x :scs (sap-reg))
(y :scs (sap-reg)))
(:arg-types system-area-pointer system-area-pointer)
(:conditional)
(:info target not-p)
(:policy :fast-safe)
(:note "inline comparison")
(:variant-vars condition)
(:generator 6
(inst cl x y)
(if not-p
(inst bnc condition target)
(inst bc condition target))))
(macrolet ((frob (name cond)
`(progn
(def-primitive-translator ,name (x y) `(,',name ,x ,y))
(defknown ,name (t t) boolean (movable foldable flushable))
(define-vop (,name pointer-compare)
(:translate ,name)
(:variant ,cond)))))
(frob pointer< :lt)
(frob pointer> :gt))
;;;; Random assertions VOPS.
(define-vop (check-op)
(:args (x :scs (any-reg descriptor-reg))
(y :scs (any-reg descriptor-reg)))
(:vop-var vop)
(:save-p :compute-only)
(:policy :fast-safe))
(define-vop (check<= check-op)
(:translate check<=)
(:generator 6
(let ((target (generate-error-code vop not-<=-error x y)))
(inst c x y)
(inst bc :gt target))))
(define-vop (check= check-op)
(:translate check=)
(:generator 6
(let ((target (generate-error-code vop not-=-error x y)))
(inst c x y)
(inst bnc :eq target))))
;;;; Type frobbing VOPs. ;;;; Type frobbing VOPs.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment