
IPA constant propagation start:
Determining dynamic type for call: TempReturn_9 = Uart_StartAsyncSend.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  Starting walk at: TempReturn_9 = Uart_StartAsyncSend.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  instance pointer: Buffer_6(D)  Outer instance pointer: Buffer_6(D) offset: 0 (bits) vtbl reference: 
Determining dynamic type for call: TempReturn_9 = Uart_StartAsyncReceive.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  Starting walk at: TempReturn_9 = Uart_StartAsyncReceive.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  instance pointer: Buffer_6(D)  Outer instance pointer: Buffer_6(D) offset: 0 (bits) vtbl reference: 
Determining dynamic type for call: TempReturn_10 = Uart_StartSyncReceive.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  Starting walk at: TempReturn_10 = Uart_StartSyncReceive.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  instance pointer: Buffer_6(D)  Outer instance pointer: Buffer_6(D) offset: 0 (bits) vtbl reference: 
Determining dynamic type for call: TempReturn_10 = Uart_StartSyncSend.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  Starting walk at: TempReturn_10 = Uart_StartSyncSend.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  instance pointer: Buffer_6(D)  Outer instance pointer: Buffer_6(D) offset: 0 (bits) vtbl reference: 
Determining dynamic type for call: TempReturn_10 = Uart_StartSetBuffer.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Direction_8(D));
  Starting walk at: TempReturn_10 = Uart_StartSetBuffer.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Direction_8(D));
  instance pointer: Buffer_6(D)  Outer instance pointer: Buffer_6(D) offset: 0 (bits) vtbl reference: 

IPA structures before propagation:

Jump functions:
  Jump functions of caller  Uart_StartAsyncSend.isra.0/70:
  Jump functions of caller  Uart_StartAsyncReceive.isra.0/69:
  Jump functions of caller  Uart_StartSyncReceive.isra.0/68:
  Jump functions of caller  Uart_StartSyncSend.isra.0/67:
  Jump functions of caller  Uart_StartSetBuffer.isra.0/66:
  Jump functions of caller  Uart_Ipw_AsyncSend/65:
  Jump functions of caller  Uart_Ipw_AsyncReceive/64:
  Jump functions of caller  Uart_Ipw_SyncReceive/63:
  Jump functions of caller  Det_ReportRuntimeError/62:
  Jump functions of caller  Uart_Ipw_SyncSend/61:
  Jump functions of caller  Uart_Ipw_SetRxBuffer/60:
  Jump functions of caller  Uart_Ipw_SetTxBuffer/59:
  Jump functions of caller  Uart_Ipw_AbortReceivingData/58:
  Jump functions of caller  Uart_Ipw_AbortSendingData/57:
  Jump functions of caller  Uart_Ipw_GetBaudrate/56:
  Jump functions of caller  Uart_Ipw_SetBaudrate/55:
  Jump functions of caller  Uart_Ipw_GetTransmitStatus/54:
  Jump functions of caller  Uart_Ipw_GetReceiveStatus/53:
  Jump functions of caller  Uart_Ipw_Deinit/52:
  Jump functions of caller  Uart_Ipw_Init/51:
  Jump functions of caller  Det_ReportError/49:
  Jump functions of caller  Uart_GetVersionInfo/48:
  Jump functions of caller  Uart_GetStatus/47:
  Jump functions of caller  Uart_AsyncSend/46:
    callsite  Uart_AsyncSend/46 -> Uart_StartAsyncSend.isra.0/70 : 
       param 0: PASS THROUGH: 0, op nop_expr
         value: 0x0, mask: 0xff
         Unknown VR
       param 1: PASS THROUGH: 1, op nop_expr, agg_preserved
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 2: PASS THROUGH: 2, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
  Jump functions of caller  Uart_AsyncReceive/45:
    callsite  Uart_AsyncReceive/45 -> Uart_StartAsyncReceive.isra.0/69 : 
       param 0: PASS THROUGH: 0, op nop_expr
         value: 0x0, mask: 0xff
         Unknown VR
       param 1: PASS THROUGH: 1, op nop_expr, agg_preserved
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 2: PASS THROUGH: 2, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
  Jump functions of caller  Uart_SyncReceive/44:
    callsite  Uart_SyncReceive/44 -> Uart_StartSyncReceive.isra.0/68 : 
       param 0: PASS THROUGH: 0, op nop_expr
         value: 0x0, mask: 0xff
         Unknown VR
       param 1: PASS THROUGH: 1, op nop_expr, agg_preserved
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 2: PASS THROUGH: 2, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 3: PASS THROUGH: 3, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
  Jump functions of caller  Uart_SyncSend/43:
    callsite  Uart_SyncSend/43 -> Uart_StartSyncSend.isra.0/67 : 
       param 0: PASS THROUGH: 0, op nop_expr
         value: 0x0, mask: 0xff
         Unknown VR
       param 1: PASS THROUGH: 1, op nop_expr, agg_preserved
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 2: PASS THROUGH: 2, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 3: PASS THROUGH: 3, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
  Jump functions of caller  Uart_SetBuffer/42:
    callsite  Uart_SetBuffer/42 -> Uart_StartSetBuffer.isra.0/66 : 
       param 0: PASS THROUGH: 0, op nop_expr
         value: 0x0, mask: 0xff
         Unknown VR
       param 1: PASS THROUGH: 1, op nop_expr, agg_preserved
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 2: PASS THROUGH: 2, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
       param 3: PASS THROUGH: 3, op nop_expr
         value: 0x0, mask: 0xffffffff
         Unknown VR
  Jump functions of caller  Uart_Abort/41:
  Jump functions of caller  Uart_GetBaudrate/40:
  Jump functions of caller  Uart_SetBaudrate/39:
  Jump functions of caller  Uart_Deinit/38:
  Jump functions of caller  Uart_Init/37:

 Propagating constants:

Not considering Uart_GetVersionInfo for cloning; -fipa-cp-clone disabled.
Not considering Uart_GetStatus for cloning; -fipa-cp-clone disabled.
Not considering Uart_AsyncSend for cloning; -fipa-cp-clone disabled.
Not considering Uart_AsyncReceive for cloning; -fipa-cp-clone disabled.
Not considering Uart_SyncReceive for cloning; -fipa-cp-clone disabled.
Not considering Uart_SyncSend for cloning; -fipa-cp-clone disabled.
Not considering Uart_SetBuffer for cloning; -fipa-cp-clone disabled.
Not considering Uart_Abort for cloning; -fipa-cp-clone disabled.
Not considering Uart_GetBaudrate for cloning; -fipa-cp-clone disabled.
Not considering Uart_SetBaudrate for cloning; -fipa-cp-clone disabled.
Not considering Uart_Deinit for cloning; -fipa-cp-clone disabled.
Not considering Uart_Init for cloning; -fipa-cp-clone disabled.

overall_size: 496, max_new_size: 11001

IPA lattices after all propagation:

Lattices:
  Node: Uart_StartAsyncSend.isra.0/70:
    param [0]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [1]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [2]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
  Node: Uart_StartAsyncReceive.isra.0/69:
    param [0]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [1]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [2]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
  Node: Uart_StartSyncReceive.isra.0/68:
    param [0]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [1]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [2]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [3]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
  Node: Uart_StartSyncSend.isra.0/67:
    param [0]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [1]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [2]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [3]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
  Node: Uart_StartSetBuffer.isra.0/66:
    param [0]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [1]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [2]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
    param [3]: VARIABLE
         ctxs: VARIABLE
         Bits unusable (BOTTOM)
         VARYING
        AGGS VARIABLE
  Node: Uart_GetVersionInfo/48:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_GetStatus/47:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [2]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_AsyncSend/46:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [2]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_AsyncReceive/45:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [2]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_SyncReceive/44:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [2]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [3]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_SyncSend/43:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [2]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [3]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_SetBuffer/42:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [2]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [3]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_Abort/41:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_GetBaudrate/40:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_SetBaudrate/39:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
    param [1]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM
  Node: Uart_Deinit/38:
  Node: Uart_Init/37:
    param [0]: BOTTOM
         ctxs: BOTTOM
         Bits unusable (BOTTOM)
         VARYING
        AGGS BOTTOM

IPA decision stage:


IPA constant propagation end

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

Uart_StartAsyncSend.isra.0/70 (Uart_StartAsyncSend.isra.0) @05eaf1c0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Uart_AsyncSend/46 (198994816 (estimated locally),0.19 per call) 
  Calls: Uart_Ipw_AsyncSend/65 (708669605 (estimated locally),0.66 per call) Det_ReportError/49 (365072220 (estimated locally),0.34 per call) Uart_Ipw_GetTransmitStatus/54 (1073741824 (estimated locally),1.00 per call) 
Uart_StartAsyncReceive.isra.0/69 (Uart_StartAsyncReceive.isra.0) @05e0cee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Uart_AsyncReceive/45 (198994816 (estimated locally),0.19 per call) 
  Calls: Uart_Ipw_AsyncReceive/64 (708669605 (estimated locally),0.66 per call) Det_ReportError/49 (365072220 (estimated locally),0.34 per call) Uart_Ipw_GetReceiveStatus/53 (1073741824 (estimated locally),1.00 per call) 
Uart_StartSyncReceive.isra.0/68 (Uart_StartSyncReceive.isra.0) @05e0cc40
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Uart_SyncReceive/44 (198994816 (estimated locally),0.19 per call) 
  Calls: Det_ReportRuntimeError/62 (143434728 (estimated locally),0.13 per call) Uart_Ipw_SyncReceive/63 (708669605 (estimated locally),0.66 per call) Det_ReportError/49 (365072220 (estimated locally),0.34 per call) Uart_Ipw_GetReceiveStatus/53 (1073741824 (estimated locally),1.00 per call) 
Uart_StartSyncSend.isra.0/67 (Uart_StartSyncSend.isra.0) @05e0c9a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Uart_SyncSend/43 (198994816 (estimated locally),0.19 per call) 
  Calls: Det_ReportRuntimeError/62 (143434728 (estimated locally),0.13 per call) Uart_Ipw_SyncSend/61 (708669605 (estimated locally),0.66 per call) Det_ReportError/49 (365072220 (estimated locally),0.34 per call) Uart_Ipw_GetTransmitStatus/54 (1073741824 (estimated locally),1.00 per call) 
Uart_StartSetBuffer.isra.0/66 (Uart_StartSetBuffer.isra.0) @05e0c700
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Availability: local
  Function flags: count:1073741824 (estimated locally) body local optimize_size
  Called by: Uart_SetBuffer/42 (198994816 (estimated locally),0.19 per call) 
  Calls: Uart_Ipw_SetRxBuffer/60 (536870913 (estimated locally),0.50 per call) Uart_Ipw_SetTxBuffer/59 (536870913 (estimated locally),0.50 per call) 
Uart_Ipw_AsyncSend/65 (Uart_Ipw_AsyncSend) @06016e00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_StartAsyncSend.isra.0/70 (708669605 (estimated locally),0.66 per call) 
  Calls: 
Uart_Ipw_AsyncReceive/64 (Uart_Ipw_AsyncReceive) @06016b60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_StartAsyncReceive.isra.0/69 (708669605 (estimated locally),0.66 per call) 
  Calls: 
Uart_Ipw_SyncReceive/63 (Uart_Ipw_SyncReceive) @060168c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_StartSyncReceive.isra.0/68 (708669605 (estimated locally),0.66 per call) 
  Calls: 
Det_ReportRuntimeError/62 (Det_ReportRuntimeError) @06016620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_StartSyncReceive.isra.0/68 (143434728 (estimated locally),0.13 per call) Uart_StartSyncSend.isra.0/67 (143434728 (estimated locally),0.13 per call) 
  Calls: 
Uart_Ipw_SyncSend/61 (Uart_Ipw_SyncSend) @06016540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_StartSyncSend.isra.0/67 (708669605 (estimated locally),0.66 per call) 
  Calls: 
Uart_Ipw_SetRxBuffer/60 (Uart_Ipw_SetRxBuffer) @060162a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_StartSetBuffer.isra.0/66 (536870913 (estimated locally),0.50 per call) 
  Calls: 
Uart_Ipw_SetTxBuffer/59 (Uart_Ipw_SetTxBuffer) @060161c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_StartSetBuffer.isra.0/66 (536870913 (estimated locally),0.50 per call) 
  Calls: 
Uart_Ipw_AbortReceivingData/58 (Uart_Ipw_AbortReceivingData) @0600cee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_Abort/41 (241001352 (estimated locally),0.22 per call) 
  Calls: 
Uart_Ipw_AbortSendingData/57 (Uart_Ipw_AbortSendingData) @0600ce00
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_Abort/41 (241001352 (estimated locally),0.22 per call) 
  Calls: 
Uart_Ipw_GetBaudrate/56 (Uart_Ipw_GetBaudrate) @0600cc40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_GetBaudrate/40 (337401893 (estimated locally),0.31 per call) 
  Calls: 
Uart_Ipw_SetBaudrate/55 (Uart_Ipw_SetBaudrate) @0600ca80
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_SetBaudrate/39 (140236486 (estimated locally),0.13 per call) 
  Calls: 
Uart_Ipw_GetTransmitStatus/54 (Uart_Ipw_GetTransmitStatus) @0600c9a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_GetStatus/47 (301156131 (estimated locally),0.28 per call) Uart_SetBaudrate/39 (359703511 (estimated locally),0.33 per call) Uart_StartAsyncSend.isra.0/70 (1073741824 (estimated locally),1.00 per call) Uart_StartSyncSend.isra.0/67 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
Uart_Ipw_GetReceiveStatus/53 (Uart_Ipw_GetReceiveStatus) @0600c8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_GetStatus/47 (301156131 (estimated locally),0.28 per call) Uart_SetBaudrate/39 (359703511 (estimated locally),0.33 per call) Uart_StartAsyncReceive.isra.0/69 (1073741824 (estimated locally),1.00 per call) Uart_StartSyncReceive.isra.0/68 (1073741824 (estimated locally),1.00 per call) 
  Calls: 
Uart_Ipw_Deinit/52 (Uart_Ipw_Deinit) @0600c700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_Deinit/38 (894749063 (estimated locally),2.56 per call) 
  Calls: 
Uart_Ipw_Init/51 (Uart_Ipw_Init) @0600c540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_Init/37 (478422324 (estimated locally),0.83 per call) 
  Calls: 
Uart_pxPBcfgVariantPredefined/50 (Uart_pxPBcfgVariantPredefined) @060100d8
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: Uart_Init/37 (read)
  Availability: not_available
  Varpool flags: read-only
Det_ReportError/49 (Det_ReportError) @0600c380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: Uart_GetVersionInfo/48 (187153200 (estimated locally),0.17 per call) Uart_GetStatus/47 (68488787 (estimated locally),0.06 per call) Uart_GetStatus/47 (177884489 (estimated locally),0.17 per call) Uart_GetStatus/47 (225056286 (estimated locally),0.21 per call) Uart_AsyncSend/46 (198994816 (estimated locally),0.19 per call) Uart_AsyncSend/46 (84013071 (estimated locally),0.08 per call) Uart_AsyncSend/46 (237404317 (estimated locally),0.22 per call) Uart_AsyncSend/46 (354334802 (estimated locally),0.33 per call) Uart_AsyncReceive/45 (198994816 (estimated locally),0.19 per call) Uart_AsyncReceive/45 (84013071 (estimated locally),0.08 per call) Uart_AsyncReceive/45 (237404317 (estimated locally),0.22 per call) Uart_AsyncReceive/45 (354334802 (estimated locally),0.33 per call) Uart_SyncReceive/44 (198994816 (estimated locally),0.19 per call) Uart_SyncReceive/44 (84013071 (estimated locally),0.08 per call) Uart_SyncReceive/44 (237404317 (estimated locally),0.22 per call) Uart_SyncReceive/44 (354334802 (estimated locally),0.33 per call) Uart_SyncSend/43 (198994816 (estimated locally),0.19 per call) Uart_SyncSend/43 (84013071 (estimated locally),0.08 per call) Uart_SyncSend/43 (237404317 (estimated locally),0.22 per call) Uart_SyncSend/43 (354334802 (estimated locally),0.33 per call) Uart_SetBuffer/42 (198994816 (estimated locally),0.19 per call) Uart_SetBuffer/42 (84013071 (estimated locally),0.08 per call) Uart_SetBuffer/42 (237404317 (estimated locally),0.22 per call) Uart_SetBuffer/42 (354334802 (estimated locally),0.33 per call) Uart_Abort/41 (237404317 (estimated locally),0.22 per call) Uart_Abort/41 (354334802 (estimated locally),0.33 per call) Uart_GetBaudrate/40 (144600811 (estimated locally),0.13 per call) Uart_GetBaudrate/40 (237404317 (estimated locally),0.22 per call) Uart_GetBaudrate/40 (354334802 (estimated locally),0.33 per call) Uart_SetBaudrate/39 (219467026 (estimated locally),0.20 per call) Uart_SetBaudrate/39 (359703511 (estimated locally),0.33 per call) Uart_SetBaudrate/39 (354334802 (estimated locally),0.33 per call) Uart_Deinit/38 (171149574 (estimated locally),0.49 per call) Uart_Init/37 (205689727 (estimated locally),0.36 per call) Uart_Init/37 (189470480 (estimated locally),0.33 per call) Uart_StartAsyncSend.isra.0/70 (365072220 (estimated locally),0.34 per call) Uart_StartAsyncReceive.isra.0/69 (365072220 (estimated locally),0.34 per call) Uart_StartSyncReceive.isra.0/68 (365072220 (estimated locally),0.34 per call) Uart_StartSyncSend.isra.0/67 (365072220 (estimated locally),0.34 per call) 
  Calls: 
