d4dag.c.021t.ssa.dot 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. digraph "d4dag.c.021t.ssa" {
  2. overlap=false;
  3. subgraph "cluster_d4d_version" {
  4. style="dashed";
  5. color="black";
  6. label="d4d_version ()";
  7. fn_0_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  8. fn_0_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  9. fn_0_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  10. |_1\ =\ 10;\l\
  11. }"];
  12. fn_0_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  13. |\<L0\>:\l\
  14. |return\ _1;\l\
  15. }"];
  16. fn_0_basic_block_0:s -> fn_0_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  17. fn_0_basic_block_2:s -> fn_0_basic_block_3:n [style="solid,bold",color=blue,weight=100,constraint=true];
  18. fn_0_basic_block_3:s -> fn_0_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  19. fn_0_basic_block_0:s -> fn_0_basic_block_1:n [style="invis",constraint=true];
  20. }
  21. subgraph "cluster_d4d_deinit" {
  22. style="dashed";
  23. color="black";
  24. label="d4d_deinit ()";
  25. fn_2_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  26. fn_2_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  27. fn_2_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  28. |d4d__main.4_1\ =\ d4d__main;\l\
  29. |if\ (d4d__main.4_1\ ==\ 0B)\l\
  30. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  31. else\l\
  32. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  33. }"];
  34. fn_2_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  35. |_11\ =\ 0;\l\
  36. |//\ predicted\ unlikely\ by\ early\ return\ (on\ trees)\ predictor.\l\
  37. goto\ \<bb\ 5\>;\ [INV]\l\
  38. }"];
  39. fn_2_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  40. |d4d__main.5_2\ =\ d4d__main;\l\
  41. |_3\ =\ d4d__main.5_2-\>d4d__free;\l\
  42. |d4d__main.6_4\ =\ d4d__main;\l\
  43. |_3\ (d4d__main.6_4);\l\
  44. |d4d__main\ =\ 0B;\l\
  45. |_10\ =\ 0;\l\
  46. }"];
  47. fn_2_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  48. |#\ _5\ =\ PHI\ \<_11(3),\ _10(4)\>\l\
  49. |\<L2\>:\l\
  50. |return\ _5;\l\
  51. }"];
  52. fn_2_basic_block_0:s -> fn_2_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  53. fn_2_basic_block_2:s -> fn_2_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  54. fn_2_basic_block_2:s -> fn_2_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  55. fn_2_basic_block_3:s -> fn_2_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true];
  56. fn_2_basic_block_4:s -> fn_2_basic_block_5:n [style="solid,bold",color=blue,weight=100,constraint=true];
  57. fn_2_basic_block_5:s -> fn_2_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  58. fn_2_basic_block_0:s -> fn_2_basic_block_1:n [style="invis",constraint=true];
  59. }
  60. subgraph "cluster_d4d__memzero" {
  61. style="dashed";
  62. color="black";
  63. label="d4d__memzero ()";
  64. subgraph cluster_3_1 {
  65. style="filled";
  66. color="darkgreen";
  67. fillcolor="grey88";
  68. label="loop 1";
  69. labeljust=l;
  70. penwidth=2;
  71. fn_3_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  72. |#\ n_1\ =\ PHI\ \<n_7(D)(2),\ n_11(3)\>\l\
  73. |#\ p_2\ =\ PHI\ \<p_6(2),\ p_10(3)\>\l\
  74. |if\ (n_1\ !=\ 0)\l\
  75. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  76. else\l\
  77. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  78. }"];
  79. fn_3_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  80. |*p_2\ =\ 0;\l\
  81. |p_10\ =\ p_2\ +\ 1;\l\
  82. |n_11\ =\ n_1\ +\ 4294967295;\l\
  83. }"];
  84. }
  85. fn_3_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  86. fn_3_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  87. fn_3_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  88. |p_4\ =\ 0B;\l\
  89. |p_6\ =\ ptr_5(D);\l\
  90. goto\ \<bb\ 4\>;\ [INV]\l\
  91. }"];
  92. fn_3_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  93. }"];
  94. fn_3_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  95. |\<L3\>:\l\
  96. |return;\l\
  97. }"];
  98. fn_3_basic_block_0:s -> fn_3_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  99. fn_3_basic_block_2:s -> fn_3_basic_block_4:n [style="solid,bold",color=blue,weight=100,constraint=true];
  100. fn_3_basic_block_3:s -> fn_3_basic_block_4:n [style="dotted,bold",color=blue,weight=10,constraint=false];
  101. fn_3_basic_block_4:s -> fn_3_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  102. fn_3_basic_block_4:s -> fn_3_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  103. fn_3_basic_block_5:s -> fn_3_basic_block_6:n [style="solid,bold",color=blue,weight=100,constraint=true];
  104. fn_3_basic_block_6:s -> fn_3_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  105. fn_3_basic_block_0:s -> fn_3_basic_block_1:n [style="invis",constraint=true];
  106. }
  107. subgraph "cluster_d4d_init" {
  108. style="dashed";
  109. color="black";
  110. label="d4d_init ()";
  111. fn_1_basic_block_0 [shape=Mdiamond,style=filled,fillcolor=white,label="ENTRY"];
  112. fn_1_basic_block_1 [shape=Mdiamond,style=filled,fillcolor=white,label="EXIT"];
  113. fn_1_basic_block_2 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 2\>:\l\
  114. |if\ (mallocer_8(D)\ ==\ 0B)\l\
  115. \ \ goto\ \<bb\ 3\>;\ [INV]\l\
  116. else\l\
  117. \ \ goto\ \<bb\ 4\>;\ [INV]\l\
  118. }"];
  119. fn_1_basic_block_3 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 3\>:\l\
  120. |_19\ =\ -1;\l\
  121. |//\ predicted\ unlikely\ by\ early\ return\ (on\ trees)\ predictor.\l\
  122. goto\ \<bb\ 9\>;\ [INV]\l\
  123. }"];
  124. fn_1_basic_block_4 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 4\>:\l\
  125. |if\ (freeer_9(D)\ ==\ 0B)\l\
  126. \ \ goto\ \<bb\ 5\>;\ [INV]\l\
  127. else\l\
  128. \ \ goto\ \<bb\ 6\>;\ [INV]\l\
  129. }"];
  130. fn_1_basic_block_5 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 5\>:\l\
  131. |_18\ =\ -1;\l\
  132. |//\ predicted\ unlikely\ by\ early\ return\ (on\ trees)\ predictor.\l\
  133. goto\ \<bb\ 9\>;\ [INV]\l\
  134. }"];
  135. fn_1_basic_block_6 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 6\>:\l\
  136. |_1\ =\ mallocer_8(D)\ (16);\l\
  137. |d4d__main\ =\ _1;\l\
  138. |d4d__main.0_2\ =\ d4d__main;\l\
  139. |if\ (d4d__main.0_2\ ==\ 0B)\l\
  140. \ \ goto\ \<bb\ 7\>;\ [INV]\l\
  141. else\l\
  142. \ \ goto\ \<bb\ 8\>;\ [INV]\l\
  143. }"];
  144. fn_1_basic_block_7 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 7\>:\l\
  145. |_17\ =\ -2;\l\
  146. |//\ predicted\ unlikely\ by\ early\ return\ (on\ trees)\ predictor.\l\
  147. goto\ \<bb\ 9\>;\ [INV]\l\
  148. }"];
  149. fn_1_basic_block_8 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 8\>:\l\
  150. |d4d__main.1_3\ =\ d4d__main;\l\
  151. |d4d__memzero\ (d4d__main.1_3,\ 16);\l\
  152. |d4d__main.2_4\ =\ d4d__main;\l\
  153. |d4d__main.2_4-\>d4d__malloc\ =\ mallocer_8(D);\l\
  154. |d4d__main.3_5\ =\ d4d__main;\l\
  155. |d4d__main.3_5-\>d4d__free\ =\ freeer_9(D);\l\
  156. |_16\ =\ 0;\l\
  157. }"];
  158. fn_1_basic_block_9 [shape=record,style=filled,fillcolor=lightgrey,label="{\<bb\ 9\>:\l\
  159. |#\ _6\ =\ PHI\ \<_19(3),\ _18(5),\ _17(7),\ _16(8)\>\l\
  160. |\<L6\>:\l\
  161. |return\ _6;\l\
  162. }"];
  163. fn_1_basic_block_0:s -> fn_1_basic_block_2:n [style="solid,bold",color=blue,weight=100,constraint=true];
  164. fn_1_basic_block_2:s -> fn_1_basic_block_3:n [style="solid,bold",color=black,weight=10,constraint=true];
  165. fn_1_basic_block_2:s -> fn_1_basic_block_4:n [style="solid,bold",color=black,weight=10,constraint=true];
  166. fn_1_basic_block_3:s -> fn_1_basic_block_9:n [style="solid,bold",color=blue,weight=100,constraint=true];
  167. fn_1_basic_block_4:s -> fn_1_basic_block_5:n [style="solid,bold",color=black,weight=10,constraint=true];
  168. fn_1_basic_block_4:s -> fn_1_basic_block_6:n [style="solid,bold",color=black,weight=10,constraint=true];
  169. fn_1_basic_block_5:s -> fn_1_basic_block_9:n [style="solid,bold",color=blue,weight=100,constraint=true];
  170. fn_1_basic_block_6:s -> fn_1_basic_block_7:n [style="solid,bold",color=black,weight=10,constraint=true];
  171. fn_1_basic_block_6:s -> fn_1_basic_block_8:n [style="solid,bold",color=black,weight=10,constraint=true];
  172. fn_1_basic_block_7:s -> fn_1_basic_block_9:n [style="solid,bold",color=blue,weight=100,constraint=true];
  173. fn_1_basic_block_8:s -> fn_1_basic_block_9:n [style="solid,bold",color=blue,weight=100,constraint=true];
  174. fn_1_basic_block_9:s -> fn_1_basic_block_1:n [style="solid,bold",color=black,weight=10,constraint=true];
  175. fn_1_basic_block_0:s -> fn_1_basic_block_1:n [style="invis",constraint=true];
  176. }
  177. }