VirtualBox

Changeset 45681 in vbox for trunk/include/VBox/vmm


Ignore:
Timestamp:
Apr 23, 2013 1:53:27 PM (12 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
85214
Message:

VMM/HMVMXR0: Fix for 32-bit hosts, round 1.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/hm_vmx.h

    r45653 r45681  
    4040 * @{
    4141 */
    42 #define VMX_VMCS_GUEST_RIP_CACHE_IDX                                        0
    43 #define VMX_VMCS_GUEST_RSP_CACHE_IDX                                        1
    44 #define VMX_VMCS_GUEST_RFLAGS_CACHE_IDX                                     2
    45 #define VMX_VMCS32_GUEST_INTERRUPTIBILITY_STATE_CACHE_IDX                   3
    46 #define VMX_VMCS_CTRL_CR0_READ_SHADOW_CACHE_IDX                             4
    47 #define VMX_VMCS_GUEST_CR0_CACHE_IDX                                        5
    48 #define VMX_VMCS_CTRL_CR4_READ_SHADOW_CACHE_IDX                             6
    49 #define VMX_VMCS_GUEST_CR4_CACHE_IDX                                        7
    50 #define VMX_VMCS_GUEST_DR7_CACHE_IDX                                        8
    51 #define VMX_VMCS32_GUEST_SYSENTER_CS_CACHE_IDX                              9
    52 #define VMX_VMCS_GUEST_SYSENTER_EIP_CACHE_IDX                               10
    53 #define VMX_VMCS_GUEST_SYSENTER_ESP_CACHE_IDX                               11
    54 #define VMX_VMCS32_GUEST_GDTR_LIMIT_CACHE_IDX                               12
    55 #define VMX_VMCS_GUEST_GDTR_BASE_CACHE_IDX                                  13
    56 #define VMX_VMCS32_GUEST_IDTR_LIMIT_CACHE_IDX                               14
    57 #define VMX_VMCS_GUEST_IDTR_BASE_CACHE_IDX                                  15
    58 #define VMX_VMCS16_GUEST_FIELD_CS_CACHE_IDX                                 16
    59 #define VMX_VMCS32_GUEST_CS_LIMIT_CACHE_IDX                                 17
    60 #define VMX_VMCS_GUEST_CS_BASE_CACHE_IDX                                    18
    61 #define VMX_VMCS32_GUEST_CS_ACCESS_RIGHTS_CACHE_IDX                         19
    62 #define VMX_VMCS16_GUEST_FIELD_DS_CACHE_IDX                                 20
    63 #define VMX_VMCS32_GUEST_DS_LIMIT_CACHE_IDX                                 21
    64 #define VMX_VMCS_GUEST_DS_BASE_CACHE_IDX                                    22
    65 #define VMX_VMCS32_GUEST_DS_ACCESS_RIGHTS_CACHE_IDX                         23
    66 #define VMX_VMCS16_GUEST_FIELD_ES_CACHE_IDX                                 24
    67 #define VMX_VMCS32_GUEST_ES_LIMIT_CACHE_IDX                                 25
    68 #define VMX_VMCS_GUEST_ES_BASE_CACHE_IDX                                    26
    69 #define VMX_VMCS32_GUEST_ES_ACCESS_RIGHTS_CACHE_IDX                         27
    70 #define VMX_VMCS16_GUEST_FIELD_FS_CACHE_IDX                                 28
    71 #define VMX_VMCS32_GUEST_FS_LIMIT_CACHE_IDX                                 29
    72 #define VMX_VMCS_GUEST_FS_BASE_CACHE_IDX                                    30
    73 #define VMX_VMCS32_GUEST_FS_ACCESS_RIGHTS_CACHE_IDX                         31
    74 #define VMX_VMCS16_GUEST_FIELD_GS_CACHE_IDX                                 32
    75 #define VMX_VMCS32_GUEST_GS_LIMIT_CACHE_IDX                                 33
    76 #define VMX_VMCS_GUEST_GS_BASE_CACHE_IDX                                    34
    77 #define VMX_VMCS32_GUEST_GS_ACCESS_RIGHTS_CACHE_IDX                         35
    78 #define VMX_VMCS16_GUEST_FIELD_SS_CACHE_IDX                                 36
    79 #define VMX_VMCS32_GUEST_SS_LIMIT_CACHE_IDX                                 37
    80 #define VMX_VMCS_GUEST_SS_BASE_CACHE_IDX                                    38
    81 #define VMX_VMCS32_GUEST_SS_ACCESS_RIGHTS_CACHE_IDX                         39
    82 #define VMX_VMCS16_GUEST_FIELD_TR_CACHE_IDX                                 40
    83 #define VMX_VMCS32_GUEST_TR_LIMIT_CACHE_IDX                                 41
    84 #define VMX_VMCS_GUEST_TR_BASE_CACHE_IDX                                    42
    85 #define VMX_VMCS32_GUEST_TR_ACCESS_RIGHTS_CACHE_IDX                         43
    86 #define VMX_VMCS16_GUEST_FIELD_LDTR_CACHE_IDX                               44
    87 #define VMX_VMCS32_GUEST_LDTR_LIMIT_CACHE_IDX                               45
    88 #define VMX_VMCS_GUEST_LDTR_BASE_CACHE_IDX                                  46
    89 #define VMX_VMCS32_GUEST_LDTR_ACCESS_RIGHTS_CACHE_IDX                       47
    90 #define VMX_VMCS32_RO_EXIT_REASON_CACHE_IDX                                 48
    91 #define VMX_VMCS32_RO_VM_INSTR_ERROR_CACHE_IDX                              49
    92 #define VMX_VMCS32_RO_EXIT_INSTR_LENGTH_CACHE_IDX                           50
    93 #define VMX_VMCS32_RO_EXIT_INTERRUPTION_ERROR_CODE_CACHE_IDX                51
    94 #define VMX_VMCS32_RO_EXIT_INSTR_INFO_CACHE_IDX                             52
    95 #define VMX_VMCS32_RO_EXIT_INTERRUPTION_INFO_CACHE_IDX                      53
    96 #define VMX_VMCS_RO_EXIT_QUALIFICATION_CACHE_IDX                            54
    97 #define VMX_VMCS32_RO_IDT_INFO_CACHE_IDX                                    55
    98 #define VMX_VMCS32_RO_IDT_ERROR_CODE_CACHE_IDX                              56
    99 #define VMX_VMCS_MAX_CACHE_IDX                                              (VMX_VMCS32_RO_IDT_ERROR_CODE_CACHE_IDX + 1)
    100 #define VMX_VMCS_GUEST_CR3_CACHE_IDX                                        57
    101 #define VMX_VMCS64_EXIT_GUEST_PHYS_ADDR_FULL_CACHE_IDX                      58
    102 #define VMX_VMCS_MAX_NESTED_PAGING_CACHE_IDX                                (VMX_VMCS64_EXIT_GUEST_PHYS_ADDR_FULL_CACHE_IDX + 1)
     42#ifndef VBOX_WITH_OLD_VTX_CODE
     43# define VMX_VMCS_GUEST_ES_BASE_CACHE_IDX                                     0
     44# define VMX_VMCS_GUEST_CS_BASE_CACHE_IDX                                     1
     45# define VMX_VMCS_GUEST_SS_BASE_CACHE_IDX                                     2
     46# define VMX_VMCS_GUEST_DS_BASE_CACHE_IDX                                     3
     47# define VMX_VMCS_GUEST_FS_BASE_CACHE_IDX                                     4
     48# define VMX_VMCS_GUEST_GS_BASE_CACHE_IDX                                     5
     49# define VMX_VMCS_GUEST_LDTR_BASE_CACHE_IDX                                   6
     50# define VMX_VMCS_GUEST_TR_BASE_CACHE_IDX                                     7
     51# define VMX_VMCS_GUEST_GDTR_BASE_CACHE_IDX                                   8
     52# define VMX_VMCS_GUEST_IDTR_BASE_CACHE_IDX                                   9
     53# define VMX_VMCS_GUEST_DR7_CACHE_IDX                                         10
     54# define VMX_VMCS_GUEST_RSP_CACHE_IDX                                         11
     55# define VMX_VMCS_GUEST_RIP_CACHE_IDX                                         12
     56# define VMX_VMCS_GUEST_RFLAGS_CACHE_IDX                                      13
     57# define VMX_VMCS_GUEST_SYSENTER_ESP_CACHE_IDX                                14
     58# define VMX_VMCS_GUEST_SYSENTER_EIP_CACHE_IDX                                15
     59# define VMX_VMCS_RO_EXIT_QUALIFICATION_CACHE_IDX                             16
     60# define VMX_VMCS_MAX_CACHE_IDX                                               (VMX_VMCS_RO_EXIT_QUALIFICATION_CACHE_IDX + 1)
     61# define VMX_VMCS_GUEST_CR3_CACHE_IDX                                         17
     62# define VMX_VMCS_MAX_NESTED_PAGING_CACHE_IDX                                 (VMX_VMCS_GUEST_CR3_CACHE_IDX + 1)
     63#else /* VBOX_WITH_OLD_VTX_CODE */
     64# define VMX_VMCS_GUEST_RIP_CACHE_IDX                                        0
     65# define VMX_VMCS_GUEST_RSP_CACHE_IDX                                        1
     66# define VMX_VMCS_GUEST_RFLAGS_CACHE_IDX                                     2
     67# define VMX_VMCS32_GUEST_INTERRUPTIBILITY_STATE_CACHE_IDX                   3
     68# define VMX_VMCS_CTRL_CR0_READ_SHADOW_CACHE_IDX                             4
     69# define VMX_VMCS_GUEST_CR0_CACHE_IDX                                        5
     70# define VMX_VMCS_CTRL_CR4_READ_SHADOW_CACHE_IDX                             6
     71# define VMX_VMCS_GUEST_CR4_CACHE_IDX                                        7
     72# define VMX_VMCS_GUEST_DR7_CACHE_IDX                                        8
     73# define VMX_VMCS32_GUEST_SYSENTER_CS_CACHE_IDX                              9
     74# define VMX_VMCS_GUEST_SYSENTER_EIP_CACHE_IDX                               10
     75# define VMX_VMCS_GUEST_SYSENTER_ESP_CACHE_IDX                               11
     76# define VMX_VMCS32_GUEST_GDTR_LIMIT_CACHE_IDX                               12
     77# define VMX_VMCS_GUEST_GDTR_BASE_CACHE_IDX                                  13
     78# define VMX_VMCS32_GUEST_IDTR_LIMIT_CACHE_IDX                               14
     79# define VMX_VMCS_GUEST_IDTR_BASE_CACHE_IDX                                  15
     80# define VMX_VMCS16_GUEST_FIELD_CS_CACHE_IDX                                 16
     81# define VMX_VMCS32_GUEST_CS_LIMIT_CACHE_IDX                                 17
     82# define VMX_VMCS_GUEST_CS_BASE_CACHE_IDX                                    18
     83# define VMX_VMCS32_GUEST_CS_ACCESS_RIGHTS_CACHE_IDX                         19
     84# define VMX_VMCS16_GUEST_FIELD_DS_CACHE_IDX                                 20
     85# define VMX_VMCS32_GUEST_DS_LIMIT_CACHE_IDX                                 21
     86# define VMX_VMCS_GUEST_DS_BASE_CACHE_IDX                                    22
     87# define VMX_VMCS32_GUEST_DS_ACCESS_RIGHTS_CACHE_IDX                         23
     88# define VMX_VMCS16_GUEST_FIELD_ES_CACHE_IDX                                 24
     89# define VMX_VMCS32_GUEST_ES_LIMIT_CACHE_IDX                                 25
     90# define VMX_VMCS_GUEST_ES_BASE_CACHE_IDX                                    26
     91# define VMX_VMCS32_GUEST_ES_ACCESS_RIGHTS_CACHE_IDX                         27
     92# define VMX_VMCS16_GUEST_FIELD_FS_CACHE_IDX                                 28
     93# define VMX_VMCS32_GUEST_FS_LIMIT_CACHE_IDX                                 29
     94# define VMX_VMCS_GUEST_FS_BASE_CACHE_IDX                                    30
     95# define VMX_VMCS32_GUEST_FS_ACCESS_RIGHTS_CACHE_IDX                         31
     96# define VMX_VMCS16_GUEST_FIELD_GS_CACHE_IDX                                 32
     97# define VMX_VMCS32_GUEST_GS_LIMIT_CACHE_IDX                                 33
     98# define VMX_VMCS_GUEST_GS_BASE_CACHE_IDX                                    34
     99# define VMX_VMCS32_GUEST_GS_ACCESS_RIGHTS_CACHE_IDX                         35
     100# define VMX_VMCS16_GUEST_FIELD_SS_CACHE_IDX                                 36
     101# define VMX_VMCS32_GUEST_SS_LIMIT_CACHE_IDX                                 37
     102# define VMX_VMCS_GUEST_SS_BASE_CACHE_IDX                                    38
     103# define VMX_VMCS32_GUEST_SS_ACCESS_RIGHTS_CACHE_IDX                         39
     104# define VMX_VMCS16_GUEST_FIELD_TR_CACHE_IDX                                 40
     105# define VMX_VMCS32_GUEST_TR_LIMIT_CACHE_IDX                                 41
     106# define VMX_VMCS_GUEST_TR_BASE_CACHE_IDX                                    42
     107# define VMX_VMCS32_GUEST_TR_ACCESS_RIGHTS_CACHE_IDX                         43
     108# define VMX_VMCS16_GUEST_FIELD_LDTR_CACHE_IDX                               44
     109# define VMX_VMCS32_GUEST_LDTR_LIMIT_CACHE_IDX                               45
     110# define VMX_VMCS_GUEST_LDTR_BASE_CACHE_IDX                                  46
     111# define VMX_VMCS32_GUEST_LDTR_ACCESS_RIGHTS_CACHE_IDX                       47
     112# define VMX_VMCS32_RO_EXIT_REASON_CACHE_IDX                                 48
     113# define VMX_VMCS32_RO_VM_INSTR_ERROR_CACHE_IDX                              49
     114# define VMX_VMCS32_RO_EXIT_INSTR_LENGTH_CACHE_IDX                           50
     115# define VMX_VMCS32_RO_EXIT_INTERRUPTION_ERROR_CODE_CACHE_IDX                51
     116# define VMX_VMCS32_RO_EXIT_INSTR_INFO_CACHE_IDX                             52
     117# define VMX_VMCS32_RO_EXIT_INTERRUPTION_INFO_CACHE_IDX                      53
     118# define VMX_VMCS_RO_EXIT_QUALIFICATION_CACHE_IDX                            54
     119# define VMX_VMCS32_RO_IDT_INFO_CACHE_IDX                                    55
     120# define VMX_VMCS32_RO_IDT_ERROR_CODE_CACHE_IDX                              56
     121# define VMX_VMCS_MAX_CACHE_IDX                                              (VMX_VMCS32_RO_IDT_ERROR_CODE_CACHE_IDX + 1)
     122# define VMX_VMCS_GUEST_CR3_CACHE_IDX                                        57
     123# define VMX_VMCS64_EXIT_GUEST_PHYS_ADDR_FULL_CACHE_IDX                      58
     124# define VMX_VMCS_MAX_NESTED_PAGING_CACHE_IDX                                (VMX_VMCS64_EXIT_GUEST_PHYS_ADDR_FULL_CACHE_IDX + 1)
     125#endif  /* VBOX_WITH_OLD_VTX_CODE */
    103126/** @} */
    104127
Note: See TracChangeset for help on using the changeset viewer.

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