Uart_GetVersionInfo/48 (Uart_GetVersionInfo) @05eced20
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Det_ReportError/49 (187153200 (estimated locally),0.17 per call) 
Uart_GetStatus/47 (Uart_GetStatus) @05ece7e0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_Ipw_GetReceiveStatus/53 (301156131 (estimated locally),0.28 per call) Uart_Ipw_GetTransmitStatus/54 (301156131 (estimated locally),0.28 per call) Det_ReportError/49 (68488787 (estimated locally),0.06 per call) Det_ReportError/49 (177884489 (estimated locally),0.17 per call) Det_ReportError/49 (225056286 (estimated locally),0.21 per call) 
Uart_AsyncSend/46 (Uart_AsyncSend) @05ece2a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_StartAsyncSend.isra.0/70 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (84013071 (estimated locally),0.08 per call) Det_ReportError/49 (237404317 (estimated locally),0.22 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_AsyncReceive/45 (Uart_AsyncReceive) @05eceee0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_StartAsyncReceive.isra.0/69 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (84013071 (estimated locally),0.08 per call) Det_ReportError/49 (237404317 (estimated locally),0.22 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_SyncReceive/44 (Uart_SyncReceive) @05ecec40
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_StartSyncReceive.isra.0/68 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (84013071 (estimated locally),0.08 per call) Det_ReportError/49 (237404317 (estimated locally),0.22 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_SyncSend/43 (Uart_SyncSend) @05ece9a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_StartSyncSend.isra.0/67 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (84013071 (estimated locally),0.08 per call) Det_ReportError/49 (237404317 (estimated locally),0.22 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_SetBuffer/42 (Uart_SetBuffer) @05ece700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_StartSetBuffer.isra.0/66 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (198994816 (estimated locally),0.19 per call) Det_ReportError/49 (84013071 (estimated locally),0.08 per call) Det_ReportError/49 (237404317 (estimated locally),0.22 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_Abort/41 (Uart_Abort) @05ece460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_Ipw_AbortReceivingData/58 (241001352 (estimated locally),0.22 per call) Uart_Ipw_AbortSendingData/57 (241001352 (estimated locally),0.22 per call) Det_ReportError/49 (237404317 (estimated locally),0.22 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_GetBaudrate/40 (Uart_GetBaudrate) @05ece1c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_Ipw_GetBaudrate/56 (337401893 (estimated locally),0.31 per call) Det_ReportError/49 (144600811 (estimated locally),0.13 per call) Det_ReportError/49 (237404317 (estimated locally),0.22 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_SetBaudrate/39 (Uart_SetBaudrate) @05fbbee0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)Uart_au32ClockFrequency/30 (read)
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_Ipw_SetBaudrate/55 (140236486 (estimated locally),0.13 per call) Det_ReportError/49 (219467026 (estimated locally),0.20 per call) Uart_Ipw_GetTransmitStatus/54 (359703511 (estimated locally),0.33 per call) Uart_Ipw_GetReceiveStatus/53 (359703511 (estimated locally),0.33 per call) Det_ReportError/49 (359703511 (estimated locally),0.33 per call) Det_ReportError/49 (354334802 (estimated locally),0.33 per call) 
Uart_Deinit/38 (Uart_Deinit) @05fbb9a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)Uart_apConfig/31 (read)Uart_au8DriverStatus/29 (write)Uart_apConfig/31 (write)
  Referring: 
  Availability: available
  Function flags: count:350142337 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_Ipw_Deinit/52 (894749063 (estimated locally),2.56 per call) Det_ReportError/49 (171149574 (estimated locally),0.49 per call) 
Uart_Init/37 (Uart_Init) @05fbb460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: Uart_au8DriverStatus/29 (read)Uart_pxPBcfgVariantPredefined/50 (read)Uart_apConfig/31 (write)Uart_apConfig/31 (read)Uart_apConfig/31 (read)Uart_au32ClockFrequency/30 (write)Uart_au8DriverStatus/29 (write)
  Referring: 
  Availability: available
  Function flags: count:574152970 (estimated locally) body optimize_size
  Called by: 
  Calls: Uart_Ipw_Init/51 (478422324 (estimated locally),0.83 per call) Det_ReportError/49 (205689727 (estimated locally),0.36 per call) Det_ReportError/49 (189470480 (estimated locally),0.33 per call) 
Uart_apConfig/31 (Uart_apConfig) @05f70318
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: Uart_Init/37 (read)Uart_Init/37 (read)Uart_Init/37 (write)Uart_Deinit/38 (read)Uart_Deinit/38 (write)
  Availability: available
  Varpool flags:
Uart_au32ClockFrequency/30 (Uart_au32ClockFrequency) @05f70240
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: Uart_Init/37 (write)Uart_SetBaudrate/39 (read)
  Availability: available
  Varpool flags:
Uart_au8DriverStatus/29 (Uart_au8DriverStatus) @05f701b0
  Type: variable definition analyzed
  Visibility: prevailing_def_ironly
  References: 
  Referring: Uart_SyncReceive/44 (read)Uart_AsyncReceive/45 (read)Uart_Init/37 (read)Uart_AsyncSend/46 (read)Uart_Init/37 (write)Uart_Deinit/38 (write)Uart_SetBaudrate/39 (read)Uart_GetBaudrate/40 (read)Uart_Abort/41 (read)Uart_SetBuffer/42 (read)Uart_SyncSend/43 (read)Uart_Deinit/38 (read)Uart_GetStatus/47 (read)
  Availability: available
  Varpool flags:

;; Function Uart_Init (Uart_Init, funcdef_no=34, decl_uid=6051, cgraph_uid=35, symbol_order=37)

Modification phase of node Uart_Init/37
Uart_Init (const struct Uart_ConfigType * Config)
{
  uint8 Channel;
  uint8 u8ChLoop;
  <unnamed type> _1;
  const struct Uart_ConfigType * _2;
  const struct Uart_ConfigType * _3;
  int _4;
  const struct Uart_ChannelConfigType * _5;
  const struct Uart_Ipw_HwConfigType * _6;
  const struct Uart_ConfigType * _7;
  const struct Uart_ChannelConfigType * _8;
  int _9;
  long unsigned int _10;

  <bb 2> [local count: 574152970]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 != 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 189470480]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 0, 4);
  goto <bb 11>; [100.00%]

  <bb 4> [local count: 384682489]:
  # DEBUG BEGIN_STMT
  if (Config_16(D) != 0B)
    goto <bb 5>; [53.47%]
  else
    goto <bb 6>; [46.53%]

  <bb 5> [local count: 205689727]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 0, 9);
  goto <bb 11>; [100.00%]

  <bb 6> [local count: 178992762]:
  # DEBUG BEGIN_STMT
  _2 = Uart_pxPBcfgVariantPredefined[0];
  Uart_apConfig[0] = _2;
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG u8ChLoop => 0
  goto <bb 10>; [100.00%]

  <bb 7> [local count: 894749063]:
  # DEBUG BEGIN_STMT
  _3 = Uart_apConfig[0];
  _4 = (int) u8ChLoop_11;
  _5 = _3->Configs[_4];
  if (_5 != 0B)
    goto <bb 8>; [53.47%]
  else
    goto <bb 9>; [46.53%]

  <bb 8> [local count: 478422324]:
  # DEBUG BEGIN_STMT
  Channel_18 = _5->UartChannelId;
  # DEBUG Channel => Channel_18
  # DEBUG BEGIN_STMT
  _6 = _5->UartChannelConfig;
  Uart_Ipw_Init (Channel_18, _6);
  # DEBUG BEGIN_STMT
  _7 = Uart_apConfig[0];
  _8 = _7->Configs[_4];
  _9 = (int) Channel_18;
  _10 = _8->ChannelClockFrequency;
  Uart_au32ClockFrequency[0][_9] = _10;
  # DEBUG BEGIN_STMT
  Uart_au8DriverStatus[0] = 1;

  <bb 9> [local count: 894749063]:
  # DEBUG BEGIN_STMT
  u8ChLoop_22 = u8ChLoop_11 + 1;
  # DEBUG u8ChLoop => u8ChLoop_22

  <bb 10> [local count: 1073741824]:
  # u8ChLoop_11 = PHI <0(6), u8ChLoop_22(9)>
  # DEBUG u8ChLoop => u8ChLoop_11
  # DEBUG BEGIN_STMT
  if (u8ChLoop_11 != 5)
    goto <bb 7>; [83.33%]
  else
    goto <bb 11>; [16.67%]

  <bb 11> [local count: 574152970]:
  return;

}



;; Function Uart_Deinit (Uart_Deinit, funcdef_no=35, decl_uid=6053, cgraph_uid=36, symbol_order=38)

Modification phase of node Uart_Deinit/38
Uart_Deinit ()
{
  uint8 u8ChLoop;
  <unnamed type> _1;
  const struct Uart_ConfigType * _2;
  int _3;
  const struct Uart_ChannelConfigType * _4;
  unsigned char _5;

  <bb 2> [local count: 350142337]:
  # DEBUG BEGIN_STMT
  # DEBUG u8ChLoop => 0
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 != 1)
    goto <bb 3>; [48.88%]
  else
    goto <bb 8>; [51.12%]

  <bb 8> [local count: 178992762]:
  goto <bb 5>; [100.00%]

  <bb 3> [local count: 171149574]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 1, 1);
  goto <bb 7>; [100.00%]

  <bb 4> [local count: 894749063]:
  # DEBUG BEGIN_STMT
  _2 = Uart_apConfig[0];
  _3 = (int) u8ChLoop_6;
  _4 = _2->Configs[_3];
  _5 = _4->UartChannelId;
  Uart_Ipw_Deinit (_5);
  # DEBUG BEGIN_STMT
  Uart_au8DriverStatus[0] = 0;
  # DEBUG BEGIN_STMT
  u8ChLoop_13 = u8ChLoop_6 + 1;
  # DEBUG u8ChLoop => u8ChLoop_13

  <bb 5> [local count: 1073741824]:
  # u8ChLoop_6 = PHI <u8ChLoop_13(4), 0(8)>
  # DEBUG u8ChLoop => u8ChLoop_6
  # DEBUG BEGIN_STMT
  if (u8ChLoop_6 != 5)
    goto <bb 4>; [83.33%]
  else
    goto <bb 6>; [16.67%]

  <bb 6> [local count: 178992762]:
  # DEBUG BEGIN_STMT
  Uart_apConfig[0] = 0B;

  <bb 7> [local count: 350142336]:
  return;

}



