
Analyzing function: dtc_found_and_clear/23
;; 4 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 16 17 18 19 20 21
;;
;; Loop 1
;;  header 20, latch 19
;;  depth 1, outer 0
;;  nodes: 20 19 14 18 5 17 8 15 11 12 13 10 7 9 6 3 4
;;
;; Loop 2
;;  header 18, latch 17
;;  depth 2, outer 1
;;  nodes: 18 17 8 15 11 12 13 14 10 7 9 6
;;
;; Loop 3
;;  header 10, latch 9
;;  depth 3, outer 2
;;  nodes: 10 9
;; 2 succs { 20 }
;; 3 succs { 5 4 }
;; 4 succs { 5 }
;; 5 succs { 18 }
;; 6 succs { 7 8 }
;; 7 succs { 10 }
;; 8 succs { 7 17 }
;; 9 succs { 10 }
;; 10 succs { 9 11 }
;; 11 succs { 15 12 }
;; 12 succs { 15 13 }
;; 13 succs { 15 14 }
;; 14 succs { 15 19 }
;; 15 succs { 16 17 }
;; 16 succs { 21 }
;; 17 succs { 18 }
;; 18 succs { 6 19 }
;; 19 succs { 20 }
;; 20 succs { 3 21 }
;; 21 succs { 1 }

Analyzing function body size: dtc_found_and_clear

IPA function summary for dtc_found_and_clear/23 inlinable
  global time:     2036.016792
  self size:       51
  global size:     0
  min size:       0
  self stack:      9
  global stack:    9
    size:45.000000, time:1807.945679
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    string_to_int/30 function body not available
      loop depth: 2 freq:18.84 size: 3 time: 12
       op0 is compile time invariant


Analyzing function: is_dtc_exist/22
Created preheader block for loop 3
;; 4 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 19 16 17 18
;;
;; Loop 1
;;  header 17, latch 16
;;  depth 1, outer 0
;;  nodes: 17 16 11 15 5 14 12 8 9 10 7 6 19 3 4
;;
;; Loop 2
;;  header 15, latch 14
;;  depth 2, outer 1
;;  nodes: 15 14 12 8 9 10 11 7 6 19
;;
;; Loop 3
;;  header 7, latch 6
;;  depth 3, outer 2
;;  nodes: 7 6
;; 2 succs { 17 }
;; 3 succs { 5 4 }
;; 4 succs { 5 }
;; 5 succs { 15 }
;; 6 succs { 7 }
;; 7 succs { 6 8 }
;; 8 succs { 12 9 }
;; 9 succs { 12 10 }
;; 10 succs { 12 11 }
;; 11 succs { 12 16 }
;; 12 succs { 13 14 }
;; 13 succs { 18 }
;; 14 succs { 15 }
;; 15 succs { 19 16 }
;; 19 succs { 7 }
;; 16 succs { 17 }
;; 17 succs { 3 18 }
;; 18 succs { 1 }

Analyzing function body size: is_dtc_exist

IPA function summary for is_dtc_exist/22 inlinable
  global time:     1781.272629
  self size:       34
  global size:     0
  min size:       0
  self stack:      9
  global stack:    9
    size:28.000000, time:1527.138506
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    string_to_int/30 function body not available
      loop depth: 2 freq:21.01 size: 3 time: 12
       op0 is compile time invariant


Analyzing function: is_dtc_found/21
;; 4 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 16 17 18 19 20 21
;;
;; Loop 1
;;  header 20, latch 19
;;  depth 1, outer 0
;;  nodes: 20 19 14 18 5 17 8 15 11 12 13 10 7 9 6 3 4
;;
;; Loop 2
;;  header 18, latch 17
;;  depth 2, outer 1
;;  nodes: 18 17 8 15 11 12 13 14 10 7 9 6
;;
;; Loop 3
;;  header 10, latch 9
;;  depth 3, outer 2
;;  nodes: 10 9
;; 2 succs { 20 }
;; 3 succs { 5 4 }
;; 4 succs { 5 }
;; 5 succs { 18 }
;; 6 succs { 7 8 }
;; 7 succs { 10 }
;; 8 succs { 7 17 }
;; 9 succs { 10 }
;; 10 succs { 9 11 }
;; 11 succs { 15 12 }
;; 12 succs { 15 13 }
;; 13 succs { 15 14 }
;; 14 succs { 15 19 }
;; 15 succs { 16 17 }
;; 16 succs { 21 }
;; 17 succs { 18 }
;; 18 succs { 6 19 }
;; 19 succs { 20 }
;; 20 succs { 3 21 }
;; 21 succs { 1 }

Analyzing function body size: is_dtc_found

IPA function summary for is_dtc_found/21 inlinable
  global time:     2031.190180
  self size:       44
  global size:     0
  min size:       0
  self stack:      9
  global stack:    9
    size:38.000000, time:1803.119066
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    string_to_int/30 function body not available
      loop depth: 2 freq:18.84 size: 3 time: 12
       op0 is compile time invariant


Analyzing function: dtc_count_set/20
;; 3 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 7 8 9 11 10
;;
;; Loop 1
;;  header 9, latch 8
;;  depth 1, outer 0
;;  nodes: 9 8 7 6 11 4 5 3
;;
;; Loop 2
;;  header 7, latch 6
;;  depth 2, outer 1
;;  nodes: 7 6 4 5 3
;; 2 succs { 9 }
;; 3 succs { 5 4 }
;; 4 succs { 5 6 }
;; 5 succs { 6 }
;; 6 succs { 7 }
;; 7 succs { 3 8 }
;; 8 succs { 9 }
;; 9 succs { 11 10 }
;; 11 succs { 7 }
;; 10 succs { 1 }

Analyzing function body size: dtc_count_set

IPA function summary for dtc_count_set/20 inlinable
  global time:     732.159377
  self size:       19
  global size:     0
  min size:       0
  self stack:      0
  global stack:    0
    size:16.000000, time:730.159377
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:


Analyzing function: dtc_send_table_set/19
;; 7 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 34 6 7 8 9 10 32 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 33 29 30 31
;;
;; Loop 4
;;  header 28, latch 27
;;  depth 1, outer 0
;;  nodes: 28 27 19 26 25 33 13 24 22 23 20 21 16 17 18 15 12 14 11
;;
;; Loop 5
;;  header 26, latch 25
;;  depth 2, outer 4
;;  nodes: 26 25 13 24 22 23 20 21 16 17 18 19 15 12 14 11
;;
;; Loop 6
;;  header 15, latch 14
;;  depth 3, outer 5
;;  nodes: 15 14
;;
;; Loop 3
;;  header 10, latch 9
;;  depth 1, outer 0
;;  nodes: 10 9
;;
;; Loop 2
;;  header 7, latch 6
;;  depth 1, outer 0
;;  nodes: 7 6
;;
;; Loop 1
;;  header 4, latch 3
;;  depth 1, outer 0
;;  nodes: 4 3
;; 2 succs { 4 }
;; 3 succs { 4 }
;; 4 succs { 3 5 }
;; 5 succs { 34 8 }
;; 34 succs { 7 }
;; 6 succs { 7 }
;; 7 succs { 6 8 }
;; 8 succs { 10 }
;; 9 succs { 10 }
;; 10 succs { 9 32 }
;; 32 succs { 28 }
;; 11 succs { 12 13 }
;; 12 succs { 15 }
;; 13 succs { 12 25 }
;; 14 succs { 15 }
;; 15 succs { 14 16 }
;; 16 succs { 20 17 }
;; 17 succs { 20 18 }
;; 18 succs { 20 19 }
;; 19 succs { 20 27 }
;; 20 succs { 21 22 }
;; 21 succs { 22 }
;; 22 succs { 23 24 }
;; 23 succs { 24 }
;; 24 succs { 25 }
;; 25 succs { 26 }
;; 26 succs { 11 27 }
;; 27 succs { 28 }
;; 28 succs { 33 29 }
;; 33 succs { 26 }
;; 29 succs { 30 31 }
;; 30 succs { 31 }
;; 31 succs { 1 }

Analyzing function body size: dtc_send_table_set

IPA function summary for dtc_send_table_set/19 inlinable
  global time:     3944.975372
  self size:       118
  global size:     0
  min size:       0
  self stack:      27
  global stack:    27
    size:91.000000, time:3592.116184
    size:3.000000, time:2.000000,  executed if:(not inlined)
    size:4.000000, time:4.000000,  nonconst if:(op0 changed)
    size:17.000000, time:18.361532,  executed if:(op0 == 10)
  calls:
    string_to_int/30 function body not available
      loop depth: 2 freq:27.37 size: 3 time: 12
       op0 is compile time invariant


Analyzing function: dtc_string_to_code/18
;; 2 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 7 8 9 10
;;
;; Loop 1
;;  header 4, latch 3
;;  depth 1, outer 0
;;  nodes: 4 3
;; 2 succs { 4 }
;; 3 succs { 4 }
;; 4 succs { 3 5 }
;; 5 succs { 10 6 }
;; 6 succs { 10 7 }
;; 7 succs { 10 8 }
;; 8 succs { 9 10 }
;; 9 succs { 10 }
;; 10 succs { 1 }

Analyzing function body size: dtc_string_to_code

IPA function summary for dtc_string_to_code/18 inlinable
  global time:     79.772493
  self size:       24
  global size:     0
  min size:       0
  self stack:      9
  global stack:    9
    size:18.000000, time:65.772493
    size:3.000000, time:2.000000,  executed if:(not inlined)
  array index:(op0 changed)
  calls:
    string_to_int/30 function body not available
      loop depth: 0 freq:1.00 size: 3 time: 12
       op0 is compile time invariant


Analyzing function: dtc_write/16
;; 2 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5
;;
;; Loop 1
;;  header 4, latch 3
;;  depth 1, outer 0
;;  nodes: 4 3
;; 2 succs { 4 }
;; 3 succs { 4 }
;; 4 succs { 3 5 }
;; 5 succs { 1 }

Analyzing function body size: dtc_write

IPA function summary for dtc_write/16 inlinable
  global time:     166.006301
  self size:       107
  global size:     0
  min size:       0
  self stack:      12
  global stack:    12
    size:101.000000, time:152.006301
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    programDword_data_flash/29 function body not available
      loop depth: 0 freq:1.00 size: 3 time: 12
       op0 is compile time invariant
       op1 is compile time invariant


Analyzing function: dtc_control/15
;; 2 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 10 5 6 7 8 9 15 11 12 13 14
;;
;; Loop 1
;;  header 15, latch 9
;;  depth 1, outer 0
;;  nodes: 15 9 7 8 5 6
;; 2 succs { 3 10 }
;; 3 succs { 10 }
;; 10 succs { 15 }
;; 5 succs { 6 7 }
;; 6 succs { 7 }
;; 7 succs { 8 9 }
;; 8 succs { 9 }
;; 9 succs { 15 }
;; 15 succs { 5 11 }
;; 11 succs { 12 14 }
;; 12 succs { 13 14 }
;; 13 succs { 14 }
;; 14 succs { 1 }

