
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:

bDetectBmuInit/47 (bDetectBmuInit) @0d6d5240
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: Eth_43_PFE_BmuIrqHdlr/43 (read)
  Availability: not_available
  Varpool flags:
oal_mm_dev_unmap/46 (oal_mm_dev_unmap) @0d67bd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: hal_ip_ready_get/17 (574129754 (estimated locally),0.53 per call) 
  Calls: 
oal_mm_dev_map/45 (oal_mm_dev_map) @0d67bc40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: hal_ip_ready_get/17 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
oal_irq_common_handler/44 (oal_irq_common_handler) @0d67b9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Eth_43_PFE_BmuIrqHdlr/43 (565234877 (estimated locally),0.53 per call) Eth_43_PFE_BmuIrqHdlr/43 (144521354 (estimated locally),0.13 per call) Eth_43_PFE_HifIrqHdlr_0/42 (71717364 (estimated locally),0.07 per call) 
  Calls: 
Eth_43_PFE_BmuIrqHdlr/43 (Eth_43_PFE_BmuIrqHdlr) @0d67b540
  Type: function definition analyzed
  Visibility: externally_visible public
  References: bDetectBmuInit/47 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: oal_irq_common_handler/44 (565234877 (estimated locally),0.53 per call) oal_irq_clear_bmu_interrupt_status_flag/41 (291181603 (estimated locally),0.27 per call) oal_irq_common_handler/44 (144521354 (estimated locally),0.13 per call) oal_irq_detect_handle_bmu_spurious_interrupt/40 (217325345 (estimated locally),0.20 per call) hal_ip_ready_get/17 (1073741824 (estimated locally),1.00 per call) 
Eth_43_PFE_HifIrqHdlr_0/42 (Eth_43_PFE_HifIrqHdlr_0) @0d67b2a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: oal_irq_common_handler/44 (71717364 (estimated locally),0.07 per call) oal_irq_detect_hif_spurious_interrupt/38 (217325345 (estimated locally),0.20 per call) hal_ip_ready_get/17 (1073741824 (estimated locally),1.00 per call) 
oal_irq_clear_bmu_interrupt_status_flag/41 (oal_irq_clear_bmu_interrupt_status_flag) @0d67b000
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Eth_43_PFE_BmuIrqHdlr/43 (291181603 (estimated locally),0.27 per call) 
  Calls: 
oal_irq_detect_handle_bmu_spurious_interrupt/40 (oal_irq_detect_handle_bmu_spurious_interrupt) @0d6762a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Eth_43_PFE_BmuIrqHdlr/43 (217325345 (estimated locally),0.20 per call) 
  Calls: 
oal_irq_detect_hif_spurious_interrupt/38 (oal_irq_detect_hif_spurious_interrupt) @0d676700
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: cbus_hif_int_en_var_addr/35 (read)cbus_hif_int_src_var_addr/36 (read)
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Eth_43_PFE_HifIrqHdlr_0/42 (217325345 (estimated locally),0.20 per call) 
  Calls: 
cbus_hif_int_src_var_addr/36 (cbus_hif_int_src_var_addr) @0d66b900
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: oal_irq_detect_hif_spurious_interrupt/38 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
cbus_hif_int_en_var_addr/35 (cbus_hif_int_en_var_addr) @0d66b828
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: oal_irq_detect_hif_spurious_interrupt/38 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
hal_ip_ready_get/17 (hal_ip_ready_get) @07130460
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Eth_43_PFE_BmuIrqHdlr/43 (1073741824 (estimated locally),1.00 per call) Eth_43_PFE_HifIrqHdlr_0/42 (1073741824 (estimated locally),1.00 per call) 
  Calls: oal_mm_dev_unmap/46 (574129754 (estimated locally),0.53 per call) oal_mm_dev_map/45 (1073741824 (estimated locally),1.00 per call) 
