ADM/GW/Debug_FLASH/RTD/src/Lpspi_Ip.c.082i.materialize-all-clones
2024-08-08 10:00:15 +09:00

2729 lines
59 KiB
Plaintext

Lpspi_Ip_UpdateTransferMode.part.0 ()
{
struct Lpspi_Ip_StateStructureType * state;
Lpspi_Ip_StatusType status;
volatile boolean x;
volatile boolean x;
uint8 u8Instance;
Lpspi_Ip_ModeType Mode;
_Bool x.0_1;
<bb 7> [local count: 214748]:
# DEBUG D#4 s=> u8Instance
# DEBUG u8Instance => D#4
# DEBUG D#3 s=> Mode
# DEBUG Mode => D#3
<bb 2> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_1 ={v} x;
if (x.0_1 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 5> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 6> [local count: 107374]:
# status_2 = PHI <1(2)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_2
# DEBUG BEGIN_STMT
return status_2;
}
Lpspi_Ip_GetStatus (uint8 u8Instance)
{
volatile boolean x;
Lpspi_Ip_HwStatusType status;
const struct Lpspi_Ip_StateStructureType * state;
int _1;
_Bool x.0_8;
<bb 2> [local count: 429496]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
if (u8Instance_4(D) > 5)
goto <bb 3>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 3> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_8 ={v} x;
if (x.0_8 != 0)
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 8> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 9> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_4(D);
state_6 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_6
# DEBUG BEGIN_STMT
if (state_6 != 0B)
goto <bb 6>; [70.00%]
else
goto <bb 7>; [30.00%]
<bb 6> [local count: 150324]:
# DEBUG BEGIN_STMT
status_7 = state_6->status;
# DEBUG status => status_7
<bb 7> [local count: 322122]:
# status_2 = PHI <0(3), 0(5), status_7(6)>
# DEBUG x => NULL
# DEBUG status => status_2
# DEBUG BEGIN_STMT
return status_2;
}
Lpspi_Ip_IrqHandler (uint8 u8Instance)
{
uint32 u32IrqFlags;
const struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
long unsigned int _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_7(D);
base_9 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_9
# DEBUG BEGIN_STMT
state_10 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_10
# DEBUG BEGIN_STMT
# DEBUG u32IrqFlags => 0
# DEBUG BEGIN_STMT
if (state_10 != 0B)
goto <bb 3>; [70.00%]
else
goto <bb 6>; [30.00%]
<bb 3> [local count: 751619278]:
# DEBUG BEGIN_STMT
_2 ={v} base_9->SR;
u32IrqFlags_12 = _2 & 6147;
# DEBUG u32IrqFlags => u32IrqFlags_12
# DEBUG BEGIN_STMT
_3 ={v} base_9->IER;
u32IrqFlags_13 = _3 & u32IrqFlags_12;
# DEBUG u32IrqFlags => u32IrqFlags_13
# DEBUG BEGIN_STMT
if (u32IrqFlags_13 != 0)
goto <bb 4>; [33.00%]
else
goto <bb 5>; [67.00%]
<bb 4> [local count: 248034361]:
# DEBUG BEGIN_STMT
Lpspi_Ip_TransferProcess (u8Instance_7(D));
goto <bb 7>; [100.00%]
<bb 5> [local count: 503584916]:
# DEBUG BEGIN_STMT
_4 ={v} base_9->SR;
base_9->SR ={v} _4;
goto <bb 7>; [100.00%]
<bb 6> [local count: 322122547]:
# DEBUG BEGIN_STMT
_5 ={v} base_9->SR;
base_9->SR ={v} _5;
<bb 7> [local count: 1073741824]:
return;
}
Lpspi_Ip_Cancel (uint8 u8Instance)
{
volatile boolean x;
volatile boolean x;
uint32 u32Cfgr1;
struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
<unnamed type> _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
long unsigned int _6;
long unsigned int _7;
long unsigned int _8;
_Bool x.0_23;
_Bool x.0_24;
<bb 2> [local count: 429496]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG u32Cfgr1 => 0
# DEBUG BEGIN_STMT
if (u8Instance_11(D) > 5)
goto <bb 3>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 3> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_23 ={v} x;
if (x.0_23 != 0)
goto <bb 11>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 12> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 14> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_11(D);
base_13 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_13
# DEBUG BEGIN_STMT
state_14 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_14
# DEBUG BEGIN_STMT
if (state_14 == 0B)
goto <bb 6>; [46.53%]
else
goto <bb 8>; [53.47%]
<bb 6> [local count: 99922]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_24 ={v} x;
if (x.0_24 != 0)
goto <bb 11>; [50.00%]
else
goto <bb 13>; [50.00%]
<bb 13> [local count: 49961]:
<bb 7> [local count: 499612071]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 15> [local count: 499612071]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 114826]:
# DEBUG BEGIN_STMT
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_10 ();
# DEBUG BEGIN_STMT
_2 = state_14->status;
if (_2 == 2)
goto <bb 9>; [34.00%]
else
goto <bb 10>; [66.00%]
<bb 9> [local count: 39041]:
# DEBUG BEGIN_STMT
_3 ={v} base_13->CR;
_4 = _3 & 4294967294;
base_13->CR ={v} _4;
# DEBUG BEGIN_STMT
u32Cfgr1_17 ={v} base_13->CFGR1;
# DEBUG u32Cfgr1 => u32Cfgr1_17
# DEBUG BEGIN_STMT
_5 ={v} base_13->CR;
_6 = _5 | 2;
base_13->CR ={v} _6;
# DEBUG BEGIN_STMT
_7 ={v} base_13->CR;
_8 = _7 & 4294967293;
base_13->CR ={v} _8;
# DEBUG BEGIN_STMT
base_13->CFGR1 ={v} u32Cfgr1_17;
# DEBUG BEGIN_STMT
state_14->status = 1;
<bb 10> [local count: 114826]:
# DEBUG BEGIN_STMT
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_10 ();
<bb 11> [local count: 272161]:
# DEBUG x => NULL
# DEBUG x => NULL
return;
}
Lpspi_Ip_UpdateTransferMode (uint8 u8Instance, Lpspi_Ip_ModeType Mode)
{
volatile boolean x;
Lpspi_Ip_StatusType status;
struct Lpspi_Ip_StateStructureType * state;
int _1;
<unnamed type> _2;
_Bool x.0_12;
<bb 2> [local count: 429496]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
if (u8Instance_5(D) > 5)
goto <bb 3>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 3> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_12 ={v} x;
if (x.0_12 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 10> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 11> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_5(D);
state_7 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_7
# DEBUG BEGIN_STMT
if (state_7 == 0B)
goto <bb 6>; [30.00%]
else
goto <bb 7>; [70.00%]
<bb 6> [local count: 64424]:
# DEBUG D#1 => u8Instance_5(D)
# DEBUG D#2 => Mode_9(D)
status_11 = Lpspi_Ip_UpdateTransferMode.part.0 ();
goto <bb 9>; [100.00%]
<bb 7> [local count: 150324]:
# DEBUG BEGIN_STMT
_2 = state_7->status;
if (_2 != 2)
goto <bb 8>; [66.00%]
else
goto <bb 9>; [34.00%]
<bb 8> [local count: 99214]:
# DEBUG BEGIN_STMT
state_7->transferMode = Mode_9(D);
<bb 9> [local count: 289910]:
# status_3 = PHI <1(3), status_11(6), 0(8), 1(7)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_3
# DEBUG BEGIN_STMT
return status_3;
}
Lpspi_Ip_UpdateDefaultTransmitData (const struct Lpspi_Ip_ExternalDeviceType * pExternalDevice, uint32 u32DefaultData)
{
volatile boolean x;
volatile boolean x;
Lpspi_Ip_StatusType status;
const struct Lpspi_Ip_StateStructureType * state;
unsigned char _1;
int _2;
<unnamed type> _3;
struct Lpspi_Ip_DeviceParamsType * _4;
_Bool x.0_12;
_Bool x.0_13;
<bb 2> [local count: 715827]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
if (pExternalDevice_7(D) == 0B)
goto <bb 3>; [30.00%]
else
goto <bb 5>; [70.00%]
<bb 3> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_12 ={v} x;
if (x.0_12 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 11> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 13> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 501079]:
# DEBUG BEGIN_STMT
_1 = pExternalDevice_7(D)->u8Instance;
_2 = (int) _1;
state_9 = Lpspi_Ip_StateStructureArray[_2];
# DEBUG state => state_9
# DEBUG BEGIN_STMT
if (state_9 == 0B)
goto <bb 6>; [30.00%]
else
goto <bb 8>; [70.00%]
<bb 6> [local count: 150324]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_13 ={v} x;
if (x.0_13 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 12> [local count: 75162]:
<bb 7> [local count: 751619279]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 14> [local count: 751619279]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 350755]:
# DEBUG BEGIN_STMT
_3 = state_9->status;
if (_3 != 2)
goto <bb 9>; [66.00%]
else
goto <bb 10>; [34.00%]
<bb 9> [local count: 231498]:
# DEBUG BEGIN_STMT
_4 = pExternalDevice_7(D)->pDeviceParams;
_4->u32DefaultData = u32DefaultData_10(D);
<bb 10> [local count: 533291]:
# status_5 = PHI <1(3), 1(6), 0(9), 1(8)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_5
# DEBUG BEGIN_STMT
return status_5;
}
Lpspi_Ip_UpdateLsb (const struct Lpspi_Ip_ExternalDeviceType * pExternalDevice, boolean bLsb)
{
volatile boolean x;
volatile boolean x;
Lpspi_Ip_StatusType status;
const struct Lpspi_Ip_StateStructureType * state;
unsigned char _1;
int _2;
<unnamed type> _3;
struct Lpspi_Ip_DeviceParamsType * _4;
_Bool x.0_12;
_Bool x.0_13;
<bb 2> [local count: 715827]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
if (pExternalDevice_7(D) == 0B)
goto <bb 3>; [30.00%]
else
goto <bb 5>; [70.00%]
<bb 3> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_12 ={v} x;
if (x.0_12 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 11> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 13> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 501079]:
# DEBUG BEGIN_STMT
_1 = pExternalDevice_7(D)->u8Instance;
_2 = (int) _1;
state_9 = Lpspi_Ip_StateStructureArray[_2];
# DEBUG state => state_9
# DEBUG BEGIN_STMT
if (state_9 == 0B)
goto <bb 6>; [30.00%]
else
goto <bb 8>; [70.00%]
<bb 6> [local count: 150324]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_13 ={v} x;
if (x.0_13 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 12> [local count: 75162]:
<bb 7> [local count: 751619279]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 14> [local count: 751619279]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 350755]:
# DEBUG BEGIN_STMT
_3 = state_9->status;
if (_3 != 2)
goto <bb 9>; [66.00%]
else
goto <bb 10>; [34.00%]
<bb 9> [local count: 231498]:
# DEBUG BEGIN_STMT
_4 = pExternalDevice_7(D)->pDeviceParams;
_4->lsb = bLsb_10(D);
<bb 10> [local count: 533291]:
# status_5 = PHI <1(3), 1(6), 0(9), 1(8)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_5
# DEBUG BEGIN_STMT
return status_5;
}
Lpspi_Ip_UpdateFrameSize (const struct Lpspi_Ip_ExternalDeviceType * pExternalDevice, uint8 u8FrameSize)
{
volatile boolean x;
volatile boolean x;
volatile boolean x;
Lpspi_Ip_StatusType status;
const struct Lpspi_Ip_StateStructureType * state;
unsigned char _1;
unsigned char _2;
int _3;
<unnamed type> _4;
struct Lpspi_Ip_DeviceParamsType * _5;
_Bool x.0_13;
_Bool x.0_14;
_Bool x.0_15;
<bb 2> [local count: 613566]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
if (pExternalDevice_8(D) == 0B)
goto <bb 3>; [30.00%]
else
goto <bb 5>; [70.00%]
<bb 3> [local count: 184070]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_13 ={v} x;
if (x.0_13 != 0)
goto <bb 13>; [50.00%]
else
goto <bb 14>; [50.00%]
<bb 14> [local count: 92035]:
<bb 4> [local count: 920350133]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 17> [local count: 920350133]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 429496]:
# DEBUG BEGIN_STMT
_1 = u8FrameSize_9(D) + 252;
if (_1 > 28)
goto <bb 6>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 6> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_14 ={v} x;
if (x.0_14 != 0)
goto <bb 13>; [50.00%]
else
goto <bb 15>; [50.00%]
<bb 15> [local count: 107374]:
<bb 7> [local count: 1073741823]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 18> [local count: 1073741824]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 214748]:
# DEBUG BEGIN_STMT
_2 = pExternalDevice_8(D)->u8Instance;
_3 = (int) _2;
state_11 = Lpspi_Ip_StateStructureArray[_3];
# DEBUG state => state_11
# DEBUG BEGIN_STMT
if (state_11 == 0B)
goto <bb 9>; [30.00%]
else
goto <bb 11>; [70.00%]
<bb 9> [local count: 64424]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_15 ={v} x;
if (x.0_15 != 0)
goto <bb 13>; [50.00%]
else
goto <bb 16>; [50.00%]
<bb 16> [local count: 32212]:
<bb 10> [local count: 322122547]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 19> [local count: 322122547]:
goto <bb 10>; [100.00%]
<bb 11> [local count: 150324]:
# DEBUG BEGIN_STMT
_4 = state_11->status;
if (_4 != 2)
goto <bb 12>; [66.00%]
else
goto <bb 13>; [34.00%]
<bb 12> [local count: 99214]:
# DEBUG BEGIN_STMT
_5 = pExternalDevice_8(D)->pDeviceParams;
_5->u8FrameSize = u8FrameSize_9(D);
<bb 13> [local count: 381945]:
# status_6 = PHI <1(3), 1(6), 1(9), 0(12), 1(11)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_6
# DEBUG BEGIN_STMT
return status_6;
}
Lpspi_Ip_ManageBuffers (uint8 u8Instance)
{
volatile boolean x;
volatile boolean x;
const struct Lpspi_Ip_StateStructureType * state;
const struct LPSPI_Type * base;
int _1;
<unnamed type> _2;
long unsigned int _3;
long unsigned int _4;
_Bool x.0_11;
_Bool x.0_12;
<bb 2> [local count: 429496]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
if (u8Instance_6(D) > 5)
goto <bb 3>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 3> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_11 ={v} x;
if (x.0_11 != 0)
goto <bb 11>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 12> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 14> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_6(D);
base_8 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_8
# DEBUG BEGIN_STMT
state_9 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_9
# DEBUG BEGIN_STMT
if (state_9 == 0B)
goto <bb 6>; [30.00%]
else
goto <bb 8>; [70.00%]
<bb 6> [local count: 64424]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_12 ={v} x;
if (x.0_12 != 0)
goto <bb 11>; [50.00%]
else
goto <bb 13>; [50.00%]
<bb 13> [local count: 32212]:
<bb 7> [local count: 322122547]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 15> [local count: 322122547]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 150324]:
# DEBUG BEGIN_STMT
_2 = state_9->transferMode;
if (_2 == 0)
goto <bb 9>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 9> [local count: 75162]:
# DEBUG BEGIN_STMT
_3 ={v} base_8->SR;
_4 = _3 & 3;
if (_4 != 0)
goto <bb 10>; [33.00%]
else
goto <bb 11>; [67.00%]
<bb 10> [local count: 24803]:
# DEBUG BEGIN_STMT
Lpspi_Ip_TransferProcess (u8Instance_6(D));
<bb 11> [local count: 289910]:
# DEBUG x => NULL
# DEBUG x => NULL
return;
}
Lpspi_Ip_AsyncTransmit (const struct Lpspi_Ip_ExternalDeviceType * pExternalDevice, uint8 * pu8TxBuffer, uint8 * pu8RxBuffer, uint16 u16Length, void (*Lpspi_Ip_CallbackType) (uint8, Lpspi_Ip_EventType) EndCallback)
{
volatile boolean x;
volatile boolean x;
volatile boolean x;
volatile boolean x;
volatile boolean x;
uint8 u8Instance;
Lpspi_Ip_StatusType status;
struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
struct Lpspi_Ip_DeviceParamsType * _2;
unsigned char _3;
short unsigned int _4;
short unsigned int _5;
<unnamed type> _6;
struct Lpspi_Ip_DeviceParamsType * _7;
unsigned char _8;
_Bool _9;
long unsigned int _10;
<unnamed type> _11;
_Bool x.0_37;
_Bool x.0_38;
_Bool x.0_39;
_Bool x.0_40;
_Bool x.0_41;
<bb 2> [local count: 613566]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
# DEBUG u8Instance => 0
# DEBUG BEGIN_STMT
if (pExternalDevice_14(D) == 0B)
goto <bb 3>; [30.00%]
else
goto <bb 5>; [70.00%]
<bb 3> [local count: 184070]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_37 ={v} x;
if (x.0_37 != 0)
goto <bb 24>; [50.00%]
else
goto <bb 25>; [50.00%]
<bb 25> [local count: 92035]:
<bb 4> [local count: 920350133]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 30> [local count: 920350133]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 429496]:
# DEBUG BEGIN_STMT
if (u16Length_15(D) == 0)
goto <bb 6>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 6> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_38 ={v} x;
if (x.0_38 != 0)
goto <bb 24>; [50.00%]
else
goto <bb 26>; [50.00%]
<bb 26> [local count: 107374]:
<bb 7> [local count: 1073741823]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 31> [local count: 1073741824]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 214748]:
# DEBUG BEGIN_STMT
u8Instance_17 = pExternalDevice_14(D)->u8Instance;
# DEBUG u8Instance => u8Instance_17
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_17;
base_18 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_18
# DEBUG BEGIN_STMT
state_19 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_19
# DEBUG BEGIN_STMT
if (state_19 == 0B)
goto <bb 9>; [30.00%]
else
goto <bb 11>; [70.00%]
<bb 9> [local count: 64424]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_39 ={v} x;
if (x.0_39 != 0)
goto <bb 24>; [50.00%]
else
goto <bb 27>; [50.00%]
<bb 27> [local count: 32212]:
<bb 10> [local count: 322122547]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 32> [local count: 322122547]:
goto <bb 10>; [100.00%]
<bb 11> [local count: 150324]:
# DEBUG BEGIN_STMT
_2 = pExternalDevice_14(D)->pDeviceParams;
_3 = _2->u8FrameSize;
if (_3 > 16)
goto <bb 12>; [50.00%]
else
goto <bb 15>; [50.00%]
<bb 12> [local count: 75162]:
# DEBUG BEGIN_STMT
_4 = u16Length_15(D) & 3;
if (_4 != 0)
goto <bb 13>; [50.00%]
else
goto <bb 19>; [50.00%]
<bb 13> [local count: 37581]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_40 ={v} x;
if (x.0_40 != 0)
goto <bb 24>; [50.00%]
else
goto <bb 28>; [50.00%]
<bb 28> [local count: 18790]:
<bb 14> [local count: 187904819]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 33> [local count: 187904819]:
goto <bb 14>; [100.00%]
<bb 15> [local count: 75162]:
# DEBUG BEGIN_STMT
if (_3 > 8)
goto <bb 16>; [50.00%]
else
goto <bb 19>; [50.00%]
<bb 16> [local count: 37581]:
# DEBUG BEGIN_STMT
_5 = u16Length_15(D) & 1;
if (_5 != 0)
goto <bb 17>; [50.00%]
else
goto <bb 19>; [50.00%]
<bb 17> [local count: 18790]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_41 ={v} x;
if (x.0_41 != 0)
goto <bb 24>; [50.00%]
else
goto <bb 29>; [50.00%]
<bb 29> [local count: 9395]:
<bb 18> [local count: 93952409]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 34> [local count: 93952409]:
goto <bb 18>; [100.00%]
<bb 19> [local count: 93952]:
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => NULL
# DEBUG BEGIN_STMT
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_09 ();
# DEBUG BEGIN_STMT
_6 = state_19->status;
if (_6 == 2)
goto <bb 20>; [34.00%]
else
goto <bb 21>; [66.00%]
<bb 20> [local count: 31944]:
# DEBUG BEGIN_STMT
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_09 ();
# DEBUG BEGIN_STMT
# DEBUG status => 1
goto <bb 24>; [100.00%]
<bb 21> [local count: 62008]:
# DEBUG BEGIN_STMT
state_19->status = 2;
# DEBUG BEGIN_STMT
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_09 ();
# DEBUG BEGIN_STMT
_7 = pExternalDevice_14(D)->pDeviceParams;
_8 = _7->u8FrameSize;
state_19->u8FrameSize = _8;
# DEBUG BEGIN_STMT
_9 = _7->lsb;
state_19->lsb = _9;
# DEBUG BEGIN_STMT
_10 = _7->u32DefaultData;
state_19->u32DefaultData = _10;
# DEBUG BEGIN_STMT
state_19->pExternalDevice = pExternalDevice_14(D);
# DEBUG BEGIN_STMT
state_19->callback = EndCallback_27(D);
# DEBUG BEGIN_STMT
Lpspi_TransmitTxInit (u8Instance_17, pu8TxBuffer_29(D), u16Length_15(D));
# DEBUG BEGIN_STMT
Lpspi_TransmitRxInit (u8Instance_17, pu8RxBuffer_31(D), u16Length_15(D));
# DEBUG BEGIN_STMT
base_18->DER ={v} 0;
# DEBUG BEGIN_STMT
_11 = state_19->transferMode;
switch (_11) <default: <L29> [33.33%], case 0: <L20> [33.33%], case 1: <L21> [33.33%]>
<bb 22> [local count: 20667]:
<L20>:
# DEBUG BEGIN_STMT
base_18->IER ={v} 0;
# DEBUG BEGIN_STMT
goto <bb 24>; [100.00%]
<bb 23> [local count: 20667]:
<L21>:
# DEBUG BEGIN_STMT
base_18->IER ={v} 6147;
# DEBUG BEGIN_STMT
<bb 24> [local count: 353753]:
# status_12 = PHI <1(3), 1(6), 1(13), 1(20), 0(22), 0(23), 0(21), 1(9), 1(17)>
<L29>:
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_12
# DEBUG BEGIN_STMT
return status_12;
}
Lpspi_TransmitRxInit (uint8 u8Instance, uint8 * pu8RxBuffer, uint16 numberOfFrames)
{
struct Lpspi_Ip_StateStructureType * state;
int _1;
unsigned char _2;
short unsigned int _3;
short unsigned int _4;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_6(D);
state_8 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_8
# DEBUG BEGIN_STMT
state_8->rxIndex = 0;
# DEBUG BEGIN_STMT
state_8->pu8RxBuffer = pu8RxBuffer_10(D);
# DEBUG BEGIN_STMT
_2 = state_8->u8FrameSize;
if (_2 <= 8)
goto <bb 3>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
state_8->expectedFifoReads = numberOfFrames_12(D);
goto <bb 7>; [100.00%]
<bb 4> [local count: 536870913]:
# DEBUG BEGIN_STMT
if (_2 <= 16)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 268435456]:
# DEBUG BEGIN_STMT
_3 = numberOfFrames_12(D) >> 1;
state_8->expectedFifoReads = _3;
goto <bb 7>; [100.00%]
<bb 6> [local count: 268435456]:
# DEBUG BEGIN_STMT
_4 = numberOfFrames_12(D) >> 2;
state_8->expectedFifoReads = _4;
<bb 7> [local count: 1073741824]:
return;
}
Lpspi_TransmitTxInit (uint8 u8Instance, uint8 * pu8TxBuffer, uint16 numberOfFrames)
{
uint32 u32Cfgr1;
uint32 u32TransferCommand;
struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
_Bool _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
long unsigned int _6;
long unsigned int _7;
long unsigned int _8;
long unsigned int _9;
_Bool _10;
const struct Lpspi_Ip_ExternalDeviceType * _11;
long unsigned int _12;
const struct Lpspi_Ip_ExternalDeviceType * _13;
long unsigned int _14;
unsigned char _15;
long unsigned int _16;
long unsigned int _17;
long unsigned int _18;
long unsigned int _19;
_Bool _20;
long unsigned int _21;
long unsigned int _22;
_Bool _23;
_Bool _24;
long unsigned int _25;
long unsigned int _26;
long unsigned int _27;
long unsigned int _28;
unsigned char _29;
short unsigned int _30;
short unsigned int _31;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_36(D);
base_38 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_38
# DEBUG BEGIN_STMT
state_39 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_39
# DEBUG BEGIN_STMT
# DEBUG u32TransferCommand => 0
# DEBUG BEGIN_STMT
# DEBUG u32Cfgr1 => 0
# DEBUG BEGIN_STMT
_2 = state_39->bFirstCmd;
if (_2 != 0)
goto <bb 3>; [33.00%]
else
goto <bb 5>; [67.00%]
<bb 3> [local count: 354334802]:
# DEBUG BEGIN_STMT
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_11 ();
# DEBUG BEGIN_STMT
_3 ={v} base_38->CR;
_4 = _3 & 4294967294;
base_38->CR ={v} _4;
# DEBUG BEGIN_STMT
u32Cfgr1_42 ={v} base_38->CFGR1;
# DEBUG u32Cfgr1 => u32Cfgr1_42
# DEBUG BEGIN_STMT
_5 ={v} base_38->CR;
_6 = _5 | 2;
base_38->CR ={v} _6;
# DEBUG BEGIN_STMT
_7 ={v} base_38->CR;
_8 = _7 & 4294967293;
base_38->CR ={v} _8;
# DEBUG BEGIN_STMT
base_38->CFGR1 ={v} u32Cfgr1_42;
# DEBUG BEGIN_STMT
_9 ={v} base_38->SR;
base_38->SR ={v} _9;
# DEBUG BEGIN_STMT
_10 = state_39->bSlaveMode;
if (_10 != 0)
goto <bb 5>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 4> [local count: 177167401]:
# DEBUG BEGIN_STMT
_11 = state_39->pExternalDevice;
_12 = _11->ccr;
base_38->CCR ={v} _12;
<bb 5> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_13 = state_39->pExternalDevice;
_14 = _13->tcr;
_15 = state_39->u8FrameSize;
_16 = (long unsigned int) _15;
_17 = _16 + 4294967295;
_18 = _17 & 4095;
_19 = _14 | _18;
_20 = state_39->lsb;
_21 = (long unsigned int) _20;
_22 = _21 << 23;
u32TransferCommand_48 = _19 | _22;
# DEBUG u32TransferCommand => u32TransferCommand_48
# DEBUG BEGIN_STMT
_23 = state_39->bSlaveMode;
if (_23 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 6> [local count: 536870913]:
# DEBUG BEGIN_STMT
u32TransferCommand_49 = u32TransferCommand_48 & 4292870143;
# DEBUG u32TransferCommand => u32TransferCommand_49
<bb 7> [local count: 1073741824]:
# u32TransferCommand_32 = PHI <u32TransferCommand_48(5), u32TransferCommand_49(6)>
# DEBUG u32TransferCommand => u32TransferCommand_32
# DEBUG BEGIN_STMT
_24 = state_39->bFirstCmd;
if (_24 != 0)
goto <bb 8>; [33.00%]
else
goto <bb 9>; [67.00%]
<bb 8> [local count: 354334802]:
# DEBUG BEGIN_STMT
base_38->TCR ={v} u32TransferCommand_32;
# DEBUG BEGIN_STMT
_25 ={v} base_38->CR;
_26 = _25 | 1;
base_38->CR ={v} _26;
# DEBUG BEGIN_STMT
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_11 ();
goto <bb 12>; [100.00%]
<bb 9> [local count: 719407023]:
# DEBUG BEGIN_STMT
_27 = u32TransferCommand_32 & 2097152;
if (_27 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 10> [local count: 359703511]:
# DEBUG BEGIN_STMT
_28 = u32TransferCommand_32 | 1048576;
base_38->TCR ={v} _28;
goto <bb 12>; [100.00%]
<bb 11> [local count: 359703511]:
# DEBUG BEGIN_STMT
base_38->TCR ={v} u32TransferCommand_32;
<bb 12> [local count: 1073741824]:
# DEBUG BEGIN_STMT
state_39->txIndex = 0;
# DEBUG BEGIN_STMT
state_39->pu8TxBuffer = pu8TxBuffer_56(D);
# DEBUG BEGIN_STMT
_29 = state_39->u8FrameSize;
if (_29 <= 8)
goto <bb 13>; [50.00%]
else
goto <bb 14>; [50.00%]
<bb 13> [local count: 536870913]:
# DEBUG BEGIN_STMT
state_39->expectedFifoWrites = numberOfFrames_58(D);
goto <bb 17>; [100.00%]
<bb 14> [local count: 536870913]:
# DEBUG BEGIN_STMT
if (_29 <= 16)
goto <bb 15>; [50.00%]
else
goto <bb 16>; [50.00%]
<bb 15> [local count: 268435456]:
# DEBUG BEGIN_STMT
_30 = numberOfFrames_58(D) >> 1;
state_39->expectedFifoWrites = _30;
goto <bb 17>; [100.00%]
<bb 16> [local count: 268435456]:
# DEBUG BEGIN_STMT
_31 = numberOfFrames_58(D) >> 2;
state_39->expectedFifoWrites = _31;
<bb 17> [local count: 1073741824]:
return;
}
Lpspi_Ip_SyncTransmit (const struct Lpspi_Ip_ExternalDeviceType * pExternalDevice, uint8 * pu8TxBuffer, uint8 * pu8RxBuffer, uint16 u16Length, uint32 u32TimeOut)
{
volatile boolean x;
volatile boolean x;
volatile boolean x;
volatile boolean x;
volatile boolean x;
volatile boolean x;
uint8 u8Instance;
uint32 ElapsedTicks;
uint32 CurrentTicks;
uint32 TimeoutTicks;
Lpspi_Ip_StatusType DataProcessStatus;
Lpspi_Ip_StatusType status;
uint8 numberOfReads;
struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
struct Lpspi_Ip_DeviceParamsType * _2;
unsigned char _3;
short unsigned int _4;
short unsigned int _5;
<unnamed type> _6;
struct Lpspi_Ip_DeviceParamsType * _7;
unsigned char _8;
_Bool _9;
long unsigned int _10;
long unsigned int _11;
long unsigned int _12;
long unsigned int _13;
unsigned char _14;
int _15;
int _16;
int _17;
int _18;
unsigned char _19;
unsigned char _20;
long unsigned int _21;
long unsigned int _22;
long unsigned int _23;
long unsigned int _24;
short unsigned int _25;
short unsigned int _26;
_Bool _27;
long unsigned int _28;
long unsigned int _29;
long unsigned int _78;
_Bool x.0_86;
_Bool x.0_87;
_Bool x.0_88;
_Bool x.0_89;
_Bool x.0_90;
_Bool x.0_91;
<bb 2> [local count: 613566]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
# DEBUG DataProcessStatus => 1
# DEBUG BEGIN_STMT
TimeoutTicks_47 = OsIf_MicrosToTicks (u32TimeOut_45(D), 0);
# DEBUG TimeoutTicks => TimeoutTicks_47
# DEBUG BEGIN_STMT
CurrentTicks = 0;
# DEBUG BEGIN_STMT
# DEBUG ElapsedTicks => 0
# DEBUG BEGIN_STMT
# DEBUG u8Instance => 0
# DEBUG BEGIN_STMT
if (pExternalDevice_49(D) == 0B)
goto <bb 3>; [30.00%]
else
goto <bb 5>; [70.00%]
<bb 3> [local count: 184070]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_86 ={v} x;
if (x.0_86 != 0)
goto <bb 47>; [50.00%]
else
goto <bb 48>; [50.00%]
<bb 48> [local count: 92035]:
<bb 4> [local count: 920350133]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 54> [local count: 920350133]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 429496]:
# DEBUG BEGIN_STMT
if (u16Length_50(D) == 0)
goto <bb 6>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 6> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_87 ={v} x;
if (x.0_87 != 0)
goto <bb 47>; [50.00%]
else
goto <bb 49>; [50.00%]
<bb 49> [local count: 107374]:
<bb 7> [local count: 1073741823]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 55> [local count: 1073741824]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 214748]:
# DEBUG BEGIN_STMT
if (u32TimeOut_45(D) == 0)
goto <bb 9>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 9> [local count: 107374]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_88 ={v} x;
if (x.0_88 != 0)
goto <bb 47>; [50.00%]
else
goto <bb 50>; [50.00%]
<bb 50> [local count: 53687]:
<bb 10> [local count: 536870911]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 56> [local count: 536870912]:
goto <bb 10>; [100.00%]
<bb 11> [local count: 107374]:
# DEBUG BEGIN_STMT
u8Instance_51 = pExternalDevice_49(D)->u8Instance;
# DEBUG u8Instance => u8Instance_51
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_51;
base_52 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_52
# DEBUG BEGIN_STMT
state_53 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_53
# DEBUG BEGIN_STMT
if (state_53 == 0B)
goto <bb 12>; [30.00%]
else
goto <bb 14>; [70.00%]
<bb 12> [local count: 32212]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_89 ={v} x;
if (x.0_89 != 0)
goto <bb 47>; [50.00%]
else
goto <bb 51>; [50.00%]
<bb 51> [local count: 16106]:
<bb 13> [local count: 161061273]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 57> [local count: 161061273]:
goto <bb 13>; [100.00%]
<bb 14> [local count: 75162]:
# DEBUG BEGIN_STMT
_2 = pExternalDevice_49(D)->pDeviceParams;
_3 = _2->u8FrameSize;
if (_3 > 16)
goto <bb 15>; [50.00%]
else
goto <bb 18>; [50.00%]
<bb 15> [local count: 37581]:
# DEBUG BEGIN_STMT
_4 = u16Length_50(D) & 3;
if (_4 != 0)
goto <bb 16>; [50.00%]
else
goto <bb 22>; [50.00%]
<bb 16> [local count: 18790]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_90 ={v} x;
if (x.0_90 != 0)
goto <bb 47>; [50.00%]
else
goto <bb 52>; [50.00%]
<bb 52> [local count: 9395]:
<bb 17> [local count: 93952409]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 58> [local count: 93952409]:
goto <bb 17>; [100.00%]
<bb 18> [local count: 37581]:
# DEBUG BEGIN_STMT
if (_3 > 8)
goto <bb 19>; [50.00%]
else
goto <bb 22>; [50.00%]
<bb 19> [local count: 18790]:
# DEBUG BEGIN_STMT
_5 = u16Length_50(D) & 1;
if (_5 != 0)
goto <bb 20>; [50.00%]
else
goto <bb 22>; [50.00%]
<bb 20> [local count: 9395]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_91 ={v} x;
if (x.0_91 != 0)
goto <bb 47>; [50.00%]
else
goto <bb 53>; [50.00%]
<bb 53> [local count: 4698]:
<bb 21> [local count: 46976205]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 59> [local count: 46976205]:
goto <bb 21>; [100.00%]
<bb 22> [local count: 46976]:
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => NULL
# DEBUG BEGIN_STMT
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_08 ();
# DEBUG BEGIN_STMT
_6 = state_53->status;
if (_6 == 2)
goto <bb 23>; [34.00%]
else
goto <bb 24>; [66.00%]
<bb 23> [local count: 15972]:
# DEBUG BEGIN_STMT
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_08 ();
# DEBUG BEGIN_STMT
# DEBUG status => 1
goto <bb 47>; [100.00%]
<bb 24> [local count: 31004]:
# DEBUG BEGIN_STMT
state_53->status = 2;
# DEBUG BEGIN_STMT
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_08 ();
# DEBUG BEGIN_STMT
base_52->DER ={v} 0;
# DEBUG BEGIN_STMT
base_52->IER ={v} 0;
# DEBUG BEGIN_STMT
_7 = pExternalDevice_49(D)->pDeviceParams;
_8 = _7->u8FrameSize;
state_53->u8FrameSize = _8;
# DEBUG BEGIN_STMT
_9 = _7->lsb;
state_53->lsb = _9;
# DEBUG BEGIN_STMT
_10 = _7->u32DefaultData;
state_53->u32DefaultData = _10;
# DEBUG BEGIN_STMT
state_53->pExternalDevice = pExternalDevice_49(D);
# DEBUG BEGIN_STMT
Lpspi_TransmitTxInit (u8Instance_51, pu8TxBuffer_64(D), u16Length_50(D));
# DEBUG BEGIN_STMT
Lpspi_TransmitRxInit (u8Instance_51, pu8RxBuffer_66(D), u16Length_50(D));
# DEBUG BEGIN_STMT
_11 = OsIf_GetCounter (0);
CurrentTicks = _11;
# DEBUG BEGIN_STMT
goto <bb 39>; [100.00%]
<bb 25> [local count: 258823]:
# DEBUG BEGIN_STMT
_12 ={v} base_52->FSR;
_13 = _12 >> 16;
_14 = (unsigned char) _13;
numberOfReads_70 = _14 & 7;
# DEBUG numberOfReads => numberOfReads_70
# DEBUG BEGIN_STMT
if (numberOfReads_70 > 4)
goto <bb 27>; [50.00%]
else
goto <bb 26>; [50.00%]
<bb 26> [local count: 129411]:
# DEBUG numberOfReads => numberOfReads_70
# DEBUG BEGIN_STMT
if (numberOfReads_70 != 0)
goto <bb 27>; [50.00%]
else
goto <bb 32>; [50.00%]
<bb 27> [local count: 194117]:
# numberOfReads_84 = PHI <numberOfReads_70(26), 4(25)>
# DEBUG numberOfReads => NULL
# DEBUG BEGIN_STMT
_15 = (int) numberOfReads_84;
_16 = (int) _26;
_17 = (int) _25;
_18 = _16 - _17;
if (_15 > _18)
goto <bb 28>; [50.00%]
else
goto <bb 29>; [50.00%]
<bb 28> [local count: 97059]:
# DEBUG BEGIN_STMT
_19 = (unsigned char) _26;
_20 = (unsigned char) _25;
numberOfReads_71 = _19 - _20;
# DEBUG numberOfReads => numberOfReads_71
<bb 29> [local count: 194117]:
# numberOfReads_30 = PHI <numberOfReads_84(27), numberOfReads_71(28)>
# DEBUG numberOfReads => numberOfReads_30
# DEBUG BEGIN_STMT
if (numberOfReads_30 != 0)
goto <bb 30>; [50.00%]
else
goto <bb 31>; [50.00%]
<bb 30> [local count: 97059]:
# DEBUG BEGIN_STMT
# DEBUG ElapsedTicks => 0
<bb 31> [local count: 194117]:
# ElapsedTicks_34 = PHI <ElapsedTicks_37(29), 0(30)>
# DEBUG ElapsedTicks => ElapsedTicks_34
# DEBUG BEGIN_STMT
Lpspi_Ip_ReadData (u8Instance_51, numberOfReads_30);
<bb 32> [local count: 258823]:
# ElapsedTicks_35 = PHI <ElapsedTicks_37(26), ElapsedTicks_34(31)>
# DEBUG ElapsedTicks => ElapsedTicks_35
# DEBUG BEGIN_STMT
DataProcessStatus_74 = Lpspi_Ip_PushDataProcess (u8Instance_51);
# DEBUG DataProcessStatus => DataProcessStatus_74
# DEBUG BEGIN_STMT
if (DataProcessStatus_74 == 0)
goto <bb 33>; [50.00%]
else
goto <bb 34>; [50.00%]
<bb 33> [local count: 129411]:
# DEBUG BEGIN_STMT
# DEBUG ElapsedTicks => 0
<bb 34> [local count: 258823]:
# ElapsedTicks_36 = PHI <ElapsedTicks_35(32), 0(33)>
# DEBUG ElapsedTicks => ElapsedTicks_36
# DEBUG BEGIN_STMT
_21 ={v} base_52->SR;
_22 = _21 & 6144;
if (_22 != 0)
goto <bb 35>; [50.00%]
else
goto <bb 36>; [50.00%]
<bb 35> [local count: 129411]:
# DEBUG BEGIN_STMT
_23 ={v} base_52->SR;
_24 = _23 & 6144;
base_52->SR ={v} _24;
# DEBUG BEGIN_STMT
# DEBUG status => 2
<bb 36> [local count: 258823]:
# status_31 = PHI <0(34), 2(35)>
# DEBUG status => status_31
# DEBUG BEGIN_STMT
_78 = OsIf_GetElapsed (&CurrentTicks, 0);
ElapsedTicks_79 = ElapsedTicks_36 + _78;
# DEBUG ElapsedTicks => ElapsedTicks_79
# DEBUG BEGIN_STMT
if (TimeoutTicks_47 <= ElapsedTicks_79)
goto <bb 37>; [50.00%]
else
goto <bb 38>; [50.00%]
<bb 37> [local count: 129411]:
# DEBUG BEGIN_STMT
# DEBUG status => 3
<bb 38> [local count: 258823]:
# status_43 = PHI <status_31(36), 3(37)>
# ElapsedTicks_54 = PHI <ElapsedTicks_79(36), ElapsedTicks_79(37)>
<bb 39> [local count: 289827]:
# status_32 = PHI <status_43(38), 0(24)>
# ElapsedTicks_37 = PHI <ElapsedTicks_54(38), 0(24)>
# DEBUG ElapsedTicks => ElapsedTicks_37
# DEBUG status => status_32
# DEBUG BEGIN_STMT
_25 = state_53->rxIndex;
_26 = state_53->expectedFifoReads;
if (_25 != _26)
goto <bb 40>; [94.50%]
else
goto <bb 41>; [5.50%]
<bb 40> [local count: 273887]:
if (status_32 == 0)
goto <bb 25>; [94.50%]
else
goto <bb 41>; [5.50%]
<bb 41> [local count: 31004]:
# status_75 = PHI <status_32(39), status_32(40)>
# DEBUG BEGIN_STMT
_27 = state_53->bKeepCs;
if (_27 != 0)
goto <bb 42>; [50.00%]
else
goto <bb 43>; [50.00%]
<bb 42> [local count: 15502]:
if (status_75 != 0)
goto <bb 43>; [50.00%]
else
goto <bb 44>; [50.00%]
<bb 43> [local count: 23253]:
# DEBUG BEGIN_STMT
_28 ={v} base_52->CR;
_29 = _28 & 4294967294;
base_52->CR ={v} _29;
<bb 44> [local count: 31004]:
# DEBUG BEGIN_STMT
if (status_75 != 0)
goto <bb 45>; [50.00%]
else
goto <bb 46>; [50.00%]
<bb 45> [local count: 15502]:
# DEBUG BEGIN_STMT
state_53->status = 3;
goto <bb 47>; [100.00%]
<bb 46> [local count: 15502]:
# DEBUG BEGIN_STMT
state_53->status = 1;
<bb 47> [local count: 330271]:
# status_33 = PHI <1(3), 1(6), 1(9), 1(16), 1(23), status_75(45), 0(46), 1(12), 1(20)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_33
# DEBUG BEGIN_STMT
CurrentTicks ={v} {CLOBBER};
return status_33;
}
Lpspi_Ip_DeInit (uint8 u8Instance)
{
volatile boolean x;
volatile boolean x;
Lpspi_Ip_StatusType status;
const struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
<unnamed type> _2;
long unsigned int _3;
long unsigned int _4;
_Bool x.0_14;
_Bool x.0_15;
<bb 2> [local count: 429496]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
if (u8Instance_7(D) > 5)
goto <bb 3>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 3> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_14 ={v} x;
if (x.0_14 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 11> [local count: 107374]:
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 13> [local count: 1073741824]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 214748]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_7(D);
base_9 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_9
# DEBUG BEGIN_STMT
state_10 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_10
# DEBUG BEGIN_STMT
if (state_10 == 0B)
goto <bb 6>; [30.00%]
else
goto <bb 8>; [70.00%]
<bb 6> [local count: 64424]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_15 ={v} x;
if (x.0_15 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 12> [local count: 32212]:
<bb 7> [local count: 322122547]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 14> [local count: 322122547]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 150324]:
# DEBUG BEGIN_STMT
_2 = state_10->status;
if (_2 == 2)
goto <bb 10>; [34.00%]
else
goto <bb 9>; [66.00%]
<bb 9> [local count: 99214]:
# DEBUG BEGIN_STMT
_3 ={v} base_9->CR;
_4 = _3 | 2;
base_9->CR ={v} _4;
# DEBUG BEGIN_STMT
base_9->CR ={v} 0;
# DEBUG BEGIN_STMT
Lpspi_Ip_StateStructureArray[_1] = 0B;
<bb 10> [local count: 289910]:
# status_5 = PHI <1(3), 1(6), 1(8), 0(9)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_5
# DEBUG BEGIN_STMT
return status_5;
}
Lpspi_Ip_Init (const struct Lpspi_Ip_ConfigType * pPhyUnitConfigPtr)
{
volatile boolean x;
volatile boolean x;
uint8 u8Instance;
Lpspi_Ip_StatusType status;
struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
struct Lpspi_Ip_StateStructureType * _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
_Bool _6;
<unnamed type> _7;
_Bool x.0_24;
_Bool x.0_25;
<bb 2> [local count: 371543]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 0
# DEBUG BEGIN_STMT
# DEBUG u8Instance => 0
# DEBUG BEGIN_STMT
if (pPhyUnitConfigPtr_10(D) == 0B)
goto <bb 3>; [30.00%]
else
goto <bb 5>; [70.00%]
<bb 3> [local count: 111463]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_24 ={v} x;
if (x.0_24 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 10> [local count: 55731]:
<bb 4> [local count: 557315087]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 12> [local count: 557315087]:
goto <bb 4>; [100.00%]
<bb 5> [local count: 260080]:
# DEBUG BEGIN_STMT
u8Instance_12 = pPhyUnitConfigPtr_10(D)->u8Instance;
# DEBUG u8Instance => u8Instance_12
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_12;
state_13 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_13
# DEBUG BEGIN_STMT
base_14 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_14
# DEBUG BEGIN_STMT
if (state_13 != 0B)
goto <bb 6>; [82.57%]
else
goto <bb 8>; [17.43%]
<bb 6> [local count: 214748]:
# DEBUG BEGIN_STMT
x ={v} 0;
# DEBUG x => x
# DEBUG INLINE_ENTRY DevAssert
# DEBUG BEGIN_STMT
x.0_25 ={v} x;
if (x.0_25 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 11> [local count: 107374]:
<bb 7> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
<bb 13> [local count: 1073741824]:
goto <bb 7>; [100.00%]
<bb 8> [local count: 45332]:
# DEBUG BEGIN_STMT
_2 = pPhyUnitConfigPtr_10(D)->stateStructure;
Lpspi_Ip_StateStructureArray[_1] = _2;
# DEBUG BEGIN_STMT
# DEBUG state => _2
# DEBUG BEGIN_STMT
_3 = pPhyUnitConfigPtr_10(D)->cr;
_4 = _3 | 8;
base_14->CR ={v} _4;
# DEBUG BEGIN_STMT
_5 = pPhyUnitConfigPtr_10(D)->cfgr1;
base_14->CFGR1 ={v} _5;
# DEBUG BEGIN_STMT
base_14->FCR ={v} 2;
# DEBUG BEGIN_STMT
_6 = pPhyUnitConfigPtr_10(D)->bSlaveMode;
_2->bSlaveMode = _6;
# DEBUG BEGIN_STMT
_2->bKeepCs = 0;
# DEBUG BEGIN_STMT
_2->bFirstCmd = 1;
# DEBUG BEGIN_STMT
_2->status = 1;
# DEBUG BEGIN_STMT
_7 = pPhyUnitConfigPtr_10(D)->transferMode;
Lpspi_Ip_UpdateTransferMode (u8Instance_12, _7);
<bb 9> [local count: 208437]:
# status_8 = PHI <1(3), 1(6), 0(8)>
# DEBUG x => NULL
# DEBUG x => NULL
# DEBUG status => status_8
# DEBUG BEGIN_STMT
return status_8;
}
Lpspi_Ip_TransferProcess (uint8 u8Instance)
{
boolean bErrorFlag;
uint8 numberOfReads;
uint32 srStatusRegister;
struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
<unnamed type> _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
long unsigned int _6;
unsigned char _7;
int _8;
short unsigned int _9;
int _10;
short unsigned int _11;
int _12;
int _13;
unsigned char _14;
unsigned char _15;
short unsigned int _16;
short unsigned int _17;
_Bool _18;
long unsigned int _19;
long unsigned int _20;
void (*<T2ef>) (uint8, Lpspi_Ip_EventType) _21;
<bb 2> [local count: 1073741823]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_29(D);
base_31 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_31
# DEBUG BEGIN_STMT
state_32 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_32
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG bErrorFlag => 0
# DEBUG BEGIN_STMT
_2 = state_32->status;
if (_2 == 2)
goto <bb 3>; [34.00%]
else
goto <bb 22>; [66.00%]
<bb 3> [local count: 365072220]:
# DEBUG BEGIN_STMT
srStatusRegister_33 ={v} base_31->SR;
# DEBUG srStatusRegister => srStatusRegister_33
# DEBUG BEGIN_STMT
_3 ={v} base_31->SR;
base_31->SR ={v} _3;
# DEBUG BEGIN_STMT
_4 = srStatusRegister_33 & 6144;
if (_4 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 4> [local count: 182536110]:
# DEBUG BEGIN_STMT
_5 ={v} base_31->FSR;
_6 = _5 >> 16;
_7 = (unsigned char) _6;
numberOfReads_35 = _7 & 7;
# DEBUG numberOfReads => numberOfReads_35
# DEBUG BEGIN_STMT
if (numberOfReads_35 > 4)
goto <bb 6>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 5> [local count: 91268055]:
# DEBUG numberOfReads => numberOfReads_35
# DEBUG BEGIN_STMT
if (numberOfReads_35 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 6> [local count: 136902082]:
# numberOfReads_36 = PHI <numberOfReads_35(5), 4(4)>
# DEBUG numberOfReads => NULL
# DEBUG BEGIN_STMT
_8 = (int) numberOfReads_36;
_9 = state_32->expectedFifoReads;
_10 = (int) _9;
_11 = state_32->rxIndex;
_12 = (int) _11;
_13 = _10 - _12;
if (_8 > _13)
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 7> [local count: 68451041]:
# DEBUG BEGIN_STMT
_14 = (unsigned char) _9;
_15 = (unsigned char) _11;
numberOfReads_37 = _14 - _15;
# DEBUG numberOfReads => numberOfReads_37
<bb 8> [local count: 136902082]:
# numberOfReads_22 = PHI <numberOfReads_36(6), numberOfReads_37(7)>
# DEBUG numberOfReads => numberOfReads_22
# DEBUG BEGIN_STMT
Lpspi_Ip_ReadData (u8Instance_29(D), numberOfReads_22);
<bb 9> [local count: 182536110]:
# DEBUG BEGIN_STMT
Lpspi_Ip_PushDataProcess (u8Instance_29(D));
<bb 10> [local count: 365072220]:
# bErrorFlag_23 = PHI <1(3), 0(9)>
# DEBUG bErrorFlag => bErrorFlag_23
# DEBUG BEGIN_STMT
_16 = state_32->rxIndex;
_17 = state_32->expectedFifoReads;
if (_16 == _17)
goto <bb 12>; [34.00%]
else
goto <bb 11>; [66.00%]
<bb 11> [local count: 240947665]:
if (bErrorFlag_23 != 0)
goto <bb 12>; [50.00%]
else
goto <bb 22>; [50.00%]
<bb 12> [local count: 244598387]:
# DEBUG BEGIN_STMT
_18 = state_32->bKeepCs;
if (_18 != 0)
goto <bb 13>; [67.00%]
else
goto <bb 14>; [33.00%]
<bb 13> [local count: 163880919]:
if (bErrorFlag_23 != 0)
goto <bb 14>; [50.00%]
else
goto <bb 15>; [50.00%]
<bb 14> [local count: 162657928]:
# DEBUG BEGIN_STMT
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_12 ();
# DEBUG BEGIN_STMT
_19 ={v} base_31->CR;
_20 = _19 & 4294967294;
base_31->CR ={v} _20;
# DEBUG BEGIN_STMT
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_12 ();
<bb 15> [local count: 244598387]:
# DEBUG BEGIN_STMT
base_31->IER ={v} 0;
# DEBUG BEGIN_STMT
if (bErrorFlag_23 != 0)
goto <bb 16>; [50.00%]
else
goto <bb 17>; [50.00%]
<bb 16> [local count: 122299194]:
# DEBUG BEGIN_STMT
state_32->status = 3;
goto <bb 18>; [100.00%]
<bb 17> [local count: 122299194]:
# DEBUG BEGIN_STMT
state_32->status = 1;
<bb 18> [local count: 244598387]:
# DEBUG BEGIN_STMT
_21 = state_32->callback;
if (_21 != 0B)
goto <bb 19>; [70.00%]
else
goto <bb 22>; [30.00%]
<bb 19> [local count: 171218871]:
# DEBUG BEGIN_STMT
if (bErrorFlag_23 != 0)
goto <bb 20>; [50.00%]
else
goto <bb 21>; [50.00%]
<bb 20> [local count: 85609436]:
# DEBUG BEGIN_STMT
_21 (u8Instance_29(D), 1);
goto <bb 22>; [100.00%]
<bb 21> [local count: 85609436]:
# DEBUG BEGIN_STMT
_21 (u8Instance_29(D), 0);
<bb 22> [local count: 1073741824]:
return;
}
Lpspi_Ip_PushDataProcess (uint8 u8Instance)
{
Lpspi_Ip_StatusType status;
uint8 numberOfReads;
uint8 numberOfWrites;
const struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
long unsigned int _2;
unsigned char _3;
long unsigned int _4;
long unsigned int _5;
unsigned char _6;
int _7;
int _8;
int _9;
unsigned char _10;
int _11;
short unsigned int _12;
int _13;
short unsigned int _14;
int _15;
int _16;
unsigned char _17;
unsigned char _18;
long unsigned int _19;
long unsigned int _20;
_Bool _21;
long unsigned int _22;
long unsigned int _23;
long unsigned int _24;
long unsigned int _25;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_31(D);
base_33 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_33
# DEBUG BEGIN_STMT
state_34 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_34
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG status => 1
# DEBUG BEGIN_STMT
_2 ={v} base_33->FSR;
_3 = (unsigned char) _2;
numberOfWrites_35 = _3 & 7;
# DEBUG numberOfWrites => numberOfWrites_35
# DEBUG BEGIN_STMT
_4 ={v} base_33->FSR;
_5 = _4 >> 16;
_6 = (unsigned char) _5;
numberOfReads_36 = _6 & 7;
# DEBUG numberOfReads => numberOfReads_36
# DEBUG BEGIN_STMT
_7 = (int) numberOfWrites_35;
_8 = (int) numberOfReads_36;
_9 = _7 + _8;
if (_9 <= 3)
goto <bb 3>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
_10 = numberOfWrites_35 + numberOfReads_36;
numberOfWrites_37 = 3 - _10;
# DEBUG numberOfWrites => numberOfWrites_37
# DEBUG BEGIN_STMT
if (numberOfWrites_37 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 11>; [50.00%]
<bb 4> [local count: 268435456]:
# DEBUG BEGIN_STMT
_11 = (int) numberOfWrites_37;
_12 = state_34->expectedFifoWrites;
_13 = (int) _12;
_14 = state_34->txIndex;
_15 = (int) _14;
_16 = _13 - _15;
if (_11 > _16)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 134217728]:
# DEBUG BEGIN_STMT
_17 = (unsigned char) _12;
_18 = (unsigned char) _14;
numberOfWrites_38 = _17 - _18;
# DEBUG numberOfWrites => numberOfWrites_38
<bb 6> [local count: 268435456]:
# numberOfWrites_26 = PHI <numberOfWrites_37(4), numberOfWrites_38(5)>
# DEBUG numberOfWrites => numberOfWrites_26
# DEBUG BEGIN_STMT
if (_12 == _14)
goto <bb 7>; [34.00%]
else
goto <bb 10>; [66.00%]
<bb 7> [local count: 91268055]:
# DEBUG BEGIN_STMT
_19 ={v} base_33->IER;
_20 = _19 & 4294967294;
base_33->IER ={v} _20;
# DEBUG BEGIN_STMT
_21 = state_34->bKeepCs;
if (_21 != 0)
goto <bb 10>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 8> [local count: 45634028]:
_22 ={v} base_33->TCR;
_23 = _22 & 2097152;
if (_23 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 9> [local count: 22817014]:
# DEBUG BEGIN_STMT
_24 ={v} base_33->TCR;
_25 = _24 & 4291821567;
base_33->TCR ={v} _25;
# DEBUG BEGIN_STMT
# DEBUG status => 0
<bb 10> [local count: 268435456]:
# status_27 = PHI <1(8), 0(6), 1(7), 0(9)>
# DEBUG status => status_27
# DEBUG BEGIN_STMT
Lpspi_Ip_PushData (u8Instance_31(D), numberOfWrites_26);
<bb 11> [local count: 1073741824]:
# status_28 = PHI <1(3), status_27(10), 1(2)>
# DEBUG numberOfWrites => NULL
# DEBUG status => status_28
# DEBUG BEGIN_STMT
return status_28;
}
Lpspi_Ip_PushData (uint8 u8Instance, uint8 numberOfWrites)
{
uint8 i;
uint32 data;
struct Lpspi_Ip_StateStructureType * state;
struct LPSPI_Type * base;
int _1;
uint8 * _2;
unsigned char _3;
short unsigned int _4;
sizetype _5;
uint8 * _6;
unsigned char _7;
short unsigned int _8;
unsigned int _9;
unsigned int _10;
uint16 * _11;
short unsigned int _12;
short unsigned int _13;
unsigned int _14;
unsigned int _15;
uint32 * _16;
short unsigned int _17;
short unsigned int _18;
<bb 2> [local count: 118111600]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_22(D);
base_24 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_24
# DEBUG BEGIN_STMT
state_25 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_25
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG i => 0
goto <bb 11>; [100.00%]
<bb 3> [local count: 955630223]:
# DEBUG BEGIN_STMT
_2 = state_25->pu8TxBuffer;
if (_2 != 0B)
goto <bb 4>; [70.00%]
else
goto <bb 9>; [30.00%]
<bb 4> [local count: 668941156]:
# DEBUG BEGIN_STMT
_3 = state_25->u8FrameSize;
if (_3 <= 8)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 334470578]:
# DEBUG BEGIN_STMT
_4 = state_25->txIndex;
_5 = (sizetype) _4;
_6 = _2 + _5;
_7 = *_6;
data_30 = (uint32) _7;
# DEBUG data => data_30
goto <bb 10>; [100.00%]
<bb 6> [local count: 334470578]:
# DEBUG BEGIN_STMT
if (_3 <= 16)
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 7> [local count: 167235289]:
# DEBUG BEGIN_STMT
_8 = state_25->txIndex;
_9 = (unsigned int) _8;
_10 = _9 * 2;
_11 = _2 + _10;
_12 = *_11;
data_29 = (uint32) _12;
# DEBUG data => data_29
goto <bb 10>; [100.00%]
<bb 8> [local count: 167235289]:
# DEBUG BEGIN_STMT
_13 = state_25->txIndex;
_14 = (unsigned int) _13;
_15 = _14 * 4;
_16 = _2 + _15;
data_28 = *_16;
# DEBUG data => data_28
goto <bb 10>; [100.00%]
<bb 9> [local count: 286689066]:
# DEBUG BEGIN_STMT
data_27 = state_25->u32DefaultData;
# DEBUG data => data_27
<bb 10> [local count: 955630223]:
# data_19 = PHI <data_29(7), data_27(9), data_30(5), data_28(8)>
# DEBUG data => data_19
# DEBUG BEGIN_STMT
base_24->TDR ={v} data_19;
# DEBUG BEGIN_STMT
_17 = state_25->txIndex;
_18 = _17 + 1;
state_25->txIndex = _18;
# DEBUG BEGIN_STMT
i_33 = i_20 + 1;
# DEBUG i => i_33
<bb 11> [local count: 1073741824]:
# i_20 = PHI <0(2), i_33(10)>
# DEBUG i => i_20
# DEBUG BEGIN_STMT
if (i_20 < numberOfWrites_26(D))
goto <bb 3>; [89.00%]
else
goto <bb 12>; [11.00%]
<bb 12> [local count: 118111601]:
return;
}
Lpspi_Ip_ReadData (uint8 u8Instance, uint8 numberOfReads)
{
uint8 i;
uint32 data;
struct Lpspi_Ip_StateStructureType * state;
const struct LPSPI_Type * base;
int _1;
uint8 * _2;
unsigned char _3;
short unsigned int _4;
sizetype _5;
uint8 * _6;
unsigned char _7;
short unsigned int _8;
unsigned int _9;
unsigned int _10;
uint16 * _11;
short unsigned int _12;
short unsigned int _13;
unsigned int _14;
unsigned int _15;
uint32 * _16;
short unsigned int _17;
short unsigned int _18;
<bb 2> [local count: 118111600]:
# DEBUG BEGIN_STMT
_1 = (int) u8Instance_22(D);
base_24 = Lpspi_Ip_Bases[_1];
# DEBUG base => base_24
# DEBUG BEGIN_STMT
state_25 = Lpspi_Ip_StateStructureArray[_1];
# DEBUG state => state_25
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG i => 0
goto <bb 10>; [100.00%]
<bb 3> [local count: 955630223]:
# DEBUG BEGIN_STMT
data_27 ={v} base_24->RDR;
# DEBUG data => data_27
# DEBUG BEGIN_STMT
_2 = state_25->pu8RxBuffer;
if (_2 != 0B)
goto <bb 4>; [70.00%]
else
goto <bb 9>; [30.00%]
<bb 4> [local count: 668941156]:
# DEBUG BEGIN_STMT
_3 = state_25->u8FrameSize;
if (_3 <= 8)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 334470578]:
# DEBUG BEGIN_STMT
_4 = state_25->rxIndex;
_5 = (sizetype) _4;
_6 = _2 + _5;
_7 = (unsigned char) data_27;
*_6 = _7;
goto <bb 9>; [100.00%]
<bb 6> [local count: 334470578]:
# DEBUG BEGIN_STMT
if (_3 <= 16)
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 7> [local count: 167235289]:
# DEBUG BEGIN_STMT
_8 = state_25->rxIndex;
_9 = (unsigned int) _8;
_10 = _9 * 2;
_11 = _2 + _10;
_12 = (short unsigned int) data_27;
*_11 = _12;
goto <bb 9>; [100.00%]
<bb 8> [local count: 167235289]:
# DEBUG BEGIN_STMT
_13 = state_25->rxIndex;
_14 = (unsigned int) _13;
_15 = _14 * 4;
_16 = _2 + _15;
*_16 = data_27;
<bb 9> [local count: 955630223]:
# DEBUG BEGIN_STMT
_17 = state_25->rxIndex;
_18 = _17 + 1;
state_25->rxIndex = _18;
# DEBUG BEGIN_STMT
i_32 = i_19 + 1;
# DEBUG i => i_32
<bb 10> [local count: 1073741824]:
# i_19 = PHI <0(2), i_32(9)>
# DEBUG i => i_19
# DEBUG BEGIN_STMT
if (i_19 < numberOfReads_26(D))
goto <bb 3>; [89.00%]
else
goto <bb 11>; [11.00%]
<bb 11> [local count: 118111601]:
return;
}