Guest User

Untitled

a guest
Feb 24th, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 425.13 KB | None | 0 0
  1. [
  2. Takes an integer from stdin and emits its factors to stdout
  3.  
  4. Factor an arbitrarily large positive integer
  5.  
  6. Copyright (C) 1999 by Brian Raiter
  7. under the GNU General Public License
  8. ]
  9.  
  10. >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>-
  11.  
  12. *
  13. * read in the number
  14. *
  15.  
  16. <<<<<<<<<+
  17. [-[>>>>>>>>>>][-]<<<<<<<<<<[[->>>>>>>>>>+<<<<<<<<<<]<<<<<<<<<<]
  18. >>>>>>>>>>,----------]
  19. >>>>>>>>>>[------------------------------------->>>>>>>>>->]
  20. <[+>[>>>>>>>>>+>]<-<<<<<<<<<<]-
  21.  
  22. *
  23. * display the number and initialize the loop variable to two
  24. *
  25.  
  26. [>++++++++++++++++++++++++++++++++++++++++++++++++.
  27. ------------------------------------------------<<<<<<<<<<<]
  28. ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++.
  29. --------------------------.[-]
  30. >>>>>>>>>>>>++<<<<+
  31.  
  32. *
  33. * the main loop
  34. *
  35.  
  36. [ [-]>>
  37.  
  38. *
  39. * make copies of the number and the loop variable
  40. *
  41.  
  42. [>>>>[-]>[-]>[-]>[-]
  43. >[-]>[-]
  44. <<<<<<<[->>>+>+<<<<]>>>>>>>>]
  45. <<<<<<<<<<[>>>>>>[-<<<<+>>>>]<<<<<<<<<<<<<<<<]>>>>>>>>>>
  46. [>[->>>+>>+<<<<<]>>>>>>>>>]
  47. <<<<<<<<<<[>>>>>>[-<<<<<+>>>>>]<<<<<<<<<<<<<<<<]>>>>>>>>>>
  48.  
  49. *
  50. * divide the number by the loop variable
  51. *
  52.  
  53. [>>>[-]>>>[-]>[-]>>>] initialize
  54. <<<<<<<<<<[<<<<<<<<<<]
  55. >>>>>>>>>[-]>>>>>>>+<<<<<<<<[+]+
  56. [ ->> double divisor until above dividend
  57. [>>>>>>[->++<]>>>>]<<<<<<<<<<
  58. [>>>>>>>>[-]>[-]
  59. <<<<[->>>++<<<]<<<<<<<<<<<<<<<]>>>>>>>>>>
  60. [>>>>>>>>[->+<[->+<[->+<[->+<[->+<[->+<[->+<[->+<[->+<
  61. [->--------->>>>>>>>>+<<<<<<<<<<[->+<]]]]]]]]]]]>>]
  62. <<<<<<<<<<[>>>>>>>>>[-<+<<<+>>>>]<<<<<<<<<<<<<<<<<<<]>>>>>>>>>>
  63. [>>>>>>>[-<+>[-<+>[-<+>[-<+>[-<+>[-<+>[-<+>[-<+>[-<+>
  64. [-<--------->>>>>>>>>>>+<<<<<<<<<<[-<+>]]]]]]]]]]]>>>]
  65. <<<<<<<<<<
  66. [>>>>[->>>+>>+<<<<<]<<<<<<<<<<<<<<]
  67. >>>>>>>>>>[>>>>>>>[-<<<+>>>]>>>]<<<<<<<<<<
  68. [>>>>>>>>[->-<]>
  69. [<<<<<<<<<[<[-]>>>>>>>>>>[-<<<<<<<<<<+>>>>>>>>>>]<<<<<<<<<<<<<<<<<<<]
  70. >>>>>>>>>>>>>>>>>>>]
  71. <<<<<<<<<<<<<<<<<<<]
  72. >>>>>>>>>[+[+[+[+[+[+[+[+[+[+[[-]<+>]]]]]]]]]]]<
  73. ]
  74. >>>>>>>>
  75. [ subtract divisor from dividend
  76. <<<<<<
  77. [>>>>>>>>[-]>[-]<<<<<[->>>+>+<<<<]>>>>>>]<<<<<<<<<<
  78. [>>>>>>>>[-<<<<+>>>>]<<<[->>>+>+<<<<]<<<<<<<<<<<<<<<]>>>>>>>>>>
  79. [>>>>>>>>>[-<<<<+>>>>]>]<<<<<<<<<<
  80. [>>>>>>>>[-<->]<<<<<<<<<<<<<<<<<<]>>>>>>>>>>
  81. [>>>>>>>[->+<[->+<[->+<[->+<[->+<[->+<[->+<[->+<[->+<[->+<
  82. [++++++++++[+>-<]>>>>>>>>>>-<<<<<<<<<<]]]]]]]]]]]>>>]
  83. >>>>>>>+
  84. [ if difference is nonnegative then
  85. [-]<<<<<<<<<<<<<<<<< replace dividend and increment quotient
  86. [>>>>[-]>>>>[-<<<<+>>>>]<<[->>+<<]<<<<<<<<<<<<<<<<]>>>>>>>>>>
  87. [>>>>>>>>[->+<<<+>>]>>]<<<<<<<<<<
  88. [>>>[->>>>>>+<<<<<<]<<<<<<<<<<<<<]>>>>>>>>>>
  89. [>>>>>>>>>[-<<<<<<+>>>>>>[-<<<<<<+>>>>>>
  90. [-<<<<<<+>>>>>>[-<<<<<<+>>>>>>
  91. [-<<<<<<+>>>>>>[-<<<<<<+>>>>>>
  92. [-<<<<<<+>>>>>>[-<<<<<<+>>>>>>
  93. [-<<<<<<+>>>>>>[-<<<<<<--------->>>>>>>>>>>>>>>>+<<<<<<<<<<
  94. [-<<<<<<+>>>>>>]]]]]]]]]]]>]
  95. >>>>>>>
  96. ] halve divisor and loop until zero
  97. <<<<<<<<<<<<<<<<<[<<<<<<<<<<]>>>>>>>>>>
  98. [>>>>>>>>[-]<<[->+<]<[->>>+<<<]>>>>>]<<<<<<<<<<
  99. [+>>>>>>>[-<<<<<<<+>>>>>>>[-<<<<<<<->>>>>>+>
  100. [-<<<<<<<+>>>>>>>[-<<<<<<<->>>>>>+>
  101. [-<<<<<<<+>>>>>>>[-<<<<<<<->>>>>>+>
  102. [-<<<<<<<+>>>>>>>[-<<<<<<<->>>>>>+>
  103. [-<<<<<<<+>>>>>>>]]]]]]]]]<<<<<<<
  104. [->>>>>>>+<<<<<<<]-<<<<<<<<<<]
  105. >>>>>>>
  106. [-<<<<<<<<<<<+>>>>>>>>>>>]
  107. >>>[>>>>>>>[-<<<<<<<<<<<+++++>>>>>>>>>>>]>>>]<<<<<<<<<<
  108. [+>>>>>>>>[-<<<<<<<<+>>>>>>>>[-<<<<<<<<->>>>>+>>>
  109. [-<<<<<<<<+>>>>>>>>[-<<<<<<<<->>>>>+>>>
  110. [-<<<<<<<<+>>>>>>>>[-<<<<<<<<->>>>>+>>>
  111. [-<<<<<<<<+>>>>>>>>[-<<<<<<<<->>>>>+>>>
  112. [-<<<<<<<<+>>>>>>>>]]]]]]]]]<<<<<<<<
  113. [->>>>>>>>+<<<<<<<<]-<<<<<<<<<<]
  114. >>>>>>>>[-<<<<<<<<<<<<<+>>>>>>>>>>>>>]>>
  115. [>>>>>>>>[-<<<<<<<<<<<<<+++++>>>>>>>>>>>>>]>>]<<<<<<<<<<
  116. [<<<<<<<<<<]>>>>>>>>>>
  117. >>>>>>
  118. ]
  119. <<<<<<
  120.  
  121. *
  122. * make copies of the loop variable and the quotient
  123. *
  124.  
  125. [>>>[->>>>+>+<<<<<]>>>>>>>]
  126. <<<<<<<<<<
  127. [>>>>>>>[-<<<<+>>>>]<<<<<[->>>>>+>>+<<<<<<<]<<<<<<<<<<<<]
  128. >>>>>>>>>>[>>>>>>>[-<<<<<+>>>>>]>>>]<<<<<<<<<<
  129.  
  130. *
  131. * break out of the loop if the quotient is larger than the loop variable
  132. *
  133.  
  134. [>>>>>>>>>[-<->]<
  135. [<<<<<<<<
  136. [<<[-]>>>>>>>>>>[-<<<<<<<<<<+>>>>>>>>>>]<<<<<<<<<<<<<<<<<<]
  137. >>>>>>>>>>>>>>>>>>]<<<<<<<<<<<<<<<<<<]
  138. >>>>>>>>[>-<[+[+[+[+[+[+[+[+[+[[-]>+<]]]]]]]]]]]>+
  139.  
  140. [ [-]
  141.  
  142. *
  143. * partially increment the loop variable
  144. *
  145.  
  146. <[-]+>>>>+>>>>>>>>[>>>>>>>>>>]<<<<<<<<<<
  147.  
  148. *
  149. * examine the remainder for nonzero digits
  150. *
  151.  
  152. [<<<<<<[<<<<[<<<<<<<<<<]>>>>+<<<<<<<<<<]<<<<]
  153. >>>>>>>>>>>>>>>>>>>>[>>>>>>>>>>]<<<<<<<<<<[<<<<<<<<<<]
  154. >>>>-
  155.  
  156. [ [+]
  157.  
  158. *
  159. * decrement the loop variable and replace the number with the quotient
  160. *
  161.  
  162. >>>>>>>>-<<[>[-]>>[-<<+>>]>>>>>>>]<<<<<<<<<<
  163.  
  164. *
  165. * display the loop variable
  166. *
  167.  
  168. [+>>[>>>>>>>>+>>]<<-<<<<<<<<<<]-
  169. [>>++++++++++++++++++++++++++++++++++++++++++++++++.
  170. ------------------------------------------------<<<<<<<<<<<<]
  171. ++++++++++++++++++++++++++++++++.[-]>>>>
  172.  
  173. ]
  174.  
  175. *
  176. * normalize the loop variable
  177. *
  178.  
  179. >>>>>>
  180. [>>[->>>>>+<<<<<[->>>>>+<<<<<
  181. [->>>>>+<<<<<[->>>>>+<<<<<
  182. [->>>>>+<<<<<[->>>>>+<<<<<
  183. [->>>>>+<<<<<[->>>>>+<<<<<
  184. [->>>>>+<<<<<[->>>>>--------->>>>>+<<<<<<<<<<
  185. [->>>>>+<<<<<]]]]]]]]]]]>>>>>>>>]
  186. <<<<<<<<<<[>>>>>>>[-<<<<<+>>>>>]<<<<<<<<<<<<<<<<<]
  187. >>>>>>>>>
  188.  
  189. ]<
  190.  
  191. ]>>
  192.  
  193. *
  194. * display the number and end
  195. *
  196.  
  197. [>>>>>>>>>>]<<<<<<<<<<[+>[>>>>>>>>>+>]<-<<<<<<<<<<]-
  198. [>++++++++++++++++++++++++++++++++++++++++++++++++.<<<<<<<<<<<]
  199. ++++++++++.
  200.  
  201.  
  202.  
  203.  
  204. joel=#* select * from llvmir;
  205. programid|3
  206. llvmir|
  207. ; >ENTER_PROGRAM 4300
  208. define i32 @__llvmjit(i8* %memory, i32* %dataptr_addr) {
  209. entry:
  210. ;ENTRY
  211. ; <ENTER_PROGRAM 4300
  212.  
  213. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4068
  214. %dataptr_enter_4068 = load i32, i32* %dataptr_addr
  215. %element_addr_enter_4068 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4068
  216. %element_enter_4068 = load i8, i8* %element_addr_enter_4068
  217. %compare_zero_enter_4068 = icmp eq i8 %element_enter_4068, 0
  218. br i1 %compare_zero_enter_4068, label %post_loop_4068, label %loop_body_4068
  219. loop_body_4068:
  220. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4068
  221.  
  222. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4068
  223. %dataptr_leave_4068 = load i32, i32* %dataptr_addr
  224. %element_addr_leave_4068 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4068
  225. %element_leave_4068 = load i8, i8* %element_addr_leave_4068
  226. %compare_zero_leave_4068 = icmp ne i8 %element_leave_4068, 0
  227. br i1 %compare_zero_leave_4068, label %loop_body_4068, label %post_loop_4068
  228. post_loop_4068:
  229. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4068
  230.  
  231. ; >ENTER_INC_PTR 66
  232. %dataptr_66 = load i32, i32* %dataptr_addr
  233. %inc_dataptr_66 = add i32 %dataptr_66, 30
  234. store i32 %inc_dataptr_66, i32* %dataptr_addr
  235. ; <ENTER_INC_PTR 66
  236.  
  237. ; >ENTER_DEC_DATA 96
  238. %dataptr_96 = load i32, i32* %dataptr_addr
  239. %element_addr_96 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_96
  240. %element_96 = load i8, i8* %element_addr_96
  241. %sub_element_96 = sub i8 %element_96, 1
  242. store i8 %sub_element_96, i8* %element_addr_96
  243. ; <ENTER_DEC_DATA 96
  244.  
  245. ; >ENTER_DEC_PTR 98
  246. %dataptr_98 = load i32, i32* %dataptr_addr
  247. %dec_dataptr_98 = sub i32 %dataptr_98, 9
  248. store i32 %dec_dataptr_98, i32* %dataptr_addr
  249. ; <ENTER_DEC_PTR 98
  250.  
  251. ; >ENTER_INC_DATA 107
  252. %dataptr_107 = load i32, i32* %dataptr_addr
  253. %element_addr_107 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_107
  254. %element_107 = load i8, i8* %element_addr_107
  255. %inc_element_107 = add i8 %element_107, 1
  256. store i8 %inc_element_107, i8* %element_addr_107
  257. ; <ENTER_INC_DATA 107
  258.  
  259. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4073
  260. %dataptr_enter_4073 = load i32, i32* %dataptr_addr
  261. %element_addr_enter_4073 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4073
  262. %element_enter_4073 = load i8, i8* %element_addr_enter_4073
  263. %compare_zero_enter_4073 = icmp eq i8 %element_enter_4073, 0
  264. br i1 %compare_zero_enter_4073, label %post_loop_4073, label %loop_body_4073
  265. loop_body_4073:
  266. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4073
  267.  
  268. ; >ENTER_DEC_DATA 110
  269. %dataptr_110 = load i32, i32* %dataptr_addr
  270. %element_addr_110 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_110
  271. %element_110 = load i8, i8* %element_addr_110
  272. %sub_element_110 = sub i8 %element_110, 1
  273. store i8 %sub_element_110, i8* %element_addr_110
  274. ; <ENTER_DEC_DATA 110
  275.  
  276. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4069
  277. %dataptr_enter_4069 = load i32, i32* %dataptr_addr
  278. %element_addr_enter_4069 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4069
  279. %element_enter_4069 = load i8, i8* %element_addr_enter_4069
  280. %compare_zero_enter_4069 = icmp eq i8 %element_enter_4069, 0
  281. br i1 %compare_zero_enter_4069, label %post_loop_4069, label %loop_body_4069
  282. loop_body_4069:
  283. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4069
  284.  
  285. ; >ENTER_INC_PTR 112
  286. %dataptr_112 = load i32, i32* %dataptr_addr
  287. %inc_dataptr_112 = add i32 %dataptr_112, 10
  288. store i32 %inc_dataptr_112, i32* %dataptr_addr
  289. ; <ENTER_INC_PTR 112
  290.  
  291. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4069
  292. %dataptr_leave_4069 = load i32, i32* %dataptr_addr
  293. %element_addr_leave_4069 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4069
  294. %element_leave_4069 = load i8, i8* %element_addr_leave_4069
  295. %compare_zero_leave_4069 = icmp ne i8 %element_leave_4069, 0
  296. br i1 %compare_zero_leave_4069, label %loop_body_4069, label %post_loop_4069
  297. post_loop_4069:
  298. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4069
  299.  
  300. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4070
  301. %dataptr_enter_4070 = load i32, i32* %dataptr_addr
  302. %element_addr_enter_4070 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4070
  303. %element_enter_4070 = load i8, i8* %element_addr_enter_4070
  304. %compare_zero_enter_4070 = icmp eq i8 %element_enter_4070, 0
  305. br i1 %compare_zero_enter_4070, label %post_loop_4070, label %loop_body_4070
  306. loop_body_4070:
  307. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4070
  308.  
  309. ; >ENTER_DEC_DATA 124
  310. %dataptr_124 = load i32, i32* %dataptr_addr
  311. %element_addr_124 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_124
  312. %element_124 = load i8, i8* %element_addr_124
  313. %sub_element_124 = sub i8 %element_124, 1
  314. store i8 %sub_element_124, i8* %element_addr_124
  315. ; <ENTER_DEC_DATA 124
  316.  
  317. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4070
  318. %dataptr_leave_4070 = load i32, i32* %dataptr_addr
  319. %element_addr_leave_4070 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4070
  320. %element_leave_4070 = load i8, i8* %element_addr_leave_4070
  321. %compare_zero_leave_4070 = icmp ne i8 %element_leave_4070, 0
  322. br i1 %compare_zero_leave_4070, label %loop_body_4070, label %post_loop_4070
  323. post_loop_4070:
  324. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4070
  325.  
  326. ; >ENTER_DEC_PTR 126
  327. %dataptr_126 = load i32, i32* %dataptr_addr
  328. %dec_dataptr_126 = sub i32 %dataptr_126, 10
  329. store i32 %dec_dataptr_126, i32* %dataptr_addr
  330. ; <ENTER_DEC_PTR 126
  331.  
  332. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4072
  333. %dataptr_enter_4072 = load i32, i32* %dataptr_addr
  334. %element_addr_enter_4072 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4072
  335. %element_enter_4072 = load i8, i8* %element_addr_enter_4072
  336. %compare_zero_enter_4072 = icmp eq i8 %element_enter_4072, 0
  337. br i1 %compare_zero_enter_4072, label %post_loop_4072, label %loop_body_4072
  338. loop_body_4072:
  339. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4072
  340.  
  341. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4071
  342. %dataptr_enter_4071 = load i32, i32* %dataptr_addr
  343. %element_addr_enter_4071 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4071
  344. %element_enter_4071 = load i8, i8* %element_addr_enter_4071
  345. %compare_zero_enter_4071 = icmp eq i8 %element_enter_4071, 0
  346. br i1 %compare_zero_enter_4071, label %post_loop_4071, label %loop_body_4071
  347. loop_body_4071:
  348. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4071
  349.  
  350. ; >ENTER_DEC_DATA 138
  351. %dataptr_138 = load i32, i32* %dataptr_addr
  352. %element_addr_138 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_138
  353. %element_138 = load i8, i8* %element_addr_138
  354. %sub_element_138 = sub i8 %element_138, 1
  355. store i8 %sub_element_138, i8* %element_addr_138
  356. ; <ENTER_DEC_DATA 138
  357.  
  358. ; >ENTER_INC_PTR 139
  359. %dataptr_139 = load i32, i32* %dataptr_addr
  360. %inc_dataptr_139 = add i32 %dataptr_139, 10
  361. store i32 %inc_dataptr_139, i32* %dataptr_addr
  362. ; <ENTER_INC_PTR 139
  363.  
  364. ; >ENTER_INC_DATA 149
  365. %dataptr_149 = load i32, i32* %dataptr_addr
  366. %element_addr_149 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_149
  367. %element_149 = load i8, i8* %element_addr_149
  368. %inc_element_149 = add i8 %element_149, 1
  369. store i8 %inc_element_149, i8* %element_addr_149
  370. ; <ENTER_INC_DATA 149
  371.  
  372. ; >ENTER_DEC_PTR 150
  373. %dataptr_150 = load i32, i32* %dataptr_addr
  374. %dec_dataptr_150 = sub i32 %dataptr_150, 10
  375. store i32 %dec_dataptr_150, i32* %dataptr_addr
  376. ; <ENTER_DEC_PTR 150
  377.  
  378. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4071
  379. %dataptr_leave_4071 = load i32, i32* %dataptr_addr
  380. %element_addr_leave_4071 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4071
  381. %element_leave_4071 = load i8, i8* %element_addr_leave_4071
  382. %compare_zero_leave_4071 = icmp ne i8 %element_leave_4071, 0
  383. br i1 %compare_zero_leave_4071, label %loop_body_4071, label %post_loop_4071
  384. post_loop_4071:
  385. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4071
  386.  
  387. ; >ENTER_DEC_PTR 161
  388. %dataptr_161 = load i32, i32* %dataptr_addr
  389. %dec_dataptr_161 = sub i32 %dataptr_161, 10
  390. store i32 %dec_dataptr_161, i32* %dataptr_addr
  391. ; <ENTER_DEC_PTR 161
  392.  
  393. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4072
  394. %dataptr_leave_4072 = load i32, i32* %dataptr_addr
  395. %element_addr_leave_4072 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4072
  396. %element_leave_4072 = load i8, i8* %element_addr_leave_4072
  397. %compare_zero_leave_4072 = icmp ne i8 %element_leave_4072, 0
  398. br i1 %compare_zero_leave_4072, label %loop_body_4072, label %post_loop_4072
  399. post_loop_4072:
  400. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4072
  401.  
  402. ; >ENTER_INC_PTR 173
  403. %dataptr_173 = load i32, i32* %dataptr_addr
  404. %inc_dataptr_173 = add i32 %dataptr_173, 10
  405. store i32 %inc_dataptr_173, i32* %dataptr_addr
  406. ; <ENTER_INC_PTR 173
  407.  
  408. ; >ENTER_READ_STDIN 183
  409. ret i32 183
  410. post_183:
  411. ; <ENTER_READ_STDIN 183
  412.  
  413. ; >ENTER_DEC_DATA 184
  414. %dataptr_184 = load i32, i32* %dataptr_addr
  415. %element_addr_184 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_184
  416. %element_184 = load i8, i8* %element_addr_184
  417. %sub_element_184 = sub i8 %element_184, 10
  418. store i8 %sub_element_184, i8* %element_addr_184
  419. ; <ENTER_DEC_DATA 184
  420.  
  421. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4073
  422. %dataptr_leave_4073 = load i32, i32* %dataptr_addr
  423. %element_addr_leave_4073 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4073
  424. %element_leave_4073 = load i8, i8* %element_addr_leave_4073
  425. %compare_zero_leave_4073 = icmp ne i8 %element_leave_4073, 0
  426. br i1 %compare_zero_leave_4073, label %loop_body_4073, label %post_loop_4073
  427. post_loop_4073:
  428. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4073
  429.  
  430. ; >ENTER_INC_PTR 196
  431. %dataptr_196 = load i32, i32* %dataptr_addr
  432. %inc_dataptr_196 = add i32 %dataptr_196, 10
  433. store i32 %inc_dataptr_196, i32* %dataptr_addr
  434. ; <ENTER_INC_PTR 196
  435.  
  436. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4074
  437. %dataptr_enter_4074 = load i32, i32* %dataptr_addr
  438. %element_addr_enter_4074 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4074
  439. %element_enter_4074 = load i8, i8* %element_addr_enter_4074
  440. %compare_zero_enter_4074 = icmp eq i8 %element_enter_4074, 0
  441. br i1 %compare_zero_enter_4074, label %post_loop_4074, label %loop_body_4074
  442. loop_body_4074:
  443. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4074
  444.  
  445. ; >ENTER_DEC_DATA 207
  446. %dataptr_207 = load i32, i32* %dataptr_addr
  447. %element_addr_207 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_207
  448. %element_207 = load i8, i8* %element_addr_207
  449. %sub_element_207 = sub i8 %element_207, 37
  450. store i8 %sub_element_207, i8* %element_addr_207
  451. ; <ENTER_DEC_DATA 207
  452.  
  453. ; >ENTER_INC_PTR 244
  454. %dataptr_244 = load i32, i32* %dataptr_addr
  455. %inc_dataptr_244 = add i32 %dataptr_244, 9
  456. store i32 %inc_dataptr_244, i32* %dataptr_addr
  457. ; <ENTER_INC_PTR 244
  458.  
  459. ; >ENTER_DEC_DATA 253
  460. %dataptr_253 = load i32, i32* %dataptr_addr
  461. %element_addr_253 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_253
  462. %element_253 = load i8, i8* %element_addr_253
  463. %sub_element_253 = sub i8 %element_253, 1
  464. store i8 %sub_element_253, i8* %element_addr_253
  465. ; <ENTER_DEC_DATA 253
  466.  
  467. ; >ENTER_INC_PTR 254
  468. %dataptr_254 = load i32, i32* %dataptr_addr
  469. %inc_dataptr_254 = add i32 %dataptr_254, 1
  470. store i32 %inc_dataptr_254, i32* %dataptr_addr
  471. ; <ENTER_INC_PTR 254
  472.  
  473. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4074
  474. %dataptr_leave_4074 = load i32, i32* %dataptr_addr
  475. %element_addr_leave_4074 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4074
  476. %element_leave_4074 = load i8, i8* %element_addr_leave_4074
  477. %compare_zero_leave_4074 = icmp ne i8 %element_leave_4074, 0
  478. br i1 %compare_zero_leave_4074, label %loop_body_4074, label %post_loop_4074
  479. post_loop_4074:
  480. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4074
  481.  
  482. ; >ENTER_DEC_PTR 257
  483. %dataptr_257 = load i32, i32* %dataptr_addr
  484. %dec_dataptr_257 = sub i32 %dataptr_257, 1
  485. store i32 %dec_dataptr_257, i32* %dataptr_addr
  486. ; <ENTER_DEC_PTR 257
  487.  
  488. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4076
  489. %dataptr_enter_4076 = load i32, i32* %dataptr_addr
  490. %element_addr_enter_4076 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4076
  491. %element_enter_4076 = load i8, i8* %element_addr_enter_4076
  492. %compare_zero_enter_4076 = icmp eq i8 %element_enter_4076, 0
  493. br i1 %compare_zero_enter_4076, label %post_loop_4076, label %loop_body_4076
  494. loop_body_4076:
  495. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4076
  496.  
  497. ; >ENTER_INC_DATA 259
  498. %dataptr_259 = load i32, i32* %dataptr_addr
  499. %element_addr_259 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_259
  500. %element_259 = load i8, i8* %element_addr_259
  501. %inc_element_259 = add i8 %element_259, 1
  502. store i8 %inc_element_259, i8* %element_addr_259
  503. ; <ENTER_INC_DATA 259
  504.  
  505. ; >ENTER_INC_PTR 260
  506. %dataptr_260 = load i32, i32* %dataptr_addr
  507. %inc_dataptr_260 = add i32 %dataptr_260, 1
  508. store i32 %inc_dataptr_260, i32* %dataptr_addr
  509. ; <ENTER_INC_PTR 260
  510.  
  511. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4075
  512. %dataptr_enter_4075 = load i32, i32* %dataptr_addr
  513. %element_addr_enter_4075 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4075
  514. %element_enter_4075 = load i8, i8* %element_addr_enter_4075
  515. %compare_zero_enter_4075 = icmp eq i8 %element_enter_4075, 0
  516. br i1 %compare_zero_enter_4075, label %post_loop_4075, label %loop_body_4075
  517. loop_body_4075:
  518. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4075
  519.  
  520. ; >ENTER_INC_PTR 262
  521. %dataptr_262 = load i32, i32* %dataptr_addr
  522. %inc_dataptr_262 = add i32 %dataptr_262, 9
  523. store i32 %inc_dataptr_262, i32* %dataptr_addr
  524. ; <ENTER_INC_PTR 262
  525.  
  526. ; >ENTER_INC_DATA 271
  527. %dataptr_271 = load i32, i32* %dataptr_addr
  528. %element_addr_271 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_271
  529. %element_271 = load i8, i8* %element_addr_271
  530. %inc_element_271 = add i8 %element_271, 1
  531. store i8 %inc_element_271, i8* %element_addr_271
  532. ; <ENTER_INC_DATA 271
  533.  
  534. ; >ENTER_INC_PTR 272
  535. %dataptr_272 = load i32, i32* %dataptr_addr
  536. %inc_dataptr_272 = add i32 %dataptr_272, 1
  537. store i32 %inc_dataptr_272, i32* %dataptr_addr
  538. ; <ENTER_INC_PTR 272
  539.  
  540. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4075
  541. %dataptr_leave_4075 = load i32, i32* %dataptr_addr
  542. %element_addr_leave_4075 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4075
  543. %element_leave_4075 = load i8, i8* %element_addr_leave_4075
  544. %compare_zero_leave_4075 = icmp ne i8 %element_leave_4075, 0
  545. br i1 %compare_zero_leave_4075, label %loop_body_4075, label %post_loop_4075
  546. post_loop_4075:
  547. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4075
  548.  
  549. ; >ENTER_DEC_PTR 274
  550. %dataptr_274 = load i32, i32* %dataptr_addr
  551. %dec_dataptr_274 = sub i32 %dataptr_274, 1
  552. store i32 %dec_dataptr_274, i32* %dataptr_addr
  553. ; <ENTER_DEC_PTR 274
  554.  
  555. ; >ENTER_DEC_DATA 275
  556. %dataptr_275 = load i32, i32* %dataptr_addr
  557. %element_addr_275 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_275
  558. %element_275 = load i8, i8* %element_addr_275
  559. %sub_element_275 = sub i8 %element_275, 1
  560. store i8 %sub_element_275, i8* %element_addr_275
  561. ; <ENTER_DEC_DATA 275
  562.  
  563. ; >ENTER_DEC_PTR 276
  564. %dataptr_276 = load i32, i32* %dataptr_addr
  565. %dec_dataptr_276 = sub i32 %dataptr_276, 10
  566. store i32 %dec_dataptr_276, i32* %dataptr_addr
  567. ; <ENTER_DEC_PTR 276
  568.  
  569. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4076
  570. %dataptr_leave_4076 = load i32, i32* %dataptr_addr
  571. %element_addr_leave_4076 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4076
  572. %element_leave_4076 = load i8, i8* %element_addr_leave_4076
  573. %compare_zero_leave_4076 = icmp ne i8 %element_leave_4076, 0
  574. br i1 %compare_zero_leave_4076, label %loop_body_4076, label %post_loop_4076
  575. post_loop_4076:
  576. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4076
  577.  
  578. ; >ENTER_DEC_DATA 287
  579. %dataptr_287 = load i32, i32* %dataptr_addr
  580. %element_addr_287 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_287
  581. %element_287 = load i8, i8* %element_addr_287
  582. %sub_element_287 = sub i8 %element_287, 1
  583. store i8 %sub_element_287, i8* %element_addr_287
  584. ; <ENTER_DEC_DATA 287
  585.  
  586. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4077
  587. %dataptr_enter_4077 = load i32, i32* %dataptr_addr
  588. %element_addr_enter_4077 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4077
  589. %element_enter_4077 = load i8, i8* %element_addr_enter_4077
  590. %compare_zero_enter_4077 = icmp eq i8 %element_enter_4077, 0
  591. br i1 %compare_zero_enter_4077, label %post_loop_4077, label %loop_body_4077
  592. loop_body_4077:
  593. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4077
  594.  
  595. ; >ENTER_INC_PTR 290
  596. %dataptr_290 = load i32, i32* %dataptr_addr
  597. %inc_dataptr_290 = add i32 %dataptr_290, 1
  598. store i32 %inc_dataptr_290, i32* %dataptr_addr
  599. ; <ENTER_INC_PTR 290
  600.  
  601. ; >ENTER_INC_DATA 291
  602. %dataptr_291 = load i32, i32* %dataptr_addr
  603. %element_addr_291 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_291
  604. %element_291 = load i8, i8* %element_addr_291
  605. %inc_element_291 = add i8 %element_291, 48
  606. store i8 %inc_element_291, i8* %element_addr_291
  607. ; <ENTER_INC_DATA 291
  608.  
  609. ; >ENTER_WRITE_STDOUT 339
  610. ret i32 339
  611. post_339:
  612. ; <ENTER_WRITE_STDOUT 339
  613.  
  614. ; >ENTER_DEC_DATA 341
  615. %dataptr_341 = load i32, i32* %dataptr_addr
  616. %element_addr_341 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_341
  617. %element_341 = load i8, i8* %element_addr_341
  618. %sub_element_341 = sub i8 %element_341, 48
  619. store i8 %sub_element_341, i8* %element_addr_341
  620. ; <ENTER_DEC_DATA 341
  621.  
  622. ; >ENTER_DEC_PTR 389
  623. %dataptr_389 = load i32, i32* %dataptr_addr
  624. %dec_dataptr_389 = sub i32 %dataptr_389, 11
  625. store i32 %dec_dataptr_389, i32* %dataptr_addr
  626. ; <ENTER_DEC_PTR 389
  627.  
  628. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4077
  629. %dataptr_leave_4077 = load i32, i32* %dataptr_addr
  630. %element_addr_leave_4077 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4077
  631. %element_leave_4077 = load i8, i8* %element_addr_leave_4077
  632. %compare_zero_leave_4077 = icmp ne i8 %element_leave_4077, 0
  633. br i1 %compare_zero_leave_4077, label %loop_body_4077, label %post_loop_4077
  634. post_loop_4077:
  635. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4077
  636.  
  637. ; >ENTER_INC_DATA 402
  638. %dataptr_402 = load i32, i32* %dataptr_addr
  639. %element_addr_402 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_402
  640. %element_402 = load i8, i8* %element_addr_402
  641. %inc_element_402 = add i8 %element_402, 58
  642. store i8 %inc_element_402, i8* %element_addr_402
  643. ; <ENTER_INC_DATA 402
  644.  
  645. ; >ENTER_WRITE_STDOUT 460
  646. ret i32 460
  647. post_460:
  648. ; <ENTER_WRITE_STDOUT 460
  649.  
  650. ; >ENTER_DEC_DATA 462
  651. %dataptr_462 = load i32, i32* %dataptr_addr
  652. %element_addr_462 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_462
  653. %element_462 = load i8, i8* %element_addr_462
  654. %sub_element_462 = sub i8 %element_462, 26
  655. store i8 %sub_element_462, i8* %element_addr_462
  656. ; <ENTER_DEC_DATA 462
  657.  
  658. ; >ENTER_WRITE_STDOUT 488
  659. ret i32 488
  660. post_488:
  661. ; <ENTER_WRITE_STDOUT 488
  662.  
  663. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4078
  664. %dataptr_enter_4078 = load i32, i32* %dataptr_addr
  665. %element_addr_enter_4078 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4078
  666. %element_enter_4078 = load i8, i8* %element_addr_enter_4078
  667. %compare_zero_enter_4078 = icmp eq i8 %element_enter_4078, 0
  668. br i1 %compare_zero_enter_4078, label %post_loop_4078, label %loop_body_4078
  669. loop_body_4078:
  670. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4078
  671.  
  672. ; >ENTER_DEC_DATA 490
  673. %dataptr_490 = load i32, i32* %dataptr_addr
  674. %element_addr_490 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_490
  675. %element_490 = load i8, i8* %element_addr_490
  676. %sub_element_490 = sub i8 %element_490, 1
  677. store i8 %sub_element_490, i8* %element_addr_490
  678. ; <ENTER_DEC_DATA 490
  679.  
  680. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4078
  681. %dataptr_leave_4078 = load i32, i32* %dataptr_addr
  682. %element_addr_leave_4078 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4078
  683. %element_leave_4078 = load i8, i8* %element_addr_leave_4078
  684. %compare_zero_leave_4078 = icmp ne i8 %element_leave_4078, 0
  685. br i1 %compare_zero_leave_4078, label %loop_body_4078, label %post_loop_4078
  686. post_loop_4078:
  687. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4078
  688.  
  689. ; >ENTER_INC_PTR 493
  690. %dataptr_493 = load i32, i32* %dataptr_addr
  691. %inc_dataptr_493 = add i32 %dataptr_493, 12
  692. store i32 %inc_dataptr_493, i32* %dataptr_addr
  693. ; <ENTER_INC_PTR 493
  694.  
  695. ; >ENTER_INC_DATA 505
  696. %dataptr_505 = load i32, i32* %dataptr_addr
  697. %element_addr_505 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_505
  698. %element_505 = load i8, i8* %element_addr_505
  699. %inc_element_505 = add i8 %element_505, 2
  700. store i8 %inc_element_505, i8* %element_addr_505
  701. ; <ENTER_INC_DATA 505
  702.  
  703. ; >ENTER_DEC_PTR 507
  704. %dataptr_507 = load i32, i32* %dataptr_addr
  705. %dec_dataptr_507 = sub i32 %dataptr_507, 4
  706. store i32 %dec_dataptr_507, i32* %dataptr_addr
  707. ; <ENTER_DEC_PTR 507
  708.  
  709. ; >ENTER_INC_DATA 511
  710. %dataptr_511 = load i32, i32* %dataptr_addr
  711. %element_addr_511 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_511
  712. %element_511 = load i8, i8* %element_addr_511
  713. %inc_element_511 = add i8 %element_511, 1
  714. store i8 %inc_element_511, i8* %element_addr_511
  715. ; <ENTER_INC_DATA 511
  716.  
  717. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4294
  718. %dataptr_enter_4294 = load i32, i32* %dataptr_addr
  719. %element_addr_enter_4294 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4294
  720. %element_enter_4294 = load i8, i8* %element_addr_enter_4294
  721. %compare_zero_enter_4294 = icmp eq i8 %element_enter_4294, 0
  722. br i1 %compare_zero_enter_4294, label %post_loop_4294, label %loop_body_4294
  723. loop_body_4294:
  724. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4294
  725.  
  726. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4079
  727. %dataptr_enter_4079 = load i32, i32* %dataptr_addr
  728. %element_addr_enter_4079 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4079
  729. %element_enter_4079 = load i8, i8* %element_addr_enter_4079
  730. %compare_zero_enter_4079 = icmp eq i8 %element_enter_4079, 0
  731. br i1 %compare_zero_enter_4079, label %post_loop_4079, label %loop_body_4079
  732. loop_body_4079:
  733. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4079
  734.  
  735. ; >ENTER_DEC_DATA 516
  736. %dataptr_516 = load i32, i32* %dataptr_addr
  737. %element_addr_516 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_516
  738. %element_516 = load i8, i8* %element_addr_516
  739. %sub_element_516 = sub i8 %element_516, 1
  740. store i8 %sub_element_516, i8* %element_addr_516
  741. ; <ENTER_DEC_DATA 516
  742.  
  743. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4079
  744. %dataptr_leave_4079 = load i32, i32* %dataptr_addr
  745. %element_addr_leave_4079 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4079
  746. %element_leave_4079 = load i8, i8* %element_addr_leave_4079
  747. %compare_zero_leave_4079 = icmp ne i8 %element_leave_4079, 0
  748. br i1 %compare_zero_leave_4079, label %loop_body_4079, label %post_loop_4079
  749. post_loop_4079:
  750. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4079
  751.  
  752. ; >ENTER_INC_PTR 518
  753. %dataptr_518 = load i32, i32* %dataptr_addr
  754. %inc_dataptr_518 = add i32 %dataptr_518, 2
  755. store i32 %inc_dataptr_518, i32* %dataptr_addr
  756. ; <ENTER_INC_PTR 518
  757.  
  758. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4087
  759. %dataptr_enter_4087 = load i32, i32* %dataptr_addr
  760. %element_addr_enter_4087 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4087
  761. %element_enter_4087 = load i8, i8* %element_addr_enter_4087
  762. %compare_zero_enter_4087 = icmp eq i8 %element_enter_4087, 0
  763. br i1 %compare_zero_enter_4087, label %post_loop_4087, label %loop_body_4087
  764. loop_body_4087:
  765. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4087
  766.  
  767. ; >ENTER_INC_PTR 522
  768. %dataptr_522 = load i32, i32* %dataptr_addr
  769. %inc_dataptr_522 = add i32 %dataptr_522, 4
  770. store i32 %inc_dataptr_522, i32* %dataptr_addr
  771. ; <ENTER_INC_PTR 522
  772.  
  773. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4080
  774. %dataptr_enter_4080 = load i32, i32* %dataptr_addr
  775. %element_addr_enter_4080 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4080
  776. %element_enter_4080 = load i8, i8* %element_addr_enter_4080
  777. %compare_zero_enter_4080 = icmp eq i8 %element_enter_4080, 0
  778. br i1 %compare_zero_enter_4080, label %post_loop_4080, label %loop_body_4080
  779. loop_body_4080:
  780. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4080
  781.  
  782. ; >ENTER_DEC_DATA 527
  783. %dataptr_527 = load i32, i32* %dataptr_addr
  784. %element_addr_527 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_527
  785. %element_527 = load i8, i8* %element_addr_527
  786. %sub_element_527 = sub i8 %element_527, 1
  787. store i8 %sub_element_527, i8* %element_addr_527
  788. ; <ENTER_DEC_DATA 527
  789.  
  790. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4080
  791. %dataptr_leave_4080 = load i32, i32* %dataptr_addr
  792. %element_addr_leave_4080 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4080
  793. %element_leave_4080 = load i8, i8* %element_addr_leave_4080
  794. %compare_zero_leave_4080 = icmp ne i8 %element_leave_4080, 0
  795. br i1 %compare_zero_leave_4080, label %loop_body_4080, label %post_loop_4080
  796. post_loop_4080:
  797. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4080
  798.  
  799. ; >ENTER_INC_PTR 529
  800. %dataptr_529 = load i32, i32* %dataptr_addr
  801. %inc_dataptr_529 = add i32 %dataptr_529, 1
  802. store i32 %inc_dataptr_529, i32* %dataptr_addr
  803. ; <ENTER_INC_PTR 529
  804.  
  805. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4081
  806. %dataptr_enter_4081 = load i32, i32* %dataptr_addr
  807. %element_addr_enter_4081 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4081
  808. %element_enter_4081 = load i8, i8* %element_addr_enter_4081
  809. %compare_zero_enter_4081 = icmp eq i8 %element_enter_4081, 0
  810. br i1 %compare_zero_enter_4081, label %post_loop_4081, label %loop_body_4081
  811. loop_body_4081:
  812. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4081
  813.  
  814. ; >ENTER_DEC_DATA 531
  815. %dataptr_531 = load i32, i32* %dataptr_addr
  816. %element_addr_531 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_531
  817. %element_531 = load i8, i8* %element_addr_531
  818. %sub_element_531 = sub i8 %element_531, 1
  819. store i8 %sub_element_531, i8* %element_addr_531
  820. ; <ENTER_DEC_DATA 531
  821.  
  822. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4081
  823. %dataptr_leave_4081 = load i32, i32* %dataptr_addr
  824. %element_addr_leave_4081 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4081
  825. %element_leave_4081 = load i8, i8* %element_addr_leave_4081
  826. %compare_zero_leave_4081 = icmp ne i8 %element_leave_4081, 0
  827. br i1 %compare_zero_leave_4081, label %loop_body_4081, label %post_loop_4081
  828. post_loop_4081:
  829. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4081
  830.  
  831. ; >ENTER_INC_PTR 533
  832. %dataptr_533 = load i32, i32* %dataptr_addr
  833. %inc_dataptr_533 = add i32 %dataptr_533, 1
  834. store i32 %inc_dataptr_533, i32* %dataptr_addr
  835. ; <ENTER_INC_PTR 533
  836.  
  837. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4082
  838. %dataptr_enter_4082 = load i32, i32* %dataptr_addr
  839. %element_addr_enter_4082 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4082
  840. %element_enter_4082 = load i8, i8* %element_addr_enter_4082
  841. %compare_zero_enter_4082 = icmp eq i8 %element_enter_4082, 0
  842. br i1 %compare_zero_enter_4082, label %post_loop_4082, label %loop_body_4082
  843. loop_body_4082:
  844. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4082
  845.  
  846. ; >ENTER_DEC_DATA 535
  847. %dataptr_535 = load i32, i32* %dataptr_addr
  848. %element_addr_535 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_535
  849. %element_535 = load i8, i8* %element_addr_535
  850. %sub_element_535 = sub i8 %element_535, 1
  851. store i8 %sub_element_535, i8* %element_addr_535
  852. ; <ENTER_DEC_DATA 535
  853.  
  854. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4082
  855. %dataptr_leave_4082 = load i32, i32* %dataptr_addr
  856. %element_addr_leave_4082 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4082
  857. %element_leave_4082 = load i8, i8* %element_addr_leave_4082
  858. %compare_zero_leave_4082 = icmp ne i8 %element_leave_4082, 0
  859. br i1 %compare_zero_leave_4082, label %loop_body_4082, label %post_loop_4082
  860. post_loop_4082:
  861. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4082
  862.  
  863. ; >ENTER_INC_PTR 537
  864. %dataptr_537 = load i32, i32* %dataptr_addr
  865. %inc_dataptr_537 = add i32 %dataptr_537, 1
  866. store i32 %inc_dataptr_537, i32* %dataptr_addr
  867. ; <ENTER_INC_PTR 537
  868.  
  869. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4083
  870. %dataptr_enter_4083 = load i32, i32* %dataptr_addr
  871. %element_addr_enter_4083 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4083
  872. %element_enter_4083 = load i8, i8* %element_addr_enter_4083
  873. %compare_zero_enter_4083 = icmp eq i8 %element_enter_4083, 0
  874. br i1 %compare_zero_enter_4083, label %post_loop_4083, label %loop_body_4083
  875. loop_body_4083:
  876. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4083
  877.  
  878. ; >ENTER_DEC_DATA 539
  879. %dataptr_539 = load i32, i32* %dataptr_addr
  880. %element_addr_539 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_539
  881. %element_539 = load i8, i8* %element_addr_539
  882. %sub_element_539 = sub i8 %element_539, 1
  883. store i8 %sub_element_539, i8* %element_addr_539
  884. ; <ENTER_DEC_DATA 539
  885.  
  886. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4083
  887. %dataptr_leave_4083 = load i32, i32* %dataptr_addr
  888. %element_addr_leave_4083 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4083
  889. %element_leave_4083 = load i8, i8* %element_addr_leave_4083
  890. %compare_zero_leave_4083 = icmp ne i8 %element_leave_4083, 0
  891. br i1 %compare_zero_leave_4083, label %loop_body_4083, label %post_loop_4083
  892. post_loop_4083:
  893. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4083
  894.  
  895. ; >ENTER_INC_PTR 542
  896. %dataptr_542 = load i32, i32* %dataptr_addr
  897. %inc_dataptr_542 = add i32 %dataptr_542, 1
  898. store i32 %inc_dataptr_542, i32* %dataptr_addr
  899. ; <ENTER_INC_PTR 542
  900.  
  901. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4084
  902. %dataptr_enter_4084 = load i32, i32* %dataptr_addr
  903. %element_addr_enter_4084 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4084
  904. %element_enter_4084 = load i8, i8* %element_addr_enter_4084
  905. %compare_zero_enter_4084 = icmp eq i8 %element_enter_4084, 0
  906. br i1 %compare_zero_enter_4084, label %post_loop_4084, label %loop_body_4084
  907. loop_body_4084:
  908. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4084
  909.  
  910. ; >ENTER_DEC_DATA 544
  911. %dataptr_544 = load i32, i32* %dataptr_addr
  912. %element_addr_544 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_544
  913. %element_544 = load i8, i8* %element_addr_544
  914. %sub_element_544 = sub i8 %element_544, 1
  915. store i8 %sub_element_544, i8* %element_addr_544
  916. ; <ENTER_DEC_DATA 544
  917.  
  918. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4084
  919. %dataptr_leave_4084 = load i32, i32* %dataptr_addr
  920. %element_addr_leave_4084 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4084
  921. %element_leave_4084 = load i8, i8* %element_addr_leave_4084
  922. %compare_zero_leave_4084 = icmp ne i8 %element_leave_4084, 0
  923. br i1 %compare_zero_leave_4084, label %loop_body_4084, label %post_loop_4084
  924. post_loop_4084:
  925. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4084
  926.  
  927. ; >ENTER_INC_PTR 546
  928. %dataptr_546 = load i32, i32* %dataptr_addr
  929. %inc_dataptr_546 = add i32 %dataptr_546, 1
  930. store i32 %inc_dataptr_546, i32* %dataptr_addr
  931. ; <ENTER_INC_PTR 546
  932.  
  933. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4085
  934. %dataptr_enter_4085 = load i32, i32* %dataptr_addr
  935. %element_addr_enter_4085 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4085
  936. %element_enter_4085 = load i8, i8* %element_addr_enter_4085
  937. %compare_zero_enter_4085 = icmp eq i8 %element_enter_4085, 0
  938. br i1 %compare_zero_enter_4085, label %post_loop_4085, label %loop_body_4085
  939. loop_body_4085:
  940. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4085
  941.  
  942. ; >ENTER_DEC_DATA 548
  943. %dataptr_548 = load i32, i32* %dataptr_addr
  944. %element_addr_548 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_548
  945. %element_548 = load i8, i8* %element_addr_548
  946. %sub_element_548 = sub i8 %element_548, 1
  947. store i8 %sub_element_548, i8* %element_addr_548
  948. ; <ENTER_DEC_DATA 548
  949.  
  950. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4085
  951. %dataptr_leave_4085 = load i32, i32* %dataptr_addr
  952. %element_addr_leave_4085 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4085
  953. %element_leave_4085 = load i8, i8* %element_addr_leave_4085
  954. %compare_zero_leave_4085 = icmp ne i8 %element_leave_4085, 0
  955. br i1 %compare_zero_leave_4085, label %loop_body_4085, label %post_loop_4085
  956. post_loop_4085:
  957. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4085
  958.  
  959. ; >ENTER_DEC_PTR 551
  960. %dataptr_551 = load i32, i32* %dataptr_addr
  961. %dec_dataptr_551 = sub i32 %dataptr_551, 7
  962. store i32 %dec_dataptr_551, i32* %dataptr_addr
  963. ; <ENTER_DEC_PTR 551
  964.  
  965. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4086
  966. %dataptr_enter_4086 = load i32, i32* %dataptr_addr
  967. %element_addr_enter_4086 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4086
  968. %element_enter_4086 = load i8, i8* %element_addr_enter_4086
  969. %compare_zero_enter_4086 = icmp eq i8 %element_enter_4086, 0
  970. br i1 %compare_zero_enter_4086, label %post_loop_4086, label %loop_body_4086
  971. loop_body_4086:
  972. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4086
  973.  
  974. ; >ENTER_DEC_DATA 559
  975. %dataptr_559 = load i32, i32* %dataptr_addr
  976. %element_addr_559 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_559
  977. %element_559 = load i8, i8* %element_addr_559
  978. %sub_element_559 = sub i8 %element_559, 1
  979. store i8 %sub_element_559, i8* %element_addr_559
  980. ; <ENTER_DEC_DATA 559
  981.  
  982. ; >ENTER_INC_PTR 560
  983. %dataptr_560 = load i32, i32* %dataptr_addr
  984. %inc_dataptr_560 = add i32 %dataptr_560, 3
  985. store i32 %inc_dataptr_560, i32* %dataptr_addr
  986. ; <ENTER_INC_PTR 560
  987.  
  988. ; >ENTER_INC_DATA 563
  989. %dataptr_563 = load i32, i32* %dataptr_addr
  990. %element_addr_563 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_563
  991. %element_563 = load i8, i8* %element_addr_563
  992. %inc_element_563 = add i8 %element_563, 1
  993. store i8 %inc_element_563, i8* %element_addr_563
  994. ; <ENTER_INC_DATA 563
  995.  
  996. ; >ENTER_INC_PTR 564
  997. %dataptr_564 = load i32, i32* %dataptr_addr
  998. %inc_dataptr_564 = add i32 %dataptr_564, 1
  999. store i32 %inc_dataptr_564, i32* %dataptr_addr
  1000. ; <ENTER_INC_PTR 564
  1001.  
  1002. ; >ENTER_INC_DATA 565
  1003. %dataptr_565 = load i32, i32* %dataptr_addr
  1004. %element_addr_565 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_565
  1005. %element_565 = load i8, i8* %element_addr_565
  1006. %inc_element_565 = add i8 %element_565, 1
  1007. store i8 %inc_element_565, i8* %element_addr_565
  1008. ; <ENTER_INC_DATA 565
  1009.  
  1010. ; >ENTER_DEC_PTR 566
  1011. %dataptr_566 = load i32, i32* %dataptr_addr
  1012. %dec_dataptr_566 = sub i32 %dataptr_566, 4
  1013. store i32 %dec_dataptr_566, i32* %dataptr_addr
  1014. ; <ENTER_DEC_PTR 566
  1015.  
  1016. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4086
  1017. %dataptr_leave_4086 = load i32, i32* %dataptr_addr
  1018. %element_addr_leave_4086 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4086
  1019. %element_leave_4086 = load i8, i8* %element_addr_leave_4086
  1020. %compare_zero_leave_4086 = icmp ne i8 %element_leave_4086, 0
  1021. br i1 %compare_zero_leave_4086, label %loop_body_4086, label %post_loop_4086
  1022. post_loop_4086:
  1023. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4086
  1024.  
  1025. ; >ENTER_INC_PTR 571
  1026. %dataptr_571 = load i32, i32* %dataptr_addr
  1027. %inc_dataptr_571 = add i32 %dataptr_571, 8
  1028. store i32 %inc_dataptr_571, i32* %dataptr_addr
  1029. ; <ENTER_INC_PTR 571
  1030.  
  1031. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4087
  1032. %dataptr_leave_4087 = load i32, i32* %dataptr_addr
  1033. %element_addr_leave_4087 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4087
  1034. %element_leave_4087 = load i8, i8* %element_addr_leave_4087
  1035. %compare_zero_leave_4087 = icmp ne i8 %element_leave_4087, 0
  1036. br i1 %compare_zero_leave_4087, label %loop_body_4087, label %post_loop_4087
  1037. post_loop_4087:
  1038. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4087
  1039.  
  1040. ; >ENTER_DEC_PTR 581
  1041. %dataptr_581 = load i32, i32* %dataptr_addr
  1042. %dec_dataptr_581 = sub i32 %dataptr_581, 10
  1043. store i32 %dec_dataptr_581, i32* %dataptr_addr
  1044. ; <ENTER_DEC_PTR 581
  1045.  
  1046. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4089
  1047. %dataptr_enter_4089 = load i32, i32* %dataptr_addr
  1048. %element_addr_enter_4089 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4089
  1049. %element_enter_4089 = load i8, i8* %element_addr_enter_4089
  1050. %compare_zero_enter_4089 = icmp eq i8 %element_enter_4089, 0
  1051. br i1 %compare_zero_enter_4089, label %post_loop_4089, label %loop_body_4089
  1052. loop_body_4089:
  1053. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4089
  1054.  
  1055. ; >ENTER_INC_PTR 592
  1056. %dataptr_592 = load i32, i32* %dataptr_addr
  1057. %inc_dataptr_592 = add i32 %dataptr_592, 6
  1058. store i32 %inc_dataptr_592, i32* %dataptr_addr
  1059. ; <ENTER_INC_PTR 592
  1060.  
  1061. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4088
  1062. %dataptr_enter_4088 = load i32, i32* %dataptr_addr
  1063. %element_addr_enter_4088 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4088
  1064. %element_enter_4088 = load i8, i8* %element_addr_enter_4088
  1065. %compare_zero_enter_4088 = icmp eq i8 %element_enter_4088, 0
  1066. br i1 %compare_zero_enter_4088, label %post_loop_4088, label %loop_body_4088
  1067. loop_body_4088:
  1068. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4088
  1069.  
  1070. ; >ENTER_DEC_DATA 599
  1071. %dataptr_599 = load i32, i32* %dataptr_addr
  1072. %element_addr_599 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_599
  1073. %element_599 = load i8, i8* %element_addr_599
  1074. %sub_element_599 = sub i8 %element_599, 1
  1075. store i8 %sub_element_599, i8* %element_addr_599
  1076. ; <ENTER_DEC_DATA 599
  1077.  
  1078. ; >ENTER_DEC_PTR 600
  1079. %dataptr_600 = load i32, i32* %dataptr_addr
  1080. %dec_dataptr_600 = sub i32 %dataptr_600, 4
  1081. store i32 %dec_dataptr_600, i32* %dataptr_addr
  1082. ; <ENTER_DEC_PTR 600
  1083.  
  1084. ; >ENTER_INC_DATA 604
  1085. %dataptr_604 = load i32, i32* %dataptr_addr
  1086. %element_addr_604 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_604
  1087. %element_604 = load i8, i8* %element_addr_604
  1088. %inc_element_604 = add i8 %element_604, 1
  1089. store i8 %inc_element_604, i8* %element_addr_604
  1090. ; <ENTER_INC_DATA 604
  1091.  
  1092. ; >ENTER_INC_PTR 605
  1093. %dataptr_605 = load i32, i32* %dataptr_addr
  1094. %inc_dataptr_605 = add i32 %dataptr_605, 4
  1095. store i32 %inc_dataptr_605, i32* %dataptr_addr
  1096. ; <ENTER_INC_PTR 605
  1097.  
  1098. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4088
  1099. %dataptr_leave_4088 = load i32, i32* %dataptr_addr
  1100. %element_addr_leave_4088 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4088
  1101. %element_leave_4088 = load i8, i8* %element_addr_leave_4088
  1102. %compare_zero_leave_4088 = icmp ne i8 %element_leave_4088, 0
  1103. br i1 %compare_zero_leave_4088, label %loop_body_4088, label %post_loop_4088
  1104. post_loop_4088:
  1105. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4088
  1106.  
  1107. ; >ENTER_DEC_PTR 610
  1108. %dataptr_610 = load i32, i32* %dataptr_addr
  1109. %dec_dataptr_610 = sub i32 %dataptr_610, 16
  1110. store i32 %dec_dataptr_610, i32* %dataptr_addr
  1111. ; <ENTER_DEC_PTR 610
  1112.  
  1113. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4089
  1114. %dataptr_leave_4089 = load i32, i32* %dataptr_addr
  1115. %element_addr_leave_4089 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4089
  1116. %element_leave_4089 = load i8, i8* %element_addr_leave_4089
  1117. %compare_zero_leave_4089 = icmp ne i8 %element_leave_4089, 0
  1118. br i1 %compare_zero_leave_4089, label %loop_body_4089, label %post_loop_4089
  1119. post_loop_4089:
  1120. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4089
  1121.  
  1122. ; >ENTER_INC_PTR 627
  1123. %dataptr_627 = load i32, i32* %dataptr_addr
  1124. %inc_dataptr_627 = add i32 %dataptr_627, 10
  1125. store i32 %inc_dataptr_627, i32* %dataptr_addr
  1126. ; <ENTER_INC_PTR 627
  1127.  
  1128. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4091
  1129. %dataptr_enter_4091 = load i32, i32* %dataptr_addr
  1130. %element_addr_enter_4091 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4091
  1131. %element_enter_4091 = load i8, i8* %element_addr_enter_4091
  1132. %compare_zero_enter_4091 = icmp eq i8 %element_enter_4091, 0
  1133. br i1 %compare_zero_enter_4091, label %post_loop_4091, label %loop_body_4091
  1134. loop_body_4091:
  1135. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4091
  1136.  
  1137. ; >ENTER_INC_PTR 639
  1138. %dataptr_639 = load i32, i32* %dataptr_addr
  1139. %inc_dataptr_639 = add i32 %dataptr_639, 1
  1140. store i32 %inc_dataptr_639, i32* %dataptr_addr
  1141. ; <ENTER_INC_PTR 639
  1142.  
  1143. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4090
  1144. %dataptr_enter_4090 = load i32, i32* %dataptr_addr
  1145. %element_addr_enter_4090 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4090
  1146. %element_enter_4090 = load i8, i8* %element_addr_enter_4090
  1147. %compare_zero_enter_4090 = icmp eq i8 %element_enter_4090, 0
  1148. br i1 %compare_zero_enter_4090, label %post_loop_4090, label %loop_body_4090
  1149. loop_body_4090:
  1150. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4090
  1151.  
  1152. ; >ENTER_DEC_DATA 641
  1153. %dataptr_641 = load i32, i32* %dataptr_addr
  1154. %element_addr_641 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_641
  1155. %element_641 = load i8, i8* %element_addr_641
  1156. %sub_element_641 = sub i8 %element_641, 1
  1157. store i8 %sub_element_641, i8* %element_addr_641
  1158. ; <ENTER_DEC_DATA 641
  1159.  
  1160. ; >ENTER_INC_PTR 642
  1161. %dataptr_642 = load i32, i32* %dataptr_addr
  1162. %inc_dataptr_642 = add i32 %dataptr_642, 3
  1163. store i32 %inc_dataptr_642, i32* %dataptr_addr
  1164. ; <ENTER_INC_PTR 642
  1165.  
  1166. ; >ENTER_INC_DATA 645
  1167. %dataptr_645 = load i32, i32* %dataptr_addr
  1168. %element_addr_645 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_645
  1169. %element_645 = load i8, i8* %element_addr_645
  1170. %inc_element_645 = add i8 %element_645, 1
  1171. store i8 %inc_element_645, i8* %element_addr_645
  1172. ; <ENTER_INC_DATA 645
  1173.  
  1174. ; >ENTER_INC_PTR 646
  1175. %dataptr_646 = load i32, i32* %dataptr_addr
  1176. %inc_dataptr_646 = add i32 %dataptr_646, 2
  1177. store i32 %inc_dataptr_646, i32* %dataptr_addr
  1178. ; <ENTER_INC_PTR 646
  1179.  
  1180. ; >ENTER_INC_DATA 648
  1181. %dataptr_648 = load i32, i32* %dataptr_addr
  1182. %element_addr_648 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_648
  1183. %element_648 = load i8, i8* %element_addr_648
  1184. %inc_element_648 = add i8 %element_648, 1
  1185. store i8 %inc_element_648, i8* %element_addr_648
  1186. ; <ENTER_INC_DATA 648
  1187.  
  1188. ; >ENTER_DEC_PTR 649
  1189. %dataptr_649 = load i32, i32* %dataptr_addr
  1190. %dec_dataptr_649 = sub i32 %dataptr_649, 5
  1191. store i32 %dec_dataptr_649, i32* %dataptr_addr
  1192. ; <ENTER_DEC_PTR 649
  1193.  
  1194. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4090
  1195. %dataptr_leave_4090 = load i32, i32* %dataptr_addr
  1196. %element_addr_leave_4090 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4090
  1197. %element_leave_4090 = load i8, i8* %element_addr_leave_4090
  1198. %compare_zero_leave_4090 = icmp ne i8 %element_leave_4090, 0
  1199. br i1 %compare_zero_leave_4090, label %loop_body_4090, label %post_loop_4090
  1200. post_loop_4090:
  1201. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4090
  1202.  
  1203. ; >ENTER_INC_PTR 655
  1204. %dataptr_655 = load i32, i32* %dataptr_addr
  1205. %inc_dataptr_655 = add i32 %dataptr_655, 9
  1206. store i32 %inc_dataptr_655, i32* %dataptr_addr
  1207. ; <ENTER_INC_PTR 655
  1208.  
  1209. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4091
  1210. %dataptr_leave_4091 = load i32, i32* %dataptr_addr
  1211. %element_addr_leave_4091 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4091
  1212. %element_leave_4091 = load i8, i8* %element_addr_leave_4091
  1213. %compare_zero_leave_4091 = icmp ne i8 %element_leave_4091, 0
  1214. br i1 %compare_zero_leave_4091, label %loop_body_4091, label %post_loop_4091
  1215. post_loop_4091:
  1216. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4091
  1217.  
  1218. ; >ENTER_DEC_PTR 666
  1219. %dataptr_666 = load i32, i32* %dataptr_addr
  1220. %dec_dataptr_666 = sub i32 %dataptr_666, 10
  1221. store i32 %dec_dataptr_666, i32* %dataptr_addr
  1222. ; <ENTER_DEC_PTR 666
  1223.  
  1224. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4093
  1225. %dataptr_enter_4093 = load i32, i32* %dataptr_addr
  1226. %element_addr_enter_4093 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4093
  1227. %element_enter_4093 = load i8, i8* %element_addr_enter_4093
  1228. %compare_zero_enter_4093 = icmp eq i8 %element_enter_4093, 0
  1229. br i1 %compare_zero_enter_4093, label %post_loop_4093, label %loop_body_4093
  1230. loop_body_4093:
  1231. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4093
  1232.  
  1233. ; >ENTER_INC_PTR 677
  1234. %dataptr_677 = load i32, i32* %dataptr_addr
  1235. %inc_dataptr_677 = add i32 %dataptr_677, 6
  1236. store i32 %inc_dataptr_677, i32* %dataptr_addr
  1237. ; <ENTER_INC_PTR 677
  1238.  
  1239. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4092
  1240. %dataptr_enter_4092 = load i32, i32* %dataptr_addr
  1241. %element_addr_enter_4092 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4092
  1242. %element_enter_4092 = load i8, i8* %element_addr_enter_4092
  1243. %compare_zero_enter_4092 = icmp eq i8 %element_enter_4092, 0
  1244. br i1 %compare_zero_enter_4092, label %post_loop_4092, label %loop_body_4092
  1245. loop_body_4092:
  1246. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4092
  1247.  
  1248. ; >ENTER_DEC_DATA 684
  1249. %dataptr_684 = load i32, i32* %dataptr_addr
  1250. %element_addr_684 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_684
  1251. %element_684 = load i8, i8* %element_addr_684
  1252. %sub_element_684 = sub i8 %element_684, 1
  1253. store i8 %sub_element_684, i8* %element_addr_684
  1254. ; <ENTER_DEC_DATA 684
  1255.  
  1256. ; >ENTER_DEC_PTR 685
  1257. %dataptr_685 = load i32, i32* %dataptr_addr
  1258. %dec_dataptr_685 = sub i32 %dataptr_685, 5
  1259. store i32 %dec_dataptr_685, i32* %dataptr_addr
  1260. ; <ENTER_DEC_PTR 685
  1261.  
  1262. ; >ENTER_INC_DATA 690
  1263. %dataptr_690 = load i32, i32* %dataptr_addr
  1264. %element_addr_690 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_690
  1265. %element_690 = load i8, i8* %element_addr_690
  1266. %inc_element_690 = add i8 %element_690, 1
  1267. store i8 %inc_element_690, i8* %element_addr_690
  1268. ; <ENTER_INC_DATA 690
  1269.  
  1270. ; >ENTER_INC_PTR 691
  1271. %dataptr_691 = load i32, i32* %dataptr_addr
  1272. %inc_dataptr_691 = add i32 %dataptr_691, 5
  1273. store i32 %inc_dataptr_691, i32* %dataptr_addr
  1274. ; <ENTER_INC_PTR 691
  1275.  
  1276. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4092
  1277. %dataptr_leave_4092 = load i32, i32* %dataptr_addr
  1278. %element_addr_leave_4092 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4092
  1279. %element_leave_4092 = load i8, i8* %element_addr_leave_4092
  1280. %compare_zero_leave_4092 = icmp ne i8 %element_leave_4092, 0
  1281. br i1 %compare_zero_leave_4092, label %loop_body_4092, label %post_loop_4092
  1282. post_loop_4092:
  1283. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4092
  1284.  
  1285. ; >ENTER_DEC_PTR 697
  1286. %dataptr_697 = load i32, i32* %dataptr_addr
  1287. %dec_dataptr_697 = sub i32 %dataptr_697, 16
  1288. store i32 %dec_dataptr_697, i32* %dataptr_addr
  1289. ; <ENTER_DEC_PTR 697
  1290.  
  1291. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4093
  1292. %dataptr_leave_4093 = load i32, i32* %dataptr_addr
  1293. %element_addr_leave_4093 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4093
  1294. %element_leave_4093 = load i8, i8* %element_addr_leave_4093
  1295. %compare_zero_leave_4093 = icmp ne i8 %element_leave_4093, 0
  1296. br i1 %compare_zero_leave_4093, label %loop_body_4093, label %post_loop_4093
  1297. post_loop_4093:
  1298. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4093
  1299.  
  1300. ; >ENTER_INC_PTR 714
  1301. %dataptr_714 = load i32, i32* %dataptr_addr
  1302. %inc_dataptr_714 = add i32 %dataptr_714, 10
  1303. store i32 %inc_dataptr_714, i32* %dataptr_addr
  1304. ; <ENTER_INC_PTR 714
  1305.  
  1306. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4097
  1307. %dataptr_enter_4097 = load i32, i32* %dataptr_addr
  1308. %element_addr_enter_4097 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4097
  1309. %element_enter_4097 = load i8, i8* %element_addr_enter_4097
  1310. %compare_zero_enter_4097 = icmp eq i8 %element_enter_4097, 0
  1311. br i1 %compare_zero_enter_4097, label %post_loop_4097, label %loop_body_4097
  1312. loop_body_4097:
  1313. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4097
  1314.  
  1315. ; >ENTER_INC_PTR 726
  1316. %dataptr_726 = load i32, i32* %dataptr_addr
  1317. %inc_dataptr_726 = add i32 %dataptr_726, 3
  1318. store i32 %inc_dataptr_726, i32* %dataptr_addr
  1319. ; <ENTER_INC_PTR 726
  1320.  
  1321. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4094
  1322. %dataptr_enter_4094 = load i32, i32* %dataptr_addr
  1323. %element_addr_enter_4094 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4094
  1324. %element_enter_4094 = load i8, i8* %element_addr_enter_4094
  1325. %compare_zero_enter_4094 = icmp eq i8 %element_enter_4094, 0
  1326. br i1 %compare_zero_enter_4094, label %post_loop_4094, label %loop_body_4094
  1327. loop_body_4094:
  1328. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4094
  1329.  
  1330. ; >ENTER_DEC_DATA 730
  1331. %dataptr_730 = load i32, i32* %dataptr_addr
  1332. %element_addr_730 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_730
  1333. %element_730 = load i8, i8* %element_addr_730
  1334. %sub_element_730 = sub i8 %element_730, 1
  1335. store i8 %sub_element_730, i8* %element_addr_730
  1336. ; <ENTER_DEC_DATA 730
  1337.  
  1338. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4094
  1339. %dataptr_leave_4094 = load i32, i32* %dataptr_addr
  1340. %element_addr_leave_4094 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4094
  1341. %element_leave_4094 = load i8, i8* %element_addr_leave_4094
  1342. %compare_zero_leave_4094 = icmp ne i8 %element_leave_4094, 0
  1343. br i1 %compare_zero_leave_4094, label %loop_body_4094, label %post_loop_4094
  1344. post_loop_4094:
  1345. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4094
  1346.  
  1347. ; >ENTER_INC_PTR 732
  1348. %dataptr_732 = load i32, i32* %dataptr_addr
  1349. %inc_dataptr_732 = add i32 %dataptr_732, 3
  1350. store i32 %inc_dataptr_732, i32* %dataptr_addr
  1351. ; <ENTER_INC_PTR 732
  1352.  
  1353. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4095
  1354. %dataptr_enter_4095 = load i32, i32* %dataptr_addr
  1355. %element_addr_enter_4095 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4095
  1356. %element_enter_4095 = load i8, i8* %element_addr_enter_4095
  1357. %compare_zero_enter_4095 = icmp eq i8 %element_enter_4095, 0
  1358. br i1 %compare_zero_enter_4095, label %post_loop_4095, label %loop_body_4095
  1359. loop_body_4095:
  1360. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4095
  1361.  
  1362. ; >ENTER_DEC_DATA 736
  1363. %dataptr_736 = load i32, i32* %dataptr_addr
  1364. %element_addr_736 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_736
  1365. %element_736 = load i8, i8* %element_addr_736
  1366. %sub_element_736 = sub i8 %element_736, 1
  1367. store i8 %sub_element_736, i8* %element_addr_736
  1368. ; <ENTER_DEC_DATA 736
  1369.  
  1370. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4095
  1371. %dataptr_leave_4095 = load i32, i32* %dataptr_addr
  1372. %element_addr_leave_4095 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4095
  1373. %element_leave_4095 = load i8, i8* %element_addr_leave_4095
  1374. %compare_zero_leave_4095 = icmp ne i8 %element_leave_4095, 0
  1375. br i1 %compare_zero_leave_4095, label %loop_body_4095, label %post_loop_4095
  1376. post_loop_4095:
  1377. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4095
  1378.  
  1379. ; >ENTER_INC_PTR 738
  1380. %dataptr_738 = load i32, i32* %dataptr_addr
  1381. %inc_dataptr_738 = add i32 %dataptr_738, 1
  1382. store i32 %inc_dataptr_738, i32* %dataptr_addr
  1383. ; <ENTER_INC_PTR 738
  1384.  
  1385. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4096
  1386. %dataptr_enter_4096 = load i32, i32* %dataptr_addr
  1387. %element_addr_enter_4096 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4096
  1388. %element_enter_4096 = load i8, i8* %element_addr_enter_4096
  1389. %compare_zero_enter_4096 = icmp eq i8 %element_enter_4096, 0
  1390. br i1 %compare_zero_enter_4096, label %post_loop_4096, label %loop_body_4096
  1391. loop_body_4096:
  1392. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4096
  1393.  
  1394. ; >ENTER_DEC_DATA 740
  1395. %dataptr_740 = load i32, i32* %dataptr_addr
  1396. %element_addr_740 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_740
  1397. %element_740 = load i8, i8* %element_addr_740
  1398. %sub_element_740 = sub i8 %element_740, 1
  1399. store i8 %sub_element_740, i8* %element_addr_740
  1400. ; <ENTER_DEC_DATA 740
  1401.  
  1402. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4096
  1403. %dataptr_leave_4096 = load i32, i32* %dataptr_addr
  1404. %element_addr_leave_4096 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4096
  1405. %element_leave_4096 = load i8, i8* %element_addr_leave_4096
  1406. %compare_zero_leave_4096 = icmp ne i8 %element_leave_4096, 0
  1407. br i1 %compare_zero_leave_4096, label %loop_body_4096, label %post_loop_4096
  1408. post_loop_4096:
  1409. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4096
  1410.  
  1411. ; >ENTER_INC_PTR 742
  1412. %dataptr_742 = load i32, i32* %dataptr_addr
  1413. %inc_dataptr_742 = add i32 %dataptr_742, 3
  1414. store i32 %inc_dataptr_742, i32* %dataptr_addr
  1415. ; <ENTER_INC_PTR 742
  1416.  
  1417. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4097
  1418. %dataptr_leave_4097 = load i32, i32* %dataptr_addr
  1419. %element_addr_leave_4097 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4097
  1420. %element_leave_4097 = load i8, i8* %element_addr_leave_4097
  1421. %compare_zero_leave_4097 = icmp ne i8 %element_leave_4097, 0
  1422. br i1 %compare_zero_leave_4097, label %loop_body_4097, label %post_loop_4097
  1423. post_loop_4097:
  1424. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4097
  1425.  
  1426. ; >ENTER_DEC_PTR 747
  1427. %dataptr_747 = load i32, i32* %dataptr_addr
  1428. %dec_dataptr_747 = sub i32 %dataptr_747, 10
  1429. store i32 %dec_dataptr_747, i32* %dataptr_addr
  1430. ; <ENTER_DEC_PTR 747
  1431.  
  1432. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4098
  1433. %dataptr_enter_4098 = load i32, i32* %dataptr_addr
  1434. %element_addr_enter_4098 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4098
  1435. %element_enter_4098 = load i8, i8* %element_addr_enter_4098
  1436. %compare_zero_enter_4098 = icmp eq i8 %element_enter_4098, 0
  1437. br i1 %compare_zero_enter_4098, label %post_loop_4098, label %loop_body_4098
  1438. loop_body_4098:
  1439. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4098
  1440.  
  1441. ; >ENTER_DEC_PTR 758
  1442. %dataptr_758 = load i32, i32* %dataptr_addr
  1443. %dec_dataptr_758 = sub i32 %dataptr_758, 10
  1444. store i32 %dec_dataptr_758, i32* %dataptr_addr
  1445. ; <ENTER_DEC_PTR 758
  1446.  
  1447. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4098
  1448. %dataptr_leave_4098 = load i32, i32* %dataptr_addr
  1449. %element_addr_leave_4098 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4098
  1450. %element_leave_4098 = load i8, i8* %element_addr_leave_4098
  1451. %compare_zero_leave_4098 = icmp ne i8 %element_leave_4098, 0
  1452. br i1 %compare_zero_leave_4098, label %loop_body_4098, label %post_loop_4098
  1453. post_loop_4098:
  1454. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4098
  1455.  
  1456. ; >ENTER_INC_PTR 770
  1457. %dataptr_770 = load i32, i32* %dataptr_addr
  1458. %inc_dataptr_770 = add i32 %dataptr_770, 9
  1459. store i32 %inc_dataptr_770, i32* %dataptr_addr
  1460. ; <ENTER_INC_PTR 770
  1461.  
  1462. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4099
  1463. %dataptr_enter_4099 = load i32, i32* %dataptr_addr
  1464. %element_addr_enter_4099 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4099
  1465. %element_enter_4099 = load i8, i8* %element_addr_enter_4099
  1466. %compare_zero_enter_4099 = icmp eq i8 %element_enter_4099, 0
  1467. br i1 %compare_zero_enter_4099, label %post_loop_4099, label %loop_body_4099
  1468. loop_body_4099:
  1469. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4099
  1470.  
  1471. ; >ENTER_DEC_DATA 780
  1472. %dataptr_780 = load i32, i32* %dataptr_addr
  1473. %element_addr_780 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_780
  1474. %element_780 = load i8, i8* %element_addr_780
  1475. %sub_element_780 = sub i8 %element_780, 1
  1476. store i8 %sub_element_780, i8* %element_addr_780
  1477. ; <ENTER_DEC_DATA 780
  1478.  
  1479. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4099
  1480. %dataptr_leave_4099 = load i32, i32* %dataptr_addr
  1481. %element_addr_leave_4099 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4099
  1482. %element_leave_4099 = load i8, i8* %element_addr_leave_4099
  1483. %compare_zero_leave_4099 = icmp ne i8 %element_leave_4099, 0
  1484. br i1 %compare_zero_leave_4099, label %loop_body_4099, label %post_loop_4099
  1485. post_loop_4099:
  1486. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4099
  1487.  
  1488. ; >ENTER_INC_PTR 782
  1489. %dataptr_782 = load i32, i32* %dataptr_addr
  1490. %inc_dataptr_782 = add i32 %dataptr_782, 7
  1491. store i32 %inc_dataptr_782, i32* %dataptr_addr
  1492. ; <ENTER_INC_PTR 782
  1493.  
  1494. ; >ENTER_INC_DATA 789
  1495. %dataptr_789 = load i32, i32* %dataptr_addr
  1496. %element_addr_789 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_789
  1497. %element_789 = load i8, i8* %element_addr_789
  1498. %inc_element_789 = add i8 %element_789, 1
  1499. store i8 %inc_element_789, i8* %element_addr_789
  1500. ; <ENTER_INC_DATA 789
  1501.  
  1502. ; >ENTER_DEC_PTR 790
  1503. %dataptr_790 = load i32, i32* %dataptr_addr
  1504. %dec_dataptr_790 = sub i32 %dataptr_790, 8
  1505. store i32 %dec_dataptr_790, i32* %dataptr_addr
  1506. ; <ENTER_DEC_PTR 790
  1507.  
  1508. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4100
  1509. %dataptr_enter_4100 = load i32, i32* %dataptr_addr
  1510. %element_addr_enter_4100 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4100
  1511. %element_enter_4100 = load i8, i8* %element_addr_enter_4100
  1512. %compare_zero_enter_4100 = icmp eq i8 %element_enter_4100, 0
  1513. br i1 %compare_zero_enter_4100, label %post_loop_4100, label %loop_body_4100
  1514. loop_body_4100:
  1515. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4100
  1516.  
  1517. ; >ENTER_INC_DATA 799
  1518. %dataptr_799 = load i32, i32* %dataptr_addr
  1519. %element_addr_799 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_799
  1520. %element_799 = load i8, i8* %element_addr_799
  1521. %inc_element_799 = add i8 %element_799, 1
  1522. store i8 %inc_element_799, i8* %element_addr_799
  1523. ; <ENTER_INC_DATA 799
  1524.  
  1525. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4100
  1526. %dataptr_leave_4100 = load i32, i32* %dataptr_addr
  1527. %element_addr_leave_4100 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4100
  1528. %element_leave_4100 = load i8, i8* %element_addr_leave_4100
  1529. %compare_zero_leave_4100 = icmp ne i8 %element_leave_4100, 0
  1530. br i1 %compare_zero_leave_4100, label %loop_body_4100, label %post_loop_4100
  1531. post_loop_4100:
  1532. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4100
  1533.  
  1534. ; >ENTER_INC_DATA 801
  1535. %dataptr_801 = load i32, i32* %dataptr_addr
  1536. %element_addr_801 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_801
  1537. %element_801 = load i8, i8* %element_addr_801
  1538. %inc_element_801 = add i8 %element_801, 1
  1539. store i8 %inc_element_801, i8* %element_addr_801
  1540. ; <ENTER_INC_DATA 801
  1541.  
  1542. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4155
  1543. %dataptr_enter_4155 = load i32, i32* %dataptr_addr
  1544. %element_addr_enter_4155 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4155
  1545. %element_enter_4155 = load i8, i8* %element_addr_enter_4155
  1546. %compare_zero_enter_4155 = icmp eq i8 %element_enter_4155, 0
  1547. br i1 %compare_zero_enter_4155, label %post_loop_4155, label %loop_body_4155
  1548. loop_body_4155:
  1549. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4155
  1550.  
  1551. ; >ENTER_DEC_DATA 805
  1552. %dataptr_805 = load i32, i32* %dataptr_addr
  1553. %element_addr_805 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_805
  1554. %element_805 = load i8, i8* %element_addr_805
  1555. %sub_element_805 = sub i8 %element_805, 1
  1556. store i8 %sub_element_805, i8* %element_addr_805
  1557. ; <ENTER_DEC_DATA 805
  1558.  
  1559. ; >ENTER_INC_PTR 806
  1560. %dataptr_806 = load i32, i32* %dataptr_addr
  1561. %inc_dataptr_806 = add i32 %dataptr_806, 2
  1562. store i32 %inc_dataptr_806, i32* %dataptr_addr
  1563. ; <ENTER_INC_PTR 806
  1564.  
  1565. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4102
  1566. %dataptr_enter_4102 = load i32, i32* %dataptr_addr
  1567. %element_addr_enter_4102 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4102
  1568. %element_enter_4102 = load i8, i8* %element_addr_enter_4102
  1569. %compare_zero_enter_4102 = icmp eq i8 %element_enter_4102, 0
  1570. br i1 %compare_zero_enter_4102, label %post_loop_4102, label %loop_body_4102
  1571. loop_body_4102:
  1572. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4102
  1573.  
  1574. ; >ENTER_INC_PTR 810
  1575. %dataptr_810 = load i32, i32* %dataptr_addr
  1576. %inc_dataptr_810 = add i32 %dataptr_810, 6
  1577. store i32 %inc_dataptr_810, i32* %dataptr_addr
  1578. ; <ENTER_INC_PTR 810
  1579.  
  1580. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4101
  1581. %dataptr_enter_4101 = load i32, i32* %dataptr_addr
  1582. %element_addr_enter_4101 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4101
  1583. %element_enter_4101 = load i8, i8* %element_addr_enter_4101
  1584. %compare_zero_enter_4101 = icmp eq i8 %element_enter_4101, 0
  1585. br i1 %compare_zero_enter_4101, label %post_loop_4101, label %loop_body_4101
  1586. loop_body_4101:
  1587. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4101
  1588.  
  1589. ; >ENTER_DEC_DATA 817
  1590. %dataptr_817 = load i32, i32* %dataptr_addr
  1591. %element_addr_817 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_817
  1592. %element_817 = load i8, i8* %element_addr_817
  1593. %sub_element_817 = sub i8 %element_817, 1
  1594. store i8 %sub_element_817, i8* %element_addr_817
  1595. ; <ENTER_DEC_DATA 817
  1596.  
  1597. ; >ENTER_INC_PTR 818
  1598. %dataptr_818 = load i32, i32* %dataptr_addr
  1599. %inc_dataptr_818 = add i32 %dataptr_818, 1
  1600. store i32 %inc_dataptr_818, i32* %dataptr_addr
  1601. ; <ENTER_INC_PTR 818
  1602.  
  1603. ; >ENTER_INC_DATA 819
  1604. %dataptr_819 = load i32, i32* %dataptr_addr
  1605. %element_addr_819 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_819
  1606. %element_819 = load i8, i8* %element_addr_819
  1607. %inc_element_819 = add i8 %element_819, 2
  1608. store i8 %inc_element_819, i8* %element_addr_819
  1609. ; <ENTER_INC_DATA 819
  1610.  
  1611. ; >ENTER_DEC_PTR 821
  1612. %dataptr_821 = load i32, i32* %dataptr_addr
  1613. %dec_dataptr_821 = sub i32 %dataptr_821, 1
  1614. store i32 %dec_dataptr_821, i32* %dataptr_addr
  1615. ; <ENTER_DEC_PTR 821
  1616.  
  1617. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4101
  1618. %dataptr_leave_4101 = load i32, i32* %dataptr_addr
  1619. %element_addr_leave_4101 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4101
  1620. %element_leave_4101 = load i8, i8* %element_addr_leave_4101
  1621. %compare_zero_leave_4101 = icmp ne i8 %element_leave_4101, 0
  1622. br i1 %compare_zero_leave_4101, label %loop_body_4101, label %post_loop_4101
  1623. post_loop_4101:
  1624. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4101
  1625.  
  1626. ; >ENTER_INC_PTR 823
  1627. %dataptr_823 = load i32, i32* %dataptr_addr
  1628. %inc_dataptr_823 = add i32 %dataptr_823, 4
  1629. store i32 %inc_dataptr_823, i32* %dataptr_addr
  1630. ; <ENTER_INC_PTR 823
  1631.  
  1632. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4102
  1633. %dataptr_leave_4102 = load i32, i32* %dataptr_addr
  1634. %element_addr_leave_4102 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4102
  1635. %element_leave_4102 = load i8, i8* %element_addr_leave_4102
  1636. %compare_zero_leave_4102 = icmp ne i8 %element_leave_4102, 0
  1637. br i1 %compare_zero_leave_4102, label %loop_body_4102, label %post_loop_4102
  1638. post_loop_4102:
  1639. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4102
  1640.  
  1641. ; >ENTER_DEC_PTR 828
  1642. %dataptr_828 = load i32, i32* %dataptr_addr
  1643. %dec_dataptr_828 = sub i32 %dataptr_828, 10
  1644. store i32 %dec_dataptr_828, i32* %dataptr_addr
  1645. ; <ENTER_DEC_PTR 828
  1646.  
  1647. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4106
  1648. %dataptr_enter_4106 = load i32, i32* %dataptr_addr
  1649. %element_addr_enter_4106 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4106
  1650. %element_enter_4106 = load i8, i8* %element_addr_enter_4106
  1651. %compare_zero_enter_4106 = icmp eq i8 %element_enter_4106, 0
  1652. br i1 %compare_zero_enter_4106, label %post_loop_4106, label %loop_body_4106
  1653. loop_body_4106:
  1654. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4106
  1655.  
  1656. ; >ENTER_INC_PTR 840
  1657. %dataptr_840 = load i32, i32* %dataptr_addr
  1658. %inc_dataptr_840 = add i32 %dataptr_840, 8
  1659. store i32 %inc_dataptr_840, i32* %dataptr_addr
  1660. ; <ENTER_INC_PTR 840
  1661.  
  1662. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4103
  1663. %dataptr_enter_4103 = load i32, i32* %dataptr_addr
  1664. %element_addr_enter_4103 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4103
  1665. %element_enter_4103 = load i8, i8* %element_addr_enter_4103
  1666. %compare_zero_enter_4103 = icmp eq i8 %element_enter_4103, 0
  1667. br i1 %compare_zero_enter_4103, label %post_loop_4103, label %loop_body_4103
  1668. loop_body_4103:
  1669. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4103
  1670.  
  1671. ; >ENTER_DEC_DATA 849
  1672. %dataptr_849 = load i32, i32* %dataptr_addr
  1673. %element_addr_849 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_849
  1674. %element_849 = load i8, i8* %element_addr_849
  1675. %sub_element_849 = sub i8 %element_849, 1
  1676. store i8 %sub_element_849, i8* %element_addr_849
  1677. ; <ENTER_DEC_DATA 849
  1678.  
  1679. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4103
  1680. %dataptr_leave_4103 = load i32, i32* %dataptr_addr
  1681. %element_addr_leave_4103 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4103
  1682. %element_leave_4103 = load i8, i8* %element_addr_leave_4103
  1683. %compare_zero_leave_4103 = icmp ne i8 %element_leave_4103, 0
  1684. br i1 %compare_zero_leave_4103, label %loop_body_4103, label %post_loop_4103
  1685. post_loop_4103:
  1686. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4103
  1687.  
  1688. ; >ENTER_INC_PTR 851
  1689. %dataptr_851 = load i32, i32* %dataptr_addr
  1690. %inc_dataptr_851 = add i32 %dataptr_851, 1
  1691. store i32 %inc_dataptr_851, i32* %dataptr_addr
  1692. ; <ENTER_INC_PTR 851
  1693.  
  1694. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4104
  1695. %dataptr_enter_4104 = load i32, i32* %dataptr_addr
  1696. %element_addr_enter_4104 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4104
  1697. %element_enter_4104 = load i8, i8* %element_addr_enter_4104
  1698. %compare_zero_enter_4104 = icmp eq i8 %element_enter_4104, 0
  1699. br i1 %compare_zero_enter_4104, label %post_loop_4104, label %loop_body_4104
  1700. loop_body_4104:
  1701. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4104
  1702.  
  1703. ; >ENTER_DEC_DATA 853
  1704. %dataptr_853 = load i32, i32* %dataptr_addr
  1705. %element_addr_853 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_853
  1706. %element_853 = load i8, i8* %element_addr_853
  1707. %sub_element_853 = sub i8 %element_853, 1
  1708. store i8 %sub_element_853, i8* %element_addr_853
  1709. ; <ENTER_DEC_DATA 853
  1710.  
  1711. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4104
  1712. %dataptr_leave_4104 = load i32, i32* %dataptr_addr
  1713. %element_addr_leave_4104 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4104
  1714. %element_leave_4104 = load i8, i8* %element_addr_leave_4104
  1715. %compare_zero_leave_4104 = icmp ne i8 %element_leave_4104, 0
  1716. br i1 %compare_zero_leave_4104, label %loop_body_4104, label %post_loop_4104
  1717. post_loop_4104:
  1718. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4104
  1719.  
  1720. ; >ENTER_DEC_PTR 856
  1721. %dataptr_856 = load i32, i32* %dataptr_addr
  1722. %dec_dataptr_856 = sub i32 %dataptr_856, 4
  1723. store i32 %dec_dataptr_856, i32* %dataptr_addr
  1724. ; <ENTER_DEC_PTR 856
  1725.  
  1726. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4105
  1727. %dataptr_enter_4105 = load i32, i32* %dataptr_addr
  1728. %element_addr_enter_4105 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4105
  1729. %element_enter_4105 = load i8, i8* %element_addr_enter_4105
  1730. %compare_zero_enter_4105 = icmp eq i8 %element_enter_4105, 0
  1731. br i1 %compare_zero_enter_4105, label %post_loop_4105, label %loop_body_4105
  1732. loop_body_4105:
  1733. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4105
  1734.  
  1735. ; >ENTER_DEC_DATA 861
  1736. %dataptr_861 = load i32, i32* %dataptr_addr
  1737. %element_addr_861 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_861
  1738. %element_861 = load i8, i8* %element_addr_861
  1739. %sub_element_861 = sub i8 %element_861, 1
  1740. store i8 %sub_element_861, i8* %element_addr_861
  1741. ; <ENTER_DEC_DATA 861
  1742.  
  1743. ; >ENTER_INC_PTR 862
  1744. %dataptr_862 = load i32, i32* %dataptr_addr
  1745. %inc_dataptr_862 = add i32 %dataptr_862, 3
  1746. store i32 %inc_dataptr_862, i32* %dataptr_addr
  1747. ; <ENTER_INC_PTR 862
  1748.  
  1749. ; >ENTER_INC_DATA 865
  1750. %dataptr_865 = load i32, i32* %dataptr_addr
  1751. %element_addr_865 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_865
  1752. %element_865 = load i8, i8* %element_addr_865
  1753. %inc_element_865 = add i8 %element_865, 2
  1754. store i8 %inc_element_865, i8* %element_addr_865
  1755. ; <ENTER_INC_DATA 865
  1756.  
  1757. ; >ENTER_DEC_PTR 867
  1758. %dataptr_867 = load i32, i32* %dataptr_addr
  1759. %dec_dataptr_867 = sub i32 %dataptr_867, 3
  1760. store i32 %dec_dataptr_867, i32* %dataptr_addr
  1761. ; <ENTER_DEC_PTR 867
  1762.  
  1763. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4105
  1764. %dataptr_leave_4105 = load i32, i32* %dataptr_addr
  1765. %element_addr_leave_4105 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4105
  1766. %element_leave_4105 = load i8, i8* %element_addr_leave_4105
  1767. %compare_zero_leave_4105 = icmp ne i8 %element_leave_4105, 0
  1768. br i1 %compare_zero_leave_4105, label %loop_body_4105, label %post_loop_4105
  1769. post_loop_4105:
  1770. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4105
  1771.  
  1772. ; >ENTER_DEC_PTR 871
  1773. %dataptr_871 = load i32, i32* %dataptr_addr
  1774. %dec_dataptr_871 = sub i32 %dataptr_871, 15
  1775. store i32 %dec_dataptr_871, i32* %dataptr_addr
  1776. ; <ENTER_DEC_PTR 871
  1777.  
  1778. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4106
  1779. %dataptr_leave_4106 = load i32, i32* %dataptr_addr
  1780. %element_addr_leave_4106 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4106
  1781. %element_leave_4106 = load i8, i8* %element_addr_leave_4106
  1782. %compare_zero_leave_4106 = icmp ne i8 %element_leave_4106, 0
  1783. br i1 %compare_zero_leave_4106, label %loop_body_4106, label %post_loop_4106
  1784. post_loop_4106:
  1785. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4106
  1786.  
  1787. ; >ENTER_INC_PTR 887
  1788. %dataptr_887 = load i32, i32* %dataptr_addr
  1789. %inc_dataptr_887 = add i32 %dataptr_887, 10
  1790. store i32 %inc_dataptr_887, i32* %dataptr_addr
  1791. ; <ENTER_INC_PTR 887
  1792.  
  1793. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4118
  1794. %dataptr_enter_4118 = load i32, i32* %dataptr_addr
  1795. %element_addr_enter_4118 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4118
  1796. %element_enter_4118 = load i8, i8* %element_addr_enter_4118
  1797. %compare_zero_enter_4118 = icmp eq i8 %element_enter_4118, 0
  1798. br i1 %compare_zero_enter_4118, label %post_loop_4118, label %loop_body_4118
  1799. loop_body_4118:
  1800. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4118
  1801.  
  1802. ; >ENTER_INC_PTR 899
  1803. %dataptr_899 = load i32, i32* %dataptr_addr
  1804. %inc_dataptr_899 = add i32 %dataptr_899, 8
  1805. store i32 %inc_dataptr_899, i32* %dataptr_addr
  1806. ; <ENTER_INC_PTR 899
  1807.  
  1808. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4117
  1809. %dataptr_enter_4117 = load i32, i32* %dataptr_addr
  1810. %element_addr_enter_4117 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4117
  1811. %element_enter_4117 = load i8, i8* %element_addr_enter_4117
  1812. %compare_zero_enter_4117 = icmp eq i8 %element_enter_4117, 0
  1813. br i1 %compare_zero_enter_4117, label %post_loop_4117, label %loop_body_4117
  1814. loop_body_4117:
  1815. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4117
  1816.  
  1817. ; >ENTER_DEC_DATA 908
  1818. %dataptr_908 = load i32, i32* %dataptr_addr
  1819. %element_addr_908 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_908
  1820. %element_908 = load i8, i8* %element_addr_908
  1821. %sub_element_908 = sub i8 %element_908, 1
  1822. store i8 %sub_element_908, i8* %element_addr_908
  1823. ; <ENTER_DEC_DATA 908
  1824.  
  1825. ; >ENTER_INC_PTR 909
  1826. %dataptr_909 = load i32, i32* %dataptr_addr
  1827. %inc_dataptr_909 = add i32 %dataptr_909, 1
  1828. store i32 %inc_dataptr_909, i32* %dataptr_addr
  1829. ; <ENTER_INC_PTR 909
  1830.  
  1831. ; >ENTER_INC_DATA 910
  1832. %dataptr_910 = load i32, i32* %dataptr_addr
  1833. %element_addr_910 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_910
  1834. %element_910 = load i8, i8* %element_addr_910
  1835. %inc_element_910 = add i8 %element_910, 1
  1836. store i8 %inc_element_910, i8* %element_addr_910
  1837. ; <ENTER_INC_DATA 910
  1838.  
  1839. ; >ENTER_DEC_PTR 911
  1840. %dataptr_911 = load i32, i32* %dataptr_addr
  1841. %dec_dataptr_911 = sub i32 %dataptr_911, 1
  1842. store i32 %dec_dataptr_911, i32* %dataptr_addr
  1843. ; <ENTER_DEC_PTR 911
  1844.  
  1845. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4116
  1846. %dataptr_enter_4116 = load i32, i32* %dataptr_addr
  1847. %element_addr_enter_4116 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4116
  1848. %element_enter_4116 = load i8, i8* %element_addr_enter_4116
  1849. %compare_zero_enter_4116 = icmp eq i8 %element_enter_4116, 0
  1850. br i1 %compare_zero_enter_4116, label %post_loop_4116, label %loop_body_4116
  1851. loop_body_4116:
  1852. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4116
  1853.  
  1854. ; >ENTER_DEC_DATA 913
  1855. %dataptr_913 = load i32, i32* %dataptr_addr
  1856. %element_addr_913 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_913
  1857. %element_913 = load i8, i8* %element_addr_913
  1858. %sub_element_913 = sub i8 %element_913, 1
  1859. store i8 %sub_element_913, i8* %element_addr_913
  1860. ; <ENTER_DEC_DATA 913
  1861.  
  1862. ; >ENTER_INC_PTR 914
  1863. %dataptr_914 = load i32, i32* %dataptr_addr
  1864. %inc_dataptr_914 = add i32 %dataptr_914, 1
  1865. store i32 %inc_dataptr_914, i32* %dataptr_addr
  1866. ; <ENTER_INC_PTR 914
  1867.  
  1868. ; >ENTER_INC_DATA 915
  1869. %dataptr_915 = load i32, i32* %dataptr_addr
  1870. %element_addr_915 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_915
  1871. %element_915 = load i8, i8* %element_addr_915
  1872. %inc_element_915 = add i8 %element_915, 1
  1873. store i8 %inc_element_915, i8* %element_addr_915
  1874. ; <ENTER_INC_DATA 915
  1875.  
  1876. ; >ENTER_DEC_PTR 916
  1877. %dataptr_916 = load i32, i32* %dataptr_addr
  1878. %dec_dataptr_916 = sub i32 %dataptr_916, 1
  1879. store i32 %dec_dataptr_916, i32* %dataptr_addr
  1880. ; <ENTER_DEC_PTR 916
  1881.  
  1882. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4115
  1883. %dataptr_enter_4115 = load i32, i32* %dataptr_addr
  1884. %element_addr_enter_4115 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4115
  1885. %element_enter_4115 = load i8, i8* %element_addr_enter_4115
  1886. %compare_zero_enter_4115 = icmp eq i8 %element_enter_4115, 0
  1887. br i1 %compare_zero_enter_4115, label %post_loop_4115, label %loop_body_4115
  1888. loop_body_4115:
  1889. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4115
  1890.  
  1891. ; >ENTER_DEC_DATA 918
  1892. %dataptr_918 = load i32, i32* %dataptr_addr
  1893. %element_addr_918 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_918
  1894. %element_918 = load i8, i8* %element_addr_918
  1895. %sub_element_918 = sub i8 %element_918, 1
  1896. store i8 %sub_element_918, i8* %element_addr_918
  1897. ; <ENTER_DEC_DATA 918
  1898.  
  1899. ; >ENTER_INC_PTR 919
  1900. %dataptr_919 = load i32, i32* %dataptr_addr
  1901. %inc_dataptr_919 = add i32 %dataptr_919, 1
  1902. store i32 %inc_dataptr_919, i32* %dataptr_addr
  1903. ; <ENTER_INC_PTR 919
  1904.  
  1905. ; >ENTER_INC_DATA 920
  1906. %dataptr_920 = load i32, i32* %dataptr_addr
  1907. %element_addr_920 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_920
  1908. %element_920 = load i8, i8* %element_addr_920
  1909. %inc_element_920 = add i8 %element_920, 1
  1910. store i8 %inc_element_920, i8* %element_addr_920
  1911. ; <ENTER_INC_DATA 920
  1912.  
  1913. ; >ENTER_DEC_PTR 921
  1914. %dataptr_921 = load i32, i32* %dataptr_addr
  1915. %dec_dataptr_921 = sub i32 %dataptr_921, 1
  1916. store i32 %dec_dataptr_921, i32* %dataptr_addr
  1917. ; <ENTER_DEC_PTR 921
  1918.  
  1919. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4114
  1920. %dataptr_enter_4114 = load i32, i32* %dataptr_addr
  1921. %element_addr_enter_4114 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4114
  1922. %element_enter_4114 = load i8, i8* %element_addr_enter_4114
  1923. %compare_zero_enter_4114 = icmp eq i8 %element_enter_4114, 0
  1924. br i1 %compare_zero_enter_4114, label %post_loop_4114, label %loop_body_4114
  1925. loop_body_4114:
  1926. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4114
  1927.  
  1928. ; >ENTER_DEC_DATA 923
  1929. %dataptr_923 = load i32, i32* %dataptr_addr
  1930. %element_addr_923 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_923
  1931. %element_923 = load i8, i8* %element_addr_923
  1932. %sub_element_923 = sub i8 %element_923, 1
  1933. store i8 %sub_element_923, i8* %element_addr_923
  1934. ; <ENTER_DEC_DATA 923
  1935.  
  1936. ; >ENTER_INC_PTR 924
  1937. %dataptr_924 = load i32, i32* %dataptr_addr
  1938. %inc_dataptr_924 = add i32 %dataptr_924, 1
  1939. store i32 %inc_dataptr_924, i32* %dataptr_addr
  1940. ; <ENTER_INC_PTR 924
  1941.  
  1942. ; >ENTER_INC_DATA 925
  1943. %dataptr_925 = load i32, i32* %dataptr_addr
  1944. %element_addr_925 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_925
  1945. %element_925 = load i8, i8* %element_addr_925
  1946. %inc_element_925 = add i8 %element_925, 1
  1947. store i8 %inc_element_925, i8* %element_addr_925
  1948. ; <ENTER_INC_DATA 925
  1949.  
  1950. ; >ENTER_DEC_PTR 926
  1951. %dataptr_926 = load i32, i32* %dataptr_addr
  1952. %dec_dataptr_926 = sub i32 %dataptr_926, 1
  1953. store i32 %dec_dataptr_926, i32* %dataptr_addr
  1954. ; <ENTER_DEC_PTR 926
  1955.  
  1956. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4113
  1957. %dataptr_enter_4113 = load i32, i32* %dataptr_addr
  1958. %element_addr_enter_4113 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4113
  1959. %element_enter_4113 = load i8, i8* %element_addr_enter_4113
  1960. %compare_zero_enter_4113 = icmp eq i8 %element_enter_4113, 0
  1961. br i1 %compare_zero_enter_4113, label %post_loop_4113, label %loop_body_4113
  1962. loop_body_4113:
  1963. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4113
  1964.  
  1965. ; >ENTER_DEC_DATA 928
  1966. %dataptr_928 = load i32, i32* %dataptr_addr
  1967. %element_addr_928 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_928
  1968. %element_928 = load i8, i8* %element_addr_928
  1969. %sub_element_928 = sub i8 %element_928, 1
  1970. store i8 %sub_element_928, i8* %element_addr_928
  1971. ; <ENTER_DEC_DATA 928
  1972.  
  1973. ; >ENTER_INC_PTR 929
  1974. %dataptr_929 = load i32, i32* %dataptr_addr
  1975. %inc_dataptr_929 = add i32 %dataptr_929, 1
  1976. store i32 %inc_dataptr_929, i32* %dataptr_addr
  1977. ; <ENTER_INC_PTR 929
  1978.  
  1979. ; >ENTER_INC_DATA 930
  1980. %dataptr_930 = load i32, i32* %dataptr_addr
  1981. %element_addr_930 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_930
  1982. %element_930 = load i8, i8* %element_addr_930
  1983. %inc_element_930 = add i8 %element_930, 1
  1984. store i8 %inc_element_930, i8* %element_addr_930
  1985. ; <ENTER_INC_DATA 930
  1986.  
  1987. ; >ENTER_DEC_PTR 931
  1988. %dataptr_931 = load i32, i32* %dataptr_addr
  1989. %dec_dataptr_931 = sub i32 %dataptr_931, 1
  1990. store i32 %dec_dataptr_931, i32* %dataptr_addr
  1991. ; <ENTER_DEC_PTR 931
  1992.  
  1993. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4112
  1994. %dataptr_enter_4112 = load i32, i32* %dataptr_addr
  1995. %element_addr_enter_4112 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4112
  1996. %element_enter_4112 = load i8, i8* %element_addr_enter_4112
  1997. %compare_zero_enter_4112 = icmp eq i8 %element_enter_4112, 0
  1998. br i1 %compare_zero_enter_4112, label %post_loop_4112, label %loop_body_4112
  1999. loop_body_4112:
  2000. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4112
  2001.  
  2002. ; >ENTER_DEC_DATA 933
  2003. %dataptr_933 = load i32, i32* %dataptr_addr
  2004. %element_addr_933 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_933
  2005. %element_933 = load i8, i8* %element_addr_933
  2006. %sub_element_933 = sub i8 %element_933, 1
  2007. store i8 %sub_element_933, i8* %element_addr_933
  2008. ; <ENTER_DEC_DATA 933
  2009.  
  2010. ; >ENTER_INC_PTR 934
  2011. %dataptr_934 = load i32, i32* %dataptr_addr
  2012. %inc_dataptr_934 = add i32 %dataptr_934, 1
  2013. store i32 %inc_dataptr_934, i32* %dataptr_addr
  2014. ; <ENTER_INC_PTR 934
  2015.  
  2016. ; >ENTER_INC_DATA 935
  2017. %dataptr_935 = load i32, i32* %dataptr_addr
  2018. %element_addr_935 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_935
  2019. %element_935 = load i8, i8* %element_addr_935
  2020. %inc_element_935 = add i8 %element_935, 1
  2021. store i8 %inc_element_935, i8* %element_addr_935
  2022. ; <ENTER_INC_DATA 935
  2023.  
  2024. ; >ENTER_DEC_PTR 936
  2025. %dataptr_936 = load i32, i32* %dataptr_addr
  2026. %dec_dataptr_936 = sub i32 %dataptr_936, 1
  2027. store i32 %dec_dataptr_936, i32* %dataptr_addr
  2028. ; <ENTER_DEC_PTR 936
  2029.  
  2030. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4111
  2031. %dataptr_enter_4111 = load i32, i32* %dataptr_addr
  2032. %element_addr_enter_4111 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4111
  2033. %element_enter_4111 = load i8, i8* %element_addr_enter_4111
  2034. %compare_zero_enter_4111 = icmp eq i8 %element_enter_4111, 0
  2035. br i1 %compare_zero_enter_4111, label %post_loop_4111, label %loop_body_4111
  2036. loop_body_4111:
  2037. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4111
  2038.  
  2039. ; >ENTER_DEC_DATA 938
  2040. %dataptr_938 = load i32, i32* %dataptr_addr
  2041. %element_addr_938 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_938
  2042. %element_938 = load i8, i8* %element_addr_938
  2043. %sub_element_938 = sub i8 %element_938, 1
  2044. store i8 %sub_element_938, i8* %element_addr_938
  2045. ; <ENTER_DEC_DATA 938
  2046.  
  2047. ; >ENTER_INC_PTR 939
  2048. %dataptr_939 = load i32, i32* %dataptr_addr
  2049. %inc_dataptr_939 = add i32 %dataptr_939, 1
  2050. store i32 %inc_dataptr_939, i32* %dataptr_addr
  2051. ; <ENTER_INC_PTR 939
  2052.  
  2053. ; >ENTER_INC_DATA 940
  2054. %dataptr_940 = load i32, i32* %dataptr_addr
  2055. %element_addr_940 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_940
  2056. %element_940 = load i8, i8* %element_addr_940
  2057. %inc_element_940 = add i8 %element_940, 1
  2058. store i8 %inc_element_940, i8* %element_addr_940
  2059. ; <ENTER_INC_DATA 940
  2060.  
  2061. ; >ENTER_DEC_PTR 941
  2062. %dataptr_941 = load i32, i32* %dataptr_addr
  2063. %dec_dataptr_941 = sub i32 %dataptr_941, 1
  2064. store i32 %dec_dataptr_941, i32* %dataptr_addr
  2065. ; <ENTER_DEC_PTR 941
  2066.  
  2067. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4110
  2068. %dataptr_enter_4110 = load i32, i32* %dataptr_addr
  2069. %element_addr_enter_4110 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4110
  2070. %element_enter_4110 = load i8, i8* %element_addr_enter_4110
  2071. %compare_zero_enter_4110 = icmp eq i8 %element_enter_4110, 0
  2072. br i1 %compare_zero_enter_4110, label %post_loop_4110, label %loop_body_4110
  2073. loop_body_4110:
  2074. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4110
  2075.  
  2076. ; >ENTER_DEC_DATA 943
  2077. %dataptr_943 = load i32, i32* %dataptr_addr
  2078. %element_addr_943 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_943
  2079. %element_943 = load i8, i8* %element_addr_943
  2080. %sub_element_943 = sub i8 %element_943, 1
  2081. store i8 %sub_element_943, i8* %element_addr_943
  2082. ; <ENTER_DEC_DATA 943
  2083.  
  2084. ; >ENTER_INC_PTR 944
  2085. %dataptr_944 = load i32, i32* %dataptr_addr
  2086. %inc_dataptr_944 = add i32 %dataptr_944, 1
  2087. store i32 %inc_dataptr_944, i32* %dataptr_addr
  2088. ; <ENTER_INC_PTR 944
  2089.  
  2090. ; >ENTER_INC_DATA 945
  2091. %dataptr_945 = load i32, i32* %dataptr_addr
  2092. %element_addr_945 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_945
  2093. %element_945 = load i8, i8* %element_addr_945
  2094. %inc_element_945 = add i8 %element_945, 1
  2095. store i8 %inc_element_945, i8* %element_addr_945
  2096. ; <ENTER_INC_DATA 945
  2097.  
  2098. ; >ENTER_DEC_PTR 946
  2099. %dataptr_946 = load i32, i32* %dataptr_addr
  2100. %dec_dataptr_946 = sub i32 %dataptr_946, 1
  2101. store i32 %dec_dataptr_946, i32* %dataptr_addr
  2102. ; <ENTER_DEC_PTR 946
  2103.  
  2104. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4109
  2105. %dataptr_enter_4109 = load i32, i32* %dataptr_addr
  2106. %element_addr_enter_4109 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4109
  2107. %element_enter_4109 = load i8, i8* %element_addr_enter_4109
  2108. %compare_zero_enter_4109 = icmp eq i8 %element_enter_4109, 0
  2109. br i1 %compare_zero_enter_4109, label %post_loop_4109, label %loop_body_4109
  2110. loop_body_4109:
  2111. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4109
  2112.  
  2113. ; >ENTER_DEC_DATA 948
  2114. %dataptr_948 = load i32, i32* %dataptr_addr
  2115. %element_addr_948 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_948
  2116. %element_948 = load i8, i8* %element_addr_948
  2117. %sub_element_948 = sub i8 %element_948, 1
  2118. store i8 %sub_element_948, i8* %element_addr_948
  2119. ; <ENTER_DEC_DATA 948
  2120.  
  2121. ; >ENTER_INC_PTR 949
  2122. %dataptr_949 = load i32, i32* %dataptr_addr
  2123. %inc_dataptr_949 = add i32 %dataptr_949, 1
  2124. store i32 %inc_dataptr_949, i32* %dataptr_addr
  2125. ; <ENTER_INC_PTR 949
  2126.  
  2127. ; >ENTER_INC_DATA 950
  2128. %dataptr_950 = load i32, i32* %dataptr_addr
  2129. %element_addr_950 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_950
  2130. %element_950 = load i8, i8* %element_addr_950
  2131. %inc_element_950 = add i8 %element_950, 1
  2132. store i8 %inc_element_950, i8* %element_addr_950
  2133. ; <ENTER_INC_DATA 950
  2134.  
  2135. ; >ENTER_DEC_PTR 951
  2136. %dataptr_951 = load i32, i32* %dataptr_addr
  2137. %dec_dataptr_951 = sub i32 %dataptr_951, 1
  2138. store i32 %dec_dataptr_951, i32* %dataptr_addr
  2139. ; <ENTER_DEC_PTR 951
  2140.  
  2141. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4108
  2142. %dataptr_enter_4108 = load i32, i32* %dataptr_addr
  2143. %element_addr_enter_4108 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4108
  2144. %element_enter_4108 = load i8, i8* %element_addr_enter_4108
  2145. %compare_zero_enter_4108 = icmp eq i8 %element_enter_4108, 0
  2146. br i1 %compare_zero_enter_4108, label %post_loop_4108, label %loop_body_4108
  2147. loop_body_4108:
  2148. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4108
  2149.  
  2150. ; >ENTER_DEC_DATA 954
  2151. %dataptr_954 = load i32, i32* %dataptr_addr
  2152. %element_addr_954 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_954
  2153. %element_954 = load i8, i8* %element_addr_954
  2154. %sub_element_954 = sub i8 %element_954, 1
  2155. store i8 %sub_element_954, i8* %element_addr_954
  2156. ; <ENTER_DEC_DATA 954
  2157.  
  2158. ; >ENTER_INC_PTR 955
  2159. %dataptr_955 = load i32, i32* %dataptr_addr
  2160. %inc_dataptr_955 = add i32 %dataptr_955, 1
  2161. store i32 %inc_dataptr_955, i32* %dataptr_addr
  2162. ; <ENTER_INC_PTR 955
  2163.  
  2164. ; >ENTER_DEC_DATA 956
  2165. %dataptr_956 = load i32, i32* %dataptr_addr
  2166. %element_addr_956 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_956
  2167. %element_956 = load i8, i8* %element_addr_956
  2168. %sub_element_956 = sub i8 %element_956, 9
  2169. store i8 %sub_element_956, i8* %element_addr_956
  2170. ; <ENTER_DEC_DATA 956
  2171.  
  2172. ; >ENTER_INC_PTR 965
  2173. %dataptr_965 = load i32, i32* %dataptr_addr
  2174. %inc_dataptr_965 = add i32 %dataptr_965, 9
  2175. store i32 %inc_dataptr_965, i32* %dataptr_addr
  2176. ; <ENTER_INC_PTR 965
  2177.  
  2178. ; >ENTER_INC_DATA 974
  2179. %dataptr_974 = load i32, i32* %dataptr_addr
  2180. %element_addr_974 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_974
  2181. %element_974 = load i8, i8* %element_addr_974
  2182. %inc_element_974 = add i8 %element_974, 1
  2183. store i8 %inc_element_974, i8* %element_addr_974
  2184. ; <ENTER_INC_DATA 974
  2185.  
  2186. ; >ENTER_DEC_PTR 975
  2187. %dataptr_975 = load i32, i32* %dataptr_addr
  2188. %dec_dataptr_975 = sub i32 %dataptr_975, 10
  2189. store i32 %dec_dataptr_975, i32* %dataptr_addr
  2190. ; <ENTER_DEC_PTR 975
  2191.  
  2192. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4107
  2193. %dataptr_enter_4107 = load i32, i32* %dataptr_addr
  2194. %element_addr_enter_4107 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4107
  2195. %element_enter_4107 = load i8, i8* %element_addr_enter_4107
  2196. %compare_zero_enter_4107 = icmp eq i8 %element_enter_4107, 0
  2197. br i1 %compare_zero_enter_4107, label %post_loop_4107, label %loop_body_4107
  2198. loop_body_4107:
  2199. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4107
  2200.  
  2201. ; >ENTER_DEC_DATA 986
  2202. %dataptr_986 = load i32, i32* %dataptr_addr
  2203. %element_addr_986 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_986
  2204. %element_986 = load i8, i8* %element_addr_986
  2205. %sub_element_986 = sub i8 %element_986, 1
  2206. store i8 %sub_element_986, i8* %element_addr_986
  2207. ; <ENTER_DEC_DATA 986
  2208.  
  2209. ; >ENTER_INC_PTR 987
  2210. %dataptr_987 = load i32, i32* %dataptr_addr
  2211. %inc_dataptr_987 = add i32 %dataptr_987, 1
  2212. store i32 %inc_dataptr_987, i32* %dataptr_addr
  2213. ; <ENTER_INC_PTR 987
  2214.  
  2215. ; >ENTER_INC_DATA 988
  2216. %dataptr_988 = load i32, i32* %dataptr_addr
  2217. %element_addr_988 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_988
  2218. %element_988 = load i8, i8* %element_addr_988
  2219. %inc_element_988 = add i8 %element_988, 1
  2220. store i8 %inc_element_988, i8* %element_addr_988
  2221. ; <ENTER_INC_DATA 988
  2222.  
  2223. ; >ENTER_DEC_PTR 989
  2224. %dataptr_989 = load i32, i32* %dataptr_addr
  2225. %dec_dataptr_989 = sub i32 %dataptr_989, 1
  2226. store i32 %dec_dataptr_989, i32* %dataptr_addr
  2227. ; <ENTER_DEC_PTR 989
  2228.  
  2229. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4107
  2230. %dataptr_leave_4107 = load i32, i32* %dataptr_addr
  2231. %element_addr_leave_4107 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4107
  2232. %element_leave_4107 = load i8, i8* %element_addr_leave_4107
  2233. %compare_zero_leave_4107 = icmp ne i8 %element_leave_4107, 0
  2234. br i1 %compare_zero_leave_4107, label %loop_body_4107, label %post_loop_4107
  2235. post_loop_4107:
  2236. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4107
  2237.  
  2238. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4108
  2239. %dataptr_leave_4108 = load i32, i32* %dataptr_addr
  2240. %element_addr_leave_4108 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4108
  2241. %element_leave_4108 = load i8, i8* %element_addr_leave_4108
  2242. %compare_zero_leave_4108 = icmp ne i8 %element_leave_4108, 0
  2243. br i1 %compare_zero_leave_4108, label %loop_body_4108, label %post_loop_4108
  2244. post_loop_4108:
  2245. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4108
  2246.  
  2247. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4109
  2248. %dataptr_leave_4109 = load i32, i32* %dataptr_addr
  2249. %element_addr_leave_4109 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4109
  2250. %element_leave_4109 = load i8, i8* %element_addr_leave_4109
  2251. %compare_zero_leave_4109 = icmp ne i8 %element_leave_4109, 0
  2252. br i1 %compare_zero_leave_4109, label %loop_body_4109, label %post_loop_4109
  2253. post_loop_4109:
  2254. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4109
  2255.  
  2256. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4110
  2257. %dataptr_leave_4110 = load i32, i32* %dataptr_addr
  2258. %element_addr_leave_4110 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4110
  2259. %element_leave_4110 = load i8, i8* %element_addr_leave_4110
  2260. %compare_zero_leave_4110 = icmp ne i8 %element_leave_4110, 0
  2261. br i1 %compare_zero_leave_4110, label %loop_body_4110, label %post_loop_4110
  2262. post_loop_4110:
  2263. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4110
  2264.  
  2265. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4111
  2266. %dataptr_leave_4111 = load i32, i32* %dataptr_addr
  2267. %element_addr_leave_4111 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4111
  2268. %element_leave_4111 = load i8, i8* %element_addr_leave_4111
  2269. %compare_zero_leave_4111 = icmp ne i8 %element_leave_4111, 0
  2270. br i1 %compare_zero_leave_4111, label %loop_body_4111, label %post_loop_4111
  2271. post_loop_4111:
  2272. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4111
  2273.  
  2274. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4112
  2275. %dataptr_leave_4112 = load i32, i32* %dataptr_addr
  2276. %element_addr_leave_4112 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4112
  2277. %element_leave_4112 = load i8, i8* %element_addr_leave_4112
  2278. %compare_zero_leave_4112 = icmp ne i8 %element_leave_4112, 0
  2279. br i1 %compare_zero_leave_4112, label %loop_body_4112, label %post_loop_4112
  2280. post_loop_4112:
  2281. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4112
  2282.  
  2283. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4113
  2284. %dataptr_leave_4113 = load i32, i32* %dataptr_addr
  2285. %element_addr_leave_4113 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4113
  2286. %element_leave_4113 = load i8, i8* %element_addr_leave_4113
  2287. %compare_zero_leave_4113 = icmp ne i8 %element_leave_4113, 0
  2288. br i1 %compare_zero_leave_4113, label %loop_body_4113, label %post_loop_4113
  2289. post_loop_4113:
  2290. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4113
  2291.  
  2292. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4114
  2293. %dataptr_leave_4114 = load i32, i32* %dataptr_addr
  2294. %element_addr_leave_4114 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4114
  2295. %element_leave_4114 = load i8, i8* %element_addr_leave_4114
  2296. %compare_zero_leave_4114 = icmp ne i8 %element_leave_4114, 0
  2297. br i1 %compare_zero_leave_4114, label %loop_body_4114, label %post_loop_4114
  2298. post_loop_4114:
  2299. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4114
  2300.  
  2301. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4115
  2302. %dataptr_leave_4115 = load i32, i32* %dataptr_addr
  2303. %element_addr_leave_4115 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4115
  2304. %element_leave_4115 = load i8, i8* %element_addr_leave_4115
  2305. %compare_zero_leave_4115 = icmp ne i8 %element_leave_4115, 0
  2306. br i1 %compare_zero_leave_4115, label %loop_body_4115, label %post_loop_4115
  2307. post_loop_4115:
  2308. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4115
  2309.  
  2310. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4116
  2311. %dataptr_leave_4116 = load i32, i32* %dataptr_addr
  2312. %element_addr_leave_4116 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4116
  2313. %element_leave_4116 = load i8, i8* %element_addr_leave_4116
  2314. %compare_zero_leave_4116 = icmp ne i8 %element_leave_4116, 0
  2315. br i1 %compare_zero_leave_4116, label %loop_body_4116, label %post_loop_4116
  2316. post_loop_4116:
  2317. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4116
  2318.  
  2319. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4117
  2320. %dataptr_leave_4117 = load i32, i32* %dataptr_addr
  2321. %element_addr_leave_4117 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4117
  2322. %element_leave_4117 = load i8, i8* %element_addr_leave_4117
  2323. %compare_zero_leave_4117 = icmp ne i8 %element_leave_4117, 0
  2324. br i1 %compare_zero_leave_4117, label %loop_body_4117, label %post_loop_4117
  2325. post_loop_4117:
  2326. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4117
  2327.  
  2328. ; >ENTER_INC_PTR 1001
  2329. %dataptr_1001 = load i32, i32* %dataptr_addr
  2330. %inc_dataptr_1001 = add i32 %dataptr_1001, 2
  2331. store i32 %inc_dataptr_1001, i32* %dataptr_addr
  2332. ; <ENTER_INC_PTR 1001
  2333.  
  2334. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4118
  2335. %dataptr_leave_4118 = load i32, i32* %dataptr_addr
  2336. %element_addr_leave_4118 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4118
  2337. %element_leave_4118 = load i8, i8* %element_addr_leave_4118
  2338. %compare_zero_leave_4118 = icmp ne i8 %element_leave_4118, 0
  2339. br i1 %compare_zero_leave_4118, label %loop_body_4118, label %post_loop_4118
  2340. post_loop_4118:
  2341. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4118
  2342.  
  2343. ; >ENTER_DEC_PTR 1005
  2344. %dataptr_1005 = load i32, i32* %dataptr_addr
  2345. %dec_dataptr_1005 = sub i32 %dataptr_1005, 10
  2346. store i32 %dec_dataptr_1005, i32* %dataptr_addr
  2347. ; <ENTER_DEC_PTR 1005
  2348.  
  2349. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4120
  2350. %dataptr_enter_4120 = load i32, i32* %dataptr_addr
  2351. %element_addr_enter_4120 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4120
  2352. %element_enter_4120 = load i8, i8* %element_addr_enter_4120
  2353. %compare_zero_enter_4120 = icmp eq i8 %element_enter_4120, 0
  2354. br i1 %compare_zero_enter_4120, label %post_loop_4120, label %loop_body_4120
  2355. loop_body_4120:
  2356. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4120
  2357.  
  2358. ; >ENTER_INC_PTR 1016
  2359. %dataptr_1016 = load i32, i32* %dataptr_addr
  2360. %inc_dataptr_1016 = add i32 %dataptr_1016, 9
  2361. store i32 %inc_dataptr_1016, i32* %dataptr_addr
  2362. ; <ENTER_INC_PTR 1016
  2363.  
  2364. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4119
  2365. %dataptr_enter_4119 = load i32, i32* %dataptr_addr
  2366. %element_addr_enter_4119 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4119
  2367. %element_enter_4119 = load i8, i8* %element_addr_enter_4119
  2368. %compare_zero_enter_4119 = icmp eq i8 %element_enter_4119, 0
  2369. br i1 %compare_zero_enter_4119, label %post_loop_4119, label %loop_body_4119
  2370. loop_body_4119:
  2371. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4119
  2372.  
  2373. ; >ENTER_DEC_DATA 1026
  2374. %dataptr_1026 = load i32, i32* %dataptr_addr
  2375. %element_addr_1026 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1026
  2376. %element_1026 = load i8, i8* %element_addr_1026
  2377. %sub_element_1026 = sub i8 %element_1026, 1
  2378. store i8 %sub_element_1026, i8* %element_addr_1026
  2379. ; <ENTER_DEC_DATA 1026
  2380.  
  2381. ; >ENTER_DEC_PTR 1027
  2382. %dataptr_1027 = load i32, i32* %dataptr_addr
  2383. %dec_dataptr_1027 = sub i32 %dataptr_1027, 1
  2384. store i32 %dec_dataptr_1027, i32* %dataptr_addr
  2385. ; <ENTER_DEC_PTR 1027
  2386.  
  2387. ; >ENTER_INC_DATA 1028
  2388. %dataptr_1028 = load i32, i32* %dataptr_addr
  2389. %element_addr_1028 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1028
  2390. %element_1028 = load i8, i8* %element_addr_1028
  2391. %inc_element_1028 = add i8 %element_1028, 1
  2392. store i8 %inc_element_1028, i8* %element_addr_1028
  2393. ; <ENTER_INC_DATA 1028
  2394.  
  2395. ; >ENTER_DEC_PTR 1029
  2396. %dataptr_1029 = load i32, i32* %dataptr_addr
  2397. %dec_dataptr_1029 = sub i32 %dataptr_1029, 3
  2398. store i32 %dec_dataptr_1029, i32* %dataptr_addr
  2399. ; <ENTER_DEC_PTR 1029
  2400.  
  2401. ; >ENTER_INC_DATA 1032
  2402. %dataptr_1032 = load i32, i32* %dataptr_addr
  2403. %element_addr_1032 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1032
  2404. %element_1032 = load i8, i8* %element_addr_1032
  2405. %inc_element_1032 = add i8 %element_1032, 1
  2406. store i8 %inc_element_1032, i8* %element_addr_1032
  2407. ; <ENTER_INC_DATA 1032
  2408.  
  2409. ; >ENTER_INC_PTR 1033
  2410. %dataptr_1033 = load i32, i32* %dataptr_addr
  2411. %inc_dataptr_1033 = add i32 %dataptr_1033, 4
  2412. store i32 %inc_dataptr_1033, i32* %dataptr_addr
  2413. ; <ENTER_INC_PTR 1033
  2414.  
  2415. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4119
  2416. %dataptr_leave_4119 = load i32, i32* %dataptr_addr
  2417. %element_addr_leave_4119 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4119
  2418. %element_leave_4119 = load i8, i8* %element_addr_leave_4119
  2419. %compare_zero_leave_4119 = icmp ne i8 %element_leave_4119, 0
  2420. br i1 %compare_zero_leave_4119, label %loop_body_4119, label %post_loop_4119
  2421. post_loop_4119:
  2422. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4119
  2423.  
  2424. ; >ENTER_DEC_PTR 1038
  2425. %dataptr_1038 = load i32, i32* %dataptr_addr
  2426. %dec_dataptr_1038 = sub i32 %dataptr_1038, 19
  2427. store i32 %dec_dataptr_1038, i32* %dataptr_addr
  2428. ; <ENTER_DEC_PTR 1038
  2429.  
  2430. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4120
  2431. %dataptr_leave_4120 = load i32, i32* %dataptr_addr
  2432. %element_addr_leave_4120 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4120
  2433. %element_leave_4120 = load i8, i8* %element_addr_leave_4120
  2434. %compare_zero_leave_4120 = icmp ne i8 %element_leave_4120, 0
  2435. br i1 %compare_zero_leave_4120, label %loop_body_4120, label %post_loop_4120
  2436. post_loop_4120:
  2437. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4120
  2438.  
  2439. ; >ENTER_INC_PTR 1058
  2440. %dataptr_1058 = load i32, i32* %dataptr_addr
  2441. %inc_dataptr_1058 = add i32 %dataptr_1058, 10
  2442. store i32 %inc_dataptr_1058, i32* %dataptr_addr
  2443. ; <ENTER_INC_PTR 1058
  2444.  
  2445. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4132
  2446. %dataptr_enter_4132 = load i32, i32* %dataptr_addr
  2447. %element_addr_enter_4132 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4132
  2448. %element_enter_4132 = load i8, i8* %element_addr_enter_4132
  2449. %compare_zero_enter_4132 = icmp eq i8 %element_enter_4132, 0
  2450. br i1 %compare_zero_enter_4132, label %post_loop_4132, label %loop_body_4132
  2451. loop_body_4132:
  2452. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4132
  2453.  
  2454. ; >ENTER_INC_PTR 1070
  2455. %dataptr_1070 = load i32, i32* %dataptr_addr
  2456. %inc_dataptr_1070 = add i32 %dataptr_1070, 7
  2457. store i32 %inc_dataptr_1070, i32* %dataptr_addr
  2458. ; <ENTER_INC_PTR 1070
  2459.  
  2460. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4131
  2461. %dataptr_enter_4131 = load i32, i32* %dataptr_addr
  2462. %element_addr_enter_4131 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4131
  2463. %element_enter_4131 = load i8, i8* %element_addr_enter_4131
  2464. %compare_zero_enter_4131 = icmp eq i8 %element_enter_4131, 0
  2465. br i1 %compare_zero_enter_4131, label %post_loop_4131, label %loop_body_4131
  2466. loop_body_4131:
  2467. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4131
  2468.  
  2469. ; >ENTER_DEC_DATA 1078
  2470. %dataptr_1078 = load i32, i32* %dataptr_addr
  2471. %element_addr_1078 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1078
  2472. %element_1078 = load i8, i8* %element_addr_1078
  2473. %sub_element_1078 = sub i8 %element_1078, 1
  2474. store i8 %sub_element_1078, i8* %element_addr_1078
  2475. ; <ENTER_DEC_DATA 1078
  2476.  
  2477. ; >ENTER_DEC_PTR 1079
  2478. %dataptr_1079 = load i32, i32* %dataptr_addr
  2479. %dec_dataptr_1079 = sub i32 %dataptr_1079, 1
  2480. store i32 %dec_dataptr_1079, i32* %dataptr_addr
  2481. ; <ENTER_DEC_PTR 1079
  2482.  
  2483. ; >ENTER_INC_DATA 1080
  2484. %dataptr_1080 = load i32, i32* %dataptr_addr
  2485. %element_addr_1080 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1080
  2486. %element_1080 = load i8, i8* %element_addr_1080
  2487. %inc_element_1080 = add i8 %element_1080, 1
  2488. store i8 %inc_element_1080, i8* %element_addr_1080
  2489. ; <ENTER_INC_DATA 1080
  2490.  
  2491. ; >ENTER_INC_PTR 1081
  2492. %dataptr_1081 = load i32, i32* %dataptr_addr
  2493. %inc_dataptr_1081 = add i32 %dataptr_1081, 1
  2494. store i32 %inc_dataptr_1081, i32* %dataptr_addr
  2495. ; <ENTER_INC_PTR 1081
  2496.  
  2497. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4130
  2498. %dataptr_enter_4130 = load i32, i32* %dataptr_addr
  2499. %element_addr_enter_4130 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4130
  2500. %element_enter_4130 = load i8, i8* %element_addr_enter_4130
  2501. %compare_zero_enter_4130 = icmp eq i8 %element_enter_4130, 0
  2502. br i1 %compare_zero_enter_4130, label %post_loop_4130, label %loop_body_4130
  2503. loop_body_4130:
  2504. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4130
  2505.  
  2506. ; >ENTER_DEC_DATA 1083
  2507. %dataptr_1083 = load i32, i32* %dataptr_addr
  2508. %element_addr_1083 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1083
  2509. %element_1083 = load i8, i8* %element_addr_1083
  2510. %sub_element_1083 = sub i8 %element_1083, 1
  2511. store i8 %sub_element_1083, i8* %element_addr_1083
  2512. ; <ENTER_DEC_DATA 1083
  2513.  
  2514. ; >ENTER_DEC_PTR 1084
  2515. %dataptr_1084 = load i32, i32* %dataptr_addr
  2516. %dec_dataptr_1084 = sub i32 %dataptr_1084, 1
  2517. store i32 %dec_dataptr_1084, i32* %dataptr_addr
  2518. ; <ENTER_DEC_PTR 1084
  2519.  
  2520. ; >ENTER_INC_DATA 1085
  2521. %dataptr_1085 = load i32, i32* %dataptr_addr
  2522. %element_addr_1085 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1085
  2523. %element_1085 = load i8, i8* %element_addr_1085
  2524. %inc_element_1085 = add i8 %element_1085, 1
  2525. store i8 %inc_element_1085, i8* %element_addr_1085
  2526. ; <ENTER_INC_DATA 1085
  2527.  
  2528. ; >ENTER_INC_PTR 1086
  2529. %dataptr_1086 = load i32, i32* %dataptr_addr
  2530. %inc_dataptr_1086 = add i32 %dataptr_1086, 1
  2531. store i32 %inc_dataptr_1086, i32* %dataptr_addr
  2532. ; <ENTER_INC_PTR 1086
  2533.  
  2534. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4129
  2535. %dataptr_enter_4129 = load i32, i32* %dataptr_addr
  2536. %element_addr_enter_4129 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4129
  2537. %element_enter_4129 = load i8, i8* %element_addr_enter_4129
  2538. %compare_zero_enter_4129 = icmp eq i8 %element_enter_4129, 0
  2539. br i1 %compare_zero_enter_4129, label %post_loop_4129, label %loop_body_4129
  2540. loop_body_4129:
  2541. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4129
  2542.  
  2543. ; >ENTER_DEC_DATA 1088
  2544. %dataptr_1088 = load i32, i32* %dataptr_addr
  2545. %element_addr_1088 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1088
  2546. %element_1088 = load i8, i8* %element_addr_1088
  2547. %sub_element_1088 = sub i8 %element_1088, 1
  2548. store i8 %sub_element_1088, i8* %element_addr_1088
  2549. ; <ENTER_DEC_DATA 1088
  2550.  
  2551. ; >ENTER_DEC_PTR 1089
  2552. %dataptr_1089 = load i32, i32* %dataptr_addr
  2553. %dec_dataptr_1089 = sub i32 %dataptr_1089, 1
  2554. store i32 %dec_dataptr_1089, i32* %dataptr_addr
  2555. ; <ENTER_DEC_PTR 1089
  2556.  
  2557. ; >ENTER_INC_DATA 1090
  2558. %dataptr_1090 = load i32, i32* %dataptr_addr
  2559. %element_addr_1090 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1090
  2560. %element_1090 = load i8, i8* %element_addr_1090
  2561. %inc_element_1090 = add i8 %element_1090, 1
  2562. store i8 %inc_element_1090, i8* %element_addr_1090
  2563. ; <ENTER_INC_DATA 1090
  2564.  
  2565. ; >ENTER_INC_PTR 1091
  2566. %dataptr_1091 = load i32, i32* %dataptr_addr
  2567. %inc_dataptr_1091 = add i32 %dataptr_1091, 1
  2568. store i32 %inc_dataptr_1091, i32* %dataptr_addr
  2569. ; <ENTER_INC_PTR 1091
  2570.  
  2571. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4128
  2572. %dataptr_enter_4128 = load i32, i32* %dataptr_addr
  2573. %element_addr_enter_4128 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4128
  2574. %element_enter_4128 = load i8, i8* %element_addr_enter_4128
  2575. %compare_zero_enter_4128 = icmp eq i8 %element_enter_4128, 0
  2576. br i1 %compare_zero_enter_4128, label %post_loop_4128, label %loop_body_4128
  2577. loop_body_4128:
  2578. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4128
  2579.  
  2580. ; >ENTER_DEC_DATA 1093
  2581. %dataptr_1093 = load i32, i32* %dataptr_addr
  2582. %element_addr_1093 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1093
  2583. %element_1093 = load i8, i8* %element_addr_1093
  2584. %sub_element_1093 = sub i8 %element_1093, 1
  2585. store i8 %sub_element_1093, i8* %element_addr_1093
  2586. ; <ENTER_DEC_DATA 1093
  2587.  
  2588. ; >ENTER_DEC_PTR 1094
  2589. %dataptr_1094 = load i32, i32* %dataptr_addr
  2590. %dec_dataptr_1094 = sub i32 %dataptr_1094, 1
  2591. store i32 %dec_dataptr_1094, i32* %dataptr_addr
  2592. ; <ENTER_DEC_PTR 1094
  2593.  
  2594. ; >ENTER_INC_DATA 1095
  2595. %dataptr_1095 = load i32, i32* %dataptr_addr
  2596. %element_addr_1095 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1095
  2597. %element_1095 = load i8, i8* %element_addr_1095
  2598. %inc_element_1095 = add i8 %element_1095, 1
  2599. store i8 %inc_element_1095, i8* %element_addr_1095
  2600. ; <ENTER_INC_DATA 1095
  2601.  
  2602. ; >ENTER_INC_PTR 1096
  2603. %dataptr_1096 = load i32, i32* %dataptr_addr
  2604. %inc_dataptr_1096 = add i32 %dataptr_1096, 1
  2605. store i32 %inc_dataptr_1096, i32* %dataptr_addr
  2606. ; <ENTER_INC_PTR 1096
  2607.  
  2608. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4127
  2609. %dataptr_enter_4127 = load i32, i32* %dataptr_addr
  2610. %element_addr_enter_4127 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4127
  2611. %element_enter_4127 = load i8, i8* %element_addr_enter_4127
  2612. %compare_zero_enter_4127 = icmp eq i8 %element_enter_4127, 0
  2613. br i1 %compare_zero_enter_4127, label %post_loop_4127, label %loop_body_4127
  2614. loop_body_4127:
  2615. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4127
  2616.  
  2617. ; >ENTER_DEC_DATA 1098
  2618. %dataptr_1098 = load i32, i32* %dataptr_addr
  2619. %element_addr_1098 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1098
  2620. %element_1098 = load i8, i8* %element_addr_1098
  2621. %sub_element_1098 = sub i8 %element_1098, 1
  2622. store i8 %sub_element_1098, i8* %element_addr_1098
  2623. ; <ENTER_DEC_DATA 1098
  2624.  
  2625. ; >ENTER_DEC_PTR 1099
  2626. %dataptr_1099 = load i32, i32* %dataptr_addr
  2627. %dec_dataptr_1099 = sub i32 %dataptr_1099, 1
  2628. store i32 %dec_dataptr_1099, i32* %dataptr_addr
  2629. ; <ENTER_DEC_PTR 1099
  2630.  
  2631. ; >ENTER_INC_DATA 1100
  2632. %dataptr_1100 = load i32, i32* %dataptr_addr
  2633. %element_addr_1100 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1100
  2634. %element_1100 = load i8, i8* %element_addr_1100
  2635. %inc_element_1100 = add i8 %element_1100, 1
  2636. store i8 %inc_element_1100, i8* %element_addr_1100
  2637. ; <ENTER_INC_DATA 1100
  2638.  
  2639. ; >ENTER_INC_PTR 1101
  2640. %dataptr_1101 = load i32, i32* %dataptr_addr
  2641. %inc_dataptr_1101 = add i32 %dataptr_1101, 1
  2642. store i32 %inc_dataptr_1101, i32* %dataptr_addr
  2643. ; <ENTER_INC_PTR 1101
  2644.  
  2645. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4126
  2646. %dataptr_enter_4126 = load i32, i32* %dataptr_addr
  2647. %element_addr_enter_4126 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4126
  2648. %element_enter_4126 = load i8, i8* %element_addr_enter_4126
  2649. %compare_zero_enter_4126 = icmp eq i8 %element_enter_4126, 0
  2650. br i1 %compare_zero_enter_4126, label %post_loop_4126, label %loop_body_4126
  2651. loop_body_4126:
  2652. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4126
  2653.  
  2654. ; >ENTER_DEC_DATA 1103
  2655. %dataptr_1103 = load i32, i32* %dataptr_addr
  2656. %element_addr_1103 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1103
  2657. %element_1103 = load i8, i8* %element_addr_1103
  2658. %sub_element_1103 = sub i8 %element_1103, 1
  2659. store i8 %sub_element_1103, i8* %element_addr_1103
  2660. ; <ENTER_DEC_DATA 1103
  2661.  
  2662. ; >ENTER_DEC_PTR 1104
  2663. %dataptr_1104 = load i32, i32* %dataptr_addr
  2664. %dec_dataptr_1104 = sub i32 %dataptr_1104, 1
  2665. store i32 %dec_dataptr_1104, i32* %dataptr_addr
  2666. ; <ENTER_DEC_PTR 1104
  2667.  
  2668. ; >ENTER_INC_DATA 1105
  2669. %dataptr_1105 = load i32, i32* %dataptr_addr
  2670. %element_addr_1105 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1105
  2671. %element_1105 = load i8, i8* %element_addr_1105
  2672. %inc_element_1105 = add i8 %element_1105, 1
  2673. store i8 %inc_element_1105, i8* %element_addr_1105
  2674. ; <ENTER_INC_DATA 1105
  2675.  
  2676. ; >ENTER_INC_PTR 1106
  2677. %dataptr_1106 = load i32, i32* %dataptr_addr
  2678. %inc_dataptr_1106 = add i32 %dataptr_1106, 1
  2679. store i32 %inc_dataptr_1106, i32* %dataptr_addr
  2680. ; <ENTER_INC_PTR 1106
  2681.  
  2682. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4125
  2683. %dataptr_enter_4125 = load i32, i32* %dataptr_addr
  2684. %element_addr_enter_4125 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4125
  2685. %element_enter_4125 = load i8, i8* %element_addr_enter_4125
  2686. %compare_zero_enter_4125 = icmp eq i8 %element_enter_4125, 0
  2687. br i1 %compare_zero_enter_4125, label %post_loop_4125, label %loop_body_4125
  2688. loop_body_4125:
  2689. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4125
  2690.  
  2691. ; >ENTER_DEC_DATA 1108
  2692. %dataptr_1108 = load i32, i32* %dataptr_addr
  2693. %element_addr_1108 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1108
  2694. %element_1108 = load i8, i8* %element_addr_1108
  2695. %sub_element_1108 = sub i8 %element_1108, 1
  2696. store i8 %sub_element_1108, i8* %element_addr_1108
  2697. ; <ENTER_DEC_DATA 1108
  2698.  
  2699. ; >ENTER_DEC_PTR 1109
  2700. %dataptr_1109 = load i32, i32* %dataptr_addr
  2701. %dec_dataptr_1109 = sub i32 %dataptr_1109, 1
  2702. store i32 %dec_dataptr_1109, i32* %dataptr_addr
  2703. ; <ENTER_DEC_PTR 1109
  2704.  
  2705. ; >ENTER_INC_DATA 1110
  2706. %dataptr_1110 = load i32, i32* %dataptr_addr
  2707. %element_addr_1110 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1110
  2708. %element_1110 = load i8, i8* %element_addr_1110
  2709. %inc_element_1110 = add i8 %element_1110, 1
  2710. store i8 %inc_element_1110, i8* %element_addr_1110
  2711. ; <ENTER_INC_DATA 1110
  2712.  
  2713. ; >ENTER_INC_PTR 1111
  2714. %dataptr_1111 = load i32, i32* %dataptr_addr
  2715. %inc_dataptr_1111 = add i32 %dataptr_1111, 1
  2716. store i32 %inc_dataptr_1111, i32* %dataptr_addr
  2717. ; <ENTER_INC_PTR 1111
  2718.  
  2719. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4124
  2720. %dataptr_enter_4124 = load i32, i32* %dataptr_addr
  2721. %element_addr_enter_4124 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4124
  2722. %element_enter_4124 = load i8, i8* %element_addr_enter_4124
  2723. %compare_zero_enter_4124 = icmp eq i8 %element_enter_4124, 0
  2724. br i1 %compare_zero_enter_4124, label %post_loop_4124, label %loop_body_4124
  2725. loop_body_4124:
  2726. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4124
  2727.  
  2728. ; >ENTER_DEC_DATA 1113
  2729. %dataptr_1113 = load i32, i32* %dataptr_addr
  2730. %element_addr_1113 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1113
  2731. %element_1113 = load i8, i8* %element_addr_1113
  2732. %sub_element_1113 = sub i8 %element_1113, 1
  2733. store i8 %sub_element_1113, i8* %element_addr_1113
  2734. ; <ENTER_DEC_DATA 1113
  2735.  
  2736. ; >ENTER_DEC_PTR 1114
  2737. %dataptr_1114 = load i32, i32* %dataptr_addr
  2738. %dec_dataptr_1114 = sub i32 %dataptr_1114, 1
  2739. store i32 %dec_dataptr_1114, i32* %dataptr_addr
  2740. ; <ENTER_DEC_PTR 1114
  2741.  
  2742. ; >ENTER_INC_DATA 1115
  2743. %dataptr_1115 = load i32, i32* %dataptr_addr
  2744. %element_addr_1115 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1115
  2745. %element_1115 = load i8, i8* %element_addr_1115
  2746. %inc_element_1115 = add i8 %element_1115, 1
  2747. store i8 %inc_element_1115, i8* %element_addr_1115
  2748. ; <ENTER_INC_DATA 1115
  2749.  
  2750. ; >ENTER_INC_PTR 1116
  2751. %dataptr_1116 = load i32, i32* %dataptr_addr
  2752. %inc_dataptr_1116 = add i32 %dataptr_1116, 1
  2753. store i32 %inc_dataptr_1116, i32* %dataptr_addr
  2754. ; <ENTER_INC_PTR 1116
  2755.  
  2756. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4123
  2757. %dataptr_enter_4123 = load i32, i32* %dataptr_addr
  2758. %element_addr_enter_4123 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4123
  2759. %element_enter_4123 = load i8, i8* %element_addr_enter_4123
  2760. %compare_zero_enter_4123 = icmp eq i8 %element_enter_4123, 0
  2761. br i1 %compare_zero_enter_4123, label %post_loop_4123, label %loop_body_4123
  2762. loop_body_4123:
  2763. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4123
  2764.  
  2765. ; >ENTER_DEC_DATA 1118
  2766. %dataptr_1118 = load i32, i32* %dataptr_addr
  2767. %element_addr_1118 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1118
  2768. %element_1118 = load i8, i8* %element_addr_1118
  2769. %sub_element_1118 = sub i8 %element_1118, 1
  2770. store i8 %sub_element_1118, i8* %element_addr_1118
  2771. ; <ENTER_DEC_DATA 1118
  2772.  
  2773. ; >ENTER_DEC_PTR 1119
  2774. %dataptr_1119 = load i32, i32* %dataptr_addr
  2775. %dec_dataptr_1119 = sub i32 %dataptr_1119, 1
  2776. store i32 %dec_dataptr_1119, i32* %dataptr_addr
  2777. ; <ENTER_DEC_PTR 1119
  2778.  
  2779. ; >ENTER_INC_DATA 1120
  2780. %dataptr_1120 = load i32, i32* %dataptr_addr
  2781. %element_addr_1120 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1120
  2782. %element_1120 = load i8, i8* %element_addr_1120
  2783. %inc_element_1120 = add i8 %element_1120, 1
  2784. store i8 %inc_element_1120, i8* %element_addr_1120
  2785. ; <ENTER_INC_DATA 1120
  2786.  
  2787. ; >ENTER_INC_PTR 1121
  2788. %dataptr_1121 = load i32, i32* %dataptr_addr
  2789. %inc_dataptr_1121 = add i32 %dataptr_1121, 1
  2790. store i32 %inc_dataptr_1121, i32* %dataptr_addr
  2791. ; <ENTER_INC_PTR 1121
  2792.  
  2793. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4122
  2794. %dataptr_enter_4122 = load i32, i32* %dataptr_addr
  2795. %element_addr_enter_4122 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4122
  2796. %element_enter_4122 = load i8, i8* %element_addr_enter_4122
  2797. %compare_zero_enter_4122 = icmp eq i8 %element_enter_4122, 0
  2798. br i1 %compare_zero_enter_4122, label %post_loop_4122, label %loop_body_4122
  2799. loop_body_4122:
  2800. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4122
  2801.  
  2802. ; >ENTER_DEC_DATA 1124
  2803. %dataptr_1124 = load i32, i32* %dataptr_addr
  2804. %element_addr_1124 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1124
  2805. %element_1124 = load i8, i8* %element_addr_1124
  2806. %sub_element_1124 = sub i8 %element_1124, 1
  2807. store i8 %sub_element_1124, i8* %element_addr_1124
  2808. ; <ENTER_DEC_DATA 1124
  2809.  
  2810. ; >ENTER_DEC_PTR 1125
  2811. %dataptr_1125 = load i32, i32* %dataptr_addr
  2812. %dec_dataptr_1125 = sub i32 %dataptr_1125, 1
  2813. store i32 %dec_dataptr_1125, i32* %dataptr_addr
  2814. ; <ENTER_DEC_PTR 1125
  2815.  
  2816. ; >ENTER_DEC_DATA 1126
  2817. %dataptr_1126 = load i32, i32* %dataptr_addr
  2818. %element_addr_1126 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1126
  2819. %element_1126 = load i8, i8* %element_addr_1126
  2820. %sub_element_1126 = sub i8 %element_1126, 9
  2821. store i8 %sub_element_1126, i8* %element_addr_1126
  2822. ; <ENTER_DEC_DATA 1126
  2823.  
  2824. ; >ENTER_INC_PTR 1135
  2825. %dataptr_1135 = load i32, i32* %dataptr_addr
  2826. %inc_dataptr_1135 = add i32 %dataptr_1135, 11
  2827. store i32 %inc_dataptr_1135, i32* %dataptr_addr
  2828. ; <ENTER_INC_PTR 1135
  2829.  
  2830. ; >ENTER_INC_DATA 1146
  2831. %dataptr_1146 = load i32, i32* %dataptr_addr
  2832. %element_addr_1146 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1146
  2833. %element_1146 = load i8, i8* %element_addr_1146
  2834. %inc_element_1146 = add i8 %element_1146, 1
  2835. store i8 %inc_element_1146, i8* %element_addr_1146
  2836. ; <ENTER_INC_DATA 1146
  2837.  
  2838. ; >ENTER_DEC_PTR 1147
  2839. %dataptr_1147 = load i32, i32* %dataptr_addr
  2840. %dec_dataptr_1147 = sub i32 %dataptr_1147, 10
  2841. store i32 %dec_dataptr_1147, i32* %dataptr_addr
  2842. ; <ENTER_DEC_PTR 1147
  2843.  
  2844. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4121
  2845. %dataptr_enter_4121 = load i32, i32* %dataptr_addr
  2846. %element_addr_enter_4121 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4121
  2847. %element_enter_4121 = load i8, i8* %element_addr_enter_4121
  2848. %compare_zero_enter_4121 = icmp eq i8 %element_enter_4121, 0
  2849. br i1 %compare_zero_enter_4121, label %post_loop_4121, label %loop_body_4121
  2850. loop_body_4121:
  2851. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4121
  2852.  
  2853. ; >ENTER_DEC_DATA 1158
  2854. %dataptr_1158 = load i32, i32* %dataptr_addr
  2855. %element_addr_1158 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1158
  2856. %element_1158 = load i8, i8* %element_addr_1158
  2857. %sub_element_1158 = sub i8 %element_1158, 1
  2858. store i8 %sub_element_1158, i8* %element_addr_1158
  2859. ; <ENTER_DEC_DATA 1158
  2860.  
  2861. ; >ENTER_DEC_PTR 1159
  2862. %dataptr_1159 = load i32, i32* %dataptr_addr
  2863. %dec_dataptr_1159 = sub i32 %dataptr_1159, 1
  2864. store i32 %dec_dataptr_1159, i32* %dataptr_addr
  2865. ; <ENTER_DEC_PTR 1159
  2866.  
  2867. ; >ENTER_INC_DATA 1160
  2868. %dataptr_1160 = load i32, i32* %dataptr_addr
  2869. %element_addr_1160 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1160
  2870. %element_1160 = load i8, i8* %element_addr_1160
  2871. %inc_element_1160 = add i8 %element_1160, 1
  2872. store i8 %inc_element_1160, i8* %element_addr_1160
  2873. ; <ENTER_INC_DATA 1160
  2874.  
  2875. ; >ENTER_INC_PTR 1161
  2876. %dataptr_1161 = load i32, i32* %dataptr_addr
  2877. %inc_dataptr_1161 = add i32 %dataptr_1161, 1
  2878. store i32 %inc_dataptr_1161, i32* %dataptr_addr
  2879. ; <ENTER_INC_PTR 1161
  2880.  
  2881. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4121
  2882. %dataptr_leave_4121 = load i32, i32* %dataptr_addr
  2883. %element_addr_leave_4121 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4121
  2884. %element_leave_4121 = load i8, i8* %element_addr_leave_4121
  2885. %compare_zero_leave_4121 = icmp ne i8 %element_leave_4121, 0
  2886. br i1 %compare_zero_leave_4121, label %loop_body_4121, label %post_loop_4121
  2887. post_loop_4121:
  2888. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4121
  2889.  
  2890. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4122
  2891. %dataptr_leave_4122 = load i32, i32* %dataptr_addr
  2892. %element_addr_leave_4122 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4122
  2893. %element_leave_4122 = load i8, i8* %element_addr_leave_4122
  2894. %compare_zero_leave_4122 = icmp ne i8 %element_leave_4122, 0
  2895. br i1 %compare_zero_leave_4122, label %loop_body_4122, label %post_loop_4122
  2896. post_loop_4122:
  2897. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4122
  2898.  
  2899. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4123
  2900. %dataptr_leave_4123 = load i32, i32* %dataptr_addr
  2901. %element_addr_leave_4123 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4123
  2902. %element_leave_4123 = load i8, i8* %element_addr_leave_4123
  2903. %compare_zero_leave_4123 = icmp ne i8 %element_leave_4123, 0
  2904. br i1 %compare_zero_leave_4123, label %loop_body_4123, label %post_loop_4123
  2905. post_loop_4123:
  2906. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4123
  2907.  
  2908. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4124
  2909. %dataptr_leave_4124 = load i32, i32* %dataptr_addr
  2910. %element_addr_leave_4124 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4124
  2911. %element_leave_4124 = load i8, i8* %element_addr_leave_4124
  2912. %compare_zero_leave_4124 = icmp ne i8 %element_leave_4124, 0
  2913. br i1 %compare_zero_leave_4124, label %loop_body_4124, label %post_loop_4124
  2914. post_loop_4124:
  2915. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4124
  2916.  
  2917. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4125
  2918. %dataptr_leave_4125 = load i32, i32* %dataptr_addr
  2919. %element_addr_leave_4125 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4125
  2920. %element_leave_4125 = load i8, i8* %element_addr_leave_4125
  2921. %compare_zero_leave_4125 = icmp ne i8 %element_leave_4125, 0
  2922. br i1 %compare_zero_leave_4125, label %loop_body_4125, label %post_loop_4125
  2923. post_loop_4125:
  2924. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4125
  2925.  
  2926. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4126
  2927. %dataptr_leave_4126 = load i32, i32* %dataptr_addr
  2928. %element_addr_leave_4126 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4126
  2929. %element_leave_4126 = load i8, i8* %element_addr_leave_4126
  2930. %compare_zero_leave_4126 = icmp ne i8 %element_leave_4126, 0
  2931. br i1 %compare_zero_leave_4126, label %loop_body_4126, label %post_loop_4126
  2932. post_loop_4126:
  2933. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4126
  2934.  
  2935. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4127
  2936. %dataptr_leave_4127 = load i32, i32* %dataptr_addr
  2937. %element_addr_leave_4127 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4127
  2938. %element_leave_4127 = load i8, i8* %element_addr_leave_4127
  2939. %compare_zero_leave_4127 = icmp ne i8 %element_leave_4127, 0
  2940. br i1 %compare_zero_leave_4127, label %loop_body_4127, label %post_loop_4127
  2941. post_loop_4127:
  2942. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4127
  2943.  
  2944. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4128
  2945. %dataptr_leave_4128 = load i32, i32* %dataptr_addr
  2946. %element_addr_leave_4128 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4128
  2947. %element_leave_4128 = load i8, i8* %element_addr_leave_4128
  2948. %compare_zero_leave_4128 = icmp ne i8 %element_leave_4128, 0
  2949. br i1 %compare_zero_leave_4128, label %loop_body_4128, label %post_loop_4128
  2950. post_loop_4128:
  2951. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4128
  2952.  
  2953. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4129
  2954. %dataptr_leave_4129 = load i32, i32* %dataptr_addr
  2955. %element_addr_leave_4129 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4129
  2956. %element_leave_4129 = load i8, i8* %element_addr_leave_4129
  2957. %compare_zero_leave_4129 = icmp ne i8 %element_leave_4129, 0
  2958. br i1 %compare_zero_leave_4129, label %loop_body_4129, label %post_loop_4129
  2959. post_loop_4129:
  2960. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4129
  2961.  
  2962. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4130
  2963. %dataptr_leave_4130 = load i32, i32* %dataptr_addr
  2964. %element_addr_leave_4130 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4130
  2965. %element_leave_4130 = load i8, i8* %element_addr_leave_4130
  2966. %compare_zero_leave_4130 = icmp ne i8 %element_leave_4130, 0
  2967. br i1 %compare_zero_leave_4130, label %loop_body_4130, label %post_loop_4130
  2968. post_loop_4130:
  2969. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4130
  2970.  
  2971. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4131
  2972. %dataptr_leave_4131 = load i32, i32* %dataptr_addr
  2973. %element_addr_leave_4131 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4131
  2974. %element_leave_4131 = load i8, i8* %element_addr_leave_4131
  2975. %compare_zero_leave_4131 = icmp ne i8 %element_leave_4131, 0
  2976. br i1 %compare_zero_leave_4131, label %loop_body_4131, label %post_loop_4131
  2977. post_loop_4131:
  2978. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4131
  2979.  
  2980. ; >ENTER_INC_PTR 1173
  2981. %dataptr_1173 = load i32, i32* %dataptr_addr
  2982. %inc_dataptr_1173 = add i32 %dataptr_1173, 3
  2983. store i32 %inc_dataptr_1173, i32* %dataptr_addr
  2984. ; <ENTER_INC_PTR 1173
  2985.  
  2986. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4132
  2987. %dataptr_leave_4132 = load i32, i32* %dataptr_addr
  2988. %element_addr_leave_4132 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4132
  2989. %element_leave_4132 = load i8, i8* %element_addr_leave_4132
  2990. %compare_zero_leave_4132 = icmp ne i8 %element_leave_4132, 0
  2991. br i1 %compare_zero_leave_4132, label %loop_body_4132, label %post_loop_4132
  2992. post_loop_4132:
  2993. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4132
  2994.  
  2995. ; >ENTER_DEC_PTR 1178
  2996. %dataptr_1178 = load i32, i32* %dataptr_addr
  2997. %dec_dataptr_1178 = sub i32 %dataptr_1178, 10
  2998. store i32 %dec_dataptr_1178, i32* %dataptr_addr
  2999. ; <ENTER_DEC_PTR 1178
  3000.  
  3001. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4134
  3002. %dataptr_enter_4134 = load i32, i32* %dataptr_addr
  3003. %element_addr_enter_4134 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4134
  3004. %element_enter_4134 = load i8, i8* %element_addr_enter_4134
  3005. %compare_zero_enter_4134 = icmp eq i8 %element_enter_4134, 0
  3006. br i1 %compare_zero_enter_4134, label %post_loop_4134, label %loop_body_4134
  3007. loop_body_4134:
  3008. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4134
  3009.  
  3010. ; >ENTER_INC_PTR 1190
  3011. %dataptr_1190 = load i32, i32* %dataptr_addr
  3012. %inc_dataptr_1190 = add i32 %dataptr_1190, 4
  3013. store i32 %inc_dataptr_1190, i32* %dataptr_addr
  3014. ; <ENTER_INC_PTR 1190
  3015.  
  3016. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4133
  3017. %dataptr_enter_4133 = load i32, i32* %dataptr_addr
  3018. %element_addr_enter_4133 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4133
  3019. %element_enter_4133 = load i8, i8* %element_addr_enter_4133
  3020. %compare_zero_enter_4133 = icmp eq i8 %element_enter_4133, 0
  3021. br i1 %compare_zero_enter_4133, label %post_loop_4133, label %loop_body_4133
  3022. loop_body_4133:
  3023. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4133
  3024.  
  3025. ; >ENTER_DEC_DATA 1195
  3026. %dataptr_1195 = load i32, i32* %dataptr_addr
  3027. %element_addr_1195 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1195
  3028. %element_1195 = load i8, i8* %element_addr_1195
  3029. %sub_element_1195 = sub i8 %element_1195, 1
  3030. store i8 %sub_element_1195, i8* %element_addr_1195
  3031. ; <ENTER_DEC_DATA 1195
  3032.  
  3033. ; >ENTER_INC_PTR 1196
  3034. %dataptr_1196 = load i32, i32* %dataptr_addr
  3035. %inc_dataptr_1196 = add i32 %dataptr_1196, 3
  3036. store i32 %inc_dataptr_1196, i32* %dataptr_addr
  3037. ; <ENTER_INC_PTR 1196
  3038.  
  3039. ; >ENTER_INC_DATA 1199
  3040. %dataptr_1199 = load i32, i32* %dataptr_addr
  3041. %element_addr_1199 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1199
  3042. %element_1199 = load i8, i8* %element_addr_1199
  3043. %inc_element_1199 = add i8 %element_1199, 1
  3044. store i8 %inc_element_1199, i8* %element_addr_1199
  3045. ; <ENTER_INC_DATA 1199
  3046.  
  3047. ; >ENTER_INC_PTR 1200
  3048. %dataptr_1200 = load i32, i32* %dataptr_addr
  3049. %inc_dataptr_1200 = add i32 %dataptr_1200, 2
  3050. store i32 %inc_dataptr_1200, i32* %dataptr_addr
  3051. ; <ENTER_INC_PTR 1200
  3052.  
  3053. ; >ENTER_INC_DATA 1202
  3054. %dataptr_1202 = load i32, i32* %dataptr_addr
  3055. %element_addr_1202 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1202
  3056. %element_1202 = load i8, i8* %element_addr_1202
  3057. %inc_element_1202 = add i8 %element_1202, 1
  3058. store i8 %inc_element_1202, i8* %element_addr_1202
  3059. ; <ENTER_INC_DATA 1202
  3060.  
  3061. ; >ENTER_DEC_PTR 1203
  3062. %dataptr_1203 = load i32, i32* %dataptr_addr
  3063. %dec_dataptr_1203 = sub i32 %dataptr_1203, 5
  3064. store i32 %dec_dataptr_1203, i32* %dataptr_addr
  3065. ; <ENTER_DEC_PTR 1203
  3066.  
  3067. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4133
  3068. %dataptr_leave_4133 = load i32, i32* %dataptr_addr
  3069. %element_addr_leave_4133 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4133
  3070. %element_leave_4133 = load i8, i8* %element_addr_leave_4133
  3071. %compare_zero_leave_4133 = icmp ne i8 %element_leave_4133, 0
  3072. br i1 %compare_zero_leave_4133, label %loop_body_4133, label %post_loop_4133
  3073. post_loop_4133:
  3074. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4133
  3075.  
  3076. ; >ENTER_DEC_PTR 1209
  3077. %dataptr_1209 = load i32, i32* %dataptr_addr
  3078. %dec_dataptr_1209 = sub i32 %dataptr_1209, 14
  3079. store i32 %dec_dataptr_1209, i32* %dataptr_addr
  3080. ; <ENTER_DEC_PTR 1209
  3081.  
  3082. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4134
  3083. %dataptr_leave_4134 = load i32, i32* %dataptr_addr
  3084. %element_addr_leave_4134 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4134
  3085. %element_leave_4134 = load i8, i8* %element_addr_leave_4134
  3086. %compare_zero_leave_4134 = icmp ne i8 %element_leave_4134, 0
  3087. br i1 %compare_zero_leave_4134, label %loop_body_4134, label %post_loop_4134
  3088. post_loop_4134:
  3089. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4134
  3090.  
  3091. ; >ENTER_INC_PTR 1225
  3092. %dataptr_1225 = load i32, i32* %dataptr_addr
  3093. %inc_dataptr_1225 = add i32 %dataptr_1225, 10
  3094. store i32 %inc_dataptr_1225, i32* %dataptr_addr
  3095. ; <ENTER_INC_PTR 1225
  3096.  
  3097. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4136
  3098. %dataptr_enter_4136 = load i32, i32* %dataptr_addr
  3099. %element_addr_enter_4136 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4136
  3100. %element_enter_4136 = load i8, i8* %element_addr_enter_4136
  3101. %compare_zero_enter_4136 = icmp eq i8 %element_enter_4136, 0
  3102. br i1 %compare_zero_enter_4136, label %post_loop_4136, label %loop_body_4136
  3103. loop_body_4136:
  3104. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4136
  3105.  
  3106. ; >ENTER_INC_PTR 1236
  3107. %dataptr_1236 = load i32, i32* %dataptr_addr
  3108. %inc_dataptr_1236 = add i32 %dataptr_1236, 7
  3109. store i32 %inc_dataptr_1236, i32* %dataptr_addr
  3110. ; <ENTER_INC_PTR 1236
  3111.  
  3112. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4135
  3113. %dataptr_enter_4135 = load i32, i32* %dataptr_addr
  3114. %element_addr_enter_4135 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4135
  3115. %element_enter_4135 = load i8, i8* %element_addr_enter_4135
  3116. %compare_zero_enter_4135 = icmp eq i8 %element_enter_4135, 0
  3117. br i1 %compare_zero_enter_4135, label %post_loop_4135, label %loop_body_4135
  3118. loop_body_4135:
  3119. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4135
  3120.  
  3121. ; >ENTER_DEC_DATA 1244
  3122. %dataptr_1244 = load i32, i32* %dataptr_addr
  3123. %element_addr_1244 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1244
  3124. %element_1244 = load i8, i8* %element_addr_1244
  3125. %sub_element_1244 = sub i8 %element_1244, 1
  3126. store i8 %sub_element_1244, i8* %element_addr_1244
  3127. ; <ENTER_DEC_DATA 1244
  3128.  
  3129. ; >ENTER_DEC_PTR 1245
  3130. %dataptr_1245 = load i32, i32* %dataptr_addr
  3131. %dec_dataptr_1245 = sub i32 %dataptr_1245, 3
  3132. store i32 %dec_dataptr_1245, i32* %dataptr_addr
  3133. ; <ENTER_DEC_PTR 1245
  3134.  
  3135. ; >ENTER_INC_DATA 1248
  3136. %dataptr_1248 = load i32, i32* %dataptr_addr
  3137. %element_addr_1248 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1248
  3138. %element_1248 = load i8, i8* %element_addr_1248
  3139. %inc_element_1248 = add i8 %element_1248, 1
  3140. store i8 %inc_element_1248, i8* %element_addr_1248
  3141. ; <ENTER_INC_DATA 1248
  3142.  
  3143. ; >ENTER_INC_PTR 1249
  3144. %dataptr_1249 = load i32, i32* %dataptr_addr
  3145. %inc_dataptr_1249 = add i32 %dataptr_1249, 3
  3146. store i32 %inc_dataptr_1249, i32* %dataptr_addr
  3147. ; <ENTER_INC_PTR 1249
  3148.  
  3149. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4135
  3150. %dataptr_leave_4135 = load i32, i32* %dataptr_addr
  3151. %element_addr_leave_4135 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4135
  3152. %element_leave_4135 = load i8, i8* %element_addr_leave_4135
  3153. %compare_zero_leave_4135 = icmp ne i8 %element_leave_4135, 0
  3154. br i1 %compare_zero_leave_4135, label %loop_body_4135, label %post_loop_4135
  3155. post_loop_4135:
  3156. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4135
  3157.  
  3158. ; >ENTER_INC_PTR 1253
  3159. %dataptr_1253 = load i32, i32* %dataptr_addr
  3160. %inc_dataptr_1253 = add i32 %dataptr_1253, 3
  3161. store i32 %inc_dataptr_1253, i32* %dataptr_addr
  3162. ; <ENTER_INC_PTR 1253
  3163.  
  3164. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4136
  3165. %dataptr_leave_4136 = load i32, i32* %dataptr_addr
  3166. %element_addr_leave_4136 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4136
  3167. %element_leave_4136 = load i8, i8* %element_addr_leave_4136
  3168. %compare_zero_leave_4136 = icmp ne i8 %element_leave_4136, 0
  3169. br i1 %compare_zero_leave_4136, label %loop_body_4136, label %post_loop_4136
  3170. post_loop_4136:
  3171. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4136
  3172.  
  3173. ; >ENTER_DEC_PTR 1257
  3174. %dataptr_1257 = load i32, i32* %dataptr_addr
  3175. %dec_dataptr_1257 = sub i32 %dataptr_1257, 10
  3176. store i32 %dec_dataptr_1257, i32* %dataptr_addr
  3177. ; <ENTER_DEC_PTR 1257
  3178.  
  3179. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4142
  3180. %dataptr_enter_4142 = load i32, i32* %dataptr_addr
  3181. %element_addr_enter_4142 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4142
  3182. %element_enter_4142 = load i8, i8* %element_addr_enter_4142
  3183. %compare_zero_enter_4142 = icmp eq i8 %element_enter_4142, 0
  3184. br i1 %compare_zero_enter_4142, label %post_loop_4142, label %loop_body_4142
  3185. loop_body_4142:
  3186. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4142
  3187.  
  3188. ; >ENTER_INC_PTR 1269
  3189. %dataptr_1269 = load i32, i32* %dataptr_addr
  3190. %inc_dataptr_1269 = add i32 %dataptr_1269, 8
  3191. store i32 %inc_dataptr_1269, i32* %dataptr_addr
  3192. ; <ENTER_INC_PTR 1269
  3193.  
  3194. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4137
  3195. %dataptr_enter_4137 = load i32, i32* %dataptr_addr
  3196. %element_addr_enter_4137 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4137
  3197. %element_enter_4137 = load i8, i8* %element_addr_enter_4137
  3198. %compare_zero_enter_4137 = icmp eq i8 %element_enter_4137, 0
  3199. br i1 %compare_zero_enter_4137, label %post_loop_4137, label %loop_body_4137
  3200. loop_body_4137:
  3201. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4137
  3202.  
  3203. ; >ENTER_DEC_DATA 1278
  3204. %dataptr_1278 = load i32, i32* %dataptr_addr
  3205. %element_addr_1278 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1278
  3206. %element_1278 = load i8, i8* %element_addr_1278
  3207. %sub_element_1278 = sub i8 %element_1278, 1
  3208. store i8 %sub_element_1278, i8* %element_addr_1278
  3209. ; <ENTER_DEC_DATA 1278
  3210.  
  3211. ; >ENTER_INC_PTR 1279
  3212. %dataptr_1279 = load i32, i32* %dataptr_addr
  3213. %inc_dataptr_1279 = add i32 %dataptr_1279, 1
  3214. store i32 %inc_dataptr_1279, i32* %dataptr_addr
  3215. ; <ENTER_INC_PTR 1279
  3216.  
  3217. ; >ENTER_DEC_DATA 1280
  3218. %dataptr_1280 = load i32, i32* %dataptr_addr
  3219. %element_addr_1280 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1280
  3220. %element_1280 = load i8, i8* %element_addr_1280
  3221. %sub_element_1280 = sub i8 %element_1280, 1
  3222. store i8 %sub_element_1280, i8* %element_addr_1280
  3223. ; <ENTER_DEC_DATA 1280
  3224.  
  3225. ; >ENTER_DEC_PTR 1281
  3226. %dataptr_1281 = load i32, i32* %dataptr_addr
  3227. %dec_dataptr_1281 = sub i32 %dataptr_1281, 1
  3228. store i32 %dec_dataptr_1281, i32* %dataptr_addr
  3229. ; <ENTER_DEC_PTR 1281
  3230.  
  3231. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4137
  3232. %dataptr_leave_4137 = load i32, i32* %dataptr_addr
  3233. %element_addr_leave_4137 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4137
  3234. %element_leave_4137 = load i8, i8* %element_addr_leave_4137
  3235. %compare_zero_leave_4137 = icmp ne i8 %element_leave_4137, 0
  3236. br i1 %compare_zero_leave_4137, label %loop_body_4137, label %post_loop_4137
  3237. post_loop_4137:
  3238. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4137
  3239.  
  3240. ; >ENTER_INC_PTR 1283
  3241. %dataptr_1283 = load i32, i32* %dataptr_addr
  3242. %inc_dataptr_1283 = add i32 %dataptr_1283, 1
  3243. store i32 %inc_dataptr_1283, i32* %dataptr_addr
  3244. ; <ENTER_INC_PTR 1283
  3245.  
  3246. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4141
  3247. %dataptr_enter_4141 = load i32, i32* %dataptr_addr
  3248. %element_addr_enter_4141 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4141
  3249. %element_enter_4141 = load i8, i8* %element_addr_enter_4141
  3250. %compare_zero_enter_4141 = icmp eq i8 %element_enter_4141, 0
  3251. br i1 %compare_zero_enter_4141, label %post_loop_4141, label %loop_body_4141
  3252. loop_body_4141:
  3253. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4141
  3254.  
  3255. ; >ENTER_DEC_PTR 1286
  3256. %dataptr_1286 = load i32, i32* %dataptr_addr
  3257. %dec_dataptr_1286 = sub i32 %dataptr_1286, 9
  3258. store i32 %dec_dataptr_1286, i32* %dataptr_addr
  3259. ; <ENTER_DEC_PTR 1286
  3260.  
  3261. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4140
  3262. %dataptr_enter_4140 = load i32, i32* %dataptr_addr
  3263. %element_addr_enter_4140 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4140
  3264. %element_enter_4140 = load i8, i8* %element_addr_enter_4140
  3265. %compare_zero_enter_4140 = icmp eq i8 %element_enter_4140, 0
  3266. br i1 %compare_zero_enter_4140, label %post_loop_4140, label %loop_body_4140
  3267. loop_body_4140:
  3268. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4140
  3269.  
  3270. ; >ENTER_DEC_PTR 1296
  3271. %dataptr_1296 = load i32, i32* %dataptr_addr
  3272. %dec_dataptr_1296 = sub i32 %dataptr_1296, 1
  3273. store i32 %dec_dataptr_1296, i32* %dataptr_addr
  3274. ; <ENTER_DEC_PTR 1296
  3275.  
  3276. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4138
  3277. %dataptr_enter_4138 = load i32, i32* %dataptr_addr
  3278. %element_addr_enter_4138 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4138
  3279. %element_enter_4138 = load i8, i8* %element_addr_enter_4138
  3280. %compare_zero_enter_4138 = icmp eq i8 %element_enter_4138, 0
  3281. br i1 %compare_zero_enter_4138, label %post_loop_4138, label %loop_body_4138
  3282. loop_body_4138:
  3283. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4138
  3284.  
  3285. ; >ENTER_DEC_DATA 1298
  3286. %dataptr_1298 = load i32, i32* %dataptr_addr
  3287. %element_addr_1298 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1298
  3288. %element_1298 = load i8, i8* %element_addr_1298
  3289. %sub_element_1298 = sub i8 %element_1298, 1
  3290. store i8 %sub_element_1298, i8* %element_addr_1298
  3291. ; <ENTER_DEC_DATA 1298
  3292.  
  3293. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4138
  3294. %dataptr_leave_4138 = load i32, i32* %dataptr_addr
  3295. %element_addr_leave_4138 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4138
  3296. %element_leave_4138 = load i8, i8* %element_addr_leave_4138
  3297. %compare_zero_leave_4138 = icmp ne i8 %element_leave_4138, 0
  3298. br i1 %compare_zero_leave_4138, label %loop_body_4138, label %post_loop_4138
  3299. post_loop_4138:
  3300. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4138
  3301.  
  3302. ; >ENTER_INC_PTR 1300
  3303. %dataptr_1300 = load i32, i32* %dataptr_addr
  3304. %inc_dataptr_1300 = add i32 %dataptr_1300, 10
  3305. store i32 %inc_dataptr_1300, i32* %dataptr_addr
  3306. ; <ENTER_INC_PTR 1300
  3307.  
  3308. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4139
  3309. %dataptr_enter_4139 = load i32, i32* %dataptr_addr
  3310. %element_addr_enter_4139 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4139
  3311. %element_enter_4139 = load i8, i8* %element_addr_enter_4139
  3312. %compare_zero_enter_4139 = icmp eq i8 %element_enter_4139, 0
  3313. br i1 %compare_zero_enter_4139, label %post_loop_4139, label %loop_body_4139
  3314. loop_body_4139:
  3315. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4139
  3316.  
  3317. ; >ENTER_DEC_DATA 1311
  3318. %dataptr_1311 = load i32, i32* %dataptr_addr
  3319. %element_addr_1311 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1311
  3320. %element_1311 = load i8, i8* %element_addr_1311
  3321. %sub_element_1311 = sub i8 %element_1311, 1
  3322. store i8 %sub_element_1311, i8* %element_addr_1311
  3323. ; <ENTER_DEC_DATA 1311
  3324.  
  3325. ; >ENTER_DEC_PTR 1312
  3326. %dataptr_1312 = load i32, i32* %dataptr_addr
  3327. %dec_dataptr_1312 = sub i32 %dataptr_1312, 10
  3328. store i32 %dec_dataptr_1312, i32* %dataptr_addr
  3329. ; <ENTER_DEC_PTR 1312
  3330.  
  3331. ; >ENTER_INC_DATA 1322
  3332. %dataptr_1322 = load i32, i32* %dataptr_addr
  3333. %element_addr_1322 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1322
  3334. %element_1322 = load i8, i8* %element_addr_1322
  3335. %inc_element_1322 = add i8 %element_1322, 1
  3336. store i8 %inc_element_1322, i8* %element_addr_1322
  3337. ; <ENTER_INC_DATA 1322
  3338.  
  3339. ; >ENTER_INC_PTR 1323
  3340. %dataptr_1323 = load i32, i32* %dataptr_addr
  3341. %inc_dataptr_1323 = add i32 %dataptr_1323, 10
  3342. store i32 %inc_dataptr_1323, i32* %dataptr_addr
  3343. ; <ENTER_INC_PTR 1323
  3344.  
  3345. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4139
  3346. %dataptr_leave_4139 = load i32, i32* %dataptr_addr
  3347. %element_addr_leave_4139 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4139
  3348. %element_leave_4139 = load i8, i8* %element_addr_leave_4139
  3349. %compare_zero_leave_4139 = icmp ne i8 %element_leave_4139, 0
  3350. br i1 %compare_zero_leave_4139, label %loop_body_4139, label %post_loop_4139
  3351. post_loop_4139:
  3352. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4139
  3353.  
  3354. ; >ENTER_DEC_PTR 1334
  3355. %dataptr_1334 = load i32, i32* %dataptr_addr
  3356. %dec_dataptr_1334 = sub i32 %dataptr_1334, 19
  3357. store i32 %dec_dataptr_1334, i32* %dataptr_addr
  3358. ; <ENTER_DEC_PTR 1334
  3359.  
  3360. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4140
  3361. %dataptr_leave_4140 = load i32, i32* %dataptr_addr
  3362. %element_addr_leave_4140 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4140
  3363. %element_leave_4140 = load i8, i8* %element_addr_leave_4140
  3364. %compare_zero_leave_4140 = icmp ne i8 %element_leave_4140, 0
  3365. br i1 %compare_zero_leave_4140, label %loop_body_4140, label %post_loop_4140
  3366. post_loop_4140:
  3367. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4140
  3368.  
  3369. ; >ENTER_INC_PTR 1355
  3370. %dataptr_1355 = load i32, i32* %dataptr_addr
  3371. %inc_dataptr_1355 = add i32 %dataptr_1355, 19
  3372. store i32 %inc_dataptr_1355, i32* %dataptr_addr
  3373. ; <ENTER_INC_PTR 1355
  3374.  
  3375. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4141
  3376. %dataptr_leave_4141 = load i32, i32* %dataptr_addr
  3377. %element_addr_leave_4141 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4141
  3378. %element_leave_4141 = load i8, i8* %element_addr_leave_4141
  3379. %compare_zero_leave_4141 = icmp ne i8 %element_leave_4141, 0
  3380. br i1 %compare_zero_leave_4141, label %loop_body_4141, label %post_loop_4141
  3381. post_loop_4141:
  3382. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4141
  3383.  
  3384. ; >ENTER_DEC_PTR 1376
  3385. %dataptr_1376 = load i32, i32* %dataptr_addr
  3386. %dec_dataptr_1376 = sub i32 %dataptr_1376, 19
  3387. store i32 %dec_dataptr_1376, i32* %dataptr_addr
  3388. ; <ENTER_DEC_PTR 1376
  3389.  
  3390. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4142
  3391. %dataptr_leave_4142 = load i32, i32* %dataptr_addr
  3392. %element_addr_leave_4142 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4142
  3393. %element_leave_4142 = load i8, i8* %element_addr_leave_4142
  3394. %compare_zero_leave_4142 = icmp ne i8 %element_leave_4142, 0
  3395. br i1 %compare_zero_leave_4142, label %loop_body_4142, label %post_loop_4142
  3396. post_loop_4142:
  3397. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4142
  3398.  
  3399. ; >ENTER_INC_PTR 1397
  3400. %dataptr_1397 = load i32, i32* %dataptr_addr
  3401. %inc_dataptr_1397 = add i32 %dataptr_1397, 9
  3402. store i32 %inc_dataptr_1397, i32* %dataptr_addr
  3403. ; <ENTER_INC_PTR 1397
  3404.  
  3405. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4154
  3406. %dataptr_enter_4154 = load i32, i32* %dataptr_addr
  3407. %element_addr_enter_4154 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4154
  3408. %element_enter_4154 = load i8, i8* %element_addr_enter_4154
  3409. %compare_zero_enter_4154 = icmp eq i8 %element_enter_4154, 0
  3410. br i1 %compare_zero_enter_4154, label %post_loop_4154, label %loop_body_4154
  3411. loop_body_4154:
  3412. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4154
  3413.  
  3414. ; >ENTER_INC_DATA 1407
  3415. %dataptr_1407 = load i32, i32* %dataptr_addr
  3416. %element_addr_1407 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1407
  3417. %element_1407 = load i8, i8* %element_addr_1407
  3418. %inc_element_1407 = add i8 %element_1407, 1
  3419. store i8 %inc_element_1407, i8* %element_addr_1407
  3420. ; <ENTER_INC_DATA 1407
  3421.  
  3422. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4153
  3423. %dataptr_enter_4153 = load i32, i32* %dataptr_addr
  3424. %element_addr_enter_4153 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4153
  3425. %element_enter_4153 = load i8, i8* %element_addr_enter_4153
  3426. %compare_zero_enter_4153 = icmp eq i8 %element_enter_4153, 0
  3427. br i1 %compare_zero_enter_4153, label %post_loop_4153, label %loop_body_4153
  3428. loop_body_4153:
  3429. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4153
  3430.  
  3431. ; >ENTER_INC_DATA 1409
  3432. %dataptr_1409 = load i32, i32* %dataptr_addr
  3433. %element_addr_1409 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1409
  3434. %element_1409 = load i8, i8* %element_addr_1409
  3435. %inc_element_1409 = add i8 %element_1409, 1
  3436. store i8 %inc_element_1409, i8* %element_addr_1409
  3437. ; <ENTER_INC_DATA 1409
  3438.  
  3439. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4152
  3440. %dataptr_enter_4152 = load i32, i32* %dataptr_addr
  3441. %element_addr_enter_4152 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4152
  3442. %element_enter_4152 = load i8, i8* %element_addr_enter_4152
  3443. %compare_zero_enter_4152 = icmp eq i8 %element_enter_4152, 0
  3444. br i1 %compare_zero_enter_4152, label %post_loop_4152, label %loop_body_4152
  3445. loop_body_4152:
  3446. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4152
  3447.  
  3448. ; >ENTER_INC_DATA 1411
  3449. %dataptr_1411 = load i32, i32* %dataptr_addr
  3450. %element_addr_1411 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1411
  3451. %element_1411 = load i8, i8* %element_addr_1411
  3452. %inc_element_1411 = add i8 %element_1411, 1
  3453. store i8 %inc_element_1411, i8* %element_addr_1411
  3454. ; <ENTER_INC_DATA 1411
  3455.  
  3456. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4151
  3457. %dataptr_enter_4151 = load i32, i32* %dataptr_addr
  3458. %element_addr_enter_4151 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4151
  3459. %element_enter_4151 = load i8, i8* %element_addr_enter_4151
  3460. %compare_zero_enter_4151 = icmp eq i8 %element_enter_4151, 0
  3461. br i1 %compare_zero_enter_4151, label %post_loop_4151, label %loop_body_4151
  3462. loop_body_4151:
  3463. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4151
  3464.  
  3465. ; >ENTER_INC_DATA 1413
  3466. %dataptr_1413 = load i32, i32* %dataptr_addr
  3467. %element_addr_1413 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1413
  3468. %element_1413 = load i8, i8* %element_addr_1413
  3469. %inc_element_1413 = add i8 %element_1413, 1
  3470. store i8 %inc_element_1413, i8* %element_addr_1413
  3471. ; <ENTER_INC_DATA 1413
  3472.  
  3473. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4150
  3474. %dataptr_enter_4150 = load i32, i32* %dataptr_addr
  3475. %element_addr_enter_4150 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4150
  3476. %element_enter_4150 = load i8, i8* %element_addr_enter_4150
  3477. %compare_zero_enter_4150 = icmp eq i8 %element_enter_4150, 0
  3478. br i1 %compare_zero_enter_4150, label %post_loop_4150, label %loop_body_4150
  3479. loop_body_4150:
  3480. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4150
  3481.  
  3482. ; >ENTER_INC_DATA 1415
  3483. %dataptr_1415 = load i32, i32* %dataptr_addr
  3484. %element_addr_1415 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1415
  3485. %element_1415 = load i8, i8* %element_addr_1415
  3486. %inc_element_1415 = add i8 %element_1415, 1
  3487. store i8 %inc_element_1415, i8* %element_addr_1415
  3488. ; <ENTER_INC_DATA 1415
  3489.  
  3490. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4149
  3491. %dataptr_enter_4149 = load i32, i32* %dataptr_addr
  3492. %element_addr_enter_4149 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4149
  3493. %element_enter_4149 = load i8, i8* %element_addr_enter_4149
  3494. %compare_zero_enter_4149 = icmp eq i8 %element_enter_4149, 0
  3495. br i1 %compare_zero_enter_4149, label %post_loop_4149, label %loop_body_4149
  3496. loop_body_4149:
  3497. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4149
  3498.  
  3499. ; >ENTER_INC_DATA 1417
  3500. %dataptr_1417 = load i32, i32* %dataptr_addr
  3501. %element_addr_1417 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1417
  3502. %element_1417 = load i8, i8* %element_addr_1417
  3503. %inc_element_1417 = add i8 %element_1417, 1
  3504. store i8 %inc_element_1417, i8* %element_addr_1417
  3505. ; <ENTER_INC_DATA 1417
  3506.  
  3507. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4148
  3508. %dataptr_enter_4148 = load i32, i32* %dataptr_addr
  3509. %element_addr_enter_4148 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4148
  3510. %element_enter_4148 = load i8, i8* %element_addr_enter_4148
  3511. %compare_zero_enter_4148 = icmp eq i8 %element_enter_4148, 0
  3512. br i1 %compare_zero_enter_4148, label %post_loop_4148, label %loop_body_4148
  3513. loop_body_4148:
  3514. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4148
  3515.  
  3516. ; >ENTER_INC_DATA 1419
  3517. %dataptr_1419 = load i32, i32* %dataptr_addr
  3518. %element_addr_1419 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1419
  3519. %element_1419 = load i8, i8* %element_addr_1419
  3520. %inc_element_1419 = add i8 %element_1419, 1
  3521. store i8 %inc_element_1419, i8* %element_addr_1419
  3522. ; <ENTER_INC_DATA 1419
  3523.  
  3524. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4147
  3525. %dataptr_enter_4147 = load i32, i32* %dataptr_addr
  3526. %element_addr_enter_4147 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4147
  3527. %element_enter_4147 = load i8, i8* %element_addr_enter_4147
  3528. %compare_zero_enter_4147 = icmp eq i8 %element_enter_4147, 0
  3529. br i1 %compare_zero_enter_4147, label %post_loop_4147, label %loop_body_4147
  3530. loop_body_4147:
  3531. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4147
  3532.  
  3533. ; >ENTER_INC_DATA 1421
  3534. %dataptr_1421 = load i32, i32* %dataptr_addr
  3535. %element_addr_1421 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1421
  3536. %element_1421 = load i8, i8* %element_addr_1421
  3537. %inc_element_1421 = add i8 %element_1421, 1
  3538. store i8 %inc_element_1421, i8* %element_addr_1421
  3539. ; <ENTER_INC_DATA 1421
  3540.  
  3541. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4146
  3542. %dataptr_enter_4146 = load i32, i32* %dataptr_addr
  3543. %element_addr_enter_4146 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4146
  3544. %element_enter_4146 = load i8, i8* %element_addr_enter_4146
  3545. %compare_zero_enter_4146 = icmp eq i8 %element_enter_4146, 0
  3546. br i1 %compare_zero_enter_4146, label %post_loop_4146, label %loop_body_4146
  3547. loop_body_4146:
  3548. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4146
  3549.  
  3550. ; >ENTER_INC_DATA 1423
  3551. %dataptr_1423 = load i32, i32* %dataptr_addr
  3552. %element_addr_1423 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1423
  3553. %element_1423 = load i8, i8* %element_addr_1423
  3554. %inc_element_1423 = add i8 %element_1423, 1
  3555. store i8 %inc_element_1423, i8* %element_addr_1423
  3556. ; <ENTER_INC_DATA 1423
  3557.  
  3558. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4145
  3559. %dataptr_enter_4145 = load i32, i32* %dataptr_addr
  3560. %element_addr_enter_4145 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4145
  3561. %element_enter_4145 = load i8, i8* %element_addr_enter_4145
  3562. %compare_zero_enter_4145 = icmp eq i8 %element_enter_4145, 0
  3563. br i1 %compare_zero_enter_4145, label %post_loop_4145, label %loop_body_4145
  3564. loop_body_4145:
  3565. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4145
  3566.  
  3567. ; >ENTER_INC_DATA 1425
  3568. %dataptr_1425 = load i32, i32* %dataptr_addr
  3569. %element_addr_1425 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1425
  3570. %element_1425 = load i8, i8* %element_addr_1425
  3571. %inc_element_1425 = add i8 %element_1425, 1
  3572. store i8 %inc_element_1425, i8* %element_addr_1425
  3573. ; <ENTER_INC_DATA 1425
  3574.  
  3575. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4144
  3576. %dataptr_enter_4144 = load i32, i32* %dataptr_addr
  3577. %element_addr_enter_4144 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4144
  3578. %element_enter_4144 = load i8, i8* %element_addr_enter_4144
  3579. %compare_zero_enter_4144 = icmp eq i8 %element_enter_4144, 0
  3580. br i1 %compare_zero_enter_4144, label %post_loop_4144, label %loop_body_4144
  3581. loop_body_4144:
  3582. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4144
  3583.  
  3584. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4143
  3585. %dataptr_enter_4143 = load i32, i32* %dataptr_addr
  3586. %element_addr_enter_4143 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4143
  3587. %element_enter_4143 = load i8, i8* %element_addr_enter_4143
  3588. %compare_zero_enter_4143 = icmp eq i8 %element_enter_4143, 0
  3589. br i1 %compare_zero_enter_4143, label %post_loop_4143, label %loop_body_4143
  3590. loop_body_4143:
  3591. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4143
  3592.  
  3593. ; >ENTER_DEC_DATA 1428
  3594. %dataptr_1428 = load i32, i32* %dataptr_addr
  3595. %element_addr_1428 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1428
  3596. %element_1428 = load i8, i8* %element_addr_1428
  3597. %sub_element_1428 = sub i8 %element_1428, 1
  3598. store i8 %sub_element_1428, i8* %element_addr_1428
  3599. ; <ENTER_DEC_DATA 1428
  3600.  
  3601. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4143
  3602. %dataptr_leave_4143 = load i32, i32* %dataptr_addr
  3603. %element_addr_leave_4143 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4143
  3604. %element_leave_4143 = load i8, i8* %element_addr_leave_4143
  3605. %compare_zero_leave_4143 = icmp ne i8 %element_leave_4143, 0
  3606. br i1 %compare_zero_leave_4143, label %loop_body_4143, label %post_loop_4143
  3607. post_loop_4143:
  3608. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4143
  3609.  
  3610. ; >ENTER_DEC_PTR 1430
  3611. %dataptr_1430 = load i32, i32* %dataptr_addr
  3612. %dec_dataptr_1430 = sub i32 %dataptr_1430, 1
  3613. store i32 %dec_dataptr_1430, i32* %dataptr_addr
  3614. ; <ENTER_DEC_PTR 1430
  3615.  
  3616. ; >ENTER_INC_DATA 1431
  3617. %dataptr_1431 = load i32, i32* %dataptr_addr
  3618. %element_addr_1431 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1431
  3619. %element_1431 = load i8, i8* %element_addr_1431
  3620. %inc_element_1431 = add i8 %element_1431, 1
  3621. store i8 %inc_element_1431, i8* %element_addr_1431
  3622. ; <ENTER_INC_DATA 1431
  3623.  
  3624. ; >ENTER_INC_PTR 1432
  3625. %dataptr_1432 = load i32, i32* %dataptr_addr
  3626. %inc_dataptr_1432 = add i32 %dataptr_1432, 1
  3627. store i32 %inc_dataptr_1432, i32* %dataptr_addr
  3628. ; <ENTER_INC_PTR 1432
  3629.  
  3630. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4144
  3631. %dataptr_leave_4144 = load i32, i32* %dataptr_addr
  3632. %element_addr_leave_4144 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4144
  3633. %element_leave_4144 = load i8, i8* %element_addr_leave_4144
  3634. %compare_zero_leave_4144 = icmp ne i8 %element_leave_4144, 0
  3635. br i1 %compare_zero_leave_4144, label %loop_body_4144, label %post_loop_4144
  3636. post_loop_4144:
  3637. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4144
  3638.  
  3639. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4145
  3640. %dataptr_leave_4145 = load i32, i32* %dataptr_addr
  3641. %element_addr_leave_4145 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4145
  3642. %element_leave_4145 = load i8, i8* %element_addr_leave_4145
  3643. %compare_zero_leave_4145 = icmp ne i8 %element_leave_4145, 0
  3644. br i1 %compare_zero_leave_4145, label %loop_body_4145, label %post_loop_4145
  3645. post_loop_4145:
  3646. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4145
  3647.  
  3648. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4146
  3649. %dataptr_leave_4146 = load i32, i32* %dataptr_addr
  3650. %element_addr_leave_4146 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4146
  3651. %element_leave_4146 = load i8, i8* %element_addr_leave_4146
  3652. %compare_zero_leave_4146 = icmp ne i8 %element_leave_4146, 0
  3653. br i1 %compare_zero_leave_4146, label %loop_body_4146, label %post_loop_4146
  3654. post_loop_4146:
  3655. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4146
  3656.  
  3657. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4147
  3658. %dataptr_leave_4147 = load i32, i32* %dataptr_addr
  3659. %element_addr_leave_4147 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4147
  3660. %element_leave_4147 = load i8, i8* %element_addr_leave_4147
  3661. %compare_zero_leave_4147 = icmp ne i8 %element_leave_4147, 0
  3662. br i1 %compare_zero_leave_4147, label %loop_body_4147, label %post_loop_4147
  3663. post_loop_4147:
  3664. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4147
  3665.  
  3666. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4148
  3667. %dataptr_leave_4148 = load i32, i32* %dataptr_addr
  3668. %element_addr_leave_4148 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4148
  3669. %element_leave_4148 = load i8, i8* %element_addr_leave_4148
  3670. %compare_zero_leave_4148 = icmp ne i8 %element_leave_4148, 0
  3671. br i1 %compare_zero_leave_4148, label %loop_body_4148, label %post_loop_4148
  3672. post_loop_4148:
  3673. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4148
  3674.  
  3675. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4149
  3676. %dataptr_leave_4149 = load i32, i32* %dataptr_addr
  3677. %element_addr_leave_4149 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4149
  3678. %element_leave_4149 = load i8, i8* %element_addr_leave_4149
  3679. %compare_zero_leave_4149 = icmp ne i8 %element_leave_4149, 0
  3680. br i1 %compare_zero_leave_4149, label %loop_body_4149, label %post_loop_4149
  3681. post_loop_4149:
  3682. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4149
  3683.  
  3684. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4150
  3685. %dataptr_leave_4150 = load i32, i32* %dataptr_addr
  3686. %element_addr_leave_4150 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4150
  3687. %element_leave_4150 = load i8, i8* %element_addr_leave_4150
  3688. %compare_zero_leave_4150 = icmp ne i8 %element_leave_4150, 0
  3689. br i1 %compare_zero_leave_4150, label %loop_body_4150, label %post_loop_4150
  3690. post_loop_4150:
  3691. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4150
  3692.  
  3693. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4151
  3694. %dataptr_leave_4151 = load i32, i32* %dataptr_addr
  3695. %element_addr_leave_4151 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4151
  3696. %element_leave_4151 = load i8, i8* %element_addr_leave_4151
  3697. %compare_zero_leave_4151 = icmp ne i8 %element_leave_4151, 0
  3698. br i1 %compare_zero_leave_4151, label %loop_body_4151, label %post_loop_4151
  3699. post_loop_4151:
  3700. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4151
  3701.  
  3702. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4152
  3703. %dataptr_leave_4152 = load i32, i32* %dataptr_addr
  3704. %element_addr_leave_4152 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4152
  3705. %element_leave_4152 = load i8, i8* %element_addr_leave_4152
  3706. %compare_zero_leave_4152 = icmp ne i8 %element_leave_4152, 0
  3707. br i1 %compare_zero_leave_4152, label %loop_body_4152, label %post_loop_4152
  3708. post_loop_4152:
  3709. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4152
  3710.  
  3711. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4153
  3712. %dataptr_leave_4153 = load i32, i32* %dataptr_addr
  3713. %element_addr_leave_4153 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4153
  3714. %element_leave_4153 = load i8, i8* %element_addr_leave_4153
  3715. %compare_zero_leave_4153 = icmp ne i8 %element_leave_4153, 0
  3716. br i1 %compare_zero_leave_4153, label %loop_body_4153, label %post_loop_4153
  3717. post_loop_4153:
  3718. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4153
  3719.  
  3720. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4154
  3721. %dataptr_leave_4154 = load i32, i32* %dataptr_addr
  3722. %element_addr_leave_4154 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4154
  3723. %element_leave_4154 = load i8, i8* %element_addr_leave_4154
  3724. %compare_zero_leave_4154 = icmp ne i8 %element_leave_4154, 0
  3725. br i1 %compare_zero_leave_4154, label %loop_body_4154, label %post_loop_4154
  3726. post_loop_4154:
  3727. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4154
  3728.  
  3729. ; >ENTER_DEC_PTR 1444
  3730. %dataptr_1444 = load i32, i32* %dataptr_addr
  3731. %dec_dataptr_1444 = sub i32 %dataptr_1444, 1
  3732. store i32 %dec_dataptr_1444, i32* %dataptr_addr
  3733. ; <ENTER_DEC_PTR 1444
  3734.  
  3735. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4155
  3736. %dataptr_leave_4155 = load i32, i32* %dataptr_addr
  3737. %element_addr_leave_4155 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4155
  3738. %element_leave_4155 = load i8, i8* %element_addr_leave_4155
  3739. %compare_zero_leave_4155 = icmp ne i8 %element_leave_4155, 0
  3740. br i1 %compare_zero_leave_4155, label %loop_body_4155, label %post_loop_4155
  3741. post_loop_4155:
  3742. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4155
  3743.  
  3744. ; >ENTER_INC_PTR 1448
  3745. %dataptr_1448 = load i32, i32* %dataptr_addr
  3746. %inc_dataptr_1448 = add i32 %dataptr_1448, 8
  3747. store i32 %inc_dataptr_1448, i32* %dataptr_addr
  3748. ; <ENTER_INC_PTR 1448
  3749.  
  3750. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4236
  3751. %dataptr_enter_4236 = load i32, i32* %dataptr_addr
  3752. %element_addr_enter_4236 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4236
  3753. %element_enter_4236 = load i8, i8* %element_addr_enter_4236
  3754. %compare_zero_enter_4236 = icmp eq i8 %element_enter_4236, 0
  3755. br i1 %compare_zero_enter_4236, label %post_loop_4236, label %loop_body_4236
  3756. loop_body_4236:
  3757. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4236
  3758.  
  3759. ; >ENTER_DEC_PTR 1459
  3760. %dataptr_1459 = load i32, i32* %dataptr_addr
  3761. %dec_dataptr_1459 = sub i32 %dataptr_1459, 6
  3762. store i32 %dec_dataptr_1459, i32* %dataptr_addr
  3763. ; <ENTER_DEC_PTR 1459
  3764.  
  3765. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4159
  3766. %dataptr_enter_4159 = load i32, i32* %dataptr_addr
  3767. %element_addr_enter_4159 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4159
  3768. %element_enter_4159 = load i8, i8* %element_addr_enter_4159
  3769. %compare_zero_enter_4159 = icmp eq i8 %element_enter_4159, 0
  3770. br i1 %compare_zero_enter_4159, label %post_loop_4159, label %loop_body_4159
  3771. loop_body_4159:
  3772. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4159
  3773.  
  3774. ; >ENTER_INC_PTR 1467
  3775. %dataptr_1467 = load i32, i32* %dataptr_addr
  3776. %inc_dataptr_1467 = add i32 %dataptr_1467, 8
  3777. store i32 %inc_dataptr_1467, i32* %dataptr_addr
  3778. ; <ENTER_INC_PTR 1467
  3779.  
  3780. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4156
  3781. %dataptr_enter_4156 = load i32, i32* %dataptr_addr
  3782. %element_addr_enter_4156 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4156
  3783. %element_enter_4156 = load i8, i8* %element_addr_enter_4156
  3784. %compare_zero_enter_4156 = icmp eq i8 %element_enter_4156, 0
  3785. br i1 %compare_zero_enter_4156, label %post_loop_4156, label %loop_body_4156
  3786. loop_body_4156:
  3787. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4156
  3788.  
  3789. ; >ENTER_DEC_DATA 1476
  3790. %dataptr_1476 = load i32, i32* %dataptr_addr
  3791. %element_addr_1476 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1476
  3792. %element_1476 = load i8, i8* %element_addr_1476
  3793. %sub_element_1476 = sub i8 %element_1476, 1
  3794. store i8 %sub_element_1476, i8* %element_addr_1476
  3795. ; <ENTER_DEC_DATA 1476
  3796.  
  3797. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4156
  3798. %dataptr_leave_4156 = load i32, i32* %dataptr_addr
  3799. %element_addr_leave_4156 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4156
  3800. %element_leave_4156 = load i8, i8* %element_addr_leave_4156
  3801. %compare_zero_leave_4156 = icmp ne i8 %element_leave_4156, 0
  3802. br i1 %compare_zero_leave_4156, label %loop_body_4156, label %post_loop_4156
  3803. post_loop_4156:
  3804. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4156
  3805.  
  3806. ; >ENTER_INC_PTR 1478
  3807. %dataptr_1478 = load i32, i32* %dataptr_addr
  3808. %inc_dataptr_1478 = add i32 %dataptr_1478, 1
  3809. store i32 %inc_dataptr_1478, i32* %dataptr_addr
  3810. ; <ENTER_INC_PTR 1478
  3811.  
  3812. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4157
  3813. %dataptr_enter_4157 = load i32, i32* %dataptr_addr
  3814. %element_addr_enter_4157 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4157
  3815. %element_enter_4157 = load i8, i8* %element_addr_enter_4157
  3816. %compare_zero_enter_4157 = icmp eq i8 %element_enter_4157, 0
  3817. br i1 %compare_zero_enter_4157, label %post_loop_4157, label %loop_body_4157
  3818. loop_body_4157:
  3819. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4157
  3820.  
  3821. ; >ENTER_DEC_DATA 1480
  3822. %dataptr_1480 = load i32, i32* %dataptr_addr
  3823. %element_addr_1480 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1480
  3824. %element_1480 = load i8, i8* %element_addr_1480
  3825. %sub_element_1480 = sub i8 %element_1480, 1
  3826. store i8 %sub_element_1480, i8* %element_addr_1480
  3827. ; <ENTER_DEC_DATA 1480
  3828.  
  3829. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4157
  3830. %dataptr_leave_4157 = load i32, i32* %dataptr_addr
  3831. %element_addr_leave_4157 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4157
  3832. %element_leave_4157 = load i8, i8* %element_addr_leave_4157
  3833. %compare_zero_leave_4157 = icmp ne i8 %element_leave_4157, 0
  3834. br i1 %compare_zero_leave_4157, label %loop_body_4157, label %post_loop_4157
  3835. post_loop_4157:
  3836. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4157
  3837.  
  3838. ; >ENTER_DEC_PTR 1482
  3839. %dataptr_1482 = load i32, i32* %dataptr_addr
  3840. %dec_dataptr_1482 = sub i32 %dataptr_1482, 5
  3841. store i32 %dec_dataptr_1482, i32* %dataptr_addr
  3842. ; <ENTER_DEC_PTR 1482
  3843.  
  3844. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4158
  3845. %dataptr_enter_4158 = load i32, i32* %dataptr_addr
  3846. %element_addr_enter_4158 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4158
  3847. %element_enter_4158 = load i8, i8* %element_addr_enter_4158
  3848. %compare_zero_enter_4158 = icmp eq i8 %element_enter_4158, 0
  3849. br i1 %compare_zero_enter_4158, label %post_loop_4158, label %loop_body_4158
  3850. loop_body_4158:
  3851. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4158
  3852.  
  3853. ; >ENTER_DEC_DATA 1488
  3854. %dataptr_1488 = load i32, i32* %dataptr_addr
  3855. %element_addr_1488 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1488
  3856. %element_1488 = load i8, i8* %element_addr_1488
  3857. %sub_element_1488 = sub i8 %element_1488, 1
  3858. store i8 %sub_element_1488, i8* %element_addr_1488
  3859. ; <ENTER_DEC_DATA 1488
  3860.  
  3861. ; >ENTER_INC_PTR 1489
  3862. %dataptr_1489 = load i32, i32* %dataptr_addr
  3863. %inc_dataptr_1489 = add i32 %dataptr_1489, 3
  3864. store i32 %inc_dataptr_1489, i32* %dataptr_addr
  3865. ; <ENTER_INC_PTR 1489
  3866.  
  3867. ; >ENTER_INC_DATA 1492
  3868. %dataptr_1492 = load i32, i32* %dataptr_addr
  3869. %element_addr_1492 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1492
  3870. %element_1492 = load i8, i8* %element_addr_1492
  3871. %inc_element_1492 = add i8 %element_1492, 1
  3872. store i8 %inc_element_1492, i8* %element_addr_1492
  3873. ; <ENTER_INC_DATA 1492
  3874.  
  3875. ; >ENTER_INC_PTR 1493
  3876. %dataptr_1493 = load i32, i32* %dataptr_addr
  3877. %inc_dataptr_1493 = add i32 %dataptr_1493, 1
  3878. store i32 %inc_dataptr_1493, i32* %dataptr_addr
  3879. ; <ENTER_INC_PTR 1493
  3880.  
  3881. ; >ENTER_INC_DATA 1494
  3882. %dataptr_1494 = load i32, i32* %dataptr_addr
  3883. %element_addr_1494 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1494
  3884. %element_1494 = load i8, i8* %element_addr_1494
  3885. %inc_element_1494 = add i8 %element_1494, 1
  3886. store i8 %inc_element_1494, i8* %element_addr_1494
  3887. ; <ENTER_INC_DATA 1494
  3888.  
  3889. ; >ENTER_DEC_PTR 1495
  3890. %dataptr_1495 = load i32, i32* %dataptr_addr
  3891. %dec_dataptr_1495 = sub i32 %dataptr_1495, 4
  3892. store i32 %dec_dataptr_1495, i32* %dataptr_addr
  3893. ; <ENTER_DEC_PTR 1495
  3894.  
  3895. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4158
  3896. %dataptr_leave_4158 = load i32, i32* %dataptr_addr
  3897. %element_addr_leave_4158 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4158
  3898. %element_leave_4158 = load i8, i8* %element_addr_leave_4158
  3899. %compare_zero_leave_4158 = icmp ne i8 %element_leave_4158, 0
  3900. br i1 %compare_zero_leave_4158, label %loop_body_4158, label %post_loop_4158
  3901. post_loop_4158:
  3902. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4158
  3903.  
  3904. ; >ENTER_INC_PTR 1500
  3905. %dataptr_1500 = load i32, i32* %dataptr_addr
  3906. %inc_dataptr_1500 = add i32 %dataptr_1500, 6
  3907. store i32 %inc_dataptr_1500, i32* %dataptr_addr
  3908. ; <ENTER_INC_PTR 1500
  3909.  
  3910. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4159
  3911. %dataptr_leave_4159 = load i32, i32* %dataptr_addr
  3912. %element_addr_leave_4159 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4159
  3913. %element_leave_4159 = load i8, i8* %element_addr_leave_4159
  3914. %compare_zero_leave_4159 = icmp ne i8 %element_leave_4159, 0
  3915. br i1 %compare_zero_leave_4159, label %loop_body_4159, label %post_loop_4159
  3916. post_loop_4159:
  3917. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4159
  3918.  
  3919. ; >ENTER_DEC_PTR 1507
  3920. %dataptr_1507 = load i32, i32* %dataptr_addr
  3921. %dec_dataptr_1507 = sub i32 %dataptr_1507, 10
  3922. store i32 %dec_dataptr_1507, i32* %dataptr_addr
  3923. ; <ENTER_DEC_PTR 1507
  3924.  
  3925. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4162
  3926. %dataptr_enter_4162 = load i32, i32* %dataptr_addr
  3927. %element_addr_enter_4162 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4162
  3928. %element_enter_4162 = load i8, i8* %element_addr_enter_4162
  3929. %compare_zero_enter_4162 = icmp eq i8 %element_enter_4162, 0
  3930. br i1 %compare_zero_enter_4162, label %post_loop_4162, label %loop_body_4162
  3931. loop_body_4162:
  3932. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4162
  3933.  
  3934. ; >ENTER_INC_PTR 1519
  3935. %dataptr_1519 = load i32, i32* %dataptr_addr
  3936. %inc_dataptr_1519 = add i32 %dataptr_1519, 8
  3937. store i32 %inc_dataptr_1519, i32* %dataptr_addr
  3938. ; <ENTER_INC_PTR 1519
  3939.  
  3940. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4160
  3941. %dataptr_enter_4160 = load i32, i32* %dataptr_addr
  3942. %element_addr_enter_4160 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4160
  3943. %element_enter_4160 = load i8, i8* %element_addr_enter_4160
  3944. %compare_zero_enter_4160 = icmp eq i8 %element_enter_4160, 0
  3945. br i1 %compare_zero_enter_4160, label %post_loop_4160, label %loop_body_4160
  3946. loop_body_4160:
  3947. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4160
  3948.  
  3949. ; >ENTER_DEC_DATA 1528
  3950. %dataptr_1528 = load i32, i32* %dataptr_addr
  3951. %element_addr_1528 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1528
  3952. %element_1528 = load i8, i8* %element_addr_1528
  3953. %sub_element_1528 = sub i8 %element_1528, 1
  3954. store i8 %sub_element_1528, i8* %element_addr_1528
  3955. ; <ENTER_DEC_DATA 1528
  3956.  
  3957. ; >ENTER_DEC_PTR 1529
  3958. %dataptr_1529 = load i32, i32* %dataptr_addr
  3959. %dec_dataptr_1529 = sub i32 %dataptr_1529, 4
  3960. store i32 %dec_dataptr_1529, i32* %dataptr_addr
  3961. ; <ENTER_DEC_PTR 1529
  3962.  
  3963. ; >ENTER_INC_DATA 1533
  3964. %dataptr_1533 = load i32, i32* %dataptr_addr
  3965. %element_addr_1533 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1533
  3966. %element_1533 = load i8, i8* %element_addr_1533
  3967. %inc_element_1533 = add i8 %element_1533, 1
  3968. store i8 %inc_element_1533, i8* %element_addr_1533
  3969. ; <ENTER_INC_DATA 1533
  3970.  
  3971. ; >ENTER_INC_PTR 1534
  3972. %dataptr_1534 = load i32, i32* %dataptr_addr
  3973. %inc_dataptr_1534 = add i32 %dataptr_1534, 4
  3974. store i32 %inc_dataptr_1534, i32* %dataptr_addr
  3975. ; <ENTER_INC_PTR 1534
  3976.  
  3977. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4160
  3978. %dataptr_leave_4160 = load i32, i32* %dataptr_addr
  3979. %element_addr_leave_4160 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4160
  3980. %element_leave_4160 = load i8, i8* %element_addr_leave_4160
  3981. %compare_zero_leave_4160 = icmp ne i8 %element_leave_4160, 0
  3982. br i1 %compare_zero_leave_4160, label %loop_body_4160, label %post_loop_4160
  3983. post_loop_4160:
  3984. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4160
  3985.  
  3986. ; >ENTER_DEC_PTR 1539
  3987. %dataptr_1539 = load i32, i32* %dataptr_addr
  3988. %dec_dataptr_1539 = sub i32 %dataptr_1539, 3
  3989. store i32 %dec_dataptr_1539, i32* %dataptr_addr
  3990. ; <ENTER_DEC_PTR 1539
  3991.  
  3992. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4161
  3993. %dataptr_enter_4161 = load i32, i32* %dataptr_addr
  3994. %element_addr_enter_4161 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4161
  3995. %element_enter_4161 = load i8, i8* %element_addr_enter_4161
  3996. %compare_zero_enter_4161 = icmp eq i8 %element_enter_4161, 0
  3997. br i1 %compare_zero_enter_4161, label %post_loop_4161, label %loop_body_4161
  3998. loop_body_4161:
  3999. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4161
  4000.  
  4001. ; >ENTER_DEC_DATA 1543
  4002. %dataptr_1543 = load i32, i32* %dataptr_addr
  4003. %element_addr_1543 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1543
  4004. %element_1543 = load i8, i8* %element_addr_1543
  4005. %sub_element_1543 = sub i8 %element_1543, 1
  4006. store i8 %sub_element_1543, i8* %element_addr_1543
  4007. ; <ENTER_DEC_DATA 1543
  4008.  
  4009. ; >ENTER_INC_PTR 1544
  4010. %dataptr_1544 = load i32, i32* %dataptr_addr
  4011. %inc_dataptr_1544 = add i32 %dataptr_1544, 3
  4012. store i32 %inc_dataptr_1544, i32* %dataptr_addr
  4013. ; <ENTER_INC_PTR 1544
  4014.  
  4015. ; >ENTER_INC_DATA 1547
  4016. %dataptr_1547 = load i32, i32* %dataptr_addr
  4017. %element_addr_1547 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1547
  4018. %element_1547 = load i8, i8* %element_addr_1547
  4019. %inc_element_1547 = add i8 %element_1547, 1
  4020. store i8 %inc_element_1547, i8* %element_addr_1547
  4021. ; <ENTER_INC_DATA 1547
  4022.  
  4023. ; >ENTER_INC_PTR 1548
  4024. %dataptr_1548 = load i32, i32* %dataptr_addr
  4025. %inc_dataptr_1548 = add i32 %dataptr_1548, 1
  4026. store i32 %inc_dataptr_1548, i32* %dataptr_addr
  4027. ; <ENTER_INC_PTR 1548
  4028.  
  4029. ; >ENTER_INC_DATA 1549
  4030. %dataptr_1549 = load i32, i32* %dataptr_addr
  4031. %element_addr_1549 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1549
  4032. %element_1549 = load i8, i8* %element_addr_1549
  4033. %inc_element_1549 = add i8 %element_1549, 1
  4034. store i8 %inc_element_1549, i8* %element_addr_1549
  4035. ; <ENTER_INC_DATA 1549
  4036.  
  4037. ; >ENTER_DEC_PTR 1550
  4038. %dataptr_1550 = load i32, i32* %dataptr_addr
  4039. %dec_dataptr_1550 = sub i32 %dataptr_1550, 4
  4040. store i32 %dec_dataptr_1550, i32* %dataptr_addr
  4041. ; <ENTER_DEC_PTR 1550
  4042.  
  4043. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4161
  4044. %dataptr_leave_4161 = load i32, i32* %dataptr_addr
  4045. %element_addr_leave_4161 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4161
  4046. %element_leave_4161 = load i8, i8* %element_addr_leave_4161
  4047. %compare_zero_leave_4161 = icmp ne i8 %element_leave_4161, 0
  4048. br i1 %compare_zero_leave_4161, label %loop_body_4161, label %post_loop_4161
  4049. post_loop_4161:
  4050. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4161
  4051.  
  4052. ; >ENTER_DEC_PTR 1555
  4053. %dataptr_1555 = load i32, i32* %dataptr_addr
  4054. %dec_dataptr_1555 = sub i32 %dataptr_1555, 15
  4055. store i32 %dec_dataptr_1555, i32* %dataptr_addr
  4056. ; <ENTER_DEC_PTR 1555
  4057.  
  4058. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4162
  4059. %dataptr_leave_4162 = load i32, i32* %dataptr_addr
  4060. %element_addr_leave_4162 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4162
  4061. %element_leave_4162 = load i8, i8* %element_addr_leave_4162
  4062. %compare_zero_leave_4162 = icmp ne i8 %element_leave_4162, 0
  4063. br i1 %compare_zero_leave_4162, label %loop_body_4162, label %post_loop_4162
  4064. post_loop_4162:
  4065. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4162
  4066.  
  4067. ; >ENTER_INC_PTR 1571
  4068. %dataptr_1571 = load i32, i32* %dataptr_addr
  4069. %inc_dataptr_1571 = add i32 %dataptr_1571, 10
  4070. store i32 %inc_dataptr_1571, i32* %dataptr_addr
  4071. ; <ENTER_INC_PTR 1571
  4072.  
  4073. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4164
  4074. %dataptr_enter_4164 = load i32, i32* %dataptr_addr
  4075. %element_addr_enter_4164 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4164
  4076. %element_enter_4164 = load i8, i8* %element_addr_enter_4164
  4077. %compare_zero_enter_4164 = icmp eq i8 %element_enter_4164, 0
  4078. br i1 %compare_zero_enter_4164, label %post_loop_4164, label %loop_body_4164
  4079. loop_body_4164:
  4080. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4164
  4081.  
  4082. ; >ENTER_INC_PTR 1583
  4083. %dataptr_1583 = load i32, i32* %dataptr_addr
  4084. %inc_dataptr_1583 = add i32 %dataptr_1583, 9
  4085. store i32 %inc_dataptr_1583, i32* %dataptr_addr
  4086. ; <ENTER_INC_PTR 1583
  4087.  
  4088. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4163
  4089. %dataptr_enter_4163 = load i32, i32* %dataptr_addr
  4090. %element_addr_enter_4163 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4163
  4091. %element_enter_4163 = load i8, i8* %element_addr_enter_4163
  4092. %compare_zero_enter_4163 = icmp eq i8 %element_enter_4163, 0
  4093. br i1 %compare_zero_enter_4163, label %post_loop_4163, label %loop_body_4163
  4094. loop_body_4163:
  4095. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4163
  4096.  
  4097. ; >ENTER_DEC_DATA 1593
  4098. %dataptr_1593 = load i32, i32* %dataptr_addr
  4099. %element_addr_1593 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1593
  4100. %element_1593 = load i8, i8* %element_addr_1593
  4101. %sub_element_1593 = sub i8 %element_1593, 1
  4102. store i8 %sub_element_1593, i8* %element_addr_1593
  4103. ; <ENTER_DEC_DATA 1593
  4104.  
  4105. ; >ENTER_DEC_PTR 1594
  4106. %dataptr_1594 = load i32, i32* %dataptr_addr
  4107. %dec_dataptr_1594 = sub i32 %dataptr_1594, 4
  4108. store i32 %dec_dataptr_1594, i32* %dataptr_addr
  4109. ; <ENTER_DEC_PTR 1594
  4110.  
  4111. ; >ENTER_INC_DATA 1598
  4112. %dataptr_1598 = load i32, i32* %dataptr_addr
  4113. %element_addr_1598 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1598
  4114. %element_1598 = load i8, i8* %element_addr_1598
  4115. %inc_element_1598 = add i8 %element_1598, 1
  4116. store i8 %inc_element_1598, i8* %element_addr_1598
  4117. ; <ENTER_INC_DATA 1598
  4118.  
  4119. ; >ENTER_INC_PTR 1599
  4120. %dataptr_1599 = load i32, i32* %dataptr_addr
  4121. %inc_dataptr_1599 = add i32 %dataptr_1599, 4
  4122. store i32 %inc_dataptr_1599, i32* %dataptr_addr
  4123. ; <ENTER_INC_PTR 1599
  4124.  
  4125. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4163
  4126. %dataptr_leave_4163 = load i32, i32* %dataptr_addr
  4127. %element_addr_leave_4163 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4163
  4128. %element_leave_4163 = load i8, i8* %element_addr_leave_4163
  4129. %compare_zero_leave_4163 = icmp ne i8 %element_leave_4163, 0
  4130. br i1 %compare_zero_leave_4163, label %loop_body_4163, label %post_loop_4163
  4131. post_loop_4163:
  4132. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4163
  4133.  
  4134. ; >ENTER_INC_PTR 1604
  4135. %dataptr_1604 = load i32, i32* %dataptr_addr
  4136. %inc_dataptr_1604 = add i32 %dataptr_1604, 1
  4137. store i32 %inc_dataptr_1604, i32* %dataptr_addr
  4138. ; <ENTER_INC_PTR 1604
  4139.  
  4140. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4164
  4141. %dataptr_leave_4164 = load i32, i32* %dataptr_addr
  4142. %element_addr_leave_4164 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4164
  4143. %element_leave_4164 = load i8, i8* %element_addr_leave_4164
  4144. %compare_zero_leave_4164 = icmp ne i8 %element_leave_4164, 0
  4145. br i1 %compare_zero_leave_4164, label %loop_body_4164, label %post_loop_4164
  4146. post_loop_4164:
  4147. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4164
  4148.  
  4149. ; >ENTER_DEC_PTR 1606
  4150. %dataptr_1606 = load i32, i32* %dataptr_addr
  4151. %dec_dataptr_1606 = sub i32 %dataptr_1606, 10
  4152. store i32 %dec_dataptr_1606, i32* %dataptr_addr
  4153. ; <ENTER_DEC_PTR 1606
  4154.  
  4155. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4166
  4156. %dataptr_enter_4166 = load i32, i32* %dataptr_addr
  4157. %element_addr_enter_4166 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4166
  4158. %element_enter_4166 = load i8, i8* %element_addr_enter_4166
  4159. %compare_zero_enter_4166 = icmp eq i8 %element_enter_4166, 0
  4160. br i1 %compare_zero_enter_4166, label %post_loop_4166, label %loop_body_4166
  4161. loop_body_4166:
  4162. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4166
  4163.  
  4164. ; >ENTER_INC_PTR 1618
  4165. %dataptr_1618 = load i32, i32* %dataptr_addr
  4166. %inc_dataptr_1618 = add i32 %dataptr_1618, 8
  4167. store i32 %inc_dataptr_1618, i32* %dataptr_addr
  4168. ; <ENTER_INC_PTR 1618
  4169.  
  4170. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4165
  4171. %dataptr_enter_4165 = load i32, i32* %dataptr_addr
  4172. %element_addr_enter_4165 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4165
  4173. %element_enter_4165 = load i8, i8* %element_addr_enter_4165
  4174. %compare_zero_enter_4165 = icmp eq i8 %element_enter_4165, 0
  4175. br i1 %compare_zero_enter_4165, label %post_loop_4165, label %loop_body_4165
  4176. loop_body_4165:
  4177. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4165
  4178.  
  4179. ; >ENTER_DEC_DATA 1627
  4180. %dataptr_1627 = load i32, i32* %dataptr_addr
  4181. %element_addr_1627 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1627
  4182. %element_1627 = load i8, i8* %element_addr_1627
  4183. %sub_element_1627 = sub i8 %element_1627, 1
  4184. store i8 %sub_element_1627, i8* %element_addr_1627
  4185. ; <ENTER_DEC_DATA 1627
  4186.  
  4187. ; >ENTER_DEC_PTR 1628
  4188. %dataptr_1628 = load i32, i32* %dataptr_addr
  4189. %dec_dataptr_1628 = sub i32 %dataptr_1628, 1
  4190. store i32 %dec_dataptr_1628, i32* %dataptr_addr
  4191. ; <ENTER_DEC_PTR 1628
  4192.  
  4193. ; >ENTER_DEC_DATA 1629
  4194. %dataptr_1629 = load i32, i32* %dataptr_addr
  4195. %element_addr_1629 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1629
  4196. %element_1629 = load i8, i8* %element_addr_1629
  4197. %sub_element_1629 = sub i8 %element_1629, 1
  4198. store i8 %sub_element_1629, i8* %element_addr_1629
  4199. ; <ENTER_DEC_DATA 1629
  4200.  
  4201. ; >ENTER_INC_PTR 1630
  4202. %dataptr_1630 = load i32, i32* %dataptr_addr
  4203. %inc_dataptr_1630 = add i32 %dataptr_1630, 1
  4204. store i32 %inc_dataptr_1630, i32* %dataptr_addr
  4205. ; <ENTER_INC_PTR 1630
  4206.  
  4207. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4165
  4208. %dataptr_leave_4165 = load i32, i32* %dataptr_addr
  4209. %element_addr_leave_4165 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4165
  4210. %element_leave_4165 = load i8, i8* %element_addr_leave_4165
  4211. %compare_zero_leave_4165 = icmp ne i8 %element_leave_4165, 0
  4212. br i1 %compare_zero_leave_4165, label %loop_body_4165, label %post_loop_4165
  4213. post_loop_4165:
  4214. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4165
  4215.  
  4216. ; >ENTER_DEC_PTR 1632
  4217. %dataptr_1632 = load i32, i32* %dataptr_addr
  4218. %dec_dataptr_1632 = sub i32 %dataptr_1632, 18
  4219. store i32 %dec_dataptr_1632, i32* %dataptr_addr
  4220. ; <ENTER_DEC_PTR 1632
  4221.  
  4222. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4166
  4223. %dataptr_leave_4166 = load i32, i32* %dataptr_addr
  4224. %element_addr_leave_4166 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4166
  4225. %element_leave_4166 = load i8, i8* %element_addr_leave_4166
  4226. %compare_zero_leave_4166 = icmp ne i8 %element_leave_4166, 0
  4227. br i1 %compare_zero_leave_4166, label %loop_body_4166, label %post_loop_4166
  4228. post_loop_4166:
  4229. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4166
  4230.  
  4231. ; >ENTER_INC_PTR 1651
  4232. %dataptr_1651 = load i32, i32* %dataptr_addr
  4233. %inc_dataptr_1651 = add i32 %dataptr_1651, 10
  4234. store i32 %inc_dataptr_1651, i32* %dataptr_addr
  4235. ; <ENTER_INC_PTR 1651
  4236.  
  4237. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4179
  4238. %dataptr_enter_4179 = load i32, i32* %dataptr_addr
  4239. %element_addr_enter_4179 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4179
  4240. %element_enter_4179 = load i8, i8* %element_addr_enter_4179
  4241. %compare_zero_enter_4179 = icmp eq i8 %element_enter_4179, 0
  4242. br i1 %compare_zero_enter_4179, label %post_loop_4179, label %loop_body_4179
  4243. loop_body_4179:
  4244. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4179
  4245.  
  4246. ; >ENTER_INC_PTR 1663
  4247. %dataptr_1663 = load i32, i32* %dataptr_addr
  4248. %inc_dataptr_1663 = add i32 %dataptr_1663, 7
  4249. store i32 %inc_dataptr_1663, i32* %dataptr_addr
  4250. ; <ENTER_INC_PTR 1663
  4251.  
  4252. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4178
  4253. %dataptr_enter_4178 = load i32, i32* %dataptr_addr
  4254. %element_addr_enter_4178 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4178
  4255. %element_enter_4178 = load i8, i8* %element_addr_enter_4178
  4256. %compare_zero_enter_4178 = icmp eq i8 %element_enter_4178, 0
  4257. br i1 %compare_zero_enter_4178, label %post_loop_4178, label %loop_body_4178
  4258. loop_body_4178:
  4259. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4178
  4260.  
  4261. ; >ENTER_DEC_DATA 1671
  4262. %dataptr_1671 = load i32, i32* %dataptr_addr
  4263. %element_addr_1671 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1671
  4264. %element_1671 = load i8, i8* %element_addr_1671
  4265. %sub_element_1671 = sub i8 %element_1671, 1
  4266. store i8 %sub_element_1671, i8* %element_addr_1671
  4267. ; <ENTER_DEC_DATA 1671
  4268.  
  4269. ; >ENTER_INC_PTR 1672
  4270. %dataptr_1672 = load i32, i32* %dataptr_addr
  4271. %inc_dataptr_1672 = add i32 %dataptr_1672, 1
  4272. store i32 %inc_dataptr_1672, i32* %dataptr_addr
  4273. ; <ENTER_INC_PTR 1672
  4274.  
  4275. ; >ENTER_INC_DATA 1673
  4276. %dataptr_1673 = load i32, i32* %dataptr_addr
  4277. %element_addr_1673 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1673
  4278. %element_1673 = load i8, i8* %element_addr_1673
  4279. %inc_element_1673 = add i8 %element_1673, 1
  4280. store i8 %inc_element_1673, i8* %element_addr_1673
  4281. ; <ENTER_INC_DATA 1673
  4282.  
  4283. ; >ENTER_DEC_PTR 1674
  4284. %dataptr_1674 = load i32, i32* %dataptr_addr
  4285. %dec_dataptr_1674 = sub i32 %dataptr_1674, 1
  4286. store i32 %dec_dataptr_1674, i32* %dataptr_addr
  4287. ; <ENTER_DEC_PTR 1674
  4288.  
  4289. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4177
  4290. %dataptr_enter_4177 = load i32, i32* %dataptr_addr
  4291. %element_addr_enter_4177 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4177
  4292. %element_enter_4177 = load i8, i8* %element_addr_enter_4177
  4293. %compare_zero_enter_4177 = icmp eq i8 %element_enter_4177, 0
  4294. br i1 %compare_zero_enter_4177, label %post_loop_4177, label %loop_body_4177
  4295. loop_body_4177:
  4296. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4177
  4297.  
  4298. ; >ENTER_DEC_DATA 1676
  4299. %dataptr_1676 = load i32, i32* %dataptr_addr
  4300. %element_addr_1676 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1676
  4301. %element_1676 = load i8, i8* %element_addr_1676
  4302. %sub_element_1676 = sub i8 %element_1676, 1
  4303. store i8 %sub_element_1676, i8* %element_addr_1676
  4304. ; <ENTER_DEC_DATA 1676
  4305.  
  4306. ; >ENTER_INC_PTR 1677
  4307. %dataptr_1677 = load i32, i32* %dataptr_addr
  4308. %inc_dataptr_1677 = add i32 %dataptr_1677, 1
  4309. store i32 %inc_dataptr_1677, i32* %dataptr_addr
  4310. ; <ENTER_INC_PTR 1677
  4311.  
  4312. ; >ENTER_INC_DATA 1678
  4313. %dataptr_1678 = load i32, i32* %dataptr_addr
  4314. %element_addr_1678 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1678
  4315. %element_1678 = load i8, i8* %element_addr_1678
  4316. %inc_element_1678 = add i8 %element_1678, 1
  4317. store i8 %inc_element_1678, i8* %element_addr_1678
  4318. ; <ENTER_INC_DATA 1678
  4319.  
  4320. ; >ENTER_DEC_PTR 1679
  4321. %dataptr_1679 = load i32, i32* %dataptr_addr
  4322. %dec_dataptr_1679 = sub i32 %dataptr_1679, 1
  4323. store i32 %dec_dataptr_1679, i32* %dataptr_addr
  4324. ; <ENTER_DEC_PTR 1679
  4325.  
  4326. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4176
  4327. %dataptr_enter_4176 = load i32, i32* %dataptr_addr
  4328. %element_addr_enter_4176 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4176
  4329. %element_enter_4176 = load i8, i8* %element_addr_enter_4176
  4330. %compare_zero_enter_4176 = icmp eq i8 %element_enter_4176, 0
  4331. br i1 %compare_zero_enter_4176, label %post_loop_4176, label %loop_body_4176
  4332. loop_body_4176:
  4333. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4176
  4334.  
  4335. ; >ENTER_DEC_DATA 1681
  4336. %dataptr_1681 = load i32, i32* %dataptr_addr
  4337. %element_addr_1681 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1681
  4338. %element_1681 = load i8, i8* %element_addr_1681
  4339. %sub_element_1681 = sub i8 %element_1681, 1
  4340. store i8 %sub_element_1681, i8* %element_addr_1681
  4341. ; <ENTER_DEC_DATA 1681
  4342.  
  4343. ; >ENTER_INC_PTR 1682
  4344. %dataptr_1682 = load i32, i32* %dataptr_addr
  4345. %inc_dataptr_1682 = add i32 %dataptr_1682, 1
  4346. store i32 %inc_dataptr_1682, i32* %dataptr_addr
  4347. ; <ENTER_INC_PTR 1682
  4348.  
  4349. ; >ENTER_INC_DATA 1683
  4350. %dataptr_1683 = load i32, i32* %dataptr_addr
  4351. %element_addr_1683 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1683
  4352. %element_1683 = load i8, i8* %element_addr_1683
  4353. %inc_element_1683 = add i8 %element_1683, 1
  4354. store i8 %inc_element_1683, i8* %element_addr_1683
  4355. ; <ENTER_INC_DATA 1683
  4356.  
  4357. ; >ENTER_DEC_PTR 1684
  4358. %dataptr_1684 = load i32, i32* %dataptr_addr
  4359. %dec_dataptr_1684 = sub i32 %dataptr_1684, 1
  4360. store i32 %dec_dataptr_1684, i32* %dataptr_addr
  4361. ; <ENTER_DEC_PTR 1684
  4362.  
  4363. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4175
  4364. %dataptr_enter_4175 = load i32, i32* %dataptr_addr
  4365. %element_addr_enter_4175 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4175
  4366. %element_enter_4175 = load i8, i8* %element_addr_enter_4175
  4367. %compare_zero_enter_4175 = icmp eq i8 %element_enter_4175, 0
  4368. br i1 %compare_zero_enter_4175, label %post_loop_4175, label %loop_body_4175
  4369. loop_body_4175:
  4370. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4175
  4371.  
  4372. ; >ENTER_DEC_DATA 1686
  4373. %dataptr_1686 = load i32, i32* %dataptr_addr
  4374. %element_addr_1686 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1686
  4375. %element_1686 = load i8, i8* %element_addr_1686
  4376. %sub_element_1686 = sub i8 %element_1686, 1
  4377. store i8 %sub_element_1686, i8* %element_addr_1686
  4378. ; <ENTER_DEC_DATA 1686
  4379.  
  4380. ; >ENTER_INC_PTR 1687
  4381. %dataptr_1687 = load i32, i32* %dataptr_addr
  4382. %inc_dataptr_1687 = add i32 %dataptr_1687, 1
  4383. store i32 %inc_dataptr_1687, i32* %dataptr_addr
  4384. ; <ENTER_INC_PTR 1687
  4385.  
  4386. ; >ENTER_INC_DATA 1688
  4387. %dataptr_1688 = load i32, i32* %dataptr_addr
  4388. %element_addr_1688 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1688
  4389. %element_1688 = load i8, i8* %element_addr_1688
  4390. %inc_element_1688 = add i8 %element_1688, 1
  4391. store i8 %inc_element_1688, i8* %element_addr_1688
  4392. ; <ENTER_INC_DATA 1688
  4393.  
  4394. ; >ENTER_DEC_PTR 1689
  4395. %dataptr_1689 = load i32, i32* %dataptr_addr
  4396. %dec_dataptr_1689 = sub i32 %dataptr_1689, 1
  4397. store i32 %dec_dataptr_1689, i32* %dataptr_addr
  4398. ; <ENTER_DEC_PTR 1689
  4399.  
  4400. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4174
  4401. %dataptr_enter_4174 = load i32, i32* %dataptr_addr
  4402. %element_addr_enter_4174 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4174
  4403. %element_enter_4174 = load i8, i8* %element_addr_enter_4174
  4404. %compare_zero_enter_4174 = icmp eq i8 %element_enter_4174, 0
  4405. br i1 %compare_zero_enter_4174, label %post_loop_4174, label %loop_body_4174
  4406. loop_body_4174:
  4407. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4174
  4408.  
  4409. ; >ENTER_DEC_DATA 1691
  4410. %dataptr_1691 = load i32, i32* %dataptr_addr
  4411. %element_addr_1691 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1691
  4412. %element_1691 = load i8, i8* %element_addr_1691
  4413. %sub_element_1691 = sub i8 %element_1691, 1
  4414. store i8 %sub_element_1691, i8* %element_addr_1691
  4415. ; <ENTER_DEC_DATA 1691
  4416.  
  4417. ; >ENTER_INC_PTR 1692
  4418. %dataptr_1692 = load i32, i32* %dataptr_addr
  4419. %inc_dataptr_1692 = add i32 %dataptr_1692, 1
  4420. store i32 %inc_dataptr_1692, i32* %dataptr_addr
  4421. ; <ENTER_INC_PTR 1692
  4422.  
  4423. ; >ENTER_INC_DATA 1693
  4424. %dataptr_1693 = load i32, i32* %dataptr_addr
  4425. %element_addr_1693 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1693
  4426. %element_1693 = load i8, i8* %element_addr_1693
  4427. %inc_element_1693 = add i8 %element_1693, 1
  4428. store i8 %inc_element_1693, i8* %element_addr_1693
  4429. ; <ENTER_INC_DATA 1693
  4430.  
  4431. ; >ENTER_DEC_PTR 1694
  4432. %dataptr_1694 = load i32, i32* %dataptr_addr
  4433. %dec_dataptr_1694 = sub i32 %dataptr_1694, 1
  4434. store i32 %dec_dataptr_1694, i32* %dataptr_addr
  4435. ; <ENTER_DEC_PTR 1694
  4436.  
  4437. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4173
  4438. %dataptr_enter_4173 = load i32, i32* %dataptr_addr
  4439. %element_addr_enter_4173 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4173
  4440. %element_enter_4173 = load i8, i8* %element_addr_enter_4173
  4441. %compare_zero_enter_4173 = icmp eq i8 %element_enter_4173, 0
  4442. br i1 %compare_zero_enter_4173, label %post_loop_4173, label %loop_body_4173
  4443. loop_body_4173:
  4444. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4173
  4445.  
  4446. ; >ENTER_DEC_DATA 1696
  4447. %dataptr_1696 = load i32, i32* %dataptr_addr
  4448. %element_addr_1696 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1696
  4449. %element_1696 = load i8, i8* %element_addr_1696
  4450. %sub_element_1696 = sub i8 %element_1696, 1
  4451. store i8 %sub_element_1696, i8* %element_addr_1696
  4452. ; <ENTER_DEC_DATA 1696
  4453.  
  4454. ; >ENTER_INC_PTR 1697
  4455. %dataptr_1697 = load i32, i32* %dataptr_addr
  4456. %inc_dataptr_1697 = add i32 %dataptr_1697, 1
  4457. store i32 %inc_dataptr_1697, i32* %dataptr_addr
  4458. ; <ENTER_INC_PTR 1697
  4459.  
  4460. ; >ENTER_INC_DATA 1698
  4461. %dataptr_1698 = load i32, i32* %dataptr_addr
  4462. %element_addr_1698 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1698
  4463. %element_1698 = load i8, i8* %element_addr_1698
  4464. %inc_element_1698 = add i8 %element_1698, 1
  4465. store i8 %inc_element_1698, i8* %element_addr_1698
  4466. ; <ENTER_INC_DATA 1698
  4467.  
  4468. ; >ENTER_DEC_PTR 1699
  4469. %dataptr_1699 = load i32, i32* %dataptr_addr
  4470. %dec_dataptr_1699 = sub i32 %dataptr_1699, 1
  4471. store i32 %dec_dataptr_1699, i32* %dataptr_addr
  4472. ; <ENTER_DEC_PTR 1699
  4473.  
  4474. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4172
  4475. %dataptr_enter_4172 = load i32, i32* %dataptr_addr
  4476. %element_addr_enter_4172 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4172
  4477. %element_enter_4172 = load i8, i8* %element_addr_enter_4172
  4478. %compare_zero_enter_4172 = icmp eq i8 %element_enter_4172, 0
  4479. br i1 %compare_zero_enter_4172, label %post_loop_4172, label %loop_body_4172
  4480. loop_body_4172:
  4481. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4172
  4482.  
  4483. ; >ENTER_DEC_DATA 1701
  4484. %dataptr_1701 = load i32, i32* %dataptr_addr
  4485. %element_addr_1701 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1701
  4486. %element_1701 = load i8, i8* %element_addr_1701
  4487. %sub_element_1701 = sub i8 %element_1701, 1
  4488. store i8 %sub_element_1701, i8* %element_addr_1701
  4489. ; <ENTER_DEC_DATA 1701
  4490.  
  4491. ; >ENTER_INC_PTR 1702
  4492. %dataptr_1702 = load i32, i32* %dataptr_addr
  4493. %inc_dataptr_1702 = add i32 %dataptr_1702, 1
  4494. store i32 %inc_dataptr_1702, i32* %dataptr_addr
  4495. ; <ENTER_INC_PTR 1702
  4496.  
  4497. ; >ENTER_INC_DATA 1703
  4498. %dataptr_1703 = load i32, i32* %dataptr_addr
  4499. %element_addr_1703 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1703
  4500. %element_1703 = load i8, i8* %element_addr_1703
  4501. %inc_element_1703 = add i8 %element_1703, 1
  4502. store i8 %inc_element_1703, i8* %element_addr_1703
  4503. ; <ENTER_INC_DATA 1703
  4504.  
  4505. ; >ENTER_DEC_PTR 1704
  4506. %dataptr_1704 = load i32, i32* %dataptr_addr
  4507. %dec_dataptr_1704 = sub i32 %dataptr_1704, 1
  4508. store i32 %dec_dataptr_1704, i32* %dataptr_addr
  4509. ; <ENTER_DEC_PTR 1704
  4510.  
  4511. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4171
  4512. %dataptr_enter_4171 = load i32, i32* %dataptr_addr
  4513. %element_addr_enter_4171 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4171
  4514. %element_enter_4171 = load i8, i8* %element_addr_enter_4171
  4515. %compare_zero_enter_4171 = icmp eq i8 %element_enter_4171, 0
  4516. br i1 %compare_zero_enter_4171, label %post_loop_4171, label %loop_body_4171
  4517. loop_body_4171:
  4518. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4171
  4519.  
  4520. ; >ENTER_DEC_DATA 1706
  4521. %dataptr_1706 = load i32, i32* %dataptr_addr
  4522. %element_addr_1706 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1706
  4523. %element_1706 = load i8, i8* %element_addr_1706
  4524. %sub_element_1706 = sub i8 %element_1706, 1
  4525. store i8 %sub_element_1706, i8* %element_addr_1706
  4526. ; <ENTER_DEC_DATA 1706
  4527.  
  4528. ; >ENTER_INC_PTR 1707
  4529. %dataptr_1707 = load i32, i32* %dataptr_addr
  4530. %inc_dataptr_1707 = add i32 %dataptr_1707, 1
  4531. store i32 %inc_dataptr_1707, i32* %dataptr_addr
  4532. ; <ENTER_INC_PTR 1707
  4533.  
  4534. ; >ENTER_INC_DATA 1708
  4535. %dataptr_1708 = load i32, i32* %dataptr_addr
  4536. %element_addr_1708 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1708
  4537. %element_1708 = load i8, i8* %element_addr_1708
  4538. %inc_element_1708 = add i8 %element_1708, 1
  4539. store i8 %inc_element_1708, i8* %element_addr_1708
  4540. ; <ENTER_INC_DATA 1708
  4541.  
  4542. ; >ENTER_DEC_PTR 1709
  4543. %dataptr_1709 = load i32, i32* %dataptr_addr
  4544. %dec_dataptr_1709 = sub i32 %dataptr_1709, 1
  4545. store i32 %dec_dataptr_1709, i32* %dataptr_addr
  4546. ; <ENTER_DEC_PTR 1709
  4547.  
  4548. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4170
  4549. %dataptr_enter_4170 = load i32, i32* %dataptr_addr
  4550. %element_addr_enter_4170 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4170
  4551. %element_enter_4170 = load i8, i8* %element_addr_enter_4170
  4552. %compare_zero_enter_4170 = icmp eq i8 %element_enter_4170, 0
  4553. br i1 %compare_zero_enter_4170, label %post_loop_4170, label %loop_body_4170
  4554. loop_body_4170:
  4555. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4170
  4556.  
  4557. ; >ENTER_DEC_DATA 1711
  4558. %dataptr_1711 = load i32, i32* %dataptr_addr
  4559. %element_addr_1711 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1711
  4560. %element_1711 = load i8, i8* %element_addr_1711
  4561. %sub_element_1711 = sub i8 %element_1711, 1
  4562. store i8 %sub_element_1711, i8* %element_addr_1711
  4563. ; <ENTER_DEC_DATA 1711
  4564.  
  4565. ; >ENTER_INC_PTR 1712
  4566. %dataptr_1712 = load i32, i32* %dataptr_addr
  4567. %inc_dataptr_1712 = add i32 %dataptr_1712, 1
  4568. store i32 %inc_dataptr_1712, i32* %dataptr_addr
  4569. ; <ENTER_INC_PTR 1712
  4570.  
  4571. ; >ENTER_INC_DATA 1713
  4572. %dataptr_1713 = load i32, i32* %dataptr_addr
  4573. %element_addr_1713 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1713
  4574. %element_1713 = load i8, i8* %element_addr_1713
  4575. %inc_element_1713 = add i8 %element_1713, 1
  4576. store i8 %inc_element_1713, i8* %element_addr_1713
  4577. ; <ENTER_INC_DATA 1713
  4578.  
  4579. ; >ENTER_DEC_PTR 1714
  4580. %dataptr_1714 = load i32, i32* %dataptr_addr
  4581. %dec_dataptr_1714 = sub i32 %dataptr_1714, 1
  4582. store i32 %dec_dataptr_1714, i32* %dataptr_addr
  4583. ; <ENTER_DEC_PTR 1714
  4584.  
  4585. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4169
  4586. %dataptr_enter_4169 = load i32, i32* %dataptr_addr
  4587. %element_addr_enter_4169 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4169
  4588. %element_enter_4169 = load i8, i8* %element_addr_enter_4169
  4589. %compare_zero_enter_4169 = icmp eq i8 %element_enter_4169, 0
  4590. br i1 %compare_zero_enter_4169, label %post_loop_4169, label %loop_body_4169
  4591. loop_body_4169:
  4592. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4169
  4593.  
  4594. ; >ENTER_DEC_DATA 1716
  4595. %dataptr_1716 = load i32, i32* %dataptr_addr
  4596. %element_addr_1716 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1716
  4597. %element_1716 = load i8, i8* %element_addr_1716
  4598. %sub_element_1716 = sub i8 %element_1716, 1
  4599. store i8 %sub_element_1716, i8* %element_addr_1716
  4600. ; <ENTER_DEC_DATA 1716
  4601.  
  4602. ; >ENTER_INC_PTR 1717
  4603. %dataptr_1717 = load i32, i32* %dataptr_addr
  4604. %inc_dataptr_1717 = add i32 %dataptr_1717, 1
  4605. store i32 %inc_dataptr_1717, i32* %dataptr_addr
  4606. ; <ENTER_INC_PTR 1717
  4607.  
  4608. ; >ENTER_INC_DATA 1718
  4609. %dataptr_1718 = load i32, i32* %dataptr_addr
  4610. %element_addr_1718 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1718
  4611. %element_1718 = load i8, i8* %element_addr_1718
  4612. %inc_element_1718 = add i8 %element_1718, 1
  4613. store i8 %inc_element_1718, i8* %element_addr_1718
  4614. ; <ENTER_INC_DATA 1718
  4615.  
  4616. ; >ENTER_DEC_PTR 1719
  4617. %dataptr_1719 = load i32, i32* %dataptr_addr
  4618. %dec_dataptr_1719 = sub i32 %dataptr_1719, 1
  4619. store i32 %dec_dataptr_1719, i32* %dataptr_addr
  4620. ; <ENTER_DEC_PTR 1719
  4621.  
  4622. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4168
  4623. %dataptr_enter_4168 = load i32, i32* %dataptr_addr
  4624. %element_addr_enter_4168 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4168
  4625. %element_enter_4168 = load i8, i8* %element_addr_enter_4168
  4626. %compare_zero_enter_4168 = icmp eq i8 %element_enter_4168, 0
  4627. br i1 %compare_zero_enter_4168, label %post_loop_4168, label %loop_body_4168
  4628. loop_body_4168:
  4629. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4168
  4630.  
  4631. ; >ENTER_INC_DATA 1722
  4632. %dataptr_1722 = load i32, i32* %dataptr_addr
  4633. %element_addr_1722 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1722
  4634. %element_1722 = load i8, i8* %element_addr_1722
  4635. %inc_element_1722 = add i8 %element_1722, 10
  4636. store i8 %inc_element_1722, i8* %element_addr_1722
  4637. ; <ENTER_INC_DATA 1722
  4638.  
  4639. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4167
  4640. %dataptr_enter_4167 = load i32, i32* %dataptr_addr
  4641. %element_addr_enter_4167 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4167
  4642. %element_enter_4167 = load i8, i8* %element_addr_enter_4167
  4643. %compare_zero_enter_4167 = icmp eq i8 %element_enter_4167, 0
  4644. br i1 %compare_zero_enter_4167, label %post_loop_4167, label %loop_body_4167
  4645. loop_body_4167:
  4646. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4167
  4647.  
  4648. ; >ENTER_INC_DATA 1733
  4649. %dataptr_1733 = load i32, i32* %dataptr_addr
  4650. %element_addr_1733 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1733
  4651. %element_1733 = load i8, i8* %element_addr_1733
  4652. %inc_element_1733 = add i8 %element_1733, 1
  4653. store i8 %inc_element_1733, i8* %element_addr_1733
  4654. ; <ENTER_INC_DATA 1733
  4655.  
  4656. ; >ENTER_INC_PTR 1734
  4657. %dataptr_1734 = load i32, i32* %dataptr_addr
  4658. %inc_dataptr_1734 = add i32 %dataptr_1734, 1
  4659. store i32 %inc_dataptr_1734, i32* %dataptr_addr
  4660. ; <ENTER_INC_PTR 1734
  4661.  
  4662. ; >ENTER_DEC_DATA 1735
  4663. %dataptr_1735 = load i32, i32* %dataptr_addr
  4664. %element_addr_1735 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1735
  4665. %element_1735 = load i8, i8* %element_addr_1735
  4666. %sub_element_1735 = sub i8 %element_1735, 1
  4667. store i8 %sub_element_1735, i8* %element_addr_1735
  4668. ; <ENTER_DEC_DATA 1735
  4669.  
  4670. ; >ENTER_DEC_PTR 1736
  4671. %dataptr_1736 = load i32, i32* %dataptr_addr
  4672. %dec_dataptr_1736 = sub i32 %dataptr_1736, 1
  4673. store i32 %dec_dataptr_1736, i32* %dataptr_addr
  4674. ; <ENTER_DEC_PTR 1736
  4675.  
  4676. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4167
  4677. %dataptr_leave_4167 = load i32, i32* %dataptr_addr
  4678. %element_addr_leave_4167 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4167
  4679. %element_leave_4167 = load i8, i8* %element_addr_leave_4167
  4680. %compare_zero_leave_4167 = icmp ne i8 %element_leave_4167, 0
  4681. br i1 %compare_zero_leave_4167, label %loop_body_4167, label %post_loop_4167
  4682. post_loop_4167:
  4683. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4167
  4684.  
  4685. ; >ENTER_INC_PTR 1738
  4686. %dataptr_1738 = load i32, i32* %dataptr_addr
  4687. %inc_dataptr_1738 = add i32 %dataptr_1738, 10
  4688. store i32 %inc_dataptr_1738, i32* %dataptr_addr
  4689. ; <ENTER_INC_PTR 1738
  4690.  
  4691. ; >ENTER_DEC_DATA 1748
  4692. %dataptr_1748 = load i32, i32* %dataptr_addr
  4693. %element_addr_1748 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1748
  4694. %element_1748 = load i8, i8* %element_addr_1748
  4695. %sub_element_1748 = sub i8 %element_1748, 1
  4696. store i8 %sub_element_1748, i8* %element_addr_1748
  4697. ; <ENTER_DEC_DATA 1748
  4698.  
  4699. ; >ENTER_DEC_PTR 1749
  4700. %dataptr_1749 = load i32, i32* %dataptr_addr
  4701. %dec_dataptr_1749 = sub i32 %dataptr_1749, 10
  4702. store i32 %dec_dataptr_1749, i32* %dataptr_addr
  4703. ; <ENTER_DEC_PTR 1749
  4704.  
  4705. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4168
  4706. %dataptr_leave_4168 = load i32, i32* %dataptr_addr
  4707. %element_addr_leave_4168 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4168
  4708. %element_leave_4168 = load i8, i8* %element_addr_leave_4168
  4709. %compare_zero_leave_4168 = icmp ne i8 %element_leave_4168, 0
  4710. br i1 %compare_zero_leave_4168, label %loop_body_4168, label %post_loop_4168
  4711. post_loop_4168:
  4712. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4168
  4713.  
  4714. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4169
  4715. %dataptr_leave_4169 = load i32, i32* %dataptr_addr
  4716. %element_addr_leave_4169 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4169
  4717. %element_leave_4169 = load i8, i8* %element_addr_leave_4169
  4718. %compare_zero_leave_4169 = icmp ne i8 %element_leave_4169, 0
  4719. br i1 %compare_zero_leave_4169, label %loop_body_4169, label %post_loop_4169
  4720. post_loop_4169:
  4721. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4169
  4722.  
  4723. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4170
  4724. %dataptr_leave_4170 = load i32, i32* %dataptr_addr
  4725. %element_addr_leave_4170 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4170
  4726. %element_leave_4170 = load i8, i8* %element_addr_leave_4170
  4727. %compare_zero_leave_4170 = icmp ne i8 %element_leave_4170, 0
  4728. br i1 %compare_zero_leave_4170, label %loop_body_4170, label %post_loop_4170
  4729. post_loop_4170:
  4730. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4170
  4731.  
  4732. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4171
  4733. %dataptr_leave_4171 = load i32, i32* %dataptr_addr
  4734. %element_addr_leave_4171 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4171
  4735. %element_leave_4171 = load i8, i8* %element_addr_leave_4171
  4736. %compare_zero_leave_4171 = icmp ne i8 %element_leave_4171, 0
  4737. br i1 %compare_zero_leave_4171, label %loop_body_4171, label %post_loop_4171
  4738. post_loop_4171:
  4739. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4171
  4740.  
  4741. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4172
  4742. %dataptr_leave_4172 = load i32, i32* %dataptr_addr
  4743. %element_addr_leave_4172 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4172
  4744. %element_leave_4172 = load i8, i8* %element_addr_leave_4172
  4745. %compare_zero_leave_4172 = icmp ne i8 %element_leave_4172, 0
  4746. br i1 %compare_zero_leave_4172, label %loop_body_4172, label %post_loop_4172
  4747. post_loop_4172:
  4748. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4172
  4749.  
  4750. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4173
  4751. %dataptr_leave_4173 = load i32, i32* %dataptr_addr
  4752. %element_addr_leave_4173 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4173
  4753. %element_leave_4173 = load i8, i8* %element_addr_leave_4173
  4754. %compare_zero_leave_4173 = icmp ne i8 %element_leave_4173, 0
  4755. br i1 %compare_zero_leave_4173, label %loop_body_4173, label %post_loop_4173
  4756. post_loop_4173:
  4757. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4173
  4758.  
  4759. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4174
  4760. %dataptr_leave_4174 = load i32, i32* %dataptr_addr
  4761. %element_addr_leave_4174 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4174
  4762. %element_leave_4174 = load i8, i8* %element_addr_leave_4174
  4763. %compare_zero_leave_4174 = icmp ne i8 %element_leave_4174, 0
  4764. br i1 %compare_zero_leave_4174, label %loop_body_4174, label %post_loop_4174
  4765. post_loop_4174:
  4766. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4174
  4767.  
  4768. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4175
  4769. %dataptr_leave_4175 = load i32, i32* %dataptr_addr
  4770. %element_addr_leave_4175 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4175
  4771. %element_leave_4175 = load i8, i8* %element_addr_leave_4175
  4772. %compare_zero_leave_4175 = icmp ne i8 %element_leave_4175, 0
  4773. br i1 %compare_zero_leave_4175, label %loop_body_4175, label %post_loop_4175
  4774. post_loop_4175:
  4775. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4175
  4776.  
  4777. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4176
  4778. %dataptr_leave_4176 = load i32, i32* %dataptr_addr
  4779. %element_addr_leave_4176 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4176
  4780. %element_leave_4176 = load i8, i8* %element_addr_leave_4176
  4781. %compare_zero_leave_4176 = icmp ne i8 %element_leave_4176, 0
  4782. br i1 %compare_zero_leave_4176, label %loop_body_4176, label %post_loop_4176
  4783. post_loop_4176:
  4784. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4176
  4785.  
  4786. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4177
  4787. %dataptr_leave_4177 = load i32, i32* %dataptr_addr
  4788. %element_addr_leave_4177 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4177
  4789. %element_leave_4177 = load i8, i8* %element_addr_leave_4177
  4790. %compare_zero_leave_4177 = icmp ne i8 %element_leave_4177, 0
  4791. br i1 %compare_zero_leave_4177, label %loop_body_4177, label %post_loop_4177
  4792. post_loop_4177:
  4793. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4177
  4794.  
  4795. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4178
  4796. %dataptr_leave_4178 = load i32, i32* %dataptr_addr
  4797. %element_addr_leave_4178 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4178
  4798. %element_leave_4178 = load i8, i8* %element_addr_leave_4178
  4799. %compare_zero_leave_4178 = icmp ne i8 %element_leave_4178, 0
  4800. br i1 %compare_zero_leave_4178, label %loop_body_4178, label %post_loop_4178
  4801. post_loop_4178:
  4802. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4178
  4803.  
  4804. ; >ENTER_INC_PTR 1770
  4805. %dataptr_1770 = load i32, i32* %dataptr_addr
  4806. %inc_dataptr_1770 = add i32 %dataptr_1770, 3
  4807. store i32 %inc_dataptr_1770, i32* %dataptr_addr
  4808. ; <ENTER_INC_PTR 1770
  4809.  
  4810. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4179
  4811. %dataptr_leave_4179 = load i32, i32* %dataptr_addr
  4812. %element_addr_leave_4179 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4179
  4813. %element_leave_4179 = load i8, i8* %element_addr_leave_4179
  4814. %compare_zero_leave_4179 = icmp ne i8 %element_leave_4179, 0
  4815. br i1 %compare_zero_leave_4179, label %loop_body_4179, label %post_loop_4179
  4816. post_loop_4179:
  4817. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4179
  4818.  
  4819. ; >ENTER_INC_PTR 1775
  4820. %dataptr_1775 = load i32, i32* %dataptr_addr
  4821. %inc_dataptr_1775 = add i32 %dataptr_1775, 7
  4822. store i32 %inc_dataptr_1775, i32* %dataptr_addr
  4823. ; <ENTER_INC_PTR 1775
  4824.  
  4825. ; >ENTER_INC_DATA 1782
  4826. %dataptr_1782 = load i32, i32* %dataptr_addr
  4827. %element_addr_1782 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1782
  4828. %element_1782 = load i8, i8* %element_addr_1782
  4829. %inc_element_1782 = add i8 %element_1782, 1
  4830. store i8 %inc_element_1782, i8* %element_addr_1782
  4831. ; <ENTER_INC_DATA 1782
  4832.  
  4833. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4201
  4834. %dataptr_enter_4201 = load i32, i32* %dataptr_addr
  4835. %element_addr_enter_4201 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4201
  4836. %element_enter_4201 = load i8, i8* %element_addr_enter_4201
  4837. %compare_zero_enter_4201 = icmp eq i8 %element_enter_4201, 0
  4838. br i1 %compare_zero_enter_4201, label %post_loop_4201, label %loop_body_4201
  4839. loop_body_4201:
  4840. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4201
  4841.  
  4842. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4180
  4843. %dataptr_enter_4180 = load i32, i32* %dataptr_addr
  4844. %element_addr_enter_4180 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4180
  4845. %element_enter_4180 = load i8, i8* %element_addr_enter_4180
  4846. %compare_zero_enter_4180 = icmp eq i8 %element_enter_4180, 0
  4847. br i1 %compare_zero_enter_4180, label %post_loop_4180, label %loop_body_4180
  4848. loop_body_4180:
  4849. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4180
  4850.  
  4851. ; >ENTER_DEC_DATA 1787
  4852. %dataptr_1787 = load i32, i32* %dataptr_addr
  4853. %element_addr_1787 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1787
  4854. %element_1787 = load i8, i8* %element_addr_1787
  4855. %sub_element_1787 = sub i8 %element_1787, 1
  4856. store i8 %sub_element_1787, i8* %element_addr_1787
  4857. ; <ENTER_DEC_DATA 1787
  4858.  
  4859. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4180
  4860. %dataptr_leave_4180 = load i32, i32* %dataptr_addr
  4861. %element_addr_leave_4180 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4180
  4862. %element_leave_4180 = load i8, i8* %element_addr_leave_4180
  4863. %compare_zero_leave_4180 = icmp ne i8 %element_leave_4180, 0
  4864. br i1 %compare_zero_leave_4180, label %loop_body_4180, label %post_loop_4180
  4865. post_loop_4180:
  4866. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4180
  4867.  
  4868. ; >ENTER_DEC_PTR 1789
  4869. %dataptr_1789 = load i32, i32* %dataptr_addr
  4870. %dec_dataptr_1789 = sub i32 %dataptr_1789, 17
  4871. store i32 %dec_dataptr_1789, i32* %dataptr_addr
  4872. ; <ENTER_DEC_PTR 1789
  4873.  
  4874. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4184
  4875. %dataptr_enter_4184 = load i32, i32* %dataptr_addr
  4876. %element_addr_enter_4184 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4184
  4877. %element_enter_4184 = load i8, i8* %element_addr_enter_4184
  4878. %compare_zero_enter_4184 = icmp eq i8 %element_enter_4184, 0
  4879. br i1 %compare_zero_enter_4184, label %post_loop_4184, label %loop_body_4184
  4880. loop_body_4184:
  4881. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4184
  4882.  
  4883. ; >ENTER_INC_PTR 1808
  4884. %dataptr_1808 = load i32, i32* %dataptr_addr
  4885. %inc_dataptr_1808 = add i32 %dataptr_1808, 4
  4886. store i32 %inc_dataptr_1808, i32* %dataptr_addr
  4887. ; <ENTER_INC_PTR 1808
  4888.  
  4889. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4181
  4890. %dataptr_enter_4181 = load i32, i32* %dataptr_addr
  4891. %element_addr_enter_4181 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4181
  4892. %element_enter_4181 = load i8, i8* %element_addr_enter_4181
  4893. %compare_zero_enter_4181 = icmp eq i8 %element_enter_4181, 0
  4894. br i1 %compare_zero_enter_4181, label %post_loop_4181, label %loop_body_4181
  4895. loop_body_4181:
  4896. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4181
  4897.  
  4898. ; >ENTER_DEC_DATA 1813
  4899. %dataptr_1813 = load i32, i32* %dataptr_addr
  4900. %element_addr_1813 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1813
  4901. %element_1813 = load i8, i8* %element_addr_1813
  4902. %sub_element_1813 = sub i8 %element_1813, 1
  4903. store i8 %sub_element_1813, i8* %element_addr_1813
  4904. ; <ENTER_DEC_DATA 1813
  4905.  
  4906. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4181
  4907. %dataptr_leave_4181 = load i32, i32* %dataptr_addr
  4908. %element_addr_leave_4181 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4181
  4909. %element_leave_4181 = load i8, i8* %element_addr_leave_4181
  4910. %compare_zero_leave_4181 = icmp ne i8 %element_leave_4181, 0
  4911. br i1 %compare_zero_leave_4181, label %loop_body_4181, label %post_loop_4181
  4912. post_loop_4181:
  4913. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4181
  4914.  
  4915. ; >ENTER_INC_PTR 1815
  4916. %dataptr_1815 = load i32, i32* %dataptr_addr
  4917. %inc_dataptr_1815 = add i32 %dataptr_1815, 4
  4918. store i32 %inc_dataptr_1815, i32* %dataptr_addr
  4919. ; <ENTER_INC_PTR 1815
  4920.  
  4921. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4182
  4922. %dataptr_enter_4182 = load i32, i32* %dataptr_addr
  4923. %element_addr_enter_4182 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4182
  4924. %element_enter_4182 = load i8, i8* %element_addr_enter_4182
  4925. %compare_zero_enter_4182 = icmp eq i8 %element_enter_4182, 0
  4926. br i1 %compare_zero_enter_4182, label %post_loop_4182, label %loop_body_4182
  4927. loop_body_4182:
  4928. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4182
  4929.  
  4930. ; >ENTER_DEC_DATA 1820
  4931. %dataptr_1820 = load i32, i32* %dataptr_addr
  4932. %element_addr_1820 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1820
  4933. %element_1820 = load i8, i8* %element_addr_1820
  4934. %sub_element_1820 = sub i8 %element_1820, 1
  4935. store i8 %sub_element_1820, i8* %element_addr_1820
  4936. ; <ENTER_DEC_DATA 1820
  4937.  
  4938. ; >ENTER_DEC_PTR 1821
  4939. %dataptr_1821 = load i32, i32* %dataptr_addr
  4940. %dec_dataptr_1821 = sub i32 %dataptr_1821, 4
  4941. store i32 %dec_dataptr_1821, i32* %dataptr_addr
  4942. ; <ENTER_DEC_PTR 1821
  4943.  
  4944. ; >ENTER_INC_DATA 1825
  4945. %dataptr_1825 = load i32, i32* %dataptr_addr
  4946. %element_addr_1825 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1825
  4947. %element_1825 = load i8, i8* %element_addr_1825
  4948. %inc_element_1825 = add i8 %element_1825, 1
  4949. store i8 %inc_element_1825, i8* %element_addr_1825
  4950. ; <ENTER_INC_DATA 1825
  4951.  
  4952. ; >ENTER_INC_PTR 1826
  4953. %dataptr_1826 = load i32, i32* %dataptr_addr
  4954. %inc_dataptr_1826 = add i32 %dataptr_1826, 4
  4955. store i32 %inc_dataptr_1826, i32* %dataptr_addr
  4956. ; <ENTER_INC_PTR 1826
  4957.  
  4958. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4182
  4959. %dataptr_leave_4182 = load i32, i32* %dataptr_addr
  4960. %element_addr_leave_4182 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4182
  4961. %element_leave_4182 = load i8, i8* %element_addr_leave_4182
  4962. %compare_zero_leave_4182 = icmp ne i8 %element_leave_4182, 0
  4963. br i1 %compare_zero_leave_4182, label %loop_body_4182, label %post_loop_4182
  4964. post_loop_4182:
  4965. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4182
  4966.  
  4967. ; >ENTER_DEC_PTR 1831
  4968. %dataptr_1831 = load i32, i32* %dataptr_addr
  4969. %dec_dataptr_1831 = sub i32 %dataptr_1831, 2
  4970. store i32 %dec_dataptr_1831, i32* %dataptr_addr
  4971. ; <ENTER_DEC_PTR 1831
  4972.  
  4973. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4183
  4974. %dataptr_enter_4183 = load i32, i32* %dataptr_addr
  4975. %element_addr_enter_4183 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4183
  4976. %element_enter_4183 = load i8, i8* %element_addr_enter_4183
  4977. %compare_zero_enter_4183 = icmp eq i8 %element_enter_4183, 0
  4978. br i1 %compare_zero_enter_4183, label %post_loop_4183, label %loop_body_4183
  4979. loop_body_4183:
  4980. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4183
  4981.  
  4982. ; >ENTER_DEC_DATA 1834
  4983. %dataptr_1834 = load i32, i32* %dataptr_addr
  4984. %element_addr_1834 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1834
  4985. %element_1834 = load i8, i8* %element_addr_1834
  4986. %sub_element_1834 = sub i8 %element_1834, 1
  4987. store i8 %sub_element_1834, i8* %element_addr_1834
  4988. ; <ENTER_DEC_DATA 1834
  4989.  
  4990. ; >ENTER_INC_PTR 1835
  4991. %dataptr_1835 = load i32, i32* %dataptr_addr
  4992. %inc_dataptr_1835 = add i32 %dataptr_1835, 2
  4993. store i32 %inc_dataptr_1835, i32* %dataptr_addr
  4994. ; <ENTER_INC_PTR 1835
  4995.  
  4996. ; >ENTER_INC_DATA 1837
  4997. %dataptr_1837 = load i32, i32* %dataptr_addr
  4998. %element_addr_1837 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1837
  4999. %element_1837 = load i8, i8* %element_addr_1837
  5000. %inc_element_1837 = add i8 %element_1837, 1
  5001. store i8 %inc_element_1837, i8* %element_addr_1837
  5002. ; <ENTER_INC_DATA 1837
  5003.  
  5004. ; >ENTER_DEC_PTR 1838
  5005. %dataptr_1838 = load i32, i32* %dataptr_addr
  5006. %dec_dataptr_1838 = sub i32 %dataptr_1838, 2
  5007. store i32 %dec_dataptr_1838, i32* %dataptr_addr
  5008. ; <ENTER_DEC_PTR 1838
  5009.  
  5010. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4183
  5011. %dataptr_leave_4183 = load i32, i32* %dataptr_addr
  5012. %element_addr_leave_4183 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4183
  5013. %element_leave_4183 = load i8, i8* %element_addr_leave_4183
  5014. %compare_zero_leave_4183 = icmp ne i8 %element_leave_4183, 0
  5015. br i1 %compare_zero_leave_4183, label %loop_body_4183, label %post_loop_4183
  5016. post_loop_4183:
  5017. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4183
  5018.  
  5019. ; >ENTER_DEC_PTR 1841
  5020. %dataptr_1841 = load i32, i32* %dataptr_addr
  5021. %dec_dataptr_1841 = sub i32 %dataptr_1841, 16
  5022. store i32 %dec_dataptr_1841, i32* %dataptr_addr
  5023. ; <ENTER_DEC_PTR 1841
  5024.  
  5025. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4184
  5026. %dataptr_leave_4184 = load i32, i32* %dataptr_addr
  5027. %element_addr_leave_4184 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4184
  5028. %element_leave_4184 = load i8, i8* %element_addr_leave_4184
  5029. %compare_zero_leave_4184 = icmp ne i8 %element_leave_4184, 0
  5030. br i1 %compare_zero_leave_4184, label %loop_body_4184, label %post_loop_4184
  5031. post_loop_4184:
  5032. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4184
  5033.  
  5034. ; >ENTER_INC_PTR 1858
  5035. %dataptr_1858 = load i32, i32* %dataptr_addr
  5036. %inc_dataptr_1858 = add i32 %dataptr_1858, 10
  5037. store i32 %inc_dataptr_1858, i32* %dataptr_addr
  5038. ; <ENTER_INC_PTR 1858
  5039.  
  5040. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4186
  5041. %dataptr_enter_4186 = load i32, i32* %dataptr_addr
  5042. %element_addr_enter_4186 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4186
  5043. %element_enter_4186 = load i8, i8* %element_addr_enter_4186
  5044. %compare_zero_enter_4186 = icmp eq i8 %element_enter_4186, 0
  5045. br i1 %compare_zero_enter_4186, label %post_loop_4186, label %loop_body_4186
  5046. loop_body_4186:
  5047. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4186
  5048.  
  5049. ; >ENTER_INC_PTR 1870
  5050. %dataptr_1870 = load i32, i32* %dataptr_addr
  5051. %inc_dataptr_1870 = add i32 %dataptr_1870, 8
  5052. store i32 %inc_dataptr_1870, i32* %dataptr_addr
  5053. ; <ENTER_INC_PTR 1870
  5054.  
  5055. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4185
  5056. %dataptr_enter_4185 = load i32, i32* %dataptr_addr
  5057. %element_addr_enter_4185 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4185
  5058. %element_enter_4185 = load i8, i8* %element_addr_enter_4185
  5059. %compare_zero_enter_4185 = icmp eq i8 %element_enter_4185, 0
  5060. br i1 %compare_zero_enter_4185, label %post_loop_4185, label %loop_body_4185
  5061. loop_body_4185:
  5062. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4185
  5063.  
  5064. ; >ENTER_DEC_DATA 1879
  5065. %dataptr_1879 = load i32, i32* %dataptr_addr
  5066. %element_addr_1879 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1879
  5067. %element_1879 = load i8, i8* %element_addr_1879
  5068. %sub_element_1879 = sub i8 %element_1879, 1
  5069. store i8 %sub_element_1879, i8* %element_addr_1879
  5070. ; <ENTER_DEC_DATA 1879
  5071.  
  5072. ; >ENTER_INC_PTR 1880
  5073. %dataptr_1880 = load i32, i32* %dataptr_addr
  5074. %inc_dataptr_1880 = add i32 %dataptr_1880, 1
  5075. store i32 %inc_dataptr_1880, i32* %dataptr_addr
  5076. ; <ENTER_INC_PTR 1880
  5077.  
  5078. ; >ENTER_INC_DATA 1881
  5079. %dataptr_1881 = load i32, i32* %dataptr_addr
  5080. %element_addr_1881 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1881
  5081. %element_1881 = load i8, i8* %element_addr_1881
  5082. %inc_element_1881 = add i8 %element_1881, 1
  5083. store i8 %inc_element_1881, i8* %element_addr_1881
  5084. ; <ENTER_INC_DATA 1881
  5085.  
  5086. ; >ENTER_DEC_PTR 1882
  5087. %dataptr_1882 = load i32, i32* %dataptr_addr
  5088. %dec_dataptr_1882 = sub i32 %dataptr_1882, 3
  5089. store i32 %dec_dataptr_1882, i32* %dataptr_addr
  5090. ; <ENTER_DEC_PTR 1882
  5091.  
  5092. ; >ENTER_INC_DATA 1885
  5093. %dataptr_1885 = load i32, i32* %dataptr_addr
  5094. %element_addr_1885 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1885
  5095. %element_1885 = load i8, i8* %element_addr_1885
  5096. %inc_element_1885 = add i8 %element_1885, 1
  5097. store i8 %inc_element_1885, i8* %element_addr_1885
  5098. ; <ENTER_INC_DATA 1885
  5099.  
  5100. ; >ENTER_INC_PTR 1886
  5101. %dataptr_1886 = load i32, i32* %dataptr_addr
  5102. %inc_dataptr_1886 = add i32 %dataptr_1886, 2
  5103. store i32 %inc_dataptr_1886, i32* %dataptr_addr
  5104. ; <ENTER_INC_PTR 1886
  5105.  
  5106. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4185
  5107. %dataptr_leave_4185 = load i32, i32* %dataptr_addr
  5108. %element_addr_leave_4185 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4185
  5109. %element_leave_4185 = load i8, i8* %element_addr_leave_4185
  5110. %compare_zero_leave_4185 = icmp ne i8 %element_leave_4185, 0
  5111. br i1 %compare_zero_leave_4185, label %loop_body_4185, label %post_loop_4185
  5112. post_loop_4185:
  5113. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4185
  5114.  
  5115. ; >ENTER_INC_PTR 1889
  5116. %dataptr_1889 = load i32, i32* %dataptr_addr
  5117. %inc_dataptr_1889 = add i32 %dataptr_1889, 2
  5118. store i32 %inc_dataptr_1889, i32* %dataptr_addr
  5119. ; <ENTER_INC_PTR 1889
  5120.  
  5121. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4186
  5122. %dataptr_leave_4186 = load i32, i32* %dataptr_addr
  5123. %element_addr_leave_4186 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4186
  5124. %element_leave_4186 = load i8, i8* %element_addr_leave_4186
  5125. %compare_zero_leave_4186 = icmp ne i8 %element_leave_4186, 0
  5126. br i1 %compare_zero_leave_4186, label %loop_body_4186, label %post_loop_4186
  5127. post_loop_4186:
  5128. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4186
  5129.  
  5130. ; >ENTER_DEC_PTR 1892
  5131. %dataptr_1892 = load i32, i32* %dataptr_addr
  5132. %dec_dataptr_1892 = sub i32 %dataptr_1892, 10
  5133. store i32 %dec_dataptr_1892, i32* %dataptr_addr
  5134. ; <ENTER_DEC_PTR 1892
  5135.  
  5136. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4188
  5137. %dataptr_enter_4188 = load i32, i32* %dataptr_addr
  5138. %element_addr_enter_4188 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4188
  5139. %element_enter_4188 = load i8, i8* %element_addr_enter_4188
  5140. %compare_zero_enter_4188 = icmp eq i8 %element_enter_4188, 0
  5141. br i1 %compare_zero_enter_4188, label %post_loop_4188, label %loop_body_4188
  5142. loop_body_4188:
  5143. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4188
  5144.  
  5145. ; >ENTER_INC_PTR 1904
  5146. %dataptr_1904 = load i32, i32* %dataptr_addr
  5147. %inc_dataptr_1904 = add i32 %dataptr_1904, 3
  5148. store i32 %inc_dataptr_1904, i32* %dataptr_addr
  5149. ; <ENTER_INC_PTR 1904
  5150.  
  5151. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4187
  5152. %dataptr_enter_4187 = load i32, i32* %dataptr_addr
  5153. %element_addr_enter_4187 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4187
  5154. %element_enter_4187 = load i8, i8* %element_addr_enter_4187
  5155. %compare_zero_enter_4187 = icmp eq i8 %element_enter_4187, 0
  5156. br i1 %compare_zero_enter_4187, label %post_loop_4187, label %loop_body_4187
  5157. loop_body_4187:
  5158. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4187
  5159.  
  5160. ; >ENTER_DEC_DATA 1908
  5161. %dataptr_1908 = load i32, i32* %dataptr_addr
  5162. %element_addr_1908 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1908
  5163. %element_1908 = load i8, i8* %element_addr_1908
  5164. %sub_element_1908 = sub i8 %element_1908, 1
  5165. store i8 %sub_element_1908, i8* %element_addr_1908
  5166. ; <ENTER_DEC_DATA 1908
  5167.  
  5168. ; >ENTER_INC_PTR 1909
  5169. %dataptr_1909 = load i32, i32* %dataptr_addr
  5170. %inc_dataptr_1909 = add i32 %dataptr_1909, 6
  5171. store i32 %inc_dataptr_1909, i32* %dataptr_addr
  5172. ; <ENTER_INC_PTR 1909
  5173.  
  5174. ; >ENTER_INC_DATA 1915
  5175. %dataptr_1915 = load i32, i32* %dataptr_addr
  5176. %element_addr_1915 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1915
  5177. %element_1915 = load i8, i8* %element_addr_1915
  5178. %inc_element_1915 = add i8 %element_1915, 1
  5179. store i8 %inc_element_1915, i8* %element_addr_1915
  5180. ; <ENTER_INC_DATA 1915
  5181.  
  5182. ; >ENTER_DEC_PTR 1916
  5183. %dataptr_1916 = load i32, i32* %dataptr_addr
  5184. %dec_dataptr_1916 = sub i32 %dataptr_1916, 6
  5185. store i32 %dec_dataptr_1916, i32* %dataptr_addr
  5186. ; <ENTER_DEC_PTR 1916
  5187.  
  5188. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4187
  5189. %dataptr_leave_4187 = load i32, i32* %dataptr_addr
  5190. %element_addr_leave_4187 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4187
  5191. %element_leave_4187 = load i8, i8* %element_addr_leave_4187
  5192. %compare_zero_leave_4187 = icmp ne i8 %element_leave_4187, 0
  5193. br i1 %compare_zero_leave_4187, label %loop_body_4187, label %post_loop_4187
  5194. post_loop_4187:
  5195. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4187
  5196.  
  5197. ; >ENTER_DEC_PTR 1923
  5198. %dataptr_1923 = load i32, i32* %dataptr_addr
  5199. %dec_dataptr_1923 = sub i32 %dataptr_1923, 13
  5200. store i32 %dec_dataptr_1923, i32* %dataptr_addr
  5201. ; <ENTER_DEC_PTR 1923
  5202.  
  5203. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4188
  5204. %dataptr_leave_4188 = load i32, i32* %dataptr_addr
  5205. %element_addr_leave_4188 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4188
  5206. %element_leave_4188 = load i8, i8* %element_addr_leave_4188
  5207. %compare_zero_leave_4188 = icmp ne i8 %element_leave_4188, 0
  5208. br i1 %compare_zero_leave_4188, label %loop_body_4188, label %post_loop_4188
  5209. post_loop_4188:
  5210. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4188
  5211.  
  5212. ; >ENTER_INC_PTR 1937
  5213. %dataptr_1937 = load i32, i32* %dataptr_addr
  5214. %inc_dataptr_1937 = add i32 %dataptr_1937, 10
  5215. store i32 %inc_dataptr_1937, i32* %dataptr_addr
  5216. ; <ENTER_INC_PTR 1937
  5217.  
  5218. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4200
  5219. %dataptr_enter_4200 = load i32, i32* %dataptr_addr
  5220. %element_addr_enter_4200 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4200
  5221. %element_enter_4200 = load i8, i8* %element_addr_enter_4200
  5222. %compare_zero_enter_4200 = icmp eq i8 %element_enter_4200, 0
  5223. br i1 %compare_zero_enter_4200, label %post_loop_4200, label %loop_body_4200
  5224. loop_body_4200:
  5225. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4200
  5226.  
  5227. ; >ENTER_INC_PTR 1949
  5228. %dataptr_1949 = load i32, i32* %dataptr_addr
  5229. %inc_dataptr_1949 = add i32 %dataptr_1949, 9
  5230. store i32 %inc_dataptr_1949, i32* %dataptr_addr
  5231. ; <ENTER_INC_PTR 1949
  5232.  
  5233. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4199
  5234. %dataptr_enter_4199 = load i32, i32* %dataptr_addr
  5235. %element_addr_enter_4199 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4199
  5236. %element_enter_4199 = load i8, i8* %element_addr_enter_4199
  5237. %compare_zero_enter_4199 = icmp eq i8 %element_enter_4199, 0
  5238. br i1 %compare_zero_enter_4199, label %post_loop_4199, label %loop_body_4199
  5239. loop_body_4199:
  5240. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4199
  5241.  
  5242. ; >ENTER_DEC_DATA 1959
  5243. %dataptr_1959 = load i32, i32* %dataptr_addr
  5244. %element_addr_1959 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1959
  5245. %element_1959 = load i8, i8* %element_addr_1959
  5246. %sub_element_1959 = sub i8 %element_1959, 1
  5247. store i8 %sub_element_1959, i8* %element_addr_1959
  5248. ; <ENTER_DEC_DATA 1959
  5249.  
  5250. ; >ENTER_DEC_PTR 1960
  5251. %dataptr_1960 = load i32, i32* %dataptr_addr
  5252. %dec_dataptr_1960 = sub i32 %dataptr_1960, 6
  5253. store i32 %dec_dataptr_1960, i32* %dataptr_addr
  5254. ; <ENTER_DEC_PTR 1960
  5255.  
  5256. ; >ENTER_INC_DATA 1966
  5257. %dataptr_1966 = load i32, i32* %dataptr_addr
  5258. %element_addr_1966 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1966
  5259. %element_1966 = load i8, i8* %element_addr_1966
  5260. %inc_element_1966 = add i8 %element_1966, 1
  5261. store i8 %inc_element_1966, i8* %element_addr_1966
  5262. ; <ENTER_INC_DATA 1966
  5263.  
  5264. ; >ENTER_INC_PTR 1967
  5265. %dataptr_1967 = load i32, i32* %dataptr_addr
  5266. %inc_dataptr_1967 = add i32 %dataptr_1967, 6
  5267. store i32 %inc_dataptr_1967, i32* %dataptr_addr
  5268. ; <ENTER_INC_PTR 1967
  5269.  
  5270. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4198
  5271. %dataptr_enter_4198 = load i32, i32* %dataptr_addr
  5272. %element_addr_enter_4198 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4198
  5273. %element_enter_4198 = load i8, i8* %element_addr_enter_4198
  5274. %compare_zero_enter_4198 = icmp eq i8 %element_enter_4198, 0
  5275. br i1 %compare_zero_enter_4198, label %post_loop_4198, label %loop_body_4198
  5276. loop_body_4198:
  5277. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4198
  5278.  
  5279. ; >ENTER_DEC_DATA 1974
  5280. %dataptr_1974 = load i32, i32* %dataptr_addr
  5281. %element_addr_1974 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1974
  5282. %element_1974 = load i8, i8* %element_addr_1974
  5283. %sub_element_1974 = sub i8 %element_1974, 1
  5284. store i8 %sub_element_1974, i8* %element_addr_1974
  5285. ; <ENTER_DEC_DATA 1974
  5286.  
  5287. ; >ENTER_DEC_PTR 1975
  5288. %dataptr_1975 = load i32, i32* %dataptr_addr
  5289. %dec_dataptr_1975 = sub i32 %dataptr_1975, 6
  5290. store i32 %dec_dataptr_1975, i32* %dataptr_addr
  5291. ; <ENTER_DEC_PTR 1975
  5292.  
  5293. ; >ENTER_INC_DATA 1981
  5294. %dataptr_1981 = load i32, i32* %dataptr_addr
  5295. %element_addr_1981 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1981
  5296. %element_1981 = load i8, i8* %element_addr_1981
  5297. %inc_element_1981 = add i8 %element_1981, 1
  5298. store i8 %inc_element_1981, i8* %element_addr_1981
  5299. ; <ENTER_INC_DATA 1981
  5300.  
  5301. ; >ENTER_INC_PTR 1982
  5302. %dataptr_1982 = load i32, i32* %dataptr_addr
  5303. %inc_dataptr_1982 = add i32 %dataptr_1982, 6
  5304. store i32 %inc_dataptr_1982, i32* %dataptr_addr
  5305. ; <ENTER_INC_PTR 1982
  5306.  
  5307. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4197
  5308. %dataptr_enter_4197 = load i32, i32* %dataptr_addr
  5309. %element_addr_enter_4197 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4197
  5310. %element_enter_4197 = load i8, i8* %element_addr_enter_4197
  5311. %compare_zero_enter_4197 = icmp eq i8 %element_enter_4197, 0
  5312. br i1 %compare_zero_enter_4197, label %post_loop_4197, label %loop_body_4197
  5313. loop_body_4197:
  5314. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4197
  5315.  
  5316. ; >ENTER_DEC_DATA 1990
  5317. %dataptr_1990 = load i32, i32* %dataptr_addr
  5318. %element_addr_1990 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1990
  5319. %element_1990 = load i8, i8* %element_addr_1990
  5320. %sub_element_1990 = sub i8 %element_1990, 1
  5321. store i8 %sub_element_1990, i8* %element_addr_1990
  5322. ; <ENTER_DEC_DATA 1990
  5323.  
  5324. ; >ENTER_DEC_PTR 1991
  5325. %dataptr_1991 = load i32, i32* %dataptr_addr
  5326. %dec_dataptr_1991 = sub i32 %dataptr_1991, 6
  5327. store i32 %dec_dataptr_1991, i32* %dataptr_addr
  5328. ; <ENTER_DEC_PTR 1991
  5329.  
  5330. ; >ENTER_INC_DATA 1997
  5331. %dataptr_1997 = load i32, i32* %dataptr_addr
  5332. %element_addr_1997 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_1997
  5333. %element_1997 = load i8, i8* %element_addr_1997
  5334. %inc_element_1997 = add i8 %element_1997, 1
  5335. store i8 %inc_element_1997, i8* %element_addr_1997
  5336. ; <ENTER_INC_DATA 1997
  5337.  
  5338. ; >ENTER_INC_PTR 1998
  5339. %dataptr_1998 = load i32, i32* %dataptr_addr
  5340. %inc_dataptr_1998 = add i32 %dataptr_1998, 6
  5341. store i32 %inc_dataptr_1998, i32* %dataptr_addr
  5342. ; <ENTER_INC_PTR 1998
  5343.  
  5344. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4196
  5345. %dataptr_enter_4196 = load i32, i32* %dataptr_addr
  5346. %element_addr_enter_4196 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4196
  5347. %element_enter_4196 = load i8, i8* %element_addr_enter_4196
  5348. %compare_zero_enter_4196 = icmp eq i8 %element_enter_4196, 0
  5349. br i1 %compare_zero_enter_4196, label %post_loop_4196, label %loop_body_4196
  5350. loop_body_4196:
  5351. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4196
  5352.  
  5353. ; >ENTER_DEC_DATA 2005
  5354. %dataptr_2005 = load i32, i32* %dataptr_addr
  5355. %element_addr_2005 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2005
  5356. %element_2005 = load i8, i8* %element_addr_2005
  5357. %sub_element_2005 = sub i8 %element_2005, 1
  5358. store i8 %sub_element_2005, i8* %element_addr_2005
  5359. ; <ENTER_DEC_DATA 2005
  5360.  
  5361. ; >ENTER_DEC_PTR 2006
  5362. %dataptr_2006 = load i32, i32* %dataptr_addr
  5363. %dec_dataptr_2006 = sub i32 %dataptr_2006, 6
  5364. store i32 %dec_dataptr_2006, i32* %dataptr_addr
  5365. ; <ENTER_DEC_PTR 2006
  5366.  
  5367. ; >ENTER_INC_DATA 2012
  5368. %dataptr_2012 = load i32, i32* %dataptr_addr
  5369. %element_addr_2012 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2012
  5370. %element_2012 = load i8, i8* %element_addr_2012
  5371. %inc_element_2012 = add i8 %element_2012, 1
  5372. store i8 %inc_element_2012, i8* %element_addr_2012
  5373. ; <ENTER_INC_DATA 2012
  5374.  
  5375. ; >ENTER_INC_PTR 2013
  5376. %dataptr_2013 = load i32, i32* %dataptr_addr
  5377. %inc_dataptr_2013 = add i32 %dataptr_2013, 6
  5378. store i32 %inc_dataptr_2013, i32* %dataptr_addr
  5379. ; <ENTER_INC_PTR 2013
  5380.  
  5381. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4195
  5382. %dataptr_enter_4195 = load i32, i32* %dataptr_addr
  5383. %element_addr_enter_4195 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4195
  5384. %element_enter_4195 = load i8, i8* %element_addr_enter_4195
  5385. %compare_zero_enter_4195 = icmp eq i8 %element_enter_4195, 0
  5386. br i1 %compare_zero_enter_4195, label %post_loop_4195, label %loop_body_4195
  5387. loop_body_4195:
  5388. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4195
  5389.  
  5390. ; >ENTER_DEC_DATA 2021
  5391. %dataptr_2021 = load i32, i32* %dataptr_addr
  5392. %element_addr_2021 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2021
  5393. %element_2021 = load i8, i8* %element_addr_2021
  5394. %sub_element_2021 = sub i8 %element_2021, 1
  5395. store i8 %sub_element_2021, i8* %element_addr_2021
  5396. ; <ENTER_DEC_DATA 2021
  5397.  
  5398. ; >ENTER_DEC_PTR 2022
  5399. %dataptr_2022 = load i32, i32* %dataptr_addr
  5400. %dec_dataptr_2022 = sub i32 %dataptr_2022, 6
  5401. store i32 %dec_dataptr_2022, i32* %dataptr_addr
  5402. ; <ENTER_DEC_PTR 2022
  5403.  
  5404. ; >ENTER_INC_DATA 2028
  5405. %dataptr_2028 = load i32, i32* %dataptr_addr
  5406. %element_addr_2028 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2028
  5407. %element_2028 = load i8, i8* %element_addr_2028
  5408. %inc_element_2028 = add i8 %element_2028, 1
  5409. store i8 %inc_element_2028, i8* %element_addr_2028
  5410. ; <ENTER_INC_DATA 2028
  5411.  
  5412. ; >ENTER_INC_PTR 2029
  5413. %dataptr_2029 = load i32, i32* %dataptr_addr
  5414. %inc_dataptr_2029 = add i32 %dataptr_2029, 6
  5415. store i32 %inc_dataptr_2029, i32* %dataptr_addr
  5416. ; <ENTER_INC_PTR 2029
  5417.  
  5418. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4194
  5419. %dataptr_enter_4194 = load i32, i32* %dataptr_addr
  5420. %element_addr_enter_4194 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4194
  5421. %element_enter_4194 = load i8, i8* %element_addr_enter_4194
  5422. %compare_zero_enter_4194 = icmp eq i8 %element_enter_4194, 0
  5423. br i1 %compare_zero_enter_4194, label %post_loop_4194, label %loop_body_4194
  5424. loop_body_4194:
  5425. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4194
  5426.  
  5427. ; >ENTER_DEC_DATA 2036
  5428. %dataptr_2036 = load i32, i32* %dataptr_addr
  5429. %element_addr_2036 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2036
  5430. %element_2036 = load i8, i8* %element_addr_2036
  5431. %sub_element_2036 = sub i8 %element_2036, 1
  5432. store i8 %sub_element_2036, i8* %element_addr_2036
  5433. ; <ENTER_DEC_DATA 2036
  5434.  
  5435. ; >ENTER_DEC_PTR 2037
  5436. %dataptr_2037 = load i32, i32* %dataptr_addr
  5437. %dec_dataptr_2037 = sub i32 %dataptr_2037, 6
  5438. store i32 %dec_dataptr_2037, i32* %dataptr_addr
  5439. ; <ENTER_DEC_PTR 2037
  5440.  
  5441. ; >ENTER_INC_DATA 2043
  5442. %dataptr_2043 = load i32, i32* %dataptr_addr
  5443. %element_addr_2043 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2043
  5444. %element_2043 = load i8, i8* %element_addr_2043
  5445. %inc_element_2043 = add i8 %element_2043, 1
  5446. store i8 %inc_element_2043, i8* %element_addr_2043
  5447. ; <ENTER_INC_DATA 2043
  5448.  
  5449. ; >ENTER_INC_PTR 2044
  5450. %dataptr_2044 = load i32, i32* %dataptr_addr
  5451. %inc_dataptr_2044 = add i32 %dataptr_2044, 6
  5452. store i32 %inc_dataptr_2044, i32* %dataptr_addr
  5453. ; <ENTER_INC_PTR 2044
  5454.  
  5455. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4193
  5456. %dataptr_enter_4193 = load i32, i32* %dataptr_addr
  5457. %element_addr_enter_4193 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4193
  5458. %element_enter_4193 = load i8, i8* %element_addr_enter_4193
  5459. %compare_zero_enter_4193 = icmp eq i8 %element_enter_4193, 0
  5460. br i1 %compare_zero_enter_4193, label %post_loop_4193, label %loop_body_4193
  5461. loop_body_4193:
  5462. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4193
  5463.  
  5464. ; >ENTER_DEC_DATA 2052
  5465. %dataptr_2052 = load i32, i32* %dataptr_addr
  5466. %element_addr_2052 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2052
  5467. %element_2052 = load i8, i8* %element_addr_2052
  5468. %sub_element_2052 = sub i8 %element_2052, 1
  5469. store i8 %sub_element_2052, i8* %element_addr_2052
  5470. ; <ENTER_DEC_DATA 2052
  5471.  
  5472. ; >ENTER_DEC_PTR 2053
  5473. %dataptr_2053 = load i32, i32* %dataptr_addr
  5474. %dec_dataptr_2053 = sub i32 %dataptr_2053, 6
  5475. store i32 %dec_dataptr_2053, i32* %dataptr_addr
  5476. ; <ENTER_DEC_PTR 2053
  5477.  
  5478. ; >ENTER_INC_DATA 2059
  5479. %dataptr_2059 = load i32, i32* %dataptr_addr
  5480. %element_addr_2059 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2059
  5481. %element_2059 = load i8, i8* %element_addr_2059
  5482. %inc_element_2059 = add i8 %element_2059, 1
  5483. store i8 %inc_element_2059, i8* %element_addr_2059
  5484. ; <ENTER_INC_DATA 2059
  5485.  
  5486. ; >ENTER_INC_PTR 2060
  5487. %dataptr_2060 = load i32, i32* %dataptr_addr
  5488. %inc_dataptr_2060 = add i32 %dataptr_2060, 6
  5489. store i32 %inc_dataptr_2060, i32* %dataptr_addr
  5490. ; <ENTER_INC_PTR 2060
  5491.  
  5492. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4192
  5493. %dataptr_enter_4192 = load i32, i32* %dataptr_addr
  5494. %element_addr_enter_4192 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4192
  5495. %element_enter_4192 = load i8, i8* %element_addr_enter_4192
  5496. %compare_zero_enter_4192 = icmp eq i8 %element_enter_4192, 0
  5497. br i1 %compare_zero_enter_4192, label %post_loop_4192, label %loop_body_4192
  5498. loop_body_4192:
  5499. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4192
  5500.  
  5501. ; >ENTER_DEC_DATA 2067
  5502. %dataptr_2067 = load i32, i32* %dataptr_addr
  5503. %element_addr_2067 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2067
  5504. %element_2067 = load i8, i8* %element_addr_2067
  5505. %sub_element_2067 = sub i8 %element_2067, 1
  5506. store i8 %sub_element_2067, i8* %element_addr_2067
  5507. ; <ENTER_DEC_DATA 2067
  5508.  
  5509. ; >ENTER_DEC_PTR 2068
  5510. %dataptr_2068 = load i32, i32* %dataptr_addr
  5511. %dec_dataptr_2068 = sub i32 %dataptr_2068, 6
  5512. store i32 %dec_dataptr_2068, i32* %dataptr_addr
  5513. ; <ENTER_DEC_PTR 2068
  5514.  
  5515. ; >ENTER_INC_DATA 2074
  5516. %dataptr_2074 = load i32, i32* %dataptr_addr
  5517. %element_addr_2074 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2074
  5518. %element_2074 = load i8, i8* %element_addr_2074
  5519. %inc_element_2074 = add i8 %element_2074, 1
  5520. store i8 %inc_element_2074, i8* %element_addr_2074
  5521. ; <ENTER_INC_DATA 2074
  5522.  
  5523. ; >ENTER_INC_PTR 2075
  5524. %dataptr_2075 = load i32, i32* %dataptr_addr
  5525. %inc_dataptr_2075 = add i32 %dataptr_2075, 6
  5526. store i32 %inc_dataptr_2075, i32* %dataptr_addr
  5527. ; <ENTER_INC_PTR 2075
  5528.  
  5529. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4191
  5530. %dataptr_enter_4191 = load i32, i32* %dataptr_addr
  5531. %element_addr_enter_4191 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4191
  5532. %element_enter_4191 = load i8, i8* %element_addr_enter_4191
  5533. %compare_zero_enter_4191 = icmp eq i8 %element_enter_4191, 0
  5534. br i1 %compare_zero_enter_4191, label %post_loop_4191, label %loop_body_4191
  5535. loop_body_4191:
  5536. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4191
  5537.  
  5538. ; >ENTER_DEC_DATA 2083
  5539. %dataptr_2083 = load i32, i32* %dataptr_addr
  5540. %element_addr_2083 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2083
  5541. %element_2083 = load i8, i8* %element_addr_2083
  5542. %sub_element_2083 = sub i8 %element_2083, 1
  5543. store i8 %sub_element_2083, i8* %element_addr_2083
  5544. ; <ENTER_DEC_DATA 2083
  5545.  
  5546. ; >ENTER_DEC_PTR 2084
  5547. %dataptr_2084 = load i32, i32* %dataptr_addr
  5548. %dec_dataptr_2084 = sub i32 %dataptr_2084, 6
  5549. store i32 %dec_dataptr_2084, i32* %dataptr_addr
  5550. ; <ENTER_DEC_PTR 2084
  5551.  
  5552. ; >ENTER_INC_DATA 2090
  5553. %dataptr_2090 = load i32, i32* %dataptr_addr
  5554. %element_addr_2090 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2090
  5555. %element_2090 = load i8, i8* %element_addr_2090
  5556. %inc_element_2090 = add i8 %element_2090, 1
  5557. store i8 %inc_element_2090, i8* %element_addr_2090
  5558. ; <ENTER_INC_DATA 2090
  5559.  
  5560. ; >ENTER_INC_PTR 2091
  5561. %dataptr_2091 = load i32, i32* %dataptr_addr
  5562. %inc_dataptr_2091 = add i32 %dataptr_2091, 6
  5563. store i32 %inc_dataptr_2091, i32* %dataptr_addr
  5564. ; <ENTER_INC_PTR 2091
  5565.  
  5566. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4190
  5567. %dataptr_enter_4190 = load i32, i32* %dataptr_addr
  5568. %element_addr_enter_4190 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4190
  5569. %element_enter_4190 = load i8, i8* %element_addr_enter_4190
  5570. %compare_zero_enter_4190 = icmp eq i8 %element_enter_4190, 0
  5571. br i1 %compare_zero_enter_4190, label %post_loop_4190, label %loop_body_4190
  5572. loop_body_4190:
  5573. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4190
  5574.  
  5575. ; >ENTER_DEC_DATA 2098
  5576. %dataptr_2098 = load i32, i32* %dataptr_addr
  5577. %element_addr_2098 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2098
  5578. %element_2098 = load i8, i8* %element_addr_2098
  5579. %sub_element_2098 = sub i8 %element_2098, 1
  5580. store i8 %sub_element_2098, i8* %element_addr_2098
  5581. ; <ENTER_DEC_DATA 2098
  5582.  
  5583. ; >ENTER_DEC_PTR 2099
  5584. %dataptr_2099 = load i32, i32* %dataptr_addr
  5585. %dec_dataptr_2099 = sub i32 %dataptr_2099, 6
  5586. store i32 %dec_dataptr_2099, i32* %dataptr_addr
  5587. ; <ENTER_DEC_PTR 2099
  5588.  
  5589. ; >ENTER_DEC_DATA 2105
  5590. %dataptr_2105 = load i32, i32* %dataptr_addr
  5591. %element_addr_2105 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2105
  5592. %element_2105 = load i8, i8* %element_addr_2105
  5593. %sub_element_2105 = sub i8 %element_2105, 9
  5594. store i8 %sub_element_2105, i8* %element_addr_2105
  5595. ; <ENTER_DEC_DATA 2105
  5596.  
  5597. ; >ENTER_INC_PTR 2114
  5598. %dataptr_2114 = load i32, i32* %dataptr_addr
  5599. %inc_dataptr_2114 = add i32 %dataptr_2114, 16
  5600. store i32 %inc_dataptr_2114, i32* %dataptr_addr
  5601. ; <ENTER_INC_PTR 2114
  5602.  
  5603. ; >ENTER_INC_DATA 2130
  5604. %dataptr_2130 = load i32, i32* %dataptr_addr
  5605. %element_addr_2130 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2130
  5606. %element_2130 = load i8, i8* %element_addr_2130
  5607. %inc_element_2130 = add i8 %element_2130, 1
  5608. store i8 %inc_element_2130, i8* %element_addr_2130
  5609. ; <ENTER_INC_DATA 2130
  5610.  
  5611. ; >ENTER_DEC_PTR 2131
  5612. %dataptr_2131 = load i32, i32* %dataptr_addr
  5613. %dec_dataptr_2131 = sub i32 %dataptr_2131, 10
  5614. store i32 %dec_dataptr_2131, i32* %dataptr_addr
  5615. ; <ENTER_DEC_PTR 2131
  5616.  
  5617. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4189
  5618. %dataptr_enter_4189 = load i32, i32* %dataptr_addr
  5619. %element_addr_enter_4189 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4189
  5620. %element_enter_4189 = load i8, i8* %element_addr_enter_4189
  5621. %compare_zero_enter_4189 = icmp eq i8 %element_enter_4189, 0
  5622. br i1 %compare_zero_enter_4189, label %post_loop_4189, label %loop_body_4189
  5623. loop_body_4189:
  5624. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4189
  5625.  
  5626. ; >ENTER_DEC_DATA 2143
  5627. %dataptr_2143 = load i32, i32* %dataptr_addr
  5628. %element_addr_2143 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2143
  5629. %element_2143 = load i8, i8* %element_addr_2143
  5630. %sub_element_2143 = sub i8 %element_2143, 1
  5631. store i8 %sub_element_2143, i8* %element_addr_2143
  5632. ; <ENTER_DEC_DATA 2143
  5633.  
  5634. ; >ENTER_DEC_PTR 2144
  5635. %dataptr_2144 = load i32, i32* %dataptr_addr
  5636. %dec_dataptr_2144 = sub i32 %dataptr_2144, 6
  5637. store i32 %dec_dataptr_2144, i32* %dataptr_addr
  5638. ; <ENTER_DEC_PTR 2144
  5639.  
  5640. ; >ENTER_INC_DATA 2150
  5641. %dataptr_2150 = load i32, i32* %dataptr_addr
  5642. %element_addr_2150 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2150
  5643. %element_2150 = load i8, i8* %element_addr_2150
  5644. %inc_element_2150 = add i8 %element_2150, 1
  5645. store i8 %inc_element_2150, i8* %element_addr_2150
  5646. ; <ENTER_INC_DATA 2150
  5647.  
  5648. ; >ENTER_INC_PTR 2151
  5649. %dataptr_2151 = load i32, i32* %dataptr_addr
  5650. %inc_dataptr_2151 = add i32 %dataptr_2151, 6
  5651. store i32 %inc_dataptr_2151, i32* %dataptr_addr
  5652. ; <ENTER_INC_PTR 2151
  5653.  
  5654. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4189
  5655. %dataptr_leave_4189 = load i32, i32* %dataptr_addr
  5656. %element_addr_leave_4189 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4189
  5657. %element_leave_4189 = load i8, i8* %element_addr_leave_4189
  5658. %compare_zero_leave_4189 = icmp ne i8 %element_leave_4189, 0
  5659. br i1 %compare_zero_leave_4189, label %loop_body_4189, label %post_loop_4189
  5660. post_loop_4189:
  5661. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4189
  5662.  
  5663. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4190
  5664. %dataptr_leave_4190 = load i32, i32* %dataptr_addr
  5665. %element_addr_leave_4190 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4190
  5666. %element_leave_4190 = load i8, i8* %element_addr_leave_4190
  5667. %compare_zero_leave_4190 = icmp ne i8 %element_leave_4190, 0
  5668. br i1 %compare_zero_leave_4190, label %loop_body_4190, label %post_loop_4190
  5669. post_loop_4190:
  5670. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4190
  5671.  
  5672. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4191
  5673. %dataptr_leave_4191 = load i32, i32* %dataptr_addr
  5674. %element_addr_leave_4191 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4191
  5675. %element_leave_4191 = load i8, i8* %element_addr_leave_4191
  5676. %compare_zero_leave_4191 = icmp ne i8 %element_leave_4191, 0
  5677. br i1 %compare_zero_leave_4191, label %loop_body_4191, label %post_loop_4191
  5678. post_loop_4191:
  5679. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4191
  5680.  
  5681. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4192
  5682. %dataptr_leave_4192 = load i32, i32* %dataptr_addr
  5683. %element_addr_leave_4192 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4192
  5684. %element_leave_4192 = load i8, i8* %element_addr_leave_4192
  5685. %compare_zero_leave_4192 = icmp ne i8 %element_leave_4192, 0
  5686. br i1 %compare_zero_leave_4192, label %loop_body_4192, label %post_loop_4192
  5687. post_loop_4192:
  5688. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4192
  5689.  
  5690. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4193
  5691. %dataptr_leave_4193 = load i32, i32* %dataptr_addr
  5692. %element_addr_leave_4193 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4193
  5693. %element_leave_4193 = load i8, i8* %element_addr_leave_4193
  5694. %compare_zero_leave_4193 = icmp ne i8 %element_leave_4193, 0
  5695. br i1 %compare_zero_leave_4193, label %loop_body_4193, label %post_loop_4193
  5696. post_loop_4193:
  5697. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4193
  5698.  
  5699. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4194
  5700. %dataptr_leave_4194 = load i32, i32* %dataptr_addr
  5701. %element_addr_leave_4194 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4194
  5702. %element_leave_4194 = load i8, i8* %element_addr_leave_4194
  5703. %compare_zero_leave_4194 = icmp ne i8 %element_leave_4194, 0
  5704. br i1 %compare_zero_leave_4194, label %loop_body_4194, label %post_loop_4194
  5705. post_loop_4194:
  5706. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4194
  5707.  
  5708. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4195
  5709. %dataptr_leave_4195 = load i32, i32* %dataptr_addr
  5710. %element_addr_leave_4195 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4195
  5711. %element_leave_4195 = load i8, i8* %element_addr_leave_4195
  5712. %compare_zero_leave_4195 = icmp ne i8 %element_leave_4195, 0
  5713. br i1 %compare_zero_leave_4195, label %loop_body_4195, label %post_loop_4195
  5714. post_loop_4195:
  5715. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4195
  5716.  
  5717. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4196
  5718. %dataptr_leave_4196 = load i32, i32* %dataptr_addr
  5719. %element_addr_leave_4196 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4196
  5720. %element_leave_4196 = load i8, i8* %element_addr_leave_4196
  5721. %compare_zero_leave_4196 = icmp ne i8 %element_leave_4196, 0
  5722. br i1 %compare_zero_leave_4196, label %loop_body_4196, label %post_loop_4196
  5723. post_loop_4196:
  5724. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4196
  5725.  
  5726. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4197
  5727. %dataptr_leave_4197 = load i32, i32* %dataptr_addr
  5728. %element_addr_leave_4197 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4197
  5729. %element_leave_4197 = load i8, i8* %element_addr_leave_4197
  5730. %compare_zero_leave_4197 = icmp ne i8 %element_leave_4197, 0
  5731. br i1 %compare_zero_leave_4197, label %loop_body_4197, label %post_loop_4197
  5732. post_loop_4197:
  5733. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4197
  5734.  
  5735. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4198
  5736. %dataptr_leave_4198 = load i32, i32* %dataptr_addr
  5737. %element_addr_leave_4198 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4198
  5738. %element_leave_4198 = load i8, i8* %element_addr_leave_4198
  5739. %compare_zero_leave_4198 = icmp ne i8 %element_leave_4198, 0
  5740. br i1 %compare_zero_leave_4198, label %loop_body_4198, label %post_loop_4198
  5741. post_loop_4198:
  5742. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4198
  5743.  
  5744. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4199
  5745. %dataptr_leave_4199 = load i32, i32* %dataptr_addr
  5746. %element_addr_leave_4199 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4199
  5747. %element_leave_4199 = load i8, i8* %element_addr_leave_4199
  5748. %compare_zero_leave_4199 = icmp ne i8 %element_leave_4199, 0
  5749. br i1 %compare_zero_leave_4199, label %loop_body_4199, label %post_loop_4199
  5750. post_loop_4199:
  5751. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4199
  5752.  
  5753. ; >ENTER_INC_PTR 2168
  5754. %dataptr_2168 = load i32, i32* %dataptr_addr
  5755. %inc_dataptr_2168 = add i32 %dataptr_2168, 1
  5756. store i32 %inc_dataptr_2168, i32* %dataptr_addr
  5757. ; <ENTER_INC_PTR 2168
  5758.  
  5759. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4200
  5760. %dataptr_leave_4200 = load i32, i32* %dataptr_addr
  5761. %element_addr_leave_4200 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4200
  5762. %element_leave_4200 = load i8, i8* %element_addr_leave_4200
  5763. %compare_zero_leave_4200 = icmp ne i8 %element_leave_4200, 0
  5764. br i1 %compare_zero_leave_4200, label %loop_body_4200, label %post_loop_4200
  5765. post_loop_4200:
  5766. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4200
  5767.  
  5768. ; >ENTER_INC_PTR 2171
  5769. %dataptr_2171 = load i32, i32* %dataptr_addr
  5770. %inc_dataptr_2171 = add i32 %dataptr_2171, 7
  5771. store i32 %inc_dataptr_2171, i32* %dataptr_addr
  5772. ; <ENTER_INC_PTR 2171
  5773.  
  5774. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4201
  5775. %dataptr_leave_4201 = load i32, i32* %dataptr_addr
  5776. %element_addr_leave_4201 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4201
  5777. %element_leave_4201 = load i8, i8* %element_addr_leave_4201
  5778. %compare_zero_leave_4201 = icmp ne i8 %element_leave_4201, 0
  5779. br i1 %compare_zero_leave_4201, label %loop_body_4201, label %post_loop_4201
  5780. post_loop_4201:
  5781. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4201
  5782.  
  5783. ; >ENTER_DEC_PTR 2181
  5784. %dataptr_2181 = load i32, i32* %dataptr_addr
  5785. %dec_dataptr_2181 = sub i32 %dataptr_2181, 17
  5786. store i32 %dec_dataptr_2181, i32* %dataptr_addr
  5787. ; <ENTER_DEC_PTR 2181
  5788.  
  5789. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4202
  5790. %dataptr_enter_4202 = load i32, i32* %dataptr_addr
  5791. %element_addr_enter_4202 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4202
  5792. %element_enter_4202 = load i8, i8* %element_addr_enter_4202
  5793. %compare_zero_enter_4202 = icmp eq i8 %element_enter_4202, 0
  5794. br i1 %compare_zero_enter_4202, label %post_loop_4202, label %loop_body_4202
  5795. loop_body_4202:
  5796. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4202
  5797.  
  5798. ; >ENTER_DEC_PTR 2199
  5799. %dataptr_2199 = load i32, i32* %dataptr_addr
  5800. %dec_dataptr_2199 = sub i32 %dataptr_2199, 10
  5801. store i32 %dec_dataptr_2199, i32* %dataptr_addr
  5802. ; <ENTER_DEC_PTR 2199
  5803.  
  5804. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4202
  5805. %dataptr_leave_4202 = load i32, i32* %dataptr_addr
  5806. %element_addr_leave_4202 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4202
  5807. %element_leave_4202 = load i8, i8* %element_addr_leave_4202
  5808. %compare_zero_leave_4202 = icmp ne i8 %element_leave_4202, 0
  5809. br i1 %compare_zero_leave_4202, label %loop_body_4202, label %post_loop_4202
  5810. post_loop_4202:
  5811. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4202
  5812.  
  5813. ; >ENTER_INC_PTR 2210
  5814. %dataptr_2210 = load i32, i32* %dataptr_addr
  5815. %inc_dataptr_2210 = add i32 %dataptr_2210, 10
  5816. store i32 %inc_dataptr_2210, i32* %dataptr_addr
  5817. ; <ENTER_INC_PTR 2210
  5818.  
  5819. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4206
  5820. %dataptr_enter_4206 = load i32, i32* %dataptr_addr
  5821. %element_addr_enter_4206 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4206
  5822. %element_enter_4206 = load i8, i8* %element_addr_enter_4206
  5823. %compare_zero_enter_4206 = icmp eq i8 %element_enter_4206, 0
  5824. br i1 %compare_zero_enter_4206, label %post_loop_4206, label %loop_body_4206
  5825. loop_body_4206:
  5826. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4206
  5827.  
  5828. ; >ENTER_INC_PTR 2222
  5829. %dataptr_2222 = load i32, i32* %dataptr_addr
  5830. %inc_dataptr_2222 = add i32 %dataptr_2222, 8
  5831. store i32 %inc_dataptr_2222, i32* %dataptr_addr
  5832. ; <ENTER_INC_PTR 2222
  5833.  
  5834. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4203
  5835. %dataptr_enter_4203 = load i32, i32* %dataptr_addr
  5836. %element_addr_enter_4203 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4203
  5837. %element_enter_4203 = load i8, i8* %element_addr_enter_4203
  5838. %compare_zero_enter_4203 = icmp eq i8 %element_enter_4203, 0
  5839. br i1 %compare_zero_enter_4203, label %post_loop_4203, label %loop_body_4203
  5840. loop_body_4203:
  5841. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4203
  5842.  
  5843. ; >ENTER_DEC_DATA 2231
  5844. %dataptr_2231 = load i32, i32* %dataptr_addr
  5845. %element_addr_2231 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2231
  5846. %element_2231 = load i8, i8* %element_addr_2231
  5847. %sub_element_2231 = sub i8 %element_2231, 1
  5848. store i8 %sub_element_2231, i8* %element_addr_2231
  5849. ; <ENTER_DEC_DATA 2231
  5850.  
  5851. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4203
  5852. %dataptr_leave_4203 = load i32, i32* %dataptr_addr
  5853. %element_addr_leave_4203 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4203
  5854. %element_leave_4203 = load i8, i8* %element_addr_leave_4203
  5855. %compare_zero_leave_4203 = icmp ne i8 %element_leave_4203, 0
  5856. br i1 %compare_zero_leave_4203, label %loop_body_4203, label %post_loop_4203
  5857. post_loop_4203:
  5858. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4203
  5859.  
  5860. ; >ENTER_DEC_PTR 2233
  5861. %dataptr_2233 = load i32, i32* %dataptr_addr
  5862. %dec_dataptr_2233 = sub i32 %dataptr_2233, 2
  5863. store i32 %dec_dataptr_2233, i32* %dataptr_addr
  5864. ; <ENTER_DEC_PTR 2233
  5865.  
  5866. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4204
  5867. %dataptr_enter_4204 = load i32, i32* %dataptr_addr
  5868. %element_addr_enter_4204 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4204
  5869. %element_enter_4204 = load i8, i8* %element_addr_enter_4204
  5870. %compare_zero_enter_4204 = icmp eq i8 %element_enter_4204, 0
  5871. br i1 %compare_zero_enter_4204, label %post_loop_4204, label %loop_body_4204
  5872. loop_body_4204:
  5873. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4204
  5874.  
  5875. ; >ENTER_DEC_DATA 2236
  5876. %dataptr_2236 = load i32, i32* %dataptr_addr
  5877. %element_addr_2236 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2236
  5878. %element_2236 = load i8, i8* %element_addr_2236
  5879. %sub_element_2236 = sub i8 %element_2236, 1
  5880. store i8 %sub_element_2236, i8* %element_addr_2236
  5881. ; <ENTER_DEC_DATA 2236
  5882.  
  5883. ; >ENTER_INC_PTR 2237
  5884. %dataptr_2237 = load i32, i32* %dataptr_addr
  5885. %inc_dataptr_2237 = add i32 %dataptr_2237, 1
  5886. store i32 %inc_dataptr_2237, i32* %dataptr_addr
  5887. ; <ENTER_INC_PTR 2237
  5888.  
  5889. ; >ENTER_INC_DATA 2238
  5890. %dataptr_2238 = load i32, i32* %dataptr_addr
  5891. %element_addr_2238 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2238
  5892. %element_2238 = load i8, i8* %element_addr_2238
  5893. %inc_element_2238 = add i8 %element_2238, 1
  5894. store i8 %inc_element_2238, i8* %element_addr_2238
  5895. ; <ENTER_INC_DATA 2238
  5896.  
  5897. ; >ENTER_DEC_PTR 2239
  5898. %dataptr_2239 = load i32, i32* %dataptr_addr
  5899. %dec_dataptr_2239 = sub i32 %dataptr_2239, 1
  5900. store i32 %dec_dataptr_2239, i32* %dataptr_addr
  5901. ; <ENTER_DEC_PTR 2239
  5902.  
  5903. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4204
  5904. %dataptr_leave_4204 = load i32, i32* %dataptr_addr
  5905. %element_addr_leave_4204 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4204
  5906. %element_leave_4204 = load i8, i8* %element_addr_leave_4204
  5907. %compare_zero_leave_4204 = icmp ne i8 %element_leave_4204, 0
  5908. br i1 %compare_zero_leave_4204, label %loop_body_4204, label %post_loop_4204
  5909. post_loop_4204:
  5910. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4204
  5911.  
  5912. ; >ENTER_DEC_PTR 2241
  5913. %dataptr_2241 = load i32, i32* %dataptr_addr
  5914. %dec_dataptr_2241 = sub i32 %dataptr_2241, 1
  5915. store i32 %dec_dataptr_2241, i32* %dataptr_addr
  5916. ; <ENTER_DEC_PTR 2241
  5917.  
  5918. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4205
  5919. %dataptr_enter_4205 = load i32, i32* %dataptr_addr
  5920. %element_addr_enter_4205 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4205
  5921. %element_enter_4205 = load i8, i8* %element_addr_enter_4205
  5922. %compare_zero_enter_4205 = icmp eq i8 %element_enter_4205, 0
  5923. br i1 %compare_zero_enter_4205, label %post_loop_4205, label %loop_body_4205
  5924. loop_body_4205:
  5925. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4205
  5926.  
  5927. ; >ENTER_DEC_DATA 2243
  5928. %dataptr_2243 = load i32, i32* %dataptr_addr
  5929. %element_addr_2243 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2243
  5930. %element_2243 = load i8, i8* %element_addr_2243
  5931. %sub_element_2243 = sub i8 %element_2243, 1
  5932. store i8 %sub_element_2243, i8* %element_addr_2243
  5933. ; <ENTER_DEC_DATA 2243
  5934.  
  5935. ; >ENTER_INC_PTR 2244
  5936. %dataptr_2244 = load i32, i32* %dataptr_addr
  5937. %inc_dataptr_2244 = add i32 %dataptr_2244, 3
  5938. store i32 %inc_dataptr_2244, i32* %dataptr_addr
  5939. ; <ENTER_INC_PTR 2244
  5940.  
  5941. ; >ENTER_INC_DATA 2247
  5942. %dataptr_2247 = load i32, i32* %dataptr_addr
  5943. %element_addr_2247 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2247
  5944. %element_2247 = load i8, i8* %element_addr_2247
  5945. %inc_element_2247 = add i8 %element_2247, 1
  5946. store i8 %inc_element_2247, i8* %element_addr_2247
  5947. ; <ENTER_INC_DATA 2247
  5948.  
  5949. ; >ENTER_DEC_PTR 2248
  5950. %dataptr_2248 = load i32, i32* %dataptr_addr
  5951. %dec_dataptr_2248 = sub i32 %dataptr_2248, 3
  5952. store i32 %dec_dataptr_2248, i32* %dataptr_addr
  5953. ; <ENTER_DEC_PTR 2248
  5954.  
  5955. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4205
  5956. %dataptr_leave_4205 = load i32, i32* %dataptr_addr
  5957. %element_addr_leave_4205 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4205
  5958. %element_leave_4205 = load i8, i8* %element_addr_leave_4205
  5959. %compare_zero_leave_4205 = icmp ne i8 %element_leave_4205, 0
  5960. br i1 %compare_zero_leave_4205, label %loop_body_4205, label %post_loop_4205
  5961. post_loop_4205:
  5962. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4205
  5963.  
  5964. ; >ENTER_INC_PTR 2252
  5965. %dataptr_2252 = load i32, i32* %dataptr_addr
  5966. %inc_dataptr_2252 = add i32 %dataptr_2252, 5
  5967. store i32 %inc_dataptr_2252, i32* %dataptr_addr
  5968. ; <ENTER_INC_PTR 2252
  5969.  
  5970. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4206
  5971. %dataptr_leave_4206 = load i32, i32* %dataptr_addr
  5972. %element_addr_leave_4206 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4206
  5973. %element_leave_4206 = load i8, i8* %element_addr_leave_4206
  5974. %compare_zero_leave_4206 = icmp ne i8 %element_leave_4206, 0
  5975. br i1 %compare_zero_leave_4206, label %loop_body_4206, label %post_loop_4206
  5976. post_loop_4206:
  5977. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4206
  5978.  
  5979. ; >ENTER_DEC_PTR 2258
  5980. %dataptr_2258 = load i32, i32* %dataptr_addr
  5981. %dec_dataptr_2258 = sub i32 %dataptr_2258, 10
  5982. store i32 %dec_dataptr_2258, i32* %dataptr_addr
  5983. ; <ENTER_DEC_PTR 2258
  5984.  
  5985. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4217
  5986. %dataptr_enter_4217 = load i32, i32* %dataptr_addr
  5987. %element_addr_enter_4217 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4217
  5988. %element_enter_4217 = load i8, i8* %element_addr_enter_4217
  5989. %compare_zero_enter_4217 = icmp eq i8 %element_enter_4217, 0
  5990. br i1 %compare_zero_enter_4217, label %post_loop_4217, label %loop_body_4217
  5991. loop_body_4217:
  5992. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4217
  5993.  
  5994. ; >ENTER_INC_DATA 2270
  5995. %dataptr_2270 = load i32, i32* %dataptr_addr
  5996. %element_addr_2270 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2270
  5997. %element_2270 = load i8, i8* %element_addr_2270
  5998. %inc_element_2270 = add i8 %element_2270, 1
  5999. store i8 %inc_element_2270, i8* %element_addr_2270
  6000. ; <ENTER_INC_DATA 2270
  6001.  
  6002. ; >ENTER_INC_PTR 2271
  6003. %dataptr_2271 = load i32, i32* %dataptr_addr
  6004. %inc_dataptr_2271 = add i32 %dataptr_2271, 7
  6005. store i32 %inc_dataptr_2271, i32* %dataptr_addr
  6006. ; <ENTER_INC_PTR 2271
  6007.  
  6008. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4215
  6009. %dataptr_enter_4215 = load i32, i32* %dataptr_addr
  6010. %element_addr_enter_4215 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4215
  6011. %element_enter_4215 = load i8, i8* %element_addr_enter_4215
  6012. %compare_zero_enter_4215 = icmp eq i8 %element_enter_4215, 0
  6013. br i1 %compare_zero_enter_4215, label %post_loop_4215, label %loop_body_4215
  6014. loop_body_4215:
  6015. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4215
  6016.  
  6017. ; >ENTER_DEC_DATA 2279
  6018. %dataptr_2279 = load i32, i32* %dataptr_addr
  6019. %element_addr_2279 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2279
  6020. %element_2279 = load i8, i8* %element_addr_2279
  6021. %sub_element_2279 = sub i8 %element_2279, 1
  6022. store i8 %sub_element_2279, i8* %element_addr_2279
  6023. ; <ENTER_DEC_DATA 2279
  6024.  
  6025. ; >ENTER_DEC_PTR 2280
  6026. %dataptr_2280 = load i32, i32* %dataptr_addr
  6027. %dec_dataptr_2280 = sub i32 %dataptr_2280, 7
  6028. store i32 %dec_dataptr_2280, i32* %dataptr_addr
  6029. ; <ENTER_DEC_PTR 2280
  6030.  
  6031. ; >ENTER_INC_DATA 2287
  6032. %dataptr_2287 = load i32, i32* %dataptr_addr
  6033. %element_addr_2287 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2287
  6034. %element_2287 = load i8, i8* %element_addr_2287
  6035. %inc_element_2287 = add i8 %element_2287, 1
  6036. store i8 %inc_element_2287, i8* %element_addr_2287
  6037. ; <ENTER_INC_DATA 2287
  6038.  
  6039. ; >ENTER_INC_PTR 2288
  6040. %dataptr_2288 = load i32, i32* %dataptr_addr
  6041. %inc_dataptr_2288 = add i32 %dataptr_2288, 7
  6042. store i32 %inc_dataptr_2288, i32* %dataptr_addr
  6043. ; <ENTER_INC_PTR 2288
  6044.  
  6045. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4214
  6046. %dataptr_enter_4214 = load i32, i32* %dataptr_addr
  6047. %element_addr_enter_4214 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4214
  6048. %element_enter_4214 = load i8, i8* %element_addr_enter_4214
  6049. %compare_zero_enter_4214 = icmp eq i8 %element_enter_4214, 0
  6050. br i1 %compare_zero_enter_4214, label %post_loop_4214, label %loop_body_4214
  6051. loop_body_4214:
  6052. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4214
  6053.  
  6054. ; >ENTER_DEC_DATA 2296
  6055. %dataptr_2296 = load i32, i32* %dataptr_addr
  6056. %element_addr_2296 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2296
  6057. %element_2296 = load i8, i8* %element_addr_2296
  6058. %sub_element_2296 = sub i8 %element_2296, 1
  6059. store i8 %sub_element_2296, i8* %element_addr_2296
  6060. ; <ENTER_DEC_DATA 2296
  6061.  
  6062. ; >ENTER_DEC_PTR 2297
  6063. %dataptr_2297 = load i32, i32* %dataptr_addr
  6064. %dec_dataptr_2297 = sub i32 %dataptr_2297, 7
  6065. store i32 %dec_dataptr_2297, i32* %dataptr_addr
  6066. ; <ENTER_DEC_PTR 2297
  6067.  
  6068. ; >ENTER_DEC_DATA 2304
  6069. %dataptr_2304 = load i32, i32* %dataptr_addr
  6070. %element_addr_2304 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2304
  6071. %element_2304 = load i8, i8* %element_addr_2304
  6072. %sub_element_2304 = sub i8 %element_2304, 1
  6073. store i8 %sub_element_2304, i8* %element_addr_2304
  6074. ; <ENTER_DEC_DATA 2304
  6075.  
  6076. ; >ENTER_INC_PTR 2305
  6077. %dataptr_2305 = load i32, i32* %dataptr_addr
  6078. %inc_dataptr_2305 = add i32 %dataptr_2305, 6
  6079. store i32 %inc_dataptr_2305, i32* %dataptr_addr
  6080. ; <ENTER_INC_PTR 2305
  6081.  
  6082. ; >ENTER_INC_DATA 2311
  6083. %dataptr_2311 = load i32, i32* %dataptr_addr
  6084. %element_addr_2311 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2311
  6085. %element_2311 = load i8, i8* %element_addr_2311
  6086. %inc_element_2311 = add i8 %element_2311, 1
  6087. store i8 %inc_element_2311, i8* %element_addr_2311
  6088. ; <ENTER_INC_DATA 2311
  6089.  
  6090. ; >ENTER_INC_PTR 2312
  6091. %dataptr_2312 = load i32, i32* %dataptr_addr
  6092. %inc_dataptr_2312 = add i32 %dataptr_2312, 1
  6093. store i32 %inc_dataptr_2312, i32* %dataptr_addr
  6094. ; <ENTER_INC_PTR 2312
  6095.  
  6096. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4213
  6097. %dataptr_enter_4213 = load i32, i32* %dataptr_addr
  6098. %element_addr_enter_4213 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4213
  6099. %element_enter_4213 = load i8, i8* %element_addr_enter_4213
  6100. %compare_zero_enter_4213 = icmp eq i8 %element_enter_4213, 0
  6101. br i1 %compare_zero_enter_4213, label %post_loop_4213, label %loop_body_4213
  6102. loop_body_4213:
  6103. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4213
  6104.  
  6105. ; >ENTER_DEC_DATA 2315
  6106. %dataptr_2315 = load i32, i32* %dataptr_addr
  6107. %element_addr_2315 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2315
  6108. %element_2315 = load i8, i8* %element_addr_2315
  6109. %sub_element_2315 = sub i8 %element_2315, 1
  6110. store i8 %sub_element_2315, i8* %element_addr_2315
  6111. ; <ENTER_DEC_DATA 2315
  6112.  
  6113. ; >ENTER_DEC_PTR 2316
  6114. %dataptr_2316 = load i32, i32* %dataptr_addr
  6115. %dec_dataptr_2316 = sub i32 %dataptr_2316, 7
  6116. store i32 %dec_dataptr_2316, i32* %dataptr_addr
  6117. ; <ENTER_DEC_PTR 2316
  6118.  
  6119. ; >ENTER_INC_DATA 2323
  6120. %dataptr_2323 = load i32, i32* %dataptr_addr
  6121. %element_addr_2323 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2323
  6122. %element_2323 = load i8, i8* %element_addr_2323
  6123. %inc_element_2323 = add i8 %element_2323, 1
  6124. store i8 %inc_element_2323, i8* %element_addr_2323
  6125. ; <ENTER_INC_DATA 2323
  6126.  
  6127. ; >ENTER_INC_PTR 2324
  6128. %dataptr_2324 = load i32, i32* %dataptr_addr
  6129. %inc_dataptr_2324 = add i32 %dataptr_2324, 7
  6130. store i32 %inc_dataptr_2324, i32* %dataptr_addr
  6131. ; <ENTER_INC_PTR 2324
  6132.  
  6133. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4212
  6134. %dataptr_enter_4212 = load i32, i32* %dataptr_addr
  6135. %element_addr_enter_4212 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4212
  6136. %element_enter_4212 = load i8, i8* %element_addr_enter_4212
  6137. %compare_zero_enter_4212 = icmp eq i8 %element_enter_4212, 0
  6138. br i1 %compare_zero_enter_4212, label %post_loop_4212, label %loop_body_4212
  6139. loop_body_4212:
  6140. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4212
  6141.  
  6142. ; >ENTER_DEC_DATA 2332
  6143. %dataptr_2332 = load i32, i32* %dataptr_addr
  6144. %element_addr_2332 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2332
  6145. %element_2332 = load i8, i8* %element_addr_2332
  6146. %sub_element_2332 = sub i8 %element_2332, 1
  6147. store i8 %sub_element_2332, i8* %element_addr_2332
  6148. ; <ENTER_DEC_DATA 2332
  6149.  
  6150. ; >ENTER_DEC_PTR 2333
  6151. %dataptr_2333 = load i32, i32* %dataptr_addr
  6152. %dec_dataptr_2333 = sub i32 %dataptr_2333, 7
  6153. store i32 %dec_dataptr_2333, i32* %dataptr_addr
  6154. ; <ENTER_DEC_PTR 2333
  6155.  
  6156. ; >ENTER_DEC_DATA 2340
  6157. %dataptr_2340 = load i32, i32* %dataptr_addr
  6158. %element_addr_2340 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2340
  6159. %element_2340 = load i8, i8* %element_addr_2340
  6160. %sub_element_2340 = sub i8 %element_2340, 1
  6161. store i8 %sub_element_2340, i8* %element_addr_2340
  6162. ; <ENTER_DEC_DATA 2340
  6163.  
  6164. ; >ENTER_INC_PTR 2341
  6165. %dataptr_2341 = load i32, i32* %dataptr_addr
  6166. %inc_dataptr_2341 = add i32 %dataptr_2341, 6
  6167. store i32 %inc_dataptr_2341, i32* %dataptr_addr
  6168. ; <ENTER_INC_PTR 2341
  6169.  
  6170. ; >ENTER_INC_DATA 2347
  6171. %dataptr_2347 = load i32, i32* %dataptr_addr
  6172. %element_addr_2347 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2347
  6173. %element_2347 = load i8, i8* %element_addr_2347
  6174. %inc_element_2347 = add i8 %element_2347, 1
  6175. store i8 %inc_element_2347, i8* %element_addr_2347
  6176. ; <ENTER_INC_DATA 2347
  6177.  
  6178. ; >ENTER_INC_PTR 2348
  6179. %dataptr_2348 = load i32, i32* %dataptr_addr
  6180. %inc_dataptr_2348 = add i32 %dataptr_2348, 1
  6181. store i32 %inc_dataptr_2348, i32* %dataptr_addr
  6182. ; <ENTER_INC_PTR 2348
  6183.  
  6184. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4211
  6185. %dataptr_enter_4211 = load i32, i32* %dataptr_addr
  6186. %element_addr_enter_4211 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4211
  6187. %element_enter_4211 = load i8, i8* %element_addr_enter_4211
  6188. %compare_zero_enter_4211 = icmp eq i8 %element_enter_4211, 0
  6189. br i1 %compare_zero_enter_4211, label %post_loop_4211, label %loop_body_4211
  6190. loop_body_4211:
  6191. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4211
  6192.  
  6193. ; >ENTER_DEC_DATA 2351
  6194. %dataptr_2351 = load i32, i32* %dataptr_addr
  6195. %element_addr_2351 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2351
  6196. %element_2351 = load i8, i8* %element_addr_2351
  6197. %sub_element_2351 = sub i8 %element_2351, 1
  6198. store i8 %sub_element_2351, i8* %element_addr_2351
  6199. ; <ENTER_DEC_DATA 2351
  6200.  
  6201. ; >ENTER_DEC_PTR 2352
  6202. %dataptr_2352 = load i32, i32* %dataptr_addr
  6203. %dec_dataptr_2352 = sub i32 %dataptr_2352, 7
  6204. store i32 %dec_dataptr_2352, i32* %dataptr_addr
  6205. ; <ENTER_DEC_PTR 2352
  6206.  
  6207. ; >ENTER_INC_DATA 2359
  6208. %dataptr_2359 = load i32, i32* %dataptr_addr
  6209. %element_addr_2359 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2359
  6210. %element_2359 = load i8, i8* %element_addr_2359
  6211. %inc_element_2359 = add i8 %element_2359, 1
  6212. store i8 %inc_element_2359, i8* %element_addr_2359
  6213. ; <ENTER_INC_DATA 2359
  6214.  
  6215. ; >ENTER_INC_PTR 2360
  6216. %dataptr_2360 = load i32, i32* %dataptr_addr
  6217. %inc_dataptr_2360 = add i32 %dataptr_2360, 7
  6218. store i32 %inc_dataptr_2360, i32* %dataptr_addr
  6219. ; <ENTER_INC_PTR 2360
  6220.  
  6221. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4210
  6222. %dataptr_enter_4210 = load i32, i32* %dataptr_addr
  6223. %element_addr_enter_4210 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4210
  6224. %element_enter_4210 = load i8, i8* %element_addr_enter_4210
  6225. %compare_zero_enter_4210 = icmp eq i8 %element_enter_4210, 0
  6226. br i1 %compare_zero_enter_4210, label %post_loop_4210, label %loop_body_4210
  6227. loop_body_4210:
  6228. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4210
  6229.  
  6230. ; >ENTER_DEC_DATA 2368
  6231. %dataptr_2368 = load i32, i32* %dataptr_addr
  6232. %element_addr_2368 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2368
  6233. %element_2368 = load i8, i8* %element_addr_2368
  6234. %sub_element_2368 = sub i8 %element_2368, 1
  6235. store i8 %sub_element_2368, i8* %element_addr_2368
  6236. ; <ENTER_DEC_DATA 2368
  6237.  
  6238. ; >ENTER_DEC_PTR 2369
  6239. %dataptr_2369 = load i32, i32* %dataptr_addr
  6240. %dec_dataptr_2369 = sub i32 %dataptr_2369, 7
  6241. store i32 %dec_dataptr_2369, i32* %dataptr_addr
  6242. ; <ENTER_DEC_PTR 2369
  6243.  
  6244. ; >ENTER_DEC_DATA 2376
  6245. %dataptr_2376 = load i32, i32* %dataptr_addr
  6246. %element_addr_2376 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2376
  6247. %element_2376 = load i8, i8* %element_addr_2376
  6248. %sub_element_2376 = sub i8 %element_2376, 1
  6249. store i8 %sub_element_2376, i8* %element_addr_2376
  6250. ; <ENTER_DEC_DATA 2376
  6251.  
  6252. ; >ENTER_INC_PTR 2377
  6253. %dataptr_2377 = load i32, i32* %dataptr_addr
  6254. %inc_dataptr_2377 = add i32 %dataptr_2377, 6
  6255. store i32 %inc_dataptr_2377, i32* %dataptr_addr
  6256. ; <ENTER_INC_PTR 2377
  6257.  
  6258. ; >ENTER_INC_DATA 2383
  6259. %dataptr_2383 = load i32, i32* %dataptr_addr
  6260. %element_addr_2383 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2383
  6261. %element_2383 = load i8, i8* %element_addr_2383
  6262. %inc_element_2383 = add i8 %element_2383, 1
  6263. store i8 %inc_element_2383, i8* %element_addr_2383
  6264. ; <ENTER_INC_DATA 2383
  6265.  
  6266. ; >ENTER_INC_PTR 2384
  6267. %dataptr_2384 = load i32, i32* %dataptr_addr
  6268. %inc_dataptr_2384 = add i32 %dataptr_2384, 1
  6269. store i32 %inc_dataptr_2384, i32* %dataptr_addr
  6270. ; <ENTER_INC_PTR 2384
  6271.  
  6272. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4209
  6273. %dataptr_enter_4209 = load i32, i32* %dataptr_addr
  6274. %element_addr_enter_4209 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4209
  6275. %element_enter_4209 = load i8, i8* %element_addr_enter_4209
  6276. %compare_zero_enter_4209 = icmp eq i8 %element_enter_4209, 0
  6277. br i1 %compare_zero_enter_4209, label %post_loop_4209, label %loop_body_4209
  6278. loop_body_4209:
  6279. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4209
  6280.  
  6281. ; >ENTER_DEC_DATA 2387
  6282. %dataptr_2387 = load i32, i32* %dataptr_addr
  6283. %element_addr_2387 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2387
  6284. %element_2387 = load i8, i8* %element_addr_2387
  6285. %sub_element_2387 = sub i8 %element_2387, 1
  6286. store i8 %sub_element_2387, i8* %element_addr_2387
  6287. ; <ENTER_DEC_DATA 2387
  6288.  
  6289. ; >ENTER_DEC_PTR 2388
  6290. %dataptr_2388 = load i32, i32* %dataptr_addr
  6291. %dec_dataptr_2388 = sub i32 %dataptr_2388, 7
  6292. store i32 %dec_dataptr_2388, i32* %dataptr_addr
  6293. ; <ENTER_DEC_PTR 2388
  6294.  
  6295. ; >ENTER_INC_DATA 2395
  6296. %dataptr_2395 = load i32, i32* %dataptr_addr
  6297. %element_addr_2395 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2395
  6298. %element_2395 = load i8, i8* %element_addr_2395
  6299. %inc_element_2395 = add i8 %element_2395, 1
  6300. store i8 %inc_element_2395, i8* %element_addr_2395
  6301. ; <ENTER_INC_DATA 2395
  6302.  
  6303. ; >ENTER_INC_PTR 2396
  6304. %dataptr_2396 = load i32, i32* %dataptr_addr
  6305. %inc_dataptr_2396 = add i32 %dataptr_2396, 7
  6306. store i32 %inc_dataptr_2396, i32* %dataptr_addr
  6307. ; <ENTER_INC_PTR 2396
  6308.  
  6309. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4208
  6310. %dataptr_enter_4208 = load i32, i32* %dataptr_addr
  6311. %element_addr_enter_4208 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4208
  6312. %element_enter_4208 = load i8, i8* %element_addr_enter_4208
  6313. %compare_zero_enter_4208 = icmp eq i8 %element_enter_4208, 0
  6314. br i1 %compare_zero_enter_4208, label %post_loop_4208, label %loop_body_4208
  6315. loop_body_4208:
  6316. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4208
  6317.  
  6318. ; >ENTER_DEC_DATA 2404
  6319. %dataptr_2404 = load i32, i32* %dataptr_addr
  6320. %element_addr_2404 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2404
  6321. %element_2404 = load i8, i8* %element_addr_2404
  6322. %sub_element_2404 = sub i8 %element_2404, 1
  6323. store i8 %sub_element_2404, i8* %element_addr_2404
  6324. ; <ENTER_DEC_DATA 2404
  6325.  
  6326. ; >ENTER_DEC_PTR 2405
  6327. %dataptr_2405 = load i32, i32* %dataptr_addr
  6328. %dec_dataptr_2405 = sub i32 %dataptr_2405, 7
  6329. store i32 %dec_dataptr_2405, i32* %dataptr_addr
  6330. ; <ENTER_DEC_PTR 2405
  6331.  
  6332. ; >ENTER_DEC_DATA 2412
  6333. %dataptr_2412 = load i32, i32* %dataptr_addr
  6334. %element_addr_2412 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2412
  6335. %element_2412 = load i8, i8* %element_addr_2412
  6336. %sub_element_2412 = sub i8 %element_2412, 1
  6337. store i8 %sub_element_2412, i8* %element_addr_2412
  6338. ; <ENTER_DEC_DATA 2412
  6339.  
  6340. ; >ENTER_INC_PTR 2413
  6341. %dataptr_2413 = load i32, i32* %dataptr_addr
  6342. %inc_dataptr_2413 = add i32 %dataptr_2413, 6
  6343. store i32 %inc_dataptr_2413, i32* %dataptr_addr
  6344. ; <ENTER_INC_PTR 2413
  6345.  
  6346. ; >ENTER_INC_DATA 2419
  6347. %dataptr_2419 = load i32, i32* %dataptr_addr
  6348. %element_addr_2419 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2419
  6349. %element_2419 = load i8, i8* %element_addr_2419
  6350. %inc_element_2419 = add i8 %element_2419, 1
  6351. store i8 %inc_element_2419, i8* %element_addr_2419
  6352. ; <ENTER_INC_DATA 2419
  6353.  
  6354. ; >ENTER_INC_PTR 2420
  6355. %dataptr_2420 = load i32, i32* %dataptr_addr
  6356. %inc_dataptr_2420 = add i32 %dataptr_2420, 1
  6357. store i32 %inc_dataptr_2420, i32* %dataptr_addr
  6358. ; <ENTER_INC_PTR 2420
  6359.  
  6360. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4207
  6361. %dataptr_enter_4207 = load i32, i32* %dataptr_addr
  6362. %element_addr_enter_4207 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4207
  6363. %element_enter_4207 = load i8, i8* %element_addr_enter_4207
  6364. %compare_zero_enter_4207 = icmp eq i8 %element_enter_4207, 0
  6365. br i1 %compare_zero_enter_4207, label %post_loop_4207, label %loop_body_4207
  6366. loop_body_4207:
  6367. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4207
  6368.  
  6369. ; >ENTER_DEC_DATA 2423
  6370. %dataptr_2423 = load i32, i32* %dataptr_addr
  6371. %element_addr_2423 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2423
  6372. %element_2423 = load i8, i8* %element_addr_2423
  6373. %sub_element_2423 = sub i8 %element_2423, 1
  6374. store i8 %sub_element_2423, i8* %element_addr_2423
  6375. ; <ENTER_DEC_DATA 2423
  6376.  
  6377. ; >ENTER_DEC_PTR 2424
  6378. %dataptr_2424 = load i32, i32* %dataptr_addr
  6379. %dec_dataptr_2424 = sub i32 %dataptr_2424, 7
  6380. store i32 %dec_dataptr_2424, i32* %dataptr_addr
  6381. ; <ENTER_DEC_PTR 2424
  6382.  
  6383. ; >ENTER_INC_DATA 2431
  6384. %dataptr_2431 = load i32, i32* %dataptr_addr
  6385. %element_addr_2431 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2431
  6386. %element_2431 = load i8, i8* %element_addr_2431
  6387. %inc_element_2431 = add i8 %element_2431, 1
  6388. store i8 %inc_element_2431, i8* %element_addr_2431
  6389. ; <ENTER_INC_DATA 2431
  6390.  
  6391. ; >ENTER_INC_PTR 2432
  6392. %dataptr_2432 = load i32, i32* %dataptr_addr
  6393. %inc_dataptr_2432 = add i32 %dataptr_2432, 7
  6394. store i32 %inc_dataptr_2432, i32* %dataptr_addr
  6395. ; <ENTER_INC_PTR 2432
  6396.  
  6397. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4207
  6398. %dataptr_leave_4207 = load i32, i32* %dataptr_addr
  6399. %element_addr_leave_4207 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4207
  6400. %element_leave_4207 = load i8, i8* %element_addr_leave_4207
  6401. %compare_zero_leave_4207 = icmp ne i8 %element_leave_4207, 0
  6402. br i1 %compare_zero_leave_4207, label %loop_body_4207, label %post_loop_4207
  6403. post_loop_4207:
  6404. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4207
  6405.  
  6406. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4208
  6407. %dataptr_leave_4208 = load i32, i32* %dataptr_addr
  6408. %element_addr_leave_4208 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4208
  6409. %element_leave_4208 = load i8, i8* %element_addr_leave_4208
  6410. %compare_zero_leave_4208 = icmp ne i8 %element_leave_4208, 0
  6411. br i1 %compare_zero_leave_4208, label %loop_body_4208, label %post_loop_4208
  6412. post_loop_4208:
  6413. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4208
  6414.  
  6415. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4209
  6416. %dataptr_leave_4209 = load i32, i32* %dataptr_addr
  6417. %element_addr_leave_4209 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4209
  6418. %element_leave_4209 = load i8, i8* %element_addr_leave_4209
  6419. %compare_zero_leave_4209 = icmp ne i8 %element_leave_4209, 0
  6420. br i1 %compare_zero_leave_4209, label %loop_body_4209, label %post_loop_4209
  6421. post_loop_4209:
  6422. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4209
  6423.  
  6424. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4210
  6425. %dataptr_leave_4210 = load i32, i32* %dataptr_addr
  6426. %element_addr_leave_4210 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4210
  6427. %element_leave_4210 = load i8, i8* %element_addr_leave_4210
  6428. %compare_zero_leave_4210 = icmp ne i8 %element_leave_4210, 0
  6429. br i1 %compare_zero_leave_4210, label %loop_body_4210, label %post_loop_4210
  6430. post_loop_4210:
  6431. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4210
  6432.  
  6433. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4211
  6434. %dataptr_leave_4211 = load i32, i32* %dataptr_addr
  6435. %element_addr_leave_4211 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4211
  6436. %element_leave_4211 = load i8, i8* %element_addr_leave_4211
  6437. %compare_zero_leave_4211 = icmp ne i8 %element_leave_4211, 0
  6438. br i1 %compare_zero_leave_4211, label %loop_body_4211, label %post_loop_4211
  6439. post_loop_4211:
  6440. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4211
  6441.  
  6442. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4212
  6443. %dataptr_leave_4212 = load i32, i32* %dataptr_addr
  6444. %element_addr_leave_4212 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4212
  6445. %element_leave_4212 = load i8, i8* %element_addr_leave_4212
  6446. %compare_zero_leave_4212 = icmp ne i8 %element_leave_4212, 0
  6447. br i1 %compare_zero_leave_4212, label %loop_body_4212, label %post_loop_4212
  6448. post_loop_4212:
  6449. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4212
  6450.  
  6451. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4213
  6452. %dataptr_leave_4213 = load i32, i32* %dataptr_addr
  6453. %element_addr_leave_4213 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4213
  6454. %element_leave_4213 = load i8, i8* %element_addr_leave_4213
  6455. %compare_zero_leave_4213 = icmp ne i8 %element_leave_4213, 0
  6456. br i1 %compare_zero_leave_4213, label %loop_body_4213, label %post_loop_4213
  6457. post_loop_4213:
  6458. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4213
  6459.  
  6460. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4214
  6461. %dataptr_leave_4214 = load i32, i32* %dataptr_addr
  6462. %element_addr_leave_4214 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4214
  6463. %element_leave_4214 = load i8, i8* %element_addr_leave_4214
  6464. %compare_zero_leave_4214 = icmp ne i8 %element_leave_4214, 0
  6465. br i1 %compare_zero_leave_4214, label %loop_body_4214, label %post_loop_4214
  6466. post_loop_4214:
  6467. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4214
  6468.  
  6469. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4215
  6470. %dataptr_leave_4215 = load i32, i32* %dataptr_addr
  6471. %element_addr_leave_4215 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4215
  6472. %element_leave_4215 = load i8, i8* %element_addr_leave_4215
  6473. %compare_zero_leave_4215 = icmp ne i8 %element_leave_4215, 0
  6474. br i1 %compare_zero_leave_4215, label %loop_body_4215, label %post_loop_4215
  6475. post_loop_4215:
  6476. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4215
  6477.  
  6478. ; >ENTER_DEC_PTR 2448
  6479. %dataptr_2448 = load i32, i32* %dataptr_addr
  6480. %dec_dataptr_2448 = sub i32 %dataptr_2448, 7
  6481. store i32 %dec_dataptr_2448, i32* %dataptr_addr
  6482. ; <ENTER_DEC_PTR 2448
  6483.  
  6484. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4216
  6485. %dataptr_enter_4216 = load i32, i32* %dataptr_addr
  6486. %element_addr_enter_4216 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4216
  6487. %element_enter_4216 = load i8, i8* %element_addr_enter_4216
  6488. %compare_zero_enter_4216 = icmp eq i8 %element_enter_4216, 0
  6489. br i1 %compare_zero_enter_4216, label %post_loop_4216, label %loop_body_4216
  6490. loop_body_4216:
  6491. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4216
  6492.  
  6493. ; >ENTER_DEC_DATA 2457
  6494. %dataptr_2457 = load i32, i32* %dataptr_addr
  6495. %element_addr_2457 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2457
  6496. %element_2457 = load i8, i8* %element_addr_2457
  6497. %sub_element_2457 = sub i8 %element_2457, 1
  6498. store i8 %sub_element_2457, i8* %element_addr_2457
  6499. ; <ENTER_DEC_DATA 2457
  6500.  
  6501. ; >ENTER_INC_PTR 2458
  6502. %dataptr_2458 = load i32, i32* %dataptr_addr
  6503. %inc_dataptr_2458 = add i32 %dataptr_2458, 7
  6504. store i32 %inc_dataptr_2458, i32* %dataptr_addr
  6505. ; <ENTER_INC_PTR 2458
  6506.  
  6507. ; >ENTER_INC_DATA 2465
  6508. %dataptr_2465 = load i32, i32* %dataptr_addr
  6509. %element_addr_2465 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2465
  6510. %element_2465 = load i8, i8* %element_addr_2465
  6511. %inc_element_2465 = add i8 %element_2465, 1
  6512. store i8 %inc_element_2465, i8* %element_addr_2465
  6513. ; <ENTER_INC_DATA 2465
  6514.  
  6515. ; >ENTER_DEC_PTR 2466
  6516. %dataptr_2466 = load i32, i32* %dataptr_addr
  6517. %dec_dataptr_2466 = sub i32 %dataptr_2466, 7
  6518. store i32 %dec_dataptr_2466, i32* %dataptr_addr
  6519. ; <ENTER_DEC_PTR 2466
  6520.  
  6521. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4216
  6522. %dataptr_leave_4216 = load i32, i32* %dataptr_addr
  6523. %element_addr_leave_4216 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4216
  6524. %element_leave_4216 = load i8, i8* %element_addr_leave_4216
  6525. %compare_zero_leave_4216 = icmp ne i8 %element_leave_4216, 0
  6526. br i1 %compare_zero_leave_4216, label %loop_body_4216, label %post_loop_4216
  6527. post_loop_4216:
  6528. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4216
  6529.  
  6530. ; >ENTER_DEC_DATA 2474
  6531. %dataptr_2474 = load i32, i32* %dataptr_addr
  6532. %element_addr_2474 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2474
  6533. %element_2474 = load i8, i8* %element_addr_2474
  6534. %sub_element_2474 = sub i8 %element_2474, 1
  6535. store i8 %sub_element_2474, i8* %element_addr_2474
  6536. ; <ENTER_DEC_DATA 2474
  6537.  
  6538. ; >ENTER_DEC_PTR 2475
  6539. %dataptr_2475 = load i32, i32* %dataptr_addr
  6540. %dec_dataptr_2475 = sub i32 %dataptr_2475, 10
  6541. store i32 %dec_dataptr_2475, i32* %dataptr_addr
  6542. ; <ENTER_DEC_PTR 2475
  6543.  
  6544. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4217
  6545. %dataptr_leave_4217 = load i32, i32* %dataptr_addr
  6546. %element_addr_leave_4217 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4217
  6547. %element_leave_4217 = load i8, i8* %element_addr_leave_4217
  6548. %compare_zero_leave_4217 = icmp ne i8 %element_leave_4217, 0
  6549. br i1 %compare_zero_leave_4217, label %loop_body_4217, label %post_loop_4217
  6550. post_loop_4217:
  6551. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4217
  6552.  
  6553. ; >ENTER_INC_PTR 2487
  6554. %dataptr_2487 = load i32, i32* %dataptr_addr
  6555. %inc_dataptr_2487 = add i32 %dataptr_2487, 7
  6556. store i32 %inc_dataptr_2487, i32* %dataptr_addr
  6557. ; <ENTER_INC_PTR 2487
  6558.  
  6559. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4218
  6560. %dataptr_enter_4218 = load i32, i32* %dataptr_addr
  6561. %element_addr_enter_4218 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4218
  6562. %element_enter_4218 = load i8, i8* %element_addr_enter_4218
  6563. %compare_zero_enter_4218 = icmp eq i8 %element_enter_4218, 0
  6564. br i1 %compare_zero_enter_4218, label %post_loop_4218, label %loop_body_4218
  6565. loop_body_4218:
  6566. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4218
  6567.  
  6568. ; >ENTER_DEC_DATA 2496
  6569. %dataptr_2496 = load i32, i32* %dataptr_addr
  6570. %element_addr_2496 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2496
  6571. %element_2496 = load i8, i8* %element_addr_2496
  6572. %sub_element_2496 = sub i8 %element_2496, 1
  6573. store i8 %sub_element_2496, i8* %element_addr_2496
  6574. ; <ENTER_DEC_DATA 2496
  6575.  
  6576. ; >ENTER_DEC_PTR 2497
  6577. %dataptr_2497 = load i32, i32* %dataptr_addr
  6578. %dec_dataptr_2497 = sub i32 %dataptr_2497, 11
  6579. store i32 %dec_dataptr_2497, i32* %dataptr_addr
  6580. ; <ENTER_DEC_PTR 2497
  6581.  
  6582. ; >ENTER_INC_DATA 2508
  6583. %dataptr_2508 = load i32, i32* %dataptr_addr
  6584. %element_addr_2508 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2508
  6585. %element_2508 = load i8, i8* %element_addr_2508
  6586. %inc_element_2508 = add i8 %element_2508, 1
  6587. store i8 %inc_element_2508, i8* %element_addr_2508
  6588. ; <ENTER_INC_DATA 2508
  6589.  
  6590. ; >ENTER_INC_PTR 2509
  6591. %dataptr_2509 = load i32, i32* %dataptr_addr
  6592. %inc_dataptr_2509 = add i32 %dataptr_2509, 11
  6593. store i32 %inc_dataptr_2509, i32* %dataptr_addr
  6594. ; <ENTER_INC_PTR 2509
  6595.  
  6596. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4218
  6597. %dataptr_leave_4218 = load i32, i32* %dataptr_addr
  6598. %element_addr_leave_4218 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4218
  6599. %element_leave_4218 = load i8, i8* %element_addr_leave_4218
  6600. %compare_zero_leave_4218 = icmp ne i8 %element_leave_4218, 0
  6601. br i1 %compare_zero_leave_4218, label %loop_body_4218, label %post_loop_4218
  6602. post_loop_4218:
  6603. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4218
  6604.  
  6605. ; >ENTER_INC_PTR 2522
  6606. %dataptr_2522 = load i32, i32* %dataptr_addr
  6607. %inc_dataptr_2522 = add i32 %dataptr_2522, 3
  6608. store i32 %inc_dataptr_2522, i32* %dataptr_addr
  6609. ; <ENTER_INC_PTR 2522
  6610.  
  6611. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4220
  6612. %dataptr_enter_4220 = load i32, i32* %dataptr_addr
  6613. %element_addr_enter_4220 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4220
  6614. %element_enter_4220 = load i8, i8* %element_addr_enter_4220
  6615. %compare_zero_enter_4220 = icmp eq i8 %element_enter_4220, 0
  6616. br i1 %compare_zero_enter_4220, label %post_loop_4220, label %loop_body_4220
  6617. loop_body_4220:
  6618. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4220
  6619.  
  6620. ; >ENTER_INC_PTR 2526
  6621. %dataptr_2526 = load i32, i32* %dataptr_addr
  6622. %inc_dataptr_2526 = add i32 %dataptr_2526, 7
  6623. store i32 %inc_dataptr_2526, i32* %dataptr_addr
  6624. ; <ENTER_INC_PTR 2526
  6625.  
  6626. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4219
  6627. %dataptr_enter_4219 = load i32, i32* %dataptr_addr
  6628. %element_addr_enter_4219 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4219
  6629. %element_enter_4219 = load i8, i8* %element_addr_enter_4219
  6630. %compare_zero_enter_4219 = icmp eq i8 %element_enter_4219, 0
  6631. br i1 %compare_zero_enter_4219, label %post_loop_4219, label %loop_body_4219
  6632. loop_body_4219:
  6633. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4219
  6634.  
  6635. ; >ENTER_DEC_DATA 2534
  6636. %dataptr_2534 = load i32, i32* %dataptr_addr
  6637. %element_addr_2534 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2534
  6638. %element_2534 = load i8, i8* %element_addr_2534
  6639. %sub_element_2534 = sub i8 %element_2534, 1
  6640. store i8 %sub_element_2534, i8* %element_addr_2534
  6641. ; <ENTER_DEC_DATA 2534
  6642.  
  6643. ; >ENTER_DEC_PTR 2535
  6644. %dataptr_2535 = load i32, i32* %dataptr_addr
  6645. %dec_dataptr_2535 = sub i32 %dataptr_2535, 11
  6646. store i32 %dec_dataptr_2535, i32* %dataptr_addr
  6647. ; <ENTER_DEC_PTR 2535
  6648.  
  6649. ; >ENTER_INC_DATA 2546
  6650. %dataptr_2546 = load i32, i32* %dataptr_addr
  6651. %element_addr_2546 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2546
  6652. %element_2546 = load i8, i8* %element_addr_2546
  6653. %inc_element_2546 = add i8 %element_2546, 5
  6654. store i8 %inc_element_2546, i8* %element_addr_2546
  6655. ; <ENTER_INC_DATA 2546
  6656.  
  6657. ; >ENTER_INC_PTR 2551
  6658. %dataptr_2551 = load i32, i32* %dataptr_addr
  6659. %inc_dataptr_2551 = add i32 %dataptr_2551, 11
  6660. store i32 %inc_dataptr_2551, i32* %dataptr_addr
  6661. ; <ENTER_INC_PTR 2551
  6662.  
  6663. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4219
  6664. %dataptr_leave_4219 = load i32, i32* %dataptr_addr
  6665. %element_addr_leave_4219 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4219
  6666. %element_leave_4219 = load i8, i8* %element_addr_leave_4219
  6667. %compare_zero_leave_4219 = icmp ne i8 %element_leave_4219, 0
  6668. br i1 %compare_zero_leave_4219, label %loop_body_4219, label %post_loop_4219
  6669. post_loop_4219:
  6670. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4219
  6671.  
  6672. ; >ENTER_INC_PTR 2563
  6673. %dataptr_2563 = load i32, i32* %dataptr_addr
  6674. %inc_dataptr_2563 = add i32 %dataptr_2563, 3
  6675. store i32 %inc_dataptr_2563, i32* %dataptr_addr
  6676. ; <ENTER_INC_PTR 2563
  6677.  
  6678. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4220
  6679. %dataptr_leave_4220 = load i32, i32* %dataptr_addr
  6680. %element_addr_leave_4220 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4220
  6681. %element_leave_4220 = load i8, i8* %element_addr_leave_4220
  6682. %compare_zero_leave_4220 = icmp ne i8 %element_leave_4220, 0
  6683. br i1 %compare_zero_leave_4220, label %loop_body_4220, label %post_loop_4220
  6684. post_loop_4220:
  6685. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4220
  6686.  
  6687. ; >ENTER_DEC_PTR 2567
  6688. %dataptr_2567 = load i32, i32* %dataptr_addr
  6689. %dec_dataptr_2567 = sub i32 %dataptr_2567, 10
  6690. store i32 %dec_dataptr_2567, i32* %dataptr_addr
  6691. ; <ENTER_DEC_PTR 2567
  6692.  
  6693. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4231
  6694. %dataptr_enter_4231 = load i32, i32* %dataptr_addr
  6695. %element_addr_enter_4231 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4231
  6696. %element_enter_4231 = load i8, i8* %element_addr_enter_4231
  6697. %compare_zero_enter_4231 = icmp eq i8 %element_enter_4231, 0
  6698. br i1 %compare_zero_enter_4231, label %post_loop_4231, label %loop_body_4231
  6699. loop_body_4231:
  6700. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4231
  6701.  
  6702. ; >ENTER_INC_DATA 2579
  6703. %dataptr_2579 = load i32, i32* %dataptr_addr
  6704. %element_addr_2579 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2579
  6705. %element_2579 = load i8, i8* %element_addr_2579
  6706. %inc_element_2579 = add i8 %element_2579, 1
  6707. store i8 %inc_element_2579, i8* %element_addr_2579
  6708. ; <ENTER_INC_DATA 2579
  6709.  
  6710. ; >ENTER_INC_PTR 2580
  6711. %dataptr_2580 = load i32, i32* %dataptr_addr
  6712. %inc_dataptr_2580 = add i32 %dataptr_2580, 8
  6713. store i32 %inc_dataptr_2580, i32* %dataptr_addr
  6714. ; <ENTER_INC_PTR 2580
  6715.  
  6716. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4229
  6717. %dataptr_enter_4229 = load i32, i32* %dataptr_addr
  6718. %element_addr_enter_4229 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4229
  6719. %element_enter_4229 = load i8, i8* %element_addr_enter_4229
  6720. %compare_zero_enter_4229 = icmp eq i8 %element_enter_4229, 0
  6721. br i1 %compare_zero_enter_4229, label %post_loop_4229, label %loop_body_4229
  6722. loop_body_4229:
  6723. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4229
  6724.  
  6725. ; >ENTER_DEC_DATA 2589
  6726. %dataptr_2589 = load i32, i32* %dataptr_addr
  6727. %element_addr_2589 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2589
  6728. %element_2589 = load i8, i8* %element_addr_2589
  6729. %sub_element_2589 = sub i8 %element_2589, 1
  6730. store i8 %sub_element_2589, i8* %element_addr_2589
  6731. ; <ENTER_DEC_DATA 2589
  6732.  
  6733. ; >ENTER_DEC_PTR 2590
  6734. %dataptr_2590 = load i32, i32* %dataptr_addr
  6735. %dec_dataptr_2590 = sub i32 %dataptr_2590, 8
  6736. store i32 %dec_dataptr_2590, i32* %dataptr_addr
  6737. ; <ENTER_DEC_PTR 2590
  6738.  
  6739. ; >ENTER_INC_DATA 2598
  6740. %dataptr_2598 = load i32, i32* %dataptr_addr
  6741. %element_addr_2598 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2598
  6742. %element_2598 = load i8, i8* %element_addr_2598
  6743. %inc_element_2598 = add i8 %element_2598, 1
  6744. store i8 %inc_element_2598, i8* %element_addr_2598
  6745. ; <ENTER_INC_DATA 2598
  6746.  
  6747. ; >ENTER_INC_PTR 2599
  6748. %dataptr_2599 = load i32, i32* %dataptr_addr
  6749. %inc_dataptr_2599 = add i32 %dataptr_2599, 8
  6750. store i32 %inc_dataptr_2599, i32* %dataptr_addr
  6751. ; <ENTER_INC_PTR 2599
  6752.  
  6753. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4228
  6754. %dataptr_enter_4228 = load i32, i32* %dataptr_addr
  6755. %element_addr_enter_4228 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4228
  6756. %element_enter_4228 = load i8, i8* %element_addr_enter_4228
  6757. %compare_zero_enter_4228 = icmp eq i8 %element_enter_4228, 0
  6758. br i1 %compare_zero_enter_4228, label %post_loop_4228, label %loop_body_4228
  6759. loop_body_4228:
  6760. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4228
  6761.  
  6762. ; >ENTER_DEC_DATA 2608
  6763. %dataptr_2608 = load i32, i32* %dataptr_addr
  6764. %element_addr_2608 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2608
  6765. %element_2608 = load i8, i8* %element_addr_2608
  6766. %sub_element_2608 = sub i8 %element_2608, 1
  6767. store i8 %sub_element_2608, i8* %element_addr_2608
  6768. ; <ENTER_DEC_DATA 2608
  6769.  
  6770. ; >ENTER_DEC_PTR 2609
  6771. %dataptr_2609 = load i32, i32* %dataptr_addr
  6772. %dec_dataptr_2609 = sub i32 %dataptr_2609, 8
  6773. store i32 %dec_dataptr_2609, i32* %dataptr_addr
  6774. ; <ENTER_DEC_PTR 2609
  6775.  
  6776. ; >ENTER_DEC_DATA 2617
  6777. %dataptr_2617 = load i32, i32* %dataptr_addr
  6778. %element_addr_2617 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2617
  6779. %element_2617 = load i8, i8* %element_addr_2617
  6780. %sub_element_2617 = sub i8 %element_2617, 1
  6781. store i8 %sub_element_2617, i8* %element_addr_2617
  6782. ; <ENTER_DEC_DATA 2617
  6783.  
  6784. ; >ENTER_INC_PTR 2618
  6785. %dataptr_2618 = load i32, i32* %dataptr_addr
  6786. %inc_dataptr_2618 = add i32 %dataptr_2618, 5
  6787. store i32 %inc_dataptr_2618, i32* %dataptr_addr
  6788. ; <ENTER_INC_PTR 2618
  6789.  
  6790. ; >ENTER_INC_DATA 2623
  6791. %dataptr_2623 = load i32, i32* %dataptr_addr
  6792. %element_addr_2623 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2623
  6793. %element_2623 = load i8, i8* %element_addr_2623
  6794. %inc_element_2623 = add i8 %element_2623, 1
  6795. store i8 %inc_element_2623, i8* %element_addr_2623
  6796. ; <ENTER_INC_DATA 2623
  6797.  
  6798. ; >ENTER_INC_PTR 2624
  6799. %dataptr_2624 = load i32, i32* %dataptr_addr
  6800. %inc_dataptr_2624 = add i32 %dataptr_2624, 3
  6801. store i32 %inc_dataptr_2624, i32* %dataptr_addr
  6802. ; <ENTER_INC_PTR 2624
  6803.  
  6804. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4227
  6805. %dataptr_enter_4227 = load i32, i32* %dataptr_addr
  6806. %element_addr_enter_4227 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4227
  6807. %element_enter_4227 = load i8, i8* %element_addr_enter_4227
  6808. %compare_zero_enter_4227 = icmp eq i8 %element_enter_4227, 0
  6809. br i1 %compare_zero_enter_4227, label %post_loop_4227, label %loop_body_4227
  6810. loop_body_4227:
  6811. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4227
  6812.  
  6813. ; >ENTER_DEC_DATA 2629
  6814. %dataptr_2629 = load i32, i32* %dataptr_addr
  6815. %element_addr_2629 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2629
  6816. %element_2629 = load i8, i8* %element_addr_2629
  6817. %sub_element_2629 = sub i8 %element_2629, 1
  6818. store i8 %sub_element_2629, i8* %element_addr_2629
  6819. ; <ENTER_DEC_DATA 2629
  6820.  
  6821. ; >ENTER_DEC_PTR 2630
  6822. %dataptr_2630 = load i32, i32* %dataptr_addr
  6823. %dec_dataptr_2630 = sub i32 %dataptr_2630, 8
  6824. store i32 %dec_dataptr_2630, i32* %dataptr_addr
  6825. ; <ENTER_DEC_PTR 2630
  6826.  
  6827. ; >ENTER_INC_DATA 2638
  6828. %dataptr_2638 = load i32, i32* %dataptr_addr
  6829. %element_addr_2638 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2638
  6830. %element_2638 = load i8, i8* %element_addr_2638
  6831. %inc_element_2638 = add i8 %element_2638, 1
  6832. store i8 %inc_element_2638, i8* %element_addr_2638
  6833. ; <ENTER_INC_DATA 2638
  6834.  
  6835. ; >ENTER_INC_PTR 2639
  6836. %dataptr_2639 = load i32, i32* %dataptr_addr
  6837. %inc_dataptr_2639 = add i32 %dataptr_2639, 8
  6838. store i32 %inc_dataptr_2639, i32* %dataptr_addr
  6839. ; <ENTER_INC_PTR 2639
  6840.  
  6841. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4226
  6842. %dataptr_enter_4226 = load i32, i32* %dataptr_addr
  6843. %element_addr_enter_4226 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4226
  6844. %element_enter_4226 = load i8, i8* %element_addr_enter_4226
  6845. %compare_zero_enter_4226 = icmp eq i8 %element_enter_4226, 0
  6846. br i1 %compare_zero_enter_4226, label %post_loop_4226, label %loop_body_4226
  6847. loop_body_4226:
  6848. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4226
  6849.  
  6850. ; >ENTER_DEC_DATA 2648
  6851. %dataptr_2648 = load i32, i32* %dataptr_addr
  6852. %element_addr_2648 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2648
  6853. %element_2648 = load i8, i8* %element_addr_2648
  6854. %sub_element_2648 = sub i8 %element_2648, 1
  6855. store i8 %sub_element_2648, i8* %element_addr_2648
  6856. ; <ENTER_DEC_DATA 2648
  6857.  
  6858. ; >ENTER_DEC_PTR 2649
  6859. %dataptr_2649 = load i32, i32* %dataptr_addr
  6860. %dec_dataptr_2649 = sub i32 %dataptr_2649, 8
  6861. store i32 %dec_dataptr_2649, i32* %dataptr_addr
  6862. ; <ENTER_DEC_PTR 2649
  6863.  
  6864. ; >ENTER_DEC_DATA 2657
  6865. %dataptr_2657 = load i32, i32* %dataptr_addr
  6866. %element_addr_2657 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2657
  6867. %element_2657 = load i8, i8* %element_addr_2657
  6868. %sub_element_2657 = sub i8 %element_2657, 1
  6869. store i8 %sub_element_2657, i8* %element_addr_2657
  6870. ; <ENTER_DEC_DATA 2657
  6871.  
  6872. ; >ENTER_INC_PTR 2658
  6873. %dataptr_2658 = load i32, i32* %dataptr_addr
  6874. %inc_dataptr_2658 = add i32 %dataptr_2658, 5
  6875. store i32 %inc_dataptr_2658, i32* %dataptr_addr
  6876. ; <ENTER_INC_PTR 2658
  6877.  
  6878. ; >ENTER_INC_DATA 2663
  6879. %dataptr_2663 = load i32, i32* %dataptr_addr
  6880. %element_addr_2663 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2663
  6881. %element_2663 = load i8, i8* %element_addr_2663
  6882. %inc_element_2663 = add i8 %element_2663, 1
  6883. store i8 %inc_element_2663, i8* %element_addr_2663
  6884. ; <ENTER_INC_DATA 2663
  6885.  
  6886. ; >ENTER_INC_PTR 2664
  6887. %dataptr_2664 = load i32, i32* %dataptr_addr
  6888. %inc_dataptr_2664 = add i32 %dataptr_2664, 3
  6889. store i32 %inc_dataptr_2664, i32* %dataptr_addr
  6890. ; <ENTER_INC_PTR 2664
  6891.  
  6892. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4225
  6893. %dataptr_enter_4225 = load i32, i32* %dataptr_addr
  6894. %element_addr_enter_4225 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4225
  6895. %element_enter_4225 = load i8, i8* %element_addr_enter_4225
  6896. %compare_zero_enter_4225 = icmp eq i8 %element_enter_4225, 0
  6897. br i1 %compare_zero_enter_4225, label %post_loop_4225, label %loop_body_4225
  6898. loop_body_4225:
  6899. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4225
  6900.  
  6901. ; >ENTER_DEC_DATA 2669
  6902. %dataptr_2669 = load i32, i32* %dataptr_addr
  6903. %element_addr_2669 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2669
  6904. %element_2669 = load i8, i8* %element_addr_2669
  6905. %sub_element_2669 = sub i8 %element_2669, 1
  6906. store i8 %sub_element_2669, i8* %element_addr_2669
  6907. ; <ENTER_DEC_DATA 2669
  6908.  
  6909. ; >ENTER_DEC_PTR 2670
  6910. %dataptr_2670 = load i32, i32* %dataptr_addr
  6911. %dec_dataptr_2670 = sub i32 %dataptr_2670, 8
  6912. store i32 %dec_dataptr_2670, i32* %dataptr_addr
  6913. ; <ENTER_DEC_PTR 2670
  6914.  
  6915. ; >ENTER_INC_DATA 2678
  6916. %dataptr_2678 = load i32, i32* %dataptr_addr
  6917. %element_addr_2678 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2678
  6918. %element_2678 = load i8, i8* %element_addr_2678
  6919. %inc_element_2678 = add i8 %element_2678, 1
  6920. store i8 %inc_element_2678, i8* %element_addr_2678
  6921. ; <ENTER_INC_DATA 2678
  6922.  
  6923. ; >ENTER_INC_PTR 2679
  6924. %dataptr_2679 = load i32, i32* %dataptr_addr
  6925. %inc_dataptr_2679 = add i32 %dataptr_2679, 8
  6926. store i32 %inc_dataptr_2679, i32* %dataptr_addr
  6927. ; <ENTER_INC_PTR 2679
  6928.  
  6929. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4224
  6930. %dataptr_enter_4224 = load i32, i32* %dataptr_addr
  6931. %element_addr_enter_4224 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4224
  6932. %element_enter_4224 = load i8, i8* %element_addr_enter_4224
  6933. %compare_zero_enter_4224 = icmp eq i8 %element_enter_4224, 0
  6934. br i1 %compare_zero_enter_4224, label %post_loop_4224, label %loop_body_4224
  6935. loop_body_4224:
  6936. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4224
  6937.  
  6938. ; >ENTER_DEC_DATA 2688
  6939. %dataptr_2688 = load i32, i32* %dataptr_addr
  6940. %element_addr_2688 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2688
  6941. %element_2688 = load i8, i8* %element_addr_2688
  6942. %sub_element_2688 = sub i8 %element_2688, 1
  6943. store i8 %sub_element_2688, i8* %element_addr_2688
  6944. ; <ENTER_DEC_DATA 2688
  6945.  
  6946. ; >ENTER_DEC_PTR 2689
  6947. %dataptr_2689 = load i32, i32* %dataptr_addr
  6948. %dec_dataptr_2689 = sub i32 %dataptr_2689, 8
  6949. store i32 %dec_dataptr_2689, i32* %dataptr_addr
  6950. ; <ENTER_DEC_PTR 2689
  6951.  
  6952. ; >ENTER_DEC_DATA 2697
  6953. %dataptr_2697 = load i32, i32* %dataptr_addr
  6954. %element_addr_2697 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2697
  6955. %element_2697 = load i8, i8* %element_addr_2697
  6956. %sub_element_2697 = sub i8 %element_2697, 1
  6957. store i8 %sub_element_2697, i8* %element_addr_2697
  6958. ; <ENTER_DEC_DATA 2697
  6959.  
  6960. ; >ENTER_INC_PTR 2698
  6961. %dataptr_2698 = load i32, i32* %dataptr_addr
  6962. %inc_dataptr_2698 = add i32 %dataptr_2698, 5
  6963. store i32 %inc_dataptr_2698, i32* %dataptr_addr
  6964. ; <ENTER_INC_PTR 2698
  6965.  
  6966. ; >ENTER_INC_DATA 2703
  6967. %dataptr_2703 = load i32, i32* %dataptr_addr
  6968. %element_addr_2703 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2703
  6969. %element_2703 = load i8, i8* %element_addr_2703
  6970. %inc_element_2703 = add i8 %element_2703, 1
  6971. store i8 %inc_element_2703, i8* %element_addr_2703
  6972. ; <ENTER_INC_DATA 2703
  6973.  
  6974. ; >ENTER_INC_PTR 2704
  6975. %dataptr_2704 = load i32, i32* %dataptr_addr
  6976. %inc_dataptr_2704 = add i32 %dataptr_2704, 3
  6977. store i32 %inc_dataptr_2704, i32* %dataptr_addr
  6978. ; <ENTER_INC_PTR 2704
  6979.  
  6980. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4223
  6981. %dataptr_enter_4223 = load i32, i32* %dataptr_addr
  6982. %element_addr_enter_4223 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4223
  6983. %element_enter_4223 = load i8, i8* %element_addr_enter_4223
  6984. %compare_zero_enter_4223 = icmp eq i8 %element_enter_4223, 0
  6985. br i1 %compare_zero_enter_4223, label %post_loop_4223, label %loop_body_4223
  6986. loop_body_4223:
  6987. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4223
  6988.  
  6989. ; >ENTER_DEC_DATA 2709
  6990. %dataptr_2709 = load i32, i32* %dataptr_addr
  6991. %element_addr_2709 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2709
  6992. %element_2709 = load i8, i8* %element_addr_2709
  6993. %sub_element_2709 = sub i8 %element_2709, 1
  6994. store i8 %sub_element_2709, i8* %element_addr_2709
  6995. ; <ENTER_DEC_DATA 2709
  6996.  
  6997. ; >ENTER_DEC_PTR 2710
  6998. %dataptr_2710 = load i32, i32* %dataptr_addr
  6999. %dec_dataptr_2710 = sub i32 %dataptr_2710, 8
  7000. store i32 %dec_dataptr_2710, i32* %dataptr_addr
  7001. ; <ENTER_DEC_PTR 2710
  7002.  
  7003. ; >ENTER_INC_DATA 2718
  7004. %dataptr_2718 = load i32, i32* %dataptr_addr
  7005. %element_addr_2718 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2718
  7006. %element_2718 = load i8, i8* %element_addr_2718
  7007. %inc_element_2718 = add i8 %element_2718, 1
  7008. store i8 %inc_element_2718, i8* %element_addr_2718
  7009. ; <ENTER_INC_DATA 2718
  7010.  
  7011. ; >ENTER_INC_PTR 2719
  7012. %dataptr_2719 = load i32, i32* %dataptr_addr
  7013. %inc_dataptr_2719 = add i32 %dataptr_2719, 8
  7014. store i32 %inc_dataptr_2719, i32* %dataptr_addr
  7015. ; <ENTER_INC_PTR 2719
  7016.  
  7017. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4222
  7018. %dataptr_enter_4222 = load i32, i32* %dataptr_addr
  7019. %element_addr_enter_4222 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4222
  7020. %element_enter_4222 = load i8, i8* %element_addr_enter_4222
  7021. %compare_zero_enter_4222 = icmp eq i8 %element_enter_4222, 0
  7022. br i1 %compare_zero_enter_4222, label %post_loop_4222, label %loop_body_4222
  7023. loop_body_4222:
  7024. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4222
  7025.  
  7026. ; >ENTER_DEC_DATA 2728
  7027. %dataptr_2728 = load i32, i32* %dataptr_addr
  7028. %element_addr_2728 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2728
  7029. %element_2728 = load i8, i8* %element_addr_2728
  7030. %sub_element_2728 = sub i8 %element_2728, 1
  7031. store i8 %sub_element_2728, i8* %element_addr_2728
  7032. ; <ENTER_DEC_DATA 2728
  7033.  
  7034. ; >ENTER_DEC_PTR 2729
  7035. %dataptr_2729 = load i32, i32* %dataptr_addr
  7036. %dec_dataptr_2729 = sub i32 %dataptr_2729, 8
  7037. store i32 %dec_dataptr_2729, i32* %dataptr_addr
  7038. ; <ENTER_DEC_PTR 2729
  7039.  
  7040. ; >ENTER_DEC_DATA 2737
  7041. %dataptr_2737 = load i32, i32* %dataptr_addr
  7042. %element_addr_2737 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2737
  7043. %element_2737 = load i8, i8* %element_addr_2737
  7044. %sub_element_2737 = sub i8 %element_2737, 1
  7045. store i8 %sub_element_2737, i8* %element_addr_2737
  7046. ; <ENTER_DEC_DATA 2737
  7047.  
  7048. ; >ENTER_INC_PTR 2738
  7049. %dataptr_2738 = load i32, i32* %dataptr_addr
  7050. %inc_dataptr_2738 = add i32 %dataptr_2738, 5
  7051. store i32 %inc_dataptr_2738, i32* %dataptr_addr
  7052. ; <ENTER_INC_PTR 2738
  7053.  
  7054. ; >ENTER_INC_DATA 2743
  7055. %dataptr_2743 = load i32, i32* %dataptr_addr
  7056. %element_addr_2743 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2743
  7057. %element_2743 = load i8, i8* %element_addr_2743
  7058. %inc_element_2743 = add i8 %element_2743, 1
  7059. store i8 %inc_element_2743, i8* %element_addr_2743
  7060. ; <ENTER_INC_DATA 2743
  7061.  
  7062. ; >ENTER_INC_PTR 2744
  7063. %dataptr_2744 = load i32, i32* %dataptr_addr
  7064. %inc_dataptr_2744 = add i32 %dataptr_2744, 3
  7065. store i32 %inc_dataptr_2744, i32* %dataptr_addr
  7066. ; <ENTER_INC_PTR 2744
  7067.  
  7068. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4221
  7069. %dataptr_enter_4221 = load i32, i32* %dataptr_addr
  7070. %element_addr_enter_4221 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4221
  7071. %element_enter_4221 = load i8, i8* %element_addr_enter_4221
  7072. %compare_zero_enter_4221 = icmp eq i8 %element_enter_4221, 0
  7073. br i1 %compare_zero_enter_4221, label %post_loop_4221, label %loop_body_4221
  7074. loop_body_4221:
  7075. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4221
  7076.  
  7077. ; >ENTER_DEC_DATA 2749
  7078. %dataptr_2749 = load i32, i32* %dataptr_addr
  7079. %element_addr_2749 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2749
  7080. %element_2749 = load i8, i8* %element_addr_2749
  7081. %sub_element_2749 = sub i8 %element_2749, 1
  7082. store i8 %sub_element_2749, i8* %element_addr_2749
  7083. ; <ENTER_DEC_DATA 2749
  7084.  
  7085. ; >ENTER_DEC_PTR 2750
  7086. %dataptr_2750 = load i32, i32* %dataptr_addr
  7087. %dec_dataptr_2750 = sub i32 %dataptr_2750, 8
  7088. store i32 %dec_dataptr_2750, i32* %dataptr_addr
  7089. ; <ENTER_DEC_PTR 2750
  7090.  
  7091. ; >ENTER_INC_DATA 2758
  7092. %dataptr_2758 = load i32, i32* %dataptr_addr
  7093. %element_addr_2758 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2758
  7094. %element_2758 = load i8, i8* %element_addr_2758
  7095. %inc_element_2758 = add i8 %element_2758, 1
  7096. store i8 %inc_element_2758, i8* %element_addr_2758
  7097. ; <ENTER_INC_DATA 2758
  7098.  
  7099. ; >ENTER_INC_PTR 2759
  7100. %dataptr_2759 = load i32, i32* %dataptr_addr
  7101. %inc_dataptr_2759 = add i32 %dataptr_2759, 8
  7102. store i32 %inc_dataptr_2759, i32* %dataptr_addr
  7103. ; <ENTER_INC_PTR 2759
  7104.  
  7105. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4221
  7106. %dataptr_leave_4221 = load i32, i32* %dataptr_addr
  7107. %element_addr_leave_4221 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4221
  7108. %element_leave_4221 = load i8, i8* %element_addr_leave_4221
  7109. %compare_zero_leave_4221 = icmp ne i8 %element_leave_4221, 0
  7110. br i1 %compare_zero_leave_4221, label %loop_body_4221, label %post_loop_4221
  7111. post_loop_4221:
  7112. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4221
  7113.  
  7114. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4222
  7115. %dataptr_leave_4222 = load i32, i32* %dataptr_addr
  7116. %element_addr_leave_4222 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4222
  7117. %element_leave_4222 = load i8, i8* %element_addr_leave_4222
  7118. %compare_zero_leave_4222 = icmp ne i8 %element_leave_4222, 0
  7119. br i1 %compare_zero_leave_4222, label %loop_body_4222, label %post_loop_4222
  7120. post_loop_4222:
  7121. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4222
  7122.  
  7123. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4223
  7124. %dataptr_leave_4223 = load i32, i32* %dataptr_addr
  7125. %element_addr_leave_4223 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4223
  7126. %element_leave_4223 = load i8, i8* %element_addr_leave_4223
  7127. %compare_zero_leave_4223 = icmp ne i8 %element_leave_4223, 0
  7128. br i1 %compare_zero_leave_4223, label %loop_body_4223, label %post_loop_4223
  7129. post_loop_4223:
  7130. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4223
  7131.  
  7132. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4224
  7133. %dataptr_leave_4224 = load i32, i32* %dataptr_addr
  7134. %element_addr_leave_4224 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4224
  7135. %element_leave_4224 = load i8, i8* %element_addr_leave_4224
  7136. %compare_zero_leave_4224 = icmp ne i8 %element_leave_4224, 0
  7137. br i1 %compare_zero_leave_4224, label %loop_body_4224, label %post_loop_4224
  7138. post_loop_4224:
  7139. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4224
  7140.  
  7141. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4225
  7142. %dataptr_leave_4225 = load i32, i32* %dataptr_addr
  7143. %element_addr_leave_4225 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4225
  7144. %element_leave_4225 = load i8, i8* %element_addr_leave_4225
  7145. %compare_zero_leave_4225 = icmp ne i8 %element_leave_4225, 0
  7146. br i1 %compare_zero_leave_4225, label %loop_body_4225, label %post_loop_4225
  7147. post_loop_4225:
  7148. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4225
  7149.  
  7150. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4226
  7151. %dataptr_leave_4226 = load i32, i32* %dataptr_addr
  7152. %element_addr_leave_4226 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4226
  7153. %element_leave_4226 = load i8, i8* %element_addr_leave_4226
  7154. %compare_zero_leave_4226 = icmp ne i8 %element_leave_4226, 0
  7155. br i1 %compare_zero_leave_4226, label %loop_body_4226, label %post_loop_4226
  7156. post_loop_4226:
  7157. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4226
  7158.  
  7159. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4227
  7160. %dataptr_leave_4227 = load i32, i32* %dataptr_addr
  7161. %element_addr_leave_4227 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4227
  7162. %element_leave_4227 = load i8, i8* %element_addr_leave_4227
  7163. %compare_zero_leave_4227 = icmp ne i8 %element_leave_4227, 0
  7164. br i1 %compare_zero_leave_4227, label %loop_body_4227, label %post_loop_4227
  7165. post_loop_4227:
  7166. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4227
  7167.  
  7168. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4228
  7169. %dataptr_leave_4228 = load i32, i32* %dataptr_addr
  7170. %element_addr_leave_4228 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4228
  7171. %element_leave_4228 = load i8, i8* %element_addr_leave_4228
  7172. %compare_zero_leave_4228 = icmp ne i8 %element_leave_4228, 0
  7173. br i1 %compare_zero_leave_4228, label %loop_body_4228, label %post_loop_4228
  7174. post_loop_4228:
  7175. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4228
  7176.  
  7177. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4229
  7178. %dataptr_leave_4229 = load i32, i32* %dataptr_addr
  7179. %element_addr_leave_4229 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4229
  7180. %element_leave_4229 = load i8, i8* %element_addr_leave_4229
  7181. %compare_zero_leave_4229 = icmp ne i8 %element_leave_4229, 0
  7182. br i1 %compare_zero_leave_4229, label %loop_body_4229, label %post_loop_4229
  7183. post_loop_4229:
  7184. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4229
  7185.  
  7186. ; >ENTER_DEC_PTR 2776
  7187. %dataptr_2776 = load i32, i32* %dataptr_addr
  7188. %dec_dataptr_2776 = sub i32 %dataptr_2776, 8
  7189. store i32 %dec_dataptr_2776, i32* %dataptr_addr
  7190. ; <ENTER_DEC_PTR 2776
  7191.  
  7192. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4230
  7193. %dataptr_enter_4230 = load i32, i32* %dataptr_addr
  7194. %element_addr_enter_4230 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4230
  7195. %element_enter_4230 = load i8, i8* %element_addr_enter_4230
  7196. %compare_zero_enter_4230 = icmp eq i8 %element_enter_4230, 0
  7197. br i1 %compare_zero_enter_4230, label %post_loop_4230, label %loop_body_4230
  7198. loop_body_4230:
  7199. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4230
  7200.  
  7201. ; >ENTER_DEC_DATA 2786
  7202. %dataptr_2786 = load i32, i32* %dataptr_addr
  7203. %element_addr_2786 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2786
  7204. %element_2786 = load i8, i8* %element_addr_2786
  7205. %sub_element_2786 = sub i8 %element_2786, 1
  7206. store i8 %sub_element_2786, i8* %element_addr_2786
  7207. ; <ENTER_DEC_DATA 2786
  7208.  
  7209. ; >ENTER_INC_PTR 2787
  7210. %dataptr_2787 = load i32, i32* %dataptr_addr
  7211. %inc_dataptr_2787 = add i32 %dataptr_2787, 8
  7212. store i32 %inc_dataptr_2787, i32* %dataptr_addr
  7213. ; <ENTER_INC_PTR 2787
  7214.  
  7215. ; >ENTER_INC_DATA 2795
  7216. %dataptr_2795 = load i32, i32* %dataptr_addr
  7217. %element_addr_2795 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2795
  7218. %element_2795 = load i8, i8* %element_addr_2795
  7219. %inc_element_2795 = add i8 %element_2795, 1
  7220. store i8 %inc_element_2795, i8* %element_addr_2795
  7221. ; <ENTER_INC_DATA 2795
  7222.  
  7223. ; >ENTER_DEC_PTR 2796
  7224. %dataptr_2796 = load i32, i32* %dataptr_addr
  7225. %dec_dataptr_2796 = sub i32 %dataptr_2796, 8
  7226. store i32 %dec_dataptr_2796, i32* %dataptr_addr
  7227. ; <ENTER_DEC_PTR 2796
  7228.  
  7229. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4230
  7230. %dataptr_leave_4230 = load i32, i32* %dataptr_addr
  7231. %element_addr_leave_4230 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4230
  7232. %element_leave_4230 = load i8, i8* %element_addr_leave_4230
  7233. %compare_zero_leave_4230 = icmp ne i8 %element_leave_4230, 0
  7234. br i1 %compare_zero_leave_4230, label %loop_body_4230, label %post_loop_4230
  7235. post_loop_4230:
  7236. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4230
  7237.  
  7238. ; >ENTER_DEC_DATA 2805
  7239. %dataptr_2805 = load i32, i32* %dataptr_addr
  7240. %element_addr_2805 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2805
  7241. %element_2805 = load i8, i8* %element_addr_2805
  7242. %sub_element_2805 = sub i8 %element_2805, 1
  7243. store i8 %sub_element_2805, i8* %element_addr_2805
  7244. ; <ENTER_DEC_DATA 2805
  7245.  
  7246. ; >ENTER_DEC_PTR 2806
  7247. %dataptr_2806 = load i32, i32* %dataptr_addr
  7248. %dec_dataptr_2806 = sub i32 %dataptr_2806, 10
  7249. store i32 %dec_dataptr_2806, i32* %dataptr_addr
  7250. ; <ENTER_DEC_PTR 2806
  7251.  
  7252. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4231
  7253. %dataptr_leave_4231 = load i32, i32* %dataptr_addr
  7254. %element_addr_leave_4231 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4231
  7255. %element_leave_4231 = load i8, i8* %element_addr_leave_4231
  7256. %compare_zero_leave_4231 = icmp ne i8 %element_leave_4231, 0
  7257. br i1 %compare_zero_leave_4231, label %loop_body_4231, label %post_loop_4231
  7258. post_loop_4231:
  7259. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4231
  7260.  
  7261. ; >ENTER_INC_PTR 2818
  7262. %dataptr_2818 = load i32, i32* %dataptr_addr
  7263. %inc_dataptr_2818 = add i32 %dataptr_2818, 8
  7264. store i32 %inc_dataptr_2818, i32* %dataptr_addr
  7265. ; <ENTER_INC_PTR 2818
  7266.  
  7267. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4232
  7268. %dataptr_enter_4232 = load i32, i32* %dataptr_addr
  7269. %element_addr_enter_4232 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4232
  7270. %element_enter_4232 = load i8, i8* %element_addr_enter_4232
  7271. %compare_zero_enter_4232 = icmp eq i8 %element_enter_4232, 0
  7272. br i1 %compare_zero_enter_4232, label %post_loop_4232, label %loop_body_4232
  7273. loop_body_4232:
  7274. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4232
  7275.  
  7276. ; >ENTER_DEC_DATA 2827
  7277. %dataptr_2827 = load i32, i32* %dataptr_addr
  7278. %element_addr_2827 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2827
  7279. %element_2827 = load i8, i8* %element_addr_2827
  7280. %sub_element_2827 = sub i8 %element_2827, 1
  7281. store i8 %sub_element_2827, i8* %element_addr_2827
  7282. ; <ENTER_DEC_DATA 2827
  7283.  
  7284. ; >ENTER_DEC_PTR 2828
  7285. %dataptr_2828 = load i32, i32* %dataptr_addr
  7286. %dec_dataptr_2828 = sub i32 %dataptr_2828, 13
  7287. store i32 %dec_dataptr_2828, i32* %dataptr_addr
  7288. ; <ENTER_DEC_PTR 2828
  7289.  
  7290. ; >ENTER_INC_DATA 2841
  7291. %dataptr_2841 = load i32, i32* %dataptr_addr
  7292. %element_addr_2841 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2841
  7293. %element_2841 = load i8, i8* %element_addr_2841
  7294. %inc_element_2841 = add i8 %element_2841, 1
  7295. store i8 %inc_element_2841, i8* %element_addr_2841
  7296. ; <ENTER_INC_DATA 2841
  7297.  
  7298. ; >ENTER_INC_PTR 2842
  7299. %dataptr_2842 = load i32, i32* %dataptr_addr
  7300. %inc_dataptr_2842 = add i32 %dataptr_2842, 13
  7301. store i32 %inc_dataptr_2842, i32* %dataptr_addr
  7302. ; <ENTER_INC_PTR 2842
  7303.  
  7304. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4232
  7305. %dataptr_leave_4232 = load i32, i32* %dataptr_addr
  7306. %element_addr_leave_4232 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4232
  7307. %element_leave_4232 = load i8, i8* %element_addr_leave_4232
  7308. %compare_zero_leave_4232 = icmp ne i8 %element_leave_4232, 0
  7309. br i1 %compare_zero_leave_4232, label %loop_body_4232, label %post_loop_4232
  7310. post_loop_4232:
  7311. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4232
  7312.  
  7313. ; >ENTER_INC_PTR 2856
  7314. %dataptr_2856 = load i32, i32* %dataptr_addr
  7315. %inc_dataptr_2856 = add i32 %dataptr_2856, 2
  7316. store i32 %inc_dataptr_2856, i32* %dataptr_addr
  7317. ; <ENTER_INC_PTR 2856
  7318.  
  7319. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4234
  7320. %dataptr_enter_4234 = load i32, i32* %dataptr_addr
  7321. %element_addr_enter_4234 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4234
  7322. %element_enter_4234 = load i8, i8* %element_addr_enter_4234
  7323. %compare_zero_enter_4234 = icmp eq i8 %element_enter_4234, 0
  7324. br i1 %compare_zero_enter_4234, label %post_loop_4234, label %loop_body_4234
  7325. loop_body_4234:
  7326. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4234
  7327.  
  7328. ; >ENTER_INC_PTR 2860
  7329. %dataptr_2860 = load i32, i32* %dataptr_addr
  7330. %inc_dataptr_2860 = add i32 %dataptr_2860, 8
  7331. store i32 %inc_dataptr_2860, i32* %dataptr_addr
  7332. ; <ENTER_INC_PTR 2860
  7333.  
  7334. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4233
  7335. %dataptr_enter_4233 = load i32, i32* %dataptr_addr
  7336. %element_addr_enter_4233 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4233
  7337. %element_enter_4233 = load i8, i8* %element_addr_enter_4233
  7338. %compare_zero_enter_4233 = icmp eq i8 %element_enter_4233, 0
  7339. br i1 %compare_zero_enter_4233, label %post_loop_4233, label %loop_body_4233
  7340. loop_body_4233:
  7341. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4233
  7342.  
  7343. ; >ENTER_DEC_DATA 2869
  7344. %dataptr_2869 = load i32, i32* %dataptr_addr
  7345. %element_addr_2869 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2869
  7346. %element_2869 = load i8, i8* %element_addr_2869
  7347. %sub_element_2869 = sub i8 %element_2869, 1
  7348. store i8 %sub_element_2869, i8* %element_addr_2869
  7349. ; <ENTER_DEC_DATA 2869
  7350.  
  7351. ; >ENTER_DEC_PTR 2870
  7352. %dataptr_2870 = load i32, i32* %dataptr_addr
  7353. %dec_dataptr_2870 = sub i32 %dataptr_2870, 13
  7354. store i32 %dec_dataptr_2870, i32* %dataptr_addr
  7355. ; <ENTER_DEC_PTR 2870
  7356.  
  7357. ; >ENTER_INC_DATA 2883
  7358. %dataptr_2883 = load i32, i32* %dataptr_addr
  7359. %element_addr_2883 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2883
  7360. %element_2883 = load i8, i8* %element_addr_2883
  7361. %inc_element_2883 = add i8 %element_2883, 5
  7362. store i8 %inc_element_2883, i8* %element_addr_2883
  7363. ; <ENTER_INC_DATA 2883
  7364.  
  7365. ; >ENTER_INC_PTR 2888
  7366. %dataptr_2888 = load i32, i32* %dataptr_addr
  7367. %inc_dataptr_2888 = add i32 %dataptr_2888, 13
  7368. store i32 %inc_dataptr_2888, i32* %dataptr_addr
  7369. ; <ENTER_INC_PTR 2888
  7370.  
  7371. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4233
  7372. %dataptr_leave_4233 = load i32, i32* %dataptr_addr
  7373. %element_addr_leave_4233 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4233
  7374. %element_leave_4233 = load i8, i8* %element_addr_leave_4233
  7375. %compare_zero_leave_4233 = icmp ne i8 %element_leave_4233, 0
  7376. br i1 %compare_zero_leave_4233, label %loop_body_4233, label %post_loop_4233
  7377. post_loop_4233:
  7378. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4233
  7379.  
  7380. ; >ENTER_INC_PTR 2902
  7381. %dataptr_2902 = load i32, i32* %dataptr_addr
  7382. %inc_dataptr_2902 = add i32 %dataptr_2902, 2
  7383. store i32 %inc_dataptr_2902, i32* %dataptr_addr
  7384. ; <ENTER_INC_PTR 2902
  7385.  
  7386. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4234
  7387. %dataptr_leave_4234 = load i32, i32* %dataptr_addr
  7388. %element_addr_leave_4234 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4234
  7389. %element_leave_4234 = load i8, i8* %element_addr_leave_4234
  7390. %compare_zero_leave_4234 = icmp ne i8 %element_leave_4234, 0
  7391. br i1 %compare_zero_leave_4234, label %loop_body_4234, label %post_loop_4234
  7392. post_loop_4234:
  7393. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4234
  7394.  
  7395. ; >ENTER_DEC_PTR 2905
  7396. %dataptr_2905 = load i32, i32* %dataptr_addr
  7397. %dec_dataptr_2905 = sub i32 %dataptr_2905, 10
  7398. store i32 %dec_dataptr_2905, i32* %dataptr_addr
  7399. ; <ENTER_DEC_PTR 2905
  7400.  
  7401. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4235
  7402. %dataptr_enter_4235 = load i32, i32* %dataptr_addr
  7403. %element_addr_enter_4235 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4235
  7404. %element_enter_4235 = load i8, i8* %element_addr_enter_4235
  7405. %compare_zero_enter_4235 = icmp eq i8 %element_enter_4235, 0
  7406. br i1 %compare_zero_enter_4235, label %post_loop_4235, label %loop_body_4235
  7407. loop_body_4235:
  7408. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4235
  7409.  
  7410. ; >ENTER_DEC_PTR 2917
  7411. %dataptr_2917 = load i32, i32* %dataptr_addr
  7412. %dec_dataptr_2917 = sub i32 %dataptr_2917, 10
  7413. store i32 %dec_dataptr_2917, i32* %dataptr_addr
  7414. ; <ENTER_DEC_PTR 2917
  7415.  
  7416. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4235
  7417. %dataptr_leave_4235 = load i32, i32* %dataptr_addr
  7418. %element_addr_leave_4235 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4235
  7419. %element_leave_4235 = load i8, i8* %element_addr_leave_4235
  7420. %compare_zero_leave_4235 = icmp ne i8 %element_leave_4235, 0
  7421. br i1 %compare_zero_leave_4235, label %loop_body_4235, label %post_loop_4235
  7422. post_loop_4235:
  7423. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4235
  7424.  
  7425. ; >ENTER_INC_PTR 2928
  7426. %dataptr_2928 = load i32, i32* %dataptr_addr
  7427. %inc_dataptr_2928 = add i32 %dataptr_2928, 16
  7428. store i32 %inc_dataptr_2928, i32* %dataptr_addr
  7429. ; <ENTER_INC_PTR 2928
  7430.  
  7431. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4236
  7432. %dataptr_leave_4236 = load i32, i32* %dataptr_addr
  7433. %element_addr_leave_4236 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4236
  7434. %element_leave_4236 = load i8, i8* %element_addr_leave_4236
  7435. %compare_zero_leave_4236 = icmp ne i8 %element_leave_4236, 0
  7436. br i1 %compare_zero_leave_4236, label %loop_body_4236, label %post_loop_4236
  7437. post_loop_4236:
  7438. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4236
  7439.  
  7440. ; >ENTER_DEC_PTR 2948
  7441. %dataptr_2948 = load i32, i32* %dataptr_addr
  7442. %dec_dataptr_2948 = sub i32 %dataptr_2948, 6
  7443. store i32 %dec_dataptr_2948, i32* %dataptr_addr
  7444. ; <ENTER_DEC_PTR 2948
  7445.  
  7446. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4238
  7447. %dataptr_enter_4238 = load i32, i32* %dataptr_addr
  7448. %element_addr_enter_4238 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4238
  7449. %element_enter_4238 = load i8, i8* %element_addr_enter_4238
  7450. %compare_zero_enter_4238 = icmp eq i8 %element_enter_4238, 0
  7451. br i1 %compare_zero_enter_4238, label %post_loop_4238, label %loop_body_4238
  7452. loop_body_4238:
  7453. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4238
  7454.  
  7455. ; >ENTER_INC_PTR 2956
  7456. %dataptr_2956 = load i32, i32* %dataptr_addr
  7457. %inc_dataptr_2956 = add i32 %dataptr_2956, 3
  7458. store i32 %inc_dataptr_2956, i32* %dataptr_addr
  7459. ; <ENTER_INC_PTR 2956
  7460.  
  7461. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4237
  7462. %dataptr_enter_4237 = load i32, i32* %dataptr_addr
  7463. %element_addr_enter_4237 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4237
  7464. %element_enter_4237 = load i8, i8* %element_addr_enter_4237
  7465. %compare_zero_enter_4237 = icmp eq i8 %element_enter_4237, 0
  7466. br i1 %compare_zero_enter_4237, label %post_loop_4237, label %loop_body_4237
  7467. loop_body_4237:
  7468. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4237
  7469.  
  7470. ; >ENTER_DEC_DATA 2960
  7471. %dataptr_2960 = load i32, i32* %dataptr_addr
  7472. %element_addr_2960 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2960
  7473. %element_2960 = load i8, i8* %element_addr_2960
  7474. %sub_element_2960 = sub i8 %element_2960, 1
  7475. store i8 %sub_element_2960, i8* %element_addr_2960
  7476. ; <ENTER_DEC_DATA 2960
  7477.  
  7478. ; >ENTER_INC_PTR 2961
  7479. %dataptr_2961 = load i32, i32* %dataptr_addr
  7480. %inc_dataptr_2961 = add i32 %dataptr_2961, 4
  7481. store i32 %inc_dataptr_2961, i32* %dataptr_addr
  7482. ; <ENTER_INC_PTR 2961
  7483.  
  7484. ; >ENTER_INC_DATA 2965
  7485. %dataptr_2965 = load i32, i32* %dataptr_addr
  7486. %element_addr_2965 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2965
  7487. %element_2965 = load i8, i8* %element_addr_2965
  7488. %inc_element_2965 = add i8 %element_2965, 1
  7489. store i8 %inc_element_2965, i8* %element_addr_2965
  7490. ; <ENTER_INC_DATA 2965
  7491.  
  7492. ; >ENTER_INC_PTR 2966
  7493. %dataptr_2966 = load i32, i32* %dataptr_addr
  7494. %inc_dataptr_2966 = add i32 %dataptr_2966, 1
  7495. store i32 %inc_dataptr_2966, i32* %dataptr_addr
  7496. ; <ENTER_INC_PTR 2966
  7497.  
  7498. ; >ENTER_INC_DATA 2967
  7499. %dataptr_2967 = load i32, i32* %dataptr_addr
  7500. %element_addr_2967 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_2967
  7501. %element_2967 = load i8, i8* %element_addr_2967
  7502. %inc_element_2967 = add i8 %element_2967, 1
  7503. store i8 %inc_element_2967, i8* %element_addr_2967
  7504. ; <ENTER_INC_DATA 2967
  7505.  
  7506. ; >ENTER_DEC_PTR 2968
  7507. %dataptr_2968 = load i32, i32* %dataptr_addr
  7508. %dec_dataptr_2968 = sub i32 %dataptr_2968, 5
  7509. store i32 %dec_dataptr_2968, i32* %dataptr_addr
  7510. ; <ENTER_DEC_PTR 2968
  7511.  
  7512. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4237
  7513. %dataptr_leave_4237 = load i32, i32* %dataptr_addr
  7514. %element_addr_leave_4237 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4237
  7515. %element_leave_4237 = load i8, i8* %element_addr_leave_4237
  7516. %compare_zero_leave_4237 = icmp ne i8 %element_leave_4237, 0
  7517. br i1 %compare_zero_leave_4237, label %loop_body_4237, label %post_loop_4237
  7518. post_loop_4237:
  7519. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4237
  7520.  
  7521. ; >ENTER_INC_PTR 2974
  7522. %dataptr_2974 = load i32, i32* %dataptr_addr
  7523. %inc_dataptr_2974 = add i32 %dataptr_2974, 7
  7524. store i32 %inc_dataptr_2974, i32* %dataptr_addr
  7525. ; <ENTER_INC_PTR 2974
  7526.  
  7527. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4238
  7528. %dataptr_leave_4238 = load i32, i32* %dataptr_addr
  7529. %element_addr_leave_4238 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4238
  7530. %element_leave_4238 = load i8, i8* %element_addr_leave_4238
  7531. %compare_zero_leave_4238 = icmp ne i8 %element_leave_4238, 0
  7532. br i1 %compare_zero_leave_4238, label %loop_body_4238, label %post_loop_4238
  7533. post_loop_4238:
  7534. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4238
  7535.  
  7536. ; >ENTER_DEC_PTR 2983
  7537. %dataptr_2983 = load i32, i32* %dataptr_addr
  7538. %dec_dataptr_2983 = sub i32 %dataptr_2983, 10
  7539. store i32 %dec_dataptr_2983, i32* %dataptr_addr
  7540. ; <ENTER_DEC_PTR 2983
  7541.  
  7542. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4241
  7543. %dataptr_enter_4241 = load i32, i32* %dataptr_addr
  7544. %element_addr_enter_4241 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4241
  7545. %element_enter_4241 = load i8, i8* %element_addr_enter_4241
  7546. %compare_zero_enter_4241 = icmp eq i8 %element_enter_4241, 0
  7547. br i1 %compare_zero_enter_4241, label %post_loop_4241, label %loop_body_4241
  7548. loop_body_4241:
  7549. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4241
  7550.  
  7551. ; >ENTER_INC_PTR 2995
  7552. %dataptr_2995 = load i32, i32* %dataptr_addr
  7553. %inc_dataptr_2995 = add i32 %dataptr_2995, 7
  7554. store i32 %inc_dataptr_2995, i32* %dataptr_addr
  7555. ; <ENTER_INC_PTR 2995
  7556.  
  7557. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4239
  7558. %dataptr_enter_4239 = load i32, i32* %dataptr_addr
  7559. %element_addr_enter_4239 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4239
  7560. %element_enter_4239 = load i8, i8* %element_addr_enter_4239
  7561. %compare_zero_enter_4239 = icmp eq i8 %element_enter_4239, 0
  7562. br i1 %compare_zero_enter_4239, label %post_loop_4239, label %loop_body_4239
  7563. loop_body_4239:
  7564. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4239
  7565.  
  7566. ; >ENTER_DEC_DATA 3003
  7567. %dataptr_3003 = load i32, i32* %dataptr_addr
  7568. %element_addr_3003 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3003
  7569. %element_3003 = load i8, i8* %element_addr_3003
  7570. %sub_element_3003 = sub i8 %element_3003, 1
  7571. store i8 %sub_element_3003, i8* %element_addr_3003
  7572. ; <ENTER_DEC_DATA 3003
  7573.  
  7574. ; >ENTER_DEC_PTR 3004
  7575. %dataptr_3004 = load i32, i32* %dataptr_addr
  7576. %dec_dataptr_3004 = sub i32 %dataptr_3004, 4
  7577. store i32 %dec_dataptr_3004, i32* %dataptr_addr
  7578. ; <ENTER_DEC_PTR 3004
  7579.  
  7580. ; >ENTER_INC_DATA 3008
  7581. %dataptr_3008 = load i32, i32* %dataptr_addr
  7582. %element_addr_3008 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3008
  7583. %element_3008 = load i8, i8* %element_addr_3008
  7584. %inc_element_3008 = add i8 %element_3008, 1
  7585. store i8 %inc_element_3008, i8* %element_addr_3008
  7586. ; <ENTER_INC_DATA 3008
  7587.  
  7588. ; >ENTER_INC_PTR 3009
  7589. %dataptr_3009 = load i32, i32* %dataptr_addr
  7590. %inc_dataptr_3009 = add i32 %dataptr_3009, 4
  7591. store i32 %inc_dataptr_3009, i32* %dataptr_addr
  7592. ; <ENTER_INC_PTR 3009
  7593.  
  7594. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4239
  7595. %dataptr_leave_4239 = load i32, i32* %dataptr_addr
  7596. %element_addr_leave_4239 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4239
  7597. %element_leave_4239 = load i8, i8* %element_addr_leave_4239
  7598. %compare_zero_leave_4239 = icmp ne i8 %element_leave_4239, 0
  7599. br i1 %compare_zero_leave_4239, label %loop_body_4239, label %post_loop_4239
  7600. post_loop_4239:
  7601. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4239
  7602.  
  7603. ; >ENTER_DEC_PTR 3014
  7604. %dataptr_3014 = load i32, i32* %dataptr_addr
  7605. %dec_dataptr_3014 = sub i32 %dataptr_3014, 5
  7606. store i32 %dec_dataptr_3014, i32* %dataptr_addr
  7607. ; <ENTER_DEC_PTR 3014
  7608.  
  7609. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4240
  7610. %dataptr_enter_4240 = load i32, i32* %dataptr_addr
  7611. %element_addr_enter_4240 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4240
  7612. %element_enter_4240 = load i8, i8* %element_addr_enter_4240
  7613. %compare_zero_enter_4240 = icmp eq i8 %element_enter_4240, 0
  7614. br i1 %compare_zero_enter_4240, label %post_loop_4240, label %loop_body_4240
  7615. loop_body_4240:
  7616. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4240
  7617.  
  7618. ; >ENTER_DEC_DATA 3020
  7619. %dataptr_3020 = load i32, i32* %dataptr_addr
  7620. %element_addr_3020 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3020
  7621. %element_3020 = load i8, i8* %element_addr_3020
  7622. %sub_element_3020 = sub i8 %element_3020, 1
  7623. store i8 %sub_element_3020, i8* %element_addr_3020
  7624. ; <ENTER_DEC_DATA 3020
  7625.  
  7626. ; >ENTER_INC_PTR 3021
  7627. %dataptr_3021 = load i32, i32* %dataptr_addr
  7628. %inc_dataptr_3021 = add i32 %dataptr_3021, 5
  7629. store i32 %inc_dataptr_3021, i32* %dataptr_addr
  7630. ; <ENTER_INC_PTR 3021
  7631.  
  7632. ; >ENTER_INC_DATA 3026
  7633. %dataptr_3026 = load i32, i32* %dataptr_addr
  7634. %element_addr_3026 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3026
  7635. %element_3026 = load i8, i8* %element_addr_3026
  7636. %inc_element_3026 = add i8 %element_3026, 1
  7637. store i8 %inc_element_3026, i8* %element_addr_3026
  7638. ; <ENTER_INC_DATA 3026
  7639.  
  7640. ; >ENTER_INC_PTR 3027
  7641. %dataptr_3027 = load i32, i32* %dataptr_addr
  7642. %inc_dataptr_3027 = add i32 %dataptr_3027, 2
  7643. store i32 %inc_dataptr_3027, i32* %dataptr_addr
  7644. ; <ENTER_INC_PTR 3027
  7645.  
  7646. ; >ENTER_INC_DATA 3029
  7647. %dataptr_3029 = load i32, i32* %dataptr_addr
  7648. %element_addr_3029 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3029
  7649. %element_3029 = load i8, i8* %element_addr_3029
  7650. %inc_element_3029 = add i8 %element_3029, 1
  7651. store i8 %inc_element_3029, i8* %element_addr_3029
  7652. ; <ENTER_INC_DATA 3029
  7653.  
  7654. ; >ENTER_DEC_PTR 3030
  7655. %dataptr_3030 = load i32, i32* %dataptr_addr
  7656. %dec_dataptr_3030 = sub i32 %dataptr_3030, 7
  7657. store i32 %dec_dataptr_3030, i32* %dataptr_addr
  7658. ; <ENTER_DEC_PTR 3030
  7659.  
  7660. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4240
  7661. %dataptr_leave_4240 = load i32, i32* %dataptr_addr
  7662. %element_addr_leave_4240 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4240
  7663. %element_leave_4240 = load i8, i8* %element_addr_leave_4240
  7664. %compare_zero_leave_4240 = icmp ne i8 %element_leave_4240, 0
  7665. br i1 %compare_zero_leave_4240, label %loop_body_4240, label %post_loop_4240
  7666. post_loop_4240:
  7667. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4240
  7668.  
  7669. ; >ENTER_DEC_PTR 3038
  7670. %dataptr_3038 = load i32, i32* %dataptr_addr
  7671. %dec_dataptr_3038 = sub i32 %dataptr_3038, 12
  7672. store i32 %dec_dataptr_3038, i32* %dataptr_addr
  7673. ; <ENTER_DEC_PTR 3038
  7674.  
  7675. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4241
  7676. %dataptr_leave_4241 = load i32, i32* %dataptr_addr
  7677. %element_addr_leave_4241 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4241
  7678. %element_leave_4241 = load i8, i8* %element_addr_leave_4241
  7679. %compare_zero_leave_4241 = icmp ne i8 %element_leave_4241, 0
  7680. br i1 %compare_zero_leave_4241, label %loop_body_4241, label %post_loop_4241
  7681. post_loop_4241:
  7682. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4241
  7683.  
  7684. ; >ENTER_INC_PTR 3052
  7685. %dataptr_3052 = load i32, i32* %dataptr_addr
  7686. %inc_dataptr_3052 = add i32 %dataptr_3052, 10
  7687. store i32 %inc_dataptr_3052, i32* %dataptr_addr
  7688. ; <ENTER_INC_PTR 3052
  7689.  
  7690. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4243
  7691. %dataptr_enter_4243 = load i32, i32* %dataptr_addr
  7692. %element_addr_enter_4243 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4243
  7693. %element_enter_4243 = load i8, i8* %element_addr_enter_4243
  7694. %compare_zero_enter_4243 = icmp eq i8 %element_enter_4243, 0
  7695. br i1 %compare_zero_enter_4243, label %post_loop_4243, label %loop_body_4243
  7696. loop_body_4243:
  7697. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4243
  7698.  
  7699. ; >ENTER_INC_PTR 3063
  7700. %dataptr_3063 = load i32, i32* %dataptr_addr
  7701. %inc_dataptr_3063 = add i32 %dataptr_3063, 7
  7702. store i32 %inc_dataptr_3063, i32* %dataptr_addr
  7703. ; <ENTER_INC_PTR 3063
  7704.  
  7705. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4242
  7706. %dataptr_enter_4242 = load i32, i32* %dataptr_addr
  7707. %element_addr_enter_4242 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4242
  7708. %element_enter_4242 = load i8, i8* %element_addr_enter_4242
  7709. %compare_zero_enter_4242 = icmp eq i8 %element_enter_4242, 0
  7710. br i1 %compare_zero_enter_4242, label %post_loop_4242, label %loop_body_4242
  7711. loop_body_4242:
  7712. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4242
  7713.  
  7714. ; >ENTER_DEC_DATA 3071
  7715. %dataptr_3071 = load i32, i32* %dataptr_addr
  7716. %element_addr_3071 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3071
  7717. %element_3071 = load i8, i8* %element_addr_3071
  7718. %sub_element_3071 = sub i8 %element_3071, 1
  7719. store i8 %sub_element_3071, i8* %element_addr_3071
  7720. ; <ENTER_DEC_DATA 3071
  7721.  
  7722. ; >ENTER_DEC_PTR 3072
  7723. %dataptr_3072 = load i32, i32* %dataptr_addr
  7724. %dec_dataptr_3072 = sub i32 %dataptr_3072, 5
  7725. store i32 %dec_dataptr_3072, i32* %dataptr_addr
  7726. ; <ENTER_DEC_PTR 3072
  7727.  
  7728. ; >ENTER_INC_DATA 3077
  7729. %dataptr_3077 = load i32, i32* %dataptr_addr
  7730. %element_addr_3077 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3077
  7731. %element_3077 = load i8, i8* %element_addr_3077
  7732. %inc_element_3077 = add i8 %element_3077, 1
  7733. store i8 %inc_element_3077, i8* %element_addr_3077
  7734. ; <ENTER_INC_DATA 3077
  7735.  
  7736. ; >ENTER_INC_PTR 3078
  7737. %dataptr_3078 = load i32, i32* %dataptr_addr
  7738. %inc_dataptr_3078 = add i32 %dataptr_3078, 5
  7739. store i32 %inc_dataptr_3078, i32* %dataptr_addr
  7740. ; <ENTER_INC_PTR 3078
  7741.  
  7742. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4242
  7743. %dataptr_leave_4242 = load i32, i32* %dataptr_addr
  7744. %element_addr_leave_4242 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4242
  7745. %element_leave_4242 = load i8, i8* %element_addr_leave_4242
  7746. %compare_zero_leave_4242 = icmp ne i8 %element_leave_4242, 0
  7747. br i1 %compare_zero_leave_4242, label %loop_body_4242, label %post_loop_4242
  7748. post_loop_4242:
  7749. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4242
  7750.  
  7751. ; >ENTER_INC_PTR 3084
  7752. %dataptr_3084 = load i32, i32* %dataptr_addr
  7753. %inc_dataptr_3084 = add i32 %dataptr_3084, 3
  7754. store i32 %inc_dataptr_3084, i32* %dataptr_addr
  7755. ; <ENTER_INC_PTR 3084
  7756.  
  7757. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4243
  7758. %dataptr_leave_4243 = load i32, i32* %dataptr_addr
  7759. %element_addr_leave_4243 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4243
  7760. %element_leave_4243 = load i8, i8* %element_addr_leave_4243
  7761. %compare_zero_leave_4243 = icmp ne i8 %element_leave_4243, 0
  7762. br i1 %compare_zero_leave_4243, label %loop_body_4243, label %post_loop_4243
  7763. post_loop_4243:
  7764. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4243
  7765.  
  7766. ; >ENTER_DEC_PTR 3088
  7767. %dataptr_3088 = load i32, i32* %dataptr_addr
  7768. %dec_dataptr_3088 = sub i32 %dataptr_3088, 10
  7769. store i32 %dec_dataptr_3088, i32* %dataptr_addr
  7770. ; <ENTER_DEC_PTR 3088
  7771.  
  7772. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4249
  7773. %dataptr_enter_4249 = load i32, i32* %dataptr_addr
  7774. %element_addr_enter_4249 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4249
  7775. %element_enter_4249 = load i8, i8* %element_addr_enter_4249
  7776. %compare_zero_enter_4249 = icmp eq i8 %element_enter_4249, 0
  7777. br i1 %compare_zero_enter_4249, label %post_loop_4249, label %loop_body_4249
  7778. loop_body_4249:
  7779. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4249
  7780.  
  7781. ; >ENTER_INC_PTR 3100
  7782. %dataptr_3100 = load i32, i32* %dataptr_addr
  7783. %inc_dataptr_3100 = add i32 %dataptr_3100, 9
  7784. store i32 %inc_dataptr_3100, i32* %dataptr_addr
  7785. ; <ENTER_INC_PTR 3100
  7786.  
  7787. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4244
  7788. %dataptr_enter_4244 = load i32, i32* %dataptr_addr
  7789. %element_addr_enter_4244 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4244
  7790. %element_enter_4244 = load i8, i8* %element_addr_enter_4244
  7791. %compare_zero_enter_4244 = icmp eq i8 %element_enter_4244, 0
  7792. br i1 %compare_zero_enter_4244, label %post_loop_4244, label %loop_body_4244
  7793. loop_body_4244:
  7794. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4244
  7795.  
  7796. ; >ENTER_DEC_DATA 3110
  7797. %dataptr_3110 = load i32, i32* %dataptr_addr
  7798. %element_addr_3110 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3110
  7799. %element_3110 = load i8, i8* %element_addr_3110
  7800. %sub_element_3110 = sub i8 %element_3110, 1
  7801. store i8 %sub_element_3110, i8* %element_addr_3110
  7802. ; <ENTER_DEC_DATA 3110
  7803.  
  7804. ; >ENTER_DEC_PTR 3111
  7805. %dataptr_3111 = load i32, i32* %dataptr_addr
  7806. %dec_dataptr_3111 = sub i32 %dataptr_3111, 1
  7807. store i32 %dec_dataptr_3111, i32* %dataptr_addr
  7808. ; <ENTER_DEC_PTR 3111
  7809.  
  7810. ; >ENTER_DEC_DATA 3112
  7811. %dataptr_3112 = load i32, i32* %dataptr_addr
  7812. %element_addr_3112 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3112
  7813. %element_3112 = load i8, i8* %element_addr_3112
  7814. %sub_element_3112 = sub i8 %element_3112, 1
  7815. store i8 %sub_element_3112, i8* %element_addr_3112
  7816. ; <ENTER_DEC_DATA 3112
  7817.  
  7818. ; >ENTER_INC_PTR 3113
  7819. %dataptr_3113 = load i32, i32* %dataptr_addr
  7820. %inc_dataptr_3113 = add i32 %dataptr_3113, 1
  7821. store i32 %inc_dataptr_3113, i32* %dataptr_addr
  7822. ; <ENTER_INC_PTR 3113
  7823.  
  7824. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4244
  7825. %dataptr_leave_4244 = load i32, i32* %dataptr_addr
  7826. %element_addr_leave_4244 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4244
  7827. %element_leave_4244 = load i8, i8* %element_addr_leave_4244
  7828. %compare_zero_leave_4244 = icmp ne i8 %element_leave_4244, 0
  7829. br i1 %compare_zero_leave_4244, label %loop_body_4244, label %post_loop_4244
  7830. post_loop_4244:
  7831. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4244
  7832.  
  7833. ; >ENTER_DEC_PTR 3115
  7834. %dataptr_3115 = load i32, i32* %dataptr_addr
  7835. %dec_dataptr_3115 = sub i32 %dataptr_3115, 1
  7836. store i32 %dec_dataptr_3115, i32* %dataptr_addr
  7837. ; <ENTER_DEC_PTR 3115
  7838.  
  7839. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4248
  7840. %dataptr_enter_4248 = load i32, i32* %dataptr_addr
  7841. %element_addr_enter_4248 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4248
  7842. %element_enter_4248 = load i8, i8* %element_addr_enter_4248
  7843. %compare_zero_enter_4248 = icmp eq i8 %element_enter_4248, 0
  7844. br i1 %compare_zero_enter_4248, label %post_loop_4248, label %loop_body_4248
  7845. loop_body_4248:
  7846. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4248
  7847.  
  7848. ; >ENTER_DEC_PTR 3118
  7849. %dataptr_3118 = load i32, i32* %dataptr_addr
  7850. %dec_dataptr_3118 = sub i32 %dataptr_3118, 8
  7851. store i32 %dec_dataptr_3118, i32* %dataptr_addr
  7852. ; <ENTER_DEC_PTR 3118
  7853.  
  7854. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4247
  7855. %dataptr_enter_4247 = load i32, i32* %dataptr_addr
  7856. %element_addr_enter_4247 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4247
  7857. %element_enter_4247 = load i8, i8* %element_addr_enter_4247
  7858. %compare_zero_enter_4247 = icmp eq i8 %element_enter_4247, 0
  7859. br i1 %compare_zero_enter_4247, label %post_loop_4247, label %loop_body_4247
  7860. loop_body_4247:
  7861. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4247
  7862.  
  7863. ; >ENTER_DEC_PTR 3128
  7864. %dataptr_3128 = load i32, i32* %dataptr_addr
  7865. %dec_dataptr_3128 = sub i32 %dataptr_3128, 2
  7866. store i32 %dec_dataptr_3128, i32* %dataptr_addr
  7867. ; <ENTER_DEC_PTR 3128
  7868.  
  7869. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4245
  7870. %dataptr_enter_4245 = load i32, i32* %dataptr_addr
  7871. %element_addr_enter_4245 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4245
  7872. %element_enter_4245 = load i8, i8* %element_addr_enter_4245
  7873. %compare_zero_enter_4245 = icmp eq i8 %element_enter_4245, 0
  7874. br i1 %compare_zero_enter_4245, label %post_loop_4245, label %loop_body_4245
  7875. loop_body_4245:
  7876. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4245
  7877.  
  7878. ; >ENTER_DEC_DATA 3131
  7879. %dataptr_3131 = load i32, i32* %dataptr_addr
  7880. %element_addr_3131 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3131
  7881. %element_3131 = load i8, i8* %element_addr_3131
  7882. %sub_element_3131 = sub i8 %element_3131, 1
  7883. store i8 %sub_element_3131, i8* %element_addr_3131
  7884. ; <ENTER_DEC_DATA 3131
  7885.  
  7886. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4245
  7887. %dataptr_leave_4245 = load i32, i32* %dataptr_addr
  7888. %element_addr_leave_4245 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4245
  7889. %element_leave_4245 = load i8, i8* %element_addr_leave_4245
  7890. %compare_zero_leave_4245 = icmp ne i8 %element_leave_4245, 0
  7891. br i1 %compare_zero_leave_4245, label %loop_body_4245, label %post_loop_4245
  7892. post_loop_4245:
  7893. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4245
  7894.  
  7895. ; >ENTER_INC_PTR 3133
  7896. %dataptr_3133 = load i32, i32* %dataptr_addr
  7897. %inc_dataptr_3133 = add i32 %dataptr_3133, 10
  7898. store i32 %inc_dataptr_3133, i32* %dataptr_addr
  7899. ; <ENTER_INC_PTR 3133
  7900.  
  7901. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4246
  7902. %dataptr_enter_4246 = load i32, i32* %dataptr_addr
  7903. %element_addr_enter_4246 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4246
  7904. %element_enter_4246 = load i8, i8* %element_addr_enter_4246
  7905. %compare_zero_enter_4246 = icmp eq i8 %element_enter_4246, 0
  7906. br i1 %compare_zero_enter_4246, label %post_loop_4246, label %loop_body_4246
  7907. loop_body_4246:
  7908. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4246
  7909.  
  7910. ; >ENTER_DEC_DATA 3144
  7911. %dataptr_3144 = load i32, i32* %dataptr_addr
  7912. %element_addr_3144 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3144
  7913. %element_3144 = load i8, i8* %element_addr_3144
  7914. %sub_element_3144 = sub i8 %element_3144, 1
  7915. store i8 %sub_element_3144, i8* %element_addr_3144
  7916. ; <ENTER_DEC_DATA 3144
  7917.  
  7918. ; >ENTER_DEC_PTR 3145
  7919. %dataptr_3145 = load i32, i32* %dataptr_addr
  7920. %dec_dataptr_3145 = sub i32 %dataptr_3145, 10
  7921. store i32 %dec_dataptr_3145, i32* %dataptr_addr
  7922. ; <ENTER_DEC_PTR 3145
  7923.  
  7924. ; >ENTER_INC_DATA 3155
  7925. %dataptr_3155 = load i32, i32* %dataptr_addr
  7926. %element_addr_3155 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3155
  7927. %element_3155 = load i8, i8* %element_addr_3155
  7928. %inc_element_3155 = add i8 %element_3155, 1
  7929. store i8 %inc_element_3155, i8* %element_addr_3155
  7930. ; <ENTER_INC_DATA 3155
  7931.  
  7932. ; >ENTER_INC_PTR 3156
  7933. %dataptr_3156 = load i32, i32* %dataptr_addr
  7934. %inc_dataptr_3156 = add i32 %dataptr_3156, 10
  7935. store i32 %inc_dataptr_3156, i32* %dataptr_addr
  7936. ; <ENTER_INC_PTR 3156
  7937.  
  7938. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4246
  7939. %dataptr_leave_4246 = load i32, i32* %dataptr_addr
  7940. %element_addr_leave_4246 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4246
  7941. %element_leave_4246 = load i8, i8* %element_addr_leave_4246
  7942. %compare_zero_leave_4246 = icmp ne i8 %element_leave_4246, 0
  7943. br i1 %compare_zero_leave_4246, label %loop_body_4246, label %post_loop_4246
  7944. post_loop_4246:
  7945. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4246
  7946.  
  7947. ; >ENTER_DEC_PTR 3167
  7948. %dataptr_3167 = load i32, i32* %dataptr_addr
  7949. %dec_dataptr_3167 = sub i32 %dataptr_3167, 18
  7950. store i32 %dec_dataptr_3167, i32* %dataptr_addr
  7951. ; <ENTER_DEC_PTR 3167
  7952.  
  7953. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4247
  7954. %dataptr_leave_4247 = load i32, i32* %dataptr_addr
  7955. %element_addr_leave_4247 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4247
  7956. %element_leave_4247 = load i8, i8* %element_addr_leave_4247
  7957. %compare_zero_leave_4247 = icmp ne i8 %element_leave_4247, 0
  7958. br i1 %compare_zero_leave_4247, label %loop_body_4247, label %post_loop_4247
  7959. post_loop_4247:
  7960. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4247
  7961.  
  7962. ; >ENTER_INC_PTR 3187
  7963. %dataptr_3187 = load i32, i32* %dataptr_addr
  7964. %inc_dataptr_3187 = add i32 %dataptr_3187, 18
  7965. store i32 %inc_dataptr_3187, i32* %dataptr_addr
  7966. ; <ENTER_INC_PTR 3187
  7967.  
  7968. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4248
  7969. %dataptr_leave_4248 = load i32, i32* %dataptr_addr
  7970. %element_addr_leave_4248 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4248
  7971. %element_leave_4248 = load i8, i8* %element_addr_leave_4248
  7972. %compare_zero_leave_4248 = icmp ne i8 %element_leave_4248, 0
  7973. br i1 %compare_zero_leave_4248, label %loop_body_4248, label %post_loop_4248
  7974. post_loop_4248:
  7975. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4248
  7976.  
  7977. ; >ENTER_DEC_PTR 3206
  7978. %dataptr_3206 = load i32, i32* %dataptr_addr
  7979. %dec_dataptr_3206 = sub i32 %dataptr_3206, 18
  7980. store i32 %dec_dataptr_3206, i32* %dataptr_addr
  7981. ; <ENTER_DEC_PTR 3206
  7982.  
  7983. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4249
  7984. %dataptr_leave_4249 = load i32, i32* %dataptr_addr
  7985. %element_addr_leave_4249 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4249
  7986. %element_leave_4249 = load i8, i8* %element_addr_leave_4249
  7987. %compare_zero_leave_4249 = icmp ne i8 %element_leave_4249, 0
  7988. br i1 %compare_zero_leave_4249, label %loop_body_4249, label %post_loop_4249
  7989. post_loop_4249:
  7990. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4249
  7991.  
  7992. ; >ENTER_INC_PTR 3226
  7993. %dataptr_3226 = load i32, i32* %dataptr_addr
  7994. %inc_dataptr_3226 = add i32 %dataptr_3226, 8
  7995. store i32 %inc_dataptr_3226, i32* %dataptr_addr
  7996. ; <ENTER_INC_PTR 3226
  7997.  
  7998. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4261
  7999. %dataptr_enter_4261 = load i32, i32* %dataptr_addr
  8000. %element_addr_enter_4261 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4261
  8001. %element_enter_4261 = load i8, i8* %element_addr_enter_4261
  8002. %compare_zero_enter_4261 = icmp eq i8 %element_enter_4261, 0
  8003. br i1 %compare_zero_enter_4261, label %post_loop_4261, label %loop_body_4261
  8004. loop_body_4261:
  8005. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4261
  8006.  
  8007. ; >ENTER_INC_PTR 3235
  8008. %dataptr_3235 = load i32, i32* %dataptr_addr
  8009. %inc_dataptr_3235 = add i32 %dataptr_3235, 1
  8010. store i32 %inc_dataptr_3235, i32* %dataptr_addr
  8011. ; <ENTER_INC_PTR 3235
  8012.  
  8013. ; >ENTER_DEC_DATA 3236
  8014. %dataptr_3236 = load i32, i32* %dataptr_addr
  8015. %element_addr_3236 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3236
  8016. %element_3236 = load i8, i8* %element_addr_3236
  8017. %sub_element_3236 = sub i8 %element_3236, 1
  8018. store i8 %sub_element_3236, i8* %element_addr_3236
  8019. ; <ENTER_DEC_DATA 3236
  8020.  
  8021. ; >ENTER_DEC_PTR 3237
  8022. %dataptr_3237 = load i32, i32* %dataptr_addr
  8023. %dec_dataptr_3237 = sub i32 %dataptr_3237, 1
  8024. store i32 %dec_dataptr_3237, i32* %dataptr_addr
  8025. ; <ENTER_DEC_PTR 3237
  8026.  
  8027. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4260
  8028. %dataptr_enter_4260 = load i32, i32* %dataptr_addr
  8029. %element_addr_enter_4260 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4260
  8030. %element_enter_4260 = load i8, i8* %element_addr_enter_4260
  8031. %compare_zero_enter_4260 = icmp eq i8 %element_enter_4260, 0
  8032. br i1 %compare_zero_enter_4260, label %post_loop_4260, label %loop_body_4260
  8033. loop_body_4260:
  8034. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4260
  8035.  
  8036. ; >ENTER_INC_DATA 3239
  8037. %dataptr_3239 = load i32, i32* %dataptr_addr
  8038. %element_addr_3239 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3239
  8039. %element_3239 = load i8, i8* %element_addr_3239
  8040. %inc_element_3239 = add i8 %element_3239, 1
  8041. store i8 %inc_element_3239, i8* %element_addr_3239
  8042. ; <ENTER_INC_DATA 3239
  8043.  
  8044. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4259
  8045. %dataptr_enter_4259 = load i32, i32* %dataptr_addr
  8046. %element_addr_enter_4259 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4259
  8047. %element_enter_4259 = load i8, i8* %element_addr_enter_4259
  8048. %compare_zero_enter_4259 = icmp eq i8 %element_enter_4259, 0
  8049. br i1 %compare_zero_enter_4259, label %post_loop_4259, label %loop_body_4259
  8050. loop_body_4259:
  8051. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4259
  8052.  
  8053. ; >ENTER_INC_DATA 3241
  8054. %dataptr_3241 = load i32, i32* %dataptr_addr
  8055. %element_addr_3241 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3241
  8056. %element_3241 = load i8, i8* %element_addr_3241
  8057. %inc_element_3241 = add i8 %element_3241, 1
  8058. store i8 %inc_element_3241, i8* %element_addr_3241
  8059. ; <ENTER_INC_DATA 3241
  8060.  
  8061. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4258
  8062. %dataptr_enter_4258 = load i32, i32* %dataptr_addr
  8063. %element_addr_enter_4258 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4258
  8064. %element_enter_4258 = load i8, i8* %element_addr_enter_4258
  8065. %compare_zero_enter_4258 = icmp eq i8 %element_enter_4258, 0
  8066. br i1 %compare_zero_enter_4258, label %post_loop_4258, label %loop_body_4258
  8067. loop_body_4258:
  8068. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4258
  8069.  
  8070. ; >ENTER_INC_DATA 3243
  8071. %dataptr_3243 = load i32, i32* %dataptr_addr
  8072. %element_addr_3243 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3243
  8073. %element_3243 = load i8, i8* %element_addr_3243
  8074. %inc_element_3243 = add i8 %element_3243, 1
  8075. store i8 %inc_element_3243, i8* %element_addr_3243
  8076. ; <ENTER_INC_DATA 3243
  8077.  
  8078. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4257
  8079. %dataptr_enter_4257 = load i32, i32* %dataptr_addr
  8080. %element_addr_enter_4257 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4257
  8081. %element_enter_4257 = load i8, i8* %element_addr_enter_4257
  8082. %compare_zero_enter_4257 = icmp eq i8 %element_enter_4257, 0
  8083. br i1 %compare_zero_enter_4257, label %post_loop_4257, label %loop_body_4257
  8084. loop_body_4257:
  8085. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4257
  8086.  
  8087. ; >ENTER_INC_DATA 3245
  8088. %dataptr_3245 = load i32, i32* %dataptr_addr
  8089. %element_addr_3245 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3245
  8090. %element_3245 = load i8, i8* %element_addr_3245
  8091. %inc_element_3245 = add i8 %element_3245, 1
  8092. store i8 %inc_element_3245, i8* %element_addr_3245
  8093. ; <ENTER_INC_DATA 3245
  8094.  
  8095. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4256
  8096. %dataptr_enter_4256 = load i32, i32* %dataptr_addr
  8097. %element_addr_enter_4256 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4256
  8098. %element_enter_4256 = load i8, i8* %element_addr_enter_4256
  8099. %compare_zero_enter_4256 = icmp eq i8 %element_enter_4256, 0
  8100. br i1 %compare_zero_enter_4256, label %post_loop_4256, label %loop_body_4256
  8101. loop_body_4256:
  8102. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4256
  8103.  
  8104. ; >ENTER_INC_DATA 3247
  8105. %dataptr_3247 = load i32, i32* %dataptr_addr
  8106. %element_addr_3247 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3247
  8107. %element_3247 = load i8, i8* %element_addr_3247
  8108. %inc_element_3247 = add i8 %element_3247, 1
  8109. store i8 %inc_element_3247, i8* %element_addr_3247
  8110. ; <ENTER_INC_DATA 3247
  8111.  
  8112. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4255
  8113. %dataptr_enter_4255 = load i32, i32* %dataptr_addr
  8114. %element_addr_enter_4255 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4255
  8115. %element_enter_4255 = load i8, i8* %element_addr_enter_4255
  8116. %compare_zero_enter_4255 = icmp eq i8 %element_enter_4255, 0
  8117. br i1 %compare_zero_enter_4255, label %post_loop_4255, label %loop_body_4255
  8118. loop_body_4255:
  8119. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4255
  8120.  
  8121. ; >ENTER_INC_DATA 3249
  8122. %dataptr_3249 = load i32, i32* %dataptr_addr
  8123. %element_addr_3249 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3249
  8124. %element_3249 = load i8, i8* %element_addr_3249
  8125. %inc_element_3249 = add i8 %element_3249, 1
  8126. store i8 %inc_element_3249, i8* %element_addr_3249
  8127. ; <ENTER_INC_DATA 3249
  8128.  
  8129. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4254
  8130. %dataptr_enter_4254 = load i32, i32* %dataptr_addr
  8131. %element_addr_enter_4254 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4254
  8132. %element_enter_4254 = load i8, i8* %element_addr_enter_4254
  8133. %compare_zero_enter_4254 = icmp eq i8 %element_enter_4254, 0
  8134. br i1 %compare_zero_enter_4254, label %post_loop_4254, label %loop_body_4254
  8135. loop_body_4254:
  8136. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4254
  8137.  
  8138. ; >ENTER_INC_DATA 3251
  8139. %dataptr_3251 = load i32, i32* %dataptr_addr
  8140. %element_addr_3251 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3251
  8141. %element_3251 = load i8, i8* %element_addr_3251
  8142. %inc_element_3251 = add i8 %element_3251, 1
  8143. store i8 %inc_element_3251, i8* %element_addr_3251
  8144. ; <ENTER_INC_DATA 3251
  8145.  
  8146. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4253
  8147. %dataptr_enter_4253 = load i32, i32* %dataptr_addr
  8148. %element_addr_enter_4253 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4253
  8149. %element_enter_4253 = load i8, i8* %element_addr_enter_4253
  8150. %compare_zero_enter_4253 = icmp eq i8 %element_enter_4253, 0
  8151. br i1 %compare_zero_enter_4253, label %post_loop_4253, label %loop_body_4253
  8152. loop_body_4253:
  8153. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4253
  8154.  
  8155. ; >ENTER_INC_DATA 3253
  8156. %dataptr_3253 = load i32, i32* %dataptr_addr
  8157. %element_addr_3253 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3253
  8158. %element_3253 = load i8, i8* %element_addr_3253
  8159. %inc_element_3253 = add i8 %element_3253, 1
  8160. store i8 %inc_element_3253, i8* %element_addr_3253
  8161. ; <ENTER_INC_DATA 3253
  8162.  
  8163. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4252
  8164. %dataptr_enter_4252 = load i32, i32* %dataptr_addr
  8165. %element_addr_enter_4252 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4252
  8166. %element_enter_4252 = load i8, i8* %element_addr_enter_4252
  8167. %compare_zero_enter_4252 = icmp eq i8 %element_enter_4252, 0
  8168. br i1 %compare_zero_enter_4252, label %post_loop_4252, label %loop_body_4252
  8169. loop_body_4252:
  8170. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4252
  8171.  
  8172. ; >ENTER_INC_DATA 3255
  8173. %dataptr_3255 = load i32, i32* %dataptr_addr
  8174. %element_addr_3255 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3255
  8175. %element_3255 = load i8, i8* %element_addr_3255
  8176. %inc_element_3255 = add i8 %element_3255, 1
  8177. store i8 %inc_element_3255, i8* %element_addr_3255
  8178. ; <ENTER_INC_DATA 3255
  8179.  
  8180. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4251
  8181. %dataptr_enter_4251 = load i32, i32* %dataptr_addr
  8182. %element_addr_enter_4251 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4251
  8183. %element_enter_4251 = load i8, i8* %element_addr_enter_4251
  8184. %compare_zero_enter_4251 = icmp eq i8 %element_enter_4251, 0
  8185. br i1 %compare_zero_enter_4251, label %post_loop_4251, label %loop_body_4251
  8186. loop_body_4251:
  8187. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4251
  8188.  
  8189. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4250
  8190. %dataptr_enter_4250 = load i32, i32* %dataptr_addr
  8191. %element_addr_enter_4250 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4250
  8192. %element_enter_4250 = load i8, i8* %element_addr_enter_4250
  8193. %compare_zero_enter_4250 = icmp eq i8 %element_enter_4250, 0
  8194. br i1 %compare_zero_enter_4250, label %post_loop_4250, label %loop_body_4250
  8195. loop_body_4250:
  8196. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4250
  8197.  
  8198. ; >ENTER_DEC_DATA 3258
  8199. %dataptr_3258 = load i32, i32* %dataptr_addr
  8200. %element_addr_3258 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3258
  8201. %element_3258 = load i8, i8* %element_addr_3258
  8202. %sub_element_3258 = sub i8 %element_3258, 1
  8203. store i8 %sub_element_3258, i8* %element_addr_3258
  8204. ; <ENTER_DEC_DATA 3258
  8205.  
  8206. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4250
  8207. %dataptr_leave_4250 = load i32, i32* %dataptr_addr
  8208. %element_addr_leave_4250 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4250
  8209. %element_leave_4250 = load i8, i8* %element_addr_leave_4250
  8210. %compare_zero_leave_4250 = icmp ne i8 %element_leave_4250, 0
  8211. br i1 %compare_zero_leave_4250, label %loop_body_4250, label %post_loop_4250
  8212. post_loop_4250:
  8213. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4250
  8214.  
  8215. ; >ENTER_INC_PTR 3260
  8216. %dataptr_3260 = load i32, i32* %dataptr_addr
  8217. %inc_dataptr_3260 = add i32 %dataptr_3260, 1
  8218. store i32 %inc_dataptr_3260, i32* %dataptr_addr
  8219. ; <ENTER_INC_PTR 3260
  8220.  
  8221. ; >ENTER_INC_DATA 3261
  8222. %dataptr_3261 = load i32, i32* %dataptr_addr
  8223. %element_addr_3261 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3261
  8224. %element_3261 = load i8, i8* %element_addr_3261
  8225. %inc_element_3261 = add i8 %element_3261, 1
  8226. store i8 %inc_element_3261, i8* %element_addr_3261
  8227. ; <ENTER_INC_DATA 3261
  8228.  
  8229. ; >ENTER_DEC_PTR 3262
  8230. %dataptr_3262 = load i32, i32* %dataptr_addr
  8231. %dec_dataptr_3262 = sub i32 %dataptr_3262, 1
  8232. store i32 %dec_dataptr_3262, i32* %dataptr_addr
  8233. ; <ENTER_DEC_PTR 3262
  8234.  
  8235. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4251
  8236. %dataptr_leave_4251 = load i32, i32* %dataptr_addr
  8237. %element_addr_leave_4251 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4251
  8238. %element_leave_4251 = load i8, i8* %element_addr_leave_4251
  8239. %compare_zero_leave_4251 = icmp ne i8 %element_leave_4251, 0
  8240. br i1 %compare_zero_leave_4251, label %loop_body_4251, label %post_loop_4251
  8241. post_loop_4251:
  8242. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4251
  8243.  
  8244. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4252
  8245. %dataptr_leave_4252 = load i32, i32* %dataptr_addr
  8246. %element_addr_leave_4252 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4252
  8247. %element_leave_4252 = load i8, i8* %element_addr_leave_4252
  8248. %compare_zero_leave_4252 = icmp ne i8 %element_leave_4252, 0
  8249. br i1 %compare_zero_leave_4252, label %loop_body_4252, label %post_loop_4252
  8250. post_loop_4252:
  8251. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4252
  8252.  
  8253. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4253
  8254. %dataptr_leave_4253 = load i32, i32* %dataptr_addr
  8255. %element_addr_leave_4253 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4253
  8256. %element_leave_4253 = load i8, i8* %element_addr_leave_4253
  8257. %compare_zero_leave_4253 = icmp ne i8 %element_leave_4253, 0
  8258. br i1 %compare_zero_leave_4253, label %loop_body_4253, label %post_loop_4253
  8259. post_loop_4253:
  8260. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4253
  8261.  
  8262. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4254
  8263. %dataptr_leave_4254 = load i32, i32* %dataptr_addr
  8264. %element_addr_leave_4254 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4254
  8265. %element_leave_4254 = load i8, i8* %element_addr_leave_4254
  8266. %compare_zero_leave_4254 = icmp ne i8 %element_leave_4254, 0
  8267. br i1 %compare_zero_leave_4254, label %loop_body_4254, label %post_loop_4254
  8268. post_loop_4254:
  8269. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4254
  8270.  
  8271. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4255
  8272. %dataptr_leave_4255 = load i32, i32* %dataptr_addr
  8273. %element_addr_leave_4255 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4255
  8274. %element_leave_4255 = load i8, i8* %element_addr_leave_4255
  8275. %compare_zero_leave_4255 = icmp ne i8 %element_leave_4255, 0
  8276. br i1 %compare_zero_leave_4255, label %loop_body_4255, label %post_loop_4255
  8277. post_loop_4255:
  8278. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4255
  8279.  
  8280. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4256
  8281. %dataptr_leave_4256 = load i32, i32* %dataptr_addr
  8282. %element_addr_leave_4256 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4256
  8283. %element_leave_4256 = load i8, i8* %element_addr_leave_4256
  8284. %compare_zero_leave_4256 = icmp ne i8 %element_leave_4256, 0
  8285. br i1 %compare_zero_leave_4256, label %loop_body_4256, label %post_loop_4256
  8286. post_loop_4256:
  8287. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4256
  8288.  
  8289. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4257
  8290. %dataptr_leave_4257 = load i32, i32* %dataptr_addr
  8291. %element_addr_leave_4257 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4257
  8292. %element_leave_4257 = load i8, i8* %element_addr_leave_4257
  8293. %compare_zero_leave_4257 = icmp ne i8 %element_leave_4257, 0
  8294. br i1 %compare_zero_leave_4257, label %loop_body_4257, label %post_loop_4257
  8295. post_loop_4257:
  8296. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4257
  8297.  
  8298. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4258
  8299. %dataptr_leave_4258 = load i32, i32* %dataptr_addr
  8300. %element_addr_leave_4258 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4258
  8301. %element_leave_4258 = load i8, i8* %element_addr_leave_4258
  8302. %compare_zero_leave_4258 = icmp ne i8 %element_leave_4258, 0
  8303. br i1 %compare_zero_leave_4258, label %loop_body_4258, label %post_loop_4258
  8304. post_loop_4258:
  8305. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4258
  8306.  
  8307. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4259
  8308. %dataptr_leave_4259 = load i32, i32* %dataptr_addr
  8309. %element_addr_leave_4259 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4259
  8310. %element_leave_4259 = load i8, i8* %element_addr_leave_4259
  8311. %compare_zero_leave_4259 = icmp ne i8 %element_leave_4259, 0
  8312. br i1 %compare_zero_leave_4259, label %loop_body_4259, label %post_loop_4259
  8313. post_loop_4259:
  8314. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4259
  8315.  
  8316. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4260
  8317. %dataptr_leave_4260 = load i32, i32* %dataptr_addr
  8318. %element_addr_leave_4260 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4260
  8319. %element_leave_4260 = load i8, i8* %element_addr_leave_4260
  8320. %compare_zero_leave_4260 = icmp ne i8 %element_leave_4260, 0
  8321. br i1 %compare_zero_leave_4260, label %loop_body_4260, label %post_loop_4260
  8322. post_loop_4260:
  8323. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4260
  8324.  
  8325. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4261
  8326. %dataptr_leave_4261 = load i32, i32* %dataptr_addr
  8327. %element_addr_leave_4261 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4261
  8328. %element_leave_4261 = load i8, i8* %element_addr_leave_4261
  8329. %compare_zero_leave_4261 = icmp ne i8 %element_leave_4261, 0
  8330. br i1 %compare_zero_leave_4261, label %loop_body_4261, label %post_loop_4261
  8331. post_loop_4261:
  8332. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4261
  8333.  
  8334. ; >ENTER_INC_PTR 3274
  8335. %dataptr_3274 = load i32, i32* %dataptr_addr
  8336. %inc_dataptr_3274 = add i32 %dataptr_3274, 1
  8337. store i32 %inc_dataptr_3274, i32* %dataptr_addr
  8338. ; <ENTER_INC_PTR 3274
  8339.  
  8340. ; >ENTER_INC_DATA 3275
  8341. %dataptr_3275 = load i32, i32* %dataptr_addr
  8342. %element_addr_3275 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3275
  8343. %element_3275 = load i8, i8* %element_addr_3275
  8344. %inc_element_3275 = add i8 %element_3275, 1
  8345. store i8 %inc_element_3275, i8* %element_addr_3275
  8346. ; <ENTER_INC_DATA 3275
  8347.  
  8348. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4293
  8349. %dataptr_enter_4293 = load i32, i32* %dataptr_addr
  8350. %element_addr_enter_4293 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4293
  8351. %element_enter_4293 = load i8, i8* %element_addr_enter_4293
  8352. %compare_zero_enter_4293 = icmp eq i8 %element_enter_4293, 0
  8353. br i1 %compare_zero_enter_4293, label %post_loop_4293, label %loop_body_4293
  8354. loop_body_4293:
  8355. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4293
  8356.  
  8357. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4262
  8358. %dataptr_enter_4262 = load i32, i32* %dataptr_addr
  8359. %element_addr_enter_4262 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4262
  8360. %element_enter_4262 = load i8, i8* %element_addr_enter_4262
  8361. %compare_zero_enter_4262 = icmp eq i8 %element_enter_4262, 0
  8362. br i1 %compare_zero_enter_4262, label %post_loop_4262, label %loop_body_4262
  8363. loop_body_4262:
  8364. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4262
  8365.  
  8366. ; >ENTER_DEC_DATA 3280
  8367. %dataptr_3280 = load i32, i32* %dataptr_addr
  8368. %element_addr_3280 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3280
  8369. %element_3280 = load i8, i8* %element_addr_3280
  8370. %sub_element_3280 = sub i8 %element_3280, 1
  8371. store i8 %sub_element_3280, i8* %element_addr_3280
  8372. ; <ENTER_DEC_DATA 3280
  8373.  
  8374. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4262
  8375. %dataptr_leave_4262 = load i32, i32* %dataptr_addr
  8376. %element_addr_leave_4262 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4262
  8377. %element_leave_4262 = load i8, i8* %element_addr_leave_4262
  8378. %compare_zero_leave_4262 = icmp ne i8 %element_leave_4262, 0
  8379. br i1 %compare_zero_leave_4262, label %loop_body_4262, label %post_loop_4262
  8380. post_loop_4262:
  8381. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4262
  8382.  
  8383. ; >ENTER_DEC_PTR 3283
  8384. %dataptr_3283 = load i32, i32* %dataptr_addr
  8385. %dec_dataptr_3283 = sub i32 %dataptr_3283, 1
  8386. store i32 %dec_dataptr_3283, i32* %dataptr_addr
  8387. ; <ENTER_DEC_PTR 3283
  8388.  
  8389. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4263
  8390. %dataptr_enter_4263 = load i32, i32* %dataptr_addr
  8391. %element_addr_enter_4263 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4263
  8392. %element_enter_4263 = load i8, i8* %element_addr_enter_4263
  8393. %compare_zero_enter_4263 = icmp eq i8 %element_enter_4263, 0
  8394. br i1 %compare_zero_enter_4263, label %post_loop_4263, label %loop_body_4263
  8395. loop_body_4263:
  8396. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4263
  8397.  
  8398. ; >ENTER_DEC_DATA 3285
  8399. %dataptr_3285 = load i32, i32* %dataptr_addr
  8400. %element_addr_3285 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3285
  8401. %element_3285 = load i8, i8* %element_addr_3285
  8402. %sub_element_3285 = sub i8 %element_3285, 1
  8403. store i8 %sub_element_3285, i8* %element_addr_3285
  8404. ; <ENTER_DEC_DATA 3285
  8405.  
  8406. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4263
  8407. %dataptr_leave_4263 = load i32, i32* %dataptr_addr
  8408. %element_addr_leave_4263 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4263
  8409. %element_leave_4263 = load i8, i8* %element_addr_leave_4263
  8410. %compare_zero_leave_4263 = icmp ne i8 %element_leave_4263, 0
  8411. br i1 %compare_zero_leave_4263, label %loop_body_4263, label %post_loop_4263
  8412. post_loop_4263:
  8413. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4263
  8414.  
  8415. ; >ENTER_INC_DATA 3287
  8416. %dataptr_3287 = load i32, i32* %dataptr_addr
  8417. %element_addr_3287 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3287
  8418. %element_3287 = load i8, i8* %element_addr_3287
  8419. %inc_element_3287 = add i8 %element_3287, 1
  8420. store i8 %inc_element_3287, i8* %element_addr_3287
  8421. ; <ENTER_INC_DATA 3287
  8422.  
  8423. ; >ENTER_INC_PTR 3288
  8424. %dataptr_3288 = load i32, i32* %dataptr_addr
  8425. %inc_dataptr_3288 = add i32 %dataptr_3288, 4
  8426. store i32 %inc_dataptr_3288, i32* %dataptr_addr
  8427. ; <ENTER_INC_PTR 3288
  8428.  
  8429. ; >ENTER_INC_DATA 3292
  8430. %dataptr_3292 = load i32, i32* %dataptr_addr
  8431. %element_addr_3292 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3292
  8432. %element_3292 = load i8, i8* %element_addr_3292
  8433. %inc_element_3292 = add i8 %element_3292, 1
  8434. store i8 %inc_element_3292, i8* %element_addr_3292
  8435. ; <ENTER_INC_DATA 3292
  8436.  
  8437. ; >ENTER_INC_PTR 3293
  8438. %dataptr_3293 = load i32, i32* %dataptr_addr
  8439. %inc_dataptr_3293 = add i32 %dataptr_3293, 8
  8440. store i32 %inc_dataptr_3293, i32* %dataptr_addr
  8441. ; <ENTER_INC_PTR 3293
  8442.  
  8443. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4264
  8444. %dataptr_enter_4264 = load i32, i32* %dataptr_addr
  8445. %element_addr_enter_4264 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4264
  8446. %element_enter_4264 = load i8, i8* %element_addr_enter_4264
  8447. %compare_zero_enter_4264 = icmp eq i8 %element_enter_4264, 0
  8448. br i1 %compare_zero_enter_4264, label %post_loop_4264, label %loop_body_4264
  8449. loop_body_4264:
  8450. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4264
  8451.  
  8452. ; >ENTER_INC_PTR 3302
  8453. %dataptr_3302 = load i32, i32* %dataptr_addr
  8454. %inc_dataptr_3302 = add i32 %dataptr_3302, 10
  8455. store i32 %inc_dataptr_3302, i32* %dataptr_addr
  8456. ; <ENTER_INC_PTR 3302
  8457.  
  8458. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4264
  8459. %dataptr_leave_4264 = load i32, i32* %dataptr_addr
  8460. %element_addr_leave_4264 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4264
  8461. %element_leave_4264 = load i8, i8* %element_addr_leave_4264
  8462. %compare_zero_leave_4264 = icmp ne i8 %element_leave_4264, 0
  8463. br i1 %compare_zero_leave_4264, label %loop_body_4264, label %post_loop_4264
  8464. post_loop_4264:
  8465. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4264
  8466.  
  8467. ; >ENTER_DEC_PTR 3313
  8468. %dataptr_3313 = load i32, i32* %dataptr_addr
  8469. %dec_dataptr_3313 = sub i32 %dataptr_3313, 10
  8470. store i32 %dec_dataptr_3313, i32* %dataptr_addr
  8471. ; <ENTER_DEC_PTR 3313
  8472.  
  8473. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4267
  8474. %dataptr_enter_4267 = load i32, i32* %dataptr_addr
  8475. %element_addr_enter_4267 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4267
  8476. %element_enter_4267 = load i8, i8* %element_addr_enter_4267
  8477. %compare_zero_enter_4267 = icmp eq i8 %element_enter_4267, 0
  8478. br i1 %compare_zero_enter_4267, label %post_loop_4267, label %loop_body_4267
  8479. loop_body_4267:
  8480. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4267
  8481.  
  8482. ; >ENTER_DEC_PTR 3325
  8483. %dataptr_3325 = load i32, i32* %dataptr_addr
  8484. %dec_dataptr_3325 = sub i32 %dataptr_3325, 6
  8485. store i32 %dec_dataptr_3325, i32* %dataptr_addr
  8486. ; <ENTER_DEC_PTR 3325
  8487.  
  8488. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4266
  8489. %dataptr_enter_4266 = load i32, i32* %dataptr_addr
  8490. %element_addr_enter_4266 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4266
  8491. %element_enter_4266 = load i8, i8* %element_addr_enter_4266
  8492. %compare_zero_enter_4266 = icmp eq i8 %element_enter_4266, 0
  8493. br i1 %compare_zero_enter_4266, label %post_loop_4266, label %loop_body_4266
  8494. loop_body_4266:
  8495. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4266
  8496.  
  8497. ; >ENTER_DEC_PTR 3332
  8498. %dataptr_3332 = load i32, i32* %dataptr_addr
  8499. %dec_dataptr_3332 = sub i32 %dataptr_3332, 4
  8500. store i32 %dec_dataptr_3332, i32* %dataptr_addr
  8501. ; <ENTER_DEC_PTR 3332
  8502.  
  8503. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4265
  8504. %dataptr_enter_4265 = load i32, i32* %dataptr_addr
  8505. %element_addr_enter_4265 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4265
  8506. %element_enter_4265 = load i8, i8* %element_addr_enter_4265
  8507. %compare_zero_enter_4265 = icmp eq i8 %element_enter_4265, 0
  8508. br i1 %compare_zero_enter_4265, label %post_loop_4265, label %loop_body_4265
  8509. loop_body_4265:
  8510. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4265
  8511.  
  8512. ; >ENTER_DEC_PTR 3337
  8513. %dataptr_3337 = load i32, i32* %dataptr_addr
  8514. %dec_dataptr_3337 = sub i32 %dataptr_3337, 10
  8515. store i32 %dec_dataptr_3337, i32* %dataptr_addr
  8516. ; <ENTER_DEC_PTR 3337
  8517.  
  8518. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4265
  8519. %dataptr_leave_4265 = load i32, i32* %dataptr_addr
  8520. %element_addr_leave_4265 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4265
  8521. %element_leave_4265 = load i8, i8* %element_addr_leave_4265
  8522. %compare_zero_leave_4265 = icmp ne i8 %element_leave_4265, 0
  8523. br i1 %compare_zero_leave_4265, label %loop_body_4265, label %post_loop_4265
  8524. post_loop_4265:
  8525. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4265
  8526.  
  8527. ; >ENTER_INC_PTR 3348
  8528. %dataptr_3348 = load i32, i32* %dataptr_addr
  8529. %inc_dataptr_3348 = add i32 %dataptr_3348, 4
  8530. store i32 %inc_dataptr_3348, i32* %dataptr_addr
  8531. ; <ENTER_INC_PTR 3348
  8532.  
  8533. ; >ENTER_INC_DATA 3352
  8534. %dataptr_3352 = load i32, i32* %dataptr_addr
  8535. %element_addr_3352 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3352
  8536. %element_3352 = load i8, i8* %element_addr_3352
  8537. %inc_element_3352 = add i8 %element_3352, 1
  8538. store i8 %inc_element_3352, i8* %element_addr_3352
  8539. ; <ENTER_INC_DATA 3352
  8540.  
  8541. ; >ENTER_DEC_PTR 3353
  8542. %dataptr_3353 = load i32, i32* %dataptr_addr
  8543. %dec_dataptr_3353 = sub i32 %dataptr_3353, 10
  8544. store i32 %dec_dataptr_3353, i32* %dataptr_addr
  8545. ; <ENTER_DEC_PTR 3353
  8546.  
  8547. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4266
  8548. %dataptr_leave_4266 = load i32, i32* %dataptr_addr
  8549. %element_addr_leave_4266 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4266
  8550. %element_leave_4266 = load i8, i8* %element_addr_leave_4266
  8551. %compare_zero_leave_4266 = icmp ne i8 %element_leave_4266, 0
  8552. br i1 %compare_zero_leave_4266, label %loop_body_4266, label %post_loop_4266
  8553. post_loop_4266:
  8554. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4266
  8555.  
  8556. ; >ENTER_DEC_PTR 3364
  8557. %dataptr_3364 = load i32, i32* %dataptr_addr
  8558. %dec_dataptr_3364 = sub i32 %dataptr_3364, 4
  8559. store i32 %dec_dataptr_3364, i32* %dataptr_addr
  8560. ; <ENTER_DEC_PTR 3364
  8561.  
  8562. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4267
  8563. %dataptr_leave_4267 = load i32, i32* %dataptr_addr
  8564. %element_addr_leave_4267 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4267
  8565. %element_leave_4267 = load i8, i8* %element_addr_leave_4267
  8566. %compare_zero_leave_4267 = icmp ne i8 %element_leave_4267, 0
  8567. br i1 %compare_zero_leave_4267, label %loop_body_4267, label %post_loop_4267
  8568. post_loop_4267:
  8569. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4267
  8570.  
  8571. ; >ENTER_INC_PTR 3370
  8572. %dataptr_3370 = load i32, i32* %dataptr_addr
  8573. %inc_dataptr_3370 = add i32 %dataptr_3370, 20
  8574. store i32 %inc_dataptr_3370, i32* %dataptr_addr
  8575. ; <ENTER_INC_PTR 3370
  8576.  
  8577. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4268
  8578. %dataptr_enter_4268 = load i32, i32* %dataptr_addr
  8579. %element_addr_enter_4268 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4268
  8580. %element_enter_4268 = load i8, i8* %element_addr_enter_4268
  8581. %compare_zero_enter_4268 = icmp eq i8 %element_enter_4268, 0
  8582. br i1 %compare_zero_enter_4268, label %post_loop_4268, label %loop_body_4268
  8583. loop_body_4268:
  8584. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4268
  8585.  
  8586. ; >ENTER_INC_PTR 3391
  8587. %dataptr_3391 = load i32, i32* %dataptr_addr
  8588. %inc_dataptr_3391 = add i32 %dataptr_3391, 10
  8589. store i32 %inc_dataptr_3391, i32* %dataptr_addr
  8590. ; <ENTER_INC_PTR 3391
  8591.  
  8592. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4268
  8593. %dataptr_leave_4268 = load i32, i32* %dataptr_addr
  8594. %element_addr_leave_4268 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4268
  8595. %element_leave_4268 = load i8, i8* %element_addr_leave_4268
  8596. %compare_zero_leave_4268 = icmp ne i8 %element_leave_4268, 0
  8597. br i1 %compare_zero_leave_4268, label %loop_body_4268, label %post_loop_4268
  8598. post_loop_4268:
  8599. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4268
  8600.  
  8601. ; >ENTER_DEC_PTR 3402
  8602. %dataptr_3402 = load i32, i32* %dataptr_addr
  8603. %dec_dataptr_3402 = sub i32 %dataptr_3402, 10
  8604. store i32 %dec_dataptr_3402, i32* %dataptr_addr
  8605. ; <ENTER_DEC_PTR 3402
  8606.  
  8607. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4269
  8608. %dataptr_enter_4269 = load i32, i32* %dataptr_addr
  8609. %element_addr_enter_4269 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4269
  8610. %element_enter_4269 = load i8, i8* %element_addr_enter_4269
  8611. %compare_zero_enter_4269 = icmp eq i8 %element_enter_4269, 0
  8612. br i1 %compare_zero_enter_4269, label %post_loop_4269, label %loop_body_4269
  8613. loop_body_4269:
  8614. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4269
  8615.  
  8616. ; >ENTER_DEC_PTR 3413
  8617. %dataptr_3413 = load i32, i32* %dataptr_addr
  8618. %dec_dataptr_3413 = sub i32 %dataptr_3413, 10
  8619. store i32 %dec_dataptr_3413, i32* %dataptr_addr
  8620. ; <ENTER_DEC_PTR 3413
  8621.  
  8622. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4269
  8623. %dataptr_leave_4269 = load i32, i32* %dataptr_addr
  8624. %element_addr_leave_4269 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4269
  8625. %element_leave_4269 = load i8, i8* %element_addr_leave_4269
  8626. %compare_zero_leave_4269 = icmp ne i8 %element_leave_4269, 0
  8627. br i1 %compare_zero_leave_4269, label %loop_body_4269, label %post_loop_4269
  8628. post_loop_4269:
  8629. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4269
  8630.  
  8631. ; >ENTER_INC_PTR 3425
  8632. %dataptr_3425 = load i32, i32* %dataptr_addr
  8633. %inc_dataptr_3425 = add i32 %dataptr_3425, 4
  8634. store i32 %inc_dataptr_3425, i32* %dataptr_addr
  8635. ; <ENTER_INC_PTR 3425
  8636.  
  8637. ; >ENTER_DEC_DATA 3429
  8638. %dataptr_3429 = load i32, i32* %dataptr_addr
  8639. %element_addr_3429 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3429
  8640. %element_3429 = load i8, i8* %element_addr_3429
  8641. %sub_element_3429 = sub i8 %element_3429, 1
  8642. store i8 %sub_element_3429, i8* %element_addr_3429
  8643. ; <ENTER_DEC_DATA 3429
  8644.  
  8645. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4278
  8646. %dataptr_enter_4278 = load i32, i32* %dataptr_addr
  8647. %element_addr_enter_4278 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4278
  8648. %element_enter_4278 = load i8, i8* %element_addr_enter_4278
  8649. %compare_zero_enter_4278 = icmp eq i8 %element_enter_4278, 0
  8650. br i1 %compare_zero_enter_4278, label %post_loop_4278, label %loop_body_4278
  8651. loop_body_4278:
  8652. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4278
  8653.  
  8654. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4270
  8655. %dataptr_enter_4270 = load i32, i32* %dataptr_addr
  8656. %element_addr_enter_4270 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4270
  8657. %element_enter_4270 = load i8, i8* %element_addr_enter_4270
  8658. %compare_zero_enter_4270 = icmp eq i8 %element_enter_4270, 0
  8659. br i1 %compare_zero_enter_4270, label %post_loop_4270, label %loop_body_4270
  8660. loop_body_4270:
  8661. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4270
  8662.  
  8663. ; >ENTER_INC_DATA 3434
  8664. %dataptr_3434 = load i32, i32* %dataptr_addr
  8665. %element_addr_3434 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3434
  8666. %element_3434 = load i8, i8* %element_addr_3434
  8667. %inc_element_3434 = add i8 %element_3434, 1
  8668. store i8 %inc_element_3434, i8* %element_addr_3434
  8669. ; <ENTER_INC_DATA 3434
  8670.  
  8671. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4270
  8672. %dataptr_leave_4270 = load i32, i32* %dataptr_addr
  8673. %element_addr_leave_4270 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4270
  8674. %element_leave_4270 = load i8, i8* %element_addr_leave_4270
  8675. %compare_zero_leave_4270 = icmp ne i8 %element_leave_4270, 0
  8676. br i1 %compare_zero_leave_4270, label %loop_body_4270, label %post_loop_4270
  8677. post_loop_4270:
  8678. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4270
  8679.  
  8680. ; >ENTER_INC_PTR 3437
  8681. %dataptr_3437 = load i32, i32* %dataptr_addr
  8682. %inc_dataptr_3437 = add i32 %dataptr_3437, 8
  8683. store i32 %inc_dataptr_3437, i32* %dataptr_addr
  8684. ; <ENTER_INC_PTR 3437
  8685.  
  8686. ; >ENTER_DEC_DATA 3445
  8687. %dataptr_3445 = load i32, i32* %dataptr_addr
  8688. %element_addr_3445 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3445
  8689. %element_3445 = load i8, i8* %element_addr_3445
  8690. %sub_element_3445 = sub i8 %element_3445, 1
  8691. store i8 %sub_element_3445, i8* %element_addr_3445
  8692. ; <ENTER_DEC_DATA 3445
  8693.  
  8694. ; >ENTER_DEC_PTR 3446
  8695. %dataptr_3446 = load i32, i32* %dataptr_addr
  8696. %dec_dataptr_3446 = sub i32 %dataptr_3446, 2
  8697. store i32 %dec_dataptr_3446, i32* %dataptr_addr
  8698. ; <ENTER_DEC_PTR 3446
  8699.  
  8700. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4273
  8701. %dataptr_enter_4273 = load i32, i32* %dataptr_addr
  8702. %element_addr_enter_4273 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4273
  8703. %element_enter_4273 = load i8, i8* %element_addr_enter_4273
  8704. %compare_zero_enter_4273 = icmp eq i8 %element_enter_4273, 0
  8705. br i1 %compare_zero_enter_4273, label %post_loop_4273, label %loop_body_4273
  8706. loop_body_4273:
  8707. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4273
  8708.  
  8709. ; >ENTER_INC_PTR 3449
  8710. %dataptr_3449 = load i32, i32* %dataptr_addr
  8711. %inc_dataptr_3449 = add i32 %dataptr_3449, 1
  8712. store i32 %inc_dataptr_3449, i32* %dataptr_addr
  8713. ; <ENTER_INC_PTR 3449
  8714.  
  8715. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4271
  8716. %dataptr_enter_4271 = load i32, i32* %dataptr_addr
  8717. %element_addr_enter_4271 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4271
  8718. %element_enter_4271 = load i8, i8* %element_addr_enter_4271
  8719. %compare_zero_enter_4271 = icmp eq i8 %element_enter_4271, 0
  8720. br i1 %compare_zero_enter_4271, label %post_loop_4271, label %loop_body_4271
  8721. loop_body_4271:
  8722. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4271
  8723.  
  8724. ; >ENTER_DEC_DATA 3451
  8725. %dataptr_3451 = load i32, i32* %dataptr_addr
  8726. %element_addr_3451 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3451
  8727. %element_3451 = load i8, i8* %element_addr_3451
  8728. %sub_element_3451 = sub i8 %element_3451, 1
  8729. store i8 %sub_element_3451, i8* %element_addr_3451
  8730. ; <ENTER_DEC_DATA 3451
  8731.  
  8732. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4271
  8733. %dataptr_leave_4271 = load i32, i32* %dataptr_addr
  8734. %element_addr_leave_4271 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4271
  8735. %element_leave_4271 = load i8, i8* %element_addr_leave_4271
  8736. %compare_zero_leave_4271 = icmp ne i8 %element_leave_4271, 0
  8737. br i1 %compare_zero_leave_4271, label %loop_body_4271, label %post_loop_4271
  8738. post_loop_4271:
  8739. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4271
  8740.  
  8741. ; >ENTER_INC_PTR 3453
  8742. %dataptr_3453 = load i32, i32* %dataptr_addr
  8743. %inc_dataptr_3453 = add i32 %dataptr_3453, 2
  8744. store i32 %inc_dataptr_3453, i32* %dataptr_addr
  8745. ; <ENTER_INC_PTR 3453
  8746.  
  8747. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4272
  8748. %dataptr_enter_4272 = load i32, i32* %dataptr_addr
  8749. %element_addr_enter_4272 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4272
  8750. %element_enter_4272 = load i8, i8* %element_addr_enter_4272
  8751. %compare_zero_enter_4272 = icmp eq i8 %element_enter_4272, 0
  8752. br i1 %compare_zero_enter_4272, label %post_loop_4272, label %loop_body_4272
  8753. loop_body_4272:
  8754. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4272
  8755.  
  8756. ; >ENTER_DEC_DATA 3456
  8757. %dataptr_3456 = load i32, i32* %dataptr_addr
  8758. %element_addr_3456 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3456
  8759. %element_3456 = load i8, i8* %element_addr_3456
  8760. %sub_element_3456 = sub i8 %element_3456, 1
  8761. store i8 %sub_element_3456, i8* %element_addr_3456
  8762. ; <ENTER_DEC_DATA 3456
  8763.  
  8764. ; >ENTER_DEC_PTR 3457
  8765. %dataptr_3457 = load i32, i32* %dataptr_addr
  8766. %dec_dataptr_3457 = sub i32 %dataptr_3457, 2
  8767. store i32 %dec_dataptr_3457, i32* %dataptr_addr
  8768. ; <ENTER_DEC_PTR 3457
  8769.  
  8770. ; >ENTER_INC_DATA 3459
  8771. %dataptr_3459 = load i32, i32* %dataptr_addr
  8772. %element_addr_3459 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3459
  8773. %element_3459 = load i8, i8* %element_addr_3459
  8774. %inc_element_3459 = add i8 %element_3459, 1
  8775. store i8 %inc_element_3459, i8* %element_addr_3459
  8776. ; <ENTER_INC_DATA 3459
  8777.  
  8778. ; >ENTER_INC_PTR 3460
  8779. %dataptr_3460 = load i32, i32* %dataptr_addr
  8780. %inc_dataptr_3460 = add i32 %dataptr_3460, 2
  8781. store i32 %inc_dataptr_3460, i32* %dataptr_addr
  8782. ; <ENTER_INC_PTR 3460
  8783.  
  8784. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4272
  8785. %dataptr_leave_4272 = load i32, i32* %dataptr_addr
  8786. %element_addr_leave_4272 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4272
  8787. %element_leave_4272 = load i8, i8* %element_addr_leave_4272
  8788. %compare_zero_leave_4272 = icmp ne i8 %element_leave_4272, 0
  8789. br i1 %compare_zero_leave_4272, label %loop_body_4272, label %post_loop_4272
  8790. post_loop_4272:
  8791. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4272
  8792.  
  8793. ; >ENTER_INC_PTR 3463
  8794. %dataptr_3463 = load i32, i32* %dataptr_addr
  8795. %inc_dataptr_3463 = add i32 %dataptr_3463, 7
  8796. store i32 %inc_dataptr_3463, i32* %dataptr_addr
  8797. ; <ENTER_INC_PTR 3463
  8798.  
  8799. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4273
  8800. %dataptr_leave_4273 = load i32, i32* %dataptr_addr
  8801. %element_addr_leave_4273 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4273
  8802. %element_leave_4273 = load i8, i8* %element_addr_leave_4273
  8803. %compare_zero_leave_4273 = icmp ne i8 %element_leave_4273, 0
  8804. br i1 %compare_zero_leave_4273, label %loop_body_4273, label %post_loop_4273
  8805. post_loop_4273:
  8806. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4273
  8807.  
  8808. ; >ENTER_DEC_PTR 3471
  8809. %dataptr_3471 = load i32, i32* %dataptr_addr
  8810. %dec_dataptr_3471 = sub i32 %dataptr_3471, 10
  8811. store i32 %dec_dataptr_3471, i32* %dataptr_addr
  8812. ; <ENTER_DEC_PTR 3471
  8813.  
  8814. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4275
  8815. %dataptr_enter_4275 = load i32, i32* %dataptr_addr
  8816. %element_addr_enter_4275 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4275
  8817. %element_enter_4275 = load i8, i8* %element_addr_enter_4275
  8818. %compare_zero_enter_4275 = icmp eq i8 %element_enter_4275, 0
  8819. br i1 %compare_zero_enter_4275, label %post_loop_4275, label %loop_body_4275
  8820. loop_body_4275:
  8821. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4275
  8822.  
  8823. ; >ENTER_INC_DATA 3483
  8824. %dataptr_3483 = load i32, i32* %dataptr_addr
  8825. %element_addr_3483 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3483
  8826. %element_3483 = load i8, i8* %element_addr_3483
  8827. %inc_element_3483 = add i8 %element_3483, 1
  8828. store i8 %inc_element_3483, i8* %element_addr_3483
  8829. ; <ENTER_INC_DATA 3483
  8830.  
  8831. ; >ENTER_INC_PTR 3484
  8832. %dataptr_3484 = load i32, i32* %dataptr_addr
  8833. %inc_dataptr_3484 = add i32 %dataptr_3484, 2
  8834. store i32 %inc_dataptr_3484, i32* %dataptr_addr
  8835. ; <ENTER_INC_PTR 3484
  8836.  
  8837. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4274
  8838. %dataptr_enter_4274 = load i32, i32* %dataptr_addr
  8839. %element_addr_enter_4274 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4274
  8840. %element_enter_4274 = load i8, i8* %element_addr_enter_4274
  8841. %compare_zero_enter_4274 = icmp eq i8 %element_enter_4274, 0
  8842. br i1 %compare_zero_enter_4274, label %post_loop_4274, label %loop_body_4274
  8843. loop_body_4274:
  8844. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4274
  8845.  
  8846. ; >ENTER_INC_PTR 3487
  8847. %dataptr_3487 = load i32, i32* %dataptr_addr
  8848. %inc_dataptr_3487 = add i32 %dataptr_3487, 8
  8849. store i32 %inc_dataptr_3487, i32* %dataptr_addr
  8850. ; <ENTER_INC_PTR 3487
  8851.  
  8852. ; >ENTER_INC_DATA 3495
  8853. %dataptr_3495 = load i32, i32* %dataptr_addr
  8854. %element_addr_3495 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3495
  8855. %element_3495 = load i8, i8* %element_addr_3495
  8856. %inc_element_3495 = add i8 %element_3495, 1
  8857. store i8 %inc_element_3495, i8* %element_addr_3495
  8858. ; <ENTER_INC_DATA 3495
  8859.  
  8860. ; >ENTER_INC_PTR 3496
  8861. %dataptr_3496 = load i32, i32* %dataptr_addr
  8862. %inc_dataptr_3496 = add i32 %dataptr_3496, 2
  8863. store i32 %inc_dataptr_3496, i32* %dataptr_addr
  8864. ; <ENTER_INC_PTR 3496
  8865.  
  8866. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4274
  8867. %dataptr_leave_4274 = load i32, i32* %dataptr_addr
  8868. %element_addr_leave_4274 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4274
  8869. %element_leave_4274 = load i8, i8* %element_addr_leave_4274
  8870. %compare_zero_leave_4274 = icmp ne i8 %element_leave_4274, 0
  8871. br i1 %compare_zero_leave_4274, label %loop_body_4274, label %post_loop_4274
  8872. post_loop_4274:
  8873. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4274
  8874.  
  8875. ; >ENTER_DEC_PTR 3499
  8876. %dataptr_3499 = load i32, i32* %dataptr_addr
  8877. %dec_dataptr_3499 = sub i32 %dataptr_3499, 2
  8878. store i32 %dec_dataptr_3499, i32* %dataptr_addr
  8879. ; <ENTER_DEC_PTR 3499
  8880.  
  8881. ; >ENTER_DEC_DATA 3501
  8882. %dataptr_3501 = load i32, i32* %dataptr_addr
  8883. %element_addr_3501 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3501
  8884. %element_3501 = load i8, i8* %element_addr_3501
  8885. %sub_element_3501 = sub i8 %element_3501, 1
  8886. store i8 %sub_element_3501, i8* %element_addr_3501
  8887. ; <ENTER_DEC_DATA 3501
  8888.  
  8889. ; >ENTER_DEC_PTR 3502
  8890. %dataptr_3502 = load i32, i32* %dataptr_addr
  8891. %dec_dataptr_3502 = sub i32 %dataptr_3502, 10
  8892. store i32 %dec_dataptr_3502, i32* %dataptr_addr
  8893. ; <ENTER_DEC_PTR 3502
  8894.  
  8895. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4275
  8896. %dataptr_leave_4275 = load i32, i32* %dataptr_addr
  8897. %element_addr_leave_4275 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4275
  8898. %element_leave_4275 = load i8, i8* %element_addr_leave_4275
  8899. %compare_zero_leave_4275 = icmp ne i8 %element_leave_4275, 0
  8900. br i1 %compare_zero_leave_4275, label %loop_body_4275, label %post_loop_4275
  8901. post_loop_4275:
  8902. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4275
  8903.  
  8904. ; >ENTER_DEC_DATA 3513
  8905. %dataptr_3513 = load i32, i32* %dataptr_addr
  8906. %element_addr_3513 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3513
  8907. %element_3513 = load i8, i8* %element_addr_3513
  8908. %sub_element_3513 = sub i8 %element_3513, 1
  8909. store i8 %sub_element_3513, i8* %element_addr_3513
  8910. ; <ENTER_DEC_DATA 3513
  8911.  
  8912. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4276
  8913. %dataptr_enter_4276 = load i32, i32* %dataptr_addr
  8914. %element_addr_enter_4276 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4276
  8915. %element_enter_4276 = load i8, i8* %element_addr_enter_4276
  8916. %compare_zero_enter_4276 = icmp eq i8 %element_enter_4276, 0
  8917. br i1 %compare_zero_enter_4276, label %post_loop_4276, label %loop_body_4276
  8918. loop_body_4276:
  8919. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4276
  8920.  
  8921. ; >ENTER_INC_PTR 3516
  8922. %dataptr_3516 = load i32, i32* %dataptr_addr
  8923. %inc_dataptr_3516 = add i32 %dataptr_3516, 2
  8924. store i32 %inc_dataptr_3516, i32* %dataptr_addr
  8925. ; <ENTER_INC_PTR 3516
  8926.  
  8927. ; >ENTER_INC_DATA 3518
  8928. %dataptr_3518 = load i32, i32* %dataptr_addr
  8929. %element_addr_3518 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3518
  8930. %element_3518 = load i8, i8* %element_addr_3518
  8931. %inc_element_3518 = add i8 %element_3518, 48
  8932. store i8 %inc_element_3518, i8* %element_addr_3518
  8933. ; <ENTER_INC_DATA 3518
  8934.  
  8935. ; >ENTER_WRITE_STDOUT 3566
  8936. ret i32 3566
  8937. post_3566:
  8938. ; <ENTER_WRITE_STDOUT 3566
  8939.  
  8940. ; >ENTER_DEC_DATA 3568
  8941. %dataptr_3568 = load i32, i32* %dataptr_addr
  8942. %element_addr_3568 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3568
  8943. %element_3568 = load i8, i8* %element_addr_3568
  8944. %sub_element_3568 = sub i8 %element_3568, 48
  8945. store i8 %sub_element_3568, i8* %element_addr_3568
  8946. ; <ENTER_DEC_DATA 3568
  8947.  
  8948. ; >ENTER_DEC_PTR 3616
  8949. %dataptr_3616 = load i32, i32* %dataptr_addr
  8950. %dec_dataptr_3616 = sub i32 %dataptr_3616, 12
  8951. store i32 %dec_dataptr_3616, i32* %dataptr_addr
  8952. ; <ENTER_DEC_PTR 3616
  8953.  
  8954. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4276
  8955. %dataptr_leave_4276 = load i32, i32* %dataptr_addr
  8956. %element_addr_leave_4276 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4276
  8957. %element_leave_4276 = load i8, i8* %element_addr_leave_4276
  8958. %compare_zero_leave_4276 = icmp ne i8 %element_leave_4276, 0
  8959. br i1 %compare_zero_leave_4276, label %loop_body_4276, label %post_loop_4276
  8960. post_loop_4276:
  8961. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4276
  8962.  
  8963. ; >ENTER_INC_DATA 3630
  8964. %dataptr_3630 = load i32, i32* %dataptr_addr
  8965. %element_addr_3630 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3630
  8966. %element_3630 = load i8, i8* %element_addr_3630
  8967. %inc_element_3630 = add i8 %element_3630, 32
  8968. store i8 %inc_element_3630, i8* %element_addr_3630
  8969. ; <ENTER_INC_DATA 3630
  8970.  
  8971. ; >ENTER_WRITE_STDOUT 3662
  8972. ret i32 3662
  8973. post_3662:
  8974. ; <ENTER_WRITE_STDOUT 3662
  8975.  
  8976. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4277
  8977. %dataptr_enter_4277 = load i32, i32* %dataptr_addr
  8978. %element_addr_enter_4277 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4277
  8979. %element_enter_4277 = load i8, i8* %element_addr_enter_4277
  8980. %compare_zero_enter_4277 = icmp eq i8 %element_enter_4277, 0
  8981. br i1 %compare_zero_enter_4277, label %post_loop_4277, label %loop_body_4277
  8982. loop_body_4277:
  8983. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4277
  8984.  
  8985. ; >ENTER_DEC_DATA 3664
  8986. %dataptr_3664 = load i32, i32* %dataptr_addr
  8987. %element_addr_3664 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3664
  8988. %element_3664 = load i8, i8* %element_addr_3664
  8989. %sub_element_3664 = sub i8 %element_3664, 1
  8990. store i8 %sub_element_3664, i8* %element_addr_3664
  8991. ; <ENTER_DEC_DATA 3664
  8992.  
  8993. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4277
  8994. %dataptr_leave_4277 = load i32, i32* %dataptr_addr
  8995. %element_addr_leave_4277 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4277
  8996. %element_leave_4277 = load i8, i8* %element_addr_leave_4277
  8997. %compare_zero_leave_4277 = icmp ne i8 %element_leave_4277, 0
  8998. br i1 %compare_zero_leave_4277, label %loop_body_4277, label %post_loop_4277
  8999. post_loop_4277:
  9000. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4277
  9001.  
  9002. ; >ENTER_INC_PTR 3666
  9003. %dataptr_3666 = load i32, i32* %dataptr_addr
  9004. %inc_dataptr_3666 = add i32 %dataptr_3666, 4
  9005. store i32 %inc_dataptr_3666, i32* %dataptr_addr
  9006. ; <ENTER_INC_PTR 3666
  9007.  
  9008. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4278
  9009. %dataptr_leave_4278 = load i32, i32* %dataptr_addr
  9010. %element_addr_leave_4278 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4278
  9011. %element_leave_4278 = load i8, i8* %element_addr_leave_4278
  9012. %compare_zero_leave_4278 = icmp ne i8 %element_leave_4278, 0
  9013. br i1 %compare_zero_leave_4278, label %loop_body_4278, label %post_loop_4278
  9014. post_loop_4278:
  9015. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4278
  9016.  
  9017. ; >ENTER_INC_PTR 3673
  9018. %dataptr_3673 = load i32, i32* %dataptr_addr
  9019. %inc_dataptr_3673 = add i32 %dataptr_3673, 6
  9020. store i32 %inc_dataptr_3673, i32* %dataptr_addr
  9021. ; <ENTER_INC_PTR 3673
  9022.  
  9023. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4290
  9024. %dataptr_enter_4290 = load i32, i32* %dataptr_addr
  9025. %element_addr_enter_4290 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4290
  9026. %element_enter_4290 = load i8, i8* %element_addr_enter_4290
  9027. %compare_zero_enter_4290 = icmp eq i8 %element_enter_4290, 0
  9028. br i1 %compare_zero_enter_4290, label %post_loop_4290, label %loop_body_4290
  9029. loop_body_4290:
  9030. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4290
  9031.  
  9032. ; >ENTER_INC_PTR 3681
  9033. %dataptr_3681 = load i32, i32* %dataptr_addr
  9034. %inc_dataptr_3681 = add i32 %dataptr_3681, 2
  9035. store i32 %inc_dataptr_3681, i32* %dataptr_addr
  9036. ; <ENTER_INC_PTR 3681
  9037.  
  9038. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4289
  9039. %dataptr_enter_4289 = load i32, i32* %dataptr_addr
  9040. %element_addr_enter_4289 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4289
  9041. %element_enter_4289 = load i8, i8* %element_addr_enter_4289
  9042. %compare_zero_enter_4289 = icmp eq i8 %element_enter_4289, 0
  9043. br i1 %compare_zero_enter_4289, label %post_loop_4289, label %loop_body_4289
  9044. loop_body_4289:
  9045. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4289
  9046.  
  9047. ; >ENTER_DEC_DATA 3684
  9048. %dataptr_3684 = load i32, i32* %dataptr_addr
  9049. %element_addr_3684 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3684
  9050. %element_3684 = load i8, i8* %element_addr_3684
  9051. %sub_element_3684 = sub i8 %element_3684, 1
  9052. store i8 %sub_element_3684, i8* %element_addr_3684
  9053. ; <ENTER_DEC_DATA 3684
  9054.  
  9055. ; >ENTER_INC_PTR 3685
  9056. %dataptr_3685 = load i32, i32* %dataptr_addr
  9057. %inc_dataptr_3685 = add i32 %dataptr_3685, 5
  9058. store i32 %inc_dataptr_3685, i32* %dataptr_addr
  9059. ; <ENTER_INC_PTR 3685
  9060.  
  9061. ; >ENTER_INC_DATA 3690
  9062. %dataptr_3690 = load i32, i32* %dataptr_addr
  9063. %element_addr_3690 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3690
  9064. %element_3690 = load i8, i8* %element_addr_3690
  9065. %inc_element_3690 = add i8 %element_3690, 1
  9066. store i8 %inc_element_3690, i8* %element_addr_3690
  9067. ; <ENTER_INC_DATA 3690
  9068.  
  9069. ; >ENTER_DEC_PTR 3691
  9070. %dataptr_3691 = load i32, i32* %dataptr_addr
  9071. %dec_dataptr_3691 = sub i32 %dataptr_3691, 5
  9072. store i32 %dec_dataptr_3691, i32* %dataptr_addr
  9073. ; <ENTER_DEC_PTR 3691
  9074.  
  9075. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4288
  9076. %dataptr_enter_4288 = load i32, i32* %dataptr_addr
  9077. %element_addr_enter_4288 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4288
  9078. %element_enter_4288 = load i8, i8* %element_addr_enter_4288
  9079. %compare_zero_enter_4288 = icmp eq i8 %element_enter_4288, 0
  9080. br i1 %compare_zero_enter_4288, label %post_loop_4288, label %loop_body_4288
  9081. loop_body_4288:
  9082. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4288
  9083.  
  9084. ; >ENTER_DEC_DATA 3697
  9085. %dataptr_3697 = load i32, i32* %dataptr_addr
  9086. %element_addr_3697 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3697
  9087. %element_3697 = load i8, i8* %element_addr_3697
  9088. %sub_element_3697 = sub i8 %element_3697, 1
  9089. store i8 %sub_element_3697, i8* %element_addr_3697
  9090. ; <ENTER_DEC_DATA 3697
  9091.  
  9092. ; >ENTER_INC_PTR 3698
  9093. %dataptr_3698 = load i32, i32* %dataptr_addr
  9094. %inc_dataptr_3698 = add i32 %dataptr_3698, 5
  9095. store i32 %inc_dataptr_3698, i32* %dataptr_addr
  9096. ; <ENTER_INC_PTR 3698
  9097.  
  9098. ; >ENTER_INC_DATA 3703
  9099. %dataptr_3703 = load i32, i32* %dataptr_addr
  9100. %element_addr_3703 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3703
  9101. %element_3703 = load i8, i8* %element_addr_3703
  9102. %inc_element_3703 = add i8 %element_3703, 1
  9103. store i8 %inc_element_3703, i8* %element_addr_3703
  9104. ; <ENTER_INC_DATA 3703
  9105.  
  9106. ; >ENTER_DEC_PTR 3704
  9107. %dataptr_3704 = load i32, i32* %dataptr_addr
  9108. %dec_dataptr_3704 = sub i32 %dataptr_3704, 5
  9109. store i32 %dec_dataptr_3704, i32* %dataptr_addr
  9110. ; <ENTER_DEC_PTR 3704
  9111.  
  9112. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4287
  9113. %dataptr_enter_4287 = load i32, i32* %dataptr_addr
  9114. %element_addr_enter_4287 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4287
  9115. %element_enter_4287 = load i8, i8* %element_addr_enter_4287
  9116. %compare_zero_enter_4287 = icmp eq i8 %element_enter_4287, 0
  9117. br i1 %compare_zero_enter_4287, label %post_loop_4287, label %loop_body_4287
  9118. loop_body_4287:
  9119. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4287
  9120.  
  9121. ; >ENTER_DEC_DATA 3711
  9122. %dataptr_3711 = load i32, i32* %dataptr_addr
  9123. %element_addr_3711 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3711
  9124. %element_3711 = load i8, i8* %element_addr_3711
  9125. %sub_element_3711 = sub i8 %element_3711, 1
  9126. store i8 %sub_element_3711, i8* %element_addr_3711
  9127. ; <ENTER_DEC_DATA 3711
  9128.  
  9129. ; >ENTER_INC_PTR 3712
  9130. %dataptr_3712 = load i32, i32* %dataptr_addr
  9131. %inc_dataptr_3712 = add i32 %dataptr_3712, 5
  9132. store i32 %inc_dataptr_3712, i32* %dataptr_addr
  9133. ; <ENTER_INC_PTR 3712
  9134.  
  9135. ; >ENTER_INC_DATA 3717
  9136. %dataptr_3717 = load i32, i32* %dataptr_addr
  9137. %element_addr_3717 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3717
  9138. %element_3717 = load i8, i8* %element_addr_3717
  9139. %inc_element_3717 = add i8 %element_3717, 1
  9140. store i8 %inc_element_3717, i8* %element_addr_3717
  9141. ; <ENTER_INC_DATA 3717
  9142.  
  9143. ; >ENTER_DEC_PTR 3718
  9144. %dataptr_3718 = load i32, i32* %dataptr_addr
  9145. %dec_dataptr_3718 = sub i32 %dataptr_3718, 5
  9146. store i32 %dec_dataptr_3718, i32* %dataptr_addr
  9147. ; <ENTER_DEC_PTR 3718
  9148.  
  9149. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4286
  9150. %dataptr_enter_4286 = load i32, i32* %dataptr_addr
  9151. %element_addr_enter_4286 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4286
  9152. %element_enter_4286 = load i8, i8* %element_addr_enter_4286
  9153. %compare_zero_enter_4286 = icmp eq i8 %element_enter_4286, 0
  9154. br i1 %compare_zero_enter_4286, label %post_loop_4286, label %loop_body_4286
  9155. loop_body_4286:
  9156. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4286
  9157.  
  9158. ; >ENTER_DEC_DATA 3724
  9159. %dataptr_3724 = load i32, i32* %dataptr_addr
  9160. %element_addr_3724 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3724
  9161. %element_3724 = load i8, i8* %element_addr_3724
  9162. %sub_element_3724 = sub i8 %element_3724, 1
  9163. store i8 %sub_element_3724, i8* %element_addr_3724
  9164. ; <ENTER_DEC_DATA 3724
  9165.  
  9166. ; >ENTER_INC_PTR 3725
  9167. %dataptr_3725 = load i32, i32* %dataptr_addr
  9168. %inc_dataptr_3725 = add i32 %dataptr_3725, 5
  9169. store i32 %inc_dataptr_3725, i32* %dataptr_addr
  9170. ; <ENTER_INC_PTR 3725
  9171.  
  9172. ; >ENTER_INC_DATA 3730
  9173. %dataptr_3730 = load i32, i32* %dataptr_addr
  9174. %element_addr_3730 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3730
  9175. %element_3730 = load i8, i8* %element_addr_3730
  9176. %inc_element_3730 = add i8 %element_3730, 1
  9177. store i8 %inc_element_3730, i8* %element_addr_3730
  9178. ; <ENTER_INC_DATA 3730
  9179.  
  9180. ; >ENTER_DEC_PTR 3731
  9181. %dataptr_3731 = load i32, i32* %dataptr_addr
  9182. %dec_dataptr_3731 = sub i32 %dataptr_3731, 5
  9183. store i32 %dec_dataptr_3731, i32* %dataptr_addr
  9184. ; <ENTER_DEC_PTR 3731
  9185.  
  9186. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4285
  9187. %dataptr_enter_4285 = load i32, i32* %dataptr_addr
  9188. %element_addr_enter_4285 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4285
  9189. %element_enter_4285 = load i8, i8* %element_addr_enter_4285
  9190. %compare_zero_enter_4285 = icmp eq i8 %element_enter_4285, 0
  9191. br i1 %compare_zero_enter_4285, label %post_loop_4285, label %loop_body_4285
  9192. loop_body_4285:
  9193. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4285
  9194.  
  9195. ; >ENTER_DEC_DATA 3738
  9196. %dataptr_3738 = load i32, i32* %dataptr_addr
  9197. %element_addr_3738 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3738
  9198. %element_3738 = load i8, i8* %element_addr_3738
  9199. %sub_element_3738 = sub i8 %element_3738, 1
  9200. store i8 %sub_element_3738, i8* %element_addr_3738
  9201. ; <ENTER_DEC_DATA 3738
  9202.  
  9203. ; >ENTER_INC_PTR 3739
  9204. %dataptr_3739 = load i32, i32* %dataptr_addr
  9205. %inc_dataptr_3739 = add i32 %dataptr_3739, 5
  9206. store i32 %inc_dataptr_3739, i32* %dataptr_addr
  9207. ; <ENTER_INC_PTR 3739
  9208.  
  9209. ; >ENTER_INC_DATA 3744
  9210. %dataptr_3744 = load i32, i32* %dataptr_addr
  9211. %element_addr_3744 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3744
  9212. %element_3744 = load i8, i8* %element_addr_3744
  9213. %inc_element_3744 = add i8 %element_3744, 1
  9214. store i8 %inc_element_3744, i8* %element_addr_3744
  9215. ; <ENTER_INC_DATA 3744
  9216.  
  9217. ; >ENTER_DEC_PTR 3745
  9218. %dataptr_3745 = load i32, i32* %dataptr_addr
  9219. %dec_dataptr_3745 = sub i32 %dataptr_3745, 5
  9220. store i32 %dec_dataptr_3745, i32* %dataptr_addr
  9221. ; <ENTER_DEC_PTR 3745
  9222.  
  9223. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4284
  9224. %dataptr_enter_4284 = load i32, i32* %dataptr_addr
  9225. %element_addr_enter_4284 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4284
  9226. %element_enter_4284 = load i8, i8* %element_addr_enter_4284
  9227. %compare_zero_enter_4284 = icmp eq i8 %element_enter_4284, 0
  9228. br i1 %compare_zero_enter_4284, label %post_loop_4284, label %loop_body_4284
  9229. loop_body_4284:
  9230. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4284
  9231.  
  9232. ; >ENTER_DEC_DATA 3751
  9233. %dataptr_3751 = load i32, i32* %dataptr_addr
  9234. %element_addr_3751 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3751
  9235. %element_3751 = load i8, i8* %element_addr_3751
  9236. %sub_element_3751 = sub i8 %element_3751, 1
  9237. store i8 %sub_element_3751, i8* %element_addr_3751
  9238. ; <ENTER_DEC_DATA 3751
  9239.  
  9240. ; >ENTER_INC_PTR 3752
  9241. %dataptr_3752 = load i32, i32* %dataptr_addr
  9242. %inc_dataptr_3752 = add i32 %dataptr_3752, 5
  9243. store i32 %inc_dataptr_3752, i32* %dataptr_addr
  9244. ; <ENTER_INC_PTR 3752
  9245.  
  9246. ; >ENTER_INC_DATA 3757
  9247. %dataptr_3757 = load i32, i32* %dataptr_addr
  9248. %element_addr_3757 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3757
  9249. %element_3757 = load i8, i8* %element_addr_3757
  9250. %inc_element_3757 = add i8 %element_3757, 1
  9251. store i8 %inc_element_3757, i8* %element_addr_3757
  9252. ; <ENTER_INC_DATA 3757
  9253.  
  9254. ; >ENTER_DEC_PTR 3758
  9255. %dataptr_3758 = load i32, i32* %dataptr_addr
  9256. %dec_dataptr_3758 = sub i32 %dataptr_3758, 5
  9257. store i32 %dec_dataptr_3758, i32* %dataptr_addr
  9258. ; <ENTER_DEC_PTR 3758
  9259.  
  9260. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4283
  9261. %dataptr_enter_4283 = load i32, i32* %dataptr_addr
  9262. %element_addr_enter_4283 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4283
  9263. %element_enter_4283 = load i8, i8* %element_addr_enter_4283
  9264. %compare_zero_enter_4283 = icmp eq i8 %element_enter_4283, 0
  9265. br i1 %compare_zero_enter_4283, label %post_loop_4283, label %loop_body_4283
  9266. loop_body_4283:
  9267. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4283
  9268.  
  9269. ; >ENTER_DEC_DATA 3765
  9270. %dataptr_3765 = load i32, i32* %dataptr_addr
  9271. %element_addr_3765 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3765
  9272. %element_3765 = load i8, i8* %element_addr_3765
  9273. %sub_element_3765 = sub i8 %element_3765, 1
  9274. store i8 %sub_element_3765, i8* %element_addr_3765
  9275. ; <ENTER_DEC_DATA 3765
  9276.  
  9277. ; >ENTER_INC_PTR 3766
  9278. %dataptr_3766 = load i32, i32* %dataptr_addr
  9279. %inc_dataptr_3766 = add i32 %dataptr_3766, 5
  9280. store i32 %inc_dataptr_3766, i32* %dataptr_addr
  9281. ; <ENTER_INC_PTR 3766
  9282.  
  9283. ; >ENTER_INC_DATA 3771
  9284. %dataptr_3771 = load i32, i32* %dataptr_addr
  9285. %element_addr_3771 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3771
  9286. %element_3771 = load i8, i8* %element_addr_3771
  9287. %inc_element_3771 = add i8 %element_3771, 1
  9288. store i8 %inc_element_3771, i8* %element_addr_3771
  9289. ; <ENTER_INC_DATA 3771
  9290.  
  9291. ; >ENTER_DEC_PTR 3772
  9292. %dataptr_3772 = load i32, i32* %dataptr_addr
  9293. %dec_dataptr_3772 = sub i32 %dataptr_3772, 5
  9294. store i32 %dec_dataptr_3772, i32* %dataptr_addr
  9295. ; <ENTER_DEC_PTR 3772
  9296.  
  9297. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4282
  9298. %dataptr_enter_4282 = load i32, i32* %dataptr_addr
  9299. %element_addr_enter_4282 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4282
  9300. %element_enter_4282 = load i8, i8* %element_addr_enter_4282
  9301. %compare_zero_enter_4282 = icmp eq i8 %element_enter_4282, 0
  9302. br i1 %compare_zero_enter_4282, label %post_loop_4282, label %loop_body_4282
  9303. loop_body_4282:
  9304. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4282
  9305.  
  9306. ; >ENTER_DEC_DATA 3778
  9307. %dataptr_3778 = load i32, i32* %dataptr_addr
  9308. %element_addr_3778 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3778
  9309. %element_3778 = load i8, i8* %element_addr_3778
  9310. %sub_element_3778 = sub i8 %element_3778, 1
  9311. store i8 %sub_element_3778, i8* %element_addr_3778
  9312. ; <ENTER_DEC_DATA 3778
  9313.  
  9314. ; >ENTER_INC_PTR 3779
  9315. %dataptr_3779 = load i32, i32* %dataptr_addr
  9316. %inc_dataptr_3779 = add i32 %dataptr_3779, 5
  9317. store i32 %inc_dataptr_3779, i32* %dataptr_addr
  9318. ; <ENTER_INC_PTR 3779
  9319.  
  9320. ; >ENTER_INC_DATA 3784
  9321. %dataptr_3784 = load i32, i32* %dataptr_addr
  9322. %element_addr_3784 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3784
  9323. %element_3784 = load i8, i8* %element_addr_3784
  9324. %inc_element_3784 = add i8 %element_3784, 1
  9325. store i8 %inc_element_3784, i8* %element_addr_3784
  9326. ; <ENTER_INC_DATA 3784
  9327.  
  9328. ; >ENTER_DEC_PTR 3785
  9329. %dataptr_3785 = load i32, i32* %dataptr_addr
  9330. %dec_dataptr_3785 = sub i32 %dataptr_3785, 5
  9331. store i32 %dec_dataptr_3785, i32* %dataptr_addr
  9332. ; <ENTER_DEC_PTR 3785
  9333.  
  9334. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4281
  9335. %dataptr_enter_4281 = load i32, i32* %dataptr_addr
  9336. %element_addr_enter_4281 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4281
  9337. %element_enter_4281 = load i8, i8* %element_addr_enter_4281
  9338. %compare_zero_enter_4281 = icmp eq i8 %element_enter_4281, 0
  9339. br i1 %compare_zero_enter_4281, label %post_loop_4281, label %loop_body_4281
  9340. loop_body_4281:
  9341. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4281
  9342.  
  9343. ; >ENTER_DEC_DATA 3792
  9344. %dataptr_3792 = load i32, i32* %dataptr_addr
  9345. %element_addr_3792 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3792
  9346. %element_3792 = load i8, i8* %element_addr_3792
  9347. %sub_element_3792 = sub i8 %element_3792, 1
  9348. store i8 %sub_element_3792, i8* %element_addr_3792
  9349. ; <ENTER_DEC_DATA 3792
  9350.  
  9351. ; >ENTER_INC_PTR 3793
  9352. %dataptr_3793 = load i32, i32* %dataptr_addr
  9353. %inc_dataptr_3793 = add i32 %dataptr_3793, 5
  9354. store i32 %inc_dataptr_3793, i32* %dataptr_addr
  9355. ; <ENTER_INC_PTR 3793
  9356.  
  9357. ; >ENTER_INC_DATA 3798
  9358. %dataptr_3798 = load i32, i32* %dataptr_addr
  9359. %element_addr_3798 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3798
  9360. %element_3798 = load i8, i8* %element_addr_3798
  9361. %inc_element_3798 = add i8 %element_3798, 1
  9362. store i8 %inc_element_3798, i8* %element_addr_3798
  9363. ; <ENTER_INC_DATA 3798
  9364.  
  9365. ; >ENTER_DEC_PTR 3799
  9366. %dataptr_3799 = load i32, i32* %dataptr_addr
  9367. %dec_dataptr_3799 = sub i32 %dataptr_3799, 5
  9368. store i32 %dec_dataptr_3799, i32* %dataptr_addr
  9369. ; <ENTER_DEC_PTR 3799
  9370.  
  9371. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4280
  9372. %dataptr_enter_4280 = load i32, i32* %dataptr_addr
  9373. %element_addr_enter_4280 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4280
  9374. %element_enter_4280 = load i8, i8* %element_addr_enter_4280
  9375. %compare_zero_enter_4280 = icmp eq i8 %element_enter_4280, 0
  9376. br i1 %compare_zero_enter_4280, label %post_loop_4280, label %loop_body_4280
  9377. loop_body_4280:
  9378. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4280
  9379.  
  9380. ; >ENTER_DEC_DATA 3805
  9381. %dataptr_3805 = load i32, i32* %dataptr_addr
  9382. %element_addr_3805 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3805
  9383. %element_3805 = load i8, i8* %element_addr_3805
  9384. %sub_element_3805 = sub i8 %element_3805, 1
  9385. store i8 %sub_element_3805, i8* %element_addr_3805
  9386. ; <ENTER_DEC_DATA 3805
  9387.  
  9388. ; >ENTER_INC_PTR 3806
  9389. %dataptr_3806 = load i32, i32* %dataptr_addr
  9390. %inc_dataptr_3806 = add i32 %dataptr_3806, 5
  9391. store i32 %inc_dataptr_3806, i32* %dataptr_addr
  9392. ; <ENTER_INC_PTR 3806
  9393.  
  9394. ; >ENTER_DEC_DATA 3811
  9395. %dataptr_3811 = load i32, i32* %dataptr_addr
  9396. %element_addr_3811 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3811
  9397. %element_3811 = load i8, i8* %element_addr_3811
  9398. %sub_element_3811 = sub i8 %element_3811, 9
  9399. store i8 %sub_element_3811, i8* %element_addr_3811
  9400. ; <ENTER_DEC_DATA 3811
  9401.  
  9402. ; >ENTER_INC_PTR 3820
  9403. %dataptr_3820 = load i32, i32* %dataptr_addr
  9404. %inc_dataptr_3820 = add i32 %dataptr_3820, 5
  9405. store i32 %inc_dataptr_3820, i32* %dataptr_addr
  9406. ; <ENTER_INC_PTR 3820
  9407.  
  9408. ; >ENTER_INC_DATA 3825
  9409. %dataptr_3825 = load i32, i32* %dataptr_addr
  9410. %element_addr_3825 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3825
  9411. %element_3825 = load i8, i8* %element_addr_3825
  9412. %inc_element_3825 = add i8 %element_3825, 1
  9413. store i8 %inc_element_3825, i8* %element_addr_3825
  9414. ; <ENTER_INC_DATA 3825
  9415.  
  9416. ; >ENTER_DEC_PTR 3826
  9417. %dataptr_3826 = load i32, i32* %dataptr_addr
  9418. %dec_dataptr_3826 = sub i32 %dataptr_3826, 10
  9419. store i32 %dec_dataptr_3826, i32* %dataptr_addr
  9420. ; <ENTER_DEC_PTR 3826
  9421.  
  9422. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4279
  9423. %dataptr_enter_4279 = load i32, i32* %dataptr_addr
  9424. %element_addr_enter_4279 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4279
  9425. %element_enter_4279 = load i8, i8* %element_addr_enter_4279
  9426. %compare_zero_enter_4279 = icmp eq i8 %element_enter_4279, 0
  9427. br i1 %compare_zero_enter_4279, label %post_loop_4279, label %loop_body_4279
  9428. loop_body_4279:
  9429. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4279
  9430.  
  9431. ; >ENTER_DEC_DATA 3838
  9432. %dataptr_3838 = load i32, i32* %dataptr_addr
  9433. %element_addr_3838 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3838
  9434. %element_3838 = load i8, i8* %element_addr_3838
  9435. %sub_element_3838 = sub i8 %element_3838, 1
  9436. store i8 %sub_element_3838, i8* %element_addr_3838
  9437. ; <ENTER_DEC_DATA 3838
  9438.  
  9439. ; >ENTER_INC_PTR 3839
  9440. %dataptr_3839 = load i32, i32* %dataptr_addr
  9441. %inc_dataptr_3839 = add i32 %dataptr_3839, 5
  9442. store i32 %inc_dataptr_3839, i32* %dataptr_addr
  9443. ; <ENTER_INC_PTR 3839
  9444.  
  9445. ; >ENTER_INC_DATA 3844
  9446. %dataptr_3844 = load i32, i32* %dataptr_addr
  9447. %element_addr_3844 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3844
  9448. %element_3844 = load i8, i8* %element_addr_3844
  9449. %inc_element_3844 = add i8 %element_3844, 1
  9450. store i8 %inc_element_3844, i8* %element_addr_3844
  9451. ; <ENTER_INC_DATA 3844
  9452.  
  9453. ; >ENTER_DEC_PTR 3845
  9454. %dataptr_3845 = load i32, i32* %dataptr_addr
  9455. %dec_dataptr_3845 = sub i32 %dataptr_3845, 5
  9456. store i32 %dec_dataptr_3845, i32* %dataptr_addr
  9457. ; <ENTER_DEC_PTR 3845
  9458.  
  9459. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4279
  9460. %dataptr_leave_4279 = load i32, i32* %dataptr_addr
  9461. %element_addr_leave_4279 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4279
  9462. %element_leave_4279 = load i8, i8* %element_addr_leave_4279
  9463. %compare_zero_leave_4279 = icmp ne i8 %element_leave_4279, 0
  9464. br i1 %compare_zero_leave_4279, label %loop_body_4279, label %post_loop_4279
  9465. post_loop_4279:
  9466. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4279
  9467.  
  9468. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4280
  9469. %dataptr_leave_4280 = load i32, i32* %dataptr_addr
  9470. %element_addr_leave_4280 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4280
  9471. %element_leave_4280 = load i8, i8* %element_addr_leave_4280
  9472. %compare_zero_leave_4280 = icmp ne i8 %element_leave_4280, 0
  9473. br i1 %compare_zero_leave_4280, label %loop_body_4280, label %post_loop_4280
  9474. post_loop_4280:
  9475. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4280
  9476.  
  9477. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4281
  9478. %dataptr_leave_4281 = load i32, i32* %dataptr_addr
  9479. %element_addr_leave_4281 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4281
  9480. %element_leave_4281 = load i8, i8* %element_addr_leave_4281
  9481. %compare_zero_leave_4281 = icmp ne i8 %element_leave_4281, 0
  9482. br i1 %compare_zero_leave_4281, label %loop_body_4281, label %post_loop_4281
  9483. post_loop_4281:
  9484. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4281
  9485.  
  9486. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4282
  9487. %dataptr_leave_4282 = load i32, i32* %dataptr_addr
  9488. %element_addr_leave_4282 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4282
  9489. %element_leave_4282 = load i8, i8* %element_addr_leave_4282
  9490. %compare_zero_leave_4282 = icmp ne i8 %element_leave_4282, 0
  9491. br i1 %compare_zero_leave_4282, label %loop_body_4282, label %post_loop_4282
  9492. post_loop_4282:
  9493. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4282
  9494.  
  9495. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4283
  9496. %dataptr_leave_4283 = load i32, i32* %dataptr_addr
  9497. %element_addr_leave_4283 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4283
  9498. %element_leave_4283 = load i8, i8* %element_addr_leave_4283
  9499. %compare_zero_leave_4283 = icmp ne i8 %element_leave_4283, 0
  9500. br i1 %compare_zero_leave_4283, label %loop_body_4283, label %post_loop_4283
  9501. post_loop_4283:
  9502. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4283
  9503.  
  9504. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4284
  9505. %dataptr_leave_4284 = load i32, i32* %dataptr_addr
  9506. %element_addr_leave_4284 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4284
  9507. %element_leave_4284 = load i8, i8* %element_addr_leave_4284
  9508. %compare_zero_leave_4284 = icmp ne i8 %element_leave_4284, 0
  9509. br i1 %compare_zero_leave_4284, label %loop_body_4284, label %post_loop_4284
  9510. post_loop_4284:
  9511. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4284
  9512.  
  9513. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4285
  9514. %dataptr_leave_4285 = load i32, i32* %dataptr_addr
  9515. %element_addr_leave_4285 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4285
  9516. %element_leave_4285 = load i8, i8* %element_addr_leave_4285
  9517. %compare_zero_leave_4285 = icmp ne i8 %element_leave_4285, 0
  9518. br i1 %compare_zero_leave_4285, label %loop_body_4285, label %post_loop_4285
  9519. post_loop_4285:
  9520. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4285
  9521.  
  9522. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4286
  9523. %dataptr_leave_4286 = load i32, i32* %dataptr_addr
  9524. %element_addr_leave_4286 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4286
  9525. %element_leave_4286 = load i8, i8* %element_addr_leave_4286
  9526. %compare_zero_leave_4286 = icmp ne i8 %element_leave_4286, 0
  9527. br i1 %compare_zero_leave_4286, label %loop_body_4286, label %post_loop_4286
  9528. post_loop_4286:
  9529. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4286
  9530.  
  9531. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4287
  9532. %dataptr_leave_4287 = load i32, i32* %dataptr_addr
  9533. %element_addr_leave_4287 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4287
  9534. %element_leave_4287 = load i8, i8* %element_addr_leave_4287
  9535. %compare_zero_leave_4287 = icmp ne i8 %element_leave_4287, 0
  9536. br i1 %compare_zero_leave_4287, label %loop_body_4287, label %post_loop_4287
  9537. post_loop_4287:
  9538. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4287
  9539.  
  9540. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4288
  9541. %dataptr_leave_4288 = load i32, i32* %dataptr_addr
  9542. %element_addr_leave_4288 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4288
  9543. %element_leave_4288 = load i8, i8* %element_addr_leave_4288
  9544. %compare_zero_leave_4288 = icmp ne i8 %element_leave_4288, 0
  9545. br i1 %compare_zero_leave_4288, label %loop_body_4288, label %post_loop_4288
  9546. post_loop_4288:
  9547. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4288
  9548.  
  9549. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4289
  9550. %dataptr_leave_4289 = load i32, i32* %dataptr_addr
  9551. %element_addr_leave_4289 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4289
  9552. %element_leave_4289 = load i8, i8* %element_addr_leave_4289
  9553. %compare_zero_leave_4289 = icmp ne i8 %element_leave_4289, 0
  9554. br i1 %compare_zero_leave_4289, label %loop_body_4289, label %post_loop_4289
  9555. post_loop_4289:
  9556. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4289
  9557.  
  9558. ; >ENTER_INC_PTR 3861
  9559. %dataptr_3861 = load i32, i32* %dataptr_addr
  9560. %inc_dataptr_3861 = add i32 %dataptr_3861, 8
  9561. store i32 %inc_dataptr_3861, i32* %dataptr_addr
  9562. ; <ENTER_INC_PTR 3861
  9563.  
  9564. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4290
  9565. %dataptr_leave_4290 = load i32, i32* %dataptr_addr
  9566. %element_addr_leave_4290 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4290
  9567. %element_leave_4290 = load i8, i8* %element_addr_leave_4290
  9568. %compare_zero_leave_4290 = icmp ne i8 %element_leave_4290, 0
  9569. br i1 %compare_zero_leave_4290, label %loop_body_4290, label %post_loop_4290
  9570. post_loop_4290:
  9571. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4290
  9572.  
  9573. ; >ENTER_DEC_PTR 3871
  9574. %dataptr_3871 = load i32, i32* %dataptr_addr
  9575. %dec_dataptr_3871 = sub i32 %dataptr_3871, 10
  9576. store i32 %dec_dataptr_3871, i32* %dataptr_addr
  9577. ; <ENTER_DEC_PTR 3871
  9578.  
  9579. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4292
  9580. %dataptr_enter_4292 = load i32, i32* %dataptr_addr
  9581. %element_addr_enter_4292 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4292
  9582. %element_enter_4292 = load i8, i8* %element_addr_enter_4292
  9583. %compare_zero_enter_4292 = icmp eq i8 %element_enter_4292, 0
  9584. br i1 %compare_zero_enter_4292, label %post_loop_4292, label %loop_body_4292
  9585. loop_body_4292:
  9586. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4292
  9587.  
  9588. ; >ENTER_INC_PTR 3882
  9589. %dataptr_3882 = load i32, i32* %dataptr_addr
  9590. %inc_dataptr_3882 = add i32 %dataptr_3882, 7
  9591. store i32 %inc_dataptr_3882, i32* %dataptr_addr
  9592. ; <ENTER_INC_PTR 3882
  9593.  
  9594. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4291
  9595. %dataptr_enter_4291 = load i32, i32* %dataptr_addr
  9596. %element_addr_enter_4291 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4291
  9597. %element_enter_4291 = load i8, i8* %element_addr_enter_4291
  9598. %compare_zero_enter_4291 = icmp eq i8 %element_enter_4291, 0
  9599. br i1 %compare_zero_enter_4291, label %post_loop_4291, label %loop_body_4291
  9600. loop_body_4291:
  9601. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4291
  9602.  
  9603. ; >ENTER_DEC_DATA 3890
  9604. %dataptr_3890 = load i32, i32* %dataptr_addr
  9605. %element_addr_3890 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3890
  9606. %element_3890 = load i8, i8* %element_addr_3890
  9607. %sub_element_3890 = sub i8 %element_3890, 1
  9608. store i8 %sub_element_3890, i8* %element_addr_3890
  9609. ; <ENTER_DEC_DATA 3890
  9610.  
  9611. ; >ENTER_DEC_PTR 3891
  9612. %dataptr_3891 = load i32, i32* %dataptr_addr
  9613. %dec_dataptr_3891 = sub i32 %dataptr_3891, 5
  9614. store i32 %dec_dataptr_3891, i32* %dataptr_addr
  9615. ; <ENTER_DEC_PTR 3891
  9616.  
  9617. ; >ENTER_INC_DATA 3896
  9618. %dataptr_3896 = load i32, i32* %dataptr_addr
  9619. %element_addr_3896 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3896
  9620. %element_3896 = load i8, i8* %element_addr_3896
  9621. %inc_element_3896 = add i8 %element_3896, 1
  9622. store i8 %inc_element_3896, i8* %element_addr_3896
  9623. ; <ENTER_INC_DATA 3896
  9624.  
  9625. ; >ENTER_INC_PTR 3897
  9626. %dataptr_3897 = load i32, i32* %dataptr_addr
  9627. %inc_dataptr_3897 = add i32 %dataptr_3897, 5
  9628. store i32 %inc_dataptr_3897, i32* %dataptr_addr
  9629. ; <ENTER_INC_PTR 3897
  9630.  
  9631. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4291
  9632. %dataptr_leave_4291 = load i32, i32* %dataptr_addr
  9633. %element_addr_leave_4291 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4291
  9634. %element_leave_4291 = load i8, i8* %element_addr_leave_4291
  9635. %compare_zero_leave_4291 = icmp ne i8 %element_leave_4291, 0
  9636. br i1 %compare_zero_leave_4291, label %loop_body_4291, label %post_loop_4291
  9637. post_loop_4291:
  9638. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4291
  9639.  
  9640. ; >ENTER_DEC_PTR 3903
  9641. %dataptr_3903 = load i32, i32* %dataptr_addr
  9642. %dec_dataptr_3903 = sub i32 %dataptr_3903, 17
  9643. store i32 %dec_dataptr_3903, i32* %dataptr_addr
  9644. ; <ENTER_DEC_PTR 3903
  9645.  
  9646. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4292
  9647. %dataptr_leave_4292 = load i32, i32* %dataptr_addr
  9648. %element_addr_leave_4292 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4292
  9649. %element_leave_4292 = load i8, i8* %element_addr_leave_4292
  9650. %compare_zero_leave_4292 = icmp ne i8 %element_leave_4292, 0
  9651. br i1 %compare_zero_leave_4292, label %loop_body_4292, label %post_loop_4292
  9652. post_loop_4292:
  9653. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4292
  9654.  
  9655. ; >ENTER_INC_PTR 3922
  9656. %dataptr_3922 = load i32, i32* %dataptr_addr
  9657. %inc_dataptr_3922 = add i32 %dataptr_3922, 9
  9658. store i32 %inc_dataptr_3922, i32* %dataptr_addr
  9659. ; <ENTER_INC_PTR 3922
  9660.  
  9661. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4293
  9662. %dataptr_leave_4293 = load i32, i32* %dataptr_addr
  9663. %element_addr_leave_4293 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4293
  9664. %element_leave_4293 = load i8, i8* %element_addr_leave_4293
  9665. %compare_zero_leave_4293 = icmp ne i8 %element_leave_4293, 0
  9666. br i1 %compare_zero_leave_4293, label %loop_body_4293, label %post_loop_4293
  9667. post_loop_4293:
  9668. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4293
  9669.  
  9670. ; >ENTER_DEC_PTR 3933
  9671. %dataptr_3933 = load i32, i32* %dataptr_addr
  9672. %dec_dataptr_3933 = sub i32 %dataptr_3933, 1
  9673. store i32 %dec_dataptr_3933, i32* %dataptr_addr
  9674. ; <ENTER_DEC_PTR 3933
  9675.  
  9676. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4294
  9677. %dataptr_leave_4294 = load i32, i32* %dataptr_addr
  9678. %element_addr_leave_4294 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4294
  9679. %element_leave_4294 = load i8, i8* %element_addr_leave_4294
  9680. %compare_zero_leave_4294 = icmp ne i8 %element_leave_4294, 0
  9681. br i1 %compare_zero_leave_4294, label %loop_body_4294, label %post_loop_4294
  9682. post_loop_4294:
  9683. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4294
  9684.  
  9685. ; >ENTER_INC_PTR 3936
  9686. %dataptr_3936 = load i32, i32* %dataptr_addr
  9687. %inc_dataptr_3936 = add i32 %dataptr_3936, 2
  9688. store i32 %inc_dataptr_3936, i32* %dataptr_addr
  9689. ; <ENTER_INC_PTR 3936
  9690.  
  9691. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4295
  9692. %dataptr_enter_4295 = load i32, i32* %dataptr_addr
  9693. %element_addr_enter_4295 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4295
  9694. %element_enter_4295 = load i8, i8* %element_addr_enter_4295
  9695. %compare_zero_enter_4295 = icmp eq i8 %element_enter_4295, 0
  9696. br i1 %compare_zero_enter_4295, label %post_loop_4295, label %loop_body_4295
  9697. loop_body_4295:
  9698. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4295
  9699.  
  9700. ; >ENTER_INC_PTR 3940
  9701. %dataptr_3940 = load i32, i32* %dataptr_addr
  9702. %inc_dataptr_3940 = add i32 %dataptr_3940, 10
  9703. store i32 %inc_dataptr_3940, i32* %dataptr_addr
  9704. ; <ENTER_INC_PTR 3940
  9705.  
  9706. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4295
  9707. %dataptr_leave_4295 = load i32, i32* %dataptr_addr
  9708. %element_addr_leave_4295 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4295
  9709. %element_leave_4295 = load i8, i8* %element_addr_leave_4295
  9710. %compare_zero_leave_4295 = icmp ne i8 %element_leave_4295, 0
  9711. br i1 %compare_zero_leave_4295, label %loop_body_4295, label %post_loop_4295
  9712. post_loop_4295:
  9713. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4295
  9714.  
  9715. ; >ENTER_DEC_PTR 3951
  9716. %dataptr_3951 = load i32, i32* %dataptr_addr
  9717. %dec_dataptr_3951 = sub i32 %dataptr_3951, 10
  9718. store i32 %dec_dataptr_3951, i32* %dataptr_addr
  9719. ; <ENTER_DEC_PTR 3951
  9720.  
  9721. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4297
  9722. %dataptr_enter_4297 = load i32, i32* %dataptr_addr
  9723. %element_addr_enter_4297 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4297
  9724. %element_enter_4297 = load i8, i8* %element_addr_enter_4297
  9725. %compare_zero_enter_4297 = icmp eq i8 %element_enter_4297, 0
  9726. br i1 %compare_zero_enter_4297, label %post_loop_4297, label %loop_body_4297
  9727. loop_body_4297:
  9728. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4297
  9729.  
  9730. ; >ENTER_INC_DATA 3962
  9731. %dataptr_3962 = load i32, i32* %dataptr_addr
  9732. %element_addr_3962 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3962
  9733. %element_3962 = load i8, i8* %element_addr_3962
  9734. %inc_element_3962 = add i8 %element_3962, 1
  9735. store i8 %inc_element_3962, i8* %element_addr_3962
  9736. ; <ENTER_INC_DATA 3962
  9737.  
  9738. ; >ENTER_INC_PTR 3963
  9739. %dataptr_3963 = load i32, i32* %dataptr_addr
  9740. %inc_dataptr_3963 = add i32 %dataptr_3963, 1
  9741. store i32 %inc_dataptr_3963, i32* %dataptr_addr
  9742. ; <ENTER_INC_PTR 3963
  9743.  
  9744. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4296
  9745. %dataptr_enter_4296 = load i32, i32* %dataptr_addr
  9746. %element_addr_enter_4296 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4296
  9747. %element_enter_4296 = load i8, i8* %element_addr_enter_4296
  9748. %compare_zero_enter_4296 = icmp eq i8 %element_enter_4296, 0
  9749. br i1 %compare_zero_enter_4296, label %post_loop_4296, label %loop_body_4296
  9750. loop_body_4296:
  9751. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4296
  9752.  
  9753. ; >ENTER_INC_PTR 3965
  9754. %dataptr_3965 = load i32, i32* %dataptr_addr
  9755. %inc_dataptr_3965 = add i32 %dataptr_3965, 9
  9756. store i32 %inc_dataptr_3965, i32* %dataptr_addr
  9757. ; <ENTER_INC_PTR 3965
  9758.  
  9759. ; >ENTER_INC_DATA 3974
  9760. %dataptr_3974 = load i32, i32* %dataptr_addr
  9761. %element_addr_3974 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3974
  9762. %element_3974 = load i8, i8* %element_addr_3974
  9763. %inc_element_3974 = add i8 %element_3974, 1
  9764. store i8 %inc_element_3974, i8* %element_addr_3974
  9765. ; <ENTER_INC_DATA 3974
  9766.  
  9767. ; >ENTER_INC_PTR 3975
  9768. %dataptr_3975 = load i32, i32* %dataptr_addr
  9769. %inc_dataptr_3975 = add i32 %dataptr_3975, 1
  9770. store i32 %inc_dataptr_3975, i32* %dataptr_addr
  9771. ; <ENTER_INC_PTR 3975
  9772.  
  9773. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4296
  9774. %dataptr_leave_4296 = load i32, i32* %dataptr_addr
  9775. %element_addr_leave_4296 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4296
  9776. %element_leave_4296 = load i8, i8* %element_addr_leave_4296
  9777. %compare_zero_leave_4296 = icmp ne i8 %element_leave_4296, 0
  9778. br i1 %compare_zero_leave_4296, label %loop_body_4296, label %post_loop_4296
  9779. post_loop_4296:
  9780. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4296
  9781.  
  9782. ; >ENTER_DEC_PTR 3977
  9783. %dataptr_3977 = load i32, i32* %dataptr_addr
  9784. %dec_dataptr_3977 = sub i32 %dataptr_3977, 1
  9785. store i32 %dec_dataptr_3977, i32* %dataptr_addr
  9786. ; <ENTER_DEC_PTR 3977
  9787.  
  9788. ; >ENTER_DEC_DATA 3978
  9789. %dataptr_3978 = load i32, i32* %dataptr_addr
  9790. %element_addr_3978 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3978
  9791. %element_3978 = load i8, i8* %element_addr_3978
  9792. %sub_element_3978 = sub i8 %element_3978, 1
  9793. store i8 %sub_element_3978, i8* %element_addr_3978
  9794. ; <ENTER_DEC_DATA 3978
  9795.  
  9796. ; >ENTER_DEC_PTR 3979
  9797. %dataptr_3979 = load i32, i32* %dataptr_addr
  9798. %dec_dataptr_3979 = sub i32 %dataptr_3979, 10
  9799. store i32 %dec_dataptr_3979, i32* %dataptr_addr
  9800. ; <ENTER_DEC_PTR 3979
  9801.  
  9802. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4297
  9803. %dataptr_leave_4297 = load i32, i32* %dataptr_addr
  9804. %element_addr_leave_4297 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4297
  9805. %element_leave_4297 = load i8, i8* %element_addr_leave_4297
  9806. %compare_zero_leave_4297 = icmp ne i8 %element_leave_4297, 0
  9807. br i1 %compare_zero_leave_4297, label %loop_body_4297, label %post_loop_4297
  9808. post_loop_4297:
  9809. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4297
  9810.  
  9811. ; >ENTER_DEC_DATA 3990
  9812. %dataptr_3990 = load i32, i32* %dataptr_addr
  9813. %element_addr_3990 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3990
  9814. %element_3990 = load i8, i8* %element_addr_3990
  9815. %sub_element_3990 = sub i8 %element_3990, 1
  9816. store i8 %sub_element_3990, i8* %element_addr_3990
  9817. ; <ENTER_DEC_DATA 3990
  9818.  
  9819. ; >ENTER_LOOP_IF_DATA_NOT_ZERO 4298
  9820. %dataptr_enter_4298 = load i32, i32* %dataptr_addr
  9821. %element_addr_enter_4298 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_enter_4298
  9822. %element_enter_4298 = load i8, i8* %element_addr_enter_4298
  9823. %compare_zero_enter_4298 = icmp eq i8 %element_enter_4298, 0
  9824. br i1 %compare_zero_enter_4298, label %post_loop_4298, label %loop_body_4298
  9825. loop_body_4298:
  9826. ; <ENTER_LOOP_IF_DATA_NOT_ZERO 4298
  9827.  
  9828. ; >ENTER_INC_PTR 3993
  9829. %dataptr_3993 = load i32, i32* %dataptr_addr
  9830. %inc_dataptr_3993 = add i32 %dataptr_3993, 1
  9831. store i32 %inc_dataptr_3993, i32* %dataptr_addr
  9832. ; <ENTER_INC_PTR 3993
  9833.  
  9834. ; >ENTER_INC_DATA 3994
  9835. %dataptr_3994 = load i32, i32* %dataptr_addr
  9836. %element_addr_3994 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_3994
  9837. %element_3994 = load i8, i8* %element_addr_3994
  9838. %inc_element_3994 = add i8 %element_3994, 48
  9839. store i8 %inc_element_3994, i8* %element_addr_3994
  9840. ; <ENTER_INC_DATA 3994
  9841.  
  9842. ; >ENTER_WRITE_STDOUT 4042
  9843. ret i32 4042
  9844. post_4042:
  9845. ; <ENTER_WRITE_STDOUT 4042
  9846.  
  9847. ; >ENTER_DEC_PTR 4043
  9848. %dataptr_4043 = load i32, i32* %dataptr_addr
  9849. %dec_dataptr_4043 = sub i32 %dataptr_4043, 11
  9850. store i32 %dec_dataptr_4043, i32* %dataptr_addr
  9851. ; <ENTER_DEC_PTR 4043
  9852.  
  9853. ; >LEAVE_LOOP_IF_DATA_NOT_ZERO 4298
  9854. %dataptr_leave_4298 = load i32, i32* %dataptr_addr
  9855. %element_addr_leave_4298 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_leave_4298
  9856. %element_leave_4298 = load i8, i8* %element_addr_leave_4298
  9857. %compare_zero_leave_4298 = icmp ne i8 %element_leave_4298, 0
  9858. br i1 %compare_zero_leave_4298, label %loop_body_4298, label %post_loop_4298
  9859. post_loop_4298:
  9860. ; <LEAVE_LOOP_IF_DATA_NOT_ZERO 4298
  9861.  
  9862. ; >ENTER_INC_DATA 4056
  9863. %dataptr_4056 = load i32, i32* %dataptr_addr
  9864. %element_addr_4056 = getelementptr inbounds i8, i8* %memory, i32 %dataptr_4056
  9865. %element_4056 = load i8, i8* %element_addr_4056
  9866. %inc_element_4056 = add i8 %element_4056, 10
  9867. store i8 %inc_element_4056, i8* %element_addr_4056
  9868. ; <ENTER_INC_DATA 4056
  9869.  
  9870. ; >ENTER_WRITE_STDOUT 4066
  9871. ret i32 4066
  9872. post_4066:
  9873. ; <ENTER_WRITE_STDOUT 4066
  9874.  
  9875. ; >LEAVE_PROGRAM 4300
  9876. ret i32 0
  9877. }
  9878. ; <LEAVE_PROGRAM 4300
  9879.  
  9880. Time: 1.887 ms
  9881. joel=#*
Add Comment
Please, Sign In to add comment