mirror of
https://github.com/Dev-KATECH/ADM.git
synced 2026-05-17 01:43:59 +09:00
2729 lines
59 KiB
Plaintext
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;
|
|
|
|
}
|
|
|
|
|