VirtualBox

Changeset 102077 in vbox for trunk/src/VBox/VMM/VMMR3


Ignore:
Timestamp:
Nov 13, 2023 11:52:34 AM (15 months ago)
Author:
vboxsync
Message:

VMM/IEM,STAM: Native translation of IEM_MC_REF_EFLAGS, IEM_MC_REF_GREG_U16, IEM_MC_CALL_VOID_AIMPL_X and IEM_MC_CALL_AIMPL_X. Added STAMUNIT_BYTES_PER_TB. bugref:10371

Location:
trunk/src/VBox/VMM/VMMR3
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/IEMR3.cpp

    r101163 r102077  
    378378        STAMR3RegisterF(pVM, (void *)&pVCpu->iem.s.StatCheckNeedCsLimChecking, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_COUNT,
    379379                        "Needing CS.LIM checking TB after branch or on page crossing", "/IEM/CPU%u/re/CheckTbNeedCsLimChecking", idCpu);
    380 #endif
     380
     381        STAMR3RegisterF(pVM, (void *)&pVCpu->iem.s.StatNativeCallsRecompiled, STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_CALLS_PER_TB,
     382                        "Number of threaded calls per TB that have been properly recompiled to native code",
     383                        "/IEM/CPU%u/re/NativeCallsRecompiledPerTb", idCpu);
     384        STAMR3RegisterF(pVM, (void *)&pVCpu->iem.s.StatNativeCallsThreaded, STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_CALLS_PER_TB,
     385                        "Number of threaded calls per TB that could not be recompiler to native code",
     386                        "/IEM/CPU%u/re/NativeCallsThreadedPerTb", idCpu);
     387        STAMR3RegisterF(pVM, (void *)&pVCpu->iem.s.StatNativeFullyRecompiledTbs, STAMTYPE_COUNTER, STAMVISIBILITY_ALWAYS, STAMUNIT_COUNT,
     388                        "Number of threaded calls that could not be recompiler to native code",
     389                        "/IEM/CPU%u/re/NativeFullyRecompiledTbs", idCpu);
     390
     391        STAMR3RegisterF(pVM, (void *)&pVCpu->iem.s.StatTbNativeCode, STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_BYTES_PER_TB,
     392                        "Size of native code per TB",                   "/IEM/CPU%u/re/NativeCodeSizePerTb", idCpu);
     393        STAMR3RegisterF(pVM, (void *)&pVCpu->iem.s.StatNativeRecompilation, STAMTYPE_PROFILE, STAMVISIBILITY_ALWAYS, STAMUNIT_TICKS_PER_CALL,
     394                        "Profiling iemNativeRecompile()",               "/IEM/CPU%u/re/NativeRecompilation", idCpu);
     395#endif /* VBOX_WITH_IEM_RECOMPILER */
    381396
    382397        for (uint32_t i = 0; i < RT_ELEMENTS(pVCpu->iem.s.aStatXcpts); i++)
  • trunk/src/VBox/VMM/VMMR3/STAM.cpp

    r100695 r102077  
    30623062        case STAMUNIT_INSTR:                return "instr";
    30633063        case STAMUNIT_INSTR_PER_TB:         return "instr/tb";
     3064        case STAMUNIT_BYTES_PER_TB:         return "bytes/tb";
    30643065
    30653066        default:
     
    31023103        case STAMUNIT_INSTR:                return "instr";
    31033104        case STAMUNIT_INSTR_PER_TB:         return "instr";
     3105        case STAMUNIT_BYTES_PER_TB:         return "bytes";
    31043106
    31053107        default:
     
    31293131        case STAMUNIT_CALLS_PER_TB:         return "tbs";
    31303132        case STAMUNIT_INSTR_PER_TB:         return "tbs";
     3133        case STAMUNIT_BYTES_PER_TB:         return "tbs";
    31313134        default:
    31323135            AssertMsgFailed(("Wrong unit %d\n", enmUnit));
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette