1.0.30.25: deftransform for ARRAY-IN-BOUNDS-P
[sbcl.git] / src / compiler / pseudo-vops.lisp
1 ;;;; This file contains definitions of VOPs used as internal markers by
2 ;;;; the compiler. Since they don't emit any code, they should be
3 ;;;; portable.
4
5 ;;;; This software is part of the SBCL system. See the README file for
6 ;;;; more information.
7 ;;;;
8 ;;;; This software is derived from the CMU CL system, which was
9 ;;;; written at Carnegie Mellon University and released into the
10 ;;;; public domain. The software is in the public domain and is
11 ;;;; provided with absolutely no warranty. See the COPYING and CREDITS
12 ;;;; files for more information.
13
14 (in-package "SB!C")
15
16 ;;; This notes the place at which the environment is properly
17 ;;; initialized, for debug-info purposes.
18 (define-vop (note-environment-start)
19   (:info start-lab)
20   (:vop-var vop)
21   (:save-p :compute-only)
22   (:generator 0
23     (emit-label start-lab)
24     (note-debug-location vop start-lab :non-local-entry)))
25
26 ;;; Call a move function. Used for register save/restore and spilling.
27 (define-vop (move-operand)
28   (:args (x))
29   (:results (y))
30   (:info name)
31   (:vop-var vop)
32   (:generator 0
33     (funcall (symbol-function name) vop x y)))