Parsed function:uxListRemove Parsed function:vListInsert Parsed function:vListInsertEnd Parsed function:vListInitialiseItem Parsed function:vListInitialise Dump after hash based groups Congruence classes: 5 (unique hash values: 5), with total: 5 items Class size histogram [num of members]: number of classe number of classess [1]: 5 classes Dump after WPA based types groups Congruence classes: 5 (unique hash values: 5), with total: 5 items Class size histogram [num of members]: number of classe number of classess [1]: 5 classes Worklist has been filled with: 0 Address reference subdivision created: 0 new classes. Dump after callgraph-based congruence reduction Congruence classes: 5 (unique hash values: 5), with total: 5 items Class size histogram [num of members]: number of classe number of classess [1]: 5 classes Init called for 0 items (0.00%). Dump after full equality comparison of groups Congruence classes: 5 (unique hash values: 5), with total: 5 items Class size histogram [num of members]: number of classe number of classess [1]: 5 classes Worklist has been filled with: 0 Address reference subdivision created: 0 new classes. Congruence classes: 5 (unique hash values: 5), with total: 5 items Class size histogram [num of members]: number of classe number of classess [1]: 5 classes Item count: 5 Congruent classes before: 5, after: 5 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% uxListRemove (struct ListItem_t * const pxItemToRemove) { struct List_t * const pxList; struct xLIST_ITEM * _1; struct xLIST_ITEM * _2; struct ListItem_t * _3; long unsigned int _4; long unsigned int _5; UBaseType_t _15; [local count: 1073741824]: # DEBUG BEGIN_STMT pxList_9 = pxItemToRemove_8(D)->pvContainer; # DEBUG pxList => pxList_9 # DEBUG BEGIN_STMT _1 = pxItemToRemove_8(D)->pxNext; _2 = pxItemToRemove_8(D)->pxPrevious; _1->pxPrevious = _2; # DEBUG BEGIN_STMT _2->pxNext = _1; # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _3 = pxList_9->pxIndex; if (_3 == pxItemToRemove_8(D)) goto ; [30.00%] else goto ; [70.00%] [local count: 322122547]: # DEBUG BEGIN_STMT pxList_9->pxIndex = _2; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT pxItemToRemove_8(D)->pvContainer = 0B; # DEBUG BEGIN_STMT _4 ={v} pxList_9->uxNumberOfItems; _5 = _4 + 4294967295; pxList_9->uxNumberOfItems ={v} _5; # DEBUG BEGIN_STMT _15 ={v} pxList_9->uxNumberOfItems; return _15; } vListInsert (struct List_t * const pxList, struct ListItem_t * const pxNewListItem) { const TickType_t xValueOfInsertion; struct ListItem_t * pxIterator; struct xLIST_ITEM * _1; long unsigned int _2; struct xLIST_ITEM * _3; long unsigned int _4; long unsigned int _5; [local count: 178956970]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT xValueOfInsertion_10 = pxNewListItem_9(D)->xItemValue; # DEBUG xValueOfInsertion => xValueOfInsertion_10 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT if (xValueOfInsertion_10 == 4294967295) goto ; [34.00%] else goto ; [66.00%] [local count: 60845370]: # DEBUG BEGIN_STMT pxIterator_13 = pxList_11(D)->xListEnd.pxPrevious; # DEBUG pxIterator => pxIterator_13 goto ; [100.00%] [local count: 118111600]: # DEBUG BEGIN_STMT pxIterator_12 = &pxList_11(D)->xListEnd; # DEBUG pxIterator => pxIterator_12 [local count: 1073741824]: # pxIterator_6 = PHI # DEBUG pxIterator => pxIterator_6 # DEBUG BEGIN_STMT _1 = pxIterator_6->pxNext; _2 = _1->xItemValue; if (_2 <= xValueOfInsertion_10) goto ; [89.00%] else goto ; [11.00%] [local count: 955630223]: goto ; [100.00%] [local count: 178956970]: # pxIterator_7 = PHI # DEBUG pxIterator => pxIterator_7 # DEBUG BEGIN_STMT _3 = pxIterator_7->pxNext; pxNewListItem_9(D)->pxNext = _3; # DEBUG BEGIN_STMT _3->pxPrevious = pxNewListItem_9(D); # DEBUG BEGIN_STMT pxNewListItem_9(D)->pxPrevious = pxIterator_7; # DEBUG BEGIN_STMT pxIterator_7->pxNext = pxNewListItem_9(D); # DEBUG BEGIN_STMT pxNewListItem_9(D)->pvContainer = pxList_11(D); # DEBUG BEGIN_STMT _4 ={v} pxList_11(D)->uxNumberOfItems; _5 = _4 + 1; pxList_11(D)->uxNumberOfItems ={v} _5; return; } vListInsertEnd (struct List_t * const pxList, struct ListItem_t * const pxNewListItem) { struct ListItem_t * const pxIndex; struct xLIST_ITEM * _1; struct xLIST_ITEM * _2; long unsigned int _3; long unsigned int _4; [local count: 1073741824]: # DEBUG BEGIN_STMT pxIndex_7 = pxList_6(D)->pxIndex; # DEBUG pxIndex => pxIndex_7 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT pxNewListItem_8(D)->pxNext = pxIndex_7; # DEBUG BEGIN_STMT _1 = pxIndex_7->pxPrevious; pxNewListItem_8(D)->pxPrevious = _1; # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _2 = pxIndex_7->pxPrevious; _2->pxNext = pxNewListItem_8(D); # DEBUG BEGIN_STMT pxIndex_7->pxPrevious = pxNewListItem_8(D); # DEBUG BEGIN_STMT pxNewListItem_8(D)->pvContainer = pxList_6(D); # DEBUG BEGIN_STMT _3 ={v} pxList_6(D)->uxNumberOfItems; _4 = _3 + 1; pxList_6(D)->uxNumberOfItems ={v} _4; return; } vListInitialiseItem (struct ListItem_t * const pxItem) { [local count: 1073741824]: # DEBUG BEGIN_STMT pxItem_2(D)->pvContainer = 0B; # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return; } vListInitialise (struct List_t * const pxList) { struct MiniListItem_t * _1; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = &pxList_2(D)->xListEnd; pxList_2(D)->pxIndex = _1; # DEBUG BEGIN_STMT pxList_2(D)->xListEnd.xItemValue = 4294967295; # DEBUG BEGIN_STMT pxList_2(D)->xListEnd.pxNext = _1; # DEBUG BEGIN_STMT pxList_2(D)->xListEnd.pxPrevious = _1; # DEBUG BEGIN_STMT pxList_2(D)->uxNumberOfItems ={v} 0; # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return; }