IPA function summary for Uart_StartAsyncSend.isra.0/70 inlinable
  global time:     31.000000
  self size:       19
  global size:     19
  min size:       28
  self stack:      0
  global stack:    0
    size:2.000000, time:2.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    Uart_Ipw_AsyncSend/65 function body not available
      loop depth: 0 freq:0.66 size: 5 time: 14
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.34 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_GetTransmitStatus/54 function body not available
      loop depth: 0 freq:1.00 size: 4 time: 13
       op1 is compile time invariant

IPA function summary for Uart_StartAsyncReceive.isra.0/69 inlinable
  global time:     31.000000
  self size:       19
  global size:     19
  min size:       28
  self stack:      0
  global stack:    0
    size:2.000000, time:2.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    Uart_Ipw_AsyncReceive/64 function body not available
      loop depth: 0 freq:0.66 size: 5 time: 14
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.34 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_GetReceiveStatus/53 function body not available
      loop depth: 0 freq:1.00 size: 4 time: 13
       op1 is compile time invariant

IPA function summary for Uart_StartSyncReceive.isra.0/68 inlinable
  global time:     34.850176
  self size:       27
  global size:     27
  min size:       40
  self stack:      0
  global stack:    0
    size:4.000000, time:3.320000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    Det_ReportRuntimeError/62 function body not available
      loop depth: 0 freq:0.13 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_SyncReceive/63 function body not available
      loop depth: 0 freq:0.66 size: 6 time: 15
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.34 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_GetReceiveStatus/53 function body not available
      loop depth: 0 freq:1.00 size: 4 time: 13
       op1 is compile time invariant

IPA function summary for Uart_StartSyncSend.isra.0/67 inlinable
  global time:     34.850176
  self size:       27
  global size:     27
  min size:       40
  self stack:      0
  global stack:    0
    size:4.000000, time:3.320000
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    Det_ReportRuntimeError/62 function body not available
      loop depth: 0 freq:0.13 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_SyncSend/61 function body not available
      loop depth: 0 freq:0.66 size: 6 time: 15
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.34 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_GetTransmitStatus/54 function body not available
      loop depth: 0 freq:1.00 size: 4 time: 13
       op1 is compile time invariant

IPA function summary for Uart_StartSetBuffer.isra.0/66 inlinable
  global time:     17.000000
  self size:       13
  global size:     13
  min size:       0
  self stack:      0
  global stack:    0
    size:0.000000, time:0.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:2.000000,  nonconst if:(op3 changed)
  calls:
    Uart_Ipw_SetRxBuffer/60 function body not available
      loop depth: 0 freq:0.50 size: 4 time: 13 predicate: (op3 != 0)
    Uart_Ipw_SetTxBuffer/59 function body not available
      loop depth: 0 freq:0.50 size: 4 time: 13 predicate: (op3 == 0)

