VirtualBox

source: vbox/trunk/src/VBox/VMM/VMMAll/IEMAllStub.cpp

最後變更 在這個檔案是 108314,由 vboxsync 提交於 3 週 前

VMM/IEM: Renamed IEMAll-armv8.cpp to IEMAllStub.cpp and stripped down the includes and corrected log group. jiraref:VBP-1531

  • 屬性 svn:eol-style 設為 native
  • 屬性 svn:keywords 設為 Author Date Id Revision
檔案大小: 4.2 KB
 
1/* $Id: IEMAllStub.cpp 108314 2025-02-20 15:48:40Z vboxsync $ */
2/** @file
3 * IEM - Interpreted Execution Manager, dummy IEM stub functions.
4 *
5 * This is for use during porting to a new host as well as when IEM isn't
6 * required for some reason.
7 */
8
9/*
10 * Copyright (C) 2023-2024 Oracle and/or its affiliates.
11 *
12 * This file is part of VirtualBox base platform packages, as
13 * available from https://www.alldomusa.eu.org.
14 *
15 * This program is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU General Public License
17 * as published by the Free Software Foundation, in version 3 of the
18 * License.
19 *
20 * This program is distributed in the hope that it will be useful, but
21 * WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 * General Public License for more details.
24 *
25 * You should have received a copy of the GNU General Public License
26 * along with this program; if not, see <https://www.gnu.org/licenses>.
27 *
28 * SPDX-License-Identifier: GPL-3.0-only
29 */
30
31
32/*********************************************************************************************************************************
33* Header Files *
34*********************************************************************************************************************************/
35#define LOG_GROUP LOG_GROUP_IEM
36#include <VBox/vmm/iem.h>
37
38#include <iprt/assert.h>
39#include <iprt/errcore.h>
40#include <iprt/string.h>
41
42
43/*********************************************************************************************************************************
44* Internal Functions *
45*********************************************************************************************************************************/
46
47VMM_INT_DECL(VBOXSTRICTRC)
48IEMExecForExits(PVMCPUCC pVCpu, uint32_t fWillExit, uint32_t cMinInstructions, uint32_t cMaxInstructions,
49 uint32_t cMaxInstructionsWithoutExits, PIEMEXECFOREXITSTATS pStats)
50{
51 AssertReleaseFailed();
52 RT_NOREF(pVCpu, fWillExit, cMinInstructions, cMaxInstructions, cMaxInstructionsWithoutExits);
53 RT_ZERO(*pStats);
54 return VERR_NOT_IMPLEMENTED;
55}
56
57
58VMM_INT_DECL(VBOXSTRICTRC) IEMExecLots(PVMCPUCC pVCpu, uint32_t cMaxInstructions, uint32_t cPollRate, uint32_t *pcInstructions)
59{
60 AssertReleaseFailed();
61 RT_NOREF(pVCpu, cMaxInstructions, cPollRate, pcInstructions);
62 return VERR_NOT_IMPLEMENTED;
63}
64
65
66VMM_INT_DECL(VBOXSTRICTRC) IEMExecOne(PVMCPUCC pVCpu)
67{
68 AssertReleaseFailed();
69 RT_NOREF(pVCpu);
70 return VERR_NOT_IMPLEMENTED;
71}
72
73
74VMM_INT_DECL(VBOXSTRICTRC) IEMExecOneWithPrefetchedByPC(PVMCPUCC pVCpu, uint64_t OpcodeBytesPC,
75 const void *pvOpcodeBytes, size_t cbOpcodeBytes)
76{
77 AssertReleaseFailed();
78 RT_NOREF(pVCpu, OpcodeBytesPC, pvOpcodeBytes, cbOpcodeBytes);
79 return VERR_NOT_IMPLEMENTED;
80}
81
82
83VMM_INT_DECL(VBOXSTRICTRC) IEMExecOneBypass(PVMCPUCC pVCpu)
84{
85 AssertReleaseFailed();
86 RT_NOREF(pVCpu);
87 return VERR_NOT_IMPLEMENTED;
88}
89
90
91VMM_INT_DECL(VBOXSTRICTRC) IEMExecOneBypassWithPrefetchedByPC(PVMCPUCC pVCpu, uint64_t OpcodeBytesPC,
92 const void *pvOpcodeBytes, size_t cbOpcodeBytes)
93{
94 AssertReleaseFailed();
95 RT_NOREF(pVCpu, OpcodeBytesPC, pvOpcodeBytes, cbOpcodeBytes);
96 return VERR_NOT_IMPLEMENTED;
97}
98
99
100VMM_INT_DECL(VBOXSTRICTRC) IEMInjectTrpmEvent(PVMCPUCC pVCpu)
101{
102 AssertReleaseFailed();
103 RT_NOREF(pVCpu);
104 return VERR_NOT_IMPLEMENTED;
105}
106
107
108VMM_INT_DECL(void) IEMTlbInvalidateAll(PVMCPUCC pVCpu)
109{
110 RT_NOREF(pVCpu);
111}
112
113
114VMM_INT_DECL(void) IEMTlbInvalidateAllGlobal(PVMCPUCC pVCpu)
115{
116 RT_NOREF(pVCpu);
117}
118
119
120VMM_INT_DECL(void) IEMTlbInvalidateAllPhysicalAllCpus(PVMCC pVM, VMCPUID idCpuCaller, IEMTLBPHYSFLUSHREASON enmReason)
121{
122 RT_NOREF(pVM, idCpuCaller, enmReason);
123}
124
125
126VMMR3_INT_DECL(VBOXSTRICTRC) IEMR3ProcessForceFlag(PVM pVM, PVMCPUCC pVCpu, VBOXSTRICTRC rcStrict)
127{
128 AssertReleaseFailed();
129 RT_NOREF(pVM, pVCpu, rcStrict);
130 return VERR_NOT_IMPLEMENTED;
131}
132
注意: 瀏覽 TracBrowser 來幫助您使用儲存庫瀏覽器

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette