SchM_Exit_Dio_DIO_EXCLUSIVE_AREA_01 ()
{
  uint32 u32CoreId;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;

  <bb 2> :
  # DEBUG BEGIN_STMT
  u32CoreId_7 = 0;
  # DEBUG u32CoreId => u32CoreId_7
  # DEBUG BEGIN_STMT
  _1 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_01[u32CoreId_7];
  _2 = _1 + 4294967295;
  reentry_guard_DIO_EXCLUSIVE_AREA_01[u32CoreId_7] ={v} _2;
  # DEBUG BEGIN_STMT
  _3 ={v} msr_DIO_EXCLUSIVE_AREA_01[u32CoreId_7];
  _4 = _3 & 1;
  if (_4 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _5 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_01[u32CoreId_7];
  if (_5 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  __asm__ __volatile__(" cpsie i");

  <bb 5> :
  return;

}


SchM_Enter_Dio_DIO_EXCLUSIVE_AREA_01 ()
{
  uint32 u32CoreId;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int _6;

  <bb 2> :
  # DEBUG BEGIN_STMT
  u32CoreId_8 = 0;
  # DEBUG u32CoreId => u32CoreId_8
  # DEBUG BEGIN_STMT
  _1 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_01[u32CoreId_8];
  if (_1 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _2 = Dio_schm_read_msr ();
  msr_DIO_EXCLUSIVE_AREA_01[u32CoreId_8] ={v} _2;
  # DEBUG BEGIN_STMT
  _3 ={v} msr_DIO_EXCLUSIVE_AREA_01[u32CoreId_8];
  _4 = _3 & 1;
  if (_4 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  __asm__ __volatile__(" cpsid i");

  <bb 5> :
  # DEBUG BEGIN_STMT
  _5 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_01[u32CoreId_8];
  _6 = _5 + 1;
  reentry_guard_DIO_EXCLUSIVE_AREA_01[u32CoreId_8] ={v} _6;
  return;

}


SchM_Exit_Dio_DIO_EXCLUSIVE_AREA_00 ()
{
  uint32 u32CoreId;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;

  <bb 2> :
  # DEBUG BEGIN_STMT
  u32CoreId_7 = 0;
  # DEBUG u32CoreId => u32CoreId_7
  # DEBUG BEGIN_STMT
  _1 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_00[u32CoreId_7];
  _2 = _1 + 4294967295;
  reentry_guard_DIO_EXCLUSIVE_AREA_00[u32CoreId_7] ={v} _2;
  # DEBUG BEGIN_STMT
  _3 ={v} msr_DIO_EXCLUSIVE_AREA_00[u32CoreId_7];
  _4 = _3 & 1;
  if (_4 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _5 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_00[u32CoreId_7];
  if (_5 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  __asm__ __volatile__(" cpsie i");

  <bb 5> :
  return;

}


SchM_Enter_Dio_DIO_EXCLUSIVE_AREA_00 ()
{
  uint32 u32CoreId;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  long unsigned int _6;

  <bb 2> :
  # DEBUG BEGIN_STMT
  u32CoreId_8 = 0;
  # DEBUG u32CoreId => u32CoreId_8
  # DEBUG BEGIN_STMT
  _1 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_00[u32CoreId_8];
  if (_1 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  # DEBUG BEGIN_STMT
  _2 = Dio_schm_read_msr ();
  msr_DIO_EXCLUSIVE_AREA_00[u32CoreId_8] ={v} _2;
  # DEBUG BEGIN_STMT
  _3 ={v} msr_DIO_EXCLUSIVE_AREA_00[u32CoreId_8];
  _4 = _3 & 1;
  if (_4 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  # DEBUG BEGIN_STMT
  __asm__ __volatile__(" cpsid i");

  <bb 5> :
  # DEBUG BEGIN_STMT
  _5 ={v} reentry_guard_DIO_EXCLUSIVE_AREA_00[u32CoreId_8];
  _6 = _5 + 1;
  reentry_guard_DIO_EXCLUSIVE_AREA_00[u32CoreId_8] ={v} _6;
  return;

}


Dio_schm_read_msr ()
{
  register uint32 reg_tmp;
  uint32 _2;

  <bb 2> :
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  __asm__ __volatile__(" mrs %0, primask " : "=r" reg_tmp_1);
  # DEBUG reg_tmp => reg_tmp_1
  # DEBUG BEGIN_STMT
  _2 = reg_tmp_1;
  return _2;

}


