Changeset 81071 in vbox for trunk/src/VBox/Runtime/testcase
- Timestamp:
- Sep 30, 2019 10:17:28 AM (5 years ago)
- svn:sync-xref-src-repo-rev:
- 133675
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/testcase/tstRTInlineAsm.cpp
r76553 r81071 204 204 CHECKVAL(uECX2, s.uECX, "%x"); 205 205 CHECKVAL(uEDX2, s.uEDX, "%x"); 206 207 /* 208 * Check the extended APIC stuff. 209 */ 210 uint32_t idExtApic; 211 if (ASMCpuId_EAX(0) >= 0xb) 212 { 213 uint8_t idApic = ASMGetApicId(); 214 do 215 { 216 uEAX2 = uEBX2 = uECX2 = uEDX2 = UINT32_C(0x50486744); 217 ASMCpuIdExSlow(0xb, 0, 0, 0, &uEAX2, &uEBX2, &uECX2, &uEDX2); 218 idExtApic = ASMGetApicIdExt0B(); 219 } while (ASMGetApicId() != idApic); 220 221 CHECKVAL(uEDX2, idExtApic, "%x"); 222 if (idApic != (uint8_t)idExtApic) 223 RTTestIFailed("ASMGetApicIdExt0B() -> %#x vs ASMGetApicId() -> %#x", idExtApic, idApic); 224 } 225 if (ASMCpuId_EAX(UINT32_C(0x80000000)) >= UINT32_C(0x8000001E)) 226 { 227 uint8_t idApic = ASMGetApicId(); 228 do 229 { 230 uEAX2 = uEBX2 = uECX2 = uEDX2 = UINT32_C(0x50486744); 231 ASMCpuIdExSlow(0x8000001e, 0, 0, 0, &uEAX2, &uEBX2, &uECX2, &uEDX2); 232 idExtApic = ASMGetApicIdExt8000001E(); 233 } while (ASMGetApicId() != idApic); 234 CHECKVAL(uEAX2, idExtApic, "%x"); 235 if (idApic != (uint8_t)idExtApic) 236 RTTestIFailed("ASMGetApicIdExt8000001E() -> %#x vs ASMGetApicId() -> %#x", idExtApic, idApic); 237 } 206 238 207 239 /* … … 1882 1914 #if !defined(RT_OS_DARWIN) && !defined(GCC44_32BIT_PIC) && (defined(RT_ARCH_AMD64) || defined(RT_ARCH_X86)) 1883 1915 BENCH(s_u8 = ASMGetApicId(), "ASMGetApicId"); 1916 BENCH(s_u32 = ASMGetApicIdExt0B(), "ASMGetApicIdExt0B"); 1917 BENCH(s_u32 = ASMGetApicIdExt8000001E(), "ASMGetApicIdExt8000001E"); 1884 1918 #endif 1885 1919 #if !defined(GCC44_32BIT_PIC) && (defined(RT_ARCH_AMD64) || defined(RT_ARCH_X86))
Note:
See TracChangeset
for help on using the changeset viewer.