visaljs 0.0.2 → 0.0.4

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 (1243) hide show
  1. package/README.md +3 -1
  2. package/cli.js +545 -86
  3. package/node/include/js_node.h +30 -5
  4. package/node/include/js_uv.h +36 -0
  5. package/node/prelude/async_hooks.js +0 -0
  6. package/node/prelude/buffer.js +0 -0
  7. package/node/prelude/crypto.js +7 -10
  8. package/node/prelude/dns.js +99 -0
  9. package/node/prelude/dns_promises.js +10 -0
  10. package/node/prelude/events.js +0 -0
  11. package/node/prelude/fs.js +0 -0
  12. package/node/prelude/http.js +1039 -195
  13. package/node/prelude/http2.js +0 -0
  14. package/node/prelude/internal/crypto/asym.js +39 -12
  15. package/node/prelude/internal/crypto/cipher.js +0 -0
  16. package/node/prelude/internal/crypto/dh_groups.js +12 -0
  17. package/node/prelude/internal/crypto/diffiehellman.js +354 -0
  18. package/node/prelude/internal/crypto/hash.js +1 -1
  19. package/node/prelude/internal/crypto/kdf.js +0 -0
  20. package/node/prelude/internal/crypto/key_type.js +3 -0
  21. package/node/prelude/internal/crypto/keys.js +39 -9
  22. package/node/prelude/internal/crypto/random.js +0 -0
  23. package/node/prelude/internal/crypto/util.js +0 -0
  24. package/node/prelude/internal/errors.js +0 -0
  25. package/node/prelude/internal/http_agent.js +249 -0
  26. package/node/prelude/internal/net.js +33 -0
  27. package/node/prelude/internal/querystring.js +0 -0
  28. package/node/prelude/internal/socketaddress.js +249 -0
  29. package/node/prelude/internal/tls/common.js +306 -0
  30. package/node/prelude/internal/tls/wrap.js +1220 -0
  31. package/node/prelude/internal/tls/x509.js +394 -0
  32. package/node/prelude/module.js +0 -0
  33. package/node/prelude/net.js +1082 -50
  34. package/node/prelude/os.js +2 -2
  35. package/node/prelude/path.js +0 -0
  36. package/node/prelude/process.js +0 -0
  37. package/node/prelude/querystring.js +0 -0
  38. package/node/prelude/stream.js +6 -0
  39. package/node/prelude/stream_promises.js +0 -0
  40. package/node/prelude/stream_web.js +0 -0
  41. package/node/prelude/string_decoder.js +0 -0
  42. package/node/prelude/tls.js +141 -0
  43. package/node/prelude/tty.js +0 -0
  44. package/node/prelude/url.js +0 -0
  45. package/node/prelude/util.js +5 -2
  46. package/node/prelude/util_types.js +85 -0
  47. package/node/prelude/zlib.js +0 -0
  48. package/node/src/host_fs.c +10 -2
  49. package/node/src/host_http.c +268 -270
  50. package/node/src/host_loop.c +84 -0
  51. package/node/src/host_net.c +495 -0
  52. package/node/src/host_os.c +0 -0
  53. package/node/src/host_sys.c +54 -26
  54. package/node/third_party/libuv/LICENSE +0 -0
  55. package/node/third_party/libuv/include/uv/aix.h +0 -0
  56. package/node/third_party/libuv/include/uv/bsd.h +0 -0
  57. package/node/third_party/libuv/include/uv/darwin.h +0 -0
  58. package/node/third_party/libuv/include/uv/errno.h +0 -0
  59. package/node/third_party/libuv/include/uv/linux.h +0 -0
  60. package/node/third_party/libuv/include/uv/os390.h +0 -0
  61. package/node/third_party/libuv/include/uv/posix.h +0 -0
  62. package/node/third_party/libuv/include/uv/sunos.h +0 -0
  63. package/node/third_party/libuv/include/uv/threadpool.h +0 -0
  64. package/node/third_party/libuv/include/uv/tree.h +0 -0
  65. package/node/third_party/libuv/include/uv/unix.h +0 -0
  66. package/node/third_party/libuv/include/uv/version.h +0 -0
  67. package/node/third_party/libuv/include/uv/win.h +0 -0
  68. package/node/third_party/libuv/include/uv.h +0 -0
  69. package/node/third_party/libuv/src/fs-poll.c +0 -0
  70. package/node/third_party/libuv/src/heap-inl.h +0 -0
  71. package/node/third_party/libuv/src/idna.c +0 -0
  72. package/node/third_party/libuv/src/idna.h +0 -0
  73. package/node/third_party/libuv/src/inet.c +0 -0
  74. package/node/third_party/libuv/src/queue.h +0 -0
  75. package/node/third_party/libuv/src/random.c +0 -0
  76. package/node/third_party/libuv/src/strscpy.c +0 -0
  77. package/node/third_party/libuv/src/strscpy.h +0 -0
  78. package/node/third_party/libuv/src/strtok.c +0 -0
  79. package/node/third_party/libuv/src/strtok.h +0 -0
  80. package/node/third_party/libuv/src/thread-common.c +0 -0
  81. package/node/third_party/libuv/src/threadpool.c +0 -0
  82. package/node/third_party/libuv/src/timer.c +0 -0
  83. package/node/third_party/libuv/src/unix/async.c +0 -0
  84. package/node/third_party/libuv/src/unix/bsd-ifaddrs.c +0 -0
  85. package/node/third_party/libuv/src/unix/core.c +0 -0
  86. package/node/third_party/libuv/src/unix/darwin-proctitle.c +0 -0
  87. package/node/third_party/libuv/src/unix/darwin-stub.h +0 -0
  88. package/node/third_party/libuv/src/unix/darwin-syscalls.h +0 -0
  89. package/node/third_party/libuv/src/unix/darwin.c +0 -0
  90. package/node/third_party/libuv/src/unix/dl.c +0 -0
  91. package/node/third_party/libuv/src/unix/fs.c +0 -0
  92. package/node/third_party/libuv/src/unix/fsevents.c +0 -0
  93. package/node/third_party/libuv/src/unix/getaddrinfo.c +0 -0
  94. package/node/third_party/libuv/src/unix/getnameinfo.c +0 -0
  95. package/node/third_party/libuv/src/unix/internal.h +0 -0
  96. package/node/third_party/libuv/src/unix/kqueue.c +0 -0
  97. package/node/third_party/libuv/src/unix/linux.c +0 -0
  98. package/node/third_party/libuv/src/unix/loop-watcher.c +0 -0
  99. package/node/third_party/libuv/src/unix/loop.c +0 -0
  100. package/node/third_party/libuv/src/unix/pipe.c +0 -0
  101. package/node/third_party/libuv/src/unix/poll.c +0 -0
  102. package/node/third_party/libuv/src/unix/process.c +0 -0
  103. package/node/third_party/libuv/src/unix/procfs-exepath.c +0 -0
  104. package/node/third_party/libuv/src/unix/proctitle.c +0 -0
  105. package/node/third_party/libuv/src/unix/random-devurandom.c +0 -0
  106. package/node/third_party/libuv/src/unix/random-getentropy.c +0 -0
  107. package/node/third_party/libuv/src/unix/random-getrandom.c +0 -0
  108. package/node/third_party/libuv/src/unix/random-sysctl-linux.c +0 -0
  109. package/node/third_party/libuv/src/unix/signal.c +0 -0
  110. package/node/third_party/libuv/src/unix/stream.c +0 -0
  111. package/node/third_party/libuv/src/unix/tcp.c +0 -0
  112. package/node/third_party/libuv/src/unix/thread.c +0 -0
  113. package/node/third_party/libuv/src/unix/tty.c +0 -0
  114. package/node/third_party/libuv/src/unix/udp.c +0 -0
  115. package/node/third_party/libuv/src/uv-common.c +0 -0
  116. package/node/third_party/libuv/src/uv-common.h +0 -0
  117. package/node/third_party/libuv/src/uv-data-getter-setters.c +0 -0
  118. package/node/third_party/libuv/src/version.c +0 -0
  119. package/node/third_party/libuv/src/win/async.c +98 -0
  120. package/node/third_party/libuv/src/win/atomicops-inl.h +61 -0
  121. package/node/third_party/libuv/src/win/core.c +683 -0
  122. package/node/third_party/libuv/src/win/detect-wakeup.c +56 -0
  123. package/node/third_party/libuv/src/win/dl.c +135 -0
  124. package/node/third_party/libuv/src/win/error.c +183 -0
  125. package/node/third_party/libuv/src/win/fs-event.c +620 -0
  126. package/node/third_party/libuv/src/win/fs-fd-hash-inl.h +200 -0
  127. package/node/third_party/libuv/src/win/fs.c +3774 -0
  128. package/node/third_party/libuv/src/win/getaddrinfo.c +388 -0
  129. package/node/third_party/libuv/src/win/getnameinfo.c +146 -0
  130. package/node/third_party/libuv/src/win/handle-inl.h +180 -0
  131. package/node/third_party/libuv/src/win/handle.c +162 -0
  132. package/node/third_party/libuv/src/win/internal.h +335 -0
  133. package/node/third_party/libuv/src/win/loop-watcher.c +122 -0
  134. package/node/third_party/libuv/src/win/pipe.c +2725 -0
  135. package/node/third_party/libuv/src/win/poll.c +586 -0
  136. package/node/third_party/libuv/src/win/process-stdio.c +419 -0
  137. package/node/third_party/libuv/src/win/process.c +1407 -0
  138. package/node/third_party/libuv/src/win/req-inl.h +214 -0
  139. package/node/third_party/libuv/src/win/signal.c +282 -0
  140. package/node/third_party/libuv/src/win/snprintf.c +42 -0
  141. package/node/third_party/libuv/src/win/stream-inl.h +54 -0
  142. package/node/third_party/libuv/src/win/stream.c +252 -0
  143. package/node/third_party/libuv/src/win/tcp.c +1674 -0
  144. package/node/third_party/libuv/src/win/thread.c +568 -0
  145. package/node/third_party/libuv/src/win/tty.c +2460 -0
  146. package/node/third_party/libuv/src/win/udp.c +1162 -0
  147. package/node/third_party/libuv/src/win/util.c +1750 -0
  148. package/node/third_party/libuv/src/win/winapi.c +144 -0
  149. package/node/third_party/libuv/src/win/winapi.h +4831 -0
  150. package/node/third_party/libuv/src/win/winsock.c +575 -0
  151. package/node/third_party/libuv/src/win/winsock.h +160 -0
  152. package/node/third_party/llhttp/LICENSE +0 -0
  153. package/node/third_party/llhttp/api.c +0 -0
  154. package/node/third_party/llhttp/http.c +0 -0
  155. package/node/third_party/llhttp/llhttp.c +0 -0
  156. package/node/third_party/llhttp/llhttp.h +0 -0
  157. package/package.json +1 -1
  158. package/runtime/include/js_atoms.gen.h +0 -0
  159. package/runtime/include/js_atoms.h +0 -0
  160. package/runtime/include/js_bigint.h +0 -0
  161. package/runtime/include/js_buffer.h +0 -0
  162. package/runtime/include/js_builtins.h +16 -0
  163. package/runtime/include/js_console.h +2 -0
  164. package/runtime/include/js_convert.h +0 -0
  165. package/runtime/include/js_core.def +23 -0
  166. package/runtime/include/js_crypto.h +23 -0
  167. package/runtime/include/js_error.h +0 -0
  168. package/runtime/include/js_exception.h +0 -0
  169. package/runtime/include/js_function.h +0 -0
  170. package/runtime/include/js_gc.h +0 -0
  171. package/runtime/include/js_generator.h +2 -3
  172. package/runtime/include/js_host.h +0 -0
  173. package/runtime/include/js_jobs.h +0 -0
  174. package/runtime/include/js_module.h +0 -0
  175. package/runtime/include/js_object.h +0 -0
  176. package/runtime/include/js_ops.h +0 -0
  177. package/runtime/include/js_promise.h +0 -2
  178. package/runtime/include/js_regexp.h +0 -0
  179. package/runtime/include/js_runtime.h +0 -0
  180. package/runtime/include/js_symbol.h +0 -0
  181. package/runtime/include/js_web.h +0 -0
  182. package/runtime/include/jscell.h +0 -0
  183. package/runtime/include/jscontext.h +0 -0
  184. package/runtime/include/jsnum.h +0 -0
  185. package/runtime/include/jsstring.h +0 -0
  186. package/runtime/include/jsvalue.h +0 -0
  187. package/runtime/src/arguments.c +0 -0
  188. package/runtime/src/array.c +0 -0
  189. package/runtime/src/arraybuffer.c +0 -0
  190. package/runtime/src/async_iter.c +4 -1
  191. package/runtime/src/atoms.c +0 -0
  192. package/runtime/src/base64.c +0 -0
  193. package/runtime/src/bigint.c +0 -0
  194. package/runtime/src/blob.c +0 -0
  195. package/runtime/src/boringssl_support.cc +37 -0
  196. package/runtime/src/buffer.c +0 -0
  197. package/runtime/src/builtin_table.c +8 -0
  198. package/runtime/src/builtins.c +0 -0
  199. package/runtime/src/builtins_util.h +0 -0
  200. package/runtime/src/collections.c +0 -0
  201. package/runtime/src/components.c +10 -0
  202. package/runtime/src/console.c +6 -18
  203. package/runtime/src/convert.c +0 -0
  204. package/runtime/src/core_all.c +1 -0
  205. package/runtime/src/crypto.c +0 -0
  206. package/runtime/src/crypto_asym.c +450 -241
  207. package/runtime/src/crypto_bn.c +91 -0
  208. package/runtime/src/crypto_cipher.c +153 -75
  209. package/runtime/src/crypto_hash.c +68 -53
  210. package/runtime/src/crypto_host.c +0 -0
  211. package/runtime/src/crypto_internal.h +55 -26
  212. package/runtime/src/crypto_kdf.c +0 -0
  213. package/runtime/src/crypto_key.c +0 -0
  214. package/runtime/src/crypto_pkey.c +198 -61
  215. package/runtime/src/crypto_subtle.c +42 -16
  216. package/runtime/src/crypto_tls.c +678 -0
  217. package/runtime/src/date.c +0 -0
  218. package/runtime/src/domexception.c +0 -0
  219. package/runtime/src/elements.c +0 -0
  220. package/runtime/src/elements.h +0 -0
  221. package/runtime/src/encoding.c +0 -0
  222. package/runtime/src/error.c +0 -0
  223. package/runtime/src/events.c +0 -0
  224. package/runtime/src/exception.c +0 -0
  225. package/runtime/src/fetch.c +0 -0
  226. package/runtime/src/function.c +0 -0
  227. package/runtime/src/gc.c +0 -0
  228. package/runtime/src/generator.c +8 -1
  229. package/runtime/src/global.c +2 -4
  230. package/runtime/src/headers.c +0 -0
  231. package/runtime/src/inspect.c +0 -0
  232. package/runtime/src/internal.h +0 -1
  233. package/runtime/src/iterate.c +0 -0
  234. package/runtime/src/iterator.c +0 -0
  235. package/runtime/src/jobs.c +2 -1
  236. package/runtime/src/jsnum.c +0 -0
  237. package/runtime/src/json.c +0 -0
  238. package/runtime/src/math.c +0 -0
  239. package/runtime/src/module.c +0 -0
  240. package/runtime/src/number.c +0 -0
  241. package/runtime/src/object.c +0 -0
  242. package/runtime/src/ops.c +0 -0
  243. package/runtime/src/os.c +0 -0
  244. package/runtime/src/os.h +0 -0
  245. package/runtime/src/process.c +7 -0
  246. package/runtime/src/promise.c +4 -1
  247. package/runtime/src/proxy.c +0 -0
  248. package/runtime/src/reflect.c +0 -0
  249. package/runtime/src/regexp.c +0 -0
  250. package/runtime/src/regexp_anchor.h +0 -0
  251. package/runtime/src/regexp_message.h +0 -0
  252. package/runtime/src/shape.c +0 -0
  253. package/runtime/src/shape.h +0 -0
  254. package/runtime/src/streams.c +0 -0
  255. package/runtime/src/streams.h +0 -0
  256. package/runtime/src/string.c +0 -0
  257. package/runtime/src/string_builtins.c +0 -0
  258. package/runtime/src/symbol.c +0 -0
  259. package/runtime/src/test_host.c +0 -0
  260. package/runtime/src/tls_roots.gen.h +3215 -0
  261. package/runtime/src/typedarray.c +0 -0
  262. package/runtime/src/tznames.gen.h +0 -0
  263. package/runtime/src/uri.c +0 -0
  264. package/runtime/src/url.c +0 -0
  265. package/runtime/src/util_types.c +52 -0
  266. package/runtime/src/weak.c +2 -1
  267. package/runtime/src/web.c +0 -0
  268. package/runtime/src/wrapper.c +0 -0
  269. package/runtime/src/writable.c +0 -0
  270. package/runtime/third_party/ada-idna/LICENSE-MIT +0 -0
  271. package/runtime/third_party/ada-idna/README.md +0 -0
  272. package/runtime/third_party/ada-idna/convert.mjs +0 -0
  273. package/runtime/third_party/ada-idna/idna.c +0 -0
  274. package/runtime/third_party/ada-idna/idna.h +0 -0
  275. package/runtime/third_party/ada-idna/idna_tables.h +0 -0
  276. package/runtime/third_party/boringssl/LICENSE +238 -0
  277. package/runtime/third_party/boringssl/README.md +46 -0
  278. package/runtime/third_party/boringssl/VERSION +1 -0
  279. package/runtime/third_party/boringssl/crypto/aes/aes.cc +44 -0
  280. package/runtime/third_party/boringssl/crypto/armv8_feature_parsing.h +67 -0
  281. package/runtime/third_party/boringssl/crypto/asn1/a_bitstr.cc +297 -0
  282. package/runtime/third_party/boringssl/crypto/asn1/a_bool.cc +50 -0
  283. package/runtime/third_party/boringssl/crypto/asn1/a_d2i_fp.cc +47 -0
  284. package/runtime/third_party/boringssl/crypto/asn1/a_dup.cc +42 -0
  285. package/runtime/third_party/boringssl/crypto/asn1/a_gentm.cc +130 -0
  286. package/runtime/third_party/boringssl/crypto/asn1/a_i2d_fp.cc +44 -0
  287. package/runtime/third_party/boringssl/crypto/asn1/a_int.cc +467 -0
  288. package/runtime/third_party/boringssl/crypto/asn1/a_mbstr.cc +242 -0
  289. package/runtime/third_party/boringssl/crypto/asn1/a_object.cc +191 -0
  290. package/runtime/third_party/boringssl/crypto/asn1/a_octet.cc +32 -0
  291. package/runtime/third_party/boringssl/crypto/asn1/a_strex.cc +411 -0
  292. package/runtime/third_party/boringssl/crypto/asn1/a_strnid.cc +208 -0
  293. package/runtime/third_party/boringssl/crypto/asn1/a_time.cc +248 -0
  294. package/runtime/third_party/boringssl/crypto/asn1/a_type.cc +467 -0
  295. package/runtime/third_party/boringssl/crypto/asn1/a_utctm.cc +128 -0
  296. package/runtime/third_party/boringssl/crypto/asn1/asn1_lib.cc +453 -0
  297. package/runtime/third_party/boringssl/crypto/asn1/asn1_par.cc +61 -0
  298. package/runtime/third_party/boringssl/crypto/asn1/asn_pack.cc +56 -0
  299. package/runtime/third_party/boringssl/crypto/asn1/f_int.cc +63 -0
  300. package/runtime/third_party/boringssl/crypto/asn1/f_string.cc +52 -0
  301. package/runtime/third_party/boringssl/crypto/asn1/internal.h +430 -0
  302. package/runtime/third_party/boringssl/crypto/asn1/posix_time.cc +244 -0
  303. package/runtime/third_party/boringssl/crypto/asn1/tasn_dec.cc +611 -0
  304. package/runtime/third_party/boringssl/crypto/asn1/tasn_enc.cc +348 -0
  305. package/runtime/third_party/boringssl/crypto/asn1/tasn_fre.cc +163 -0
  306. package/runtime/third_party/boringssl/crypto/asn1/tasn_new.cc +274 -0
  307. package/runtime/third_party/boringssl/crypto/asn1/tasn_typ.cc +92 -0
  308. package/runtime/third_party/boringssl/crypto/asn1/tasn_utl.cc +218 -0
  309. package/runtime/third_party/boringssl/crypto/base64/base64.cc +433 -0
  310. package/runtime/third_party/boringssl/crypto/bcm_support.h +62 -0
  311. package/runtime/third_party/boringssl/crypto/bio/bio.cc +715 -0
  312. package/runtime/third_party/boringssl/crypto/bio/bio_mem.cc +260 -0
  313. package/runtime/third_party/boringssl/crypto/bio/connect.cc +463 -0
  314. package/runtime/third_party/boringssl/crypto/bio/errno.cc +52 -0
  315. package/runtime/third_party/boringssl/crypto/bio/fd.cc +193 -0
  316. package/runtime/third_party/boringssl/crypto/bio/file.cc +283 -0
  317. package/runtime/third_party/boringssl/crypto/bio/hexdump.cc +154 -0
  318. package/runtime/third_party/boringssl/crypto/bio/internal.h +128 -0
  319. package/runtime/third_party/boringssl/crypto/bio/pair.cc +426 -0
  320. package/runtime/third_party/boringssl/crypto/bio/printf.cc +59 -0
  321. package/runtime/third_party/boringssl/crypto/bio/socket.cc +210 -0
  322. package/runtime/third_party/boringssl/crypto/bio/socket_helper.cc +179 -0
  323. package/runtime/third_party/boringssl/crypto/blake2/blake2.cc +173 -0
  324. package/runtime/third_party/boringssl/crypto/bn/bn_asn1.cc +57 -0
  325. package/runtime/third_party/boringssl/crypto/bn/convert.cc +409 -0
  326. package/runtime/third_party/boringssl/crypto/bn/div.cc +102 -0
  327. package/runtime/third_party/boringssl/crypto/bn/exponentiation.cc +168 -0
  328. package/runtime/third_party/boringssl/crypto/bn/sqrt.cc +93 -0
  329. package/runtime/third_party/boringssl/crypto/buf/buf.cc +119 -0
  330. package/runtime/third_party/boringssl/crypto/bytestring/asn1_compat.cc +54 -0
  331. package/runtime/third_party/boringssl/crypto/bytestring/ber.cc +268 -0
  332. package/runtime/third_party/boringssl/crypto/bytestring/cbb.cc +787 -0
  333. package/runtime/third_party/boringssl/crypto/bytestring/cbs.cc +977 -0
  334. package/runtime/third_party/boringssl/crypto/bytestring/internal.h +134 -0
  335. package/runtime/third_party/boringssl/crypto/bytestring/unicode.cc +156 -0
  336. package/runtime/third_party/boringssl/crypto/chacha/chacha.cc +226 -0
  337. package/runtime/third_party/boringssl/crypto/chacha/internal.h +103 -0
  338. package/runtime/third_party/boringssl/crypto/cipher/derive_key.cc +106 -0
  339. package/runtime/third_party/boringssl/crypto/cipher/e_aesctrhmac.cc +294 -0
  340. package/runtime/third_party/boringssl/crypto/cipher/e_aeseax.cc +351 -0
  341. package/runtime/third_party/boringssl/crypto/cipher/e_aesgcmsiv.cc +918 -0
  342. package/runtime/third_party/boringssl/crypto/cipher/e_chacha20poly1305.cc +404 -0
  343. package/runtime/third_party/boringssl/crypto/cipher/e_des.cc +214 -0
  344. package/runtime/third_party/boringssl/crypto/cipher/e_null.cc +55 -0
  345. package/runtime/third_party/boringssl/crypto/cipher/e_rc2.cc +432 -0
  346. package/runtime/third_party/boringssl/crypto/cipher/e_rc4.cc +56 -0
  347. package/runtime/third_party/boringssl/crypto/cipher/e_tls.cc +615 -0
  348. package/runtime/third_party/boringssl/crypto/cipher/get_cipher.cc +85 -0
  349. package/runtime/third_party/boringssl/crypto/cipher/internal.h +399 -0
  350. package/runtime/third_party/boringssl/crypto/cipher/tls_cbc.cc +476 -0
  351. package/runtime/third_party/boringssl/crypto/cms/cms.cc +178 -0
  352. package/runtime/third_party/boringssl/crypto/conf/conf.cc +637 -0
  353. package/runtime/third_party/boringssl/crypto/conf/internal.h +54 -0
  354. package/runtime/third_party/boringssl/crypto/cpu_aarch64_apple.cc +76 -0
  355. package/runtime/third_party/boringssl/crypto/cpu_aarch64_fuchsia.cc +58 -0
  356. package/runtime/third_party/boringssl/crypto/cpu_aarch64_linux.cc +66 -0
  357. package/runtime/third_party/boringssl/crypto/cpu_aarch64_openbsd.cc +45 -0
  358. package/runtime/third_party/boringssl/crypto/cpu_aarch64_sysreg.cc +66 -0
  359. package/runtime/third_party/boringssl/crypto/cpu_aarch64_win.cc +52 -0
  360. package/runtime/third_party/boringssl/crypto/cpu_arm_freebsd.cc +55 -0
  361. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.cc +173 -0
  362. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.h +141 -0
  363. package/runtime/third_party/boringssl/crypto/cpu_intel.cc +287 -0
  364. package/runtime/third_party/boringssl/crypto/crypto.cc +152 -0
  365. package/runtime/third_party/boringssl/crypto/curve25519/asm/x25519-asm-arm.S +2124 -0
  366. package/runtime/third_party/boringssl/crypto/curve25519/cpace.cc +227 -0
  367. package/runtime/third_party/boringssl/crypto/curve25519/curve25519.cc +2436 -0
  368. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_64_adx.cc +18 -0
  369. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_tables.h +3264 -0
  370. package/runtime/third_party/boringssl/crypto/curve25519/internal.h +202 -0
  371. package/runtime/third_party/boringssl/crypto/curve25519/spake25519.cc +532 -0
  372. package/runtime/third_party/boringssl/crypto/des/des.cc +837 -0
  373. package/runtime/third_party/boringssl/crypto/des/internal.h +144 -0
  374. package/runtime/third_party/boringssl/crypto/dh/dh_asn1.cc +109 -0
  375. package/runtime/third_party/boringssl/crypto/dh/params.cc +411 -0
  376. package/runtime/third_party/boringssl/crypto/digest/digest_extra.cc +361 -0
  377. package/runtime/third_party/boringssl/crypto/dsa/dsa.cc +922 -0
  378. package/runtime/third_party/boringssl/crypto/dsa/dsa_asn1.cc +306 -0
  379. package/runtime/third_party/boringssl/crypto/dsa/internal.h +56 -0
  380. package/runtime/third_party/boringssl/crypto/ec/ec_asn1.cc +542 -0
  381. package/runtime/third_party/boringssl/crypto/ec/ec_derive.cc +94 -0
  382. package/runtime/third_party/boringssl/crypto/ec/hash_to_curve.cc +773 -0
  383. package/runtime/third_party/boringssl/crypto/ec/internal.h +114 -0
  384. package/runtime/third_party/boringssl/crypto/ecdh/ecdh.cc +75 -0
  385. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.cc +337 -0
  386. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_p1363.cc +54 -0
  387. package/runtime/third_party/boringssl/crypto/engine/engine.cc +95 -0
  388. package/runtime/third_party/boringssl/crypto/err/err.cc +820 -0
  389. package/runtime/third_party/boringssl/crypto/err/internal.h +45 -0
  390. package/runtime/third_party/boringssl/crypto/evp/evp.cc +454 -0
  391. package/runtime/third_party/boringssl/crypto/evp/evp_asn1.cc +439 -0
  392. package/runtime/third_party/boringssl/crypto/evp/evp_ctx.cc +541 -0
  393. package/runtime/third_party/boringssl/crypto/evp/evp_kem.cc +101 -0
  394. package/runtime/third_party/boringssl/crypto/evp/internal.h +427 -0
  395. package/runtime/third_party/boringssl/crypto/evp/p_dh.cc +326 -0
  396. package/runtime/third_party/boringssl/crypto/evp/p_dsa.cc +333 -0
  397. package/runtime/third_party/boringssl/crypto/evp/p_ec.cc +736 -0
  398. package/runtime/third_party/boringssl/crypto/evp/p_ed25519.cc +359 -0
  399. package/runtime/third_party/boringssl/crypto/evp/p_hkdf.cc +204 -0
  400. package/runtime/third_party/boringssl/crypto/evp/p_mldsa.cc +549 -0
  401. package/runtime/third_party/boringssl/crypto/evp/p_mlkem.cc +510 -0
  402. package/runtime/third_party/boringssl/crypto/evp/p_rsa.cc +1185 -0
  403. package/runtime/third_party/boringssl/crypto/evp/p_x25519.cc +371 -0
  404. package/runtime/third_party/boringssl/crypto/evp/p_xwing.cc +300 -0
  405. package/runtime/third_party/boringssl/crypto/evp/pbkdf.cc +105 -0
  406. package/runtime/third_party/boringssl/crypto/evp/print.cc +287 -0
  407. package/runtime/third_party/boringssl/crypto/evp/scrypt.cc +218 -0
  408. package/runtime/third_party/boringssl/crypto/evp/sign.cc +95 -0
  409. package/runtime/third_party/boringssl/crypto/ex_data.cc +140 -0
  410. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes.cc.inc +208 -0
  411. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes_nohw.cc.inc +1279 -0
  412. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cbc.cc.inc +132 -0
  413. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cfb.cc.inc +168 -0
  414. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ctr.cc.inc +102 -0
  415. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm.cc.inc +614 -0
  416. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm_nohw.cc.inc +304 -0
  417. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/internal.h +590 -0
  418. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/key_wrap.cc.inc +211 -0
  419. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/mode_wrappers.cc.inc +97 -0
  420. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ofb.cc.inc +55 -0
  421. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm.cc +288 -0
  422. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm_interface.h +953 -0
  423. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/add.cc.inc +276 -0
  424. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +573 -0
  425. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bn.cc.inc +377 -0
  426. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bytes.cc.inc +230 -0
  427. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/cmp.cc.inc +161 -0
  428. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/ctx.cc.inc +127 -0
  429. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div.cc.inc +738 -0
  430. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div_extra.cc.inc +90 -0
  431. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/exponentiation.cc.inc +743 -0
  432. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd.cc.inc +281 -0
  433. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd_extra.cc.inc +327 -0
  434. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/generic.cc.inc +579 -0
  435. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/internal.h +810 -0
  436. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/jacobi.cc.inc +101 -0
  437. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery.cc.inc +408 -0
  438. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery_inv.cc.inc +179 -0
  439. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/mul.cc.inc +347 -0
  440. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/prime.cc.inc +931 -0
  441. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/random.cc.inc +261 -0
  442. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.cc.inc +144 -0
  443. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.h +109 -0
  444. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/shift.cc.inc +317 -0
  445. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/sqrt.cc.inc +370 -0
  446. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/aead.cc.inc +619 -0
  447. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/cipher.cc.inc +837 -0
  448. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aes.cc.inc +1240 -0
  449. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aesccm.cc.inc +440 -0
  450. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/internal.h +461 -0
  451. package/runtime/third_party/boringssl/crypto/fipsmodule/cmac/cmac.cc.inc +293 -0
  452. package/runtime/third_party/boringssl/crypto/fipsmodule/delocate.h +95 -0
  453. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/check.cc.inc +198 -0
  454. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/dh.cc.inc +401 -0
  455. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/internal.h +63 -0
  456. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digest.cc.inc +221 -0
  457. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digests.cc.inc +184 -0
  458. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/internal.h +72 -0
  459. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/md32_common.h +166 -0
  460. package/runtime/third_party/boringssl/crypto/fipsmodule/digestsign/digestsign.cc.inc +230 -0
  461. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  462. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec.cc.inc +1024 -0
  463. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_key.cc.inc +536 -0
  464. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_montgomery.cc.inc +379 -0
  465. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/felem.cc.inc +250 -0
  466. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/internal.h +752 -0
  467. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/oct.cc.inc +174 -0
  468. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz-table.h +9502 -0
  469. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.cc.inc +740 -0
  470. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.h +207 -0
  471. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256.cc.inc +578 -0
  472. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256_table.h +297 -0
  473. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/scalar.cc.inc +184 -0
  474. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple.cc.inc +246 -0
  475. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple_mul.cc.inc +274 -0
  476. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/util.cc.inc +258 -0
  477. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/wnaf.cc.inc +224 -0
  478. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdh/ecdh.cc.inc +91 -0
  479. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +288 -0
  480. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/internal.h +57 -0
  481. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/internal.h +38 -0
  482. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/jitter.cc.inc +487 -0
  483. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/sha512.cc.inc +329 -0
  484. package/runtime/third_party/boringssl/crypto/fipsmodule/fips_shared_support.cc +28 -0
  485. package/runtime/third_party/boringssl/crypto/fipsmodule/hkdf/hkdf.cc.inc +114 -0
  486. package/runtime/third_party/boringssl/crypto/fipsmodule/hmac/hmac.cc.inc +218 -0
  487. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/internal.h +165 -0
  488. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/keccak.cc.inc +647 -0
  489. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/fips_known_values.inc +1345 -0
  490. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/mldsa.cc.inc +3323 -0
  491. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/fips_known_values.inc +411 -0
  492. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/mlkem.cc.inc +1856 -0
  493. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/android_entropy_client.cc.inc +82 -0
  494. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/ctrdrbg.cc.inc +401 -0
  495. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/internal.h +99 -0
  496. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/rand.cc.inc +486 -0
  497. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/internal.h +167 -0
  498. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/padding.cc.inc +371 -0
  499. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa.cc.inc +996 -0
  500. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1000 -0
  501. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  502. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/self_check.cc.inc +1093 -0
  503. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/internal.h +112 -0
  504. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +330 -0
  505. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/internal.h +205 -0
  506. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha1.cc.inc +404 -0
  507. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha256.cc.inc +315 -0
  508. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  509. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/address.h +144 -0
  510. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fips_known_values.inc +674 -0
  511. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.cc.inc +179 -0
  512. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.h +48 -0
  513. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.cc.inc +164 -0
  514. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.h +58 -0
  515. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/params.h +178 -0
  516. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +690 -0
  517. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.cc.inc +326 -0
  518. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.h +71 -0
  519. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.cc.inc +172 -0
  520. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.h +40 -0
  521. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/internal.h +33 -0
  522. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  523. package/runtime/third_party/boringssl/crypto/fuzzer_mode.cc +30 -0
  524. package/runtime/third_party/boringssl/crypto/hpke/hpke.cc +1514 -0
  525. package/runtime/third_party/boringssl/crypto/hrss/asm/poly_rq_mul.S +8489 -0
  526. package/runtime/third_party/boringssl/crypto/hrss/hrss.cc +2189 -0
  527. package/runtime/third_party/boringssl/crypto/hrss/internal.h +64 -0
  528. package/runtime/third_party/boringssl/crypto/internal.h +1767 -0
  529. package/runtime/third_party/boringssl/crypto/lhash/internal.h +222 -0
  530. package/runtime/third_party/boringssl/crypto/lhash/lhash.cc +312 -0
  531. package/runtime/third_party/boringssl/crypto/md4/md4.cc +207 -0
  532. package/runtime/third_party/boringssl/crypto/md5/internal.h +34 -0
  533. package/runtime/third_party/boringssl/crypto/md5/md5.cc +255 -0
  534. package/runtime/third_party/boringssl/crypto/mem.cc +577 -0
  535. package/runtime/third_party/boringssl/crypto/mem_internal.h +706 -0
  536. package/runtime/third_party/boringssl/crypto/mldsa/mldsa.cc +296 -0
  537. package/runtime/third_party/boringssl/crypto/mlkem/mlkem.cc +108 -0
  538. package/runtime/third_party/boringssl/crypto/obj/obj.cc +494 -0
  539. package/runtime/third_party/boringssl/crypto/obj/obj_dat.h +11722 -0
  540. package/runtime/third_party/boringssl/crypto/obj/obj_xref.cc +83 -0
  541. package/runtime/third_party/boringssl/crypto/params_internal.h +30 -0
  542. package/runtime/third_party/boringssl/crypto/pem/internal.h +135 -0
  543. package/runtime/third_party/boringssl/crypto/pem/pem_all.cc +153 -0
  544. package/runtime/third_party/boringssl/crypto/pem/pem_info.cc +250 -0
  545. package/runtime/third_party/boringssl/crypto/pem/pem_lib.cc +707 -0
  546. package/runtime/third_party/boringssl/crypto/pem/pem_oth.cc +45 -0
  547. package/runtime/third_party/boringssl/crypto/pem/pem_pk8.cc +211 -0
  548. package/runtime/third_party/boringssl/crypto/pem/pem_pkey.cc +147 -0
  549. package/runtime/third_party/boringssl/crypto/pem/pem_x509.cc +25 -0
  550. package/runtime/third_party/boringssl/crypto/pem/pem_xaux.cc +25 -0
  551. package/runtime/third_party/boringssl/crypto/pkcs7/internal.h +67 -0
  552. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7.cc +198 -0
  553. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7_x509.cc +527 -0
  554. package/runtime/third_party/boringssl/crypto/pkcs8/internal.h +98 -0
  555. package/runtime/third_party/boringssl/crypto/pkcs8/p5_pbev2.cc +286 -0
  556. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8.cc +473 -0
  557. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8_x509.cc +1328 -0
  558. package/runtime/third_party/boringssl/crypto/poly1305/internal.h +54 -0
  559. package/runtime/third_party/boringssl/crypto/poly1305/poly1305.cc +315 -0
  560. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm.cc +294 -0
  561. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm_asm.S +2017 -0
  562. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_vec.cc +853 -0
  563. package/runtime/third_party/boringssl/crypto/pool/internal.h +95 -0
  564. package/runtime/third_party/boringssl/crypto/pool/pool.cc +282 -0
  565. package/runtime/third_party/boringssl/crypto/rand/deterministic.cc +58 -0
  566. package/runtime/third_party/boringssl/crypto/rand/fork_detect.cc +222 -0
  567. package/runtime/third_party/boringssl/crypto/rand/forkunsafe.cc +44 -0
  568. package/runtime/third_party/boringssl/crypto/rand/getentropy.cc +53 -0
  569. package/runtime/third_party/boringssl/crypto/rand/internal.h +67 -0
  570. package/runtime/third_party/boringssl/crypto/rand/ios.cc +35 -0
  571. package/runtime/third_party/boringssl/crypto/rand/rand.cc +79 -0
  572. package/runtime/third_party/boringssl/crypto/rand/trusty.cc +39 -0
  573. package/runtime/third_party/boringssl/crypto/rand/urandom.cc +149 -0
  574. package/runtime/third_party/boringssl/crypto/rand/windows.cc +91 -0
  575. package/runtime/third_party/boringssl/crypto/rc4/rc4.cc +56 -0
  576. package/runtime/third_party/boringssl/crypto/refcount.cc +49 -0
  577. package/runtime/third_party/boringssl/crypto/rsa/internal.h +51 -0
  578. package/runtime/third_party/boringssl/crypto/rsa/rsa_asn1.cc +404 -0
  579. package/runtime/third_party/boringssl/crypto/rsa/rsa_crypt.cc +530 -0
  580. package/runtime/third_party/boringssl/crypto/rsa/rsa_extra.cc +30 -0
  581. package/runtime/third_party/boringssl/crypto/rsa/rsa_print.cc +25 -0
  582. package/runtime/third_party/boringssl/crypto/sha/sha1.cc +55 -0
  583. package/runtime/third_party/boringssl/crypto/sha/sha256.cc +89 -0
  584. package/runtime/third_party/boringssl/crypto/sha/sha512.cc +106 -0
  585. package/runtime/third_party/boringssl/crypto/siphash/siphash.cc +81 -0
  586. package/runtime/third_party/boringssl/crypto/slhdsa/slhdsa.cc +167 -0
  587. package/runtime/third_party/boringssl/crypto/spake2plus/internal.h +204 -0
  588. package/runtime/third_party/boringssl/crypto/spake2plus/spake2plus.cc +501 -0
  589. package/runtime/third_party/boringssl/crypto/stack/stack.cc +462 -0
  590. package/runtime/third_party/boringssl/crypto/thread.cc +68 -0
  591. package/runtime/third_party/boringssl/crypto/thread_none.cc +48 -0
  592. package/runtime/third_party/boringssl/crypto/thread_pthread.cc +138 -0
  593. package/runtime/third_party/boringssl/crypto/thread_win.cc +227 -0
  594. package/runtime/third_party/boringssl/crypto/trust_token/internal.h +405 -0
  595. package/runtime/third_party/boringssl/crypto/trust_token/pmbtoken.cc +1672 -0
  596. package/runtime/third_party/boringssl/crypto/trust_token/trust_token.cc +701 -0
  597. package/runtime/third_party/boringssl/crypto/trust_token/voprf.cc +1266 -0
  598. package/runtime/third_party/boringssl/crypto/x509/a_digest.cc +52 -0
  599. package/runtime/third_party/boringssl/crypto/x509/a_sign.cc +100 -0
  600. package/runtime/third_party/boringssl/crypto/x509/a_verify.cc +77 -0
  601. package/runtime/third_party/boringssl/crypto/x509/algorithm.cc +167 -0
  602. package/runtime/third_party/boringssl/crypto/x509/asn1_gen.cc +540 -0
  603. package/runtime/third_party/boringssl/crypto/x509/by_dir.cc +301 -0
  604. package/runtime/third_party/boringssl/crypto/x509/by_file.cc +226 -0
  605. package/runtime/third_party/boringssl/crypto/x509/i2d_pr.cc +37 -0
  606. package/runtime/third_party/boringssl/crypto/x509/internal.h +697 -0
  607. package/runtime/third_party/boringssl/crypto/x509/name_print.cc +187 -0
  608. package/runtime/third_party/boringssl/crypto/x509/policy.cc +686 -0
  609. package/runtime/third_party/boringssl/crypto/x509/rsa_pss.cc +187 -0
  610. package/runtime/third_party/boringssl/crypto/x509/t_crl.cc +106 -0
  611. package/runtime/third_party/boringssl/crypto/x509/t_req.cc +206 -0
  612. package/runtime/third_party/boringssl/crypto/x509/t_x509.cc +292 -0
  613. package/runtime/third_party/boringssl/crypto/x509/t_x509a.cc +81 -0
  614. package/runtime/third_party/boringssl/crypto/x509/v3_akey.cc +174 -0
  615. package/runtime/third_party/boringssl/crypto/x509/v3_akeya.cc +31 -0
  616. package/runtime/third_party/boringssl/crypto/x509/v3_alt.cc +636 -0
  617. package/runtime/third_party/boringssl/crypto/x509/v3_bcons.cc +96 -0
  618. package/runtime/third_party/boringssl/crypto/x509/v3_bitst.cc +100 -0
  619. package/runtime/third_party/boringssl/crypto/x509/v3_conf.cc +369 -0
  620. package/runtime/third_party/boringssl/crypto/x509/v3_cpols.cc +417 -0
  621. package/runtime/third_party/boringssl/crypto/x509/v3_crld.cc +471 -0
  622. package/runtime/third_party/boringssl/crypto/x509/v3_enum.cc +74 -0
  623. package/runtime/third_party/boringssl/crypto/x509/v3_extku.cc +97 -0
  624. package/runtime/third_party/boringssl/crypto/x509/v3_genn.cc +238 -0
  625. package/runtime/third_party/boringssl/crypto/x509/v3_ia5.cc +83 -0
  626. package/runtime/third_party/boringssl/crypto/x509/v3_info.cc +162 -0
  627. package/runtime/third_party/boringssl/crypto/x509/v3_int.cc +83 -0
  628. package/runtime/third_party/boringssl/crypto/x509/v3_lib.cc +349 -0
  629. package/runtime/third_party/boringssl/crypto/x509/v3_ncons.cc +798 -0
  630. package/runtime/third_party/boringssl/crypto/x509/v3_ocsp.cc +92 -0
  631. package/runtime/third_party/boringssl/crypto/x509/v3_pcons.cc +102 -0
  632. package/runtime/third_party/boringssl/crypto/x509/v3_pmaps.cc +110 -0
  633. package/runtime/third_party/boringssl/crypto/x509/v3_prn.cc +183 -0
  634. package/runtime/third_party/boringssl/crypto/x509/v3_purp.cc +580 -0
  635. package/runtime/third_party/boringssl/crypto/x509/v3_skey.cc +128 -0
  636. package/runtime/third_party/boringssl/crypto/x509/v3_utl.cc +1311 -0
  637. package/runtime/third_party/boringssl/crypto/x509/x509.cc +47 -0
  638. package/runtime/third_party/boringssl/crypto/x509/x509_att.cc +188 -0
  639. package/runtime/third_party/boringssl/crypto/x509/x509_cmp.cc +243 -0
  640. package/runtime/third_party/boringssl/crypto/x509/x509_d2.cc +66 -0
  641. package/runtime/third_party/boringssl/crypto/x509/x509_def.cc +42 -0
  642. package/runtime/third_party/boringssl/crypto/x509/x509_ext.cc +161 -0
  643. package/runtime/third_party/boringssl/crypto/x509/x509_lu.cc +570 -0
  644. package/runtime/third_party/boringssl/crypto/x509/x509_mtc.cc +598 -0
  645. package/runtime/third_party/boringssl/crypto/x509/x509_obj.cc +169 -0
  646. package/runtime/third_party/boringssl/crypto/x509/x509_req.cc +248 -0
  647. package/runtime/third_party/boringssl/crypto/x509/x509_set.cc +166 -0
  648. package/runtime/third_party/boringssl/crypto/x509/x509_trs.cc +123 -0
  649. package/runtime/third_party/boringssl/crypto/x509/x509_txt.cc +147 -0
  650. package/runtime/third_party/boringssl/crypto/x509/x509_v3.cc +249 -0
  651. package/runtime/third_party/boringssl/crypto/x509/x509_vfy.cc +1531 -0
  652. package/runtime/third_party/boringssl/crypto/x509/x509_vpm.cc +449 -0
  653. package/runtime/third_party/boringssl/crypto/x509/x509cset.cc +222 -0
  654. package/runtime/third_party/boringssl/crypto/x509/x509name.cc +377 -0
  655. package/runtime/third_party/boringssl/crypto/x509/x509rset.cc +55 -0
  656. package/runtime/third_party/boringssl/crypto/x509/x509spki.cc +91 -0
  657. package/runtime/third_party/boringssl/crypto/x509/x_algor.cc +223 -0
  658. package/runtime/third_party/boringssl/crypto/x509/x_all.cc +352 -0
  659. package/runtime/third_party/boringssl/crypto/x509/x_attrib.cc +61 -0
  660. package/runtime/third_party/boringssl/crypto/x509/x_crl.cc +325 -0
  661. package/runtime/third_party/boringssl/crypto/x509/x_exten.cc +42 -0
  662. package/runtime/third_party/boringssl/crypto/x509/x_name.cc +407 -0
  663. package/runtime/third_party/boringssl/crypto/x509/x_pubkey.cc +199 -0
  664. package/runtime/third_party/boringssl/crypto/x509/x_req.cc +80 -0
  665. package/runtime/third_party/boringssl/crypto/x509/x_sig.cc +51 -0
  666. package/runtime/third_party/boringssl/crypto/x509/x_spki.cc +44 -0
  667. package/runtime/third_party/boringssl/crypto/x509/x_x509.cc +495 -0
  668. package/runtime/third_party/boringssl/crypto/x509/x_x509a.cc +169 -0
  669. package/runtime/third_party/boringssl/crypto/xwing/xwing.cc +257 -0
  670. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-apple.S +1326 -0
  671. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-linux.S +1327 -0
  672. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-apple.S +1252 -0
  673. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-linux.S +1253 -0
  674. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-apple.S +873 -0
  675. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-linux.S +885 -0
  676. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-apple.S +2490 -0
  677. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-linux.S +2530 -0
  678. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-apple.S +2413 -0
  679. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-linux.S +2397 -0
  680. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv7-linux.S +784 -0
  681. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-apple.S +792 -0
  682. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-linux.S +786 -0
  683. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-win.S +798 -0
  684. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-apple.S +2912 -0
  685. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-linux.S +2907 -0
  686. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-win.S +2915 -0
  687. package/runtime/third_party/boringssl/gen/bcm/armv4-mont-linux.S +932 -0
  688. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-apple.S +1440 -0
  689. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-linux.S +1440 -0
  690. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-win.S +1446 -0
  691. package/runtime/third_party/boringssl/gen/bcm/bn-586-apple.S +530 -0
  692. package/runtime/third_party/boringssl/gen/bcm/bn-586-linux.S +540 -0
  693. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-apple.S +88 -0
  694. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-linux.S +87 -0
  695. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-win.S +87 -0
  696. package/runtime/third_party/boringssl/gen/bcm/bsaes-armv7-linux.S +1520 -0
  697. package/runtime/third_party/boringssl/gen/bcm/co-586-apple.S +1256 -0
  698. package/runtime/third_party/boringssl/gen/bcm/co-586-linux.S +1264 -0
  699. package/runtime/third_party/boringssl/gen/bcm/ghash-armv4-linux.S +242 -0
  700. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-apple.S +337 -0
  701. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-linux.S +335 -0
  702. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-win.S +341 -0
  703. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-apple.S +288 -0
  704. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-linux.S +292 -0
  705. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-apple.S +426 -0
  706. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-linux.S +425 -0
  707. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-apple.S +322 -0
  708. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-linux.S +328 -0
  709. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-apple.S +1134 -0
  710. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-linux.S +1129 -0
  711. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv7-linux.S +244 -0
  712. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-apple.S +567 -0
  713. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-linux.S +563 -0
  714. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-win.S +571 -0
  715. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-apple.S +1744 -0
  716. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-linux.S +1725 -0
  717. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-win.S +1765 -0
  718. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-apple.S +4544 -0
  719. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-linux.S +4600 -0
  720. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-apple.S +310 -0
  721. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-linux.S +310 -0
  722. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-win.S +310 -0
  723. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-apple.S +321 -0
  724. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-linux.S +335 -0
  725. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-apple.S +58 -0
  726. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-linux.S +57 -0
  727. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-apple.S +1756 -0
  728. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-linux.S +1751 -0
  729. package/runtime/third_party/boringssl/gen/bcm/sha1-586-apple.S +3782 -0
  730. package/runtime/third_party/boringssl/gen/bcm/sha1-586-linux.S +3788 -0
  731. package/runtime/third_party/boringssl/gen/bcm/sha1-armv4-large-linux.S +1479 -0
  732. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-apple.S +1219 -0
  733. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-linux.S +1218 -0
  734. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-win.S +1222 -0
  735. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-apple.S +5454 -0
  736. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-linux.S +5450 -0
  737. package/runtime/third_party/boringssl/gen/bcm/sha256-586-apple.S +5593 -0
  738. package/runtime/third_party/boringssl/gen/bcm/sha256-586-linux.S +5599 -0
  739. package/runtime/third_party/boringssl/gen/bcm/sha256-armv4-linux.S +2840 -0
  740. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-apple.S +1195 -0
  741. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-linux.S +1194 -0
  742. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-win.S +1198 -0
  743. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-apple.S +4173 -0
  744. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-linux.S +4170 -0
  745. package/runtime/third_party/boringssl/gen/bcm/sha512-586-apple.S +2406 -0
  746. package/runtime/third_party/boringssl/gen/bcm/sha512-586-linux.S +2410 -0
  747. package/runtime/third_party/boringssl/gen/bcm/sha512-armv4-linux.S +1857 -0
  748. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-apple.S +1598 -0
  749. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-linux.S +1597 -0
  750. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-win.S +1601 -0
  751. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-apple.S +2979 -0
  752. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-linux.S +2978 -0
  753. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv7-linux.S +1225 -0
  754. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-apple.S +1238 -0
  755. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-linux.S +1220 -0
  756. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-win.S +1256 -0
  757. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-apple.S +680 -0
  758. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-linux.S +706 -0
  759. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-apple.S +1146 -0
  760. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-linux.S +1133 -0
  761. package/runtime/third_party/boringssl/gen/bcm/x86-mont-apple.S +216 -0
  762. package/runtime/third_party/boringssl/gen/bcm/x86-mont-linux.S +218 -0
  763. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-apple.S +1238 -0
  764. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-linux.S +1237 -0
  765. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-apple.S +3644 -0
  766. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-linux.S +3628 -0
  767. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_64_win_asm.inc +325 -0
  768. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_win_asm.inc +325 -0
  769. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-apple.S +3113 -0
  770. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-linux.S +3091 -0
  771. package/runtime/third_party/boringssl/gen/crypto/chacha-armv4-linux.S +1450 -0
  772. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-apple.S +1969 -0
  773. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-linux.S +1967 -0
  774. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-win.S +1973 -0
  775. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-apple.S +957 -0
  776. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-linux.S +961 -0
  777. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-apple.S +1608 -0
  778. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-linux.S +1611 -0
  779. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-apple.S +3010 -0
  780. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-linux.S +3008 -0
  781. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-win.S +3014 -0
  782. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-apple.S +8903 -0
  783. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-linux.S +8940 -0
  784. package/runtime/third_party/boringssl/gen/crypto/err_data.cc +1578 -0
  785. package/runtime/third_party/boringssl/gen/crypto/md5-586-apple.S +684 -0
  786. package/runtime/third_party/boringssl/gen/crypto/md5-586-linux.S +686 -0
  787. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-apple.S +690 -0
  788. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-linux.S +695 -0
  789. package/runtime/third_party/boringssl/include/openssl/aead.h +650 -0
  790. package/runtime/third_party/boringssl/include/openssl/aes.h +173 -0
  791. package/runtime/third_party/boringssl/include/openssl/arm_arch.h +24 -0
  792. package/runtime/third_party/boringssl/include/openssl/asm_base.h +219 -0
  793. package/runtime/third_party/boringssl/include/openssl/asn1.h +2002 -0
  794. package/runtime/third_party/boringssl/include/openssl/asn1_mac.h +18 -0
  795. package/runtime/third_party/boringssl/include/openssl/asn1t.h +584 -0
  796. package/runtime/third_party/boringssl/include/openssl/base.h +548 -0
  797. package/runtime/third_party/boringssl/include/openssl/base64.h +156 -0
  798. package/runtime/third_party/boringssl/include/openssl/bio.h +1061 -0
  799. package/runtime/third_party/boringssl/include/openssl/blake2.h +63 -0
  800. package/runtime/third_party/boringssl/include/openssl/blowfish.h +58 -0
  801. package/runtime/third_party/boringssl/include/openssl/bn.h +986 -0
  802. package/runtime/third_party/boringssl/include/openssl/buf.h +95 -0
  803. package/runtime/third_party/boringssl/include/openssl/buffer.h +18 -0
  804. package/runtime/third_party/boringssl/include/openssl/bytestring.h +798 -0
  805. package/runtime/third_party/boringssl/include/openssl/cast.h +91 -0
  806. package/runtime/third_party/boringssl/include/openssl/chacha.h +47 -0
  807. package/runtime/third_party/boringssl/include/openssl/cipher.h +819 -0
  808. package/runtime/third_party/boringssl/include/openssl/cmac.h +91 -0
  809. package/runtime/third_party/boringssl/include/openssl/cms.h +147 -0
  810. package/runtime/third_party/boringssl/include/openssl/conf.h +136 -0
  811. package/runtime/third_party/boringssl/include/openssl/configuration.h +18 -0
  812. package/runtime/third_party/boringssl/include/openssl/cpu.h +18 -0
  813. package/runtime/third_party/boringssl/include/openssl/crypto.h +235 -0
  814. package/runtime/third_party/boringssl/include/openssl/ctrdrbg.h +116 -0
  815. package/runtime/third_party/boringssl/include/openssl/curve25519.h +309 -0
  816. package/runtime/third_party/boringssl/include/openssl/des.h +134 -0
  817. package/runtime/third_party/boringssl/include/openssl/dh.h +336 -0
  818. package/runtime/third_party/boringssl/include/openssl/digest.h +399 -0
  819. package/runtime/third_party/boringssl/include/openssl/dsa.h +392 -0
  820. package/runtime/third_party/boringssl/include/openssl/dtls1.h +16 -0
  821. package/runtime/third_party/boringssl/include/openssl/e_os2.h +18 -0
  822. package/runtime/third_party/boringssl/include/openssl/ec.h +530 -0
  823. package/runtime/third_party/boringssl/include/openssl/ec_key.h +358 -0
  824. package/runtime/third_party/boringssl/include/openssl/ecdh.h +67 -0
  825. package/runtime/third_party/boringssl/include/openssl/ecdsa.h +242 -0
  826. package/runtime/third_party/boringssl/include/openssl/engine.h +109 -0
  827. package/runtime/third_party/boringssl/include/openssl/err.h +416 -0
  828. package/runtime/third_party/boringssl/include/openssl/evp.h +1645 -0
  829. package/runtime/third_party/boringssl/include/openssl/evp_errors.h +66 -0
  830. package/runtime/third_party/boringssl/include/openssl/ex_data.h +117 -0
  831. package/runtime/third_party/boringssl/include/openssl/hkdf.h +68 -0
  832. package/runtime/third_party/boringssl/include/openssl/hmac.h +151 -0
  833. package/runtime/third_party/boringssl/include/openssl/hpke.h +456 -0
  834. package/runtime/third_party/boringssl/include/openssl/hrss.h +108 -0
  835. package/runtime/third_party/boringssl/include/openssl/is_boringssl.h +16 -0
  836. package/runtime/third_party/boringssl/include/openssl/kdf.h +92 -0
  837. package/runtime/third_party/boringssl/include/openssl/lhash.h +18 -0
  838. package/runtime/third_party/boringssl/include/openssl/md4.h +73 -0
  839. package/runtime/third_party/boringssl/include/openssl/md5.h +67 -0
  840. package/runtime/third_party/boringssl/include/openssl/mem.h +215 -0
  841. package/runtime/third_party/boringssl/include/openssl/mldsa.h +486 -0
  842. package/runtime/third_party/boringssl/include/openssl/mlkem.h +222 -0
  843. package/runtime/third_party/boringssl/include/openssl/nid.h +5561 -0
  844. package/runtime/third_party/boringssl/include/openssl/obj.h +225 -0
  845. package/runtime/third_party/boringssl/include/openssl/obj_mac.h +18 -0
  846. package/runtime/third_party/boringssl/include/openssl/objects.h +18 -0
  847. package/runtime/third_party/boringssl/include/openssl/opensslconf.h +108 -0
  848. package/runtime/third_party/boringssl/include/openssl/opensslv.h +18 -0
  849. package/runtime/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
  850. package/runtime/third_party/boringssl/include/openssl/params.h +42 -0
  851. package/runtime/third_party/boringssl/include/openssl/pem.h +769 -0
  852. package/runtime/third_party/boringssl/include/openssl/pkcs12.h +18 -0
  853. package/runtime/third_party/boringssl/include/openssl/pkcs7.h +239 -0
  854. package/runtime/third_party/boringssl/include/openssl/pkcs8.h +267 -0
  855. package/runtime/third_party/boringssl/include/openssl/poly1305.h +52 -0
  856. package/runtime/third_party/boringssl/include/openssl/pool.h +137 -0
  857. package/runtime/third_party/boringssl/include/openssl/posix_time.h +51 -0
  858. package/runtime/third_party/boringssl/include/openssl/prefix_symbols.h +8000 -0
  859. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_S.h +633 -0
  860. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_c.h +329 -0
  861. package/runtime/third_party/boringssl/include/openssl/rand.h +138 -0
  862. package/runtime/third_party/boringssl/include/openssl/rc4.h +54 -0
  863. package/runtime/third_party/boringssl/include/openssl/ripemd.h +71 -0
  864. package/runtime/third_party/boringssl/include/openssl/rsa.h +893 -0
  865. package/runtime/third_party/boringssl/include/openssl/safestack.h +16 -0
  866. package/runtime/third_party/boringssl/include/openssl/service_indicator.h +19 -0
  867. package/runtime/third_party/boringssl/include/openssl/sha.h +108 -0
  868. package/runtime/third_party/boringssl/include/openssl/sha2.h +201 -0
  869. package/runtime/third_party/boringssl/include/openssl/siphash.h +37 -0
  870. package/runtime/third_party/boringssl/include/openssl/slhdsa.h +250 -0
  871. package/runtime/third_party/boringssl/include/openssl/span.h +376 -0
  872. package/runtime/third_party/boringssl/include/openssl/srtp.h +18 -0
  873. package/runtime/third_party/boringssl/include/openssl/ssl.h +7211 -0
  874. package/runtime/third_party/boringssl/include/openssl/ssl3.h +171 -0
  875. package/runtime/third_party/boringssl/include/openssl/stack.h +688 -0
  876. package/runtime/third_party/boringssl/include/openssl/target.h +246 -0
  877. package/runtime/third_party/boringssl/include/openssl/thread.h +114 -0
  878. package/runtime/third_party/boringssl/include/openssl/time.h +22 -0
  879. package/runtime/third_party/boringssl/include/openssl/tls1.h +263 -0
  880. package/runtime/third_party/boringssl/include/openssl/tls_prf.h +47 -0
  881. package/runtime/third_party/boringssl/include/openssl/trust_token.h +349 -0
  882. package/runtime/third_party/boringssl/include/openssl/type_check.h +37 -0
  883. package/runtime/third_party/boringssl/include/openssl/types.h +18 -0
  884. package/runtime/third_party/boringssl/include/openssl/x509.h +5404 -0
  885. package/runtime/third_party/boringssl/include/openssl/x509_vfy.h +18 -0
  886. package/runtime/third_party/boringssl/include/openssl/x509v3.h +63 -0
  887. package/runtime/third_party/boringssl/include/openssl/x509v3_errors.h +84 -0
  888. package/runtime/third_party/boringssl/include/openssl/xwing.h +115 -0
  889. package/runtime/third_party/boringssl/sources.json +696 -0
  890. package/runtime/third_party/boringssl/ssl/bio_ssl.cc +196 -0
  891. package/runtime/third_party/boringssl/ssl/d1_both.cc +1137 -0
  892. package/runtime/third_party/boringssl/ssl/d1_lib.cc +245 -0
  893. package/runtime/third_party/boringssl/ssl/d1_pkt.cc +322 -0
  894. package/runtime/third_party/boringssl/ssl/d1_srtp.cc +128 -0
  895. package/runtime/third_party/boringssl/ssl/dtls_method.cc +216 -0
  896. package/runtime/third_party/boringssl/ssl/dtls_record.cc +586 -0
  897. package/runtime/third_party/boringssl/ssl/encrypted_client_hello.cc +1110 -0
  898. package/runtime/third_party/boringssl/ssl/extensions.cc +5368 -0
  899. package/runtime/third_party/boringssl/ssl/handoff.cc +625 -0
  900. package/runtime/third_party/boringssl/ssl/handshake.cc +694 -0
  901. package/runtime/third_party/boringssl/ssl/handshake_client.cc +1958 -0
  902. package/runtime/third_party/boringssl/ssl/handshake_server.cc +1875 -0
  903. package/runtime/third_party/boringssl/ssl/internal.h +4506 -0
  904. package/runtime/third_party/boringssl/ssl/s3_both.cc +555 -0
  905. package/runtime/third_party/boringssl/ssl/s3_lib.cc +88 -0
  906. package/runtime/third_party/boringssl/ssl/s3_pkt.cc +396 -0
  907. package/runtime/third_party/boringssl/ssl/ssl_aead_ctx.cc +416 -0
  908. package/runtime/third_party/boringssl/ssl/ssl_asn1.cc +851 -0
  909. package/runtime/third_party/boringssl/ssl/ssl_buffer.cc +304 -0
  910. package/runtime/third_party/boringssl/ssl/ssl_cert.cc +723 -0
  911. package/runtime/third_party/boringssl/ssl/ssl_cipher.cc +1762 -0
  912. package/runtime/third_party/boringssl/ssl/ssl_credential.cc +913 -0
  913. package/runtime/third_party/boringssl/ssl/ssl_file.cc +375 -0
  914. package/runtime/third_party/boringssl/ssl/ssl_key_share.cc +445 -0
  915. package/runtime/third_party/boringssl/ssl/ssl_lib.cc +4132 -0
  916. package/runtime/third_party/boringssl/ssl/ssl_privkey.cc +973 -0
  917. package/runtime/third_party/boringssl/ssl/ssl_session.cc +1273 -0
  918. package/runtime/third_party/boringssl/ssl/ssl_stat.cc +162 -0
  919. package/runtime/third_party/boringssl/ssl/ssl_transcript.cc +224 -0
  920. package/runtime/third_party/boringssl/ssl/ssl_versions.cc +436 -0
  921. package/runtime/third_party/boringssl/ssl/ssl_x509.cc +1229 -0
  922. package/runtime/third_party/boringssl/ssl/t1_enc.cc +266 -0
  923. package/runtime/third_party/boringssl/ssl/tls13_both.cc +764 -0
  924. package/runtime/third_party/boringssl/ssl/tls13_client.cc +1325 -0
  925. package/runtime/third_party/boringssl/ssl/tls13_enc.cc +746 -0
  926. package/runtime/third_party/boringssl/ssl/tls13_server.cc +1623 -0
  927. package/runtime/third_party/boringssl/ssl/tls_method.cc +266 -0
  928. package/runtime/third_party/boringssl/ssl/tls_record.cc +524 -0
  929. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_mul.S +178 -0
  930. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_square.S +146 -0
  931. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_mul.S +177 -0
  932. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_sqr.S +166 -0
  933. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_bareminimum.c.inc +47 -0
  934. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_platform.c.inc +137 -0
  935. package/runtime/third_party/boringssl/third_party/fiat/curve25519_32.h +1571 -0
  936. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64.h +978 -0
  937. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_adx.h +700 -0
  938. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_msvc.h +1281 -0
  939. package/runtime/third_party/boringssl/third_party/fiat/p256_32.h +4760 -0
  940. package/runtime/third_party/boringssl/third_party/fiat/p256_64.h +1984 -0
  941. package/runtime/third_party/boringssl/third_party/fiat/p256_64_msvc.h +1939 -0
  942. package/runtime/third_party/boringssl/third_party/fiat/p256_field.c.inc +26 -0
  943. package/runtime/third_party/boringssl/third_party/fiat/p256_field_32.br.c.inc +71 -0
  944. package/runtime/third_party/boringssl/third_party/fiat/p256_field_64.br.c.inc +84 -0
  945. package/runtime/third_party/boringssl/third_party/fiat/p256_point.br.c.inc +112 -0
  946. package/runtime/third_party/quickjs-dtoa/LICENSE +0 -0
  947. package/runtime/third_party/quickjs-dtoa/README.md +0 -0
  948. package/runtime/third_party/quickjs-dtoa/dtoa.c +0 -0
  949. package/runtime/third_party/quickjs-dtoa/dtoa.h +0 -0
  950. package/runtime/third_party/quickjs-dtoa/dtoa_compat.h +0 -0
  951. package/runtime/third_party/quickjs-regexp/LICENSE +0 -0
  952. package/runtime/third_party/quickjs-regexp/README.md +0 -0
  953. package/runtime/third_party/quickjs-regexp/cutils.c +0 -0
  954. package/runtime/third_party/quickjs-regexp/cutils.h +0 -0
  955. package/runtime/third_party/quickjs-regexp/libregexp-opcode.h +0 -0
  956. package/runtime/third_party/quickjs-regexp/libregexp.c +0 -0
  957. package/runtime/third_party/quickjs-regexp/libregexp.h +0 -0
  958. package/runtime/third_party/quickjs-regexp/libunicode-table.h +0 -0
  959. package/runtime/third_party/quickjs-regexp/libunicode.c +0 -0
  960. package/runtime/third_party/quickjs-regexp/libunicode.h +0 -0
  961. package/runtime/third_party/v8-ieee754/LICENSE +0 -0
  962. package/runtime/third_party/v8-ieee754/README.md +2 -1
  963. package/runtime/third_party/v8-ieee754/convert.py +4 -0
  964. package/runtime/third_party/v8-ieee754/ieee754.c +1 -1
  965. package/runtime/third_party/v8-ieee754/ieee754.h +0 -0
  966. package/runtime/tools/regexp_compile.c +0 -0
  967. package/runtime/third_party/bearssl/LICENSE.txt +0 -21
  968. package/runtime/third_party/bearssl/README.txt +0 -136
  969. package/runtime/third_party/bearssl/VERSION +0 -1
  970. package/runtime/third_party/bearssl/inc/bearssl.h +0 -183
  971. package/runtime/third_party/bearssl/inc/bearssl_aead.h +0 -1059
  972. package/runtime/third_party/bearssl/inc/bearssl_block.h +0 -2618
  973. package/runtime/third_party/bearssl/inc/bearssl_ec.h +0 -967
  974. package/runtime/third_party/bearssl/inc/bearssl_hash.h +0 -1346
  975. package/runtime/third_party/bearssl/inc/bearssl_hmac.h +0 -241
  976. package/runtime/third_party/bearssl/inc/bearssl_kdf.h +0 -284
  977. package/runtime/third_party/bearssl/inc/bearssl_pem.h +0 -294
  978. package/runtime/third_party/bearssl/inc/bearssl_prf.h +0 -150
  979. package/runtime/third_party/bearssl/inc/bearssl_rand.h +0 -397
  980. package/runtime/third_party/bearssl/inc/bearssl_rsa.h +0 -1655
  981. package/runtime/third_party/bearssl/inc/bearssl_ssl.h +0 -4296
  982. package/runtime/third_party/bearssl/inc/bearssl_x509.h +0 -1474
  983. package/runtime/third_party/bearssl/src/aead/ccm.c +0 -346
  984. package/runtime/third_party/bearssl/src/aead/eax.c +0 -525
  985. package/runtime/third_party/bearssl/src/aead/gcm.c +0 -318
  986. package/runtime/third_party/bearssl/src/codec/ccopy.c +0 -44
  987. package/runtime/third_party/bearssl/src/codec/dec16be.c +0 -38
  988. package/runtime/third_party/bearssl/src/codec/dec16le.c +0 -38
  989. package/runtime/third_party/bearssl/src/codec/dec32be.c +0 -38
  990. package/runtime/third_party/bearssl/src/codec/dec32le.c +0 -38
  991. package/runtime/third_party/bearssl/src/codec/dec64be.c +0 -38
  992. package/runtime/third_party/bearssl/src/codec/dec64le.c +0 -38
  993. package/runtime/third_party/bearssl/src/codec/enc16be.c +0 -38
  994. package/runtime/third_party/bearssl/src/codec/enc16le.c +0 -38
  995. package/runtime/third_party/bearssl/src/codec/enc32be.c +0 -38
  996. package/runtime/third_party/bearssl/src/codec/enc32le.c +0 -38
  997. package/runtime/third_party/bearssl/src/codec/enc64be.c +0 -38
  998. package/runtime/third_party/bearssl/src/codec/enc64le.c +0 -38
  999. package/runtime/third_party/bearssl/src/codec/pemdec.c +0 -526
  1000. package/runtime/third_party/bearssl/src/codec/pemdec.t0 +0 -314
  1001. package/runtime/third_party/bearssl/src/codec/pemenc.c +0 -173
  1002. package/runtime/third_party/bearssl/src/config.h +0 -247
  1003. package/runtime/third_party/bearssl/src/ec/ec_all_m15.c +0 -121
  1004. package/runtime/third_party/bearssl/src/ec/ec_all_m31.c +0 -171
  1005. package/runtime/third_party/bearssl/src/ec/ec_c25519_i15.c +0 -398
  1006. package/runtime/third_party/bearssl/src/ec/ec_c25519_i31.c +0 -390
  1007. package/runtime/third_party/bearssl/src/ec/ec_c25519_m15.c +0 -1478
  1008. package/runtime/third_party/bearssl/src/ec/ec_c25519_m31.c +0 -800
  1009. package/runtime/third_party/bearssl/src/ec/ec_c25519_m62.c +0 -605
  1010. package/runtime/third_party/bearssl/src/ec/ec_c25519_m64.c +0 -831
  1011. package/runtime/third_party/bearssl/src/ec/ec_curve25519.c +0 -46
  1012. package/runtime/third_party/bearssl/src/ec/ec_default.c +0 -36
  1013. package/runtime/third_party/bearssl/src/ec/ec_keygen.c +0 -86
  1014. package/runtime/third_party/bearssl/src/ec/ec_p256_m15.c +0 -2124
  1015. package/runtime/third_party/bearssl/src/ec/ec_p256_m31.c +0 -1469
  1016. package/runtime/third_party/bearssl/src/ec/ec_p256_m62.c +0 -1765
  1017. package/runtime/third_party/bearssl/src/ec/ec_p256_m64.c +0 -1781
  1018. package/runtime/third_party/bearssl/src/ec/ec_prime_i15.c +0 -824
  1019. package/runtime/third_party/bearssl/src/ec/ec_prime_i31.c +0 -826
  1020. package/runtime/third_party/bearssl/src/ec/ec_pubkey.c +0 -85
  1021. package/runtime/third_party/bearssl/src/ec/ec_secp256r1.c +0 -51
  1022. package/runtime/third_party/bearssl/src/ec/ec_secp384r1.c +0 -57
  1023. package/runtime/third_party/bearssl/src/ec/ec_secp521r1.c +0 -64
  1024. package/runtime/third_party/bearssl/src/ec/ecdsa_atr.c +0 -134
  1025. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_asn1.c +0 -36
  1026. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_raw.c +0 -36
  1027. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_asn1.c +0 -36
  1028. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_raw.c +0 -36
  1029. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_bits.c +0 -47
  1030. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_asn1.c +0 -45
  1031. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_raw.c +0 -174
  1032. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_asn1.c +0 -48
  1033. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_raw.c +0 -166
  1034. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_bits.c +0 -47
  1035. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_asn1.c +0 -45
  1036. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_raw.c +0 -173
  1037. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_asn1.c +0 -48
  1038. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_raw.c +0 -165
  1039. package/runtime/third_party/bearssl/src/ec/ecdsa_rta.c +0 -121
  1040. package/runtime/third_party/bearssl/src/hash/dig_oid.c +0 -84
  1041. package/runtime/third_party/bearssl/src/hash/dig_size.c +0 -50
  1042. package/runtime/third_party/bearssl/src/hash/ghash_ctmul.c +0 -345
  1043. package/runtime/third_party/bearssl/src/hash/ghash_ctmul32.c +0 -251
  1044. package/runtime/third_party/bearssl/src/hash/ghash_ctmul64.c +0 -154
  1045. package/runtime/third_party/bearssl/src/hash/ghash_pclmul.c +0 -389
  1046. package/runtime/third_party/bearssl/src/hash/ghash_pwr8.c +0 -411
  1047. package/runtime/third_party/bearssl/src/hash/md5.c +0 -208
  1048. package/runtime/third_party/bearssl/src/hash/md5sha1.c +0 -141
  1049. package/runtime/third_party/bearssl/src/hash/mgf1.c +0 -56
  1050. package/runtime/third_party/bearssl/src/hash/multihash.c +0 -166
  1051. package/runtime/third_party/bearssl/src/hash/sha1.c +0 -191
  1052. package/runtime/third_party/bearssl/src/hash/sha2big.c +0 -285
  1053. package/runtime/third_party/bearssl/src/hash/sha2small.c +0 -341
  1054. package/runtime/third_party/bearssl/src/inner.h +0 -2577
  1055. package/runtime/third_party/bearssl/src/int/i15_add.c +0 -46
  1056. package/runtime/third_party/bearssl/src/int/i15_bitlen.c +0 -44
  1057. package/runtime/third_party/bearssl/src/int/i15_decmod.c +0 -124
  1058. package/runtime/third_party/bearssl/src/int/i15_decode.c +0 -56
  1059. package/runtime/third_party/bearssl/src/int/i15_decred.c +0 -100
  1060. package/runtime/third_party/bearssl/src/int/i15_encode.c +0 -56
  1061. package/runtime/third_party/bearssl/src/int/i15_fmont.c +0 -59
  1062. package/runtime/third_party/bearssl/src/int/i15_iszero.c +0 -39
  1063. package/runtime/third_party/bearssl/src/int/i15_moddiv.c +0 -465
  1064. package/runtime/third_party/bearssl/src/int/i15_modpow.c +0 -50
  1065. package/runtime/third_party/bearssl/src/int/i15_modpow2.c +0 -160
  1066. package/runtime/third_party/bearssl/src/int/i15_montmul.c +0 -184
  1067. package/runtime/third_party/bearssl/src/int/i15_mulacc.c +0 -61
  1068. package/runtime/third_party/bearssl/src/int/i15_muladd.c +0 -173
  1069. package/runtime/third_party/bearssl/src/int/i15_ninv15.c +0 -38
  1070. package/runtime/third_party/bearssl/src/int/i15_reduce.c +0 -66
  1071. package/runtime/third_party/bearssl/src/int/i15_rshift.c +0 -47
  1072. package/runtime/third_party/bearssl/src/int/i15_sub.c +0 -46
  1073. package/runtime/third_party/bearssl/src/int/i15_tmont.c +0 -36
  1074. package/runtime/third_party/bearssl/src/int/i31_add.c +0 -46
  1075. package/runtime/third_party/bearssl/src/int/i31_bitlen.c +0 -44
  1076. package/runtime/third_party/bearssl/src/int/i31_decmod.c +0 -124
  1077. package/runtime/third_party/bearssl/src/int/i31_decode.c +0 -57
  1078. package/runtime/third_party/bearssl/src/int/i31_decred.c +0 -103
  1079. package/runtime/third_party/bearssl/src/int/i31_encode.c +0 -79
  1080. package/runtime/third_party/bearssl/src/int/i31_fmont.c +0 -60
  1081. package/runtime/third_party/bearssl/src/int/i31_iszero.c +0 -39
  1082. package/runtime/third_party/bearssl/src/int/i31_moddiv.c +0 -488
  1083. package/runtime/third_party/bearssl/src/int/i31_modpow.c +0 -65
  1084. package/runtime/third_party/bearssl/src/int/i31_modpow2.c +0 -160
  1085. package/runtime/third_party/bearssl/src/int/i31_montmul.c +0 -127
  1086. package/runtime/third_party/bearssl/src/int/i31_mulacc.c +0 -74
  1087. package/runtime/third_party/bearssl/src/int/i31_muladd.c +0 -157
  1088. package/runtime/third_party/bearssl/src/int/i31_ninv31.c +0 -39
  1089. package/runtime/third_party/bearssl/src/int/i31_reduce.c +0 -66
  1090. package/runtime/third_party/bearssl/src/int/i31_rshift.c +0 -47
  1091. package/runtime/third_party/bearssl/src/int/i31_sub.c +0 -46
  1092. package/runtime/third_party/bearssl/src/int/i31_tmont.c +0 -36
  1093. package/runtime/third_party/bearssl/src/int/i32_add.c +0 -51
  1094. package/runtime/third_party/bearssl/src/int/i32_bitlen.c +0 -44
  1095. package/runtime/third_party/bearssl/src/int/i32_decmod.c +0 -77
  1096. package/runtime/third_party/bearssl/src/int/i32_decode.c +0 -63
  1097. package/runtime/third_party/bearssl/src/int/i32_decred.c +0 -107
  1098. package/runtime/third_party/bearssl/src/int/i32_div32.c +0 -56
  1099. package/runtime/third_party/bearssl/src/int/i32_encode.c +0 -72
  1100. package/runtime/third_party/bearssl/src/int/i32_fmont.c +0 -60
  1101. package/runtime/third_party/bearssl/src/int/i32_iszero.c +0 -39
  1102. package/runtime/third_party/bearssl/src/int/i32_modpow.c +0 -65
  1103. package/runtime/third_party/bearssl/src/int/i32_montmul.c +0 -69
  1104. package/runtime/third_party/bearssl/src/int/i32_mulacc.c +0 -56
  1105. package/runtime/third_party/bearssl/src/int/i32_muladd.c +0 -138
  1106. package/runtime/third_party/bearssl/src/int/i32_ninv32.c +0 -39
  1107. package/runtime/third_party/bearssl/src/int/i32_reduce.c +0 -66
  1108. package/runtime/third_party/bearssl/src/int/i32_sub.c +0 -51
  1109. package/runtime/third_party/bearssl/src/int/i32_tmont.c +0 -36
  1110. package/runtime/third_party/bearssl/src/int/i62_modpow2.c +0 -493
  1111. package/runtime/third_party/bearssl/src/kdf/hkdf.c +0 -107
  1112. package/runtime/third_party/bearssl/src/kdf/shake.c +0 -590
  1113. package/runtime/third_party/bearssl/src/mac/hmac.c +0 -122
  1114. package/runtime/third_party/bearssl/src/mac/hmac_ct.c +0 -193
  1115. package/runtime/third_party/bearssl/src/rand/aesctr_drbg.c +0 -206
  1116. package/runtime/third_party/bearssl/src/rand/hmac_drbg.c +0 -157
  1117. package/runtime/third_party/bearssl/src/rand/sysrng.c +0 -252
  1118. package/runtime/third_party/bearssl/src/rsa/rsa_default_keygen.c +0 -38
  1119. package/runtime/third_party/bearssl/src/rsa/rsa_default_modulus.c +0 -36
  1120. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_decrypt.c +0 -38
  1121. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_encrypt.c +0 -38
  1122. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_sign.c +0 -38
  1123. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_vrfy.c +0 -38
  1124. package/runtime/third_party/bearssl/src/rsa/rsa_default_priv.c +0 -38
  1125. package/runtime/third_party/bearssl/src/rsa/rsa_default_privexp.c +0 -36
  1126. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_sign.c +0 -38
  1127. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_vrfy.c +0 -38
  1128. package/runtime/third_party/bearssl/src/rsa/rsa_default_pub.c +0 -38
  1129. package/runtime/third_party/bearssl/src/rsa/rsa_default_pubexp.c +0 -36
  1130. package/runtime/third_party/bearssl/src/rsa/rsa_i15_keygen.c +0 -583
  1131. package/runtime/third_party/bearssl/src/rsa/rsa_i15_modulus.c +0 -99
  1132. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_decrypt.c +0 -41
  1133. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_encrypt.c +0 -44
  1134. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_sign.c +0 -37
  1135. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_vrfy.c +0 -43
  1136. package/runtime/third_party/bearssl/src/rsa/rsa_i15_priv.c +0 -209
  1137. package/runtime/third_party/bearssl/src/rsa/rsa_i15_privexp.c +0 -320
  1138. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_sign.c +0 -40
  1139. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_vrfy.c +0 -44
  1140. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pub.c +0 -113
  1141. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pubexp.c +0 -152
  1142. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen.c +0 -37
  1143. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen_inner.c +0 -608
  1144. package/runtime/third_party/bearssl/src/rsa/rsa_i31_modulus.c +0 -99
  1145. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_decrypt.c +0 -41
  1146. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_encrypt.c +0 -44
  1147. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_sign.c +0 -37
  1148. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_vrfy.c +0 -43
  1149. package/runtime/third_party/bearssl/src/rsa/rsa_i31_priv.c +0 -203
  1150. package/runtime/third_party/bearssl/src/rsa/rsa_i31_privexp.c +0 -318
  1151. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_sign.c +0 -40
  1152. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_vrfy.c +0 -44
  1153. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pub.c +0 -106
  1154. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pubexp.c +0 -152
  1155. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_decrypt.c +0 -41
  1156. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_encrypt.c +0 -44
  1157. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_sign.c +0 -37
  1158. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_vrfy.c +0 -43
  1159. package/runtime/third_party/bearssl/src/rsa/rsa_i32_priv.c +0 -160
  1160. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_sign.c +0 -40
  1161. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_vrfy.c +0 -44
  1162. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pub.c +0 -77
  1163. package/runtime/third_party/bearssl/src/rsa/rsa_i62_keygen.c +0 -57
  1164. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_decrypt.c +0 -61
  1165. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_encrypt.c +0 -64
  1166. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_sign.c +0 -57
  1167. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_vrfy.c +0 -63
  1168. package/runtime/third_party/bearssl/src/rsa/rsa_i62_priv.c +0 -223
  1169. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_sign.c +0 -60
  1170. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_vrfy.c +0 -64
  1171. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pub.c +0 -125
  1172. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_pad.c +0 -112
  1173. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_unpad.c +0 -145
  1174. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_pad.c +0 -100
  1175. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_unpad.c +0 -121
  1176. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_pad.c +0 -106
  1177. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_unpad.c +0 -121
  1178. package/runtime/third_party/bearssl/src/rsa/rsa_ssl_decrypt.c +0 -52
  1179. package/runtime/third_party/bearssl/src/settings.c +0 -306
  1180. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcdec.c +0 -69
  1181. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcenc.c +0 -67
  1182. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctr.c +0 -84
  1183. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctrcbc.c +0 -142
  1184. package/runtime/third_party/bearssl/src/symcipher/aes_big_dec.c +0 -254
  1185. package/runtime/third_party/bearssl/src/symcipher/aes_big_enc.c +0 -157
  1186. package/runtime/third_party/bearssl/src/symcipher/aes_common.c +0 -112
  1187. package/runtime/third_party/bearssl/src/symcipher/aes_ct.c +0 -328
  1188. package/runtime/third_party/bearssl/src/symcipher/aes_ct64.c +0 -398
  1189. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcdec.c +0 -104
  1190. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcenc.c +0 -81
  1191. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctr.c +0 -114
  1192. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctrcbc.c +0 -433
  1193. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_dec.c +0 -159
  1194. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_enc.c +0 -115
  1195. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcdec.c +0 -111
  1196. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcenc.c +0 -91
  1197. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctr.c +0 -116
  1198. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctrcbc.c +0 -422
  1199. package/runtime/third_party/bearssl/src/symcipher/aes_ct_dec.c +0 -170
  1200. package/runtime/third_party/bearssl/src/symcipher/aes_ct_enc.c +0 -112
  1201. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8.c +0 -445
  1202. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcdec.c +0 -670
  1203. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcenc.c +0 -417
  1204. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctr.c +0 -717
  1205. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctrcbc.c +0 -946
  1206. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcdec.c +0 -69
  1207. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcenc.c +0 -67
  1208. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctr.c +0 -84
  1209. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctrcbc.c +0 -142
  1210. package/runtime/third_party/bearssl/src/symcipher/aes_small_dec.c +0 -176
  1211. package/runtime/third_party/bearssl/src/symcipher/aes_small_enc.c +0 -129
  1212. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni.c +0 -240
  1213. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcdec.c +0 -223
  1214. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcenc.c +0 -122
  1215. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctr.c +0 -211
  1216. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctrcbc.c +0 -596
  1217. package/runtime/third_party/bearssl/src/symcipher/chacha20_ct.c +0 -106
  1218. package/runtime/third_party/bearssl/src/symcipher/chacha20_sse2.c +0 -237
  1219. package/runtime/third_party/bearssl/src/symcipher/des_ct.c +0 -411
  1220. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcdec.c +0 -87
  1221. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcenc.c +0 -69
  1222. package/runtime/third_party/bearssl/src/symcipher/des_support.c +0 -166
  1223. package/runtime/third_party/bearssl/src/symcipher/des_tab.c +0 -310
  1224. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcdec.c +0 -85
  1225. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcenc.c +0 -67
  1226. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul.c +0 -260
  1227. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul32.c +0 -297
  1228. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmulq.c +0 -475
  1229. package/runtime/third_party/bearssl/src/symcipher/poly1305_i15.c +0 -221
  1230. package/runtime/third_party/bearssl/src/x509/asn1.t0 +0 -757
  1231. package/runtime/third_party/bearssl/src/x509/asn1enc.c +0 -93
  1232. package/runtime/third_party/bearssl/src/x509/encode_ec_pk8der.c +0 -110
  1233. package/runtime/third_party/bearssl/src/x509/encode_ec_rawder.c +0 -161
  1234. package/runtime/third_party/bearssl/src/x509/encode_rsa_pk8der.c +0 -97
  1235. package/runtime/third_party/bearssl/src/x509/encode_rsa_rawder.c +0 -96
  1236. package/runtime/third_party/bearssl/src/x509/skey_decoder.c +0 -653
  1237. package/runtime/third_party/bearssl/src/x509/skey_decoder.t0 +0 -376
  1238. package/runtime/third_party/bearssl/src/x509/x509_decoder.c +0 -776
  1239. package/runtime/third_party/bearssl/src/x509/x509_decoder.t0 +0 -324
  1240. package/runtime/third_party/bearssl/src/x509/x509_knownkey.c +0 -105
  1241. package/runtime/third_party/bearssl/src/x509/x509_minimal.c +0 -1722
  1242. package/runtime/third_party/bearssl/src/x509/x509_minimal.t0 +0 -1526
  1243. package/runtime/third_party/bearssl/src/x509/x509_minimal_full.c +0 -59
