xref: /freebsd-12.1/sys/amd64/include/stack.h (revision 3c90d1ea)
1*3c90d1eaSRobert Watson /*-
2*3c90d1eaSRobert Watson  * Mach Operating System
3*3c90d1eaSRobert Watson  * Copyright (c) 1991,1990 Carnegie Mellon University
4*3c90d1eaSRobert Watson  * All Rights Reserved.
5*3c90d1eaSRobert Watson  *
6*3c90d1eaSRobert Watson  * Permission to use, copy, modify and distribute this software and its
7*3c90d1eaSRobert Watson  * documentation is hereby granted, provided that both the copyright
8*3c90d1eaSRobert Watson  * notice and this permission notice appear in all copies of the
9*3c90d1eaSRobert Watson  * software, derivative works or modified versions, and any portions
10*3c90d1eaSRobert Watson  * thereof, and that both notices appear in supporting documentation.
11*3c90d1eaSRobert Watson  *
12*3c90d1eaSRobert Watson  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS
13*3c90d1eaSRobert Watson  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
14*3c90d1eaSRobert Watson  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
15*3c90d1eaSRobert Watson  *
16*3c90d1eaSRobert Watson  * Carnegie Mellon requests users of this software to return to
17*3c90d1eaSRobert Watson  *
18*3c90d1eaSRobert Watson  *  Software Distribution Coordinator  or  [email protected]
19*3c90d1eaSRobert Watson  *  School of Computer Science
20*3c90d1eaSRobert Watson  *  Carnegie Mellon University
21*3c90d1eaSRobert Watson  *  Pittsburgh PA 15213-3890
22*3c90d1eaSRobert Watson  *
23*3c90d1eaSRobert Watson  * any improvements or extensions that they make and grant Carnegie the
24*3c90d1eaSRobert Watson  * rights to redistribute these changes.
25*3c90d1eaSRobert Watson  *
26*3c90d1eaSRobert Watson  * $FreeBSD$
27*3c90d1eaSRobert Watson  */
28*3c90d1eaSRobert Watson 
29*3c90d1eaSRobert Watson #ifndef _MACHINE_STACK_H_
30*3c90d1eaSRobert Watson #define	_MACHINE_STACK_H_
31*3c90d1eaSRobert Watson 
32*3c90d1eaSRobert Watson /*
33*3c90d1eaSRobert Watson  * Stack trace.
34*3c90d1eaSRobert Watson  */
35*3c90d1eaSRobert Watson #define	INKERNEL(va) (((va) >= DMAP_MIN_ADDRESS && (va) < DMAP_MAX_ADDRESS) \
36*3c90d1eaSRobert Watson 	    || ((va) >= KERNBASE && (va) < VM_MAX_KERNEL_ADDRESS))
37*3c90d1eaSRobert Watson 
38*3c90d1eaSRobert Watson struct amd64_frame {
39*3c90d1eaSRobert Watson 	struct amd64_frame	*f_frame;
40*3c90d1eaSRobert Watson 	long			f_retaddr;
41*3c90d1eaSRobert Watson 	long			f_arg0;
42*3c90d1eaSRobert Watson };
43*3c90d1eaSRobert Watson 
44*3c90d1eaSRobert Watson #endif /* !_MACHINE_STACK_H_ */
45