diff --git a/compiler/sparc/insts.lisp b/compiler/sparc/insts.lisp
index 07cc9a3b9be62c9dc09c7d85f13f58cd2b3118dd..d7c736ec93fa6cdd016bb499a5a78e5068c2c697 100644
--- a/compiler/sparc/insts.lisp
+++ b/compiler/sparc/insts.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/insts.lisp,v 1.27 2000/02/24 14:38:49 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/sparc/insts.lisp,v 1.28 2000/12/05 03:06:53 dtc Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -825,7 +825,7 @@
 ;; taddcctv is deprecated on the Sparc V9.  Use taddcc and bpvs or
 ;; taddcc and trap to get a similar effect.  (Requires changing the C
 ;; code though!)
-(define-f3-inst taddcctv #b10 #b100010 :writes :psr)
+;;(define-f3-inst taddcctv #b10 #b100010 :writes :psr)
 
 (define-f3-inst sub #b10 #b000100)
 (define-f3-inst subcc #b10 #b010100 :writes :psr)
@@ -836,7 +836,7 @@
 ;; tsubcctv is deprecated on the Sparc V9.  Use tsubcc and bpvs or
 ;; tsubcc and trap to get a similar effect.  (Requires changing the C
 ;; code though!)
-(define-f3-inst tsubcctv #b10 #b100011 :writes :psr)
+;;(define-f3-inst tsubcctv #b10 #b100011 :writes :psr)
 
 (define-f3-inst mulscc #b10 #b100100 :reads :y :writes (:psr :y))
 (define-f3-inst and #b10 #b000001)
@@ -1152,11 +1152,15 @@
   (:emitter
    (emit-relative-branch-integer segment 1 #b001 cond-or-target target (or cc :icc) (or pred :pt))))
 
+;; This doesn't cover all of the possible formats for the trap
+;; instruction.  We really only want a trap with a immediate trap
+;; value.  Also, the Sparc Compliance Definition 2.4.1 says only trap
+;; numbers 16-31 are allowed for user code.  All other trap numbers
+;; have other uses.  The restriction on target will prevent us from
+;; using bad trap numbers by mistake.
 (define-instruction t (segment condition target)
   (:declare (type branch-condition condition)
-	    (type #-sparc-v9 (or (signed-byte 13) (unsigned-byte 13))
-		  #+sparc-v9 (or (signed-byte 7) (unsigned-byte 7))
-		  target))
+	    (type (integer 16 31) target))
   (:printer format-3-immed ((op #b10)
                             (rd nil :type 'branch-condition)
                             (op3 #b111010)