ADM/GW/Debug_FLASH/RTD/src/Lpuart_Lin_Ip.c.068i.whole-program
2024-10-30 17:21:58 +09:00

3977 lines
133 KiB
Plaintext

Marking local functions: Lpuart_Lin_Ip_ProcessSendFrameData Lpuart_Lin_Ip_ProcessReceiveFrameData Lpuart_Lin_Ip_ProcessFrameHeader Lpuart_Lin_Ip_FrameIrqHandler Lpuart_Lin_Ip_CheckWakeupSignal Lpuart_Lin_Ip_ProcessBreakDetect Lpuart_Lin_Ip_ProcessWakeupDetect Lpuart_Lin_Ip_AutoBaudCapture Lpuart_Lin_Ip_MakeChecksumByte Lpuart_Lin_Ip_FrameErrorIrqHandler Lpuart_Lin_Ip_StatusBeforeTransfer Lpuart_Lin_Ip_GetBytetoBuffer Lpuart_Lin_Ip_HwSetBreakCharDetectLength Lpuart_Lin_Ip_HwSetBreakCharTransmitLength Lpuart_Lin_Ip_HwSetOversamplingRatio Lpuart_Lin_Ip_HwSetBaudRateDivisor Lpuart_Lin_Ip_HwSetReceiverCmd Lpuart_Lin_Ip_HwSetTransmitterCmd
Marking externally visible functions: Lpuart_Lin_Ip_IRQHandler Lpuart_Lin_Ip_GotoIdleState Lpuart_Lin_Ip_MasterSendHeader Lpuart_Lin_Ip_SetTimeoutCounter Lpuart_Lin_Ip_TimeoutService Lpuart_Lin_Ip_GetCurrentNodeState Lpuart_Lin_Ip_SendWakeupSignal Lpuart_Lin_Ip_GoToSleepMode Lpuart_Lin_Ip_GetReceiveStatus Lpuart_Lin_Ip_AbortTransferData Lpuart_Lin_Ip_SyncReceiveFrameData Lpuart_Lin_Ip_AsyncReceiveFrameData Lpuart_Lin_Ip_GetTransmitStatus Lpuart_Lin_Ip_SyncSendFrameData Lpuart_Lin_Ip_AsyncSendFrameData Lpuart_Lin_Ip_Deinit Lpuart_Lin_Ip_Init
Marking externally visible variables: Lpuart_Lin_Ip_axStateStructure
Clearing variable flags: Lpuart_Lin_Ip_apxStateStructureArray (non-addressable) Lpuart_Lin_Ip_apxUserConfigs (non-addressable) Lpuart_Lin_Ip_apxBases (non-addressable) Lpuart_Lin_Ip_au8WakeupSignal (non-addressable)
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:
OsIf_GetCounter/73 (OsIf_GetCounter) @0600be00
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AutoBaudCapture/25 (536870913 (estimated locally),0.50 per call)
Calls:
OsIf_MicrosToTicks/72 (OsIf_MicrosToTicks) @0600bd20
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AutoBaudCapture/25 (536870913 (estimated locally),0.50 per call)
Calls:
currentTick.4732/71 (currentTick) @06019948
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Lpuart_Lin_Ip_AutoBaudCapture/25 (addr)Lpuart_Lin_Ip_AutoBaudCapture/25 (write)
Availability: available
Varpool flags:
OsIf_GetElapsed/70 (OsIf_GetElapsed) @0600bb60
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AutoBaudCapture/25 (536870913 (estimated locally),0.50 per call)
Calls:
fallingEgdeCount.4733/69 (fallingEgdeCount) @060198b8
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Lpuart_Lin_Ip_AutoBaudCapture/25 (read)Lpuart_Lin_Ip_AutoBaudCapture/25 (write)
Availability: available
Varpool flags:
Lpuart_Lin_Ip_HwGetIntMode/68 (Lpuart_Lin_Ip_HwGetIntMode) @0600b460
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (248034361 (estimated locally),0.23 per call) Lpuart_Lin_Ip_IRQHandler/43 (134699661 (estimated locally),0.13 per call) Lpuart_Lin_Ip_IRQHandler/43 (244419636 (estimated locally),0.23 per call) Lpuart_Lin_Ip_IRQHandler/43 (375809638 (estimated locally),0.35 per call) Lpuart_Lin_Ip_IRQHandler/43 (1073741823 (estimated locally),1.00 per call) Lpuart_Lin_Ip_FrameIrqHandler/46 (354334802 (estimated locally),0.33 per call)
Calls:
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_02/67 (SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_02) @0600b0e0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_GotoIdleState/42 (1073741824 (estimated locally),1.00 per call)
Calls:
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_02/66 (SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_02) @0600b000
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_GotoIdleState/42 (1073741824 (estimated locally),1.00 per call)
Calls:
Lin_Ip_ProcessParity/65 (Lin_Ip_ProcessParity) @05ff3d20
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_ProcessFrameHeader/47 (88583700 (estimated locally),0.08 per call) Lpuart_Lin_Ip_MasterSendHeader/41 (84632867 (estimated locally),0.08 per call)
Calls:
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_01/64 (SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_01) @05ff32a0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (354334802 (estimated locally),0.33 per call)
Calls:
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_01/63 (SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_01) @05ff31c0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (354334802 (estimated locally),0.33 per call)
Calls:
Lin_Ip_MakeChecksumByte/62 (Lin_Ip_MakeChecksumByte) @05fe1b60
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_MakeChecksumByte/24 (248622363 (estimated locally),1.00 per call)
Calls:
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_00/61 (SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_00) @05fe18c0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AsyncSendFrameData/29 (354334802 (estimated locally),0.33 per call)
Calls:
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_00/60 (SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_00) @05fe17e0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AsyncSendFrameData/29 (354334802 (estimated locally),0.33 per call)
Calls:
Lpuart_Lin_Ip_HwGetStatusFlag/59 (Lpuart_Lin_Ip_HwGetStatusFlag) @05fe1620
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (751619277 (estimated locally),0.70 per call) Lpuart_Lin_Ip_IRQHandler/43 (408180792 (estimated locally),0.38 per call) Lpuart_Lin_Ip_IRQHandler/43 (488839272 (estimated locally),0.46 per call) Lpuart_Lin_Ip_IRQHandler/43 (627602097 (estimated locally),0.58 per call) Lpuart_Lin_Ip_IRQHandler/43 (751619277 (estimated locally),0.70 per call) Lpuart_Lin_Ip_FrameIrqHandler/46 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_ProcessSendFrameData/49 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_AbortTransferData/34 (1073741824 (estimated locally),9.35 per call) Lpuart_Lin_Ip_SyncReceiveFrameData/33 (1014686025 (estimated locally),27.25 per call) Lpuart_Lin_Ip_SyncSendFrameData/30 (1073741824 (estimated locally),27.64 per call) Lpuart_Lin_Ip_Deinit/28 (1073741824 (estimated locally),9.35 per call)
Calls:
Lpuart_Lin_Ip_TimeoutExpired/58 (Lpuart_Lin_Ip_TimeoutExpired) @05fe1380
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AbortTransferData/34 (1014686025 (estimated locally),8.83 per call) Lpuart_Lin_Ip_SyncReceiveFrameData/33 (1073741824 (estimated locally),28.84 per call) Lpuart_Lin_Ip_SyncSendFrameData/30 (1014686025 (estimated locally),26.12 per call) Lpuart_Lin_Ip_Deinit/28 (1014686025 (estimated locally),8.83 per call) Lpuart_Lin_Ip_HwSetReceiverCmd/1 (118111601 (estimated locally),9.09 per call) Lpuart_Lin_Ip_HwSetTransmitterCmd/0 (118111601 (estimated locally),9.09 per call)
Calls:
Lpuart_Lin_Ip_StartTimeout/57 (Lpuart_Lin_Ip_StartTimeout) @05fe12a0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_AbortTransferData/34 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_SyncReceiveFrameData/33 (114863532 (estimated locally),3.08 per call) Lpuart_Lin_Ip_SyncSendFrameData/30 (114863532 (estimated locally),2.96 per call) Lpuart_Lin_Ip_Deinit/28 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetReceiverCmd/1 (12992276 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetTransmitterCmd/0 (12992276 (estimated locally),1.00 per call)
Calls:
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_04/56 (SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_04) @05fe10e0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (1073741824 (estimated locally),1.00 per call)
Calls:
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_04/55 (SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_04) @05fe1000
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (1073741824 (estimated locally),1.00 per call)
Calls:
Lpuart_Lin_Ip_HwClearStatusFlag/54 (Lpuart_Lin_Ip_HwClearStatusFlag) @05f7aa80
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (221023419 (estimated locally),0.21 per call) Lpuart_Lin_Ip_IRQHandler/43 (81851339 (estimated locally),0.08 per call) Lpuart_Lin_Ip_IRQHandler/43 (322122547 (estimated locally),0.30 per call) Lpuart_Lin_Ip_ProcessWakeupDetect/26 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_ProcessBreakDetect/44 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_GoToSleepMode/36 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_FrameErrorIrqHandler/23 (1073741823 (estimated locally),1.00 per call)
Calls:
Lpuart_Lin_Ip_HwSetIntMode/53 (Lpuart_Lin_Ip_HwSetIntMode) @05f7a9a0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_ProcessSendFrameData/49 (44291850 (estimated locally),0.04 per call) Lpuart_Lin_Ip_AbortTransferData/34 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_AbortTransferData/34 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_AbortTransferData/34 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_SyncReceiveFrameData/33 (12287527 (estimated locally),0.33 per call) Lpuart_Lin_Ip_SyncReceiveFrameData/33 (12287527 (estimated locally),0.33 per call) Lpuart_Lin_Ip_SyncSendFrameData/30 (12818615 (estimated locally),0.33 per call) Lpuart_Lin_Ip_SyncSendFrameData/30 (12818615 (estimated locally),0.33 per call) Lpuart_Lin_Ip_GotoIdleState/42 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_GotoIdleState/42 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_GotoIdleState/42 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_GotoIdleState/42 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_MasterSendHeader/41 (84632867 (estimated locally),0.08 per call) Lpuart_Lin_Ip_ProcessBreakDetect/44 (177167401 (estimated locally),0.17 per call) Lpuart_Lin_Ip_ProcessBreakDetect/44 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_ProcessBreakDetect/44 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_GoToSleepMode/36 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_GoToSleepMode/36 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_GoToSleepMode/36 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_GoToSleepMode/36 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_Init/27 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_AutoBaudCapture/25 (131211251 (estimated locally),0.12 per call)
Calls:
Lpuart_Lin_Ip_HwSetParityMode/52 (Lpuart_Lin_Ip_HwSetParityMode) @05f7a8c0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call)
Calls:
Lpuart_Lin_Ip_HwSetBitCountPerChar/51 (Lpuart_Lin_Ip_HwSetBitCountPerChar) @05f7a7e0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call)
Calls:
Lpuart_Lin_Ip_HwInit/50 (Lpuart_Lin_Ip_HwInit) @05f7a700
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call)
Calls:
Lpuart_Lin_Ip_ProcessSendFrameData/49 (Lpuart_Lin_Ip_ProcessSendFrameData) @05f7a2a0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_FrameIrqHandler/46 (44291850 (estimated locally),0.04 per call)
Calls: Lpuart_Lin_Ip_GotoIdleState/42 (21649856 (estimated locally),0.02 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (44291850 (estimated locally),0.04 per call) Lpuart_Lin_Ip_GotoIdleState/42 (402653184 (estimated locally),0.38 per call) Lpuart_Lin_Ip_GotoIdleState/42 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (1073741824 (estimated locally),1.00 per call)
Indirect call(31004295 (estimated locally),0.03 per call)
Indirect call(281857229 (estimated locally),0.26 per call)
Indirect call(375809639 (estimated locally),0.35 per call)
Lpuart_Lin_Ip_ProcessReceiveFrameData/48 (Lpuart_Lin_Ip_ProcessReceiveFrameData) @05f7a000
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_FrameIrqHandler/46 (44291850 (estimated locally),0.04 per call)
Calls: Lpuart_Lin_Ip_GotoIdleState/42 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_GetBytetoBuffer/21 (1073741824 (estimated locally),1.00 per call)
Indirect call(375809639 (estimated locally),0.35 per call)
Indirect call(127775277 (estimated locally),0.12 per call)
Lpuart_Lin_Ip_ProcessFrameHeader/47 (Lpuart_Lin_Ip_ProcessFrameHeader) @05f69b60
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: local
Function flags: count:1073741823 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_FrameIrqHandler/46 (44291850 (estimated locally),0.04 per call)
Calls: Lpuart_Lin_Ip_GotoIdleState/42 (30118458 (estimated locally),0.03 per call) Lin_Ip_ProcessParity/65 (88583700 (estimated locally),0.08 per call) Lpuart_Lin_Ip_GotoIdleState/42 (177167401 (estimated locally),0.17 per call)
Indirect call(21082921 (estimated locally),0.02 per call)
Indirect call(40925670 (estimated locally),0.04 per call)
Indirect call(83091511 (estimated locally),0.08 per call)
Indirect call(42804718 (estimated locally),0.04 per call)
Indirect call(124017180 (estimated locally),0.12 per call)
Indirect call(124017180 (estimated locally),0.12 per call)
Lpuart_Lin_Ip_FrameIrqHandler/46 (Lpuart_Lin_Ip_FrameIrqHandler) @05f69620
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (408180791 (estimated locally),0.38 per call)
Calls: Lpuart_Lin_Ip_ProcessSendFrameData/49 (44291850 (estimated locally),0.04 per call) Lpuart_Lin_Ip_ProcessReceiveFrameData/48 (44291850 (estimated locally),0.04 per call) Lpuart_Lin_Ip_ProcessFrameHeader/47 (44291850 (estimated locally),0.04 per call) Lpuart_Lin_Ip_HwGetIntMode/68 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_CheckWakeupSignal/45 (Lpuart_Lin_Ip_CheckWakeupSignal) @05f690e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_ProcessWakeupDetect/26 (357878150 (estimated locally),0.33 per call)
Calls: Lpuart_Lin_Ip_GotoIdleState/42 (268435456 (estimated locally),0.25 per call)
Indirect call(187904819 (estimated locally),0.17 per call)
Indirect call(536870913 (estimated locally),0.50 per call)
Indirect call(536870913 (estimated locally),0.50 per call)
Lpuart_Lin_Ip_ProcessBreakDetect/44 (Lpuart_Lin_Ip_ProcessBreakDetect) @05f69d20
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (124017180 (estimated locally),0.12 per call)
Calls: Lpuart_Lin_Ip_HwSetReceiverCmd/1 (177167401 (estimated locally),0.17 per call) Lpuart_Lin_Ip_HwSetTransmitterCmd/0 (177167401 (estimated locally),0.17 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (177167401 (estimated locally),0.17 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwClearStatusFlag/54 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_IRQHandler/43 (Lpuart_Lin_Ip_IRQHandler) @05f69a80
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741823 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_HwClearStatusFlag/54 (221023419 (estimated locally),0.21 per call) Lpuart_Lin_Ip_HwClearStatusFlag/54 (81851339 (estimated locally),0.08 per call) Lpuart_Lin_Ip_HwGetIntMode/68 (248034361 (estimated locally),0.23 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (751619277 (estimated locally),0.70 per call) Lpuart_Lin_Ip_FrameIrqHandler/46 (408180791 (estimated locally),0.38 per call) Lpuart_Lin_Ip_HwGetIntMode/68 (134699661 (estimated locally),0.13 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (408180792 (estimated locally),0.38 per call) Lpuart_Lin_Ip_GotoIdleState/42 (80658480 (estimated locally),0.08 per call) Lpuart_Lin_Ip_FrameErrorIrqHandler/23 (80658480 (estimated locally),0.08 per call) Lpuart_Lin_Ip_HwGetIntMode/68 (244419636 (estimated locally),0.23 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (488839272 (estimated locally),0.46 per call) Lpuart_Lin_Ip_ProcessWakeupDetect/26 (138762824 (estimated locally),0.13 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (627602097 (estimated locally),0.58 per call) Lpuart_Lin_Ip_ProcessBreakDetect/44 (124017180 (estimated locally),0.12 per call) Lpuart_Lin_Ip_HwGetIntMode/68 (375809638 (estimated locally),0.35 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (751619277 (estimated locally),0.70 per call) Lpuart_Lin_Ip_HwClearStatusFlag/54 (322122547 (estimated locally),0.30 per call) Lpuart_Lin_Ip_HwGetIntMode/68 (1073741823 (estimated locally),1.00 per call)
Indirect call(57295937 (estimated locally),0.05 per call)
Lpuart_Lin_Ip_GotoIdleState/42 (Lpuart_Lin_Ip_GotoIdleState) @05f697e0
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (80658480 (estimated locally),0.08 per call) Lpuart_Lin_Ip_ProcessSendFrameData/49 (21649856 (estimated locally),0.02 per call) Lpuart_Lin_Ip_ProcessSendFrameData/49 (402653184 (estimated locally),0.38 per call) Lpuart_Lin_Ip_ProcessSendFrameData/49 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_ProcessReceiveFrameData/48 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_ProcessFrameHeader/47 (30118458 (estimated locally),0.03 per call) Lpuart_Lin_Ip_ProcessFrameHeader/47 (177167401 (estimated locally),0.17 per call) Lpuart_Lin_Ip_CheckWakeupSignal/45 (268435456 (estimated locally),0.25 per call) Lpuart_Lin_Ip_AbortTransferData/34 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_SyncReceiveFrameData/33 (12287526 (estimated locally),0.33 per call) Lpuart_Lin_Ip_SyncSendFrameData/30 (12818614 (estimated locally),0.33 per call)
Calls: SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_02/67 (1073741824 (estimated locally),1.00 per call) SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_02/66 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_MasterSendHeader/41 (Lpuart_Lin_Ip_MasterSendHeader) @05f69540
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_HwSetIntMode/53 (84632867 (estimated locally),0.08 per call) Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (84632867 (estimated locally),0.08 per call) Lin_Ip_ProcessParity/65 (84632867 (estimated locally),0.08 per call)
Lpuart_Lin_Ip_SetTimeoutCounter/40 (Lpuart_Lin_Ip_SetTimeoutCounter) @05f692a0
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Lpuart_Lin_Ip_TimeoutService/39 (Lpuart_Lin_Ip_TimeoutService) @05f69000
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Indirect call(187904819 (estimated locally),0.17 per call)
Lpuart_Lin_Ip_GetCurrentNodeState/38 (Lpuart_Lin_Ip_GetCurrentNodeState) @05f3bb60
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Lpuart_Lin_Ip_SendWakeupSignal/37 (Lpuart_Lin_Ip_SendWakeupSignal) @05f3b620
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_au8WakeupSignal/15 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Lpuart_Lin_Ip_GoToSleepMode/36 (Lpuart_Lin_Ip_GoToSleepMode) @05f3b0e0
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwClearStatusFlag/54 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_GetReceiveStatus/35 (Lpuart_Lin_Ip_GetReceiveStatus) @05f3bd20
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Lpuart_Lin_Ip_AbortTransferData/34 (Lpuart_Lin_Ip_AbortTransferData) @05f3ba80
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)
Referring:
Availability: available
Function flags: count:114863532 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_GotoIdleState/42 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_TimeoutExpired/58 (1014686025 (estimated locally),8.83 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (1073741824 (estimated locally),9.35 per call) Lpuart_Lin_Ip_StartTimeout/57 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (114863532 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_SyncReceiveFrameData/33 (Lpuart_Lin_Ip_SyncReceiveFrameData) @05f3b7e0
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:37234929 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_GotoIdleState/42 (12287526 (estimated locally),0.33 per call) Lpuart_Lin_Ip_GetBytetoBuffer/21 (18952483 (estimated locally),0.51 per call) Lpuart_Lin_Ip_TimeoutExpired/58 (1073741824 (estimated locally),28.84 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (1014686025 (estimated locally),27.25 per call) Lpuart_Lin_Ip_StartTimeout/57 (114863532 (estimated locally),3.08 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (12287527 (estimated locally),0.33 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (12287527 (estimated locally),0.33 per call) Lpuart_Lin_Ip_StatusBeforeTransfer/22 (37234929 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (Lpuart_Lin_Ip_AsyncReceiveFrameData) @05f3b540
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (354334802 (estimated locally),0.33 per call) SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_01/64 (354334802 (estimated locally),0.33 per call) SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_01/63 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_StatusBeforeTransfer/22 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_GetTransmitStatus/31 (Lpuart_Lin_Ip_GetTransmitStatus) @05f3b2a0
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls:
Lpuart_Lin_Ip_SyncSendFrameData/30 (Lpuart_Lin_Ip_SyncSendFrameData) @05f3b000
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:38844287 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_GotoIdleState/42 (12818614 (estimated locally),0.33 per call) Lpuart_Lin_Ip_TimeoutExpired/58 (1014686025 (estimated locally),26.12 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (1073741824 (estimated locally),27.64 per call) Lpuart_Lin_Ip_StartTimeout/57 (114863532 (estimated locally),2.96 per call) Lpuart_Lin_Ip_MakeChecksumByte/24 (12818615 (estimated locally),0.33 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (12818615 (estimated locally),0.33 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (12818615 (estimated locally),0.33 per call) Lpuart_Lin_Ip_StatusBeforeTransfer/22 (38844287 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_AsyncSendFrameData/29 (Lpuart_Lin_Ip_AsyncSendFrameData) @05e37b60
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (354334802 (estimated locally),0.33 per call) SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_00/61 (354334802 (estimated locally),0.33 per call) SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_00/60 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_MakeChecksumByte/24 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_StatusBeforeTransfer/22 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_Deinit/28 (Lpuart_Lin_Ip_Deinit) @05e37620
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (write)
Referring:
Availability: available
Function flags: count:114863532 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_HwSetReceiverCmd/1 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetTransmitterCmd/0 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_TimeoutExpired/58 (1014686025 (estimated locally),8.83 per call) Lpuart_Lin_Ip_HwGetStatusFlag/59 (1073741824 (estimated locally),9.35 per call) Lpuart_Lin_Ip_StartTimeout/57 (114863532 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_Init/27 (Lpuart_Lin_Ip_Init) @05e370e0
Type: function definition analyzed
Visibility: externally_visible public
References: Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (write)Lpuart_Lin_Ip_au8WakeupSignal/15 (write)Lpuart_Lin_Ip_apxStateStructureArray/19 (write)
Referring:
Availability: available
Function flags: count:1073741824 (estimated locally) body optimize_size
Called by:
Calls: Lpuart_Lin_Ip_HwSetReceiverCmd/1 (714038314 (estimated locally),0.67 per call) Lpuart_Lin_Ip_HwSetTransmitterCmd/0 (714038314 (estimated locally),0.67 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwClearStatusFlag/54 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_HwSetBreakCharTransmitLength/12 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_HwSetParityMode/52 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetBitCountPerChar/51 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetBaudRateDivisor/2 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwSetOversamplingRatio/4 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_HwInit/50 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_ProcessWakeupDetect/26 (Lpuart_Lin_Ip_ProcessWakeupDetect) @05e37d20
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (138762824 (estimated locally),0.13 per call)
Calls: Lpuart_Lin_Ip_AutoBaudCapture/25 (118099789 (estimated locally),0.11 per call) Lpuart_Lin_Ip_CheckWakeupSignal/45 (357878150 (estimated locally),0.33 per call) Lpuart_Lin_Ip_HwClearStatusFlag/54 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_AutoBaudCapture/25 (Lpuart_Lin_Ip_AutoBaudCapture) @05e37a80
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)fallingEgdeCount.4733/69 (read)fallingEgdeCount.4733/69 (write)currentTick.4732/71 (addr)Lpuart_Lin_Ip_au8WakeupSignal/15 (write)currentTick.4732/71 (write)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_ProcessWakeupDetect/26 (118099789 (estimated locally),0.11 per call)
Calls: OsIf_GetCounter/73 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_HwSetIntMode/53 (131211251 (estimated locally),0.12 per call) Lpuart_Lin_Ip_HwSetBaudRateDivisor/2 (131211251 (estimated locally),0.12 per call) OsIf_MicrosToTicks/72 (536870913 (estimated locally),0.50 per call) OsIf_GetElapsed/70 (536870913 (estimated locally),0.50 per call)
Indirect call(91847876 (estimated locally),0.09 per call)
Lpuart_Lin_Ip_MakeChecksumByte/24 (Lpuart_Lin_Ip_MakeChecksumByte) @05e377e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: local
Function flags: count:248622364 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_SyncSendFrameData/30 (12818615 (estimated locally),0.33 per call) Lpuart_Lin_Ip_AsyncSendFrameData/29 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_GetBytetoBuffer/21 (354334802 (estimated locally),0.33 per call)
Calls: Lin_Ip_MakeChecksumByte/62 (248622363 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_FrameErrorIrqHandler/23 (Lpuart_Lin_Ip_FrameErrorIrqHandler) @05e37540
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)Lpuart_Lin_Ip_apxUserConfigs/18 (read)
Referring:
Availability: local
Function flags: count:1073741823 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_IRQHandler/43 (80658480 (estimated locally),0.08 per call)
Calls: Lpuart_Lin_Ip_HwClearStatusFlag/54 (1073741823 (estimated locally),1.00 per call)
Indirect call(168663365 (estimated locally),0.16 per call)
Indirect call(255550554 (estimated locally),0.24 per call)
Lpuart_Lin_Ip_StatusBeforeTransfer/22 (Lpuart_Lin_Ip_StatusBeforeTransfer) @05e372a0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_SyncReceiveFrameData/33 (37234929 (estimated locally),1.00 per call) Lpuart_Lin_Ip_SyncSendFrameData/30 (38844287 (estimated locally),1.00 per call) Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_AsyncSendFrameData/29 (1073741824 (estimated locally),1.00 per call)
Calls:
Lpuart_Lin_Ip_GetBytetoBuffer/21 (Lpuart_Lin_Ip_GetBytetoBuffer) @05e37000
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Lpuart_Lin_Ip_apxBases/16 (read)Lpuart_Lin_Ip_apxStateStructureArray/19 (read)
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_ProcessReceiveFrameData/48 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_SyncReceiveFrameData/33 (18952483 (estimated locally),0.51 per call)
Calls: Lpuart_Lin_Ip_MakeChecksumByte/24 (354334802 (estimated locally),0.33 per call)
Lpuart_Lin_Ip_apxStateStructureArray/19 (Lpuart_Lin_Ip_apxStateStructureArray) @05e2e2d0
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Lpuart_Lin_Ip_GetBytetoBuffer/21 (read)Lpuart_Lin_Ip_ProcessWakeupDetect/26 (read)Lpuart_Lin_Ip_AutoBaudCapture/25 (read)Lpuart_Lin_Ip_TimeoutService/39 (read)Lpuart_Lin_Ip_FrameIrqHandler/46 (read)Lpuart_Lin_Ip_MasterSendHeader/41 (read)Lpuart_Lin_Ip_Init/27 (write)Lpuart_Lin_Ip_SetTimeoutCounter/40 (read)Lpuart_Lin_Ip_GotoIdleState/42 (read)Lpuart_Lin_Ip_FrameErrorIrqHandler/23 (read)Lpuart_Lin_Ip_SyncSendFrameData/30 (read)Lpuart_Lin_Ip_Deinit/28 (write)Lpuart_Lin_Ip_GetTransmitStatus/31 (read)Lpuart_Lin_Ip_GetReceiveStatus/35 (read)Lpuart_Lin_Ip_GoToSleepMode/36 (read)Lpuart_Lin_Ip_SendWakeupSignal/37 (read)Lpuart_Lin_Ip_GetCurrentNodeState/38 (read)Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (read)Lpuart_Lin_Ip_ProcessBreakDetect/44 (read)Lpuart_Lin_Ip_ProcessSendFrameData/49 (read)Lpuart_Lin_Ip_AsyncSendFrameData/29 (read)Lpuart_Lin_Ip_AbortTransferData/34 (read)Lpuart_Lin_Ip_SyncReceiveFrameData/33 (read)Lpuart_Lin_Ip_MakeChecksumByte/24 (read)Lpuart_Lin_Ip_ProcessFrameHeader/47 (read)Lpuart_Lin_Ip_ProcessReceiveFrameData/48 (read)Lpuart_Lin_Ip_CheckWakeupSignal/45 (read)Lpuart_Lin_Ip_Deinit/28 (read)Lpuart_Lin_Ip_AsyncSendFrameData/29 (read)Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (read)Lpuart_Lin_Ip_ProcessBreakDetect/44 (read)Lpuart_Lin_Ip_ProcessBreakDetect/44 (read)Lpuart_Lin_Ip_SyncSendFrameData/30 (read)Lpuart_Lin_Ip_SyncReceiveFrameData/33 (read)Lpuart_Lin_Ip_IRQHandler/43 (read)
Availability: available
Varpool flags:
Lpuart_Lin_Ip_apxUserConfigs/18 (Lpuart_Lin_Ip_apxUserConfigs) @05e2e240
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Lpuart_Lin_Ip_FrameErrorIrqHandler/23 (read)Lpuart_Lin_Ip_Init/27 (write)Lpuart_Lin_Ip_MasterSendHeader/41 (read)Lpuart_Lin_Ip_TimeoutService/39 (read)Lpuart_Lin_Ip_GotoIdleState/42 (read)Lpuart_Lin_Ip_AutoBaudCapture/25 (read)Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (read)Lpuart_Lin_Ip_ProcessBreakDetect/44 (read)Lpuart_Lin_Ip_ProcessReceiveFrameData/48 (read)Lpuart_Lin_Ip_AsyncSendFrameData/29 (read)Lpuart_Lin_Ip_SyncSendFrameData/30 (read)Lpuart_Lin_Ip_ProcessSendFrameData/49 (read)Lpuart_Lin_Ip_ProcessFrameHeader/47 (read)Lpuart_Lin_Ip_SyncReceiveFrameData/33 (read)Lpuart_Lin_Ip_CheckWakeupSignal/45 (read)Lpuart_Lin_Ip_IRQHandler/43 (read)
Availability: available
Varpool flags:
Lpuart_Lin_Ip_axStateStructure/17 (Lpuart_Lin_Ip_axStateStructure) @05e2e1b0
Type: variable definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Varpool flags:
Lpuart_Lin_Ip_apxBases/16 (Lpuart_Lin_Ip_apxBases) @05e2e120
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Lpuart_Lin_Ip_GetBytetoBuffer/21 (read)Lpuart_Lin_Ip_AutoBaudCapture/25 (read)Lpuart_Lin_Ip_GoToSleepMode/36 (read)Lpuart_Lin_Ip_MasterSendHeader/41 (read)Lpuart_Lin_Ip_SendWakeupSignal/37 (read)Lpuart_Lin_Ip_GotoIdleState/42 (read)Lpuart_Lin_Ip_FrameIrqHandler/46 (read)Lpuart_Lin_Ip_SyncSendFrameData/30 (read)Lpuart_Lin_Ip_Init/27 (read)Lpuart_Lin_Ip_Deinit/28 (read)Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (read)Lpuart_Lin_Ip_ProcessBreakDetect/44 (read)Lpuart_Lin_Ip_ProcessSendFrameData/49 (read)Lpuart_Lin_Ip_AsyncSendFrameData/29 (read)Lpuart_Lin_Ip_AbortTransferData/34 (read)Lpuart_Lin_Ip_SyncReceiveFrameData/33 (read)Lpuart_Lin_Ip_FrameErrorIrqHandler/23 (read)Lpuart_Lin_Ip_ProcessWakeupDetect/26 (read)Lpuart_Lin_Ip_ProcessFrameHeader/47 (read)Lpuart_Lin_Ip_CheckWakeupSignal/45 (read)Lpuart_Lin_Ip_IRQHandler/43 (read)
Availability: available
Varpool flags: initialized read-only const-value-known
Lpuart_Lin_Ip_au8WakeupSignal/15 (Lpuart_Lin_Ip_au8WakeupSignal) @05e2e048
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Lpuart_Lin_Ip_Init/27 (write)Lpuart_Lin_Ip_AutoBaudCapture/25 (write)Lpuart_Lin_Ip_SendWakeupSignal/37 (read)
Availability: available
Varpool flags:
Lpuart_Lin_Ip_HwSetBreakCharDetectLength/13 (Lpuart_Lin_Ip_HwSetBreakCharDetectLength) @05e1f0e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_GotoIdleState/42 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_MasterSendHeader/41 (84632867 (estimated locally),0.08 per call) Lpuart_Lin_Ip_ProcessBreakDetect/44 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_AsyncReceiveFrameData/32 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_AsyncSendFrameData/29 (354334802 (estimated locally),0.33 per call) Lpuart_Lin_Ip_Init/27 (536870913 (estimated locally),0.50 per call) Lpuart_Lin_Ip_Init/27 (536870913 (estimated locally),0.50 per call)
Calls: SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_04/56 (1073741824 (estimated locally),1.00 per call) SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_04/55 (1073741824 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_HwSetBreakCharTransmitLength/12 (Lpuart_Lin_Ip_HwSetBreakCharTransmitLength) @05e1be00
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_Init/27 (536870913 (estimated locally),0.50 per call)
Calls:
Lpuart_Lin_Ip_HwSetOversamplingRatio/4 (Lpuart_Lin_Ip_HwSetOversamplingRatio) @05db9380
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call)
Calls:
Lpuart_Lin_Ip_HwSetBaudRateDivisor/2 (Lpuart_Lin_Ip_HwSetBaudRateDivisor) @05db2d20
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: count:1073741824 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_Init/27 (1073741824 (estimated locally),1.00 per call) Lpuart_Lin_Ip_AutoBaudCapture/25 (131211251 (estimated locally),0.12 per call)
Calls:
Lpuart_Lin_Ip_HwSetReceiverCmd/1 (Lpuart_Lin_Ip_HwSetReceiverCmd) @05db2a80
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: count:12992276 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_ProcessBreakDetect/44 (177167401 (estimated locally),0.17 per call) Lpuart_Lin_Ip_Deinit/28 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_Init/27 (714038314 (estimated locally),0.67 per call)
Calls: Lpuart_Lin_Ip_TimeoutExpired/58 (118111601 (estimated locally),9.09 per call) Lpuart_Lin_Ip_StartTimeout/57 (12992276 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_HwSetTransmitterCmd/0 (Lpuart_Lin_Ip_HwSetTransmitterCmd) @05db27e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References:
Referring:
Availability: local
Function flags: count:12992276 (estimated locally) body local optimize_size
Called by: Lpuart_Lin_Ip_ProcessBreakDetect/44 (177167401 (estimated locally),0.17 per call) Lpuart_Lin_Ip_Deinit/28 (114863532 (estimated locally),1.00 per call) Lpuart_Lin_Ip_Init/27 (714038314 (estimated locally),0.67 per call)
Calls: Lpuart_Lin_Ip_TimeoutExpired/58 (118111601 (estimated locally),9.09 per call) Lpuart_Lin_Ip_StartTimeout/57 (12992276 (estimated locally),1.00 per call)
Lpuart_Lin_Ip_ProcessSendFrameData (const uint32 u32Instance, const uint8 tmpByte)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
struct LPUART_Type * base;
boolean tmpBuffAndSize;
boolean tmpCheckSumAndSize;
uint8 tmpSize;
_Bool _1;
void (*<T2e6>) (uint32, void *) _2;
unsigned char _3;
unsigned char _4;
unsigned char _5;
const uint8 * _6;
unsigned char _7;
void (*<T2e6>) (uint32, void *) _8;
const uint8 * _9;
unsigned char _10;
unsigned char _11;
unsigned char _12;
int _13;
int _14;
int _15;
unsigned char _16;
unsigned char _17;
void (*<T2e6>) (uint32, void *) _18;
<unnamed type> _19;
int iftmp.29_20;
int iftmp.30_21;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG sendFlag => 1
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
base_28 = Lpuart_Lin_Ip_apxBases[u32Instance_27(D)];
# DEBUG base => base_28
# DEBUG BEGIN_STMT
pUserConfig_29 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_27(D)];
# DEBUG pUserConfig => pUserConfig_29
# DEBUG BEGIN_STMT
linCurrentState_30 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_27(D)];
# DEBUG linCurrentState => linCurrentState_30
# DEBUG BEGIN_STMT
_1 = Lpuart_Lin_Ip_HwGetStatusFlag (base_28, 131095);
if (_1 != 0)
goto <bb 6>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
linCurrentState_30->currentEventId ={v} 9;
# DEBUG BEGIN_STMT
_2 = pUserConfig_29->Callback;
if (_2 != 0B)
goto <bb 4>; [70.00%]
else
goto <bb 5>; [30.00%]
<bb 4> [local count: 375809639]:
# DEBUG BEGIN_STMT
_2 (u32Instance_27(D), linCurrentState_30);
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
linCurrentState_30->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_27(D));
# DEBUG BEGIN_STMT
# DEBUG sendFlag => 0
# DEBUG BEGIN_STMT
goto <bb 25>; [100.00%]
<bb 6> [local count: 536870913]:
# DEBUG BEGIN_STMT
_3 ={v} linCurrentState_30->txSize;
_4 = linCurrentState_30->cntByte;
tmpSize_32 = _3 - _4;
# DEBUG tmpSize => tmpSize_32
# DEBUG BEGIN_STMT
if (tmpSize_32 == 1)
goto <bb 7>; [34.00%]
else
goto <bb 8>; [66.00%]
<bb 7> [local count: 182536110]:
_5 = linCurrentState_30->checkSum;
if (_5 != tmpByte_33(D))
goto <bb 9>; [66.00%]
else
goto <bb 8>; [34.00%]
<bb 8> [local count: 416397080]:
<bb 9> [local count: 536870912]:
# iftmp.29_20 = PHI <1(7), 0(8)>
tmpCheckSumAndSize_34 = (boolean) iftmp.29_20;
# DEBUG tmpCheckSumAndSize => tmpCheckSumAndSize_34
# DEBUG BEGIN_STMT
_6 = linCurrentState_30->txBuff;
_7 = *_6;
if (_7 != tmpByte_33(D))
goto <bb 10>; [66.00%]
else
goto <bb 11>; [34.00%]
<bb 10> [local count: 354334802]:
if (tmpSize_32 != 1)
goto <bb 12>; [66.00%]
else
goto <bb 11>; [34.00%]
<bb 11> [local count: 303009943]:
<bb 12> [local count: 536870911]:
# iftmp.30_21 = PHI <1(10), 0(11)>
tmpBuffAndSize_35 = (boolean) iftmp.30_21;
# DEBUG tmpBuffAndSize => tmpBuffAndSize_35
# DEBUG BEGIN_STMT
if (tmpBuffAndSize_35 != 0)
goto <bb 14>; [50.00%]
else
goto <bb 13>; [50.00%]
<bb 13> [local count: 268435456]:
if (tmpCheckSumAndSize_34 != 0)
goto <bb 14>; [50.00%]
else
goto <bb 17>; [50.00%]
<bb 14> [local count: 402653184]:
# DEBUG BEGIN_STMT
linCurrentState_30->currentEventId ={v} 9;
# DEBUG BEGIN_STMT
_8 = pUserConfig_29->Callback;
if (_8 != 0B)
goto <bb 15>; [70.00%]
else
goto <bb 16>; [30.00%]
<bb 15> [local count: 281857229]:
# DEBUG BEGIN_STMT
_8 (u32Instance_27(D), linCurrentState_30);
<bb 16> [local count: 402653184]:
# DEBUG BEGIN_STMT
linCurrentState_30->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_27(D));
# DEBUG BEGIN_STMT
# DEBUG sendFlag => 0
# DEBUG BEGIN_STMT
goto <bb 25>; [100.00%]
<bb 17> [local count: 134217728]:
# DEBUG BEGIN_STMT
_9 = _6 + 1;
linCurrentState_30->txBuff = _9;
# DEBUG BEGIN_STMT
_10 = _4 + 1;
linCurrentState_30->cntByte = _10;
# DEBUG sendFlag => 1
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_11 ={v} linCurrentState_30->txSize;
if (_10 < _11)
goto <bb 18>; [67.00%]
else
goto <bb 21>; [33.00%]
<bb 18> [local count: 89925878]:
# DEBUG BEGIN_STMT
_12 ={v} linCurrentState_30->txSize;
_13 = (int) _12;
_14 = (int) _10;
_15 = _13 - _14;
if (_15 == 1)
goto <bb 19>; [34.00%]
else
goto <bb 20>; [66.00%]
<bb 19> [local count: 30574798]:
# DEBUG BEGIN_STMT
_16 = linCurrentState_30->checkSum;
# DEBUG base => base_28
# DEBUG data => _16
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwPutchar
# DEBUG BEGIN_STMT
# DEBUG D#1 => &base_28->DATA
# DEBUG dataRegBytes => D#1
# DEBUG BEGIN_STMT
MEM[(volatile uint8 *)base_28 + 28B] ={v} _16;
goto <bb 25>; [100.00%]
<bb 20> [local count: 59351079]:
# DEBUG BEGIN_STMT
_17 = *_9;
# DEBUG base => base_28
# DEBUG data => _17
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwPutchar
# DEBUG BEGIN_STMT
# DEBUG D#1 => &base_28->DATA
# DEBUG dataRegBytes => D#1
# DEBUG BEGIN_STMT
MEM[(volatile uint8 *)base_28 + 28B] ={v} _17;
goto <bb 25>; [100.00%]
<bb 21> [local count: 44291850]:
# DEBUG BEGIN_STMT
linCurrentState_30->currentEventId ={v} 11;
# DEBUG BEGIN_STMT
linCurrentState_30->currentNodeState ={v} 10;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_28, 196629, 0);
# DEBUG BEGIN_STMT
_18 = pUserConfig_29->Callback;
if (_18 != 0B)
goto <bb 22>; [70.00%]
else
goto <bb 23>; [30.00%]
<bb 22> [local count: 31004295]:
# DEBUG BEGIN_STMT
_18 (u32Instance_27(D), linCurrentState_30);
<bb 23> [local count: 44291850]:
# DEBUG BEGIN_STMT
linCurrentState_30->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
_19 ={v} linCurrentState_30->currentNodeState;
if (_19 != 1)
goto <bb 24>; [48.88%]
else
goto <bb 25>; [51.12%]
<bb 24> [local count: 21649856]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_27(D));
<bb 25> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG data => NULL
# DEBUG base => NULL
# DEBUG data => NULL
return;
}
Lpuart_Lin_Ip_ProcessReceiveFrameData (const uint32 u32Instance)
{
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
Lpuart_Lin_Ip_StatusType retVal;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
unsigned char _1;
unsigned char _2;
unsigned char _3;
uint8 * _4;
unsigned char _5;
unsigned char _6;
unsigned char _7;
unsigned char _8;
unsigned char _9;
void (*<T2e6>) (uint32, void *) _10;
void (*<T2e6>) (uint32, void *) _11;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
linCurrentState_17 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_16(D)];
# DEBUG linCurrentState => linCurrentState_17
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
pUserConfig_18 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_16(D)];
# DEBUG pUserConfig => pUserConfig_18
# DEBUG BEGIN_STMT
_1 = linCurrentState_17->cntByte;
_2 ={v} linCurrentState_17->rxSize;
_3 = _2 + 255;
_4 = linCurrentState_17->rxBuff;
retVal_20 = Lpuart_Lin_Ip_GetBytetoBuffer (_1, _3, _4, u32Instance_16(D));
# DEBUG retVal => retVal_20
# DEBUG BEGIN_STMT
_5 = linCurrentState_17->cntByte;
_6 ={v} linCurrentState_17->rxSize;
if (_5 < _6)
goto <bb 3>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
_7 = _5 + 1;
linCurrentState_17->cntByte = _7;
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
if (retVal_20 == 0)
goto <bb 5>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
_8 ={v} linCurrentState_17->rxSize;
_9 = linCurrentState_17->cntByte;
if (_8 == _9)
goto <bb 6>; [34.00%]
else
goto <bb 11>; [66.00%]
<bb 6> [local count: 182536110]:
# DEBUG BEGIN_STMT
_10 = pUserConfig_18->Callback;
if (_10 != 0B)
goto <bb 7>; [70.00%]
else
goto <bb 11>; [30.00%]
<bb 7> [local count: 127775277]:
# DEBUG BEGIN_STMT
_10 (u32Instance_16(D), linCurrentState_17);
goto <bb 11>; [100.00%]
<bb 8> [local count: 536870913]:
# DEBUG BEGIN_STMT
_11 = pUserConfig_18->Callback;
if (_11 != 0B)
goto <bb 9>; [70.00%]
else
goto <bb 10>; [30.00%]
<bb 9> [local count: 375809639]:
# DEBUG BEGIN_STMT
_11 (u32Instance_16(D), linCurrentState_17);
<bb 10> [local count: 536870913]:
# DEBUG BEGIN_STMT
linCurrentState_17->isRxBusy ={v} 0;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_16(D));
<bb 11> [local count: 1073741824]:
return;
}
Lpuart_Lin_Ip_ProcessFrameHeader (const uint32 u32Instance, const uint8 tmpByte)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
struct LPUART_Type * base;
<unnamed type> _1;
void (*<T2e6>) (uint32, void *) _2;
unsigned char _3;
void (*<T2e6>) (uint32, void *) _4;
_Bool _5;
unsigned char _6;
void (*<T2e6>) (uint32, void *) _7;
void (*<T2e6>) (uint32, void *) _8;
unsigned char _9;
void (*<T2e6>) (uint32, void *) _10;
void (*<T2e6>) (uint32, void *) _11;
<bb 2> [local count: 1073741823]:
# DEBUG BEGIN_STMT
base_17 = Lpuart_Lin_Ip_apxBases[u32Instance_16(D)];
# DEBUG base => base_17
# DEBUG BEGIN_STMT
pUserConfig_18 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_16(D)];
# DEBUG pUserConfig => pUserConfig_18
# DEBUG BEGIN_STMT
linCurrentState_19 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_16(D)];
# DEBUG linCurrentState => linCurrentState_19
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_19->currentNodeState;
switch (_1) <default: <L32> [25.00%], case 4: <L0> [25.00%], case 5: <L6> [25.00%], case 6: <L12> [25.00%]>
<bb 3> [local count: 268435456]:
<L0>:
# DEBUG BEGIN_STMT
if (tmpByte_20(D) == 85)
goto <bb 4>; [34.00%]
else
goto <bb 5>; [66.00%]
<bb 4> [local count: 91268055]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentEventId ={v} 4;
# DEBUG BEGIN_STMT
linCurrentState_19->currentNodeState ={v} 6;
goto <bb 24>; [100.00%]
<bb 5> [local count: 177167401]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentEventId ={v} 5;
# DEBUG BEGIN_STMT
_2 = pUserConfig_18->Callback;
if (_2 != 0B)
goto <bb 6>; [70.00%]
else
goto <bb 7>; [30.00%]
<bb 6> [local count: 124017180]:
# DEBUG BEGIN_STMT
_2 (u32Instance_16(D), linCurrentState_19);
<bb 7> [local count: 177167401]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_16(D));
goto <bb 24>; [100.00%]
<bb 8> [local count: 268435456]:
<L6>:
# DEBUG BEGIN_STMT
if (tmpByte_20(D) == 85)
goto <bb 9>; [34.00%]
else
goto <bb 10>; [66.00%]
<bb 9> [local count: 91268055]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentNodeState ={v} 6;
# DEBUG BEGIN_STMT
_3 = linCurrentState_19->currentPid;
# DEBUG base => base_17
# DEBUG data => _3
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwPutchar
# DEBUG BEGIN_STMT
# DEBUG D#1 => &base_17->DATA
# DEBUG dataRegBytes => D#1
# DEBUG BEGIN_STMT
MEM[(volatile uint8 *)base_17 + 28B] ={v} _3;
goto <bb 24>; [100.00%]
<bb 10> [local count: 177167401]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentEventId ={v} 9;
# DEBUG BEGIN_STMT
linCurrentState_19->isBusBusy ={v} 0;
# DEBUG BEGIN_STMT
_4 = pUserConfig_18->Callback;
if (_4 != 0B)
goto <bb 11>; [70.00%]
else
goto <bb 24>; [30.00%]
<bb 11> [local count: 124017180]:
# DEBUG BEGIN_STMT
_4 (u32Instance_16(D), linCurrentState_19);
goto <bb 24>; [100.00%]
<bb 12> [local count: 268435456]:
<L12>:
# DEBUG BEGIN_STMT
_5 = pUserConfig_18->nodeFunction;
if (_5 != 0)
goto <bb 13>; [67.00%]
else
goto <bb 18>; [33.00%]
<bb 13> [local count: 179851755]:
# DEBUG BEGIN_STMT
_6 = linCurrentState_19->currentPid;
if (_6 == tmpByte_20(D))
goto <bb 14>; [34.00%]
else
goto <bb 16>; [66.00%]
<bb 14> [local count: 61149597]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentEventId ={v} 6;
# DEBUG BEGIN_STMT
linCurrentState_19->isBusBusy ={v} 0;
# DEBUG BEGIN_STMT
_7 = pUserConfig_18->Callback;
if (_7 != 0B)
goto <bb 15>; [70.00%]
else
goto <bb 24>; [30.00%]
<bb 15> [local count: 42804718]:
# DEBUG BEGIN_STMT
_7 (u32Instance_16(D), linCurrentState_19);
goto <bb 24>; [100.00%]
<bb 16> [local count: 118702158]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentEventId ={v} 9;
# DEBUG BEGIN_STMT
linCurrentState_19->isBusBusy ={v} 0;
# DEBUG BEGIN_STMT
_8 = pUserConfig_18->Callback;
if (_8 != 0B)
goto <bb 17>; [70.00%]
else
goto <bb 24>; [30.00%]
<bb 17> [local count: 83091511]:
# DEBUG BEGIN_STMT
_8 (u32Instance_16(D), linCurrentState_19);
goto <bb 24>; [100.00%]
<bb 18> [local count: 88583700]:
# DEBUG BEGIN_STMT
_9 = Lin_Ip_ProcessParity (tmpByte_20(D), 0);
linCurrentState_19->currentId = _9;
# DEBUG BEGIN_STMT
linCurrentState_19->currentPid = tmpByte_20(D);
# DEBUG BEGIN_STMT
if (_9 != 255)
goto <bb 19>; [66.00%]
else
goto <bb 21>; [34.00%]
<bb 19> [local count: 58465242]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentEventId ={v} 6;
# DEBUG BEGIN_STMT
linCurrentState_19->isBusBusy ={v} 0;
# DEBUG BEGIN_STMT
_10 = pUserConfig_18->Callback;
if (_10 != 0B)
goto <bb 20>; [70.00%]
else
goto <bb 24>; [30.00%]
<bb 20> [local count: 40925670]:
# DEBUG BEGIN_STMT
_10 (u32Instance_16(D), linCurrentState_19);
goto <bb 24>; [100.00%]
<bb 21> [local count: 30118458]:
# DEBUG BEGIN_STMT
linCurrentState_19->currentEventId ={v} 7;
# DEBUG BEGIN_STMT
_11 = pUserConfig_18->Callback;
if (_11 != 0B)
goto <bb 22>; [70.00%]
else
goto <bb 23>; [30.00%]
<bb 22> [local count: 21082921]:
# DEBUG BEGIN_STMT
_11 (u32Instance_16(D), linCurrentState_19);
<bb 23> [local count: 30118458]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_16(D));
<bb 24> [local count: 1073741824]:
<L32>:
# DEBUG base => NULL
# DEBUG data => NULL
return;
}
Lpuart_Lin_Ip_FrameIrqHandler (const uint32 u32Instance)
{
const struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct LPUART_Type * base;
_Bool _1;
_Bool _2;
<unnamed type> _3;
long unsigned int _14;
unsigned char _15;
long unsigned int _16;
unsigned char _17;
long unsigned int _18;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
base_7 = Lpuart_Lin_Ip_apxBases[u32Instance_6(D)];
# DEBUG base => base_7
# DEBUG BEGIN_STMT
linCurrentState_8 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_6(D)];
# DEBUG linCurrentState => linCurrentState_8
# DEBUG BEGIN_STMT
_1 = Lpuart_Lin_Ip_HwGetStatusFlag (base_7, 131093);
if (_1 != 0)
goto <bb 3>; [33.00%]
else
goto <bb 9>; [67.00%]
<bb 3> [local count: 354334802]:
_2 = Lpuart_Lin_Ip_HwGetIntMode (base_7, 196629);
if (_2 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 4> [local count: 177167401]:
# DEBUG BEGIN_STMT
_3 ={v} linCurrentState_8->currentNodeState;
switch (_3) <default: <L13> [25.00%], case 4 ... 6: <L11> [25.00%], case 7: <L5> [25.00%], case 9: <L12> [25.00%]>
<bb 5> [local count: 44291850]:
<L11>:
# DEBUG BEGIN_STMT
# DEBUG base => base_7
# DEBUG readData => &tmpByte
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_14 ={v} base_7->DATA;
_15 = (unsigned char) _14;
# DEBUG tmpByte => _15
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_ProcessFrameHeader (u32Instance_6(D), _15);
# DEBUG BEGIN_STMT
goto <bb 9>; [100.00%]
<bb 6> [local count: 44291850]:
<L5>:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_ProcessReceiveFrameData (u32Instance_6(D));
# DEBUG BEGIN_STMT
goto <bb 9>; [100.00%]
<bb 7> [local count: 44291850]:
<L12>:
# DEBUG BEGIN_STMT
# DEBUG base => base_7
# DEBUG readData => &tmpByte
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_16 ={v} base_7->DATA;
_17 = (unsigned char) _16;
# DEBUG tmpByte => _17
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_ProcessSendFrameData (u32Instance_6(D), _17);
# DEBUG BEGIN_STMT
goto <bb 9>; [100.00%]
<bb 8> [local count: 44291850]:
<L13>:
# DEBUG BEGIN_STMT
# DEBUG base => base_7
# DEBUG readData => &tmpByte
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_18 ={v} base_7->DATA;
# DEBUG tmpByte => (unsigned char) _18
<bb 9> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG D#6 => {CLOBBER}
# DEBUG tmpByte => D#6
return;
}
Lpuart_Lin_Ip_CheckWakeupSignal (const uint32 u32Instance)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
uint32 wakeupSignalLength;
uint32 (*<T2e1>) (uint32, uint32 *) _1;
uint32 (*<T2e1>) (uint32, uint32 *) _2;
long unsigned int wakeupSignalLength.24_3;
void (*<T2e6>) (uint32, void *) _4;
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;
long unsigned int _26;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
wakeupSignalLength = 0;
# DEBUG BEGIN_STMT
pUserConfig_10 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_9(D)];
# DEBUG pUserConfig => pUserConfig_10
# DEBUG BEGIN_STMT
base_11 = Lpuart_Lin_Ip_apxBases[u32Instance_9(D)];
# DEBUG base => base_11
# DEBUG BEGIN_STMT
linCurrentState_12 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_9(D)];
# DEBUG linCurrentState => linCurrentState_12
# DEBUG BEGIN_STMT
# DEBUG base => base_11
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetRxDataPolarity
# DEBUG BEGIN_STMT
_19 ={v} MEM[(const struct LPUART_Type *)base_11].STAT;
_20 = _19 >> 28;
_21 = (_Bool) _20;
# DEBUG base => NULL
if (_21 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
_1 = pUserConfig_10->timerGetTimeIntervalCallback;
_1 (u32Instance_9(D), &wakeupSignalLength);
# DEBUG BEGIN_STMT
# DEBUG base => base_11
# DEBUG polarity => 1
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwSetRxDataPolarity
# DEBUG BEGIN_STMT
_22 ={v} base_11->STAT;
_23 = _22 & 803225599;
_24 = _23 | 268435456;
base_11->STAT ={v} _24;
goto <bb 8>; [100.00%]
<bb 4> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG base => base_11
# DEBUG polarity => 0
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwSetRxDataPolarity
# DEBUG BEGIN_STMT
_25 ={v} base_11->STAT;
_26 = _25 & 803225599;
base_11->STAT ={v} _26;
# DEBUG base => NULL
# DEBUG polarity => NULL
# DEBUG BEGIN_STMT
_2 = pUserConfig_10->timerGetTimeIntervalCallback;
_2 (u32Instance_9(D), &wakeupSignalLength);
# DEBUG BEGIN_STMT
wakeupSignalLength.24_3 = wakeupSignalLength;
if (wakeupSignalLength.24_3 > 149999)
goto <bb 5>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 5> [local count: 268435456]:
# DEBUG BEGIN_STMT
linCurrentState_12->currentEventId ={v} 1;
# DEBUG BEGIN_STMT
_4 = pUserConfig_10->Callback;
if (_4 != 0B)
goto <bb 6>; [70.00%]
else
goto <bb 7>; [30.00%]
<bb 6> [local count: 187904819]:
# DEBUG BEGIN_STMT
_4 (u32Instance_9(D), linCurrentState_12);
<bb 7> [local count: 268435456]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_9(D));
<bb 8> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG polarity => NULL
wakeupSignalLength ={v} {CLOBBER};
return;
}
Lpuart_Lin_Ip_ProcessBreakDetect (const uint32 u32Instance)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
_Bool _1;
<unnamed type> _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
_Bool _6;
long unsigned int _7;
long unsigned int _8;
long unsigned int _9;
long unsigned int _29;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
pUserConfig_14 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_13(D)];
# DEBUG pUserConfig => pUserConfig_14
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
base_15 = Lpuart_Lin_Ip_apxBases[u32Instance_13(D)];
# DEBUG base => base_15
# DEBUG BEGIN_STMT
linCurrentState_16 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_13(D)];
# DEBUG linCurrentState => linCurrentState_16
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_15, 131103);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (base_15, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_15, 65551, 0);
# DEBUG BEGIN_STMT
# DEBUG base => base_15
# DEBUG readData => &discardData
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_29 ={v} MEM[(const struct LPUART_Type *)base_15].DATA;
# DEBUG discardData => (unsigned char) _29
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_15, 196629, 1);
# DEBUG BEGIN_STMT
_1 = pUserConfig_14->nodeFunction;
if (_1 != 0)
goto <bb 3>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
_2 ={v} linCurrentState_16->currentNodeState;
if (_2 == 3)
goto <bb 4>; [34.00%]
else
goto <bb 8>; [66.00%]
<bb 4> [local count: 182536110]:
# DEBUG BEGIN_STMT
_3 = pUserConfig_14->u32HeaderTimeoutValue;
_4 = _3 / 500;
_5 = _4 + 1;
# DEBUG u32Instance => u32Instance_13(D)
# DEBUG u32TimeoutValue => _5
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_SetTimeoutCounter
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_30 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_13(D)];
# DEBUG linCurrentState => linCurrentState_30
# DEBUG BEGIN_STMT
linCurrentState_30->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_30->timeoutCounter ={v} _5;
# DEBUG u32Instance => NULL
# DEBUG u32TimeoutValue => NULL
# DEBUG linCurrentState => NULL
# DEBUG BEGIN_STMT
linCurrentState_16->currentNodeState ={v} 5;
# DEBUG BEGIN_STMT
# DEBUG base => base_15
# DEBUG data => 85
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwPutchar
# DEBUG BEGIN_STMT
# DEBUG D#1 => &base_15->DATA
# DEBUG dataRegBytes => D#1
# DEBUG BEGIN_STMT
MEM[(volatile uint8 *)base_15 + 28B] ={v} 85;
goto <bb 8>; [100.00%]
<bb 5> [local count: 536870913]:
# DEBUG BEGIN_STMT
linCurrentState_16->isBusBusy ={v} 1;
# DEBUG BEGIN_STMT
linCurrentState_16->currentEventId ={v} 3;
# DEBUG BEGIN_STMT
linCurrentState_16->currentNodeState ={v} 4;
# DEBUG BEGIN_STMT
_6 ={v} linCurrentState_16->baudrateEvalEnable;
if (_6 != 0)
goto <bb 6>; [33.00%]
else
goto <bb 7>; [67.00%]
<bb 6> [local count: 177167401]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_15, 65550, 1);
# DEBUG BEGIN_STMT
linCurrentState_16->fallingEdgeInterruptCount ={v} 0;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetTransmitterCmd (base_15, 1);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetReceiverCmd (base_15, 1);
<bb 7> [local count: 536870913]:
# DEBUG BEGIN_STMT
_7 = pUserConfig_14->u32HeaderTimeoutValue;
_8 = _7 / 500;
_9 = _8 + 1;
# DEBUG u32Instance => u32Instance_13(D)
# DEBUG u32TimeoutValue => _9
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_SetTimeoutCounter
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_31 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_13(D)];
# DEBUG linCurrentState => linCurrentState_31
# DEBUG BEGIN_STMT
linCurrentState_31->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_31->timeoutCounter ={v} _9;
<bb 8> [local count: 1073741824]:
# DEBUG u32Instance => NULL
# DEBUG u32TimeoutValue => NULL
# DEBUG linCurrentState => NULL
# DEBUG base => NULL
# DEBUG data => NULL
# DEBUG D#4 => {CLOBBER}
# DEBUG discardData => D#4
return;
}
Lpuart_Lin_Ip_IRQHandler (const uint32 u32Instance)
{
boolean bSpuriousIntAvailable;
boolean activeEdgeIntState;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
_Bool _1;
_Bool _2;
_Bool _3;
_Bool _4;
_Bool _5;
_Bool _6;
_Bool _7;
_Bool _8;
_Bool _9;
void (*<T2e6>) (uint32, void *) _10;
int iftmp.23_12;
<bb 2> [local count: 1073741823]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG bSpuriousIntAvailable => 0
# DEBUG BEGIN_STMT
pUserConfig_21 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_20(D)];
# DEBUG pUserConfig => pUserConfig_21
# DEBUG BEGIN_STMT
base_22 = Lpuart_Lin_Ip_apxBases[u32Instance_20(D)];
# DEBUG base => base_22
# DEBUG BEGIN_STMT
linCurrentState_23 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_20(D)];
# DEBUG linCurrentState => linCurrentState_23
# DEBUG BEGIN_STMT
activeEdgeIntState_25 = Lpuart_Lin_Ip_HwGetIntMode (base_22, 65550);
# DEBUG activeEdgeIntState => activeEdgeIntState_25
# DEBUG BEGIN_STMT
if (linCurrentState_23 == 0B)
goto <bb 3>; [30.00%]
else
goto <bb 4>; [70.00%]
<bb 3> [local count: 322122547]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_22, 0);
goto <bb 23>; [100.00%]
<bb 4> [local count: 751619277]:
# DEBUG BEGIN_STMT
_1 = Lpuart_Lin_Ip_HwGetStatusFlag (base_22, 131103);
if (_1 != 0)
goto <bb 5>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 5> [local count: 375809638]:
_2 = Lpuart_Lin_Ip_HwGetIntMode (base_22, 65551);
if (_2 != 0)
goto <bb 6>; [33.00%]
else
goto <bb 7>; [67.00%]
<bb 6> [local count: 124017180]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_ProcessBreakDetect (u32Instance_20(D));
goto <bb 17>; [100.00%]
<bb 7> [local count: 627602097]:
# DEBUG BEGIN_STMT
_3 = Lpuart_Lin_Ip_HwGetStatusFlag (base_22, 131102);
if (_3 != 0)
goto <bb 8>; [67.00%]
else
goto <bb 10>; [33.00%]
<bb 8> [local count: 420493404]:
if (activeEdgeIntState_25 != 0)
goto <bb 9>; [33.00%]
else
goto <bb 10>; [67.00%]
<bb 9> [local count: 138762824]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_ProcessWakeupDetect (u32Instance_20(D));
goto <bb 17>; [100.00%]
<bb 10> [local count: 488839272]:
# DEBUG BEGIN_STMT
_4 = Lpuart_Lin_Ip_HwGetStatusFlag (base_22, 131089);
if (_4 != 0)
goto <bb 11>; [50.00%]
else
goto <bb 13>; [50.00%]
<bb 11> [local count: 244419636]:
_5 = Lpuart_Lin_Ip_HwGetIntMode (base_22, 196633);
if (_5 != 0)
goto <bb 12>; [33.00%]
else
goto <bb 13>; [67.00%]
<bb 12> [local count: 80658480]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_FrameErrorIrqHandler (u32Instance_20(D));
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_20(D));
goto <bb 17>; [100.00%]
<bb 13> [local count: 408180792]:
# DEBUG BEGIN_STMT
_6 = Lpuart_Lin_Ip_HwGetStatusFlag (base_22, 131093);
if (_6 != 0)
goto <bb 14>; [33.00%]
else
goto <bb 16>; [67.00%]
<bb 14> [local count: 134699661]:
_7 = Lpuart_Lin_Ip_HwGetIntMode (base_22, 196629);
if (_7 != 0)
goto <bb 16>; [50.00%]
else
goto <bb 24>; [50.00%]
<bb 24> [local count: 67349831]:
<bb 16> [local count: 408180791]:
# iftmp.23_12 = PHI <1(14), 0(24), 0(13)>
bSpuriousIntAvailable_37 = (boolean) iftmp.23_12;
# DEBUG bSpuriousIntAvailable => bSpuriousIntAvailable_37
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_FrameIrqHandler (u32Instance_20(D));
<bb 17> [local count: 751619277]:
# bSpuriousIntAvailable_11 = PHI <0(6), 0(9), 0(12), bSpuriousIntAvailable_37(16)>
# DEBUG bSpuriousIntAvailable => bSpuriousIntAvailable_11
# DEBUG BEGIN_STMT
_8 = Lpuart_Lin_Ip_HwGetStatusFlag (base_22, 131091);
if (_8 != 0)
goto <bb 18>; [33.00%]
else
goto <bb 21>; [67.00%]
<bb 18> [local count: 248034361]:
_9 = Lpuart_Lin_Ip_HwGetIntMode (base_22, 196635);
if (_9 != 0)
goto <bb 19>; [33.00%]
else
goto <bb 21>; [67.00%]
<bb 19> [local count: 81851339]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_22, 131091);
# DEBUG BEGIN_STMT
linCurrentState_23->currentEventId ={v} 13;
# DEBUG BEGIN_STMT
_10 = pUserConfig_21->Callback;
if (_10 != 0B)
goto <bb 20>; [70.00%]
else
goto <bb 23>; [30.00%]
<bb 20> [local count: 57295937]:
# DEBUG BEGIN_STMT
_10 (u32Instance_20(D), linCurrentState_23);
goto <bb 23>; [100.00%]
<bb 21> [local count: 669767938]:
# DEBUG BEGIN_STMT
if (bSpuriousIntAvailable_11 != 0)
goto <bb 22>; [33.00%]
else
goto <bb 23>; [67.00%]
<bb 22> [local count: 221023419]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_22, 0);
<bb 23> [local count: 1073741824]:
return;
}
Lpuart_Lin_Ip_GotoIdleState (const uint32 u32Instance)
{
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
_Bool _1;
unsigned char _2;
long unsigned int _22;
long unsigned int _23;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_6 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_5(D)];
# DEBUG linCurrentState => linCurrentState_6
# DEBUG BEGIN_STMT
base_7 = Lpuart_Lin_Ip_apxBases[u32Instance_5(D)];
# DEBUG base => base_7
# DEBUG BEGIN_STMT
pUserConfig_8 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_5(D)];
# DEBUG pUserConfig => pUserConfig_8
# DEBUG BEGIN_STMT
linCurrentState_6->currentEventId ={v} 0;
# DEBUG BEGIN_STMT
# DEBUG base => base_7
# DEBUG polarity => 0
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwSetRxDataPolarity
# DEBUG BEGIN_STMT
_22 ={v} base_7->STAT;
_23 = _22 & 803225599;
base_7->STAT ={v} _23;
# DEBUG base => NULL
# DEBUG polarity => NULL
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_7, 65550, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_7, 196633, 1);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_7, 196629, 0);
# DEBUG BEGIN_STMT
_1 = pUserConfig_8->nodeFunction;
if (_1 != 0)
goto <bb 4>; [67.00%]
else
goto <bb 3>; [33.00%]
<bb 3> [local count: 354334802]:
# DEBUG BEGIN_STMT
_2 = pUserConfig_8->u8BreakLengthDetect;
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (base_7, _2);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_7, 65551, 1);
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_02 ();
# DEBUG BEGIN_STMT
linCurrentState_6->currentNodeState ={v} 2;
# DEBUG BEGIN_STMT
linCurrentState_6->isBusBusy ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_6->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_6->isRxBusy ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_6->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_02 ();
return;
}
Lpuart_Lin_Ip_MasterSendHeader (const uint32 u32Instance, const uint8 u8Id)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
Lpuart_Lin_Ip_StatusType retVal;
<unnamed type> _1;
_Bool _2;
_Bool _3;
unsigned char _4;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
pUserConfig_9 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_8(D)];
# DEBUG pUserConfig => pUserConfig_9
# DEBUG BEGIN_STMT
base_10 = Lpuart_Lin_Ip_apxBases[u32Instance_8(D)];
# DEBUG base => base_10
# DEBUG BEGIN_STMT
linCurrentState_11 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)];
# DEBUG linCurrentState => linCurrentState_11
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_11->currentNodeState;
# DEBUG checkSleepMode => _1 == 1
# DEBUG BEGIN_STMT
_2 = pUserConfig_9->nodeFunction;
if (_2 != 0)
goto <bb 3>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 3> [local count: 536870913]:
if (u8Id_12(D) > 63)
goto <bb 7>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 4> [local count: 268435456]:
if (_1 == 1)
goto <bb 7>; [34.00%]
else
goto <bb 5>; [66.00%]
<bb 5> [local count: 177167401]:
# DEBUG BEGIN_STMT
_3 ={v} linCurrentState_11->isBusBusy;
if (_3 != 0)
goto <bb 7>; [52.23%]
else
goto <bb 6>; [47.77%]
<bb 6> [local count: 84632867]:
# DEBUG BEGIN_STMT
linCurrentState_11->currentId = u8Id_12(D);
# DEBUG BEGIN_STMT
_4 = Lin_Ip_ProcessParity (u8Id_12(D), 1);
linCurrentState_11->currentPid = _4;
# DEBUG BEGIN_STMT
linCurrentState_11->currentNodeState ={v} 3;
# DEBUG BEGIN_STMT
linCurrentState_11->currentEventId ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_11->isBusBusy ={v} 1;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (base_10, 1);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_10, 65551, 1);
# DEBUG BEGIN_STMT
# DEBUG base => base_10
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwQueueBreakField
# DEBUG BEGIN_STMT
base_10->DATA ={v} 8192;
<bb 7> [local count: 1073741824]:
# retVal_5 = PHI <1(3), 2(5), 0(6), 1(2), 1(4)>
# DEBUG base => NULL
# DEBUG retVal => retVal_5
# DEBUG BEGIN_STMT
return retVal_5;
}
Lpuart_Lin_Ip_SetTimeoutCounter (const uint32 u32Instance, const uint32 u32TimeoutValue)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_3 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_2(D)];
# DEBUG linCurrentState => linCurrentState_3
# DEBUG BEGIN_STMT
linCurrentState_3->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_3->timeoutCounter ={v} u32TimeoutValue_5(D);
return;
}
Lpuart_Lin_Ip_TimeoutService (const uint32 u32Instance)
{
Lpuart_Lin_Ip_NodeStateType state;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
long unsigned int _1;
void (*<T2e6>) (uint32, void *) _2;
long unsigned int _3;
long unsigned int _4;
_Bool _5;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_9 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)];
# DEBUG linCurrentState => linCurrentState_9
# DEBUG BEGIN_STMT
pUserConfig_10 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_8(D)];
# DEBUG pUserConfig => pUserConfig_10
# DEBUG BEGIN_STMT
state_11 ={v} linCurrentState_9->currentNodeState;
# DEBUG state => state_11
# DEBUG BEGIN_STMT
switch (state_11) <default: <L14> [50.00%], case 4 ... 7: <L0> [50.00%], case 9: <L0> [50.00%]>
<bb 3> [local count: 536870913]:
<L0>:
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_9->timeoutCounter;
if (_1 == 0)
goto <bb 4>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 4> [local count: 268435456]:
# DEBUG BEGIN_STMT
linCurrentState_9->timeoutCounterFlag ={v} 1;
# DEBUG BEGIN_STMT
linCurrentState_9->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_9->currentEventId ={v} 14;
# DEBUG BEGIN_STMT
_2 = pUserConfig_10->Callback;
if (_2 != 0B)
goto <bb 5>; [70.00%]
else
goto <bb 7>; [30.00%]
<bb 5> [local count: 187904819]:
# DEBUG BEGIN_STMT
_2 (u32Instance_8(D), linCurrentState_9);
goto <bb 7>; [100.00%]
<bb 6> [local count: 268435456]:
# DEBUG BEGIN_STMT
_3 ={v} linCurrentState_9->timeoutCounter;
_4 = _3 + 4294967295;
linCurrentState_9->timeoutCounter ={v} _4;
<bb 7> [local count: 1073741824]:
<L14>:
# DEBUG BEGIN_STMT
_5 ={v} linCurrentState_9->timeoutCounterFlag;
# DEBUG BEGIN_STMT
return;
}
Lpuart_Lin_Ip_GetCurrentNodeState (const uint32 u32Instance)
{
const struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
Lpuart_Lin_Ip_NodeStateType retVal;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_4 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_3(D)];
# DEBUG linCurrentState => linCurrentState_4
# DEBUG BEGIN_STMT
if (linCurrentState_4 != 0B)
goto <bb 3>; [70.00%]
else
goto <bb 4>; [30.00%]
<bb 3> [local count: 751619278]:
# DEBUG BEGIN_STMT
retVal_5 ={v} linCurrentState_4->currentNodeState;
# DEBUG retVal => retVal_5
<bb 4> [local count: 1073741824]:
# retVal_1 = PHI <0(2), retVal_5(3)>
# DEBUG retVal => retVal_1
# DEBUG BEGIN_STMT
return retVal_1;
}
Lpuart_Lin_Ip_SendWakeupSignal (const uint32 u32Instance)
{
Lpuart_Lin_Ip_StatusType retVal;
const struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
_Bool _1;
unsigned char _2;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
linCurrentState_7 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_6(D)];
# DEBUG linCurrentState => linCurrentState_7
# DEBUG BEGIN_STMT
base_8 = Lpuart_Lin_Ip_apxBases[u32Instance_6(D)];
# DEBUG base => base_8
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_7->isBusBusy;
if (_1 != 0)
goto <bb 4>; [35.00%]
else
goto <bb 3>; [65.00%]
<bb 3> [local count: 697932186]:
# DEBUG BEGIN_STMT
_2 = Lpuart_Lin_Ip_au8WakeupSignal[u32Instance_6(D)];
# DEBUG base => base_8
# DEBUG data => _2
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwPutchar
# DEBUG BEGIN_STMT
# DEBUG D#1 => &base_8->DATA
# DEBUG dataRegBytes => D#1
# DEBUG BEGIN_STMT
MEM[(volatile uint8 *)base_8 + 28B] ={v} _2;
<bb 4> [local count: 1073741824]:
# retVal_3 = PHI <0(3), 2(2)>
# DEBUG base => NULL
# DEBUG data => NULL
# DEBUG retVal => retVal_3
# DEBUG BEGIN_STMT
return retVal_3;
}
Lpuart_Lin_Ip_GoToSleepMode (const uint32 u32Instance)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
long unsigned int _14;
long unsigned int _15;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_3 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_2(D)];
# DEBUG linCurrentState => linCurrentState_3
# DEBUG BEGIN_STMT
base_4 = Lpuart_Lin_Ip_apxBases[u32Instance_2(D)];
# DEBUG base => base_4
# DEBUG BEGIN_STMT
linCurrentState_3->currentNodeState ={v} 1;
# DEBUG BEGIN_STMT
linCurrentState_3->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_3->isRxBusy ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_3->isBusBusy ={v} 0;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_4, 131102);
# DEBUG BEGIN_STMT
# DEBUG base => base_4
# DEBUG polarity => 0
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwSetRxDataPolarity
# DEBUG BEGIN_STMT
_14 ={v} base_4->STAT;
_15 = _14 & 803225599;
base_4->STAT ={v} _15;
# DEBUG base => NULL
# DEBUG polarity => NULL
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_4, 196629, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_4, 65550, 1);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_4, 196633, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_4, 65551, 0);
return;
}
Lpuart_Lin_Ip_GetReceiveStatus (const uint32 u32Instance, uint8 * const pBytesRemaining)
{
Lpuart_Lin_Ip_StatusType retVal;
const struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
unsigned char _1;
unsigned char _2;
unsigned char _3;
<unnamed type> _4;
_Bool _5;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
linCurrentState_9 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)];
# DEBUG linCurrentState => linCurrentState_9
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_9->rxSize;
_2 = linCurrentState_9->cntByte;
_3 = _1 - _2;
*pBytesRemaining_10(D) = _3;
# DEBUG BEGIN_STMT
_4 ={v} linCurrentState_9->currentEventId;
if (_4 == 0)
goto <bb 3>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 3> [local count: 536870913]:
if (_3 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 4> [local count: 268435456]:
# DEBUG BEGIN_STMT
_5 ={v} linCurrentState_9->timeoutCounterFlag;
if (_5 != 0)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 134217728]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 3
<bb 6> [local count: 1073741824]:
# retVal_6 = PHI <0(2), 0(3), 2(4), 3(5)>
# DEBUG retVal => retVal_6
# DEBUG BEGIN_STMT
return retVal_6;
}
Lpuart_Lin_Ip_AbortTransferData (const uint32 u32Instance)
{
uint32 timeoutTicks;
uint32 startTime;
struct LPUART_Type * base;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
_Bool _1;
long unsigned int startTime.20_2;
long unsigned int timeoutTicks.21_3;
_Bool _4;
<bb 2> [local count: 114863532]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_9 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)];
# DEBUG linCurrentState => linCurrentState_9
# DEBUG BEGIN_STMT
base_10 = Lpuart_Lin_Ip_apxBases[u32Instance_8(D)];
# DEBUG base => base_10
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_10, 196629, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_10, 196633, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_10, 65551, 0);
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_StartTimeout (&startTime, &timeoutTicks, 65535, 0);
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = Lpuart_Lin_Ip_HwGetStatusFlag (base_10, 131094);
if (_1 != 0)
goto <bb 5>; [5.50%]
else
goto <bb 4>; [94.50%]
<bb 4> [local count: 1014686025]:
# DEBUG BEGIN_STMT
startTime.20_2 = startTime;
timeoutTicks.21_3 = timeoutTicks;
_4 = Lpuart_Lin_Ip_TimeoutExpired (startTime.20_2, timeoutTicks.21_3, 0);
if (_4 != 0)
goto <bb 5>; [5.50%]
else
goto <bb 6>; [94.50%]
<bb 6> [local count: 958878293]:
goto <bb 3>; [100.00%]
<bb 5> [local count: 114863532]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_8(D));
# DEBUG BEGIN_STMT
linCurrentState_9->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_9->isRxBusy ={v} 0;
startTime ={v} {CLOBBER};
timeoutTicks ={v} {CLOBBER};
return;
}
Lpuart_Lin_Ip_SyncReceiveFrameData (const uint32 u32Instance, uint8 * pRxBuff, const uint8 u8RxSize)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
uint32 startTime;
uint32 timeoutTicks;
uint8 byteCnt;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
volatile Lpuart_Lin_Ip_StatusType retVal;
<unnamed type> _1;
<unnamed type> retVal.13_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 _9;
long unsigned int startTime.14_10;
long unsigned int timeoutTicks.15_11;
_Bool _12;
<unnamed type> _13;
<unnamed type> retVal.16_14;
<unnamed type> _15;
<unnamed type> retVal.17_16;
Lpuart_Lin_Ip_StatusType _47;
<bb 2> [local count: 37234929]:
# DEBUG BEGIN_STMT
retVal ={v} 0;
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG byteCnt => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_26 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_25(D)];
# DEBUG linCurrentState => linCurrentState_26
# DEBUG BEGIN_STMT
base_27 = Lpuart_Lin_Ip_apxBases[u32Instance_25(D)];
# DEBUG base => base_27
# DEBUG BEGIN_STMT
_1 = Lpuart_Lin_Ip_StatusBeforeTransfer (u8RxSize_28(D), linCurrentState_26);
retVal ={v} _1;
# DEBUG BEGIN_STMT
retVal.13_2 ={v} retVal;
if (retVal.13_2 != 0)
goto <bb 16>; [67.00%]
else
goto <bb 3>; [33.00%]
<bb 3> [local count: 12287527]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_27, 196629, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_27, 65551, 0);
# DEBUG BEGIN_STMT
linCurrentState_26->currentEventId ={v} 0;
<bb 4> [local count: 114863532]:
# byteCnt_17 = PHI <0(3), byteCnt_45(17)>
# DEBUG byteCnt => byteCnt_17
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
pUserConfig_34 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_25(D)];
# DEBUG pUserConfig => pUserConfig_34
# DEBUG BEGIN_STMT
_3 = pUserConfig_34->u32ResponseTimeoutValue;
_4 = (long unsigned int) u8RxSize_28(D);
_5 = _4 + 1;
_6 = _3 * _5;
_7 = _6 / 500;
_8 = _7 + 1;
# DEBUG u32Instance => u32Instance_25(D)
# DEBUG u32TimeoutValue => _8
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_SetTimeoutCounter
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_50 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_25(D)];
# DEBUG linCurrentState => linCurrentState_50
# DEBUG BEGIN_STMT
linCurrentState_50->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_50->timeoutCounter ={v} _8;
# DEBUG u32Instance => NULL
# DEBUG u32TimeoutValue => NULL
# DEBUG linCurrentState => NULL
# DEBUG BEGIN_STMT
retVal ={v} 3;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_StartTimeout (&startTime, &timeoutTicks, 65535, 0);
# DEBUG BEGIN_STMT
goto <bb 7>; [100.00%]
<bb 5> [local count: 1014686025]:
# DEBUG BEGIN_STMT
_9 = Lpuart_Lin_Ip_HwGetStatusFlag (base_27, 131093);
if (_9 != 0)
goto <bb 6>; [5.50%]
else
goto <bb 18>; [94.50%]
<bb 6> [local count: 55807731]:
# DEBUG BEGIN_STMT
retVal ={v} 0;
# DEBUG BEGIN_STMT
goto <bb 8>; [100.00%]
<bb 18> [local count: 958878294]:
<bb 7> [local count: 1073741824]:
# DEBUG BEGIN_STMT
startTime.14_10 = startTime;
timeoutTicks.15_11 = timeoutTicks;
_12 = Lpuart_Lin_Ip_TimeoutExpired (startTime.14_10, timeoutTicks.15_11, 0);
if (_12 != 0)
goto <bb 8>; [5.50%]
else
goto <bb 5>; [94.50%]
<bb 8> [local count: 114863532]:
# DEBUG BEGIN_STMT
_13 ={v} linCurrentState_26->currentEventId;
if (_13 != 0)
goto <bb 9>; [50.00%]
else
goto <bb 10>; [50.00%]
<bb 9> [local count: 57431766]:
# DEBUG BEGIN_STMT
retVal ={v} 1;
goto <bb 13>; [100.00%]
<bb 10> [local count: 57431766]:
# DEBUG BEGIN_STMT
retVal.16_14 ={v} retVal;
if (retVal.16_14 == 0)
goto <bb 11>; [33.00%]
else
goto <bb 12>; [67.00%]
<bb 11> [local count: 18952483]:
# DEBUG BEGIN_STMT
_15 = Lpuart_Lin_Ip_GetBytetoBuffer (byteCnt_17, u8RxSize_28(D), pRxBuff_41(D), u32Instance_25(D));
retVal ={v} _15;
goto <bb 13>; [100.00%]
<bb 12> [local count: 38479283]:
# DEBUG BEGIN_STMT
retVal ={v} 3;
<bb 13> [local count: 114863532]:
# DEBUG BEGIN_STMT
retVal.17_16 ={v} retVal;
if (retVal.17_16 != 0)
goto <bb 15>; [5.50%]
else
goto <bb 14>; [94.50%]
<bb 14> [local count: 108546037]:
# DEBUG BEGIN_STMT
byteCnt_45 = byteCnt_17 + 1;
# DEBUG byteCnt => byteCnt_45
if (byteCnt_17 < u8RxSize_28(D))
goto <bb 17>; [94.50%]
else
goto <bb 15>; [5.50%]
<bb 17> [local count: 102576005]:
goto <bb 4>; [100.00%]
<bb 15> [local count: 12287526]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_25(D));
<bb 16> [local count: 37234929]:
# DEBUG BEGIN_STMT
_47 ={v} retVal;
timeoutTicks ={v} {CLOBBER};
startTime ={v} {CLOBBER};
return _47;
}
Lpuart_Lin_Ip_AsyncReceiveFrameData (const uint32 u32Instance, uint8 * pRxBuff, const uint8 u8RxSize)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
Lpuart_Lin_Ip_StatusType retVal;
unsigned char _1;
long unsigned int _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
long unsigned int _6;
long unsigned int _7;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_11 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_10(D)];
# DEBUG linCurrentState => linCurrentState_11
# DEBUG BEGIN_STMT
base_12 = Lpuart_Lin_Ip_apxBases[u32Instance_10(D)];
# DEBUG base => base_12
# DEBUG BEGIN_STMT
retVal_15 = Lpuart_Lin_Ip_StatusBeforeTransfer (u8RxSize_13(D), linCurrentState_11);
# DEBUG retVal => retVal_15
# DEBUG BEGIN_STMT
if (retVal_15 != 0)
goto <bb 4>; [67.00%]
else
goto <bb 3>; [33.00%]
<bb 3> [local count: 354334802]:
# DEBUG BEGIN_STMT
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_01 ();
# DEBUG BEGIN_STMT
linCurrentState_11->rxBuff = pRxBuff_17(D);
# DEBUG BEGIN_STMT
_1 = u8RxSize_13(D) + 1;
linCurrentState_11->rxSize ={v} _1;
# DEBUG BEGIN_STMT
linCurrentState_11->cntByte = 0;
# DEBUG BEGIN_STMT
linCurrentState_11->currentNodeState ={v} 7;
# DEBUG BEGIN_STMT
linCurrentState_11->currentEventId ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_11->isBusBusy ={v} 1;
# DEBUG BEGIN_STMT
linCurrentState_11->isRxBusy ={v} 1;
# DEBUG BEGIN_STMT
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_01 ();
# DEBUG BEGIN_STMT
pUserConfig_26 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_10(D)];
# DEBUG pUserConfig => pUserConfig_26
# DEBUG BEGIN_STMT
_2 = pUserConfig_26->u32ResponseTimeoutValue;
_3 = (long unsigned int) u8RxSize_13(D);
_4 = _3 + 1;
_5 = _2 * _4;
_6 = _5 / 500;
_7 = _6 + 1;
# DEBUG u32Instance => u32Instance_10(D)
# DEBUG u32TimeoutValue => _7
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_SetTimeoutCounter
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_28 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_10(D)];
# DEBUG linCurrentState => linCurrentState_28
# DEBUG BEGIN_STMT
linCurrentState_28->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_28->timeoutCounter ={v} _7;
# DEBUG u32Instance => NULL
# DEBUG u32TimeoutValue => NULL
# DEBUG linCurrentState => NULL
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (base_12, 0);
<bb 4> [local count: 1073741824]:
# DEBUG BEGIN_STMT
return retVal_15;
}
Lpuart_Lin_Ip_GetTransmitStatus (const uint32 u32Instance, uint8 * const pBytesRemaining)
{
uint8 u8LocalBytesRemaining;
const struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
Lpuart_Lin_Ip_StatusType retVal;
unsigned char _1;
unsigned char _2;
<unnamed type> _3;
_Bool _4;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG bBytesCountReturn => pBytesRemaining_7(D) != 0B
# DEBUG BEGIN_STMT
# DEBUG u8LocalBytesRemaining => 0
# DEBUG BEGIN_STMT
linCurrentState_10 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_9(D)];
# DEBUG linCurrentState => linCurrentState_10
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_10->txSize;
_2 = linCurrentState_10->cntByte;
u8LocalBytesRemaining_11 = _1 - _2;
# DEBUG u8LocalBytesRemaining => u8LocalBytesRemaining_11
# DEBUG BEGIN_STMT
_3 ={v} linCurrentState_10->currentEventId;
if (_3 == 0)
goto <bb 3>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 3> [local count: 536870913]:
if (u8LocalBytesRemaining_11 != 0)
goto <bb 4>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 4> [local count: 268435456]:
# DEBUG BEGIN_STMT
_4 ={v} linCurrentState_10->timeoutCounterFlag;
if (_4 != 0)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 134217728]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 3
<bb 6> [local count: 1073741824]:
# retVal_5 = PHI <0(2), 0(3), 2(4), 3(5)>
# DEBUG retVal => retVal_5
# DEBUG BEGIN_STMT
if (pBytesRemaining_7(D) != 0B)
goto <bb 7>; [70.00%]
else
goto <bb 8>; [30.00%]
<bb 7> [local count: 751619278]:
# DEBUG BEGIN_STMT
*pBytesRemaining_7(D) = u8LocalBytesRemaining_11;
<bb 8> [local count: 1073741824]:
# DEBUG BEGIN_STMT
return retVal_5;
}
Lpuart_Lin_Ip_SyncSendFrameData (const uint32 u32Instance, const uint8 * pTxBuff, const uint8 u8TxSize)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
uint32 timeoutTicks;
uint32 startTime;
uint8 sendByte;
uint8 byteCnt;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
Lpuart_Lin_Ip_StatusType retVal;
unsigned char _1;
unsigned char _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;
<unnamed type> _9;
sizetype _10;
const uint8 * _11;
_Bool _12;
long unsigned int startTime.10_13;
long unsigned int timeoutTicks.11_14;
_Bool _15;
long unsigned int _50;
unsigned char _51;
<bb 2> [local count: 38844287]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 1
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG byteCnt => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_28 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_27(D)];
# DEBUG linCurrentState => linCurrentState_28
# DEBUG BEGIN_STMT
base_29 = Lpuart_Lin_Ip_apxBases[u32Instance_27(D)];
# DEBUG base => base_29
# DEBUG BEGIN_STMT
retVal_32 = Lpuart_Lin_Ip_StatusBeforeTransfer (u8TxSize_30(D), linCurrentState_28);
# DEBUG retVal => retVal_32
# DEBUG BEGIN_STMT
if (retVal_32 != 0)
goto <bb 17>; [67.00%]
else
goto <bb 3>; [33.00%]
<bb 3> [local count: 12818615]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_29, 196629, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_29, 65551, 0);
# DEBUG BEGIN_STMT
linCurrentState_28->currentEventId ={v} 0;
# DEBUG BEGIN_STMT
_1 = linCurrentState_28->currentPid;
_2 = Lpuart_Lin_Ip_MakeChecksumByte (u32Instance_27(D), pTxBuff_36(D), u8TxSize_30(D), _1);
linCurrentState_28->checkSum = _2;
# DEBUG BEGIN_STMT
pUserConfig_39 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_27(D)];
# DEBUG pUserConfig => pUserConfig_39
# DEBUG BEGIN_STMT
_3 = pUserConfig_39->u32ResponseTimeoutValue;
_4 = (long unsigned int) u8TxSize_30(D);
_5 = _4 + 1;
_6 = _3 * _5;
_7 = _6 / 500;
_8 = _7 + 1;
# DEBUG u32Instance => u32Instance_27(D)
# DEBUG u32TimeoutValue => _8
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_SetTimeoutCounter
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_45 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_27(D)];
# DEBUG linCurrentState => linCurrentState_45
# DEBUG BEGIN_STMT
linCurrentState_45->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_45->timeoutCounter ={v} _8;
<bb 4> [local count: 121451518]:
# byteCnt_19 = PHI <0(3), byteCnt_46(18)>
# DEBUG u32Instance => NULL
# DEBUG u32TimeoutValue => NULL
# DEBUG linCurrentState => NULL
# DEBUG byteCnt => byteCnt_19
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_9 ={v} linCurrentState_28->currentEventId;
if (_9 != 0)
goto <bb 16>; [2.75%]
else
goto <bb 5>; [97.25%]
<bb 5> [local count: 118111601]:
if (byteCnt_19 > u8TxSize_30(D))
goto <bb 16>; [2.75%]
else
goto <bb 6>; [97.25%]
<bb 6> [local count: 114863532]:
# DEBUG BEGIN_STMT
if (byteCnt_19 < u8TxSize_30(D))
goto <bb 7>; [50.00%]
else
goto <bb 8>; [50.00%]
<bb 7> [local count: 57431766]:
# DEBUG BEGIN_STMT
_10 = (sizetype) byteCnt_19;
_11 = pTxBuff_36(D) + _10;
sendByte_41 = *_11;
# DEBUG sendByte => sendByte_41
goto <bb 9>; [100.00%]
<bb 8> [local count: 57431766]:
# DEBUG BEGIN_STMT
sendByte_40 = linCurrentState_28->checkSum;
# DEBUG sendByte => sendByte_40
<bb 9> [local count: 114863532]:
# sendByte_20 = PHI <sendByte_41(7), sendByte_40(8)>
# DEBUG sendByte => sendByte_20
# DEBUG BEGIN_STMT
# DEBUG base => base_29
# DEBUG data => sendByte_20
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwPutchar
# DEBUG BEGIN_STMT
# DEBUG D#1 => &base_29->DATA
# DEBUG dataRegBytes => D#1
# DEBUG BEGIN_STMT
MEM[(volatile uint8 *)base_29 + 28B] ={v} sendByte_20;
# DEBUG base => NULL
# DEBUG data => NULL
# DEBUG BEGIN_STMT
# DEBUG retVal => 3
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_StartTimeout (&startTime, &timeoutTicks, 65535, 0);
<bb 10> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_12 = Lpuart_Lin_Ip_HwGetStatusFlag (base_29, 131093);
if (_12 != 0)
goto <bb 11>; [5.50%]
else
goto <bb 13>; [94.50%]
<bb 11> [local count: 59055800]:
# DEBUG BEGIN_STMT
# DEBUG base => base_29
# DEBUG readData => &readbackByte
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_50 ={v} MEM[(const struct LPUART_Type *)base_29].DATA;
_51 = (unsigned char) _50;
# DEBUG readbackByte => _51
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG BEGIN_STMT
# DEBUG readbackByte => _51
# DEBUG sendByte => sendByte_20
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_CheckReadbackByte
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
if (sendByte_20 != _51)
goto <bb 12>; [66.00%]
else
goto <bb 14>; [34.00%]
<bb 12> [local count: 38976828]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 1
goto <bb 14>; [100.00%]
<bb 13> [local count: 1014686025]:
# DEBUG BEGIN_STMT
startTime.10_13 = startTime;
timeoutTicks.11_14 = timeoutTicks;
_15 = Lpuart_Lin_Ip_TimeoutExpired (startTime.10_13, timeoutTicks.11_14, 0);
if (_15 != 0)
goto <bb 14>; [5.50%]
else
goto <bb 19>; [94.50%]
<bb 19> [local count: 958878293]:
goto <bb 10>; [100.00%]
<bb 14> [local count: 114863532]:
# retVal_16 = PHI <1(12), 3(13), 0(11)>
# DEBUG readbackByte => NULL
# DEBUG sendByte => NULL
# DEBUG retVal => NULL
# DEBUG retVal => retVal_16
# DEBUG BEGIN_STMT
byteCnt_46 = byteCnt_19 + 1;
# DEBUG byteCnt => byteCnt_46
if (byteCnt_19 < u8TxSize_30(D))
goto <bb 15>; [97.25%]
else
goto <bb 16>; [2.75%]
<bb 15> [local count: 111704785]:
if (retVal_16 == 0)
goto <bb 18>; [97.25%]
else
goto <bb 16>; [2.75%]
<bb 18> [local count: 108632903]:
goto <bb 4>; [100.00%]
<bb 16> [local count: 12818614]:
# retVal_17 = PHI <1(5), retVal_16(14), retVal_16(15), 1(4)>
# DEBUG retVal => retVal_17
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_GotoIdleState (u32Instance_27(D));
<bb 17> [local count: 38844287]:
# retVal_18 = PHI <retVal_32(2), retVal_17(16)>
# DEBUG retVal => retVal_18
# DEBUG BEGIN_STMT
# DEBUG D#5 => {CLOBBER}
# DEBUG readbackByte => D#5
startTime ={v} {CLOBBER};
timeoutTicks ={v} {CLOBBER};
return retVal_18;
}
Lpuart_Lin_Ip_AsyncSendFrameData (const uint32 u32Instance, const uint8 * pTxBuff, const uint8 u8TxSize)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
Lpuart_Lin_Ip_StatusType retVal;
unsigned char _1;
unsigned char _2;
unsigned char _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;
const uint8 * _10;
unsigned char _11;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_15 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_14(D)];
# DEBUG linCurrentState => linCurrentState_15
# DEBUG BEGIN_STMT
base_16 = Lpuart_Lin_Ip_apxBases[u32Instance_14(D)];
# DEBUG base => base_16
# DEBUG BEGIN_STMT
retVal_19 = Lpuart_Lin_Ip_StatusBeforeTransfer (u8TxSize_17(D), linCurrentState_15);
# DEBUG retVal => retVal_19
# DEBUG BEGIN_STMT
if (retVal_19 != 0)
goto <bb 4>; [67.00%]
else
goto <bb 3>; [33.00%]
<bb 3> [local count: 354334802]:
# DEBUG BEGIN_STMT
_1 = linCurrentState_15->currentPid;
_2 = Lpuart_Lin_Ip_MakeChecksumByte (u32Instance_14(D), pTxBuff_20(D), u8TxSize_17(D), _1);
linCurrentState_15->checkSum = _2;
# DEBUG BEGIN_STMT
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_00 ();
# DEBUG BEGIN_STMT
linCurrentState_15->txBuff = pTxBuff_20(D);
# DEBUG BEGIN_STMT
_3 = u8TxSize_17(D) + 1;
linCurrentState_15->txSize ={v} _3;
# DEBUG BEGIN_STMT
linCurrentState_15->cntByte = 0;
# DEBUG BEGIN_STMT
linCurrentState_15->currentNodeState ={v} 9;
# DEBUG BEGIN_STMT
linCurrentState_15->currentEventId ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_15->isBusBusy ={v} 1;
# DEBUG BEGIN_STMT
linCurrentState_15->isTxBusy ={v} 1;
# DEBUG BEGIN_STMT
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_00 ();
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (base_16, 0);
# DEBUG BEGIN_STMT
pUserConfig_33 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_14(D)];
# DEBUG pUserConfig => pUserConfig_33
# DEBUG BEGIN_STMT
_4 = pUserConfig_33->u32ResponseTimeoutValue;
_5 = (long unsigned int) u8TxSize_17(D);
_6 = _5 + 1;
_7 = _4 * _6;
_8 = _7 / 500;
_9 = _8 + 1;
# DEBUG u32Instance => u32Instance_14(D)
# DEBUG u32TimeoutValue => _9
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_SetTimeoutCounter
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_34 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_14(D)];
# DEBUG linCurrentState => linCurrentState_34
# DEBUG BEGIN_STMT
linCurrentState_34->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
linCurrentState_34->timeoutCounter ={v} _9;
# DEBUG u32Instance => NULL
# DEBUG u32TimeoutValue => NULL
# DEBUG linCurrentState => NULL
# DEBUG BEGIN_STMT
_10 = linCurrentState_15->txBuff;
_11 = *_10;
# DEBUG base => base_16
# DEBUG data => _11
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwPutchar
# DEBUG BEGIN_STMT
# DEBUG D#1 => &base_16->DATA
# DEBUG dataRegBytes => D#1
# DEBUG BEGIN_STMT
MEM[(volatile uint8 *)base_16 + 28B] ={v} _11;
<bb 4> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG data => NULL
# DEBUG BEGIN_STMT
return retVal_19;
}
Lpuart_Lin_Ip_Deinit (const uint32 u32Instance)
{
uint32 timeoutTicks;
uint32 startTime;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
_Bool _1;
long unsigned int startTime.6_2;
long unsigned int timeoutTicks.7_3;
_Bool _4;
<bb 2> [local count: 114863532]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
base_9 = Lpuart_Lin_Ip_apxBases[u32Instance_8(D)];
# DEBUG base => base_9
# DEBUG BEGIN_STMT
linCurrentState_10 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)];
# DEBUG linCurrentState => linCurrentState_10
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_StartTimeout (&startTime, &timeoutTicks, 65535, 0);
<bb 3> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = Lpuart_Lin_Ip_HwGetStatusFlag (base_9, 131094);
if (_1 != 0)
goto <bb 5>; [5.50%]
else
goto <bb 4>; [94.50%]
<bb 4> [local count: 1014686025]:
# DEBUG BEGIN_STMT
startTime.6_2 = startTime;
timeoutTicks.7_3 = timeoutTicks;
_4 = Lpuart_Lin_Ip_TimeoutExpired (startTime.6_2, timeoutTicks.7_3, 0);
if (_4 != 0)
goto <bb 5>; [5.50%]
else
goto <bb 6>; [94.50%]
<bb 6> [local count: 958878293]:
goto <bb 3>; [100.00%]
<bb 5> [local count: 114863532]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetTransmitterCmd (base_9, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetReceiverCmd (base_9, 0);
# DEBUG BEGIN_STMT
linCurrentState_10->currentNodeState ={v} 0;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)] = 0B;
startTime ={v} {CLOBBER};
timeoutTicks ={v} {CLOBBER};
return;
}
Lpuart_Lin_Ip_Init (const uint32 u32Instance, const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig)
{
struct Lpuart_Lin_Ip_StateStructType * pCrtStateStruct;
struct LPUART_Type * base;
_Bool _1;
_Bool _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
_Bool _6;
unsigned char _7;
unsigned char _8;
unsigned char _9;
uint8 * _10;
unsigned char _11;
unsigned char _12;
_Bool _13;
_Bool _14;
struct Lpuart_Lin_Ip_StateStructType * _15;
long unsigned int _52;
long unsigned int _53;
long unsigned int _54;
long unsigned int _55;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
base_22 = Lpuart_Lin_Ip_apxBases[u32Instance_21(D)];
# DEBUG base => base_22
# DEBUG BEGIN_STMT
pCrtStateStruct_24 = pUserConfig_23(D)->pStateStruct;
# DEBUG pCrtStateStruct => pCrtStateStruct_24
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_apxUserConfigs[u32Instance_21(D)] = pUserConfig_23(D);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwInit (base_22);
# DEBUG BEGIN_STMT
_1 = pUserConfig_23(D)->autobaudEnable;
if (_1 != 0)
goto <bb 3>; [50.00%]
else
goto <bb 5>; [50.00%]
<bb 3> [local count: 536870913]:
_2 = pUserConfig_23(D)->nodeFunction;
if (_2 != 0)
goto <bb 5>; [50.00%]
else
goto <bb 4>; [50.00%]
<bb 4> [local count: 268435456]:
# DEBUG BEGIN_STMT
pCrtStateStruct_24->fallingEdgeInterruptCount ={v} 0;
# DEBUG BEGIN_STMT
pCrtStateStruct_24->baudrateEvalEnable ={v} 1;
<bb 5> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_3 = pUserConfig_23(D)->u32OverSamplingRatio;
if (_3 <= 7)
goto <bb 6>; [50.00%]
else
goto <bb 7>; [50.00%]
<bb 6> [local count: 536870913]:
# DEBUG BEGIN_STMT
# DEBUG base => base_22
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwEnableBothEdgeSamplingCmd
# DEBUG BEGIN_STMT
_52 ={v} base_22->BAUD;
_53 = _52 | 131072;
base_22->BAUD ={v} _53;
<bb 7> [local count: 1073741824]:
# DEBUG base => NULL
# DEBUG BEGIN_STMT
_4 = _3 + 4294967295;
Lpuart_Lin_Ip_HwSetOversamplingRatio (base_22, _4);
# DEBUG BEGIN_STMT
_5 = pUserConfig_23(D)->u32BaudRateDivisor;
Lpuart_Lin_Ip_HwSetBaudRateDivisor (base_22, _5);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetBitCountPerChar (base_22, 0, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetParityMode (base_22, 0);
# DEBUG BEGIN_STMT
# DEBUG base => base_22
# DEBUG stopBitCount => 0
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwSetStopBitCount
# DEBUG BEGIN_STMT
_54 ={v} base_22->BAUD;
_55 = _54 & 4294959103;
base_22->BAUD ={v} _55;
# DEBUG base => NULL
# DEBUG stopBitCount => NULL
# DEBUG BEGIN_STMT
_6 = pUserConfig_23(D)->nodeFunction;
if (_6 != 0)
goto <bb 8>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 8> [local count: 536870913]:
# DEBUG BEGIN_STMT
_7 = pUserConfig_23(D)->u8BreakLength;
Lpuart_Lin_Ip_HwSetBreakCharTransmitLength (base_22, _7);
# DEBUG BEGIN_STMT
_8 = pUserConfig_23(D)->u8BreakLengthDetect;
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (base_22, _8);
goto <bb 10>; [100.00%]
<bb 9> [local count: 536870913]:
# DEBUG BEGIN_STMT
_9 = pUserConfig_23(D)->u8BreakLengthDetect;
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (base_22, _9);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_22, 65551, 1);
<bb 10> [local count: 1073741824]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_22, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_22, 196629, 0);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_22, 196633, 1);
# DEBUG BEGIN_STMT
pCrtStateStruct_24->currentNodeState ={v} 2;
# DEBUG BEGIN_STMT
pCrtStateStruct_24->isTxBusy ={v} 0;
# DEBUG BEGIN_STMT
pCrtStateStruct_24->isRxBusy ={v} 0;
# DEBUG BEGIN_STMT
pCrtStateStruct_24->isBusBusy ={v} 0;
# DEBUG BEGIN_STMT
pCrtStateStruct_24->timeoutCounterFlag ={v} 0;
# DEBUG BEGIN_STMT
pCrtStateStruct_24->timeoutCounter ={v} 0;
# DEBUG BEGIN_STMT
_10 = pUserConfig_23(D)->classicPID;
pCrtStateStruct_24->classicPID = _10;
# DEBUG BEGIN_STMT
_11 = pUserConfig_23(D)->numOfClassicPID;
pCrtStateStruct_24->numOfClassicPID = _11;
# DEBUG BEGIN_STMT
_12 = pUserConfig_23(D)->u8WakeupByte;
Lpuart_Lin_Ip_au8WakeupSignal[u32Instance_21(D)] = _12;
# DEBUG BEGIN_STMT
_13 = pUserConfig_23(D)->autobaudEnable;
if (_13 != 0)
goto <bb 11>; [67.00%]
else
goto <bb 12>; [33.00%]
<bb 11> [local count: 719407023]:
_14 = pUserConfig_23(D)->nodeFunction;
if (_14 != 0)
goto <bb 12>; [50.00%]
else
goto <bb 13>; [50.00%]
<bb 12> [local count: 714038314]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetTransmitterCmd (base_22, 1);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetReceiverCmd (base_22, 1);
<bb 13> [local count: 1073741824]:
# DEBUG BEGIN_STMT
_15 = pUserConfig_23(D)->pStateStruct;
Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_21(D)] = _15;
return;
}
Lpuart_Lin_Ip_ProcessWakeupDetect (const uint32 u32Instance)
{
struct LPUART_Type * base;
const struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
<unnamed type> _1;
_Bool _2;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
linCurrentState_6 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_5(D)];
# DEBUG linCurrentState => linCurrentState_6
# DEBUG BEGIN_STMT
base_7 = Lpuart_Lin_Ip_apxBases[u32Instance_5(D)];
# DEBUG base => base_7
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_7, 131102);
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_6->currentNodeState;
switch (_1) <default: <L6> [33.33%], case 1: <L0> [33.33%], case 4: <L1> [33.33%]>
<bb 3> [local count: 357878150]:
<L0>:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_CheckWakeupSignal (u32Instance_5(D));
# DEBUG BEGIN_STMT
goto <bb 6>; [100.00%]
<bb 4> [local count: 357878150]:
<L1>:
# DEBUG BEGIN_STMT
_2 ={v} linCurrentState_6->baudrateEvalEnable;
if (_2 != 0)
goto <bb 5>; [33.00%]
else
goto <bb 6>; [67.00%]
<bb 5> [local count: 118099789]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_AutoBaudCapture (u32Instance_5(D));
<bb 6> [local count: 1073634452]:
<L6>:
return;
}
Lpuart_Lin_Ip_AutoBaudCapture (const uint32 u32Instance)
{
struct LPUART_Type * base;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
uint8 wakeupByte;
uint32 masterBaudrateDivisor;
uint32 tickPerMicros;
uint32 u32ElapsedTicks;
static uint8 fallingEgdeCount;
static uint32 currentTick;
unsigned char fallingEgdeCount.25_1;
unsigned char _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;
long unsigned int _10;
long unsigned int _11;
long unsigned int _12;
long unsigned int _13;
long unsigned int _14;
long unsigned int _15;
long unsigned int _16;
void (*<T2e6>) (uint32, void *) _17;
long unsigned int _18;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG masterBaudrateDivisor => 0
# DEBUG BEGIN_STMT
# DEBUG wakeupByte => 248
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
linCurrentState_31 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_30(D)];
# DEBUG linCurrentState => linCurrentState_31
# DEBUG BEGIN_STMT
base_32 = Lpuart_Lin_Ip_apxBases[u32Instance_30(D)];
# DEBUG base => base_32
# DEBUG BEGIN_STMT
pUserConfig_33 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_30(D)];
# DEBUG pUserConfig => pUserConfig_33
# DEBUG BEGIN_STMT
fallingEgdeCount.25_1 = fallingEgdeCount;
_2 = fallingEgdeCount.25_1 + 1;
fallingEgdeCount = _2;
if (fallingEgdeCount.25_1 != 0)
goto <bb 3>; [50.00%]
else
goto <bb 24>; [50.00%]
<bb 3> [local count: 536870913]:
# DEBUG BEGIN_STMT
u32ElapsedTicks_38 = OsIf_GetElapsed (&currentTick, 0);
# DEBUG u32ElapsedTicks => u32ElapsedTicks_38
# DEBUG BEGIN_STMT
tickPerMicros_40 = OsIf_MicrosToTicks (1000000, 0);
# DEBUG tickPerMicros => tickPerMicros_40
# DEBUG BEGIN_STMT
_3 = tickPerMicros_40 * 51041;
if (_3 <= u32ElapsedTicks_38)
goto <bb 4>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 4> [local count: 268435456]:
_4 = tickPerMicros_40 * 53125;
if (_4 >= u32ElapsedTicks_38)
goto <bb 5>; [50.00%]
else
goto <bb 6>; [50.00%]
<bb 5> [local count: 134217728]:
# DEBUG BEGIN_STMT
# DEBUG masterBaudrateDivisor => 19200
# DEBUG BEGIN_STMT
# DEBUG wakeupByte => 128
<bb 6> [local count: 536870913]:
# masterBaudrateDivisor_19 = PHI <0(3), 0(4), 19200(5)>
# wakeupByte_24 = PHI <248(3), 248(4), 128(5)>
# DEBUG wakeupByte => wakeupByte_24
# DEBUG masterBaudrateDivisor => masterBaudrateDivisor_19
# DEBUG BEGIN_STMT
_5 = tickPerMicros_40 * 68055;
if (_5 <= u32ElapsedTicks_38)
goto <bb 7>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 7> [local count: 268435456]:
_6 = tickPerMicros_40 * 70833;
if (_6 >= u32ElapsedTicks_38)
goto <bb 8>; [50.00%]
else
goto <bb 9>; [50.00%]
<bb 8> [local count: 134217728]:
# DEBUG BEGIN_STMT
# DEBUG masterBaudrateDivisor => 14400
# DEBUG BEGIN_STMT
# DEBUG wakeupByte => 128
<bb 9> [local count: 536870913]:
# masterBaudrateDivisor_20 = PHI <masterBaudrateDivisor_19(6), masterBaudrateDivisor_19(7), 14400(8)>
# wakeupByte_25 = PHI <wakeupByte_24(6), wakeupByte_24(7), 128(8)>
# DEBUG wakeupByte => wakeupByte_25
# DEBUG masterBaudrateDivisor => masterBaudrateDivisor_20
# DEBUG BEGIN_STMT
_7 = tickPerMicros_40 * 102083;
if (_7 <= u32ElapsedTicks_38)
goto <bb 10>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 10> [local count: 268435456]:
_8 = tickPerMicros_40 * 106250;
if (_8 >= u32ElapsedTicks_38)
goto <bb 11>; [50.00%]
else
goto <bb 12>; [50.00%]
<bb 11> [local count: 134217728]:
# DEBUG BEGIN_STMT
# DEBUG masterBaudrateDivisor => 9600
<bb 12> [local count: 536870913]:
# masterBaudrateDivisor_21 = PHI <masterBaudrateDivisor_20(9), masterBaudrateDivisor_20(10), 9600(11)>
# DEBUG masterBaudrateDivisor => masterBaudrateDivisor_21
# DEBUG BEGIN_STMT
_9 = tickPerMicros_40 * 204166;
if (_9 <= u32ElapsedTicks_38)
goto <bb 13>; [50.00%]
else
goto <bb 15>; [50.00%]
<bb 13> [local count: 268435456]:
_10 = tickPerMicros_40 * 212500;
if (_10 >= u32ElapsedTicks_38)
goto <bb 14>; [50.00%]
else
goto <bb 15>; [50.00%]
<bb 14> [local count: 134217728]:
# DEBUG BEGIN_STMT
# DEBUG masterBaudrateDivisor => 4800
<bb 15> [local count: 536870913]:
# masterBaudrateDivisor_22 = PHI <masterBaudrateDivisor_21(12), masterBaudrateDivisor_21(13), 4800(14)>
# DEBUG masterBaudrateDivisor => masterBaudrateDivisor_22
# DEBUG BEGIN_STMT
_11 = tickPerMicros_40 * 408333;
if (_11 <= u32ElapsedTicks_38)
goto <bb 16>; [50.00%]
else
goto <bb 17>; [50.00%]
<bb 16> [local count: 268435456]:
_12 = tickPerMicros_40 * 425000;
if (_12 >= u32ElapsedTicks_38)
goto <bb 18>; [50.00%]
else
goto <bb 17>; [50.00%]
<bb 17> [local count: 402653184]:
# DEBUG masterBaudrateDivisor => masterBaudrateDivisor_22
# DEBUG BEGIN_STMT
if (masterBaudrateDivisor_22 != 0)
goto <bb 18>; [50.00%]
else
goto <bb 19>; [50.00%]
<bb 18> [local count: 335544320]:
# masterBaudrateDivisor_28 = PHI <masterBaudrateDivisor_22(17), 2400(16)>
# DEBUG masterBaudrateDivisor => NULL
# DEBUG BEGIN_STMT
_13 = pUserConfig_33->u32ChannelClock;
_14 = pUserConfig_33->u32OverSamplingRatio;
_15 = _14 * masterBaudrateDivisor_28;
masterBaudrateDivisor_41 = _13 / _15;
# DEBUG masterBaudrateDivisor => masterBaudrateDivisor_41
<bb 19> [local count: 536870913]:
# masterBaudrateDivisor_23 = PHI <masterBaudrateDivisor_22(17), masterBaudrateDivisor_41(18)>
# DEBUG masterBaudrateDivisor => masterBaudrateDivisor_23
# DEBUG BEGIN_STMT
if (masterBaudrateDivisor_23 != 0)
goto <bb 20>; [50.00%]
else
goto <bb 25>; [50.00%]
<bb 20> [local count: 268435456]:
_16 = pUserConfig_33->u32BaudRateDivisor;
if (_16 != masterBaudrateDivisor_23)
goto <bb 21>; [48.88%]
else
goto <bb 25>; [51.12%]
<bb 21> [local count: 131211251]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetBaudRateDivisor (base_32, masterBaudrateDivisor_23);
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_au8WakeupSignal[u32Instance_30(D)] = wakeupByte_25;
# DEBUG BEGIN_STMT
linCurrentState_31->currentEventId ={v} 2;
# DEBUG BEGIN_STMT
linCurrentState_31->baudrateEvalEnable ={v} 0;
# DEBUG BEGIN_STMT
_17 = pUserConfig_33->Callback;
if (_17 != 0B)
goto <bb 22>; [70.00%]
else
goto <bb 23>; [30.00%]
<bb 22> [local count: 91847876]:
# DEBUG BEGIN_STMT
_17 (u32Instance_30(D), linCurrentState_31);
<bb 23> [local count: 131211251]:
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwSetIntMode (base_32, 65550, 0);
# DEBUG BEGIN_STMT
linCurrentState_31->currentNodeState ={v} 6;
# DEBUG BEGIN_STMT
linCurrentState_31->currentEventId ={v} 4;
goto <bb 25>; [100.00%]
<bb 24> [local count: 536870913]:
# DEBUG BEGIN_STMT
_18 = OsIf_GetCounter (0);
currentTick = _18;
<bb 25> [local count: 1073741824]:
return;
}
Lpuart_Lin_Ip_MakeChecksumByte (const uint32 u32Instance, const uint8 * buffer, const uint8 sizeBuffer, const uint8 PID)
{
const uint8 numOfClassicPID;
const struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
uint8 retVal;
const uint8 * classicPID;
uint8 checkSum;
sizetype _1;
const uint8 * _2;
unsigned char _3;
<bb 2> [local count: 248622364]:
# DEBUG BEGIN_STMT
# DEBUG checkSum => PID_6(D)
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
linCurrentState_9 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)];
# DEBUG linCurrentState => linCurrentState_9
# DEBUG BEGIN_STMT
numOfClassicPID_10 = linCurrentState_9->numOfClassicPID;
# DEBUG numOfClassicPID => numOfClassicPID_10
# DEBUG BEGIN_STMT
classicPID_11 = linCurrentState_9->classicPID;
# DEBUG classicPID => classicPID_11
# DEBUG BEGIN_STMT
if (numOfClassicPID_10 == 255)
goto <bb 7>; [34.00%]
else
goto <bb 3>; [66.00%]
<bb 3> [local count: 164090760]:
# DEBUG BEGIN_STMT
if (classicPID_11 != 0B)
goto <bb 8>; [70.00%]
else
goto <bb 7>; [30.00%]
<bb 8> [local count: 114863532]:
goto <bb 6>; [100.00%]
<bb 4> [local count: 1014686025]:
# DEBUG BEGIN_STMT
_1 = (sizetype) retVal_5;
_2 = classicPID_11 + _1;
_3 = *_2;
if (_3 == PID_6(D))
goto <bb 7>; [5.50%]
else
goto <bb 5>; [94.50%]
<bb 5> [local count: 958878293]:
# DEBUG BEGIN_STMT
retVal_12 = retVal_5 + 1;
# DEBUG retVal => retVal_12
<bb 6> [local count: 1073741824]:
# retVal_5 = PHI <retVal_12(5), 0(8)>
# DEBUG retVal => retVal_5
# DEBUG BEGIN_STMT
if (retVal_5 < numOfClassicPID_10)
goto <bb 4>; [94.50%]
else
goto <bb 7>; [5.50%]
<bb 7> [local count: 248622363]:
# checkSum_4 = PHI <0(2), PID_6(D)(3), 0(4), PID_6(D)(6)>
# DEBUG checkSum => checkSum_4
# DEBUG BEGIN_STMT
retVal_16 = Lin_Ip_MakeChecksumByte (buffer_13(D), sizeBuffer_14(D), checkSum_4);
# DEBUG retVal => retVal_16
# DEBUG BEGIN_STMT
return retVal_16;
}
Lpuart_Lin_Ip_FrameErrorIrqHandler (const uint32 u32Instance)
{
const struct Lpuart_Lin_Ip_UserConfigType * pUserConfig;
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
struct LPUART_Type * base;
<unnamed type> _1;
void (*<T2e6>) (uint32, void *) _2;
<unnamed type> _3;
void (*<T2e6>) (uint32, void *) _4;
long unsigned int _15;
<bb 2> [local count: 1073741823]:
# DEBUG BEGIN_STMT
base_8 = Lpuart_Lin_Ip_apxBases[u32Instance_7(D)];
# DEBUG base => base_8
# DEBUG BEGIN_STMT
linCurrentState_9 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_7(D)];
# DEBUG linCurrentState => linCurrentState_9
# DEBUG BEGIN_STMT
pUserConfig_10 = Lpuart_Lin_Ip_apxUserConfigs[u32Instance_7(D)];
# DEBUG pUserConfig => pUserConfig_10
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_HwClearStatusFlag (base_8, 131089);
# DEBUG BEGIN_STMT
# DEBUG base => base_8
# DEBUG readData => &tmpByte
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_15 ={v} MEM[(const struct LPUART_Type *)base_8].DATA;
# DEBUG tmpByte => (unsigned char) _15
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG BEGIN_STMT
linCurrentState_9->currentEventId ={v} 8;
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_9->currentNodeState;
if (_1 == 9)
goto <bb 3>; [34.00%]
else
goto <bb 5>; [66.00%]
<bb 3> [local count: 365072220]:
# DEBUG BEGIN_STMT
_2 = pUserConfig_10->Callback;
if (_2 != 0B)
goto <bb 4>; [70.00%]
else
goto <bb 8>; [30.00%]
<bb 4> [local count: 255550554]:
# DEBUG BEGIN_STMT
_2 (u32Instance_7(D), linCurrentState_9);
goto <bb 8>; [100.00%]
<bb 5> [local count: 708669604]:
# DEBUG BEGIN_STMT
_3 ={v} linCurrentState_9->currentNodeState;
if (_3 == 7)
goto <bb 6>; [34.00%]
else
goto <bb 8>; [66.00%]
<bb 6> [local count: 240947665]:
# DEBUG BEGIN_STMT
_4 = pUserConfig_10->Callback;
if (_4 != 0B)
goto <bb 7>; [70.00%]
else
goto <bb 8>; [30.00%]
<bb 7> [local count: 168663365]:
# DEBUG BEGIN_STMT
_4 (u32Instance_7(D), linCurrentState_9);
<bb 8> [local count: 1073741824]:
# DEBUG D#2 => {CLOBBER}
# DEBUG tmpByte => D#2
return;
}
Lpuart_Lin_Ip_StatusBeforeTransfer (const uint8 u8Size, const struct Lpuart_Lin_Ip_StateStructType * linCurrentState)
{
Lpuart_Lin_Ip_StatusType retVal;
<unnamed type> _1;
unsigned char _2;
_Bool _3;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
_1 ={v} linCurrentState_6(D)->currentNodeState;
# DEBUG checkSleepMode => _1 == 1
# DEBUG BEGIN_STMT
_2 = u8Size_7(D) + 255;
if (_2 > 7)
goto <bb 6>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 536870913]:
if (_1 == 1)
goto <bb 6>; [34.00%]
else
goto <bb 4>; [66.00%]
<bb 4> [local count: 354334802]:
# DEBUG BEGIN_STMT
_3 ={v} linCurrentState_6(D)->isBusBusy;
if (_3 != 0)
goto <bb 5>; [35.00%]
else
goto <bb 6>; [65.00%]
<bb 5> [local count: 124017181]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 2
<bb 6> [local count: 1073741824]:
# retVal_4 = PHI <1(3), 0(4), 2(5), 1(2)>
# DEBUG retVal => retVal_4
# DEBUG BEGIN_STMT
return retVal_4;
}
Lpuart_Lin_Ip_GetBytetoBuffer (const uint8 byteCnt, const uint8 u8BuffSize, uint8 * pBuff, const uint32 u32Instance)
{
struct Lpuart_Lin_Ip_StateStructType * linCurrentState;
const struct LPUART_Type * base;
Lpuart_Lin_Ip_StatusType retVal;
sizetype _1;
uint8 * _2;
unsigned char _3;
unsigned char _4;
long unsigned int _18;
unsigned char _19;
long unsigned int _20;
unsigned char _21;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
# DEBUG BEGIN_STMT
base_9 = Lpuart_Lin_Ip_apxBases[u32Instance_8(D)];
# DEBUG base => base_9
# DEBUG BEGIN_STMT
linCurrentState_10 = Lpuart_Lin_Ip_apxStateStructureArray[u32Instance_8(D)];
# DEBUG linCurrentState => linCurrentState_10
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
if (byteCnt_11(D) < u8BuffSize_12(D))
goto <bb 3>; [67.00%]
else
goto <bb 4>; [33.00%]
<bb 3> [local count: 719407023]:
# DEBUG BEGIN_STMT
_1 = (sizetype) byteCnt_11(D);
_2 = pBuff_13(D) + _1;
# DEBUG base => base_9
# DEBUG readData => _2
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_18 ={v} base_9->DATA;
_19 = (unsigned char) _18;
*_2 = _19;
goto <bb 7>; [100.00%]
<bb 4> [local count: 354334802]:
# DEBUG BEGIN_STMT
# DEBUG base => base_9
# DEBUG readData => &checkSum
# DEBUG INLINE_ENTRY Lpuart_Lin_Ip_HwGetchar
# DEBUG BEGIN_STMT
_20 ={v} base_9->DATA;
_21 = (unsigned char) _20;
# DEBUG checkSum => _21
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG BEGIN_STMT
_3 = linCurrentState_10->currentPid;
_4 = Lpuart_Lin_Ip_MakeChecksumByte (u32Instance_8(D), pBuff_13(D), u8BuffSize_12(D), _3);
if (_4 != _21)
goto <bb 5>; [66.00%]
else
goto <bb 6>; [34.00%]
<bb 5> [local count: 233860969]:
# DEBUG BEGIN_STMT
linCurrentState_10->currentEventId ={v} 10;
# DEBUG BEGIN_STMT
# DEBUG retVal => 1
goto <bb 7>; [100.00%]
<bb 6> [local count: 120473833]:
# DEBUG BEGIN_STMT
linCurrentState_10->currentEventId ={v} 12;
# DEBUG BEGIN_STMT
linCurrentState_10->currentNodeState ={v} 8;
# DEBUG BEGIN_STMT
# DEBUG retVal => 0
<bb 7> [local count: 1073741824]:
# retVal_5 = PHI <0(3), 1(5), 0(6)>
# DEBUG base => NULL
# DEBUG readData => NULL
# DEBUG retVal => retVal_5
# DEBUG BEGIN_STMT
# DEBUG D#3 => {CLOBBER}
# DEBUG checkSum => D#3
return retVal_5;
}
Lpuart_Lin_Ip_HwSetBreakCharDetectLength (struct LPUART_Type * base, uint8 length)
{
long unsigned 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
SchM_Enter_Lin_LIN_EXCLUSIVE_AREA_04 ();
# DEBUG BEGIN_STMT
_1 ={v} base_8(D)->STAT;
_2 = _1 & 1038106623;
_3 = (long unsigned int) length_9(D);
_4 = _3 << 25;
_5 = _2 | _4;
base_8(D)->STAT ={v} _5;
# DEBUG BEGIN_STMT
SchM_Exit_Lin_LIN_EXCLUSIVE_AREA_04 ();
return;
}
Lpuart_Lin_Ip_HwSetBreakCharTransmitLength (struct LPUART_Type * base, uint8 length)
{
long unsigned 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 ={v} base_7(D)->STAT;
_2 = _1 & 1004552191;
_3 = (long unsigned int) length_8(D);
_4 = _3 << 26;
_5 = _2 | _4;
base_7(D)->STAT ={v} _5;
return;
}
Lpuart_Lin_Ip_HwSetOversamplingRatio (struct LPUART_Type * base, uint32 overSamplingRatio)
{
uint32 baudRegValTemp;
long unsigned int _1;
long unsigned int _2;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
baudRegValTemp_5 ={v} base_4(D)->BAUD;
# DEBUG baudRegValTemp => baudRegValTemp_5
# DEBUG BEGIN_STMT
baudRegValTemp_6 = baudRegValTemp_5 & 3774873599;
# DEBUG baudRegValTemp => baudRegValTemp_6
# DEBUG BEGIN_STMT
_1 = overSamplingRatio_7(D) << 24;
_2 = _1 & 520093696;
baudRegValTemp_8 = _2 | baudRegValTemp_6;
# DEBUG baudRegValTemp => baudRegValTemp_8
# DEBUG BEGIN_STMT
base_4(D)->BAUD ={v} baudRegValTemp_8;
return;
}
Lpuart_Lin_Ip_HwSetBaudRateDivisor (struct LPUART_Type * base, uint32 baudRateDivisor)
{
uint32 baudRegValTemp;
long unsigned int _1;
<bb 2> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
baudRegValTemp_4 ={v} base_3(D)->BAUD;
# DEBUG baudRegValTemp => baudRegValTemp_4
# DEBUG BEGIN_STMT
baudRegValTemp_5 = baudRegValTemp_4 & 4294959104;
# DEBUG baudRegValTemp => baudRegValTemp_5
# DEBUG BEGIN_STMT
_1 = baudRateDivisor_6(D) & 8191;
baudRegValTemp_7 = _1 | baudRegValTemp_5;
# DEBUG baudRegValTemp => baudRegValTemp_7
# DEBUG BEGIN_STMT
base_3(D)->BAUD ={v} baudRegValTemp_7;
return;
}
Lpuart_Lin_Ip_HwSetReceiverCmd (struct LPUART_Type * base, boolean enable)
{
uint32 timeoutTicks;
uint32 startTime;
long unsigned int _1;
long unsigned int _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
_Bool _6;
long unsigned int startTime.4_7;
long unsigned int timeoutTicks.5_8;
_Bool _9;
long unsigned int iftmp.3_10;
<bb 2> [local count: 12992276]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 ={v} base_13(D)->CTRL;
_2 = _1 & 4294705151;
if (enable_14(D) != 0)
goto <bb 4>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 6496138]:
<bb 4> [local count: 12992276]:
# iftmp.3_10 = PHI <262144(2), 0(3)>
_3 = _2 | iftmp.3_10;
base_13(D)->CTRL ={v} _3;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_StartTimeout (&startTime, &timeoutTicks, 65535, 0);
<bb 5> [local count: 118111600]:
<bb 6> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_4 ={v} base_13(D)->CTRL;
_5 = _4 & 262144;
_6 = _5 != 0;
if (_6 != enable_14(D))
goto <bb 10>; [89.00%]
else
goto <bb 7>; [11.00%]
<bb 10> [local count: 955630224]:
goto <bb 6>; [100.00%]
<bb 7> [local count: 118111601]:
# DEBUG BEGIN_STMT
startTime.4_7 = startTime;
timeoutTicks.5_8 = timeoutTicks;
_9 = Lpuart_Lin_Ip_TimeoutExpired (startTime.4_7, timeoutTicks.5_8, 0);
if (_9 != 0)
goto <bb 8>; [11.00%]
else
goto <bb 9>; [89.00%]
<bb 9> [local count: 105119325]:
goto <bb 5>; [100.00%]
<bb 8> [local count: 12992276]:
startTime ={v} {CLOBBER};
timeoutTicks ={v} {CLOBBER};
return;
}
Lpuart_Lin_Ip_HwSetTransmitterCmd (struct LPUART_Type * base, boolean enable)
{
uint32 timeoutTicks;
uint32 startTime;
long unsigned int _1;
long unsigned int _2;
long unsigned int _3;
long unsigned int _4;
long unsigned int _5;
_Bool _6;
long unsigned int startTime.1_7;
long unsigned int timeoutTicks.2_8;
_Bool _9;
long unsigned int iftmp.0_10;
<bb 2> [local count: 12992276]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 ={v} base_13(D)->CTRL;
_2 = _1 & 4294443007;
if (enable_14(D) != 0)
goto <bb 4>; [50.00%]
else
goto <bb 3>; [50.00%]
<bb 3> [local count: 6496138]:
<bb 4> [local count: 12992276]:
# iftmp.0_10 = PHI <524288(2), 0(3)>
_3 = _2 | iftmp.0_10;
base_13(D)->CTRL ={v} _3;
# DEBUG BEGIN_STMT
Lpuart_Lin_Ip_StartTimeout (&startTime, &timeoutTicks, 65535, 0);
<bb 5> [local count: 118111600]:
<bb 6> [local count: 1073741824]:
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_4 ={v} base_13(D)->CTRL;
_5 = _4 & 524288;
_6 = _5 != 0;
if (_6 != enable_14(D))
goto <bb 10>; [89.00%]
else
goto <bb 7>; [11.00%]
<bb 10> [local count: 955630224]:
goto <bb 6>; [100.00%]
<bb 7> [local count: 118111601]:
# DEBUG BEGIN_STMT
startTime.1_7 = startTime;
timeoutTicks.2_8 = timeoutTicks;
_9 = Lpuart_Lin_Ip_TimeoutExpired (startTime.1_7, timeoutTicks.2_8, 0);
if (_9 != 0)
goto <bb 8>; [11.00%]
else
goto <bb 9>; [89.00%]
<bb 9> [local count: 105119325]:
goto <bb 5>; [100.00%]
<bb 8> [local count: 12992276]:
startTime ={v} {CLOBBER};
timeoutTicks ={v} {CLOBBER};
return;
}