choose_t.S 50 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824
  1. # qhasm: int64 tp
  2. # qhasm: int64 pos
  3. # qhasm: int64 b
  4. # qhasm: int64 basep
  5. # qhasm: input tp
  6. # qhasm: input pos
  7. # qhasm: input b
  8. # qhasm: input basep
  9. # qhasm: int64 mask
  10. # qhasm: int64 u
  11. # qhasm: int64 tysubx0
  12. # qhasm: int64 tysubx1
  13. # qhasm: int64 tysubx2
  14. # qhasm: int64 tysubx3
  15. # qhasm: int64 tysubx4
  16. # qhasm: int64 txaddy0
  17. # qhasm: int64 txaddy1
  18. # qhasm: int64 txaddy2
  19. # qhasm: int64 txaddy3
  20. # qhasm: int64 txaddy4
  21. # qhasm: int64 tt2d0
  22. # qhasm: int64 tt2d1
  23. # qhasm: int64 tt2d2
  24. # qhasm: int64 tt2d3
  25. # qhasm: int64 tt2d4
  26. # qhasm: int64 tt0
  27. # qhasm: int64 tt1
  28. # qhasm: int64 tt2
  29. # qhasm: int64 tt3
  30. # qhasm: int64 tt4
  31. # qhasm: int64 t
  32. # qhasm: stack64 tp_stack
  33. # qhasm: int64 caller1
  34. # qhasm: int64 caller2
  35. # qhasm: int64 caller3
  36. # qhasm: int64 caller4
  37. # qhasm: int64 caller5
  38. # qhasm: int64 caller6
  39. # qhasm: int64 caller7
  40. # qhasm: caller caller1
  41. # qhasm: caller caller2
  42. # qhasm: caller caller3
  43. # qhasm: caller caller4
  44. # qhasm: caller caller5
  45. # qhasm: caller caller6
  46. # qhasm: caller caller7
  47. # qhasm: stack64 caller1_stack
  48. # qhasm: stack64 caller2_stack
  49. # qhasm: stack64 caller3_stack
  50. # qhasm: stack64 caller4_stack
  51. # qhasm: stack64 caller5_stack
  52. # qhasm: stack64 caller6_stack
  53. # qhasm: stack64 caller7_stack
  54. # qhasm: enter CRYPTO_NAMESPACE(batch_choose_t)
  55. .text
  56. .p2align 5
  57. .globl _CRYPTO_NAMESPACE(batch_choose_t)
  58. .globl CRYPTO_NAMESPACE(batch_choose_t)
  59. _CRYPTO_NAMESPACE(batch_choose_t):
  60. CRYPTO_NAMESPACE(batch_choose_t):
  61. mov %rsp,%r11
  62. and $31,%r11
  63. add $64,%r11
  64. sub %r11,%rsp
  65. # qhasm: caller1_stack = caller1
  66. # asm 1: movq <caller1=int64#9,>caller1_stack=stack64#1
  67. # asm 2: movq <caller1=%r11,>caller1_stack=0(%rsp)
  68. movq %r11,0(%rsp)
  69. # qhasm: caller2_stack = caller2
  70. # asm 1: movq <caller2=int64#10,>caller2_stack=stack64#2
  71. # asm 2: movq <caller2=%r12,>caller2_stack=8(%rsp)
  72. movq %r12,8(%rsp)
  73. # qhasm: caller3_stack = caller3
  74. # asm 1: movq <caller3=int64#11,>caller3_stack=stack64#3
  75. # asm 2: movq <caller3=%r13,>caller3_stack=16(%rsp)
  76. movq %r13,16(%rsp)
  77. # qhasm: caller4_stack = caller4
  78. # asm 1: movq <caller4=int64#12,>caller4_stack=stack64#4
  79. # asm 2: movq <caller4=%r14,>caller4_stack=24(%rsp)
  80. movq %r14,24(%rsp)
  81. # qhasm: caller5_stack = caller5
  82. # asm 1: movq <caller5=int64#13,>caller5_stack=stack64#5
  83. # asm 2: movq <caller5=%r15,>caller5_stack=32(%rsp)
  84. movq %r15,32(%rsp)
  85. # qhasm: caller6_stack = caller6
  86. # asm 1: movq <caller6=int64#14,>caller6_stack=stack64#6
  87. # asm 2: movq <caller6=%rbx,>caller6_stack=40(%rsp)
  88. movq %rbx,40(%rsp)
  89. # qhasm: caller7_stack = caller7
  90. # asm 1: movq <caller7=int64#15,>caller7_stack=stack64#7
  91. # asm 2: movq <caller7=%rbp,>caller7_stack=48(%rsp)
  92. movq %rbp,48(%rsp)
  93. # qhasm: tp_stack = tp
  94. # asm 1: movq <tp=int64#1,>tp_stack=stack64#8
  95. # asm 2: movq <tp=%rdi,>tp_stack=56(%rsp)
  96. movq %rdi,56(%rsp)
  97. # qhasm: pos *= 960
  98. # asm 1: imulq $960,<pos=int64#2,>pos=int64#1
  99. # asm 2: imulq $960,<pos=%rsi,>pos=%rdi
  100. imulq $960,%rsi,%rdi
  101. # qhasm: mask = b
  102. # asm 1: mov <b=int64#3,>mask=int64#2
  103. # asm 2: mov <b=%rdx,>mask=%rsi
  104. mov %rdx,%rsi
  105. # qhasm: (int64) mask >>= 7
  106. # asm 1: sar $7,<mask=int64#2
  107. # asm 2: sar $7,<mask=%rsi
  108. sar $7,%rsi
  109. # qhasm: u = b
  110. # asm 1: mov <b=int64#3,>u=int64#5
  111. # asm 2: mov <b=%rdx,>u=%r8
  112. mov %rdx,%r8
  113. # qhasm: u += mask
  114. # asm 1: add <mask=int64#2,<u=int64#5
  115. # asm 2: add <mask=%rsi,<u=%r8
  116. add %rsi,%r8
  117. # qhasm: u ^= mask
  118. # asm 1: xor <mask=int64#2,<u=int64#5
  119. # asm 2: xor <mask=%rsi,<u=%r8
  120. xor %rsi,%r8
  121. # qhasm: tysubx0 = 1
  122. # asm 1: mov $1,>tysubx0=int64#2
  123. # asm 2: mov $1,>tysubx0=%rsi
  124. mov $1,%rsi
  125. # qhasm: tysubx1 = 0
  126. # asm 1: mov $0,>tysubx1=int64#6
  127. # asm 2: mov $0,>tysubx1=%r9
  128. mov $0,%r9
  129. # qhasm: tysubx2 = 0
  130. # asm 1: mov $0,>tysubx2=int64#7
  131. # asm 2: mov $0,>tysubx2=%rax
  132. mov $0,%rax
  133. # qhasm: tysubx3 = 0
  134. # asm 1: mov $0,>tysubx3=int64#8
  135. # asm 2: mov $0,>tysubx3=%r10
  136. mov $0,%r10
  137. # qhasm: tysubx4 = 0
  138. # asm 1: mov $0,>tysubx4=int64#9
  139. # asm 2: mov $0,>tysubx4=%r11
  140. mov $0,%r11
  141. # qhasm: txaddy0 = 1
  142. # asm 1: mov $1,>txaddy0=int64#10
  143. # asm 2: mov $1,>txaddy0=%r12
  144. mov $1,%r12
  145. # qhasm: txaddy1 = 0
  146. # asm 1: mov $0,>txaddy1=int64#11
  147. # asm 2: mov $0,>txaddy1=%r13
  148. mov $0,%r13
  149. # qhasm: txaddy2 = 0
  150. # asm 1: mov $0,>txaddy2=int64#12
  151. # asm 2: mov $0,>txaddy2=%r14
  152. mov $0,%r14
  153. # qhasm: txaddy3 = 0
  154. # asm 1: mov $0,>txaddy3=int64#13
  155. # asm 2: mov $0,>txaddy3=%r15
  156. mov $0,%r15
  157. # qhasm: txaddy4 = 0
  158. # asm 1: mov $0,>txaddy4=int64#14
  159. # asm 2: mov $0,>txaddy4=%rbx
  160. mov $0,%rbx
  161. # qhasm: =? u - 1
  162. # asm 1: cmp $1,<u=int64#5
  163. # asm 2: cmp $1,<u=%r8
  164. cmp $1,%r8
  165. # qhasm: t = *(uint64 *)(basep + 0 + pos)
  166. # asm 1: movq 0(<basep=int64#4,<pos=int64#1),>t=int64#15
  167. # asm 2: movq 0(<basep=%rcx,<pos=%rdi),>t=%rbp
  168. movq 0(%rcx,%rdi),%rbp
  169. # qhasm: tysubx0 = t if =
  170. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  171. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  172. cmove %rbp,%rsi
  173. # qhasm: t = *(uint64 *)(basep + 8 + pos)
  174. # asm 1: movq 8(<basep=int64#4,<pos=int64#1),>t=int64#15
  175. # asm 2: movq 8(<basep=%rcx,<pos=%rdi),>t=%rbp
  176. movq 8(%rcx,%rdi),%rbp
  177. # qhasm: tysubx1 = t if =
  178. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  179. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  180. cmove %rbp,%r9
  181. # qhasm: t = *(uint64 *)(basep + 16 + pos)
  182. # asm 1: movq 16(<basep=int64#4,<pos=int64#1),>t=int64#15
  183. # asm 2: movq 16(<basep=%rcx,<pos=%rdi),>t=%rbp
  184. movq 16(%rcx,%rdi),%rbp
  185. # qhasm: tysubx2 = t if =
  186. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  187. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  188. cmove %rbp,%rax
  189. # qhasm: t = *(uint64 *)(basep + 24 + pos)
  190. # asm 1: movq 24(<basep=int64#4,<pos=int64#1),>t=int64#15
  191. # asm 2: movq 24(<basep=%rcx,<pos=%rdi),>t=%rbp
  192. movq 24(%rcx,%rdi),%rbp
  193. # qhasm: tysubx3 = t if =
  194. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  195. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  196. cmove %rbp,%r10
  197. # qhasm: t = *(uint64 *)(basep + 32 + pos)
  198. # asm 1: movq 32(<basep=int64#4,<pos=int64#1),>t=int64#15
  199. # asm 2: movq 32(<basep=%rcx,<pos=%rdi),>t=%rbp
  200. movq 32(%rcx,%rdi),%rbp
  201. # qhasm: tysubx4 = t if =
  202. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  203. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  204. cmove %rbp,%r11
  205. # qhasm: t = *(uint64 *)(basep + 40 + pos)
  206. # asm 1: movq 40(<basep=int64#4,<pos=int64#1),>t=int64#15
  207. # asm 2: movq 40(<basep=%rcx,<pos=%rdi),>t=%rbp
  208. movq 40(%rcx,%rdi),%rbp
  209. # qhasm: txaddy0 = t if =
  210. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  211. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  212. cmove %rbp,%r12
  213. # qhasm: t = *(uint64 *)(basep + 48 + pos)
  214. # asm 1: movq 48(<basep=int64#4,<pos=int64#1),>t=int64#15
  215. # asm 2: movq 48(<basep=%rcx,<pos=%rdi),>t=%rbp
  216. movq 48(%rcx,%rdi),%rbp
  217. # qhasm: txaddy1 = t if =
  218. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  219. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  220. cmove %rbp,%r13
  221. # qhasm: t = *(uint64 *)(basep + 56 + pos)
  222. # asm 1: movq 56(<basep=int64#4,<pos=int64#1),>t=int64#15
  223. # asm 2: movq 56(<basep=%rcx,<pos=%rdi),>t=%rbp
  224. movq 56(%rcx,%rdi),%rbp
  225. # qhasm: txaddy2 = t if =
  226. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  227. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  228. cmove %rbp,%r14
  229. # qhasm: t = *(uint64 *)(basep + 64 + pos)
  230. # asm 1: movq 64(<basep=int64#4,<pos=int64#1),>t=int64#15
  231. # asm 2: movq 64(<basep=%rcx,<pos=%rdi),>t=%rbp
  232. movq 64(%rcx,%rdi),%rbp
  233. # qhasm: txaddy3 = t if =
  234. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  235. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  236. cmove %rbp,%r15
  237. # qhasm: t = *(uint64 *)(basep + 72 + pos)
  238. # asm 1: movq 72(<basep=int64#4,<pos=int64#1),>t=int64#15
  239. # asm 2: movq 72(<basep=%rcx,<pos=%rdi),>t=%rbp
  240. movq 72(%rcx,%rdi),%rbp
  241. # qhasm: txaddy4 = t if =
  242. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  243. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  244. cmove %rbp,%rbx
  245. # qhasm: =? u - 2
  246. # asm 1: cmp $2,<u=int64#5
  247. # asm 2: cmp $2,<u=%r8
  248. cmp $2,%r8
  249. # qhasm: t = *(uint64 *)(basep + 120 + pos)
  250. # asm 1: movq 120(<basep=int64#4,<pos=int64#1),>t=int64#15
  251. # asm 2: movq 120(<basep=%rcx,<pos=%rdi),>t=%rbp
  252. movq 120(%rcx,%rdi),%rbp
  253. # qhasm: tysubx0 = t if =
  254. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  255. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  256. cmove %rbp,%rsi
  257. # qhasm: t = *(uint64 *)(basep + 128 + pos)
  258. # asm 1: movq 128(<basep=int64#4,<pos=int64#1),>t=int64#15
  259. # asm 2: movq 128(<basep=%rcx,<pos=%rdi),>t=%rbp
  260. movq 128(%rcx,%rdi),%rbp
  261. # qhasm: tysubx1 = t if =
  262. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  263. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  264. cmove %rbp,%r9
  265. # qhasm: t = *(uint64 *)(basep + 136 + pos)
  266. # asm 1: movq 136(<basep=int64#4,<pos=int64#1),>t=int64#15
  267. # asm 2: movq 136(<basep=%rcx,<pos=%rdi),>t=%rbp
  268. movq 136(%rcx,%rdi),%rbp
  269. # qhasm: tysubx2 = t if =
  270. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  271. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  272. cmove %rbp,%rax
  273. # qhasm: t = *(uint64 *)(basep + 144 + pos)
  274. # asm 1: movq 144(<basep=int64#4,<pos=int64#1),>t=int64#15
  275. # asm 2: movq 144(<basep=%rcx,<pos=%rdi),>t=%rbp
  276. movq 144(%rcx,%rdi),%rbp
  277. # qhasm: tysubx3 = t if =
  278. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  279. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  280. cmove %rbp,%r10
  281. # qhasm: t = *(uint64 *)(basep + 152 + pos)
  282. # asm 1: movq 152(<basep=int64#4,<pos=int64#1),>t=int64#15
  283. # asm 2: movq 152(<basep=%rcx,<pos=%rdi),>t=%rbp
  284. movq 152(%rcx,%rdi),%rbp
  285. # qhasm: tysubx4 = t if =
  286. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  287. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  288. cmove %rbp,%r11
  289. # qhasm: t = *(uint64 *)(basep + 160 + pos)
  290. # asm 1: movq 160(<basep=int64#4,<pos=int64#1),>t=int64#15
  291. # asm 2: movq 160(<basep=%rcx,<pos=%rdi),>t=%rbp
  292. movq 160(%rcx,%rdi),%rbp
  293. # qhasm: txaddy0 = t if =
  294. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  295. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  296. cmove %rbp,%r12
  297. # qhasm: t = *(uint64 *)(basep + 168 + pos)
  298. # asm 1: movq 168(<basep=int64#4,<pos=int64#1),>t=int64#15
  299. # asm 2: movq 168(<basep=%rcx,<pos=%rdi),>t=%rbp
  300. movq 168(%rcx,%rdi),%rbp
  301. # qhasm: txaddy1 = t if =
  302. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  303. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  304. cmove %rbp,%r13
  305. # qhasm: t = *(uint64 *)(basep + 176 + pos)
  306. # asm 1: movq 176(<basep=int64#4,<pos=int64#1),>t=int64#15
  307. # asm 2: movq 176(<basep=%rcx,<pos=%rdi),>t=%rbp
  308. movq 176(%rcx,%rdi),%rbp
  309. # qhasm: txaddy2 = t if =
  310. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  311. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  312. cmove %rbp,%r14
  313. # qhasm: t = *(uint64 *)(basep + 184 + pos)
  314. # asm 1: movq 184(<basep=int64#4,<pos=int64#1),>t=int64#15
  315. # asm 2: movq 184(<basep=%rcx,<pos=%rdi),>t=%rbp
  316. movq 184(%rcx,%rdi),%rbp
  317. # qhasm: txaddy3 = t if =
  318. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  319. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  320. cmove %rbp,%r15
  321. # qhasm: t = *(uint64 *)(basep + 192 + pos)
  322. # asm 1: movq 192(<basep=int64#4,<pos=int64#1),>t=int64#15
  323. # asm 2: movq 192(<basep=%rcx,<pos=%rdi),>t=%rbp
  324. movq 192(%rcx,%rdi),%rbp
  325. # qhasm: txaddy4 = t if =
  326. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  327. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  328. cmove %rbp,%rbx
  329. # qhasm: =? u - 3
  330. # asm 1: cmp $3,<u=int64#5
  331. # asm 2: cmp $3,<u=%r8
  332. cmp $3,%r8
  333. # qhasm: t = *(uint64 *)(basep + 240 + pos)
  334. # asm 1: movq 240(<basep=int64#4,<pos=int64#1),>t=int64#15
  335. # asm 2: movq 240(<basep=%rcx,<pos=%rdi),>t=%rbp
  336. movq 240(%rcx,%rdi),%rbp
  337. # qhasm: tysubx0 = t if =
  338. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  339. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  340. cmove %rbp,%rsi
  341. # qhasm: t = *(uint64 *)(basep + 248 + pos)
  342. # asm 1: movq 248(<basep=int64#4,<pos=int64#1),>t=int64#15
  343. # asm 2: movq 248(<basep=%rcx,<pos=%rdi),>t=%rbp
  344. movq 248(%rcx,%rdi),%rbp
  345. # qhasm: tysubx1 = t if =
  346. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  347. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  348. cmove %rbp,%r9
  349. # qhasm: t = *(uint64 *)(basep + 256 + pos)
  350. # asm 1: movq 256(<basep=int64#4,<pos=int64#1),>t=int64#15
  351. # asm 2: movq 256(<basep=%rcx,<pos=%rdi),>t=%rbp
  352. movq 256(%rcx,%rdi),%rbp
  353. # qhasm: tysubx2 = t if =
  354. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  355. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  356. cmove %rbp,%rax
  357. # qhasm: t = *(uint64 *)(basep + 264 + pos)
  358. # asm 1: movq 264(<basep=int64#4,<pos=int64#1),>t=int64#15
  359. # asm 2: movq 264(<basep=%rcx,<pos=%rdi),>t=%rbp
  360. movq 264(%rcx,%rdi),%rbp
  361. # qhasm: tysubx3 = t if =
  362. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  363. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  364. cmove %rbp,%r10
  365. # qhasm: t = *(uint64 *)(basep + 272 + pos)
  366. # asm 1: movq 272(<basep=int64#4,<pos=int64#1),>t=int64#15
  367. # asm 2: movq 272(<basep=%rcx,<pos=%rdi),>t=%rbp
  368. movq 272(%rcx,%rdi),%rbp
  369. # qhasm: tysubx4 = t if =
  370. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  371. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  372. cmove %rbp,%r11
  373. # qhasm: t = *(uint64 *)(basep + 280 + pos)
  374. # asm 1: movq 280(<basep=int64#4,<pos=int64#1),>t=int64#15
  375. # asm 2: movq 280(<basep=%rcx,<pos=%rdi),>t=%rbp
  376. movq 280(%rcx,%rdi),%rbp
  377. # qhasm: txaddy0 = t if =
  378. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  379. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  380. cmove %rbp,%r12
  381. # qhasm: t = *(uint64 *)(basep + 288 + pos)
  382. # asm 1: movq 288(<basep=int64#4,<pos=int64#1),>t=int64#15
  383. # asm 2: movq 288(<basep=%rcx,<pos=%rdi),>t=%rbp
  384. movq 288(%rcx,%rdi),%rbp
  385. # qhasm: txaddy1 = t if =
  386. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  387. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  388. cmove %rbp,%r13
  389. # qhasm: t = *(uint64 *)(basep + 296 + pos)
  390. # asm 1: movq 296(<basep=int64#4,<pos=int64#1),>t=int64#15
  391. # asm 2: movq 296(<basep=%rcx,<pos=%rdi),>t=%rbp
  392. movq 296(%rcx,%rdi),%rbp
  393. # qhasm: txaddy2 = t if =
  394. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  395. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  396. cmove %rbp,%r14
  397. # qhasm: t = *(uint64 *)(basep + 304 + pos)
  398. # asm 1: movq 304(<basep=int64#4,<pos=int64#1),>t=int64#15
  399. # asm 2: movq 304(<basep=%rcx,<pos=%rdi),>t=%rbp
  400. movq 304(%rcx,%rdi),%rbp
  401. # qhasm: txaddy3 = t if =
  402. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  403. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  404. cmove %rbp,%r15
  405. # qhasm: t = *(uint64 *)(basep + 312 + pos)
  406. # asm 1: movq 312(<basep=int64#4,<pos=int64#1),>t=int64#15
  407. # asm 2: movq 312(<basep=%rcx,<pos=%rdi),>t=%rbp
  408. movq 312(%rcx,%rdi),%rbp
  409. # qhasm: txaddy4 = t if =
  410. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  411. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  412. cmove %rbp,%rbx
  413. # qhasm: =? u - 4
  414. # asm 1: cmp $4,<u=int64#5
  415. # asm 2: cmp $4,<u=%r8
  416. cmp $4,%r8
  417. # qhasm: t = *(uint64 *)(basep + 360 + pos)
  418. # asm 1: movq 360(<basep=int64#4,<pos=int64#1),>t=int64#15
  419. # asm 2: movq 360(<basep=%rcx,<pos=%rdi),>t=%rbp
  420. movq 360(%rcx,%rdi),%rbp
  421. # qhasm: tysubx0 = t if =
  422. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  423. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  424. cmove %rbp,%rsi
  425. # qhasm: t = *(uint64 *)(basep + 368 + pos)
  426. # asm 1: movq 368(<basep=int64#4,<pos=int64#1),>t=int64#15
  427. # asm 2: movq 368(<basep=%rcx,<pos=%rdi),>t=%rbp
  428. movq 368(%rcx,%rdi),%rbp
  429. # qhasm: tysubx1 = t if =
  430. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  431. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  432. cmove %rbp,%r9
  433. # qhasm: t = *(uint64 *)(basep + 376 + pos)
  434. # asm 1: movq 376(<basep=int64#4,<pos=int64#1),>t=int64#15
  435. # asm 2: movq 376(<basep=%rcx,<pos=%rdi),>t=%rbp
  436. movq 376(%rcx,%rdi),%rbp
  437. # qhasm: tysubx2 = t if =
  438. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  439. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  440. cmove %rbp,%rax
  441. # qhasm: t = *(uint64 *)(basep + 384 + pos)
  442. # asm 1: movq 384(<basep=int64#4,<pos=int64#1),>t=int64#15
  443. # asm 2: movq 384(<basep=%rcx,<pos=%rdi),>t=%rbp
  444. movq 384(%rcx,%rdi),%rbp
  445. # qhasm: tysubx3 = t if =
  446. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  447. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  448. cmove %rbp,%r10
  449. # qhasm: t = *(uint64 *)(basep + 392 + pos)
  450. # asm 1: movq 392(<basep=int64#4,<pos=int64#1),>t=int64#15
  451. # asm 2: movq 392(<basep=%rcx,<pos=%rdi),>t=%rbp
  452. movq 392(%rcx,%rdi),%rbp
  453. # qhasm: tysubx4 = t if =
  454. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  455. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  456. cmove %rbp,%r11
  457. # qhasm: t = *(uint64 *)(basep + 400 + pos)
  458. # asm 1: movq 400(<basep=int64#4,<pos=int64#1),>t=int64#15
  459. # asm 2: movq 400(<basep=%rcx,<pos=%rdi),>t=%rbp
  460. movq 400(%rcx,%rdi),%rbp
  461. # qhasm: txaddy0 = t if =
  462. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  463. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  464. cmove %rbp,%r12
  465. # qhasm: t = *(uint64 *)(basep + 408 + pos)
  466. # asm 1: movq 408(<basep=int64#4,<pos=int64#1),>t=int64#15
  467. # asm 2: movq 408(<basep=%rcx,<pos=%rdi),>t=%rbp
  468. movq 408(%rcx,%rdi),%rbp
  469. # qhasm: txaddy1 = t if =
  470. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  471. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  472. cmove %rbp,%r13
  473. # qhasm: t = *(uint64 *)(basep + 416 + pos)
  474. # asm 1: movq 416(<basep=int64#4,<pos=int64#1),>t=int64#15
  475. # asm 2: movq 416(<basep=%rcx,<pos=%rdi),>t=%rbp
  476. movq 416(%rcx,%rdi),%rbp
  477. # qhasm: txaddy2 = t if =
  478. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  479. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  480. cmove %rbp,%r14
  481. # qhasm: t = *(uint64 *)(basep + 424 + pos)
  482. # asm 1: movq 424(<basep=int64#4,<pos=int64#1),>t=int64#15
  483. # asm 2: movq 424(<basep=%rcx,<pos=%rdi),>t=%rbp
  484. movq 424(%rcx,%rdi),%rbp
  485. # qhasm: txaddy3 = t if =
  486. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  487. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  488. cmove %rbp,%r15
  489. # qhasm: t = *(uint64 *)(basep + 432 + pos)
  490. # asm 1: movq 432(<basep=int64#4,<pos=int64#1),>t=int64#15
  491. # asm 2: movq 432(<basep=%rcx,<pos=%rdi),>t=%rbp
  492. movq 432(%rcx,%rdi),%rbp
  493. # qhasm: txaddy4 = t if =
  494. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  495. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  496. cmove %rbp,%rbx
  497. # qhasm: =? u - 5
  498. # asm 1: cmp $5,<u=int64#5
  499. # asm 2: cmp $5,<u=%r8
  500. cmp $5,%r8
  501. # qhasm: t = *(uint64 *)(basep + 480 + pos)
  502. # asm 1: movq 480(<basep=int64#4,<pos=int64#1),>t=int64#15
  503. # asm 2: movq 480(<basep=%rcx,<pos=%rdi),>t=%rbp
  504. movq 480(%rcx,%rdi),%rbp
  505. # qhasm: tysubx0 = t if =
  506. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  507. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  508. cmove %rbp,%rsi
  509. # qhasm: t = *(uint64 *)(basep + 488 + pos)
  510. # asm 1: movq 488(<basep=int64#4,<pos=int64#1),>t=int64#15
  511. # asm 2: movq 488(<basep=%rcx,<pos=%rdi),>t=%rbp
  512. movq 488(%rcx,%rdi),%rbp
  513. # qhasm: tysubx1 = t if =
  514. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  515. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  516. cmove %rbp,%r9
  517. # qhasm: t = *(uint64 *)(basep + 496 + pos)
  518. # asm 1: movq 496(<basep=int64#4,<pos=int64#1),>t=int64#15
  519. # asm 2: movq 496(<basep=%rcx,<pos=%rdi),>t=%rbp
  520. movq 496(%rcx,%rdi),%rbp
  521. # qhasm: tysubx2 = t if =
  522. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  523. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  524. cmove %rbp,%rax
  525. # qhasm: t = *(uint64 *)(basep + 504 + pos)
  526. # asm 1: movq 504(<basep=int64#4,<pos=int64#1),>t=int64#15
  527. # asm 2: movq 504(<basep=%rcx,<pos=%rdi),>t=%rbp
  528. movq 504(%rcx,%rdi),%rbp
  529. # qhasm: tysubx3 = t if =
  530. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  531. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  532. cmove %rbp,%r10
  533. # qhasm: t = *(uint64 *)(basep + 512 + pos)
  534. # asm 1: movq 512(<basep=int64#4,<pos=int64#1),>t=int64#15
  535. # asm 2: movq 512(<basep=%rcx,<pos=%rdi),>t=%rbp
  536. movq 512(%rcx,%rdi),%rbp
  537. # qhasm: tysubx4 = t if =
  538. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  539. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  540. cmove %rbp,%r11
  541. # qhasm: t = *(uint64 *)(basep + 520 + pos)
  542. # asm 1: movq 520(<basep=int64#4,<pos=int64#1),>t=int64#15
  543. # asm 2: movq 520(<basep=%rcx,<pos=%rdi),>t=%rbp
  544. movq 520(%rcx,%rdi),%rbp
  545. # qhasm: txaddy0 = t if =
  546. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  547. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  548. cmove %rbp,%r12
  549. # qhasm: t = *(uint64 *)(basep + 528 + pos)
  550. # asm 1: movq 528(<basep=int64#4,<pos=int64#1),>t=int64#15
  551. # asm 2: movq 528(<basep=%rcx,<pos=%rdi),>t=%rbp
  552. movq 528(%rcx,%rdi),%rbp
  553. # qhasm: txaddy1 = t if =
  554. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  555. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  556. cmove %rbp,%r13
  557. # qhasm: t = *(uint64 *)(basep + 536 + pos)
  558. # asm 1: movq 536(<basep=int64#4,<pos=int64#1),>t=int64#15
  559. # asm 2: movq 536(<basep=%rcx,<pos=%rdi),>t=%rbp
  560. movq 536(%rcx,%rdi),%rbp
  561. # qhasm: txaddy2 = t if =
  562. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  563. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  564. cmove %rbp,%r14
  565. # qhasm: t = *(uint64 *)(basep + 544 + pos)
  566. # asm 1: movq 544(<basep=int64#4,<pos=int64#1),>t=int64#15
  567. # asm 2: movq 544(<basep=%rcx,<pos=%rdi),>t=%rbp
  568. movq 544(%rcx,%rdi),%rbp
  569. # qhasm: txaddy3 = t if =
  570. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  571. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  572. cmove %rbp,%r15
  573. # qhasm: t = *(uint64 *)(basep + 552 + pos)
  574. # asm 1: movq 552(<basep=int64#4,<pos=int64#1),>t=int64#15
  575. # asm 2: movq 552(<basep=%rcx,<pos=%rdi),>t=%rbp
  576. movq 552(%rcx,%rdi),%rbp
  577. # qhasm: txaddy4 = t if =
  578. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  579. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  580. cmove %rbp,%rbx
  581. # qhasm: =? u - 6
  582. # asm 1: cmp $6,<u=int64#5
  583. # asm 2: cmp $6,<u=%r8
  584. cmp $6,%r8
  585. # qhasm: t = *(uint64 *)(basep + 600 + pos)
  586. # asm 1: movq 600(<basep=int64#4,<pos=int64#1),>t=int64#15
  587. # asm 2: movq 600(<basep=%rcx,<pos=%rdi),>t=%rbp
  588. movq 600(%rcx,%rdi),%rbp
  589. # qhasm: tysubx0 = t if =
  590. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  591. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  592. cmove %rbp,%rsi
  593. # qhasm: t = *(uint64 *)(basep + 608 + pos)
  594. # asm 1: movq 608(<basep=int64#4,<pos=int64#1),>t=int64#15
  595. # asm 2: movq 608(<basep=%rcx,<pos=%rdi),>t=%rbp
  596. movq 608(%rcx,%rdi),%rbp
  597. # qhasm: tysubx1 = t if =
  598. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  599. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  600. cmove %rbp,%r9
  601. # qhasm: t = *(uint64 *)(basep + 616 + pos)
  602. # asm 1: movq 616(<basep=int64#4,<pos=int64#1),>t=int64#15
  603. # asm 2: movq 616(<basep=%rcx,<pos=%rdi),>t=%rbp
  604. movq 616(%rcx,%rdi),%rbp
  605. # qhasm: tysubx2 = t if =
  606. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  607. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  608. cmove %rbp,%rax
  609. # qhasm: t = *(uint64 *)(basep + 624 + pos)
  610. # asm 1: movq 624(<basep=int64#4,<pos=int64#1),>t=int64#15
  611. # asm 2: movq 624(<basep=%rcx,<pos=%rdi),>t=%rbp
  612. movq 624(%rcx,%rdi),%rbp
  613. # qhasm: tysubx3 = t if =
  614. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  615. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  616. cmove %rbp,%r10
  617. # qhasm: t = *(uint64 *)(basep + 632 + pos)
  618. # asm 1: movq 632(<basep=int64#4,<pos=int64#1),>t=int64#15
  619. # asm 2: movq 632(<basep=%rcx,<pos=%rdi),>t=%rbp
  620. movq 632(%rcx,%rdi),%rbp
  621. # qhasm: tysubx4 = t if =
  622. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  623. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  624. cmove %rbp,%r11
  625. # qhasm: t = *(uint64 *)(basep + 640 + pos)
  626. # asm 1: movq 640(<basep=int64#4,<pos=int64#1),>t=int64#15
  627. # asm 2: movq 640(<basep=%rcx,<pos=%rdi),>t=%rbp
  628. movq 640(%rcx,%rdi),%rbp
  629. # qhasm: txaddy0 = t if =
  630. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  631. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  632. cmove %rbp,%r12
  633. # qhasm: t = *(uint64 *)(basep + 648 + pos)
  634. # asm 1: movq 648(<basep=int64#4,<pos=int64#1),>t=int64#15
  635. # asm 2: movq 648(<basep=%rcx,<pos=%rdi),>t=%rbp
  636. movq 648(%rcx,%rdi),%rbp
  637. # qhasm: txaddy1 = t if =
  638. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  639. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  640. cmove %rbp,%r13
  641. # qhasm: t = *(uint64 *)(basep + 656 + pos)
  642. # asm 1: movq 656(<basep=int64#4,<pos=int64#1),>t=int64#15
  643. # asm 2: movq 656(<basep=%rcx,<pos=%rdi),>t=%rbp
  644. movq 656(%rcx,%rdi),%rbp
  645. # qhasm: txaddy2 = t if =
  646. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  647. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  648. cmove %rbp,%r14
  649. # qhasm: t = *(uint64 *)(basep + 664 + pos)
  650. # asm 1: movq 664(<basep=int64#4,<pos=int64#1),>t=int64#15
  651. # asm 2: movq 664(<basep=%rcx,<pos=%rdi),>t=%rbp
  652. movq 664(%rcx,%rdi),%rbp
  653. # qhasm: txaddy3 = t if =
  654. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  655. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  656. cmove %rbp,%r15
  657. # qhasm: t = *(uint64 *)(basep + 672 + pos)
  658. # asm 1: movq 672(<basep=int64#4,<pos=int64#1),>t=int64#15
  659. # asm 2: movq 672(<basep=%rcx,<pos=%rdi),>t=%rbp
  660. movq 672(%rcx,%rdi),%rbp
  661. # qhasm: txaddy4 = t if =
  662. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  663. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  664. cmove %rbp,%rbx
  665. # qhasm: =? u - 7
  666. # asm 1: cmp $7,<u=int64#5
  667. # asm 2: cmp $7,<u=%r8
  668. cmp $7,%r8
  669. # qhasm: t = *(uint64 *)(basep + 720 + pos)
  670. # asm 1: movq 720(<basep=int64#4,<pos=int64#1),>t=int64#15
  671. # asm 2: movq 720(<basep=%rcx,<pos=%rdi),>t=%rbp
  672. movq 720(%rcx,%rdi),%rbp
  673. # qhasm: tysubx0 = t if =
  674. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  675. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  676. cmove %rbp,%rsi
  677. # qhasm: t = *(uint64 *)(basep + 728 + pos)
  678. # asm 1: movq 728(<basep=int64#4,<pos=int64#1),>t=int64#15
  679. # asm 2: movq 728(<basep=%rcx,<pos=%rdi),>t=%rbp
  680. movq 728(%rcx,%rdi),%rbp
  681. # qhasm: tysubx1 = t if =
  682. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  683. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  684. cmove %rbp,%r9
  685. # qhasm: t = *(uint64 *)(basep + 736 + pos)
  686. # asm 1: movq 736(<basep=int64#4,<pos=int64#1),>t=int64#15
  687. # asm 2: movq 736(<basep=%rcx,<pos=%rdi),>t=%rbp
  688. movq 736(%rcx,%rdi),%rbp
  689. # qhasm: tysubx2 = t if =
  690. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  691. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  692. cmove %rbp,%rax
  693. # qhasm: t = *(uint64 *)(basep + 744 + pos)
  694. # asm 1: movq 744(<basep=int64#4,<pos=int64#1),>t=int64#15
  695. # asm 2: movq 744(<basep=%rcx,<pos=%rdi),>t=%rbp
  696. movq 744(%rcx,%rdi),%rbp
  697. # qhasm: tysubx3 = t if =
  698. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  699. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  700. cmove %rbp,%r10
  701. # qhasm: t = *(uint64 *)(basep + 752 + pos)
  702. # asm 1: movq 752(<basep=int64#4,<pos=int64#1),>t=int64#15
  703. # asm 2: movq 752(<basep=%rcx,<pos=%rdi),>t=%rbp
  704. movq 752(%rcx,%rdi),%rbp
  705. # qhasm: tysubx4 = t if =
  706. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  707. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  708. cmove %rbp,%r11
  709. # qhasm: t = *(uint64 *)(basep + 760 + pos)
  710. # asm 1: movq 760(<basep=int64#4,<pos=int64#1),>t=int64#15
  711. # asm 2: movq 760(<basep=%rcx,<pos=%rdi),>t=%rbp
  712. movq 760(%rcx,%rdi),%rbp
  713. # qhasm: txaddy0 = t if =
  714. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  715. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  716. cmove %rbp,%r12
  717. # qhasm: t = *(uint64 *)(basep + 768 + pos)
  718. # asm 1: movq 768(<basep=int64#4,<pos=int64#1),>t=int64#15
  719. # asm 2: movq 768(<basep=%rcx,<pos=%rdi),>t=%rbp
  720. movq 768(%rcx,%rdi),%rbp
  721. # qhasm: txaddy1 = t if =
  722. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  723. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  724. cmove %rbp,%r13
  725. # qhasm: t = *(uint64 *)(basep + 776 + pos)
  726. # asm 1: movq 776(<basep=int64#4,<pos=int64#1),>t=int64#15
  727. # asm 2: movq 776(<basep=%rcx,<pos=%rdi),>t=%rbp
  728. movq 776(%rcx,%rdi),%rbp
  729. # qhasm: txaddy2 = t if =
  730. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  731. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  732. cmove %rbp,%r14
  733. # qhasm: t = *(uint64 *)(basep + 784 + pos)
  734. # asm 1: movq 784(<basep=int64#4,<pos=int64#1),>t=int64#15
  735. # asm 2: movq 784(<basep=%rcx,<pos=%rdi),>t=%rbp
  736. movq 784(%rcx,%rdi),%rbp
  737. # qhasm: txaddy3 = t if =
  738. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  739. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  740. cmove %rbp,%r15
  741. # qhasm: t = *(uint64 *)(basep + 792 + pos)
  742. # asm 1: movq 792(<basep=int64#4,<pos=int64#1),>t=int64#15
  743. # asm 2: movq 792(<basep=%rcx,<pos=%rdi),>t=%rbp
  744. movq 792(%rcx,%rdi),%rbp
  745. # qhasm: txaddy4 = t if =
  746. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  747. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  748. cmove %rbp,%rbx
  749. # qhasm: =? u - 8
  750. # asm 1: cmp $8,<u=int64#5
  751. # asm 2: cmp $8,<u=%r8
  752. cmp $8,%r8
  753. # qhasm: t = *(uint64 *)(basep + 840 + pos)
  754. # asm 1: movq 840(<basep=int64#4,<pos=int64#1),>t=int64#15
  755. # asm 2: movq 840(<basep=%rcx,<pos=%rdi),>t=%rbp
  756. movq 840(%rcx,%rdi),%rbp
  757. # qhasm: tysubx0 = t if =
  758. # asm 1: cmove <t=int64#15,<tysubx0=int64#2
  759. # asm 2: cmove <t=%rbp,<tysubx0=%rsi
  760. cmove %rbp,%rsi
  761. # qhasm: t = *(uint64 *)(basep + 848 + pos)
  762. # asm 1: movq 848(<basep=int64#4,<pos=int64#1),>t=int64#15
  763. # asm 2: movq 848(<basep=%rcx,<pos=%rdi),>t=%rbp
  764. movq 848(%rcx,%rdi),%rbp
  765. # qhasm: tysubx1 = t if =
  766. # asm 1: cmove <t=int64#15,<tysubx1=int64#6
  767. # asm 2: cmove <t=%rbp,<tysubx1=%r9
  768. cmove %rbp,%r9
  769. # qhasm: t = *(uint64 *)(basep + 856 + pos)
  770. # asm 1: movq 856(<basep=int64#4,<pos=int64#1),>t=int64#15
  771. # asm 2: movq 856(<basep=%rcx,<pos=%rdi),>t=%rbp
  772. movq 856(%rcx,%rdi),%rbp
  773. # qhasm: tysubx2 = t if =
  774. # asm 1: cmove <t=int64#15,<tysubx2=int64#7
  775. # asm 2: cmove <t=%rbp,<tysubx2=%rax
  776. cmove %rbp,%rax
  777. # qhasm: t = *(uint64 *)(basep + 864 + pos)
  778. # asm 1: movq 864(<basep=int64#4,<pos=int64#1),>t=int64#15
  779. # asm 2: movq 864(<basep=%rcx,<pos=%rdi),>t=%rbp
  780. movq 864(%rcx,%rdi),%rbp
  781. # qhasm: tysubx3 = t if =
  782. # asm 1: cmove <t=int64#15,<tysubx3=int64#8
  783. # asm 2: cmove <t=%rbp,<tysubx3=%r10
  784. cmove %rbp,%r10
  785. # qhasm: t = *(uint64 *)(basep + 872 + pos)
  786. # asm 1: movq 872(<basep=int64#4,<pos=int64#1),>t=int64#15
  787. # asm 2: movq 872(<basep=%rcx,<pos=%rdi),>t=%rbp
  788. movq 872(%rcx,%rdi),%rbp
  789. # qhasm: tysubx4 = t if =
  790. # asm 1: cmove <t=int64#15,<tysubx4=int64#9
  791. # asm 2: cmove <t=%rbp,<tysubx4=%r11
  792. cmove %rbp,%r11
  793. # qhasm: t = *(uint64 *)(basep + 880 + pos)
  794. # asm 1: movq 880(<basep=int64#4,<pos=int64#1),>t=int64#15
  795. # asm 2: movq 880(<basep=%rcx,<pos=%rdi),>t=%rbp
  796. movq 880(%rcx,%rdi),%rbp
  797. # qhasm: txaddy0 = t if =
  798. # asm 1: cmove <t=int64#15,<txaddy0=int64#10
  799. # asm 2: cmove <t=%rbp,<txaddy0=%r12
  800. cmove %rbp,%r12
  801. # qhasm: t = *(uint64 *)(basep + 888 + pos)
  802. # asm 1: movq 888(<basep=int64#4,<pos=int64#1),>t=int64#15
  803. # asm 2: movq 888(<basep=%rcx,<pos=%rdi),>t=%rbp
  804. movq 888(%rcx,%rdi),%rbp
  805. # qhasm: txaddy1 = t if =
  806. # asm 1: cmove <t=int64#15,<txaddy1=int64#11
  807. # asm 2: cmove <t=%rbp,<txaddy1=%r13
  808. cmove %rbp,%r13
  809. # qhasm: t = *(uint64 *)(basep + 896 + pos)
  810. # asm 1: movq 896(<basep=int64#4,<pos=int64#1),>t=int64#15
  811. # asm 2: movq 896(<basep=%rcx,<pos=%rdi),>t=%rbp
  812. movq 896(%rcx,%rdi),%rbp
  813. # qhasm: txaddy2 = t if =
  814. # asm 1: cmove <t=int64#15,<txaddy2=int64#12
  815. # asm 2: cmove <t=%rbp,<txaddy2=%r14
  816. cmove %rbp,%r14
  817. # qhasm: t = *(uint64 *)(basep + 904 + pos)
  818. # asm 1: movq 904(<basep=int64#4,<pos=int64#1),>t=int64#15
  819. # asm 2: movq 904(<basep=%rcx,<pos=%rdi),>t=%rbp
  820. movq 904(%rcx,%rdi),%rbp
  821. # qhasm: txaddy3 = t if =
  822. # asm 1: cmove <t=int64#15,<txaddy3=int64#13
  823. # asm 2: cmove <t=%rbp,<txaddy3=%r15
  824. cmove %rbp,%r15
  825. # qhasm: t = *(uint64 *)(basep + 912 + pos)
  826. # asm 1: movq 912(<basep=int64#4,<pos=int64#1),>t=int64#15
  827. # asm 2: movq 912(<basep=%rcx,<pos=%rdi),>t=%rbp
  828. movq 912(%rcx,%rdi),%rbp
  829. # qhasm: txaddy4 = t if =
  830. # asm 1: cmove <t=int64#15,<txaddy4=int64#14
  831. # asm 2: cmove <t=%rbp,<txaddy4=%rbx
  832. cmove %rbp,%rbx
  833. # qhasm: signed<? b - 0
  834. # asm 1: cmp $0,<b=int64#3
  835. # asm 2: cmp $0,<b=%rdx
  836. cmp $0,%rdx
  837. # qhasm: t = tysubx0
  838. # asm 1: mov <tysubx0=int64#2,>t=int64#15
  839. # asm 2: mov <tysubx0=%rsi,>t=%rbp
  840. mov %rsi,%rbp
  841. # qhasm: tysubx0 = txaddy0 if signed<
  842. # asm 1: cmovl <txaddy0=int64#10,<tysubx0=int64#2
  843. # asm 2: cmovl <txaddy0=%r12,<tysubx0=%rsi
  844. cmovl %r12,%rsi
  845. # qhasm: txaddy0 = t if signed<
  846. # asm 1: cmovl <t=int64#15,<txaddy0=int64#10
  847. # asm 2: cmovl <t=%rbp,<txaddy0=%r12
  848. cmovl %rbp,%r12
  849. # qhasm: t = tysubx1
  850. # asm 1: mov <tysubx1=int64#6,>t=int64#15
  851. # asm 2: mov <tysubx1=%r9,>t=%rbp
  852. mov %r9,%rbp
  853. # qhasm: tysubx1 = txaddy1 if signed<
  854. # asm 1: cmovl <txaddy1=int64#11,<tysubx1=int64#6
  855. # asm 2: cmovl <txaddy1=%r13,<tysubx1=%r9
  856. cmovl %r13,%r9
  857. # qhasm: txaddy1 = t if signed<
  858. # asm 1: cmovl <t=int64#15,<txaddy1=int64#11
  859. # asm 2: cmovl <t=%rbp,<txaddy1=%r13
  860. cmovl %rbp,%r13
  861. # qhasm: t = tysubx2
  862. # asm 1: mov <tysubx2=int64#7,>t=int64#15
  863. # asm 2: mov <tysubx2=%rax,>t=%rbp
  864. mov %rax,%rbp
  865. # qhasm: tysubx2 = txaddy2 if signed<
  866. # asm 1: cmovl <txaddy2=int64#12,<tysubx2=int64#7
  867. # asm 2: cmovl <txaddy2=%r14,<tysubx2=%rax
  868. cmovl %r14,%rax
  869. # qhasm: txaddy2 = t if signed<
  870. # asm 1: cmovl <t=int64#15,<txaddy2=int64#12
  871. # asm 2: cmovl <t=%rbp,<txaddy2=%r14
  872. cmovl %rbp,%r14
  873. # qhasm: t = tysubx3
  874. # asm 1: mov <tysubx3=int64#8,>t=int64#15
  875. # asm 2: mov <tysubx3=%r10,>t=%rbp
  876. mov %r10,%rbp
  877. # qhasm: tysubx3 = txaddy3 if signed<
  878. # asm 1: cmovl <txaddy3=int64#13,<tysubx3=int64#8
  879. # asm 2: cmovl <txaddy3=%r15,<tysubx3=%r10
  880. cmovl %r15,%r10
  881. # qhasm: txaddy3 = t if signed<
  882. # asm 1: cmovl <t=int64#15,<txaddy3=int64#13
  883. # asm 2: cmovl <t=%rbp,<txaddy3=%r15
  884. cmovl %rbp,%r15
  885. # qhasm: t = tysubx4
  886. # asm 1: mov <tysubx4=int64#9,>t=int64#15
  887. # asm 2: mov <tysubx4=%r11,>t=%rbp
  888. mov %r11,%rbp
  889. # qhasm: tysubx4 = txaddy4 if signed<
  890. # asm 1: cmovl <txaddy4=int64#14,<tysubx4=int64#9
  891. # asm 2: cmovl <txaddy4=%rbx,<tysubx4=%r11
  892. cmovl %rbx,%r11
  893. # qhasm: txaddy4 = t if signed<
  894. # asm 1: cmovl <t=int64#15,<txaddy4=int64#14
  895. # asm 2: cmovl <t=%rbp,<txaddy4=%rbx
  896. cmovl %rbp,%rbx
  897. # qhasm: tp = tp_stack
  898. # asm 1: movq <tp_stack=stack64#8,>tp=int64#15
  899. # asm 2: movq <tp_stack=56(%rsp),>tp=%rbp
  900. movq 56(%rsp),%rbp
  901. # qhasm: *(uint64 *)(tp + 0) = tysubx0
  902. # asm 1: movq <tysubx0=int64#2,0(<tp=int64#15)
  903. # asm 2: movq <tysubx0=%rsi,0(<tp=%rbp)
  904. movq %rsi,0(%rbp)
  905. # qhasm: *(uint64 *)(tp + 8) = tysubx1
  906. # asm 1: movq <tysubx1=int64#6,8(<tp=int64#15)
  907. # asm 2: movq <tysubx1=%r9,8(<tp=%rbp)
  908. movq %r9,8(%rbp)
  909. # qhasm: *(uint64 *)(tp + 16) = tysubx2
  910. # asm 1: movq <tysubx2=int64#7,16(<tp=int64#15)
  911. # asm 2: movq <tysubx2=%rax,16(<tp=%rbp)
  912. movq %rax,16(%rbp)
  913. # qhasm: *(uint64 *)(tp + 24) = tysubx3
  914. # asm 1: movq <tysubx3=int64#8,24(<tp=int64#15)
  915. # asm 2: movq <tysubx3=%r10,24(<tp=%rbp)
  916. movq %r10,24(%rbp)
  917. # qhasm: *(uint64 *)(tp + 32) = tysubx4
  918. # asm 1: movq <tysubx4=int64#9,32(<tp=int64#15)
  919. # asm 2: movq <tysubx4=%r11,32(<tp=%rbp)
  920. movq %r11,32(%rbp)
  921. # qhasm: *(uint64 *)(tp + 40) = txaddy0
  922. # asm 1: movq <txaddy0=int64#10,40(<tp=int64#15)
  923. # asm 2: movq <txaddy0=%r12,40(<tp=%rbp)
  924. movq %r12,40(%rbp)
  925. # qhasm: *(uint64 *)(tp + 48) = txaddy1
  926. # asm 1: movq <txaddy1=int64#11,48(<tp=int64#15)
  927. # asm 2: movq <txaddy1=%r13,48(<tp=%rbp)
  928. movq %r13,48(%rbp)
  929. # qhasm: *(uint64 *)(tp + 56) = txaddy2
  930. # asm 1: movq <txaddy2=int64#12,56(<tp=int64#15)
  931. # asm 2: movq <txaddy2=%r14,56(<tp=%rbp)
  932. movq %r14,56(%rbp)
  933. # qhasm: *(uint64 *)(tp + 64) = txaddy3
  934. # asm 1: movq <txaddy3=int64#13,64(<tp=int64#15)
  935. # asm 2: movq <txaddy3=%r15,64(<tp=%rbp)
  936. movq %r15,64(%rbp)
  937. # qhasm: *(uint64 *)(tp + 72) = txaddy4
  938. # asm 1: movq <txaddy4=int64#14,72(<tp=int64#15)
  939. # asm 2: movq <txaddy4=%rbx,72(<tp=%rbp)
  940. movq %rbx,72(%rbp)
  941. # qhasm: tt2d0 = 0
  942. # asm 1: mov $0,>tt2d0=int64#2
  943. # asm 2: mov $0,>tt2d0=%rsi
  944. mov $0,%rsi
  945. # qhasm: tt2d1 = 0
  946. # asm 1: mov $0,>tt2d1=int64#6
  947. # asm 2: mov $0,>tt2d1=%r9
  948. mov $0,%r9
  949. # qhasm: tt2d2 = 0
  950. # asm 1: mov $0,>tt2d2=int64#7
  951. # asm 2: mov $0,>tt2d2=%rax
  952. mov $0,%rax
  953. # qhasm: tt2d3 = 0
  954. # asm 1: mov $0,>tt2d3=int64#8
  955. # asm 2: mov $0,>tt2d3=%r10
  956. mov $0,%r10
  957. # qhasm: tt2d4 = 0
  958. # asm 1: mov $0,>tt2d4=int64#9
  959. # asm 2: mov $0,>tt2d4=%r11
  960. mov $0,%r11
  961. # qhasm: =? u - 1
  962. # asm 1: cmp $1,<u=int64#5
  963. # asm 2: cmp $1,<u=%r8
  964. cmp $1,%r8
  965. # qhasm: t = *(uint64 *)(basep + 80 + pos)
  966. # asm 1: movq 80(<basep=int64#4,<pos=int64#1),>t=int64#10
  967. # asm 2: movq 80(<basep=%rcx,<pos=%rdi),>t=%r12
  968. movq 80(%rcx,%rdi),%r12
  969. # qhasm: tt2d0 = t if =
  970. # asm 1: cmove <t=int64#10,<tt2d0=int64#2
  971. # asm 2: cmove <t=%r12,<tt2d0=%rsi
  972. cmove %r12,%rsi
  973. # qhasm: t = *(uint64 *)(basep + 88 + pos)
  974. # asm 1: movq 88(<basep=int64#4,<pos=int64#1),>t=int64#10
  975. # asm 2: movq 88(<basep=%rcx,<pos=%rdi),>t=%r12
  976. movq 88(%rcx,%rdi),%r12
  977. # qhasm: tt2d1 = t if =
  978. # asm 1: cmove <t=int64#10,<tt2d1=int64#6
  979. # asm 2: cmove <t=%r12,<tt2d1=%r9
  980. cmove %r12,%r9
  981. # qhasm: t = *(uint64 *)(basep + 96 + pos)
  982. # asm 1: movq 96(<basep=int64#4,<pos=int64#1),>t=int64#10
  983. # asm 2: movq 96(<basep=%rcx,<pos=%rdi),>t=%r12
  984. movq 96(%rcx,%rdi),%r12
  985. # qhasm: tt2d2 = t if =
  986. # asm 1: cmove <t=int64#10,<tt2d2=int64#7
  987. # asm 2: cmove <t=%r12,<tt2d2=%rax
  988. cmove %r12,%rax
  989. # qhasm: t = *(uint64 *)(basep + 104 + pos)
  990. # asm 1: movq 104(<basep=int64#4,<pos=int64#1),>t=int64#10
  991. # asm 2: movq 104(<basep=%rcx,<pos=%rdi),>t=%r12
  992. movq 104(%rcx,%rdi),%r12
  993. # qhasm: tt2d3 = t if =
  994. # asm 1: cmove <t=int64#10,<tt2d3=int64#8
  995. # asm 2: cmove <t=%r12,<tt2d3=%r10
  996. cmove %r12,%r10
  997. # qhasm: t = *(uint64 *)(basep + 112 + pos)
  998. # asm 1: movq 112(<basep=int64#4,<pos=int64#1),>t=int64#10
  999. # asm 2: movq 112(<basep=%rcx,<pos=%rdi),>t=%r12
  1000. movq 112(%rcx,%rdi),%r12
  1001. # qhasm: tt2d4 = t if =
  1002. # asm 1: cmove <t=int64#10,<tt2d4=int64#9
  1003. # asm 2: cmove <t=%r12,<tt2d4=%r11
  1004. cmove %r12,%r11
  1005. # qhasm: =? u - 2
  1006. # asm 1: cmp $2,<u=int64#5
  1007. # asm 2: cmp $2,<u=%r8
  1008. cmp $2,%r8
  1009. # qhasm: t = *(uint64 *)(basep + 200 + pos)
  1010. # asm 1: movq 200(<basep=int64#4,<pos=int64#1),>t=int64#10
  1011. # asm 2: movq 200(<basep=%rcx,<pos=%rdi),>t=%r12
  1012. movq 200(%rcx,%rdi),%r12
  1013. # qhasm: tt2d0 = t if =
  1014. # asm 1: cmove <t=int64#10,<tt2d0=int64#2
  1015. # asm 2: cmove <t=%r12,<tt2d0=%rsi
  1016. cmove %r12,%rsi
  1017. # qhasm: t = *(uint64 *)(basep + 208 + pos)
  1018. # asm 1: movq 208(<basep=int64#4,<pos=int64#1),>t=int64#10
  1019. # asm 2: movq 208(<basep=%rcx,<pos=%rdi),>t=%r12
  1020. movq 208(%rcx,%rdi),%r12
  1021. # qhasm: tt2d1 = t if =
  1022. # asm 1: cmove <t=int64#10,<tt2d1=int64#6
  1023. # asm 2: cmove <t=%r12,<tt2d1=%r9
  1024. cmove %r12,%r9
  1025. # qhasm: t = *(uint64 *)(basep + 216 + pos)
  1026. # asm 1: movq 216(<basep=int64#4,<pos=int64#1),>t=int64#10
  1027. # asm 2: movq 216(<basep=%rcx,<pos=%rdi),>t=%r12
  1028. movq 216(%rcx,%rdi),%r12
  1029. # qhasm: tt2d2 = t if =
  1030. # asm 1: cmove <t=int64#10,<tt2d2=int64#7
  1031. # asm 2: cmove <t=%r12,<tt2d2=%rax
  1032. cmove %r12,%rax
  1033. # qhasm: t = *(uint64 *)(basep + 224 + pos)
  1034. # asm 1: movq 224(<basep=int64#4,<pos=int64#1),>t=int64#10
  1035. # asm 2: movq 224(<basep=%rcx,<pos=%rdi),>t=%r12
  1036. movq 224(%rcx,%rdi),%r12
  1037. # qhasm: tt2d3 = t if =
  1038. # asm 1: cmove <t=int64#10,<tt2d3=int64#8
  1039. # asm 2: cmove <t=%r12,<tt2d3=%r10
  1040. cmove %r12,%r10
  1041. # qhasm: t = *(uint64 *)(basep + 232 + pos)
  1042. # asm 1: movq 232(<basep=int64#4,<pos=int64#1),>t=int64#10
  1043. # asm 2: movq 232(<basep=%rcx,<pos=%rdi),>t=%r12
  1044. movq 232(%rcx,%rdi),%r12
  1045. # qhasm: tt2d4 = t if =
  1046. # asm 1: cmove <t=int64#10,<tt2d4=int64#9
  1047. # asm 2: cmove <t=%r12,<tt2d4=%r11
  1048. cmove %r12,%r11
  1049. # qhasm: =? u - 3
  1050. # asm 1: cmp $3,<u=int64#5
  1051. # asm 2: cmp $3,<u=%r8
  1052. cmp $3,%r8
  1053. # qhasm: t = *(uint64 *)(basep + 320 + pos)
  1054. # asm 1: movq 320(<basep=int64#4,<pos=int64#1),>t=int64#10
  1055. # asm 2: movq 320(<basep=%rcx,<pos=%rdi),>t=%r12
  1056. movq 320(%rcx,%rdi),%r12
  1057. # qhasm: tt2d0 = t if =
  1058. # asm 1: cmove <t=int64#10,<tt2d0=int64#2
  1059. # asm 2: cmove <t=%r12,<tt2d0=%rsi
  1060. cmove %r12,%rsi
  1061. # qhasm: t = *(uint64 *)(basep + 328 + pos)
  1062. # asm 1: movq 328(<basep=int64#4,<pos=int64#1),>t=int64#10
  1063. # asm 2: movq 328(<basep=%rcx,<pos=%rdi),>t=%r12
  1064. movq 328(%rcx,%rdi),%r12
  1065. # qhasm: tt2d1 = t if =
  1066. # asm 1: cmove <t=int64#10,<tt2d1=int64#6
  1067. # asm 2: cmove <t=%r12,<tt2d1=%r9
  1068. cmove %r12,%r9
  1069. # qhasm: t = *(uint64 *)(basep + 336 + pos)
  1070. # asm 1: movq 336(<basep=int64#4,<pos=int64#1),>t=int64#10
  1071. # asm 2: movq 336(<basep=%rcx,<pos=%rdi),>t=%r12
  1072. movq 336(%rcx,%rdi),%r12
  1073. # qhasm: tt2d2 = t if =
  1074. # asm 1: cmove <t=int64#10,<tt2d2=int64#7
  1075. # asm 2: cmove <t=%r12,<tt2d2=%rax
  1076. cmove %r12,%rax
  1077. # qhasm: t = *(uint64 *)(basep + 344 + pos)
  1078. # asm 1: movq 344(<basep=int64#4,<pos=int64#1),>t=int64#10
  1079. # asm 2: movq 344(<basep=%rcx,<pos=%rdi),>t=%r12
  1080. movq 344(%rcx,%rdi),%r12
  1081. # qhasm: tt2d3 = t if =
  1082. # asm 1: cmove <t=int64#10,<tt2d3=int64#8
  1083. # asm 2: cmove <t=%r12,<tt2d3=%r10
  1084. cmove %r12,%r10
  1085. # qhasm: t = *(uint64 *)(basep + 352 + pos)
  1086. # asm 1: movq 352(<basep=int64#4,<pos=int64#1),>t=int64#10
  1087. # asm 2: movq 352(<basep=%rcx,<pos=%rdi),>t=%r12
  1088. movq 352(%rcx,%rdi),%r12
  1089. # qhasm: tt2d4 = t if =
  1090. # asm 1: cmove <t=int64#10,<tt2d4=int64#9
  1091. # asm 2: cmove <t=%r12,<tt2d4=%r11
  1092. cmove %r12,%r11
  1093. # qhasm: =? u - 4
  1094. # asm 1: cmp $4,<u=int64#5
  1095. # asm 2: cmp $4,<u=%r8
  1096. cmp $4,%r8
  1097. # qhasm: t = *(uint64 *)(basep + 440 + pos)
  1098. # asm 1: movq 440(<basep=int64#4,<pos=int64#1),>t=int64#10
  1099. # asm 2: movq 440(<basep=%rcx,<pos=%rdi),>t=%r12
  1100. movq 440(%rcx,%rdi),%r12
  1101. # qhasm: tt2d0 = t if =
  1102. # asm 1: cmove <t=int64#10,<tt2d0=int64#2
  1103. # asm 2: cmove <t=%r12,<tt2d0=%rsi
  1104. cmove %r12,%rsi
  1105. # qhasm: t = *(uint64 *)(basep + 448 + pos)
  1106. # asm 1: movq 448(<basep=int64#4,<pos=int64#1),>t=int64#10
  1107. # asm 2: movq 448(<basep=%rcx,<pos=%rdi),>t=%r12
  1108. movq 448(%rcx,%rdi),%r12
  1109. # qhasm: tt2d1 = t if =
  1110. # asm 1: cmove <t=int64#10,<tt2d1=int64#6
  1111. # asm 2: cmove <t=%r12,<tt2d1=%r9
  1112. cmove %r12,%r9
  1113. # qhasm: t = *(uint64 *)(basep + 456 + pos)
  1114. # asm 1: movq 456(<basep=int64#4,<pos=int64#1),>t=int64#10
  1115. # asm 2: movq 456(<basep=%rcx,<pos=%rdi),>t=%r12
  1116. movq 456(%rcx,%rdi),%r12
  1117. # qhasm: tt2d2 = t if =
  1118. # asm 1: cmove <t=int64#10,<tt2d2=int64#7
  1119. # asm 2: cmove <t=%r12,<tt2d2=%rax
  1120. cmove %r12,%rax
  1121. # qhasm: t = *(uint64 *)(basep + 464 + pos)
  1122. # asm 1: movq 464(<basep=int64#4,<pos=int64#1),>t=int64#10
  1123. # asm 2: movq 464(<basep=%rcx,<pos=%rdi),>t=%r12
  1124. movq 464(%rcx,%rdi),%r12
  1125. # qhasm: tt2d3 = t if =
  1126. # asm 1: cmove <t=int64#10,<tt2d3=int64#8
  1127. # asm 2: cmove <t=%r12,<tt2d3=%r10
  1128. cmove %r12,%r10
  1129. # qhasm: t = *(uint64 *)(basep + 472 + pos)
  1130. # asm 1: movq 472(<basep=int64#4,<pos=int64#1),>t=int64#10
  1131. # asm 2: movq 472(<basep=%rcx,<pos=%rdi),>t=%r12
  1132. movq 472(%rcx,%rdi),%r12
  1133. # qhasm: tt2d4 = t if =
  1134. # asm 1: cmove <t=int64#10,<tt2d4=int64#9
  1135. # asm 2: cmove <t=%r12,<tt2d4=%r11
  1136. cmove %r12,%r11
  1137. # qhasm: =? u - 5
  1138. # asm 1: cmp $5,<u=int64#5
  1139. # asm 2: cmp $5,<u=%r8
  1140. cmp $5,%r8
  1141. # qhasm: t = *(uint64 *)(basep + 560 + pos)
  1142. # asm 1: movq 560(<basep=int64#4,<pos=int64#1),>t=int64#10
  1143. # asm 2: movq 560(<basep=%rcx,<pos=%rdi),>t=%r12
  1144. movq 560(%rcx,%rdi),%r12
  1145. # qhasm: tt2d0 = t if =
  1146. # asm 1: cmove <t=int64#10,<tt2d0=int64#2
  1147. # asm 2: cmove <t=%r12,<tt2d0=%rsi
  1148. cmove %r12,%rsi
  1149. # qhasm: t = *(uint64 *)(basep + 568 + pos)
  1150. # asm 1: movq 568(<basep=int64#4,<pos=int64#1),>t=int64#10
  1151. # asm 2: movq 568(<basep=%rcx,<pos=%rdi),>t=%r12
  1152. movq 568(%rcx,%rdi),%r12
  1153. # qhasm: tt2d1 = t if =
  1154. # asm 1: cmove <t=int64#10,<tt2d1=int64#6
  1155. # asm 2: cmove <t=%r12,<tt2d1=%r9
  1156. cmove %r12,%r9
  1157. # qhasm: t = *(uint64 *)(basep + 576 + pos)
  1158. # asm 1: movq 576(<basep=int64#4,<pos=int64#1),>t=int64#10
  1159. # asm 2: movq 576(<basep=%rcx,<pos=%rdi),>t=%r12
  1160. movq 576(%rcx,%rdi),%r12
  1161. # qhasm: tt2d2 = t if =
  1162. # asm 1: cmove <t=int64#10,<tt2d2=int64#7
  1163. # asm 2: cmove <t=%r12,<tt2d2=%rax
  1164. cmove %r12,%rax
  1165. # qhasm: t = *(uint64 *)(basep + 584 + pos)
  1166. # asm 1: movq 584(<basep=int64#4,<pos=int64#1),>t=int64#10
  1167. # asm 2: movq 584(<basep=%rcx,<pos=%rdi),>t=%r12
  1168. movq 584(%rcx,%rdi),%r12
  1169. # qhasm: tt2d3 = t if =
  1170. # asm 1: cmove <t=int64#10,<tt2d3=int64#8
  1171. # asm 2: cmove <t=%r12,<tt2d3=%r10
  1172. cmove %r12,%r10
  1173. # qhasm: t = *(uint64 *)(basep + 592 + pos)
  1174. # asm 1: movq 592(<basep=int64#4,<pos=int64#1),>t=int64#10
  1175. # asm 2: movq 592(<basep=%rcx,<pos=%rdi),>t=%r12
  1176. movq 592(%rcx,%rdi),%r12
  1177. # qhasm: tt2d4 = t if =
  1178. # asm 1: cmove <t=int64#10,<tt2d4=int64#9
  1179. # asm 2: cmove <t=%r12,<tt2d4=%r11
  1180. cmove %r12,%r11
  1181. # qhasm: =? u - 6
  1182. # asm 1: cmp $6,<u=int64#5
  1183. # asm 2: cmp $6,<u=%r8
  1184. cmp $6,%r8
  1185. # qhasm: t = *(uint64 *)(basep + 680 + pos)
  1186. # asm 1: movq 680(<basep=int64#4,<pos=int64#1),>t=int64#10
  1187. # asm 2: movq 680(<basep=%rcx,<pos=%rdi),>t=%r12
  1188. movq 680(%rcx,%rdi),%r12
  1189. # qhasm: tt2d0 = t if =
  1190. # asm 1: cmove <t=int64#10,<tt2d0=int64#2
  1191. # asm 2: cmove <t=%r12,<tt2d0=%rsi
  1192. cmove %r12,%rsi
  1193. # qhasm: t = *(uint64 *)(basep + 688 + pos)
  1194. # asm 1: movq 688(<basep=int64#4,<pos=int64#1),>t=int64#10
  1195. # asm 2: movq 688(<basep=%rcx,<pos=%rdi),>t=%r12
  1196. movq 688(%rcx,%rdi),%r12
  1197. # qhasm: tt2d1 = t if =
  1198. # asm 1: cmove <t=int64#10,<tt2d1=int64#6
  1199. # asm 2: cmove <t=%r12,<tt2d1=%r9
  1200. cmove %r12,%r9
  1201. # qhasm: t = *(uint64 *)(basep + 696 + pos)
  1202. # asm 1: movq 696(<basep=int64#4,<pos=int64#1),>t=int64#10
  1203. # asm 2: movq 696(<basep=%rcx,<pos=%rdi),>t=%r12
  1204. movq 696(%rcx,%rdi),%r12
  1205. # qhasm: tt2d2 = t if =
  1206. # asm 1: cmove <t=int64#10,<tt2d2=int64#7
  1207. # asm 2: cmove <t=%r12,<tt2d2=%rax
  1208. cmove %r12,%rax
  1209. # qhasm: t = *(uint64 *)(basep + 704 + pos)
  1210. # asm 1: movq 704(<basep=int64#4,<pos=int64#1),>t=int64#10
  1211. # asm 2: movq 704(<basep=%rcx,<pos=%rdi),>t=%r12
  1212. movq 704(%rcx,%rdi),%r12
  1213. # qhasm: tt2d3 = t if =
  1214. # asm 1: cmove <t=int64#10,<tt2d3=int64#8
  1215. # asm 2: cmove <t=%r12,<tt2d3=%r10
  1216. cmove %r12,%r10
  1217. # qhasm: t = *(uint64 *)(basep + 712 + pos)
  1218. # asm 1: movq 712(<basep=int64#4,<pos=int64#1),>t=int64#10
  1219. # asm 2: movq 712(<basep=%rcx,<pos=%rdi),>t=%r12
  1220. movq 712(%rcx,%rdi),%r12
  1221. # qhasm: tt2d4 = t if =
  1222. # asm 1: cmove <t=int64#10,<tt2d4=int64#9
  1223. # asm 2: cmove <t=%r12,<tt2d4=%r11
  1224. cmove %r12,%r11
  1225. # qhasm: =? u - 7
  1226. # asm 1: cmp $7,<u=int64#5
  1227. # asm 2: cmp $7,<u=%r8
  1228. cmp $7,%r8
  1229. # qhasm: t = *(uint64 *)(basep + 800 + pos)
  1230. # asm 1: movq 800(<basep=int64#4,<pos=int64#1),>t=int64#10
  1231. # asm 2: movq 800(<basep=%rcx,<pos=%rdi),>t=%r12
  1232. movq 800(%rcx,%rdi),%r12
  1233. # qhasm: tt2d0 = t if =
  1234. # asm 1: cmove <t=int64#10,<tt2d0=int64#2
  1235. # asm 2: cmove <t=%r12,<tt2d0=%rsi
  1236. cmove %r12,%rsi
  1237. # qhasm: t = *(uint64 *)(basep + 808 + pos)
  1238. # asm 1: movq 808(<basep=int64#4,<pos=int64#1),>t=int64#10
  1239. # asm 2: movq 808(<basep=%rcx,<pos=%rdi),>t=%r12
  1240. movq 808(%rcx,%rdi),%r12
  1241. # qhasm: tt2d1 = t if =
  1242. # asm 1: cmove <t=int64#10,<tt2d1=int64#6
  1243. # asm 2: cmove <t=%r12,<tt2d1=%r9
  1244. cmove %r12,%r9
  1245. # qhasm: t = *(uint64 *)(basep + 816 + pos)
  1246. # asm 1: movq 816(<basep=int64#4,<pos=int64#1),>t=int64#10
  1247. # asm 2: movq 816(<basep=%rcx,<pos=%rdi),>t=%r12
  1248. movq 816(%rcx,%rdi),%r12
  1249. # qhasm: tt2d2 = t if =
  1250. # asm 1: cmove <t=int64#10,<tt2d2=int64#7
  1251. # asm 2: cmove <t=%r12,<tt2d2=%rax
  1252. cmove %r12,%rax
  1253. # qhasm: t = *(uint64 *)(basep + 824 + pos)
  1254. # asm 1: movq 824(<basep=int64#4,<pos=int64#1),>t=int64#10
  1255. # asm 2: movq 824(<basep=%rcx,<pos=%rdi),>t=%r12
  1256. movq 824(%rcx,%rdi),%r12
  1257. # qhasm: tt2d3 = t if =
  1258. # asm 1: cmove <t=int64#10,<tt2d3=int64#8
  1259. # asm 2: cmove <t=%r12,<tt2d3=%r10
  1260. cmove %r12,%r10
  1261. # qhasm: t = *(uint64 *)(basep + 832 + pos)
  1262. # asm 1: movq 832(<basep=int64#4,<pos=int64#1),>t=int64#10
  1263. # asm 2: movq 832(<basep=%rcx,<pos=%rdi),>t=%r12
  1264. movq 832(%rcx,%rdi),%r12
  1265. # qhasm: tt2d4 = t if =
  1266. # asm 1: cmove <t=int64#10,<tt2d4=int64#9
  1267. # asm 2: cmove <t=%r12,<tt2d4=%r11
  1268. cmove %r12,%r11
  1269. # qhasm: =? u - 8
  1270. # asm 1: cmp $8,<u=int64#5
  1271. # asm 2: cmp $8,<u=%r8
  1272. cmp $8,%r8
  1273. # qhasm: t = *(uint64 *)(basep + 920 + pos)
  1274. # asm 1: movq 920(<basep=int64#4,<pos=int64#1),>t=int64#5
  1275. # asm 2: movq 920(<basep=%rcx,<pos=%rdi),>t=%r8
  1276. movq 920(%rcx,%rdi),%r8
  1277. # qhasm: tt2d0 = t if =
  1278. # asm 1: cmove <t=int64#5,<tt2d0=int64#2
  1279. # asm 2: cmove <t=%r8,<tt2d0=%rsi
  1280. cmove %r8,%rsi
  1281. # qhasm: t = *(uint64 *)(basep + 928 + pos)
  1282. # asm 1: movq 928(<basep=int64#4,<pos=int64#1),>t=int64#5
  1283. # asm 2: movq 928(<basep=%rcx,<pos=%rdi),>t=%r8
  1284. movq 928(%rcx,%rdi),%r8
  1285. # qhasm: tt2d1 = t if =
  1286. # asm 1: cmove <t=int64#5,<tt2d1=int64#6
  1287. # asm 2: cmove <t=%r8,<tt2d1=%r9
  1288. cmove %r8,%r9
  1289. # qhasm: t = *(uint64 *)(basep + 936 + pos)
  1290. # asm 1: movq 936(<basep=int64#4,<pos=int64#1),>t=int64#5
  1291. # asm 2: movq 936(<basep=%rcx,<pos=%rdi),>t=%r8
  1292. movq 936(%rcx,%rdi),%r8
  1293. # qhasm: tt2d2 = t if =
  1294. # asm 1: cmove <t=int64#5,<tt2d2=int64#7
  1295. # asm 2: cmove <t=%r8,<tt2d2=%rax
  1296. cmove %r8,%rax
  1297. # qhasm: t = *(uint64 *)(basep + 944 + pos)
  1298. # asm 1: movq 944(<basep=int64#4,<pos=int64#1),>t=int64#5
  1299. # asm 2: movq 944(<basep=%rcx,<pos=%rdi),>t=%r8
  1300. movq 944(%rcx,%rdi),%r8
  1301. # qhasm: tt2d3 = t if =
  1302. # asm 1: cmove <t=int64#5,<tt2d3=int64#8
  1303. # asm 2: cmove <t=%r8,<tt2d3=%r10
  1304. cmove %r8,%r10
  1305. # qhasm: t = *(uint64 *)(basep + 952 + pos)
  1306. # asm 1: movq 952(<basep=int64#4,<pos=int64#1),>t=int64#1
  1307. # asm 2: movq 952(<basep=%rcx,<pos=%rdi),>t=%rdi
  1308. movq 952(%rcx,%rdi),%rdi
  1309. # qhasm: tt2d4 = t if =
  1310. # asm 1: cmove <t=int64#1,<tt2d4=int64#9
  1311. # asm 2: cmove <t=%rdi,<tt2d4=%r11
  1312. cmove %rdi,%r11
  1313. # qhasm: tt0 = *(uint64 *)&CRYPTO_NAMESPACE(batch_2P0)
  1314. # asm 1: movq CRYPTO_NAMESPACE(batch_2P0),>tt0=int64#1
  1315. # asm 2: movq CRYPTO_NAMESPACE(batch_2P0),>tt0=%rdi
  1316. movq CRYPTO_NAMESPACE(batch_2P0)(%rip),%rdi
  1317. # qhasm: tt1 = *(uint64 *)&CRYPTO_NAMESPACE(batch_2P1234)
  1318. # asm 1: movq CRYPTO_NAMESPACE(batch_2P1234),>tt1=int64#4
  1319. # asm 2: movq CRYPTO_NAMESPACE(batch_2P1234),>tt1=%rcx
  1320. movq CRYPTO_NAMESPACE(batch_2P1234)(%rip),%rcx
  1321. # qhasm: tt2 = *(uint64 *)&CRYPTO_NAMESPACE(batch_2P1234)
  1322. # asm 1: movq CRYPTO_NAMESPACE(batch_2P1234),>tt2=int64#5
  1323. # asm 2: movq CRYPTO_NAMESPACE(batch_2P1234),>tt2=%r8
  1324. movq CRYPTO_NAMESPACE(batch_2P1234)(%rip),%r8
  1325. # qhasm: tt3 = *(uint64 *)&CRYPTO_NAMESPACE(batch_2P1234)
  1326. # asm 1: movq CRYPTO_NAMESPACE(batch_2P1234),>tt3=int64#10
  1327. # asm 2: movq CRYPTO_NAMESPACE(batch_2P1234),>tt3=%r12
  1328. movq CRYPTO_NAMESPACE(batch_2P1234)(%rip),%r12
  1329. # qhasm: tt4 = *(uint64 *)&CRYPTO_NAMESPACE(batch_2P1234)
  1330. # asm 1: movq CRYPTO_NAMESPACE(batch_2P1234),>tt4=int64#11
  1331. # asm 2: movq CRYPTO_NAMESPACE(batch_2P1234),>tt4=%r13
  1332. movq CRYPTO_NAMESPACE(batch_2P1234)(%rip),%r13
  1333. # qhasm: tt0 -= tt2d0
  1334. # asm 1: sub <tt2d0=int64#2,<tt0=int64#1
  1335. # asm 2: sub <tt2d0=%rsi,<tt0=%rdi
  1336. sub %rsi,%rdi
  1337. # qhasm: tt1 -= tt2d1
  1338. # asm 1: sub <tt2d1=int64#6,<tt1=int64#4
  1339. # asm 2: sub <tt2d1=%r9,<tt1=%rcx
  1340. sub %r9,%rcx
  1341. # qhasm: tt2 -= tt2d2
  1342. # asm 1: sub <tt2d2=int64#7,<tt2=int64#5
  1343. # asm 2: sub <tt2d2=%rax,<tt2=%r8
  1344. sub %rax,%r8
  1345. # qhasm: tt3 -= tt2d3
  1346. # asm 1: sub <tt2d3=int64#8,<tt3=int64#10
  1347. # asm 2: sub <tt2d3=%r10,<tt3=%r12
  1348. sub %r10,%r12
  1349. # qhasm: tt4 -= tt2d4
  1350. # asm 1: sub <tt2d4=int64#9,<tt4=int64#11
  1351. # asm 2: sub <tt2d4=%r11,<tt4=%r13
  1352. sub %r11,%r13
  1353. # qhasm: signed<? b - 0
  1354. # asm 1: cmp $0,<b=int64#3
  1355. # asm 2: cmp $0,<b=%rdx
  1356. cmp $0,%rdx
  1357. # qhasm: tt2d0 = tt0 if signed<
  1358. # asm 1: cmovl <tt0=int64#1,<tt2d0=int64#2
  1359. # asm 2: cmovl <tt0=%rdi,<tt2d0=%rsi
  1360. cmovl %rdi,%rsi
  1361. # qhasm: tt2d1 = tt1 if signed<
  1362. # asm 1: cmovl <tt1=int64#4,<tt2d1=int64#6
  1363. # asm 2: cmovl <tt1=%rcx,<tt2d1=%r9
  1364. cmovl %rcx,%r9
  1365. # qhasm: tt2d2 = tt2 if signed<
  1366. # asm 1: cmovl <tt2=int64#5,<tt2d2=int64#7
  1367. # asm 2: cmovl <tt2=%r8,<tt2d2=%rax
  1368. cmovl %r8,%rax
  1369. # qhasm: tt2d3 = tt3 if signed<
  1370. # asm 1: cmovl <tt3=int64#10,<tt2d3=int64#8
  1371. # asm 2: cmovl <tt3=%r12,<tt2d3=%r10
  1372. cmovl %r12,%r10
  1373. # qhasm: tt2d4 = tt4 if signed<
  1374. # asm 1: cmovl <tt4=int64#11,<tt2d4=int64#9
  1375. # asm 2: cmovl <tt4=%r13,<tt2d4=%r11
  1376. cmovl %r13,%r11
  1377. # qhasm: *(uint64 *)(tp + 80) = tt2d0
  1378. # asm 1: movq <tt2d0=int64#2,80(<tp=int64#15)
  1379. # asm 2: movq <tt2d0=%rsi,80(<tp=%rbp)
  1380. movq %rsi,80(%rbp)
  1381. # qhasm: *(uint64 *)(tp + 88) = tt2d1
  1382. # asm 1: movq <tt2d1=int64#6,88(<tp=int64#15)
  1383. # asm 2: movq <tt2d1=%r9,88(<tp=%rbp)
  1384. movq %r9,88(%rbp)
  1385. # qhasm: *(uint64 *)(tp + 96) = tt2d2
  1386. # asm 1: movq <tt2d2=int64#7,96(<tp=int64#15)
  1387. # asm 2: movq <tt2d2=%rax,96(<tp=%rbp)
  1388. movq %rax,96(%rbp)
  1389. # qhasm: *(uint64 *)(tp + 104) = tt2d3
  1390. # asm 1: movq <tt2d3=int64#8,104(<tp=int64#15)
  1391. # asm 2: movq <tt2d3=%r10,104(<tp=%rbp)
  1392. movq %r10,104(%rbp)
  1393. # qhasm: *(uint64 *)(tp + 112) = tt2d4
  1394. # asm 1: movq <tt2d4=int64#9,112(<tp=int64#15)
  1395. # asm 2: movq <tt2d4=%r11,112(<tp=%rbp)
  1396. movq %r11,112(%rbp)
  1397. # qhasm: caller1 = caller1_stack
  1398. # asm 1: movq <caller1_stack=stack64#1,>caller1=int64#9
  1399. # asm 2: movq <caller1_stack=0(%rsp),>caller1=%r11
  1400. movq 0(%rsp),%r11
  1401. # qhasm: caller2 = caller2_stack
  1402. # asm 1: movq <caller2_stack=stack64#2,>caller2=int64#10
  1403. # asm 2: movq <caller2_stack=8(%rsp),>caller2=%r12
  1404. movq 8(%rsp),%r12
  1405. # qhasm: caller3 = caller3_stack
  1406. # asm 1: movq <caller3_stack=stack64#3,>caller3=int64#11
  1407. # asm 2: movq <caller3_stack=16(%rsp),>caller3=%r13
  1408. movq 16(%rsp),%r13
  1409. # qhasm: caller4 = caller4_stack
  1410. # asm 1: movq <caller4_stack=stack64#4,>caller4=int64#12
  1411. # asm 2: movq <caller4_stack=24(%rsp),>caller4=%r14
  1412. movq 24(%rsp),%r14
  1413. # qhasm: caller5 = caller5_stack
  1414. # asm 1: movq <caller5_stack=stack64#5,>caller5=int64#13
  1415. # asm 2: movq <caller5_stack=32(%rsp),>caller5=%r15
  1416. movq 32(%rsp),%r15
  1417. # qhasm: caller6 = caller6_stack
  1418. # asm 1: movq <caller6_stack=stack64#6,>caller6=int64#14
  1419. # asm 2: movq <caller6_stack=40(%rsp),>caller6=%rbx
  1420. movq 40(%rsp),%rbx
  1421. # qhasm: caller7 = caller7_stack
  1422. # asm 1: movq <caller7_stack=stack64#7,>caller7=int64#15
  1423. # asm 2: movq <caller7_stack=48(%rsp),>caller7=%rbp
  1424. movq 48(%rsp),%rbp
  1425. # qhasm: leave
  1426. add %r11,%rsp
  1427. mov %rdi,%rax
  1428. mov %rsi,%rdx
  1429. ret