Parsed function:programDword_data_flash Parsed function:string_to_int Parsed function:put_charp Parsed function:put_cr Parsed function:monprintf Parsed function:OutStr Parsed function:OutDev0 Parsed function:D2C Parsed function:delayN Dump after hash based groups Congruence classes: 9 (unique hash values: 9), with total: 9 items Class size histogram [num of members]: number of classe number of classess [1]: 9 classes Dump after WPA based types groups Congruence classes: 9 (unique hash values: 9), with total: 9 items Class size histogram [num of members]: number of classe number of classess [1]: 9 classes Worklist has been filled with: 3 Address reference subdivision created: 0 new classes. Dump after callgraph-based congruence reduction Congruence classes: 9 (unique hash values: 9), with total: 9 items Class size histogram [num of members]: number of classe number of classess [1]: 9 classes Init called for 0 items (0.00%). Dump after full equality comparison of groups Congruence classes: 9 (unique hash values: 9), with total: 9 items Class size histogram [num of members]: number of classe number of classess [1]: 9 classes Worklist has been filled with: 3 Address reference subdivision created: 0 new classes. Congruence classes: 9 (unique hash values: 9), with total: 9 items Class size histogram [num of members]: number of classe number of classess [1]: 9 classes Item count: 9 Congruent classes before: 9, after: 9 Average class size before: 1.00, after: 1.00 Average non-singular class size: 0.00, count: 0 Equal symbols: 0 Fraction of visited symbols: 0.00% programDword_data_flash (uint32_t address, uint32_t * data) { uint16_t ret; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG size => 8 # DEBUG BEGIN_STMT return ret_1(D); } string_to_int (uint8_t * buf) { uint32_t n; uint32_t p; uint32_t k; uint32_t j; uint32_t i; uint8_t * _1; unsigned char _2; int _3; int _5; long unsigned int _6; unsigned char _15; [local count: 118207164]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG j => 0 # DEBUG BEGIN_STMT # DEBUG p => 0 # DEBUG BEGIN_STMT # DEBUG n => 0 # DEBUG BEGIN_STMT # DEBUG i => 0 goto ; [100.00%] [local count: 955630225]: # DEBUG BEGIN_STMT # DEBUG k => 0 # DEBUG BEGIN_STMT _1 = buf_17(D) + n_14; _2 = *_1; _3 = (int) _2; switch (_2) [33.33%], case 48 ... 57: [33.33%], case 65 ... 70: [33.33%]> [local count: 318511554]: : # DEBUG BEGIN_STMT _15 = _2 & 15; k_20 = (uint32_t) _15; # DEBUG k => k_20 # DEBUG BEGIN_STMT p_21 = p_13 + 1; # DEBUG p => p_21 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 318511554]: : # DEBUG BEGIN_STMT _5 = _3 + -55; k_18 = (uint32_t) _5; # DEBUG k => k_18 # DEBUG BEGIN_STMT p_19 = p_13 + 1; # DEBUG p => p_19 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 318511554]: : # DEBUG BEGIN_STMT if (j_10 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 159255777]: if (p_13 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 238883666]: # DEBUG BEGIN_STMT # DEBUG i => 8 [local count: 955534663]: # i_7 = PHI # k_11 = PHI # p_12 = PHI # DEBUG p => p_12 # DEBUG k => k_11 # DEBUG i => i_7 # DEBUG BEGIN_STMT if (i_7 != 8) goto ; [66.00%] else goto ; [34.00%] [local count: 630652877]: # DEBUG BEGIN_STMT _6 = j_10 << 4; j_22 = _6 + k_11; # DEBUG j => j_22 [local count: 955534663]: # j_9 = PHI # DEBUG j => j_9 # DEBUG BEGIN_STMT n_23 = n_14 + 1; # DEBUG n => n_23 # DEBUG BEGIN_STMT i_24 = i_7 + 1; # DEBUG i => i_24 [local count: 1073741824]: # i_8 = PHI <0(2), i_24(11)> # j_10 = PHI <0(2), j_9(11)> # p_13 = PHI <0(2), p_12(11)> # n_14 = PHI <0(2), n_23(11)> # DEBUG n => n_14 # DEBUG p => p_13 # DEBUG j => j_10 # DEBUG i => i_8 # DEBUG BEGIN_STMT if (i_8 <= 7) goto ; [89.00%] else goto ; [11.00%] [local count: 118111601]: # j_4 = PHI # DEBUG BEGIN_STMT return j_4; } put_charp (unsigned char a) { unsigned char i; unsigned char _1; unsigned char _2; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT i_4 = a_3(D) >> 4; # DEBUG i => i_4 # DEBUG BEGIN_STMT # DEBUG i => i_4 # DEBUG BEGIN_STMT _1 = D2C (i_4); OutDev0 (_1); # DEBUG BEGIN_STMT i_7 = a_3(D) & 15; # DEBUG i => i_7 # DEBUG BEGIN_STMT _2 = D2C (i_7); OutDev0 (_2); # DEBUG BEGIN_STMT OutDev0 (44); return; } put_cr () { [local count: 1073741824]: # DEBUG BEGIN_STMT OutDev0 (13); # DEBUG BEGIN_STMT OutDev0 (10); return; } monprintf (char * msg) { struct va_list argptr; char str[256]; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT __builtin_va_start (&argptr, 0); # DEBUG BEGIN_STMT vsprintf (&str, msg_3(D), argptr); # DEBUG BEGIN_STMT __builtin_va_end (&argptr); # DEBUG BEGIN_STMT str[253] = 0; # DEBUG BEGIN_STMT str[254] = 0; # DEBUG BEGIN_STMT OutStr (&str); str ={v} {CLOBBER}; argptr ={v} {CLOBBER}; return; } OutStr (const char * text) { char _1; [local count: 118111600]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 955630223]: # DEBUG BEGIN_STMT text_6 = text_2 + 1; # DEBUG text => text_6 OutDev0 (_1); [local count: 1073741824]: # text_2 = PHI # DEBUG text => text_2 # DEBUG BEGIN_STMT _1 = *text_2; if (_1 != 0) goto ; [89.00%] else goto ; [11.00%] [local count: 118111601]: return; } OutDev0 (char c) { [local count: 1073741824]: # DEBUG BEGIN_STMT Lpuart_Uart_Ip_SyncSend (0, &c, 1); return; } D2C (uint8_t c) { uint8_t _1; uint8_t _3; uint8_t _4; [local count: 1073741824]: # DEBUG BEGIN_STMT if (c_2(D) <= 9) goto ; [34.00%] else goto ; [66.00%] [local count: 365072220]: # DEBUG BEGIN_STMT _4 = c_2(D) + 48; goto ; [100.00%] [local count: 708669605]: # DEBUG BEGIN_STMT _3 = c_2(D) + 55; [local count: 1073741824]: # _1 = PHI <_4(3), _3(4)> return _1; } delayN (uint32_t n) { [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG n => NULL # DEBUG BEGIN_STMT return; }