gcc-12.0-ipa2.gv 50 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256
  1. /* graph generated by GNU GCC Compiler version
  2. * GNU C99 (GCC) version 12.0.0 20210704 (experimental) (x86_64-pc-linux-gnu)
  3. * compiled by GNU C version 12.0.0 20210704 (experimental), GMP version 6.2.0, MPFR version 4.0.2, MPC version 1.1.0, isl version none
  4. * GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
  5. */
  6. digraph "gml4gtk-bubbling.c.082i.fnsummary" {
  7. overlap=false;
  8. subgraph "cluster_clear_bubbling" {
  9. style="dashed";
  10. color="black";
  11. label="clear_bubbling ()";
  12. fn_12_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  13. fn_12_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  14. fn_12_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  15. }"];
  16. fn_12_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  17. |first_elem\ =\ 0B;\l\
  18. |bubbling_splaytree.9_1\ =\ bubbling_splaytree;\l\
  19. |if\ (bubbling_splaytree.9_1\ !=\ 0B)\l\
  20. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  21. else\l\
  22. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  23. }"];
  24. fn_12_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  25. |bubbling_splaytree.10_2\ =\ bubbling_splaytree;\l\
  26. |_3\ =\ splay_tree_delete\ (bubbling_splaytree.10_2);\l\
  27. |bubbling_splaytree\ =\ _3;\l\
  28. }"];
  29. fn_12_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  30. }"];
  31. fn_12_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  32. |\<L4\>:\l\
  33. |return;\l\
  34. }"];
  35. fn_12_basic_block_0:s -> fn_12_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  36. fn_12_basic_block_2:s -> fn_12_basic_block_3:n [style="solid,bold",color=blue,weight=100,constraint=true];
  37. fn_12_basic_block_3:s -> fn_12_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  38. fn_12_basic_block_3:s -> fn_12_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  39. fn_12_basic_block_4:s -> fn_12_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true];
  40. fn_12_basic_block_5:s -> fn_12_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  41. fn_12_basic_block_6:s -> fn_12_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  42. fn_12_basic_block_0:s -> fn_12_basic_block_1:n [style="invis",constraint=true];
  43. }
  44. subgraph "cluster_graph_bubbling" {
  45. style="dashed";
  46. color="black";
  47. label="graph_bubbling ()";
  48. subgraph cluster_11_4 {
  49. style="filled";
  50. color="darkgreen";
  51. fillcolor="grey88";
  52. label="loop 4";
  53. labeljust=l;
  54. penwidth=2;
  55. fn_11_basic_block_25 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 25\>:\l\
  56. |#\ act_level_18\ =\ PHI\ \<act_level_42(23),\ act_level_46(24)\>\l\
  57. |_10\ =\ g_34(D)-\>maxlevel;\l\
  58. |_11\ =\ _10\ +\ -1;\l\
  59. |if\ (act_level_18\ \<=\ _11)\l\
  60. \ \ goto\ \<bb\ 24\>;\ [INV]\l\
  61. else\l\
  62. \ \ goto\ \<bb\ 26\>;\ [INV]\l\
  63. }"];
  64. fn_11_basic_block_24 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 24\>:\l\
  65. |third_bubbling\ (g_34(D),\ act_level_18);\l\
  66. |act_level_46\ =\ act_level_18\ +\ 2;\l\
  67. }"];
  68. }
  69. subgraph cluster_11_3 {
  70. style="filled";
  71. color="darkgreen";
  72. fillcolor="grey88";
  73. label="loop 3";
  74. labeljust=l;
  75. penwidth=2;
  76. fn_11_basic_block_22 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 22\>:\l\
  77. |#\ act_level_17\ =\ PHI\ \<act_level_41(20),\ act_level_48(21)\>\l\
  78. |_8\ =\ g_34(D)-\>maxlevel;\l\
  79. |_9\ =\ _8\ +\ -1;\l\
  80. |if\ (act_level_17\ \<=\ _9)\l\
  81. \ \ goto\ \<bb\ 21\>;\ [INV]\l\
  82. else\l\
  83. \ \ goto\ \<bb\ 23\>;\ [INV]\l\
  84. }"];
  85. fn_11_basic_block_21 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 21\>:\l\
  86. |third_bubbling\ (g_34(D),\ act_level_17);\l\
  87. |act_level_48\ =\ act_level_17\ +\ 2;\l\
  88. }"];
  89. }
  90. subgraph cluster_11_2 {
  91. style="filled";
  92. color="darkgreen";
  93. fillcolor="grey88";
  94. label="loop 2";
  95. labeljust=l;
  96. penwidth=2;
  97. subgraph cluster_11_5 {
  98. style="filled";
  99. color="darkgreen";
  100. fillcolor="grey77";
  101. label="loop 5";
  102. labeljust=l;
  103. penwidth=2;
  104. fn_11_basic_block_15 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 15\>:\l\
  105. |#\ act_level_15\ =\ PHI\ \<act_level_16(13),\ act_level_53(14)\>\l\
  106. |_4\ =\ g_34(D)-\>maxlevel;\l\
  107. |_5\ =\ _4\ +\ -1;\l\
  108. |if\ (act_level_15\ \<=\ _5)\l\
  109. \ \ goto\ \<bb\ 14\>;\ [INV]\l\
  110. else\l\
  111. \ \ goto\ \<bb\ 16\>;\ [INV]\l\
  112. }"];
  113. fn_11_basic_block_14 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 14\>:\l\
  114. |third_bubbling\ (g_34(D),\ act_level_15);\l\
  115. |act_level_53\ =\ act_level_15\ +\ 1;\l\
  116. }"];
  117. }
  118. fn_11_basic_block_19 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 19\>:\l\
  119. |#\ act_level_16\ =\ PHI\ \<act_level_39(12),\ act_level_51(18)\>\l\
  120. |#\ help_19\ =\ PHI\ \<help_40(12),\ help_50(18)\>\l\
  121. |if\ (help_19\ \<=\ loops_31)\l\
  122. \ \ goto\ \<bb\ 13\>;\ [INV]\l\
  123. else\l\
  124. \ \ goto\ \<bb\ 20\>;\ [INV]\l\
  125. }"];
  126. fn_11_basic_block_13 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 13\>:\l\
  127. goto\ \<bb\ 15\>;\ [INV]\l\
  128. }"];
  129. fn_11_basic_block_16 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 16\>:\l\
  130. |_6\ =\ help_19\ /\ 3;\l\
  131. |_7\ =\ _6\ *\ 3;\l\
  132. |if\ (help_19\ ==\ _7)\l\
  133. \ \ goto\ \<bb\ 17\>;\ [INV]\l\
  134. else\l\
  135. \ \ goto\ \<bb\ 18\>;\ [INV]\l\
  136. }"];
  137. fn_11_basic_block_17 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 17\>:\l\
  138. |give_horizontal_place\ (g_34(D),\ 2);\l\
  139. }"];
  140. fn_11_basic_block_18 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 18\>:\l\
  141. |help_50\ =\ help_19\ +\ 1;\l\
  142. |act_level_51\ =\ 1;\l\
  143. }"];
  144. }
  145. subgraph cluster_11_1 {
  146. style="filled";
  147. color="darkgreen";
  148. fillcolor="grey88";
  149. label="loop 1";
  150. labeljust=l;
  151. penwidth=2;
  152. fn_11_basic_block_11 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 11\>:\l\
  153. |#\ act_level_14\ =\ PHI\ \<act_level_38(4),\ act_level_60(10)\>\l\
  154. |#\ remember_22\ =\ PHI\ \<remember_20(4),\ remember_21(10)\>\l\
  155. |_2\ =\ g_34(D)-\>maxlevel;\l\
  156. |_3\ =\ _2\ +\ -1;\l\
  157. |if\ (act_level_14\ \<=\ _3)\l\
  158. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  159. else\l\
  160. \ \ goto\ \<bb\ 12\>;\ [INV]\l\
  161. }"];
  162. fn_11_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  163. |blist_55\ =\ first_bubbling\ (g_34(D),\ act_level_14);\l\
  164. |if\ (remember_22\ ==\ 1)\l\
  165. \ \ goto\ \<bb\ 6\>;\ [INV]\l\
  166. else\l\
  167. \ \ goto\ \<bb\ 7\>;\ [INV]\l\
  168. }"];
  169. fn_11_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  170. |new_bubble2\ (blist_55);\l\
  171. }"];
  172. fn_11_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  173. |_1\ =\ count_bnodes\ (blist_55);\l\
  174. |if\ (_1\ ==\ 1)\l\
  175. \ \ goto\ \<bb\ 8\>;\ [INV]\l\
  176. else\l\
  177. \ \ goto\ \<bb\ 9\>;\ [INV]\l\
  178. }"];
  179. fn_11_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  180. |remember_59\ =\ 1;\l\
  181. goto\ \<bb\ 10\>;\ [INV]\l\
  182. }"];
  183. fn_11_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 9\>:\l\
  184. |remember_58\ =\ 0;\l\
  185. }"];
  186. fn_11_basic_block_10 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 10\>:\l\
  187. |#\ remember_21\ =\ PHI\ \<remember_59(8),\ remember_58(9)\>\l\
  188. |act_level_60\ =\ act_level_14\ +\ 1;\l\
  189. }"];
  190. }
  191. fn_11_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  192. fn_11_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  193. fn_11_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  194. |act_level_30\ =\ 0;\l\
  195. |loops_31\ =\ 4;\l\
  196. |remember_32\ =\ 0;\l\
  197. |i_36\ =\ input_bubbling\ (g_34(D));\l\
  198. |if\ (i_36\ ==\ 1)\l\
  199. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  200. else\l\
  201. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  202. }"];
  203. fn_11_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  204. |remember_37\ =\ 1;\l\
  205. }"];
  206. fn_11_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  207. |#\ remember_20\ =\ PHI\ \<remember_32(2),\ remember_37(3)\>\l\
  208. |act_level_38\ =\ 1;\l\
  209. goto\ \<bb\ 11\>;\ [INV]\l\
  210. }"];
  211. fn_11_basic_block_12 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 12\>:\l\
  212. |act_level_39\ =\ 1;\l\
  213. |help_40\ =\ 1;\l\
  214. goto\ \<bb\ 19\>;\ [INV]\l\
  215. }"];
  216. fn_11_basic_block_20 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 20\>:\l\
  217. |act_level_41\ =\ 1;\l\
  218. goto\ \<bb\ 22\>;\ [INV]\l\
  219. }"];
  220. fn_11_basic_block_23 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 23\>:\l\
  221. |act_level_42\ =\ 2;\l\
  222. goto\ \<bb\ 25\>;\ [INV]\l\
  223. }"];
  224. fn_11_basic_block_26 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 26\>:\l\
  225. |bubbling_splaytree.8_12\ =\ bubbling_splaytree;\l\
  226. |_13\ =\ splay_tree_delete\ (bubbling_splaytree.8_12);\l\
  227. |bubbling_splaytree\ =\ _13;\l\
  228. }"];
  229. fn_11_basic_block_27 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 27\>:\l\
  230. |\<L28\>:\l\
  231. |return;\l\
  232. }"];
  233. fn_11_basic_block_0:s -> fn_11_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  234. fn_11_basic_block_2:s -> fn_11_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  235. fn_11_basic_block_2:s -> fn_11_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  236. fn_11_basic_block_3:s -> fn_11_basic_block_4:n [style="solid,bold",color=blue,weight=100,constraint=true];
  237. fn_11_basic_block_4:s -> fn_11_basic_block_11:n [style="solid,bold",color=blue,weight=100,constraint=true];
  238. fn_11_basic_block_5:s -> fn_11_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true];
  239. fn_11_basic_block_5:s -> fn_11_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true];
  240. fn_11_basic_block_6:s -> fn_11_basic_block_7:n [style="solid,bold",color=blue,weight=100,constraint=true];
  241. fn_11_basic_block_7:s -> fn_11_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true];
  242. fn_11_basic_block_7:s -> fn_11_basic_block_9:n [style="solid,bold",color=black,weight=10,constraint=true];
  243. fn_11_basic_block_8:s -> fn_11_basic_block_10:n [style="solid,bold",color=blue,weight=100,constraint=true];
  244. fn_11_basic_block_9:s -> fn_11_basic_block_10:n [style="solid,bold",color=blue,weight=100,constraint=true];
  245. fn_11_basic_block_10:s -> fn_11_basic_block_11:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  246. fn_11_basic_block_11:s -> fn_11_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  247. fn_11_basic_block_11:s -> fn_11_basic_block_12:n [style="solid,bold",color=black,weight=10,constraint=true];
  248. fn_11_basic_block_12:s -> fn_11_basic_block_19:n [style="solid,bold",color=blue,weight=100,constraint=true];
  249. fn_11_basic_block_13:s -> fn_11_basic_block_15:n [style="solid,bold",color=blue,weight=100,constraint=true];
  250. fn_11_basic_block_14:s -> fn_11_basic_block_15:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  251. fn_11_basic_block_15:s -> fn_11_basic_block_14:n [style="solid,bold",color=black,weight=10,constraint=true];
  252. fn_11_basic_block_15:s -> fn_11_basic_block_16:n [style="solid,bold",color=black,weight=10,constraint=true];
  253. fn_11_basic_block_16:s -> fn_11_basic_block_17:n [style="solid,bold",color=black,weight=10,constraint=true];
  254. fn_11_basic_block_16:s -> fn_11_basic_block_18:n [style="solid,bold",color=black,weight=10,constraint=true];
  255. fn_11_basic_block_17:s -> fn_11_basic_block_18:n [style="solid,bold",color=blue,weight=100,constraint=true];
  256. fn_11_basic_block_18:s -> fn_11_basic_block_19:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  257. fn_11_basic_block_19:s -> fn_11_basic_block_13:n [style="solid,bold",color=black,weight=10,constraint=true];
  258. fn_11_basic_block_19:s -> fn_11_basic_block_20:n [style="solid,bold",color=black,weight=10,constraint=true];
  259. fn_11_basic_block_20:s -> fn_11_basic_block_22:n [style="solid,bold",color=blue,weight=100,constraint=true];
  260. fn_11_basic_block_21:s -> fn_11_basic_block_22:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  261. fn_11_basic_block_22:s -> fn_11_basic_block_21:n [style="solid,bold",color=black,weight=10,constraint=true];
  262. fn_11_basic_block_22:s -> fn_11_basic_block_23:n [style="solid,bold",color=black,weight=10,constraint=true];
  263. fn_11_basic_block_23:s -> fn_11_basic_block_25:n [style="solid,bold",color=blue,weight=100,constraint=true];
  264. fn_11_basic_block_24:s -> fn_11_basic_block_25:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  265. fn_11_basic_block_25:s -> fn_11_basic_block_24:n [style="solid,bold",color=black,weight=10,constraint=true];
  266. fn_11_basic_block_25:s -> fn_11_basic_block_26:n [style="solid,bold",color=black,weight=10,constraint=true];
  267. fn_11_basic_block_26:s -> fn_11_basic_block_27:n [style="solid,bold",color=blue,weight=100,constraint=true];
  268. fn_11_basic_block_27:s -> fn_11_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  269. fn_11_basic_block_0:s -> fn_11_basic_block_1:n [style="invis",constraint=true];
  270. }
  271. subgraph "cluster_give_horizontal_place" {
  272. style="dashed";
  273. color="black";
  274. label="give_horizontal_place ()";
  275. subgraph cluster_10_1 {
  276. style="filled";
  277. color="darkgreen";
  278. fillcolor="grey88";
  279. label="loop 1";
  280. labeljust=l;
  281. penwidth=2;
  282. subgraph cluster_10_2 {
  283. style="filled";
  284. color="darkgreen";
  285. fillcolor="grey77";
  286. label="loop 2";
  287. labeljust=l;
  288. penwidth=2;
  289. fn_10_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  290. |#\ nl_7\ =\ PHI\ \<nl_16(3),\ nl_24(6)\>\l\
  291. |if\ (nl_7\ !=\ 0B)\l\
  292. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  293. else\l\
  294. \ \ goto\ \<bb\ 8\>;\ [INV]\l\
  295. }"];
  296. fn_10_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  297. |node_22\ =\ nl_7-\>node;\l\
  298. |_1\ =\ node_22-\>y;\l\
  299. |if\ (levelnr_6\ ==\ _1)\l\
  300. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  301. else\l\
  302. \ \ goto\ \<bb\ 6\>;\ [INV]\l\
  303. }"];
  304. fn_10_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  305. |insert_node_bubble\ (node_22);\l\
  306. }"];
  307. fn_10_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  308. |nl_24\ =\ nl_7-\>next;\l\
  309. }"];
  310. }
  311. fn_10_basic_block_12 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 12\>:\l\
  312. |#\ levelnr_6\ =\ PHI\ \<levelnr_12(2),\ levelnr_21(11)\>\l\
  313. |_4\ =\ g_14(D)-\>maxlevel;\l\
  314. |_5\ =\ _4\ +\ -1;\l\
  315. |if\ (levelnr_6\ \<=\ _5)\l\
  316. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  317. else\l\
  318. \ \ goto\ \<bb\ 13\>;\ [INV]\l\
  319. }"];
  320. fn_10_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  321. |first_elem\ =\ 0B;\l\
  322. |nl_16\ =\ g_14(D)-\>nodelist;\l\
  323. goto\ \<bb\ 7\>;\ [INV]\l\
  324. }"];
  325. fn_10_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  326. |sort_levellist\ (&first_elem);\l\
  327. |if\ (choose_18(D)\ ==\ 1)\l\
  328. \ \ goto\ \<bb\ 9\>;\ [INV]\l\
  329. else\l\
  330. \ \ goto\ \<bb\ 10\>;\ [INV]\l\
  331. }"];
  332. fn_10_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 9\>:\l\
  333. |first_elem.6_2\ =\ first_elem;\l\
  334. |new_bubbles\ (first_elem.6_2);\l\
  335. goto\ \<bb\ 11\>;\ [INV]\l\
  336. }"];
  337. fn_10_basic_block_10 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 10\>:\l\
  338. |first_elem.7_3\ =\ first_elem;\l\
  339. |new_bubble2\ (first_elem.7_3);\l\
  340. }"];
  341. fn_10_basic_block_11 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 11\>:\l\
  342. |levelnr_21\ =\ levelnr_6\ +\ 1;\l\
  343. }"];
  344. }
  345. fn_10_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  346. fn_10_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  347. fn_10_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  348. |levelnr_12\ =\ 0;\l\
  349. goto\ \<bb\ 12\>;\ [INV]\l\
  350. }"];
  351. fn_10_basic_block_13 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 13\>:\l\
  352. }"];
  353. fn_10_basic_block_14 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 14\>:\l\
  354. |\<L11\>:\l\
  355. |return;\l\
  356. }"];
  357. fn_10_basic_block_0:s -> fn_10_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  358. fn_10_basic_block_2:s -> fn_10_basic_block_12:n [style="solid,bold",color=blue,weight=100,constraint=true];
  359. fn_10_basic_block_3:s -> fn_10_basic_block_7:n [style="solid,bold",color=blue,weight=100,constraint=true];
  360. fn_10_basic_block_4:s -> fn_10_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  361. fn_10_basic_block_4:s -> fn_10_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true];
  362. fn_10_basic_block_5:s -> fn_10_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  363. fn_10_basic_block_6:s -> fn_10_basic_block_7:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  364. fn_10_basic_block_7:s -> fn_10_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  365. fn_10_basic_block_7:s -> fn_10_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true];
  366. fn_10_basic_block_8:s -> fn_10_basic_block_9:n [style="solid,bold",color=black,weight=10,constraint=true];
  367. fn_10_basic_block_8:s -> fn_10_basic_block_10:n [style="solid,bold",color=black,weight=10,constraint=true];
  368. fn_10_basic_block_9:s -> fn_10_basic_block_11:n [style="solid,bold",color=blue,weight=100,constraint=true];
  369. fn_10_basic_block_10:s -> fn_10_basic_block_11:n [style="solid,bold",color=blue,weight=100,constraint=true];
  370. fn_10_basic_block_11:s -> fn_10_basic_block_12:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  371. fn_10_basic_block_12:s -> fn_10_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  372. fn_10_basic_block_12:s -> fn_10_basic_block_13:n [style="solid,bold",color=black,weight=10,constraint=true];
  373. fn_10_basic_block_13:s -> fn_10_basic_block_14:n [style="solid,bold",color=blue,weight=100,constraint=true];
  374. fn_10_basic_block_14:s -> fn_10_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  375. fn_10_basic_block_0:s -> fn_10_basic_block_1:n [style="invis",constraint=true];
  376. }
  377. subgraph "cluster_new_bubble2" {
  378. style="dashed";
  379. color="black";
  380. label="new_bubble2 ()";
  381. subgraph cluster_9_1 {
  382. style="filled";
  383. color="darkgreen";
  384. fillcolor="grey88";
  385. label="loop 1";
  386. labeljust=l;
  387. penwidth=2;
  388. fn_9_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  389. |#\ new_bub_2\ =\ PHI\ \<new_bub_5(2),\ new_bub_10(3)\>\l\
  390. |#\ ptr_3\ =\ PHI\ \<ptr_7(2),\ ptr_12(3)\>\l\
  391. |if\ (ptr_3\ !=\ 0B)\l\
  392. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  393. else\l\
  394. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  395. }"];
  396. fn_9_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  397. |_1\ =\ ptr_3-\>node;\l\
  398. |_1-\>x\ =\ new_bub_2;\l\
  399. |new_bub_10\ =\ new_bub_2\ +\ 1000000;\l\
  400. |ptrnext_11\ =\ ptr_3-\>next;\l\
  401. |ptr_12\ =\ ptrnext_11;\l\
  402. }"];
  403. }
  404. fn_9_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  405. fn_9_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  406. fn_9_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  407. |new_bub_5\ =\ 1000000;\l\
  408. |ptr_7\ =\ bnodes_6(D);\l\
  409. goto\ \<bb\ 4\>;\ [INV]\l\
  410. }"];
  411. fn_9_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  412. }"];
  413. fn_9_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  414. |\<L3\>:\l\
  415. |return;\l\
  416. }"];
  417. fn_9_basic_block_0:s -> fn_9_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  418. fn_9_basic_block_2:s -> fn_9_basic_block_4:n [style="solid,bold",color=blue,weight=100,constraint=true];
  419. fn_9_basic_block_3:s -> fn_9_basic_block_4:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  420. fn_9_basic_block_4:s -> fn_9_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  421. fn_9_basic_block_4:s -> fn_9_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  422. fn_9_basic_block_5:s -> fn_9_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  423. fn_9_basic_block_6:s -> fn_9_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  424. fn_9_basic_block_0:s -> fn_9_basic_block_1:n [style="invis",constraint=true];
  425. }
  426. subgraph "cluster_new_bubbles" {
  427. style="dashed";
  428. color="black";
  429. label="new_bubbles ()";
  430. subgraph cluster_8_1 {
  431. style="filled";
  432. color="darkgreen";
  433. fillcolor="grey88";
  434. label="loop 1";
  435. labeljust=l;
  436. penwidth=2;
  437. fn_8_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  438. |#\ bnodes_2\ =\ PHI\ \<bnodes_6(D)(2),\ bnodes_11(3)\>\l\
  439. |#\ new_bub_3\ =\ PHI\ \<new_bub_5(2),\ new_bub_9(3)\>\l\
  440. |if\ (bnodes_2\ !=\ 0B)\l\
  441. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  442. else\l\
  443. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  444. }"];
  445. fn_8_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  446. |_1\ =\ bnodes_2-\>node;\l\
  447. |_1-\>x\ =\ new_bub_3;\l\
  448. |new_bub_9\ =\ new_bub_3\ +\ 1;\l\
  449. |kill_10\ =\ bnodes_2;\l\
  450. |bnodes_11\ =\ bnodes_2-\>next;\l\
  451. |bubbling_free\ (kill_10);\l\
  452. }"];
  453. }
  454. fn_8_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  455. fn_8_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  456. fn_8_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  457. |new_bub_5\ =\ 1;\l\
  458. goto\ \<bb\ 4\>;\ [INV]\l\
  459. }"];
  460. fn_8_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  461. }"];
  462. fn_8_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  463. |\<L3\>:\l\
  464. |return;\l\
  465. }"];
  466. fn_8_basic_block_0:s -> fn_8_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  467. fn_8_basic_block_2:s -> fn_8_basic_block_4:n [style="solid,bold",color=blue,weight=100,constraint=true];
  468. fn_8_basic_block_3:s -> fn_8_basic_block_4:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  469. fn_8_basic_block_4:s -> fn_8_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  470. fn_8_basic_block_4:s -> fn_8_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  471. fn_8_basic_block_5:s -> fn_8_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  472. fn_8_basic_block_6:s -> fn_8_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  473. fn_8_basic_block_0:s -> fn_8_basic_block_1:n [style="invis",constraint=true];
  474. }
  475. subgraph "cluster_sort_levellist" {
  476. style="dashed";
  477. color="black";
  478. label="sort_levellist ()";
  479. subgraph cluster_7_1 {
  480. style="filled";
  481. color="darkgreen";
  482. fillcolor="grey88";
  483. label="loop 1";
  484. labeljust=l;
  485. penwidth=2;
  486. subgraph cluster_7_2 {
  487. style="filled";
  488. color="darkgreen";
  489. fillcolor="grey77";
  490. label="loop 2";
  491. labeljust=l;
  492. penwidth=2;
  493. fn_7_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 9\>:\l\
  494. |#\ bnode_9\ =\ PHI\ \<bnode_23(3),\ bnode_8(8)\>\l\
  495. |#\ help_bnode_11\ =\ PHI\ \<help_bnode_24(3),\ help_bnode_10(8)\>\l\
  496. |#\ nr_12\ =\ PHI\ \<nr_25(3),\ nr_32(8)\>\l\
  497. |if\ (nr_12\ \>\ 0)\l\
  498. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  499. else\l\
  500. \ \ goto\ \<bb\ 10\>;\ [INV]\l\
  501. }"];
  502. fn_7_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  503. |_2\ =\ bnode_9-\>node;\l\
  504. |_3\ =\ _2-\>x;\l\
  505. |_4\ =\ help_bnode_11-\>node;\l\
  506. |_5\ =\ _4-\>x;\l\
  507. |if\ (_3\ \>=\ _5)\l\
  508. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  509. else\l\
  510. \ \ goto\ \<bb\ 6\>;\ [INV]\l\
  511. }"];
  512. fn_7_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  513. |save_node_27\ =\ bnode_9-\>node;\l\
  514. |_6\ =\ help_bnode_11-\>node;\l\
  515. |bnode_9-\>node\ =\ _6;\l\
  516. |help_bnode_11-\>node\ =\ save_node_27;\l\
  517. }"];
  518. fn_7_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  519. |if\ (nr_12\ \>\ 1)\l\
  520. \ \ goto\ \<bb\ 7\>;\ [INV]\l\
  521. else\l\
  522. \ \ goto\ \<bb\ 8\>;\ [INV]\l\
  523. }"];
  524. fn_7_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  525. |bnode_30\ =\ help_bnode_11;\l\
  526. |help_bnode_31\ =\ help_bnode_11-\>next;\l\
  527. }"];
  528. fn_7_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  529. |#\ bnode_8\ =\ PHI\ \<bnode_9(6),\ bnode_30(7)\>\l\
  530. |#\ help_bnode_10\ =\ PHI\ \<help_bnode_11(6),\ help_bnode_31(7)\>\l\
  531. |nr_32\ =\ nr_12\ +\ -1;\l\
  532. }"];
  533. }
  534. fn_7_basic_block_11 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 11\>:\l\
  535. |#\ count_13\ =\ PHI\ \<count_22(2),\ count_26(10)\>\l\
  536. |_7\ =\ count_13\ +\ -1;\l\
  537. |if\ (_7\ \>\ 0)\l\
  538. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  539. else\l\
  540. \ \ goto\ \<bb\ 12\>;\ [INV]\l\
  541. }"];
  542. fn_7_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  543. |bnode_23\ =\ *blist_20(D);\l\
  544. |help_bnode_24\ =\ bnode_23-\>next;\l\
  545. |nr_25\ =\ count_13\ +\ -1;\l\
  546. goto\ \<bb\ 9\>;\ [INV]\l\
  547. }"];
  548. fn_7_basic_block_10 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 10\>:\l\
  549. |count_26\ =\ count_13\ +\ -1;\l\
  550. }"];
  551. }
  552. fn_7_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  553. fn_7_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  554. fn_7_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  555. |nr_17\ =\ 0;\l\
  556. |count_18\ =\ 0;\l\
  557. |_1\ =\ *blist_20(D);\l\
  558. |count_22\ =\ count_bnodes\ (_1);\l\
  559. goto\ \<bb\ 11\>;\ [INV]\l\
  560. }"];
  561. fn_7_basic_block_12 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 12\>:\l\
  562. }"];
  563. fn_7_basic_block_13 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 13\>:\l\
  564. |\<L10\>:\l\
  565. |return;\l\
  566. }"];
  567. fn_7_basic_block_0:s -> fn_7_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  568. fn_7_basic_block_2:s -> fn_7_basic_block_11:n [style="solid,bold",color=blue,weight=100,constraint=true];
  569. fn_7_basic_block_3:s -> fn_7_basic_block_9:n [style="solid,bold",color=blue,weight=100,constraint=true];
  570. fn_7_basic_block_4:s -> fn_7_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  571. fn_7_basic_block_4:s -> fn_7_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true];
  572. fn_7_basic_block_5:s -> fn_7_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  573. fn_7_basic_block_6:s -> fn_7_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true];
  574. fn_7_basic_block_6:s -> fn_7_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true];
  575. fn_7_basic_block_7:s -> fn_7_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true];
  576. fn_7_basic_block_8:s -> fn_7_basic_block_9:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  577. fn_7_basic_block_9:s -> fn_7_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  578. fn_7_basic_block_9:s -> fn_7_basic_block_10:n [style="solid,bold",color=black,weight=10,constraint=true];
  579. fn_7_basic_block_10:s -> fn_7_basic_block_11:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  580. fn_7_basic_block_11:s -> fn_7_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  581. fn_7_basic_block_11:s -> fn_7_basic_block_12:n [style="solid,bold",color=black,weight=10,constraint=true];
  582. fn_7_basic_block_12:s -> fn_7_basic_block_13:n [style="solid,bold",color=blue,weight=100,constraint=true];
  583. fn_7_basic_block_13:s -> fn_7_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  584. fn_7_basic_block_0:s -> fn_7_basic_block_1:n [style="invis",constraint=true];
  585. }
  586. subgraph "cluster_count_bnodes" {
  587. style="dashed";
  588. color="black";
  589. label="count_bnodes ()";
  590. subgraph cluster_6_1 {
  591. style="filled";
  592. color="darkgreen";
  593. fillcolor="grey88";
  594. label="loop 1";
  595. labeljust=l;
  596. penwidth=2;
  597. fn_6_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  598. |#\ ptr_1\ =\ PHI\ \<ptr_7(4),\ ptr_11(5)\>\l\
  599. |#\ nr_2\ =\ PHI\ \<nr_5(4),\ nr_9(5)\>\l\
  600. |if\ (ptr_1\ !=\ 0B)\l\
  601. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  602. else\l\
  603. \ \ goto\ \<bb\ 7\>;\ [INV]\l\
  604. }"];
  605. fn_6_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  606. |nr_9\ =\ nr_2\ +\ 1;\l\
  607. |ptr_11\ =\ ptr_1-\>next;\l\
  608. }"];
  609. }
  610. fn_6_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  611. fn_6_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  612. fn_6_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  613. |ptr_4\ =\ 0B;\l\
  614. |nr_5\ =\ 0;\l\
  615. |if\ (thelist_6(D)\ ==\ 0B)\l\
  616. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  617. else\l\
  618. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  619. }"];
  620. fn_6_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  621. |_12\ =\ 0;\l\
  622. |//\ predicted\ unlikely\ by\ early\ return\ (on\ trees)\ predictor.\l\
  623. goto\ \<bb\ 8\>;\ [INV]\l\
  624. }"];
  625. fn_6_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  626. |ptr_7\ =\ thelist_6(D);\l\
  627. goto\ \<bb\ 6\>;\ [INV]\l\
  628. }"];
  629. fn_6_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  630. |_8\ =\ nr_2;\l\
  631. }"];
  632. fn_6_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  633. |#\ _3\ =\ PHI\ \<_12(3),\ _8(7)\>\l\
  634. |\<L5\>:\l\
  635. |return\ _3;\l\
  636. }"];
  637. fn_6_basic_block_0:s -> fn_6_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  638. fn_6_basic_block_2:s -> fn_6_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  639. fn_6_basic_block_2:s -> fn_6_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  640. fn_6_basic_block_3:s -> fn_6_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true];
  641. fn_6_basic_block_4:s -> fn_6_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  642. fn_6_basic_block_5:s -> fn_6_basic_block_6:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  643. fn_6_basic_block_6:s -> fn_6_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  644. fn_6_basic_block_6:s -> fn_6_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true];
  645. fn_6_basic_block_7:s -> fn_6_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true];
  646. fn_6_basic_block_8:s -> fn_6_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  647. fn_6_basic_block_0:s -> fn_6_basic_block_1:n [style="invis",constraint=true];
  648. }
  649. subgraph "cluster_third_bubbling" {
  650. style="dashed";
  651. color="black";
  652. label="third_bubbling ()";
  653. subgraph cluster_5_1 {
  654. style="filled";
  655. color="darkgreen";
  656. fillcolor="grey88";
  657. label="loop 1";
  658. labeljust=l;
  659. penwidth=2;
  660. subgraph cluster_5_3 {
  661. style="filled";
  662. color="darkgreen";
  663. fillcolor="grey77";
  664. label="loop 3";
  665. labeljust=l;
  666. penwidth=2;
  667. fn_5_basic_block_13 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 13\>:\l\
  668. |#\ el_10\ =\ PHI\ \<el_32(9),\ el_39(12)\>\l\
  669. |#\ bubble_15\ =\ PHI\ \<bubble_13(9),\ bubble_14(12)\>\l\
  670. |#\ count_19\ =\ PHI\ \<count_17(9),\ count_18(12)\>\l\
  671. |if\ (el_10\ !=\ 0B)\l\
  672. \ \ goto\ \<bb\ 10\>;\ [INV]\l\
  673. else\l\
  674. \ \ goto\ \<bb\ 14\>;\ [INV]\l\
  675. }"];
  676. fn_5_basic_block_10 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 10\>:\l\
  677. |edge_35\ =\ el_10-\>edge;\l\
  678. |target_36\ =\ edge_35-\>to_node;\l\
  679. |_5\ =\ target_36-\>y;\l\
  680. |_6\ =\ act_level_30(D)\ +\ 1;\l\
  681. |if\ (_5\ ==\ _6)\l\
  682. \ \ goto\ \<bb\ 11\>;\ [INV]\l\
  683. else\l\
  684. \ \ goto\ \<bb\ 12\>;\ [INV]\l\
  685. }"];
  686. fn_5_basic_block_11 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 11\>:\l\
  687. |_7\ =\ target_36-\>x;\l\
  688. |bubble_37\ =\ bubble_15\ +\ _7;\l\
  689. |count_38\ =\ count_19\ +\ 1;\l\
  690. }"];
  691. fn_5_basic_block_12 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 12\>:\l\
  692. |#\ bubble_14\ =\ PHI\ \<bubble_15(10),\ bubble_37(11)\>\l\
  693. |#\ count_18\ =\ PHI\ \<count_19(10),\ count_38(11)\>\l\
  694. |el_39\ =\ el_10-\>next;\l\
  695. }"];
  696. }
  697. subgraph cluster_5_2 {
  698. style="filled";
  699. color="darkgreen";
  700. fillcolor="grey77";
  701. label="loop 2";
  702. labeljust=l;
  703. penwidth=2;
  704. fn_5_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  705. |#\ el_9\ =\ PHI\ \<el_31(4),\ el_44(7)\>\l\
  706. |#\ bubble_13\ =\ PHI\ \<bubble_28(4),\ bubble_12(7)\>\l\
  707. |#\ count_17\ =\ PHI\ \<count_29(4),\ count_16(7)\>\l\
  708. |if\ (el_9\ !=\ 0B)\l\
  709. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  710. else\l\
  711. \ \ goto\ \<bb\ 9\>;\ [INV]\l\
  712. }"];
  713. fn_5_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  714. |edge_40\ =\ el_9-\>edge;\l\
  715. |source_41\ =\ edge_40-\>from_node;\l\
  716. |_2\ =\ source_41-\>y;\l\
  717. |_3\ =\ act_level_30(D)\ +\ -1;\l\
  718. |if\ (_2\ ==\ _3)\l\
  719. \ \ goto\ \<bb\ 6\>;\ [INV]\l\
  720. else\l\
  721. \ \ goto\ \<bb\ 7\>;\ [INV]\l\
  722. }"];
  723. fn_5_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  724. |_4\ =\ source_41-\>x;\l\
  725. |bubble_42\ =\ bubble_13\ +\ _4;\l\
  726. |count_43\ =\ count_17\ +\ 1;\l\
  727. }"];
  728. fn_5_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  729. |#\ bubble_12\ =\ PHI\ \<bubble_13(5),\ bubble_42(6)\>\l\
  730. |#\ count_16\ =\ PHI\ \<count_17(5),\ count_43(6)\>\l\
  731. |el_44\ =\ el_9-\>next;\l\
  732. }"];
  733. }
  734. fn_5_basic_block_18 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 18\>:\l\
  735. |#\ nl_11\ =\ PHI\ \<nl_26(2),\ nl_45(17)\>\l\
  736. |if\ (nl_11\ !=\ 0B)\l\
  737. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  738. else\l\
  739. \ \ goto\ \<bb\ 19\>;\ [INV]\l\
  740. }"];
  741. fn_5_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  742. |node_27\ =\ nl_11-\>node;\l\
  743. |bubble_28\ =\ 0;\l\
  744. |count_29\ =\ 0;\l\
  745. |_1\ =\ node_27-\>y;\l\
  746. |if\ (act_level_30(D)\ ==\ _1)\l\
  747. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  748. else\l\
  749. \ \ goto\ \<bb\ 17\>;\ [INV]\l\
  750. }"];
  751. fn_5_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  752. |el_31\ =\ node_27-\>incoming_e;\l\
  753. goto\ \<bb\ 8\>;\ [INV]\l\
  754. }"];
  755. fn_5_basic_block_17 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 17\>:\l\
  756. |nl_45\ =\ nl_11-\>next;\l\
  757. }"];
  758. fn_5_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 9\>:\l\
  759. |el_32\ =\ node_27-\>outgoing_e;\l\
  760. goto\ \<bb\ 13\>;\ [INV]\l\
  761. }"];
  762. fn_5_basic_block_14 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 14\>:\l\
  763. |if\ (count_19\ \>\ 0)\l\
  764. \ \ goto\ \<bb\ 15\>;\ [INV]\l\
  765. else\l\
  766. \ \ goto\ \<bb\ 16\>;\ [INV]\l\
  767. }"];
  768. fn_5_basic_block_15 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 15\>:\l\
  769. |_8\ =\ bubble_15\ /\ count_19;\l\
  770. |node_27-\>x\ =\ _8;\l\
  771. goto\ \<bb\ 17\>;\ [INV]\l\
  772. }"];
  773. fn_5_basic_block_16 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 16\>:\l\
  774. |node_27-\>x\ =\ 1000000;\l\
  775. }"];
  776. }
  777. fn_5_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  778. fn_5_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  779. fn_5_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  780. |bubble_22\ =\ 0;\l\
  781. |count_23\ =\ 0;\l\
  782. |nl_26\ =\ g_25(D)-\>nodelist;\l\
  783. goto\ \<bb\ 18\>;\ [INV]\l\
  784. }"];
  785. fn_5_basic_block_19 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 19\>:\l\
  786. }"];
  787. fn_5_basic_block_20 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 20\>:\l\
  788. |\<L18\>:\l\
  789. |return;\l\
  790. }"];
  791. fn_5_basic_block_0:s -> fn_5_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  792. fn_5_basic_block_2:s -> fn_5_basic_block_18:n [style="solid,bold",color=blue,weight=100,constraint=true];
  793. fn_5_basic_block_3:s -> fn_5_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  794. fn_5_basic_block_3:s -> fn_5_basic_block_17:n [style="solid,bold",color=black,weight=10,constraint=true];
  795. fn_5_basic_block_4:s -> fn_5_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true];
  796. fn_5_basic_block_5:s -> fn_5_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true];
  797. fn_5_basic_block_5:s -> fn_5_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true];
  798. fn_5_basic_block_6:s -> fn_5_basic_block_7:n [style="solid,bold",color=blue,weight=100,constraint=true];
  799. fn_5_basic_block_7:s -> fn_5_basic_block_8:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  800. fn_5_basic_block_8:s -> fn_5_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  801. fn_5_basic_block_8:s -> fn_5_basic_block_9:n [style="solid,bold",color=black,weight=10,constraint=true];
  802. fn_5_basic_block_9:s -> fn_5_basic_block_13:n [style="solid,bold",color=blue,weight=100,constraint=true];
  803. fn_5_basic_block_10:s -> fn_5_basic_block_11:n [style="solid,bold",color=black,weight=10,constraint=true];
  804. fn_5_basic_block_10:s -> fn_5_basic_block_12:n [style="solid,bold",color=black,weight=10,constraint=true];
  805. fn_5_basic_block_11:s -> fn_5_basic_block_12:n [style="solid,bold",color=blue,weight=100,constraint=true];
  806. fn_5_basic_block_12:s -> fn_5_basic_block_13:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  807. fn_5_basic_block_13:s -> fn_5_basic_block_10:n [style="solid,bold",color=black,weight=10,constraint=true];
  808. fn_5_basic_block_13:s -> fn_5_basic_block_14:n [style="solid,bold",color=black,weight=10,constraint=true];
  809. fn_5_basic_block_14:s -> fn_5_basic_block_15:n [style="solid,bold",color=black,weight=10,constraint=true];
  810. fn_5_basic_block_14:s -> fn_5_basic_block_16:n [style="solid,bold",color=black,weight=10,constraint=true];
  811. fn_5_basic_block_15:s -> fn_5_basic_block_17:n [style="solid,bold",color=blue,weight=100,constraint=true];
  812. fn_5_basic_block_16:s -> fn_5_basic_block_17:n [style="solid,bold",color=blue,weight=100,constraint=true];
  813. fn_5_basic_block_17:s -> fn_5_basic_block_18:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  814. fn_5_basic_block_18:s -> fn_5_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  815. fn_5_basic_block_18:s -> fn_5_basic_block_19:n [style="solid,bold",color=black,weight=10,constraint=true];
  816. fn_5_basic_block_19:s -> fn_5_basic_block_20:n [style="solid,bold",color=blue,weight=100,constraint=true];
  817. fn_5_basic_block_20:s -> fn_5_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  818. fn_5_basic_block_0:s -> fn_5_basic_block_1:n [style="invis",constraint=true];
  819. }
  820. subgraph "cluster_first_bubbling" {
  821. style="dashed";
  822. color="black";
  823. label="first_bubbling ()";
  824. subgraph cluster_4_1 {
  825. style="filled";
  826. color="darkgreen";
  827. fillcolor="grey88";
  828. label="loop 1";
  829. labeljust=l;
  830. penwidth=2;
  831. subgraph cluster_4_2 {
  832. style="filled";
  833. color="darkgreen";
  834. fillcolor="grey77";
  835. label="loop 2";
  836. labeljust=l;
  837. penwidth=2;
  838. fn_4_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  839. |#\ el_6\ =\ PHI\ \<el_26(4),\ el_34(7)\>\l\
  840. |#\ bubble_9\ =\ PHI\ \<bubble_23(4),\ bubble_8(7)\>\l\
  841. |#\ count_11\ =\ PHI\ \<count_24(4),\ count_10(7)\>\l\
  842. |if\ (el_6\ !=\ 0B)\l\
  843. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  844. else\l\
  845. \ \ goto\ \<bb\ 9\>;\ [INV]\l\
  846. }"];
  847. fn_4_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  848. |edge_30\ =\ el_6-\>edge;\l\
  849. |source_31\ =\ edge_30-\>from_node;\l\
  850. |_2\ =\ source_31-\>y;\l\
  851. |_3\ =\ act_level_25(D)\ +\ -1;\l\
  852. |if\ (_2\ ==\ _3)\l\
  853. \ \ goto\ \<bb\ 6\>;\ [INV]\l\
  854. else\l\
  855. \ \ goto\ \<bb\ 7\>;\ [INV]\l\
  856. }"];
  857. fn_4_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  858. |_4\ =\ source_31-\>x;\l\
  859. |bubble_32\ =\ bubble_9\ +\ _4;\l\
  860. |count_33\ =\ count_11\ +\ 1;\l\
  861. }"];
  862. fn_4_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  863. |#\ bubble_8\ =\ PHI\ \<bubble_9(5),\ bubble_32(6)\>\l\
  864. |#\ count_10\ =\ PHI\ \<count_11(5),\ count_33(6)\>\l\
  865. |el_34\ =\ el_6-\>next;\l\
  866. }"];
  867. }
  868. fn_4_basic_block_14 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 14\>:\l\
  869. |#\ nl_7\ =\ PHI\ \<nl_20(2),\ nl_35(13)\>\l\
  870. |if\ (nl_7\ !=\ 0B)\l\
  871. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  872. else\l\
  873. \ \ goto\ \<bb\ 15\>;\ [INV]\l\
  874. }"];
  875. fn_4_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  876. |node_22\ =\ nl_7-\>node;\l\
  877. |bubble_23\ =\ 0;\l\
  878. |count_24\ =\ 0;\l\
  879. |_1\ =\ node_22-\>y;\l\
  880. |if\ (act_level_25(D)\ ==\ _1)\l\
  881. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  882. else\l\
  883. \ \ goto\ \<bb\ 13\>;\ [INV]\l\
  884. }"];
  885. fn_4_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  886. |el_26\ =\ node_22-\>incoming_e;\l\
  887. goto\ \<bb\ 8\>;\ [INV]\l\
  888. }"];
  889. fn_4_basic_block_13 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 13\>:\l\
  890. |nl_35\ =\ nl_7-\>next;\l\
  891. }"];
  892. fn_4_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 9\>:\l\
  893. |if\ (count_11\ \>\ 0)\l\
  894. \ \ goto\ \<bb\ 10\>;\ [INV]\l\
  895. else\l\
  896. \ \ goto\ \<bb\ 11\>;\ [INV]\l\
  897. }"];
  898. fn_4_basic_block_10 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 10\>:\l\
  899. |_5\ =\ bubble_9\ /\ count_11;\l\
  900. |node_22-\>x\ =\ _5;\l\
  901. goto\ \<bb\ 12\>;\ [INV]\l\
  902. }"];
  903. fn_4_basic_block_11 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 11\>:\l\
  904. |node_22-\>x\ =\ 1000000;\l\
  905. }"];
  906. fn_4_basic_block_12 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 12\>:\l\
  907. |insert_node_bubble\ (node_22);\l\
  908. }"];
  909. }
  910. fn_4_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  911. fn_4_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  912. fn_4_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  913. |bubble_15\ =\ 0;\l\
  914. |count_16\ =\ 0;\l\
  915. |first_elem\ =\ 0B;\l\
  916. |nl_20\ =\ g_19(D)-\>nodelist;\l\
  917. goto\ \<bb\ 14\>;\ [INV]\l\
  918. }"];
  919. fn_4_basic_block_15 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 15\>:\l\
  920. |_21\ =\ first_elem;\l\
  921. }"];
  922. fn_4_basic_block_16 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 16\>:\l\
  923. |\<L13\>:\l\
  924. |return\ _21;\l\
  925. }"];
  926. fn_4_basic_block_0:s -> fn_4_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  927. fn_4_basic_block_2:s -> fn_4_basic_block_14:n [style="solid,bold",color=blue,weight=100,constraint=true];
  928. fn_4_basic_block_3:s -> fn_4_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  929. fn_4_basic_block_3:s -> fn_4_basic_block_13:n [style="solid,bold",color=black,weight=10,constraint=true];
  930. fn_4_basic_block_4:s -> fn_4_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true];
  931. fn_4_basic_block_5:s -> fn_4_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true];
  932. fn_4_basic_block_5:s -> fn_4_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true];
  933. fn_4_basic_block_6:s -> fn_4_basic_block_7:n [style="solid,bold",color=blue,weight=100,constraint=true];
  934. fn_4_basic_block_7:s -> fn_4_basic_block_8:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  935. fn_4_basic_block_8:s -> fn_4_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  936. fn_4_basic_block_8:s -> fn_4_basic_block_9:n [style="solid,bold",color=black,weight=10,constraint=true];
  937. fn_4_basic_block_9:s -> fn_4_basic_block_10:n [style="solid,bold",color=black,weight=10,constraint=true];
  938. fn_4_basic_block_9:s -> fn_4_basic_block_11:n [style="solid,bold",color=black,weight=10,constraint=true];
  939. fn_4_basic_block_10:s -> fn_4_basic_block_12:n [style="solid,bold",color=blue,weight=100,constraint=true];
  940. fn_4_basic_block_11:s -> fn_4_basic_block_12:n [style="solid,bold",color=blue,weight=100,constraint=true];
  941. fn_4_basic_block_12:s -> fn_4_basic_block_13:n [style="solid,bold",color=blue,weight=100,constraint=true];
  942. fn_4_basic_block_13:s -> fn_4_basic_block_14:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  943. fn_4_basic_block_14:s -> fn_4_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  944. fn_4_basic_block_14:s -> fn_4_basic_block_15:n [style="solid,bold",color=black,weight=10,constraint=true];
  945. fn_4_basic_block_15:s -> fn_4_basic_block_16:n [style="solid,bold",color=blue,weight=100,constraint=true];
  946. fn_4_basic_block_16:s -> fn_4_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  947. fn_4_basic_block_0:s -> fn_4_basic_block_1:n [style="invis",constraint=true];
  948. }
  949. subgraph "cluster_insert_node_bubble" {
  950. style="dashed";
  951. color="black";
  952. label="insert_node_bubble ()";
  953. fn_3_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  954. fn_3_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  955. fn_3_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  956. |new_n_4\ =\ bubbling_calloc\ (1,\ 16);\l\
  957. |new_n_4-\>node\ =\ node_5(D);\l\
  958. |first_elem.5_1\ =\ first_elem;\l\
  959. |new_n_4-\>next\ =\ first_elem.5_1;\l\
  960. |first_elem\ =\ new_n_4;\l\
  961. }"];
  962. fn_3_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  963. |\<L0\>:\l\
  964. |return;\l\
  965. }"];
  966. fn_3_basic_block_0:s -> fn_3_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  967. fn_3_basic_block_2:s -> fn_3_basic_block_3:n [style="solid,bold",color=blue,weight=100,constraint=true];
  968. fn_3_basic_block_3:s -> fn_3_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  969. fn_3_basic_block_0:s -> fn_3_basic_block_1:n [style="invis",constraint=true];
  970. }
  971. subgraph "cluster_input_bubbling" {
  972. style="dashed";
  973. color="black";
  974. label="input_bubbling ()";
  975. subgraph cluster_2_1 {
  976. style="filled";
  977. color="darkgreen";
  978. fillcolor="grey88";
  979. label="loop 1";
  980. labeljust=l;
  981. penwidth=2;
  982. fn_2_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  983. |#\ nl_2\ =\ PHI\ \<nl_13(2),\ nl_19(5)\>\l\
  984. |#\ bubble_4\ =\ PHI\ \<bubble_9(2),\ bubble_3(5)\>\l\
  985. |#\ i_6\ =\ PHI\ \<i_10(2),\ i_5(5)\>\l\
  986. |if\ (nl_2\ !=\ 0B)\l\
  987. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  988. else\l\
  989. \ \ goto\ \<bb\ 7\>;\ [INV]\l\
  990. }"];
  991. fn_2_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  992. |node_15\ =\ nl_2-\>node;\l\
  993. |_1\ =\ node_15-\>y;\l\
  994. |if\ (_1\ ==\ 0)\l\
  995. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  996. else\l\
  997. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  998. }"];
  999. fn_2_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  1000. |node_15-\>x\ =\ bubble_4;\l\
  1001. |bubble_17\ =\ bubble_4\ +\ 1000000;\l\
  1002. |i_18\ =\ i_6\ +\ 1;\l\
  1003. }"];
  1004. fn_2_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  1005. |#\ bubble_3\ =\ PHI\ \<bubble_4(3),\ bubble_17(4)\>\l\
  1006. |#\ i_5\ =\ PHI\ \<i_6(3),\ i_18(4)\>\l\
  1007. |nl_19\ =\ nl_2-\>next;\l\
  1008. }"];
  1009. }
  1010. fn_2_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  1011. fn_2_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  1012. fn_2_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  1013. |bubble_9\ =\ 1000000;\l\
  1014. |i_10\ =\ 0;\l\
  1015. |nl_13\ =\ g_12(D)-\>nodelist;\l\
  1016. goto\ \<bb\ 6\>;\ [INV]\l\
  1017. }"];
  1018. fn_2_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  1019. |_14\ =\ i_6;\l\
  1020. }"];
  1021. fn_2_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  1022. |\<L5\>:\l\
  1023. |return\ _14;\l\
  1024. }"];
  1025. fn_2_basic_block_0:s -> fn_2_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1026. fn_2_basic_block_2:s -> fn_2_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1027. fn_2_basic_block_3:s -> fn_2_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  1028. fn_2_basic_block_3:s -> fn_2_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  1029. fn_2_basic_block_4:s -> fn_2_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1030. fn_2_basic_block_5:s -> fn_2_basic_block_6:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  1031. fn_2_basic_block_6:s -> fn_2_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  1032. fn_2_basic_block_6:s -> fn_2_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true];
  1033. fn_2_basic_block_7:s -> fn_2_basic_block_8:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1034. fn_2_basic_block_8:s -> fn_2_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  1035. fn_2_basic_block_0:s -> fn_2_basic_block_1:n [style="invis",constraint=true];
  1036. }
  1037. subgraph "cluster_bubbling_calloc" {
  1038. style="dashed";
  1039. color="black";
  1040. label="bubbling_calloc ()";
  1041. fn_1_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  1042. fn_1_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  1043. fn_1_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  1044. |_1\ =\ (long\ unsigned\ int)\ nn_7(D);\l\
  1045. |ret_11\ =\ dp_calloc\ (_1,\ sz_9(D));\l\
  1046. |bubbling_splaytree.2_2\ =\ bubbling_splaytree;\l\
  1047. |if\ (bubbling_splaytree.2_2\ ==\ 0B)\l\
  1048. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  1049. else\l\
  1050. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  1051. }"];
  1052. fn_1_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  1053. |_3\ =\ splay_tree_new\ (splay_tree_compare_pointers,\ splay_tree_free_key,\ 0B);\l\
  1054. |bubbling_splaytree\ =\ _3;\l\
  1055. }"];
  1056. fn_1_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  1057. |ret.3_4\ =\ (long\ unsigned\ int)\ ret_11;\l\
  1058. |bubbling_splaytree.4_5\ =\ bubbling_splaytree;\l\
  1059. |splay_tree_insert\ (bubbling_splaytree.4_5,\ ret.3_4,\ 0);\l\
  1060. |_15\ =\ ret_11;\l\
  1061. }"];
  1062. fn_1_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  1063. |\<L2\>:\l\
  1064. |return\ _15;\l\
  1065. }"];
  1066. fn_1_basic_block_0:s -> fn_1_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1067. fn_1_basic_block_2:s -> fn_1_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  1068. fn_1_basic_block_2:s -> fn_1_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  1069. fn_1_basic_block_3:s -> fn_1_basic_block_4:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1070. fn_1_basic_block_4:s -> fn_1_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1071. fn_1_basic_block_5:s -> fn_1_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  1072. fn_1_basic_block_0:s -> fn_1_basic_block_1:n [style="invis",constraint=true];
  1073. }
  1074. subgraph "cluster_bubbling_free" {
  1075. style="dashed";
  1076. color="black";
  1077. label="bubbling_free ()";
  1078. fn_0_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  1079. fn_0_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  1080. fn_0_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  1081. |if\ (ptr_4(D)\ !=\ 0B)\l\
  1082. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  1083. else\l\
  1084. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  1085. }"];
  1086. fn_0_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  1087. |ptr.0_1\ =\ (long\ unsigned\ int)\ ptr_4(D);\l\
  1088. |bubbling_splaytree.1_2\ =\ bubbling_splaytree;\l\
  1089. |splay_tree_remove\ (bubbling_splaytree.1_2,\ ptr.0_1);\l\
  1090. }"];
  1091. fn_0_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  1092. }"];
  1093. fn_0_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  1094. |\<L2\>:\l\
  1095. |return;\l\
  1096. }"];
  1097. fn_0_basic_block_0:s -> fn_0_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1098. fn_0_basic_block_2:s -> fn_0_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  1099. fn_0_basic_block_2:s -> fn_0_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  1100. fn_0_basic_block_3:s -> fn_0_basic_block_4:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1101. fn_0_basic_block_4:s -> fn_0_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true];
  1102. fn_0_basic_block_5:s -> fn_0_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  1103. fn_0_basic_block_0:s -> fn_0_basic_block_1:n [style="invis",constraint=true];
  1104. }
  1105. }