Changeset 85120 in vbox for trunk/src/VBox/ValidationKit/bootsectors
- Timestamp:
- Jul 8, 2020 7:14:39 PM (5 years ago)
- svn:sync-xref-src-repo-rev:
- 139060
- Location:
- trunk/src/VBox/ValidationKit/bootsectors
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/bootsectors/bootsector2-test1-template.mac
r82968 r85120 27 27 28 28 %include "bootsector2-template-header.mac" 29 30 ;; 31 ; Run the CPUID benchmark for this mode. 32 ; 33 ; @uses nothing 34 ; 35 BEGINCODELOW 36 BITS 16 37 BEGINPROC TMPL_NM(BenchmarkFlushCmd_rm) 38 call TMPL_NM(Bs2IsModeSupported_rm) 39 jz .done 40 call TMPL_NM(Bs2EnterMode_rm) 41 BITS TMPL_BITS 42 push xBP 43 mov xBP, xSP 44 push sAX 45 push sBX 46 push sCX 47 push sDX 48 push sDI 49 sub sSP, 20h 50 51 ; Get the current time. 52 mov xAX, xSP 53 call TMPL_NM_CMN(GetNanoTS) 54 55 ; Do the test. 56 mov edi, TEST_INSTRUCTION_COUNT_IO / 4 57 %define MSR_IA32_FLUSH_CMD 0x10b 58 %define MSR_IA32_FLUSH_CMD_F_L1D RT_BIT_32(0) 59 mov ecx, MSR_IA32_FLUSH_CMD 60 mov eax, MSR_IA32_FLUSH_CMD_F_L1D 61 xor edx, edx 62 .again: 63 wrmsr 64 wrmsr 65 wrmsr 66 wrmsr 67 dec edi 68 jnz .again 69 70 ; Calc the elapsed time and report the result. 71 mov xAX, xSP 72 call TMPL_NM_CMN(GetElapsedNanoTS) 73 74 mov xCX, .s_szTestName 75 mov edx, TEST_INSTRUCTION_COUNT_IO 76 mov xAX, xSP 77 call TMPL_NM_CMN(ReportResult) 78 79 add sSP, 20h 80 pop sDI 81 pop sDX 82 pop sCX 83 pop sBX 84 pop sAX 85 leave 86 87 call TMPL_NM(Bs2ExitMode) 88 BITS 16 89 .done: 90 ret 91 92 .s_szTestName: 93 db TMPL_MODE_STR, ', FLUSH_CMD', 0 94 ENDPROC TMPL_NM(BenchmarkFlushCmd_rm) 95 96 TMPL_BEGINCODE 97 BITS TMPL_BITS 98 29 99 30 100 ;; -
trunk/src/VBox/ValidationKit/bootsectors/bootsector2-test1.asm
r82968 r85120 71 71 call Bs2PanicIfVMMDevTestingIsMissing_r86 72 72 73 %if 0 74 ; 75 ; IA32_FLUSH_CMD. 76 ; 77 mov ax, .s_szTstFlushCmd 78 call TestSub_r86 79 call BenchmarkFlushCmd_rm_pp32 80 call BenchmarkFlushCmd_rm_pae32 81 call BenchmarkFlushCmd_rm_lm64 82 call BenchmarkFlushCmd_rm_pe16 83 call BenchmarkFlushCmd_rm_pe32 84 call BenchmarkFlushCmd_rm_rm 85 %endif 86 73 87 ; 74 88 ; CPUID. … … 141 155 .s_szTstCpuId: 142 156 db 'CPUID EAX=1', 0 157 .s_szTstFlushCmd: 158 db 'IA32_FLUSH_CMD', 0 143 159 .s_szTstRdTsc: 144 160 db 'RDTSC', 0
Note:
See TracChangeset
for help on using the changeset viewer.