Changeset 59865 in vbox
- Timestamp:
- Feb 29, 2016 10:27:24 AM (9 years ago)
- Location:
- trunk/src/VBox/ValidationKit/bootsectors/bs3kit
- Files:
-
- 5 added
- 6 edited
-
Makefile.kmk (modified) (1 diff)
-
bs3-cmn-TestData.c (modified) (2 diffs)
-
bs3-cmn-TestFailed.c (added)
-
bs3-cmn-TestInit.c (modified) (2 diffs)
-
bs3-cmn-TestSkipped.c (added)
-
bs3-cmn-TestSub.c (added)
-
bs3-cmn-TestSubDone.c (added)
-
bs3-cmn-TestSubErrorCount.c (added)
-
bs3-cmn-TestTerm.c (modified) (4 diffs)
-
bs3-cmn-test.h (modified) (4 diffs)
-
bs3kit.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/bootsectors/bs3kit/Makefile.kmk
r59863 r59865 100 100 bs3-cmn-TestData.c \ 101 101 bs3-cmn-TestInit.c \ 102 bs3-cmn-TestFailed.c \ 103 bs3-cmn-TestSkipped.c \ 104 bs3-cmn-TestSub.c \ 105 bs3-cmn-TestSubDone.c \ 106 bs3-cmn-TestSubErrorCount.c \ 102 107 bs3-cmn-TestTerm.c \ 103 108 bs3-cmn-TestSendCmdWithStr.asm \ -
trunk/src/VBox/ValidationKit/bootsectors/bs3kit/bs3-cmn-TestData.c
r59863 r59865 49 49 /** Whether we've reported the sub-test result or not. */ 50 50 bool g_fbBs3SubTestReported = true; 51 /** Whether the sub-test has been skipped or not. */ 52 bool g_fbBs3SubTestSkipped = false; 51 53 52 54 /** The number of sub tests. */ … … 93 95 }; 94 96 97 98 /** The subtest name. */ 99 char g_szBs3SubTest[64]; 100 95 101 #endif /* ARCH_BITS == 16 */ 96 102 97 103 /** The test name. */ 98 104 const char BS3_FAR *BS3_CMN_NM(g_pszBs3Test) = NULL; 99 /** The subtest name. */100 const char BS3_FAR *BS3_CMN_NM(g_pszBs3SubTest) = NULL;101 105 -
trunk/src/VBox/ValidationKit/bootsectors/bs3kit/bs3-cmn-TestInit.c
r59863 r59865 26 26 27 27 28 /********************************************************************************************************************************* 29 * Header Files * 30 *********************************************************************************************************************************/ 28 31 #include "bs3kit-template-header.h" 29 32 #include "bs3-cmn-test.h" … … 35 38 * @param pszTest The test name. 36 39 */ 37 #undef Bs3TestInit 38 BS3_DECL(void) BS3_CMN_NM(Bs3TestInit)(const char BS3_FAR *pszTest) 40 BS3_DECL(void) Bs3TestInit(const char BS3_FAR *pszTest) 39 41 { 40 42 /* 41 43 * Initialize the globals. 42 44 */ 43 BS3_CMN_NM(g_pszBs3Test) = pszTest; 44 BS3_CMN_NM(g_pszBs3SubTest) = NULL; 45 g_cusBs3TestErrors = 0; 46 g_cusBs3SubTestAtErrors = 0; 47 g_fbBs3SubTestReported = true; 48 g_cusBs3SubTests = 0; 49 g_cusBs3SubTestsFailed = 0; 50 g_fbBs3VMMDevTesting = bs3TestIsVmmDevTestingPresent(); 45 BS3_CMN_NM(g_pszBs3Test) = pszTest; 46 BS3_DATA_NM(g_szBs3SubTest)[0] = '\0'; 47 BS3_DATA_NM(g_cusBs3TestErrors) = 0; 48 BS3_DATA_NM(g_cusBs3SubTestAtErrors) = 0; 49 BS3_DATA_NM(g_fbBs3SubTestReported) = true; 50 BS3_DATA_NM(g_fbBs3SubTestSkipped) = true; 51 BS3_DATA_NM(g_cusBs3SubTests) = 0; 52 BS3_DATA_NM(g_cusBs3SubTestsFailed) = 0; 53 BS3_DATA_NM(g_fbBs3VMMDevTesting) = bs3TestIsVmmDevTestingPresent(); 51 54 52 55 /* -
trunk/src/VBox/ValidationKit/bootsectors/bs3kit/bs3-cmn-TestTerm.c
r59863 r59865 26 26 27 27 28 /********************************************************************************************************************************* 29 * Header Files * 30 *********************************************************************************************************************************/ 28 31 #include "bs3kit-template-header.h" 29 32 #include "bs3-cmn-test.h" 33 34 35 36 /** 37 * Equivalent to rtTestSubCleanup + rtTestSubTestReport. 38 */ 39 BS3_DECL(void) bs3TestSubCleanup(void) 40 { 41 if (BS3_DATA_NM(g_szBs3SubTest)[0] != '\0') 42 { 43 if (!BS3_DATA_NM(g_fbBs3SubTestReported)) 44 { 45 size_t cch; 46 uint16_t cErrors = BS3_DATA_NM(g_cusBs3TestErrors) - BS3_DATA_NM(g_cusBs3SubTestAtErrors); 47 48 /* Tell VMMDev. */ 49 bs3TestSendCmdWithU32(VMMDEV_TESTING_CMD_SUB_DONE, cErrors); 50 51 /* Print result to the console. */ 52 Bs3PrintStr(BS3_DATA_NM(g_szBs3SubTest)); 53 Bs3PrintChr(':'); 54 cch = Bs3StrLen(BS3_DATA_NM(g_szBs3SubTest)); 55 do 56 Bs3PrintChr(' '); 57 while (cch++ < 49); 58 59 if (!cErrors) 60 Bs3PrintStr(!BS3_DATA_NM(g_fbBs3SubTestSkipped) ? "PASSED\n" : "SKIPPED\n"); 61 else 62 { 63 BS3_DATA_NM(g_cusBs3SubTestsFailed)++; 64 Bs3Printf("FAILED (%u errors)\n", BS3_DATA_NM(g_szBs3SubTest), cErrors); 65 } 66 } 67 68 /* Reset the sub-test. */ 69 BS3_DATA_NM(g_fbBs3SubTestReported) = true; 70 BS3_DATA_NM(g_fbBs3SubTestSkipped) = false; 71 BS3_DATA_NM(g_szBs3SubTest)[0] = '\0'; 72 } 73 } 30 74 31 75 … … 36 80 { 37 81 /* 38 * Close current sub-test.82 * Close any current sub-test. 39 83 */ 40 if (BS3_CMN_NM(g_pszBs3SubTest)) 41 { 42 43 } 44 84 bs3TestSubCleanup(); 45 85 46 86 /* … … 50 90 { 51 91 Bs3PrintStr(BS3_CMN_NM(g_pszBs3Test)); 52 if ( g_cusBs3TestErrors== 0)53 Bs3Printf(": SUCCESS (%u tests)\n", g_cusBs3SubTests);92 if (BS3_DATA_NM(g_cusBs3TestErrors) == 0) 93 Bs3Printf(": SUCCESS (%u tests)\n", BS3_DATA_NM(g_cusBs3SubTests)); 54 94 else 55 Bs3Printf(": FAILURE - %u (%u of %u tests)\n", g_cusBs3TestErrors, g_cusBs3SubTestsFailed, g_cusBs3SubTests); 95 Bs3Printf(": FAILURE - %u (%u of %u tests)\n", 96 BS3_DATA_NM(g_cusBs3TestErrors), BS3_DATA_NM(g_cusBs3SubTestsFailed), BS3_DATA_NM(g_cusBs3SubTests)); 56 97 } 57 98 … … 59 100 * Tell VMMDev. 60 101 */ 61 bs3TestSendCmdWithU32(VMMDEV_TESTING_CMD_TERM, g_cusBs3TestErrors); 62 for (;;) { } 102 bs3TestSendCmdWithU32(VMMDEV_TESTING_CMD_TERM, BS3_DATA_NM(g_cusBs3TestErrors)); 63 103 64 104 BS3_CMN_NM(g_pszBs3Test) = NULL; -
trunk/src/VBox/ValidationKit/bootsectors/bs3kit/bs3-cmn-test.h
r59863 r59865 33 33 34 34 /** Indicates whether the VMMDev is operational. */ 35 extern bool g_fbBs3VMMDevTesting;35 extern bool BS3_DATA_NM(g_fbBs3VMMDevTesting); 36 36 37 37 /** The number of tests that have failed. */ 38 extern uint16_t g_cusBs3TestErrors;38 extern uint16_t BS3_DATA_NM(g_cusBs3TestErrors); 39 39 40 40 /** The start error count of the current subtest. */ 41 extern uint16_t g_cusBs3SubTestAtErrors;41 extern uint16_t BS3_DATA_NM(g_cusBs3SubTestAtErrors); 42 42 43 43 /** Whether we've reported the sub-test result or not. */ 44 extern bool g_fbBs3SubTestReported; 44 extern bool BS3_DATA_NM(g_fbBs3SubTestReported); 45 /** Whether the sub-test has been skipped or not. */ 46 extern bool BS3_DATA_NM(g_fbBs3SubTestSkipped); 45 47 46 48 /** The number of sub tests. */ 47 extern uint16_t g_cusBs3SubTests;49 extern uint16_t BS3_DATA_NM(g_cusBs3SubTests); 48 50 49 51 /** The number of sub tests that failed. */ 50 extern uint16_t g_cusBs3SubTestsFailed;52 extern uint16_t BS3_DATA_NM(g_cusBs3SubTestsFailed); 51 53 52 54 /** VMMDEV_TESTING_UNIT_XXX -> string */ 53 extern char const g_aszBs3TestUnitNames[][16];55 extern char const BS3_DATA_NM(g_aszBs3TestUnitNames)[][16]; 54 56 55 57 /** The test name. */ … … 57 59 extern const char *g_pszBs3Test_c32; 58 60 extern const char *g_pszBs3Test_c64; 61 59 62 /** The subtest name. */ 60 extern const char BS3_FAR *g_pszBs3SubTest_c16; 61 extern const char *g_pszBs3SubTest_c32; 62 extern const char *g_pszBs3SubTest_c64; 63 extern char BS3_DATA_NM(g_szBs3SubTest)[64]; 63 64 64 65 … … 91 92 #define bs3TestSendCmdWithU32 BS3_CMN_NM(bs3TestSendCmdWithU32) /**< Selects #bs3TestSendCmdWithU32_c16, #bs3TestSendCmdWithU32_c32 or #bs3TestSendCmdWithU32_c64. */ 92 93 93 94 94 /** 95 95 * Checks if the VMMDev is configured for testing. … … 102 102 #define bs3TestIsVmmDevTestingPresent BS3_CMN_NM(bs3TestIsVmmDevTestingPresent) /**< Selects #bs3TestIsVmmDevTestingPresent_c16, #bs3TestIsVmmDevTestingPresent_c32 or #bs3TestIsVmmDevTestingPresent_c64. */ 103 103 104 /** 105 * Similar to rtTestSubCleanup. 106 */ 107 BS3_DECL(void) bs3TestSubCleanup_c16(void); 108 BS3_DECL(void) bs3TestSubCleanup_c32(void); /**< @copydoc bs3TestSubCleanup_c16 */ 109 BS3_DECL(void) bs3TestSubCleanup_c64(void); /**< @copydoc bs3TestSubCleanup_c16 */ 110 #define bs3TestSubCleanup BS3_CMN_NM(bs3TestSubCleanup) /**< Selects #bs3TestSubCleanup_c16, #bs3TestSubCleanup_c32 or #bs3TestSubCleanup_c64. */ 111 112 /** 113 * @impl_callback_method{FNBS3STRFORMATOUTPUT, 114 * Used by Bs3TestFailedV and Bs3TestSkippedV. 115 * 116 * The @a pvUser parameter must point to a boolean that was initialized to false. } 117 */ 118 BS3_DECL_CALLBACK(size_t) bs3TestFailedStrOutput_c16(char ch, void BS3_FAR *pvUser); 119 BS3_DECL_CALLBACK(size_t) bs3TestFailedStrOutput_c32(char ch, void BS3_FAR *pvUser); 120 BS3_DECL_CALLBACK(size_t) bs3TestFailedStrOutput_c64(char ch, void BS3_FAR *pvUser); 121 #define bs3TestFailedStrOutput BS3_CMN_NM(bs3TestFailedStrOutput) /**< Selects #bs3TestFailedStrOutput_c16, #bs3TestFailedStrOutput_c32 or #bs3TestFailedStrOutput_c64. */ 104 122 105 123 #endif -
trunk/src/VBox/ValidationKit/bootsectors/bs3kit/bs3kit.h
r59863 r59865 1148 1148 * @param pvUser User argument supplied to #Bs3StrFormatV. 1149 1149 */ 1150 typedef size_t BS3_CALLFNBS3STRFORMATOUTPUT(char ch, void BS3_FAR *pvUser);1150 typedef BS3_DECL_CALLBACK(size_t) FNBS3STRFORMATOUTPUT(char ch, void BS3_FAR *pvUser); 1151 1151 /** Pointer to an output function for #Bs3StrFormatV. */ 1152 typedef FNBS3STRFORMATOUTPUT BS3_NEAR_CODE*PFNBS3STRFORMATOUTPUT;1152 typedef FNBS3STRFORMATOUTPUT *PFNBS3STRFORMATOUTPUT; 1153 1153 1154 1154 /** … … 1328 1328 BS3_DECL(void) Bs3TestTerm_c64(void); /**< @copydoc Bs3TestTerm_c16 */ 1329 1329 #define Bs3TestTerm BS3_CMN_NM(Bs3TestTerm) /**< Selects #Bs3TestTerm_c16, #Bs3TestTerm_c32 or #Bs3TestTerm_c64. */ 1330 1331 /** 1332 * Equivalent to RTTestISub. 1333 */ 1334 BS3_DECL(void) Bs3TestSub_c16(const char BS3_FAR *pszSubTest); 1335 BS3_DECL(void) Bs3TestSub_c32(const char BS3_FAR *pszSubTest); /**< @copydoc Bs3TestSub_c16 */ 1336 BS3_DECL(void) Bs3TestSub_c64(const char BS3_FAR *pszSubTest); /**< @copydoc Bs3TestSub_c16 */ 1337 #define Bs3TestSub BS3_CMN_NM(Bs3TestSub) /**< Selects #Bs3TestSub_c16, #Bs3TestSub_c32 or #Bs3TestSub_c64. */ 1338 1339 /** 1340 * Equivalent to RTTestIFailedF. 1341 */ 1342 BS3_DECL(void) Bs3TestSubF_c16(const char BS3_FAR *pszFormat, ...); 1343 BS3_DECL(void) Bs3TestSubF_c32(const char BS3_FAR *pszFormat, ...); /**< @copydoc Bs3TestSubF_c16 */ 1344 BS3_DECL(void) Bs3TestSubF_c64(const char BS3_FAR *pszFormat, ...); /**< @copydoc Bs3TestSubF_c16 */ 1345 #define Bs3TestSubF BS3_CMN_NM(Bs3TestSubF) /**< Selects #Bs3TestSubF_c16, #Bs3TestSubF_c32 or #Bs3TestSubF_c64. */ 1346 1347 /** 1348 * Equivalent to RTTestISubV. 1349 */ 1350 BS3_DECL(void) Bs3TestSubV_c16(const char BS3_FAR *pszFormat, va_list va); 1351 BS3_DECL(void) Bs3TestSubV_c32(const char BS3_FAR *pszFormat, va_list va); /**< @copydoc Bs3TestSubV_c16 */ 1352 BS3_DECL(void) Bs3TestSubV_c64(const char BS3_FAR *pszFormat, va_list va); /**< @copydoc Bs3TestSubV_c16 */ 1353 #define Bs3TestSubV BS3_CMN_NM(Bs3TestSubV) /**< Selects #Bs3TestSubV_c16, #Bs3TestSubV_c32 or #Bs3TestSubV_c64. */ 1354 1355 /** 1356 * Equivalent to RTTestISubDone. 1357 */ 1358 BS3_DECL(void) Bs3TestSubDone_c16(void); 1359 BS3_DECL(void) Bs3TestSubDone_c32(void); /**< @copydoc Bs3TestSubDone_c16 */ 1360 BS3_DECL(void) Bs3TestSubDone_c64(void); /**< @copydoc Bs3TestSubDone_c16 */ 1361 #define Bs3TestSubDone BS3_CMN_NM(Bs3TestSubDone) /**< Selects #Bs3TestSubDone_c16, #Bs3TestSubDone_c32 or #Bs3TestSubDone_c64. */ 1362 1363 /** 1364 * Equivalent to RTTestSubErrorCount. 1365 */ 1366 BS3_DECL(uint16_t) Bs3TestSubErrorCount_c16(void); 1367 BS3_DECL(uint16_t) Bs3TestSubErrorCount_c32(void); /**< @copydoc Bs3TestSubErrorCount_c16 */ 1368 BS3_DECL(uint16_t) Bs3TestSubErrorCount_c64(void); /**< @copydoc Bs3TestSubErrorCount_c16 */ 1369 #define Bs3TestSubErrorCount BS3_CMN_NM(Bs3TestSubErrorCount) /**< Selects #Bs3TestSubErrorCount_c16, #Bs3TestSubErrorCount_c32 or #Bs3TestSubErrorCount_c64. */ 1370 1371 /** 1372 * Equivalent to RTTestIFailed. 1373 */ 1374 BS3_DECL(void) Bs3TestFailed_c16(const char BS3_FAR *pszMessage); 1375 BS3_DECL(void) Bs3TestFailed_c32(const char BS3_FAR *pszMessage); /**< @copydoc Bs3TestFailed_c16 */ 1376 BS3_DECL(void) Bs3TestFailed_c64(const char BS3_FAR *pszMessage); /**< @copydoc Bs3TestFailed_c16 */ 1377 #define Bs3TestFailed BS3_CMN_NM(Bs3TestFailed) /**< Selects #Bs3TestFailed_c16, #Bs3TestFailed_c32 or #Bs3TestFailed_c64. */ 1378 1379 /** 1380 * Equivalent to RTTestIFailedF. 1381 */ 1382 BS3_DECL(void) Bs3TestFailedF_c16(const char BS3_FAR *pszFormat, ...); 1383 BS3_DECL(void) Bs3TestFailedF_c32(const char BS3_FAR *pszFormat, ...); /**< @copydoc Bs3TestFailedF_c16 */ 1384 BS3_DECL(void) Bs3TestFailedF_c64(const char BS3_FAR *pszFormat, ...); /**< @copydoc Bs3TestFailedF_c16 */ 1385 #define Bs3TestFailedF BS3_CMN_NM(Bs3TestFailedF) /**< Selects #Bs3TestFailedF_c16, #Bs3TestFailedF_c32 or #Bs3TestFailedF_c64. */ 1386 1387 /** 1388 * Equivalent to RTTestIFailedV. 1389 */ 1390 BS3_DECL(void) Bs3TestFailedV_c16(const char BS3_FAR *pszFormat, va_list va); 1391 BS3_DECL(void) Bs3TestFailedV_c32(const char BS3_FAR *pszFormat, va_list va); /**< @copydoc Bs3TestFailedV_c16 */ 1392 BS3_DECL(void) Bs3TestFailedV_c64(const char BS3_FAR *pszFormat, va_list va); /**< @copydoc Bs3TestFailedV_c16 */ 1393 #define Bs3TestFailedV BS3_CMN_NM(Bs3TestFailedV) /**< Selects #Bs3TestFailedV_c16, #Bs3TestFailedV_c32 or #Bs3TestFailedV_c64. */ 1394 1395 /** 1396 * Equivalent to RTTestISkipped. 1397 * 1398 * @param pszWhy Optional reason why it's being skipped. 1399 */ 1400 BS3_DECL(void) Bs3TestSkipped_c16(const char BS3_FAR *pszWhy); 1401 BS3_DECL(void) Bs3TestSkipped_c32(const char BS3_FAR *pszWhy); /**< @copydoc Bs3TestSkipped_c16 */ 1402 BS3_DECL(void) Bs3TestSkipped_c64(const char BS3_FAR *pszWhy); /**< @copydoc Bs3TestSkipped_c16 */ 1403 #define Bs3TestSkipped BS3_CMN_NM(Bs3TestSkipped) /**< Selects #Bs3TestSkipped_c16, #Bs3TestSkipped_c32 or #Bs3TestSkipped_c64. */ 1404 1405 /** 1406 * Equivalent to RTTestISkippedF. 1407 * 1408 * @param pszFormat Optional reason why it's being skipped. 1409 * @param ... Format arguments. 1410 */ 1411 BS3_DECL(void) Bs3TestSkippedF_c16(const char BS3_FAR *pszFormat, ...); 1412 BS3_DECL(void) Bs3TestSkippedF_c32(const char BS3_FAR *pszFormat, ...); /**< @copydoc Bs3TestSkippedF_c16 */ 1413 BS3_DECL(void) Bs3TestSkippedF_c64(const char BS3_FAR *pszFormat, ...); /**< @copydoc Bs3TestSkippedF_c16 */ 1414 #define Bs3TestSkippedF BS3_CMN_NM(Bs3TestSkippedF) /**< Selects #Bs3TestSkippedF_c16, #Bs3TestSkippedF_c32 or #Bs3TestSkippedF_c64. */ 1415 1416 /** 1417 * Equivalent to RTTestISkippedV. 1418 * 1419 * @param pszFormat Optional reason why it's being skipped. 1420 * @param va Format arguments. 1421 */ 1422 BS3_DECL(void) Bs3TestSkippedV_c16(const char BS3_FAR *pszFormat, va_list va); 1423 BS3_DECL(void) Bs3TestSkippedV_c32(const char BS3_FAR *pszFormat, va_list va); /**< @copydoc Bs3TestSkippedV_c16 */ 1424 BS3_DECL(void) Bs3TestSkippedV_c64(const char BS3_FAR *pszFormat, va_list va); /**< @copydoc Bs3TestSkippedV_c16 */ 1425 #define Bs3TestSkippedV BS3_CMN_NM(Bs3TestSkippedV) /**< Selects #Bs3TestSkippedV_c16, #Bs3TestSkippedV_c32 or #Bs3TestSkippedV_c64. */ 1426 1427 1428 /** 1429 * Performs the testing for the given mode. 1430 * 1431 * This is called with the CPU already switch to that mode. 1432 * 1433 * @returns 0 on success or directly Bs3TestFailed calls, non-zero to indicate 1434 * where the test when wrong. 1435 * @param bMode The current CPU mode. 1436 */ 1437 typedef BS3_DECL_CALLBACK(uint8_t) FNBS3TESTDOMODE(uint8_t bMode); 1438 /** Near pointer to a test (for 16-bit code). */ 1439 typedef FNBS3TESTDOMODE *PFNBS3TESTDOMODE; 1440 /** Far pointer to a test (for 32-bit and 64-bit code, will be flatten). */ 1441 typedef FNBS3TESTDOMODE BS3_FAR_CODE *FPFNBS3TESTDOMODE; 1442 1443 /** 1444 * Mode sub-test entry. 1445 * 1446 * This can only be passed around to functions with the same bit count, as it 1447 * contains function pointers. In 16-bit mode, the 16-bit pointers are near and 1448 * implies BS3TEXT16, whereas the 32-bit and 64-bit pointers are far real mode 1449 * addresses that will be converted to flat address prior to calling them. 1450 * Similarly, in 32-bit and 64-bit the addresses are all flat and the 16-bit 1451 * ones will be converted to BS3TEXT16 based addresses prior to calling. 1452 */ 1453 typedef struct BS3TESTMODEENTRY 1454 { 1455 const char * BS3_FAR pszSubTest; 1456 1457 PFNBS3TESTDOMODE pfnDoRM; 1458 1459 PFNBS3TESTDOMODE pfnDoPE16; 1460 FPFNBS3TESTDOMODE pfnDoPE16_32; 1461 PFNBS3TESTDOMODE pfnDoPE16_V86; 1462 FPFNBS3TESTDOMODE pfnDoPE32; 1463 PFNBS3TESTDOMODE pfnDoPE32_16; 1464 PFNBS3TESTDOMODE pfnDoPEV86; 1465 1466 PFNBS3TESTDOMODE pfnDoPP16; 1467 FPFNBS3TESTDOMODE pfnDoPP16_32; 1468 PFNBS3TESTDOMODE pfnDoPP16_V86; 1469 FPFNBS3TESTDOMODE pfnDoPP32; 1470 PFNBS3TESTDOMODE pfnDoPP32_16; 1471 PFNBS3TESTDOMODE pfnDoPPV86; 1472 1473 PFNBS3TESTDOMODE pfnDoPAE16; 1474 FPFNBS3TESTDOMODE pfnDoPAE16_32; 1475 PFNBS3TESTDOMODE pfnDoPAE16_V86; 1476 FPFNBS3TESTDOMODE pfnDoPAE32; 1477 PFNBS3TESTDOMODE pfnDoPAE32_16; 1478 PFNBS3TESTDOMODE pfnDoPAEV86; 1479 1480 PFNBS3TESTDOMODE pfnDoLM16; 1481 FPFNBS3TESTDOMODE pfnDoLM32; 1482 FPFNBS3TESTDOMODE pfnDoLM64; 1483 1484 } BS3TESTMODEENTRY; 1485 /** Pointer to a mode sub-test entry. */ 1486 typedef BS3TESTMODEENTRY const *PCBS3TESTMODEENTRY; 1330 1487 1331 1488 … … 2030 2187 2031 2188 2189 /** 2190 * Executes the array of tests in every possibly mode. 2191 * 2192 * @param paEntries The mode sub-test entries. 2193 * @param cEntries The number of sub-test entries. 2194 */ 2195 BS3_MODE_EXPAND_PROTOTYPES(void, Bs3TestDoModes, (BS3TESTMODEENTRY paEntries, unsigned cEntries)); 2196 2032 2197 /** @} */ 2033 2198
Note:
See TracChangeset
for help on using the changeset viewer.

