Advertisement
Guest User

Untitled

a guest
Feb 19th, 2019
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.69 KB | None | 0 0
  1. shader: MESA_SHADER_KERNEL
  2. local-size: 0, 0, 0 (variable)
  3. shared-size: 1
  4. inputs: 3
  5. outputs: 0
  6. uniforms: 0
  7. shared: 0
  8. decl_var shader_in INTERP_MODE_NONE uint64_t @0 (0.x, 0, 0)
  9. decl_var shader_in INTERP_MODE_NONE struct @1 (1, 32, 0)
  10. decl_var shader_in INTERP_MODE_NONE struct @2 (2, 64, 0)
  11. decl_function main (0 params)
  12.  
  13. impl main {
  14. decl_var INTERP_MODE_NONE struct copy_in
  15. decl_var INTERP_MODE_NONE struct copy_in@3
  16. decl_var INTERP_MODE_NONE struct @4
  17. decl_var INTERP_MODE_NONE struct @5
  18. decl_var INTERP_MODE_NONE struct @6
  19. decl_var INTERP_MODE_NONE struct @7
  20. decl_var INTERP_MODE_NONE struct @8
  21. decl_var INTERP_MODE_NONE struct @9
  22. decl_var INTERP_MODE_NONE struct @10
  23. decl_var INTERP_MODE_NONE uint phi
  24. decl_var INTERP_MODE_NONE uint64_t return_tmp
  25. decl_var INTERP_MODE_NONE bool cont
  26. decl_var INTERP_MODE_NONE uint phi@11
  27. decl_var INTERP_MODE_NONE bool phi@12
  28. decl_var INTERP_MODE_NONE struct @13
  29. decl_var INTERP_MODE_NONE uint64_t return_tmp@14
  30. decl_var INTERP_MODE_NONE uint64_t return_tmp@15
  31. decl_var INTERP_MODE_NONE struct @16
  32. decl_var INTERP_MODE_NONE struct @17
  33. decl_var INTERP_MODE_NONE struct @18
  34. decl_var INTERP_MODE_NONE uint64_t return_tmp@19
  35. decl_var INTERP_MODE_NONE uint64_t return_tmp@20
  36. decl_var INTERP_MODE_NONE uint64_t return_tmp@21
  37. decl_var INTERP_MODE_NONE uint64_t return_tmp@22
  38. decl_var INTERP_MODE_NONE uint phi@23
  39. decl_var INTERP_MODE_NONE uint64_t phi@24
  40. decl_var INTERP_MODE_NONE uint64_t return_tmp@25
  41. decl_var INTERP_MODE_NONE uint64_t return_tmp@26
  42. decl_var INTERP_MODE_NONE uint64_t return_tmp@27
  43. decl_var INTERP_MODE_NONE bool cont@28
  44. decl_var INTERP_MODE_NONE uint64_t phi@29
  45. decl_var INTERP_MODE_NONE uint phi@30
  46. decl_var INTERP_MODE_NONE bool phi@31
  47. decl_var INTERP_MODE_NONE uint64_t phi@32
  48. decl_var INTERP_MODE_NONE uint64_t return_tmp@33
  49. block block_0:
  50. /* preds: */
  51. vec1 64 ssa_0 = undefined
  52. vec1 64 ssa_1 = load_const (0x 0 /* 0.000000 */)
  53. vec1 64 ssa_2 = intrinsic load_input (ssa_1) (0, 0) /* base=0 */ /* component=0 */
  54. vec1 64 ssa_3 = load_const (0x 8 /* 0.000000 */)
  55. vec1 64 ssa_4 = deref_var &copy_in (function_temp struct)
  56. vec1 64 ssa_5 = load_const (0x 0 /* 0.000000 */)
  57. vec1 64 ssa_6 = iadd ssa_3, ssa_5
  58. vec1 64 ssa_7 = deref_struct &ssa_4->field0 (function_temp struct) /* &copy_in.field0 */
  59. vec1 64 ssa_8 = load_const (0x 0 /* 0.000000 */)
  60. vec1 64 ssa_9 = iadd ssa_6, ssa_8
  61. vec1 64 ssa_10 = deref_struct &ssa_7->field0 (function_temp uint64_t[1]) /* &copy_in.field0.field0 */
  62. vec1 64 ssa_11 = load_const (0x 0 /* 0.000000 */)
  63. vec1 64 ssa_12 = load_const (0x 8 /* 0.000000 */)
  64. vec1 64 ssa_13 = imul ssa_11, ssa_12
  65. vec1 64 ssa_14 = iadd ssa_9, ssa_13
  66. vec1 64 ssa_15 = deref_array &(*ssa_10)[0] (function_temp uint64_t) /* &copy_in.field0.field0[0] */
  67. vec1 64 ssa_16 = intrinsic load_input (ssa_14) (0, 0) /* base=0 */ /* component=0 */
  68. intrinsic store_deref (ssa_15, ssa_16) (1, 0) /* wrmask=x */ /* access=0 */
  69. vec1 64 ssa_17 = load_const (0x 10 /* 0.000000 */)
  70. vec1 64 ssa_18 = deref_var &copy_in@3 (function_temp struct)
  71. vec1 64 ssa_19 = load_const (0x 0 /* 0.000000 */)
  72. vec1 64 ssa_20 = iadd ssa_17, ssa_19
  73. vec1 64 ssa_21 = deref_struct &ssa_18->field0 (function_temp struct) /* &copy_in@3.field0 */
  74. vec1 64 ssa_22 = load_const (0x 0 /* 0.000000 */)
  75. vec1 64 ssa_23 = iadd ssa_20, ssa_22
  76. vec1 64 ssa_24 = deref_struct &ssa_21->field0 (function_temp uint64_t[1]) /* &copy_in@3.field0.field0 */
  77. vec1 64 ssa_25 = load_const (0x 8 /* 0.000000 */)
  78. vec1 64 ssa_26 = imul ssa_11, ssa_25
  79. vec1 64 ssa_27 = iadd ssa_23, ssa_26
  80. vec1 64 ssa_28 = deref_array &(*ssa_24)[0] (function_temp uint64_t) /* &copy_in@3.field0.field0[0] */
  81. vec1 64 ssa_29 = intrinsic load_input (ssa_27) (0, 0) /* base=0 */ /* component=0 */
  82. intrinsic store_deref (ssa_28, ssa_29) (1, 0) /* wrmask=x */ /* access=0 */
  83. vec1 1 ssa_30 = load_const (true)
  84. vec1 1 ssa_31 = load_const (false)
  85. vec1 32 ssa_32 = undefined
  86. vec1 32 ssa_33 = load_const (0x00000000 /* 0.000000 */)
  87. vec1 32 ssa_34 = load_const (0x00000001 /* 0.000000 */)
  88. vec1 64 ssa_35 = deref_var &@6 (function_temp struct)
  89. vec1 64 ssa_36 = deref_struct &ssa_35->field0 (function_temp struct) /* &@6.field0 */
  90. vec1 64 ssa_37 = deref_var &@7 (function_temp struct)
  91. vec1 64 ssa_38 = deref_cast (uint8_t *)ssa_37 (function_temp uint8_t)
  92. vec1 64 ssa_39 = deref_cast (uint8_t *)ssa_4 (function_temp uint8_t)
  93. vec1 64 ssa_40 = deref_cast (uint64_t *)ssa_39 (function_temp uint64_t)
  94. vec1 64 ssa_41 = deref_cast (uint64_t *)ssa_38 (function_temp uint64_t)
  95. vec1 64 ssa_42 = intrinsic load_deref (ssa_40) (0) /* access=0 */
  96. intrinsic store_deref (ssa_41, ssa_42) (1, 0) /* wrmask=x */ /* access=0 */
  97. vec1 64 ssa_43 = deref_var &@8 (function_temp struct)
  98. vec1 64 ssa_44 = deref_cast (uint8_t *)ssa_43 (function_temp uint8_t)
  99. vec1 64 ssa_45 = deref_cast (uint8_t *)ssa_18 (function_temp uint8_t)
  100. vec1 64 ssa_46 = deref_cast (uint64_t *)ssa_45 (function_temp uint64_t)
  101. vec1 64 ssa_47 = deref_cast (uint64_t *)ssa_44 (function_temp uint64_t)
  102. vec1 64 ssa_48 = intrinsic load_deref (ssa_46) (0) /* access=0 */
  103. intrinsic store_deref (ssa_47, ssa_48) (1, 0) /* wrmask=x */ /* access=0 */
  104. vec1 64 ssa_49 = deref_var &@4 (function_temp struct)
  105. vec1 64 ssa_50 = deref_cast (uint8_t *)ssa_49 (function_temp uint8_t)
  106. vec1 64 ssa_51 = deref_cast (uint64_t *)ssa_50 (function_temp uint64_t)
  107. vec1 64 ssa_52 = intrinsic load_deref (ssa_47) (0) /* access=0 */
  108. intrinsic store_deref (ssa_51, ssa_52) (1, 0) /* wrmask=x */ /* access=0 */
  109. vec1 64 ssa_53 = deref_var &@5 (function_temp struct)
  110. vec1 64 ssa_54 = deref_cast (uint8_t *)ssa_53 (function_temp uint8_t)
  111. vec1 64 ssa_55 = deref_cast (uint64_t *)ssa_54 (function_temp uint64_t)
  112. vec1 64 ssa_56 = intrinsic load_deref (ssa_41) (0) /* access=0 */
  113. intrinsic store_deref (ssa_55, ssa_56) (1, 0) /* wrmask=x */ /* access=0 */
  114. vec1 64 ssa_57 = deref_struct &ssa_36->field0 (function_temp struct) /* &@6.field0.field0 */
  115. vec1 64 ssa_58 = deref_struct &ssa_57->field1 (function_temp uint64_t) /* &@6.field0.field0.field1 */
  116. intrinsic store_deref (ssa_58, ssa_2) (1, 0) /* wrmask=x */ /* access=0 */
  117. vec1 64 ssa_59 = deref_struct &ssa_57->field2 (function_temp struct) /* &@6.field0.field0.field2 */
  118. vec1 64 ssa_60 = deref_cast (uint8_t *)ssa_59 (function_temp uint8_t)
  119. vec1 64 ssa_61 = deref_cast (uint64_t *)ssa_60 (function_temp uint64_t)
  120. vec1 64 ssa_62 = intrinsic load_deref (ssa_55) (0) /* access=0 */
  121. intrinsic store_deref (ssa_61, ssa_62) (1, 0) /* wrmask=x */ /* access=0 */
  122. vec1 64 ssa_63 = deref_struct &ssa_57->field3 (function_temp struct) /* &@6.field0.field0.field3 */
  123. vec1 64 ssa_64 = deref_cast (uint8_t *)ssa_63 (function_temp uint8_t)
  124. vec1 64 ssa_65 = deref_cast (uint64_t *)ssa_64 (function_temp uint64_t)
  125. vec1 64 ssa_66 = intrinsic load_deref (ssa_51) (0) /* access=0 */
  126. intrinsic store_deref (ssa_65, ssa_66) (1, 0) /* wrmask=x */ /* access=0 */
  127. vec1 64 ssa_67 = deref_var &@9 (function_temp struct)
  128. vec1 64 ssa_68 = deref_cast (struct *)ssa_67 (function_temp struct)
  129. vec1 64 ssa_69 = deref_cast (struct *)ssa_68 (function_temp struct)
  130. vec1 64 ssa_70 = deref_struct &ssa_69->field0 (function_temp uint64_t[1]) /* &((struct *)ssa_68)->field0 */
  131. vec1 64 ssa_71 = deref_array &(*ssa_70)[0] (function_temp uint64_t) /* &((struct *)ssa_68)->field0[0] */
  132. intrinsic store_deref (ssa_71, ssa_11) (1, 0) /* wrmask=x */ /* access=0 */
  133. vec1 64 ssa_72 = deref_var &phi (function_temp uint)
  134. intrinsic store_deref (ssa_72, ssa_33) (1, 0) /* wrmask=x */ /* access=0 */
  135. vec1 64 ssa_73 = deref_var &cont (function_temp bool)
  136. intrinsic store_deref (ssa_73, ssa_31) (1, 0) /* wrmask=x */ /* access=0 */
  137. /* succs: block_1 */
  138. loop {
  139. block block_1:
  140. /* preds: block_0 block_8 block_9 block_10 */
  141. vec1 1 ssa_74 = intrinsic load_deref (ssa_73) (0) /* access=0 */
  142. /* succs: block_2 block_6 */
  143. if ssa_74 {
  144. block block_2:
  145. /* preds: block_1 */
  146. vec1 64 ssa_75 = deref_var &phi@11 (function_temp uint)
  147. vec1 32 ssa_76 = intrinsic load_deref (ssa_75) (0) /* access=0 */
  148. vec1 64 ssa_77 = deref_var &phi@12 (function_temp bool)
  149. vec1 1 ssa_78 = intrinsic load_deref (ssa_77) (0) /* access=0 */
  150. intrinsic store_deref (ssa_72, ssa_76) (1, 0) /* wrmask=x */ /* access=0 */
  151. /* succs: block_3 block_4 */
  152. if ssa_78 {
  153. block block_3:
  154. /* preds: block_2 */
  155. break
  156. /* succs: block_11 */
  157. } else {
  158. block block_4:
  159. /* preds: block_2 */
  160. /* succs: block_5 */
  161. }
  162. block block_5:
  163. /* preds: block_4 */
  164. /* succs: block_7 */
  165. } else {
  166. block block_6:
  167. /* preds: block_1 */
  168. /* succs: block_7 */
  169. }
  170. block block_7:
  171. /* preds: block_5 block_6 */
  172. intrinsic store_deref (ssa_73, ssa_30) (1, 0) /* wrmask=x */ /* access=0 */
  173. vec1 32 ssa_79 = intrinsic load_deref (ssa_72) (0) /* access=0 */
  174. vec1 1 ssa_80 = ilt ssa_79, ssa_34
  175. vec1 1 ssa_81 = inot ssa_80
  176. vec1 64 ssa_82 = deref_var &phi@12 (function_temp bool)
  177. intrinsic store_deref (ssa_82, ssa_30) (1, 0) /* wrmask=x */ /* access=0 */
  178. vec1 64 ssa_83 = deref_var &phi@11 (function_temp uint)
  179. intrinsic store_deref (ssa_83, ssa_32) (1, 0) /* wrmask=x */ /* access=0 */
  180. /* succs: block_8 block_9 */
  181. if ssa_81 {
  182. block block_8:
  183. /* preds: block_7 */
  184. continue
  185. /* succs: block_1 */
  186. } else {
  187. block block_9:
  188. /* preds: block_7 */
  189. vec3 32 ssa_84 = intrinsic load_local_group_size () ()
  190. vec3 64 ssa_85 = u2u64 ssa_84
  191. vec3 32 ssa_86 = intrinsic load_work_group_id () ()
  192. vec3 64 ssa_87 = u2u64 ssa_86
  193. vec3 32 ssa_88 = intrinsic load_local_invocation_id () ()
  194. vec3 64 ssa_89 = u2u64 ssa_88
  195. vec3 64 ssa_90 = imul ssa_87, ssa_85
  196. vec3 64 ssa_91 = iadd ssa_90, ssa_89
  197. vec1 1 ssa_92 = ieq ssa_79, ssa_34
  198. vec1 64 ssa_93 = bcsel ssa_92, ssa_91.y, ssa_91.x
  199. vec1 32 ssa_94 = load_const (0x00000002 /* 0.000000 */)
  200. vec1 1 ssa_95 = ieq ssa_79, ssa_94
  201. vec1 64 ssa_96 = bcsel ssa_95, ssa_91.z, ssa_93
  202. vec1 64 ssa_97 = deref_cast (struct *)ssa_67 (function_temp struct)
  203. vec1 64 ssa_98 = deref_var &return_tmp (function_temp uint64_t)
  204. vec1 64 ssa_99 = deref_struct &ssa_97->field0 (function_temp uint64_t[1]) /* &((struct *)ssa_67)->field0 */
  205. vec1 64 ssa_100 = i2i64 ssa_79
  206. vec1 64 ssa_101 = deref_array &(*ssa_99)[ssa_100] (function_temp uint64_t) /* &((struct *)ssa_67)->field0[ssa_100] */
  207. intrinsic store_deref (ssa_98, ssa_101) (1, 0) /* wrmask=x */ /* access=0 */
  208. vec1 64 ssa_102 = intrinsic load_deref (ssa_98) (0) /* access=0 */
  209. vec1 64 ssa_103 = deref_cast (uint64_t *)ssa_102 (function_temp uint64_t)
  210. intrinsic store_deref (ssa_103, ssa_96) (1, 0) /* wrmask=x */ /* access=0 */
  211. vec1 32 ssa_104 = iadd ssa_79, ssa_34
  212. intrinsic store_deref (ssa_82, ssa_31) (1, 0) /* wrmask=x */ /* access=0 */
  213. intrinsic store_deref (ssa_83, ssa_104) (1, 0) /* wrmask=x */ /* access=0 */
  214. continue
  215. /* succs: block_1 */
  216. }
  217. block block_10:
  218. /* preds: */
  219. /* succs: block_1 */
  220. }
  221. block block_11:
  222. /* preds: block_3 */
  223. vec1 64 ssa_105 = deref_var &@10 (function_temp struct)
  224. vec1 64 ssa_106 = deref_cast (uint8_t *)ssa_105 (function_temp uint8_t)
  225. vec1 64 ssa_107 = deref_cast (uint8_t *)ssa_67 (function_temp uint8_t)
  226. vec1 64 ssa_108 = deref_cast (uint64_t *)ssa_107 (function_temp uint64_t)
  227. vec1 64 ssa_109 = deref_cast (uint64_t *)ssa_106 (function_temp uint64_t)
  228. vec1 64 ssa_110 = intrinsic load_deref (ssa_108) (0) /* access=0 */
  229. intrinsic store_deref (ssa_109, ssa_110) (1, 0) /* wrmask=x */ /* access=0 */
  230. vec1 64 ssa_111 = deref_cast (struct *)ssa_35 (function_temp struct)
  231. vec1 64 ssa_112 = deref_cast (struct *)ssa_105 (function_temp struct)
  232. vec1 64 ssa_113 = deref_cast (struct *)ssa_112 (function_temp struct)
  233. vec1 64 ssa_114 = deref_var &return_tmp@14 (function_temp uint64_t)
  234. vec1 64 ssa_115 = deref_struct &ssa_113->field0 (function_temp uint64_t[1]) /* &((struct *)ssa_112)->field0 */
  235. vec1 64 ssa_116 = i2i64 ssa_33
  236. vec1 64 ssa_117 = deref_array &(*ssa_115)[ssa_116] (function_temp uint64_t) /* &((struct *)ssa_112)->field0[ssa_116] */
  237. vec1 64 ssa_118 = intrinsic load_deref (ssa_117) (0) /* access=0 */
  238. intrinsic store_deref (ssa_114, ssa_118) (1, 0) /* wrmask=x */ /* access=0 */
  239. vec1 64 ssa_119 = intrinsic load_deref (ssa_114) (0) /* access=0 */
  240. vec1 32 ssa_120 = u2u32 ssa_119
  241. vec1 64 ssa_121 = deref_struct &ssa_111->field0 (function_temp struct) /* &((struct *)ssa_35)->field0 */
  242. vec1 64 ssa_122 = deref_cast (struct *)ssa_121 (function_temp struct)
  243. vec1 64 ssa_123 = deref_var &@13 (function_temp struct)
  244. vec1 64 ssa_124 = deref_cast (uint8_t *)ssa_123 (function_temp uint8_t)
  245. vec1 64 ssa_125 = deref_cast (uint8_t *)ssa_112 (function_temp uint8_t)
  246. vec1 64 ssa_126 = deref_cast (uint64_t *)ssa_125 (function_temp uint64_t)
  247. vec1 64 ssa_127 = deref_cast (uint64_t *)ssa_124 (function_temp uint64_t)
  248. vec1 64 ssa_128 = intrinsic load_deref (ssa_126) (0) /* access=0 */
  249. intrinsic store_deref (ssa_127, ssa_128) (1, 0) /* wrmask=x */ /* access=0 */
  250. vec1 64 ssa_129 = deref_var &return_tmp@15 (function_temp uint64_t)
  251. vec1 64 ssa_130 = deref_cast (struct *)ssa_123 (function_temp struct)
  252. vec1 64 ssa_131 = deref_var &@16 (function_temp struct)
  253. vec1 64 ssa_132 = deref_cast (struct *)ssa_131 (function_temp struct)
  254. vec1 64 ssa_133 = deref_var &return_tmp@21 (function_temp uint64_t)
  255. vec1 64 ssa_134 = deref_cast (struct *)ssa_122 (function_temp struct)
  256. intrinsic store_deref (ssa_133, ssa_134) (1, 0) /* wrmask=x */ /* access=0 */
  257. vec1 64 ssa_135 = intrinsic load_deref (ssa_133) (0) /* access=0 */
  258. vec1 64 ssa_136 = deref_cast (struct *)ssa_135 (function_temp struct)
  259. vec1 64 ssa_137 = deref_struct &ssa_136->field2 (function_temp struct) /* &((struct *)ssa_135)->field2 */
  260. vec1 64 ssa_138 = deref_cast (uint8_t *)ssa_132 (function_temp uint8_t)
  261. vec1 64 ssa_139 = deref_cast (uint8_t *)ssa_137 (function_temp uint8_t)
  262. vec1 64 ssa_140 = deref_cast (uint64_t *)ssa_139 (function_temp uint64_t)
  263. vec1 64 ssa_141 = deref_cast (uint64_t *)ssa_138 (function_temp uint64_t)
  264. vec1 64 ssa_142 = intrinsic load_deref (ssa_140) (0) /* access=0 */
  265. intrinsic store_deref (ssa_141, ssa_142) (1, 0) /* wrmask=x */ /* access=0 */
  266. vec1 64 ssa_143 = deref_var &@17 (function_temp struct)
  267. vec1 64 ssa_144 = deref_cast (uint8_t *)ssa_143 (function_temp uint8_t)
  268. vec1 64 ssa_145 = deref_cast (uint8_t *)ssa_130 (function_temp uint8_t)
  269. vec1 64 ssa_146 = deref_cast (uint64_t *)ssa_145 (function_temp uint64_t)
  270. vec1 64 ssa_147 = deref_cast (uint64_t *)ssa_144 (function_temp uint64_t)
  271. vec1 64 ssa_148 = intrinsic load_deref (ssa_146) (0) /* access=0 */
  272. intrinsic store_deref (ssa_147, ssa_148) (1, 0) /* wrmask=x */ /* access=0 */
  273. vec1 64 ssa_149 = deref_var &@18 (function_temp struct)
  274. vec1 64 ssa_150 = deref_cast (struct *)ssa_149 (function_temp struct)
  275. vec1 64 ssa_151 = deref_var &return_tmp@22 (function_temp uint64_t)
  276. intrinsic store_deref (ssa_151, ssa_134) (1, 0) /* wrmask=x */ /* access=0 */
  277. vec1 64 ssa_152 = intrinsic load_deref (ssa_151) (0) /* access=0 */
  278. vec1 64 ssa_153 = deref_cast (struct *)ssa_152 (function_temp struct)
  279. vec1 64 ssa_154 = deref_struct &ssa_153->field3 (function_temp struct) /* &((struct *)ssa_152)->field3 */
  280. vec1 64 ssa_155 = deref_cast (uint8_t *)ssa_150 (function_temp uint8_t)
  281. vec1 64 ssa_156 = deref_cast (uint8_t *)ssa_154 (function_temp uint8_t)
  282. vec1 64 ssa_157 = deref_cast (uint64_t *)ssa_156 (function_temp uint64_t)
  283. vec1 64 ssa_158 = deref_cast (uint64_t *)ssa_155 (function_temp uint64_t)
  284. vec1 64 ssa_159 = intrinsic load_deref (ssa_157) (0) /* access=0 */
  285. intrinsic store_deref (ssa_158, ssa_159) (1, 0) /* wrmask=x */ /* access=0 */
  286. vec1 64 ssa_160 = deref_var &return_tmp@19 (function_temp uint64_t)
  287. vec1 64 ssa_161 = undefined
  288. vec1 32 ssa_162 = undefined
  289. vec1 64 ssa_163 = undefined
  290. vec1 64 ssa_164 = deref_cast (struct *)ssa_143 (function_temp struct)
  291. vec1 64 ssa_165 = deref_var &phi@24 (function_temp uint64_t)
  292. intrinsic store_deref (ssa_165, ssa_11) (1, 0) /* wrmask=x */ /* access=0 */
  293. vec1 64 ssa_166 = deref_var &phi@23 (function_temp uint)
  294. intrinsic store_deref (ssa_166, ssa_33) (1, 0) /* wrmask=x */ /* access=0 */
  295. vec1 64 ssa_167 = deref_var &cont@28 (function_temp bool)
  296. intrinsic store_deref (ssa_167, ssa_31) (1, 0) /* wrmask=x */ /* access=0 */
  297. /* succs: block_12 */
  298. loop {
  299. block block_12:
  300. /* preds: block_11 block_19 block_20 block_21 */
  301. vec1 64 ssa_168 = phi block_11: ssa_161, block_19: ssa_178, block_20: ssa_178, block_21: ssa_0
  302. vec1 1 ssa_169 = intrinsic load_deref (ssa_167) (0) /* access=0 */
  303. /* succs: block_13 block_17 */
  304. if ssa_169 {
  305. block block_13:
  306. /* preds: block_12 */
  307. vec1 64 ssa_170 = deref_var &phi@29 (function_temp uint64_t)
  308. vec1 64 ssa_171 = intrinsic load_deref (ssa_170) (0) /* access=0 */
  309. vec1 64 ssa_172 = deref_var &phi@30 (function_temp uint)
  310. vec1 32 ssa_173 = intrinsic load_deref (ssa_172) (0) /* access=0 */
  311. vec1 64 ssa_174 = deref_var &phi@31 (function_temp bool)
  312. vec1 1 ssa_175 = intrinsic load_deref (ssa_174) (0) /* access=0 */
  313. vec1 64 ssa_176 = deref_var &phi@32 (function_temp uint64_t)
  314. intrinsic store_deref (ssa_176, ssa_168) (1, 0) /* wrmask=x */ /* access=0 */
  315. intrinsic store_deref (ssa_165, ssa_171) (1, 0) /* wrmask=x */ /* access=0 */
  316. intrinsic store_deref (ssa_166, ssa_173) (1, 0) /* wrmask=x */ /* access=0 */
  317. /* succs: block_14 block_15 */
  318. if ssa_175 {
  319. block block_14:
  320. /* preds: block_13 */
  321. break
  322. /* succs: block_22 */
  323. } else {
  324. block block_15:
  325. /* preds: block_13 */
  326. /* succs: block_16 */
  327. }
  328. block block_16:
  329. /* preds: block_15 */
  330. /* succs: block_18 */
  331. } else {
  332. block block_17:
  333. /* preds: block_12 */
  334. /* succs: block_18 */
  335. }
  336. block block_18:
  337. /* preds: block_16 block_17 */
  338. intrinsic store_deref (ssa_167, ssa_30) (1, 0) /* wrmask=x */ /* access=0 */
  339. vec1 32 ssa_177 = intrinsic load_deref (ssa_166) (0) /* access=0 */
  340. vec1 64 ssa_178 = intrinsic load_deref (ssa_165) (0) /* access=0 */
  341. vec1 1 ssa_179 = ilt ssa_177, ssa_34
  342. vec1 1 ssa_180 = inot ssa_179
  343. vec1 64 ssa_181 = deref_var &phi@31 (function_temp bool)
  344. intrinsic store_deref (ssa_181, ssa_30) (1, 0) /* wrmask=x */ /* access=0 */
  345. vec1 64 ssa_182 = deref_var &phi@30 (function_temp uint)
  346. intrinsic store_deref (ssa_182, ssa_162) (1, 0) /* wrmask=x */ /* access=0 */
  347. vec1 64 ssa_183 = deref_var &phi@29 (function_temp uint64_t)
  348. intrinsic store_deref (ssa_183, ssa_163) (1, 0) /* wrmask=x */ /* access=0 */
  349. /* succs: block_19 block_20 */
  350. if ssa_180 {
  351. block block_19:
  352. /* preds: block_18 */
  353. continue
  354. /* succs: block_12 */
  355. } else {
  356. block block_20:
  357. /* preds: block_18 */
  358. vec1 64 ssa_184 = deref_cast (struct *)ssa_132 (function_temp struct)
  359. vec1 64 ssa_185 = deref_var &return_tmp@25 (function_temp uint64_t)
  360. vec1 64 ssa_186 = deref_struct &ssa_184->field0 (function_temp uint64_t[1]) /* &((struct *)ssa_132)->field0 */
  361. vec1 64 ssa_187 = i2i64 ssa_177
  362. vec1 64 ssa_188 = deref_array &(*ssa_186)[ssa_187] (function_temp uint64_t) /* &((struct *)ssa_132)->field0[ssa_187] */
  363. intrinsic store_deref (ssa_185, ssa_188) (1, 0) /* wrmask=x */ /* access=0 */
  364. vec1 64 ssa_189 = intrinsic load_deref (ssa_185) (0) /* access=0 */
  365. vec1 64 ssa_190 = deref_cast (uint64_t *)ssa_189 (function_temp uint64_t)
  366. vec1 64 ssa_191 = intrinsic load_deref (ssa_190) (0) /* access=0 */
  367. vec1 64 ssa_192 = imul ssa_178, ssa_191
  368. vec1 64 ssa_193 = deref_cast (struct *)ssa_150 (function_temp struct)
  369. vec1 64 ssa_194 = deref_var &return_tmp@26 (function_temp uint64_t)
  370. vec1 64 ssa_195 = deref_struct &ssa_193->field0 (function_temp uint64_t[1]) /* &((struct *)ssa_150)->field0 */
  371. vec1 64 ssa_196 = deref_array &(*ssa_195)[ssa_187] (function_temp uint64_t) /* &((struct *)ssa_150)->field0[ssa_187] */
  372. intrinsic store_deref (ssa_194, ssa_196) (1, 0) /* wrmask=x */ /* access=0 */
  373. vec1 64 ssa_197 = intrinsic load_deref (ssa_194) (0) /* access=0 */
  374. vec1 64 ssa_198 = deref_cast (uint64_t *)ssa_197 (function_temp uint64_t)
  375. vec1 64 ssa_199 = intrinsic load_deref (ssa_198) (0) /* access=0 */
  376. vec1 64 ssa_200 = iadd ssa_192, ssa_199
  377. vec1 64 ssa_201 = deref_cast (struct *)ssa_164 (function_temp struct)
  378. vec1 64 ssa_202 = deref_var &return_tmp@27 (function_temp uint64_t)
  379. vec1 64 ssa_203 = deref_struct &ssa_201->field0 (function_temp uint64_t[1]) /* &((struct *)ssa_164)->field0 */
  380. vec1 64 ssa_204 = deref_array &(*ssa_203)[ssa_187] (function_temp uint64_t) /* &((struct *)ssa_164)->field0[ssa_187] */
  381. intrinsic store_deref (ssa_202, ssa_204) (1, 0) /* wrmask=x */ /* access=0 */
  382. vec1 64 ssa_205 = intrinsic load_deref (ssa_202) (0) /* access=0 */
  383. vec1 64 ssa_206 = deref_cast (uint64_t *)ssa_205 (function_temp uint64_t)
  384. vec1 64 ssa_207 = intrinsic load_deref (ssa_206) (0) /* access=0 */
  385. vec1 64 ssa_208 = iadd ssa_200, ssa_207
  386. vec1 32 ssa_209 = iadd ssa_177, ssa_34
  387. intrinsic store_deref (ssa_181, ssa_31) (1, 0) /* wrmask=x */ /* access=0 */
  388. intrinsic store_deref (ssa_182, ssa_209) (1, 0) /* wrmask=x */ /* access=0 */
  389. intrinsic store_deref (ssa_183, ssa_208) (1, 0) /* wrmask=x */ /* access=0 */
  390. continue
  391. /* succs: block_12 */
  392. }
  393. block block_21:
  394. /* preds: */
  395. /* succs: block_12 */
  396. }
  397. block block_22:
  398. /* preds: block_14 */
  399. vec1 64 ssa_210 = intrinsic load_deref (ssa_176) (0) /* access=0 */
  400. intrinsic store_deref (ssa_160, ssa_210) (1, 0) /* wrmask=x */ /* access=0 */
  401. vec1 64 ssa_211 = intrinsic load_deref (ssa_160) (0) /* access=0 */
  402. vec1 64 ssa_212 = deref_var &return_tmp@20 (function_temp uint64_t)
  403. vec1 64 ssa_213 = deref_var &return_tmp@33 (function_temp uint64_t)
  404. intrinsic store_deref (ssa_213, ssa_134) (1, 0) /* wrmask=x */ /* access=0 */
  405. vec1 64 ssa_214 = intrinsic load_deref (ssa_213) (0) /* access=0 */
  406. vec1 64 ssa_215 = deref_cast (struct *)ssa_214 (function_temp struct)
  407. vec1 64 ssa_216 = deref_struct &ssa_215->field1 (function_temp uint64_t) /* &((struct *)ssa_214)->field1 */
  408. vec1 64 ssa_217 = intrinsic load_deref (ssa_216) (0) /* access=0 */
  409. vec1 64 ssa_218 = load_const (0x 4 /* 0.000000 */)
  410. vec1 64 ssa_219 = imul ssa_211, ssa_218
  411. vec1 64 ssa_220 = iadd ssa_217, ssa_219
  412. intrinsic store_deref (ssa_212, ssa_220) (1, 0) /* wrmask=x */ /* access=0 */
  413. vec1 64 ssa_221 = intrinsic load_deref (ssa_212) (0) /* access=0 */
  414. intrinsic store_deref (ssa_129, ssa_221) (1, 0) /* wrmask=x */ /* access=0 */
  415. vec1 64 ssa_222 = intrinsic load_deref (ssa_129) (0) /* access=0 */
  416. intrinsic store_global (ssa_120, ssa_222) (1, 0, 4, 0) /* wrmask=x */ /* access=0 */ /* align_mul=4 */ /* align_offset=0 */
  417. /* succs: block_23 */
  418. block block_23:
  419. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement