Many of the miscops described in this sub-section can be coded in-line rather than as miscops. In particular, all the predicates on basic types are coded in-line with default optimization settings in the compiler. Currently, all of these predicates set the eq condition code bit to return an indication of whether the predicate is true or false. This is so that the IBM RT PC branch instructions can be used directly without having to test for NIL. However, this only works if the value of the predicate is needed for a branching decision. In the cases where the value is actually needed, T or NIL is generated in-line according to whether the predicate is true or false. At some point it might be worthwhile having two versions of these predicates, one which sets the eq condition code bit, and one which returns T or NIL. This is especially true if space becomes an issue.
sets the eq condition code bit to 1 if Object is a Common Lisp bit-vector or 0 if it is not.
sets the eq condition code bit to 1 if Object is a CMU Common Lisp bit-vector or 0 if it is not.
sets the eq condition code bit to 1 if Object is a CMU Common Lisp I-Vector or 0 if it is not.
sets the eq condition code bit to 1 if Object is a Common Lisp string or 0 if it is not.
sets the eq condition code bit to 1 if Object is a CMU Common Lisp string or 0 if it is not.
sets the eq condition code bit to 1 if Object is a bignum or 0 if it is not.
sets the eq condition code bit to 1 if Object is a long-float or 0 if it is not.
sets the eq condition code bit to 1 if Object is a complex number or 0 if it is not.
sets the eq condition code bit to 1 if Object is a ratio or 0 if it is not.
sets the eq condition code bit to 1 if Object is a fixnum or bignum or 0 if it is not.
sets the eq condition code bit to 1 if Object is a fixnum, bignum, or ratio or 0 if it is not.
sets the eq condition code bit to 1 if Object is a short-float or long-float or 0 if it is not.
sets the eq condition code bit to 1 if Object is a number or 0 if it is not.
sets the eq condition code bit to 1 if Object is a Common Lisp general vector or 0 if it is not.
sets the eq condition code bit to 1 if Object is a CMU Common Lisp G-Vector or 0 if it is not.
sets the eq condition code bit to 1 if Object is a compiled function or 0 if it is not.
sets the eq condition code bit to 1 if Object is a Common Lisp array or 0 if it is not.
sets the eq condition code bit to 1 if Object is a Common Lisp vector of 0 if it is not.
sets the eq condition code bit to 1 if Object is a CMU Common Lisp array or 0 if it is not.
sets the eq condition code bit to 1 if Object is a symbol or 0 if it is not.
sets the eq condition code bit to 1 if Object is a cons or NIL or 0 if it is not.
sets the eq condition code bit to 1 if Object is a cons or 0 if it is not.
sets the eq condition code bit to 1 if Object is a fixnum or 0 if it is not.
sets the eq condition code bit to 1 if Object is a single-float or 0 if it is not.
sets the eq condition code bit to 1 if Object is a character or 0 if it is not.