
Marking local functions:


Marking externally visible functions: pfe_fail_stop_cfg_irq_unmask_all pfe_fail_stop_cfg_irq_unmask pfe_fail_stop_cfg_irq_mask pfe_fail_stop_cfg_isr


Marking externally visible variables:


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

pfe_hm_report/26 (pfe_hm_report) @074dbd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: pfe_fail_stop_cfg_isr/21 
  Calls: 
event_id.10654/25 (event_id) @074dc630
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: pfe_fail_stop_cfg_isr/21 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
pfe_fail_stop_cfg_irq_unmask_all/24 (pfe_fail_stop_cfg_irq_unmask_all) @074db8c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: 
pfe_fail_stop_cfg_irq_unmask/23 (pfe_fail_stop_cfg_irq_unmask) @074db620
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: 
pfe_fail_stop_cfg_irq_mask/22 (pfe_fail_stop_cfg_irq_mask) @074db2a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: 
pfe_fail_stop_cfg_isr/21 (pfe_fail_stop_cfg_isr) @074d39a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: event_id.10654/25 (read)
  Referring: 
  Availability: available
  Function flags: body optimize_size
  Called by: 
  Calls: pfe_hm_report/26 
pfe_fail_stop_cfg_irq_unmask_all (addr_t base_va)
{
  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = base_va + 192;
  _2 = (volatile uint32_t *) _1;
  *_2 = 3;
  # DEBUG BEGIN_STMT
  return;

}


pfe_fail_stop_cfg_irq_unmask (addr_t base_va)
{
  uint32_t reg;

  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = base_va + 192;
  _2 = (volatile uint32_t *) _1;
  _3 = *_2;
  reg = _3 | 1;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = base_va + 192;
  _5 = (volatile uint32_t *) _4;
  *_5 = reg;
  # DEBUG BEGIN_STMT
  return;

}


pfe_fail_stop_cfg_irq_mask (addr_t base_va)
{
  uint32_t reg;

  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = base_va + 192;
  _2 = (volatile uint32_t *) _1;
  _3 = *_2;
  reg = _3 & 4294967294;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _4 = base_va + 192;
  _5 = (volatile uint32_t *) _4;
  *_5 = reg;
  # DEBUG BEGIN_STMT
  return;

}


pfe_fail_stop_cfg_isr (addr_t base_va)
{
  static const pfe_hm_evt_t event_id[6] = {140, 141, 142, 143, 144, 145};
  uint8_t index;
  uint32_t trig_en_interrupts;
  errno_t ret;
  uint32_t reg_source;
  uint32_t reg_src;
  uint32_t reg_en;
  errno_t D.10680;

  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  ret = 2;
  # DEBUG BEGIN_STMT
  trig_en_interrupts = 0;
  # DEBUG BEGIN_STMT
  index = 0;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = base_va + 192;
  _2 = (volatile uint32_t *) _1;
  reg_en = *_2;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _3 = base_va + 192;
  _4 = (volatile uint32_t *) _3;
  _5 = reg_en & 4294967294;
  *_4 = _5;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _6 = base_va + 188;
  _7 = (volatile uint32_t *) _6;
  reg_src = *_7;
  # DEBUG BEGIN_STMT
  _8 = reg_src & reg_en;
  _9 = _8 & 3;
  if (_9 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _10 = base_va + 296;
  _11 = (volatile uint32_t *) _10;
  _12 = *_11;
  _13 = base_va + 180;
  _14 = (volatile uint32_t *) _13;
  _15 = *_14;
  reg_source = _12 & _15;
  goto <bb 5>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  reg_source = 0;

  <bb 5> :
  # DEBUG BEGIN_STMT
  if (reg_source != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 6> :
  # DEBUG BEGIN_STMT
  trig_en_interrupts = reg_source;
  # DEBUG BEGIN_STMT
  goto <bb 10>; [INV]

  <bb 7> :
  # DEBUG BEGIN_STMT
  _16 = trig_en_interrupts & 1;
  if (_16 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  # DEBUG BEGIN_STMT
  _17 = (int) index;
  _18 = event_id[_17];
  pfe_hm_report (7, 2, _18, "");

  <bb 9> :
  # DEBUG BEGIN_STMT
  trig_en_interrupts = trig_en_interrupts >> 1;
  # DEBUG BEGIN_STMT
  index.0_19 = index;
  index = index.0_19 + 1;

  <bb 10> :
  # DEBUG BEGIN_STMT
  if (trig_en_interrupts != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 11> :
  # DEBUG BEGIN_STMT
  ret = 0;

  <bb 12> :
  # DEBUG BEGIN_STMT
  D.10680 = ret;
  return D.10680;

}


