Parsed function:Cache_Ip_CleanByAddr
Parsed function:Cache_Ip_InvalidateByAddr
Parsed function:Cache_Ip_Clean
Parsed function:Cache_Ip_Invalidate
Parsed function:Cache_Ip_Disable
Parsed function:Cache_Ip_Enable
Parsed function:hwAcc_Lmem_ProcessorCodeCacheCleanByAddr
Parsed function:hwAcc_Lmem_ProcessorCodeInvalidateByAddr
Parsed function:hwAcc_Lmem_ProcessorCodeClean
Parsed function:hwAcc_Lmem_ProcessorCodeInvalidate
Parsed function:hwAcc_Lmem_ProcessorCodeCacheDisable
Parsed function:hwAcc_Lmem_ProcessorCodeCacheEnable
Parsed function:hwAcc_Lmem_AddressReg
Parsed function:hwAcc_Lmem_LineControlReg
Parsed function:hwAcc_Lmem_ControlReg
Dump after hash based groups
Congruence classes: 12 (unique hash values: 12), with total: 15 items
Class size histogram [num of members]: number of classe number of classess
[1]: 10 classes
[2]: 1 classes
[3]: 1 classes


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


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


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


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



Item count: 15
Congruent classes before: 15, after: 15
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%

Cache_Ip_CleanByAddr (const Cache_Ip_Type CacheType, const boolean EnInvalidate, const uint32 Addr, const uint32 Length)
{
  Std_ReturnType Status;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Status => 0
  # DEBUG BEGIN_STMT
  SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_18 ();
  # DEBUG BEGIN_STMT
  if (CacheType_5(D) == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  Status_10 = hwAcc_Lmem_ProcessorCodeCacheCleanByAddr (EnInvalidate_6(D), Addr_7(D), Length_8(D));
  # DEBUG Status => Status_10
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # Status_1 = PHI <Status_10(3), 0(2)>
<L6>:
  # DEBUG Status => Status_1
  # DEBUG BEGIN_STMT
  SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_18 ();
  # DEBUG BEGIN_STMT
  return Status_1;

}


Cache_Ip_InvalidateByAddr (const Cache_Ip_Type CacheType, const uint32 Addr, const uint32 Length)
{
  Std_ReturnType Status;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Status => 0
  # DEBUG BEGIN_STMT
  SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_17 ();
  # DEBUG BEGIN_STMT
  if (CacheType_5(D) == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  Status_9 = hwAcc_Lmem_ProcessorCodeInvalidateByAddr (Addr_6(D), Length_7(D));
  # DEBUG Status => Status_9
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # Status_1 = PHI <Status_9(3), 0(2)>
<L6>:
  # DEBUG Status => Status_1
  # DEBUG BEGIN_STMT
  SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_17 ();
  # DEBUG BEGIN_STMT
  return Status_1;

}


Cache_Ip_Clean (const Cache_Ip_Type CacheType, const boolean EnInvalidate)
{
  Std_ReturnType Status;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Status => 0
  # DEBUG BEGIN_STMT
  SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_16 ();
  # DEBUG BEGIN_STMT
  if (CacheType_5(D) == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  Status_8 = hwAcc_Lmem_ProcessorCodeClean (EnInvalidate_6(D));
  # DEBUG Status => Status_8
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # Status_1 = PHI <Status_8(3), 0(2)>
<L6>:
  # DEBUG Status => Status_1
  # DEBUG BEGIN_STMT
  SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_16 ();
  # DEBUG BEGIN_STMT
  return Status_1;

}


Cache_Ip_Invalidate (const Cache_Ip_Type CacheType)
{
  Std_ReturnType Status;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Status => 0
  # DEBUG BEGIN_STMT
  SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_15 ();
  # DEBUG BEGIN_STMT
  if (CacheType_5(D) == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  Status_7 = hwAcc_Lmem_ProcessorCodeInvalidate ();
  # DEBUG Status => Status_7
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # Status_1 = PHI <Status_7(3), 0(2)>
<L6>:
  # DEBUG Status => Status_1
  # DEBUG BEGIN_STMT
  SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_15 ();
  # DEBUG BEGIN_STMT
  return Status_1;

}


Cache_Ip_Disable (const Cache_Ip_Type CacheType)
{
  Std_ReturnType Status;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Status => 0
  # DEBUG BEGIN_STMT
  SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_14 ();
  # DEBUG BEGIN_STMT
  if (CacheType_5(D) == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  Status_7 = hwAcc_Lmem_ProcessorCodeCacheDisable ();
  # DEBUG Status => Status_7
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # Status_1 = PHI <Status_7(3), 0(2)>
<L6>:
  # DEBUG Status => Status_1
  # DEBUG BEGIN_STMT
  SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_14 ();
  # DEBUG BEGIN_STMT
  return Status_1;

}


Cache_Ip_Enable (const Cache_Ip_Type CacheType)
{
  Std_ReturnType Status;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG Status => 0
  # DEBUG BEGIN_STMT
  SchM_Enter_Mcl_MCL_EXCLUSIVE_AREA_13 ();
  # DEBUG BEGIN_STMT
  if (CacheType_5(D) == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
<L0>:
  # DEBUG BEGIN_STMT
  Status_7 = hwAcc_Lmem_ProcessorCodeCacheEnable ();
  # DEBUG Status => Status_7
  # DEBUG BEGIN_STMT

  <bb 4> [local count: 1073741824]:
  # Status_1 = PHI <Status_7(3), 0(2)>
<L6>:
  # DEBUG Status => Status_1
  # DEBUG BEGIN_STMT
  SchM_Exit_Mcl_MCL_EXCLUSIVE_AREA_13 ();
  # DEBUG BEGIN_STMT
  return Status_1;

}


hwAcc_Lmem_ProcessorCodeCacheCleanByAddr (const boolean enInvalidate, const uint32 addr, const uint32 length)
{
  uint32 locEndAddr;
  uint32 locStartAddr;
  Std_ReturnType locStatus;

  <bb 2> [local count: 114863532]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locStartAddr_6 = addr_5(D) & 4294967280;
  # DEBUG locStartAddr => locStartAddr_6
  # DEBUG BEGIN_STMT
  locEndAddr_8 = addr_5(D) + length_7(D);
  # DEBUG locEndAddr => locEndAddr_8
  # DEBUG BEGIN_STMT
  if (enInvalidate_9(D) != 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  locStatus_14 = hwAcc_Lmem_LineControlReg (3758628864B, 117506048, 0);
  # DEBUG locStatus => locStatus_14
  goto <bb 7>; [100.00%]

  <bb 4> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  locStatus_12 = hwAcc_Lmem_LineControlReg (3758628864B, 100728832, 0);
  # DEBUG locStatus => locStatus_12

  <bb 7> [local count: 114863532]:
  # locStatus_20 = PHI <locStatus_14(3), locStatus_12(4)>
  # locStartAddr_18 = PHI <locStartAddr_6(3), locStartAddr_6(4)>
  goto <bb 10>; [100.00%]

  <bb 5> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  locStatus_16 = hwAcc_Lmem_AddressReg (3758628864B, locStartAddr_2, 1);
  # DEBUG locStatus => locStatus_16
  # DEBUG BEGIN_STMT
  locStartAddr_17 = locStartAddr_2 + 16;
  # DEBUG locStartAddr => locStartAddr_17

  <bb 10> [local count: 1073741824]:
  # locStatus_1 = PHI <locStatus_20(7), locStatus_16(5)>
  # locStartAddr_2 = PHI <locStartAddr_18(7), locStartAddr_17(5)>
  # DEBUG locStartAddr => locStartAddr_2
  # DEBUG locStatus => locStatus_1
  # DEBUG BEGIN_STMT
  if (locStartAddr_2 < locEndAddr_8)
    goto <bb 8>; [94.50%]
  else
    goto <bb 9>; [5.50%]

  <bb 8> [local count: 1014686025]:
  if (locStatus_1 == 0)
    goto <bb 5>; [94.50%]
  else
    goto <bb 9>; [5.50%]

  <bb 9> [local count: 114863532]:
  # locStatus_19 = PHI <locStatus_1(10), locStatus_1(8)>
  # DEBUG BEGIN_STMT
  return locStatus_19;

}


hwAcc_Lmem_ProcessorCodeInvalidateByAddr (const uint32 addr, const uint32 length)
{
  uint32 locEndAddr;
  uint32 locStartAddr;
  Std_ReturnType locStatus;

  <bb 2> [local count: 114863532]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locStartAddr_5 = addr_4(D) & 4294967280;
  # DEBUG locStartAddr => locStartAddr_5
  # DEBUG BEGIN_STMT
  locEndAddr_7 = addr_4(D) + length_6(D);
  # DEBUG locEndAddr => locEndAddr_7
  # DEBUG BEGIN_STMT
  locStatus_10 = hwAcc_Lmem_LineControlReg (3758628864B, 83951616, 0);
  # DEBUG locStatus => locStatus_10
  # DEBUG BEGIN_STMT
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  locStatus_12 = hwAcc_Lmem_AddressReg (3758628864B, locStartAddr_2, 1);
  # DEBUG locStatus => locStatus_12
  # DEBUG BEGIN_STMT
  locStartAddr_13 = locStartAddr_2 + 16;
  # DEBUG locStartAddr => locStartAddr_13

  <bb 4> [local count: 1073741824]:
  # locStatus_1 = PHI <locStatus_10(2), locStatus_12(3)>
  # locStartAddr_2 = PHI <locStartAddr_5(2), locStartAddr_13(3)>
  # DEBUG locStartAddr => locStartAddr_2
  # DEBUG locStatus => locStatus_1
  # DEBUG BEGIN_STMT
  if (locStartAddr_2 < locEndAddr_7)
    goto <bb 5>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 5> [local count: 1014686025]:
  if (locStatus_1 == 0)
    goto <bb 3>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 6> [local count: 114863532]:
  # locStatus_14 = PHI <locStatus_1(4), locStatus_1(5)>
  # DEBUG BEGIN_STMT
  return locStatus_14;

}


hwAcc_Lmem_ProcessorCodeClean (const boolean enInvalidate)
{
  Std_ReturnType locStatus;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  if (enInvalidate_3(D) != 0)
    goto <bb 4>; [50.00%]
  else
    goto <bb 3>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  locStatus_8 = hwAcc_Lmem_ControlReg (3758628864B, 167772160, 2147483648);
  # DEBUG locStatus => locStatus_8
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  locStatus_6 = hwAcc_Lmem_ControlReg (3758628864B, 251658240, 2147483648);
  # DEBUG locStatus => locStatus_6

  <bb 5> [local count: 1073741824]:
  # locStatus_1 = PHI <locStatus_8(3), locStatus_6(4)>
  # DEBUG locStatus => locStatus_1
  # DEBUG BEGIN_STMT
  return locStatus_1;

}


hwAcc_Lmem_ProcessorCodeInvalidate ()
{
  Std_ReturnType locStatus;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locStatus_3 = hwAcc_Lmem_ControlReg (3758628864B, 83886080, 2147483648);
  # DEBUG locStatus => locStatus_3
  # DEBUG BEGIN_STMT
  return locStatus_3;

}


hwAcc_Lmem_ProcessorCodeCacheDisable ()
{
  uint32 locReg;
  uint32 locElapsedTicks;
  uint32 locCurrentTicks;
  uint32 locTimeoutTicks;
  Std_ReturnType locStatus;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _16;

  <bb 2> [local count: 114863532]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locTimeoutTicks_9 = OsIf_MicrosToTicks (100000, 0);
  # DEBUG locTimeoutTicks => locTimeoutTicks_9
  # DEBUG BEGIN_STMT
  _1 = OsIf_GetCounter (0);
  locCurrentTicks = _1;
  # DEBUG BEGIN_STMT
  # DEBUG locElapsedTicks => 0
  # DEBUG BEGIN_STMT
  locReg_12 ={v} MEM[(struct LMEM_Type *)3758628864B].PCCCR;
  # DEBUG locReg => locReg_12
  # DEBUG BEGIN_STMT
  locReg_13 = locReg_12 & 4294967294;
  # DEBUG locReg => locReg_13
  # DEBUG BEGIN_STMT
  MEM[(struct LMEM_Type *)3758628864B].PCCCR ={v} locReg_13;
  # DEBUG BEGIN_STMT
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  _16 = OsIf_GetElapsed (&locCurrentTicks, 0);
  locElapsedTicks_17 = locElapsedTicks_5 + _16;
  # DEBUG locElapsedTicks => locElapsedTicks_17

  <bb 4> [local count: 1073741824]:
  # locElapsedTicks_5 = PHI <0(2), locElapsedTicks_17(3)>
  # DEBUG locElapsedTicks => locElapsedTicks_5
  # DEBUG BEGIN_STMT
  _2 ={v} MEM[(struct LMEM_Type *)3758628864B].PCCCR;
  _3 = _2 & 1;
  if (_3 != 0)
    goto <bb 5>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 5> [local count: 1014686025]:
  if (locElapsedTicks_5 < locTimeoutTicks_9)
    goto <bb 3>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 6> [local count: 114863532]:
  # locElapsedTicks_18 = PHI <locElapsedTicks_5(4), locElapsedTicks_5(5)>
  # DEBUG BEGIN_STMT
  if (locTimeoutTicks_9 <= locElapsedTicks_18)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 1

  <bb 8> [local count: 114863532]:
  # locStatus_4 = PHI <0(6), 1(7)>
  # DEBUG locStatus => locStatus_4
  # DEBUG BEGIN_STMT
  locCurrentTicks ={v} {CLOBBER};
  return locStatus_4;

}


hwAcc_Lmem_ProcessorCodeCacheEnable ()
{
  uint32 locReg;
  uint32 locElapsedTicks;
  uint32 locCurrentTicks;
  uint32 locTimeoutTicks;
  Std_ReturnType locStatus;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _16;

  <bb 2> [local count: 114863532]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locTimeoutTicks_9 = OsIf_MicrosToTicks (100000, 0);
  # DEBUG locTimeoutTicks => locTimeoutTicks_9
  # DEBUG BEGIN_STMT
  _1 = OsIf_GetCounter (0);
  locCurrentTicks = _1;
  # DEBUG BEGIN_STMT
  # DEBUG locElapsedTicks => 0
  # DEBUG BEGIN_STMT
  locReg_12 ={v} MEM[(struct LMEM_Type *)3758628864B].PCCCR;
  # DEBUG locReg => locReg_12
  # DEBUG BEGIN_STMT
  locReg_13 = locReg_12 | 1;
  # DEBUG locReg => locReg_13
  # DEBUG BEGIN_STMT
  MEM[(struct LMEM_Type *)3758628864B].PCCCR ={v} locReg_13;
  # DEBUG BEGIN_STMT
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  _16 = OsIf_GetElapsed (&locCurrentTicks, 0);
  locElapsedTicks_17 = locElapsedTicks_5 + _16;
  # DEBUG locElapsedTicks => locElapsedTicks_17

  <bb 4> [local count: 1073741824]:
  # locElapsedTicks_5 = PHI <0(2), locElapsedTicks_17(3)>
  # DEBUG locElapsedTicks => locElapsedTicks_5
  # DEBUG BEGIN_STMT
  _2 ={v} MEM[(struct LMEM_Type *)3758628864B].PCCCR;
  _3 = _2 & 1;
  if (_3 == 0)
    goto <bb 5>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 5> [local count: 1014686025]:
  if (locElapsedTicks_5 < locTimeoutTicks_9)
    goto <bb 3>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 6> [local count: 114863532]:
  # locElapsedTicks_18 = PHI <locElapsedTicks_5(4), locElapsedTicks_5(5)>
  # DEBUG BEGIN_STMT
  if (locTimeoutTicks_9 <= locElapsedTicks_18)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 1

  <bb 8> [local count: 114863532]:
  # locStatus_4 = PHI <0(6), 1(7)>
  # DEBUG locStatus => locStatus_4
  # DEBUG BEGIN_STMT
  locCurrentTicks ={v} {CLOBBER};
  return locStatus_4;

}


hwAcc_Lmem_AddressReg (struct LMEM_Type * pInst, uint32 Address, uint32 GoMask)
{
  uint32 locReg;
  uint32 locElapsedTicks;
  uint32 locCurrentTicks;
  uint32 locTimeoutTicks;
  Std_ReturnType locStatus;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int _23;

  <bb 2> [local count: 229727064]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locTimeoutTicks_12 = OsIf_MicrosToTicks (100000, 0);
  # DEBUG locTimeoutTicks => locTimeoutTicks_12
  # DEBUG BEGIN_STMT
  _1 = OsIf_GetCounter (0);
  locCurrentTicks = _1;
  # DEBUG BEGIN_STMT
  # DEBUG locElapsedTicks => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  locReg_16 ={v} pInst_15(D)->PCCSAR;
  # DEBUG locReg => locReg_16
  # DEBUG BEGIN_STMT
  locReg_17 = locReg_16 & 3;
  # DEBUG locReg => locReg_17
  # DEBUG BEGIN_STMT
  _2 = Address_18(D) & 4294967292;
  _3 = _2 | GoMask_19(D);
  locReg_20 = _3 | locReg_17;
  # DEBUG locReg => locReg_20
  # DEBUG BEGIN_STMT
  pInst_15(D)->PCCSAR ={v} locReg_20;
  # DEBUG BEGIN_STMT
  if (GoMask_19(D) != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 9> [local count: 114863532]:
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  _23 = OsIf_GetElapsed (&locCurrentTicks, 0);
  locElapsedTicks_24 = locElapsedTicks_7 + _23;
  # DEBUG locElapsedTicks => locElapsedTicks_24

  <bb 4> [local count: 1073741824]:
  # locElapsedTicks_7 = PHI <locElapsedTicks_24(3), 0(9)>
  # DEBUG locElapsedTicks => locElapsedTicks_7
  # DEBUG BEGIN_STMT
  _4 ={v} pInst_15(D)->PCCSAR;
  _5 = _4 & GoMask_19(D);
  if (_5 == GoMask_19(D))
    goto <bb 5>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 5> [local count: 1014686025]:
  if (locElapsedTicks_7 < locTimeoutTicks_12)
    goto <bb 3>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 6> [local count: 114863532]:
  # locElapsedTicks_25 = PHI <locElapsedTicks_7(4), locElapsedTicks_7(5)>
  # DEBUG BEGIN_STMT
  if (locTimeoutTicks_12 <= locElapsedTicks_25)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 1

  <bb 8> [local count: 229727064]:
  # locStatus_6 = PHI <0(2), 0(6), 1(7)>
  # DEBUG locStatus => locStatus_6
  # DEBUG BEGIN_STMT
  locCurrentTicks ={v} {CLOBBER};
  return locStatus_6;

}


hwAcc_Lmem_LineControlReg (struct LMEM_Type * pInst, uint32 LineControlMask, uint32 GoMask)
{
  uint32 locReg;
  uint32 locElapsedTicks;
  uint32 locCurrentTicks;
  uint32 locTimeoutTicks;
  Std_ReturnType locStatus;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int _23;

  <bb 2> [local count: 229727064]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locTimeoutTicks_12 = OsIf_MicrosToTicks (100000, 0);
  # DEBUG locTimeoutTicks => locTimeoutTicks_12
  # DEBUG BEGIN_STMT
  _1 = OsIf_GetCounter (0);
  locCurrentTicks = _1;
  # DEBUG BEGIN_STMT
  # DEBUG locElapsedTicks => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  locReg_16 ={v} pInst_15(D)->PCCLCR;
  # DEBUG locReg => locReg_16
  # DEBUG BEGIN_STMT
  _2 = ~LineControlMask_17(D);
  locReg_18 = _2 & locReg_16;
  # DEBUG locReg => locReg_18
  # DEBUG BEGIN_STMT
  _3 = LineControlMask_17(D) | GoMask_19(D);
  locReg_20 = _3 | locReg_18;
  # DEBUG locReg => locReg_20
  # DEBUG BEGIN_STMT
  pInst_15(D)->PCCLCR ={v} locReg_20;
  # DEBUG BEGIN_STMT
  if (GoMask_19(D) != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 9> [local count: 114863532]:
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  _23 = OsIf_GetElapsed (&locCurrentTicks, 0);
  locElapsedTicks_24 = locElapsedTicks_7 + _23;
  # DEBUG locElapsedTicks => locElapsedTicks_24

  <bb 4> [local count: 1073741824]:
  # locElapsedTicks_7 = PHI <locElapsedTicks_24(3), 0(9)>
  # DEBUG locElapsedTicks => locElapsedTicks_7
  # DEBUG BEGIN_STMT
  _4 ={v} pInst_15(D)->PCCLCR;
  _5 = _4 & GoMask_19(D);
  if (_5 == GoMask_19(D))
    goto <bb 5>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 5> [local count: 1014686025]:
  if (locElapsedTicks_7 < locTimeoutTicks_12)
    goto <bb 3>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 6> [local count: 114863532]:
  # locElapsedTicks_25 = PHI <locElapsedTicks_7(4), locElapsedTicks_7(5)>
  # DEBUG BEGIN_STMT
  if (locTimeoutTicks_12 <= locElapsedTicks_25)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 1

  <bb 8> [local count: 229727064]:
  # locStatus_6 = PHI <0(2), 0(6), 1(7)>
  # DEBUG locStatus => locStatus_6
  # DEBUG BEGIN_STMT
  locCurrentTicks ={v} {CLOBBER};
  return locStatus_6;

}


hwAcc_Lmem_ControlReg (struct LMEM_Type * pInst, uint32 ControlMask, uint32 GoMask)
{
  uint32 locReg;
  uint32 locElapsedTicks;
  uint32 locCurrentTicks;
  uint32 locTimeoutTicks;
  Std_ReturnType locStatus;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int _23;

  <bb 2> [local count: 229727064]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 0
  # DEBUG BEGIN_STMT
  locTimeoutTicks_12 = OsIf_MicrosToTicks (100000, 0);
  # DEBUG locTimeoutTicks => locTimeoutTicks_12
  # DEBUG BEGIN_STMT
  _1 = OsIf_GetCounter (0);
  locCurrentTicks = _1;
  # DEBUG BEGIN_STMT
  # DEBUG locElapsedTicks => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  locReg_16 ={v} pInst_15(D)->PCCCR;
  # DEBUG locReg => locReg_16
  # DEBUG BEGIN_STMT
  _2 = ~ControlMask_17(D);
  locReg_18 = _2 & locReg_16;
  # DEBUG locReg => locReg_18
  # DEBUG BEGIN_STMT
  _3 = ControlMask_17(D) | GoMask_19(D);
  locReg_20 = _3 | locReg_18;
  # DEBUG locReg => locReg_20
  # DEBUG BEGIN_STMT
  pInst_15(D)->PCCCR ={v} locReg_20;
  # DEBUG BEGIN_STMT
  if (GoMask_19(D) != 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 9> [local count: 114863532]:
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 958878293]:
  # DEBUG BEGIN_STMT
  _23 = OsIf_GetElapsed (&locCurrentTicks, 0);
  locElapsedTicks_24 = locElapsedTicks_7 + _23;
  # DEBUG locElapsedTicks => locElapsedTicks_24

  <bb 4> [local count: 1073741824]:
  # locElapsedTicks_7 = PHI <locElapsedTicks_24(3), 0(9)>
  # DEBUG locElapsedTicks => locElapsedTicks_7
  # DEBUG BEGIN_STMT
  _4 ={v} pInst_15(D)->PCCCR;
  _5 = _4 & GoMask_19(D);
  if (_5 == GoMask_19(D))
    goto <bb 5>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 5> [local count: 1014686025]:
  if (locElapsedTicks_7 < locTimeoutTicks_12)
    goto <bb 3>; [94.50%]
  else
    goto <bb 6>; [5.50%]

  <bb 6> [local count: 114863532]:
  # locElapsedTicks_25 = PHI <locElapsedTicks_7(4), locElapsedTicks_7(5)>
  # DEBUG BEGIN_STMT
  if (locTimeoutTicks_12 <= locElapsedTicks_25)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 57431766]:
  # DEBUG BEGIN_STMT
  # DEBUG locStatus => 1

  <bb 8> [local count: 229727064]:
  # locStatus_6 = PHI <0(2), 0(6), 1(7)>
  # DEBUG locStatus => locStatus_6
  # DEBUG BEGIN_STMT
  locCurrentTicks ={v} {CLOBBER};
  return locStatus_6;

}