Eth_43_PFE_BmuIrqHdlr ()
{
  bool_t bInitStatus;
  bool_t bDetectSpuriousIsrBmu2;
  bool_t bDetectSpuriousIsrBmu1;
  unsigned char bDetectSpuriousIsrBmu1.2_1;
  unsigned char bDetectSpuriousIsrBmu2.3_2;
  unsigned char bDetectBmuInit.4_3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  bDetectSpuriousIsrBmu1 = 0;
  # DEBUG BEGIN_STMT
  bDetectSpuriousIsrBmu2 = 0;
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY oal_irq_check_driver_init_status
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  bInitStatus_14 = hal_ip_ready_get ();
  # DEBUG bInitStatus => bInitStatus_14
  # DEBUG BEGIN_STMT
  # DEBUG bInitStatus => NULL
  # DEBUG bDriverInitStatus => bInitStatus_14
  # DEBUG BEGIN_STMT
  if (bInitStatus_14 == 1)
    goto <bb 3>; [20.24%]
  else
    goto <bb 6>; [79.76%]

  <bb 3> [local count: 217325345]:
  # DEBUG BEGIN_STMT
  oal_irq_detect_handle_bmu_spurious_interrupt (&bDetectSpuriousIsrBmu1, &bDetectSpuriousIsrBmu2);
  # DEBUG BEGIN_STMT
  bDetectSpuriousIsrBmu1.2_1 = bDetectSpuriousIsrBmu1;
  if (bDetectSpuriousIsrBmu1.2_1 == 0)
    goto <bb 5>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 4> [local count: 145607981]:
  bDetectSpuriousIsrBmu2.3_2 = bDetectSpuriousIsrBmu2;
  if (bDetectSpuriousIsrBmu2.3_2 == 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 9>; [50.00%]

  <bb 5> [local count: 144521354]:
  # DEBUG BEGIN_STMT
  oal_irq_common_handler (5);
  goto <bb 9>; [100.00%]

  <bb 6> [local count: 856416480]:
  # DEBUG BEGIN_STMT
  bDetectBmuInit.4_3 ={v} bDetectBmuInit;
  if (bDetectBmuInit.4_3 == 1)
    goto <bb 7>; [34.00%]
  else
    goto <bb 8>; [66.00%]

  <bb 7> [local count: 291181603]:
  # DEBUG BEGIN_STMT
  oal_irq_clear_bmu_interrupt_status_flag ();
  goto <bb 9>; [100.00%]

  <bb 8> [local count: 565234877]:
  # DEBUG BEGIN_STMT
  oal_irq_common_handler (5);

  <bb 9> [local count: 1073741824]:
  bDetectSpuriousIsrBmu1 ={v} {CLOBBER};
  bDetectSpuriousIsrBmu2 ={v} {CLOBBER};
  return;

}


Eth_43_PFE_HifIrqHdlr_0 ()
{
  uint32 interrupt_src;
  uint32 interrupt_src;
  bool_t bInitStatus;
  unsigned char _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG INLINE_ENTRY oal_irq_check_driver_init_status
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  bInitStatus_6 = hal_ip_ready_get ();
  # DEBUG bInitStatus => bInitStatus_6
  # DEBUG BEGIN_STMT
  # DEBUG bInitStatus => NULL
  # DEBUG bDriverInitStatus => bInitStatus_6
  # DEBUG BEGIN_STMT
  if (bInitStatus_6 == 1)
    goto <bb 3>; [20.24%]
  else
    goto <bb 6>; [79.76%]

  <bb 3> [local count: 217325345]:
  # DEBUG BEGIN_STMT
  _1 = oal_irq_detect_hif_spurious_interrupt (0);
  if (_1 == 0)
    goto <bb 4>; [33.00%]
  else
    goto <bb 5>; [67.00%]

  <bb 4> [local count: 71717364]:
  # DEBUG BEGIN_STMT
  oal_irq_common_handler (0);
  goto <bb 7>; [100.00%]

  <bb 5> [local count: 145607981]:
  # DEBUG BEGIN_STMT
  # DEBUG int_src_var_addr => 1175028064
  # DEBUG INLINE_ENTRY oal_irq_clear_hif_interrupt_status_flag
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  interrupt_src_7 ={v} MEM[(volatile uint32_t *)1175028064B];
  # DEBUG interrupt_src => interrupt_src_7
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(volatile uint32_t *)1175028064B] ={v} interrupt_src_7;
  # DEBUG BEGIN_STMT
  goto <bb 7>; [100.00%]

  <bb 6> [local count: 856416480]:
  # DEBUG BEGIN_STMT
  # DEBUG int_src_var_addr => 1175028064
  # DEBUG INLINE_ENTRY oal_irq_clear_hif_interrupt_status_flag
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  interrupt_src_8 ={v} MEM[(volatile uint32_t *)1175028064B];
  # DEBUG interrupt_src => interrupt_src_8
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(volatile uint32_t *)1175028064B] ={v} interrupt_src_8;
  # DEBUG BEGIN_STMT

  <bb 7> [local count: 1073741824]:
  # DEBUG int_src_var_addr => NULL
  # DEBUG interrupt_src => NULL
  # DEBUG int_src_var_addr => NULL
  # DEBUG interrupt_src => NULL
  return;

}


