Guest User

Untitled

a guest
Nov 24th, 2017
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 50.42 KB | None | 0 0
  1. function void Print::printFloat(double, uint8) Trees ::
  2. param 0 : Print* const this
  3. param 1 : double number modified
  4. param 2 : uint8 digits modified
  5. Jump functions of caller void Print::printFloat(double, uint8):
  6. callsite void Print::printFloat(double, uint8) -> void Print::print(int, int) ::
  7. param 0: PASS THROUGH: 0
  8. param 1: UNKNOWN
  9. param 2: CONST: 10
  10. callsite void Print::printFloat(double, uint8) -> void Print::print(const char*) ::
  11. param 0: PASS THROUGH: 0
  12. param 1: CONST: &"."[0]
  13. callsite void Print::printFloat(double, uint8) -> void Print::print(long long int, int) ::
  14. param 0: PASS THROUGH: 0
  15. param 1: UNKNOWN
  16. param 2: CONST: 10
  17. callsite void Print::printFloat(double, uint8) -> void Print::print(char) ::
  18. param 0: PASS THROUGH: 0
  19. param 1: CONST: 45
  20. callsite void Print::printFloat(double, uint8) -> void Print::print(const char*) ::
  21. param 0: PASS THROUGH: 0
  22. param 1: CONST: &"<large double>"[0]
  23. callsite void Print::printFloat(double, uint8) -> void Print::print(char) ::
  24. param 0: PASS THROUGH: 0
  25. param 1: CONST: 45
  26. function void Print::printNumber(long long unsigned int, uint8) Trees ::
  27. param 0 : Print* const this
  28. param 1 : long long unsigned int n modified
  29. param 2 : uint8 base
  30. Jump functions of caller void Print::printNumber(long long unsigned int, uint8):
  31. callsite void Print::printNumber(long long unsigned int, uint8) -> void Print::print(char) ::
  32. param 0: PASS THROUGH: 0
  33. param 1: UNKNOWN
  34. callsite void Print::printNumber(long long unsigned int, uint8) -> void Print::print(char) ::
  35. param 0: PASS THROUGH: 0
  36. param 1: CONST: 48
  37. function void Print::println(double, int) Trees ::
  38. param 0 : Print* const this
  39. param 1 : double n
  40. param 2 : int digits
  41. Jump functions of caller void Print::println(double, int):
  42. callsite void Print::println(double, int) -> void Print::println() ::
  43. param 0: PASS THROUGH: 0
  44. callsite void Print::println(double, int) -> void Print::print(double, int) ::
  45. param 0: PASS THROUGH: 0
  46. param 1: PASS THROUGH: 1
  47. param 2: PASS THROUGH: 2
  48. function void Print::println(long long unsigned int, int) Trees ::
  49. param 0 : Print* const this
  50. param 1 : long long unsigned int n
  51. param 2 : int base
  52. Jump functions of caller void Print::println(long long unsigned int, int):
  53. callsite void Print::println(long long unsigned int, int) -> void Print::println() ::
  54. param 0: PASS THROUGH: 0
  55. callsite void Print::println(long long unsigned int, int) -> void Print::print(long long unsigned int, int) ::
  56. param 0: PASS THROUGH: 0
  57. param 1: PASS THROUGH: 1
  58. param 2: PASS THROUGH: 2
  59. function void Print::println(long long int, int) Trees ::
  60. param 0 : Print* const this
  61. param 1 : long long int n
  62. param 2 : int base
  63. Jump functions of caller void Print::println(long long int, int):
  64. callsite void Print::println(long long int, int) -> void Print::println() ::
  65. param 0: PASS THROUGH: 0
  66. callsite void Print::println(long long int, int) -> void Print::print(long long int, int) ::
  67. param 0: PASS THROUGH: 0
  68. param 1: PASS THROUGH: 1
  69. param 2: PASS THROUGH: 2
  70. function void Print::println(long unsigned int, int) Trees ::
  71. param 0 : Print* const this
  72. param 1 : long unsigned int n
  73. param 2 : int base
  74. Jump functions of caller void Print::println(long unsigned int, int):
  75. callsite void Print::println(long unsigned int, int) -> void Print::println() ::
  76. param 0: PASS THROUGH: 0
  77. callsite void Print::println(long unsigned int, int) -> void Print::print(long long unsigned int, int) ::
  78. param 0: PASS THROUGH: 0
  79. param 1: UNKNOWN
  80. param 2: PASS THROUGH: 2
  81. function void Print::println(long int, int) Trees ::
  82. param 0 : Print* const this
  83. param 1 : long int n
  84. param 2 : int base
  85. Jump functions of caller void Print::println(long int, int):
  86. callsite void Print::println(long int, int) -> void Print::println() ::
  87. param 0: PASS THROUGH: 0
  88. callsite void Print::println(long int, int) -> void Print::print(long long int, int) ::
  89. param 0: PASS THROUGH: 0
  90. param 1: UNKNOWN
  91. param 2: PASS THROUGH: 2
  92. function void Print::println(unsigned int, int) Trees ::
  93. param 0 : Print* const this
  94. param 1 : unsigned int n
  95. param 2 : int base
  96. Jump functions of caller void Print::println(unsigned int, int):
  97. callsite void Print::println(unsigned int, int) -> void Print::println() ::
  98. param 0: PASS THROUGH: 0
  99. callsite void Print::println(unsigned int, int) -> void Print::print(unsigned int, int) ::
  100. param 0: PASS THROUGH: 0
  101. param 1: PASS THROUGH: 1
  102. param 2: PASS THROUGH: 2
  103. function void Print::println(int, int) Trees ::
  104. param 0 : Print* const this
  105. param 1 : int n
  106. param 2 : int base
  107. Jump functions of caller void Print::println(int, int):
  108. callsite void Print::println(int, int) -> void Print::println() ::
  109. param 0: PASS THROUGH: 0
  110. callsite void Print::println(int, int) -> void Print::print(int, int) ::
  111. param 0: PASS THROUGH: 0
  112. param 1: PASS THROUGH: 1
  113. param 2: PASS THROUGH: 2
  114. function void Print::println(uint8, int) Trees ::
  115. param 0 : Print* const this
  116. param 1 : uint8 b
  117. param 2 : int base
  118. Jump functions of caller void Print::println(uint8, int):
  119. callsite void Print::println(uint8, int) -> void Print::println() ::
  120. param 0: PASS THROUGH: 0
  121. callsite void Print::println(uint8, int) -> void Print::print(uint8, int) ::
  122. param 0: PASS THROUGH: 0
  123. param 1: PASS THROUGH: 1
  124. param 2: PASS THROUGH: 2
  125. function void Print::println(const char*) Trees ::
  126. param 0 : Print* const this
  127. param 1 : const char* c
  128. Jump functions of caller void Print::println(const char*):
  129. callsite void Print::println(const char*) -> void Print::println() ::
  130. param 0: PASS THROUGH: 0
  131. callsite void Print::println(const char*) -> void Print::print(const char*) ::
  132. param 0: PASS THROUGH: 0
  133. param 1: PASS THROUGH: 1
  134. function void Print::println(char) Trees ::
  135. param 0 : Print* const this
  136. param 1 : char c
  137. Jump functions of caller void Print::println(char):
  138. callsite void Print::println(char) -> void Print::println() ::
  139. param 0: PASS THROUGH: 0
  140. callsite void Print::println(char) -> void Print::print(char) ::
  141. param 0: PASS THROUGH: 0
  142. param 1: PASS THROUGH: 1
  143. function void Print::println() Trees ::
  144. param 0 : Print* const this
  145. Jump functions of caller void Print::println():
  146. callsite void Print::println() -> void Print::print(char) ::
  147. param 0: PASS THROUGH: 0
  148. param 1: CONST: 10
  149. callsite void Print::println() -> void Print::print(char) ::
  150. param 0: PASS THROUGH: 0
  151. param 1: CONST: 13
  152. function void Print::print(double, int) Trees ::
  153. param 0 : Print* const this
  154. param 1 : double n
  155. param 2 : int digits
  156. Jump functions of caller void Print::print(double, int):
  157. callsite void Print::print(double, int) -> void Print::printFloat(double, uint8) ::
  158. param 0: PASS THROUGH: 0
  159. param 1: PASS THROUGH: 1
  160. param 2: UNKNOWN
  161. function void Print::print(long long unsigned int, int) Trees ::
  162. param 0 : Print* const this
  163. param 1 : long long unsigned int n
  164. param 2 : int base
  165. Jump functions of caller void Print::print(long long unsigned int, int):
  166. callsite void Print::print(long long unsigned int, int) -> void Print::printNumber(long long unsigned int, uint8) ::
  167. param 0: PASS THROUGH: 0
  168. param 1: PASS THROUGH: 1
  169. param 2: UNKNOWN
  170. function void Print::print(long long int, int) Trees ::
  171. param 0 : Print* const this
  172. param 1 : long long int n modified
  173. param 2 : int base
  174. Jump functions of caller void Print::print(long long int, int):
  175. callsite void Print::print(long long int, int) -> void Print::printNumber(long long unsigned int, uint8) ::
  176. param 0: PASS THROUGH: 0
  177. param 1: UNKNOWN
  178. param 2: UNKNOWN
  179. callsite void Print::print(long long int, int) -> void Print::print(char) ::
  180. param 0: PASS THROUGH: 0
  181. param 1: CONST: 45
  182. function void Print::print(long unsigned int, int) Trees ::
  183. param 0 : Print* const this
  184. param 1 : long unsigned int n
  185. param 2 : int base
  186. Jump functions of caller void Print::print(long unsigned int, int):
  187. callsite void Print::print(long unsigned int, int) -> void Print::print(long long unsigned int, int) ::
  188. param 0: PASS THROUGH: 0
  189. param 1: UNKNOWN
  190. param 2: PASS THROUGH: 2
  191. function void Print::print(long int, int) Trees ::
  192. param 0 : Print* const this
  193. param 1 : long int n
  194. param 2 : int base
  195. Jump functions of caller void Print::print(long int, int):
  196. callsite void Print::print(long int, int) -> void Print::print(long long int, int) ::
  197. param 0: PASS THROUGH: 0
  198. param 1: UNKNOWN
  199. param 2: PASS THROUGH: 2
  200. function void Print::print(unsigned int, int) Trees ::
  201. param 0 : Print* const this
  202. param 1 : unsigned int n
  203. param 2 : int base
  204. Jump functions of caller void Print::print(unsigned int, int):
  205. callsite void Print::print(unsigned int, int) -> void Print::print(long long unsigned int, int) ::
  206. param 0: PASS THROUGH: 0
  207. param 1: UNKNOWN
  208. param 2: PASS THROUGH: 2
  209. function void Print::print(int, int) Trees ::
  210. param 0 : Print* const this
  211. param 1 : int n
  212. param 2 : int base
  213. Jump functions of caller void Print::print(int, int):
  214. callsite void Print::print(int, int) -> void Print::print(long long int, int) ::
  215. param 0: PASS THROUGH: 0
  216. param 1: UNKNOWN
  217. param 2: PASS THROUGH: 2
  218. function void Print::print(const char*) Trees ::
  219. param 0 : Print* const this
  220. param 1 : const char* str
  221. Jump functions of caller void Print::print(const char*):
  222. function void Print::print(char) Trees ::
  223. param 0 : Print* const this
  224. param 1 : char c
  225. Jump functions of caller void Print::print(char):
  226. function void Print::print(uint8, int) Trees ::
  227. param 0 : Print* const this
  228. param 1 : uint8 b
  229. param 2 : int base
  230. Jump functions of caller void Print::print(uint8, int):
  231. callsite void Print::print(uint8, int) -> void Print::print(long long unsigned int, int) ::
  232. param 0: PASS THROUGH: 0
  233. param 1: UNKNOWN
  234. param 2: PASS THROUGH: 2
  235. function virtual void Print::write(const void*, uint32) Trees ::
  236. param 0 : Print* const this
  237. param 1 : const void* buffer
  238. param 2 : uint32 size modified
  239. Jump functions of caller virtual void Print::write(const void*, uint32):
  240. function virtual void Print::write(const char*) Trees ::
  241. param 0 : Print* const this
  242. param 1 : const char* str modified
  243. Jump functions of caller virtual void Print::write(const char*):
  244.  
  245. Deciding on inlining. Starting with 767 insns.
  246.  
  247. Inlining always_inline functions:
  248.  
  249. Deciding on smaller functions:
  250. Considering inline candidate void Print::printFloat(double, uint8).
  251. Inlining failed: --param max-inline-insns-auto limit reached
  252. Considering inline candidate void Print::printNumber(long long unsigned int, uint8).
  253. Inlining failed: --param max-inline-insns-auto limit reached
  254. Considering inline candidate void Print::println().
  255. Inlining failed: --param max-inline-insns-auto limit reached
  256. Considering inline candidate void Print::print(double, int).
  257. Inlining failed: --param max-inline-insns-auto limit reached
  258. Considering inline candidate void Print::print(long long unsigned int, int).
  259. Inlining failed: --param max-inline-insns-auto limit reached
  260. Considering inline candidate void Print::print(long long int, int).
  261. Inlining failed: --param max-inline-insns-auto limit reached
  262. Considering inline candidate void Print::print(unsigned int, int).
  263. Inlining failed: --param max-inline-insns-auto limit reached
  264. Considering inline candidate void Print::print(int, int).
  265. Inlining failed: --param max-inline-insns-auto limit reached
  266. Considering inline candidate void Print::print(const char*).
  267. Inlining failed: --param max-inline-insns-auto limit reached
  268. Considering inline candidate void Print::print(char).
  269. Inlining failed: --param max-inline-insns-auto limit reached
  270. Considering inline candidate void Print::print(uint8, int).
  271. Inlining failed: --param max-inline-insns-auto limit reached
  272.  
  273. Deciding on functions called once:
  274.  
  275. Inlined 0 calls, eliminated 0 functions, 767 insns turned to 767 insns.
  276.  
  277. void Print::printFloat(double, uint8) (struct Print * const this, double number, uint8 digits)
  278. {
  279. int to_print;
  280. uint8 i;
  281. double remainder;
  282. long long int int_part;
  283. double rounding;
  284. double D.2676;
  285. bool retval.5;
  286. double D.2668;
  287. bool D.2666;
  288. bool D.2656;
  289. bool D.2650;
  290. bool iftmp.4;
  291.  
  292. <bb 2>:
  293. D.2650_8 = number_7(D) > 0.0;
  294. if (D.2650_8 != 0)
  295. goto <bb 3>;
  296. else
  297. goto <bb 4>;
  298.  
  299. <bb 3>:
  300. iftmp.4_9 = number_7(D) >= 9.1e+18;
  301. goto <bb 5>;
  302.  
  303. <bb 4>:
  304. iftmp.4_10 = number_7(D) <= -9.1e+18;
  305.  
  306. <bb 5>:
  307. # iftmp.4_6 = PHI <iftmp.4_9(3), iftmp.4_10(4)>
  308. if (iftmp.4_6 != 0)
  309. goto <bb 6>;
  310. else
  311. goto <bb 9>;
  312.  
  313. <bb 6>:
  314. D.2656_11 = number_7(D) < 0.0;
  315. if (D.2656_11 != 0)
  316. goto <bb 7>;
  317. else
  318. goto <bb 8>;
  319.  
  320. <bb 7>:
  321. print (this_12(D), 45);
  322.  
  323. <bb 8>:
  324. print (this_12(D), &"<large double>"[0]);
  325. goto <bb 18>;
  326.  
  327. <bb 9>:
  328. D.2656_13 = number_7(D) < 0.0;
  329. if (D.2656_13 != 0)
  330. goto <bb 10>;
  331. else
  332. goto <bb 11>;
  333.  
  334. <bb 10>:
  335. print (this_12(D), 45);
  336. number_14 = -number_7(D);
  337.  
  338. <bb 11>:
  339. # number_1 = PHI <number_7(D)(9), number_14(10)>
  340. goto <bb 13>;
  341.  
  342. <bb 12>:
  343. rounding_19 = rounding_3 / 1.0e+1;
  344. i_20 = i_4 + 1;
  345.  
  346. <bb 13>:
  347. # rounding_3 = PHI <5.0e-1(11), rounding_19(12)>
  348. # i_4 = PHI <0(11), i_20(12)>
  349. if (i_4 < digits_17(D))
  350. goto <bb 12>;
  351. else
  352. goto <bb 14>;
  353.  
  354. <bb 14>:
  355. number_21 = number_1 + rounding_3;
  356. int_part_22 = (long long int) number_21;
  357. D.2668_23 = (double) int_part_22;
  358. remainder_24 = number_21 - D.2668_23;
  359. print (this_12(D), int_part_22, 10);
  360. if (digits_17(D) != 0)
  361. goto <bb 15>;
  362. else
  363. goto <bb 17>;
  364.  
  365. <bb 15>:
  366. print (this_12(D), &"."[0]);
  367.  
  368. <bb 17>:
  369. # digits_15 = PHI <digits_17(D)(15), digits_17(D)(14)>
  370. # remainder_16 = PHI <remainder_24(15), remainder_24(14)>
  371. goto <bb 19>;
  372.  
  373. <bb 16>:
  374. remainder_27 = remainder_5 * 1.0e+1;
  375. to_print_28 = (int) remainder_27;
  376. print (this_12(D), to_print_28, 10);
  377. D.2676_29 = (double) to_print_28;
  378. remainder_30 = remainder_27 - D.2676_29;
  379.  
  380. <bb 19>:
  381. # digits_2 = PHI <digits_15(17), digits_26(16)>
  382. # remainder_5 = PHI <remainder_16(17), remainder_30(16)>
  383. digits_26 = digits_2 + 255;
  384. if (digits_2 != 0)
  385. goto <bb 16>;
  386. else
  387. goto <bb 18>;
  388.  
  389. <bb 18>:
  390. return;
  391.  
  392. }
  393.  
  394.  
  395. void Print::printNumber(long long unsigned int, uint8) (struct Print * const this, long long unsigned int n, uint8 base)
  396. {
  397. long unsigned int i;
  398. unsigned char buf[64];
  399. unsigned char D.2635;
  400. long unsigned int D.2634;
  401. char iftmp.3;
  402. bool D.2631;
  403. unsigned char D.2627;
  404. long long unsigned int D.2626;
  405. long long unsigned int D.2625;
  406. bool D.2623;
  407.  
  408. <bb 2>:
  409. if (n_6(D) == 0)
  410. goto <bb 3>;
  411. else
  412. goto <bb 5>;
  413.  
  414. <bb 5>:
  415. # n_5 = PHI <n_6(D)(2)>
  416. # i_17 = PHI <0(2)>
  417. goto <bb 13>;
  418.  
  419. <bb 3>:
  420. print (this_7(D), 48);
  421. goto <bb 11>;
  422.  
  423. <bb 4>:
  424. D.2625_11 = (long long unsigned int) base_10(D);
  425. D.2626_12 = n_1 % D.2625_11;
  426. D.2627_13 = (unsigned char) D.2626_12;
  427. buf[i_2] ={v} D.2627_13;
  428. i_14 = i_2 + 1;
  429. D.2625_15 = (long long unsigned int) base_10(D);
  430. n_16 = n_1 / D.2625_15;
  431.  
  432. <bb 13>:
  433. # n_1 = PHI <n_5(5), n_16(4)>
  434. # i_2 = PHI <i_17(5), i_14(4)>
  435. if (n_1 != 0)
  436. goto <bb 4>;
  437. else
  438. goto <bb 10>;
  439.  
  440. <bb 10>:
  441. # i_9 = PHI <i_2(13)>
  442. goto <bb 12>;
  443.  
  444. <bb 6>:
  445. D.2634_18 = i_3 + 4294967295;
  446. D.2635_19 = buf[D.2634_18];
  447. if (D.2635_19 <= 9)
  448. goto <bb 7>;
  449. else
  450. goto <bb 8>;
  451.  
  452. <bb 7>:
  453. D.2634_20 = i_3 + 4294967295;
  454. D.2635_21 = buf[D.2634_20];
  455. iftmp.3_22 = D.2635_21 + 48;
  456. goto <bb 9>;
  457.  
  458. <bb 8>:
  459. D.2634_23 = i_3 + 4294967295;
  460. D.2635_24 = buf[D.2634_23];
  461. iftmp.3_25 = D.2635_24 + 55;
  462.  
  463. <bb 9>:
  464. # iftmp.3_4 = PHI <iftmp.3_22(7), iftmp.3_25(8)>
  465. print (this_7(D), iftmp.3_4);
  466. i_26 = i_3 + 4294967295;
  467.  
  468. <bb 12>:
  469. # i_3 = PHI <i_9(10), i_26(9)>
  470. if (i_3 != 0)
  471. goto <bb 6>;
  472. else
  473. goto <bb 11>;
  474.  
  475. <bb 11>:
  476. return;
  477.  
  478. }
  479.  
  480.  
  481. void Print::println(double, int) (struct Print * const this, double n, int digits)
  482. {
  483. <bb 2>:
  484. print (this_1(D), n_2(D), digits_3(D));
  485. println (this_1(D));
  486. return;
  487.  
  488. }
  489.  
  490.  
  491. void Print::println(long long unsigned int, int) (struct Print * const this, long long unsigned int n, int base)
  492. {
  493. <bb 2>:
  494. print (this_1(D), n_2(D), base_3(D));
  495. println (this_1(D));
  496. return;
  497.  
  498. }
  499.  
  500.  
  501. void Print::println(long long int, int) (struct Print * const this, long long int n, int base)
  502. {
  503. <bb 2>:
  504. print (this_1(D), n_2(D), base_3(D));
  505. println (this_1(D));
  506. return;
  507.  
  508. }
  509.  
  510.  
  511. void Print::println(long unsigned int, int) (struct Print * const this, long unsigned int n, int base)
  512. {
  513. long long unsigned int D.2595;
  514.  
  515. <bb 2>:
  516. D.2595_2 = (long long unsigned int) n_1(D);
  517. print (this_3(D), D.2595_2, base_4(D));
  518. println (this_3(D));
  519. return;
  520.  
  521. }
  522.  
  523.  
  524. void Print::println(long int, int) (struct Print * const this, long int n, int base)
  525. {
  526. long long int D.2589;
  527.  
  528. <bb 2>:
  529. D.2589_2 = (long long int) n_1(D);
  530. print (this_3(D), D.2589_2, base_4(D));
  531. println (this_3(D));
  532. return;
  533.  
  534. }
  535.  
  536.  
  537. void Print::println(unsigned int, int) (struct Print * const this, unsigned int n, int base)
  538. {
  539. <bb 2>:
  540. print (this_1(D), n_2(D), base_3(D));
  541. println (this_1(D));
  542. return;
  543.  
  544. }
  545.  
  546.  
  547. void Print::println(int, int) (struct Print * const this, int n, int base)
  548. {
  549. <bb 2>:
  550. print (this_1(D), n_2(D), base_3(D));
  551. println (this_1(D));
  552. return;
  553.  
  554. }
  555.  
  556.  
  557. void Print::println(uint8, int) (struct Print * const this, uint8 b, int base)
  558. {
  559. <bb 2>:
  560. print (this_1(D), b_2(D), base_3(D));
  561. println (this_1(D));
  562. return;
  563.  
  564. }
  565.  
  566.  
  567. void Print::println(const char*) (struct Print * const this, const char * c)
  568. {
  569. <bb 2>:
  570. print (this_1(D), c_2(D));
  571. println (this_1(D));
  572. return;
  573.  
  574. }
  575.  
  576.  
  577. void Print::println(char) (struct Print * const this, char c)
  578. {
  579. <bb 2>:
  580. print (this_1(D), c_2(D));
  581. println (this_1(D));
  582. return;
  583.  
  584. }
  585.  
  586.  
  587. void Print::println() (struct Print * const this)
  588. {
  589. <bb 2>:
  590. print (this_1(D), 13);
  591. print (this_1(D), 10);
  592. return;
  593.  
  594. }
  595.  
  596.  
  597. void Print::print(double, int) (struct Print * const this, double n, int digits)
  598. {
  599. uint8 D.2557;
  600.  
  601. <bb 2>:
  602. D.2557_2 = (uint8) digits_1(D);
  603. printFloat (this_3(D), n_4(D), D.2557_2);
  604. return;
  605.  
  606. }
  607.  
  608.  
  609. void Print::print(long long unsigned int, int) (struct Print * const this, long long unsigned int n, int base)
  610. {
  611. uint8 D.2551;
  612. uint8 D.2549;
  613. int (*__vtbl_ptr_type) (void) D.2548;
  614. int (*__vtbl_ptr_type) (void) * D.2547;
  615.  
  616. <bb 2>:
  617. if (base_1(D) == 0)
  618. goto <bb 3>;
  619. else
  620. goto <bb 4>;
  621.  
  622. <bb 3>:
  623. D.2547_3 = this_2(D)->_vptr.Print;
  624. D.2548_4 = *D.2547_3;
  625. D.2549_6 = (uint8) n_5(D);
  626. OBJ_TYPE_REF(D.2548_4;this_2(D)->0) (this_2(D), D.2549_6);
  627. goto <bb 5>;
  628.  
  629. <bb 4>:
  630. D.2551_7 = (uint8) base_1(D);
  631. printNumber (this_2(D), n_5(D), D.2551_7);
  632.  
  633. <bb 5>:
  634. return;
  635.  
  636. }
  637.  
  638.  
  639. void Print::print(long long int, int) (struct Print * const this, long long int n, int base)
  640. {
  641. uint8 D.2539;
  642. long long unsigned int n.1;
  643. uint8 D.2534;
  644. int (*__vtbl_ptr_type) (void) D.2533;
  645. int (*__vtbl_ptr_type) (void) * D.2532;
  646.  
  647. <bb 2>:
  648. if (base_2(D) == 0)
  649. goto <bb 3>;
  650. else
  651. goto <bb 4>;
  652.  
  653. <bb 3>:
  654. D.2532_4 = this_3(D)->_vptr.Print;
  655. D.2533_5 = *D.2532_4;
  656. D.2534_7 = (uint8) n_6(D);
  657. OBJ_TYPE_REF(D.2533_5;this_3(D)->0) (this_3(D), D.2534_7);
  658. goto <bb 7>;
  659.  
  660. <bb 4>:
  661. if (n_6(D) < 0)
  662. goto <bb 5>;
  663. else
  664. goto <bb 6>;
  665.  
  666. <bb 5>:
  667. print (this_3(D), 45);
  668. n_8 = -n_6(D);
  669.  
  670. <bb 6>:
  671. # n_1 = PHI <n_6(D)(4), n_8(5)>
  672. n.1_9 = (long long unsigned int) n_1;
  673. D.2539_10 = (uint8) base_2(D);
  674. printNumber (this_3(D), n.1_9, D.2539_10);
  675.  
  676. <bb 7>:
  677. return;
  678.  
  679. }
  680.  
  681.  
  682. void Print::print(long unsigned int, int) (struct Print * const this, long unsigned int n, int base)
  683. {
  684. long long unsigned int D.2524;
  685.  
  686. <bb 2>:
  687. D.2524_2 = (long long unsigned int) n_1(D);
  688. print (this_3(D), D.2524_2, base_4(D));
  689. return;
  690.  
  691. }
  692.  
  693.  
  694. void Print::print(long int, int) (struct Print * const this, long int n, int base)
  695. {
  696. long long int D.2518;
  697.  
  698. <bb 2>:
  699. D.2518_2 = (long long int) n_1(D);
  700. print (this_3(D), D.2518_2, base_4(D));
  701. return;
  702.  
  703. }
  704.  
  705.  
  706. void Print::print(unsigned int, int) (struct Print * const this, unsigned int n, int base)
  707. {
  708. long long unsigned int D.2512;
  709.  
  710. <bb 2>:
  711. D.2512_2 = (long long unsigned int) n_1(D);
  712. print (this_3(D), D.2512_2, base_4(D));
  713. return;
  714.  
  715. }
  716.  
  717.  
  718. void Print::print(int, int) (struct Print * const this, int n, int base)
  719. {
  720. long long int D.2506;
  721.  
  722. <bb 2>:
  723. D.2506_2 = (long long int) n_1(D);
  724. print (this_3(D), D.2506_2, base_4(D));
  725. return;
  726.  
  727. }
  728.  
  729.  
  730. void Print::print(const char*) (struct Print * const this, const char * str)
  731. {
  732. int (*__vtbl_ptr_type) (void) D.2500;
  733. int (*__vtbl_ptr_type) (void) * D.2499;
  734. int (*__vtbl_ptr_type) (void) * D.2498;
  735.  
  736. <bb 2>:
  737. D.2498_2 = this_1(D)->_vptr.Print;
  738. D.2499_3 = D.2498_2 + 4;
  739. D.2500_4 = *D.2499_3;
  740. OBJ_TYPE_REF(D.2500_4;this_1(D)->1) (this_1(D), str_5(D));
  741. return;
  742.  
  743. }
  744.  
  745.  
  746. void Print::print(char) (struct Print * const this, char c)
  747. {
  748. int (*__vtbl_ptr_type) (void) D.2493;
  749. int (*__vtbl_ptr_type) (void) * D.2492;
  750.  
  751. <bb 2>:
  752. D.2492_2 = this_1(D)->_vptr.Print;
  753. D.2493_3 = *D.2492_2;
  754. OBJ_TYPE_REF(D.2493_3;this_1(D)->0) (this_1(D), c_4(D));
  755. return;
  756.  
  757. }
  758.  
  759.  
  760. void Print::print(uint8, int) (struct Print * const this, uint8 b, int base)
  761. {
  762. uint64 D.2487;
  763.  
  764. <bb 2>:
  765. D.2487_2 = (uint64) b_1(D);
  766. print (this_3(D), D.2487_2, base_4(D));
  767. return;
  768.  
  769. }
  770.  
  771.  
  772. virtual void Print::write(const void*, uint32) (struct Print * const this, const void * buffer, uint32 size)
  773. {
  774. uint8 * ch;
  775. unsigned char D.2481;
  776. int (*__vtbl_ptr_type) (void) D.2480;
  777. int (*__vtbl_ptr_type) (void) * D.2479;
  778. bool retval.0;
  779.  
  780. <bb 2>:
  781. ch_4 = (uint8 *) buffer_3(D);
  782. goto <bb 4>;
  783.  
  784. <bb 3>:
  785. D.2479_9 = this_8(D)->_vptr.Print;
  786. D.2480_10 = *D.2479_9;
  787. D.2481_11 = *ch_2;
  788. ch_12 = ch_2 + 1;
  789. OBJ_TYPE_REF(D.2480_10;this_8(D)->0) (this_8(D), D.2481_11);
  790.  
  791. <bb 4>:
  792. # size_1 = PHI <size_5(D)(2), size_7(3)>
  793. # ch_2 = PHI <ch_4(2), ch_12(3)>
  794. size_7 = size_1 + 4294967295;
  795. if (size_1 != 0)
  796. goto <bb 3>;
  797. else
  798. goto <bb 5>;
  799.  
  800. <bb 5>:
  801. return;
  802.  
  803. }
  804.  
  805.  
  806. virtual void Print::write(const char*) (struct Print * const this, const char * str)
  807. {
  808. const char D.2468;
  809. int (*__vtbl_ptr_type) (void) D.2467;
  810. int (*__vtbl_ptr_type) (void) * D.2466;
  811. bool D.2465;
  812. const char D.2464;
  813.  
  814. <bb 2>:
  815. goto <bb 4>;
  816.  
  817. <bb 3>:
  818. D.2466_6 = this_5(D)->_vptr.Print;
  819. D.2467_7 = *D.2466_6;
  820. D.2468_8 = *str_1;
  821. str_9 = str_1 + 1;
  822. OBJ_TYPE_REF(D.2467_7;this_5(D)->0) (this_5(D), D.2468_8);
  823.  
  824. <bb 4>:
  825. # str_1 = PHI <str_2(D)(2), str_9(3)>
  826. D.2464_3 = *str_1;
  827. if (D.2464_3 != 0)
  828. goto <bb 3>;
  829. else
  830. goto <bb 5>;
  831.  
  832. <bb 5>:
  833. return;
  834.  
  835. }
  836.  
  837.  
  838.  
  839. Reclaiming functions:callgraph:
  840.  
  841. void __cxa_pure_virtual()/26(-1): availability:not_available needed
  842. called by:
  843. calls:
  844. void Print::printFloat(double, uint8)/25(25): availability:available 127 insns needed body externally_visible finalized inlinable
  845. called by: void Print::print(double, int)/12 (1.00 per call)
  846. calls: void Print::print(int, int)/6 (5.05 per call) (nested in 1 loops) void Print::print(const char*)/5 (0.14 per call) void Print::print(long long int, int)/10 (0.50 per call) void Print::print(char)/4 (0.14 per call) void Print::print(const char*)/5 (0.50 per call) void Print::print(char)/4 (0.20 per call)
  847. void Print::printNumber(long long unsigned int, uint8)/24(24): availability:available 64 insns 64 bytes stack usage needed body externally_visible finalized inlinable
  848. called by: void Print::print(long long int, int)/10 (0.79 per call) void Print::print(long long unsigned int, int)/11 (0.61 per call)
  849. calls: void Print::print(char)/4 (50.75 per call) (nested in 1 loops) void Print::print(char)/4 (0.21 per call)
  850. void Print::println(double, int)/23(23): availability:available 29 insns needed body externally_visible finalized inlinable
  851. called by:
  852. calls: void Print::println()/13 (1.00 per call) void Print::print(double, int)/12 (1.00 per call)
  853. void Print::println(long long unsigned int, int)/22(22): availability:available 29 insns needed body externally_visible finalized inlinable
  854. called by:
  855. calls: void Print::println()/13 (1.00 per call) void Print::print(long long unsigned int, int)/11 (1.00 per call)
  856. void Print::println(long long int, int)/21(21): availability:available 29 insns needed body externally_visible finalized inlinable
  857. called by:
  858. calls: void Print::println()/13 (1.00 per call) void Print::print(long long int, int)/10 (1.00 per call)
  859. void Print::println(long unsigned int, int)/20(20): availability:available 29 insns needed body externally_visible finalized inlinable
  860. called by:
  861. calls: void Print::println()/13 (1.00 per call) void Print::print(long long unsigned int, int)/11 (1.00 per call)
  862. void Print::println(long int, int)/19(19): availability:available 29 insns needed body externally_visible finalized inlinable
  863. called by:
  864. calls: void Print::println()/13 (1.00 per call) void Print::print(long long int, int)/10 (1.00 per call)
  865. void Print::println(unsigned int, int)/18(18): availability:available 28 insns needed body externally_visible finalized inlinable
  866. called by:
  867. calls: void Print::println()/13 (1.00 per call) void Print::print(unsigned int, int)/7 (1.00 per call)
  868. void Print::println(int, int)/17(17): availability:available 28 insns needed body externally_visible finalized inlinable
  869. called by:
  870. calls: void Print::println()/13 (1.00 per call) void Print::print(int, int)/6 (1.00 per call)
  871. void Print::println(uint8, int)/16(16): availability:available 28 insns needed body externally_visible finalized inlinable
  872. called by:
  873. calls: void Print::println()/13 (1.00 per call) void Print::print(uint8, int)/3 (1.00 per call)
  874. void Print::println(const char*)/15(15): availability:available 27 insns needed body externally_visible finalized inlinable
  875. called by:
  876. calls: void Print::println()/13 (1.00 per call) void Print::print(const char*)/5 (1.00 per call)
  877. void Print::println(char)/14(14): availability:available 27 insns needed body externally_visible finalized inlinable
  878. called by:
  879. calls: void Print::println()/13 (1.00 per call) void Print::print(char)/4 (1.00 per call)
  880. void Print::println()/13(13): availability:available 28 insns needed body externally_visible finalized inlinable
  881. called by: void Print::println(double, int)/23 (1.00 per call) void Print::println(int, int)/17 (1.00 per call) void Print::println(long int, int)/19 (1.00 per call) void Print::println(long long int, int)/21 (1.00 per call) void Print::println(uint8, int)/16 (1.00 per call) void Print::println(unsigned int, int)/18 (1.00 per call) void Print::println(long unsigned int, int)/20 (1.00 per call) void Print::println(long long unsigned int, int)/22 (1.00 per call) void Print::println(const char*)/15 (1.00 per call) void Print::println(char)/14 (1.00 per call)
  882. calls: void Print::print(char)/4 (1.00 per call) void Print::print(char)/4 (1.00 per call)
  883. void Print::print(double, int)/12(12): availability:available 16 insns needed body externally_visible finalized inlinable
  884. called by: void Print::println(double, int)/23 (1.00 per call)
  885. calls: void Print::printFloat(double, uint8)/25 (1.00 per call)
  886. void Print::print(long long unsigned int, int)/11(11): availability:available 36 insns needed body externally_visible finalized inlinable
  887. called by: void Print::print(uint8, int)/3 (1.00 per call) void Print::print(unsigned int, int)/7 (1.00 per call) void Print::print(long unsigned int, int)/9 (1.00 per call) void Print::println(long unsigned int, int)/20 (1.00 per call) void Print::println(long long unsigned int, int)/22 (1.00 per call)
  888. calls: void Print::printNumber(long long unsigned int, uint8)/24 (0.61 per call)
  889. void Print::print(long long int, int)/10(10): availability:available 53 insns needed body externally_visible finalized inlinable
  890. called by: void Print::printFloat(double, uint8)/25 (0.50 per call) void Print::print(int, int)/6 (1.00 per call) void Print::print(long int, int)/8 (1.00 per call) void Print::println(long int, int)/19 (1.00 per call) void Print::println(long long int, int)/21 (1.00 per call)
  891. calls: void Print::printNumber(long long unsigned int, uint8)/24 (0.79 per call) void Print::print(char)/4 (0.10 per call)
  892. void Print::print(long unsigned int, int)/9(9): availability:available 16 insns needed body externally_visible finalized inlinable
  893. called by:
  894. calls: void Print::print(long long unsigned int, int)/11 (1.00 per call)
  895. void Print::print(long int, int)/8(8): availability:available 16 insns needed body externally_visible finalized inlinable
  896. called by:
  897. calls: void Print::print(long long int, int)/10 (1.00 per call)
  898. void Print::print(unsigned int, int)/7(7): availability:available 16 insns needed body externally_visible finalized inlinable
  899. called by: void Print::println(unsigned int, int)/18 (1.00 per call)
  900. calls: void Print::print(long long unsigned int, int)/11 (1.00 per call)
  901. void Print::print(int, int)/6(6): availability:available 16 insns needed body externally_visible finalized inlinable
  902. called by: void Print::printFloat(double, uint8)/25 (5.05 per call) void Print::println(int, int)/17 (1.00 per call)
  903. calls: void Print::print(long long int, int)/10 (1.00 per call)
  904. void Print::print(const char*)/5(5): availability:available 19 insns needed body externally_visible finalized inlinable
  905. called by: void Print::printFloat(double, uint8)/25 (0.14 per call) void Print::printFloat(double, uint8)/25 (0.50 per call) void Print::println(const char*)/15 (1.00 per call)
  906. calls:
  907. void Print::print(char)/4(4): availability:available 18 insns needed body externally_visible finalized inlinable
  908. called by: void Print::printFloat(double, uint8)/25 (0.14 per call) void Print::printFloat(double, uint8)/25 (0.20 per call) void Print::print(long long int, int)/10 (0.10 per call) void Print::printNumber(long long unsigned int, uint8)/24 (50.75 per call) void Print::printNumber(long long unsigned int, uint8)/24 (0.21 per call) void Print::println(char)/14 (1.00 per call) void Print::println()/13 (1.00 per call) void Print::println()/13 (1.00 per call)
  909. calls:
  910. void Print::print(uint8, int)/3(3): availability:available 16 insns needed body externally_visible finalized inlinable
  911. called by: void Print::println(uint8, int)/16 (1.00 per call)
  912. calls: void Print::print(long long unsigned int, int)/11 (1.00 per call)
  913. virtual void Print::write(const void*, uint32)/2(2): availability:available 22 insns needed body externally_visible finalized inlinable
  914. called by:
  915. calls:
  916. virtual void Print::write(const char*)/1(1): availability:available 21 insns needed body externally_visible finalized inlinable
  917. called by:
  918. calls:
  919.  
  920. ;; Function virtual void Print::write(const char*) (_ZN5Print5writeEPKc)
  921.  
  922. virtual void Print::write(const char*) (struct Print * const this, const char * str)
  923. {
  924. const char D.2468;
  925. int (*__vtbl_ptr_type) (void) D.2467;
  926. int (*__vtbl_ptr_type) (void) * D.2466;
  927. bool D.2465;
  928. const char D.2464;
  929.  
  930. # BLOCK 2 freq:900
  931. # PRED: ENTRY [100.0%] (fallthru,exec)
  932. goto <bb 4>;
  933. # SUCC: 4 [100.0%] (fallthru,exec)
  934.  
  935. # BLOCK 3 freq:9100
  936. # PRED: 4 [91.0%] (true,exec)
  937. D.2466_6 = this_5(D)->_vptr.Print;
  938. D.2467_7 = *D.2466_6;
  939. D.2468_8 = *str_1;
  940. str_9 = str_1 + 1;
  941. OBJ_TYPE_REF(D.2467_7;this_5(D)->0) (this_5(D), D.2468_8);
  942. # SUCC: 4 [100.0%] (fallthru,dfs_back,exec)
  943.  
  944. # BLOCK 4 freq:10000
  945. # PRED: 2 [100.0%] (fallthru,exec) 3 [100.0%] (fallthru,dfs_back,exec)
  946. # str_1 = PHI <str_2(D)(2), str_9(3)>
  947. D.2464_3 = *str_1;
  948. if (D.2464_3 != 0)
  949. goto <bb 3>;
  950. else
  951. goto <bb 5>;
  952. # SUCC: 3 [91.0%] (true,exec) 5 [9.0%] (false,exec)
  953.  
  954. # BLOCK 5 freq:900
  955. # PRED: 4 [9.0%] (false,exec)
  956. return;
  957. # SUCC: EXIT [100.0%]
  958.  
  959. }
  960.  
  961.  
  962.  
  963. ;; Function virtual void Print::write(const void*, uint32) (_ZN5Print5writeEPKvj)
  964.  
  965. virtual void Print::write(const void*, uint32) (struct Print * const this, const void * buffer, uint32 size)
  966. {
  967. uint8 * ch;
  968. unsigned char D.2481;
  969. int (*__vtbl_ptr_type) (void) D.2480;
  970. int (*__vtbl_ptr_type) (void) * D.2479;
  971. bool retval.0;
  972.  
  973. # BLOCK 2 freq:900
  974. # PRED: ENTRY [100.0%] (fallthru,exec)
  975. ch_4 = (uint8 *) buffer_3(D);
  976. goto <bb 4>;
  977. # SUCC: 4 [100.0%] (fallthru,exec)
  978.  
  979. # BLOCK 3 freq:9100
  980. # PRED: 4 [91.0%] (true,exec)
  981. D.2479_9 = this_8(D)->_vptr.Print;
  982. D.2480_10 = *D.2479_9;
  983. D.2481_11 = *ch_2;
  984. ch_12 = ch_2 + 1;
  985. OBJ_TYPE_REF(D.2480_10;this_8(D)->0) (this_8(D), D.2481_11);
  986. # SUCC: 4 [100.0%] (fallthru,dfs_back,exec)
  987.  
  988. # BLOCK 4 freq:10000
  989. # PRED: 2 [100.0%] (fallthru,exec) 3 [100.0%] (fallthru,dfs_back,exec)
  990. # size_1 = PHI <size_5(D)(2), size_7(3)>
  991. # ch_2 = PHI <ch_4(2), ch_12(3)>
  992. size_7 = size_1 + 4294967295;
  993. if (size_1 != 0)
  994. goto <bb 3>;
  995. else
  996. goto <bb 5>;
  997. # SUCC: 3 [91.0%] (true,exec) 5 [9.0%] (false,exec)
  998.  
  999. # BLOCK 5 freq:900
  1000. # PRED: 4 [9.0%] (false,exec)
  1001. return;
  1002. # SUCC: EXIT [100.0%]
  1003.  
  1004. }
  1005.  
  1006.  
  1007.  
  1008. ;; Function void Print::print(char) (_ZN5Print5printEc)
  1009.  
  1010. void Print::print(char) (struct Print * const this, char c)
  1011. {
  1012. int (*__vtbl_ptr_type) (void) D.2493;
  1013. int (*__vtbl_ptr_type) (void) * D.2492;
  1014.  
  1015. # BLOCK 2 freq:10000
  1016. # PRED: ENTRY [100.0%] (fallthru,exec)
  1017. D.2492_2 = this_1(D)->_vptr.Print;
  1018. D.2493_3 = *D.2492_2;
  1019. OBJ_TYPE_REF(D.2493_3;this_1(D)->0) (this_1(D), c_4(D));
  1020. return;
  1021. # SUCC: EXIT [100.0%]
  1022.  
  1023. }
  1024.  
  1025.  
  1026.  
  1027. ;; Function void Print::print(const char*) (_ZN5Print5printEPKc)
  1028.  
  1029. void Print::print(const char*) (struct Print * const this, const char * str)
  1030. {
  1031. int (*__vtbl_ptr_type) (void) D.2500;
  1032. int (*__vtbl_ptr_type) (void) * D.2499;
  1033. int (*__vtbl_ptr_type) (void) * D.2498;
  1034.  
  1035. # BLOCK 2 freq:10000
  1036. # PRED: ENTRY [100.0%] (fallthru,exec)
  1037. D.2498_2 = this_1(D)->_vptr.Print;
  1038. D.2499_3 = D.2498_2 + 4;
  1039. D.2500_4 = *D.2499_3;
  1040. OBJ_TYPE_REF(D.2500_4;this_1(D)->1) (this_1(D), str_5(D));
  1041. return;
  1042. # SUCC: EXIT [100.0%]
  1043.  
  1044. }
  1045.  
  1046.  
  1047.  
  1048. ;; Function void Print::println() (_ZN5Print7printlnEv)
  1049.  
  1050. void Print::println() (struct Print * const this)
  1051. {
  1052. # BLOCK 2 freq:10000
  1053. # PRED: ENTRY [100.0%] (fallthru,exec)
  1054. print (this_1(D), 13);
  1055. print (this_1(D), 10);
  1056. return;
  1057. # SUCC: EXIT [100.0%]
  1058.  
  1059. }
  1060.  
  1061.  
  1062.  
  1063. ;; Function void Print::println(char) (_ZN5Print7printlnEc)
  1064.  
  1065. void Print::println(char) (struct Print * const this, char c)
  1066. {
  1067. # BLOCK 2 freq:10000
  1068. # PRED: ENTRY [100.0%] (fallthru,exec)
  1069. print (this_1(D), c_2(D));
  1070. println (this_1(D));
  1071. return;
  1072. # SUCC: EXIT [100.0%]
  1073.  
  1074. }
  1075.  
  1076.  
  1077.  
  1078. ;; Function void Print::println(const char*) (_ZN5Print7printlnEPKc)
  1079.  
  1080. void Print::println(const char*) (struct Print * const this, const char * c)
  1081. {
  1082. # BLOCK 2 freq:10000
  1083. # PRED: ENTRY [100.0%] (fallthru,exec)
  1084. print (this_1(D), c_2(D));
  1085. println (this_1(D));
  1086. return;
  1087. # SUCC: EXIT [100.0%]
  1088.  
  1089. }
  1090.  
  1091.  
  1092.  
  1093. ;; Function void Print::printNumber(long long unsigned int, uint8) (_ZN5Print11printNumberEyh)
  1094.  
  1095. void Print::printNumber(long long unsigned int, uint8) (struct Print * const this, long long unsigned int n, uint8 base)
  1096. {
  1097. long unsigned int i;
  1098. unsigned char buf[64];
  1099. unsigned char D.2635;
  1100. long unsigned int D.2634;
  1101. char iftmp.3;
  1102. bool D.2631;
  1103. unsigned char D.2627;
  1104. long long unsigned int D.2626;
  1105. long long unsigned int D.2625;
  1106. bool D.2623;
  1107.  
  1108. # BLOCK 2 freq:194
  1109. # PRED: ENTRY [100.0%] (fallthru,exec)
  1110. if (n_6(D) == 0)
  1111. goto <bb 3>;
  1112. else
  1113. goto <bb 5>;
  1114. # SUCC: 3 [20.7%] (true,exec) 5 [79.3%] (false,exec)
  1115.  
  1116. # BLOCK 5 freq:154
  1117. # PRED: 2 [79.3%] (false,exec)
  1118. # n_5 = PHI <n_6(D)(2)>
  1119. # i_17 = PHI <0(2)>
  1120. goto <bb 13>;
  1121. # SUCC: 13 [100.0%] (fallthru)
  1122.  
  1123. # BLOCK 3 freq:40
  1124. # PRED: 2 [20.7%] (true,exec)
  1125. print (this_7(D), 48);
  1126. goto <bb 11>;
  1127. # SUCC: 11 [100.0%] (fallthru,exec)
  1128.  
  1129. # BLOCK 4 freq:9846
  1130. # PRED: 13 [98.5%] (true,exec)
  1131. D.2625_11 = (long long unsigned int) base_10(D);
  1132. D.2626_12 = n_1 % D.2625_11;
  1133. D.2627_13 = (unsigned char) D.2626_12;
  1134. buf[i_2] ={v} D.2627_13;
  1135. i_14 = i_2 + 1;
  1136. D.2625_15 = (long long unsigned int) base_10(D);
  1137. n_16 = n_1 / D.2625_15;
  1138. # SUCC: 13 [100.0%] (fallthru,dfs_back,exec)
  1139.  
  1140. # BLOCK 13 freq:10000
  1141. # PRED: 5 [100.0%] (fallthru) 4 [100.0%] (fallthru,dfs_back,exec)
  1142. # n_1 = PHI <n_5(5), n_16(4)>
  1143. # i_2 = PHI <i_17(5), i_14(4)>
  1144. if (n_1 != 0)
  1145. goto <bb 4>;
  1146. else
  1147. goto <bb 10>;
  1148. # SUCC: 4 [98.5%] (true,exec) 10 [1.5%] (false,exec)
  1149.  
  1150. # BLOCK 10 freq:154
  1151. # PRED: 13 [1.5%] (false,exec)
  1152. # i_9 = PHI <i_2(13)>
  1153. goto <bb 12>;
  1154. # SUCC: 12 [100.0%] (fallthru)
  1155.  
  1156. # BLOCK 6 freq:9846
  1157. # PRED: 12 [98.5%] (true,exec)
  1158. D.2634_18 = i_3 + 4294967295;
  1159. D.2635_19 = buf[D.2634_18];
  1160. if (D.2635_19 <= 9)
  1161. goto <bb 7>;
  1162. else
  1163. goto <bb 8>;
  1164. # SUCC: 7 [50.0%] (true,exec) 8 [50.0%] (false,exec)
  1165.  
  1166. # BLOCK 7 freq:4923
  1167. # PRED: 6 [50.0%] (true,exec)
  1168. D.2634_20 = i_3 + 4294967295;
  1169. D.2635_21 = buf[D.2634_20];
  1170. iftmp.3_22 = D.2635_21 + 48;
  1171. goto <bb 9>;
  1172. # SUCC: 9 [100.0%] (fallthru,exec)
  1173.  
  1174. # BLOCK 8 freq:4923
  1175. # PRED: 6 [50.0%] (false,exec)
  1176. D.2634_23 = i_3 + 4294967295;
  1177. D.2635_24 = buf[D.2634_23];
  1178. iftmp.3_25 = D.2635_24 + 55;
  1179. # SUCC: 9 [100.0%] (fallthru,exec)
  1180.  
  1181. # BLOCK 9 freq:9846
  1182. # PRED: 7 [100.0%] (fallthru,exec) 8 [100.0%] (fallthru,exec)
  1183. # iftmp.3_4 = PHI <iftmp.3_22(7), iftmp.3_25(8)>
  1184. print (this_7(D), iftmp.3_4);
  1185. i_26 = i_3 + 4294967295;
  1186. # SUCC: 12 [100.0%] (fallthru,dfs_back,exec)
  1187.  
  1188. # BLOCK 12 freq:10000
  1189. # PRED: 10 [100.0%] (fallthru) 9 [100.0%] (fallthru,dfs_back,exec)
  1190. # i_3 = PHI <i_9(10), i_26(9)>
  1191. if (i_3 != 0)
  1192. goto <bb 6>;
  1193. else
  1194. goto <bb 11>;
  1195. # SUCC: 6 [98.5%] (true,exec) 11 [1.5%] (false,exec)
  1196.  
  1197. # BLOCK 11 freq:194
  1198. # PRED: 3 [100.0%] (fallthru,exec) 12 [1.5%] (false,exec)
  1199. return;
  1200. # SUCC: EXIT [100.0%]
  1201.  
  1202. }
  1203.  
  1204.  
  1205.  
  1206. ;; Function void Print::print(long long unsigned int, int) (_ZN5Print5printEyi)
  1207.  
  1208. void Print::print(long long unsigned int, int) (struct Print * const this, long long unsigned int n, int base)
  1209. {
  1210. uint8 D.2551;
  1211. uint8 D.2549;
  1212. int (*__vtbl_ptr_type) (void) D.2548;
  1213. int (*__vtbl_ptr_type) (void) * D.2547;
  1214.  
  1215. # BLOCK 2 freq:10000
  1216. # PRED: ENTRY [100.0%] (fallthru,exec)
  1217. if (base_1(D) == 0)
  1218. goto <bb 3>;
  1219. else
  1220. goto <bb 4>;
  1221. # SUCC: 3 [39.0%] (true,exec) 4 [61.0%] (false,exec)
  1222.  
  1223. # BLOCK 3 freq:3900
  1224. # PRED: 2 [39.0%] (true,exec)
  1225. D.2547_3 = this_2(D)->_vptr.Print;
  1226. D.2548_4 = *D.2547_3;
  1227. D.2549_6 = (uint8) n_5(D);
  1228. OBJ_TYPE_REF(D.2548_4;this_2(D)->0) (this_2(D), D.2549_6);
  1229. goto <bb 5>;
  1230. # SUCC: 5 [100.0%] (fallthru,exec)
  1231.  
  1232. # BLOCK 4 freq:6100
  1233. # PRED: 2 [61.0%] (false,exec)
  1234. D.2551_7 = (uint8) base_1(D);
  1235. printNumber (this_2(D), n_5(D), D.2551_7);
  1236. # SUCC: 5 [100.0%] (fallthru,exec)
  1237.  
  1238. # BLOCK 5 freq:10000
  1239. # PRED: 3 [100.0%] (fallthru,exec) 4 [100.0%] (fallthru,exec)
  1240. return;
  1241. # SUCC: EXIT [100.0%]
  1242.  
  1243. }
  1244.  
  1245.  
  1246.  
  1247. ;; Function void Print::println(long long unsigned int, int) (_ZN5Print7printlnEyi)
  1248.  
  1249. void Print::println(long long unsigned int, int) (struct Print * const this, long long unsigned int n, int base)
  1250. {
  1251. # BLOCK 2 freq:10000
  1252. # PRED: ENTRY [100.0%] (fallthru,exec)
  1253. print (this_1(D), n_2(D), base_3(D));
  1254. println (this_1(D));
  1255. return;
  1256. # SUCC: EXIT [100.0%]
  1257.  
  1258. }
  1259.  
  1260.  
  1261.  
  1262. ;; Function void Print::println(long unsigned int, int) (_ZN5Print7printlnEmi)
  1263.  
  1264. void Print::println(long unsigned int, int) (struct Print * const this, long unsigned int n, int base)
  1265. {
  1266. long long unsigned int D.2595;
  1267.  
  1268. # BLOCK 2 freq:10000
  1269. # PRED: ENTRY [100.0%] (fallthru,exec)
  1270. D.2595_2 = (long long unsigned int) n_1(D);
  1271. print (this_3(D), D.2595_2, base_4(D));
  1272. println (this_3(D));
  1273. return;
  1274. # SUCC: EXIT [100.0%]
  1275.  
  1276. }
  1277.  
  1278.  
  1279.  
  1280. ;; Function void Print::print(long unsigned int, int) (_ZN5Print5printEmi)
  1281.  
  1282. void Print::print(long unsigned int, int) (struct Print * const this, long unsigned int n, int base)
  1283. {
  1284. long long unsigned int D.2524;
  1285.  
  1286. # BLOCK 2 freq:10000
  1287. # PRED: ENTRY [100.0%] (fallthru,exec)
  1288. D.2524_2 = (long long unsigned int) n_1(D);
  1289. print (this_3(D), D.2524_2, base_4(D));
  1290. return;
  1291. # SUCC: EXIT [100.0%]
  1292.  
  1293. }
  1294.  
  1295.  
  1296.  
  1297. ;; Function void Print::print(unsigned int, int) (_ZN5Print5printEji)
  1298.  
  1299. void Print::print(unsigned int, int) (struct Print * const this, unsigned int n, int base)
  1300. {
  1301. long long unsigned int D.2512;
  1302.  
  1303. # BLOCK 2 freq:10000
  1304. # PRED: ENTRY [100.0%] (fallthru,exec)
  1305. D.2512_2 = (long long unsigned int) n_1(D);
  1306. print (this_3(D), D.2512_2, base_4(D));
  1307. return;
  1308. # SUCC: EXIT [100.0%]
  1309.  
  1310. }
  1311.  
  1312.  
  1313.  
  1314. ;; Function void Print::println(unsigned int, int) (_ZN5Print7printlnEji)
  1315.  
  1316. void Print::println(unsigned int, int) (struct Print * const this, unsigned int n, int base)
  1317. {
  1318. # BLOCK 2 freq:10000
  1319. # PRED: ENTRY [100.0%] (fallthru,exec)
  1320. print (this_1(D), n_2(D), base_3(D));
  1321. println (this_1(D));
  1322. return;
  1323. # SUCC: EXIT [100.0%]
  1324.  
  1325. }
  1326.  
  1327.  
  1328.  
  1329. ;; Function void Print::print(uint8, int) (_ZN5Print5printEhi)
  1330.  
  1331. void Print::print(uint8, int) (struct Print * const this, uint8 b, int base)
  1332. {
  1333. uint64 D.2487;
  1334.  
  1335. # BLOCK 2 freq:10000
  1336. # PRED: ENTRY [100.0%] (fallthru,exec)
  1337. D.2487_2 = (uint64) b_1(D);
  1338. print (this_3(D), D.2487_2, base_4(D));
  1339. return;
  1340. # SUCC: EXIT [100.0%]
  1341.  
  1342. }
  1343.  
  1344.  
  1345.  
  1346. ;; Function void Print::println(uint8, int) (_ZN5Print7printlnEhi)
  1347.  
  1348. void Print::println(uint8, int) (struct Print * const this, uint8 b, int base)
  1349. {
  1350. # BLOCK 2 freq:10000
  1351. # PRED: ENTRY [100.0%] (fallthru,exec)
  1352. print (this_1(D), b_2(D), base_3(D));
  1353. println (this_1(D));
  1354. return;
  1355. # SUCC: EXIT [100.0%]
  1356.  
  1357. }
  1358.  
  1359.  
  1360.  
  1361. ;; Function void Print::print(long long int, int) (_ZN5Print5printExi)
  1362.  
  1363. void Print::print(long long int, int) (struct Print * const this, long long int n, int base)
  1364. {
  1365. uint8 D.2539;
  1366. long long unsigned int n.1;
  1367. uint8 D.2534;
  1368. int (*__vtbl_ptr_type) (void) D.2533;
  1369. int (*__vtbl_ptr_type) (void) * D.2532;
  1370.  
  1371. # BLOCK 2 freq:10000
  1372. # PRED: ENTRY [100.0%] (fallthru,exec)
  1373. if (base_2(D) == 0)
  1374. goto <bb 3>;
  1375. else
  1376. goto <bb 4>;
  1377. # SUCC: 3 [20.7%] (true,exec) 4 [79.3%] (false,exec)
  1378.  
  1379. # BLOCK 3 freq:2071
  1380. # PRED: 2 [20.7%] (true,exec)
  1381. D.2532_4 = this_3(D)->_vptr.Print;
  1382. D.2533_5 = *D.2532_4;
  1383. D.2534_7 = (uint8) n_6(D);
  1384. OBJ_TYPE_REF(D.2533_5;this_3(D)->0) (this_3(D), D.2534_7);
  1385. goto <bb 7>;
  1386. # SUCC: 7 [100.0%] (fallthru,exec)
  1387.  
  1388. # BLOCK 4 freq:7929
  1389. # PRED: 2 [79.3%] (false,exec)
  1390. if (n_6(D) < 0)
  1391. goto <bb 5>;
  1392. else
  1393. goto <bb 6>;
  1394. # SUCC: 5 [13.1%] (true,exec) 6 [86.9%] (false,exec)
  1395.  
  1396. # BLOCK 5 freq:1040
  1397. # PRED: 4 [13.1%] (true,exec)
  1398. print (this_3(D), 45);
  1399. n_8 = -n_6(D);
  1400. # SUCC: 6 [100.0%] (fallthru,exec)
  1401.  
  1402. # BLOCK 6 freq:7929
  1403. # PRED: 4 [86.9%] (false,exec) 5 [100.0%] (fallthru,exec)
  1404. # n_1 = PHI <n_6(D)(4), n_8(5)>
  1405. n.1_9 = (long long unsigned int) n_1;
  1406. D.2539_10 = (uint8) base_2(D);
  1407. printNumber (this_3(D), n.1_9, D.2539_10);
  1408. # SUCC: 7 [100.0%] (fallthru,exec)
  1409.  
  1410. # BLOCK 7 freq:10000
  1411. # PRED: 3 [100.0%] (fallthru,exec) 6 [100.0%] (fallthru,exec)
  1412. return;
  1413. # SUCC: EXIT [100.0%]
  1414.  
  1415. }
  1416.  
  1417.  
  1418.  
  1419. ;; Function void Print::println(long long int, int) (_ZN5Print7printlnExi)
  1420.  
  1421. void Print::println(long long int, int) (struct Print * const this, long long int n, int base)
  1422. {
  1423. # BLOCK 2 freq:10000
  1424. # PRED: ENTRY [100.0%] (fallthru,exec)
  1425. print (this_1(D), n_2(D), base_3(D));
  1426. println (this_1(D));
  1427. return;
  1428. # SUCC: EXIT [100.0%]
  1429.  
  1430. }
  1431.  
  1432.  
  1433.  
  1434. ;; Function void Print::println(long int, int) (_ZN5Print7printlnEli)
  1435.  
  1436. void Print::println(long int, int) (struct Print * const this, long int n, int base)
  1437. {
  1438. long long int D.2589;
  1439.  
  1440. # BLOCK 2 freq:10000
  1441. # PRED: ENTRY [100.0%] (fallthru,exec)
  1442. D.2589_2 = (long long int) n_1(D);
  1443. print (this_3(D), D.2589_2, base_4(D));
  1444. println (this_3(D));
  1445. return;
  1446. # SUCC: EXIT [100.0%]
  1447.  
  1448. }
  1449.  
  1450.  
  1451.  
  1452. ;; Function void Print::print(long int, int) (_ZN5Print5printEli)
  1453.  
  1454. void Print::print(long int, int) (struct Print * const this, long int n, int base)
  1455. {
  1456. long long int D.2518;
  1457.  
  1458. # BLOCK 2 freq:10000
  1459. # PRED: ENTRY [100.0%] (fallthru,exec)
  1460. D.2518_2 = (long long int) n_1(D);
  1461. print (this_3(D), D.2518_2, base_4(D));
  1462. return;
  1463. # SUCC: EXIT [100.0%]
  1464.  
  1465. }
  1466.  
  1467.  
  1468.  
  1469. ;; Function void Print::print(int, int) (_ZN5Print5printEii)
  1470.  
  1471. void Print::print(int, int) (struct Print * const this, int n, int base)
  1472. {
  1473. long long int D.2506;
  1474.  
  1475. # BLOCK 2 freq:10000
  1476. # PRED: ENTRY [100.0%] (fallthru,exec)
  1477. D.2506_2 = (long long int) n_1(D);
  1478. print (this_3(D), D.2506_2, base_4(D));
  1479. return;
  1480. # SUCC: EXIT [100.0%]
  1481.  
  1482. }
  1483.  
  1484.  
  1485.  
  1486. ;; Function void Print::println(int, int) (_ZN5Print7printlnEii)
  1487.  
  1488. void Print::println(int, int) (struct Print * const this, int n, int base)
  1489. {
  1490. # BLOCK 2 freq:10000
  1491. # PRED: ENTRY [100.0%] (fallthru,exec)
  1492. print (this_1(D), n_2(D), base_3(D));
  1493. println (this_1(D));
  1494. return;
  1495. # SUCC: EXIT [100.0%]
  1496.  
  1497. }
  1498.  
  1499.  
  1500.  
  1501. ;; Function void Print::printFloat(double, uint8) (_ZN5Print10printFloatEdh)
  1502.  
  1503. void Print::printFloat(double, uint8) (struct Print * const this, double number, uint8 digits)
  1504. {
  1505. int to_print;
  1506. uint8 i;
  1507. double remainder;
  1508. long long int int_part;
  1509. double rounding;
  1510. double D.2676;
  1511. bool retval.5;
  1512. double D.2668;
  1513. bool D.2666;
  1514. bool D.2656;
  1515. bool D.2650;
  1516. bool iftmp.4;
  1517.  
  1518. # BLOCK 2 freq:1800
  1519. # PRED: ENTRY [100.0%] (fallthru,exec)
  1520. D.2650_8 = number_7(D) > 0.0;
  1521. if (D.2650_8 != 0)
  1522. goto <bb 3>;
  1523. else
  1524. goto <bb 4>;
  1525. # SUCC: 3 [50.0%] (true,exec) 4 [50.0%] (false,exec)
  1526.  
  1527. # BLOCK 3 freq:900
  1528. # PRED: 2 [50.0%] (true,exec)
  1529. iftmp.4_9 = number_7(D) >= 9.1e+18;
  1530. goto <bb 5>;
  1531. # SUCC: 5 [100.0%] (fallthru,exec)
  1532.  
  1533. # BLOCK 4 freq:900
  1534. # PRED: 2 [50.0%] (false,exec)
  1535. iftmp.4_10 = number_7(D) <= -9.1e+18;
  1536. # SUCC: 5 [100.0%] (fallthru,exec)
  1537.  
  1538. # BLOCK 5 freq:1800
  1539. # PRED: 3 [100.0%] (fallthru,exec) 4 [100.0%] (fallthru,exec)
  1540. # iftmp.4_6 = PHI <iftmp.4_9(3), iftmp.4_10(4)>
  1541. if (iftmp.4_6 != 0)
  1542. goto <bb 6>;
  1543. else
  1544. goto <bb 9>;
  1545. # SUCC: 6 [50.0%] (true,exec) 9 [50.0%] (false,exec)
  1546.  
  1547. # BLOCK 6 freq:900
  1548. # PRED: 5 [50.0%] (true,exec)
  1549. D.2656_11 = number_7(D) < 0.0;
  1550. if (D.2656_11 != 0)
  1551. goto <bb 7>;
  1552. else
  1553. goto <bb 8>;
  1554. # SUCC: 7 [39.0%] (true,exec) 8 [61.0%] (false,exec)
  1555.  
  1556. # BLOCK 7 freq:351
  1557. # PRED: 6 [39.0%] (true,exec)
  1558. print (this_12(D), 45);
  1559. # SUCC: 8 [100.0%] (fallthru,exec)
  1560.  
  1561. # BLOCK 8 freq:900
  1562. # PRED: 6 [61.0%] (false,exec) 7 [100.0%] (fallthru,exec)
  1563. print (this_12(D), &"<large double>"[0]);
  1564. goto <bb 18>;
  1565. # SUCC: 18 [100.0%] (fallthru,exec)
  1566.  
  1567. # BLOCK 9 freq:900
  1568. # PRED: 5 [50.0%] (false,exec)
  1569. D.2656_13 = number_7(D) < 0.0;
  1570. if (D.2656_13 != 0)
  1571. goto <bb 10>;
  1572. else
  1573. goto <bb 11>;
  1574. # SUCC: 10 [29.0%] (true,exec) 11 [71.0%] (false,exec)
  1575.  
  1576. # BLOCK 10 freq:261
  1577. # PRED: 9 [29.0%] (true,exec)
  1578. print (this_12(D), 45);
  1579. number_14 = -number_7(D);
  1580. # SUCC: 11 [100.0%] (fallthru,exec)
  1581.  
  1582. # BLOCK 11 freq:900
  1583. # PRED: 9 [71.0%] (false,exec) 10 [100.0%] (fallthru,exec)
  1584. # number_1 = PHI <number_7(D)(9), number_14(10)>
  1585. goto <bb 13>;
  1586. # SUCC: 13 [100.0%] (fallthru,exec)
  1587.  
  1588. # BLOCK 12 freq:9100
  1589. # PRED: 13 [91.0%] (true,exec)
  1590. rounding_19 = rounding_3 / 1.0e+1;
  1591. i_20 = i_4 + 1;
  1592. # SUCC: 13 [100.0%] (fallthru,dfs_back,exec)
  1593.  
  1594. # BLOCK 13 freq:10000
  1595. # PRED: 11 [100.0%] (fallthru,exec) 12 [100.0%] (fallthru,dfs_back,exec)
  1596. # rounding_3 = PHI <5.0e-1(11), rounding_19(12)>
  1597. # i_4 = PHI <0(11), i_20(12)>
  1598. if (i_4 < digits_17(D))
  1599. goto <bb 12>;
  1600. else
  1601. goto <bb 14>;
  1602. # SUCC: 12 [91.0%] (true,exec) 14 [9.0%] (false,exec)
  1603.  
  1604. # BLOCK 14 freq:900
  1605. # PRED: 13 [9.0%] (false,exec)
  1606. number_21 = number_1 + rounding_3;
  1607. int_part_22 = (long long int) number_21;
  1608. D.2668_23 = (double) int_part_22;
  1609. remainder_24 = number_21 - D.2668_23;
  1610. print (this_12(D), int_part_22, 10);
  1611. if (digits_17(D) != 0)
  1612. goto <bb 15>;
  1613. else
  1614. goto <bb 17>;
  1615. # SUCC: 15 [29.0%] (true,exec) 17 [71.0%] (false,exec)
  1616.  
  1617. # BLOCK 15 freq:261
  1618. # PRED: 14 [29.0%] (true,exec)
  1619. print (this_12(D), &"."[0]);
  1620. # SUCC: 17 [100.0%] (fallthru,exec)
  1621.  
  1622. # BLOCK 17 freq:900
  1623. # PRED: 15 [100.0%] (fallthru,exec) 14 [71.0%] (false,exec)
  1624. # digits_15 = PHI <digits_17(D)(15), digits_17(D)(14)>
  1625. # remainder_16 = PHI <remainder_24(15), remainder_24(14)>
  1626. goto <bb 19>;
  1627. # SUCC: 19 [100.0%] (fallthru)
  1628.  
  1629. # BLOCK 16 freq:9100
  1630. # PRED: 19 [91.0%] (true,exec)
  1631. remainder_27 = remainder_5 * 1.0e+1;
  1632. to_print_28 = (int) remainder_27;
  1633. print (this_12(D), to_print_28, 10);
  1634. D.2676_29 = (double) to_print_28;
  1635. remainder_30 = remainder_27 - D.2676_29;
  1636. # SUCC: 19 [100.0%] (fallthru,dfs_back,exec)
  1637.  
  1638. # BLOCK 19 freq:10000
  1639. # PRED: 17 [100.0%] (fallthru) 16 [100.0%] (fallthru,dfs_back,exec)
  1640. # digits_2 = PHI <digits_15(17), digits_26(16)>
  1641. # remainder_5 = PHI <remainder_16(17), remainder_30(16)>
  1642. digits_26 = digits_2 + 255;
  1643. if (digits_2 != 0)
  1644. goto <bb 16>;
  1645. else
  1646. goto <bb 18>;
  1647. # SUCC: 16 [91.0%] (true,exec) 18 [9.0%] (false,exec)
  1648.  
  1649. # BLOCK 18 freq:1800
  1650. # PRED: 8 [100.0%] (fallthru,exec) 19 [9.0%] (false,exec)
  1651. return;
  1652. # SUCC: EXIT [100.0%]
  1653.  
  1654. }
  1655.  
  1656.  
  1657.  
  1658. ;; Function void Print::print(double, int) (_ZN5Print5printEdi)
  1659.  
  1660. void Print::print(double, int) (struct Print * const this, double n, int digits)
  1661. {
  1662. uint8 D.2557;
  1663.  
  1664. # BLOCK 2 freq:10000
  1665. # PRED: ENTRY [100.0%] (fallthru,exec)
  1666. D.2557_2 = (uint8) digits_1(D);
  1667. printFloat (this_3(D), n_4(D), D.2557_2);
  1668. return;
  1669. # SUCC: EXIT [100.0%]
  1670.  
  1671. }
  1672.  
  1673.  
  1674.  
  1675. ;; Function void Print::println(double, int) (_ZN5Print7printlnEdi)
  1676.  
  1677. void Print::println(double, int) (struct Print * const this, double n, int digits)
  1678. {
  1679. # BLOCK 2 freq:10000
  1680. # PRED: ENTRY [100.0%] (fallthru,exec)
  1681. print (this_1(D), n_2(D), digits_3(D));
  1682. println (this_1(D));
  1683. return;
  1684. # SUCC: EXIT [100.0%]
  1685.  
  1686. }
Add Comment
Please, Sign In to add comment