x86.mac revision c7749416a1f37310d865910e01845bbd191d37eb
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define ___VBox_x86_h
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_CF RT_BIT(0)
5b281ba489ca18f0380d7efc7a5108b606cce449vboxsync%define X86_EFL_PF RT_BIT(2)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_AF RT_BIT(4)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_ZF RT_BIT(6)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_SF RT_BIT(7)
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync%define X86_EFL_TF RT_BIT(8)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_IF RT_BIT(9)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_DF RT_BIT(10)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_OF RT_BIT(11)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_EFL_IOPL (RT_BIT(12) | RT_BIT(13))
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_NT RT_BIT(14)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_RF RT_BIT(16)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_VM RT_BIT(17)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_AC RT_BIT(18)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_VIF RT_BIT(19)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_VIP RT_BIT(20)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_ID RT_BIT(21)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_IOPL_SHIFT 12
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_EFL_GET_IOPL(efl) (((efl) >> X86_EFL_IOPL_SHIFT) & 3)
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_CPUID_VENDOR_INTEL_EBX 0x756e6547 /* Genu */
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_CPUID_VENDOR_INTEL_ECX 0x6c65746e /* ntel */
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_CPUID_VENDOR_INTEL_EDX 0x49656e69 /* ineI */
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync%define X86_CPUID_VENDOR_AMD_EBX 0x68747541 /* Auth */
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync%define X86_CPUID_VENDOR_AMD_ECX 0x444d4163 /* cAMD */
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync%define X86_CPUID_VENDOR_AMD_EDX 0x69746e65 /* enti */
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync%define X86_CPUID_FEATURE_ECX_SSE3 RT_BIT(0)
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync%define X86_CPUID_FEATURE_ECX_MONITOR RT_BIT(3)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_CPLDS RT_BIT(4)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_VMX RT_BIT(5)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_EST RT_BIT(7)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_TM2 RT_BIT(8)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_SSSE3 RT_BIT(9)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_CNTXID RT_BIT(10)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_CX16 RT_BIT(13)
aa4bcf0a4b2db3ac352b56a291d49cb8d4b66d32vboxsync%define X86_CPUID_FEATURE_ECX_TPRUPDATE RT_BIT(14)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_ECX_POPCOUNT RT_BIT(23)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_FPU RT_BIT(0)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_VME RT_BIT(1)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_DE RT_BIT(2)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_PSE RT_BIT(3)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_FEATURE_EDX_TSC RT_BIT(4)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_FEATURE_EDX_MSR RT_BIT(5)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_FEATURE_EDX_PAE RT_BIT(6)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_MCE RT_BIT(7)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_CX8 RT_BIT(8)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_APIC RT_BIT(9)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_SEP RT_BIT(11)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_MTRR RT_BIT(12)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_PGE RT_BIT(13)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_MCA RT_BIT(14)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_CMOV RT_BIT(15)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_PAT RT_BIT(16)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_PSE36 RT_BIT(17)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_PSN RT_BIT(18)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_CLFSH RT_BIT(19)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_DS RT_BIT(21)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_ACPI RT_BIT(22)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_MMX RT_BIT(23)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_FXSR RT_BIT(24)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_FEATURE_EDX_SSE RT_BIT(25)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_FEATURE_EDX_SSE2 RT_BIT(26)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_FEATURE_EDX_SS RT_BIT(27)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_FEATURE_EDX_HTT RT_BIT(28)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_TM RT_BIT(29)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_FEATURE_EDX_PBE RT_BIT(31)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_FPU RT_BIT(0)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_VME RT_BIT(1)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_DE RT_BIT(2)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_PSE RT_BIT(3)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_TSC RT_BIT(4)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_MSR RT_BIT(5)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_PAE RT_BIT(6)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_MCE RT_BIT(7)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_CX8 RT_BIT(8)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_APIC RT_BIT(9)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_SEP RT_BIT(11)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_MTRR RT_BIT(12)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_PGE RT_BIT(13)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_MCA RT_BIT(14)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_CMOV RT_BIT(15)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_PAT RT_BIT(16)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_AMD_FEATURE_EDX_PSE36 RT_BIT(17)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_NX RT_BIT(20)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CPUID_AMD_FEATURE_EDX_AXMMX RT_BIT(22)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_MMX RT_BIT(23)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_FXSR RT_BIT(24)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_FFXSR RT_BIT(25)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_PAGE1GB RT_BIT(26)
aa4bcf0a4b2db3ac352b56a291d49cb8d4b66d32vboxsync%define X86_CPUID_AMD_FEATURE_EDX_RDTSCP RT_BIT(27)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_LONG_MODE RT_BIT(29)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_EDX_3DNOW_EX RT_BIT(30)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_EDX_3DNOW RT_BIT(31)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_ECX_LAHF_SAHF RT_BIT(0)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_ECX_CMPL RT_BIT(1)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_ECX_SVM RT_BIT(2)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CPUID_AMD_FEATURE_ECX_EXT_APIC RT_BIT(3)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_CR8L RT_BIT(4)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_ABM RT_BIT(5)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_SSE4A RT_BIT(6)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_MISALNSSE RT_BIT(7)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_3DNOWPRF RT_BIT(8)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_OSVW RT_BIT(9)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_SKINIT RT_BIT(12)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CPUID_AMD_FEATURE_ECX_WDT RT_BIT(13)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_PE RT_BIT(0)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_PROTECTION_ENABLE RT_BIT(0)
aa4bcf0a4b2db3ac352b56a291d49cb8d4b66d32vboxsync%define X86_CR0_MP RT_BIT(1)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_MONITOR_COPROCESSOR RT_BIT(1)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_EM RT_BIT(2)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_EMULATE_FPU RT_BIT(2)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_TS RT_BIT(3)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_TASK_SWITCH RT_BIT(3)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_ET RT_BIT(4)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_EXTENSION_TYPE RT_BIT(4)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_NE RT_BIT(5)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_NUMERIC_ERROR RT_BIT(5)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_WP RT_BIT(16)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR0_WRITE_PROTECT RT_BIT(16)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CR0_AM RT_BIT(18)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_ALIGMENT_MASK RT_BIT(18)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CR0_NW RT_BIT(29)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_NOT_WRITE_THROUGH RT_BIT(29)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CR0_CD RT_BIT(30)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_CACHE_DISABLE RT_BIT(30)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_PG RT_BIT(31)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR0_PAGING RT_BIT(31)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CR3_PWT RT_BIT(3)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR3_PCD RT_BIT(4)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR3_PAGE_MASK (0xfffff000)
aa4bcf0a4b2db3ac352b56a291d49cb8d4b66d32vboxsync%define X86_CR3_PAE_PAGE_MASK (0xffffffe0)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR4_VME RT_BIT(0)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR4_PVI RT_BIT(1)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR4_TSD RT_BIT(2)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR4_DE RT_BIT(3)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR4_PSE RT_BIT(4)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR4_PAE RT_BIT(5)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR4_MCE RT_BIT(6)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR4_PGE RT_BIT(7)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR4_PCE RT_BIT(8)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_CR4_OSFSXR RT_BIT(9)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_CR4_OSXMMEEXCPT RT_BIT(10)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_CR4_VMXE RT_BIT(13)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_DR6_B0 RT_BIT(0)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_DR6_B1 RT_BIT(1)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_DR6_B2 RT_BIT(2)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_DR6_B3 RT_BIT(3)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_DR6_BD RT_BIT(13)
47c238f82281a3771c8bfb66858da823ecf03dbcvboxsync%define X86_DR6_BS RT_BIT(14)
fe4be2b043180249b7f7d5b22aced0bfe75764c4vboxsync%define X86_DR6_BT RT_BIT(15)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_DR7_L0 RT_BIT(0)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_DR7_G0 RT_BIT(1)
aa4bcf0a4b2db3ac352b56a291d49cb8d4b66d32vboxsync%define X86_DR7_L1 RT_BIT(2)
a8e0cb7ddfd05bcabf5e18959cf09e723f254663vboxsync%define X86_DR7_G1 RT_BIT(3)