PpmCheckReInit
VOID __stdcall PpmCheckReInit(){
char v0;
bool v1;
__int64 v2;
char v3;
BOOL v4;
_DWORD *v5;
__int64 v6;
UINT8 v7;
v0 = 0;
v1 = 0;
v2 = *(&stru_140C00F40 + 365) + 2736i64 * *(&stru_140C23628 + 441);
v3 = 0;
if( (INT64 *)PpmPerfDomainHead != &PpmPerfDomainHead )
{
v1 = PpmPerfCheckRequired(v2 + 40) != 0;
v0 = v1;
if( *(&PopIrpWorkerControlEvent + 1248) )
v0 = 1;
v4 = PoEnergyEstimationEnabled();
v5 = (_DWORD *)(v2 + 124);
if( v4 )
v0 = 1;
v6 = 2i64;
do
{
if( *v5 != v5[2] )
{
v0 = 1;
v3 = 1;
}
++v5;
--v6;
}
while( v6 );
}
if( PpmParkParkingAvailable() )
{
v0 = 1;
v1 = 1;
}
if( PopInterruptSteeringEnabled() )
v0 = 1;
if( v0 && !*(&PopIrpWorkerControlEvent + 1076) )
PpmPerfResetHistoryAll();
if( *(&PopIrpWorkerControlEvent + 1077) )
v0 = 0;
if( !v3 )
PpmPerfClearResponsivenessHints();
PpmParkUpdateConcurrencyTracking(v1);
if( v0 )
{
PpmCheckArmPeriod(v7);
}
else if( *(&PopIrpWorkerControlEvent + 1076) )
{
_InterlockedExchange64((_QWORD *)&PopIrpWorkerControlEvent + 159, 0i64);
*(&PopIrpWorkerControlEvent + 1076) = 0;
}
*(&PopIrpWorkerControlEvent + 154) = PpmCheckHomogeneousPipelines;
if( PpmHeteroPolicy )
{
if( v1 )
*(&PopIrpWorkerControlEvent + 154) = PpmCheckHeterogeneousPipelines;
}
}Referenced by:
PopIntSteerSetMode
PpmCheckInitProcessors
PpmCheckPausePpmEngineForSx
PpmCheckResumePpmEngineFromSx
PpmParkSetLpiCap
PpmReapplyPerfPolicy
PpmRegisterPerfStates