
Marking local functions:


Marking externally visible functions: Gpio_Dio_Ip_ReadPin Gpio_Dio_Ip_ReadPins Gpio_Dio_Ip_TogglePins Gpio_Dio_Ip_ClearPins Gpio_Dio_Ip_SetPins Gpio_Dio_Ip_GetPinsOutput Gpio_Dio_Ip_WritePins Gpio_Dio_Ip_WritePin


Marking externally visible variables: GpioBaseAdresses


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

SchM_Exit_Dio_DIO_EXCLUSIVE_AREA_00/10 (SchM_Exit_Dio_DIO_EXCLUSIVE_AREA_00) @06bd0000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Gpio_Dio_Ip_WritePin/1 
  Calls: 
SchM_Enter_Dio_DIO_EXCLUSIVE_AREA_00/9 (SchM_Enter_Dio_DIO_EXCLUSIVE_AREA_00) @06bcdd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Gpio_Dio_Ip_WritePin/1 
  Calls: 
Gpio_Dio_Ip_ReadPin/8 (Gpio_Dio_Ip_ReadPin) @06bcdee0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
Gpio_Dio_Ip_ReadPins/7 (Gpio_Dio_Ip_ReadPins) @06bcdc40
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
Gpio_Dio_Ip_TogglePins/6 (Gpio_Dio_Ip_TogglePins) @06bcd9a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
Gpio_Dio_Ip_ClearPins/5 (Gpio_Dio_Ip_ClearPins) @06bcd620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
Gpio_Dio_Ip_SetPins/4 (Gpio_Dio_Ip_SetPins) @06bcd2a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
Gpio_Dio_Ip_GetPinsOutput/3 (Gpio_Dio_Ip_GetPinsOutput) @06a8dc40
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
Gpio_Dio_Ip_WritePins/2 (Gpio_Dio_Ip_WritePins) @06a8dee0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: 
Gpio_Dio_Ip_WritePin/1 (Gpio_Dio_Ip_WritePin) @06a8db60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: SchM_Exit_Dio_DIO_EXCLUSIVE_AREA_00/10 SchM_Enter_Dio_DIO_EXCLUSIVE_AREA_00/9 
GpioBaseAdresses/0 (GpioBaseAdresses) @06bc6b40
  Type: variable definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Varpool flags: initialized
Gpio_Dio_Ip_ReadPin (const struct GPIO_Type * const base, Gpio_Dio_Ip_PinsChannelType pin)
{
  Gpio_Dio_Ip_PinsLevelType returnValue;
  Gpio_Dio_Ip_PinsLevelType D.5597;

  <bb 2> :
  returnValue = 0;
  _1 = base->PDIR;
  _2 = 1 << pin;
  _3 = _1 & _2;
  _4 = _3 >> pin;
  returnValue = (Gpio_Dio_Ip_PinsLevelType) _4;
  D.5597 = returnValue;

  <bb 3> :
<L0>:
  return D.5597;

}


Gpio_Dio_Ip_ReadPins (const struct GPIO_Type * const base)
{
  Gpio_Dio_Ip_PinsChannelType returnValue;
  Gpio_Dio_Ip_PinsChannelType D.5595;

  <bb 2> :
  returnValue = 0;
  returnValue = base->PDIR;
  D.5595 = returnValue;

  <bb 3> :
<L0>:
  return D.5595;

}


Gpio_Dio_Ip_TogglePins (struct GPIO_Type * const base, Gpio_Dio_Ip_PinsChannelType pins)
{
  <bb 2> :
  base->PTOR = pins;
  return;

}


Gpio_Dio_Ip_ClearPins (struct GPIO_Type * const base, Gpio_Dio_Ip_PinsChannelType pins)
{
  <bb 2> :
  base->PCOR = pins;
  return;

}


Gpio_Dio_Ip_SetPins (struct GPIO_Type * const base, Gpio_Dio_Ip_PinsChannelType pins)
{
  <bb 2> :
  base->PSOR = pins;
  return;

}


Gpio_Dio_Ip_GetPinsOutput (const struct GPIO_Type * const base)
{
  Gpio_Dio_Ip_PinsChannelType returnValue;
  Gpio_Dio_Ip_PinsChannelType D.5593;

  <bb 2> :
  returnValue = 0;
  returnValue = base->PDOR;
  D.5593 = returnValue;

  <bb 3> :
<L0>:
  return D.5593;

}


Gpio_Dio_Ip_WritePins (struct GPIO_Type * const base, Gpio_Dio_Ip_PinsChannelType pins)
{
  <bb 2> :
  base->PDOR = pins;
  return;

}


Gpio_Dio_Ip_WritePin (struct GPIO_Type * const base, Gpio_Dio_Ip_PinsChannelType pin, Gpio_Dio_Ip_PinsLevelType value)
{
  Gpio_Dio_Ip_PinsChannelType pinsValues;

  <bb 2> :
  SchM_Enter_Dio_DIO_EXCLUSIVE_AREA_00 ();
  pinsValues = base->PDOR;
  _1 = 1 << pin;
  _2 = ~_1;
  pinsValues = pinsValues & _2;
  _3 = (long unsigned int) value;
  _4 = _3 << pin;
  pinsValues = pinsValues | _4;
  base->PDOR = pinsValues;
  SchM_Exit_Dio_DIO_EXCLUSIVE_AREA_00 ();
  return;

}


