Changeset 47607 in vbox
- Timestamp:
- Aug 8, 2013 10:04:59 AM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR0/HMR0Mixed.mac
r47606 r47607 20 20 %ifndef VBOX_WITH_OLD_VTX_CODE 21 21 %ifdef RT_ARCH_AMD64 22 %define VMX_SKIP_GDTR_IDTR 22 ;; 23 ; Keep these macro definitions in this file as it gets included and compiled 24 ; with RT_ARCH_AMD64 or RT_ARCH_X86. 25 %define VMX_SKIP_GDTR 26 %define VMX_SKIP_IDTR 23 27 %define VMX_SKIP_TR 24 28 %endif … … 113 117 %endif 114 118 115 %ifndef VMX_SKIP_GDTR _IDTR119 %ifndef VMX_SKIP_GDTR 116 120 ; VT-x only saves the base of the GDTR & IDTR and resets the limit to 0xffff; we must restore the limit correctly! 117 121 sub xSP, xCB * 2 118 122 sgdt [xSP] 119 123 %endif 124 %ifndef VMX_SKIP_IDTR 120 125 sub xSP, xCB * 2 121 126 sidt [xSP] … … 167 172 168 173 ; Restore base and limit of the IDTR & GDTR. 169 %ifndef VMX_SKIP_ GDTR_IDTR174 %ifndef VMX_SKIP_IDTR 170 175 lidt [xSP] 171 176 add xSP, xCB * 2 177 %endif 178 %ifndef VMX_SKIP_GDTR 172 179 lgdt [xSP] 173 180 add xSP, xCB * 2 … … 264 271 .vmxstart_invalid_vmcs_ptr: 265 272 ; Restore base and limit of the IDTR & GDTR 266 %ifndef VMX_SKIP_ GDTR_IDTR273 %ifndef VMX_SKIP_IDTR 267 274 lidt [xSP] 268 275 add xSP, xCB * 2 276 %endif 277 %ifndef VMX_SKIP_GDTR 269 278 lgdt [xSP] 270 279 add xSP, xCB * 2 … … 305 314 .vmxstart_start_failed: 306 315 ; Restore base and limit of the IDTR & GDTR. 307 %ifndef VMX_SKIP_ GDTR_IDTR316 %ifndef VMX_SKIP_IDTR 308 317 lidt [xSP] 309 318 add xSP, xCB * 2 319 %endif 320 %ifndef VMX_SKIP_GDTR 310 321 lgdt [xSP] 311 322 add xSP, xCB * 2 … … 438 449 439 450 ; VT-x only saves the base of the GDTR & IDTR and resets the limit to 0xffff; we must restore the limit correctly! 440 %ifndef VMX_SKIP_GDTR _IDTR451 %ifndef VMX_SKIP_GDTR 441 452 sub xSP, xCB * 2 442 453 sgdt [xSP] 443 454 %endif 455 %ifndef VMX_SKIP_IDTR 444 456 sub xSP, xCB * 2 445 457 sidt [xSP] … … 499 511 500 512 ; Restore base and limit of the IDTR & GDTR 501 %ifndef VMX_SKIP_ GDTR_IDTR513 %ifndef VMX_SKIP_IDTR 502 514 lidt [xSP] 503 515 add xSP, xCB * 2 516 %endif 517 %ifndef VMX_SKIP_GDTR 504 518 lgdt [xSP] 505 519 add xSP, xCB * 2 … … 611 625 .vmxstart64_invalid_vmcs_ptr: 612 626 ; Restore base and limit of the IDTR & GDTR. 613 %ifndef VMX_SKIP_ GDTR_IDTR627 %ifndef VMX_SKIP_IDTR 614 628 lidt [xSP] 615 629 add xSP, xCB * 2 630 %endif 631 %ifndef VMX_SKIP_GDTR 616 632 lgdt [xSP] 617 633 add xSP, xCB * 2 … … 665 681 .vmxstart64_start_failed: 666 682 ; Restore base and limit of the IDTR & GDTR. 667 %ifndef VMX_SKIP_ GDTR_IDTR683 %ifndef VMX_SKIP_IDTR 668 684 lidt [xSP] 669 685 add xSP, xCB * 2 686 %endif 687 %ifndef VMX_SKIP_GDTR 670 688 lgdt [xSP] 671 689 add xSP, xCB * 2
Note:
See TracChangeset
for help on using the changeset viewer.