;; Function Uart_SetBaudrate (Uart_SetBaudrate, funcdef_no=36, decl_uid=6056, cgraph_uid=37, symbol_order=39)

Modification phase of node Uart_SetBaudrate/39
Uart_SetBaudrate (uint8 Channel, Uart_BaudrateType Baudrate)
{
  Uart_StatusType TransmitStatus;
  Uart_StatusType ReceiveStatus;
  Std_ReturnType TempReturn;
  <unnamed type> _1;
  int _2;
  long unsigned int _3;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 2, 1);
  goto <bb 10>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_7(D) > 4)
    goto <bb 5>; [50.00%]
  else
    goto <bb 6>; [50.00%]

  <bb 5> [local count: 359703511]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 2, 2);
  goto <bb 10>; [100.00%]

  <bb 6> [local count: 359703511]:
  # DEBUG BEGIN_STMT
  ReceiveStatus_9 = Uart_Ipw_GetReceiveStatus (Channel_7(D), 0B);
  # DEBUG ReceiveStatus => ReceiveStatus_9
  # DEBUG BEGIN_STMT
  TransmitStatus_11 = Uart_Ipw_GetTransmitStatus (Channel_7(D), 0B);
  # DEBUG TransmitStatus => TransmitStatus_11
  # DEBUG BEGIN_STMT
  if (ReceiveStatus_9 == 1)
    goto <bb 8>; [20.24%]
  else
    goto <bb 7>; [79.76%]

  <bb 7> [local count: 286899520]:
  if (TransmitStatus_11 == 1)
    goto <bb 8>; [51.12%]
  else
    goto <bb 9>; [48.88%]

  <bb 8> [local count: 219467026]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 2, 6);
  goto <bb 10>; [100.00%]

  <bb 9> [local count: 140236486]:
  # DEBUG BEGIN_STMT
  _2 = (int) Channel_7(D);
  _3 = Uart_au32ClockFrequency[0][_2];
  TempReturn_14 = Uart_Ipw_SetBaudrate (Channel_7(D), Baudrate_12(D), _3);
  # DEBUG TempReturn => TempReturn_14

  <bb 10> [local count: 1073741824]:
  # TempReturn_4 = PHI <1(3), 1(5), 1(8), TempReturn_14(9)>
  # DEBUG TempReturn => TempReturn_4
  # DEBUG BEGIN_STMT
  return TempReturn_4;

}



;; Function Uart_GetBaudrate (Uart_GetBaudrate, funcdef_no=37, decl_uid=6059, cgraph_uid=38, symbol_order=40)

Modification phase of node Uart_GetBaudrate/40
Uart_GetBaudrate (uint8 Channel, uint32 * Baudrate)
{
  Std_ReturnType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 3, 1);
  goto <bb 9>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 237404317]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 3, 2);
  goto <bb 9>; [100.00%]

  <bb 6> [local count: 482002705]:
  # DEBUG BEGIN_STMT
  if (Baudrate_6(D) == 0B)
    goto <bb 7>; [30.00%]
  else
    goto <bb 8>; [70.00%]

  <bb 7> [local count: 144600811]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 3, 3);
  goto <bb 9>; [100.00%]

  <bb 8> [local count: 337401893]:
  # DEBUG BEGIN_STMT
  Uart_Ipw_GetBaudrate (Channel_5(D), Baudrate_6(D));
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 0

  <bb 9> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 0(8)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_Abort (Uart_Abort, funcdef_no=38, decl_uid=6077, cgraph_uid=39, symbol_order=41)

