visaljs 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1008) hide show
  1. package/README.md +17 -1
  2. package/cli.js +565 -75
  3. package/node/include/js_node.h +28 -5
  4. package/node/include/js_uv.h +36 -0
  5. package/node/prelude/crypto.js +7 -10
  6. package/node/prelude/dns.js +99 -0
  7. package/node/prelude/dns_promises.js +10 -0
  8. package/node/prelude/http.js +1039 -195
  9. package/node/prelude/internal/crypto/asym.js +39 -12
  10. package/node/prelude/internal/crypto/dh_groups.js +12 -0
  11. package/node/prelude/internal/crypto/diffiehellman.js +354 -0
  12. package/node/prelude/internal/crypto/hash.js +1 -1
  13. package/node/prelude/internal/crypto/key_type.js +3 -0
  14. package/node/prelude/internal/crypto/keys.js +39 -9
  15. package/node/prelude/internal/http_agent.js +249 -0
  16. package/node/prelude/internal/net.js +33 -0
  17. package/node/prelude/internal/socketaddress.js +249 -0
  18. package/node/prelude/internal/tls/common.js +306 -0
  19. package/node/prelude/internal/tls/wrap.js +1217 -0
  20. package/node/prelude/internal/tls/x509.js +394 -0
  21. package/node/prelude/net.js +1083 -50
  22. package/node/prelude/stream.js +6 -0
  23. package/node/prelude/tls.js +141 -0
  24. package/node/prelude/util.js +5 -2
  25. package/node/prelude/util_types.js +85 -0
  26. package/node/src/host_http.c +268 -270
  27. package/node/src/host_loop.c +84 -0
  28. package/node/src/host_net.c +495 -0
  29. package/node/src/host_sys.c +16 -0
  30. package/package.json +1 -1
  31. package/runtime/include/js_builtins.h +16 -0
  32. package/runtime/include/js_console.h +2 -0
  33. package/runtime/include/js_core.def +23 -0
  34. package/runtime/include/js_crypto.h +23 -0
  35. package/runtime/include/js_generator.h +2 -3
  36. package/runtime/include/js_promise.h +0 -2
  37. package/runtime/src/async_iter.c +4 -1
  38. package/runtime/src/boringssl_support.cc +34 -0
  39. package/runtime/src/builtin_table.c +8 -0
  40. package/runtime/src/components.c +10 -0
  41. package/runtime/src/console.c +6 -18
  42. package/runtime/src/core_all.c +1 -0
  43. package/runtime/src/crypto_asym.c +450 -241
  44. package/runtime/src/crypto_bn.c +91 -0
  45. package/runtime/src/crypto_cipher.c +153 -75
  46. package/runtime/src/crypto_hash.c +68 -53
  47. package/runtime/src/crypto_internal.h +55 -26
  48. package/runtime/src/crypto_pkey.c +198 -61
  49. package/runtime/src/crypto_subtle.c +42 -16
  50. package/runtime/src/crypto_tls.c +678 -0
  51. package/runtime/src/generator.c +8 -1
  52. package/runtime/src/global.c +2 -4
  53. package/runtime/src/internal.h +0 -1
  54. package/runtime/src/jobs.c +2 -1
  55. package/runtime/src/promise.c +4 -1
  56. package/runtime/src/tls_roots.gen.h +3215 -0
  57. package/runtime/src/util_types.c +52 -0
  58. package/runtime/src/weak.c +2 -1
  59. package/runtime/third_party/boringssl/LICENSE +238 -0
  60. package/runtime/third_party/boringssl/README.md +46 -0
  61. package/runtime/third_party/boringssl/VERSION +1 -0
  62. package/runtime/third_party/boringssl/crypto/aes/aes.cc +44 -0
  63. package/runtime/third_party/boringssl/crypto/armv8_feature_parsing.h +67 -0
  64. package/runtime/third_party/boringssl/crypto/asn1/a_bitstr.cc +297 -0
  65. package/runtime/third_party/boringssl/crypto/asn1/a_bool.cc +50 -0
  66. package/runtime/third_party/boringssl/crypto/asn1/a_d2i_fp.cc +47 -0
  67. package/runtime/third_party/boringssl/crypto/asn1/a_dup.cc +42 -0
  68. package/runtime/third_party/boringssl/crypto/asn1/a_gentm.cc +130 -0
  69. package/runtime/third_party/boringssl/crypto/asn1/a_i2d_fp.cc +44 -0
  70. package/runtime/third_party/boringssl/crypto/asn1/a_int.cc +467 -0
  71. package/runtime/third_party/boringssl/crypto/asn1/a_mbstr.cc +242 -0
  72. package/runtime/third_party/boringssl/crypto/asn1/a_object.cc +191 -0
  73. package/runtime/third_party/boringssl/crypto/asn1/a_octet.cc +32 -0
  74. package/runtime/third_party/boringssl/crypto/asn1/a_strex.cc +411 -0
  75. package/runtime/third_party/boringssl/crypto/asn1/a_strnid.cc +208 -0
  76. package/runtime/third_party/boringssl/crypto/asn1/a_time.cc +248 -0
  77. package/runtime/third_party/boringssl/crypto/asn1/a_type.cc +467 -0
  78. package/runtime/third_party/boringssl/crypto/asn1/a_utctm.cc +128 -0
  79. package/runtime/third_party/boringssl/crypto/asn1/asn1_lib.cc +453 -0
  80. package/runtime/third_party/boringssl/crypto/asn1/asn1_par.cc +61 -0
  81. package/runtime/third_party/boringssl/crypto/asn1/asn_pack.cc +56 -0
  82. package/runtime/third_party/boringssl/crypto/asn1/f_int.cc +63 -0
  83. package/runtime/third_party/boringssl/crypto/asn1/f_string.cc +52 -0
  84. package/runtime/third_party/boringssl/crypto/asn1/internal.h +430 -0
  85. package/runtime/third_party/boringssl/crypto/asn1/posix_time.cc +244 -0
  86. package/runtime/third_party/boringssl/crypto/asn1/tasn_dec.cc +611 -0
  87. package/runtime/third_party/boringssl/crypto/asn1/tasn_enc.cc +348 -0
  88. package/runtime/third_party/boringssl/crypto/asn1/tasn_fre.cc +163 -0
  89. package/runtime/third_party/boringssl/crypto/asn1/tasn_new.cc +274 -0
  90. package/runtime/third_party/boringssl/crypto/asn1/tasn_typ.cc +92 -0
  91. package/runtime/third_party/boringssl/crypto/asn1/tasn_utl.cc +218 -0
  92. package/runtime/third_party/boringssl/crypto/base64/base64.cc +433 -0
  93. package/runtime/third_party/boringssl/crypto/bcm_support.h +62 -0
  94. package/runtime/third_party/boringssl/crypto/bio/bio.cc +715 -0
  95. package/runtime/third_party/boringssl/crypto/bio/bio_mem.cc +260 -0
  96. package/runtime/third_party/boringssl/crypto/bio/connect.cc +463 -0
  97. package/runtime/third_party/boringssl/crypto/bio/errno.cc +52 -0
  98. package/runtime/third_party/boringssl/crypto/bio/fd.cc +193 -0
  99. package/runtime/third_party/boringssl/crypto/bio/file.cc +283 -0
  100. package/runtime/third_party/boringssl/crypto/bio/hexdump.cc +154 -0
  101. package/runtime/third_party/boringssl/crypto/bio/internal.h +128 -0
  102. package/runtime/third_party/boringssl/crypto/bio/pair.cc +426 -0
  103. package/runtime/third_party/boringssl/crypto/bio/printf.cc +59 -0
  104. package/runtime/third_party/boringssl/crypto/bio/socket.cc +210 -0
  105. package/runtime/third_party/boringssl/crypto/bio/socket_helper.cc +179 -0
  106. package/runtime/third_party/boringssl/crypto/blake2/blake2.cc +173 -0
  107. package/runtime/third_party/boringssl/crypto/bn/bn_asn1.cc +57 -0
  108. package/runtime/third_party/boringssl/crypto/bn/convert.cc +409 -0
  109. package/runtime/third_party/boringssl/crypto/bn/div.cc +102 -0
  110. package/runtime/third_party/boringssl/crypto/bn/exponentiation.cc +168 -0
  111. package/runtime/third_party/boringssl/crypto/bn/sqrt.cc +93 -0
  112. package/runtime/third_party/boringssl/crypto/buf/buf.cc +119 -0
  113. package/runtime/third_party/boringssl/crypto/bytestring/asn1_compat.cc +54 -0
  114. package/runtime/third_party/boringssl/crypto/bytestring/ber.cc +268 -0
  115. package/runtime/third_party/boringssl/crypto/bytestring/cbb.cc +787 -0
  116. package/runtime/third_party/boringssl/crypto/bytestring/cbs.cc +977 -0
  117. package/runtime/third_party/boringssl/crypto/bytestring/internal.h +134 -0
  118. package/runtime/third_party/boringssl/crypto/bytestring/unicode.cc +156 -0
  119. package/runtime/third_party/boringssl/crypto/chacha/chacha.cc +226 -0
  120. package/runtime/third_party/boringssl/crypto/chacha/internal.h +103 -0
  121. package/runtime/third_party/boringssl/crypto/cipher/derive_key.cc +106 -0
  122. package/runtime/third_party/boringssl/crypto/cipher/e_aesctrhmac.cc +294 -0
  123. package/runtime/third_party/boringssl/crypto/cipher/e_aeseax.cc +351 -0
  124. package/runtime/third_party/boringssl/crypto/cipher/e_aesgcmsiv.cc +918 -0
  125. package/runtime/third_party/boringssl/crypto/cipher/e_chacha20poly1305.cc +404 -0
  126. package/runtime/third_party/boringssl/crypto/cipher/e_des.cc +214 -0
  127. package/runtime/third_party/boringssl/crypto/cipher/e_null.cc +55 -0
  128. package/runtime/third_party/boringssl/crypto/cipher/e_rc2.cc +432 -0
  129. package/runtime/third_party/boringssl/crypto/cipher/e_rc4.cc +56 -0
  130. package/runtime/third_party/boringssl/crypto/cipher/e_tls.cc +615 -0
  131. package/runtime/third_party/boringssl/crypto/cipher/get_cipher.cc +85 -0
  132. package/runtime/third_party/boringssl/crypto/cipher/internal.h +399 -0
  133. package/runtime/third_party/boringssl/crypto/cipher/tls_cbc.cc +476 -0
  134. package/runtime/third_party/boringssl/crypto/cms/cms.cc +178 -0
  135. package/runtime/third_party/boringssl/crypto/conf/conf.cc +637 -0
  136. package/runtime/third_party/boringssl/crypto/conf/internal.h +54 -0
  137. package/runtime/third_party/boringssl/crypto/cpu_aarch64_apple.cc +76 -0
  138. package/runtime/third_party/boringssl/crypto/cpu_aarch64_fuchsia.cc +58 -0
  139. package/runtime/third_party/boringssl/crypto/cpu_aarch64_linux.cc +66 -0
  140. package/runtime/third_party/boringssl/crypto/cpu_aarch64_openbsd.cc +45 -0
  141. package/runtime/third_party/boringssl/crypto/cpu_aarch64_sysreg.cc +66 -0
  142. package/runtime/third_party/boringssl/crypto/cpu_aarch64_win.cc +52 -0
  143. package/runtime/third_party/boringssl/crypto/cpu_arm_freebsd.cc +55 -0
  144. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.cc +173 -0
  145. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.h +141 -0
  146. package/runtime/third_party/boringssl/crypto/cpu_intel.cc +287 -0
  147. package/runtime/third_party/boringssl/crypto/crypto.cc +152 -0
  148. package/runtime/third_party/boringssl/crypto/curve25519/asm/x25519-asm-arm.S +2124 -0
  149. package/runtime/third_party/boringssl/crypto/curve25519/cpace.cc +227 -0
  150. package/runtime/third_party/boringssl/crypto/curve25519/curve25519.cc +2436 -0
  151. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_64_adx.cc +18 -0
  152. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_tables.h +3264 -0
  153. package/runtime/third_party/boringssl/crypto/curve25519/internal.h +202 -0
  154. package/runtime/third_party/boringssl/crypto/curve25519/spake25519.cc +532 -0
  155. package/runtime/third_party/boringssl/crypto/des/des.cc +837 -0
  156. package/runtime/third_party/boringssl/crypto/des/internal.h +144 -0
  157. package/runtime/third_party/boringssl/crypto/dh/dh_asn1.cc +109 -0
  158. package/runtime/third_party/boringssl/crypto/dh/params.cc +411 -0
  159. package/runtime/third_party/boringssl/crypto/digest/digest_extra.cc +361 -0
  160. package/runtime/third_party/boringssl/crypto/dsa/dsa.cc +922 -0
  161. package/runtime/third_party/boringssl/crypto/dsa/dsa_asn1.cc +306 -0
  162. package/runtime/third_party/boringssl/crypto/dsa/internal.h +56 -0
  163. package/runtime/third_party/boringssl/crypto/ec/ec_asn1.cc +542 -0
  164. package/runtime/third_party/boringssl/crypto/ec/ec_derive.cc +94 -0
  165. package/runtime/third_party/boringssl/crypto/ec/hash_to_curve.cc +773 -0
  166. package/runtime/third_party/boringssl/crypto/ec/internal.h +114 -0
  167. package/runtime/third_party/boringssl/crypto/ecdh/ecdh.cc +75 -0
  168. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.cc +337 -0
  169. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_p1363.cc +54 -0
  170. package/runtime/third_party/boringssl/crypto/engine/engine.cc +95 -0
  171. package/runtime/third_party/boringssl/crypto/err/err.cc +820 -0
  172. package/runtime/third_party/boringssl/crypto/err/internal.h +45 -0
  173. package/runtime/third_party/boringssl/crypto/evp/evp.cc +454 -0
  174. package/runtime/third_party/boringssl/crypto/evp/evp_asn1.cc +439 -0
  175. package/runtime/third_party/boringssl/crypto/evp/evp_ctx.cc +541 -0
  176. package/runtime/third_party/boringssl/crypto/evp/evp_kem.cc +101 -0
  177. package/runtime/third_party/boringssl/crypto/evp/internal.h +427 -0
  178. package/runtime/third_party/boringssl/crypto/evp/p_dh.cc +326 -0
  179. package/runtime/third_party/boringssl/crypto/evp/p_dsa.cc +333 -0
  180. package/runtime/third_party/boringssl/crypto/evp/p_ec.cc +736 -0
  181. package/runtime/third_party/boringssl/crypto/evp/p_ed25519.cc +359 -0
  182. package/runtime/third_party/boringssl/crypto/evp/p_hkdf.cc +204 -0
  183. package/runtime/third_party/boringssl/crypto/evp/p_mldsa.cc +549 -0
  184. package/runtime/third_party/boringssl/crypto/evp/p_mlkem.cc +510 -0
  185. package/runtime/third_party/boringssl/crypto/evp/p_rsa.cc +1185 -0
  186. package/runtime/third_party/boringssl/crypto/evp/p_x25519.cc +371 -0
  187. package/runtime/third_party/boringssl/crypto/evp/p_xwing.cc +300 -0
  188. package/runtime/third_party/boringssl/crypto/evp/pbkdf.cc +105 -0
  189. package/runtime/third_party/boringssl/crypto/evp/print.cc +287 -0
  190. package/runtime/third_party/boringssl/crypto/evp/scrypt.cc +218 -0
  191. package/runtime/third_party/boringssl/crypto/evp/sign.cc +95 -0
  192. package/runtime/third_party/boringssl/crypto/ex_data.cc +140 -0
  193. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes.cc.inc +208 -0
  194. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes_nohw.cc.inc +1279 -0
  195. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cbc.cc.inc +132 -0
  196. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cfb.cc.inc +168 -0
  197. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ctr.cc.inc +102 -0
  198. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm.cc.inc +614 -0
  199. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm_nohw.cc.inc +304 -0
  200. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/internal.h +590 -0
  201. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/key_wrap.cc.inc +211 -0
  202. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/mode_wrappers.cc.inc +97 -0
  203. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ofb.cc.inc +55 -0
  204. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm.cc +288 -0
  205. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm_interface.h +953 -0
  206. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/add.cc.inc +276 -0
  207. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +573 -0
  208. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bn.cc.inc +377 -0
  209. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bytes.cc.inc +230 -0
  210. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/cmp.cc.inc +161 -0
  211. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/ctx.cc.inc +127 -0
  212. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div.cc.inc +738 -0
  213. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div_extra.cc.inc +90 -0
  214. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/exponentiation.cc.inc +743 -0
  215. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd.cc.inc +281 -0
  216. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd_extra.cc.inc +327 -0
  217. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/generic.cc.inc +579 -0
  218. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/internal.h +810 -0
  219. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/jacobi.cc.inc +101 -0
  220. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery.cc.inc +408 -0
  221. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery_inv.cc.inc +179 -0
  222. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/mul.cc.inc +347 -0
  223. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/prime.cc.inc +931 -0
  224. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/random.cc.inc +261 -0
  225. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.cc.inc +144 -0
  226. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.h +109 -0
  227. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/shift.cc.inc +317 -0
  228. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/sqrt.cc.inc +370 -0
  229. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/aead.cc.inc +619 -0
  230. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/cipher.cc.inc +837 -0
  231. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aes.cc.inc +1240 -0
  232. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aesccm.cc.inc +440 -0
  233. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/internal.h +461 -0
  234. package/runtime/third_party/boringssl/crypto/fipsmodule/cmac/cmac.cc.inc +293 -0
  235. package/runtime/third_party/boringssl/crypto/fipsmodule/delocate.h +95 -0
  236. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/check.cc.inc +198 -0
  237. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/dh.cc.inc +401 -0
  238. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/internal.h +63 -0
  239. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digest.cc.inc +221 -0
  240. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digests.cc.inc +184 -0
  241. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/internal.h +72 -0
  242. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/md32_common.h +166 -0
  243. package/runtime/third_party/boringssl/crypto/fipsmodule/digestsign/digestsign.cc.inc +230 -0
  244. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  245. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec.cc.inc +1024 -0
  246. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_key.cc.inc +536 -0
  247. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_montgomery.cc.inc +379 -0
  248. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/felem.cc.inc +250 -0
  249. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/internal.h +752 -0
  250. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/oct.cc.inc +174 -0
  251. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz-table.h +9502 -0
  252. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.cc.inc +740 -0
  253. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.h +207 -0
  254. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256.cc.inc +578 -0
  255. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256_table.h +297 -0
  256. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/scalar.cc.inc +184 -0
  257. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple.cc.inc +246 -0
  258. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple_mul.cc.inc +274 -0
  259. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/util.cc.inc +258 -0
  260. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/wnaf.cc.inc +224 -0
  261. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdh/ecdh.cc.inc +91 -0
  262. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +288 -0
  263. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/internal.h +57 -0
  264. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/internal.h +38 -0
  265. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/jitter.cc.inc +487 -0
  266. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/sha512.cc.inc +329 -0
  267. package/runtime/third_party/boringssl/crypto/fipsmodule/fips_shared_support.cc +28 -0
  268. package/runtime/third_party/boringssl/crypto/fipsmodule/hkdf/hkdf.cc.inc +114 -0
  269. package/runtime/third_party/boringssl/crypto/fipsmodule/hmac/hmac.cc.inc +218 -0
  270. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/internal.h +165 -0
  271. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/keccak.cc.inc +647 -0
  272. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/fips_known_values.inc +1345 -0
  273. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/mldsa.cc.inc +3323 -0
  274. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/fips_known_values.inc +411 -0
  275. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/mlkem.cc.inc +1856 -0
  276. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/android_entropy_client.cc.inc +82 -0
  277. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/ctrdrbg.cc.inc +401 -0
  278. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/internal.h +99 -0
  279. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/rand.cc.inc +486 -0
  280. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/internal.h +167 -0
  281. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/padding.cc.inc +371 -0
  282. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa.cc.inc +996 -0
  283. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1000 -0
  284. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  285. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/self_check.cc.inc +1093 -0
  286. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/internal.h +112 -0
  287. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +330 -0
  288. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/internal.h +205 -0
  289. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha1.cc.inc +404 -0
  290. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha256.cc.inc +315 -0
  291. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  292. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/address.h +144 -0
  293. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fips_known_values.inc +674 -0
  294. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.cc.inc +179 -0
  295. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.h +48 -0
  296. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.cc.inc +164 -0
  297. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.h +58 -0
  298. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/params.h +178 -0
  299. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +690 -0
  300. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.cc.inc +326 -0
  301. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.h +71 -0
  302. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.cc.inc +172 -0
  303. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.h +40 -0
  304. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/internal.h +33 -0
  305. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  306. package/runtime/third_party/boringssl/crypto/fuzzer_mode.cc +30 -0
  307. package/runtime/third_party/boringssl/crypto/hpke/hpke.cc +1514 -0
  308. package/runtime/third_party/boringssl/crypto/hrss/asm/poly_rq_mul.S +8489 -0
  309. package/runtime/third_party/boringssl/crypto/hrss/hrss.cc +2189 -0
  310. package/runtime/third_party/boringssl/crypto/hrss/internal.h +64 -0
  311. package/runtime/third_party/boringssl/crypto/internal.h +1767 -0
  312. package/runtime/third_party/boringssl/crypto/lhash/internal.h +222 -0
  313. package/runtime/third_party/boringssl/crypto/lhash/lhash.cc +312 -0
  314. package/runtime/third_party/boringssl/crypto/md4/md4.cc +207 -0
  315. package/runtime/third_party/boringssl/crypto/md5/internal.h +34 -0
  316. package/runtime/third_party/boringssl/crypto/md5/md5.cc +255 -0
  317. package/runtime/third_party/boringssl/crypto/mem.cc +577 -0
  318. package/runtime/third_party/boringssl/crypto/mem_internal.h +706 -0
  319. package/runtime/third_party/boringssl/crypto/mldsa/mldsa.cc +296 -0
  320. package/runtime/third_party/boringssl/crypto/mlkem/mlkem.cc +108 -0
  321. package/runtime/third_party/boringssl/crypto/obj/obj.cc +494 -0
  322. package/runtime/third_party/boringssl/crypto/obj/obj_dat.h +11722 -0
  323. package/runtime/third_party/boringssl/crypto/obj/obj_xref.cc +83 -0
  324. package/runtime/third_party/boringssl/crypto/params_internal.h +30 -0
  325. package/runtime/third_party/boringssl/crypto/pem/internal.h +135 -0
  326. package/runtime/third_party/boringssl/crypto/pem/pem_all.cc +153 -0
  327. package/runtime/third_party/boringssl/crypto/pem/pem_info.cc +250 -0
  328. package/runtime/third_party/boringssl/crypto/pem/pem_lib.cc +707 -0
  329. package/runtime/third_party/boringssl/crypto/pem/pem_oth.cc +45 -0
  330. package/runtime/third_party/boringssl/crypto/pem/pem_pk8.cc +211 -0
  331. package/runtime/third_party/boringssl/crypto/pem/pem_pkey.cc +147 -0
  332. package/runtime/third_party/boringssl/crypto/pem/pem_x509.cc +25 -0
  333. package/runtime/third_party/boringssl/crypto/pem/pem_xaux.cc +25 -0
  334. package/runtime/third_party/boringssl/crypto/pkcs7/internal.h +67 -0
  335. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7.cc +198 -0
  336. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7_x509.cc +527 -0
  337. package/runtime/third_party/boringssl/crypto/pkcs8/internal.h +98 -0
  338. package/runtime/third_party/boringssl/crypto/pkcs8/p5_pbev2.cc +286 -0
  339. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8.cc +473 -0
  340. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8_x509.cc +1328 -0
  341. package/runtime/third_party/boringssl/crypto/poly1305/internal.h +54 -0
  342. package/runtime/third_party/boringssl/crypto/poly1305/poly1305.cc +315 -0
  343. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm.cc +294 -0
  344. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm_asm.S +2017 -0
  345. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_vec.cc +853 -0
  346. package/runtime/third_party/boringssl/crypto/pool/internal.h +95 -0
  347. package/runtime/third_party/boringssl/crypto/pool/pool.cc +282 -0
  348. package/runtime/third_party/boringssl/crypto/rand/deterministic.cc +58 -0
  349. package/runtime/third_party/boringssl/crypto/rand/fork_detect.cc +222 -0
  350. package/runtime/third_party/boringssl/crypto/rand/forkunsafe.cc +44 -0
  351. package/runtime/third_party/boringssl/crypto/rand/getentropy.cc +53 -0
  352. package/runtime/third_party/boringssl/crypto/rand/internal.h +67 -0
  353. package/runtime/third_party/boringssl/crypto/rand/ios.cc +35 -0
  354. package/runtime/third_party/boringssl/crypto/rand/rand.cc +79 -0
  355. package/runtime/third_party/boringssl/crypto/rand/trusty.cc +39 -0
  356. package/runtime/third_party/boringssl/crypto/rand/urandom.cc +149 -0
  357. package/runtime/third_party/boringssl/crypto/rand/windows.cc +91 -0
  358. package/runtime/third_party/boringssl/crypto/rc4/rc4.cc +56 -0
  359. package/runtime/third_party/boringssl/crypto/refcount.cc +49 -0
  360. package/runtime/third_party/boringssl/crypto/rsa/internal.h +51 -0
  361. package/runtime/third_party/boringssl/crypto/rsa/rsa_asn1.cc +404 -0
  362. package/runtime/third_party/boringssl/crypto/rsa/rsa_crypt.cc +530 -0
  363. package/runtime/third_party/boringssl/crypto/rsa/rsa_extra.cc +30 -0
  364. package/runtime/third_party/boringssl/crypto/rsa/rsa_print.cc +25 -0
  365. package/runtime/third_party/boringssl/crypto/sha/sha1.cc +55 -0
  366. package/runtime/third_party/boringssl/crypto/sha/sha256.cc +89 -0
  367. package/runtime/third_party/boringssl/crypto/sha/sha512.cc +106 -0
  368. package/runtime/third_party/boringssl/crypto/siphash/siphash.cc +81 -0
  369. package/runtime/third_party/boringssl/crypto/slhdsa/slhdsa.cc +167 -0
  370. package/runtime/third_party/boringssl/crypto/spake2plus/internal.h +204 -0
  371. package/runtime/third_party/boringssl/crypto/spake2plus/spake2plus.cc +501 -0
  372. package/runtime/third_party/boringssl/crypto/stack/stack.cc +462 -0
  373. package/runtime/third_party/boringssl/crypto/thread.cc +68 -0
  374. package/runtime/third_party/boringssl/crypto/thread_none.cc +48 -0
  375. package/runtime/third_party/boringssl/crypto/thread_pthread.cc +138 -0
  376. package/runtime/third_party/boringssl/crypto/thread_win.cc +227 -0
  377. package/runtime/third_party/boringssl/crypto/trust_token/internal.h +405 -0
  378. package/runtime/third_party/boringssl/crypto/trust_token/pmbtoken.cc +1672 -0
  379. package/runtime/third_party/boringssl/crypto/trust_token/trust_token.cc +701 -0
  380. package/runtime/third_party/boringssl/crypto/trust_token/voprf.cc +1266 -0
  381. package/runtime/third_party/boringssl/crypto/x509/a_digest.cc +52 -0
  382. package/runtime/third_party/boringssl/crypto/x509/a_sign.cc +100 -0
  383. package/runtime/third_party/boringssl/crypto/x509/a_verify.cc +77 -0
  384. package/runtime/third_party/boringssl/crypto/x509/algorithm.cc +167 -0
  385. package/runtime/third_party/boringssl/crypto/x509/asn1_gen.cc +540 -0
  386. package/runtime/third_party/boringssl/crypto/x509/by_dir.cc +301 -0
  387. package/runtime/third_party/boringssl/crypto/x509/by_file.cc +226 -0
  388. package/runtime/third_party/boringssl/crypto/x509/i2d_pr.cc +37 -0
  389. package/runtime/third_party/boringssl/crypto/x509/internal.h +697 -0
  390. package/runtime/third_party/boringssl/crypto/x509/name_print.cc +187 -0
  391. package/runtime/third_party/boringssl/crypto/x509/policy.cc +686 -0
  392. package/runtime/third_party/boringssl/crypto/x509/rsa_pss.cc +187 -0
  393. package/runtime/third_party/boringssl/crypto/x509/t_crl.cc +106 -0
  394. package/runtime/third_party/boringssl/crypto/x509/t_req.cc +206 -0
  395. package/runtime/third_party/boringssl/crypto/x509/t_x509.cc +292 -0
  396. package/runtime/third_party/boringssl/crypto/x509/t_x509a.cc +81 -0
  397. package/runtime/third_party/boringssl/crypto/x509/v3_akey.cc +174 -0
  398. package/runtime/third_party/boringssl/crypto/x509/v3_akeya.cc +31 -0
  399. package/runtime/third_party/boringssl/crypto/x509/v3_alt.cc +636 -0
  400. package/runtime/third_party/boringssl/crypto/x509/v3_bcons.cc +96 -0
  401. package/runtime/third_party/boringssl/crypto/x509/v3_bitst.cc +100 -0
  402. package/runtime/third_party/boringssl/crypto/x509/v3_conf.cc +369 -0
  403. package/runtime/third_party/boringssl/crypto/x509/v3_cpols.cc +417 -0
  404. package/runtime/third_party/boringssl/crypto/x509/v3_crld.cc +471 -0
  405. package/runtime/third_party/boringssl/crypto/x509/v3_enum.cc +74 -0
  406. package/runtime/third_party/boringssl/crypto/x509/v3_extku.cc +97 -0
  407. package/runtime/third_party/boringssl/crypto/x509/v3_genn.cc +238 -0
  408. package/runtime/third_party/boringssl/crypto/x509/v3_ia5.cc +83 -0
  409. package/runtime/third_party/boringssl/crypto/x509/v3_info.cc +162 -0
  410. package/runtime/third_party/boringssl/crypto/x509/v3_int.cc +83 -0
  411. package/runtime/third_party/boringssl/crypto/x509/v3_lib.cc +349 -0
  412. package/runtime/third_party/boringssl/crypto/x509/v3_ncons.cc +798 -0
  413. package/runtime/third_party/boringssl/crypto/x509/v3_ocsp.cc +92 -0
  414. package/runtime/third_party/boringssl/crypto/x509/v3_pcons.cc +102 -0
  415. package/runtime/third_party/boringssl/crypto/x509/v3_pmaps.cc +110 -0
  416. package/runtime/third_party/boringssl/crypto/x509/v3_prn.cc +183 -0
  417. package/runtime/third_party/boringssl/crypto/x509/v3_purp.cc +580 -0
  418. package/runtime/third_party/boringssl/crypto/x509/v3_skey.cc +128 -0
  419. package/runtime/third_party/boringssl/crypto/x509/v3_utl.cc +1311 -0
  420. package/runtime/third_party/boringssl/crypto/x509/x509.cc +47 -0
  421. package/runtime/third_party/boringssl/crypto/x509/x509_att.cc +188 -0
  422. package/runtime/third_party/boringssl/crypto/x509/x509_cmp.cc +243 -0
  423. package/runtime/third_party/boringssl/crypto/x509/x509_d2.cc +66 -0
  424. package/runtime/third_party/boringssl/crypto/x509/x509_def.cc +42 -0
  425. package/runtime/third_party/boringssl/crypto/x509/x509_ext.cc +161 -0
  426. package/runtime/third_party/boringssl/crypto/x509/x509_lu.cc +570 -0
  427. package/runtime/third_party/boringssl/crypto/x509/x509_mtc.cc +598 -0
  428. package/runtime/third_party/boringssl/crypto/x509/x509_obj.cc +169 -0
  429. package/runtime/third_party/boringssl/crypto/x509/x509_req.cc +248 -0
  430. package/runtime/third_party/boringssl/crypto/x509/x509_set.cc +166 -0
  431. package/runtime/third_party/boringssl/crypto/x509/x509_trs.cc +123 -0
  432. package/runtime/third_party/boringssl/crypto/x509/x509_txt.cc +147 -0
  433. package/runtime/third_party/boringssl/crypto/x509/x509_v3.cc +249 -0
  434. package/runtime/third_party/boringssl/crypto/x509/x509_vfy.cc +1531 -0
  435. package/runtime/third_party/boringssl/crypto/x509/x509_vpm.cc +449 -0
  436. package/runtime/third_party/boringssl/crypto/x509/x509cset.cc +222 -0
  437. package/runtime/third_party/boringssl/crypto/x509/x509name.cc +377 -0
  438. package/runtime/third_party/boringssl/crypto/x509/x509rset.cc +55 -0
  439. package/runtime/third_party/boringssl/crypto/x509/x509spki.cc +91 -0
  440. package/runtime/third_party/boringssl/crypto/x509/x_algor.cc +223 -0
  441. package/runtime/third_party/boringssl/crypto/x509/x_all.cc +352 -0
  442. package/runtime/third_party/boringssl/crypto/x509/x_attrib.cc +61 -0
  443. package/runtime/third_party/boringssl/crypto/x509/x_crl.cc +325 -0
  444. package/runtime/third_party/boringssl/crypto/x509/x_exten.cc +42 -0
  445. package/runtime/third_party/boringssl/crypto/x509/x_name.cc +407 -0
  446. package/runtime/third_party/boringssl/crypto/x509/x_pubkey.cc +199 -0
  447. package/runtime/third_party/boringssl/crypto/x509/x_req.cc +80 -0
  448. package/runtime/third_party/boringssl/crypto/x509/x_sig.cc +51 -0
  449. package/runtime/third_party/boringssl/crypto/x509/x_spki.cc +44 -0
  450. package/runtime/third_party/boringssl/crypto/x509/x_x509.cc +495 -0
  451. package/runtime/third_party/boringssl/crypto/x509/x_x509a.cc +169 -0
  452. package/runtime/third_party/boringssl/crypto/xwing/xwing.cc +257 -0
  453. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-apple.S +1326 -0
  454. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-linux.S +1327 -0
  455. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-apple.S +1252 -0
  456. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-linux.S +1253 -0
  457. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-apple.S +873 -0
  458. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-linux.S +885 -0
  459. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-apple.S +2490 -0
  460. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-linux.S +2530 -0
  461. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-apple.S +2413 -0
  462. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-linux.S +2397 -0
  463. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv7-linux.S +784 -0
  464. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-apple.S +792 -0
  465. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-linux.S +786 -0
  466. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-win.S +798 -0
  467. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-apple.S +2912 -0
  468. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-linux.S +2907 -0
  469. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-win.S +2915 -0
  470. package/runtime/third_party/boringssl/gen/bcm/armv4-mont-linux.S +932 -0
  471. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-apple.S +1440 -0
  472. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-linux.S +1440 -0
  473. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-win.S +1446 -0
  474. package/runtime/third_party/boringssl/gen/bcm/bn-586-apple.S +530 -0
  475. package/runtime/third_party/boringssl/gen/bcm/bn-586-linux.S +540 -0
  476. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-apple.S +88 -0
  477. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-linux.S +87 -0
  478. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-win.S +87 -0
  479. package/runtime/third_party/boringssl/gen/bcm/bsaes-armv7-linux.S +1520 -0
  480. package/runtime/third_party/boringssl/gen/bcm/co-586-apple.S +1256 -0
  481. package/runtime/third_party/boringssl/gen/bcm/co-586-linux.S +1264 -0
  482. package/runtime/third_party/boringssl/gen/bcm/ghash-armv4-linux.S +242 -0
  483. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-apple.S +337 -0
  484. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-linux.S +335 -0
  485. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-win.S +341 -0
  486. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-apple.S +288 -0
  487. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-linux.S +292 -0
  488. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-apple.S +426 -0
  489. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-linux.S +425 -0
  490. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-apple.S +322 -0
  491. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-linux.S +328 -0
  492. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-apple.S +1134 -0
  493. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-linux.S +1129 -0
  494. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv7-linux.S +244 -0
  495. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-apple.S +567 -0
  496. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-linux.S +563 -0
  497. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-win.S +571 -0
  498. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-apple.S +1744 -0
  499. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-linux.S +1725 -0
  500. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-win.S +1765 -0
  501. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-apple.S +4544 -0
  502. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-linux.S +4600 -0
  503. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-apple.S +310 -0
  504. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-linux.S +310 -0
  505. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-win.S +310 -0
  506. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-apple.S +321 -0
  507. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-linux.S +335 -0
  508. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-apple.S +58 -0
  509. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-linux.S +57 -0
  510. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-apple.S +1756 -0
  511. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-linux.S +1751 -0
  512. package/runtime/third_party/boringssl/gen/bcm/sha1-586-apple.S +3782 -0
  513. package/runtime/third_party/boringssl/gen/bcm/sha1-586-linux.S +3788 -0
  514. package/runtime/third_party/boringssl/gen/bcm/sha1-armv4-large-linux.S +1479 -0
  515. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-apple.S +1219 -0
  516. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-linux.S +1218 -0
  517. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-win.S +1222 -0
  518. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-apple.S +5454 -0
  519. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-linux.S +5450 -0
  520. package/runtime/third_party/boringssl/gen/bcm/sha256-586-apple.S +5593 -0
  521. package/runtime/third_party/boringssl/gen/bcm/sha256-586-linux.S +5599 -0
  522. package/runtime/third_party/boringssl/gen/bcm/sha256-armv4-linux.S +2840 -0
  523. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-apple.S +1195 -0
  524. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-linux.S +1194 -0
  525. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-win.S +1198 -0
  526. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-apple.S +4173 -0
  527. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-linux.S +4170 -0
  528. package/runtime/third_party/boringssl/gen/bcm/sha512-586-apple.S +2406 -0
  529. package/runtime/third_party/boringssl/gen/bcm/sha512-586-linux.S +2410 -0
  530. package/runtime/third_party/boringssl/gen/bcm/sha512-armv4-linux.S +1857 -0
  531. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-apple.S +1598 -0
  532. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-linux.S +1597 -0
  533. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-win.S +1601 -0
  534. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-apple.S +2979 -0
  535. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-linux.S +2978 -0
  536. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv7-linux.S +1225 -0
  537. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-apple.S +1238 -0
  538. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-linux.S +1220 -0
  539. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-win.S +1256 -0
  540. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-apple.S +680 -0
  541. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-linux.S +706 -0
  542. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-apple.S +1146 -0
  543. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-linux.S +1133 -0
  544. package/runtime/third_party/boringssl/gen/bcm/x86-mont-apple.S +216 -0
  545. package/runtime/third_party/boringssl/gen/bcm/x86-mont-linux.S +218 -0
  546. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-apple.S +1238 -0
  547. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-linux.S +1237 -0
  548. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-apple.S +3644 -0
  549. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-linux.S +3628 -0
  550. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_64_win_asm.inc +325 -0
  551. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_win_asm.inc +325 -0
  552. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-apple.S +3113 -0
  553. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-linux.S +3091 -0
  554. package/runtime/third_party/boringssl/gen/crypto/chacha-armv4-linux.S +1450 -0
  555. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-apple.S +1969 -0
  556. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-linux.S +1967 -0
  557. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-win.S +1973 -0
  558. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-apple.S +957 -0
  559. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-linux.S +961 -0
  560. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-apple.S +1608 -0
  561. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-linux.S +1611 -0
  562. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-apple.S +3010 -0
  563. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-linux.S +3008 -0
  564. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-win.S +3014 -0
  565. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-apple.S +8903 -0
  566. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-linux.S +8940 -0
  567. package/runtime/third_party/boringssl/gen/crypto/err_data.cc +1578 -0
  568. package/runtime/third_party/boringssl/gen/crypto/md5-586-apple.S +684 -0
  569. package/runtime/third_party/boringssl/gen/crypto/md5-586-linux.S +686 -0
  570. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-apple.S +690 -0
  571. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-linux.S +695 -0
  572. package/runtime/third_party/boringssl/include/openssl/aead.h +650 -0
  573. package/runtime/third_party/boringssl/include/openssl/aes.h +173 -0
  574. package/runtime/third_party/boringssl/include/openssl/arm_arch.h +24 -0
  575. package/runtime/third_party/boringssl/include/openssl/asm_base.h +219 -0
  576. package/runtime/third_party/boringssl/include/openssl/asn1.h +2002 -0
  577. package/runtime/third_party/boringssl/include/openssl/asn1_mac.h +18 -0
  578. package/runtime/third_party/boringssl/include/openssl/asn1t.h +584 -0
  579. package/runtime/third_party/boringssl/include/openssl/base.h +548 -0
  580. package/runtime/third_party/boringssl/include/openssl/base64.h +156 -0
  581. package/runtime/third_party/boringssl/include/openssl/bio.h +1061 -0
  582. package/runtime/third_party/boringssl/include/openssl/blake2.h +63 -0
  583. package/runtime/third_party/boringssl/include/openssl/blowfish.h +58 -0
  584. package/runtime/third_party/boringssl/include/openssl/bn.h +986 -0
  585. package/runtime/third_party/boringssl/include/openssl/buf.h +95 -0
  586. package/runtime/third_party/boringssl/include/openssl/buffer.h +18 -0
  587. package/runtime/third_party/boringssl/include/openssl/bytestring.h +798 -0
  588. package/runtime/third_party/boringssl/include/openssl/cast.h +91 -0
  589. package/runtime/third_party/boringssl/include/openssl/chacha.h +47 -0
  590. package/runtime/third_party/boringssl/include/openssl/cipher.h +819 -0
  591. package/runtime/third_party/boringssl/include/openssl/cmac.h +91 -0
  592. package/runtime/third_party/boringssl/include/openssl/cms.h +147 -0
  593. package/runtime/third_party/boringssl/include/openssl/conf.h +136 -0
  594. package/runtime/third_party/boringssl/include/openssl/configuration.h +18 -0
  595. package/runtime/third_party/boringssl/include/openssl/cpu.h +18 -0
  596. package/runtime/third_party/boringssl/include/openssl/crypto.h +235 -0
  597. package/runtime/third_party/boringssl/include/openssl/ctrdrbg.h +116 -0
  598. package/runtime/third_party/boringssl/include/openssl/curve25519.h +309 -0
  599. package/runtime/third_party/boringssl/include/openssl/des.h +134 -0
  600. package/runtime/third_party/boringssl/include/openssl/dh.h +336 -0
  601. package/runtime/third_party/boringssl/include/openssl/digest.h +399 -0
  602. package/runtime/third_party/boringssl/include/openssl/dsa.h +392 -0
  603. package/runtime/third_party/boringssl/include/openssl/dtls1.h +16 -0
  604. package/runtime/third_party/boringssl/include/openssl/e_os2.h +18 -0
  605. package/runtime/third_party/boringssl/include/openssl/ec.h +530 -0
  606. package/runtime/third_party/boringssl/include/openssl/ec_key.h +358 -0
  607. package/runtime/third_party/boringssl/include/openssl/ecdh.h +67 -0
  608. package/runtime/third_party/boringssl/include/openssl/ecdsa.h +242 -0
  609. package/runtime/third_party/boringssl/include/openssl/engine.h +109 -0
  610. package/runtime/third_party/boringssl/include/openssl/err.h +416 -0
  611. package/runtime/third_party/boringssl/include/openssl/evp.h +1645 -0
  612. package/runtime/third_party/boringssl/include/openssl/evp_errors.h +66 -0
  613. package/runtime/third_party/boringssl/include/openssl/ex_data.h +117 -0
  614. package/runtime/third_party/boringssl/include/openssl/hkdf.h +68 -0
  615. package/runtime/third_party/boringssl/include/openssl/hmac.h +151 -0
  616. package/runtime/third_party/boringssl/include/openssl/hpke.h +456 -0
  617. package/runtime/third_party/boringssl/include/openssl/hrss.h +108 -0
  618. package/runtime/third_party/boringssl/include/openssl/is_boringssl.h +16 -0
  619. package/runtime/third_party/boringssl/include/openssl/kdf.h +92 -0
  620. package/runtime/third_party/boringssl/include/openssl/lhash.h +18 -0
  621. package/runtime/third_party/boringssl/include/openssl/md4.h +73 -0
  622. package/runtime/third_party/boringssl/include/openssl/md5.h +67 -0
  623. package/runtime/third_party/boringssl/include/openssl/mem.h +215 -0
  624. package/runtime/third_party/boringssl/include/openssl/mldsa.h +486 -0
  625. package/runtime/third_party/boringssl/include/openssl/mlkem.h +222 -0
  626. package/runtime/third_party/boringssl/include/openssl/nid.h +5561 -0
  627. package/runtime/third_party/boringssl/include/openssl/obj.h +225 -0
  628. package/runtime/third_party/boringssl/include/openssl/obj_mac.h +18 -0
  629. package/runtime/third_party/boringssl/include/openssl/objects.h +18 -0
  630. package/runtime/third_party/boringssl/include/openssl/opensslconf.h +108 -0
  631. package/runtime/third_party/boringssl/include/openssl/opensslv.h +18 -0
  632. package/runtime/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
  633. package/runtime/third_party/boringssl/include/openssl/params.h +42 -0
  634. package/runtime/third_party/boringssl/include/openssl/pem.h +769 -0
  635. package/runtime/third_party/boringssl/include/openssl/pkcs12.h +18 -0
  636. package/runtime/third_party/boringssl/include/openssl/pkcs7.h +239 -0
  637. package/runtime/third_party/boringssl/include/openssl/pkcs8.h +267 -0
  638. package/runtime/third_party/boringssl/include/openssl/poly1305.h +52 -0
  639. package/runtime/third_party/boringssl/include/openssl/pool.h +137 -0
  640. package/runtime/third_party/boringssl/include/openssl/posix_time.h +51 -0
  641. package/runtime/third_party/boringssl/include/openssl/prefix_symbols.h +8000 -0
  642. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_S.h +633 -0
  643. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_c.h +329 -0
  644. package/runtime/third_party/boringssl/include/openssl/rand.h +138 -0
  645. package/runtime/third_party/boringssl/include/openssl/rc4.h +54 -0
  646. package/runtime/third_party/boringssl/include/openssl/ripemd.h +71 -0
  647. package/runtime/third_party/boringssl/include/openssl/rsa.h +893 -0
  648. package/runtime/third_party/boringssl/include/openssl/safestack.h +16 -0
  649. package/runtime/third_party/boringssl/include/openssl/service_indicator.h +19 -0
  650. package/runtime/third_party/boringssl/include/openssl/sha.h +108 -0
  651. package/runtime/third_party/boringssl/include/openssl/sha2.h +201 -0
  652. package/runtime/third_party/boringssl/include/openssl/siphash.h +37 -0
  653. package/runtime/third_party/boringssl/include/openssl/slhdsa.h +250 -0
  654. package/runtime/third_party/boringssl/include/openssl/span.h +376 -0
  655. package/runtime/third_party/boringssl/include/openssl/srtp.h +18 -0
  656. package/runtime/third_party/boringssl/include/openssl/ssl.h +7211 -0
  657. package/runtime/third_party/boringssl/include/openssl/ssl3.h +171 -0
  658. package/runtime/third_party/boringssl/include/openssl/stack.h +688 -0
  659. package/runtime/third_party/boringssl/include/openssl/target.h +246 -0
  660. package/runtime/third_party/boringssl/include/openssl/thread.h +114 -0
  661. package/runtime/third_party/boringssl/include/openssl/time.h +22 -0
  662. package/runtime/third_party/boringssl/include/openssl/tls1.h +263 -0
  663. package/runtime/third_party/boringssl/include/openssl/tls_prf.h +47 -0
  664. package/runtime/third_party/boringssl/include/openssl/trust_token.h +349 -0
  665. package/runtime/third_party/boringssl/include/openssl/type_check.h +37 -0
  666. package/runtime/third_party/boringssl/include/openssl/types.h +18 -0
  667. package/runtime/third_party/boringssl/include/openssl/x509.h +5404 -0
  668. package/runtime/third_party/boringssl/include/openssl/x509_vfy.h +18 -0
  669. package/runtime/third_party/boringssl/include/openssl/x509v3.h +63 -0
  670. package/runtime/third_party/boringssl/include/openssl/x509v3_errors.h +84 -0
  671. package/runtime/third_party/boringssl/include/openssl/xwing.h +115 -0
  672. package/runtime/third_party/boringssl/sources.json +696 -0
  673. package/runtime/third_party/boringssl/ssl/bio_ssl.cc +196 -0
  674. package/runtime/third_party/boringssl/ssl/d1_both.cc +1137 -0
  675. package/runtime/third_party/boringssl/ssl/d1_lib.cc +245 -0
  676. package/runtime/third_party/boringssl/ssl/d1_pkt.cc +322 -0
  677. package/runtime/third_party/boringssl/ssl/d1_srtp.cc +128 -0
  678. package/runtime/third_party/boringssl/ssl/dtls_method.cc +216 -0
  679. package/runtime/third_party/boringssl/ssl/dtls_record.cc +586 -0
  680. package/runtime/third_party/boringssl/ssl/encrypted_client_hello.cc +1110 -0
  681. package/runtime/third_party/boringssl/ssl/extensions.cc +5368 -0
  682. package/runtime/third_party/boringssl/ssl/handoff.cc +625 -0
  683. package/runtime/third_party/boringssl/ssl/handshake.cc +694 -0
  684. package/runtime/third_party/boringssl/ssl/handshake_client.cc +1958 -0
  685. package/runtime/third_party/boringssl/ssl/handshake_server.cc +1875 -0
  686. package/runtime/third_party/boringssl/ssl/internal.h +4506 -0
  687. package/runtime/third_party/boringssl/ssl/s3_both.cc +555 -0
  688. package/runtime/third_party/boringssl/ssl/s3_lib.cc +88 -0
  689. package/runtime/third_party/boringssl/ssl/s3_pkt.cc +396 -0
  690. package/runtime/third_party/boringssl/ssl/ssl_aead_ctx.cc +416 -0
  691. package/runtime/third_party/boringssl/ssl/ssl_asn1.cc +851 -0
  692. package/runtime/third_party/boringssl/ssl/ssl_buffer.cc +304 -0
  693. package/runtime/third_party/boringssl/ssl/ssl_cert.cc +723 -0
  694. package/runtime/third_party/boringssl/ssl/ssl_cipher.cc +1762 -0
  695. package/runtime/third_party/boringssl/ssl/ssl_credential.cc +913 -0
  696. package/runtime/third_party/boringssl/ssl/ssl_file.cc +375 -0
  697. package/runtime/third_party/boringssl/ssl/ssl_key_share.cc +445 -0
  698. package/runtime/third_party/boringssl/ssl/ssl_lib.cc +4132 -0
  699. package/runtime/third_party/boringssl/ssl/ssl_privkey.cc +973 -0
  700. package/runtime/third_party/boringssl/ssl/ssl_session.cc +1273 -0
  701. package/runtime/third_party/boringssl/ssl/ssl_stat.cc +162 -0
  702. package/runtime/third_party/boringssl/ssl/ssl_transcript.cc +224 -0
  703. package/runtime/third_party/boringssl/ssl/ssl_versions.cc +436 -0
  704. package/runtime/third_party/boringssl/ssl/ssl_x509.cc +1229 -0
  705. package/runtime/third_party/boringssl/ssl/t1_enc.cc +266 -0
  706. package/runtime/third_party/boringssl/ssl/tls13_both.cc +764 -0
  707. package/runtime/third_party/boringssl/ssl/tls13_client.cc +1325 -0
  708. package/runtime/third_party/boringssl/ssl/tls13_enc.cc +746 -0
  709. package/runtime/third_party/boringssl/ssl/tls13_server.cc +1623 -0
  710. package/runtime/third_party/boringssl/ssl/tls_method.cc +266 -0
  711. package/runtime/third_party/boringssl/ssl/tls_record.cc +524 -0
  712. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_mul.S +178 -0
  713. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_square.S +146 -0
  714. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_mul.S +177 -0
  715. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_sqr.S +166 -0
  716. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_bareminimum.c.inc +47 -0
  717. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_platform.c.inc +137 -0
  718. package/runtime/third_party/boringssl/third_party/fiat/curve25519_32.h +1571 -0
  719. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64.h +978 -0
  720. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_adx.h +700 -0
  721. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_msvc.h +1281 -0
  722. package/runtime/third_party/boringssl/third_party/fiat/p256_32.h +4760 -0
  723. package/runtime/third_party/boringssl/third_party/fiat/p256_64.h +1984 -0
  724. package/runtime/third_party/boringssl/third_party/fiat/p256_64_msvc.h +1939 -0
  725. package/runtime/third_party/boringssl/third_party/fiat/p256_field.c.inc +26 -0
  726. package/runtime/third_party/boringssl/third_party/fiat/p256_field_32.br.c.inc +71 -0
  727. package/runtime/third_party/boringssl/third_party/fiat/p256_field_64.br.c.inc +84 -0
  728. package/runtime/third_party/boringssl/third_party/fiat/p256_point.br.c.inc +112 -0
  729. package/runtime/third_party/v8-ieee754/README.md +2 -1
  730. package/runtime/third_party/v8-ieee754/convert.py +4 -0
  731. package/runtime/third_party/v8-ieee754/ieee754.c +1 -1
  732. package/runtime/third_party/bearssl/LICENSE.txt +0 -21
  733. package/runtime/third_party/bearssl/README.txt +0 -136
  734. package/runtime/third_party/bearssl/VERSION +0 -1
  735. package/runtime/third_party/bearssl/inc/bearssl.h +0 -183
  736. package/runtime/third_party/bearssl/inc/bearssl_aead.h +0 -1059
  737. package/runtime/third_party/bearssl/inc/bearssl_block.h +0 -2618
  738. package/runtime/third_party/bearssl/inc/bearssl_ec.h +0 -967
  739. package/runtime/third_party/bearssl/inc/bearssl_hash.h +0 -1346
  740. package/runtime/third_party/bearssl/inc/bearssl_hmac.h +0 -241
  741. package/runtime/third_party/bearssl/inc/bearssl_kdf.h +0 -284
  742. package/runtime/third_party/bearssl/inc/bearssl_pem.h +0 -294
  743. package/runtime/third_party/bearssl/inc/bearssl_prf.h +0 -150
  744. package/runtime/third_party/bearssl/inc/bearssl_rand.h +0 -397
  745. package/runtime/third_party/bearssl/inc/bearssl_rsa.h +0 -1655
  746. package/runtime/third_party/bearssl/inc/bearssl_ssl.h +0 -4296
  747. package/runtime/third_party/bearssl/inc/bearssl_x509.h +0 -1474
  748. package/runtime/third_party/bearssl/src/aead/ccm.c +0 -346
  749. package/runtime/third_party/bearssl/src/aead/eax.c +0 -525
  750. package/runtime/third_party/bearssl/src/aead/gcm.c +0 -318
  751. package/runtime/third_party/bearssl/src/codec/ccopy.c +0 -44
  752. package/runtime/third_party/bearssl/src/codec/dec16be.c +0 -38
  753. package/runtime/third_party/bearssl/src/codec/dec16le.c +0 -38
  754. package/runtime/third_party/bearssl/src/codec/dec32be.c +0 -38
  755. package/runtime/third_party/bearssl/src/codec/dec32le.c +0 -38
  756. package/runtime/third_party/bearssl/src/codec/dec64be.c +0 -38
  757. package/runtime/third_party/bearssl/src/codec/dec64le.c +0 -38
  758. package/runtime/third_party/bearssl/src/codec/enc16be.c +0 -38
  759. package/runtime/third_party/bearssl/src/codec/enc16le.c +0 -38
  760. package/runtime/third_party/bearssl/src/codec/enc32be.c +0 -38
  761. package/runtime/third_party/bearssl/src/codec/enc32le.c +0 -38
  762. package/runtime/third_party/bearssl/src/codec/enc64be.c +0 -38
  763. package/runtime/third_party/bearssl/src/codec/enc64le.c +0 -38
  764. package/runtime/third_party/bearssl/src/codec/pemdec.c +0 -526
  765. package/runtime/third_party/bearssl/src/codec/pemdec.t0 +0 -314
  766. package/runtime/third_party/bearssl/src/codec/pemenc.c +0 -173
  767. package/runtime/third_party/bearssl/src/config.h +0 -247
  768. package/runtime/third_party/bearssl/src/ec/ec_all_m15.c +0 -121
  769. package/runtime/third_party/bearssl/src/ec/ec_all_m31.c +0 -171
  770. package/runtime/third_party/bearssl/src/ec/ec_c25519_i15.c +0 -398
  771. package/runtime/third_party/bearssl/src/ec/ec_c25519_i31.c +0 -390
  772. package/runtime/third_party/bearssl/src/ec/ec_c25519_m15.c +0 -1478
  773. package/runtime/third_party/bearssl/src/ec/ec_c25519_m31.c +0 -800
  774. package/runtime/third_party/bearssl/src/ec/ec_c25519_m62.c +0 -605
  775. package/runtime/third_party/bearssl/src/ec/ec_c25519_m64.c +0 -831
  776. package/runtime/third_party/bearssl/src/ec/ec_curve25519.c +0 -46
  777. package/runtime/third_party/bearssl/src/ec/ec_default.c +0 -36
  778. package/runtime/third_party/bearssl/src/ec/ec_keygen.c +0 -86
  779. package/runtime/third_party/bearssl/src/ec/ec_p256_m15.c +0 -2124
  780. package/runtime/third_party/bearssl/src/ec/ec_p256_m31.c +0 -1469
  781. package/runtime/third_party/bearssl/src/ec/ec_p256_m62.c +0 -1765
  782. package/runtime/third_party/bearssl/src/ec/ec_p256_m64.c +0 -1781
  783. package/runtime/third_party/bearssl/src/ec/ec_prime_i15.c +0 -824
  784. package/runtime/third_party/bearssl/src/ec/ec_prime_i31.c +0 -826
  785. package/runtime/third_party/bearssl/src/ec/ec_pubkey.c +0 -85
  786. package/runtime/third_party/bearssl/src/ec/ec_secp256r1.c +0 -51
  787. package/runtime/third_party/bearssl/src/ec/ec_secp384r1.c +0 -57
  788. package/runtime/third_party/bearssl/src/ec/ec_secp521r1.c +0 -64
  789. package/runtime/third_party/bearssl/src/ec/ecdsa_atr.c +0 -134
  790. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_asn1.c +0 -36
  791. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_raw.c +0 -36
  792. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_asn1.c +0 -36
  793. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_raw.c +0 -36
  794. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_bits.c +0 -47
  795. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_asn1.c +0 -45
  796. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_raw.c +0 -174
  797. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_asn1.c +0 -48
  798. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_raw.c +0 -166
  799. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_bits.c +0 -47
  800. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_asn1.c +0 -45
  801. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_raw.c +0 -173
  802. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_asn1.c +0 -48
  803. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_raw.c +0 -165
  804. package/runtime/third_party/bearssl/src/ec/ecdsa_rta.c +0 -121
  805. package/runtime/third_party/bearssl/src/hash/dig_oid.c +0 -84
  806. package/runtime/third_party/bearssl/src/hash/dig_size.c +0 -50
  807. package/runtime/third_party/bearssl/src/hash/ghash_ctmul.c +0 -345
  808. package/runtime/third_party/bearssl/src/hash/ghash_ctmul32.c +0 -251
  809. package/runtime/third_party/bearssl/src/hash/ghash_ctmul64.c +0 -154
  810. package/runtime/third_party/bearssl/src/hash/ghash_pclmul.c +0 -389
  811. package/runtime/third_party/bearssl/src/hash/ghash_pwr8.c +0 -411
  812. package/runtime/third_party/bearssl/src/hash/md5.c +0 -208
  813. package/runtime/third_party/bearssl/src/hash/md5sha1.c +0 -141
  814. package/runtime/third_party/bearssl/src/hash/mgf1.c +0 -56
  815. package/runtime/third_party/bearssl/src/hash/multihash.c +0 -166
  816. package/runtime/third_party/bearssl/src/hash/sha1.c +0 -191
  817. package/runtime/third_party/bearssl/src/hash/sha2big.c +0 -285
  818. package/runtime/third_party/bearssl/src/hash/sha2small.c +0 -341
  819. package/runtime/third_party/bearssl/src/inner.h +0 -2577
  820. package/runtime/third_party/bearssl/src/int/i15_add.c +0 -46
  821. package/runtime/third_party/bearssl/src/int/i15_bitlen.c +0 -44
  822. package/runtime/third_party/bearssl/src/int/i15_decmod.c +0 -124
  823. package/runtime/third_party/bearssl/src/int/i15_decode.c +0 -56
  824. package/runtime/third_party/bearssl/src/int/i15_decred.c +0 -100
  825. package/runtime/third_party/bearssl/src/int/i15_encode.c +0 -56
  826. package/runtime/third_party/bearssl/src/int/i15_fmont.c +0 -59
  827. package/runtime/third_party/bearssl/src/int/i15_iszero.c +0 -39
  828. package/runtime/third_party/bearssl/src/int/i15_moddiv.c +0 -465
  829. package/runtime/third_party/bearssl/src/int/i15_modpow.c +0 -50
  830. package/runtime/third_party/bearssl/src/int/i15_modpow2.c +0 -160
  831. package/runtime/third_party/bearssl/src/int/i15_montmul.c +0 -184
  832. package/runtime/third_party/bearssl/src/int/i15_mulacc.c +0 -61
  833. package/runtime/third_party/bearssl/src/int/i15_muladd.c +0 -173
  834. package/runtime/third_party/bearssl/src/int/i15_ninv15.c +0 -38
  835. package/runtime/third_party/bearssl/src/int/i15_reduce.c +0 -66
  836. package/runtime/third_party/bearssl/src/int/i15_rshift.c +0 -47
  837. package/runtime/third_party/bearssl/src/int/i15_sub.c +0 -46
  838. package/runtime/third_party/bearssl/src/int/i15_tmont.c +0 -36
  839. package/runtime/third_party/bearssl/src/int/i31_add.c +0 -46
  840. package/runtime/third_party/bearssl/src/int/i31_bitlen.c +0 -44
  841. package/runtime/third_party/bearssl/src/int/i31_decmod.c +0 -124
  842. package/runtime/third_party/bearssl/src/int/i31_decode.c +0 -57
  843. package/runtime/third_party/bearssl/src/int/i31_decred.c +0 -103
  844. package/runtime/third_party/bearssl/src/int/i31_encode.c +0 -79
  845. package/runtime/third_party/bearssl/src/int/i31_fmont.c +0 -60
  846. package/runtime/third_party/bearssl/src/int/i31_iszero.c +0 -39
  847. package/runtime/third_party/bearssl/src/int/i31_moddiv.c +0 -488
  848. package/runtime/third_party/bearssl/src/int/i31_modpow.c +0 -65
  849. package/runtime/third_party/bearssl/src/int/i31_modpow2.c +0 -160
  850. package/runtime/third_party/bearssl/src/int/i31_montmul.c +0 -127
  851. package/runtime/third_party/bearssl/src/int/i31_mulacc.c +0 -74
  852. package/runtime/third_party/bearssl/src/int/i31_muladd.c +0 -157
  853. package/runtime/third_party/bearssl/src/int/i31_ninv31.c +0 -39
  854. package/runtime/third_party/bearssl/src/int/i31_reduce.c +0 -66
  855. package/runtime/third_party/bearssl/src/int/i31_rshift.c +0 -47
  856. package/runtime/third_party/bearssl/src/int/i31_sub.c +0 -46
  857. package/runtime/third_party/bearssl/src/int/i31_tmont.c +0 -36
  858. package/runtime/third_party/bearssl/src/int/i32_add.c +0 -51
  859. package/runtime/third_party/bearssl/src/int/i32_bitlen.c +0 -44
  860. package/runtime/third_party/bearssl/src/int/i32_decmod.c +0 -77
  861. package/runtime/third_party/bearssl/src/int/i32_decode.c +0 -63
  862. package/runtime/third_party/bearssl/src/int/i32_decred.c +0 -107
  863. package/runtime/third_party/bearssl/src/int/i32_div32.c +0 -56
  864. package/runtime/third_party/bearssl/src/int/i32_encode.c +0 -72
  865. package/runtime/third_party/bearssl/src/int/i32_fmont.c +0 -60
  866. package/runtime/third_party/bearssl/src/int/i32_iszero.c +0 -39
  867. package/runtime/third_party/bearssl/src/int/i32_modpow.c +0 -65
  868. package/runtime/third_party/bearssl/src/int/i32_montmul.c +0 -69
  869. package/runtime/third_party/bearssl/src/int/i32_mulacc.c +0 -56
  870. package/runtime/third_party/bearssl/src/int/i32_muladd.c +0 -138
  871. package/runtime/third_party/bearssl/src/int/i32_ninv32.c +0 -39
  872. package/runtime/third_party/bearssl/src/int/i32_reduce.c +0 -66
  873. package/runtime/third_party/bearssl/src/int/i32_sub.c +0 -51
  874. package/runtime/third_party/bearssl/src/int/i32_tmont.c +0 -36
  875. package/runtime/third_party/bearssl/src/int/i62_modpow2.c +0 -493
  876. package/runtime/third_party/bearssl/src/kdf/hkdf.c +0 -107
  877. package/runtime/third_party/bearssl/src/kdf/shake.c +0 -590
  878. package/runtime/third_party/bearssl/src/mac/hmac.c +0 -122
  879. package/runtime/third_party/bearssl/src/mac/hmac_ct.c +0 -193
  880. package/runtime/third_party/bearssl/src/rand/aesctr_drbg.c +0 -206
  881. package/runtime/third_party/bearssl/src/rand/hmac_drbg.c +0 -157
  882. package/runtime/third_party/bearssl/src/rand/sysrng.c +0 -252
  883. package/runtime/third_party/bearssl/src/rsa/rsa_default_keygen.c +0 -38
  884. package/runtime/third_party/bearssl/src/rsa/rsa_default_modulus.c +0 -36
  885. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_decrypt.c +0 -38
  886. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_encrypt.c +0 -38
  887. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_sign.c +0 -38
  888. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_vrfy.c +0 -38
  889. package/runtime/third_party/bearssl/src/rsa/rsa_default_priv.c +0 -38
  890. package/runtime/third_party/bearssl/src/rsa/rsa_default_privexp.c +0 -36
  891. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_sign.c +0 -38
  892. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_vrfy.c +0 -38
  893. package/runtime/third_party/bearssl/src/rsa/rsa_default_pub.c +0 -38
  894. package/runtime/third_party/bearssl/src/rsa/rsa_default_pubexp.c +0 -36
  895. package/runtime/third_party/bearssl/src/rsa/rsa_i15_keygen.c +0 -583
  896. package/runtime/third_party/bearssl/src/rsa/rsa_i15_modulus.c +0 -99
  897. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_decrypt.c +0 -41
  898. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_encrypt.c +0 -44
  899. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_sign.c +0 -37
  900. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_vrfy.c +0 -43
  901. package/runtime/third_party/bearssl/src/rsa/rsa_i15_priv.c +0 -209
  902. package/runtime/third_party/bearssl/src/rsa/rsa_i15_privexp.c +0 -320
  903. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_sign.c +0 -40
  904. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_vrfy.c +0 -44
  905. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pub.c +0 -113
  906. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pubexp.c +0 -152
  907. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen.c +0 -37
  908. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen_inner.c +0 -608
  909. package/runtime/third_party/bearssl/src/rsa/rsa_i31_modulus.c +0 -99
  910. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_decrypt.c +0 -41
  911. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_encrypt.c +0 -44
  912. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_sign.c +0 -37
  913. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_vrfy.c +0 -43
  914. package/runtime/third_party/bearssl/src/rsa/rsa_i31_priv.c +0 -203
  915. package/runtime/third_party/bearssl/src/rsa/rsa_i31_privexp.c +0 -318
  916. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_sign.c +0 -40
  917. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_vrfy.c +0 -44
  918. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pub.c +0 -106
  919. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pubexp.c +0 -152
  920. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_decrypt.c +0 -41
  921. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_encrypt.c +0 -44
  922. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_sign.c +0 -37
  923. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_vrfy.c +0 -43
  924. package/runtime/third_party/bearssl/src/rsa/rsa_i32_priv.c +0 -160
  925. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_sign.c +0 -40
  926. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_vrfy.c +0 -44
  927. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pub.c +0 -77
  928. package/runtime/third_party/bearssl/src/rsa/rsa_i62_keygen.c +0 -57
  929. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_decrypt.c +0 -61
  930. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_encrypt.c +0 -64
  931. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_sign.c +0 -57
  932. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_vrfy.c +0 -63
  933. package/runtime/third_party/bearssl/src/rsa/rsa_i62_priv.c +0 -223
  934. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_sign.c +0 -60
  935. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_vrfy.c +0 -64
  936. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pub.c +0 -125
  937. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_pad.c +0 -112
  938. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_unpad.c +0 -145
  939. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_pad.c +0 -100
  940. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_unpad.c +0 -121
  941. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_pad.c +0 -106
  942. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_unpad.c +0 -121
  943. package/runtime/third_party/bearssl/src/rsa/rsa_ssl_decrypt.c +0 -52
  944. package/runtime/third_party/bearssl/src/settings.c +0 -306
  945. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcdec.c +0 -69
  946. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcenc.c +0 -67
  947. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctr.c +0 -84
  948. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctrcbc.c +0 -142
  949. package/runtime/third_party/bearssl/src/symcipher/aes_big_dec.c +0 -254
  950. package/runtime/third_party/bearssl/src/symcipher/aes_big_enc.c +0 -157
  951. package/runtime/third_party/bearssl/src/symcipher/aes_common.c +0 -112
  952. package/runtime/third_party/bearssl/src/symcipher/aes_ct.c +0 -328
  953. package/runtime/third_party/bearssl/src/symcipher/aes_ct64.c +0 -398
  954. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcdec.c +0 -104
  955. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcenc.c +0 -81
  956. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctr.c +0 -114
  957. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctrcbc.c +0 -433
  958. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_dec.c +0 -159
  959. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_enc.c +0 -115
  960. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcdec.c +0 -111
  961. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcenc.c +0 -91
  962. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctr.c +0 -116
  963. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctrcbc.c +0 -422
  964. package/runtime/third_party/bearssl/src/symcipher/aes_ct_dec.c +0 -170
  965. package/runtime/third_party/bearssl/src/symcipher/aes_ct_enc.c +0 -112
  966. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8.c +0 -445
  967. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcdec.c +0 -670
  968. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcenc.c +0 -417
  969. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctr.c +0 -717
  970. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctrcbc.c +0 -946
  971. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcdec.c +0 -69
  972. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcenc.c +0 -67
  973. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctr.c +0 -84
  974. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctrcbc.c +0 -142
  975. package/runtime/third_party/bearssl/src/symcipher/aes_small_dec.c +0 -176
  976. package/runtime/third_party/bearssl/src/symcipher/aes_small_enc.c +0 -129
  977. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni.c +0 -240
  978. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcdec.c +0 -223
  979. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcenc.c +0 -122
  980. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctr.c +0 -211
  981. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctrcbc.c +0 -596
  982. package/runtime/third_party/bearssl/src/symcipher/chacha20_ct.c +0 -106
  983. package/runtime/third_party/bearssl/src/symcipher/chacha20_sse2.c +0 -237
  984. package/runtime/third_party/bearssl/src/symcipher/des_ct.c +0 -411
  985. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcdec.c +0 -87
  986. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcenc.c +0 -69
  987. package/runtime/third_party/bearssl/src/symcipher/des_support.c +0 -166
  988. package/runtime/third_party/bearssl/src/symcipher/des_tab.c +0 -310
  989. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcdec.c +0 -85
  990. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcenc.c +0 -67
  991. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul.c +0 -260
  992. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul32.c +0 -297
  993. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmulq.c +0 -475
  994. package/runtime/third_party/bearssl/src/symcipher/poly1305_i15.c +0 -221
  995. package/runtime/third_party/bearssl/src/x509/asn1.t0 +0 -757
  996. package/runtime/third_party/bearssl/src/x509/asn1enc.c +0 -93
  997. package/runtime/third_party/bearssl/src/x509/encode_ec_pk8der.c +0 -110
  998. package/runtime/third_party/bearssl/src/x509/encode_ec_rawder.c +0 -161
  999. package/runtime/third_party/bearssl/src/x509/encode_rsa_pk8der.c +0 -97
  1000. package/runtime/third_party/bearssl/src/x509/encode_rsa_rawder.c +0 -96
  1001. package/runtime/third_party/bearssl/src/x509/skey_decoder.c +0 -653
  1002. package/runtime/third_party/bearssl/src/x509/skey_decoder.t0 +0 -376
  1003. package/runtime/third_party/bearssl/src/x509/x509_decoder.c +0 -776
  1004. package/runtime/third_party/bearssl/src/x509/x509_decoder.t0 +0 -324
  1005. package/runtime/third_party/bearssl/src/x509/x509_knownkey.c +0 -105
  1006. package/runtime/third_party/bearssl/src/x509/x509_minimal.c +0 -1722
  1007. package/runtime/third_party/bearssl/src/x509/x509_minimal.t0 +0 -1526
  1008. package/runtime/third_party/bearssl/src/x509/x509_minimal_full.c +0 -59