Analyzing function body size: dtc_control

IPA function summary for dtc_control/15 inlinable
  global time:     127.132888
  self size:       28
  global size:     0
  min size:       0
  self stack:      0
  global stack:    0
    size:24.000000, time:123.482888
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    dtc_write/16 function not considered for inlining
      loop depth: 0 freq:0.16 size: 1 time: 10callee size:53 stack:12


Analyzing function: dtc_read/14
;; 7 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5 6 10 7 9 24 23 11 12 13 14 15 16 17 18 19 20 21 22
;;
;; Loop 6
;;  header 21, latch 20
;;  depth 1, outer 0
;;  nodes: 21 20
;;
;; Loop 5
;;  header 18, latch 17
;;  depth 1, outer 0
;;  nodes: 18 17
;;
;; Loop 4
;;  header 15, latch 14
;;  depth 1, outer 0
;;  nodes: 15 14
;;
;; Loop 3
;;  header 12, latch 11
;;  depth 1, outer 0
;;  nodes: 12 11
;;
;; Loop 2
;;  header 24, latch 9
;;  depth 1, outer 0
;;  nodes: 24 9
;;
;; Loop 1
;;  header 4, latch 3
;;  depth 1, outer 0
;;  nodes: 4 3
;; 2 succs { 4 }
;; 3 succs { 4 }
;; 4 succs { 3 5 }
;; 5 succs { 6 7 }
;; 6 succs { 10 }
;; 10 succs { 24 }
;; 7 succs { 10 }
;; 9 succs { 24 }
;; 24 succs { 9 23 }
;; 23 succs { 12 }
;; 11 succs { 12 }
;; 12 succs { 11 13 }
;; 13 succs { 15 }
;; 14 succs { 15 }
;; 15 succs { 14 16 }
;; 16 succs { 18 }
;; 17 succs { 18 }
;; 18 succs { 17 19 }
;; 19 succs { 21 }
;; 20 succs { 21 }
;; 21 succs { 20 22 }
;; 22 succs { 1 }

Analyzing function body size: dtc_read

IPA function summary for dtc_read/14 inlinable
  global time:     571.645916
  self size:       110
  global size:     0
  min size:       0
  self stack:      32
  global stack:    32
    size:86.000000, time:319.026108
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    put_cr/28 function body not available
      loop depth: 0 freq:1.00 size: 1 time: 10
    put_charp/27 function body not available
      loop depth: 1 freq:8.00 size: 2 time: 11
    OutStr/26 function body not available
      loop depth: 0 freq:1.00 size: 2 time: 11
       op0 is compile time invariant
    put_cr/28 function body not available
      loop depth: 0 freq:1.00 size: 1 time: 10
    put_charp/27 function body not available
      loop depth: 1 freq:8.00 size: 2 time: 11
    OutStr/26 function body not available
      loop depth: 0 freq:1.00 size: 2 time: 11
       op0 is compile time invariant
    monprintf/25 function body not available
      loop depth: 0 freq:1.00 size: 6 time: 15
       op0 is compile time invariant
       op1 change 99.990000% of time
       op2 change 99.990000% of time
       op3 change 99.990000% of time
       op4 change 99.990000% of time
    monprintf/25 function body not available
      loop depth: 0 freq:0.34 size: 2 time: 11
       op0 is compile time invariant
    dtc_clear/13 function not considered for inlining
      loop depth: 0 freq:0.66 size: 1 time: 10
    monprintf/25 function body not available
      loop depth: 0 freq:0.66 size: 2 time: 11
       op0 is compile time invariant


Analyzing function: dtc_clear/13
;; 2 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2 3 4 5
;;
;; Loop 1
;;  header 4, latch 3
;;  depth 1, outer 0
;;  nodes: 4 3
;; 2 succs { 4 }
;; 3 succs { 4 }
;; 4 succs { 3 5 }
;; 5 succs { 1 }

Analyzing function body size: dtc_clear

IPA function summary for dtc_clear/13 inlinable
  global time:     70.006301
  self size:       11
  global size:     0
  min size:       0
  self stack:      0
  global stack:    0
    size:7.000000, time:58.006301
    size:3.000000, time:2.000000,  executed if:(not inlined)
  calls:
    dtc_write/16 function not considered for inlining
      loop depth: 0 freq:1.00 size: 1 time: 10callee size:53 stack:12


Analyzing function: write_DTC_to_EEP/12
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2
;; 2 succs { 1 }

Analyzing function body size: write_DTC_to_EEP

IPA function summary for write_DTC_to_EEP/12 inlinable
  global time:     2.000000
  self size:       3
  global size:     0
  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)
  calls:


Analyzing function: CAN_DTC_Data_Set/11
;; 1 loops found
;;
;; Loop 0
;;  header 0, latch 1
;;  depth 0, outer -1
;;  nodes: 0 1 2
;; 2 succs { 1 }

Analyzing function body size: CAN_DTC_Data_Set

IPA function summary for CAN_DTC_Data_Set/11 inlinable
  global time:     2.000000
  self size:       3
  global size:     0
  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)
  calls:

Symbol table:

TABLE_DTC_SEND/31 (TABLE_DTC_SEND) @06c6f438
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)
  Availability: not_available
  Varpool flags:
string_to_int/30 (string_to_int) @06c61460
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: dtc_found_and_clear/23 (117775778 (estimated locally),18.84 per call) is_dtc_exist/22 (117775778 (estimated locally),21.01 per call) is_dtc_found/21 (117775778 (estimated locally),18.84 per call) dtc_send_table_set/19 (117013164 (estimated locally),27.37 per call) dtc_string_to_code/18 (119292717 (estimated locally),1.00 per call) 
  Calls: 
programDword_data_flash/29 (programDword_data_flash) @06c612a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: dtc_write/16 (119292716 (estimated locally),1.00 per call) 
  Calls: 
put_cr/28 (put_cr) @06c1f540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: dtc_read/14 (119292716 (estimated locally),1.00 per call) dtc_read/14 (119292715 (estimated locally),1.00 per call) 
  Calls: 
put_charp/27 (put_charp) @06c1f2a0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: dtc_read/14 (954449103 (estimated locally),8.00 per call) dtc_read/14 (954449096 (estimated locally),8.00 per call) 
  Calls: 
OutStr/26 (OutStr) @06c1f000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: dtc_read/14 (119292715 (estimated locally),1.00 per call) dtc_read/14 (119292715 (estimated locally),1.00 per call) 
  Calls: 
monprintf/25 (monprintf) @06c1fee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags: optimize_size
  Called by: dtc_read/14 (119292715 (estimated locally),1.00 per call) dtc_read/14 (40559523 (estimated locally),0.34 per call) dtc_read/14 (78733191 (estimated locally),0.66 per call) 
  Calls: 
uds/24 (uds) @06bee870
  Type: variable
  Body removed by symtab_remove_unreachable_nodes
  Visibility: external public
  References: 
  Referring: dtc_control/15 (read)dtc_control/15 (write)dtc_control/15 (read)
  Availability: not_available
  Varpool flags:
dtc_found_and_clear/23 (dtc_found_and_clear) @06c1f700
  Type: function definition analyzed
  Visibility: externally_visible public
  References: DTC_Item/4 (read)DTC_Item_Old/5 (read)TFAIL_NAME/17 (read)DTC_Item/4 (read)DTC_Item/4 (write)DTC_Item_Old/5 (read)DTC_Item_Old/5 (write)
  Referring: 
  Availability: available
  Function flags: count:6251614 (estimated locally) body optimize_size
  Called by: 
  Calls: string_to_int/30 (117775778 (estimated locally),18.84 per call) 
is_dtc_exist/22 (is_dtc_exist) @06c1f460
  Type: function definition analyzed
  Visibility: externally_visible public
  References: TFAIL_NAME/17 (read)
  Referring: 
  Availability: available
  Function flags: count:5605387 (estimated locally) body optimize_size
  Called by: 
  Calls: string_to_int/30 (117775778 (estimated locally),21.01 per call) 
is_dtc_found/21 (is_dtc_found) @06c1f1c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: DTC_Item/4 (read)DTC_Item_Old/5 (read)TFAIL_NAME/17 (read)
  Referring: 
  Availability: available
  Function flags: count:6251614 (estimated locally) body optimize_size
  Called by: 
  Calls: string_to_int/30 (117775778 (estimated locally),18.84 per call) 
dtc_count_set/20 (dtc_count_set) @06bddee0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: DTC_Item/4 (read)DTC_Item_Old/5 (read)
  Referring: 
  Availability: available
  Function flags: count:14909911 (estimated locally) body optimize_size
  Called by: 
  Calls: 
dtc_send_table_set/19 (dtc_send_table_set) @06bdd8c0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (read)DTC_Item_Old/5 (read)DTC_Item/4 (write)DTC_Item_Old/5 (write)TABLE_DTC_SEND/31 (write)DTC_Item/4 (read)DTC_Item_Old/5 (read)TFAIL_NAME/17 (read)DTC_Item_Old/5 (read)DTC_Item/4 (read)TABLE_DTC_SEND/31 (write)TABLE_DTC_SEND/31 (write)TABLE_DTC_SEND/31 (write)TABLE_DTC_SEND/31 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)TABLE_DTC_SEND/31 (write)
  Referring: 
  Availability: available
  Function flags: count:4274484 (estimated locally) body optimize_size
  Called by: 
  Calls: string_to_int/30 (117013164 (estimated locally),27.37 per call) 
dtc_string_to_code/18 (dtc_string_to_code) @06bdd380
  Type: function definition analyzed
  Visibility: externally_visible public
  References: TFAIL_NAME/17 (read)
  Referring: 
  Availability: available
  Function flags: count:119292716 (estimated locally) body optimize_size
  Called by: 
  Calls: string_to_int/30 (119292717 (estimated locally),1.00 per call) 
TFAIL_NAME/17 (TFAIL_NAME) @06bee048
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: is_dtc_found/21 (read)is_dtc_exist/22 (read)dtc_string_to_code/18 (read)dtc_send_table_set/19 (read)dtc_found_and_clear/23 (read)
  Availability: available
  Varpool flags: initialized
dtc_write/16 (dtc_write) @06bdda80
  Type: function definition analyzed
  Visibility: externally_visible public
  References: DTC_Item/4 (read)DTC_Item/4 (read)DTC_Item/4 (read)DTC_Item/4 (read)DTC_Item/4 (read)DTC_Item/4 (read)DTC_Item/4 (read)DTC_Item/4 (read)DTC_Item_Old/5 (read)DTC_Item_Old/5 (read)DTC_Item_Old/5 (read)DTC_Item_Old/5 (read)DTC_Item_Old/5 (read)DTC_Item_Old/5 (read)DTC_Item_Old/5 (read)DTC_Item_Old/5 (read)DTC_Item/4 (read)DTC_Item_wr/6 (write)DTC_Item_Old/5 (read)DTC_Item_wr_Old/7 (write)
  Referring: 
  Availability: available
  Function flags: count:119292716 (estimated locally) body optimize_size
  Called by: dtc_control/15 (19683298 (estimated locally),0.16 per call) dtc_clear/13 (119292717 (estimated locally),1.00 per call) 
  Calls: programDword_data_flash/29 (119292716 (estimated locally),1.00 per call) 