oal_irq_clear_bmu_interrupt_status_flag ()
{
  uint32 interrupt_src;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  interrupt_src_2 ={v} MEM[(volatile uint32_t *)1174962208B];
  # DEBUG interrupt_src => interrupt_src_2
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(volatile uint32_t *)1174962208B] ={v} interrupt_src_2;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  interrupt_src_4 ={v} MEM[(volatile uint32_t *)1174978592B];
  # DEBUG interrupt_src => interrupt_src_4
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(volatile uint32_t *)1174978592B] ={v} interrupt_src_4;
  # DEBUG BEGIN_STMT
  return;

}


oal_irq_detect_handle_bmu_spurious_interrupt (bool_t * bDetectSpuriousIsrBmu1, bool_t * bDetectSpuriousIsrBmu2)
{
  uint32 int_src;
  uint32 int_en;
  long unsigned int _1;
  long unsigned int _2;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  int_en_6 ={v} MEM[(volatile uint32_t *)1174962212B];
  # DEBUG int_en => int_en_6
  # DEBUG BEGIN_STMT
  int_src_7 ={v} MEM[(volatile uint32_t *)1174962208B];
  # DEBUG int_src => int_src_7
  # DEBUG BEGIN_STMT
  _1 = int_en_6 & int_src_7;
  if (_1 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(volatile uint32_t *)1174962208B] ={v} int_src_7;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *bDetectSpuriousIsrBmu1_9(D) = 1;

  <bb 4> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  int_en_11 ={v} MEM[(volatile uint32_t *)1174978596B];
  # DEBUG int_en => int_en_11
  # DEBUG BEGIN_STMT
  int_src_12 ={v} MEM[(volatile uint32_t *)1174978592B];
  # DEBUG int_src => int_src_12
  # DEBUG BEGIN_STMT
  _2 = int_en_11 & int_src_12;
  if (_2 == 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 6>; [50.00%]

  <bb 5> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  MEM[(volatile uint32_t *)1174978592B] ={v} int_src_12;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  *bDetectSpuriousIsrBmu2_14(D) = 1;

  <bb 6> [local count: 1073741824]:
  return;

}


oal_irq_detect_hif_spurious_interrupt (oal_irq_idx_t idx)
{
  uint32 int_src;
  uint32 int_en;
  bool_t bRet;
  int _1;
  unsigned int _2;
  volatile uint32_t * _3;
  unsigned int _4;
  volatile uint32_t * _5;
  long unsigned int _6;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG bRet => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = (int) idx_8(D);
  _2 = cbus_hif_int_en_var_addr[_1];
  _3 = (volatile uint32_t *) _2;
  int_en_10 ={v} *_3;
  # DEBUG int_en => int_en_10
  # DEBUG BEGIN_STMT
  _4 = cbus_hif_int_src_var_addr[_1];
  _5 = (volatile uint32_t *) _4;
  int_src_11 ={v} *_5;
  # DEBUG int_src => int_src_11
  # DEBUG BEGIN_STMT
  _6 = int_en_10 & int_src_11;
  if (_6 == 0)
    goto <bb 3>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 3> [local count: 536870913]:
  # DEBUG BEGIN_STMT
  # DEBUG bRet => 1

  <bb 4> [local count: 1073741824]:
  # bRet_7 = PHI <0(2), 1(3)>
  # DEBUG bRet => bRet_7
  # DEBUG BEGIN_STMT
  return bRet_7;

}


__attribute__((unused))
hal_ip_ready_get ()
{
  uint32_t val;
  uint32_t * ctrlreg;
  _Bool _1;
  bool_t _10;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  ctrlreg_6 = oal_mm_dev_map (1074252524B, 4);
  # DEBUG ctrlreg => ctrlreg_6
  # DEBUG BEGIN_STMT
  # DEBUG val => 0
  # DEBUG BEGIN_STMT
  if (ctrlreg_6 != 0B)
    goto <bb 3>; [53.47%]
  else
    goto <bb 4>; [46.53%]

  <bb 3> [local count: 574129754]:
  # DEBUG BEGIN_STMT
  val_7 ={v} MEM[(volatile uint32_t *)ctrlreg_6];
  # DEBUG val => val_7
  # DEBUG BEGIN_STMT
  val_8 = val_7 & 65536;
  # DEBUG val => val_8
  # DEBUG BEGIN_STMT
  oal_mm_dev_unmap (ctrlreg_6, 4);

  <bb 4> [local count: 1073741824]:
  # val_2 = PHI <0(2), val_8(3)>
  # DEBUG val => val_2
  # DEBUG BEGIN_STMT
  _1 = val_2 != 0;
  _10 = (bool_t) _1;
  return _10;

}


