xref: /illumos-gate/usr/src/cmd/mdb/intel/mdb/kvm_isadep.h (revision 2a8bcb4e)
170025d76Sjohnny /*
270025d76Sjohnny  * CDDL HEADER START
370025d76Sjohnny  *
470025d76Sjohnny  * The contents of this file are subject to the terms of the
5337fc9e2Sanish  * Common Development and Distribution License (the "License").
6337fc9e2Sanish  * You may not use this file except in compliance with the License.
770025d76Sjohnny  *
870025d76Sjohnny  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
970025d76Sjohnny  * or http://www.opensolaris.org/os/licensing.
1070025d76Sjohnny  * See the License for the specific language governing permissions
1170025d76Sjohnny  * and limitations under the License.
1270025d76Sjohnny  *
1370025d76Sjohnny  * When distributing Covered Code, include this CDDL HEADER in each
1470025d76Sjohnny  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1570025d76Sjohnny  * If applicable, add the following below this CDDL HEADER, with the
1670025d76Sjohnny  * fields enclosed by brackets "[]" replaced with your own identifying
1770025d76Sjohnny  * information: Portions Copyright [yyyy] [name of copyright owner]
1870025d76Sjohnny  *
1970025d76Sjohnny  * CDDL HEADER END
2070025d76Sjohnny  */
2170025d76Sjohnny /*
22ae115bc7Smrj  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
2370025d76Sjohnny  * Use is subject to license terms.
2470025d76Sjohnny  */
2570025d76Sjohnny 
26*843e1988Sjohnlev #ifndef	_KVM_ISADEP_H
27*843e1988Sjohnlev #define	_KVM_ISADEP_H
2870025d76Sjohnny 
29*843e1988Sjohnlev #include <mdb/mdb_modapi.h>
30ae115bc7Smrj 
31*843e1988Sjohnlev #ifdef	__cplusplus
3270025d76Sjohnny extern "C" {
3370025d76Sjohnny #endif
3470025d76Sjohnny 
35*843e1988Sjohnlev extern int kt_cpustack(uintptr_t, uint_t, int, const mdb_arg_t *);
36*843e1988Sjohnlev extern int kt_cpuregs(uintptr_t, uint_t, int, const mdb_arg_t *);
37*843e1988Sjohnlev extern int kt_regs(uintptr_t, uint_t, int, const mdb_arg_t *);
38*843e1988Sjohnlev 
39*843e1988Sjohnlev extern int kt_kvmregs(mdb_tgt_t *, uint_t, mdb_tgt_gregset_t *);
40*843e1988Sjohnlev extern void kt_regs_to_kregs(struct regs *, mdb_tgt_gregset_t *);
41*843e1988Sjohnlev 
42*843e1988Sjohnlev extern int kt_putareg(mdb_tgt_t *, mdb_tgt_tid_t, const char *, mdb_tgt_reg_t);
43*843e1988Sjohnlev extern int kt_getareg(mdb_tgt_t *, mdb_tgt_tid_t,
44*843e1988Sjohnlev     const char *, mdb_tgt_reg_t *);
45*843e1988Sjohnlev 
46*843e1988Sjohnlev extern int kt_stack(uintptr_t, uint_t, int, const mdb_arg_t *);
47*843e1988Sjohnlev extern int kt_stackv(uintptr_t, uint_t, int, const mdb_arg_t *);
4870025d76Sjohnny 
49*843e1988Sjohnlev #ifdef	__cplusplus
5070025d76Sjohnny }
5170025d76Sjohnny #endif
5270025d76Sjohnny 
53*843e1988Sjohnlev #endif	/* _KVM_ISADEP_H */
54