list.c.022i.opt_local_passes 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. uxListRemove (struct ListItem_t * const pxItemToRemove)
  2. {
  3. struct List_t * const pxList;
  4. struct xLIST_ITEM * _1;
  5. struct xLIST_ITEM * _2;
  6. struct xLIST_ITEM * _3;
  7. struct xLIST_ITEM * _4;
  8. struct ListItem_t * _5;
  9. struct xLIST_ITEM * _6;
  10. long unsigned int _7;
  11. long unsigned int _8;
  12. UBaseType_t _18;
  13. <bb 2> :
  14. # DEBUG BEGIN_STMT
  15. pxList_12 = pxItemToRemove_11(D)->pvContainer;
  16. # DEBUG pxList => pxList_12
  17. # DEBUG BEGIN_STMT
  18. _1 = pxItemToRemove_11(D)->pxNext;
  19. _2 = pxItemToRemove_11(D)->pxPrevious;
  20. _1->pxPrevious = _2;
  21. # DEBUG BEGIN_STMT
  22. _3 = pxItemToRemove_11(D)->pxPrevious;
  23. _4 = pxItemToRemove_11(D)->pxNext;
  24. _3->pxNext = _4;
  25. # DEBUG BEGIN_STMT
  26. # DEBUG BEGIN_STMT
  27. _5 = pxList_12->pxIndex;
  28. if (pxItemToRemove_11(D) == _5)
  29. goto <bb 3>; [INV]
  30. else
  31. goto <bb 4>; [INV]
  32. <bb 3> :
  33. # DEBUG BEGIN_STMT
  34. _6 = pxItemToRemove_11(D)->pxPrevious;
  35. pxList_12->pxIndex = _6;
  36. <bb 4> :
  37. # DEBUG BEGIN_STMT
  38. # DEBUG BEGIN_STMT
  39. pxItemToRemove_11(D)->pvContainer = 0B;
  40. # DEBUG BEGIN_STMT
  41. _7 ={v} pxList_12->uxNumberOfItems;
  42. _8 = _7 + 4294967295;
  43. pxList_12->uxNumberOfItems ={v} _8;
  44. # DEBUG BEGIN_STMT
  45. _18 ={v} pxList_12->uxNumberOfItems;
  46. return _18;
  47. }
  48. vListInsert (struct List_t * const pxList, struct ListItem_t * const pxNewListItem)
  49. {
  50. const TickType_t xValueOfInsertion;
  51. struct ListItem_t * pxIterator;
  52. struct xLIST_ITEM * _1;
  53. long unsigned int _2;
  54. struct xLIST_ITEM * _3;
  55. struct xLIST_ITEM * _4;
  56. long unsigned int _5;
  57. long unsigned int _6;
  58. <bb 2> :
  59. # DEBUG BEGIN_STMT
  60. # DEBUG BEGIN_STMT
  61. xValueOfInsertion_11 = pxNewListItem_10(D)->xItemValue;
  62. # DEBUG xValueOfInsertion => xValueOfInsertion_11
  63. # DEBUG BEGIN_STMT
  64. # DEBUG BEGIN_STMT
  65. # DEBUG BEGIN_STMT
  66. if (xValueOfInsertion_11 == 4294967295)
  67. goto <bb 3>; [INV]
  68. else
  69. goto <bb 4>; [INV]
  70. <bb 3> :
  71. # DEBUG BEGIN_STMT
  72. pxIterator_15 = pxList_12(D)->xListEnd.pxPrevious;
  73. # DEBUG pxIterator => pxIterator_15
  74. goto <bb 7>; [INV]
  75. <bb 4> :
  76. # DEBUG BEGIN_STMT
  77. pxIterator_13 = &pxList_12(D)->xListEnd;
  78. # DEBUG pxIterator => pxIterator_13
  79. goto <bb 6>; [INV]
  80. <bb 5> :
  81. # DEBUG BEGIN_STMT
  82. # DEBUG BEGIN_STMT
  83. pxIterator_14 = pxIterator_7->pxNext;
  84. # DEBUG pxIterator => pxIterator_14
  85. <bb 6> :
  86. # pxIterator_7 = PHI <pxIterator_13(4), pxIterator_14(5)>
  87. # DEBUG pxIterator => pxIterator_7
  88. # DEBUG BEGIN_STMT
  89. _1 = pxIterator_7->pxNext;
  90. _2 = _1->xItemValue;
  91. if (xValueOfInsertion_11 >= _2)
  92. goto <bb 5>; [INV]
  93. else
  94. goto <bb 7>; [INV]
  95. <bb 7> :
  96. # pxIterator_8 = PHI <pxIterator_15(3), pxIterator_7(6)>
  97. # DEBUG pxIterator => pxIterator_8
  98. # DEBUG BEGIN_STMT
  99. _3 = pxIterator_8->pxNext;
  100. pxNewListItem_10(D)->pxNext = _3;
  101. # DEBUG BEGIN_STMT
  102. _4 = pxNewListItem_10(D)->pxNext;
  103. _4->pxPrevious = pxNewListItem_10(D);
  104. # DEBUG BEGIN_STMT
  105. pxNewListItem_10(D)->pxPrevious = pxIterator_8;
  106. # DEBUG BEGIN_STMT
  107. pxIterator_8->pxNext = pxNewListItem_10(D);
  108. # DEBUG BEGIN_STMT
  109. pxNewListItem_10(D)->pvContainer = pxList_12(D);
  110. # DEBUG BEGIN_STMT
  111. _5 ={v} pxList_12(D)->uxNumberOfItems;
  112. _6 = _5 + 1;
  113. pxList_12(D)->uxNumberOfItems ={v} _6;
  114. return;
  115. }
  116. vListInsertEnd (struct List_t * const pxList, struct ListItem_t * const pxNewListItem)
  117. {
  118. struct ListItem_t * const pxIndex;
  119. struct xLIST_ITEM * _1;
  120. struct xLIST_ITEM * _2;
  121. long unsigned int _3;
  122. long unsigned int _4;
  123. <bb 2> :
  124. # DEBUG BEGIN_STMT
  125. pxIndex_7 = pxList_6(D)->pxIndex;
  126. # DEBUG pxIndex => pxIndex_7
  127. # DEBUG BEGIN_STMT
  128. # DEBUG BEGIN_STMT
  129. # DEBUG BEGIN_STMT
  130. pxNewListItem_8(D)->pxNext = pxIndex_7;
  131. # DEBUG BEGIN_STMT
  132. _1 = pxIndex_7->pxPrevious;
  133. pxNewListItem_8(D)->pxPrevious = _1;
  134. # DEBUG BEGIN_STMT
  135. # DEBUG BEGIN_STMT
  136. _2 = pxIndex_7->pxPrevious;
  137. _2->pxNext = pxNewListItem_8(D);
  138. # DEBUG BEGIN_STMT
  139. pxIndex_7->pxPrevious = pxNewListItem_8(D);
  140. # DEBUG BEGIN_STMT
  141. pxNewListItem_8(D)->pvContainer = pxList_6(D);
  142. # DEBUG BEGIN_STMT
  143. _3 ={v} pxList_6(D)->uxNumberOfItems;
  144. _4 = _3 + 1;
  145. pxList_6(D)->uxNumberOfItems ={v} _4;
  146. return;
  147. }
  148. vListInitialiseItem (struct ListItem_t * const pxItem)
  149. {
  150. <bb 2> :
  151. # DEBUG BEGIN_STMT
  152. pxItem_2(D)->pvContainer = 0B;
  153. # DEBUG BEGIN_STMT
  154. # DEBUG BEGIN_STMT
  155. return;
  156. }
  157. vListInitialise (struct List_t * const pxList)
  158. {
  159. struct MiniListItem_t * _1;
  160. struct MiniListItem_t * _2;
  161. struct MiniListItem_t * _3;
  162. <bb 2> :
  163. # DEBUG BEGIN_STMT
  164. _1 = &pxList_4(D)->xListEnd;
  165. pxList_4(D)->pxIndex = _1;
  166. # DEBUG BEGIN_STMT
  167. pxList_4(D)->xListEnd.xItemValue = 4294967295;
  168. # DEBUG BEGIN_STMT
  169. _2 = &pxList_4(D)->xListEnd;
  170. pxList_4(D)->xListEnd.pxNext = _2;
  171. # DEBUG BEGIN_STMT
  172. _3 = &pxList_4(D)->xListEnd;
  173. pxList_4(D)->xListEnd.pxPrevious = _3;
  174. # DEBUG BEGIN_STMT
  175. pxList_4(D)->uxNumberOfItems ={v} 0;
  176. # DEBUG BEGIN_STMT
  177. # DEBUG BEGIN_STMT
  178. return;
  179. }