mirror of
https://github.com/Dev-KATECH/ADM.git
synced 2026-05-17 09:53:59 +09:00
- 코드 구조 변경(레이어 삭제/추가) : IG_Layer 삭제 : Vehicle_System_Mode_Layer 삭제 : System_Layer 추가 - 코드 구조 변경(통합) : System_Check 내 함수 Drive_Mode로 이동 : System_Layer로 Drive_Mode, Ignition 이동 - DBC 업데이트 : CAN_DBC_ch1_v41.dbc : RC_VCU_Signal2(0x41) 내 RC_ACU_Drive_Mode 신호 추가
3042 lines
74 KiB
Plaintext
3042 lines
74 KiB
Plaintext
|
|
Reclaiming functions:
|
|
Reclaiming variables:
|
|
Clearing address taken flags:
|
|
Symbol table:
|
|
|
|
Lpspi_Ip_UpdateTransferMode.part.0/59 (Lpspi_Ip_UpdateTransferMode.part.0) @06c828c0
|
|
Type: function definition analyzed
|
|
Visibility: artificial
|
|
References:
|
|
Referring:
|
|
Availability: local
|
|
Function flags: count:214748 (estimated locally) first_run:1 body local split_part optimize_size
|
|
Called by: Lpspi_Ip_UpdateTransferMode/18 (64424 (estimated locally),0.15 per call)
|
|
Calls:
|
|
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_10/34 (SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_10) @06c5ba80
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_Cancel/19 (114826 (estimated locally),0.27 per call)
|
|
Calls:
|
|
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_10/33 (SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_10) @06c5b9a0
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_Cancel/19 (114826 (estimated locally),0.27 per call)
|
|
Calls:
|
|
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_12/32 (SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_12) @06c5b460
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_TransferProcess/7 (162657928 (estimated locally),0.15 per call)
|
|
Calls:
|
|
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_12/31 (SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_12) @06c5b380
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_TransferProcess/7 (162657928 (estimated locally),0.15 per call)
|
|
Calls:
|
|
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_09/30 (SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_09) @06c5b000
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_AsyncTransmit/13 (62008 (estimated locally),0.10 per call) Lpspi_Ip_AsyncTransmit/13 (31944 (estimated locally),0.05 per call)
|
|
Calls:
|
|
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_09/29 (SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_09) @06b641c0
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_AsyncTransmit/13 (93952 (estimated locally),0.15 per call)
|
|
Calls:
|
|
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_11/28 (SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_11) @06b649a0
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_TransmitTxInit/11 (354334802 (estimated locally),0.33 per call)
|
|
Calls:
|
|
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_11/27 (SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_11) @06b648c0
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_TransmitTxInit/11 (354334802 (estimated locally),0.33 per call)
|
|
Calls:
|
|
OsIf_GetElapsed/26 (OsIf_GetElapsed) @06b64700
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_SyncTransmit/10 (258823 (estimated locally),0.42 per call)
|
|
Calls:
|
|
OsIf_GetCounter/25 (OsIf_GetCounter) @06b64620
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_SyncTransmit/10 (31004 (estimated locally),0.05 per call)
|
|
Calls:
|
|
SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_08/24 (SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_08) @06b64540
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_SyncTransmit/10 (31004 (estimated locally),0.05 per call) Lpspi_Ip_SyncTransmit/10 (15972 (estimated locally),0.03 per call)
|
|
Calls:
|
|
SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_08/23 (SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_08) @06b64460
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_SyncTransmit/10 (46976 (estimated locally),0.08 per call)
|
|
Calls:
|
|
OsIf_MicrosToTicks/22 (OsIf_MicrosToTicks) @06b64380
|
|
Type: function
|
|
Visibility: external public
|
|
References:
|
|
Referring:
|
|
Availability: not_available
|
|
Function flags: optimize_size
|
|
Called by: Lpspi_Ip_SyncTransmit/10 (613566 (estimated locally),1.00 per call)
|
|
Calls:
|
|
Lpspi_Ip_GetStatus/21 (Lpspi_Ip_GetStatus) @06b560e0
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:429496 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls:
|
|
Lpspi_Ip_IrqHandler/20 (Lpspi_Ip_IrqHandler) @06b56d20
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:1073741824 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls: Lpspi_Ip_TransferProcess/7 (248034361 (estimated locally),0.23 per call)
|
|
Lpspi_Ip_Cancel/19 (Lpspi_Ip_Cancel) @06b56a80
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:429496 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls: SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_10/34 (114826 (estimated locally),0.27 per call) SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_10/33 (114826 (estimated locally),0.27 per call)
|
|
Lpspi_Ip_UpdateTransferMode/18 (Lpspi_Ip_UpdateTransferMode) @06b567e0
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:429496 (estimated locally) body optimize_size
|
|
Called by: Lpspi_Ip_Init/8 (45332 (estimated locally),0.12 per call)
|
|
Calls: Lpspi_Ip_UpdateTransferMode.part.0/59 (64424 (estimated locally),0.15 per call)
|
|
Lpspi_Ip_UpdateDefaultTransmitData/17 (Lpspi_Ip_UpdateDefaultTransmitData) @06b56540
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:715827 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls:
|
|
Lpspi_Ip_UpdateLsb/16 (Lpspi_Ip_UpdateLsb) @06b562a0
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:715827 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls:
|
|
Lpspi_Ip_UpdateFrameSize/15 (Lpspi_Ip_UpdateFrameSize) @06b56000
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:613566 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls:
|
|
Lpspi_Ip_ManageBuffers/14 (Lpspi_Ip_ManageBuffers) @06b209a0
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:429496 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls: Lpspi_Ip_TransferProcess/7 (24803 (estimated locally),0.06 per call)
|
|
Lpspi_Ip_AsyncTransmit/13 (Lpspi_Ip_AsyncTransmit) @06b20380
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:613566 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls: Lpspi_TransmitRxInit/12 (62008 (estimated locally),0.10 per call) Lpspi_TransmitTxInit/11 (62008 (estimated locally),0.10 per call) SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_09/30 (62008 (estimated locally),0.10 per call) SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_09/30 (31944 (estimated locally),0.05 per call) SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_09/29 (93952 (estimated locally),0.15 per call)
|
|
Lpspi_TransmitRxInit/12 (Lpspi_TransmitRxInit) @06b20ee0
|
|
Type: function definition analyzed
|
|
Visibility: prevailing_def_ironly
|
|
References: Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: local
|
|
Function flags: count:1073741824 (estimated locally) body local optimize_size
|
|
Called by: Lpspi_Ip_AsyncTransmit/13 (62008 (estimated locally),0.10 per call) Lpspi_Ip_SyncTransmit/10 (31004 (estimated locally),0.05 per call)
|
|
Calls:
|
|
Lpspi_TransmitTxInit/11 (Lpspi_TransmitTxInit) @06b20c40
|
|
Type: function definition analyzed
|
|
Visibility: prevailing_def_ironly
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: local
|
|
Function flags: count:1073741824 (estimated locally) body local optimize_size
|
|
Called by: Lpspi_Ip_AsyncTransmit/13 (62008 (estimated locally),0.10 per call) Lpspi_Ip_SyncTransmit/10 (31004 (estimated locally),0.05 per call)
|
|
Calls: SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_11/28 (354334802 (estimated locally),0.33 per call) SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_11/27 (354334802 (estimated locally),0.33 per call)
|
|
Lpspi_Ip_SyncTransmit/10 (Lpspi_Ip_SyncTransmit) @06b208c0
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:613566 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls: OsIf_GetElapsed/26 (258823 (estimated locally),0.42 per call) Lpspi_Ip_PushDataProcess/6 (258823 (estimated locally),0.42 per call) Lpspi_Ip_ReadData/4 (194117 (estimated locally),0.32 per call) OsIf_GetCounter/25 (31004 (estimated locally),0.05 per call) Lpspi_TransmitRxInit/12 (31004 (estimated locally),0.05 per call) Lpspi_TransmitTxInit/11 (31004 (estimated locally),0.05 per call) SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_08/24 (31004 (estimated locally),0.05 per call) SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_08/24 (15972 (estimated locally),0.03 per call) SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_08/23 (46976 (estimated locally),0.08 per call) OsIf_MicrosToTicks/22 (613566 (estimated locally),1.00 per call)
|
|
Lpspi_Ip_DeInit/9 (Lpspi_Ip_DeInit) @06b20620
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)Lpspi_Ip_StateStructureArray/2 (write)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:429496 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls:
|
|
Lpspi_Ip_Init/8 (Lpspi_Ip_Init) @06b202a0
|
|
Type: function definition analyzed
|
|
Visibility: externally_visible public
|
|
References: Lpspi_Ip_StateStructureArray/2 (read)Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (write)
|
|
Referring:
|
|
Availability: available
|
|
Function flags: count:371543 (estimated locally) body optimize_size
|
|
Called by:
|
|
Calls: Lpspi_Ip_UpdateTransferMode/18 (45332 (estimated locally),0.12 per call)
|
|
Lpspi_Ip_TransferProcess/7 (Lpspi_Ip_TransferProcess) @06b20000
|
|
Type: function definition analyzed
|
|
Visibility: prevailing_def_ironly
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: local
|
|
Function flags: count:1073741823 (estimated locally) body local optimize_size
|
|
Called by: Lpspi_Ip_IrqHandler/20 (248034361 (estimated locally),0.23 per call) Lpspi_Ip_ManageBuffers/14 (24803 (estimated locally),0.06 per call)
|
|
Calls: SchM_Exit_Spi_SPI_EXCLUSIVE_AREA_12/32 (162657928 (estimated locally),0.15 per call) SchM_Enter_Spi_SPI_EXCLUSIVE_AREA_12/31 (162657928 (estimated locally),0.15 per call) Lpspi_Ip_PushDataProcess/6 (182536110 (estimated locally),0.17 per call) Lpspi_Ip_ReadData/4 (136902082 (estimated locally),0.13 per call)
|
|
Indirect call(85609436 (estimated locally),0.08 per call)
|
|
Indirect call(85609436 (estimated locally),0.08 per call)
|
|
Lpspi_Ip_PushDataProcess/6 (Lpspi_Ip_PushDataProcess) @06aaac40
|
|
Type: function definition analyzed
|
|
Visibility: prevailing_def_ironly
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: local
|
|
Function flags: count:1073741824 (estimated locally) body local optimize_size
|
|
Called by: Lpspi_Ip_SyncTransmit/10 (258823 (estimated locally),0.42 per call) Lpspi_Ip_TransferProcess/7 (182536110 (estimated locally),0.17 per call)
|
|
Calls: Lpspi_Ip_PushData/5 (268435456 (estimated locally),0.25 per call)
|
|
Lpspi_Ip_PushData/5 (Lpspi_Ip_PushData) @06aaae00
|
|
Type: function definition analyzed
|
|
Visibility: prevailing_def_ironly
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: local
|
|
Function flags: count:118111600 (estimated locally) body local optimize_size
|
|
Called by: Lpspi_Ip_PushDataProcess/6 (268435456 (estimated locally),0.25 per call)
|
|
Calls:
|
|
Lpspi_Ip_ReadData/4 (Lpspi_Ip_ReadData) @06aaab60
|
|
Type: function definition analyzed
|
|
Visibility: prevailing_def_ironly
|
|
References: Lpspi_Ip_Bases/3 (read)Lpspi_Ip_StateStructureArray/2 (read)
|
|
Referring:
|
|
Availability: local
|
|
Function flags: count:118111600 (estimated locally) body local optimize_size
|
|
Called by: Lpspi_Ip_SyncTransmit/10 (194117 (estimated locally),0.32 per call) Lpspi_Ip_TransferProcess/7 (136902082 (estimated locally),0.13 per call)
|
|
Calls:
|
|
Lpspi_Ip_Bases/3 (Lpspi_Ip_Bases) @06aa9120
|
|
Type: variable definition analyzed
|
|
Visibility: prevailing_def_ironly
|
|
References:
|
|
Referring: Lpspi_Ip_AsyncTransmit/13 (read)Lpspi_TransmitTxInit/11 (read)Lpspi_Ip_TransferProcess/7 (read)Lpspi_Ip_PushData/5 (read)Lpspi_Ip_Init/8 (read)Lpspi_Ip_ReadData/4 (read)Lpspi_Ip_Cancel/19 (read)Lpspi_Ip_DeInit/9 (read)Lpspi_Ip_SyncTransmit/10 (read)Lpspi_Ip_PushDataProcess/6 (read)Lpspi_Ip_ManageBuffers/14 (read)Lpspi_Ip_IrqHandler/20 (read)
|
|
Availability: available
|
|
Varpool flags: initialized read-only const-value-known
|
|
Lpspi_Ip_StateStructureArray/2 (Lpspi_Ip_StateStructureArray) @06aa9048
|
|
Type: variable definition analyzed
|
|
Visibility: externally_visible public
|
|
References:
|
|
Referring: Lpspi_Ip_UpdateTransferMode/18 (read)Lpspi_Ip_DeInit/9 (read)Lpspi_Ip_UpdateDefaultTransmitData/17 (read)Lpspi_Ip_Init/8 (write)Lpspi_TransmitTxInit/11 (read)Lpspi_Ip_TransferProcess/7 (read)Lpspi_Ip_PushDataProcess/6 (read)Lpspi_Ip_PushData/5 (read)Lpspi_Ip_Cancel/19 (read)Lpspi_Ip_ReadData/4 (read)Lpspi_Ip_IrqHandler/20 (read)Lpspi_Ip_DeInit/9 (write)Lpspi_Ip_SyncTransmit/10 (read)Lpspi_TransmitRxInit/12 (read)Lpspi_Ip_AsyncTransmit/13 (read)Lpspi_Ip_ManageBuffers/14 (read)Lpspi_Ip_UpdateFrameSize/15 (read)Lpspi_Ip_UpdateLsb/16 (read)Lpspi_Ip_Init/8 (read)Lpspi_Ip_GetStatus/21 (read)
|
|
Availability: available
|
|
Varpool flags:
|
|
Lpspi_Ip_StateStructure/1 (Lpspi_Ip_StateStructure) @06aa2f30
|
|
Type: variable definition analyzed
|
|
Visibility: externally_visible public
|
|
References:
|
|
Referring:
|
|
Availability: available
|
|
Varpool flags:
|
|
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 4>; [50.00%]
|
|
|
|
<bb 4> [local count: 1073741824]:
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
# DEBUG BEGIN_STMT
|
|
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;
|
|
|
|
}
|
|
|
|
|