Modification phase of node Uart_Abort/41
Uart_Abort (uint8 Channel, Uart_DataDirectionType TransmissionType)
{
  Std_ReturnType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 8, 1);
  goto <bb 9>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 237404317]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 8, 2);
  goto <bb 9>; [100.00%]

  <bb 6> [local count: 482002705]:
  # DEBUG BEGIN_STMT
  if (TransmissionType_6(D) == 0)
    goto <bb 7>; [50.00%]
  else
    goto <bb 8>; [50.00%]

  <bb 7> [local count: 241001352]:
  # DEBUG BEGIN_STMT
  TempReturn_10 = Uart_Ipw_AbortSendingData (Channel_5(D));
  # DEBUG TempReturn => TempReturn_10
  goto <bb 9>; [100.00%]

  <bb 8> [local count: 241001352]:
  # DEBUG BEGIN_STMT
  TempReturn_8 = Uart_Ipw_AbortReceivingData (Channel_5(D));
  # DEBUG TempReturn => TempReturn_8

  <bb 9> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), TempReturn_10(7), TempReturn_8(8)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_SetBuffer (Uart_SetBuffer, funcdef_no=39, decl_uid=6064, cgraph_uid=40, symbol_order=42)

Modification phase of node Uart_SetBuffer/42
Uart_SetBuffer (uint8 Channel, uint8 * Buffer, uint32 BufferSize, Uart_DataDirectionType Direction)
{
  Std_ReturnType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 11, 1);
  goto <bb 11>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 237404317]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 11, 2);
  goto <bb 11>; [100.00%]

  <bb 6> [local count: 482002705]:
  # DEBUG BEGIN_STMT
  if (Buffer_6(D) == 0B)
    goto <bb 7>; [17.43%]
  else
    goto <bb 8>; [82.57%]

  <bb 7> [local count: 84013071]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 11, 3);
  goto <bb 11>; [100.00%]

  <bb 8> [local count: 397989633]:
  # DEBUG BEGIN_STMT
  if (BufferSize_7(D) == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 11, 7);
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => 0
  TempReturn_10 = Uart_StartSetBuffer.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Direction_8(D));
  # DEBUG TempReturn => TempReturn_10

  <bb 11> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_10(10)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_SyncSend (Uart_SyncSend, funcdef_no=40, decl_uid=6069, cgraph_uid=41, symbol_order=43)

Modification phase of node Uart_SyncSend/43
Uart_SyncSend (uint8 Channel, const uint8 * Buffer, uint32 BufferSize, uint32 Timeout)
{
  Std_ReturnType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 4, 1);
  goto <bb 11>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 237404317]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 4, 2);
  goto <bb 11>; [100.00%]

  <bb 6> [local count: 482002705]:
  # DEBUG BEGIN_STMT
  if (Buffer_6(D) == 0B)
    goto <bb 7>; [17.43%]
  else
    goto <bb 8>; [82.57%]

  <bb 7> [local count: 84013071]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 4, 3);
  goto <bb 11>; [100.00%]

  <bb 8> [local count: 397989633]:
  # DEBUG BEGIN_STMT
  if (BufferSize_7(D) == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 4, 7);
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#2 => 0
  TempReturn_10 = Uart_StartSyncSend.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  # DEBUG TempReturn => TempReturn_10

  <bb 11> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_10(10)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_SyncReceive (Uart_SyncReceive, funcdef_no=41, decl_uid=6074, cgraph_uid=42, symbol_order=44)

Modification phase of node Uart_SyncReceive/44
Uart_SyncReceive (uint8 Channel, uint8 * Buffer, uint32 BufferSize, uint32 Timeout)
{
  Std_ReturnType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 6, 1);
  goto <bb 11>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 237404317]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 6, 2);
  goto <bb 11>; [100.00%]

  <bb 6> [local count: 482002705]:
  # DEBUG BEGIN_STMT
  if (Buffer_6(D) == 0B)
    goto <bb 7>; [17.43%]
  else
    goto <bb 8>; [82.57%]

  <bb 7> [local count: 84013071]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 6, 3);
  goto <bb 11>; [100.00%]

  <bb 8> [local count: 397989633]:
  # DEBUG BEGIN_STMT
  if (BufferSize_7(D) == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 6, 7);
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#3 => 0
  TempReturn_10 = Uart_StartSyncReceive.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  # DEBUG TempReturn => TempReturn_10

  <bb 11> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_10(10)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_AsyncReceive (Uart_AsyncReceive, funcdef_no=42, decl_uid=6085, cgraph_uid=43, symbol_order=45)

Modification phase of node Uart_AsyncReceive/45
Uart_AsyncReceive (uint8 Channel, uint8 * Buffer, uint32 BufferSize)
{
  Std_ReturnType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 7, 1);
  goto <bb 11>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 237404317]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 7, 2);
  goto <bb 11>; [100.00%]

  <bb 6> [local count: 482002705]:
  # DEBUG BEGIN_STMT
  if (Buffer_6(D) == 0B)
    goto <bb 7>; [17.43%]
  else
    goto <bb 8>; [82.57%]

  <bb 7> [local count: 84013071]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 7, 3);
  goto <bb 11>; [100.00%]

  <bb 8> [local count: 397989633]:
  # DEBUG BEGIN_STMT
  if (BufferSize_7(D) == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 7, 7);
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#4 => 0
  TempReturn_9 = Uart_StartAsyncReceive.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  # DEBUG TempReturn => TempReturn_9

  <bb 11> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_9(10)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_AsyncSend (Uart_AsyncSend, funcdef_no=43, decl_uid=6081, cgraph_uid=44, symbol_order=46)