@@ -0,0 +1,1973 @@
1
+ // This file is generated from a similarly-named Perl script in the BoringSSL
2
+ // source tree. Do not edit by hand.
3
+
4
+ #include <openssl/asm_base.h>
5
+
6
+ #if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_AARCH64) && defined(_WIN32)
7
+ .section .rodata
8
+
9
+ .align 5
10
+ chacha_constants:
11
+ Lsigma:
12
+ .quad 0x3320646e61707865,0x6b20657479622d32 // endian-neutral
13
+ Lone:
14
+ .long 1,0,0,0
15
+ .byte 67,104,97,67,104,97,50,48,32,102,111,114,32,65,82,77,118,56,44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
16
+ .align 2
17
+
18
+ .text
19
+
20
+ .globl ChaCha20_ctr32_nohw
21
+
22
+ .def ChaCha20_ctr32_nohw
23
+ .type 32
24
+ .endef
25
+ .align 5
26
+ ChaCha20_ctr32_nohw:
27
+ AARCH64_SIGN_LINK_REGISTER
28
+ stp x29,x30,[sp,#-96]!
29
+ add x29,sp,#0
30
+
31
+ adrp x5,Lsigma
32
+ add x5,x5,:lo12:Lsigma
33
+ stp x19,x20,[sp,#16]
34
+ stp x21,x22,[sp,#32]
35
+ stp x23,x24,[sp,#48]
36
+ stp x25,x26,[sp,#64]
37
+ stp x27,x28,[sp,#80]
38
+ sub sp,sp,#64
39
+
40
+ ldp x22,x23,[x5] // load sigma
41
+ ldp x24,x25,[x3] // load key
42
+ ldp x26,x27,[x3,#16]
43
+ ldp x28,x30,[x4] // load counter
44
+ #ifdef __AARCH64EB__
45
+ ror x24,x24,#32
46
+ ror x25,x25,#32
47
+ ror x26,x26,#32
48
+ ror x27,x27,#32
49
+ ror x28,x28,#32
50
+ ror x30,x30,#32
51
+ #endif
52
+
53
+ Loop_outer:
54
+ mov w5,w22 // unpack key block
55
+ lsr x6,x22,#32
56
+ mov w7,w23
57
+ lsr x8,x23,#32
58
+ mov w9,w24
59
+ lsr x10,x24,#32
60
+ mov w11,w25
61
+ lsr x12,x25,#32
62
+ mov w13,w26
63
+ lsr x14,x26,#32
64
+ mov w15,w27
65
+ lsr x16,x27,#32
66
+ mov w17,w28
67
+ lsr x19,x28,#32
68
+ mov w20,w30
69
+ lsr x21,x30,#32
70
+
71
+ mov x4,#10
72
+ subs x2,x2,#64
73
+ Loop:
74
+ sub x4,x4,#1
75
+ add w5,w5,w9
76
+ add w6,w6,w10
77
+ add w7,w7,w11
78
+ add w8,w8,w12
79
+ eor w17,w17,w5
80
+ eor w19,w19,w6
81
+ eor w20,w20,w7
82
+ eor w21,w21,w8
83
+ ror w17,w17,#16
84
+ ror w19,w19,#16
85
+ ror w20,w20,#16
86
+ ror w21,w21,#16
87
+ add w13,w13,w17
88
+ add w14,w14,w19
89
+ add w15,w15,w20
90
+ add w16,w16,w21
91
+ eor w9,w9,w13
92
+ eor w10,w10,w14
93
+ eor w11,w11,w15
94
+ eor w12,w12,w16
95
+ ror w9,w9,#20
96
+ ror w10,w10,#20
97
+ ror w11,w11,#20
98
+ ror w12,w12,#20
99
+ add w5,w5,w9
100
+ add w6,w6,w10
101
+ add w7,w7,w11
102
+ add w8,w8,w12
103
+ eor w17,w17,w5
104
+ eor w19,w19,w6
105
+ eor w20,w20,w7
106
+ eor w21,w21,w8
107
+ ror w17,w17,#24
108
+ ror w19,w19,#24
109
+ ror w20,w20,#24
110
+ ror w21,w21,#24
111
+ add w13,w13,w17
112
+ add w14,w14,w19
113
+ add w15,w15,w20
114
+ add w16,w16,w21
115
+ eor w9,w9,w13
116
+ eor w10,w10,w14
117
+ eor w11,w11,w15
118
+ eor w12,w12,w16
119
+ ror w9,w9,#25
120
+ ror w10,w10,#25
121
+ ror w11,w11,#25
122
+ ror w12,w12,#25
123
+ add w5,w5,w10
124
+ add w6,w6,w11
125
+ add w7,w7,w12
126
+ add w8,w8,w9
127
+ eor w21,w21,w5
128
+ eor w17,w17,w6
129
+ eor w19,w19,w7
130
+ eor w20,w20,w8
131
+ ror w21,w21,#16
132
+ ror w17,w17,#16
133
+ ror w19,w19,#16
134
+ ror w20,w20,#16
135
+ add w15,w15,w21
136
+ add w16,w16,w17
137
+ add w13,w13,w19
138
+ add w14,w14,w20
139
+ eor w10,w10,w15
140
+ eor w11,w11,w16
141
+ eor w12,w12,w13
142
+ eor w9,w9,w14
143
+ ror w10,w10,#20
144
+ ror w11,w11,#20
145
+ ror w12,w12,#20
146
+ ror w9,w9,#20
147
+ add w5,w5,w10
148
+ add w6,w6,w11
149
+ add w7,w7,w12
150
+ add w8,w8,w9
151
+ eor w21,w21,w5
152
+ eor w17,w17,w6
153
+ eor w19,w19,w7
154
+ eor w20,w20,w8
155
+ ror w21,w21,#24
156
+ ror w17,w17,#24
157
+ ror w19,w19,#24
158
+ ror w20,w20,#24
159
+ add w15,w15,w21
160
+ add w16,w16,w17
161
+ add w13,w13,w19
162
+ add w14,w14,w20
163
+ eor w10,w10,w15
164
+ eor w11,w11,w16
165
+ eor w12,w12,w13
166
+ eor w9,w9,w14
167
+ ror w10,w10,#25
168
+ ror w11,w11,#25
169
+ ror w12,w12,#25
170
+ ror w9,w9,#25
171
+ cbnz x4,Loop
172
+
173
+ add w5,w5,w22 // accumulate key block
174
+ add x6,x6,x22,lsr#32
175
+ add w7,w7,w23
176
+ add x8,x8,x23,lsr#32
177
+ add w9,w9,w24
178
+ add x10,x10,x24,lsr#32
179
+ add w11,w11,w25
180
+ add x12,x12,x25,lsr#32
181
+ add w13,w13,w26
182
+ add x14,x14,x26,lsr#32
183
+ add w15,w15,w27
184
+ add x16,x16,x27,lsr#32
185
+ add w17,w17,w28
186
+ add x19,x19,x28,lsr#32
187
+ add w20,w20,w30
188
+ add x21,x21,x30,lsr#32
189
+
190
+ b.lo Ltail
191
+
192
+ add x5,x5,x6,lsl#32 // pack
193
+ add x7,x7,x8,lsl#32
194
+ ldp x6,x8,[x1,#0] // load input
195
+ add x9,x9,x10,lsl#32
196
+ add x11,x11,x12,lsl#32
197
+ ldp x10,x12,[x1,#16]
198
+ add x13,x13,x14,lsl#32
199
+ add x15,x15,x16,lsl#32
200
+ ldp x14,x16,[x1,#32]
201
+ add x17,x17,x19,lsl#32
202
+ add x20,x20,x21,lsl#32
203
+ ldp x19,x21,[x1,#48]
204
+ add x1,x1,#64
205
+ #ifdef __AARCH64EB__
206
+ rev x5,x5
207
+ rev x7,x7
208
+ rev x9,x9
209
+ rev x11,x11
210
+ rev x13,x13
211
+ rev x15,x15
212
+ rev x17,x17
213
+ rev x20,x20
214
+ #endif
215
+ eor x5,x5,x6
216
+ eor x7,x7,x8
217
+ eor x9,x9,x10
218
+ eor x11,x11,x12
219
+ eor x13,x13,x14
220
+ eor x15,x15,x16
221
+ eor x17,x17,x19
222
+ eor x20,x20,x21
223
+
224
+ stp x5,x7,[x0,#0] // store output
225
+ add x28,x28,#1 // increment counter
226
+ stp x9,x11,[x0,#16]
227
+ stp x13,x15,[x0,#32]
228
+ stp x17,x20,[x0,#48]
229
+ add x0,x0,#64
230
+
231
+ b.hi Loop_outer
232
+
233
+ ldp x19,x20,[x29,#16]
234
+ add sp,sp,#64
235
+ ldp x21,x22,[x29,#32]
236
+ ldp x23,x24,[x29,#48]
237
+ ldp x25,x26,[x29,#64]
238
+ ldp x27,x28,[x29,#80]
239
+ ldp x29,x30,[sp],#96
240
+ AARCH64_VALIDATE_LINK_REGISTER
241
+ ret
242
+
243
+ .align 4
244
+ Ltail:
245
+ add x2,x2,#64
246
+ Less_than_64:
247
+ sub x0,x0,#1
248
+ add x1,x1,x2
249
+ add x0,x0,x2
250
+ add x4,sp,x2
251
+ neg x2,x2
252
+
253
+ add x5,x5,x6,lsl#32 // pack
254
+ add x7,x7,x8,lsl#32
255
+ add x9,x9,x10,lsl#32
256
+ add x11,x11,x12,lsl#32
257
+ add x13,x13,x14,lsl#32
258
+ add x15,x15,x16,lsl#32
259
+ add x17,x17,x19,lsl#32
260
+ add x20,x20,x21,lsl#32
261
+ #ifdef __AARCH64EB__
262
+ rev x5,x5
263
+ rev x7,x7
264
+ rev x9,x9
265
+ rev x11,x11
266
+ rev x13,x13
267
+ rev x15,x15
268
+ rev x17,x17
269
+ rev x20,x20
270
+ #endif
271
+ stp x5,x7,[sp,#0]
272
+ stp x9,x11,[sp,#16]
273
+ stp x13,x15,[sp,#32]
274
+ stp x17,x20,[sp,#48]
275
+
276
+ Loop_tail:
277
+ ldrb w10,[x1,x2]
278
+ ldrb w11,[x4,x2]
279
+ add x2,x2,#1
280
+ eor w10,w10,w11
281
+ strb w10,[x0,x2]
282
+ cbnz x2,Loop_tail
283
+
284
+ stp xzr,xzr,[sp,#0]
285
+ stp xzr,xzr,[sp,#16]
286
+ stp xzr,xzr,[sp,#32]
287
+ stp xzr,xzr,[sp,#48]
288
+
289
+ ldp x19,x20,[x29,#16]
290
+ add sp,sp,#64
291
+ ldp x21,x22,[x29,#32]
292
+ ldp x23,x24,[x29,#48]
293
+ ldp x25,x26,[x29,#64]
294
+ ldp x27,x28,[x29,#80]
295
+ ldp x29,x30,[sp],#96
296
+ AARCH64_VALIDATE_LINK_REGISTER
297
+ ret
298
+
299
+
300
+ .globl ChaCha20_ctr32_neon
301
+
302
+ .def ChaCha20_ctr32_neon
303
+ .type 32
304
+ .endef
305
+ .align 5
306
+ ChaCha20_ctr32_neon:
307
+ AARCH64_SIGN_LINK_REGISTER
308
+ stp x29,x30,[sp,#-96]!
309
+ add x29,sp,#0
310
+
311
+ adrp x5,Lsigma
312
+ add x5,x5,:lo12:Lsigma
313
+ stp x19,x20,[sp,#16]
314
+ stp x21,x22,[sp,#32]
315
+ stp x23,x24,[sp,#48]
316
+ stp x25,x26,[sp,#64]
317
+ stp x27,x28,[sp,#80]
318
+ cmp x2,#512
319
+ b.hs L512_or_more_neon
320
+
321
+ sub sp,sp,#64
322
+
323
+ ldp x22,x23,[x5] // load sigma
324
+ ld1 {v24.4s},[x5],#16
325
+ ldp x24,x25,[x3] // load key
326
+ ldp x26,x27,[x3,#16]
327
+ ld1 {v25.4s,v26.4s},[x3]
328
+ ldp x28,x30,[x4] // load counter
329
+ ld1 {v27.4s},[x4]
330
+ ld1 {v31.4s},[x5]
331
+ #ifdef __AARCH64EB__
332
+ rev64 v24.4s,v24.4s
333
+ ror x24,x24,#32
334
+ ror x25,x25,#32
335
+ ror x26,x26,#32
336
+ ror x27,x27,#32
337
+ ror x28,x28,#32
338
+ ror x30,x30,#32
339
+ #endif
340
+ add v27.4s,v27.4s,v31.4s // += 1
341
+ add v28.4s,v27.4s,v31.4s
342
+ add v29.4s,v28.4s,v31.4s
343
+ shl v31.4s,v31.4s,#2 // 1 -> 4
344
+
345
+ Loop_outer_neon:
346
+ mov w5,w22 // unpack key block
347
+ lsr x6,x22,#32
348
+ mov v0.16b,v24.16b
349
+ mov w7,w23
350
+ lsr x8,x23,#32
351
+ mov v4.16b,v24.16b
352
+ mov w9,w24
353
+ lsr x10,x24,#32
354
+ mov v16.16b,v24.16b
355
+ mov w11,w25
356
+ mov v1.16b,v25.16b
357
+ lsr x12,x25,#32
358
+ mov v5.16b,v25.16b
359
+ mov w13,w26
360
+ mov v17.16b,v25.16b
361
+ lsr x14,x26,#32
362
+ mov v3.16b,v27.16b
363
+ mov w15,w27
364
+ mov v7.16b,v28.16b
365
+ lsr x16,x27,#32
366
+ mov v19.16b,v29.16b
367
+ mov w17,w28
368
+ mov v2.16b,v26.16b
369
+ lsr x19,x28,#32
370
+ mov v6.16b,v26.16b
371
+ mov w20,w30
372
+ mov v18.16b,v26.16b
373
+ lsr x21,x30,#32
374
+
375
+ mov x4,#10
376
+ subs x2,x2,#256
377
+ Loop_neon:
378
+ sub x4,x4,#1
379
+ add v0.4s,v0.4s,v1.4s
380
+ add w5,w5,w9
381
+ add v4.4s,v4.4s,v5.4s
382
+ add w6,w6,w10
383
+ add v16.4s,v16.4s,v17.4s
384
+ add w7,w7,w11
385
+ eor v3.16b,v3.16b,v0.16b
386
+ add w8,w8,w12
387
+ eor v7.16b,v7.16b,v4.16b
388
+ eor w17,w17,w5
389
+ eor v19.16b,v19.16b,v16.16b
390
+ eor w19,w19,w6
391
+ rev32 v3.8h,v3.8h
392
+ eor w20,w20,w7
393
+ rev32 v7.8h,v7.8h
394
+ eor w21,w21,w8
395
+ rev32 v19.8h,v19.8h
396
+ ror w17,w17,#16
397
+ add v2.4s,v2.4s,v3.4s
398
+ ror w19,w19,#16
399
+ add v6.4s,v6.4s,v7.4s
400
+ ror w20,w20,#16
401
+ add v18.4s,v18.4s,v19.4s
402
+ ror w21,w21,#16
403
+ eor v20.16b,v1.16b,v2.16b
404
+ add w13,w13,w17
405
+ eor v21.16b,v5.16b,v6.16b
406
+ add w14,w14,w19
407
+ eor v22.16b,v17.16b,v18.16b
408
+ add w15,w15,w20
409
+ ushr v1.4s,v20.4s,#20
410
+ add w16,w16,w21
411
+ ushr v5.4s,v21.4s,#20
412
+ eor w9,w9,w13
413
+ ushr v17.4s,v22.4s,#20
414
+ eor w10,w10,w14
415
+ sli v1.4s,v20.4s,#12
416
+ eor w11,w11,w15
417
+ sli v5.4s,v21.4s,#12
418
+ eor w12,w12,w16
419
+ sli v17.4s,v22.4s,#12
420
+ ror w9,w9,#20
421
+ add v0.4s,v0.4s,v1.4s
422
+ ror w10,w10,#20
423
+ add v4.4s,v4.4s,v5.4s
424
+ ror w11,w11,#20
425
+ add v16.4s,v16.4s,v17.4s
426
+ ror w12,w12,#20
427
+ eor v20.16b,v3.16b,v0.16b
428
+ add w5,w5,w9
429
+ eor v21.16b,v7.16b,v4.16b
430
+ add w6,w6,w10
431
+ eor v22.16b,v19.16b,v16.16b
432
+ add w7,w7,w11
433
+ ushr v3.4s,v20.4s,#24
434
+ add w8,w8,w12
435
+ ushr v7.4s,v21.4s,#24
436
+ eor w17,w17,w5
437
+ ushr v19.4s,v22.4s,#24
438
+ eor w19,w19,w6
439
+ sli v3.4s,v20.4s,#8
440
+ eor w20,w20,w7
441
+ sli v7.4s,v21.4s,#8
442
+ eor w21,w21,w8
443
+ sli v19.4s,v22.4s,#8
444
+ ror w17,w17,#24
445
+ add v2.4s,v2.4s,v3.4s
446
+ ror w19,w19,#24
447
+ add v6.4s,v6.4s,v7.4s
448
+ ror w20,w20,#24
449
+ add v18.4s,v18.4s,v19.4s
450
+ ror w21,w21,#24
451
+ eor v20.16b,v1.16b,v2.16b
452
+ add w13,w13,w17
453
+ eor v21.16b,v5.16b,v6.16b
454
+ add w14,w14,w19
455
+ eor v22.16b,v17.16b,v18.16b
456
+ add w15,w15,w20
457
+ ushr v1.4s,v20.4s,#25
458
+ add w16,w16,w21
459
+ ushr v5.4s,v21.4s,#25
460
+ eor w9,w9,w13
461
+ ushr v17.4s,v22.4s,#25
462
+ eor w10,w10,w14
463
+ sli v1.4s,v20.4s,#7
464
+ eor w11,w11,w15
465
+ sli v5.4s,v21.4s,#7
466
+ eor w12,w12,w16
467
+ sli v17.4s,v22.4s,#7
468
+ ror w9,w9,#25
469
+ ext v2.16b,v2.16b,v2.16b,#8
470
+ ror w10,w10,#25
471
+ ext v6.16b,v6.16b,v6.16b,#8
472
+ ror w11,w11,#25
473
+ ext v18.16b,v18.16b,v18.16b,#8
474
+ ror w12,w12,#25
475
+ ext v3.16b,v3.16b,v3.16b,#12
476
+ ext v7.16b,v7.16b,v7.16b,#12
477
+ ext v19.16b,v19.16b,v19.16b,#12
478
+ ext v1.16b,v1.16b,v1.16b,#4
479
+ ext v5.16b,v5.16b,v5.16b,#4
480
+ ext v17.16b,v17.16b,v17.16b,#4
481
+ add v0.4s,v0.4s,v1.4s
482
+ add w5,w5,w10
483
+ add v4.4s,v4.4s,v5.4s
484
+ add w6,w6,w11
485
+ add v16.4s,v16.4s,v17.4s
486
+ add w7,w7,w12
487
+ eor v3.16b,v3.16b,v0.16b
488
+ add w8,w8,w9
489
+ eor v7.16b,v7.16b,v4.16b
490
+ eor w21,w21,w5
491
+ eor v19.16b,v19.16b,v16.16b
492
+ eor w17,w17,w6
493
+ rev32 v3.8h,v3.8h
494
+ eor w19,w19,w7
495
+ rev32 v7.8h,v7.8h
496
+ eor w20,w20,w8
497
+ rev32 v19.8h,v19.8h
498
+ ror w21,w21,#16
499
+ add v2.4s,v2.4s,v3.4s
500
+ ror w17,w17,#16
501
+ add v6.4s,v6.4s,v7.4s
502
+ ror w19,w19,#16
503
+ add v18.4s,v18.4s,v19.4s
504
+ ror w20,w20,#16
505
+ eor v20.16b,v1.16b,v2.16b
506
+ add w15,w15,w21
507
+ eor v21.16b,v5.16b,v6.16b
508
+ add w16,w16,w17
509
+ eor v22.16b,v17.16b,v18.16b
510
+ add w13,w13,w19
511
+ ushr v1.4s,v20.4s,#20
512
+ add w14,w14,w20
513
+ ushr v5.4s,v21.4s,#20
514
+ eor w10,w10,w15
515
+ ushr v17.4s,v22.4s,#20
516
+ eor w11,w11,w16
517
+ sli v1.4s,v20.4s,#12
518
+ eor w12,w12,w13
519
+ sli v5.4s,v21.4s,#12
520
+ eor w9,w9,w14
521
+ sli v17.4s,v22.4s,#12
522
+ ror w10,w10,#20
523
+ add v0.4s,v0.4s,v1.4s
524
+ ror w11,w11,#20
525
+ add v4.4s,v4.4s,v5.4s
526
+ ror w12,w12,#20
527
+ add v16.4s,v16.4s,v17.4s
528
+ ror w9,w9,#20
529
+ eor v20.16b,v3.16b,v0.16b
530
+ add w5,w5,w10
531
+ eor v21.16b,v7.16b,v4.16b
532
+ add w6,w6,w11
533
+ eor v22.16b,v19.16b,v16.16b
534
+ add w7,w7,w12
535
+ ushr v3.4s,v20.4s,#24
536
+ add w8,w8,w9
537
+ ushr v7.4s,v21.4s,#24
538
+ eor w21,w21,w5
539
+ ushr v19.4s,v22.4s,#24
540
+ eor w17,w17,w6
541
+ sli v3.4s,v20.4s,#8
542
+ eor w19,w19,w7
543
+ sli v7.4s,v21.4s,#8
544
+ eor w20,w20,w8
545
+ sli v19.4s,v22.4s,#8
546
+ ror w21,w21,#24
547
+ add v2.4s,v2.4s,v3.4s
548
+ ror w17,w17,#24
549
+ add v6.4s,v6.4s,v7.4s
550
+ ror w19,w19,#24
551
+ add v18.4s,v18.4s,v19.4s
552
+ ror w20,w20,#24
553
+ eor v20.16b,v1.16b,v2.16b
554
+ add w15,w15,w21
555
+ eor v21.16b,v5.16b,v6.16b
556
+ add w16,w16,w17
557
+ eor v22.16b,v17.16b,v18.16b
558
+ add w13,w13,w19
559
+ ushr v1.4s,v20.4s,#25
560
+ add w14,w14,w20
561
+ ushr v5.4s,v21.4s,#25
562
+ eor w10,w10,w15
563
+ ushr v17.4s,v22.4s,#25
564
+ eor w11,w11,w16
565
+ sli v1.4s,v20.4s,#7
566
+ eor w12,w12,w13
567
+ sli v5.4s,v21.4s,#7
568
+ eor w9,w9,w14
569
+ sli v17.4s,v22.4s,#7
570
+ ror w10,w10,#25
571
+ ext v2.16b,v2.16b,v2.16b,#8
572
+ ror w11,w11,#25
573
+ ext v6.16b,v6.16b,v6.16b,#8
574
+ ror w12,w12,#25
575
+ ext v18.16b,v18.16b,v18.16b,#8
576
+ ror w9,w9,#25
577
+ ext v3.16b,v3.16b,v3.16b,#4
578
+ ext v7.16b,v7.16b,v7.16b,#4
579
+ ext v19.16b,v19.16b,v19.16b,#4
580
+ ext v1.16b,v1.16b,v1.16b,#12
581
+ ext v5.16b,v5.16b,v5.16b,#12
582
+ ext v17.16b,v17.16b,v17.16b,#12
583
+ cbnz x4,Loop_neon
584
+
585
+ add w5,w5,w22 // accumulate key block
586
+ add v0.4s,v0.4s,v24.4s
587
+ add x6,x6,x22,lsr#32
588
+ add v4.4s,v4.4s,v24.4s
589
+ add w7,w7,w23
590
+ add v16.4s,v16.4s,v24.4s
591
+ add x8,x8,x23,lsr#32
592
+ add v2.4s,v2.4s,v26.4s
593
+ add w9,w9,w24
594
+ add v6.4s,v6.4s,v26.4s
595
+ add x10,x10,x24,lsr#32
596
+ add v18.4s,v18.4s,v26.4s
597
+ add w11,w11,w25
598
+ add v3.4s,v3.4s,v27.4s
599
+ add x12,x12,x25,lsr#32
600
+ add w13,w13,w26
601
+ add v7.4s,v7.4s,v28.4s
602
+ add x14,x14,x26,lsr#32
603
+ add w15,w15,w27
604
+ add v19.4s,v19.4s,v29.4s
605
+ add x16,x16,x27,lsr#32
606
+ add w17,w17,w28
607
+ add v1.4s,v1.4s,v25.4s
608
+ add x19,x19,x28,lsr#32
609
+ add w20,w20,w30
610
+ add v5.4s,v5.4s,v25.4s
611
+ add x21,x21,x30,lsr#32
612
+ add v17.4s,v17.4s,v25.4s
613
+
614
+ b.lo Ltail_neon
615
+
616
+ add x5,x5,x6,lsl#32 // pack
617
+ add x7,x7,x8,lsl#32
618
+ ldp x6,x8,[x1,#0] // load input
619
+ add x9,x9,x10,lsl#32
620
+ add x11,x11,x12,lsl#32
621
+ ldp x10,x12,[x1,#16]
622
+ add x13,x13,x14,lsl#32
623
+ add x15,x15,x16,lsl#32
624
+ ldp x14,x16,[x1,#32]
625
+ add x17,x17,x19,lsl#32
626
+ add x20,x20,x21,lsl#32
627
+ ldp x19,x21,[x1,#48]
628
+ add x1,x1,#64
629
+ #ifdef __AARCH64EB__
630
+ rev x5,x5
631
+ rev x7,x7
632
+ rev x9,x9
633
+ rev x11,x11
634
+ rev x13,x13
635
+ rev x15,x15
636
+ rev x17,x17
637
+ rev x20,x20
638
+ #endif
639
+ ld1 {v20.16b,v21.16b,v22.16b,v23.16b},[x1],#64
640
+ eor x5,x5,x6
641
+ eor x7,x7,x8
642
+ eor x9,x9,x10
643
+ eor x11,x11,x12
644
+ eor x13,x13,x14
645
+ eor v0.16b,v0.16b,v20.16b
646
+ eor x15,x15,x16
647
+ eor v1.16b,v1.16b,v21.16b
648
+ eor x17,x17,x19
649
+ eor v2.16b,v2.16b,v22.16b
650
+ eor x20,x20,x21
651
+ eor v3.16b,v3.16b,v23.16b
652
+ ld1 {v20.16b,v21.16b,v22.16b,v23.16b},[x1],#64
653
+
654
+ stp x5,x7,[x0,#0] // store output
655
+ add x28,x28,#4 // increment counter
656
+ stp x9,x11,[x0,#16]
657
+ add v27.4s,v27.4s,v31.4s // += 4
658
+ stp x13,x15,[x0,#32]
659
+ add v28.4s,v28.4s,v31.4s
660
+ stp x17,x20,[x0,#48]
661
+ add v29.4s,v29.4s,v31.4s
662
+ add x0,x0,#64
663
+
664
+ st1 {v0.16b,v1.16b,v2.16b,v3.16b},[x0],#64
665
+ ld1 {v0.16b,v1.16b,v2.16b,v3.16b},[x1],#64
666
+
667
+ eor v4.16b,v4.16b,v20.16b
668
+ eor v5.16b,v5.16b,v21.16b
669
+ eor v6.16b,v6.16b,v22.16b
670
+ eor v7.16b,v7.16b,v23.16b
671
+ st1 {v4.16b,v5.16b,v6.16b,v7.16b},[x0],#64
672
+
673
+ eor v16.16b,v16.16b,v0.16b
674
+ eor v17.16b,v17.16b,v1.16b
675
+ eor v18.16b,v18.16b,v2.16b
676
+ eor v19.16b,v19.16b,v3.16b
677
+ st1 {v16.16b,v17.16b,v18.16b,v19.16b},[x0],#64
678
+
679
+ b.hi Loop_outer_neon
680
+
681
+ ldp x19,x20,[x29,#16]
682
+ add sp,sp,#64
683
+ ldp x21,x22,[x29,#32]
684
+ ldp x23,x24,[x29,#48]
685
+ ldp x25,x26,[x29,#64]
686
+ ldp x27,x28,[x29,#80]
687
+ ldp x29,x30,[sp],#96
688
+ AARCH64_VALIDATE_LINK_REGISTER
689
+ ret
690
+
691
+ Ltail_neon:
692
+ add x2,x2,#256
693
+ cmp x2,#64
694
+ b.lo Less_than_64
695
+
696
+ add x5,x5,x6,lsl#32 // pack
697
+ add x7,x7,x8,lsl#32
698
+ ldp x6,x8,[x1,#0] // load input
699
+ add x9,x9,x10,lsl#32
700
+ add x11,x11,x12,lsl#32
701
+ ldp x10,x12,[x1,#16]
702
+ add x13,x13,x14,lsl#32
703
+ add x15,x15,x16,lsl#32
704
+ ldp x14,x16,[x1,#32]
705
+ add x17,x17,x19,lsl#32
706
+ add x20,x20,x21,lsl#32
707
+ ldp x19,x21,[x1,#48]
708
+ add x1,x1,#64
709
+ #ifdef __AARCH64EB__
710
+ rev x5,x5
711
+ rev x7,x7
712
+ rev x9,x9
713
+ rev x11,x11
714
+ rev x13,x13
715
+ rev x15,x15
716
+ rev x17,x17
717
+ rev x20,x20
718
+ #endif
719
+ eor x5,x5,x6
720
+ eor x7,x7,x8
721
+ eor x9,x9,x10
722
+ eor x11,x11,x12
723
+ eor x13,x13,x14
724
+ eor x15,x15,x16
725
+ eor x17,x17,x19
726
+ eor x20,x20,x21
727
+
728
+ stp x5,x7,[x0,#0] // store output
729
+ add x28,x28,#4 // increment counter
730
+ stp x9,x11,[x0,#16]
731
+ stp x13,x15,[x0,#32]
732
+ stp x17,x20,[x0,#48]
733
+ add x0,x0,#64
734
+ b.eq Ldone_neon
735
+ sub x2,x2,#64
736
+ cmp x2,#64
737
+ b.lo Less_than_128
738
+
739
+ ld1 {v20.16b,v21.16b,v22.16b,v23.16b},[x1],#64
740
+ eor v0.16b,v0.16b,v20.16b
741
+ eor v1.16b,v1.16b,v21.16b
742
+ eor v2.16b,v2.16b,v22.16b
743
+ eor v3.16b,v3.16b,v23.16b
744
+ st1 {v0.16b,v1.16b,v2.16b,v3.16b},[x0],#64
745
+ b.eq Ldone_neon
746
+ sub x2,x2,#64
747
+ cmp x2,#64
748
+ b.lo Less_than_192
749
+
750
+ ld1 {v20.16b,v21.16b,v22.16b,v23.16b},[x1],#64
751
+ eor v4.16b,v4.16b,v20.16b
752
+ eor v5.16b,v5.16b,v21.16b
753
+ eor v6.16b,v6.16b,v22.16b
754
+ eor v7.16b,v7.16b,v23.16b
755
+ st1 {v4.16b,v5.16b,v6.16b,v7.16b},[x0],#64
756
+ b.eq Ldone_neon
757
+ sub x2,x2,#64
758
+
759
+ st1 {v16.16b,v17.16b,v18.16b,v19.16b},[sp]
760
+ b Last_neon
761
+
762
+ Less_than_128:
763
+ st1 {v0.16b,v1.16b,v2.16b,v3.16b},[sp]
764
+ b Last_neon
765
+ Less_than_192:
766
+ st1 {v4.16b,v5.16b,v6.16b,v7.16b},[sp]
767
+ b Last_neon
768
+
769
+ .align 4
770
+ Last_neon:
771
+ sub x0,x0,#1
772
+ add x1,x1,x2
773
+ add x0,x0,x2
774
+ add x4,sp,x2
775
+ neg x2,x2
776
+
777
+ Loop_tail_neon:
778
+ ldrb w10,[x1,x2]
779
+ ldrb w11,[x4,x2]
780
+ add x2,x2,#1
781
+ eor w10,w10,w11
782
+ strb w10,[x0,x2]
783
+ cbnz x2,Loop_tail_neon
784
+
785
+ stp xzr,xzr,[sp,#0]
786
+ stp xzr,xzr,[sp,#16]
787
+ stp xzr,xzr,[sp,#32]
788
+ stp xzr,xzr,[sp,#48]
789
+
790
+ Ldone_neon:
791
+ ldp x19,x20,[x29,#16]
792
+ add sp,sp,#64
793
+ ldp x21,x22,[x29,#32]
794
+ ldp x23,x24,[x29,#48]
795
+ ldp x25,x26,[x29,#64]
796
+ ldp x27,x28,[x29,#80]
797
+ ldp x29,x30,[sp],#96
798
+ AARCH64_VALIDATE_LINK_REGISTER
799
+ ret
800
+
801
+ .def ChaCha20_512_neon
802
+ .type 32
803
+ .endef
804
+ .align 5
805
+ ChaCha20_512_neon:
806
+ AARCH64_SIGN_LINK_REGISTER
807
+ stp x29,x30,[sp,#-96]!
808
+ add x29,sp,#0
809
+
810
+ adrp x5,Lsigma
811
+ add x5,x5,:lo12:Lsigma
812
+ stp x19,x20,[sp,#16]
813
+ stp x21,x22,[sp,#32]
814
+ stp x23,x24,[sp,#48]
815
+ stp x25,x26,[sp,#64]
816
+ stp x27,x28,[sp,#80]
817
+
818
+ L512_or_more_neon:
819
+ sub sp,sp,#128+64
820
+
821
+ ldp x22,x23,[x5] // load sigma
822
+ ld1 {v24.4s},[x5],#16
823
+ ldp x24,x25,[x3] // load key
824
+ ldp x26,x27,[x3,#16]
825
+ ld1 {v25.4s,v26.4s},[x3]
826
+ ldp x28,x30,[x4] // load counter
827
+ ld1 {v27.4s},[x4]
828
+ ld1 {v31.4s},[x5]
829
+ #ifdef __AARCH64EB__
830
+ rev64 v24.4s,v24.4s
831
+ ror x24,x24,#32
832
+ ror x25,x25,#32
833
+ ror x26,x26,#32
834
+ ror x27,x27,#32
835
+ ror x28,x28,#32
836
+ ror x30,x30,#32
837
+ #endif
838
+ add v27.4s,v27.4s,v31.4s // += 1
839
+ stp q24,q25,[sp,#0] // off-load key block, invariant part
840
+ add v27.4s,v27.4s,v31.4s // not typo
841
+ str q26,[sp,#32]
842
+ add v28.4s,v27.4s,v31.4s
843
+ add v29.4s,v28.4s,v31.4s
844
+ add v30.4s,v29.4s,v31.4s
845
+ shl v31.4s,v31.4s,#2 // 1 -> 4
846
+
847
+ stp d8,d9,[sp,#128+0] // meet ABI requirements
848
+ stp d10,d11,[sp,#128+16]
849
+ stp d12,d13,[sp,#128+32]
850
+ stp d14,d15,[sp,#128+48]
851
+
852
+ sub x2,x2,#512 // not typo
853
+
854
+ Loop_outer_512_neon:
855
+ mov v0.16b,v24.16b
856
+ mov v4.16b,v24.16b
857
+ mov v8.16b,v24.16b
858
+ mov v12.16b,v24.16b
859
+ mov v16.16b,v24.16b
860
+ mov v20.16b,v24.16b
861
+ mov v1.16b,v25.16b
862
+ mov w5,w22 // unpack key block
863
+ mov v5.16b,v25.16b
864
+ lsr x6,x22,#32
865
+ mov v9.16b,v25.16b
866
+ mov w7,w23
867
+ mov v13.16b,v25.16b
868
+ lsr x8,x23,#32
869
+ mov v17.16b,v25.16b
870
+ mov w9,w24
871
+ mov v21.16b,v25.16b
872
+ lsr x10,x24,#32
873
+ mov v3.16b,v27.16b
874
+ mov w11,w25
875
+ mov v7.16b,v28.16b
876
+ lsr x12,x25,#32
877
+ mov v11.16b,v29.16b
878
+ mov w13,w26
879
+ mov v15.16b,v30.16b
880
+ lsr x14,x26,#32
881
+ mov v2.16b,v26.16b
882
+ mov w15,w27
883
+ mov v6.16b,v26.16b
884
+ lsr x16,x27,#32
885
+ add v19.4s,v3.4s,v31.4s // +4
886
+ mov w17,w28
887
+ add v23.4s,v7.4s,v31.4s // +4
888
+ lsr x19,x28,#32
889
+ mov v10.16b,v26.16b
890
+ mov w20,w30
891
+ mov v14.16b,v26.16b
892
+ lsr x21,x30,#32
893
+ mov v18.16b,v26.16b
894
+ stp q27,q28,[sp,#48] // off-load key block, variable part
895
+ mov v22.16b,v26.16b
896
+ str q29,[sp,#80]
897
+
898
+ mov x4,#5
899
+ subs x2,x2,#512
900
+ Loop_upper_neon:
901
+ sub x4,x4,#1
902
+ add v0.4s,v0.4s,v1.4s
903
+ add w5,w5,w9
904
+ add v4.4s,v4.4s,v5.4s
905
+ add w6,w6,w10
906
+ add v8.4s,v8.4s,v9.4s
907
+ add w7,w7,w11
908
+ add v12.4s,v12.4s,v13.4s
909
+ add w8,w8,w12
910
+ add v16.4s,v16.4s,v17.4s
911
+ eor w17,w17,w5
912
+ add v20.4s,v20.4s,v21.4s
913
+ eor w19,w19,w6
914
+ eor v3.16b,v3.16b,v0.16b
915
+ eor w20,w20,w7
916
+ eor v7.16b,v7.16b,v4.16b
917
+ eor w21,w21,w8
918
+ eor v11.16b,v11.16b,v8.16b
919
+ ror w17,w17,#16
920
+ eor v15.16b,v15.16b,v12.16b
921
+ ror w19,w19,#16
922
+ eor v19.16b,v19.16b,v16.16b
923
+ ror w20,w20,#16
924
+ eor v23.16b,v23.16b,v20.16b
925
+ ror w21,w21,#16
926
+ rev32 v3.8h,v3.8h
927
+ add w13,w13,w17
928
+ rev32 v7.8h,v7.8h
929
+ add w14,w14,w19
930
+ rev32 v11.8h,v11.8h
931
+ add w15,w15,w20
932
+ rev32 v15.8h,v15.8h
933
+ add w16,w16,w21
934
+ rev32 v19.8h,v19.8h
935
+ eor w9,w9,w13
936
+ rev32 v23.8h,v23.8h
937
+ eor w10,w10,w14
938
+ add v2.4s,v2.4s,v3.4s
939
+ eor w11,w11,w15
940
+ add v6.4s,v6.4s,v7.4s
941
+ eor w12,w12,w16
942
+ add v10.4s,v10.4s,v11.4s
943
+ ror w9,w9,#20
944
+ add v14.4s,v14.4s,v15.4s
945
+ ror w10,w10,#20
946
+ add v18.4s,v18.4s,v19.4s
947
+ ror w11,w11,#20
948
+ add v22.4s,v22.4s,v23.4s
949
+ ror w12,w12,#20
950
+ eor v24.16b,v1.16b,v2.16b
951
+ add w5,w5,w9
952
+ eor v25.16b,v5.16b,v6.16b
953
+ add w6,w6,w10
954
+ eor v26.16b,v9.16b,v10.16b
955
+ add w7,w7,w11
956
+ eor v27.16b,v13.16b,v14.16b
957
+ add w8,w8,w12
958
+ eor v28.16b,v17.16b,v18.16b
959
+ eor w17,w17,w5
960
+ eor v29.16b,v21.16b,v22.16b
961
+ eor w19,w19,w6
962
+ ushr v1.4s,v24.4s,#20
963
+ eor w20,w20,w7
964
+ ushr v5.4s,v25.4s,#20
965
+ eor w21,w21,w8
966
+ ushr v9.4s,v26.4s,#20
967
+ ror w17,w17,#24
968
+ ushr v13.4s,v27.4s,#20
969
+ ror w19,w19,#24
970
+ ushr v17.4s,v28.4s,#20
971
+ ror w20,w20,#24
972
+ ushr v21.4s,v29.4s,#20
973
+ ror w21,w21,#24
974
+ sli v1.4s,v24.4s,#12
975
+ add w13,w13,w17
976
+ sli v5.4s,v25.4s,#12
977
+ add w14,w14,w19
978
+ sli v9.4s,v26.4s,#12
979
+ add w15,w15,w20
980
+ sli v13.4s,v27.4s,#12
981
+ add w16,w16,w21
982
+ sli v17.4s,v28.4s,#12
983
+ eor w9,w9,w13
984
+ sli v21.4s,v29.4s,#12
985
+ eor w10,w10,w14
986
+ add v0.4s,v0.4s,v1.4s
987
+ eor w11,w11,w15
988
+ add v4.4s,v4.4s,v5.4s
989
+ eor w12,w12,w16
990
+ add v8.4s,v8.4s,v9.4s
991
+ ror w9,w9,#25
992
+ add v12.4s,v12.4s,v13.4s
993
+ ror w10,w10,#25
994
+ add v16.4s,v16.4s,v17.4s
995
+ ror w11,w11,#25
996
+ add v20.4s,v20.4s,v21.4s
997
+ ror w12,w12,#25
998
+ eor v24.16b,v3.16b,v0.16b
999
+ add w5,w5,w10
1000
+ eor v25.16b,v7.16b,v4.16b
1001
+ add w6,w6,w11
1002
+ eor v26.16b,v11.16b,v8.16b
1003
+ add w7,w7,w12
1004
+ eor v27.16b,v15.16b,v12.16b
1005
+ add w8,w8,w9
1006
+ eor v28.16b,v19.16b,v16.16b
1007
+ eor w21,w21,w5
1008
+ eor v29.16b,v23.16b,v20.16b
1009
+ eor w17,w17,w6
1010
+ ushr v3.4s,v24.4s,#24
1011
+ eor w19,w19,w7
1012
+ ushr v7.4s,v25.4s,#24
1013
+ eor w20,w20,w8
1014
+ ushr v11.4s,v26.4s,#24
1015
+ ror w21,w21,#16
1016
+ ushr v15.4s,v27.4s,#24
1017
+ ror w17,w17,#16
1018
+ ushr v19.4s,v28.4s,#24
1019
+ ror w19,w19,#16
1020
+ ushr v23.4s,v29.4s,#24
1021
+ ror w20,w20,#16
1022
+ sli v3.4s,v24.4s,#8
1023
+ add w15,w15,w21
1024
+ sli v7.4s,v25.4s,#8
1025
+ add w16,w16,w17
1026
+ sli v11.4s,v26.4s,#8
1027
+ add w13,w13,w19
1028
+ sli v15.4s,v27.4s,#8
1029
+ add w14,w14,w20
1030
+ sli v19.4s,v28.4s,#8
1031
+ eor w10,w10,w15
1032
+ sli v23.4s,v29.4s,#8
1033
+ eor w11,w11,w16
1034
+ add v2.4s,v2.4s,v3.4s
1035
+ eor w12,w12,w13
1036
+ add v6.4s,v6.4s,v7.4s
1037
+ eor w9,w9,w14
1038
+ add v10.4s,v10.4s,v11.4s
1039
+ ror w10,w10,#20
1040
+ add v14.4s,v14.4s,v15.4s
1041
+ ror w11,w11,#20
1042
+ add v18.4s,v18.4s,v19.4s
1043
+ ror w12,w12,#20
1044
+ add v22.4s,v22.4s,v23.4s
1045
+ ror w9,w9,#20
1046
+ eor v24.16b,v1.16b,v2.16b
1047
+ add w5,w5,w10
1048
+ eor v25.16b,v5.16b,v6.16b
1049
+ add w6,w6,w11
1050
+ eor v26.16b,v9.16b,v10.16b
1051
+ add w7,w7,w12
1052
+ eor v27.16b,v13.16b,v14.16b
1053
+ add w8,w8,w9
1054
+ eor v28.16b,v17.16b,v18.16b
1055
+ eor w21,w21,w5
1056
+ eor v29.16b,v21.16b,v22.16b
1057
+ eor w17,w17,w6
1058
+ ushr v1.4s,v24.4s,#25
1059
+ eor w19,w19,w7
1060
+ ushr v5.4s,v25.4s,#25
1061
+ eor w20,w20,w8
1062
+ ushr v9.4s,v26.4s,#25
1063
+ ror w21,w21,#24
1064
+ ushr v13.4s,v27.4s,#25
1065
+ ror w17,w17,#24
1066
+ ushr v17.4s,v28.4s,#25
1067
+ ror w19,w19,#24
1068
+ ushr v21.4s,v29.4s,#25
1069
+ ror w20,w20,#24
1070
+ sli v1.4s,v24.4s,#7
1071
+ add w15,w15,w21
1072
+ sli v5.4s,v25.4s,#7
1073
+ add w16,w16,w17
1074
+ sli v9.4s,v26.4s,#7
1075
+ add w13,w13,w19
1076
+ sli v13.4s,v27.4s,#7
1077
+ add w14,w14,w20
1078
+ sli v17.4s,v28.4s,#7
1079
+ eor w10,w10,w15
1080
+ sli v21.4s,v29.4s,#7
1081
+ eor w11,w11,w16
1082
+ ext v2.16b,v2.16b,v2.16b,#8
1083
+ eor w12,w12,w13
1084
+ ext v6.16b,v6.16b,v6.16b,#8
1085
+ eor w9,w9,w14
1086
+ ext v10.16b,v10.16b,v10.16b,#8
1087
+ ror w10,w10,#25
1088
+ ext v14.16b,v14.16b,v14.16b,#8
1089
+ ror w11,w11,#25
1090
+ ext v18.16b,v18.16b,v18.16b,#8
1091
+ ror w12,w12,#25
1092
+ ext v22.16b,v22.16b,v22.16b,#8
1093
+ ror w9,w9,#25
1094
+ ext v3.16b,v3.16b,v3.16b,#12
1095
+ ext v7.16b,v7.16b,v7.16b,#12
1096
+ ext v11.16b,v11.16b,v11.16b,#12
1097
+ ext v15.16b,v15.16b,v15.16b,#12
1098
+ ext v19.16b,v19.16b,v19.16b,#12
1099
+ ext v23.16b,v23.16b,v23.16b,#12
1100
+ ext v1.16b,v1.16b,v1.16b,#4
1101
+ ext v5.16b,v5.16b,v5.16b,#4
1102
+ ext v9.16b,v9.16b,v9.16b,#4
1103
+ ext v13.16b,v13.16b,v13.16b,#4
1104
+ ext v17.16b,v17.16b,v17.16b,#4
1105
+ ext v21.16b,v21.16b,v21.16b,#4
1106
+ add v0.4s,v0.4s,v1.4s
1107
+ add w5,w5,w9
1108
+ add v4.4s,v4.4s,v5.4s
1109
+ add w6,w6,w10
1110
+ add v8.4s,v8.4s,v9.4s
1111
+ add w7,w7,w11
1112
+ add v12.4s,v12.4s,v13.4s
1113
+ add w8,w8,w12
1114
+ add v16.4s,v16.4s,v17.4s
1115
+ eor w17,w17,w5
1116
+ add v20.4s,v20.4s,v21.4s
1117
+ eor w19,w19,w6
1118
+ eor v3.16b,v3.16b,v0.16b
1119
+ eor w20,w20,w7
1120
+ eor v7.16b,v7.16b,v4.16b
1121
+ eor w21,w21,w8
1122
+ eor v11.16b,v11.16b,v8.16b
1123
+ ror w17,w17,#16
1124
+ eor v15.16b,v15.16b,v12.16b
1125
+ ror w19,w19,#16
1126
+ eor v19.16b,v19.16b,v16.16b
1127
+ ror w20,w20,#16
1128
+ eor v23.16b,v23.16b,v20.16b
1129
+ ror w21,w21,#16
1130
+ rev32 v3.8h,v3.8h
1131
+ add w13,w13,w17
1132
+ rev32 v7.8h,v7.8h
1133
+ add w14,w14,w19
1134
+ rev32 v11.8h,v11.8h
1135
+ add w15,w15,w20
1136
+ rev32 v15.8h,v15.8h
1137
+ add w16,w16,w21
1138
+ rev32 v19.8h,v19.8h
1139
+ eor w9,w9,w13
1140
+ rev32 v23.8h,v23.8h
1141
+ eor w10,w10,w14
1142
+ add v2.4s,v2.4s,v3.4s
1143
+ eor w11,w11,w15
1144
+ add v6.4s,v6.4s,v7.4s
1145
+ eor w12,w12,w16
1146
+ add v10.4s,v10.4s,v11.4s
1147
+ ror w9,w9,#20
1148
+ add v14.4s,v14.4s,v15.4s
1149
+ ror w10,w10,#20
1150
+ add v18.4s,v18.4s,v19.4s
1151
+ ror w11,w11,#20
1152
+ add v22.4s,v22.4s,v23.4s
1153
+ ror w12,w12,#20
1154
+ eor v24.16b,v1.16b,v2.16b
1155
+ add w5,w5,w9
1156
+ eor v25.16b,v5.16b,v6.16b
1157
+ add w6,w6,w10
1158
+ eor v26.16b,v9.16b,v10.16b
1159
+ add w7,w7,w11
1160
+ eor v27.16b,v13.16b,v14.16b
1161
+ add w8,w8,w12
1162
+ eor v28.16b,v17.16b,v18.16b
1163
+ eor w17,w17,w5
1164
+ eor v29.16b,v21.16b,v22.16b
1165
+ eor w19,w19,w6
1166
+ ushr v1.4s,v24.4s,#20
1167
+ eor w20,w20,w7
1168
+ ushr v5.4s,v25.4s,#20
1169
+ eor w21,w21,w8
1170
+ ushr v9.4s,v26.4s,#20
1171
+ ror w17,w17,#24
1172
+ ushr v13.4s,v27.4s,#20
1173
+ ror w19,w19,#24
1174
+ ushr v17.4s,v28.4s,#20
1175
+ ror w20,w20,#24
1176
+ ushr v21.4s,v29.4s,#20
1177
+ ror w21,w21,#24
1178
+ sli v1.4s,v24.4s,#12
1179
+ add w13,w13,w17
1180
+ sli v5.4s,v25.4s,#12
1181
+ add w14,w14,w19
1182
+ sli v9.4s,v26.4s,#12
1183
+ add w15,w15,w20
1184
+ sli v13.4s,v27.4s,#12
1185
+ add w16,w16,w21
1186
+ sli v17.4s,v28.4s,#12
1187
+ eor w9,w9,w13
1188
+ sli v21.4s,v29.4s,#12
1189
+ eor w10,w10,w14
1190
+ add v0.4s,v0.4s,v1.4s
1191
+ eor w11,w11,w15
1192
+ add v4.4s,v4.4s,v5.4s
1193
+ eor w12,w12,w16
1194
+ add v8.4s,v8.4s,v9.4s
1195
+ ror w9,w9,#25
1196
+ add v12.4s,v12.4s,v13.4s
1197
+ ror w10,w10,#25
1198
+ add v16.4s,v16.4s,v17.4s
1199
+ ror w11,w11,#25
1200
+ add v20.4s,v20.4s,v21.4s
1201
+ ror w12,w12,#25
1202
+ eor v24.16b,v3.16b,v0.16b
1203
+ add w5,w5,w10
1204
+ eor v25.16b,v7.16b,v4.16b
1205
+ add w6,w6,w11
1206
+ eor v26.16b,v11.16b,v8.16b
1207
+ add w7,w7,w12
1208
+ eor v27.16b,v15.16b,v12.16b
1209
+ add w8,w8,w9
1210
+ eor v28.16b,v19.16b,v16.16b
1211
+ eor w21,w21,w5
1212
+ eor v29.16b,v23.16b,v20.16b
1213
+ eor w17,w17,w6
1214
+ ushr v3.4s,v24.4s,#24
1215
+ eor w19,w19,w7
1216
+ ushr v7.4s,v25.4s,#24
1217
+ eor w20,w20,w8
1218
+ ushr v11.4s,v26.4s,#24
1219
+ ror w21,w21,#16
1220
+ ushr v15.4s,v27.4s,#24
1221
+ ror w17,w17,#16
1222
+ ushr v19.4s,v28.4s,#24
1223
+ ror w19,w19,#16
1224
+ ushr v23.4s,v29.4s,#24
1225
+ ror w20,w20,#16
1226
+ sli v3.4s,v24.4s,#8
1227
+ add w15,w15,w21
1228
+ sli v7.4s,v25.4s,#8
1229
+ add w16,w16,w17
1230
+ sli v11.4s,v26.4s,#8
1231
+ add w13,w13,w19
1232
+ sli v15.4s,v27.4s,#8
1233
+ add w14,w14,w20
1234
+ sli v19.4s,v28.4s,#8
1235
+ eor w10,w10,w15
1236
+ sli v23.4s,v29.4s,#8
1237
+ eor w11,w11,w16
1238
+ add v2.4s,v2.4s,v3.4s
1239
+ eor w12,w12,w13
1240
+ add v6.4s,v6.4s,v7.4s
1241
+ eor w9,w9,w14
1242
+ add v10.4s,v10.4s,v11.4s
1243
+ ror w10,w10,#20
1244
+ add v14.4s,v14.4s,v15.4s
1245
+ ror w11,w11,#20
1246
+ add v18.4s,v18.4s,v19.4s
1247
+ ror w12,w12,#20
1248
+ add v22.4s,v22.4s,v23.4s
1249
+ ror w9,w9,#20
1250
+ eor v24.16b,v1.16b,v2.16b
1251
+ add w5,w5,w10
1252
+ eor v25.16b,v5.16b,v6.16b
1253
+ add w6,w6,w11
1254
+ eor v26.16b,v9.16b,v10.16b
1255
+ add w7,w7,w12
1256
+ eor v27.16b,v13.16b,v14.16b
1257
+ add w8,w8,w9
1258
+ eor v28.16b,v17.16b,v18.16b
1259
+ eor w21,w21,w5
1260
+ eor v29.16b,v21.16b,v22.16b
1261
+ eor w17,w17,w6
1262
+ ushr v1.4s,v24.4s,#25
1263
+ eor w19,w19,w7
1264
+ ushr v5.4s,v25.4s,#25
1265
+ eor w20,w20,w8
1266
+ ushr v9.4s,v26.4s,#25
1267
+ ror w21,w21,#24
1268
+ ushr v13.4s,v27.4s,#25
1269
+ ror w17,w17,#24
1270
+ ushr v17.4s,v28.4s,#25
1271
+ ror w19,w19,#24
1272
+ ushr v21.4s,v29.4s,#25
1273
+ ror w20,w20,#24
1274
+ sli v1.4s,v24.4s,#7
1275
+ add w15,w15,w21
1276
+ sli v5.4s,v25.4s,#7
1277
+ add w16,w16,w17
1278
+ sli v9.4s,v26.4s,#7
1279
+ add w13,w13,w19
1280
+ sli v13.4s,v27.4s,#7
1281
+ add w14,w14,w20
1282
+ sli v17.4s,v28.4s,#7
1283
+ eor w10,w10,w15
1284
+ sli v21.4s,v29.4s,#7
1285
+ eor w11,w11,w16
1286
+ ext v2.16b,v2.16b,v2.16b,#8
1287
+ eor w12,w12,w13
1288
+ ext v6.16b,v6.16b,v6.16b,#8
1289
+ eor w9,w9,w14
1290
+ ext v10.16b,v10.16b,v10.16b,#8
1291
+ ror w10,w10,#25
1292
+ ext v14.16b,v14.16b,v14.16b,#8
1293
+ ror w11,w11,#25
1294
+ ext v18.16b,v18.16b,v18.16b,#8
1295
+ ror w12,w12,#25
1296
+ ext v22.16b,v22.16b,v22.16b,#8
1297
+ ror w9,w9,#25
1298
+ ext v3.16b,v3.16b,v3.16b,#4
1299
+ ext v7.16b,v7.16b,v7.16b,#4
1300
+ ext v11.16b,v11.16b,v11.16b,#4
1301
+ ext v15.16b,v15.16b,v15.16b,#4
1302
+ ext v19.16b,v19.16b,v19.16b,#4
1303
+ ext v23.16b,v23.16b,v23.16b,#4
1304
+ ext v1.16b,v1.16b,v1.16b,#12
1305
+ ext v5.16b,v5.16b,v5.16b,#12
1306
+ ext v9.16b,v9.16b,v9.16b,#12
1307
+ ext v13.16b,v13.16b,v13.16b,#12
1308
+ ext v17.16b,v17.16b,v17.16b,#12
1309
+ ext v21.16b,v21.16b,v21.16b,#12
1310
+ cbnz x4,Loop_upper_neon
1311
+
1312
+ add w5,w5,w22 // accumulate key block
1313
+ add x6,x6,x22,lsr#32
1314
+ add w7,w7,w23
1315
+ add x8,x8,x23,lsr#32
1316
+ add w9,w9,w24
1317
+ add x10,x10,x24,lsr#32
1318
+ add w11,w11,w25
1319
+ add x12,x12,x25,lsr#32
1320
+ add w13,w13,w26
1321
+ add x14,x14,x26,lsr#32
1322
+ add w15,w15,w27
1323
+ add x16,x16,x27,lsr#32
1324
+ add w17,w17,w28
1325
+ add x19,x19,x28,lsr#32
1326
+ add w20,w20,w30
1327
+ add x21,x21,x30,lsr#32
1328
+
1329
+ add x5,x5,x6,lsl#32 // pack
1330
+ add x7,x7,x8,lsl#32
1331
+ ldp x6,x8,[x1,#0] // load input
1332
+ add x9,x9,x10,lsl#32
1333
+ add x11,x11,x12,lsl#32
1334
+ ldp x10,x12,[x1,#16]
1335
+ add x13,x13,x14,lsl#32
1336
+ add x15,x15,x16,lsl#32
1337
+ ldp x14,x16,[x1,#32]
1338
+ add x17,x17,x19,lsl#32
1339
+ add x20,x20,x21,lsl#32
1340
+ ldp x19,x21,[x1,#48]
1341
+ add x1,x1,#64
1342
+ #ifdef __AARCH64EB__
1343
+ rev x5,x5
1344
+ rev x7,x7
1345
+ rev x9,x9
1346
+ rev x11,x11
1347
+ rev x13,x13
1348
+ rev x15,x15
1349
+ rev x17,x17
1350
+ rev x20,x20
1351
+ #endif
1352
+ eor x5,x5,x6
1353
+ eor x7,x7,x8
1354
+ eor x9,x9,x10
1355
+ eor x11,x11,x12
1356
+ eor x13,x13,x14
1357
+ eor x15,x15,x16
1358
+ eor x17,x17,x19
1359
+ eor x20,x20,x21
1360
+
1361
+ stp x5,x7,[x0,#0] // store output
1362
+ add x28,x28,#1 // increment counter
1363
+ mov w5,w22 // unpack key block
1364
+ lsr x6,x22,#32
1365
+ stp x9,x11,[x0,#16]
1366
+ mov w7,w23
1367
+ lsr x8,x23,#32
1368
+ stp x13,x15,[x0,#32]
1369
+ mov w9,w24
1370
+ lsr x10,x24,#32
1371
+ stp x17,x20,[x0,#48]
1372
+ add x0,x0,#64
1373
+ mov w11,w25
1374
+ lsr x12,x25,#32
1375
+ mov w13,w26
1376
+ lsr x14,x26,#32
1377
+ mov w15,w27
1378
+ lsr x16,x27,#32
1379
+ mov w17,w28
1380
+ lsr x19,x28,#32
1381
+ mov w20,w30
1382
+ lsr x21,x30,#32
1383
+
1384
+ mov x4,#5
1385
+ Loop_lower_neon:
1386
+ sub x4,x4,#1
1387
+ add v0.4s,v0.4s,v1.4s
1388
+ add w5,w5,w9
1389
+ add v4.4s,v4.4s,v5.4s
1390
+ add w6,w6,w10
1391
+ add v8.4s,v8.4s,v9.4s
1392
+ add w7,w7,w11
1393
+ add v12.4s,v12.4s,v13.4s
1394
+ add w8,w8,w12
1395
+ add v16.4s,v16.4s,v17.4s
1396
+ eor w17,w17,w5
1397
+ add v20.4s,v20.4s,v21.4s
1398
+ eor w19,w19,w6
1399
+ eor v3.16b,v3.16b,v0.16b
1400
+ eor w20,w20,w7
1401
+ eor v7.16b,v7.16b,v4.16b
1402
+ eor w21,w21,w8
1403
+ eor v11.16b,v11.16b,v8.16b
1404
+ ror w17,w17,#16
1405
+ eor v15.16b,v15.16b,v12.16b
1406
+ ror w19,w19,#16
1407
+ eor v19.16b,v19.16b,v16.16b
1408
+ ror w20,w20,#16
1409
+ eor v23.16b,v23.16b,v20.16b
1410
+ ror w21,w21,#16
1411
+ rev32 v3.8h,v3.8h
1412
+ add w13,w13,w17
1413
+ rev32 v7.8h,v7.8h
1414
+ add w14,w14,w19
1415
+ rev32 v11.8h,v11.8h
1416
+ add w15,w15,w20
1417
+ rev32 v15.8h,v15.8h
1418
+ add w16,w16,w21
1419
+ rev32 v19.8h,v19.8h
1420
+ eor w9,w9,w13
1421
+ rev32 v23.8h,v23.8h
1422
+ eor w10,w10,w14
1423
+ add v2.4s,v2.4s,v3.4s
1424
+ eor w11,w11,w15
1425
+ add v6.4s,v6.4s,v7.4s
1426
+ eor w12,w12,w16
1427
+ add v10.4s,v10.4s,v11.4s
1428
+ ror w9,w9,#20
1429
+ add v14.4s,v14.4s,v15.4s
1430
+ ror w10,w10,#20
1431
+ add v18.4s,v18.4s,v19.4s
1432
+ ror w11,w11,#20
1433
+ add v22.4s,v22.4s,v23.4s
1434
+ ror w12,w12,#20
1435
+ eor v24.16b,v1.16b,v2.16b
1436
+ add w5,w5,w9
1437
+ eor v25.16b,v5.16b,v6.16b
1438
+ add w6,w6,w10
1439
+ eor v26.16b,v9.16b,v10.16b
1440
+ add w7,w7,w11
1441
+ eor v27.16b,v13.16b,v14.16b
1442
+ add w8,w8,w12
1443
+ eor v28.16b,v17.16b,v18.16b
1444
+ eor w17,w17,w5
1445
+ eor v29.16b,v21.16b,v22.16b
1446
+ eor w19,w19,w6
1447
+ ushr v1.4s,v24.4s,#20
1448
+ eor w20,w20,w7
1449
+ ushr v5.4s,v25.4s,#20
1450
+ eor w21,w21,w8
1451
+ ushr v9.4s,v26.4s,#20
1452
+ ror w17,w17,#24
1453
+ ushr v13.4s,v27.4s,#20
1454
+ ror w19,w19,#24
1455
+ ushr v17.4s,v28.4s,#20
1456
+ ror w20,w20,#24
1457
+ ushr v21.4s,v29.4s,#20
1458
+ ror w21,w21,#24
1459
+ sli v1.4s,v24.4s,#12
1460
+ add w13,w13,w17
1461
+ sli v5.4s,v25.4s,#12
1462
+ add w14,w14,w19
1463
+ sli v9.4s,v26.4s,#12
1464
+ add w15,w15,w20
1465
+ sli v13.4s,v27.4s,#12
1466
+ add w16,w16,w21
1467
+ sli v17.4s,v28.4s,#12
1468
+ eor w9,w9,w13
1469
+ sli v21.4s,v29.4s,#12
1470
+ eor w10,w10,w14
1471
+ add v0.4s,v0.4s,v1.4s
1472
+ eor w11,w11,w15
1473
+ add v4.4s,v4.4s,v5.4s
1474
+ eor w12,w12,w16
1475
+ add v8.4s,v8.4s,v9.4s
1476
+ ror w9,w9,#25
1477
+ add v12.4s,v12.4s,v13.4s
1478
+ ror w10,w10,#25
1479
+ add v16.4s,v16.4s,v17.4s
1480
+ ror w11,w11,#25
1481
+ add v20.4s,v20.4s,v21.4s
1482
+ ror w12,w12,#25
1483
+ eor v24.16b,v3.16b,v0.16b
1484
+ add w5,w5,w10
1485
+ eor v25.16b,v7.16b,v4.16b
1486
+ add w6,w6,w11
1487
+ eor v26.16b,v11.16b,v8.16b
1488
+ add w7,w7,w12
1489
+ eor v27.16b,v15.16b,v12.16b
1490
+ add w8,w8,w9
1491
+ eor v28.16b,v19.16b,v16.16b
1492
+ eor w21,w21,w5
1493
+ eor v29.16b,v23.16b,v20.16b
1494
+ eor w17,w17,w6
1495
+ ushr v3.4s,v24.4s,#24
1496
+ eor w19,w19,w7
1497
+ ushr v7.4s,v25.4s,#24
1498
+ eor w20,w20,w8
1499
+ ushr v11.4s,v26.4s,#24
1500
+ ror w21,w21,#16
1501
+ ushr v15.4s,v27.4s,#24
1502
+ ror w17,w17,#16
1503
+ ushr v19.4s,v28.4s,#24
1504
+ ror w19,w19,#16
1505
+ ushr v23.4s,v29.4s,#24
1506
+ ror w20,w20,#16
1507
+ sli v3.4s,v24.4s,#8
1508
+ add w15,w15,w21
1509
+ sli v7.4s,v25.4s,#8
1510
+ add w16,w16,w17
1511
+ sli v11.4s,v26.4s,#8
1512
+ add w13,w13,w19
1513
+ sli v15.4s,v27.4s,#8
1514
+ add w14,w14,w20
1515
+ sli v19.4s,v28.4s,#8
1516
+ eor w10,w10,w15
1517
+ sli v23.4s,v29.4s,#8
1518
+ eor w11,w11,w16
1519
+ add v2.4s,v2.4s,v3.4s
1520
+ eor w12,w12,w13
1521
+ add v6.4s,v6.4s,v7.4s
1522
+ eor w9,w9,w14
1523
+ add v10.4s,v10.4s,v11.4s
1524
+ ror w10,w10,#20
1525
+ add v14.4s,v14.4s,v15.4s
1526
+ ror w11,w11,#20
1527
+ add v18.4s,v18.4s,v19.4s
1528
+ ror w12,w12,#20
1529
+ add v22.4s,v22.4s,v23.4s
1530
+ ror w9,w9,#20
1531
+ eor v24.16b,v1.16b,v2.16b
1532
+ add w5,w5,w10
1533
+ eor v25.16b,v5.16b,v6.16b
1534
+ add w6,w6,w11
1535
+ eor v26.16b,v9.16b,v10.16b
1536
+ add w7,w7,w12
1537
+ eor v27.16b,v13.16b,v14.16b
1538
+ add w8,w8,w9
1539
+ eor v28.16b,v17.16b,v18.16b
1540
+ eor w21,w21,w5
1541
+ eor v29.16b,v21.16b,v22.16b
1542
+ eor w17,w17,w6
1543
+ ushr v1.4s,v24.4s,#25
1544
+ eor w19,w19,w7
1545
+ ushr v5.4s,v25.4s,#25
1546
+ eor w20,w20,w8
1547
+ ushr v9.4s,v26.4s,#25
1548
+ ror w21,w21,#24
1549
+ ushr v13.4s,v27.4s,#25
1550
+ ror w17,w17,#24
1551
+ ushr v17.4s,v28.4s,#25
1552
+ ror w19,w19,#24
1553
+ ushr v21.4s,v29.4s,#25
1554
+ ror w20,w20,#24
1555
+ sli v1.4s,v24.4s,#7
1556
+ add w15,w15,w21
1557
+ sli v5.4s,v25.4s,#7
1558
+ add w16,w16,w17
1559
+ sli v9.4s,v26.4s,#7
1560
+ add w13,w13,w19
1561
+ sli v13.4s,v27.4s,#7
1562
+ add w14,w14,w20
1563
+ sli v17.4s,v28.4s,#7
1564
+ eor w10,w10,w15
1565
+ sli v21.4s,v29.4s,#7
1566
+ eor w11,w11,w16
1567
+ ext v2.16b,v2.16b,v2.16b,#8
1568
+ eor w12,w12,w13
1569
+ ext v6.16b,v6.16b,v6.16b,#8
1570
+ eor w9,w9,w14
1571
+ ext v10.16b,v10.16b,v10.16b,#8
1572
+ ror w10,w10,#25
1573
+ ext v14.16b,v14.16b,v14.16b,#8
1574
+ ror w11,w11,#25
1575
+ ext v18.16b,v18.16b,v18.16b,#8
1576
+ ror w12,w12,#25
1577
+ ext v22.16b,v22.16b,v22.16b,#8
1578
+ ror w9,w9,#25
1579
+ ext v3.16b,v3.16b,v3.16b,#12
1580
+ ext v7.16b,v7.16b,v7.16b,#12
1581
+ ext v11.16b,v11.16b,v11.16b,#12
1582
+ ext v15.16b,v15.16b,v15.16b,#12
1583
+ ext v19.16b,v19.16b,v19.16b,#12
1584
+ ext v23.16b,v23.16b,v23.16b,#12
1585
+ ext v1.16b,v1.16b,v1.16b,#4
1586
+ ext v5.16b,v5.16b,v5.16b,#4
1587
+ ext v9.16b,v9.16b,v9.16b,#4
1588
+ ext v13.16b,v13.16b,v13.16b,#4
1589
+ ext v17.16b,v17.16b,v17.16b,#4
1590
+ ext v21.16b,v21.16b,v21.16b,#4
1591
+ add v0.4s,v0.4s,v1.4s
1592
+ add w5,w5,w9
1593
+ add v4.4s,v4.4s,v5.4s
1594
+ add w6,w6,w10
1595
+ add v8.4s,v8.4s,v9.4s
1596
+ add w7,w7,w11
1597
+ add v12.4s,v12.4s,v13.4s
1598
+ add w8,w8,w12
1599
+ add v16.4s,v16.4s,v17.4s
1600
+ eor w17,w17,w5
1601
+ add v20.4s,v20.4s,v21.4s
1602
+ eor w19,w19,w6
1603
+ eor v3.16b,v3.16b,v0.16b
1604
+ eor w20,w20,w7
1605
+ eor v7.16b,v7.16b,v4.16b
1606
+ eor w21,w21,w8
1607
+ eor v11.16b,v11.16b,v8.16b
1608
+ ror w17,w17,#16
1609
+ eor v15.16b,v15.16b,v12.16b
1610
+ ror w19,w19,#16
1611
+ eor v19.16b,v19.16b,v16.16b
1612
+ ror w20,w20,#16
1613
+ eor v23.16b,v23.16b,v20.16b
1614
+ ror w21,w21,#16
1615
+ rev32 v3.8h,v3.8h
1616
+ add w13,w13,w17
1617
+ rev32 v7.8h,v7.8h
1618
+ add w14,w14,w19
1619
+ rev32 v11.8h,v11.8h
1620
+ add w15,w15,w20
1621
+ rev32 v15.8h,v15.8h
1622
+ add w16,w16,w21
1623
+ rev32 v19.8h,v19.8h
1624
+ eor w9,w9,w13
1625
+ rev32 v23.8h,v23.8h
1626
+ eor w10,w10,w14
1627
+ add v2.4s,v2.4s,v3.4s
1628
+ eor w11,w11,w15
1629
+ add v6.4s,v6.4s,v7.4s
1630
+ eor w12,w12,w16
1631
+ add v10.4s,v10.4s,v11.4s
1632
+ ror w9,w9,#20
1633
+ add v14.4s,v14.4s,v15.4s
1634
+ ror w10,w10,#20
1635
+ add v18.4s,v18.4s,v19.4s
1636
+ ror w11,w11,#20
1637
+ add v22.4s,v22.4s,v23.4s
1638
+ ror w12,w12,#20
1639
+ eor v24.16b,v1.16b,v2.16b
1640
+ add w5,w5,w9
1641
+ eor v25.16b,v5.16b,v6.16b
1642
+ add w6,w6,w10
1643
+ eor v26.16b,v9.16b,v10.16b
1644
+ add w7,w7,w11
1645
+ eor v27.16b,v13.16b,v14.16b
1646
+ add w8,w8,w12
1647
+ eor v28.16b,v17.16b,v18.16b
1648
+ eor w17,w17,w5
1649
+ eor v29.16b,v21.16b,v22.16b
1650
+ eor w19,w19,w6
1651
+ ushr v1.4s,v24.4s,#20
1652
+ eor w20,w20,w7
1653
+ ushr v5.4s,v25.4s,#20
1654
+ eor w21,w21,w8
1655
+ ushr v9.4s,v26.4s,#20
1656
+ ror w17,w17,#24
1657
+ ushr v13.4s,v27.4s,#20
1658
+ ror w19,w19,#24
1659
+ ushr v17.4s,v28.4s,#20
1660
+ ror w20,w20,#24
1661
+ ushr v21.4s,v29.4s,#20
1662
+ ror w21,w21,#24
1663
+ sli v1.4s,v24.4s,#12
1664
+ add w13,w13,w17
1665
+ sli v5.4s,v25.4s,#12
1666
+ add w14,w14,w19
1667
+ sli v9.4s,v26.4s,#12
1668
+ add w15,w15,w20
1669
+ sli v13.4s,v27.4s,#12
1670
+ add w16,w16,w21
1671
+ sli v17.4s,v28.4s,#12
1672
+ eor w9,w9,w13
1673
+ sli v21.4s,v29.4s,#12
1674
+ eor w10,w10,w14
1675
+ add v0.4s,v0.4s,v1.4s
1676
+ eor w11,w11,w15
1677
+ add v4.4s,v4.4s,v5.4s
1678
+ eor w12,w12,w16
1679
+ add v8.4s,v8.4s,v9.4s
1680
+ ror w9,w9,#25
1681
+ add v12.4s,v12.4s,v13.4s
1682
+ ror w10,w10,#25
1683
+ add v16.4s,v16.4s,v17.4s
1684
+ ror w11,w11,#25
1685
+ add v20.4s,v20.4s,v21.4s
1686
+ ror w12,w12,#25
1687
+ eor v24.16b,v3.16b,v0.16b
1688
+ add w5,w5,w10
1689
+ eor v25.16b,v7.16b,v4.16b
1690
+ add w6,w6,w11
1691
+ eor v26.16b,v11.16b,v8.16b
1692
+ add w7,w7,w12
1693
+ eor v27.16b,v15.16b,v12.16b
1694
+ add w8,w8,w9
1695
+ eor v28.16b,v19.16b,v16.16b
1696
+ eor w21,w21,w5
1697
+ eor v29.16b,v23.16b,v20.16b
1698
+ eor w17,w17,w6
1699
+ ushr v3.4s,v24.4s,#24
1700
+ eor w19,w19,w7
1701
+ ushr v7.4s,v25.4s,#24
1702
+ eor w20,w20,w8
1703
+ ushr v11.4s,v26.4s,#24
1704
+ ror w21,w21,#16
1705
+ ushr v15.4s,v27.4s,#24
1706
+ ror w17,w17,#16
1707
+ ushr v19.4s,v28.4s,#24
1708
+ ror w19,w19,#16
1709
+ ushr v23.4s,v29.4s,#24
1710
+ ror w20,w20,#16
1711
+ sli v3.4s,v24.4s,#8
1712
+ add w15,w15,w21
1713
+ sli v7.4s,v25.4s,#8
1714
+ add w16,w16,w17
1715
+ sli v11.4s,v26.4s,#8
1716
+ add w13,w13,w19
1717
+ sli v15.4s,v27.4s,#8
1718
+ add w14,w14,w20
1719
+ sli v19.4s,v28.4s,#8
1720
+ eor w10,w10,w15
1721
+ sli v23.4s,v29.4s,#8
1722
+ eor w11,w11,w16
1723
+ add v2.4s,v2.4s,v3.4s
1724
+ eor w12,w12,w13
1725
+ add v6.4s,v6.4s,v7.4s
1726
+ eor w9,w9,w14
1727
+ add v10.4s,v10.4s,v11.4s
1728
+ ror w10,w10,#20
1729
+ add v14.4s,v14.4s,v15.4s
1730
+ ror w11,w11,#20
1731
+ add v18.4s,v18.4s,v19.4s
1732
+ ror w12,w12,#20
1733
+ add v22.4s,v22.4s,v23.4s
1734
+ ror w9,w9,#20
1735
+ eor v24.16b,v1.16b,v2.16b
1736
+ add w5,w5,w10
1737
+ eor v25.16b,v5.16b,v6.16b
1738
+ add w6,w6,w11
1739
+ eor v26.16b,v9.16b,v10.16b
1740
+ add w7,w7,w12
1741
+ eor v27.16b,v13.16b,v14.16b
1742
+ add w8,w8,w9
1743
+ eor v28.16b,v17.16b,v18.16b
1744
+ eor w21,w21,w5
1745
+ eor v29.16b,v21.16b,v22.16b
1746
+ eor w17,w17,w6
1747
+ ushr v1.4s,v24.4s,#25
1748
+ eor w19,w19,w7
1749
+ ushr v5.4s,v25.4s,#25
1750
+ eor w20,w20,w8
1751
+ ushr v9.4s,v26.4s,#25
1752
+ ror w21,w21,#24
1753
+ ushr v13.4s,v27.4s,#25
1754
+ ror w17,w17,#24
1755
+ ushr v17.4s,v28.4s,#25
1756
+ ror w19,w19,#24
1757
+ ushr v21.4s,v29.4s,#25
1758
+ ror w20,w20,#24
1759
+ sli v1.4s,v24.4s,#7
1760
+ add w15,w15,w21
1761
+ sli v5.4s,v25.4s,#7
1762
+ add w16,w16,w17
1763
+ sli v9.4s,v26.4s,#7
1764
+ add w13,w13,w19
1765
+ sli v13.4s,v27.4s,#7
1766
+ add w14,w14,w20
1767
+ sli v17.4s,v28.4s,#7
1768
+ eor w10,w10,w15
1769
+ sli v21.4s,v29.4s,#7
1770
+ eor w11,w11,w16
1771
+ ext v2.16b,v2.16b,v2.16b,#8
1772
+ eor w12,w12,w13
1773
+ ext v6.16b,v6.16b,v6.16b,#8
1774
+ eor w9,w9,w14
1775
+ ext v10.16b,v10.16b,v10.16b,#8
1776
+ ror w10,w10,#25
1777
+ ext v14.16b,v14.16b,v14.16b,#8
1778
+ ror w11,w11,#25
1779
+ ext v18.16b,v18.16b,v18.16b,#8
1780
+ ror w12,w12,#25
1781
+ ext v22.16b,v22.16b,v22.16b,#8
1782
+ ror w9,w9,#25
1783
+ ext v3.16b,v3.16b,v3.16b,#4
1784
+ ext v7.16b,v7.16b,v7.16b,#4
1785
+ ext v11.16b,v11.16b,v11.16b,#4
1786
+ ext v15.16b,v15.16b,v15.16b,#4
1787
+ ext v19.16b,v19.16b,v19.16b,#4
1788
+ ext v23.16b,v23.16b,v23.16b,#4
1789
+ ext v1.16b,v1.16b,v1.16b,#12
1790
+ ext v5.16b,v5.16b,v5.16b,#12
1791
+ ext v9.16b,v9.16b,v9.16b,#12
1792
+ ext v13.16b,v13.16b,v13.16b,#12
1793
+ ext v17.16b,v17.16b,v17.16b,#12
1794
+ ext v21.16b,v21.16b,v21.16b,#12
1795
+ cbnz x4,Loop_lower_neon
1796
+
1797
+ add w5,w5,w22 // accumulate key block
1798
+ ldp q24,q25,[sp,#0]
1799
+ add x6,x6,x22,lsr#32
1800
+ ldp q26,q27,[sp,#32]
1801
+ add w7,w7,w23
1802
+ ldp q28,q29,[sp,#64]
1803
+ add x8,x8,x23,lsr#32
1804
+ add v0.4s,v0.4s,v24.4s
1805
+ add w9,w9,w24
1806
+ add v4.4s,v4.4s,v24.4s
1807
+ add x10,x10,x24,lsr#32
1808
+ add v8.4s,v8.4s,v24.4s
1809
+ add w11,w11,w25
1810
+ add v12.4s,v12.4s,v24.4s
1811
+ add x12,x12,x25,lsr#32
1812
+ add v16.4s,v16.4s,v24.4s
1813
+ add w13,w13,w26
1814
+ add v20.4s,v20.4s,v24.4s
1815
+ add x14,x14,x26,lsr#32
1816
+ add v2.4s,v2.4s,v26.4s
1817
+ add w15,w15,w27
1818
+ add v6.4s,v6.4s,v26.4s
1819
+ add x16,x16,x27,lsr#32
1820
+ add v10.4s,v10.4s,v26.4s
1821
+ add w17,w17,w28
1822
+ add v14.4s,v14.4s,v26.4s
1823
+ add x19,x19,x28,lsr#32
1824
+ add v18.4s,v18.4s,v26.4s
1825
+ add w20,w20,w30
1826
+ add v22.4s,v22.4s,v26.4s
1827
+ add x21,x21,x30,lsr#32
1828
+ add v19.4s,v19.4s,v31.4s // +4
1829
+ add x5,x5,x6,lsl#32 // pack
1830
+ add v23.4s,v23.4s,v31.4s // +4
1831
+ add x7,x7,x8,lsl#32
1832
+ add v3.4s,v3.4s,v27.4s
1833
+ ldp x6,x8,[x1,#0] // load input
1834
+ add v7.4s,v7.4s,v28.4s
1835
+ add x9,x9,x10,lsl#32
1836
+ add v11.4s,v11.4s,v29.4s
1837
+ add x11,x11,x12,lsl#32
1838
+ add v15.4s,v15.4s,v30.4s
1839
+ ldp x10,x12,[x1,#16]
1840
+ add v19.4s,v19.4s,v27.4s
1841
+ add x13,x13,x14,lsl#32
1842
+ add v23.4s,v23.4s,v28.4s
1843
+ add x15,x15,x16,lsl#32
1844
+ add v1.4s,v1.4s,v25.4s
1845
+ ldp x14,x16,[x1,#32]
1846
+ add v5.4s,v5.4s,v25.4s
1847
+ add x17,x17,x19,lsl#32
1848
+ add v9.4s,v9.4s,v25.4s
1849
+ add x20,x20,x21,lsl#32
1850
+ add v13.4s,v13.4s,v25.4s
1851
+ ldp x19,x21,[x1,#48]
1852
+ add v17.4s,v17.4s,v25.4s
1853
+ add x1,x1,#64
1854
+ add v21.4s,v21.4s,v25.4s
1855
+
1856
+ #ifdef __AARCH64EB__
1857
+ rev x5,x5
1858
+ rev x7,x7
1859
+ rev x9,x9
1860
+ rev x11,x11
1861
+ rev x13,x13
1862
+ rev x15,x15
1863
+ rev x17,x17
1864
+ rev x20,x20
1865
+ #endif
1866
+ ld1 {v24.16b,v25.16b,v26.16b,v27.16b},[x1],#64
1867
+ eor x5,x5,x6
1868
+ eor x7,x7,x8
1869
+ eor x9,x9,x10
1870
+ eor x11,x11,x12
1871
+ eor x13,x13,x14
1872
+ eor v0.16b,v0.16b,v24.16b
1873
+ eor x15,x15,x16
1874
+ eor v1.16b,v1.16b,v25.16b
1875
+ eor x17,x17,x19
1876
+ eor v2.16b,v2.16b,v26.16b
1877
+ eor x20,x20,x21
1878
+ eor v3.16b,v3.16b,v27.16b
1879
+ ld1 {v24.16b,v25.16b,v26.16b,v27.16b},[x1],#64
1880
+
1881
+ stp x5,x7,[x0,#0] // store output
1882
+ add x28,x28,#7 // increment counter
1883
+ stp x9,x11,[x0,#16]
1884
+ stp x13,x15,[x0,#32]
1885
+ stp x17,x20,[x0,#48]
1886
+ add x0,x0,#64
1887
+ st1 {v0.16b,v1.16b,v2.16b,v3.16b},[x0],#64
1888
+
1889
+ ld1 {v0.16b,v1.16b,v2.16b,v3.16b},[x1],#64
1890
+ eor v4.16b,v4.16b,v24.16b
1891
+ eor v5.16b,v5.16b,v25.16b
1892
+ eor v6.16b,v6.16b,v26.16b
1893
+ eor v7.16b,v7.16b,v27.16b
1894
+ st1 {v4.16b,v5.16b,v6.16b,v7.16b},[x0],#64
1895
+
1896
+ ld1 {v4.16b,v5.16b,v6.16b,v7.16b},[x1],#64
1897
+ eor v8.16b,v8.16b,v0.16b
1898
+ ldp q24,q25,[sp,#0]
1899
+ eor v9.16b,v9.16b,v1.16b
1900
+ ldp q26,q27,[sp,#32]
1901
+ eor v10.16b,v10.16b,v2.16b
1902
+ eor v11.16b,v11.16b,v3.16b
1903
+ st1 {v8.16b,v9.16b,v10.16b,v11.16b},[x0],#64
1904
+
1905
+ ld1 {v8.16b,v9.16b,v10.16b,v11.16b},[x1],#64
1906
+ eor v12.16b,v12.16b,v4.16b
1907
+ eor v13.16b,v13.16b,v5.16b
1908
+ eor v14.16b,v14.16b,v6.16b
1909
+ eor v15.16b,v15.16b,v7.16b
1910
+ st1 {v12.16b,v13.16b,v14.16b,v15.16b},[x0],#64
1911
+
1912
+ ld1 {v12.16b,v13.16b,v14.16b,v15.16b},[x1],#64
1913
+ eor v16.16b,v16.16b,v8.16b
1914
+ eor v17.16b,v17.16b,v9.16b
1915
+ eor v18.16b,v18.16b,v10.16b
1916
+ eor v19.16b,v19.16b,v11.16b
1917
+ st1 {v16.16b,v17.16b,v18.16b,v19.16b},[x0],#64
1918
+
1919
+ shl v0.4s,v31.4s,#1 // 4 -> 8
1920
+ eor v20.16b,v20.16b,v12.16b
1921
+ eor v21.16b,v21.16b,v13.16b
1922
+ eor v22.16b,v22.16b,v14.16b
1923
+ eor v23.16b,v23.16b,v15.16b
1924
+ st1 {v20.16b,v21.16b,v22.16b,v23.16b},[x0],#64
1925
+
1926
+ add v27.4s,v27.4s,v0.4s // += 8
1927
+ add v28.4s,v28.4s,v0.4s
1928
+ add v29.4s,v29.4s,v0.4s
1929
+ add v30.4s,v30.4s,v0.4s
1930
+
1931
+ b.hs Loop_outer_512_neon
1932
+
1933
+ adds x2,x2,#512
1934
+ ushr v0.4s,v31.4s,#2 // 4 -> 1
1935
+
1936
+ ldp d8,d9,[sp,#128+0] // meet ABI requirements
1937
+ ldp d10,d11,[sp,#128+16]
1938
+ ldp d12,d13,[sp,#128+32]
1939
+ ldp d14,d15,[sp,#128+48]
1940
+
1941
+ stp q24,q31,[sp,#0] // wipe off-load area
1942
+ stp q24,q31,[sp,#32]
1943
+ stp q24,q31,[sp,#64]
1944
+
1945
+ b.eq Ldone_512_neon
1946
+
1947
+ cmp x2,#192
1948
+ sub v27.4s,v27.4s,v0.4s // -= 1
1949
+ sub v28.4s,v28.4s,v0.4s
1950
+ sub v29.4s,v29.4s,v0.4s
1951
+ add sp,sp,#128
1952
+ b.hs Loop_outer_neon
1953
+
1954
+ eor v25.16b,v25.16b,v25.16b
1955
+ eor v26.16b,v26.16b,v26.16b
1956
+ eor v27.16b,v27.16b,v27.16b
1957
+ eor v28.16b,v28.16b,v28.16b
1958
+ eor v29.16b,v29.16b,v29.16b
1959
+ eor v30.16b,v30.16b,v30.16b
1960
+ b Loop_outer
1961
+
1962
+ Ldone_512_neon:
1963
+ ldp x19,x20,[x29,#16]
1964
+ add sp,sp,#128+64
1965
+ ldp x21,x22,[x29,#32]
1966
+ ldp x23,x24,[x29,#48]
1967
+ ldp x25,x26,[x29,#64]
1968
+ ldp x27,x28,[x29,#80]
1969
+ ldp x29,x30,[sp],#96
1970
+ AARCH64_VALIDATE_LINK_REGISTER
1971
+ ret
1972
+
1973
+ #endif // !OPENSSL_NO_ASM && defined(OPENSSL_AARCH64) && defined(_WIN32)