@@ -0,0 +1,2124 @@
1
+ // Copyright 2015 The BoringSSL Authors
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // https://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ /* This file is taken from crypto_scalarmult/curve25519/neon2/scalarmult.s in
16
+ * SUPERCOP 20141124 (http://bench.cr.yp.to/supercop.html). That code is public
17
+ * domain licensed but the standard Apache 2.0 license is included above to keep
18
+ * licensing simple. */
19
+
20
+ #include <openssl/asm_base.h>
21
+
22
+ #if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_ARM) && defined(__ELF__)
23
+
24
+ .fpu neon
25
+ .text
26
+ .align 4
27
+
28
+ .global x25519_NEON
29
+ .hidden x25519_NEON
30
+ .type x25519_NEON, %function
31
+ x25519_NEON:
32
+ vpush {q4,q5,q6,q7}
33
+ mov r12,sp
34
+ sub sp,sp,#736
35
+ and sp,sp,#0xffffffe0
36
+ strd r4,[sp,#0]
37
+ strd r6,[sp,#8]
38
+ strd r8,[sp,#16]
39
+ strd r10,[sp,#24]
40
+ str r12,[sp,#480]
41
+ str r14,[sp,#484]
42
+ mov r0,r0
43
+ mov r1,r1
44
+ mov r2,r2
45
+ add r3,sp,#32
46
+ ldr r4,=0
47
+ ldr r5,=254
48
+ vmov.i32 q0,#1
49
+ vshr.u64 q1,q0,#7
50
+ vshr.u64 q0,q0,#8
51
+ vmov.i32 d4,#19
52
+ vmov.i32 d5,#38
53
+ add r6,sp,#512
54
+ vst1.8 {d2-d3},[r6,: 128]
55
+ add r6,sp,#528
56
+ vst1.8 {d0-d1},[r6,: 128]
57
+ add r6,sp,#544
58
+ vst1.8 {d4-d5},[r6,: 128]
59
+ add r6,r3,#0
60
+ vmov.i32 q2,#0
61
+ vst1.8 {d4-d5},[r6,: 128]!
62
+ vst1.8 {d4-d5},[r6,: 128]!
63
+ vst1.8 d4,[r6,: 64]
64
+ add r6,r3,#0
65
+ ldr r7,=960
66
+ sub r7,r7,#2
67
+ neg r7,r7
68
+ sub r7,r7,r7,LSL #7
69
+ str r7,[r6]
70
+ add r6,sp,#704
71
+ vld1.8 {d4-d5},[r1]!
72
+ vld1.8 {d6-d7},[r1]
73
+ vst1.8 {d4-d5},[r6,: 128]!
74
+ vst1.8 {d6-d7},[r6,: 128]
75
+ sub r1,r6,#16
76
+ ldrb r6,[r1]
77
+ and r6,r6,#248
78
+ strb r6,[r1]
79
+ ldrb r6,[r1,#31]
80
+ and r6,r6,#127
81
+ orr r6,r6,#64
82
+ strb r6,[r1,#31]
83
+ vmov.i64 q2,#0xffffffff
84
+ vshr.u64 q3,q2,#7
85
+ vshr.u64 q2,q2,#6
86
+ vld1.8 {d8},[r2]
87
+ vld1.8 {d10},[r2]
88
+ add r2,r2,#6
89
+ vld1.8 {d12},[r2]
90
+ vld1.8 {d14},[r2]
91
+ add r2,r2,#6
92
+ vld1.8 {d16},[r2]
93
+ add r2,r2,#4
94
+ vld1.8 {d18},[r2]
95
+ vld1.8 {d20},[r2]
96
+ add r2,r2,#6
97
+ vld1.8 {d22},[r2]
98
+ add r2,r2,#2
99
+ vld1.8 {d24},[r2]
100
+ vld1.8 {d26},[r2]
101
+ vshr.u64 q5,q5,#26
102
+ vshr.u64 q6,q6,#3
103
+ vshr.u64 q7,q7,#29
104
+ vshr.u64 q8,q8,#6
105
+ vshr.u64 q10,q10,#25
106
+ vshr.u64 q11,q11,#3
107
+ vshr.u64 q12,q12,#12
108
+ vshr.u64 q13,q13,#38
109
+ vand q4,q4,q2
110
+ vand q6,q6,q2
111
+ vand q8,q8,q2
112
+ vand q10,q10,q2
113
+ vand q2,q12,q2
114
+ vand q5,q5,q3
115
+ vand q7,q7,q3
116
+ vand q9,q9,q3
117
+ vand q11,q11,q3
118
+ vand q3,q13,q3
119
+ add r2,r3,#48
120
+ vadd.i64 q12,q4,q1
121
+ vadd.i64 q13,q10,q1
122
+ vshr.s64 q12,q12,#26
123
+ vshr.s64 q13,q13,#26
124
+ vadd.i64 q5,q5,q12
125
+ vshl.i64 q12,q12,#26
126
+ vadd.i64 q14,q5,q0
127
+ vadd.i64 q11,q11,q13
128
+ vshl.i64 q13,q13,#26
129
+ vadd.i64 q15,q11,q0
130
+ vsub.i64 q4,q4,q12
131
+ vshr.s64 q12,q14,#25
132
+ vsub.i64 q10,q10,q13
133
+ vshr.s64 q13,q15,#25
134
+ vadd.i64 q6,q6,q12
135
+ vshl.i64 q12,q12,#25
136
+ vadd.i64 q14,q6,q1
137
+ vadd.i64 q2,q2,q13
138
+ vsub.i64 q5,q5,q12
139
+ vshr.s64 q12,q14,#26
140
+ vshl.i64 q13,q13,#25
141
+ vadd.i64 q14,q2,q1
142
+ vadd.i64 q7,q7,q12
143
+ vshl.i64 q12,q12,#26
144
+ vadd.i64 q15,q7,q0
145
+ vsub.i64 q11,q11,q13
146
+ vshr.s64 q13,q14,#26
147
+ vsub.i64 q6,q6,q12
148
+ vshr.s64 q12,q15,#25
149
+ vadd.i64 q3,q3,q13
150
+ vshl.i64 q13,q13,#26
151
+ vadd.i64 q14,q3,q0
152
+ vadd.i64 q8,q8,q12
153
+ vshl.i64 q12,q12,#25
154
+ vadd.i64 q15,q8,q1
155
+ add r2,r2,#8
156
+ vsub.i64 q2,q2,q13
157
+ vshr.s64 q13,q14,#25
158
+ vsub.i64 q7,q7,q12
159
+ vshr.s64 q12,q15,#26
160
+ vadd.i64 q14,q13,q13
161
+ vadd.i64 q9,q9,q12
162
+ vtrn.32 d12,d14
163
+ vshl.i64 q12,q12,#26
164
+ vtrn.32 d13,d15
165
+ vadd.i64 q0,q9,q0
166
+ vadd.i64 q4,q4,q14
167
+ vst1.8 d12,[r2,: 64]!
168
+ vshl.i64 q6,q13,#4
169
+ vsub.i64 q7,q8,q12
170
+ vshr.s64 q0,q0,#25
171
+ vadd.i64 q4,q4,q6
172
+ vadd.i64 q6,q10,q0
173
+ vshl.i64 q0,q0,#25
174
+ vadd.i64 q8,q6,q1
175
+ vadd.i64 q4,q4,q13
176
+ vshl.i64 q10,q13,#25
177
+ vadd.i64 q1,q4,q1
178
+ vsub.i64 q0,q9,q0
179
+ vshr.s64 q8,q8,#26
180
+ vsub.i64 q3,q3,q10
181
+ vtrn.32 d14,d0
182
+ vshr.s64 q1,q1,#26
183
+ vtrn.32 d15,d1
184
+ vadd.i64 q0,q11,q8
185
+ vst1.8 d14,[r2,: 64]
186
+ vshl.i64 q7,q8,#26
187
+ vadd.i64 q5,q5,q1
188
+ vtrn.32 d4,d6
189
+ vshl.i64 q1,q1,#26
190
+ vtrn.32 d5,d7
191
+ vsub.i64 q3,q6,q7
192
+ add r2,r2,#16
193
+ vsub.i64 q1,q4,q1
194
+ vst1.8 d4,[r2,: 64]
195
+ vtrn.32 d6,d0
196
+ vtrn.32 d7,d1
197
+ sub r2,r2,#8
198
+ vtrn.32 d2,d10
199
+ vtrn.32 d3,d11
200
+ vst1.8 d6,[r2,: 64]
201
+ sub r2,r2,#24
202
+ vst1.8 d2,[r2,: 64]
203
+ add r2,r3,#96
204
+ vmov.i32 q0,#0
205
+ vmov.i64 d2,#0xff
206
+ vmov.i64 d3,#0
207
+ vshr.u32 q1,q1,#7
208
+ vst1.8 {d2-d3},[r2,: 128]!
209
+ vst1.8 {d0-d1},[r2,: 128]!
210
+ vst1.8 d0,[r2,: 64]
211
+ add r2,r3,#144
212
+ vmov.i32 q0,#0
213
+ vst1.8 {d0-d1},[r2,: 128]!
214
+ vst1.8 {d0-d1},[r2,: 128]!
215
+ vst1.8 d0,[r2,: 64]
216
+ add r2,r3,#240
217
+ vmov.i32 q0,#0
218
+ vmov.i64 d2,#0xff
219
+ vmov.i64 d3,#0
220
+ vshr.u32 q1,q1,#7
221
+ vst1.8 {d2-d3},[r2,: 128]!
222
+ vst1.8 {d0-d1},[r2,: 128]!
223
+ vst1.8 d0,[r2,: 64]
224
+ add r2,r3,#48
225
+ add r6,r3,#192
226
+ vld1.8 {d0-d1},[r2,: 128]!
227
+ vld1.8 {d2-d3},[r2,: 128]!
228
+ vld1.8 {d4},[r2,: 64]
229
+ vst1.8 {d0-d1},[r6,: 128]!
230
+ vst1.8 {d2-d3},[r6,: 128]!
231
+ vst1.8 d4,[r6,: 64]
232
+ ._mainloop:
233
+ mov r2,r5,LSR #3
234
+ and r6,r5,#7
235
+ ldrb r2,[r1,r2]
236
+ mov r2,r2,LSR r6
237
+ and r2,r2,#1
238
+ str r5,[sp,#488]
239
+ eor r4,r4,r2
240
+ str r2,[sp,#492]
241
+ neg r2,r4
242
+ add r4,r3,#96
243
+ add r5,r3,#192
244
+ add r6,r3,#144
245
+ vld1.8 {d8-d9},[r4,: 128]!
246
+ add r7,r3,#240
247
+ vld1.8 {d10-d11},[r5,: 128]!
248
+ veor q6,q4,q5
249
+ vld1.8 {d14-d15},[r6,: 128]!
250
+ vdup.i32 q8,r2
251
+ vld1.8 {d18-d19},[r7,: 128]!
252
+ veor q10,q7,q9
253
+ vld1.8 {d22-d23},[r4,: 128]!
254
+ vand q6,q6,q8
255
+ vld1.8 {d24-d25},[r5,: 128]!
256
+ vand q10,q10,q8
257
+ vld1.8 {d26-d27},[r6,: 128]!
258
+ veor q4,q4,q6
259
+ vld1.8 {d28-d29},[r7,: 128]!
260
+ veor q5,q5,q6
261
+ vld1.8 {d0},[r4,: 64]
262
+ veor q6,q7,q10
263
+ vld1.8 {d2},[r5,: 64]
264
+ veor q7,q9,q10
265
+ vld1.8 {d4},[r6,: 64]
266
+ veor q9,q11,q12
267
+ vld1.8 {d6},[r7,: 64]
268
+ veor q10,q0,q1
269
+ sub r2,r4,#32
270
+ vand q9,q9,q8
271
+ sub r4,r5,#32
272
+ vand q10,q10,q8
273
+ sub r5,r6,#32
274
+ veor q11,q11,q9
275
+ sub r6,r7,#32
276
+ veor q0,q0,q10
277
+ veor q9,q12,q9
278
+ veor q1,q1,q10
279
+ veor q10,q13,q14
280
+ veor q12,q2,q3
281
+ vand q10,q10,q8
282
+ vand q8,q12,q8
283
+ veor q12,q13,q10
284
+ veor q2,q2,q8
285
+ veor q10,q14,q10
286
+ veor q3,q3,q8
287
+ vadd.i32 q8,q4,q6
288
+ vsub.i32 q4,q4,q6
289
+ vst1.8 {d16-d17},[r2,: 128]!
290
+ vadd.i32 q6,q11,q12
291
+ vst1.8 {d8-d9},[r5,: 128]!
292
+ vsub.i32 q4,q11,q12
293
+ vst1.8 {d12-d13},[r2,: 128]!
294
+ vadd.i32 q6,q0,q2
295
+ vst1.8 {d8-d9},[r5,: 128]!
296
+ vsub.i32 q0,q0,q2
297
+ vst1.8 d12,[r2,: 64]
298
+ vadd.i32 q2,q5,q7
299
+ vst1.8 d0,[r5,: 64]
300
+ vsub.i32 q0,q5,q7
301
+ vst1.8 {d4-d5},[r4,: 128]!
302
+ vadd.i32 q2,q9,q10
303
+ vst1.8 {d0-d1},[r6,: 128]!
304
+ vsub.i32 q0,q9,q10
305
+ vst1.8 {d4-d5},[r4,: 128]!
306
+ vadd.i32 q2,q1,q3
307
+ vst1.8 {d0-d1},[r6,: 128]!
308
+ vsub.i32 q0,q1,q3
309
+ vst1.8 d4,[r4,: 64]
310
+ vst1.8 d0,[r6,: 64]
311
+ add r2,sp,#544
312
+ add r4,r3,#96
313
+ add r5,r3,#144
314
+ vld1.8 {d0-d1},[r2,: 128]
315
+ vld1.8 {d2-d3},[r4,: 128]!
316
+ vld1.8 {d4-d5},[r5,: 128]!
317
+ vzip.i32 q1,q2
318
+ vld1.8 {d6-d7},[r4,: 128]!
319
+ vld1.8 {d8-d9},[r5,: 128]!
320
+ vshl.i32 q5,q1,#1
321
+ vzip.i32 q3,q4
322
+ vshl.i32 q6,q2,#1
323
+ vld1.8 {d14},[r4,: 64]
324
+ vshl.i32 q8,q3,#1
325
+ vld1.8 {d15},[r5,: 64]
326
+ vshl.i32 q9,q4,#1
327
+ vmul.i32 d21,d7,d1
328
+ vtrn.32 d14,d15
329
+ vmul.i32 q11,q4,q0
330
+ vmul.i32 q0,q7,q0
331
+ vmull.s32 q12,d2,d2
332
+ vmlal.s32 q12,d11,d1
333
+ vmlal.s32 q12,d12,d0
334
+ vmlal.s32 q12,d13,d23
335
+ vmlal.s32 q12,d16,d22
336
+ vmlal.s32 q12,d7,d21
337
+ vmull.s32 q10,d2,d11
338
+ vmlal.s32 q10,d4,d1
339
+ vmlal.s32 q10,d13,d0
340
+ vmlal.s32 q10,d6,d23
341
+ vmlal.s32 q10,d17,d22
342
+ vmull.s32 q13,d10,d4
343
+ vmlal.s32 q13,d11,d3
344
+ vmlal.s32 q13,d13,d1
345
+ vmlal.s32 q13,d16,d0
346
+ vmlal.s32 q13,d17,d23
347
+ vmlal.s32 q13,d8,d22
348
+ vmull.s32 q1,d10,d5
349
+ vmlal.s32 q1,d11,d4
350
+ vmlal.s32 q1,d6,d1
351
+ vmlal.s32 q1,d17,d0
352
+ vmlal.s32 q1,d8,d23
353
+ vmull.s32 q14,d10,d6
354
+ vmlal.s32 q14,d11,d13
355
+ vmlal.s32 q14,d4,d4
356
+ vmlal.s32 q14,d17,d1
357
+ vmlal.s32 q14,d18,d0
358
+ vmlal.s32 q14,d9,d23
359
+ vmull.s32 q11,d10,d7
360
+ vmlal.s32 q11,d11,d6
361
+ vmlal.s32 q11,d12,d5
362
+ vmlal.s32 q11,d8,d1
363
+ vmlal.s32 q11,d19,d0
364
+ vmull.s32 q15,d10,d8
365
+ vmlal.s32 q15,d11,d17
366
+ vmlal.s32 q15,d12,d6
367
+ vmlal.s32 q15,d13,d5
368
+ vmlal.s32 q15,d19,d1
369
+ vmlal.s32 q15,d14,d0
370
+ vmull.s32 q2,d10,d9
371
+ vmlal.s32 q2,d11,d8
372
+ vmlal.s32 q2,d12,d7
373
+ vmlal.s32 q2,d13,d6
374
+ vmlal.s32 q2,d14,d1
375
+ vmull.s32 q0,d15,d1
376
+ vmlal.s32 q0,d10,d14
377
+ vmlal.s32 q0,d11,d19
378
+ vmlal.s32 q0,d12,d8
379
+ vmlal.s32 q0,d13,d17
380
+ vmlal.s32 q0,d6,d6
381
+ add r2,sp,#512
382
+ vld1.8 {d18-d19},[r2,: 128]
383
+ vmull.s32 q3,d16,d7
384
+ vmlal.s32 q3,d10,d15
385
+ vmlal.s32 q3,d11,d14
386
+ vmlal.s32 q3,d12,d9
387
+ vmlal.s32 q3,d13,d8
388
+ add r2,sp,#528
389
+ vld1.8 {d8-d9},[r2,: 128]
390
+ vadd.i64 q5,q12,q9
391
+ vadd.i64 q6,q15,q9
392
+ vshr.s64 q5,q5,#26
393
+ vshr.s64 q6,q6,#26
394
+ vadd.i64 q7,q10,q5
395
+ vshl.i64 q5,q5,#26
396
+ vadd.i64 q8,q7,q4
397
+ vadd.i64 q2,q2,q6
398
+ vshl.i64 q6,q6,#26
399
+ vadd.i64 q10,q2,q4
400
+ vsub.i64 q5,q12,q5
401
+ vshr.s64 q8,q8,#25
402
+ vsub.i64 q6,q15,q6
403
+ vshr.s64 q10,q10,#25
404
+ vadd.i64 q12,q13,q8
405
+ vshl.i64 q8,q8,#25
406
+ vadd.i64 q13,q12,q9
407
+ vadd.i64 q0,q0,q10
408
+ vsub.i64 q7,q7,q8
409
+ vshr.s64 q8,q13,#26
410
+ vshl.i64 q10,q10,#25
411
+ vadd.i64 q13,q0,q9
412
+ vadd.i64 q1,q1,q8
413
+ vshl.i64 q8,q8,#26
414
+ vadd.i64 q15,q1,q4
415
+ vsub.i64 q2,q2,q10
416
+ vshr.s64 q10,q13,#26
417
+ vsub.i64 q8,q12,q8
418
+ vshr.s64 q12,q15,#25
419
+ vadd.i64 q3,q3,q10
420
+ vshl.i64 q10,q10,#26
421
+ vadd.i64 q13,q3,q4
422
+ vadd.i64 q14,q14,q12
423
+ add r2,r3,#288
424
+ vshl.i64 q12,q12,#25
425
+ add r4,r3,#336
426
+ vadd.i64 q15,q14,q9
427
+ add r2,r2,#8
428
+ vsub.i64 q0,q0,q10
429
+ add r4,r4,#8
430
+ vshr.s64 q10,q13,#25
431
+ vsub.i64 q1,q1,q12
432
+ vshr.s64 q12,q15,#26
433
+ vadd.i64 q13,q10,q10
434
+ vadd.i64 q11,q11,q12
435
+ vtrn.32 d16,d2
436
+ vshl.i64 q12,q12,#26
437
+ vtrn.32 d17,d3
438
+ vadd.i64 q1,q11,q4
439
+ vadd.i64 q4,q5,q13
440
+ vst1.8 d16,[r2,: 64]!
441
+ vshl.i64 q5,q10,#4
442
+ vst1.8 d17,[r4,: 64]!
443
+ vsub.i64 q8,q14,q12
444
+ vshr.s64 q1,q1,#25
445
+ vadd.i64 q4,q4,q5
446
+ vadd.i64 q5,q6,q1
447
+ vshl.i64 q1,q1,#25
448
+ vadd.i64 q6,q5,q9
449
+ vadd.i64 q4,q4,q10
450
+ vshl.i64 q10,q10,#25
451
+ vadd.i64 q9,q4,q9
452
+ vsub.i64 q1,q11,q1
453
+ vshr.s64 q6,q6,#26
454
+ vsub.i64 q3,q3,q10
455
+ vtrn.32 d16,d2
456
+ vshr.s64 q9,q9,#26
457
+ vtrn.32 d17,d3
458
+ vadd.i64 q1,q2,q6
459
+ vst1.8 d16,[r2,: 64]
460
+ vshl.i64 q2,q6,#26
461
+ vst1.8 d17,[r4,: 64]
462
+ vadd.i64 q6,q7,q9
463
+ vtrn.32 d0,d6
464
+ vshl.i64 q7,q9,#26
465
+ vtrn.32 d1,d7
466
+ vsub.i64 q2,q5,q2
467
+ add r2,r2,#16
468
+ vsub.i64 q3,q4,q7
469
+ vst1.8 d0,[r2,: 64]
470
+ add r4,r4,#16
471
+ vst1.8 d1,[r4,: 64]
472
+ vtrn.32 d4,d2
473
+ vtrn.32 d5,d3
474
+ sub r2,r2,#8
475
+ sub r4,r4,#8
476
+ vtrn.32 d6,d12
477
+ vtrn.32 d7,d13
478
+ vst1.8 d4,[r2,: 64]
479
+ vst1.8 d5,[r4,: 64]
480
+ sub r2,r2,#24
481
+ sub r4,r4,#24
482
+ vst1.8 d6,[r2,: 64]
483
+ vst1.8 d7,[r4,: 64]
484
+ add r2,r3,#240
485
+ add r4,r3,#96
486
+ vld1.8 {d0-d1},[r4,: 128]!
487
+ vld1.8 {d2-d3},[r4,: 128]!
488
+ vld1.8 {d4},[r4,: 64]
489
+ add r4,r3,#144
490
+ vld1.8 {d6-d7},[r4,: 128]!
491
+ vtrn.32 q0,q3
492
+ vld1.8 {d8-d9},[r4,: 128]!
493
+ vshl.i32 q5,q0,#4
494
+ vtrn.32 q1,q4
495
+ vshl.i32 q6,q3,#4
496
+ vadd.i32 q5,q5,q0
497
+ vadd.i32 q6,q6,q3
498
+ vshl.i32 q7,q1,#4
499
+ vld1.8 {d5},[r4,: 64]
500
+ vshl.i32 q8,q4,#4
501
+ vtrn.32 d4,d5
502
+ vadd.i32 q7,q7,q1
503
+ vadd.i32 q8,q8,q4
504
+ vld1.8 {d18-d19},[r2,: 128]!
505
+ vshl.i32 q10,q2,#4
506
+ vld1.8 {d22-d23},[r2,: 128]!
507
+ vadd.i32 q10,q10,q2
508
+ vld1.8 {d24},[r2,: 64]
509
+ vadd.i32 q5,q5,q0
510
+ add r2,r3,#192
511
+ vld1.8 {d26-d27},[r2,: 128]!
512
+ vadd.i32 q6,q6,q3
513
+ vld1.8 {d28-d29},[r2,: 128]!
514
+ vadd.i32 q8,q8,q4
515
+ vld1.8 {d25},[r2,: 64]
516
+ vadd.i32 q10,q10,q2
517
+ vtrn.32 q9,q13
518
+ vadd.i32 q7,q7,q1
519
+ vadd.i32 q5,q5,q0
520
+ vtrn.32 q11,q14
521
+ vadd.i32 q6,q6,q3
522
+ add r2,sp,#560
523
+ vadd.i32 q10,q10,q2
524
+ vtrn.32 d24,d25
525
+ vst1.8 {d12-d13},[r2,: 128]
526
+ vshl.i32 q6,q13,#1
527
+ add r2,sp,#576
528
+ vst1.8 {d20-d21},[r2,: 128]
529
+ vshl.i32 q10,q14,#1
530
+ add r2,sp,#592
531
+ vst1.8 {d12-d13},[r2,: 128]
532
+ vshl.i32 q15,q12,#1
533
+ vadd.i32 q8,q8,q4
534
+ vext.32 d10,d31,d30,#0
535
+ vadd.i32 q7,q7,q1
536
+ add r2,sp,#608
537
+ vst1.8 {d16-d17},[r2,: 128]
538
+ vmull.s32 q8,d18,d5
539
+ vmlal.s32 q8,d26,d4
540
+ vmlal.s32 q8,d19,d9
541
+ vmlal.s32 q8,d27,d3
542
+ vmlal.s32 q8,d22,d8
543
+ vmlal.s32 q8,d28,d2
544
+ vmlal.s32 q8,d23,d7
545
+ vmlal.s32 q8,d29,d1
546
+ vmlal.s32 q8,d24,d6
547
+ vmlal.s32 q8,d25,d0
548
+ add r2,sp,#624
549
+ vst1.8 {d14-d15},[r2,: 128]
550
+ vmull.s32 q2,d18,d4
551
+ vmlal.s32 q2,d12,d9
552
+ vmlal.s32 q2,d13,d8
553
+ vmlal.s32 q2,d19,d3
554
+ vmlal.s32 q2,d22,d2
555
+ vmlal.s32 q2,d23,d1
556
+ vmlal.s32 q2,d24,d0
557
+ add r2,sp,#640
558
+ vst1.8 {d20-d21},[r2,: 128]
559
+ vmull.s32 q7,d18,d9
560
+ vmlal.s32 q7,d26,d3
561
+ vmlal.s32 q7,d19,d8
562
+ vmlal.s32 q7,d27,d2
563
+ vmlal.s32 q7,d22,d7
564
+ vmlal.s32 q7,d28,d1
565
+ vmlal.s32 q7,d23,d6
566
+ vmlal.s32 q7,d29,d0
567
+ add r2,sp,#656
568
+ vst1.8 {d10-d11},[r2,: 128]
569
+ vmull.s32 q5,d18,d3
570
+ vmlal.s32 q5,d19,d2
571
+ vmlal.s32 q5,d22,d1
572
+ vmlal.s32 q5,d23,d0
573
+ vmlal.s32 q5,d12,d8
574
+ add r2,sp,#672
575
+ vst1.8 {d16-d17},[r2,: 128]
576
+ vmull.s32 q4,d18,d8
577
+ vmlal.s32 q4,d26,d2
578
+ vmlal.s32 q4,d19,d7
579
+ vmlal.s32 q4,d27,d1
580
+ vmlal.s32 q4,d22,d6
581
+ vmlal.s32 q4,d28,d0
582
+ vmull.s32 q8,d18,d7
583
+ vmlal.s32 q8,d26,d1
584
+ vmlal.s32 q8,d19,d6
585
+ vmlal.s32 q8,d27,d0
586
+ add r2,sp,#576
587
+ vld1.8 {d20-d21},[r2,: 128]
588
+ vmlal.s32 q7,d24,d21
589
+ vmlal.s32 q7,d25,d20
590
+ vmlal.s32 q4,d23,d21
591
+ vmlal.s32 q4,d29,d20
592
+ vmlal.s32 q8,d22,d21
593
+ vmlal.s32 q8,d28,d20
594
+ vmlal.s32 q5,d24,d20
595
+ add r2,sp,#576
596
+ vst1.8 {d14-d15},[r2,: 128]
597
+ vmull.s32 q7,d18,d6
598
+ vmlal.s32 q7,d26,d0
599
+ add r2,sp,#656
600
+ vld1.8 {d30-d31},[r2,: 128]
601
+ vmlal.s32 q2,d30,d21
602
+ vmlal.s32 q7,d19,d21
603
+ vmlal.s32 q7,d27,d20
604
+ add r2,sp,#624
605
+ vld1.8 {d26-d27},[r2,: 128]
606
+ vmlal.s32 q4,d25,d27
607
+ vmlal.s32 q8,d29,d27
608
+ vmlal.s32 q8,d25,d26
609
+ vmlal.s32 q7,d28,d27
610
+ vmlal.s32 q7,d29,d26
611
+ add r2,sp,#608
612
+ vld1.8 {d28-d29},[r2,: 128]
613
+ vmlal.s32 q4,d24,d29
614
+ vmlal.s32 q8,d23,d29
615
+ vmlal.s32 q8,d24,d28
616
+ vmlal.s32 q7,d22,d29
617
+ vmlal.s32 q7,d23,d28
618
+ add r2,sp,#608
619
+ vst1.8 {d8-d9},[r2,: 128]
620
+ add r2,sp,#560
621
+ vld1.8 {d8-d9},[r2,: 128]
622
+ vmlal.s32 q7,d24,d9
623
+ vmlal.s32 q7,d25,d31
624
+ vmull.s32 q1,d18,d2
625
+ vmlal.s32 q1,d19,d1
626
+ vmlal.s32 q1,d22,d0
627
+ vmlal.s32 q1,d24,d27
628
+ vmlal.s32 q1,d23,d20
629
+ vmlal.s32 q1,d12,d7
630
+ vmlal.s32 q1,d13,d6
631
+ vmull.s32 q6,d18,d1
632
+ vmlal.s32 q6,d19,d0
633
+ vmlal.s32 q6,d23,d27
634
+ vmlal.s32 q6,d22,d20
635
+ vmlal.s32 q6,d24,d26
636
+ vmull.s32 q0,d18,d0
637
+ vmlal.s32 q0,d22,d27
638
+ vmlal.s32 q0,d23,d26
639
+ vmlal.s32 q0,d24,d31
640
+ vmlal.s32 q0,d19,d20
641
+ add r2,sp,#640
642
+ vld1.8 {d18-d19},[r2,: 128]
643
+ vmlal.s32 q2,d18,d7
644
+ vmlal.s32 q2,d19,d6
645
+ vmlal.s32 q5,d18,d6
646
+ vmlal.s32 q5,d19,d21
647
+ vmlal.s32 q1,d18,d21
648
+ vmlal.s32 q1,d19,d29
649
+ vmlal.s32 q0,d18,d28
650
+ vmlal.s32 q0,d19,d9
651
+ vmlal.s32 q6,d18,d29
652
+ vmlal.s32 q6,d19,d28
653
+ add r2,sp,#592
654
+ vld1.8 {d18-d19},[r2,: 128]
655
+ add r2,sp,#512
656
+ vld1.8 {d22-d23},[r2,: 128]
657
+ vmlal.s32 q5,d19,d7
658
+ vmlal.s32 q0,d18,d21
659
+ vmlal.s32 q0,d19,d29
660
+ vmlal.s32 q6,d18,d6
661
+ add r2,sp,#528
662
+ vld1.8 {d6-d7},[r2,: 128]
663
+ vmlal.s32 q6,d19,d21
664
+ add r2,sp,#576
665
+ vld1.8 {d18-d19},[r2,: 128]
666
+ vmlal.s32 q0,d30,d8
667
+ add r2,sp,#672
668
+ vld1.8 {d20-d21},[r2,: 128]
669
+ vmlal.s32 q5,d30,d29
670
+ add r2,sp,#608
671
+ vld1.8 {d24-d25},[r2,: 128]
672
+ vmlal.s32 q1,d30,d28
673
+ vadd.i64 q13,q0,q11
674
+ vadd.i64 q14,q5,q11
675
+ vmlal.s32 q6,d30,d9
676
+ vshr.s64 q4,q13,#26
677
+ vshr.s64 q13,q14,#26
678
+ vadd.i64 q7,q7,q4
679
+ vshl.i64 q4,q4,#26
680
+ vadd.i64 q14,q7,q3
681
+ vadd.i64 q9,q9,q13
682
+ vshl.i64 q13,q13,#26
683
+ vadd.i64 q15,q9,q3
684
+ vsub.i64 q0,q0,q4
685
+ vshr.s64 q4,q14,#25
686
+ vsub.i64 q5,q5,q13
687
+ vshr.s64 q13,q15,#25
688
+ vadd.i64 q6,q6,q4
689
+ vshl.i64 q4,q4,#25
690
+ vadd.i64 q14,q6,q11
691
+ vadd.i64 q2,q2,q13
692
+ vsub.i64 q4,q7,q4
693
+ vshr.s64 q7,q14,#26
694
+ vshl.i64 q13,q13,#25
695
+ vadd.i64 q14,q2,q11
696
+ vadd.i64 q8,q8,q7
697
+ vshl.i64 q7,q7,#26
698
+ vadd.i64 q15,q8,q3
699
+ vsub.i64 q9,q9,q13
700
+ vshr.s64 q13,q14,#26
701
+ vsub.i64 q6,q6,q7
702
+ vshr.s64 q7,q15,#25
703
+ vadd.i64 q10,q10,q13
704
+ vshl.i64 q13,q13,#26
705
+ vadd.i64 q14,q10,q3
706
+ vadd.i64 q1,q1,q7
707
+ add r2,r3,#144
708
+ vshl.i64 q7,q7,#25
709
+ add r4,r3,#96
710
+ vadd.i64 q15,q1,q11
711
+ add r2,r2,#8
712
+ vsub.i64 q2,q2,q13
713
+ add r4,r4,#8
714
+ vshr.s64 q13,q14,#25
715
+ vsub.i64 q7,q8,q7
716
+ vshr.s64 q8,q15,#26
717
+ vadd.i64 q14,q13,q13
718
+ vadd.i64 q12,q12,q8
719
+ vtrn.32 d12,d14
720
+ vshl.i64 q8,q8,#26
721
+ vtrn.32 d13,d15
722
+ vadd.i64 q3,q12,q3
723
+ vadd.i64 q0,q0,q14
724
+ vst1.8 d12,[r2,: 64]!
725
+ vshl.i64 q7,q13,#4
726
+ vst1.8 d13,[r4,: 64]!
727
+ vsub.i64 q1,q1,q8
728
+ vshr.s64 q3,q3,#25
729
+ vadd.i64 q0,q0,q7
730
+ vadd.i64 q5,q5,q3
731
+ vshl.i64 q3,q3,#25
732
+ vadd.i64 q6,q5,q11
733
+ vadd.i64 q0,q0,q13
734
+ vshl.i64 q7,q13,#25
735
+ vadd.i64 q8,q0,q11
736
+ vsub.i64 q3,q12,q3
737
+ vshr.s64 q6,q6,#26
738
+ vsub.i64 q7,q10,q7
739
+ vtrn.32 d2,d6
740
+ vshr.s64 q8,q8,#26
741
+ vtrn.32 d3,d7
742
+ vadd.i64 q3,q9,q6
743
+ vst1.8 d2,[r2,: 64]
744
+ vshl.i64 q6,q6,#26
745
+ vst1.8 d3,[r4,: 64]
746
+ vadd.i64 q1,q4,q8
747
+ vtrn.32 d4,d14
748
+ vshl.i64 q4,q8,#26
749
+ vtrn.32 d5,d15
750
+ vsub.i64 q5,q5,q6
751
+ add r2,r2,#16
752
+ vsub.i64 q0,q0,q4
753
+ vst1.8 d4,[r2,: 64]
754
+ add r4,r4,#16
755
+ vst1.8 d5,[r4,: 64]
756
+ vtrn.32 d10,d6
757
+ vtrn.32 d11,d7
758
+ sub r2,r2,#8
759
+ sub r4,r4,#8
760
+ vtrn.32 d0,d2
761
+ vtrn.32 d1,d3
762
+ vst1.8 d10,[r2,: 64]
763
+ vst1.8 d11,[r4,: 64]
764
+ sub r2,r2,#24
765
+ sub r4,r4,#24
766
+ vst1.8 d0,[r2,: 64]
767
+ vst1.8 d1,[r4,: 64]
768
+ add r2,r3,#288
769
+ add r4,r3,#336
770
+ vld1.8 {d0-d1},[r2,: 128]!
771
+ vld1.8 {d2-d3},[r4,: 128]!
772
+ vsub.i32 q0,q0,q1
773
+ vld1.8 {d2-d3},[r2,: 128]!
774
+ vld1.8 {d4-d5},[r4,: 128]!
775
+ vsub.i32 q1,q1,q2
776
+ add r5,r3,#240
777
+ vld1.8 {d4},[r2,: 64]
778
+ vld1.8 {d6},[r4,: 64]
779
+ vsub.i32 q2,q2,q3
780
+ vst1.8 {d0-d1},[r5,: 128]!
781
+ vst1.8 {d2-d3},[r5,: 128]!
782
+ vst1.8 d4,[r5,: 64]
783
+ add r2,r3,#144
784
+ add r4,r3,#96
785
+ add r5,r3,#144
786
+ add r6,r3,#192
787
+ vld1.8 {d0-d1},[r2,: 128]!
788
+ vld1.8 {d2-d3},[r4,: 128]!
789
+ vsub.i32 q2,q0,q1
790
+ vadd.i32 q0,q0,q1
791
+ vld1.8 {d2-d3},[r2,: 128]!
792
+ vld1.8 {d6-d7},[r4,: 128]!
793
+ vsub.i32 q4,q1,q3
794
+ vadd.i32 q1,q1,q3
795
+ vld1.8 {d6},[r2,: 64]
796
+ vld1.8 {d10},[r4,: 64]
797
+ vsub.i32 q6,q3,q5
798
+ vadd.i32 q3,q3,q5
799
+ vst1.8 {d4-d5},[r5,: 128]!
800
+ vst1.8 {d0-d1},[r6,: 128]!
801
+ vst1.8 {d8-d9},[r5,: 128]!
802
+ vst1.8 {d2-d3},[r6,: 128]!
803
+ vst1.8 d12,[r5,: 64]
804
+ vst1.8 d6,[r6,: 64]
805
+ add r2,r3,#0
806
+ add r4,r3,#240
807
+ vld1.8 {d0-d1},[r4,: 128]!
808
+ vld1.8 {d2-d3},[r4,: 128]!
809
+ vld1.8 {d4},[r4,: 64]
810
+ add r4,r3,#336
811
+ vld1.8 {d6-d7},[r4,: 128]!
812
+ vtrn.32 q0,q3
813
+ vld1.8 {d8-d9},[r4,: 128]!
814
+ vshl.i32 q5,q0,#4
815
+ vtrn.32 q1,q4
816
+ vshl.i32 q6,q3,#4
817
+ vadd.i32 q5,q5,q0
818
+ vadd.i32 q6,q6,q3
819
+ vshl.i32 q7,q1,#4
820
+ vld1.8 {d5},[r4,: 64]
821
+ vshl.i32 q8,q4,#4
822
+ vtrn.32 d4,d5
823
+ vadd.i32 q7,q7,q1
824
+ vadd.i32 q8,q8,q4
825
+ vld1.8 {d18-d19},[r2,: 128]!
826
+ vshl.i32 q10,q2,#4
827
+ vld1.8 {d22-d23},[r2,: 128]!
828
+ vadd.i32 q10,q10,q2
829
+ vld1.8 {d24},[r2,: 64]
830
+ vadd.i32 q5,q5,q0
831
+ add r2,r3,#288
832
+ vld1.8 {d26-d27},[r2,: 128]!
833
+ vadd.i32 q6,q6,q3
834
+ vld1.8 {d28-d29},[r2,: 128]!
835
+ vadd.i32 q8,q8,q4
836
+ vld1.8 {d25},[r2,: 64]
837
+ vadd.i32 q10,q10,q2
838
+ vtrn.32 q9,q13
839
+ vadd.i32 q7,q7,q1
840
+ vadd.i32 q5,q5,q0
841
+ vtrn.32 q11,q14
842
+ vadd.i32 q6,q6,q3
843
+ add r2,sp,#560
844
+ vadd.i32 q10,q10,q2
845
+ vtrn.32 d24,d25
846
+ vst1.8 {d12-d13},[r2,: 128]
847
+ vshl.i32 q6,q13,#1
848
+ add r2,sp,#576
849
+ vst1.8 {d20-d21},[r2,: 128]
850
+ vshl.i32 q10,q14,#1
851
+ add r2,sp,#592
852
+ vst1.8 {d12-d13},[r2,: 128]
853
+ vshl.i32 q15,q12,#1
854
+ vadd.i32 q8,q8,q4
855
+ vext.32 d10,d31,d30,#0
856
+ vadd.i32 q7,q7,q1
857
+ add r2,sp,#608
858
+ vst1.8 {d16-d17},[r2,: 128]
859
+ vmull.s32 q8,d18,d5
860
+ vmlal.s32 q8,d26,d4
861
+ vmlal.s32 q8,d19,d9
862
+ vmlal.s32 q8,d27,d3
863
+ vmlal.s32 q8,d22,d8
864
+ vmlal.s32 q8,d28,d2
865
+ vmlal.s32 q8,d23,d7
866
+ vmlal.s32 q8,d29,d1
867
+ vmlal.s32 q8,d24,d6
868
+ vmlal.s32 q8,d25,d0
869
+ add r2,sp,#624
870
+ vst1.8 {d14-d15},[r2,: 128]
871
+ vmull.s32 q2,d18,d4
872
+ vmlal.s32 q2,d12,d9
873
+ vmlal.s32 q2,d13,d8
874
+ vmlal.s32 q2,d19,d3
875
+ vmlal.s32 q2,d22,d2
876
+ vmlal.s32 q2,d23,d1
877
+ vmlal.s32 q2,d24,d0
878
+ add r2,sp,#640
879
+ vst1.8 {d20-d21},[r2,: 128]
880
+ vmull.s32 q7,d18,d9
881
+ vmlal.s32 q7,d26,d3
882
+ vmlal.s32 q7,d19,d8
883
+ vmlal.s32 q7,d27,d2
884
+ vmlal.s32 q7,d22,d7
885
+ vmlal.s32 q7,d28,d1
886
+ vmlal.s32 q7,d23,d6
887
+ vmlal.s32 q7,d29,d0
888
+ add r2,sp,#656
889
+ vst1.8 {d10-d11},[r2,: 128]
890
+ vmull.s32 q5,d18,d3
891
+ vmlal.s32 q5,d19,d2
892
+ vmlal.s32 q5,d22,d1
893
+ vmlal.s32 q5,d23,d0
894
+ vmlal.s32 q5,d12,d8
895
+ add r2,sp,#672
896
+ vst1.8 {d16-d17},[r2,: 128]
897
+ vmull.s32 q4,d18,d8
898
+ vmlal.s32 q4,d26,d2
899
+ vmlal.s32 q4,d19,d7
900
+ vmlal.s32 q4,d27,d1
901
+ vmlal.s32 q4,d22,d6
902
+ vmlal.s32 q4,d28,d0
903
+ vmull.s32 q8,d18,d7
904
+ vmlal.s32 q8,d26,d1
905
+ vmlal.s32 q8,d19,d6
906
+ vmlal.s32 q8,d27,d0
907
+ add r2,sp,#576
908
+ vld1.8 {d20-d21},[r2,: 128]
909
+ vmlal.s32 q7,d24,d21
910
+ vmlal.s32 q7,d25,d20
911
+ vmlal.s32 q4,d23,d21
912
+ vmlal.s32 q4,d29,d20
913
+ vmlal.s32 q8,d22,d21
914
+ vmlal.s32 q8,d28,d20
915
+ vmlal.s32 q5,d24,d20
916
+ add r2,sp,#576
917
+ vst1.8 {d14-d15},[r2,: 128]
918
+ vmull.s32 q7,d18,d6
919
+ vmlal.s32 q7,d26,d0
920
+ add r2,sp,#656
921
+ vld1.8 {d30-d31},[r2,: 128]
922
+ vmlal.s32 q2,d30,d21
923
+ vmlal.s32 q7,d19,d21
924
+ vmlal.s32 q7,d27,d20
925
+ add r2,sp,#624
926
+ vld1.8 {d26-d27},[r2,: 128]
927
+ vmlal.s32 q4,d25,d27
928
+ vmlal.s32 q8,d29,d27
929
+ vmlal.s32 q8,d25,d26
930
+ vmlal.s32 q7,d28,d27
931
+ vmlal.s32 q7,d29,d26
932
+ add r2,sp,#608
933
+ vld1.8 {d28-d29},[r2,: 128]
934
+ vmlal.s32 q4,d24,d29
935
+ vmlal.s32 q8,d23,d29
936
+ vmlal.s32 q8,d24,d28
937
+ vmlal.s32 q7,d22,d29
938
+ vmlal.s32 q7,d23,d28
939
+ add r2,sp,#608
940
+ vst1.8 {d8-d9},[r2,: 128]
941
+ add r2,sp,#560
942
+ vld1.8 {d8-d9},[r2,: 128]
943
+ vmlal.s32 q7,d24,d9
944
+ vmlal.s32 q7,d25,d31
945
+ vmull.s32 q1,d18,d2
946
+ vmlal.s32 q1,d19,d1
947
+ vmlal.s32 q1,d22,d0
948
+ vmlal.s32 q1,d24,d27
949
+ vmlal.s32 q1,d23,d20
950
+ vmlal.s32 q1,d12,d7
951
+ vmlal.s32 q1,d13,d6
952
+ vmull.s32 q6,d18,d1
953
+ vmlal.s32 q6,d19,d0
954
+ vmlal.s32 q6,d23,d27
955
+ vmlal.s32 q6,d22,d20
956
+ vmlal.s32 q6,d24,d26
957
+ vmull.s32 q0,d18,d0
958
+ vmlal.s32 q0,d22,d27
959
+ vmlal.s32 q0,d23,d26
960
+ vmlal.s32 q0,d24,d31
961
+ vmlal.s32 q0,d19,d20
962
+ add r2,sp,#640
963
+ vld1.8 {d18-d19},[r2,: 128]
964
+ vmlal.s32 q2,d18,d7
965
+ vmlal.s32 q2,d19,d6
966
+ vmlal.s32 q5,d18,d6
967
+ vmlal.s32 q5,d19,d21
968
+ vmlal.s32 q1,d18,d21
969
+ vmlal.s32 q1,d19,d29
970
+ vmlal.s32 q0,d18,d28
971
+ vmlal.s32 q0,d19,d9
972
+ vmlal.s32 q6,d18,d29
973
+ vmlal.s32 q6,d19,d28
974
+ add r2,sp,#592
975
+ vld1.8 {d18-d19},[r2,: 128]
976
+ add r2,sp,#512
977
+ vld1.8 {d22-d23},[r2,: 128]
978
+ vmlal.s32 q5,d19,d7
979
+ vmlal.s32 q0,d18,d21
980
+ vmlal.s32 q0,d19,d29
981
+ vmlal.s32 q6,d18,d6
982
+ add r2,sp,#528
983
+ vld1.8 {d6-d7},[r2,: 128]
984
+ vmlal.s32 q6,d19,d21
985
+ add r2,sp,#576
986
+ vld1.8 {d18-d19},[r2,: 128]
987
+ vmlal.s32 q0,d30,d8
988
+ add r2,sp,#672
989
+ vld1.8 {d20-d21},[r2,: 128]
990
+ vmlal.s32 q5,d30,d29
991
+ add r2,sp,#608
992
+ vld1.8 {d24-d25},[r2,: 128]
993
+ vmlal.s32 q1,d30,d28
994
+ vadd.i64 q13,q0,q11
995
+ vadd.i64 q14,q5,q11
996
+ vmlal.s32 q6,d30,d9
997
+ vshr.s64 q4,q13,#26
998
+ vshr.s64 q13,q14,#26
999
+ vadd.i64 q7,q7,q4
1000
+ vshl.i64 q4,q4,#26
1001
+ vadd.i64 q14,q7,q3
1002
+ vadd.i64 q9,q9,q13
1003
+ vshl.i64 q13,q13,#26
1004
+ vadd.i64 q15,q9,q3
1005
+ vsub.i64 q0,q0,q4
1006
+ vshr.s64 q4,q14,#25
1007
+ vsub.i64 q5,q5,q13
1008
+ vshr.s64 q13,q15,#25
1009
+ vadd.i64 q6,q6,q4
1010
+ vshl.i64 q4,q4,#25
1011
+ vadd.i64 q14,q6,q11
1012
+ vadd.i64 q2,q2,q13
1013
+ vsub.i64 q4,q7,q4
1014
+ vshr.s64 q7,q14,#26
1015
+ vshl.i64 q13,q13,#25
1016
+ vadd.i64 q14,q2,q11
1017
+ vadd.i64 q8,q8,q7
1018
+ vshl.i64 q7,q7,#26
1019
+ vadd.i64 q15,q8,q3
1020
+ vsub.i64 q9,q9,q13
1021
+ vshr.s64 q13,q14,#26
1022
+ vsub.i64 q6,q6,q7
1023
+ vshr.s64 q7,q15,#25
1024
+ vadd.i64 q10,q10,q13
1025
+ vshl.i64 q13,q13,#26
1026
+ vadd.i64 q14,q10,q3
1027
+ vadd.i64 q1,q1,q7
1028
+ add r2,r3,#288
1029
+ vshl.i64 q7,q7,#25
1030
+ add r4,r3,#96
1031
+ vadd.i64 q15,q1,q11
1032
+ add r2,r2,#8
1033
+ vsub.i64 q2,q2,q13
1034
+ add r4,r4,#8
1035
+ vshr.s64 q13,q14,#25
1036
+ vsub.i64 q7,q8,q7
1037
+ vshr.s64 q8,q15,#26
1038
+ vadd.i64 q14,q13,q13
1039
+ vadd.i64 q12,q12,q8
1040
+ vtrn.32 d12,d14
1041
+ vshl.i64 q8,q8,#26
1042
+ vtrn.32 d13,d15
1043
+ vadd.i64 q3,q12,q3
1044
+ vadd.i64 q0,q0,q14
1045
+ vst1.8 d12,[r2,: 64]!
1046
+ vshl.i64 q7,q13,#4
1047
+ vst1.8 d13,[r4,: 64]!
1048
+ vsub.i64 q1,q1,q8
1049
+ vshr.s64 q3,q3,#25
1050
+ vadd.i64 q0,q0,q7
1051
+ vadd.i64 q5,q5,q3
1052
+ vshl.i64 q3,q3,#25
1053
+ vadd.i64 q6,q5,q11
1054
+ vadd.i64 q0,q0,q13
1055
+ vshl.i64 q7,q13,#25
1056
+ vadd.i64 q8,q0,q11
1057
+ vsub.i64 q3,q12,q3
1058
+ vshr.s64 q6,q6,#26
1059
+ vsub.i64 q7,q10,q7
1060
+ vtrn.32 d2,d6
1061
+ vshr.s64 q8,q8,#26
1062
+ vtrn.32 d3,d7
1063
+ vadd.i64 q3,q9,q6
1064
+ vst1.8 d2,[r2,: 64]
1065
+ vshl.i64 q6,q6,#26
1066
+ vst1.8 d3,[r4,: 64]
1067
+ vadd.i64 q1,q4,q8
1068
+ vtrn.32 d4,d14
1069
+ vshl.i64 q4,q8,#26
1070
+ vtrn.32 d5,d15
1071
+ vsub.i64 q5,q5,q6
1072
+ add r2,r2,#16
1073
+ vsub.i64 q0,q0,q4
1074
+ vst1.8 d4,[r2,: 64]
1075
+ add r4,r4,#16
1076
+ vst1.8 d5,[r4,: 64]
1077
+ vtrn.32 d10,d6
1078
+ vtrn.32 d11,d7
1079
+ sub r2,r2,#8
1080
+ sub r4,r4,#8
1081
+ vtrn.32 d0,d2
1082
+ vtrn.32 d1,d3
1083
+ vst1.8 d10,[r2,: 64]
1084
+ vst1.8 d11,[r4,: 64]
1085
+ sub r2,r2,#24
1086
+ sub r4,r4,#24
1087
+ vst1.8 d0,[r2,: 64]
1088
+ vst1.8 d1,[r4,: 64]
1089
+ add r2,sp,#544
1090
+ add r4,r3,#144
1091
+ add r5,r3,#192
1092
+ vld1.8 {d0-d1},[r2,: 128]
1093
+ vld1.8 {d2-d3},[r4,: 128]!
1094
+ vld1.8 {d4-d5},[r5,: 128]!
1095
+ vzip.i32 q1,q2
1096
+ vld1.8 {d6-d7},[r4,: 128]!
1097
+ vld1.8 {d8-d9},[r5,: 128]!
1098
+ vshl.i32 q5,q1,#1
1099
+ vzip.i32 q3,q4
1100
+ vshl.i32 q6,q2,#1
1101
+ vld1.8 {d14},[r4,: 64]
1102
+ vshl.i32 q8,q3,#1
1103
+ vld1.8 {d15},[r5,: 64]
1104
+ vshl.i32 q9,q4,#1
1105
+ vmul.i32 d21,d7,d1
1106
+ vtrn.32 d14,d15
1107
+ vmul.i32 q11,q4,q0
1108
+ vmul.i32 q0,q7,q0
1109
+ vmull.s32 q12,d2,d2
1110
+ vmlal.s32 q12,d11,d1
1111
+ vmlal.s32 q12,d12,d0
1112
+ vmlal.s32 q12,d13,d23
1113
+ vmlal.s32 q12,d16,d22
1114
+ vmlal.s32 q12,d7,d21
1115
+ vmull.s32 q10,d2,d11
1116
+ vmlal.s32 q10,d4,d1
1117
+ vmlal.s32 q10,d13,d0
1118
+ vmlal.s32 q10,d6,d23
1119
+ vmlal.s32 q10,d17,d22
1120
+ vmull.s32 q13,d10,d4
1121
+ vmlal.s32 q13,d11,d3
1122
+ vmlal.s32 q13,d13,d1
1123
+ vmlal.s32 q13,d16,d0
1124
+ vmlal.s32 q13,d17,d23
1125
+ vmlal.s32 q13,d8,d22
1126
+ vmull.s32 q1,d10,d5
1127
+ vmlal.s32 q1,d11,d4
1128
+ vmlal.s32 q1,d6,d1
1129
+ vmlal.s32 q1,d17,d0
1130
+ vmlal.s32 q1,d8,d23
1131
+ vmull.s32 q14,d10,d6
1132
+ vmlal.s32 q14,d11,d13
1133
+ vmlal.s32 q14,d4,d4
1134
+ vmlal.s32 q14,d17,d1
1135
+ vmlal.s32 q14,d18,d0
1136
+ vmlal.s32 q14,d9,d23
1137
+ vmull.s32 q11,d10,d7
1138
+ vmlal.s32 q11,d11,d6
1139
+ vmlal.s32 q11,d12,d5
1140
+ vmlal.s32 q11,d8,d1
1141
+ vmlal.s32 q11,d19,d0
1142
+ vmull.s32 q15,d10,d8
1143
+ vmlal.s32 q15,d11,d17
1144
+ vmlal.s32 q15,d12,d6
1145
+ vmlal.s32 q15,d13,d5
1146
+ vmlal.s32 q15,d19,d1
1147
+ vmlal.s32 q15,d14,d0
1148
+ vmull.s32 q2,d10,d9
1149
+ vmlal.s32 q2,d11,d8
1150
+ vmlal.s32 q2,d12,d7
1151
+ vmlal.s32 q2,d13,d6
1152
+ vmlal.s32 q2,d14,d1
1153
+ vmull.s32 q0,d15,d1
1154
+ vmlal.s32 q0,d10,d14
1155
+ vmlal.s32 q0,d11,d19
1156
+ vmlal.s32 q0,d12,d8
1157
+ vmlal.s32 q0,d13,d17
1158
+ vmlal.s32 q0,d6,d6
1159
+ add r2,sp,#512
1160
+ vld1.8 {d18-d19},[r2,: 128]
1161
+ vmull.s32 q3,d16,d7
1162
+ vmlal.s32 q3,d10,d15
1163
+ vmlal.s32 q3,d11,d14
1164
+ vmlal.s32 q3,d12,d9
1165
+ vmlal.s32 q3,d13,d8
1166
+ add r2,sp,#528
1167
+ vld1.8 {d8-d9},[r2,: 128]
1168
+ vadd.i64 q5,q12,q9
1169
+ vadd.i64 q6,q15,q9
1170
+ vshr.s64 q5,q5,#26
1171
+ vshr.s64 q6,q6,#26
1172
+ vadd.i64 q7,q10,q5
1173
+ vshl.i64 q5,q5,#26
1174
+ vadd.i64 q8,q7,q4
1175
+ vadd.i64 q2,q2,q6
1176
+ vshl.i64 q6,q6,#26
1177
+ vadd.i64 q10,q2,q4
1178
+ vsub.i64 q5,q12,q5
1179
+ vshr.s64 q8,q8,#25
1180
+ vsub.i64 q6,q15,q6
1181
+ vshr.s64 q10,q10,#25
1182
+ vadd.i64 q12,q13,q8
1183
+ vshl.i64 q8,q8,#25
1184
+ vadd.i64 q13,q12,q9
1185
+ vadd.i64 q0,q0,q10
1186
+ vsub.i64 q7,q7,q8
1187
+ vshr.s64 q8,q13,#26
1188
+ vshl.i64 q10,q10,#25
1189
+ vadd.i64 q13,q0,q9
1190
+ vadd.i64 q1,q1,q8
1191
+ vshl.i64 q8,q8,#26
1192
+ vadd.i64 q15,q1,q4
1193
+ vsub.i64 q2,q2,q10
1194
+ vshr.s64 q10,q13,#26
1195
+ vsub.i64 q8,q12,q8
1196
+ vshr.s64 q12,q15,#25
1197
+ vadd.i64 q3,q3,q10
1198
+ vshl.i64 q10,q10,#26
1199
+ vadd.i64 q13,q3,q4
1200
+ vadd.i64 q14,q14,q12
1201
+ add r2,r3,#144
1202
+ vshl.i64 q12,q12,#25
1203
+ add r4,r3,#192
1204
+ vadd.i64 q15,q14,q9
1205
+ add r2,r2,#8
1206
+ vsub.i64 q0,q0,q10
1207
+ add r4,r4,#8
1208
+ vshr.s64 q10,q13,#25
1209
+ vsub.i64 q1,q1,q12
1210
+ vshr.s64 q12,q15,#26
1211
+ vadd.i64 q13,q10,q10
1212
+ vadd.i64 q11,q11,q12
1213
+ vtrn.32 d16,d2
1214
+ vshl.i64 q12,q12,#26
1215
+ vtrn.32 d17,d3
1216
+ vadd.i64 q1,q11,q4
1217
+ vadd.i64 q4,q5,q13
1218
+ vst1.8 d16,[r2,: 64]!
1219
+ vshl.i64 q5,q10,#4
1220
+ vst1.8 d17,[r4,: 64]!
1221
+ vsub.i64 q8,q14,q12
1222
+ vshr.s64 q1,q1,#25
1223
+ vadd.i64 q4,q4,q5
1224
+ vadd.i64 q5,q6,q1
1225
+ vshl.i64 q1,q1,#25
1226
+ vadd.i64 q6,q5,q9
1227
+ vadd.i64 q4,q4,q10
1228
+ vshl.i64 q10,q10,#25
1229
+ vadd.i64 q9,q4,q9
1230
+ vsub.i64 q1,q11,q1
1231
+ vshr.s64 q6,q6,#26
1232
+ vsub.i64 q3,q3,q10
1233
+ vtrn.32 d16,d2
1234
+ vshr.s64 q9,q9,#26
1235
+ vtrn.32 d17,d3
1236
+ vadd.i64 q1,q2,q6
1237
+ vst1.8 d16,[r2,: 64]
1238
+ vshl.i64 q2,q6,#26
1239
+ vst1.8 d17,[r4,: 64]
1240
+ vadd.i64 q6,q7,q9
1241
+ vtrn.32 d0,d6
1242
+ vshl.i64 q7,q9,#26
1243
+ vtrn.32 d1,d7
1244
+ vsub.i64 q2,q5,q2
1245
+ add r2,r2,#16
1246
+ vsub.i64 q3,q4,q7
1247
+ vst1.8 d0,[r2,: 64]
1248
+ add r4,r4,#16
1249
+ vst1.8 d1,[r4,: 64]
1250
+ vtrn.32 d4,d2
1251
+ vtrn.32 d5,d3
1252
+ sub r2,r2,#8
1253
+ sub r4,r4,#8
1254
+ vtrn.32 d6,d12
1255
+ vtrn.32 d7,d13
1256
+ vst1.8 d4,[r2,: 64]
1257
+ vst1.8 d5,[r4,: 64]
1258
+ sub r2,r2,#24
1259
+ sub r4,r4,#24
1260
+ vst1.8 d6,[r2,: 64]
1261
+ vst1.8 d7,[r4,: 64]
1262
+ add r2,r3,#336
1263
+ add r4,r3,#288
1264
+ vld1.8 {d0-d1},[r2,: 128]!
1265
+ vld1.8 {d2-d3},[r4,: 128]!
1266
+ vadd.i32 q0,q0,q1
1267
+ vld1.8 {d2-d3},[r2,: 128]!
1268
+ vld1.8 {d4-d5},[r4,: 128]!
1269
+ vadd.i32 q1,q1,q2
1270
+ add r5,r3,#288
1271
+ vld1.8 {d4},[r2,: 64]
1272
+ vld1.8 {d6},[r4,: 64]
1273
+ vadd.i32 q2,q2,q3
1274
+ vst1.8 {d0-d1},[r5,: 128]!
1275
+ vst1.8 {d2-d3},[r5,: 128]!
1276
+ vst1.8 d4,[r5,: 64]
1277
+ add r2,r3,#48
1278
+ add r4,r3,#144
1279
+ vld1.8 {d0-d1},[r4,: 128]!
1280
+ vld1.8 {d2-d3},[r4,: 128]!
1281
+ vld1.8 {d4},[r4,: 64]
1282
+ add r4,r3,#288
1283
+ vld1.8 {d6-d7},[r4,: 128]!
1284
+ vtrn.32 q0,q3
1285
+ vld1.8 {d8-d9},[r4,: 128]!
1286
+ vshl.i32 q5,q0,#4
1287
+ vtrn.32 q1,q4
1288
+ vshl.i32 q6,q3,#4
1289
+ vadd.i32 q5,q5,q0
1290
+ vadd.i32 q6,q6,q3
1291
+ vshl.i32 q7,q1,#4
1292
+ vld1.8 {d5},[r4,: 64]
1293
+ vshl.i32 q8,q4,#4
1294
+ vtrn.32 d4,d5
1295
+ vadd.i32 q7,q7,q1
1296
+ vadd.i32 q8,q8,q4
1297
+ vld1.8 {d18-d19},[r2,: 128]!
1298
+ vshl.i32 q10,q2,#4
1299
+ vld1.8 {d22-d23},[r2,: 128]!
1300
+ vadd.i32 q10,q10,q2
1301
+ vld1.8 {d24},[r2,: 64]
1302
+ vadd.i32 q5,q5,q0
1303
+ add r2,r3,#240
1304
+ vld1.8 {d26-d27},[r2,: 128]!
1305
+ vadd.i32 q6,q6,q3
1306
+ vld1.8 {d28-d29},[r2,: 128]!
1307
+ vadd.i32 q8,q8,q4
1308
+ vld1.8 {d25},[r2,: 64]
1309
+ vadd.i32 q10,q10,q2
1310
+ vtrn.32 q9,q13
1311
+ vadd.i32 q7,q7,q1
1312
+ vadd.i32 q5,q5,q0
1313
+ vtrn.32 q11,q14
1314
+ vadd.i32 q6,q6,q3
1315
+ add r2,sp,#560
1316
+ vadd.i32 q10,q10,q2
1317
+ vtrn.32 d24,d25
1318
+ vst1.8 {d12-d13},[r2,: 128]
1319
+ vshl.i32 q6,q13,#1
1320
+ add r2,sp,#576
1321
+ vst1.8 {d20-d21},[r2,: 128]
1322
+ vshl.i32 q10,q14,#1
1323
+ add r2,sp,#592
1324
+ vst1.8 {d12-d13},[r2,: 128]
1325
+ vshl.i32 q15,q12,#1
1326
+ vadd.i32 q8,q8,q4
1327
+ vext.32 d10,d31,d30,#0
1328
+ vadd.i32 q7,q7,q1
1329
+ add r2,sp,#608
1330
+ vst1.8 {d16-d17},[r2,: 128]
1331
+ vmull.s32 q8,d18,d5
1332
+ vmlal.s32 q8,d26,d4
1333
+ vmlal.s32 q8,d19,d9
1334
+ vmlal.s32 q8,d27,d3
1335
+ vmlal.s32 q8,d22,d8
1336
+ vmlal.s32 q8,d28,d2
1337
+ vmlal.s32 q8,d23,d7
1338
+ vmlal.s32 q8,d29,d1
1339
+ vmlal.s32 q8,d24,d6
1340
+ vmlal.s32 q8,d25,d0
1341
+ add r2,sp,#624
1342
+ vst1.8 {d14-d15},[r2,: 128]
1343
+ vmull.s32 q2,d18,d4
1344
+ vmlal.s32 q2,d12,d9
1345
+ vmlal.s32 q2,d13,d8
1346
+ vmlal.s32 q2,d19,d3
1347
+ vmlal.s32 q2,d22,d2
1348
+ vmlal.s32 q2,d23,d1
1349
+ vmlal.s32 q2,d24,d0
1350
+ add r2,sp,#640
1351
+ vst1.8 {d20-d21},[r2,: 128]
1352
+ vmull.s32 q7,d18,d9
1353
+ vmlal.s32 q7,d26,d3
1354
+ vmlal.s32 q7,d19,d8
1355
+ vmlal.s32 q7,d27,d2
1356
+ vmlal.s32 q7,d22,d7
1357
+ vmlal.s32 q7,d28,d1
1358
+ vmlal.s32 q7,d23,d6
1359
+ vmlal.s32 q7,d29,d0
1360
+ add r2,sp,#656
1361
+ vst1.8 {d10-d11},[r2,: 128]
1362
+ vmull.s32 q5,d18,d3
1363
+ vmlal.s32 q5,d19,d2
1364
+ vmlal.s32 q5,d22,d1
1365
+ vmlal.s32 q5,d23,d0
1366
+ vmlal.s32 q5,d12,d8
1367
+ add r2,sp,#672
1368
+ vst1.8 {d16-d17},[r2,: 128]
1369
+ vmull.s32 q4,d18,d8
1370
+ vmlal.s32 q4,d26,d2
1371
+ vmlal.s32 q4,d19,d7
1372
+ vmlal.s32 q4,d27,d1
1373
+ vmlal.s32 q4,d22,d6
1374
+ vmlal.s32 q4,d28,d0
1375
+ vmull.s32 q8,d18,d7
1376
+ vmlal.s32 q8,d26,d1
1377
+ vmlal.s32 q8,d19,d6
1378
+ vmlal.s32 q8,d27,d0
1379
+ add r2,sp,#576
1380
+ vld1.8 {d20-d21},[r2,: 128]
1381
+ vmlal.s32 q7,d24,d21
1382
+ vmlal.s32 q7,d25,d20
1383
+ vmlal.s32 q4,d23,d21
1384
+ vmlal.s32 q4,d29,d20
1385
+ vmlal.s32 q8,d22,d21
1386
+ vmlal.s32 q8,d28,d20
1387
+ vmlal.s32 q5,d24,d20
1388
+ add r2,sp,#576
1389
+ vst1.8 {d14-d15},[r2,: 128]
1390
+ vmull.s32 q7,d18,d6
1391
+ vmlal.s32 q7,d26,d0
1392
+ add r2,sp,#656
1393
+ vld1.8 {d30-d31},[r2,: 128]
1394
+ vmlal.s32 q2,d30,d21
1395
+ vmlal.s32 q7,d19,d21
1396
+ vmlal.s32 q7,d27,d20
1397
+ add r2,sp,#624
1398
+ vld1.8 {d26-d27},[r2,: 128]
1399
+ vmlal.s32 q4,d25,d27
1400
+ vmlal.s32 q8,d29,d27
1401
+ vmlal.s32 q8,d25,d26
1402
+ vmlal.s32 q7,d28,d27
1403
+ vmlal.s32 q7,d29,d26
1404
+ add r2,sp,#608
1405
+ vld1.8 {d28-d29},[r2,: 128]
1406
+ vmlal.s32 q4,d24,d29
1407
+ vmlal.s32 q8,d23,d29
1408
+ vmlal.s32 q8,d24,d28
1409
+ vmlal.s32 q7,d22,d29
1410
+ vmlal.s32 q7,d23,d28
1411
+ add r2,sp,#608
1412
+ vst1.8 {d8-d9},[r2,: 128]
1413
+ add r2,sp,#560
1414
+ vld1.8 {d8-d9},[r2,: 128]
1415
+ vmlal.s32 q7,d24,d9
1416
+ vmlal.s32 q7,d25,d31
1417
+ vmull.s32 q1,d18,d2
1418
+ vmlal.s32 q1,d19,d1
1419
+ vmlal.s32 q1,d22,d0
1420
+ vmlal.s32 q1,d24,d27
1421
+ vmlal.s32 q1,d23,d20
1422
+ vmlal.s32 q1,d12,d7
1423
+ vmlal.s32 q1,d13,d6
1424
+ vmull.s32 q6,d18,d1
1425
+ vmlal.s32 q6,d19,d0
1426
+ vmlal.s32 q6,d23,d27
1427
+ vmlal.s32 q6,d22,d20
1428
+ vmlal.s32 q6,d24,d26
1429
+ vmull.s32 q0,d18,d0
1430
+ vmlal.s32 q0,d22,d27
1431
+ vmlal.s32 q0,d23,d26
1432
+ vmlal.s32 q0,d24,d31
1433
+ vmlal.s32 q0,d19,d20
1434
+ add r2,sp,#640
1435
+ vld1.8 {d18-d19},[r2,: 128]
1436
+ vmlal.s32 q2,d18,d7
1437
+ vmlal.s32 q2,d19,d6
1438
+ vmlal.s32 q5,d18,d6
1439
+ vmlal.s32 q5,d19,d21
1440
+ vmlal.s32 q1,d18,d21
1441
+ vmlal.s32 q1,d19,d29
1442
+ vmlal.s32 q0,d18,d28
1443
+ vmlal.s32 q0,d19,d9
1444
+ vmlal.s32 q6,d18,d29
1445
+ vmlal.s32 q6,d19,d28
1446
+ add r2,sp,#592
1447
+ vld1.8 {d18-d19},[r2,: 128]
1448
+ add r2,sp,#512
1449
+ vld1.8 {d22-d23},[r2,: 128]
1450
+ vmlal.s32 q5,d19,d7
1451
+ vmlal.s32 q0,d18,d21
1452
+ vmlal.s32 q0,d19,d29
1453
+ vmlal.s32 q6,d18,d6
1454
+ add r2,sp,#528
1455
+ vld1.8 {d6-d7},[r2,: 128]
1456
+ vmlal.s32 q6,d19,d21
1457
+ add r2,sp,#576
1458
+ vld1.8 {d18-d19},[r2,: 128]
1459
+ vmlal.s32 q0,d30,d8
1460
+ add r2,sp,#672
1461
+ vld1.8 {d20-d21},[r2,: 128]
1462
+ vmlal.s32 q5,d30,d29
1463
+ add r2,sp,#608
1464
+ vld1.8 {d24-d25},[r2,: 128]
1465
+ vmlal.s32 q1,d30,d28
1466
+ vadd.i64 q13,q0,q11
1467
+ vadd.i64 q14,q5,q11
1468
+ vmlal.s32 q6,d30,d9
1469
+ vshr.s64 q4,q13,#26
1470
+ vshr.s64 q13,q14,#26
1471
+ vadd.i64 q7,q7,q4
1472
+ vshl.i64 q4,q4,#26
1473
+ vadd.i64 q14,q7,q3
1474
+ vadd.i64 q9,q9,q13
1475
+ vshl.i64 q13,q13,#26
1476
+ vadd.i64 q15,q9,q3
1477
+ vsub.i64 q0,q0,q4
1478
+ vshr.s64 q4,q14,#25
1479
+ vsub.i64 q5,q5,q13
1480
+ vshr.s64 q13,q15,#25
1481
+ vadd.i64 q6,q6,q4
1482
+ vshl.i64 q4,q4,#25
1483
+ vadd.i64 q14,q6,q11
1484
+ vadd.i64 q2,q2,q13
1485
+ vsub.i64 q4,q7,q4
1486
+ vshr.s64 q7,q14,#26
1487
+ vshl.i64 q13,q13,#25
1488
+ vadd.i64 q14,q2,q11
1489
+ vadd.i64 q8,q8,q7
1490
+ vshl.i64 q7,q7,#26
1491
+ vadd.i64 q15,q8,q3
1492
+ vsub.i64 q9,q9,q13
1493
+ vshr.s64 q13,q14,#26
1494
+ vsub.i64 q6,q6,q7
1495
+ vshr.s64 q7,q15,#25
1496
+ vadd.i64 q10,q10,q13
1497
+ vshl.i64 q13,q13,#26
1498
+ vadd.i64 q14,q10,q3
1499
+ vadd.i64 q1,q1,q7
1500
+ add r2,r3,#240
1501
+ vshl.i64 q7,q7,#25
1502
+ add r4,r3,#144
1503
+ vadd.i64 q15,q1,q11
1504
+ add r2,r2,#8
1505
+ vsub.i64 q2,q2,q13
1506
+ add r4,r4,#8
1507
+ vshr.s64 q13,q14,#25
1508
+ vsub.i64 q7,q8,q7
1509
+ vshr.s64 q8,q15,#26
1510
+ vadd.i64 q14,q13,q13
1511
+ vadd.i64 q12,q12,q8
1512
+ vtrn.32 d12,d14
1513
+ vshl.i64 q8,q8,#26
1514
+ vtrn.32 d13,d15
1515
+ vadd.i64 q3,q12,q3
1516
+ vadd.i64 q0,q0,q14
1517
+ vst1.8 d12,[r2,: 64]!
1518
+ vshl.i64 q7,q13,#4
1519
+ vst1.8 d13,[r4,: 64]!
1520
+ vsub.i64 q1,q1,q8
1521
+ vshr.s64 q3,q3,#25
1522
+ vadd.i64 q0,q0,q7
1523
+ vadd.i64 q5,q5,q3
1524
+ vshl.i64 q3,q3,#25
1525
+ vadd.i64 q6,q5,q11
1526
+ vadd.i64 q0,q0,q13
1527
+ vshl.i64 q7,q13,#25
1528
+ vadd.i64 q8,q0,q11
1529
+ vsub.i64 q3,q12,q3
1530
+ vshr.s64 q6,q6,#26
1531
+ vsub.i64 q7,q10,q7
1532
+ vtrn.32 d2,d6
1533
+ vshr.s64 q8,q8,#26
1534
+ vtrn.32 d3,d7
1535
+ vadd.i64 q3,q9,q6
1536
+ vst1.8 d2,[r2,: 64]
1537
+ vshl.i64 q6,q6,#26
1538
+ vst1.8 d3,[r4,: 64]
1539
+ vadd.i64 q1,q4,q8
1540
+ vtrn.32 d4,d14
1541
+ vshl.i64 q4,q8,#26
1542
+ vtrn.32 d5,d15
1543
+ vsub.i64 q5,q5,q6
1544
+ add r2,r2,#16
1545
+ vsub.i64 q0,q0,q4
1546
+ vst1.8 d4,[r2,: 64]
1547
+ add r4,r4,#16
1548
+ vst1.8 d5,[r4,: 64]
1549
+ vtrn.32 d10,d6
1550
+ vtrn.32 d11,d7
1551
+ sub r2,r2,#8
1552
+ sub r4,r4,#8
1553
+ vtrn.32 d0,d2
1554
+ vtrn.32 d1,d3
1555
+ vst1.8 d10,[r2,: 64]
1556
+ vst1.8 d11,[r4,: 64]
1557
+ sub r2,r2,#24
1558
+ sub r4,r4,#24
1559
+ vst1.8 d0,[r2,: 64]
1560
+ vst1.8 d1,[r4,: 64]
1561
+ ldr r2,[sp,#488]
1562
+ ldr r4,[sp,#492]
1563
+ subs r5,r2,#1
1564
+ bge ._mainloop
1565
+ add r1,r3,#144
1566
+ add r2,r3,#336
1567
+ vld1.8 {d0-d1},[r1,: 128]!
1568
+ vld1.8 {d2-d3},[r1,: 128]!
1569
+ vld1.8 {d4},[r1,: 64]
1570
+ vst1.8 {d0-d1},[r2,: 128]!
1571
+ vst1.8 {d2-d3},[r2,: 128]!
1572
+ vst1.8 d4,[r2,: 64]
1573
+ ldr r1,=0
1574
+ ._invertloop:
1575
+ add r2,r3,#144
1576
+ ldr r4,=0
1577
+ ldr r5,=2
1578
+ cmp r1,#1
1579
+ ldreq r5,=1
1580
+ addeq r2,r3,#336
1581
+ addeq r4,r3,#48
1582
+ cmp r1,#2
1583
+ ldreq r5,=1
1584
+ addeq r2,r3,#48
1585
+ cmp r1,#3
1586
+ ldreq r5,=5
1587
+ addeq r4,r3,#336
1588
+ cmp r1,#4
1589
+ ldreq r5,=10
1590
+ cmp r1,#5
1591
+ ldreq r5,=20
1592
+ cmp r1,#6
1593
+ ldreq r5,=10
1594
+ addeq r2,r3,#336
1595
+ addeq r4,r3,#336
1596
+ cmp r1,#7
1597
+ ldreq r5,=50
1598
+ cmp r1,#8
1599
+ ldreq r5,=100
1600
+ cmp r1,#9
1601
+ ldreq r5,=50
1602
+ addeq r2,r3,#336
1603
+ cmp r1,#10
1604
+ ldreq r5,=5
1605
+ addeq r2,r3,#48
1606
+ cmp r1,#11
1607
+ ldreq r5,=0
1608
+ addeq r2,r3,#96
1609
+ add r6,r3,#144
1610
+ add r7,r3,#288
1611
+ vld1.8 {d0-d1},[r6,: 128]!
1612
+ vld1.8 {d2-d3},[r6,: 128]!
1613
+ vld1.8 {d4},[r6,: 64]
1614
+ vst1.8 {d0-d1},[r7,: 128]!
1615
+ vst1.8 {d2-d3},[r7,: 128]!
1616
+ vst1.8 d4,[r7,: 64]
1617
+ cmp r5,#0
1618
+ beq ._skipsquaringloop
1619
+ ._squaringloop:
1620
+ add r6,r3,#288
1621
+ add r7,r3,#288
1622
+ add r8,r3,#288
1623
+ vmov.i32 q0,#19
1624
+ vmov.i32 q1,#0
1625
+ vmov.i32 q2,#1
1626
+ vzip.i32 q1,q2
1627
+ vld1.8 {d4-d5},[r7,: 128]!
1628
+ vld1.8 {d6-d7},[r7,: 128]!
1629
+ vld1.8 {d9},[r7,: 64]
1630
+ vld1.8 {d10-d11},[r6,: 128]!
1631
+ add r7,sp,#416
1632
+ vld1.8 {d12-d13},[r6,: 128]!
1633
+ vmul.i32 q7,q2,q0
1634
+ vld1.8 {d8},[r6,: 64]
1635
+ vext.32 d17,d11,d10,#1
1636
+ vmul.i32 q9,q3,q0
1637
+ vext.32 d16,d10,d8,#1
1638
+ vshl.u32 q10,q5,q1
1639
+ vext.32 d22,d14,d4,#1
1640
+ vext.32 d24,d18,d6,#1
1641
+ vshl.u32 q13,q6,q1
1642
+ vshl.u32 d28,d8,d2
1643
+ vrev64.i32 d22,d22
1644
+ vmul.i32 d1,d9,d1
1645
+ vrev64.i32 d24,d24
1646
+ vext.32 d29,d8,d13,#1
1647
+ vext.32 d0,d1,d9,#1
1648
+ vrev64.i32 d0,d0
1649
+ vext.32 d2,d9,d1,#1
1650
+ vext.32 d23,d15,d5,#1
1651
+ vmull.s32 q4,d20,d4
1652
+ vrev64.i32 d23,d23
1653
+ vmlal.s32 q4,d21,d1
1654
+ vrev64.i32 d2,d2
1655
+ vmlal.s32 q4,d26,d19
1656
+ vext.32 d3,d5,d15,#1
1657
+ vmlal.s32 q4,d27,d18
1658
+ vrev64.i32 d3,d3
1659
+ vmlal.s32 q4,d28,d15
1660
+ vext.32 d14,d12,d11,#1
1661
+ vmull.s32 q5,d16,d23
1662
+ vext.32 d15,d13,d12,#1
1663
+ vmlal.s32 q5,d17,d4
1664
+ vst1.8 d8,[r7,: 64]!
1665
+ vmlal.s32 q5,d14,d1
1666
+ vext.32 d12,d9,d8,#0
1667
+ vmlal.s32 q5,d15,d19
1668
+ vmov.i64 d13,#0
1669
+ vmlal.s32 q5,d29,d18
1670
+ vext.32 d25,d19,d7,#1
1671
+ vmlal.s32 q6,d20,d5
1672
+ vrev64.i32 d25,d25
1673
+ vmlal.s32 q6,d21,d4
1674
+ vst1.8 d11,[r7,: 64]!
1675
+ vmlal.s32 q6,d26,d1
1676
+ vext.32 d9,d10,d10,#0
1677
+ vmlal.s32 q6,d27,d19
1678
+ vmov.i64 d8,#0
1679
+ vmlal.s32 q6,d28,d18
1680
+ vmlal.s32 q4,d16,d24
1681
+ vmlal.s32 q4,d17,d5
1682
+ vmlal.s32 q4,d14,d4
1683
+ vst1.8 d12,[r7,: 64]!
1684
+ vmlal.s32 q4,d15,d1
1685
+ vext.32 d10,d13,d12,#0
1686
+ vmlal.s32 q4,d29,d19
1687
+ vmov.i64 d11,#0
1688
+ vmlal.s32 q5,d20,d6
1689
+ vmlal.s32 q5,d21,d5
1690
+ vmlal.s32 q5,d26,d4
1691
+ vext.32 d13,d8,d8,#0
1692
+ vmlal.s32 q5,d27,d1
1693
+ vmov.i64 d12,#0
1694
+ vmlal.s32 q5,d28,d19
1695
+ vst1.8 d9,[r7,: 64]!
1696
+ vmlal.s32 q6,d16,d25
1697
+ vmlal.s32 q6,d17,d6
1698
+ vst1.8 d10,[r7,: 64]
1699
+ vmlal.s32 q6,d14,d5
1700
+ vext.32 d8,d11,d10,#0
1701
+ vmlal.s32 q6,d15,d4
1702
+ vmov.i64 d9,#0
1703
+ vmlal.s32 q6,d29,d1
1704
+ vmlal.s32 q4,d20,d7
1705
+ vmlal.s32 q4,d21,d6
1706
+ vmlal.s32 q4,d26,d5
1707
+ vext.32 d11,d12,d12,#0
1708
+ vmlal.s32 q4,d27,d4
1709
+ vmov.i64 d10,#0
1710
+ vmlal.s32 q4,d28,d1
1711
+ vmlal.s32 q5,d16,d0
1712
+ sub r6,r7,#32
1713
+ vmlal.s32 q5,d17,d7
1714
+ vmlal.s32 q5,d14,d6
1715
+ vext.32 d30,d9,d8,#0
1716
+ vmlal.s32 q5,d15,d5
1717
+ vld1.8 {d31},[r6,: 64]!
1718
+ vmlal.s32 q5,d29,d4
1719
+ vmlal.s32 q15,d20,d0
1720
+ vext.32 d0,d6,d18,#1
1721
+ vmlal.s32 q15,d21,d25
1722
+ vrev64.i32 d0,d0
1723
+ vmlal.s32 q15,d26,d24
1724
+ vext.32 d1,d7,d19,#1
1725
+ vext.32 d7,d10,d10,#0
1726
+ vmlal.s32 q15,d27,d23
1727
+ vrev64.i32 d1,d1
1728
+ vld1.8 {d6},[r6,: 64]
1729
+ vmlal.s32 q15,d28,d22
1730
+ vmlal.s32 q3,d16,d4
1731
+ add r6,r6,#24
1732
+ vmlal.s32 q3,d17,d2
1733
+ vext.32 d4,d31,d30,#0
1734
+ vmov d17,d11
1735
+ vmlal.s32 q3,d14,d1
1736
+ vext.32 d11,d13,d13,#0
1737
+ vext.32 d13,d30,d30,#0
1738
+ vmlal.s32 q3,d15,d0
1739
+ vext.32 d1,d8,d8,#0
1740
+ vmlal.s32 q3,d29,d3
1741
+ vld1.8 {d5},[r6,: 64]
1742
+ sub r6,r6,#16
1743
+ vext.32 d10,d6,d6,#0
1744
+ vmov.i32 q1,#0xffffffff
1745
+ vshl.i64 q4,q1,#25
1746
+ add r7,sp,#512
1747
+ vld1.8 {d14-d15},[r7,: 128]
1748
+ vadd.i64 q9,q2,q7
1749
+ vshl.i64 q1,q1,#26
1750
+ vshr.s64 q10,q9,#26
1751
+ vld1.8 {d0},[r6,: 64]!
1752
+ vadd.i64 q5,q5,q10
1753
+ vand q9,q9,q1
1754
+ vld1.8 {d16},[r6,: 64]!
1755
+ add r6,sp,#528
1756
+ vld1.8 {d20-d21},[r6,: 128]
1757
+ vadd.i64 q11,q5,q10
1758
+ vsub.i64 q2,q2,q9
1759
+ vshr.s64 q9,q11,#25
1760
+ vext.32 d12,d5,d4,#0
1761
+ vand q11,q11,q4
1762
+ vadd.i64 q0,q0,q9
1763
+ vmov d19,d7
1764
+ vadd.i64 q3,q0,q7
1765
+ vsub.i64 q5,q5,q11
1766
+ vshr.s64 q11,q3,#26
1767
+ vext.32 d18,d11,d10,#0
1768
+ vand q3,q3,q1
1769
+ vadd.i64 q8,q8,q11
1770
+ vadd.i64 q11,q8,q10
1771
+ vsub.i64 q0,q0,q3
1772
+ vshr.s64 q3,q11,#25
1773
+ vand q11,q11,q4
1774
+ vadd.i64 q3,q6,q3
1775
+ vadd.i64 q6,q3,q7
1776
+ vsub.i64 q8,q8,q11
1777
+ vshr.s64 q11,q6,#26
1778
+ vand q6,q6,q1
1779
+ vadd.i64 q9,q9,q11
1780
+ vadd.i64 d25,d19,d21
1781
+ vsub.i64 q3,q3,q6
1782
+ vshr.s64 d23,d25,#25
1783
+ vand q4,q12,q4
1784
+ vadd.i64 d21,d23,d23
1785
+ vshl.i64 d25,d23,#4
1786
+ vadd.i64 d21,d21,d23
1787
+ vadd.i64 d25,d25,d21
1788
+ vadd.i64 d4,d4,d25
1789
+ vzip.i32 q0,q8
1790
+ vadd.i64 d12,d4,d14
1791
+ add r6,r8,#8
1792
+ vst1.8 d0,[r6,: 64]
1793
+ vsub.i64 d19,d19,d9
1794
+ add r6,r6,#16
1795
+ vst1.8 d16,[r6,: 64]
1796
+ vshr.s64 d22,d12,#26
1797
+ vand q0,q6,q1
1798
+ vadd.i64 d10,d10,d22
1799
+ vzip.i32 q3,q9
1800
+ vsub.i64 d4,d4,d0
1801
+ sub r6,r6,#8
1802
+ vst1.8 d6,[r6,: 64]
1803
+ add r6,r6,#16
1804
+ vst1.8 d18,[r6,: 64]
1805
+ vzip.i32 q2,q5
1806
+ sub r6,r6,#32
1807
+ vst1.8 d4,[r6,: 64]
1808
+ subs r5,r5,#1
1809
+ bhi ._squaringloop
1810
+ ._skipsquaringloop:
1811
+ mov r2,r2
1812
+ add r5,r3,#288
1813
+ add r6,r3,#144
1814
+ vmov.i32 q0,#19
1815
+ vmov.i32 q1,#0
1816
+ vmov.i32 q2,#1
1817
+ vzip.i32 q1,q2
1818
+ vld1.8 {d4-d5},[r5,: 128]!
1819
+ vld1.8 {d6-d7},[r5,: 128]!
1820
+ vld1.8 {d9},[r5,: 64]
1821
+ vld1.8 {d10-d11},[r2,: 128]!
1822
+ add r5,sp,#416
1823
+ vld1.8 {d12-d13},[r2,: 128]!
1824
+ vmul.i32 q7,q2,q0
1825
+ vld1.8 {d8},[r2,: 64]
1826
+ vext.32 d17,d11,d10,#1
1827
+ vmul.i32 q9,q3,q0
1828
+ vext.32 d16,d10,d8,#1
1829
+ vshl.u32 q10,q5,q1
1830
+ vext.32 d22,d14,d4,#1
1831
+ vext.32 d24,d18,d6,#1
1832
+ vshl.u32 q13,q6,q1
1833
+ vshl.u32 d28,d8,d2
1834
+ vrev64.i32 d22,d22
1835
+ vmul.i32 d1,d9,d1
1836
+ vrev64.i32 d24,d24
1837
+ vext.32 d29,d8,d13,#1
1838
+ vext.32 d0,d1,d9,#1
1839
+ vrev64.i32 d0,d0
1840
+ vext.32 d2,d9,d1,#1
1841
+ vext.32 d23,d15,d5,#1
1842
+ vmull.s32 q4,d20,d4
1843
+ vrev64.i32 d23,d23
1844
+ vmlal.s32 q4,d21,d1
1845
+ vrev64.i32 d2,d2
1846
+ vmlal.s32 q4,d26,d19
1847
+ vext.32 d3,d5,d15,#1
1848
+ vmlal.s32 q4,d27,d18
1849
+ vrev64.i32 d3,d3
1850
+ vmlal.s32 q4,d28,d15
1851
+ vext.32 d14,d12,d11,#1
1852
+ vmull.s32 q5,d16,d23
1853
+ vext.32 d15,d13,d12,#1
1854
+ vmlal.s32 q5,d17,d4
1855
+ vst1.8 d8,[r5,: 64]!
1856
+ vmlal.s32 q5,d14,d1
1857
+ vext.32 d12,d9,d8,#0
1858
+ vmlal.s32 q5,d15,d19
1859
+ vmov.i64 d13,#0
1860
+ vmlal.s32 q5,d29,d18
1861
+ vext.32 d25,d19,d7,#1
1862
+ vmlal.s32 q6,d20,d5
1863
+ vrev64.i32 d25,d25
1864
+ vmlal.s32 q6,d21,d4
1865
+ vst1.8 d11,[r5,: 64]!
1866
+ vmlal.s32 q6,d26,d1
1867
+ vext.32 d9,d10,d10,#0
1868
+ vmlal.s32 q6,d27,d19
1869
+ vmov.i64 d8,#0
1870
+ vmlal.s32 q6,d28,d18
1871
+ vmlal.s32 q4,d16,d24
1872
+ vmlal.s32 q4,d17,d5
1873
+ vmlal.s32 q4,d14,d4
1874
+ vst1.8 d12,[r5,: 64]!
1875
+ vmlal.s32 q4,d15,d1
1876
+ vext.32 d10,d13,d12,#0
1877
+ vmlal.s32 q4,d29,d19
1878
+ vmov.i64 d11,#0
1879
+ vmlal.s32 q5,d20,d6
1880
+ vmlal.s32 q5,d21,d5
1881
+ vmlal.s32 q5,d26,d4
1882
+ vext.32 d13,d8,d8,#0
1883
+ vmlal.s32 q5,d27,d1
1884
+ vmov.i64 d12,#0
1885
+ vmlal.s32 q5,d28,d19
1886
+ vst1.8 d9,[r5,: 64]!
1887
+ vmlal.s32 q6,d16,d25
1888
+ vmlal.s32 q6,d17,d6
1889
+ vst1.8 d10,[r5,: 64]
1890
+ vmlal.s32 q6,d14,d5
1891
+ vext.32 d8,d11,d10,#0
1892
+ vmlal.s32 q6,d15,d4
1893
+ vmov.i64 d9,#0
1894
+ vmlal.s32 q6,d29,d1
1895
+ vmlal.s32 q4,d20,d7
1896
+ vmlal.s32 q4,d21,d6
1897
+ vmlal.s32 q4,d26,d5
1898
+ vext.32 d11,d12,d12,#0
1899
+ vmlal.s32 q4,d27,d4
1900
+ vmov.i64 d10,#0
1901
+ vmlal.s32 q4,d28,d1
1902
+ vmlal.s32 q5,d16,d0
1903
+ sub r2,r5,#32
1904
+ vmlal.s32 q5,d17,d7
1905
+ vmlal.s32 q5,d14,d6
1906
+ vext.32 d30,d9,d8,#0
1907
+ vmlal.s32 q5,d15,d5
1908
+ vld1.8 {d31},[r2,: 64]!
1909
+ vmlal.s32 q5,d29,d4
1910
+ vmlal.s32 q15,d20,d0
1911
+ vext.32 d0,d6,d18,#1
1912
+ vmlal.s32 q15,d21,d25
1913
+ vrev64.i32 d0,d0
1914
+ vmlal.s32 q15,d26,d24
1915
+ vext.32 d1,d7,d19,#1
1916
+ vext.32 d7,d10,d10,#0
1917
+ vmlal.s32 q15,d27,d23
1918
+ vrev64.i32 d1,d1
1919
+ vld1.8 {d6},[r2,: 64]
1920
+ vmlal.s32 q15,d28,d22
1921
+ vmlal.s32 q3,d16,d4
1922
+ add r2,r2,#24
1923
+ vmlal.s32 q3,d17,d2
1924
+ vext.32 d4,d31,d30,#0
1925
+ vmov d17,d11
1926
+ vmlal.s32 q3,d14,d1
1927
+ vext.32 d11,d13,d13,#0
1928
+ vext.32 d13,d30,d30,#0
1929
+ vmlal.s32 q3,d15,d0
1930
+ vext.32 d1,d8,d8,#0
1931
+ vmlal.s32 q3,d29,d3
1932
+ vld1.8 {d5},[r2,: 64]
1933
+ sub r2,r2,#16
1934
+ vext.32 d10,d6,d6,#0
1935
+ vmov.i32 q1,#0xffffffff
1936
+ vshl.i64 q4,q1,#25
1937
+ add r5,sp,#512
1938
+ vld1.8 {d14-d15},[r5,: 128]
1939
+ vadd.i64 q9,q2,q7
1940
+ vshl.i64 q1,q1,#26
1941
+ vshr.s64 q10,q9,#26
1942
+ vld1.8 {d0},[r2,: 64]!
1943
+ vadd.i64 q5,q5,q10
1944
+ vand q9,q9,q1
1945
+ vld1.8 {d16},[r2,: 64]!
1946
+ add r2,sp,#528
1947
+ vld1.8 {d20-d21},[r2,: 128]
1948
+ vadd.i64 q11,q5,q10
1949
+ vsub.i64 q2,q2,q9
1950
+ vshr.s64 q9,q11,#25
1951
+ vext.32 d12,d5,d4,#0
1952
+ vand q11,q11,q4
1953
+ vadd.i64 q0,q0,q9
1954
+ vmov d19,d7
1955
+ vadd.i64 q3,q0,q7
1956
+ vsub.i64 q5,q5,q11
1957
+ vshr.s64 q11,q3,#26
1958
+ vext.32 d18,d11,d10,#0
1959
+ vand q3,q3,q1
1960
+ vadd.i64 q8,q8,q11
1961
+ vadd.i64 q11,q8,q10
1962
+ vsub.i64 q0,q0,q3
1963
+ vshr.s64 q3,q11,#25
1964
+ vand q11,q11,q4
1965
+ vadd.i64 q3,q6,q3
1966
+ vadd.i64 q6,q3,q7
1967
+ vsub.i64 q8,q8,q11
1968
+ vshr.s64 q11,q6,#26
1969
+ vand q6,q6,q1
1970
+ vadd.i64 q9,q9,q11
1971
+ vadd.i64 d25,d19,d21
1972
+ vsub.i64 q3,q3,q6
1973
+ vshr.s64 d23,d25,#25
1974
+ vand q4,q12,q4
1975
+ vadd.i64 d21,d23,d23
1976
+ vshl.i64 d25,d23,#4
1977
+ vadd.i64 d21,d21,d23
1978
+ vadd.i64 d25,d25,d21
1979
+ vadd.i64 d4,d4,d25
1980
+ vzip.i32 q0,q8
1981
+ vadd.i64 d12,d4,d14
1982
+ add r2,r6,#8
1983
+ vst1.8 d0,[r2,: 64]
1984
+ vsub.i64 d19,d19,d9
1985
+ add r2,r2,#16
1986
+ vst1.8 d16,[r2,: 64]
1987
+ vshr.s64 d22,d12,#26
1988
+ vand q0,q6,q1
1989
+ vadd.i64 d10,d10,d22
1990
+ vzip.i32 q3,q9
1991
+ vsub.i64 d4,d4,d0
1992
+ sub r2,r2,#8
1993
+ vst1.8 d6,[r2,: 64]
1994
+ add r2,r2,#16
1995
+ vst1.8 d18,[r2,: 64]
1996
+ vzip.i32 q2,q5
1997
+ sub r2,r2,#32
1998
+ vst1.8 d4,[r2,: 64]
1999
+ cmp r4,#0
2000
+ beq ._skippostcopy
2001
+ add r2,r3,#144
2002
+ mov r4,r4
2003
+ vld1.8 {d0-d1},[r2,: 128]!
2004
+ vld1.8 {d2-d3},[r2,: 128]!
2005
+ vld1.8 {d4},[r2,: 64]
2006
+ vst1.8 {d0-d1},[r4,: 128]!
2007
+ vst1.8 {d2-d3},[r4,: 128]!
2008
+ vst1.8 d4,[r4,: 64]
2009
+ ._skippostcopy:
2010
+ cmp r1,#1
2011
+ bne ._skipfinalcopy
2012
+ add r2,r3,#288
2013
+ add r4,r3,#144
2014
+ vld1.8 {d0-d1},[r2,: 128]!
2015
+ vld1.8 {d2-d3},[r2,: 128]!
2016
+ vld1.8 {d4},[r2,: 64]
2017
+ vst1.8 {d0-d1},[r4,: 128]!
2018
+ vst1.8 {d2-d3},[r4,: 128]!
2019
+ vst1.8 d4,[r4,: 64]
2020
+ ._skipfinalcopy:
2021
+ add r1,r1,#1
2022
+ cmp r1,#12
2023
+ blo ._invertloop
2024
+ add r1,r3,#144
2025
+ ldr r2,[r1],#4
2026
+ ldr r3,[r1],#4
2027
+ ldr r4,[r1],#4
2028
+ ldr r5,[r1],#4
2029
+ ldr r6,[r1],#4
2030
+ ldr r7,[r1],#4
2031
+ ldr r8,[r1],#4
2032
+ ldr r9,[r1],#4
2033
+ ldr r10,[r1],#4
2034
+ ldr r1,[r1]
2035
+ add r11,r1,r1,LSL #4
2036
+ add r11,r11,r1,LSL #1
2037
+ add r11,r11,#16777216
2038
+ mov r11,r11,ASR #25
2039
+ add r11,r11,r2
2040
+ mov r11,r11,ASR #26
2041
+ add r11,r11,r3
2042
+ mov r11,r11,ASR #25
2043
+ add r11,r11,r4
2044
+ mov r11,r11,ASR #26
2045
+ add r11,r11,r5
2046
+ mov r11,r11,ASR #25
2047
+ add r11,r11,r6
2048
+ mov r11,r11,ASR #26
2049
+ add r11,r11,r7
2050
+ mov r11,r11,ASR #25
2051
+ add r11,r11,r8
2052
+ mov r11,r11,ASR #26
2053
+ add r11,r11,r9
2054
+ mov r11,r11,ASR #25
2055
+ add r11,r11,r10
2056
+ mov r11,r11,ASR #26
2057
+ add r11,r11,r1
2058
+ mov r11,r11,ASR #25
2059
+ add r2,r2,r11
2060
+ add r2,r2,r11,LSL #1
2061
+ add r2,r2,r11,LSL #4
2062
+ mov r11,r2,ASR #26
2063
+ add r3,r3,r11
2064
+ sub r2,r2,r11,LSL #26
2065
+ mov r11,r3,ASR #25
2066
+ add r4,r4,r11
2067
+ sub r3,r3,r11,LSL #25
2068
+ mov r11,r4,ASR #26
2069
+ add r5,r5,r11
2070
+ sub r4,r4,r11,LSL #26
2071
+ mov r11,r5,ASR #25
2072
+ add r6,r6,r11
2073
+ sub r5,r5,r11,LSL #25
2074
+ mov r11,r6,ASR #26
2075
+ add r7,r7,r11
2076
+ sub r6,r6,r11,LSL #26
2077
+ mov r11,r7,ASR #25
2078
+ add r8,r8,r11
2079
+ sub r7,r7,r11,LSL #25
2080
+ mov r11,r8,ASR #26
2081
+ add r9,r9,r11
2082
+ sub r8,r8,r11,LSL #26
2083
+ mov r11,r9,ASR #25
2084
+ add r10,r10,r11
2085
+ sub r9,r9,r11,LSL #25
2086
+ mov r11,r10,ASR #26
2087
+ add r1,r1,r11
2088
+ sub r10,r10,r11,LSL #26
2089
+ mov r11,r1,ASR #25
2090
+ sub r1,r1,r11,LSL #25
2091
+ add r2,r2,r3,LSL #26
2092
+ mov r3,r3,LSR #6
2093
+ add r3,r3,r4,LSL #19
2094
+ mov r4,r4,LSR #13
2095
+ add r4,r4,r5,LSL #13
2096
+ mov r5,r5,LSR #19
2097
+ add r5,r5,r6,LSL #6
2098
+ add r6,r7,r8,LSL #25
2099
+ mov r7,r8,LSR #7
2100
+ add r7,r7,r9,LSL #19
2101
+ mov r8,r9,LSR #13
2102
+ add r8,r8,r10,LSL #12
2103
+ mov r9,r10,LSR #20
2104
+ add r1,r9,r1,LSL #6
2105
+ str r2,[r0],#4
2106
+ str r3,[r0],#4
2107
+ str r4,[r0],#4
2108
+ str r5,[r0],#4
2109
+ str r6,[r0],#4
2110
+ str r7,[r0],#4
2111
+ str r8,[r0],#4
2112
+ str r1,[r0]
2113
+ ldrd r4,[sp,#0]
2114
+ ldrd r6,[sp,#8]
2115
+ ldrd r8,[sp,#16]
2116
+ ldrd r10,[sp,#24]
2117
+ ldr r12,[sp,#480]
2118
+ ldr r14,[sp,#484]
2119
+ ldr r0,=0
2120
+ mov sp,r12
2121
+ vpop {q4,q5,q6,q7}
2122
+ bx lr
2123
+
2124
+ #endif /* !OPENSSL_NO_ASM && OPENSSL_ARM && __ELF__ */