Parsed function:Power_Ip_ConfigPartCoreCofbReset.isra.0
Parsed function:Power_Ip_InstallNotificationsCallback
Parsed function:Power_Ip_Init
Parsed function:Power_Ip_GetResetRawValue
Parsed function:Power_Ip_GetResetReason
Parsed function:Power_Ip_SetMode
Parsed function:Power_Ip_OnOffPartCoreCofb
Dump after hash based groups
Congruence classes: 7 (unique hash values: 7), with total: 7 items
Class size histogram [num of members]: number of classe number of classess
[1]: 7 classes


Dump after WPA based types groups
Congruence classes: 7 (unique hash values: 7), with total: 7 items
Class size histogram [num of members]: number of classe number of classess
[1]: 7 classes


Worklist has been filled with: 2
Address reference subdivision created: 0 new classes.
Dump after callgraph-based congruence reduction
Congruence classes: 7 (unique hash values: 7), with total: 7 items
Class size histogram [num of members]: number of classe number of classess
[1]: 7 classes


Init called for 0 items (0.00%).
Dump after full equality comparison of groups
Congruence classes: 7 (unique hash values: 7), with total: 7 items
Class size histogram [num of members]: number of classe number of classess
[1]: 7 classes


Worklist has been filled with: 2
Address reference subdivision created: 0 new classes.
Congruence classes: 7 (unique hash values: 7), with total: 7 items
Class size histogram [num of members]: number of classe number of classess
[1]: 7 classes



Item count: 7
Congruent classes before: 7, after: 7
Average class size before: 1.00, after: 1.00
Average non-singular class size: 0.00, count: 0
Equal symbols: 0
Fraction of visited symbols: 0.00%

Power_Ip_ConfigPartCoreCofbReset.isra.0 (const struct Power_Ip_MC_RGM_ModeConfigType * const * ISRA.1)
{
  const struct Power_Ip_MC_RGM_ModeConfigType * _2;
  const struct Power_Ip_MC_RGM_ModeConfigType * _3;

  <bb 3> [local count: 1073741824]:
  # DEBUG ModeConfigPtr s=> ModeConfigPtr

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _2 = *ISRA.1_7(D);
  Power_Ip_MC_RGM_ModeConfig (_2);
  # DEBUG BEGIN_STMT
  _3 = *ISRA.1_7(D);
  Power_Ip_MC_RGM_CheckModeConfig (_3);
  return;

}


Power_Ip_InstallNotificationsCallback (void (*Power_Ip_ReportErrorsCallbackType) (Power_Ip_ReportErrorType, uint8) ReportErrorsCallback)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  Power_Ip_pfReportErrorsCallback = ReportErrorsCallback_2(D);
  return;

}


Power_Ip_Init (const struct Power_Ip_HwIPsConfigType * HwIPsConfigPtr)
{
  const struct Power_Ip_MC_RGM_ConfigType * _1;
  const struct Power_Ip_PMC_ConfigType * _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = HwIPsConfigPtr_4(D)->McRgmConfigPtr;
  Power_Ip_MC_RGM_ResetInit (_1);
  # DEBUG BEGIN_STMT
  _2 = HwIPsConfigPtr_4(D)->PMCConfigPtr;
  Power_Ip_PMC_PowerInit (_2);
  return;

}


Power_Ip_GetResetRawValue ()
{
  Power_Ip_RawResetType ResetReason;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ResetReason_3 = Power_Ip_MC_RGM_GetResetRawValue ();
  # DEBUG ResetReason => ResetReason_3
  # DEBUG BEGIN_STMT
  return ResetReason_3;

}


Power_Ip_GetResetReason ()
{
  Power_Ip_ResetType ResetReason;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG ResetReason => 28
  # DEBUG BEGIN_STMT
  ResetReason_3 = Power_Ip_MC_RGM_GetResetReason ();
  # DEBUG ResetReason => ResetReason_3
  # DEBUG BEGIN_STMT
  return ResetReason_3;

}


