xref: /freebsd/sys/amd64/include/stack.h (revision 3c90d1ea7492e90a0d4d45bbb682a65a55362d78)
13c90d1eaSRobert Watson /*-
23c90d1eaSRobert Watson  * Mach Operating System
33c90d1eaSRobert Watson  * Copyright (c) 1991,1990 Carnegie Mellon University
43c90d1eaSRobert Watson  * All Rights Reserved.
53c90d1eaSRobert Watson  *
63c90d1eaSRobert Watson  * Permission to use, copy, modify and distribute this software and its
73c90d1eaSRobert Watson  * documentation is hereby granted, provided that both the copyright
83c90d1eaSRobert Watson  * notice and this permission notice appear in all copies of the
93c90d1eaSRobert Watson  * software, derivative works or modified versions, and any portions
103c90d1eaSRobert Watson  * thereof, and that both notices appear in supporting documentation.
113c90d1eaSRobert Watson  *
123c90d1eaSRobert Watson  * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS
133c90d1eaSRobert Watson  * CONDITION.  CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
143c90d1eaSRobert Watson  * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
153c90d1eaSRobert Watson  *
163c90d1eaSRobert Watson  * Carnegie Mellon requests users of this software to return to
173c90d1eaSRobert Watson  *
183c90d1eaSRobert Watson  *  Software Distribution Coordinator  or  Software.Distribution@CS.CMU.EDU
193c90d1eaSRobert Watson  *  School of Computer Science
203c90d1eaSRobert Watson  *  Carnegie Mellon University
213c90d1eaSRobert Watson  *  Pittsburgh PA 15213-3890
223c90d1eaSRobert Watson  *
233c90d1eaSRobert Watson  * any improvements or extensions that they make and grant Carnegie the
243c90d1eaSRobert Watson  * rights to redistribute these changes.
253c90d1eaSRobert Watson  *
263c90d1eaSRobert Watson  * $FreeBSD$
273c90d1eaSRobert Watson  */
283c90d1eaSRobert Watson 
293c90d1eaSRobert Watson #ifndef _MACHINE_STACK_H_
303c90d1eaSRobert Watson #define	_MACHINE_STACK_H_
313c90d1eaSRobert Watson 
323c90d1eaSRobert Watson /*
333c90d1eaSRobert Watson  * Stack trace.
343c90d1eaSRobert Watson  */
353c90d1eaSRobert Watson #define	INKERNEL(va) (((va) >= DMAP_MIN_ADDRESS && (va) < DMAP_MAX_ADDRESS) \
363c90d1eaSRobert Watson 	    || ((va) >= KERNBASE && (va) < VM_MAX_KERNEL_ADDRESS))
373c90d1eaSRobert Watson 
383c90d1eaSRobert Watson struct amd64_frame {
393c90d1eaSRobert Watson 	struct amd64_frame	*f_frame;
403c90d1eaSRobert Watson 	long			f_retaddr;
413c90d1eaSRobert Watson 	long			f_arg0;
423c90d1eaSRobert Watson };
433c90d1eaSRobert Watson 
443c90d1eaSRobert Watson #endif /* !_MACHINE_STACK_H_ */
45