Modification phase of node Uart_AsyncSend/46
Uart_AsyncSend (uint8 Channel, const uint8 * Buffer, uint32 BufferSize)
{
  Std_ReturnType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [33.00%]
  else
    goto <bb 4>; [67.00%]

  <bb 3> [local count: 354334802]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 5, 1);
  goto <bb 11>; [100.00%]

  <bb 4> [local count: 719407023]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [33.00%]
  else
    goto <bb 6>; [67.00%]

  <bb 5> [local count: 237404317]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 5, 2);
  goto <bb 11>; [100.00%]

  <bb 6> [local count: 482002705]:
  # DEBUG BEGIN_STMT
  if (Buffer_6(D) == 0B)
    goto <bb 7>; [17.43%]
  else
    goto <bb 8>; [82.57%]

  <bb 7> [local count: 84013071]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 5, 3);
  goto <bb 11>; [100.00%]

  <bb 8> [local count: 397989633]:
  # DEBUG BEGIN_STMT
  if (BufferSize_7(D) == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 5, 7);
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#5 => 0
  TempReturn_9 = Uart_StartAsyncSend.isra.0 (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  # DEBUG TempReturn => TempReturn_9

  <bb 11> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_9(10)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_GetStatus (Uart_GetStatus, funcdef_no=44, decl_uid=6089, cgraph_uid=45, symbol_order=47)

Modification phase of node Uart_GetStatus/47
Uart_GetStatus (uint8 Channel, uint32 * BytesTransfered, Uart_DataDirectionType TransferType)
{
  Uart_StatusType TempReturn;
  <unnamed type> _1;

  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 4
  # DEBUG BEGIN_STMT
  # DEBUG CoreId => 0
  # DEBUG BEGIN_STMT
  _1 = Uart_au8DriverStatus[0];
  if (_1 == 0)
    goto <bb 3>; [20.96%]
  else
    goto <bb 4>; [79.04%]

  <bb 3> [local count: 225056286]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 9, 1);
  goto <bb 11>; [100.00%]

  <bb 4> [local count: 848685538]:
  # DEBUG BEGIN_STMT
  if (Channel_5(D) > 4)
    goto <bb 5>; [20.96%]
  else
    goto <bb 6>; [79.04%]

  <bb 5> [local count: 177884489]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 9, 2);
  goto <bb 11>; [100.00%]

  <bb 6> [local count: 670801049]:
  # DEBUG BEGIN_STMT
  if (BytesTransfered_6(D) == 0B)
    goto <bb 7>; [10.21%]
  else
    goto <bb 8>; [89.79%]

  <bb 7> [local count: 68488787]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 9, 3);
  goto <bb 11>; [100.00%]

  <bb 8> [local count: 602312262]:
  # DEBUG BEGIN_STMT
  if (TransferType_7(D) == 0)
    goto <bb 9>; [50.00%]
  else
    goto <bb 10>; [50.00%]

  <bb 9> [local count: 301156131]:
  # DEBUG BEGIN_STMT
  TempReturn_11 = Uart_Ipw_GetTransmitStatus (Channel_5(D), BytesTransfered_6(D));
  # DEBUG TempReturn => TempReturn_11
  goto <bb 11>; [100.00%]

  <bb 10> [local count: 301156131]:
  # DEBUG BEGIN_STMT
  TempReturn_9 = Uart_Ipw_GetReceiveStatus (Channel_5(D), BytesTransfered_6(D));
  # DEBUG TempReturn => TempReturn_9

  <bb 11> [local count: 1073741824]:
  # TempReturn_2 = PHI <4(3), 4(5), 4(7), TempReturn_11(9), TempReturn_9(10)>
  # DEBUG TempReturn => TempReturn_2
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  return TempReturn_2;

}



;; Function Uart_GetVersionInfo (Uart_GetVersionInfo, funcdef_no=45, decl_uid=6091, cgraph_uid=46, symbol_order=48)

Modification phase of node Uart_GetVersionInfo/48
Uart_GetVersionInfo (struct Std_VersionInfoType * VersionInfo)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  if (VersionInfo_2(D) == 0B)
    goto <bb 3>; [17.43%]
  else
    goto <bb 4>; [82.57%]

  <bb 3> [local count: 187153200]:
  # DEBUG BEGIN_STMT
  Det_ReportError (255, 0, 10, 3);
  goto <bb 5>; [100.00%]

  <bb 4> [local count: 886588625]:
  # DEBUG BEGIN_STMT
  VersionInfo_2(D)->vendorID = 43;
  # DEBUG BEGIN_STMT
  VersionInfo_2(D)->moduleID = 255;
  # DEBUG BEGIN_STMT
  VersionInfo_2(D)->sw_major_version = 1;
  # DEBUG BEGIN_STMT
  VersionInfo_2(D)->sw_minor_version = 0;
  # DEBUG BEGIN_STMT
  VersionInfo_2(D)->sw_patch_version = 0;

  <bb 5> [local count: 1073741824]:
  return;

}