IPA function summary for Uart_GetVersionInfo/48 inlinable
  global time:     10.568700
  self size:       15
  global size:     15
  min size:       0
  self stack:      0
  global stack:    0
    size:0.000000, time:0.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:2.000000,  nonconst if:(op0 changed)
    size:2.500000, time:2.064250,  executed if:(op0 != 0B) && (not inlined)
    size:2.500000, time:2.064250,  executed if:(op0 != 0B)
  calls:
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.17 size: 5 time: 14 predicate: (op0 == 0B)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_GetStatus/47 inlinable
  global time:     22.391211
  self size:       35
  global size:     35
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.580800,  nonconst if:(op0 changed)
    size:2.000000, time:1.249464,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:1.121894,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_Ipw_GetReceiveStatus/53 function body not available
      loop depth: 0 freq:0.28 size: 4 time: 13 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Uart_Ipw_GetTransmitStatus/54 function body not available
      loop depth: 0 freq:0.28 size: 4 time: 13 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.06 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.17 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.21 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_AsyncSend/46 inlinable
  global time:     21.979113
  self size:       37
  global size:     37
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartAsyncSend.isra.0/70 function not considered for inlining
      loop depth: 0 freq:0.19 size: 5 time: 14callee size: 9 stack: 0 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_AsyncReceive/45 inlinable
  global time:     21.979113
  self size:       37
  global size:     37
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartAsyncReceive.isra.0/69 function not considered for inlining
      loop depth: 0 freq:0.19 size: 5 time: 14callee size: 9 stack: 0 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SyncReceive/44 inlinable
  global time:     22.164442
  self size:       38
  global size:     38
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartSyncReceive.isra.0/68 function not considered for inlining
      loop depth: 0 freq:0.19 size: 6 time: 15callee size:13 stack: 0 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SyncSend/43 inlinable
  global time:     22.164442
  self size:       38
  global size:     38
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartSyncSend.isra.0/67 function not considered for inlining
      loop depth: 0 freq:0.19 size: 6 time: 15callee size:13 stack: 0 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SetBuffer/42 inlinable
  global time:     22.164442
  self size:       38
  global size:     38
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartSetBuffer.isra.0/66 function not considered for inlining
      loop depth: 0 freq:0.19 size: 6 time: 15callee size: 6 stack: 0 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_Abort/41 inlinable
  global time:     20.340000
  self size:       26
  global size:     26
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
  calls:
    Uart_Ipw_AbortReceivingData/58 function body not available
      loop depth: 0 freq:0.22 size: 3 time: 12 predicate: (op1 != 0) && (op0 <= 4)
    Uart_Ipw_AbortSendingData/57 function body not available
      loop depth: 0 freq:0.22 size: 3 time: 12 predicate: (op1 == 0) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_GetBaudrate/40 inlinable
  global time:     20.609340
  self size:       28
  global size:     28
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
  calls:
    Uart_Ipw_GetBaudrate/56 function body not available
      loop depth: 0 freq:0.31 size: 3 time: 12 predicate: (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.13 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SetBaudrate/39 inlinable
  global time:     30.384997
  self size:       41
  global size:     41
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:5.000000, time:1.334997,  executed if:(op0 <= 4)
  array index:(op0 changed)
  calls:
    Uart_Ipw_SetBaudrate/55 function body not available
      loop depth: 0 freq:0.13 size: 5 time: 14 predicate: (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.20 size: 5 time: 14 predicate: (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_GetTransmitStatus/54 function body not available
      loop depth: 0 freq:0.33 size: 4 time: 13 predicate: (op0 <= 4)
       op1 is compile time invariant
    Uart_Ipw_GetReceiveStatus/53 function body not available
      loop depth: 0 freq:0.33 size: 4 time: 13 predicate: (op0 <= 4)
       op1 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_Deinit/38 inlinable
  global time:     59.373760
  self size:       21
  global size:     21
  min size:       14
  self stack:      0
  global stack:    0
    size:11.000000, time:22.421307
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    Uart_Ipw_Deinit/52 function body not available
      loop depth: 1 freq:2.56 size: 2 time: 11
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.49 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_Init/37 inlinable
  global time:     43.963217
  self size:       37
  global size:     37
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:16.000000, time:17.988535,  executed if:(op0 == 0B)
  calls:
    Uart_Ipw_Init/51 function body not available
      loop depth: 1 freq:0.83 size: 3 time: 12 predicate: (op0 == 0B)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.36 size: 5 time: 14 predicate: (op0 != 0B)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant


Flattening functions:
Overall time estimate: 466.783131 weighted by profile: 0.000000

Deciding on inlining of small functions.  Starting with size 0.
Enqueueing calls in Uart_StartAsyncSend.isra.0/70.
Enqueueing calls in Uart_StartAsyncReceive.isra.0/69.
Enqueueing calls in Uart_StartSyncReceive.isra.0/68.
Enqueueing calls in Uart_StartSyncSend.isra.0/67.
Enqueueing calls in Uart_StartSetBuffer.isra.0/66.
Enqueueing calls in Uart_GetVersionInfo/48.
Enqueueing calls in Uart_GetStatus/47.
Enqueueing calls in Uart_AsyncSend/46.
Enqueueing calls in Uart_AsyncReceive/45.
Enqueueing calls in Uart_SyncReceive/44.
Enqueueing calls in Uart_SyncSend/43.
Enqueueing calls in Uart_SetBuffer/42.
Enqueueing calls in Uart_Abort/41.
Enqueueing calls in Uart_GetBaudrate/40.
Enqueueing calls in Uart_SetBaudrate/39.
Enqueueing calls in Uart_Deinit/38.
Enqueueing calls in Uart_Init/37.

Considering Uart_StartSetBuffer.isra.0/66 with 13 size
 to be inlined into Uart_SetBuffer/42 in ../RTD/src/Uart.c:982
 Estimated badness is -0.075014, frequency 0.19.

Considering Uart_StartAsyncReceive.isra.0/69 with 19 size
 to be inlined into Uart_AsyncReceive/45 in ../RTD/src/Uart.c:1171
 Estimated badness is -0.022464, frequency 0.19.

Considering Uart_StartAsyncSend.isra.0/70 with 19 size
 to be inlined into Uart_AsyncSend/46 in ../RTD/src/Uart.c:1233
 Estimated badness is -0.022464, frequency 0.19.

Considering Uart_StartSyncSend.isra.0/67 with 27 size
 to be inlined into Uart_SyncSend/43 in ../RTD/src/Uart.c:1045
 Estimated badness is -0.012502, frequency 0.19.

Considering Uart_StartSyncReceive.isra.0/68 with 27 size
 to be inlined into Uart_SyncReceive/44 in ../RTD/src/Uart.c:1109
 Estimated badness is -0.012502, frequency 0.19.

Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:

Deciding on functions to be inlined into all callers and removing useless speculations:
Overall time estimate: 330.258917 weighted by profile: 0.000000

Why inlining failed?
function body not available                       :       61 calls, 15.200829 freq, 0 count
IPA function summary for Uart_GetVersionInfo/48 inlinable
  global time:     10.568700
  self size:       15
  global size:     15
  min size:       0
  self stack:      0
  global stack:    0
    size:0.000000, time:0.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:2.000000,  nonconst if:(op0 changed)
    size:2.500000, time:2.064250,  executed if:(op0 != 0B) && (not inlined)
    size:2.500000, time:2.064250,  executed if:(op0 != 0B)
  calls:
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.17 size: 5 time: 14 predicate: (op0 == 0B)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_GetStatus/47 inlinable
  global time:     22.391211
  self size:       35
  global size:     35
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.580800,  nonconst if:(op0 changed)
    size:2.000000, time:1.249464,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:1.121894,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_Ipw_GetReceiveStatus/53 function body not available
      loop depth: 0 freq:0.28 size: 4 time: 13 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Uart_Ipw_GetTransmitStatus/54 function body not available
      loop depth: 0 freq:0.28 size: 4 time: 13 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.06 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.17 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.21 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_AsyncSend/46 inlinable
  global time:     24.759039
  self size:       37
  global size:     48
  min size:       20
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
    size:2.000000, time:0.370657,  executed if:(op2 != 0) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartAsyncSend.isra.0/70 inlined
      loop depth: 0 freq:0.19 size: 5 time: 14callee size: 9 stack: 0
      Stack frame offset 0, callee self size 0, callee size 0
      Uart_Ipw_AsyncSend/65 function body not available
        loop depth: 0 freq:0.12 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
      Det_ReportError/49 function body not available
        loop depth: 0 freq:0.06 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op0 is compile time invariant
         op1 is compile time invariant
         op2 is compile time invariant
         op3 is compile time invariant
      Uart_Ipw_GetTransmitStatus/54 function body not available
        loop depth: 0 freq:0.19 size: 4 time: 13 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op1 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_AsyncReceive/45 inlinable
  global time:     24.759039
  self size:       37
  global size:     48
  min size:       20
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
    size:2.000000, time:0.370657,  executed if:(op2 != 0) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartAsyncReceive.isra.0/69 inlined
      loop depth: 0 freq:0.19 size: 5 time: 14callee size: 9 stack: 0
      Stack frame offset 0, callee self size 0, callee size 0
      Uart_Ipw_AsyncReceive/64 function body not available
        loop depth: 0 freq:0.12 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
      Det_ReportError/49 function body not available
        loop depth: 0 freq:0.06 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op0 is compile time invariant
         op1 is compile time invariant
         op2 is compile time invariant
         op3 is compile time invariant
      Uart_Ipw_GetReceiveStatus/53 function body not available
        loop depth: 0 freq:0.19 size: 4 time: 13 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op1 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SyncReceive/44 inlinable
  global time:     25.472586
  self size:       38
  global size:     56
  min size:       20
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
    size:4.000000, time:0.615290,  executed if:(op2 != 0) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartSyncReceive.isra.0/68 inlined
      loop depth: 0 freq:0.19 size: 6 time: 15callee size:13 stack: 0
      Stack frame offset 0, callee self size 0, callee size 0
      Det_ReportRuntimeError/62 function body not available
        loop depth: 0 freq:0.02 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op0 is compile time invariant
         op1 is compile time invariant
         op2 is compile time invariant
         op3 is compile time invariant
      Uart_Ipw_SyncReceive/63 function body not available
        loop depth: 0 freq:0.12 size: 6 time: 15 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
      Det_ReportError/49 function body not available
        loop depth: 0 freq:0.06 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op0 is compile time invariant
         op1 is compile time invariant
         op2 is compile time invariant
         op3 is compile time invariant
      Uart_Ipw_GetReceiveStatus/53 function body not available
        loop depth: 0 freq:0.19 size: 4 time: 13 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op1 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SyncSend/43 inlinable
  global time:     25.472586
  self size:       38
  global size:     56
  min size:       20
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
    size:4.000000, time:0.615290,  executed if:(op2 != 0) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartSyncSend.isra.0/67 inlined
      loop depth: 0 freq:0.19 size: 6 time: 15callee size:13 stack: 0
      Stack frame offset 0, callee self size 0, callee size 0
      Det_ReportRuntimeError/62 function body not available
        loop depth: 0 freq:0.02 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op0 is compile time invariant
         op1 is compile time invariant
         op2 is compile time invariant
         op3 is compile time invariant
      Uart_Ipw_SyncSend/61 function body not available
        loop depth: 0 freq:0.12 size: 6 time: 15 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
      Det_ReportError/49 function body not available
        loop depth: 0 freq:0.06 size: 5 time: 14 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op0 is compile time invariant
         op1 is compile time invariant
         op2 is compile time invariant
         op3 is compile time invariant
      Uart_Ipw_GetTransmitStatus/54 function body not available
        loop depth: 0 freq:0.19 size: 4 time: 13 predicate: (op2 != 0) && (op1 != 0B) && (op0 <= 4)
         op1 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SetBuffer/42 inlinable
  global time:     22.164442
  self size:       38
  global size:     42
  min size:       20
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
    size:2.000000, time:0.741313,  executed if:(op1 != 0B) && (op0 <= 4),  nonconst if:(op2 changed) && (op1 != 0B) && (op0 <= 4)
    size:2.000000, time:0.370657,  executed if:(op2 != 0) && (op1 != 0B) && (op0 <= 4),  nonconst if:(op3 changed) && (op2 != 0) && (op1 != 0B) && (op0 <= 4)
  calls:
    Uart_StartSetBuffer.isra.0/66 inlined
      loop depth: 0 freq:0.19 size: 6 time: 15callee size: 6 stack: 0
      Stack frame offset 0, callee self size 0, callee size 0
      Uart_Ipw_SetRxBuffer/60 function body not available
        loop depth: 0 freq:0.09 size: 4 time: 13 predicate: (op3 != 0) && (op2 != 0) && (op1 != 0B) && (op0 <= 4)
      Uart_Ipw_SetTxBuffer/59 function body not available
        loop depth: 0 freq:0.09 size: 4 time: 13 predicate: (op3 == 0) && (op2 != 0) && (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.19 size: 5 time: 14 predicate: (op2 == 0) && (op1 != 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.08 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_Abort/41 inlinable
  global time:     20.340000
  self size:       26
  global size:     26
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
  calls:
    Uart_Ipw_AbortReceivingData/58 function body not available
      loop depth: 0 freq:0.22 size: 3 time: 12 predicate: (op1 != 0) && (op0 <= 4)
    Uart_Ipw_AbortSendingData/57 function body not available
      loop depth: 0 freq:0.22 size: 3 time: 12 predicate: (op1 == 0) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_GetBaudrate/40 inlinable
  global time:     20.609340
  self size:       28
  global size:     28
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:2.000000, time:0.897800,  executed if:(op0 <= 4),  nonconst if:(op1 changed) && (op0 <= 4)
  calls:
    Uart_Ipw_GetBaudrate/56 function body not available
      loop depth: 0 freq:0.31 size: 3 time: 12 predicate: (op1 != 0B) && (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.13 size: 5 time: 14 predicate: (op1 == 0B) && (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.22 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_SetBaudrate/39 inlinable
  global time:     30.384997
  self size:       41
  global size:     41
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:5.000000, time:1.334997,  executed if:(op0 <= 4)
  array index:(op0 changed)
  calls:
    Uart_Ipw_SetBaudrate/55 function body not available
      loop depth: 0 freq:0.13 size: 5 time: 14 predicate: (op0 <= 4)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.20 size: 5 time: 14 predicate: (op0 <= 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Uart_Ipw_GetTransmitStatus/54 function body not available
      loop depth: 0 freq:0.33 size: 4 time: 13 predicate: (op0 <= 4)
       op1 is compile time invariant
    Uart_Ipw_GetReceiveStatus/53 function body not available
      loop depth: 0 freq:0.33 size: 4 time: 13 predicate: (op0 <= 4)
       op1 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14 predicate: (op0 > 4)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_Deinit/38 inlinable
  global time:     59.373760
  self size:       21
  global size:     21
  min size:       14
  self stack:      0
  global stack:    0
    size:11.000000, time:22.421307
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    Uart_Ipw_Deinit/52 function body not available
      loop depth: 1 freq:2.56 size: 2 time: 11
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.49 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

IPA function summary for Uart_Init/37 inlinable
  global time:     43.963217
  self size:       37
  global size:     37
  min size:       10
  self stack:      0
  global stack:    0
    size:3.000000, time:3.000000
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:2.000000, time:1.340000,  nonconst if:(op0 changed)
    size:16.000000, time:17.988535,  executed if:(op0 == 0B)
  calls:
    Uart_Ipw_Init/51 function body not available
      loop depth: 1 freq:0.83 size: 3 time: 12 predicate: (op0 == 0B)
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.36 size: 5 time: 14 predicate: (op0 != 0B)
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant
    Det_ReportError/49 function body not available
      loop depth: 0 freq:0.33 size: 5 time: 14
       op0 is compile time invariant
       op1 is compile time invariant
       op2 is compile time invariant
       op3 is compile time invariant

Symbol table:

Uart_StartAsyncSend.isra.0/70 (Uart_StartAsyncSend.isra.0) @05eaf1c0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Function Uart_StartAsyncSend.isra.0/70 is inline copy in Uart_AsyncSend/46
  Availability: local
  Function flags: count:198994816 (estimated locally) body local optimize_size
  Called by: Uart_AsyncSend/46 (inlined) (198994816 (estimated locally),0.19 per call) 
  Calls: Uart_Ipw_AsyncSend/65 (131336579 (estimated locally),0.12 per call) Det_ReportError/49 (67658237 (estimated locally),0.06 per call) Uart_Ipw_GetTransmitStatus/54 (198994816 (estimated locally),0.19 per call) 
Uart_StartAsyncReceive.isra.0/69 (Uart_StartAsyncReceive.isra.0) @05e0cee0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Function Uart_StartAsyncReceive.isra.0/69 is inline copy in Uart_AsyncReceive/45
  Availability: local
  Function flags: count:198994816 (estimated locally) body local optimize_size
  Called by: Uart_AsyncReceive/45 (inlined) (198994816 (estimated locally),0.19 per call) 
  Calls: Uart_Ipw_AsyncReceive/64 (131336579 (estimated locally),0.12 per call) Det_ReportError/49 (67658237 (estimated locally),0.06 per call) Uart_Ipw_GetReceiveStatus/53 (198994816 (estimated locally),0.19 per call) 
Uart_StartSyncReceive.isra.0/68 (Uart_StartSyncReceive.isra.0) @05e0cc40
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Function Uart_StartSyncReceive.isra.0/68 is inline copy in Uart_SyncReceive/44
  Availability: local
  Function flags: count:198994816 (estimated locally) body local optimize_size
  Called by: Uart_SyncReceive/44 (inlined) (198994816 (estimated locally),0.19 per call) 
  Calls: Det_ReportRuntimeError/62 (26582524 (estimated locally),0.02 per call) Uart_Ipw_SyncReceive/63 (131336579 (estimated locally),0.12 per call) Det_ReportError/49 (67658237 (estimated locally),0.06 per call) Uart_Ipw_GetReceiveStatus/53 (198994816 (estimated locally),0.19 per call) 
Uart_StartSyncSend.isra.0/67 (Uart_StartSyncSend.isra.0) @05e0c9a0
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Function Uart_StartSyncSend.isra.0/67 is inline copy in Uart_SyncSend/43
  Availability: local
  Function flags: count:198994816 (estimated locally) body local optimize_size
  Called by: Uart_SyncSend/43 (inlined) (198994816 (estimated locally),0.19 per call) 
  Calls: Det_ReportRuntimeError/62 (26582524 (estimated locally),0.02 per call) Uart_Ipw_SyncSend/61 (131336579 (estimated locally),0.12 per call) Det_ReportError/49 (67658237 (estimated locally),0.06 per call) Uart_Ipw_GetTransmitStatus/54 (198994816 (estimated locally),0.19 per call) 
Uart_StartSetBuffer.isra.0/66 (Uart_StartSetBuffer.isra.0) @05e0c700
  Type: function definition analyzed
  Visibility: prevailing_def_ironly artificial
  References: 
  Referring: 
  Function Uart_StartSetBuffer.isra.0/66 is inline copy in Uart_SetBuffer/42
  Availability: local
  Function flags: count:198994816 (estimated locally) body local optimize_size
  Called by: Uart_SetBuffer/42 (inlined) (198994816 (estimated locally),0.19 per call) 
  Calls: Uart_Ipw_SetRxBuffer/60 (99497408 (estimated locally),0.09 per call) Uart_Ipw_SetTxBuffer/59 (99497408 (estimated locally),0.09 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 (131336579 (estimated locally),0.12 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 (131336579 (estimated locally),0.12 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 (131336579 (estimated locally),0.12 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 (26582524 (estimated locally),0.02 per call) Uart_StartSyncSend.isra.0/67 (26582524 (estimated locally),0.02 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 (131336579 (estimated locally),0.12 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 (99497408 (estimated locally),0.09 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 (99497408 (estimated locally),0.09 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 (198994816 (estimated locally),0.19 per call) Uart_StartSyncSend.isra.0/67 (198994816 (estimated locally),0.19 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 (198994816 (estimated locally),0.19 per call) Uart_StartSyncReceive.isra.0/68 (198994816 (estimated locally),0.19 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 (67658237 (estimated locally),0.06 per call) Uart_StartAsyncReceive.isra.0/69 (67658237 (estimated locally),0.06 per call) Uart_StartSyncReceive.isra.0/68 (67658237 (estimated locally),0.06 per call) Uart_StartSyncSend.isra.0/67 (67658237 (estimated locally),0.06 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 (inlined) (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 (inlined) (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 (inlined) (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 (inlined) (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 (inlined) (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)

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)

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)

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)

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)

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)


Symbols to be put in SSA form
{ D.6453 D.6554 }
Incremental SSA update started at block: 0
Number of blocks in CFG: 18
Number of blocks to update: 17 ( 94%)


Removing basic block 10
Removing basic block 13
Merging blocks 17 and 12
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
;; 2 succs { 3 4 }
;; 3 succs { 14 }
;; 4 succs { 5 6 }
;; 5 succs { 14 }
;; 6 succs { 7 8 }
;; 7 succs { 14 }
;; 8 succs { 9 10 }
;; 9 succs { 14 }
;; 10 succs { 11 12 }
;; 11 succs { 13 }
;; 12 succs { 13 }
;; 13 succs { 14 }
;; 14 succs { 1 }
Uart_SetBuffer (uint8 Channel, uint8 * Buffer, uint32 BufferSize, Uart_DataDirectionType Direction)
{
  Std_ReturnType D.6554;
  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 14>; [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 14>; [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 14>; [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 14>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#1 => 0
  # DEBUG Channel => Channel_5(D)
  # DEBUG Buffer => Buffer_6(D)
  # DEBUG BufferSize => BufferSize_7(D)
  # DEBUG Direction => Direction_8(D)
  # DEBUG INLINE_ENTRY Uart_StartSetBuffer
  # DEBUG CoreId => D#1
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  if (Direction_8(D) == 0)
    goto <bb 11>; [50.00%]
  else
    goto <bb 12>; [50.00%]

  <bb 11> [local count: 99497408]:
  # DEBUG BEGIN_STMT
  Uart_Ipw_SetTxBuffer (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  goto <bb 13>; [100.00%]

  <bb 12> [local count: 99497408]:
  # DEBUG BEGIN_STMT
  Uart_Ipw_SetRxBuffer (Channel_5(D), Buffer_6(D), BufferSize_7(D));

  <bb 13> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 0
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _18 = 0;
  # DEBUG Channel => NULL
  # DEBUG Buffer => NULL
  # DEBUG BufferSize => NULL
  # DEBUG Direction => NULL
  TempReturn_10 = _18;
  # DEBUG TempReturn => TempReturn_10

  <bb 14> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_10(13)>
  # 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)


Symbols to be put in SSA form
{ D.6454 D.6563 }
Incremental SSA update started at block: 0
Number of blocks in CFG: 19
Number of blocks to update: 18 ( 95%)


Removing basic block 10
Removing basic block 13
Merging blocks 18 and 12
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
;; 2 succs { 3 4 }
;; 3 succs { 15 }
;; 4 succs { 5 6 }
;; 5 succs { 15 }
;; 6 succs { 7 8 }
;; 7 succs { 15 }
;; 8 succs { 9 10 }
;; 9 succs { 15 }
;; 10 succs { 11 12 }
;; 11 succs { 14 }
;; 12 succs { 13 14 }
;; 13 succs { 14 }
;; 14 succs { 15 }
;; 15 succs { 1 }
Uart_SyncSend (uint8 Channel, const uint8 * Buffer, uint32 BufferSize, uint32 Timeout)
{
  Std_ReturnType TempReturn;
  Std_ReturnType D.6563;
  Std_ReturnType TempReturn;
  <unnamed type> _1;
  <unnamed type> _15;

  <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 15>; [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 15>; [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 15>; [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 15>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#2 => 0
  # DEBUG Channel => Channel_5(D)
  # DEBUG Buffer => Buffer_6(D)
  # DEBUG BufferSize => BufferSize_7(D)
  # DEBUG Timeout => Timeout_8(D)
  # DEBUG INLINE_ENTRY Uart_StartSyncSend
  # DEBUG CoreId => D#2
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  _15 = Uart_Ipw_GetTransmitStatus (Channel_5(D), 0B);
  if (_15 == 1)
    goto <bb 11>; [34.00%]
  else
    goto <bb 12>; [66.00%]

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

  <bb 12> [local count: 131336579]:
  # DEBUG BEGIN_STMT
  TempReturn_16 = Uart_Ipw_SyncSend (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  # DEBUG TempReturn => TempReturn_16
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (TempReturn_16 == 6)
    goto <bb 13>; [20.24%]
  else
    goto <bb 14>; [79.76%]

  <bb 13> [local count: 26582524]:
  # DEBUG BEGIN_STMT
  Det_ReportRuntimeError (255, 0, 4, 8);
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1

  <bb 14> [local count: 198994816]:
  # TempReturn_17 = PHI <1(11), TempReturn_16(12), 1(13)>
  # DEBUG TempReturn => TempReturn_17
  # DEBUG BEGIN_STMT
  _23 = TempReturn_17;
  # DEBUG Channel => NULL
  # DEBUG Buffer => NULL
  # DEBUG BufferSize => NULL
  # DEBUG Timeout => NULL
  # DEBUG TempReturn => NULL
  TempReturn_10 = _23;
  # DEBUG TempReturn => TempReturn_10

  <bb 15> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_10(14)>
  # 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)


Symbols to be put in SSA form
{ D.6455 D.6573 }
Incremental SSA update started at block: 0
Number of blocks in CFG: 19
Number of blocks to update: 18 ( 95%)


Removing basic block 10
Removing basic block 13
Merging blocks 18 and 12
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
;; 2 succs { 3 4 }
;; 3 succs { 15 }
;; 4 succs { 5 6 }
;; 5 succs { 15 }
;; 6 succs { 7 8 }
;; 7 succs { 15 }
;; 8 succs { 9 10 }
;; 9 succs { 15 }
;; 10 succs { 11 12 }
;; 11 succs { 14 }
;; 12 succs { 13 14 }
;; 13 succs { 14 }
;; 14 succs { 15 }
;; 15 succs { 1 }
Uart_SyncReceive (uint8 Channel, uint8 * Buffer, uint32 BufferSize, uint32 Timeout)
{
  Std_ReturnType TempReturn;
  Std_ReturnType D.6573;
  Std_ReturnType TempReturn;
  <unnamed type> _1;
  <unnamed type> _15;

  <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 15>; [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 15>; [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 15>; [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 15>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#3 => 0
  # DEBUG Channel => Channel_5(D)
  # DEBUG Buffer => Buffer_6(D)
  # DEBUG BufferSize => BufferSize_7(D)
  # DEBUG Timeout => Timeout_8(D)
  # DEBUG INLINE_ENTRY Uart_StartSyncReceive
  # DEBUG CoreId => D#3
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  _15 = Uart_Ipw_GetReceiveStatus (Channel_5(D), 0B);
  if (_15 == 1)
    goto <bb 11>; [34.00%]
  else
    goto <bb 12>; [66.00%]

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

  <bb 12> [local count: 131336579]:
  # DEBUG BEGIN_STMT
  TempReturn_16 = Uart_Ipw_SyncReceive (Channel_5(D), Buffer_6(D), BufferSize_7(D), Timeout_8(D));
  # DEBUG TempReturn => TempReturn_16
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (TempReturn_16 == 6)
    goto <bb 13>; [20.24%]
  else
    goto <bb 14>; [79.76%]

  <bb 13> [local count: 26582524]:
  # DEBUG BEGIN_STMT
  Det_ReportRuntimeError (255, 0, 6, 8);
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1

  <bb 14> [local count: 198994816]:
  # TempReturn_17 = PHI <1(11), TempReturn_16(12), 1(13)>
  # DEBUG TempReturn => TempReturn_17
  # DEBUG BEGIN_STMT
  _23 = TempReturn_17;
  # DEBUG Channel => NULL
  # DEBUG Buffer => NULL
  # DEBUG BufferSize => NULL
  # DEBUG Timeout => NULL
  # DEBUG TempReturn => NULL
  TempReturn_10 = _23;
  # DEBUG TempReturn => TempReturn_10

  <bb 15> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_10(14)>
  # 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)


Symbols to be put in SSA form
{ D.6456 D.6581 }
Incremental SSA update started at block: 0
Number of blocks in CFG: 18
Number of blocks to update: 17 ( 94%)


Removing basic block 10
Removing basic block 13
Merging blocks 17 and 12
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
;; 2 succs { 3 4 }
;; 3 succs { 14 }
;; 4 succs { 5 6 }
;; 5 succs { 14 }
;; 6 succs { 7 8 }
;; 7 succs { 14 }
;; 8 succs { 9 10 }
;; 9 succs { 14 }
;; 10 succs { 11 12 }
;; 11 succs { 13 }
;; 12 succs { 13 }
;; 13 succs { 14 }
;; 14 succs { 1 }
Uart_AsyncReceive (uint8 Channel, uint8 * Buffer, uint32 BufferSize)
{
  Std_ReturnType TempReturn;
  Std_ReturnType D.6581;
  Std_ReturnType TempReturn;
  <unnamed type> _1;
  <unnamed type> _14;

  <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 14>; [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 14>; [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 14>; [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 14>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#4 => 0
  # DEBUG Channel => Channel_5(D)
  # DEBUG Buffer => Buffer_6(D)
  # DEBUG BufferSize => BufferSize_7(D)
  # DEBUG INLINE_ENTRY Uart_StartAsyncReceive
  # DEBUG CoreId => D#4
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  _14 = Uart_Ipw_GetReceiveStatus (Channel_5(D), 0B);
  if (_14 == 1)
    goto <bb 11>; [34.00%]
  else
    goto <bb 12>; [66.00%]

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

  <bb 12> [local count: 131336579]:
  # DEBUG BEGIN_STMT
  TempReturn_15 = Uart_Ipw_AsyncReceive (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  # DEBUG TempReturn => TempReturn_15

  <bb 13> [local count: 198994816]:
  # TempReturn_16 = PHI <1(11), TempReturn_15(12)>
  # DEBUG TempReturn => TempReturn_16
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _21 = TempReturn_16;
  # DEBUG Channel => NULL
  # DEBUG Buffer => NULL
  # DEBUG BufferSize => NULL
  # DEBUG TempReturn => NULL
  TempReturn_9 = _21;
  # DEBUG TempReturn => TempReturn_9

  <bb 14> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_9(13)>
  # 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)


Symbols to be put in SSA form
{ D.6457 D.6589 }
Incremental SSA update started at block: 0
Number of blocks in CFG: 18
Number of blocks to update: 17 ( 94%)


Removing basic block 10
Removing basic block 13
Merging blocks 17 and 12
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14
;; 2 succs { 3 4 }
;; 3 succs { 14 }
;; 4 succs { 5 6 }
;; 5 succs { 14 }
;; 6 succs { 7 8 }
;; 7 succs { 14 }
;; 8 succs { 9 10 }
;; 9 succs { 14 }
;; 10 succs { 11 12 }
;; 11 succs { 13 }
;; 12 succs { 13 }
;; 13 succs { 14 }
;; 14 succs { 1 }
Uart_AsyncSend (uint8 Channel, const uint8 * Buffer, uint32 BufferSize)
{
  Std_ReturnType TempReturn;
  Std_ReturnType D.6589;
  Std_ReturnType TempReturn;
  <unnamed type> _1;
  <unnamed type> _14;

  <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 14>; [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 14>; [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 14>; [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 14>; [100.00%]

  <bb 10> [local count: 198994816]:
  # DEBUG BEGIN_STMT
  # DEBUG D#5 => 0
  # DEBUG Channel => Channel_5(D)
  # DEBUG Buffer => Buffer_6(D)
  # DEBUG BufferSize => BufferSize_7(D)
  # DEBUG INLINE_ENTRY Uart_StartAsyncSend
  # DEBUG CoreId => D#5
  # DEBUG BEGIN_STMT
  # DEBUG TempReturn => 1
  # DEBUG BEGIN_STMT
  _14 = Uart_Ipw_GetTransmitStatus (Channel_5(D), 0B);
  if (_14 == 1)
    goto <bb 11>; [34.00%]
  else
    goto <bb 12>; [66.00%]

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

  <bb 12> [local count: 131336579]:
  # DEBUG BEGIN_STMT
  TempReturn_15 = Uart_Ipw_AsyncSend (Channel_5(D), Buffer_6(D), BufferSize_7(D));
  # DEBUG TempReturn => TempReturn_15

  <bb 13> [local count: 198994816]:
  # TempReturn_16 = PHI <1(11), TempReturn_15(12)>
  # DEBUG TempReturn => TempReturn_16
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _21 = TempReturn_16;
  # DEBUG Channel => NULL
  # DEBUG Buffer => NULL
  # DEBUG BufferSize => NULL
  # DEBUG TempReturn => NULL
  TempReturn_9 = _21;
  # DEBUG TempReturn => TempReturn_9

  <bb 14> [local count: 1073741824]:
  # TempReturn_2 = PHI <1(3), 1(5), 1(7), 1(9), TempReturn_9(13)>
  # 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)

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)

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;

}


