cpumdis.h revision e7e589ca404045e288030a4151e57b63976cb39d
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync/** @file
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * CPUM - Disassembler. (VMM)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync */
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync/*
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * Copyright (C) 2006-2007 Sun Microsystems, Inc.
3f1e0eea71cabeb90529e546f16eb7aee513fde9vboxsync *
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * available from http://www.virtualbox.org. This file is free software;
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * you can redistribute it and/or modify it under the terms of the GNU
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * General Public License (GPL) as published by the Free Software
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync *
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * The contents of this file may alternatively be used under the terms
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * of the Common Development and Distribution License Version 1.0
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * (CDDL) only, as it comes in the "COPYING.CDDL" file of the
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * VirtualBox OSE distribution, in which case the provisions of the
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * CDDL are applicable instead of those of the GPL.
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync *
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * You may elect to license modified versions of this file under the
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync * terms and conditions of either the GPL or the CDDL or both.
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync *
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync * Clara, CA 95054 USA or visit http://www.sun.com if you need
7e960d3a0a8a3a84d7aba2cca45d72b1c31cc97bvboxsync * additional information or have any questions.
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync */
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync
0c437bb10c61b229407a7517efde04dfe3b1e4a1vboxsync#ifndef ___VBox_cpumdis_h
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync#define ___VBox_cpumdis_h
0c437bb10c61b229407a7517efde04dfe3b1e4a1vboxsync
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync#include <VBox/cpum.h>
43747b1f0bc8302a238fb35e55857a5e9aa1933dvboxsync#include <VBox/cdefs.h>
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync#include <VBox/types.h>
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync#include <VBox/x86.h>
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync#include <VBox/dis.h>
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync
2f0d866e126dd288169fed591c259c1c6b4016e5vboxsync
b74ca013e5f201a2dd371e6c438433ceac12af30vboxsyncRT_C_DECLS_BEGIN
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync/** @addtogroup grp_cpum
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync * @{
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync */
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync#ifdef IN_RING3
590bfe12ce22cd3716448fbb9f4dc51664bfe5e2vboxsyncVMMR3DECL(int) CPUMR3DisasmInstrCPU(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx, RTGCPTR GCPtrPC, PDISCPUSTATE pCpu, const char *pszPrefix);
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync
223cf005b18af2c21352a70693ebaf0582f68ebcvboxsync# ifdef DEBUG
223cf005b18af2c21352a70693ebaf0582f68ebcvboxsync/** @deprecated Use DBGFR3DisasInstrCurrentLog(). */
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsyncVMMR3DECL(void) CPUMR3DisasmInstr(PVM pVM, PVMCPU pVCpu, PCPUMCTX pCtx, RTGCPTR pc, const char *pszPrefix);
afed5ab737f4aacfae3fe73776f40e989190a7cavboxsync# else
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync/** @deprecated Use DBGFR3DisasInstrCurrentLog(). */
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync# define CPUMR3DisasmInstr(pVM, pVCpu, pCtx, pc, pszPrefix) do {} while (0)
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync# endif
d408b82da0773c7e8cd4b3a01cb8a065a2c73a2dvboxsync
0174432b2b1a760b89840ba696f7ba51def65dddvboxsync#endif /* IN_RING3 */
2daaccf68be3773aee600c5c3e48bcf5401418a6vboxsync
0174432b2b1a760b89840ba696f7ba51def65dddvboxsync/** @} */
614cbe11a7e5588dc8d369e223174b1441a09359vboxsyncRT_C_DECLS_END
2634ec5cbf8f1fa0a968cd4664ead6df1fed730dvboxsync
614cbe11a7e5588dc8d369e223174b1441a09359vboxsync
7666082b743c5e146a8cee6cc794ff4bc3fd0ffdvboxsync#endif
7666082b743c5e146a8cee6cc794ff4bc3fd0ffdvboxsync
7666082b743c5e146a8cee6cc794ff4bc3fd0ffdvboxsync