list.c.075i.fnsummary 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380
  1. Analyzing function: uxListRemove/8
  2. ;; 1 loops found
  3. ;;
  4. ;; Loop 0
  5. ;; header 0, latch 1
  6. ;; depth 0, outer -1
  7. ;; nodes: 0 1 2 3 4
  8. ;; 2 succs { 3 4 }
  9. ;; 3 succs { 4 }
  10. ;; 4 succs { 1 }
  11. Analyzing function body size: uxListRemove
  12. IPA function summary for uxListRemove/8 inlinable
  13. global time: 15.300000
  14. self size: 17
  15. global size: 0
  16. min size: 0
  17. self stack: 0
  18. global stack: 0
  19. size:10.500000, time:9.800000
  20. size:3.500000, time:2.500000, executed if:(not inlined)
  21. size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 128] changed) && (not inlined)
  22. size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 128] changed)
  23. size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 32] changed) && (not inlined)
  24. size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 32] changed)
  25. size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 64] changed) && (not inlined)
  26. size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 64] changed)
  27. calls:
  28. Analyzing function: vListInsert/7
  29. ;; 2 loops found
  30. ;;
  31. ;; Loop 0
  32. ;; header 0, latch 1
  33. ;; depth 0, outer -1
  34. ;; nodes: 0 1 2 3 4 5 7 6
  35. ;;
  36. ;; Loop 1
  37. ;; header 5, latch 7
  38. ;; depth 1, outer 0
  39. ;; nodes: 5 7
  40. ;; 2 succs { 3 4 }
  41. ;; 3 succs { 6 }
  42. ;; 4 succs { 5 }
  43. ;; 5 succs { 7 6 }
  44. ;; 7 succs { 5 }
  45. ;; 6 succs { 1 }
  46. Analyzing function body size: vListInsert
  47. IPA function summary for vListInsert/7 inlinable
  48. global time: 38.340000
  49. self size: 20
  50. global size: 0
  51. min size: 0
  52. self stack: 0
  53. global stack: 0
  54. size:5.000000, time:5.000000
  55. size:5.000000, time:4.000000, executed if:(not inlined)
  56. size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op1[ref offset: 0] changed) && (not inlined)
  57. size:2.500000, time:2.500000, nonconst if:(op1[ref offset: 0] changed)
  58. size:4.000000, time:24.000000, executed if:(op1[ref offset: 0] != 4294967295)
  59. 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)
  60. 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)
  61. size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 0] changed) && (not inlined)
  62. size:1.500000, time:1.500000, nonconst if:(op0[ref offset: 0] changed)
  63. calls:
  64. Analyzing function: vListInsertEnd/6
  65. ;; 1 loops found
  66. ;;
  67. ;; Loop 0
  68. ;; header 0, latch 1
  69. ;; depth 0, outer -1
  70. ;; nodes: 0 1 2
  71. ;; 2 succs { 1 }
  72. Analyzing function body size: vListInsertEnd
  73. IPA function summary for vListInsertEnd/6 inlinable
  74. global time: 13.000000
  75. self size: 14
  76. global size: 0
  77. min size: 0
  78. self stack: 0
  79. global stack: 0
  80. size:6.000000, time:6.000000
  81. size:5.000000, time:4.000000, executed if:(not inlined)
  82. size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 32] changed) && (not inlined)
  83. size:0.500000, time:0.500000, nonconst if:(op0[ref offset: 32] changed)
  84. size:0.500000, time:0.500000, executed if:(not inlined), nonconst if:(op0[ref offset: 0] changed) && (not inlined)
  85. size:1.500000, time:1.500000, nonconst if:(op0[ref offset: 0] changed)
  86. calls:
  87. Analyzing function: vListInitialiseItem/5
  88. ;; 1 loops found
  89. ;;
  90. ;; Loop 0
  91. ;; header 0, latch 1
  92. ;; depth 0, outer -1
  93. ;; nodes: 0 1 2
  94. ;; 2 succs { 1 }
  95. Analyzing function body size: vListInitialiseItem
  96. IPA function summary for vListInitialiseItem/5 inlinable
  97. global time: 3.000000
  98. self size: 4
  99. global size: 0
  100. min size: 0
  101. self stack: 0
  102. global stack: 0
  103. size:0.500000, time:0.500000
  104. size:3.500000, time:2.500000, executed if:(not inlined)
  105. calls:
  106. Analyzing function: vListInitialise/4
  107. ;; 1 loops found
  108. ;;
  109. ;; Loop 0
  110. ;; header 0, latch 1
  111. ;; depth 0, outer -1
  112. ;; nodes: 0 1 2
  113. ;; 2 succs { 1 }
  114. Analyzing function body size: vListInitialise
  115. IPA function summary for vListInitialise/4 inlinable
  116. global time: 7.000000
  117. self size: 8
  118. global size: 0
  119. min size: 0
  120. self stack: 0
  121. global stack: 0
  122. size:2.500000, time:2.500000
  123. size:5.500000, time:4.500000, executed if:(not inlined)
  124. calls:
  125. Symbol table:
  126. uxListRemove/8 (uxListRemove) @06a23ee0
  127. Type: function definition analyzed
  128. Visibility: externally_visible public
  129. References:
  130. Referring:
  131. Availability: available
  132. Function flags: count:1073741824 (estimated locally) body optimize_size
  133. Called by:
  134. Calls:
  135. vListInsert/7 (vListInsert) @06a23c40
  136. Type: function definition analyzed
  137. Visibility: externally_visible public
  138. References:
  139. Referring:
  140. Availability: available
  141. Function flags: count:178956970 (estimated locally) body optimize_size
  142. Called by:
  143. Calls:
  144. vListInsertEnd/6 (vListInsertEnd) @06a239a0
  145. Type: function definition analyzed
  146. Visibility: externally_visible public
  147. References:
  148. Referring:
  149. Availability: available
  150. Function flags: count:1073741824 (estimated locally) body optimize_size
  151. Called by:
  152. Calls:
  153. vListInitialiseItem/5 (vListInitialiseItem) @06a23700
  154. Type: function definition analyzed
  155. Visibility: externally_visible public
  156. References:
  157. Referring:
  158. Availability: available
  159. Function flags: count:1073741824 (estimated locally) body optimize_size
  160. Called by:
  161. Calls:
  162. vListInitialise/4 (vListInitialise) @06a23460
  163. Type: function definition analyzed
  164. Visibility: externally_visible public
  165. References:
  166. Referring:
  167. Availability: available
  168. Function flags: count:1073741824 (estimated locally) body optimize_size
  169. Called by:
  170. Calls:
  171. uxListRemove (struct ListItem_t * const pxItemToRemove)
  172. {
  173. struct List_t * const pxList;
  174. struct xLIST_ITEM * _1;
  175. struct xLIST_ITEM * _2;
  176. struct ListItem_t * _3;
  177. long unsigned int _4;
  178. long unsigned int _5;
  179. UBaseType_t _15;
  180. <bb 2> [local count: 1073741824]:
  181. # DEBUG BEGIN_STMT
  182. pxList_9 = pxItemToRemove_8(D)->pvContainer;
  183. # DEBUG pxList => pxList_9
  184. # DEBUG BEGIN_STMT
  185. _1 = pxItemToRemove_8(D)->pxNext;
  186. _2 = pxItemToRemove_8(D)->pxPrevious;
  187. _1->pxPrevious = _2;
  188. # DEBUG BEGIN_STMT
  189. _2->pxNext = _1;
  190. # DEBUG BEGIN_STMT
  191. # DEBUG BEGIN_STMT
  192. _3 = pxList_9->pxIndex;
  193. if (_3 == pxItemToRemove_8(D))
  194. goto <bb 3>; [30.00%]
  195. else
  196. goto <bb 4>; [70.00%]
  197. <bb 3> [local count: 322122547]:
  198. # DEBUG BEGIN_STMT
  199. pxList_9->pxIndex = _2;
  200. <bb 4> [local count: 1073741824]:
  201. # DEBUG BEGIN_STMT
  202. # DEBUG BEGIN_STMT
  203. pxItemToRemove_8(D)->pvContainer = 0B;
  204. # DEBUG BEGIN_STMT
  205. _4 ={v} pxList_9->uxNumberOfItems;
  206. _5 = _4 + 4294967295;
  207. pxList_9->uxNumberOfItems ={v} _5;
  208. # DEBUG BEGIN_STMT
  209. _15 ={v} pxList_9->uxNumberOfItems;
  210. return _15;
  211. }
  212. vListInsert (struct List_t * const pxList, struct ListItem_t * const pxNewListItem)
  213. {
  214. const TickType_t xValueOfInsertion;
  215. struct ListItem_t * pxIterator;
  216. struct xLIST_ITEM * _1;
  217. long unsigned int _2;
  218. struct xLIST_ITEM * _3;
  219. long unsigned int _4;
  220. long unsigned int _5;
  221. <bb 2> [local count: 178956970]:
  222. # DEBUG BEGIN_STMT
  223. # DEBUG BEGIN_STMT
  224. xValueOfInsertion_10 = pxNewListItem_9(D)->xItemValue;
  225. # DEBUG xValueOfInsertion => xValueOfInsertion_10
  226. # DEBUG BEGIN_STMT
  227. # DEBUG BEGIN_STMT
  228. # DEBUG BEGIN_STMT
  229. if (xValueOfInsertion_10 == 4294967295)
  230. goto <bb 3>; [34.00%]
  231. else
  232. goto <bb 4>; [66.00%]
  233. <bb 3> [local count: 60845370]:
  234. # DEBUG BEGIN_STMT
  235. pxIterator_13 = pxList_11(D)->xListEnd.pxPrevious;
  236. # DEBUG pxIterator => pxIterator_13
  237. goto <bb 6>; [100.00%]
  238. <bb 4> [local count: 118111600]:
  239. # DEBUG BEGIN_STMT
  240. pxIterator_12 = &pxList_11(D)->xListEnd;
  241. # DEBUG pxIterator => pxIterator_12
  242. <bb 5> [local count: 1073741824]:
  243. # pxIterator_6 = PHI <pxIterator_12(4), _1(7)>
  244. # DEBUG pxIterator => pxIterator_6
  245. # DEBUG BEGIN_STMT
  246. _1 = pxIterator_6->pxNext;
  247. _2 = _1->xItemValue;
  248. if (_2 <= xValueOfInsertion_10)
  249. goto <bb 7>; [89.00%]
  250. else
  251. goto <bb 6>; [11.00%]
  252. <bb 7> [local count: 955630223]:
  253. goto <bb 5>; [100.00%]
  254. <bb 6> [local count: 178956970]:
  255. # pxIterator_7 = PHI <pxIterator_13(3), pxIterator_6(5)>
  256. # DEBUG pxIterator => pxIterator_7
  257. # DEBUG BEGIN_STMT
  258. _3 = pxIterator_7->pxNext;
  259. pxNewListItem_9(D)->pxNext = _3;
  260. # DEBUG BEGIN_STMT
  261. _3->pxPrevious = pxNewListItem_9(D);
  262. # DEBUG BEGIN_STMT
  263. pxNewListItem_9(D)->pxPrevious = pxIterator_7;
  264. # DEBUG BEGIN_STMT
  265. pxIterator_7->pxNext = pxNewListItem_9(D);
  266. # DEBUG BEGIN_STMT
  267. pxNewListItem_9(D)->pvContainer = pxList_11(D);
  268. # DEBUG BEGIN_STMT
  269. _4 ={v} pxList_11(D)->uxNumberOfItems;
  270. _5 = _4 + 1;
  271. pxList_11(D)->uxNumberOfItems ={v} _5;
  272. return;
  273. }
  274. vListInsertEnd (struct List_t * const pxList, struct ListItem_t * const pxNewListItem)
  275. {
  276. struct ListItem_t * const pxIndex;
  277. struct xLIST_ITEM * _1;
  278. struct xLIST_ITEM * _2;
  279. long unsigned int _3;
  280. long unsigned int _4;
  281. <bb 2> [local count: 1073741824]:
  282. # DEBUG BEGIN_STMT
  283. pxIndex_7 = pxList_6(D)->pxIndex;
  284. # DEBUG pxIndex => pxIndex_7
  285. # DEBUG BEGIN_STMT
  286. # DEBUG BEGIN_STMT
  287. # DEBUG BEGIN_STMT
  288. pxNewListItem_8(D)->pxNext = pxIndex_7;
  289. # DEBUG BEGIN_STMT
  290. _1 = pxIndex_7->pxPrevious;
  291. pxNewListItem_8(D)->pxPrevious = _1;
  292. # DEBUG BEGIN_STMT
  293. # DEBUG BEGIN_STMT
  294. _2 = pxIndex_7->pxPrevious;
  295. _2->pxNext = pxNewListItem_8(D);
  296. # DEBUG BEGIN_STMT
  297. pxIndex_7->pxPrevious = pxNewListItem_8(D);
  298. # DEBUG BEGIN_STMT
  299. pxNewListItem_8(D)->pvContainer = pxList_6(D);
  300. # DEBUG BEGIN_STMT
  301. _3 ={v} pxList_6(D)->uxNumberOfItems;
  302. _4 = _3 + 1;
  303. pxList_6(D)->uxNumberOfItems ={v} _4;
  304. return;
  305. }
  306. vListInitialiseItem (struct ListItem_t * const pxItem)
  307. {
  308. <bb 2> [local count: 1073741824]:
  309. # DEBUG BEGIN_STMT
  310. pxItem_2(D)->pvContainer = 0B;
  311. # DEBUG BEGIN_STMT
  312. # DEBUG BEGIN_STMT
  313. return;
  314. }
  315. vListInitialise (struct List_t * const pxList)
  316. {
  317. struct MiniListItem_t * _1;
  318. <bb 2> [local count: 1073741824]:
  319. # DEBUG BEGIN_STMT
  320. _1 = &pxList_2(D)->xListEnd;
  321. pxList_2(D)->pxIndex = _1;
  322. # DEBUG BEGIN_STMT
  323. pxList_2(D)->xListEnd.xItemValue = 4294967295;
  324. # DEBUG BEGIN_STMT
  325. pxList_2(D)->xListEnd.pxNext = _1;
  326. # DEBUG BEGIN_STMT
  327. pxList_2(D)->xListEnd.pxPrevious = _1;
  328. # DEBUG BEGIN_STMT
  329. pxList_2(D)->uxNumberOfItems ={v} 0;
  330. # DEBUG BEGIN_STMT
  331. # DEBUG BEGIN_STMT
  332. return;
  333. }