Changeset 60233 in vbox
- Timestamp:
- Mar 28, 2016 10:55:07 PM (9 years ago)
- svn:sync-xref-src-repo-rev:
- 106267
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-basic-2-template.c
r60232 r60233 87 87 * Compares trap stuff. 88 88 */ 89 #define bs3CpuBasic2_Compare TrapCtx1 BS3_CMN_NM(bs3CpuBasic2_CompareTrapCtx1)90 void bs3CpuBasic2_Compare TrapCtx1(PCBS3TRAPFRAME pTrapCtx, PCBS3REGCTX pStartCtx, uint16_t cbIpAdjust, uint8_t bXcpt,89 #define bs3CpuBasic2_CompareIntCtx1 BS3_CMN_NM(bs3CpuBasic2_CompareIntCtx1) 90 void bs3CpuBasic2_CompareIntCtx1(PCBS3TRAPFRAME pTrapCtx, PCBS3REGCTX pStartCtx, uint8_t bXcpt, 91 91 const char *pszMode, unsigned uLine) 92 92 { … … 94 94 CHECK_MEMBER("bXcpt", "%#04x", pTrapCtx->bXcpt, bXcpt); 95 95 CHECK_MEMBER("bErrCd", "%#06RX64", pTrapCtx->uErrCd, 0); 96 Bs3TestCheckRegCtxEx(&pTrapCtx->Ctx, pStartCtx, cbIpAdjust, 0 /*cbSpAdjust*/, 0 /*fExtraEfl*/, pszMode, uLine);96 Bs3TestCheckRegCtxEx(&pTrapCtx->Ctx, pStartCtx, 2 /*int xx*/, 0 /*cbSpAdjust*/, 0 /*fExtraEfl*/, pszMode, uLine); 97 97 if (Bs3TestSubErrorCount() != cErrorsBefore) 98 98 { … … 268 268 # endif 269 269 Bs3TrapSetJmpAndRestore(apCtx8x[iCtx], &TrapCtx); 270 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, apCtx8x[iCtx], 2 /*int 80h*/, 0x80+iCtx /*bXcpt*/, pszMode, iCtx);270 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, apCtx8x[iCtx], 0x80+iCtx /*bXcpt*/, pszMode, iCtx); 271 271 } 272 272 … … 290 290 f16BitSys, pszMode, uLine); 291 291 else 292 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &CtxTmp, 2 /*int 8xh*/, 0x80 + iCtx /*bXcpt*/, pszMode, uLine);292 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &CtxTmp, 0x80 + iCtx /*bXcpt*/, pszMode, uLine); 293 293 } 294 294 } … … 383 383 bs3CpuBasic2_CompareGpCtx(&TrapCtx, &CtxTmp, uCs & X86_SEL_MASK_OFF_RPL, f16BitSys, pszMode, uLine); 384 384 else 385 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &CtxTmp, 2 /*int 8xh*/, 0x80 + iCtx /*bXcpt*/, pszMode, uLine);385 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &CtxTmp, 0x80 + iCtx /*bXcpt*/, pszMode, uLine); 386 386 } 387 387 paIdt[(0x80 + iCtx) << cIdteShift].Gate.u16Sel = uSysR0Cs; … … 445 445 f16BitSys, pszMode, uLine); 446 446 else 447 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx81, 2 /*int 8xh*/, 0x81 /*bXcpt*/, pszMode, uLine);447 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx81, 0x81 /*bXcpt*/, pszMode, uLine); 448 448 } 449 449 ASMSetIDTR(&IdtrSaved); … … 475 475 ASMSetIDTR(&Idtr); 476 476 Bs3TrapSetJmpAndRestore(&Ctx81, &TrapCtx); 477 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx81, 2 /*int 8xh*/, 0x81 /*bXcpt*/, pszMode, uLine++);477 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx81, 0x81 /*bXcpt*/, pszMode, uLine++); 478 478 479 479 ASMSetIDTR(&Idtr); 480 480 Bs3TrapSetJmpAndRestore(&Ctx80, &TrapCtx); 481 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx80, 2 /*int 8xh*/, 0x80 /*bXcpt*/, pszMode, uLine++);481 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx80, 0x80 /*bXcpt*/, pszMode, uLine++); 482 482 483 483 i = Bs3PagingProtect(uCr2Expected, _4K, 0 /*fSet*/, X86_PTE_P /*fClear*/); … … 486 486 ASMSetIDTR(&Idtr); 487 487 Bs3TrapSetJmpAndRestore(&Ctx80, &TrapCtx); 488 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx80, 2 /*int 8xh*/, 0x80 /*bXcpt*/, pszMode, uLine++);488 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx80, 0x80 /*bXcpt*/, pszMode, uLine++); 489 489 490 490 ASMSetIDTR(&Idtr); … … 525 525 ASMSetIDTR(&Idtr); 526 526 Bs3TrapSetJmpAndRestore(&Ctx81, &TrapCtx); 527 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx81, 2 /*int 8xh*/, 0x81 /*bXcpt*/, pszMode, uLine++);527 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx81, 0x81 /*bXcpt*/, pszMode, uLine++); 528 528 529 529 i = Bs3PagingProtect(Idtr.pIdt, _4K, 0 /*fSet*/, X86_PTE_RW | X86_PTE_US /*fClear*/); … … 532 532 ASMSetIDTR(&Idtr); 533 533 Bs3TrapSetJmpAndRestore(&Ctx81, &TrapCtx); 534 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx81, 2 /*int 8xh*/, 0x81 /*bXcpt*/, pszMode, uLine++);534 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx81, 0x81 /*bXcpt*/, pszMode, uLine++); 535 535 536 536 Bs3PagingProtect(Idtr.pIdt, _4K, X86_PTE_RW | X86_PTE_US /*fSet*/, 0 /*fClear*/); … … 661 661 Ctx2.rsp.u &= UINT16_MAX; 662 662 663 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx2, 2 /*int 80h*/, 0x80 /*bXcpt*/, pszMode, uLine);663 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx2, 0x80 /*bXcpt*/, pszMode, uLine); 664 664 CHECK_MEMBER("bCpl", "%u", TrapCtx.Ctx.bCpl, bRing); 665 665 CHECK_MEMBER("cbIretFrame", "%#x", TrapCtx.cbIretFrame, cbIretFrame); … … 724 724 */ 725 725 Bs3TrapSetJmpAndRestore(&Ctx, &TrapCtx); 726 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx, 2 /*int 80h*/, 0x80 /*bXcpt*/, pszMode, __LINE__);726 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx, 0x80 /*bXcpt*/, pszMode, __LINE__); 727 727 728 728 bs3CpuBasic2_TssGateEsp_AltStackOuterRing(&Ctx, 1, NULL, 0, f16BitSys, f16BitSys, f16BitSys, pszMode, __LINE__); … … 745 745 if (Bs3TrapSetJmp(&TrapCtx)) 746 746 Bs3RegCtxRestore(&Ctx2, 0); /* (does not return) */ 747 bs3CpuBasic2_Compare TrapCtx1(&TrapCtx, &Ctx2, 2 /*int 80h*/, 0x80 /*bXcpt*/, pszMode, uLine);747 bs3CpuBasic2_CompareIntCtx1(&TrapCtx, &Ctx2, 0x80 /*bXcpt*/, pszMode, uLine); 748 748 # if TMPL_BITS == 16 749 749 if ((pbTmp = (uint8_t *)ASMMemFirstNonZero(pbAltStack, cbAltStack)) != NULL)
Note:
See TracChangeset
for help on using the changeset viewer.