Power_Ip_SetMode (const struct Power_Ip_ModeConfigType * ModeConfigPtr)
{
  Power_Ip_MSCM_CpxType McuCpxType;
  Power_Ip_PowerModeType PowerMode;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  PowerMode_4 = ModeConfigPtr_3(D)->PowerMode;
  # DEBUG PowerMode => PowerMode_4
  # DEBUG BEGIN_STMT
  Power_Ip_OnOffPartCoreCofb (ModeConfigPtr_3(D));
  # DEBUG BEGIN_STMT
  if (PowerMode_4 <= 1)
    goto <bb 3>; [25.50%]
  else
    goto <bb 4>; [74.50%]

  <bb 3> [local count: 273804165]:
  # DEBUG BEGIN_STMT
  Power_Ip_MC_ME_SocTriggerResetEvent (PowerMode_4);
  goto <bb 7>; [100.00%]

  <bb 4> [local count: 799937660]:
  # DEBUG BEGIN_STMT
  if (PowerMode_4 == 3)
    goto <bb 5>; [20.24%]
  else
    goto <bb 7>; [79.76%]

  <bb 5> [local count: 161907382]:
  # DEBUG BEGIN_STMT
  McuCpxType_7 = Power_Ip_MSCM_GetPersonality ();
  # DEBUG McuCpxType => McuCpxType_7
  # DEBUG BEGIN_STMT
  if (McuCpxType_7 == 2)
    goto <bb 6>; [20.24%]
  else
    goto <bb 7>; [79.76%]

  <bb 6> [local count: 32770054]:
<L3>:
  # DEBUG BEGIN_STMT
  Power_Ip_CortexM_WarmReset ();
  # DEBUG BEGIN_STMT

  <bb 7> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}


Power_Ip_OnOffPartCoreCofb (const struct Power_Ip_ModeConfigType * ModeConfigPtr)
{
  const struct Power_Ip_MC_ME_ModeConfigType * _1;
  const struct Power_Ip_MC_RGM_ModeConfigType * _2;
  const struct Power_Ip_MC_ME_ModeConfigType * _3;
  const struct Power_Ip_MC_ME_ModeConfigType * _4;
  const struct Power_Ip_MC_RGM_ModeConfigType * _5;
  const struct Power_Ip_MC_ME_ModeConfigType * _6;
  const struct Power_Ip_MC_ME_ModeConfigType * _7;
  const struct Power_Ip_MC_RGM_ModeConfigType * const * _18;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  _1 = ModeConfigPtr_9(D)->McMeModeConfigPtr;
  Power_Ip_MC_ME_EnablePartitionClock (_1);
  # DEBUG BEGIN_STMT
  _2 = ModeConfigPtr_9(D)->McRgmModeConfigPtr;
  Power_Ip_MC_RGM_EnableResetDomain (_2);
  # DEBUG BEGIN_STMT
  _3 = ModeConfigPtr_9(D)->McMeModeConfigPtr;
  Power_Ip_MC_ME_DisablePartitionOutputSafe (_3);
  # DEBUG BEGIN_STMT
  _4 = ModeConfigPtr_9(D)->McMeModeConfigPtr;
  Power_Ip_MC_ME_ConfigCoreCOFBClock (_4);
  # DEBUG BEGIN_STMT
  _18 = &MEM[(const struct Power_Ip_MC_RGM_ModeConfigType * *)ModeConfigPtr_9(D) + 12B];
  # DEBUG D#1 => ModeConfigPtr_9(D)
  Power_Ip_ConfigPartCoreCofbReset.isra.0 (_18);
  # DEBUG BEGIN_STMT
  _5 = ModeConfigPtr_9(D)->McRgmModeConfigPtr;
  Power_Ip_MC_RGM_DisableResetDomain (_5);
  # DEBUG BEGIN_STMT
  _6 = ModeConfigPtr_9(D)->McMeModeConfigPtr;
  Power_Ip_MC_ME_DisablePartitionClock (_6);
  # DEBUG BEGIN_STMT
  _7 = ModeConfigPtr_9(D)->McMeModeConfigPtr;
  Power_Ip_MC_ME_EnablePartitionOutputSafe (_7);
  return;

}


