Analyzing function: uxListRemove/8 ;; 1 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 3 4 ;; 2 succs { 3 4 } ;; 3 succs { 4 } ;; 4 succs { 1 } Analyzing function body size: uxListRemove IPA function summary for uxListRemove/8 inlinable global time: 15.300000 self size: 17 global size: 0 min size: 0 self stack: 0 global stack: 0 size:10.500000, time:9.800000 size:3.500000, time:2.500000, executed if:(not inlined) size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 128] changed) && (not inlined) size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 128] changed) size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 32] changed) && (not inlined) size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 32] changed) size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 64] changed) && (not inlined) size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 64] changed) calls: Analyzing function: vListInsert/7 ;; 2 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 3 4 5 7 6 ;; ;; Loop 1 ;; header 5, latch 7 ;; depth 1, outer 0 ;; nodes: 5 7 ;; 2 succs { 3 4 } ;; 3 succs { 6 } ;; 4 succs { 5 } ;; 5 succs { 7 6 } ;; 7 succs { 5 } ;; 6 succs { 1 } Analyzing function body size: vListInsert IPA function summary for vListInsert/7 inlinable global time: 38.340000 self size: 20 global size: 0 min size: 0 self stack: 0 global stack: 0 size:5.000000, time:5.000000 size:5.000000, time:4.000000, executed if:(not inlined) size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op1[ref offset: 0] changed) && (not inlined) size:2.500000, time:2.500000, nonconst if:(op1[ref offset: 0] changed) size:4.000000, time:24.000000, executed if:(op1[ref offset: 0] != 4294967295) size:0.500000, time:0.170000, executed if:(op1[ref offset: 0] == 4294967295) && (not inlined), nonconst if:(op0[ref offset: 128] changed) && (op1[ref offset: 0] == 4294967295) && (not inlined) size:0.500000, time:0.170000, executed if:(op1[ref offset: 0] == 4294967295), nonconst if:(op0[ref offset: 128] changed) && (op1[ref offset: 0] == 4294967295) size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 0] changed) && (not inlined) size:1.500000, time:1.500000, nonconst if:(op0[ref offset: 0] changed) calls: Analyzing function: vListInsertEnd/6 ;; 1 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 ;; 2 succs { 1 } Analyzing function body size: vListInsertEnd IPA function summary for vListInsertEnd/6 inlinable global time: 13.000000 self size: 14 global size: 0 min size: 0 self stack: 0 global stack: 0 size:6.000000, time:6.000000 size:5.000000, time:4.000000, executed if:(not inlined) size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 32] changed) && (not inlined) size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 32] changed) size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 0] changed) && (not inlined) size:1.500000, time:1.500000, nonconst if:(op0[ref offset: 0] changed) calls: Analyzing function: vListInitialiseItem/5 ;; 1 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 ;; 2 succs { 1 } Analyzing function body size: vListInitialiseItem IPA function summary for vListInitialiseItem/5 inlinable global time: 3.000000 self size: 4 global size: 0 min size: 0 self stack: 0 global stack: 0 size:0.500000, time:0.500000 size:3.500000, time:2.500000, executed if:(not inlined) calls: Analyzing function: vListInitialise/4 ;; 1 loops found ;; ;; Loop 0 ;; header 0, latch 1 ;; depth 0, outer -1 ;; nodes: 0 1 2 ;; 2 succs { 1 } Analyzing function body size: vListInitialise IPA function summary for vListInitialise/4 inlinable global time: 7.000000 self size: 8 global size: 0 min size: 0 self stack: 0 global stack: 0 size:2.500000, time:2.500000 size:5.500000, time:4.500000, executed if:(not inlined) calls: Symbol table: uxListRemove/8 (uxListRemove) @06a23ee0 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: vListInsert/7 (vListInsert) @06a23c40 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: count:178956970 (estimated locally) body optimize_size Called by: Calls: vListInsertEnd/6 (vListInsertEnd) @06a239a0 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: vListInitialiseItem/5 (vListInitialiseItem) @06a23700 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: vListInitialise/4 (vListInitialise) @06a23460 Type: function definition analyzed Visibility: externally_visible public References: Referring: Availability: available Function flags: count:1073741824 (estimated locally) body optimize_size Called by: Calls: 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; }