CPUMCTXCORE elimination.
VMM: fix TRPMR3InjectEvent() for TRPM_FORWARD_TRAPS_IN_GC disabled
VMM, recompiler: Purge deprecated macros.
VMM,DevVGA: Don't resolve RC symbols when HM is enabled (part 1).
TRPM: Sprinkled HMIsEnabled around the place.
Do HMR3Init first in vmR3InitRing3 so the other components can skip raw-mode bits during init.
oops
#ifdef the raw-mode force flags to find more code to #ifdef out.
VBOX_WITH_RAW_MODE changes.
- *: Where possible, drop the #ifdef VBOX_WITH_RAW_RING1 when EMIsRawRing1Enabled is used. - SELM: Don't shadow TSS.esp1/ss1 unless ring-1 compression is enabled (also fixed a log statement there). - SELM: selmGuestToShadowDesc should not push ring-1 selectors into ring-2 unless EMIsRawRing1Enabled() holds true. - REM: Don't set CPU_INTERRUPT_EXTERNAL_EXIT in helper_ltr() for now.
Ring-1 compression patches, courtesy of trivirt AG: - main: diff to remove the hwvirt requirement for QNX - rem: diff for dealing with raw ring 0/1 selectors and general changes to allowed guest execution states - vmm: changes for using the guest's TSS selector index as our hypervisor TSS selector (makes str safe) (VBOX_WITH_SAFE_STR ) - vmm: changes for dealing with guest ring 1 code (VBOX_WITH_RAW_RING1) - vmm: change to emulate smsw in RC/R0 (QNX uses this old style instruction a lot so going to qemu for emulation is very expensive) - vmm: change (hack) to kick out patm virtual handlers in case they conflict with guest GDT/TSS write monitors; we should allow multiple handlers per page, but that change would be rather invasive
header (C) fixes
DBGF,DBGC,++: PVM -> PUVM. Some refactoring and cleanup as well.
VMMR3/TRPM: spaces.
VMMR3/TRPM: indent, removed bogus assertion
VMM: HM cleanup.
TRPMR3GetImportRC: Don't assert in VMMGetCpu0 with SMP guests. We don't use raw-mode for SMP, so no trouble.
TRPM.cpp: Made some unused code build again.
TRPM: Save state directly to the CPUMCPU context member instead of putting on the stack. this avoid copying the state around before returning to host context to service an IRQ, or before using IEM.
Doxygen.
Doxygen, comment typos.
bugref..
Introduced VBOX_WITH_REM in Config.kmk and the VMM.
VMM: -Wunused-parameter
TRPM: Host interrupt stats.
Don't issue instructions rescheduling to RAW or HWACCM mode when recompilation is forced.
IEM: fixed interrupt delivery in verification mode.
VMM reorg: Moving the public include files from include/VBox to include/VBox/vmm.
VMM source reorg.