md5-x86_64.S 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696
  1. // This file is generated from a similarly-named Perl script in the BoringSSL
  2. // source tree. Do not edit by hand.
  3. #if defined(__has_feature)
  4. #if __has_feature(memory_sanitizer) && !defined(OPENSSL_NO_ASM)
  5. #define OPENSSL_NO_ASM
  6. #endif
  7. #endif
  8. #if defined(__x86_64__) && !defined(OPENSSL_NO_ASM)
  9. #if defined(BORINGSSL_PREFIX)
  10. #include <boringssl_prefix_symbols_asm.h>
  11. #endif
  12. .text
  13. .p2align 4
  14. .globl _md5_block_asm_data_order
  15. .private_extern _md5_block_asm_data_order
  16. _md5_block_asm_data_order:
  17. pushq %rbp
  18. pushq %rbx
  19. pushq %r12
  20. pushq %r14
  21. pushq %r15
  22. L$prologue:
  23. movq %rdi,%rbp
  24. shlq $6,%rdx
  25. leaq (%rsi,%rdx,1),%rdi
  26. movl 0(%rbp),%eax
  27. movl 4(%rbp),%ebx
  28. movl 8(%rbp),%ecx
  29. movl 12(%rbp),%edx
  30. cmpq %rdi,%rsi
  31. je L$end
  32. L$loop:
  33. movl %eax,%r8d
  34. movl %ebx,%r9d
  35. movl %ecx,%r14d
  36. movl %edx,%r15d
  37. movl 0(%rsi),%r10d
  38. movl %edx,%r11d
  39. xorl %ecx,%r11d
  40. leal -680876936(%rax,%r10,1),%eax
  41. andl %ebx,%r11d
  42. xorl %edx,%r11d
  43. movl 4(%rsi),%r10d
  44. addl %r11d,%eax
  45. roll $7,%eax
  46. movl %ecx,%r11d
  47. addl %ebx,%eax
  48. xorl %ebx,%r11d
  49. leal -389564586(%rdx,%r10,1),%edx
  50. andl %eax,%r11d
  51. xorl %ecx,%r11d
  52. movl 8(%rsi),%r10d
  53. addl %r11d,%edx
  54. roll $12,%edx
  55. movl %ebx,%r11d
  56. addl %eax,%edx
  57. xorl %eax,%r11d
  58. leal 606105819(%rcx,%r10,1),%ecx
  59. andl %edx,%r11d
  60. xorl %ebx,%r11d
  61. movl 12(%rsi),%r10d
  62. addl %r11d,%ecx
  63. roll $17,%ecx
  64. movl %eax,%r11d
  65. addl %edx,%ecx
  66. xorl %edx,%r11d
  67. leal -1044525330(%rbx,%r10,1),%ebx
  68. andl %ecx,%r11d
  69. xorl %eax,%r11d
  70. movl 16(%rsi),%r10d
  71. addl %r11d,%ebx
  72. roll $22,%ebx
  73. movl %edx,%r11d
  74. addl %ecx,%ebx
  75. xorl %ecx,%r11d
  76. leal -176418897(%rax,%r10,1),%eax
  77. andl %ebx,%r11d
  78. xorl %edx,%r11d
  79. movl 20(%rsi),%r10d
  80. addl %r11d,%eax
  81. roll $7,%eax
  82. movl %ecx,%r11d
  83. addl %ebx,%eax
  84. xorl %ebx,%r11d
  85. leal 1200080426(%rdx,%r10,1),%edx
  86. andl %eax,%r11d
  87. xorl %ecx,%r11d
  88. movl 24(%rsi),%r10d
  89. addl %r11d,%edx
  90. roll $12,%edx
  91. movl %ebx,%r11d
  92. addl %eax,%edx
  93. xorl %eax,%r11d
  94. leal -1473231341(%rcx,%r10,1),%ecx
  95. andl %edx,%r11d
  96. xorl %ebx,%r11d
  97. movl 28(%rsi),%r10d
  98. addl %r11d,%ecx
  99. roll $17,%ecx
  100. movl %eax,%r11d
  101. addl %edx,%ecx
  102. xorl %edx,%r11d
  103. leal -45705983(%rbx,%r10,1),%ebx
  104. andl %ecx,%r11d
  105. xorl %eax,%r11d
  106. movl 32(%rsi),%r10d
  107. addl %r11d,%ebx
  108. roll $22,%ebx
  109. movl %edx,%r11d
  110. addl %ecx,%ebx
  111. xorl %ecx,%r11d
  112. leal 1770035416(%rax,%r10,1),%eax
  113. andl %ebx,%r11d
  114. xorl %edx,%r11d
  115. movl 36(%rsi),%r10d
  116. addl %r11d,%eax
  117. roll $7,%eax
  118. movl %ecx,%r11d
  119. addl %ebx,%eax
  120. xorl %ebx,%r11d
  121. leal -1958414417(%rdx,%r10,1),%edx
  122. andl %eax,%r11d
  123. xorl %ecx,%r11d
  124. movl 40(%rsi),%r10d
  125. addl %r11d,%edx
  126. roll $12,%edx
  127. movl %ebx,%r11d
  128. addl %eax,%edx
  129. xorl %eax,%r11d
  130. leal -42063(%rcx,%r10,1),%ecx
  131. andl %edx,%r11d
  132. xorl %ebx,%r11d
  133. movl 44(%rsi),%r10d
  134. addl %r11d,%ecx
  135. roll $17,%ecx
  136. movl %eax,%r11d
  137. addl %edx,%ecx
  138. xorl %edx,%r11d
  139. leal -1990404162(%rbx,%r10,1),%ebx
  140. andl %ecx,%r11d
  141. xorl %eax,%r11d
  142. movl 48(%rsi),%r10d
  143. addl %r11d,%ebx
  144. roll $22,%ebx
  145. movl %edx,%r11d
  146. addl %ecx,%ebx
  147. xorl %ecx,%r11d
  148. leal 1804603682(%rax,%r10,1),%eax
  149. andl %ebx,%r11d
  150. xorl %edx,%r11d
  151. movl 52(%rsi),%r10d
  152. addl %r11d,%eax
  153. roll $7,%eax
  154. movl %ecx,%r11d
  155. addl %ebx,%eax
  156. xorl %ebx,%r11d
  157. leal -40341101(%rdx,%r10,1),%edx
  158. andl %eax,%r11d
  159. xorl %ecx,%r11d
  160. movl 56(%rsi),%r10d
  161. addl %r11d,%edx
  162. roll $12,%edx
  163. movl %ebx,%r11d
  164. addl %eax,%edx
  165. xorl %eax,%r11d
  166. leal -1502002290(%rcx,%r10,1),%ecx
  167. andl %edx,%r11d
  168. xorl %ebx,%r11d
  169. movl 60(%rsi),%r10d
  170. addl %r11d,%ecx
  171. roll $17,%ecx
  172. movl %eax,%r11d
  173. addl %edx,%ecx
  174. xorl %edx,%r11d
  175. leal 1236535329(%rbx,%r10,1),%ebx
  176. andl %ecx,%r11d
  177. xorl %eax,%r11d
  178. movl 0(%rsi),%r10d
  179. addl %r11d,%ebx
  180. roll $22,%ebx
  181. movl %edx,%r11d
  182. addl %ecx,%ebx
  183. movl 4(%rsi),%r10d
  184. movl %edx,%r11d
  185. movl %edx,%r12d
  186. notl %r11d
  187. leal -165796510(%rax,%r10,1),%eax
  188. andl %ebx,%r12d
  189. andl %ecx,%r11d
  190. movl 24(%rsi),%r10d
  191. orl %r11d,%r12d
  192. movl %ecx,%r11d
  193. addl %r12d,%eax
  194. movl %ecx,%r12d
  195. roll $5,%eax
  196. addl %ebx,%eax
  197. notl %r11d
  198. leal -1069501632(%rdx,%r10,1),%edx
  199. andl %eax,%r12d
  200. andl %ebx,%r11d
  201. movl 44(%rsi),%r10d
  202. orl %r11d,%r12d
  203. movl %ebx,%r11d
  204. addl %r12d,%edx
  205. movl %ebx,%r12d
  206. roll $9,%edx
  207. addl %eax,%edx
  208. notl %r11d
  209. leal 643717713(%rcx,%r10,1),%ecx
  210. andl %edx,%r12d
  211. andl %eax,%r11d
  212. movl 0(%rsi),%r10d
  213. orl %r11d,%r12d
  214. movl %eax,%r11d
  215. addl %r12d,%ecx
  216. movl %eax,%r12d
  217. roll $14,%ecx
  218. addl %edx,%ecx
  219. notl %r11d
  220. leal -373897302(%rbx,%r10,1),%ebx
  221. andl %ecx,%r12d
  222. andl %edx,%r11d
  223. movl 20(%rsi),%r10d
  224. orl %r11d,%r12d
  225. movl %edx,%r11d
  226. addl %r12d,%ebx
  227. movl %edx,%r12d
  228. roll $20,%ebx
  229. addl %ecx,%ebx
  230. notl %r11d
  231. leal -701558691(%rax,%r10,1),%eax
  232. andl %ebx,%r12d
  233. andl %ecx,%r11d
  234. movl 40(%rsi),%r10d
  235. orl %r11d,%r12d
  236. movl %ecx,%r11d
  237. addl %r12d,%eax
  238. movl %ecx,%r12d
  239. roll $5,%eax
  240. addl %ebx,%eax
  241. notl %r11d
  242. leal 38016083(%rdx,%r10,1),%edx
  243. andl %eax,%r12d
  244. andl %ebx,%r11d
  245. movl 60(%rsi),%r10d
  246. orl %r11d,%r12d
  247. movl %ebx,%r11d
  248. addl %r12d,%edx
  249. movl %ebx,%r12d
  250. roll $9,%edx
  251. addl %eax,%edx
  252. notl %r11d
  253. leal -660478335(%rcx,%r10,1),%ecx
  254. andl %edx,%r12d
  255. andl %eax,%r11d
  256. movl 16(%rsi),%r10d
  257. orl %r11d,%r12d
  258. movl %eax,%r11d
  259. addl %r12d,%ecx
  260. movl %eax,%r12d
  261. roll $14,%ecx
  262. addl %edx,%ecx
  263. notl %r11d
  264. leal -405537848(%rbx,%r10,1),%ebx
  265. andl %ecx,%r12d
  266. andl %edx,%r11d
  267. movl 36(%rsi),%r10d
  268. orl %r11d,%r12d
  269. movl %edx,%r11d
  270. addl %r12d,%ebx
  271. movl %edx,%r12d
  272. roll $20,%ebx
  273. addl %ecx,%ebx
  274. notl %r11d
  275. leal 568446438(%rax,%r10,1),%eax
  276. andl %ebx,%r12d
  277. andl %ecx,%r11d
  278. movl 56(%rsi),%r10d
  279. orl %r11d,%r12d
  280. movl %ecx,%r11d
  281. addl %r12d,%eax
  282. movl %ecx,%r12d
  283. roll $5,%eax
  284. addl %ebx,%eax
  285. notl %r11d
  286. leal -1019803690(%rdx,%r10,1),%edx
  287. andl %eax,%r12d
  288. andl %ebx,%r11d
  289. movl 12(%rsi),%r10d
  290. orl %r11d,%r12d
  291. movl %ebx,%r11d
  292. addl %r12d,%edx
  293. movl %ebx,%r12d
  294. roll $9,%edx
  295. addl %eax,%edx
  296. notl %r11d
  297. leal -187363961(%rcx,%r10,1),%ecx
  298. andl %edx,%r12d
  299. andl %eax,%r11d
  300. movl 32(%rsi),%r10d
  301. orl %r11d,%r12d
  302. movl %eax,%r11d
  303. addl %r12d,%ecx
  304. movl %eax,%r12d
  305. roll $14,%ecx
  306. addl %edx,%ecx
  307. notl %r11d
  308. leal 1163531501(%rbx,%r10,1),%ebx
  309. andl %ecx,%r12d
  310. andl %edx,%r11d
  311. movl 52(%rsi),%r10d
  312. orl %r11d,%r12d
  313. movl %edx,%r11d
  314. addl %r12d,%ebx
  315. movl %edx,%r12d
  316. roll $20,%ebx
  317. addl %ecx,%ebx
  318. notl %r11d
  319. leal -1444681467(%rax,%r10,1),%eax
  320. andl %ebx,%r12d
  321. andl %ecx,%r11d
  322. movl 8(%rsi),%r10d
  323. orl %r11d,%r12d
  324. movl %ecx,%r11d
  325. addl %r12d,%eax
  326. movl %ecx,%r12d
  327. roll $5,%eax
  328. addl %ebx,%eax
  329. notl %r11d
  330. leal -51403784(%rdx,%r10,1),%edx
  331. andl %eax,%r12d
  332. andl %ebx,%r11d
  333. movl 28(%rsi),%r10d
  334. orl %r11d,%r12d
  335. movl %ebx,%r11d
  336. addl %r12d,%edx
  337. movl %ebx,%r12d
  338. roll $9,%edx
  339. addl %eax,%edx
  340. notl %r11d
  341. leal 1735328473(%rcx,%r10,1),%ecx
  342. andl %edx,%r12d
  343. andl %eax,%r11d
  344. movl 48(%rsi),%r10d
  345. orl %r11d,%r12d
  346. movl %eax,%r11d
  347. addl %r12d,%ecx
  348. movl %eax,%r12d
  349. roll $14,%ecx
  350. addl %edx,%ecx
  351. notl %r11d
  352. leal -1926607734(%rbx,%r10,1),%ebx
  353. andl %ecx,%r12d
  354. andl %edx,%r11d
  355. movl 0(%rsi),%r10d
  356. orl %r11d,%r12d
  357. movl %edx,%r11d
  358. addl %r12d,%ebx
  359. movl %edx,%r12d
  360. roll $20,%ebx
  361. addl %ecx,%ebx
  362. movl 20(%rsi),%r10d
  363. movl %ecx,%r11d
  364. leal -378558(%rax,%r10,1),%eax
  365. movl 32(%rsi),%r10d
  366. xorl %edx,%r11d
  367. xorl %ebx,%r11d
  368. addl %r11d,%eax
  369. roll $4,%eax
  370. movl %ebx,%r11d
  371. addl %ebx,%eax
  372. leal -2022574463(%rdx,%r10,1),%edx
  373. movl 44(%rsi),%r10d
  374. xorl %ecx,%r11d
  375. xorl %eax,%r11d
  376. addl %r11d,%edx
  377. roll $11,%edx
  378. movl %eax,%r11d
  379. addl %eax,%edx
  380. leal 1839030562(%rcx,%r10,1),%ecx
  381. movl 56(%rsi),%r10d
  382. xorl %ebx,%r11d
  383. xorl %edx,%r11d
  384. addl %r11d,%ecx
  385. roll $16,%ecx
  386. movl %edx,%r11d
  387. addl %edx,%ecx
  388. leal -35309556(%rbx,%r10,1),%ebx
  389. movl 4(%rsi),%r10d
  390. xorl %eax,%r11d
  391. xorl %ecx,%r11d
  392. addl %r11d,%ebx
  393. roll $23,%ebx
  394. movl %ecx,%r11d
  395. addl %ecx,%ebx
  396. leal -1530992060(%rax,%r10,1),%eax
  397. movl 16(%rsi),%r10d
  398. xorl %edx,%r11d
  399. xorl %ebx,%r11d
  400. addl %r11d,%eax
  401. roll $4,%eax
  402. movl %ebx,%r11d
  403. addl %ebx,%eax
  404. leal 1272893353(%rdx,%r10,1),%edx
  405. movl 28(%rsi),%r10d
  406. xorl %ecx,%r11d
  407. xorl %eax,%r11d
  408. addl %r11d,%edx
  409. roll $11,%edx
  410. movl %eax,%r11d
  411. addl %eax,%edx
  412. leal -155497632(%rcx,%r10,1),%ecx
  413. movl 40(%rsi),%r10d
  414. xorl %ebx,%r11d
  415. xorl %edx,%r11d
  416. addl %r11d,%ecx
  417. roll $16,%ecx
  418. movl %edx,%r11d
  419. addl %edx,%ecx
  420. leal -1094730640(%rbx,%r10,1),%ebx
  421. movl 52(%rsi),%r10d
  422. xorl %eax,%r11d
  423. xorl %ecx,%r11d
  424. addl %r11d,%ebx
  425. roll $23,%ebx
  426. movl %ecx,%r11d
  427. addl %ecx,%ebx
  428. leal 681279174(%rax,%r10,1),%eax
  429. movl 0(%rsi),%r10d
  430. xorl %edx,%r11d
  431. xorl %ebx,%r11d
  432. addl %r11d,%eax
  433. roll $4,%eax
  434. movl %ebx,%r11d
  435. addl %ebx,%eax
  436. leal -358537222(%rdx,%r10,1),%edx
  437. movl 12(%rsi),%r10d
  438. xorl %ecx,%r11d
  439. xorl %eax,%r11d
  440. addl %r11d,%edx
  441. roll $11,%edx
  442. movl %eax,%r11d
  443. addl %eax,%edx
  444. leal -722521979(%rcx,%r10,1),%ecx
  445. movl 24(%rsi),%r10d
  446. xorl %ebx,%r11d
  447. xorl %edx,%r11d
  448. addl %r11d,%ecx
  449. roll $16,%ecx
  450. movl %edx,%r11d
  451. addl %edx,%ecx
  452. leal 76029189(%rbx,%r10,1),%ebx
  453. movl 36(%rsi),%r10d
  454. xorl %eax,%r11d
  455. xorl %ecx,%r11d
  456. addl %r11d,%ebx
  457. roll $23,%ebx
  458. movl %ecx,%r11d
  459. addl %ecx,%ebx
  460. leal -640364487(%rax,%r10,1),%eax
  461. movl 48(%rsi),%r10d
  462. xorl %edx,%r11d
  463. xorl %ebx,%r11d
  464. addl %r11d,%eax
  465. roll $4,%eax
  466. movl %ebx,%r11d
  467. addl %ebx,%eax
  468. leal -421815835(%rdx,%r10,1),%edx
  469. movl 60(%rsi),%r10d
  470. xorl %ecx,%r11d
  471. xorl %eax,%r11d
  472. addl %r11d,%edx
  473. roll $11,%edx
  474. movl %eax,%r11d
  475. addl %eax,%edx
  476. leal 530742520(%rcx,%r10,1),%ecx
  477. movl 8(%rsi),%r10d
  478. xorl %ebx,%r11d
  479. xorl %edx,%r11d
  480. addl %r11d,%ecx
  481. roll $16,%ecx
  482. movl %edx,%r11d
  483. addl %edx,%ecx
  484. leal -995338651(%rbx,%r10,1),%ebx
  485. movl 0(%rsi),%r10d
  486. xorl %eax,%r11d
  487. xorl %ecx,%r11d
  488. addl %r11d,%ebx
  489. roll $23,%ebx
  490. movl %ecx,%r11d
  491. addl %ecx,%ebx
  492. movl 0(%rsi),%r10d
  493. movl $0xffffffff,%r11d
  494. xorl %edx,%r11d
  495. leal -198630844(%rax,%r10,1),%eax
  496. orl %ebx,%r11d
  497. xorl %ecx,%r11d
  498. addl %r11d,%eax
  499. movl 28(%rsi),%r10d
  500. movl $0xffffffff,%r11d
  501. roll $6,%eax
  502. xorl %ecx,%r11d
  503. addl %ebx,%eax
  504. leal 1126891415(%rdx,%r10,1),%edx
  505. orl %eax,%r11d
  506. xorl %ebx,%r11d
  507. addl %r11d,%edx
  508. movl 56(%rsi),%r10d
  509. movl $0xffffffff,%r11d
  510. roll $10,%edx
  511. xorl %ebx,%r11d
  512. addl %eax,%edx
  513. leal -1416354905(%rcx,%r10,1),%ecx
  514. orl %edx,%r11d
  515. xorl %eax,%r11d
  516. addl %r11d,%ecx
  517. movl 20(%rsi),%r10d
  518. movl $0xffffffff,%r11d
  519. roll $15,%ecx
  520. xorl %eax,%r11d
  521. addl %edx,%ecx
  522. leal -57434055(%rbx,%r10,1),%ebx
  523. orl %ecx,%r11d
  524. xorl %edx,%r11d
  525. addl %r11d,%ebx
  526. movl 48(%rsi),%r10d
  527. movl $0xffffffff,%r11d
  528. roll $21,%ebx
  529. xorl %edx,%r11d
  530. addl %ecx,%ebx
  531. leal 1700485571(%rax,%r10,1),%eax
  532. orl %ebx,%r11d
  533. xorl %ecx,%r11d
  534. addl %r11d,%eax
  535. movl 12(%rsi),%r10d
  536. movl $0xffffffff,%r11d
  537. roll $6,%eax
  538. xorl %ecx,%r11d
  539. addl %ebx,%eax
  540. leal -1894986606(%rdx,%r10,1),%edx
  541. orl %eax,%r11d
  542. xorl %ebx,%r11d
  543. addl %r11d,%edx
  544. movl 40(%rsi),%r10d
  545. movl $0xffffffff,%r11d
  546. roll $10,%edx
  547. xorl %ebx,%r11d
  548. addl %eax,%edx
  549. leal -1051523(%rcx,%r10,1),%ecx
  550. orl %edx,%r11d
  551. xorl %eax,%r11d
  552. addl %r11d,%ecx
  553. movl 4(%rsi),%r10d
  554. movl $0xffffffff,%r11d
  555. roll $15,%ecx
  556. xorl %eax,%r11d
  557. addl %edx,%ecx
  558. leal -2054922799(%rbx,%r10,1),%ebx
  559. orl %ecx,%r11d
  560. xorl %edx,%r11d
  561. addl %r11d,%ebx
  562. movl 32(%rsi),%r10d
  563. movl $0xffffffff,%r11d
  564. roll $21,%ebx
  565. xorl %edx,%r11d
  566. addl %ecx,%ebx
  567. leal 1873313359(%rax,%r10,1),%eax
  568. orl %ebx,%r11d
  569. xorl %ecx,%r11d
  570. addl %r11d,%eax
  571. movl 60(%rsi),%r10d
  572. movl $0xffffffff,%r11d
  573. roll $6,%eax
  574. xorl %ecx,%r11d
  575. addl %ebx,%eax
  576. leal -30611744(%rdx,%r10,1),%edx
  577. orl %eax,%r11d
  578. xorl %ebx,%r11d
  579. addl %r11d,%edx
  580. movl 24(%rsi),%r10d
  581. movl $0xffffffff,%r11d
  582. roll $10,%edx
  583. xorl %ebx,%r11d
  584. addl %eax,%edx
  585. leal -1560198380(%rcx,%r10,1),%ecx
  586. orl %edx,%r11d
  587. xorl %eax,%r11d
  588. addl %r11d,%ecx
  589. movl 52(%rsi),%r10d
  590. movl $0xffffffff,%r11d
  591. roll $15,%ecx
  592. xorl %eax,%r11d
  593. addl %edx,%ecx
  594. leal 1309151649(%rbx,%r10,1),%ebx
  595. orl %ecx,%r11d
  596. xorl %edx,%r11d
  597. addl %r11d,%ebx
  598. movl 16(%rsi),%r10d
  599. movl $0xffffffff,%r11d
  600. roll $21,%ebx
  601. xorl %edx,%r11d
  602. addl %ecx,%ebx
  603. leal -145523070(%rax,%r10,1),%eax
  604. orl %ebx,%r11d
  605. xorl %ecx,%r11d
  606. addl %r11d,%eax
  607. movl 44(%rsi),%r10d
  608. movl $0xffffffff,%r11d
  609. roll $6,%eax
  610. xorl %ecx,%r11d
  611. addl %ebx,%eax
  612. leal -1120210379(%rdx,%r10,1),%edx
  613. orl %eax,%r11d
  614. xorl %ebx,%r11d
  615. addl %r11d,%edx
  616. movl 8(%rsi),%r10d
  617. movl $0xffffffff,%r11d
  618. roll $10,%edx
  619. xorl %ebx,%r11d
  620. addl %eax,%edx
  621. leal 718787259(%rcx,%r10,1),%ecx
  622. orl %edx,%r11d
  623. xorl %eax,%r11d
  624. addl %r11d,%ecx
  625. movl 36(%rsi),%r10d
  626. movl $0xffffffff,%r11d
  627. roll $15,%ecx
  628. xorl %eax,%r11d
  629. addl %edx,%ecx
  630. leal -343485551(%rbx,%r10,1),%ebx
  631. orl %ecx,%r11d
  632. xorl %edx,%r11d
  633. addl %r11d,%ebx
  634. movl 0(%rsi),%r10d
  635. movl $0xffffffff,%r11d
  636. roll $21,%ebx
  637. xorl %edx,%r11d
  638. addl %ecx,%ebx
  639. addl %r8d,%eax
  640. addl %r9d,%ebx
  641. addl %r14d,%ecx
  642. addl %r15d,%edx
  643. addq $64,%rsi
  644. cmpq %rdi,%rsi
  645. jb L$loop
  646. L$end:
  647. movl %eax,0(%rbp)
  648. movl %ebx,4(%rbp)
  649. movl %ecx,8(%rbp)
  650. movl %edx,12(%rbp)
  651. movq (%rsp),%r15
  652. movq 8(%rsp),%r14
  653. movq 16(%rsp),%r12
  654. movq 24(%rsp),%rbx
  655. movq 32(%rsp),%rbp
  656. addq $40,%rsp
  657. L$epilogue:
  658. .byte 0xf3,0xc3
  659. #endif