Changeset 53835 in vbox for trunk/src/VBox/VMM
- Timestamp:
- Jan 15, 2015 8:39:49 PM (10 years ago)
- svn:sync-xref-src-repo-rev:
- 97648
- Location:
- trunk/src/VBox/VMM/VMMSwitcher
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMSwitcher/AMD64andLegacy.mac
r52410 r53835 127 127 and dword [r8 + APIC_REG_LVT_THMR], ~APIC_REG_LVT_MASKED 128 128 gth64_notherm: 129 shr ecx, 1 130 jnc gth64_nocmci 131 and dword [r8 + APIC_REG_LVT_CMCI], ~APIC_REG_LVT_MASKED 132 gth64_nocmci: 129 133 jmp gth64_apic_done 130 134 … … 161 165 wrmsr 162 166 gth64_x2_notherm: 167 shr r10d, 1 168 jnc gth64_x2_nocmci 169 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_CMCI >> 4) 170 rdmsr 171 and eax, ~APIC_REG_LVT_MASKED 172 wrmsr 173 gth64_x2_nocmci: 163 174 mov rax, r8 ; restore rax 164 175 … … 365 376 cmp al, 5 366 377 jb htg_notherm 378 je htg_nocmci 379 mov eax, [rbx + APIC_REG_LVT_CMCI] 380 mov ecx, eax 381 and ecx, (APIC_REG_LVT_MASKED | APIC_REG_LVT_MODE_MASK) 382 cmp ecx, APIC_REG_LVT_MODE_NMI 383 jne htg_nocmci 384 or edi, 0x10 385 or eax, APIC_REG_LVT_MASKED 386 mov [rbx + APIC_REG_LVT_CMCI], eax 387 mov eax, [rbx + APIC_REG_LVT_CMCI] ; write completion 388 htg_nocmci: 367 389 mov eax, [rbx + APIC_REG_LVT_THMR] 368 390 mov ecx, eax … … 418 440 cmp al, 5 419 441 jb htg_x2_notherm 442 je htg_x2_nocmci 443 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_CMCI >> 4) 444 rdmsr 445 mov ebx, eax 446 and ebx, (APIC_REG_LVT_MASKED | APIC_REG_LVT_MODE_MASK) 447 cmp ebx, APIC_REG_LVT_MODE_NMI 448 jne htg_x2_nocmci 449 or edi, 0x10 450 or eax, APIC_REG_LVT_MASKED 451 wrmsr 452 htg_x2_nocmci: 420 453 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_THMR >> 4) 421 454 rdmsr -
trunk/src/VBox/VMM/VMMSwitcher/LegacyandAMD64.mac
r49528 r53835 195 195 and dword [edx + APIC_REG_LVT_THMR], ~APIC_REG_LVT_MASKED 196 196 gth_notherm: 197 shr ecx, 1 198 jnc gth_nocmci 199 and dword [edx + APIC_REG_LVT_CMCI], ~APIC_REG_LVT_MASKED 200 gth_nocmci: 197 201 jmp gth_apic_done 198 202 … … 231 235 wrmsr 232 236 gth_x2_notherm: 237 shr ebx, 1 238 jnc gth_x2_nocmci 239 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_CMCI >> 4) 240 rdmsr 241 and eax, ~APIC_REG_LVT_MASKED 242 wrmsr 243 gth_x2_nocmci: 233 244 pop edx 234 245 pop ebx … … 355 366 cmp al, 5 356 367 jb htg_notherm 368 je htg_nocmci 369 mov eax, [ebx + APIC_REG_LVT_CMCI] 370 mov ecx, eax 371 and ecx, (APIC_REG_LVT_MASKED | APIC_REG_LVT_MODE_MASK) 372 cmp ecx, APIC_REG_LVT_MODE_NMI 373 jne htg_nocmci 374 or edi, 0x10 375 or eax, APIC_REG_LVT_MASKED 376 mov [ebx + APIC_REG_LVT_CMCI], eax 377 mov eax, [ebx + APIC_REG_LVT_CMCI] ; write completion 378 htg_nocmci: 357 379 mov eax, [ebx + APIC_REG_LVT_THMR] 358 380 mov ecx, eax … … 407 429 cmp al, 5 408 430 jb htg_x2_notherm 431 je htg_x2_nocmci 432 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_CMCI >> 4) 433 rdmsr 434 mov ebx, eax 435 and ebx, (APIC_REG_LVT_MASKED | APIC_REG_LVT_MODE_MASK) 436 cmp ebx, APIC_REG_LVT_MODE_NMI 437 jne htg_x2_nocmci 438 or edi, 0x10 439 or eax, APIC_REG_LVT_MASKED 440 wrmsr 441 htg_x2_nocmci: 409 442 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_THMR >> 4) 410 443 rdmsr -
trunk/src/VBox/VMM/VMMSwitcher/PAEand32Bit.mac
r47844 r53835 108 108 and dword [edx + APIC_REG_LVT_THMR], ~APIC_REG_LVT_MASKED 109 109 gth_notherm: 110 shr ecx, 1 111 jnc gth_nocmci 112 and dword [edx + APIC_REG_LVT_CMCI], ~APIC_REG_LVT_MASKED 113 gth_nocmci: 110 114 jmp gth_apic_done 111 115 … … 143 147 wrmsr 144 148 gth_x2_notherm: 149 shr ebx, 1 150 jnc gth_x2_nocmci 151 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_CMCI >> 4) 152 rdmsr 153 and eax, ~APIC_REG_LVT_MASKED 154 wrmsr 155 gth_x2_nocmci: 145 156 pop edx 146 157 pop ebx … … 251 262 cmp al, 5 252 263 jb htg_notherm 264 je htg_nocmci 265 mov eax, [ebx + APIC_REG_LVT_CMCI] 266 mov ecx, eax 267 and ecx, (APIC_REG_LVT_MASKED | APIC_REG_LVT_MODE_MASK) 268 cmp ecx, APIC_REG_LVT_MODE_NMI 269 jne htg_nocmci 270 or edi, 0x10 271 or eax, APIC_REG_LVT_MASKED 272 mov [ebx + APIC_REG_LVT_CMCI], eax 273 mov eax, [ebx + APIC_REG_LVT_CMCI] ; write completion 274 htg_nocmci: 253 275 mov eax, [ebx + APIC_REG_LVT_THMR] 254 276 mov ecx, eax … … 303 325 cmp al, 5 304 326 jb htg_x2_notherm 327 je htg_x2_nocmci 328 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_CMCI >> 4) 329 rdmsr 330 mov ebx, eax 331 and ebx, (APIC_REG_LVT_MASKED | APIC_REG_LVT_MODE_MASK) 332 cmp ebx, APIC_REG_LVT_MODE_NMI 333 jne htg_x2_nocmci 334 or edi, 0x10 335 or eax, APIC_REG_LVT_MASKED 336 wrmsr 337 htg_x2_nocmci: 305 338 mov ecx, MSR_IA32_X2APIC_START + (APIC_REG_LVT_THMR >> 4) 306 339 rdmsr
Note:
See TracChangeset
for help on using the changeset viewer.