dtc_control/15 (dtc_control) @06bdd7e0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: uds/24 (read)uds/24 (write)DTC_Item/4 (read)DTC_Item_wr/6 (read)DTC_Item_Old/5 (read)DTC_Item_wr_Old/7 (read)DTC_Item_Old/5 (write)uds/24 (read)
  Referring: 
  Availability: available
  Function flags: count:119292718 (estimated locally) body optimize_size
  Called by: 
  Calls: dtc_write/16 (19683298 (estimated locally),0.16 per call) 
dtc_read/14 (dtc_read) @06bdd540
  Type: function definition analyzed
  Visibility: externally_visible public
  References: DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item/4 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item_Old/5 (write)DTC_Item/4 (read)DTC_Item_Old/5 (read)DTC_Item/4 (read)DTC_Item_wr/6 (write)DTC_Item_Old/5 (read)DTC_Item_wr_Old/7 (write)DTC_Item_event/8 (write)DTC_Item_new/10 (write)
  Referring: 
  Availability: available
  Function flags: count:119292713 (estimated locally) body optimize_size
  Called by: 
  Calls: put_cr/28 (119292716 (estimated locally),1.00 per call) put_charp/27 (954449103 (estimated locally),8.00 per call) OutStr/26 (119292715 (estimated locally),1.00 per call) put_cr/28 (119292715 (estimated locally),1.00 per call) put_charp/27 (954449096 (estimated locally),8.00 per call) OutStr/26 (119292715 (estimated locally),1.00 per call) monprintf/25 (119292715 (estimated locally),1.00 per call) monprintf/25 (40559523 (estimated locally),0.34 per call) dtc_clear/13 (78733191 (estimated locally),0.66 per call) monprintf/25 (78733191 (estimated locally),0.66 per call) 
dtc_clear/13 (dtc_clear) @06bdd2a0
  Type: function definition analyzed
  Visibility: externally_visible public
  References: DTC_Item/4 (write)DTC_Item_Old/5 (write)DTC_Item_event/8 (write)DTC_Item_new/10 (write)
  Referring: 
  Availability: available
  Function flags: count:119292716 (estimated locally) body optimize_size
  Called by: dtc_read/14 (78733191 (estimated locally),0.66 per call) 
  Calls: dtc_write/16 (119292717 (estimated locally),1.00 per call) 
write_DTC_to_EEP/12 (write_DTC_to_EEP) @06bdd000
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
CAN_DTC_Data_Set/11 (CAN_DTC_Data_Set) @06bd4540
  Type: function definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Function flags: count:1073741824 (estimated locally) body optimize_size
  Called by: 
  Calls: 
DTC_Item_new/10 (DTC_Item_new) @06bd2c18
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: dtc_clear/13 (write)dtc_read/14 (write)
  Availability: available
  Varpool flags:
DTC_Item_event_Old/9 (DTC_Item_event_Old) @06bd2bd0
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Varpool flags:
DTC_Item_event/8 (DTC_Item_event) @06bd2b88
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: dtc_clear/13 (write)dtc_read/14 (write)
  Availability: available
  Varpool flags:
DTC_Item_wr_Old/7 (DTC_Item_wr_Old) @06bd2b40
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: dtc_read/14 (write)dtc_write/16 (write)dtc_control/15 (read)
  Availability: available
  Varpool flags:
DTC_Item_wr/6 (DTC_Item_wr) @06bd2af8
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: dtc_read/14 (write)dtc_write/16 (write)dtc_control/15 (read)
  Availability: available
  Varpool flags:
DTC_Item_Old/5 (DTC_Item_Old) @06bd2ab0
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: is_dtc_found/21 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_read/14 (write)dtc_read/14 (write)dtc_read/14 (write)dtc_read/14 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_write/16 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_clear/13 (write)dtc_read/14 (write)dtc_read/14 (write)dtc_read/14 (read)dtc_read/14 (read)dtc_control/15 (write)dtc_send_table_set/19 (write)dtc_read/14 (write)dtc_control/15 (read)dtc_count_set/20 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_read/14 (write)dtc_send_table_set/19 (read)dtc_send_table_set/19 (write)dtc_send_table_set/19 (read)dtc_send_table_set/19 (read)dtc_found_and_clear/23 (read)dtc_found_and_clear/23 (read)dtc_found_and_clear/23 (write)
  Availability: available
  Varpool flags:
DTC_Item/4 (DTC_Item) @06bd2a68
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: is_dtc_found/21 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_read/14 (write)dtc_read/14 (write)dtc_read/14 (write)dtc_read/14 (write)dtc_read/14 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_write/16 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_clear/13 (write)dtc_write/16 (read)dtc_read/14 (write)dtc_read/14 (read)dtc_read/14 (read)dtc_control/15 (read)dtc_send_table_set/19 (write)dtc_read/14 (write)dtc_read/14 (write)dtc_count_set/20 (read)dtc_write/16 (read)dtc_write/16 (read)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (write)dtc_send_table_set/19 (read)dtc_send_table_set/19 (write)dtc_send_table_set/19 (read)dtc_send_table_set/19 (read)dtc_found_and_clear/23 (read)dtc_found_and_clear/23 (read)dtc_found_and_clear/23 (write)
  Availability: available
  Varpool flags:
DTC_ALINE/3 (DTC_ALINE) @06bd2a20
  Type: variable definition analyzed
  Visibility: externally_visible public
  References: 
  Referring: 
  Availability: available
  Varpool flags:
dtc_found_and_clear (uint32_t dtcc)
{
  uint8_t nDTC[9];
  uint32_t c1;
  uint8_t lim;
  uint8_t nc;
  uint8_t c;
  uint16_t p;
  uint16_t k;
  uint16_t j;
  uint16_t i;
  int _1;
  unsigned char _2;
  unsigned char _3;
  int _4;
  unsigned char _5;
  unsigned char _6;
  int _7;
  const char * _8;
  sizetype _9;
  const char * _10;
  int _11;
  char _12;
  unsigned char _13;
  _Bool _16;
  unsigned char _17;
  unsigned char _18;
  unsigned char _19;
  unsigned char _20;
  short unsigned int _21;
  uint8_t _30;
  long unsigned int _42;
  uint8_t _48;

  <bb 2> [local count: 6251614]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG k => 0
  # DEBUG BEGIN_STMT
  # DEBUG p => 0
  # DEBUG BEGIN_STMT
  # DEBUG j => 0
  goto <bb 20>; [100.00%]

  <bb 3> [local count: 15529917]:
  # DEBUG BEGIN_STMT
  # DEBUG c => 128
  # DEBUG BEGIN_STMT
  if (j_23 <= 1)
    goto <bb 5>; [25.00%]
  else
    goto <bb 4>; [75.00%]

  <bb 4> [local count: 11647438]:
  # DEBUG BEGIN_STMT
  # DEBUG lim => 3

  <bb 5> [local count: 15529917]:
  # lim_28 = PHI <8(3), 3(4)>
  # DEBUG lim => lim_28
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 18>; [100.00%]

  <bb 6> [local count: 255390101]:
  # DEBUG BEGIN_STMT
  _1 = (int) j_23;
  _2 = DTC_Item._c[_1];
  _3 = _2 & c_27;
  if (_3 != 0)
    goto <bb 7>; [27.00%]
  else
    goto <bb 8>; [73.00%]

  <bb 7> [local count: 119292716]:
  # k_38 = PHI <0(6), 0(8)>
  goto <bb 10>; [100.00%]

  <bb 8> [local count: 186434774]:
  _5 = DTC_Item_Old._c[_1];
  _6 = _5 & c_27;
  if (_6 != 0)
    goto <bb 7>; [27.00%]
  else
    goto <bb 17>; [73.00%]

  <bb 9> [local count: 954449109]:
  # DEBUG BEGIN_STMT
  _7 = (int) p_25;
  _8 = TFAIL_NAME[_7];
  _9 = (sizetype) k_24;
  _10 = _8 + _9;
  _11 = (int) k_24;
  _12 = *_10;
  nDTC[_11] = _12;
  # DEBUG BEGIN_STMT
  k_50 = k_24 + 1;
  # DEBUG k => k_50

  <bb 10> [local count: 1073741824]:
  # k_24 = PHI <k_38(7), k_50(9)>
  # DEBUG k => k_24
  # DEBUG BEGIN_STMT
  if (k_24 != 8)
    goto <bb 9>; [88.89%]
  else
    goto <bb 11>; [11.11%]

  <bb 11> [local count: 119292717]:
  # DEBUG BEGIN_STMT
  nDTC[8] = 0;
  # DEBUG BEGIN_STMT
  _13 = nDTC[0];
  if (_13 == 80)
    goto <bb 15>; [20.24%]
  else
    goto <bb 12>; [79.76%]

  <bb 12> [local count: 95147871]:
  # DEBUG BEGIN_STMT
  if (_13 == 67)
    goto <bb 15>; [34.00%]
  else
    goto <bb 13>; [66.00%]

  <bb 13> [local count: 62797595]:
  # DEBUG BEGIN_STMT
  if (_13 == 66)
    goto <bb 15>; [34.00%]
  else
    goto <bb 14>; [66.00%]

  <bb 14> [local count: 41446413]:
  # DEBUG BEGIN_STMT
  if (_13 == 85)
    goto <bb 15>; [96.34%]
  else
    goto <bb 19>; [3.66%]

  <bb 15> [local count: 117775778]:
  # c1_29 = PHI <0(11), 4194304(12), 8388608(13), 12582912(14)>
  # DEBUG c1 => c1_29
  # DEBUG BEGIN_STMT
  _42 = string_to_int (&MEM[(void *)&nDTC + 1B]);
  c1_43 = c1_29 + _42;
  # DEBUG c1 => c1_43
  # DEBUG BEGIN_STMT
  if (c1_43 == dtcc_44(D))
    goto <bb 16>; [3.66%]
  else
    goto <bb 17>; [96.34%]

  <bb 16> [local count: 4310593]:
  # _4 = PHI <_1(15)>
  # p_37 = PHI <p_25(15)>
  # c_15 = PHI <c_27(15)>
  # DEBUG BEGIN_STMT
  _16 = c_15 == 0;
  nc_45 = (uint8_t) _16;
  # DEBUG nc => nc_45
  # DEBUG BEGIN_STMT
  _17 = DTC_Item._c[_4];
  _18 = _17 & nc_45;
  DTC_Item._c[_4] = _18;
  # DEBUG BEGIN_STMT
  _19 = DTC_Item_Old._c[_4];
  _20 = _19 & nc_45;
  DTC_Item_Old._c[_4] = _20;
  # DEBUG BEGIN_STMT
  _48 = (uint8_t) p_37;
  goto <bb 21>; [100.00%]

  <bb 17> [local count: 249562569]:
  # DEBUG BEGIN_STMT
  p_51 = p_25 + 1;
  # DEBUG p => p_51
  # DEBUG BEGIN_STMT
  c_52 = c_27 >> 1;
  # DEBUG c => c_52
  # DEBUG BEGIN_STMT
  i_53 = i_22 + 1;
  # DEBUG i => i_53

  <bb 18> [local count: 265092486]:
  # i_22 = PHI <0(5), i_53(17)>
  # p_25 = PHI <p_26(5), p_51(17)>
  # c_27 = PHI <128(5), c_52(17)>
  # DEBUG c => c_27
  # DEBUG p => p_25
  # DEBUG i => i_22
  # DEBUG BEGIN_STMT
  _21 = (short unsigned int) lim_28;
  if (_21 > i_22)
    goto <bb 6>; [96.34%]
  else
    goto <bb 19>; [3.66%]

  <bb 19> [local count: 11219324]:
  # p_14 = PHI <p_25(14), p_25(18)>
  # DEBUG BEGIN_STMT
  j_54 = j_23 + 1;
  # DEBUG j => j_54

  <bb 20> [local count: 17470938]:
  # j_23 = PHI <0(2), j_54(19)>
  # p_26 = PHI <0(2), p_14(19)>
  # DEBUG p => p_26
  # DEBUG j => j_23
  # DEBUG BEGIN_STMT
  if (j_23 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 21>; [11.11%]

  <bb 21> [local count: 6251615]:
  # _30 = PHI <_48(16), 255(20)>
  nDTC ={v} {CLOBBER};
  return _30;

}


is_dtc_exist (uint32_t dtcc)
{
  uint8_t nDTC[9];
  uint32_t c1;
  uint8_t lim;
  uint16_t p;
  uint16_t k;
  uint16_t j;
  uint16_t i;
  int _1;
  const char * _2;
  sizetype _3;
  const char * _4;
  int _5;
  char _6;
  unsigned char _7;
  short unsigned int _8;
  uint8_t _15;
  long unsigned int _24;
  uint8_t _28;

  <bb 2> [local count: 5605387]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG k => 0
  # DEBUG BEGIN_STMT
  # DEBUG p => 0
  # DEBUG BEGIN_STMT
  # DEBUG j => 0
  goto <bb 17>; [100.00%]

  <bb 3> [local count: 10359516]:
  # DEBUG BEGIN_STMT
  if (j_10 <= 1)
    goto <bb 5>; [25.00%]
  else
    goto <bb 4>; [75.00%]

  <bb 4> [local count: 7769637]:
  # DEBUG BEGIN_STMT
  # DEBUG lim => 3

  <bb 5> [local count: 10359516]:
  # lim_13 = PHI <8(3), 3(4)>
  # DEBUG lim => lim_13
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 15>; [100.00%]

  <bb 6> [local count: 954449109]:
  # DEBUG BEGIN_STMT
  _1 = (int) j_10;
  _2 = TFAIL_NAME[_1];
  _3 = (sizetype) k_11;
  _4 = _2 + _3;
  _5 = (int) k_11;
  _6 = *_4;
  nDTC[_5] = _6;
  # DEBUG BEGIN_STMT
  k_30 = k_11 + 1;
  # DEBUG k => k_30

  <bb 7> [local count: 1073741824]:
  # k_11 = PHI <k_30(6), 0(19)>
  # DEBUG k => k_11
  # DEBUG BEGIN_STMT
  if (k_11 != 8)
    goto <bb 6>; [88.89%]
  else
    goto <bb 8>; [11.11%]

  <bb 8> [local count: 119292717]:
  # DEBUG BEGIN_STMT
  nDTC[8] = 0;
  # DEBUG BEGIN_STMT
  _7 = nDTC[0];
  if (_7 == 80)
    goto <bb 12>; [20.24%]
  else
    goto <bb 9>; [79.76%]

  <bb 9> [local count: 95147871]:
  # DEBUG BEGIN_STMT
  if (_7 == 67)
    goto <bb 12>; [34.00%]
  else
    goto <bb 10>; [66.00%]

  <bb 10> [local count: 62797595]:
  # DEBUG BEGIN_STMT
  if (_7 == 66)
    goto <bb 12>; [34.00%]
  else
    goto <bb 11>; [66.00%]

  <bb 11> [local count: 41446413]:
  # DEBUG BEGIN_STMT
  if (_7 == 85)
    goto <bb 12>; [96.34%]
  else
    goto <bb 16>; [3.66%]

  <bb 12> [local count: 117775778]:
  # c1_14 = PHI <0(8), 4194304(9), 8388608(10), 12582912(11)>
  # DEBUG c1 => c1_14
  # DEBUG BEGIN_STMT
  _24 = string_to_int (&MEM[(void *)&nDTC + 1B]);
  c1_25 = c1_14 + _24;
  # DEBUG c1 => c1_25
  # DEBUG BEGIN_STMT
  if (c1_25 == dtcc_26(D))
    goto <bb 13>; [3.66%]
  else
    goto <bb 14>; [96.34%]

  <bb 13> [local count: 4310593]:
  # j_12 = PHI <j_10(12)>
  # DEBUG BEGIN_STMT
  _28 = (uint8_t) j_12;
  goto <bb 18>; [100.00%]

  <bb 14> [local count: 113465185]:
  # DEBUG BEGIN_STMT
  i_27 = i_9 + 1;
  # DEBUG i => i_27

  <bb 15> [local count: 123824700]:
  # i_9 = PHI <0(5), i_27(14)>
  # DEBUG i => i_9
  # DEBUG BEGIN_STMT
  _8 = (short unsigned int) lim_13;
  if (_8 > i_9)
    goto <bb 19>; [96.34%]
  else
    goto <bb 16>; [3.66%]

  <bb 19> [local count: 119292716]:
  goto <bb 7>; [100.00%]

  <bb 16> [local count: 6048923]:
  # DEBUG BEGIN_STMT
  p_31 = j_10 + 1;
  # DEBUG p => p_31
  # DEBUG BEGIN_STMT
  # DEBUG j => p_31

  <bb 17> [local count: 11654309]:
  # j_10 = PHI <0(2), p_31(16)>
  # DEBUG p => j_10
  # DEBUG j => j_10
  # DEBUG BEGIN_STMT
  if (j_10 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 18>; [11.11%]

  <bb 18> [local count: 5605387]:
  # _15 = PHI <_28(13), 255(17)>
  nDTC ={v} {CLOBBER};
  return _15;

}


is_dtc_found (uint32_t dtcc)
{
  uint8_t nDTC[9];
  uint32_t c1;
  uint8_t lim;
  uint8_t c;
  uint16_t p;
  uint16_t k;
  uint16_t j;
  uint16_t i;
  int _1;
  unsigned char _2;
  unsigned char _3;
  unsigned char _5;
  unsigned char _6;
  int _7;
  const char * _8;
  sizetype _9;
  const char * _10;
  int _11;
  char _12;
  unsigned char _13;
  short unsigned int _14;
  uint8_t _23;
  long unsigned int _35;
  uint8_t _38;

  <bb 2> [local count: 6251614]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG k => 0
  # DEBUG BEGIN_STMT
  # DEBUG p => 0
  # DEBUG BEGIN_STMT
  # DEBUG j => 0
  goto <bb 20>; [100.00%]

  <bb 3> [local count: 15529917]:
  # DEBUG BEGIN_STMT
  # DEBUG c => 128
  # DEBUG BEGIN_STMT
  if (j_16 <= 1)
    goto <bb 5>; [25.00%]
  else
    goto <bb 4>; [75.00%]

  <bb 4> [local count: 11647438]:
  # DEBUG BEGIN_STMT
  # DEBUG lim => 3

  <bb 5> [local count: 15529917]:
  # lim_21 = PHI <8(3), 3(4)>
  # DEBUG lim => lim_21
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 18>; [100.00%]

  <bb 6> [local count: 255390101]:
  # DEBUG BEGIN_STMT
  _1 = (int) j_16;
  _2 = DTC_Item._c[_1];
  _3 = _2 & c_20;
  if (_3 != 0)
    goto <bb 7>; [27.00%]
  else
    goto <bb 8>; [73.00%]

  <bb 7> [local count: 119292716]:
  # k_31 = PHI <0(6), 0(8)>
  goto <bb 10>; [100.00%]

  <bb 8> [local count: 186434774]:
  _5 = DTC_Item_Old._c[_1];
  _6 = _5 & c_20;
  if (_6 != 0)
    goto <bb 7>; [27.00%]
  else
    goto <bb 17>; [73.00%]

  <bb 9> [local count: 954449109]:
  # DEBUG BEGIN_STMT
  _7 = (int) p_18;
  _8 = TFAIL_NAME[_7];
  _9 = (sizetype) k_17;
  _10 = _8 + _9;
  _11 = (int) k_17;
  _12 = *_10;
  nDTC[_11] = _12;
  # DEBUG BEGIN_STMT
  k_40 = k_17 + 1;
  # DEBUG k => k_40

  <bb 10> [local count: 1073741824]:
  # k_17 = PHI <k_31(7), k_40(9)>
  # DEBUG k => k_17
  # DEBUG BEGIN_STMT
  if (k_17 != 8)
    goto <bb 9>; [88.89%]
  else
    goto <bb 11>; [11.11%]

  <bb 11> [local count: 119292717]:
  # DEBUG BEGIN_STMT
  nDTC[8] = 0;
  # DEBUG BEGIN_STMT
  _13 = nDTC[0];
  if (_13 == 80)
    goto <bb 15>; [20.24%]
  else
    goto <bb 12>; [79.76%]

  <bb 12> [local count: 95147871]:
  # DEBUG BEGIN_STMT
  if (_13 == 67)
    goto <bb 15>; [34.00%]
  else
    goto <bb 13>; [66.00%]

  <bb 13> [local count: 62797595]:
  # DEBUG BEGIN_STMT
  if (_13 == 66)
    goto <bb 15>; [34.00%]
  else
    goto <bb 14>; [66.00%]

  <bb 14> [local count: 41446413]:
  # DEBUG BEGIN_STMT
  if (_13 == 85)
    goto <bb 15>; [96.34%]
  else
    goto <bb 19>; [3.66%]

  <bb 15> [local count: 117775778]:
  # c1_22 = PHI <0(11), 4194304(12), 8388608(13), 12582912(14)>
  # DEBUG c1 => c1_22
  # DEBUG BEGIN_STMT
  _35 = string_to_int (&MEM[(void *)&nDTC + 1B]);
  c1_36 = c1_22 + _35;
  # DEBUG c1 => c1_36
  # DEBUG BEGIN_STMT
  if (c1_36 == dtcc_37(D))
    goto <bb 16>; [3.66%]
  else
    goto <bb 17>; [96.34%]

  <bb 16> [local count: 4310593]:
  # p_4 = PHI <p_18(15)>
  # DEBUG BEGIN_STMT
  _38 = (uint8_t) p_4;
  goto <bb 21>; [100.00%]

  <bb 17> [local count: 249562569]:
  # DEBUG BEGIN_STMT
  p_41 = p_18 + 1;
  # DEBUG p => p_41
  # DEBUG BEGIN_STMT
  c_42 = c_20 >> 1;
  # DEBUG c => c_42
  # DEBUG BEGIN_STMT
  i_43 = i_15 + 1;
  # DEBUG i => i_43

  <bb 18> [local count: 265092486]:
  # i_15 = PHI <0(5), i_43(17)>
  # p_18 = PHI <p_19(5), p_41(17)>
  # c_20 = PHI <128(5), c_42(17)>
  # DEBUG c => c_20
  # DEBUG p => p_18
  # DEBUG i => i_15
  # DEBUG BEGIN_STMT
  _14 = (short unsigned int) lim_21;
  if (_14 > i_15)
    goto <bb 6>; [96.34%]
  else
    goto <bb 19>; [3.66%]

  <bb 19> [local count: 11219324]:
  # p_30 = PHI <p_18(14), p_18(18)>
  # DEBUG BEGIN_STMT
  j_44 = j_16 + 1;
  # DEBUG j => j_44

  <bb 20> [local count: 17470938]:
  # j_16 = PHI <0(2), j_44(19)>
  # p_19 = PHI <0(2), p_30(19)>
  # DEBUG p => p_19
  # DEBUG j => j_16
  # DEBUG BEGIN_STMT
  if (j_16 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 21>; [11.11%]

  <bb 21> [local count: 6251615]:
  # _23 = PHI <_38(16), 255(20)>
  nDTC ={v} {CLOBBER};
  return _23;

}


dtc_count_set ()
{
  uint16_t count;
  uint16_t j;
  uint16_t i;
  uint8_t c;
  int _1;
  unsigned char _2;
  unsigned char _3;
  unsigned char _4;
  unsigned char _5;

  <bb 2> [local count: 14909911]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG count => 0
  # DEBUG BEGIN_STMT
  # DEBUG j => 0
  goto <bb 9>; [100.00%]

  <bb 3> [local count: 954449107]:
  # DEBUG BEGIN_STMT
  _1 = (int) j_9;
  _2 = DTC_Item._c[_1];
  _3 = _2 & c_7;
  if (_3 != 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 4>; [50.00%]

  <bb 4> [local count: 477224553]:
  _4 = DTC_Item_Old._c[_1];
  _5 = _4 & c_7;
  if (_5 != 0)
    goto <bb 5>; [50.00%]
  else
    goto <bb 6>; [50.00%]

  <bb 5> [local count: 715836831]:
  # DEBUG BEGIN_STMT
  count_16 = count_11 + 1;
  # DEBUG count => count_16

  <bb 6> [local count: 954449107]:
  # count_10 = PHI <count_11(4), count_16(5)>
  # DEBUG count => count_10
  # DEBUG BEGIN_STMT
  c_17 = c_7 >> 1;
  # DEBUG c => c_17
  # DEBUG BEGIN_STMT
  i_18 = i_8 + 1;
  # DEBUG i => i_18

  <bb 7> [local count: 1073741824]:
  # c_7 = PHI <c_17(6), 128(11)>
  # i_8 = PHI <i_18(6), 0(11)>
  # count_11 = PHI <count_10(6), count_12(11)>
  # DEBUG count => count_11
  # DEBUG i => i_8
  # DEBUG c => c_7
  # DEBUG BEGIN_STMT
  if (i_8 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 8>; [11.11%]

  <bb 8> [local count: 119292717]:
  # count_13 = PHI <count_11(7)>
  # DEBUG BEGIN_STMT
  j_15 = j_9 + 1;
  # DEBUG j => j_15

  <bb 9> [local count: 134202628]:
  # j_9 = PHI <0(2), j_15(8)>
  # count_12 = PHI <0(2), count_13(8)>
  # DEBUG count => count_12
  # DEBUG j => j_9
  # DEBUG BEGIN_STMT
  if (j_9 != 8)
    goto <bb 11>; [88.89%]
  else
    goto <bb 10>; [11.11%]

  <bb 11> [local count: 119292716]:
  goto <bb 7>; [100.00%]

  <bb 10> [local count: 14909912]:
  # count_6 = PHI <count_12(9)>
  # DEBUG BEGIN_STMT
  return count_6;

}


dtc_send_table_set (uint8_t type)
{
  uint8_t DTC_PUSH_OLD[9];
  uint8_t DTC_PUSH[9];
  uint8_t nDTC[9];
  uint32_t c1;
  uint8_t a;
  uint8_t c;
  uint16_t pt;
  uint16_t p;
  uint16_t k;
  uint16_t j;
  uint16_t i;
  int _1;
  unsigned char _2;
  unsigned char _3;
  int _4;
  int _7;
  int _8;
  unsigned char _9;
  unsigned char _10;
  unsigned char _12;
  unsigned char _13;
  int _14;
  const char * _15;
  sizetype _16;
  const char * _17;
  int _18;
  char _19;
  unsigned char _20;
  unsigned char _21;
  unsigned char _22;
  unsigned char _23;
  unsigned char _24;
  long unsigned int _25;
  int _26;
  unsigned char _27;
  long unsigned int _28;
  int _29;
  unsigned char _30;
  int _31;
  unsigned char _32;
  int _33;
  unsigned char _34;
  unsigned char _35;
  unsigned char _36;
  unsigned char _37;
  unsigned char _38;
  unsigned char _39;
  int _40;
  long unsigned int _111;

  <bb 2> [local count: 4274484]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  DTC_Item.f.lv = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.hv = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.can_l = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.can_l_busoff = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.can_r = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.can_r_busoff = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.can_ecu = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.can_ecu_busoff = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d1_oc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d1_open_short = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d1_g_vcc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d2_oc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d2_open_short = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d2_g_vcc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d3_oc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d3_open_short = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d3_g_vcc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d4_oc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d4_open_short = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d4_g_vcc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d5_oc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d5_open_short = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d5_g_vcc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d6_oc = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d6_open_short = 1;
  # DEBUG BEGIN_STMT
  DTC_Item.f.d6_g_vcc = 1;
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 34199719]:
  # DEBUG BEGIN_STMT
  _1 = (int) i_41;
  _2 = DTC_Item._c[_1];
  DTC_PUSH[_1] = _2;
  # DEBUG BEGIN_STMT
  _3 = DTC_Item_Old._c[_1];
  DTC_PUSH_OLD[_1] = _3;
  # DEBUG BEGIN_STMT
  i_132 = i_41 + 1;
  # DEBUG i => i_132

  <bb 4> [local count: 38474203]:
  # i_41 = PHI <0(2), i_132(3)>
  # DEBUG i => i_41
  # DEBUG BEGIN_STMT
  if (i_41 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 5>; [11.11%]

  <bb 5> [local count: 4274484]:
  # DEBUG BEGIN_STMT
  if (type_94(D) == 10)
    goto <bb 34>; [34.00%]
  else
    goto <bb 8>; [66.00%]

  <bb 34> [local count: 1453325]:
  goto <bb 7>; [100.00%]

  <bb 6> [local count: 11627905]:
  # DEBUG BEGIN_STMT
  _4 = (int) i_42;
  DTC_Item._c[_4] = 255;
  # DEBUG BEGIN_STMT
  DTC_Item_Old._c[_4] = 255;
  # DEBUG BEGIN_STMT
  i_97 = i_42 + 1;
  # DEBUG i => i_97

  <bb 7> [local count: 13081229]:
  # i_42 = PHI <i_97(6), 0(34)>
  # DEBUG i => i_42
  # DEBUG BEGIN_STMT
  if (i_42 != 8)
    goto <bb 6>; [88.89%]
  else
    goto <bb 8>; [11.11%]

  <bb 8> [local count: 4274484]:
  # i_11 = PHI <0(7), 0(5)>
  goto <bb 10>; [100.00%]

  <bb 9> [local count: 423173921]:
  # DEBUG BEGIN_STMT
  _7 = (int) i_43;
  TABLE_DTC_SEND[_7] = 0;
  # DEBUG BEGIN_STMT
  i_129 = i_43 + 1;
  # DEBUG i => i_129

  <bb 10> [local count: 427448405]:
  # i_43 = PHI <i_11(8), i_129(9)>
  # DEBUG i => i_43
  # DEBUG BEGIN_STMT
  if (i_43 != 200)
    goto <bb 9>; [99.00%]
  else
    goto <bb 32>; [1.00%]

  <bb 32> [local count: 4274484]:
  goto <bb 28>; [100.00%]

  <bb 11> [local count: 255390101]:
  # DEBUG BEGIN_STMT
  _8 = (int) j_45;
  _9 = DTC_Item._c[_8];
  _10 = _9 & c_52;
  if (_10 != 0)
    goto <bb 12>; [27.00%]
  else
    goto <bb 13>; [73.00%]

  <bb 12> [local count: 119292716]:
  # k_58 = PHI <0(11), 0(13)>
  goto <bb 15>; [100.00%]

  <bb 13> [local count: 186434773]:
  _12 = DTC_Item_Old._c[_8];
  _13 = _12 & c_52;
  if (_13 != 0)
    goto <bb 12>; [27.00%]
  else
    goto <bb 25>; [73.00%]

  <bb 14> [local count: 954449107]:
  # DEBUG BEGIN_STMT
  _14 = (int) p_47;
  _15 = TFAIL_NAME[_14];
  _16 = (sizetype) k_46;
  _17 = _15 + _16;
  _18 = (int) k_46;
  _19 = *_17;
  nDTC[_18] = _19;
  # DEBUG BEGIN_STMT
  k_123 = k_46 + 1;
  # DEBUG k => k_123

  <bb 15> [local count: 1073741824]:
  # k_46 = PHI <k_58(12), k_123(14)>
  # DEBUG k => k_46
  # DEBUG BEGIN_STMT
  if (k_46 != 8)
    goto <bb 14>; [88.89%]
  else
    goto <bb 16>; [11.11%]

  <bb 16> [local count: 119292717]:
  # DEBUG BEGIN_STMT
  nDTC[8] = 0;
  # DEBUG BEGIN_STMT
  _20 = nDTC[0];
  if (_20 == 80)
    goto <bb 20>; [20.24%]
  else
    goto <bb 17>; [79.76%]

  <bb 17> [local count: 95147871]:
  # DEBUG BEGIN_STMT
  if (_20 == 67)
    goto <bb 20>; [34.00%]
  else
    goto <bb 18>; [66.00%]

  <bb 18> [local count: 62797595]:
  # DEBUG BEGIN_STMT
  if (_20 == 66)
    goto <bb 20>; [34.00%]
  else
    goto <bb 19>; [66.00%]

  <bb 19> [local count: 41446413]:
  # DEBUG BEGIN_STMT
  if (_20 == 85)
    goto <bb 20>; [94.50%]
  else
    goto <bb 27>; [5.50%]

  <bb 20> [local count: 117013164]:
  # c1_55 = PHI <0(16), 4194304(17), 8388608(18), 12582912(19)>
  # DEBUG c1 => c1_55
  # DEBUG BEGIN_STMT
  _111 = string_to_int (&MEM[(void *)&nDTC + 1B]);
  c1_112 = c1_55 + _111;
  # DEBUG c1 => c1_112
  # DEBUG BEGIN_STMT
  # DEBUG a => 0
  # DEBUG BEGIN_STMT
  _21 = DTC_Item_Old._c[_8];
  _22 = _21 & c_52;
  if (_22 != 0)
    goto <bb 21>; [50.00%]
  else
    goto <bb 22>; [50.00%]

  <bb 21> [local count: 58506582]:
  # DEBUG BEGIN_STMT
  # DEBUG a => 8

  <bb 22> [local count: 117013164]:
  # a_53 = PHI <0(20), 8(21)>
  # DEBUG a => a_53
  # DEBUG BEGIN_STMT
  _23 = DTC_Item._c[_8];
  _24 = _23 & c_52;
  if (_24 != 0)
    goto <bb 23>; [50.00%]
  else
    goto <bb 24>; [50.00%]

  <bb 23> [local count: 58506582]:
  # DEBUG BEGIN_STMT
  a_113 = a_53 | 1;
  # DEBUG a => a_113

  <bb 24> [local count: 117013164]:
  # a_54 = PHI <a_53(22), a_113(23)>
  # DEBUG a => a_54
  # DEBUG BEGIN_STMT
  _25 = c1_112 >> 16;
  _26 = (int) pt_50;
  _27 = (unsigned char) _25;
  TABLE_DTC_SEND[_26] = _27;
  # DEBUG BEGIN_STMT
  pt_115 = pt_50 + 1;
  # DEBUG pt => pt_115
  # DEBUG BEGIN_STMT
  _28 = c1_112 >> 8;
  _29 = (int) pt_115;
  _30 = (unsigned char) _28;
  TABLE_DTC_SEND[_29] = _30;
  # DEBUG BEGIN_STMT
  pt_117 = pt_50 + 2;
  # DEBUG pt => pt_117
  # DEBUG BEGIN_STMT
  _31 = (int) pt_117;
  _32 = (unsigned char) c1_112;
  TABLE_DTC_SEND[_31] = _32;
  # DEBUG BEGIN_STMT
  pt_119 = pt_50 + 3;
  # DEBUG pt => pt_119
  # DEBUG BEGIN_STMT
  _33 = (int) pt_119;
  TABLE_DTC_SEND[_33] = a_54;
  # DEBUG BEGIN_STMT
  pt_121 = pt_50 + 4;
  # DEBUG pt => pt_121

  <bb 25> [local count: 253110549]:
  # pt_49 = PHI <pt_50(13), pt_121(24)>
  # DEBUG pt => pt_49
  # DEBUG BEGIN_STMT
  p_124 = p_47 + 1;
  # DEBUG p => p_124
  # DEBUG BEGIN_STMT
  c_125 = c_52 >> 1;
  # DEBUG c => c_125
  # DEBUG BEGIN_STMT
  i_126 = i_44 + 1;
  # DEBUG i => i_126

  <bb 26> [local count: 287310272]:
  # i_44 = PHI <i_126(25), 0(33)>
  # p_47 = PHI <p_124(25), p_48(33)>
  # pt_50 = PHI <pt_49(25), pt_51(33)>
  # c_52 = PHI <c_125(25), 128(33)>
  # DEBUG c => c_52
  # DEBUG pt => pt_50
  # DEBUG p => p_47
  # DEBUG i => i_44
  # DEBUG BEGIN_STMT
  if (i_44 != 8)
    goto <bb 11>; [88.89%]
  else
    goto <bb 27>; [11.11%]

  <bb 27> [local count: 34199724]:
  # p_5 = PHI <p_47(19), p_47(26)>
  # pt_6 = PHI <pt_50(19), pt_50(26)>
  # DEBUG BEGIN_STMT
  j_127 = j_45 + 1;
  # DEBUG j => j_127

  <bb 28> [local count: 38474208]:
  # j_45 = PHI <j_127(27), 0(32)>
  # p_48 = PHI <p_5(27), 0(32)>
  # pt_51 = PHI <pt_6(27), 0(32)>
  # DEBUG k => NULL
  # DEBUG pt => pt_51
  # DEBUG p => p_48
  # DEBUG j => j_45
  # DEBUG BEGIN_STMT
  if (j_45 != 8)
    goto <bb 33>; [88.89%]
  else
    goto <bb 29>; [11.11%]

  <bb 33> [local count: 34199723]:
  goto <bb 26>; [100.00%]

  <bb 29> [local count: 4274485]:
  # pt_105 = PHI <pt_51(28)>
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  if (type_94(D) == 10)
    goto <bb 30>; [34.00%]
  else
    goto <bb 31>; [66.00%]

  <bb 30> [local count: 1453325]:
  # DEBUG BEGIN_STMT
  _34 = DTC_PUSH[0];
  DTC_Item._c[0] = _34;
  # DEBUG BEGIN_STMT
  _35 = DTC_PUSH[1];
  DTC_Item._c[1] = _35;
  # DEBUG BEGIN_STMT
  _36 = DTC_PUSH[2];
  DTC_Item._c[2] = _36;
  # DEBUG BEGIN_STMT
  _37 = DTC_PUSH_OLD[0];
  DTC_Item_Old._c[0] = _37;
  # DEBUG BEGIN_STMT
  _38 = DTC_PUSH_OLD[1];
  DTC_Item_Old._c[1] = _38;
  # DEBUG BEGIN_STMT
  _39 = DTC_PUSH_OLD[2];
  DTC_Item_Old._c[2] = _39;

  <bb 31> [local count: 4274485]:
  # DEBUG BEGIN_STMT
  _40 = (int) pt_105;
  TABLE_DTC_SEND[_40] = 0;
  # DEBUG BEGIN_STMT
  nDTC ={v} {CLOBBER};
  DTC_PUSH ={v} {CLOBBER};
  DTC_PUSH_OLD ={v} {CLOBBER};
  return pt_105;

}


dtc_string_to_code (uint16_t p)
{
  uint32_t c1;
  uint8_t nDTC[9];
  uint16_t k;
  int _1;
  const char * _2;
  sizetype _3;
  const char * _4;
  int _5;
  char _6;
  unsigned char _7;
  long unsigned int _14;

  <bb 2> [local count: 119292716]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG c1 => 0
  # DEBUG BEGIN_STMT
  # DEBUG k => 0
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 954449108]:
  # DEBUG BEGIN_STMT
  _1 = (int) p_17(D);
  _2 = TFAIL_NAME[_1];
  _3 = (sizetype) k_8;
  _4 = _2 + _3;
  _5 = (int) k_8;
  _6 = *_4;
  nDTC[_5] = _6;
  # DEBUG BEGIN_STMT
  k_19 = k_8 + 1;
  # DEBUG k => k_19

  <bb 4> [local count: 1073741824]:
  # k_8 = PHI <0(2), k_19(3)>
  # DEBUG k => k_8
  # DEBUG BEGIN_STMT
  if (k_8 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 5>; [11.11%]

  <bb 5> [local count: 119292717]:
  # DEBUG BEGIN_STMT
  nDTC[8] = 0;
  # DEBUG BEGIN_STMT
  _7 = nDTC[0];
  if (_7 == 80)
    goto <bb 10>; [34.00%]
  else
    goto <bb 6>; [66.00%]

  <bb 6> [local count: 78733193]:
  # DEBUG BEGIN_STMT
  if (_7 == 67)
    goto <bb 10>; [34.00%]
  else
    goto <bb 7>; [66.00%]

  <bb 7> [local count: 51963907]:
  # DEBUG BEGIN_STMT
  if (_7 == 66)
    goto <bb 10>; [34.00%]
  else
    goto <bb 8>; [66.00%]

  <bb 8> [local count: 34296179]:
  # DEBUG BEGIN_STMT
  if (_7 == 85)
    goto <bb 9>; [34.00%]
  else
    goto <bb 10>; [66.00%]

  <bb 9> [local count: 11660701]:
  # DEBUG BEGIN_STMT
  # DEBUG c1 => 12582912

  <bb 10> [local count: 119292717]:
  # c1_9 = PHI <0(5), 4194304(6), 8388608(7), 0(8), 12582912(9)>
  # DEBUG c1 => c1_9
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _14 = string_to_int (&nDTC[1]);
  c1_15 = c1_9 + _14;
  # DEBUG c1 => c1_15
  # DEBUG BEGIN_STMT
  nDTC ={v} {CLOBBER};
  return c1_15;

}


dtc_write ()
{
  volatile vuint32_t data[3];
  uint32_t i;
  unsigned char _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _4;
  long unsigned int _5;
  unsigned char _6;
  long unsigned int _7;
  long unsigned int _8;
  long unsigned int _9;
  long unsigned int _10;
  long unsigned int _11;
  unsigned char _12;
  long unsigned int _13;
  long unsigned int _14;
  long unsigned int _15;
  long unsigned int _16;
  long unsigned int _17;
  unsigned char _18;
  long unsigned int _19;
  long unsigned int _20;
  unsigned char _21;
  long unsigned int _22;
  long unsigned int _23;
  long unsigned int _24;
  long unsigned int _25;
  unsigned char _26;
  long unsigned int _27;
  long unsigned int _28;
  long unsigned int _29;
  long unsigned int _30;
  long unsigned int _31;
  unsigned char _32;
  long unsigned int _33;
  long unsigned int _34;
  long unsigned int _35;
  long unsigned int _36;
  long unsigned int _37;
  unsigned char _38;
  long unsigned int _39;
  long unsigned int _40;
  unsigned char _41;
  long unsigned int _42;
  long unsigned int _43;
  long unsigned int _44;
  long unsigned int _45;
  unsigned char _46;
  long unsigned int _47;
  long unsigned int _48;
  long unsigned int _49;
  long unsigned int _50;
  long unsigned int _51;
  unsigned char _52;
  long unsigned int _53;
  long unsigned int _54;
  long unsigned int _55;
  long unsigned int _56;
  long unsigned int _57;
  unsigned char _58;
  long unsigned int _59;
  long unsigned int _60;
  unsigned char _61;
  long unsigned int _62;
  long unsigned int _63;
  long unsigned int _64;
  long unsigned int _65;
  unsigned char _66;
  long unsigned int _67;
  long unsigned int _68;
  long unsigned int _69;
  long unsigned int _70;
  long unsigned int _71;
  unsigned char _72;
  long unsigned int _73;
  long unsigned int _74;
  long unsigned int _75;
  long unsigned int _76;
  long unsigned int _77;
  unsigned char _78;
  long unsigned int _79;
  long unsigned int _80;
  unsigned char _81;
  unsigned char _82;

  <bb 2> [local count: 119292716]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG ps => 8421392
  # DEBUG BEGIN_STMT
  _1 = DTC_Item._c[0];
  _2 = (long unsigned int) _1;
  data[0] ={v} _2;
  # DEBUG BEGIN_STMT
  _3 ={v} data[0];
  _4 = _3 << 8;
  data[0] ={v} _4;
  # DEBUG BEGIN_STMT
  _5 ={v} data[0];
  _6 = DTC_Item._c[1];
  _7 = (long unsigned int) _6;
  _8 = _5 + _7;
  data[0] ={v} _8;
  # DEBUG BEGIN_STMT
  _9 ={v} data[0];
  _10 = _9 << 8;
  data[0] ={v} _10;
  # DEBUG BEGIN_STMT
  _11 ={v} data[0];
  _12 = DTC_Item._c[2];
  _13 = (long unsigned int) _12;
  _14 = _11 + _13;
  data[0] ={v} _14;
  # DEBUG BEGIN_STMT
  _15 ={v} data[0];
  _16 = _15 << 8;
  data[0] ={v} _16;
  # DEBUG BEGIN_STMT
  _17 ={v} data[0];
  _18 = DTC_Item._c[3];
  _19 = (long unsigned int) _18;
  _20 = _17 + _19;
  data[0] ={v} _20;
  # DEBUG BEGIN_STMT
  _21 = DTC_Item._c[4];
  _22 = (long unsigned int) _21;
  data[1] ={v} _22;
  # DEBUG BEGIN_STMT
  _23 ={v} data[1];
  _24 = _23 << 8;
  data[1] ={v} _24;
  # DEBUG BEGIN_STMT
  _25 ={v} data[1];
  _26 = DTC_Item._c[5];
  _27 = (long unsigned int) _26;
  _28 = _25 + _27;
  data[1] ={v} _28;
  # DEBUG BEGIN_STMT
  _29 ={v} data[1];
  _30 = _29 << 8;
  data[1] ={v} _30;
  # DEBUG BEGIN_STMT
  _31 ={v} data[1];
  _32 = DTC_Item._c[6];
  _33 = (long unsigned int) _32;
  _34 = _31 + _33;
  data[1] ={v} _34;
  # DEBUG BEGIN_STMT
  _35 ={v} data[1];
  _36 = _35 << 8;
  data[1] ={v} _36;
  # DEBUG BEGIN_STMT
  _37 ={v} data[1];
  _38 = DTC_Item._c[7];
  _39 = (long unsigned int) _38;
  _40 = _37 + _39;
  data[1] ={v} _40;
  # DEBUG BEGIN_STMT
  # DEBUG ps => 8421400
  # DEBUG BEGIN_STMT
  _41 = DTC_Item_Old._c[0];
  _42 = (long unsigned int) _41;
  data[0] ={v} _42;
  # DEBUG BEGIN_STMT
  _43 ={v} data[0];
  _44 = _43 << 8;
  data[0] ={v} _44;
  # DEBUG BEGIN_STMT
  _45 ={v} data[0];
  _46 = DTC_Item_Old._c[1];
  _47 = (long unsigned int) _46;
  _48 = _45 + _47;
  data[0] ={v} _48;
  # DEBUG BEGIN_STMT
  _49 ={v} data[0];
  _50 = _49 << 8;
  data[0] ={v} _50;
  # DEBUG BEGIN_STMT
  _51 ={v} data[0];
  _52 = DTC_Item_Old._c[2];
  _53 = (long unsigned int) _52;
  _54 = _51 + _53;
  data[0] ={v} _54;
  # DEBUG BEGIN_STMT
  _55 ={v} data[0];
  _56 = _55 << 8;
  data[0] ={v} _56;
  # DEBUG BEGIN_STMT
  _57 ={v} data[0];
  _58 = DTC_Item_Old._c[3];
  _59 = (long unsigned int) _58;
  _60 = _57 + _59;
  data[0] ={v} _60;
  # DEBUG BEGIN_STMT
  _61 = DTC_Item_Old._c[4];
  _62 = (long unsigned int) _61;
  data[1] ={v} _62;
  # DEBUG BEGIN_STMT
  _63 ={v} data[1];
  _64 = _63 << 8;
  data[1] ={v} _64;
  # DEBUG BEGIN_STMT
  _65 ={v} data[1];
  _66 = DTC_Item_Old._c[5];
  _67 = (long unsigned int) _66;
  _68 = _65 + _67;
  data[1] ={v} _68;
  # DEBUG BEGIN_STMT
  _69 ={v} data[1];
  _70 = _69 << 8;
  data[1] ={v} _70;
  # DEBUG BEGIN_STMT
  _71 ={v} data[1];
  _72 = DTC_Item_Old._c[6];
  _73 = (long unsigned int) _72;
  _74 = _71 + _73;
  data[1] ={v} _74;
  # DEBUG BEGIN_STMT
  _75 ={v} data[1];
  _76 = _75 << 8;
  data[1] ={v} _76;
  # DEBUG BEGIN_STMT
  _77 ={v} data[1];
  _78 = DTC_Item_Old._c[7];
  _79 = (long unsigned int) _78;
  _80 = _77 + _79;
  data[1] ={v} _80;
  # DEBUG BEGIN_STMT
  data[0] ={v} 10002;
  # DEBUG BEGIN_STMT
  data[1] ={v} 10003;
  # DEBUG BEGIN_STMT
  # DEBUG ps => 8421504
  # DEBUG BEGIN_STMT
  programDword_data_flash (8421504, &data);
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 954449108]:
  # DEBUG BEGIN_STMT
  _81 = DTC_Item._c[i_83];
  DTC_Item_wr._c[i_83] = _81;
  # DEBUG BEGIN_STMT
  _82 = DTC_Item_Old._c[i_83];
  DTC_Item_wr_Old._c[i_83] = _82;
  # DEBUG BEGIN_STMT
  i_119 = i_83 + 1;
  # DEBUG i => i_119

  <bb 4> [local count: 1073741824]:
  # i_83 = PHI <0(2), i_119(3)>
  # DEBUG i => i_83
  # DEBUG BEGIN_STMT
  if (i_83 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 5>; [11.11%]

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

}


dtc_control ()
{
  uint8_t wr;
  uint8_t i;
  unsigned char _1;
  int _2;
  unsigned char _3;
  unsigned char _5;
  unsigned char _8;
  unsigned char _9;
  unsigned char _10;
  short unsigned int _11;

  <bb 2> [local count: 119292718]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  _1 = uds.session;
  if (_1 <= 1)
    goto <bb 3>; [41.00%]
  else
    goto <bb 10>; [59.00%]

  <bb 3> [local count: 48910014]:
  # DEBUG BEGIN_STMT
  uds.dtc_check_inhibit = 0;

  <bb 10> [local count: 119292718]:
  # i_16 = PHI <0(3), 0(2)>
  # wr_6 = PHI <0(3), 0(2)>
  goto <bb 15>; [100.00%]

  <bb 5> [local count: 954449108]:
  # DEBUG BEGIN_STMT
  _2 = (int) i_12;
  _3 = DTC_Item._c[_2];
  _5 = DTC_Item_wr._c[_2];
  if (_3 != _5)
    goto <bb 6>; [66.00%]
  else
    goto <bb 7>; [34.00%]

  <bb 6> [local count: 629936412]:
  # DEBUG BEGIN_STMT
  wr_22 = wr_15 + 1;
  # DEBUG wr => wr_22

  <bb 7> [local count: 954449108]:
  # wr_13 = PHI <wr_15(5), wr_22(6)>
  # DEBUG wr => wr_13
  # DEBUG BEGIN_STMT
  _8 = DTC_Item_Old._c[_2];
  _9 = DTC_Item_wr_Old._c[_2];
  if (_8 != _9)
    goto <bb 8>; [66.00%]
  else
    goto <bb 9>; [34.00%]

  <bb 8> [local count: 629936412]:
  # DEBUG BEGIN_STMT
  wr_23 = wr_13 + 1;
  # DEBUG wr => wr_23

  <bb 9> [local count: 954449108]:
  # wr_14 = PHI <wr_13(7), wr_23(8)>
  # DEBUG wr => wr_14
  # DEBUG BEGIN_STMT
  _10 = _3 | _8;
  DTC_Item_Old._c[_2] = _10;
  # DEBUG BEGIN_STMT
  i_25 = i_12 + 1;
  # DEBUG i => i_25

  <bb 15> [local count: 1073741824]:
  # i_12 = PHI <i_16(10), i_25(9)>
  # wr_15 = PHI <wr_6(10), wr_14(9)>
  # DEBUG pX => NULL
  # DEBUG pX_old => NULL
  # DEBUG wr => wr_15
  # DEBUG i => i_12
  # DEBUG BEGIN_STMT
  if (i_12 != 8)
    goto <bb 5>; [88.89%]
  else
    goto <bb 11>; [11.11%]

  <bb 11> [local count: 119292717]:
  # wr_4 = PHI <wr_15(15)>
  # DEBUG BEGIN_STMT
  if (wr_4 != 0)
    goto <bb 12>; [50.00%]
  else
    goto <bb 14>; [50.00%]

  <bb 12> [local count: 59646358]:
  _11 = uds.timeout;
  if (_11 == 0)
    goto <bb 13>; [33.00%]
  else
    goto <bb 14>; [67.00%]

  <bb 13> [local count: 19683298]:
  # DEBUG BEGIN_STMT
  dtc_write ();

  <bb 14> [local count: 119292717]:
  return;

}


dtc_read ()
{
  volatile vuint32_t buf[8];
  volatile vuint32_t * p;
  uint32_t i;
  long unsigned int _1;
  long unsigned int _2;
  long unsigned int _3;
  long unsigned int _5;
  long unsigned int _6;
  long unsigned int _7;
  long unsigned int _8;
  long unsigned int _9;
  long unsigned int _10;
  long unsigned int _11;
  unsigned char _12;
  long unsigned int _13;
  long unsigned int _14;
  unsigned char _15;
  long unsigned int _16;
  long unsigned int _17;
  unsigned char _18;
  long unsigned int _19;
  unsigned char _20;
  long unsigned int _21;
  long unsigned int _22;
  unsigned char _23;
  long unsigned int _24;
  long unsigned int _25;
  unsigned char _26;
  long unsigned int _27;
  long unsigned int _28;
  unsigned char _29;
  long unsigned int _30;
  unsigned char _31;
  long unsigned int _32;
  long unsigned int _33;
  unsigned char _34;
  long unsigned int _35;
  long unsigned int _36;
  unsigned char _37;
  long unsigned int _38;
  long unsigned int _39;
  unsigned char _40;
  long unsigned int _41;
  unsigned char _42;
  long unsigned int _43;
  long unsigned int _44;
  unsigned char _45;
  long unsigned int _46;
  long unsigned int _47;
  unsigned char _48;
  long unsigned int _49;
  long unsigned int _50;
  unsigned char _51;
  long unsigned int _52;
  unsigned char _53;
  unsigned char _54;
  unsigned char _55;
  unsigned char _56;
  unsigned char _57;

  <bb 2> [local count: 119292713]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG p => 8421504B
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 477170854]:
  # DEBUG BEGIN_STMT
  p_115 = p_65 + 4;
  # DEBUG p => p_115
  _1 ={v} *p_65;
  buf[i_59] ={v} _1;
  # DEBUG BEGIN_STMT
  i_117 = i_59 + 1;
  # DEBUG i => i_117

  <bb 4> [local count: 596463568]:
  # i_59 = PHI <0(2), i_117(3)>
  # p_65 = PHI <8421504B(2), p_115(3)>
  # DEBUG p => p_65
  # DEBUG i => i_59
  # DEBUG BEGIN_STMT
  if (i_59 != 4)
    goto <bb 3>; [80.00%]
  else
    goto <bb 5>; [20.00%]

  <bb 5> [local count: 119292713]:
  # DEBUG BEGIN_STMT
  _2 ={v} buf[0];
  if (_2 != 10002)
    goto <bb 6>; [66.00%]
  else
    goto <bb 7>; [34.00%]

  <bb 6> [local count: 78733191]:
  # DEBUG BEGIN_STMT
  monprintf ("DTC SIGN fail clear\n\r");
  # DEBUG BEGIN_STMT
  dtc_clear ();

  <bb 10> [local count: 119292713]:
  # i_69 = PHI <0(7), 0(6)>
  # p_58 = PHI <8421392B(7), 8421392B(6)>
  goto <bb 24>; [100.00%]

  <bb 7> [local count: 40559523]:
  # DEBUG BEGIN_STMT
  monprintf ("DTC SIGN ok\n\r");
  goto <bb 10>; [100.00%]

  <bb 9> [local count: 954449087]:
  # DEBUG BEGIN_STMT
  p_112 = p_66 + 4;
  # DEBUG p => p_112
  _3 ={v} *p_66;
  buf[i_60] ={v} _3;
  # DEBUG BEGIN_STMT
  i_114 = i_60 + 1;
  # DEBUG i => i_114

  <bb 24> [local count: 1073741802]:
  # i_60 = PHI <i_69(10), i_114(9)>
  # p_66 = PHI <p_58(10), p_112(9)>
  # DEBUG p => p_66
  # DEBUG i => i_60
  # DEBUG BEGIN_STMT
  if (i_60 != 8)
    goto <bb 9>; [88.89%]
  else
    goto <bb 23>; [11.11%]

  <bb 23> [local count: 119292714]:
  goto <bb 12>; [100.00%]

  <bb 11> [local count: 954449092]:
  # DEBUG BEGIN_STMT
  p_109 = p_67 + 4;
  # DEBUG p => p_109
  _5 ={v} *p_67;
  buf[i_61] ={v} _5;
  # DEBUG BEGIN_STMT
  i_111 = i_61 + 1;
  # DEBUG i => i_111

  <bb 12> [local count: 1073741807]:
  # i_61 = PHI <i_111(11), 0(23)>
  # p_67 = PHI <p_109(11), 8421392B(23)>
  # DEBUG p => p_67
  # DEBUG i => i_61
  # DEBUG BEGIN_STMT
  if (i_61 != 8)
    goto <bb 11>; [88.89%]
  else
    goto <bb 13>; [11.11%]

  <bb 13> [local count: 119292715]:
  # DEBUG BEGIN_STMT
  _6 ={v} buf[0];
  _7 ={v} buf[1];
  _8 ={v} buf[2];
  _9 ={v} buf[3];
  monprintf ("\n\rDTC :%08X,%08X,%08X,%08X\n\r", _6, _7, _8, _9);
  # DEBUG BEGIN_STMT
  _10 ={v} buf[0];
  _11 = _10 >> 24;
  _12 = (unsigned char) _11;
  DTC_Item._c[0] = _12;
  # DEBUG BEGIN_STMT
  _13 ={v} buf[0];
  _14 = _13 >> 16;
  _15 = (unsigned char) _14;
  DTC_Item._c[1] = _15;
  # DEBUG BEGIN_STMT
  _16 ={v} buf[0];
  _17 = _16 >> 8;
  _18 = (unsigned char) _17;
  DTC_Item._c[2] = _18;
  # DEBUG BEGIN_STMT
  _19 ={v} buf[0];
  _20 = (unsigned char) _19;
  DTC_Item._c[3] = _20;
  # DEBUG BEGIN_STMT
  _21 ={v} buf[1];
  _22 = _21 >> 24;
  _23 = (unsigned char) _22;
  DTC_Item._c[4] = _23;
  # DEBUG BEGIN_STMT
  _24 ={v} buf[1];
  _25 = _24 >> 16;
  _26 = (unsigned char) _25;
  DTC_Item._c[5] = _26;
  # DEBUG BEGIN_STMT
  _27 ={v} buf[1];
  _28 = _27 >> 8;
  _29 = (unsigned char) _28;
  DTC_Item._c[6] = _29;
  # DEBUG BEGIN_STMT
  _30 ={v} buf[1];
  _31 = (unsigned char) _30;
  DTC_Item._c[7] = _31;
  # DEBUG BEGIN_STMT
  _32 ={v} buf[2];
  _33 = _32 >> 24;
  _34 = (unsigned char) _33;
  DTC_Item_Old._c[0] = _34;
  # DEBUG BEGIN_STMT
  _35 ={v} buf[2];
  _36 = _35 >> 16;
  _37 = (unsigned char) _36;
  DTC_Item_Old._c[1] = _37;
  # DEBUG BEGIN_STMT
  _38 ={v} buf[2];
  _39 = _38 >> 8;
  _40 = (unsigned char) _39;
  DTC_Item_Old._c[2] = _40;
  # DEBUG BEGIN_STMT
  _41 ={v} buf[2];
  _42 = (unsigned char) _41;
  DTC_Item_Old._c[3] = _42;
  # DEBUG BEGIN_STMT
  _43 ={v} buf[3];
  _44 = _43 >> 24;
  _45 = (unsigned char) _44;
  DTC_Item_Old._c[4] = _45;
  # DEBUG BEGIN_STMT
  _46 ={v} buf[3];
  _47 = _46 >> 16;
  _48 = (unsigned char) _47;
  DTC_Item_Old._c[5] = _48;
  # DEBUG BEGIN_STMT
  _49 ={v} buf[3];
  _50 = _49 >> 8;
  _51 = (unsigned char) _50;
  DTC_Item_Old._c[6] = _51;
  # DEBUG BEGIN_STMT
  _52 ={v} buf[3];
  _53 = (unsigned char) _52;
  DTC_Item_Old._c[7] = _53;
  # DEBUG BEGIN_STMT
  OutStr ("DTC_Item:");
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 15>; [100.00%]

  <bb 14> [local count: 954449096]:
  # DEBUG BEGIN_STMT
  _54 = DTC_Item._c[i_62];
  put_charp (_54);
  # DEBUG BEGIN_STMT
  i_108 = i_62 + 1;
  # DEBUG i => i_108

  <bb 15> [local count: 1073741812]:
  # i_62 = PHI <0(13), i_108(14)>
  # DEBUG i => i_62
  # DEBUG BEGIN_STMT
  if (i_62 != 8)
    goto <bb 14>; [88.89%]
  else
    goto <bb 16>; [11.11%]

  <bb 16> [local count: 119292715]:
  # DEBUG BEGIN_STMT
  put_cr ();
  # DEBUG BEGIN_STMT
  OutStr ("DTC_Item_Old:");
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 18>; [100.00%]

  <bb 17> [local count: 954449103]:
  # DEBUG BEGIN_STMT
  _55 = DTC_Item_Old._c[i_63];
  put_charp (_55);
  # DEBUG BEGIN_STMT
  i_106 = i_63 + 1;
  # DEBUG i => i_106

  <bb 18> [local count: 1073741819]:
  # i_63 = PHI <0(16), i_106(17)>
  # DEBUG i => i_63
  # DEBUG BEGIN_STMT
  if (i_63 != 8)
    goto <bb 17>; [88.89%]
  else
    goto <bb 19>; [11.11%]

  <bb 19> [local count: 119292716]:
  # DEBUG BEGIN_STMT
  put_cr ();
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 21>; [100.00%]

  <bb 20> [local count: 954449108]:
  # DEBUG BEGIN_STMT
  _56 = DTC_Item._c[i_64];
  DTC_Item_wr._c[i_64] = _56;
  # DEBUG BEGIN_STMT
  _57 = DTC_Item_Old._c[i_64];
  DTC_Item_wr_Old._c[i_64] = _57;
  # DEBUG BEGIN_STMT
  DTC_Item_event._c[i_64] = _56;
  # DEBUG BEGIN_STMT
  DTC_Item_new._c[i_64] = 0;
  # DEBUG BEGIN_STMT
  i_104 = i_64 + 1;
  # DEBUG i => i_104

  <bb 21> [local count: 1073741824]:
  # i_64 = PHI <0(19), i_104(20)>
  # DEBUG i => i_64
  # DEBUG BEGIN_STMT
  if (i_64 != 8)
    goto <bb 20>; [88.89%]
  else
    goto <bb 22>; [11.11%]

  <bb 22> [local count: 119292717]:
  return;

}


dtc_clear ()
{
  uint8_t i;
  int _1;

  <bb 2> [local count: 119292716]:
  # DEBUG BEGIN_STMT
  # DEBUG BEGIN_STMT
  # DEBUG i => 0
  goto <bb 4>; [100.00%]

  <bb 3> [local count: 954449108]:
  # DEBUG BEGIN_STMT
  _1 = (int) i_2;
  DTC_Item._c[_1] = 0;
  # DEBUG BEGIN_STMT
  DTC_Item_Old._c[_1] = 0;
  # DEBUG BEGIN_STMT
  DTC_Item_event._c[_1] = 0;
  # DEBUG BEGIN_STMT
  DTC_Item_new._c[_1] = 0;
  # DEBUG BEGIN_STMT
  i_10 = i_2 + 1;
  # DEBUG i => i_10

  <bb 4> [local count: 1073741824]:
  # i_2 = PHI <0(2), i_10(3)>
  # DEBUG i => i_2
  # DEBUG BEGIN_STMT
  if (i_2 != 8)
    goto <bb 3>; [88.89%]
  else
    goto <bb 5>; [11.11%]

  <bb 5> [local count: 119292717]:
  # DEBUG BEGIN_STMT
  dtc_write ();
  return;

}


write_DTC_to_EEP (uint8_t dp)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}


CAN_DTC_Data_Set (union _DTC_Items_Type_ * pX, union _DTC_Items_Type_ * pX_old)
{
  <bb 2> [local count: 1073741824]:
  # DEBUG BEGIN_STMT
  return;

}


