visaljs 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1007) hide show
  1. package/cli.js +393 -62
  2. package/node/include/js_node.h +28 -5
  3. package/node/include/js_uv.h +36 -0
  4. package/node/prelude/crypto.js +7 -10
  5. package/node/prelude/dns.js +99 -0
  6. package/node/prelude/dns_promises.js +10 -0
  7. package/node/prelude/http.js +1039 -195
  8. package/node/prelude/internal/crypto/asym.js +39 -12
  9. package/node/prelude/internal/crypto/dh_groups.js +12 -0
  10. package/node/prelude/internal/crypto/diffiehellman.js +354 -0
  11. package/node/prelude/internal/crypto/hash.js +1 -1
  12. package/node/prelude/internal/crypto/key_type.js +3 -0
  13. package/node/prelude/internal/crypto/keys.js +39 -9
  14. package/node/prelude/internal/http_agent.js +249 -0
  15. package/node/prelude/internal/net.js +33 -0
  16. package/node/prelude/internal/socketaddress.js +249 -0
  17. package/node/prelude/internal/tls/common.js +306 -0
  18. package/node/prelude/internal/tls/wrap.js +1217 -0
  19. package/node/prelude/internal/tls/x509.js +394 -0
  20. package/node/prelude/net.js +1083 -50
  21. package/node/prelude/stream.js +6 -0
  22. package/node/prelude/tls.js +141 -0
  23. package/node/prelude/util.js +5 -2
  24. package/node/prelude/util_types.js +85 -0
  25. package/node/src/host_http.c +268 -270
  26. package/node/src/host_loop.c +84 -0
  27. package/node/src/host_net.c +495 -0
  28. package/node/src/host_sys.c +16 -0
  29. package/package.json +1 -1
  30. package/runtime/include/js_builtins.h +16 -0
  31. package/runtime/include/js_console.h +2 -0
  32. package/runtime/include/js_core.def +23 -0
  33. package/runtime/include/js_crypto.h +23 -0
  34. package/runtime/include/js_generator.h +2 -3
  35. package/runtime/include/js_promise.h +0 -2
  36. package/runtime/src/async_iter.c +4 -1
  37. package/runtime/src/boringssl_support.cc +34 -0
  38. package/runtime/src/builtin_table.c +8 -0
  39. package/runtime/src/components.c +10 -0
  40. package/runtime/src/console.c +6 -18
  41. package/runtime/src/core_all.c +1 -0
  42. package/runtime/src/crypto_asym.c +450 -241
  43. package/runtime/src/crypto_bn.c +91 -0
  44. package/runtime/src/crypto_cipher.c +153 -75
  45. package/runtime/src/crypto_hash.c +68 -53
  46. package/runtime/src/crypto_internal.h +55 -26
  47. package/runtime/src/crypto_pkey.c +198 -61
  48. package/runtime/src/crypto_subtle.c +42 -16
  49. package/runtime/src/crypto_tls.c +678 -0
  50. package/runtime/src/generator.c +8 -1
  51. package/runtime/src/global.c +2 -4
  52. package/runtime/src/internal.h +0 -1
  53. package/runtime/src/jobs.c +2 -1
  54. package/runtime/src/promise.c +4 -1
  55. package/runtime/src/tls_roots.gen.h +3215 -0
  56. package/runtime/src/util_types.c +52 -0
  57. package/runtime/src/weak.c +2 -1
  58. package/runtime/third_party/boringssl/LICENSE +238 -0
  59. package/runtime/third_party/boringssl/README.md +46 -0
  60. package/runtime/third_party/boringssl/VERSION +1 -0
  61. package/runtime/third_party/boringssl/crypto/aes/aes.cc +44 -0
  62. package/runtime/third_party/boringssl/crypto/armv8_feature_parsing.h +67 -0
  63. package/runtime/third_party/boringssl/crypto/asn1/a_bitstr.cc +297 -0
  64. package/runtime/third_party/boringssl/crypto/asn1/a_bool.cc +50 -0
  65. package/runtime/third_party/boringssl/crypto/asn1/a_d2i_fp.cc +47 -0
  66. package/runtime/third_party/boringssl/crypto/asn1/a_dup.cc +42 -0
  67. package/runtime/third_party/boringssl/crypto/asn1/a_gentm.cc +130 -0
  68. package/runtime/third_party/boringssl/crypto/asn1/a_i2d_fp.cc +44 -0
  69. package/runtime/third_party/boringssl/crypto/asn1/a_int.cc +467 -0
  70. package/runtime/third_party/boringssl/crypto/asn1/a_mbstr.cc +242 -0
  71. package/runtime/third_party/boringssl/crypto/asn1/a_object.cc +191 -0
  72. package/runtime/third_party/boringssl/crypto/asn1/a_octet.cc +32 -0
  73. package/runtime/third_party/boringssl/crypto/asn1/a_strex.cc +411 -0
  74. package/runtime/third_party/boringssl/crypto/asn1/a_strnid.cc +208 -0
  75. package/runtime/third_party/boringssl/crypto/asn1/a_time.cc +248 -0
  76. package/runtime/third_party/boringssl/crypto/asn1/a_type.cc +467 -0
  77. package/runtime/third_party/boringssl/crypto/asn1/a_utctm.cc +128 -0
  78. package/runtime/third_party/boringssl/crypto/asn1/asn1_lib.cc +453 -0
  79. package/runtime/third_party/boringssl/crypto/asn1/asn1_par.cc +61 -0
  80. package/runtime/third_party/boringssl/crypto/asn1/asn_pack.cc +56 -0
  81. package/runtime/third_party/boringssl/crypto/asn1/f_int.cc +63 -0
  82. package/runtime/third_party/boringssl/crypto/asn1/f_string.cc +52 -0
  83. package/runtime/third_party/boringssl/crypto/asn1/internal.h +430 -0
  84. package/runtime/third_party/boringssl/crypto/asn1/posix_time.cc +244 -0
  85. package/runtime/third_party/boringssl/crypto/asn1/tasn_dec.cc +611 -0
  86. package/runtime/third_party/boringssl/crypto/asn1/tasn_enc.cc +348 -0
  87. package/runtime/third_party/boringssl/crypto/asn1/tasn_fre.cc +163 -0
  88. package/runtime/third_party/boringssl/crypto/asn1/tasn_new.cc +274 -0
  89. package/runtime/third_party/boringssl/crypto/asn1/tasn_typ.cc +92 -0
  90. package/runtime/third_party/boringssl/crypto/asn1/tasn_utl.cc +218 -0
  91. package/runtime/third_party/boringssl/crypto/base64/base64.cc +433 -0
  92. package/runtime/third_party/boringssl/crypto/bcm_support.h +62 -0
  93. package/runtime/third_party/boringssl/crypto/bio/bio.cc +715 -0
  94. package/runtime/third_party/boringssl/crypto/bio/bio_mem.cc +260 -0
  95. package/runtime/third_party/boringssl/crypto/bio/connect.cc +463 -0
  96. package/runtime/third_party/boringssl/crypto/bio/errno.cc +52 -0
  97. package/runtime/third_party/boringssl/crypto/bio/fd.cc +193 -0
  98. package/runtime/third_party/boringssl/crypto/bio/file.cc +283 -0
  99. package/runtime/third_party/boringssl/crypto/bio/hexdump.cc +154 -0
  100. package/runtime/third_party/boringssl/crypto/bio/internal.h +128 -0
  101. package/runtime/third_party/boringssl/crypto/bio/pair.cc +426 -0
  102. package/runtime/third_party/boringssl/crypto/bio/printf.cc +59 -0
  103. package/runtime/third_party/boringssl/crypto/bio/socket.cc +210 -0
  104. package/runtime/third_party/boringssl/crypto/bio/socket_helper.cc +179 -0
  105. package/runtime/third_party/boringssl/crypto/blake2/blake2.cc +173 -0
  106. package/runtime/third_party/boringssl/crypto/bn/bn_asn1.cc +57 -0
  107. package/runtime/third_party/boringssl/crypto/bn/convert.cc +409 -0
  108. package/runtime/third_party/boringssl/crypto/bn/div.cc +102 -0
  109. package/runtime/third_party/boringssl/crypto/bn/exponentiation.cc +168 -0
  110. package/runtime/third_party/boringssl/crypto/bn/sqrt.cc +93 -0
  111. package/runtime/third_party/boringssl/crypto/buf/buf.cc +119 -0
  112. package/runtime/third_party/boringssl/crypto/bytestring/asn1_compat.cc +54 -0
  113. package/runtime/third_party/boringssl/crypto/bytestring/ber.cc +268 -0
  114. package/runtime/third_party/boringssl/crypto/bytestring/cbb.cc +787 -0
  115. package/runtime/third_party/boringssl/crypto/bytestring/cbs.cc +977 -0
  116. package/runtime/third_party/boringssl/crypto/bytestring/internal.h +134 -0
  117. package/runtime/third_party/boringssl/crypto/bytestring/unicode.cc +156 -0
  118. package/runtime/third_party/boringssl/crypto/chacha/chacha.cc +226 -0
  119. package/runtime/third_party/boringssl/crypto/chacha/internal.h +103 -0
  120. package/runtime/third_party/boringssl/crypto/cipher/derive_key.cc +106 -0
  121. package/runtime/third_party/boringssl/crypto/cipher/e_aesctrhmac.cc +294 -0
  122. package/runtime/third_party/boringssl/crypto/cipher/e_aeseax.cc +351 -0
  123. package/runtime/third_party/boringssl/crypto/cipher/e_aesgcmsiv.cc +918 -0
  124. package/runtime/third_party/boringssl/crypto/cipher/e_chacha20poly1305.cc +404 -0
  125. package/runtime/third_party/boringssl/crypto/cipher/e_des.cc +214 -0
  126. package/runtime/third_party/boringssl/crypto/cipher/e_null.cc +55 -0
  127. package/runtime/third_party/boringssl/crypto/cipher/e_rc2.cc +432 -0
  128. package/runtime/third_party/boringssl/crypto/cipher/e_rc4.cc +56 -0
  129. package/runtime/third_party/boringssl/crypto/cipher/e_tls.cc +615 -0
  130. package/runtime/third_party/boringssl/crypto/cipher/get_cipher.cc +85 -0
  131. package/runtime/third_party/boringssl/crypto/cipher/internal.h +399 -0
  132. package/runtime/third_party/boringssl/crypto/cipher/tls_cbc.cc +476 -0
  133. package/runtime/third_party/boringssl/crypto/cms/cms.cc +178 -0
  134. package/runtime/third_party/boringssl/crypto/conf/conf.cc +637 -0
  135. package/runtime/third_party/boringssl/crypto/conf/internal.h +54 -0
  136. package/runtime/third_party/boringssl/crypto/cpu_aarch64_apple.cc +76 -0
  137. package/runtime/third_party/boringssl/crypto/cpu_aarch64_fuchsia.cc +58 -0
  138. package/runtime/third_party/boringssl/crypto/cpu_aarch64_linux.cc +66 -0
  139. package/runtime/third_party/boringssl/crypto/cpu_aarch64_openbsd.cc +45 -0
  140. package/runtime/third_party/boringssl/crypto/cpu_aarch64_sysreg.cc +66 -0
  141. package/runtime/third_party/boringssl/crypto/cpu_aarch64_win.cc +52 -0
  142. package/runtime/third_party/boringssl/crypto/cpu_arm_freebsd.cc +55 -0
  143. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.cc +173 -0
  144. package/runtime/third_party/boringssl/crypto/cpu_arm_linux.h +141 -0
  145. package/runtime/third_party/boringssl/crypto/cpu_intel.cc +287 -0
  146. package/runtime/third_party/boringssl/crypto/crypto.cc +152 -0
  147. package/runtime/third_party/boringssl/crypto/curve25519/asm/x25519-asm-arm.S +2124 -0
  148. package/runtime/third_party/boringssl/crypto/curve25519/cpace.cc +227 -0
  149. package/runtime/third_party/boringssl/crypto/curve25519/curve25519.cc +2436 -0
  150. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_64_adx.cc +18 -0
  151. package/runtime/third_party/boringssl/crypto/curve25519/curve25519_tables.h +3264 -0
  152. package/runtime/third_party/boringssl/crypto/curve25519/internal.h +202 -0
  153. package/runtime/third_party/boringssl/crypto/curve25519/spake25519.cc +532 -0
  154. package/runtime/third_party/boringssl/crypto/des/des.cc +837 -0
  155. package/runtime/third_party/boringssl/crypto/des/internal.h +144 -0
  156. package/runtime/third_party/boringssl/crypto/dh/dh_asn1.cc +109 -0
  157. package/runtime/third_party/boringssl/crypto/dh/params.cc +411 -0
  158. package/runtime/third_party/boringssl/crypto/digest/digest_extra.cc +361 -0
  159. package/runtime/third_party/boringssl/crypto/dsa/dsa.cc +922 -0
  160. package/runtime/third_party/boringssl/crypto/dsa/dsa_asn1.cc +306 -0
  161. package/runtime/third_party/boringssl/crypto/dsa/internal.h +56 -0
  162. package/runtime/third_party/boringssl/crypto/ec/ec_asn1.cc +542 -0
  163. package/runtime/third_party/boringssl/crypto/ec/ec_derive.cc +94 -0
  164. package/runtime/third_party/boringssl/crypto/ec/hash_to_curve.cc +773 -0
  165. package/runtime/third_party/boringssl/crypto/ec/internal.h +114 -0
  166. package/runtime/third_party/boringssl/crypto/ecdh/ecdh.cc +75 -0
  167. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_asn1.cc +337 -0
  168. package/runtime/third_party/boringssl/crypto/ecdsa/ecdsa_p1363.cc +54 -0
  169. package/runtime/third_party/boringssl/crypto/engine/engine.cc +95 -0
  170. package/runtime/third_party/boringssl/crypto/err/err.cc +820 -0
  171. package/runtime/third_party/boringssl/crypto/err/internal.h +45 -0
  172. package/runtime/third_party/boringssl/crypto/evp/evp.cc +454 -0
  173. package/runtime/third_party/boringssl/crypto/evp/evp_asn1.cc +439 -0
  174. package/runtime/third_party/boringssl/crypto/evp/evp_ctx.cc +541 -0
  175. package/runtime/third_party/boringssl/crypto/evp/evp_kem.cc +101 -0
  176. package/runtime/third_party/boringssl/crypto/evp/internal.h +427 -0
  177. package/runtime/third_party/boringssl/crypto/evp/p_dh.cc +326 -0
  178. package/runtime/third_party/boringssl/crypto/evp/p_dsa.cc +333 -0
  179. package/runtime/third_party/boringssl/crypto/evp/p_ec.cc +736 -0
  180. package/runtime/third_party/boringssl/crypto/evp/p_ed25519.cc +359 -0
  181. package/runtime/third_party/boringssl/crypto/evp/p_hkdf.cc +204 -0
  182. package/runtime/third_party/boringssl/crypto/evp/p_mldsa.cc +549 -0
  183. package/runtime/third_party/boringssl/crypto/evp/p_mlkem.cc +510 -0
  184. package/runtime/third_party/boringssl/crypto/evp/p_rsa.cc +1185 -0
  185. package/runtime/third_party/boringssl/crypto/evp/p_x25519.cc +371 -0
  186. package/runtime/third_party/boringssl/crypto/evp/p_xwing.cc +300 -0
  187. package/runtime/third_party/boringssl/crypto/evp/pbkdf.cc +105 -0
  188. package/runtime/third_party/boringssl/crypto/evp/print.cc +287 -0
  189. package/runtime/third_party/boringssl/crypto/evp/scrypt.cc +218 -0
  190. package/runtime/third_party/boringssl/crypto/evp/sign.cc +95 -0
  191. package/runtime/third_party/boringssl/crypto/ex_data.cc +140 -0
  192. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes.cc.inc +208 -0
  193. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/aes_nohw.cc.inc +1279 -0
  194. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cbc.cc.inc +132 -0
  195. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/cfb.cc.inc +168 -0
  196. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ctr.cc.inc +102 -0
  197. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm.cc.inc +614 -0
  198. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/gcm_nohw.cc.inc +304 -0
  199. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/internal.h +590 -0
  200. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/key_wrap.cc.inc +211 -0
  201. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/mode_wrappers.cc.inc +97 -0
  202. package/runtime/third_party/boringssl/crypto/fipsmodule/aes/ofb.cc.inc +55 -0
  203. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm.cc +288 -0
  204. package/runtime/third_party/boringssl/crypto/fipsmodule/bcm_interface.h +953 -0
  205. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/add.cc.inc +276 -0
  206. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/asm/x86_64-gcc.cc.inc +573 -0
  207. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bn.cc.inc +377 -0
  208. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/bytes.cc.inc +230 -0
  209. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/cmp.cc.inc +161 -0
  210. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/ctx.cc.inc +127 -0
  211. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div.cc.inc +738 -0
  212. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/div_extra.cc.inc +90 -0
  213. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/exponentiation.cc.inc +743 -0
  214. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd.cc.inc +281 -0
  215. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/gcd_extra.cc.inc +327 -0
  216. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/generic.cc.inc +579 -0
  217. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/internal.h +810 -0
  218. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/jacobi.cc.inc +101 -0
  219. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery.cc.inc +408 -0
  220. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/montgomery_inv.cc.inc +179 -0
  221. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/mul.cc.inc +347 -0
  222. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/prime.cc.inc +931 -0
  223. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/random.cc.inc +261 -0
  224. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.cc.inc +144 -0
  225. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/rsaz_exp.h +109 -0
  226. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/shift.cc.inc +317 -0
  227. package/runtime/third_party/boringssl/crypto/fipsmodule/bn/sqrt.cc.inc +370 -0
  228. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/aead.cc.inc +619 -0
  229. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/cipher.cc.inc +837 -0
  230. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aes.cc.inc +1240 -0
  231. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/e_aesccm.cc.inc +440 -0
  232. package/runtime/third_party/boringssl/crypto/fipsmodule/cipher/internal.h +461 -0
  233. package/runtime/third_party/boringssl/crypto/fipsmodule/cmac/cmac.cc.inc +293 -0
  234. package/runtime/third_party/boringssl/crypto/fipsmodule/delocate.h +95 -0
  235. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/check.cc.inc +198 -0
  236. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/dh.cc.inc +401 -0
  237. package/runtime/third_party/boringssl/crypto/fipsmodule/dh/internal.h +63 -0
  238. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digest.cc.inc +221 -0
  239. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/digests.cc.inc +184 -0
  240. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/internal.h +72 -0
  241. package/runtime/third_party/boringssl/crypto/fipsmodule/digest/md32_common.h +166 -0
  242. package/runtime/third_party/boringssl/crypto/fipsmodule/digestsign/digestsign.cc.inc +230 -0
  243. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/builtin_curves.h +277 -0
  244. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec.cc.inc +1024 -0
  245. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_key.cc.inc +536 -0
  246. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/ec_montgomery.cc.inc +379 -0
  247. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/felem.cc.inc +250 -0
  248. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/internal.h +752 -0
  249. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/oct.cc.inc +174 -0
  250. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz-table.h +9502 -0
  251. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.cc.inc +740 -0
  252. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256-nistz.h +207 -0
  253. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256.cc.inc +578 -0
  254. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/p256_table.h +297 -0
  255. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/scalar.cc.inc +184 -0
  256. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple.cc.inc +246 -0
  257. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/simple_mul.cc.inc +274 -0
  258. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/util.cc.inc +258 -0
  259. package/runtime/third_party/boringssl/crypto/fipsmodule/ec/wnaf.cc.inc +224 -0
  260. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdh/ecdh.cc.inc +91 -0
  261. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/ecdsa.cc.inc +288 -0
  262. package/runtime/third_party/boringssl/crypto/fipsmodule/ecdsa/internal.h +57 -0
  263. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/internal.h +38 -0
  264. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/jitter.cc.inc +487 -0
  265. package/runtime/third_party/boringssl/crypto/fipsmodule/entropy/sha512.cc.inc +329 -0
  266. package/runtime/third_party/boringssl/crypto/fipsmodule/fips_shared_support.cc +28 -0
  267. package/runtime/third_party/boringssl/crypto/fipsmodule/hkdf/hkdf.cc.inc +114 -0
  268. package/runtime/third_party/boringssl/crypto/fipsmodule/hmac/hmac.cc.inc +218 -0
  269. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/internal.h +165 -0
  270. package/runtime/third_party/boringssl/crypto/fipsmodule/keccak/keccak.cc.inc +647 -0
  271. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/fips_known_values.inc +1345 -0
  272. package/runtime/third_party/boringssl/crypto/fipsmodule/mldsa/mldsa.cc.inc +3323 -0
  273. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/fips_known_values.inc +411 -0
  274. package/runtime/third_party/boringssl/crypto/fipsmodule/mlkem/mlkem.cc.inc +1856 -0
  275. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/android_entropy_client.cc.inc +82 -0
  276. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/ctrdrbg.cc.inc +401 -0
  277. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/internal.h +99 -0
  278. package/runtime/third_party/boringssl/crypto/fipsmodule/rand/rand.cc.inc +486 -0
  279. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/internal.h +167 -0
  280. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/padding.cc.inc +371 -0
  281. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa.cc.inc +996 -0
  282. package/runtime/third_party/boringssl/crypto/fipsmodule/rsa/rsa_impl.cc.inc +1000 -0
  283. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/fips.cc.inc +129 -0
  284. package/runtime/third_party/boringssl/crypto/fipsmodule/self_check/self_check.cc.inc +1093 -0
  285. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/internal.h +112 -0
  286. package/runtime/third_party/boringssl/crypto/fipsmodule/service_indicator/service_indicator.cc.inc +330 -0
  287. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/internal.h +205 -0
  288. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha1.cc.inc +404 -0
  289. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha256.cc.inc +315 -0
  290. package/runtime/third_party/boringssl/crypto/fipsmodule/sha/sha512.cc.inc +473 -0
  291. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/address.h +144 -0
  292. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fips_known_values.inc +674 -0
  293. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.cc.inc +179 -0
  294. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/fors.h +48 -0
  295. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.cc.inc +164 -0
  296. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/merkle.h +58 -0
  297. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/params.h +178 -0
  298. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/slhdsa.cc.inc +690 -0
  299. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.cc.inc +326 -0
  300. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/thash.h +71 -0
  301. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.cc.inc +172 -0
  302. package/runtime/third_party/boringssl/crypto/fipsmodule/slhdsa/wots.h +40 -0
  303. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/internal.h +33 -0
  304. package/runtime/third_party/boringssl/crypto/fipsmodule/tls/kdf.cc.inc +180 -0
  305. package/runtime/third_party/boringssl/crypto/fuzzer_mode.cc +30 -0
  306. package/runtime/third_party/boringssl/crypto/hpke/hpke.cc +1514 -0
  307. package/runtime/third_party/boringssl/crypto/hrss/asm/poly_rq_mul.S +8489 -0
  308. package/runtime/third_party/boringssl/crypto/hrss/hrss.cc +2189 -0
  309. package/runtime/third_party/boringssl/crypto/hrss/internal.h +64 -0
  310. package/runtime/third_party/boringssl/crypto/internal.h +1767 -0
  311. package/runtime/third_party/boringssl/crypto/lhash/internal.h +222 -0
  312. package/runtime/third_party/boringssl/crypto/lhash/lhash.cc +312 -0
  313. package/runtime/third_party/boringssl/crypto/md4/md4.cc +207 -0
  314. package/runtime/third_party/boringssl/crypto/md5/internal.h +34 -0
  315. package/runtime/third_party/boringssl/crypto/md5/md5.cc +255 -0
  316. package/runtime/third_party/boringssl/crypto/mem.cc +577 -0
  317. package/runtime/third_party/boringssl/crypto/mem_internal.h +706 -0
  318. package/runtime/third_party/boringssl/crypto/mldsa/mldsa.cc +296 -0
  319. package/runtime/third_party/boringssl/crypto/mlkem/mlkem.cc +108 -0
  320. package/runtime/third_party/boringssl/crypto/obj/obj.cc +494 -0
  321. package/runtime/third_party/boringssl/crypto/obj/obj_dat.h +11722 -0
  322. package/runtime/third_party/boringssl/crypto/obj/obj_xref.cc +83 -0
  323. package/runtime/third_party/boringssl/crypto/params_internal.h +30 -0
  324. package/runtime/third_party/boringssl/crypto/pem/internal.h +135 -0
  325. package/runtime/third_party/boringssl/crypto/pem/pem_all.cc +153 -0
  326. package/runtime/third_party/boringssl/crypto/pem/pem_info.cc +250 -0
  327. package/runtime/third_party/boringssl/crypto/pem/pem_lib.cc +707 -0
  328. package/runtime/third_party/boringssl/crypto/pem/pem_oth.cc +45 -0
  329. package/runtime/third_party/boringssl/crypto/pem/pem_pk8.cc +211 -0
  330. package/runtime/third_party/boringssl/crypto/pem/pem_pkey.cc +147 -0
  331. package/runtime/third_party/boringssl/crypto/pem/pem_x509.cc +25 -0
  332. package/runtime/third_party/boringssl/crypto/pem/pem_xaux.cc +25 -0
  333. package/runtime/third_party/boringssl/crypto/pkcs7/internal.h +67 -0
  334. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7.cc +198 -0
  335. package/runtime/third_party/boringssl/crypto/pkcs7/pkcs7_x509.cc +527 -0
  336. package/runtime/third_party/boringssl/crypto/pkcs8/internal.h +98 -0
  337. package/runtime/third_party/boringssl/crypto/pkcs8/p5_pbev2.cc +286 -0
  338. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8.cc +473 -0
  339. package/runtime/third_party/boringssl/crypto/pkcs8/pkcs8_x509.cc +1328 -0
  340. package/runtime/third_party/boringssl/crypto/poly1305/internal.h +54 -0
  341. package/runtime/third_party/boringssl/crypto/poly1305/poly1305.cc +315 -0
  342. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm.cc +294 -0
  343. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_arm_asm.S +2017 -0
  344. package/runtime/third_party/boringssl/crypto/poly1305/poly1305_vec.cc +853 -0
  345. package/runtime/third_party/boringssl/crypto/pool/internal.h +95 -0
  346. package/runtime/third_party/boringssl/crypto/pool/pool.cc +282 -0
  347. package/runtime/third_party/boringssl/crypto/rand/deterministic.cc +58 -0
  348. package/runtime/third_party/boringssl/crypto/rand/fork_detect.cc +222 -0
  349. package/runtime/third_party/boringssl/crypto/rand/forkunsafe.cc +44 -0
  350. package/runtime/third_party/boringssl/crypto/rand/getentropy.cc +53 -0
  351. package/runtime/third_party/boringssl/crypto/rand/internal.h +67 -0
  352. package/runtime/third_party/boringssl/crypto/rand/ios.cc +35 -0
  353. package/runtime/third_party/boringssl/crypto/rand/rand.cc +79 -0
  354. package/runtime/third_party/boringssl/crypto/rand/trusty.cc +39 -0
  355. package/runtime/third_party/boringssl/crypto/rand/urandom.cc +149 -0
  356. package/runtime/third_party/boringssl/crypto/rand/windows.cc +91 -0
  357. package/runtime/third_party/boringssl/crypto/rc4/rc4.cc +56 -0
  358. package/runtime/third_party/boringssl/crypto/refcount.cc +49 -0
  359. package/runtime/third_party/boringssl/crypto/rsa/internal.h +51 -0
  360. package/runtime/third_party/boringssl/crypto/rsa/rsa_asn1.cc +404 -0
  361. package/runtime/third_party/boringssl/crypto/rsa/rsa_crypt.cc +530 -0
  362. package/runtime/third_party/boringssl/crypto/rsa/rsa_extra.cc +30 -0
  363. package/runtime/third_party/boringssl/crypto/rsa/rsa_print.cc +25 -0
  364. package/runtime/third_party/boringssl/crypto/sha/sha1.cc +55 -0
  365. package/runtime/third_party/boringssl/crypto/sha/sha256.cc +89 -0
  366. package/runtime/third_party/boringssl/crypto/sha/sha512.cc +106 -0
  367. package/runtime/third_party/boringssl/crypto/siphash/siphash.cc +81 -0
  368. package/runtime/third_party/boringssl/crypto/slhdsa/slhdsa.cc +167 -0
  369. package/runtime/third_party/boringssl/crypto/spake2plus/internal.h +204 -0
  370. package/runtime/third_party/boringssl/crypto/spake2plus/spake2plus.cc +501 -0
  371. package/runtime/third_party/boringssl/crypto/stack/stack.cc +462 -0
  372. package/runtime/third_party/boringssl/crypto/thread.cc +68 -0
  373. package/runtime/third_party/boringssl/crypto/thread_none.cc +48 -0
  374. package/runtime/third_party/boringssl/crypto/thread_pthread.cc +138 -0
  375. package/runtime/third_party/boringssl/crypto/thread_win.cc +227 -0
  376. package/runtime/third_party/boringssl/crypto/trust_token/internal.h +405 -0
  377. package/runtime/third_party/boringssl/crypto/trust_token/pmbtoken.cc +1672 -0
  378. package/runtime/third_party/boringssl/crypto/trust_token/trust_token.cc +701 -0
  379. package/runtime/third_party/boringssl/crypto/trust_token/voprf.cc +1266 -0
  380. package/runtime/third_party/boringssl/crypto/x509/a_digest.cc +52 -0
  381. package/runtime/third_party/boringssl/crypto/x509/a_sign.cc +100 -0
  382. package/runtime/third_party/boringssl/crypto/x509/a_verify.cc +77 -0
  383. package/runtime/third_party/boringssl/crypto/x509/algorithm.cc +167 -0
  384. package/runtime/third_party/boringssl/crypto/x509/asn1_gen.cc +540 -0
  385. package/runtime/third_party/boringssl/crypto/x509/by_dir.cc +301 -0
  386. package/runtime/third_party/boringssl/crypto/x509/by_file.cc +226 -0
  387. package/runtime/third_party/boringssl/crypto/x509/i2d_pr.cc +37 -0
  388. package/runtime/third_party/boringssl/crypto/x509/internal.h +697 -0
  389. package/runtime/third_party/boringssl/crypto/x509/name_print.cc +187 -0
  390. package/runtime/third_party/boringssl/crypto/x509/policy.cc +686 -0
  391. package/runtime/third_party/boringssl/crypto/x509/rsa_pss.cc +187 -0
  392. package/runtime/third_party/boringssl/crypto/x509/t_crl.cc +106 -0
  393. package/runtime/third_party/boringssl/crypto/x509/t_req.cc +206 -0
  394. package/runtime/third_party/boringssl/crypto/x509/t_x509.cc +292 -0
  395. package/runtime/third_party/boringssl/crypto/x509/t_x509a.cc +81 -0
  396. package/runtime/third_party/boringssl/crypto/x509/v3_akey.cc +174 -0
  397. package/runtime/third_party/boringssl/crypto/x509/v3_akeya.cc +31 -0
  398. package/runtime/third_party/boringssl/crypto/x509/v3_alt.cc +636 -0
  399. package/runtime/third_party/boringssl/crypto/x509/v3_bcons.cc +96 -0
  400. package/runtime/third_party/boringssl/crypto/x509/v3_bitst.cc +100 -0
  401. package/runtime/third_party/boringssl/crypto/x509/v3_conf.cc +369 -0
  402. package/runtime/third_party/boringssl/crypto/x509/v3_cpols.cc +417 -0
  403. package/runtime/third_party/boringssl/crypto/x509/v3_crld.cc +471 -0
  404. package/runtime/third_party/boringssl/crypto/x509/v3_enum.cc +74 -0
  405. package/runtime/third_party/boringssl/crypto/x509/v3_extku.cc +97 -0
  406. package/runtime/third_party/boringssl/crypto/x509/v3_genn.cc +238 -0
  407. package/runtime/third_party/boringssl/crypto/x509/v3_ia5.cc +83 -0
  408. package/runtime/third_party/boringssl/crypto/x509/v3_info.cc +162 -0
  409. package/runtime/third_party/boringssl/crypto/x509/v3_int.cc +83 -0
  410. package/runtime/third_party/boringssl/crypto/x509/v3_lib.cc +349 -0
  411. package/runtime/third_party/boringssl/crypto/x509/v3_ncons.cc +798 -0
  412. package/runtime/third_party/boringssl/crypto/x509/v3_ocsp.cc +92 -0
  413. package/runtime/third_party/boringssl/crypto/x509/v3_pcons.cc +102 -0
  414. package/runtime/third_party/boringssl/crypto/x509/v3_pmaps.cc +110 -0
  415. package/runtime/third_party/boringssl/crypto/x509/v3_prn.cc +183 -0
  416. package/runtime/third_party/boringssl/crypto/x509/v3_purp.cc +580 -0
  417. package/runtime/third_party/boringssl/crypto/x509/v3_skey.cc +128 -0
  418. package/runtime/third_party/boringssl/crypto/x509/v3_utl.cc +1311 -0
  419. package/runtime/third_party/boringssl/crypto/x509/x509.cc +47 -0
  420. package/runtime/third_party/boringssl/crypto/x509/x509_att.cc +188 -0
  421. package/runtime/third_party/boringssl/crypto/x509/x509_cmp.cc +243 -0
  422. package/runtime/third_party/boringssl/crypto/x509/x509_d2.cc +66 -0
  423. package/runtime/third_party/boringssl/crypto/x509/x509_def.cc +42 -0
  424. package/runtime/third_party/boringssl/crypto/x509/x509_ext.cc +161 -0
  425. package/runtime/third_party/boringssl/crypto/x509/x509_lu.cc +570 -0
  426. package/runtime/third_party/boringssl/crypto/x509/x509_mtc.cc +598 -0
  427. package/runtime/third_party/boringssl/crypto/x509/x509_obj.cc +169 -0
  428. package/runtime/third_party/boringssl/crypto/x509/x509_req.cc +248 -0
  429. package/runtime/third_party/boringssl/crypto/x509/x509_set.cc +166 -0
  430. package/runtime/third_party/boringssl/crypto/x509/x509_trs.cc +123 -0
  431. package/runtime/third_party/boringssl/crypto/x509/x509_txt.cc +147 -0
  432. package/runtime/third_party/boringssl/crypto/x509/x509_v3.cc +249 -0
  433. package/runtime/third_party/boringssl/crypto/x509/x509_vfy.cc +1531 -0
  434. package/runtime/third_party/boringssl/crypto/x509/x509_vpm.cc +449 -0
  435. package/runtime/third_party/boringssl/crypto/x509/x509cset.cc +222 -0
  436. package/runtime/third_party/boringssl/crypto/x509/x509name.cc +377 -0
  437. package/runtime/third_party/boringssl/crypto/x509/x509rset.cc +55 -0
  438. package/runtime/third_party/boringssl/crypto/x509/x509spki.cc +91 -0
  439. package/runtime/third_party/boringssl/crypto/x509/x_algor.cc +223 -0
  440. package/runtime/third_party/boringssl/crypto/x509/x_all.cc +352 -0
  441. package/runtime/third_party/boringssl/crypto/x509/x_attrib.cc +61 -0
  442. package/runtime/third_party/boringssl/crypto/x509/x_crl.cc +325 -0
  443. package/runtime/third_party/boringssl/crypto/x509/x_exten.cc +42 -0
  444. package/runtime/third_party/boringssl/crypto/x509/x_name.cc +407 -0
  445. package/runtime/third_party/boringssl/crypto/x509/x_pubkey.cc +199 -0
  446. package/runtime/third_party/boringssl/crypto/x509/x_req.cc +80 -0
  447. package/runtime/third_party/boringssl/crypto/x509/x_sig.cc +51 -0
  448. package/runtime/third_party/boringssl/crypto/x509/x_spki.cc +44 -0
  449. package/runtime/third_party/boringssl/crypto/x509/x_x509.cc +495 -0
  450. package/runtime/third_party/boringssl/crypto/x509/x_x509a.cc +169 -0
  451. package/runtime/third_party/boringssl/crypto/xwing/xwing.cc +257 -0
  452. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-apple.S +1326 -0
  453. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx2-x86_64-linux.S +1327 -0
  454. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-apple.S +1252 -0
  455. package/runtime/third_party/boringssl/gen/bcm/aes-gcm-avx512-x86_64-linux.S +1253 -0
  456. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-apple.S +873 -0
  457. package/runtime/third_party/boringssl/gen/bcm/aesni-gcm-x86_64-linux.S +885 -0
  458. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-apple.S +2490 -0
  459. package/runtime/third_party/boringssl/gen/bcm/aesni-x86-linux.S +2530 -0
  460. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-apple.S +2413 -0
  461. package/runtime/third_party/boringssl/gen/bcm/aesni-x86_64-linux.S +2397 -0
  462. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv7-linux.S +784 -0
  463. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-apple.S +792 -0
  464. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-linux.S +786 -0
  465. package/runtime/third_party/boringssl/gen/bcm/aesv8-armv8-win.S +798 -0
  466. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-apple.S +2912 -0
  467. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-linux.S +2907 -0
  468. package/runtime/third_party/boringssl/gen/bcm/aesv8-gcm-armv8-win.S +2915 -0
  469. package/runtime/third_party/boringssl/gen/bcm/armv4-mont-linux.S +932 -0
  470. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-apple.S +1440 -0
  471. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-linux.S +1440 -0
  472. package/runtime/third_party/boringssl/gen/bcm/armv8-mont-win.S +1446 -0
  473. package/runtime/third_party/boringssl/gen/bcm/bn-586-apple.S +530 -0
  474. package/runtime/third_party/boringssl/gen/bcm/bn-586-linux.S +540 -0
  475. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-apple.S +88 -0
  476. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-linux.S +87 -0
  477. package/runtime/third_party/boringssl/gen/bcm/bn-armv8-win.S +87 -0
  478. package/runtime/third_party/boringssl/gen/bcm/bsaes-armv7-linux.S +1520 -0
  479. package/runtime/third_party/boringssl/gen/bcm/co-586-apple.S +1256 -0
  480. package/runtime/third_party/boringssl/gen/bcm/co-586-linux.S +1264 -0
  481. package/runtime/third_party/boringssl/gen/bcm/ghash-armv4-linux.S +242 -0
  482. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-apple.S +337 -0
  483. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-linux.S +335 -0
  484. package/runtime/third_party/boringssl/gen/bcm/ghash-neon-armv8-win.S +341 -0
  485. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-apple.S +288 -0
  486. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86-linux.S +292 -0
  487. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-apple.S +426 -0
  488. package/runtime/third_party/boringssl/gen/bcm/ghash-ssse3-x86_64-linux.S +425 -0
  489. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-apple.S +322 -0
  490. package/runtime/third_party/boringssl/gen/bcm/ghash-x86-linux.S +328 -0
  491. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-apple.S +1134 -0
  492. package/runtime/third_party/boringssl/gen/bcm/ghash-x86_64-linux.S +1129 -0
  493. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv7-linux.S +244 -0
  494. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-apple.S +567 -0
  495. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-linux.S +563 -0
  496. package/runtime/third_party/boringssl/gen/bcm/ghashv8-armv8-win.S +571 -0
  497. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-apple.S +1744 -0
  498. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-linux.S +1725 -0
  499. package/runtime/third_party/boringssl/gen/bcm/p256-armv8-asm-win.S +1765 -0
  500. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-apple.S +4544 -0
  501. package/runtime/third_party/boringssl/gen/bcm/p256-x86_64-asm-linux.S +4600 -0
  502. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-apple.S +310 -0
  503. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-linux.S +310 -0
  504. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-armv8-asm-win.S +310 -0
  505. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-apple.S +321 -0
  506. package/runtime/third_party/boringssl/gen/bcm/p256_beeu-x86_64-asm-linux.S +335 -0
  507. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-apple.S +58 -0
  508. package/runtime/third_party/boringssl/gen/bcm/rdrand-x86_64-linux.S +57 -0
  509. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-apple.S +1756 -0
  510. package/runtime/third_party/boringssl/gen/bcm/rsaz-avx2-linux.S +1751 -0
  511. package/runtime/third_party/boringssl/gen/bcm/sha1-586-apple.S +3782 -0
  512. package/runtime/third_party/boringssl/gen/bcm/sha1-586-linux.S +3788 -0
  513. package/runtime/third_party/boringssl/gen/bcm/sha1-armv4-large-linux.S +1479 -0
  514. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-apple.S +1219 -0
  515. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-linux.S +1218 -0
  516. package/runtime/third_party/boringssl/gen/bcm/sha1-armv8-win.S +1222 -0
  517. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-apple.S +5454 -0
  518. package/runtime/third_party/boringssl/gen/bcm/sha1-x86_64-linux.S +5450 -0
  519. package/runtime/third_party/boringssl/gen/bcm/sha256-586-apple.S +5593 -0
  520. package/runtime/third_party/boringssl/gen/bcm/sha256-586-linux.S +5599 -0
  521. package/runtime/third_party/boringssl/gen/bcm/sha256-armv4-linux.S +2840 -0
  522. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-apple.S +1195 -0
  523. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-linux.S +1194 -0
  524. package/runtime/third_party/boringssl/gen/bcm/sha256-armv8-win.S +1198 -0
  525. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-apple.S +4173 -0
  526. package/runtime/third_party/boringssl/gen/bcm/sha256-x86_64-linux.S +4170 -0
  527. package/runtime/third_party/boringssl/gen/bcm/sha512-586-apple.S +2406 -0
  528. package/runtime/third_party/boringssl/gen/bcm/sha512-586-linux.S +2410 -0
  529. package/runtime/third_party/boringssl/gen/bcm/sha512-armv4-linux.S +1857 -0
  530. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-apple.S +1598 -0
  531. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-linux.S +1597 -0
  532. package/runtime/third_party/boringssl/gen/bcm/sha512-armv8-win.S +1601 -0
  533. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-apple.S +2979 -0
  534. package/runtime/third_party/boringssl/gen/bcm/sha512-x86_64-linux.S +2978 -0
  535. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv7-linux.S +1225 -0
  536. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-apple.S +1238 -0
  537. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-linux.S +1220 -0
  538. package/runtime/third_party/boringssl/gen/bcm/vpaes-armv8-win.S +1256 -0
  539. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-apple.S +680 -0
  540. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86-linux.S +706 -0
  541. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-apple.S +1146 -0
  542. package/runtime/third_party/boringssl/gen/bcm/vpaes-x86_64-linux.S +1133 -0
  543. package/runtime/third_party/boringssl/gen/bcm/x86-mont-apple.S +216 -0
  544. package/runtime/third_party/boringssl/gen/bcm/x86-mont-linux.S +218 -0
  545. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-apple.S +1238 -0
  546. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont-linux.S +1237 -0
  547. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-apple.S +3644 -0
  548. package/runtime/third_party/boringssl/gen/bcm/x86_64-mont5-linux.S +3628 -0
  549. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_64_win_asm.inc +325 -0
  550. package/runtime/third_party/boringssl/gen/boringssl_prefix_symbols_internal_x86_win_asm.inc +325 -0
  551. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-apple.S +3113 -0
  552. package/runtime/third_party/boringssl/gen/crypto/aes128gcmsiv-x86_64-linux.S +3091 -0
  553. package/runtime/third_party/boringssl/gen/crypto/chacha-armv4-linux.S +1450 -0
  554. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-apple.S +1969 -0
  555. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-linux.S +1967 -0
  556. package/runtime/third_party/boringssl/gen/crypto/chacha-armv8-win.S +1973 -0
  557. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-apple.S +957 -0
  558. package/runtime/third_party/boringssl/gen/crypto/chacha-x86-linux.S +961 -0
  559. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-apple.S +1608 -0
  560. package/runtime/third_party/boringssl/gen/crypto/chacha-x86_64-linux.S +1611 -0
  561. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-apple.S +3010 -0
  562. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-linux.S +3008 -0
  563. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_armv8-win.S +3014 -0
  564. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-apple.S +8903 -0
  565. package/runtime/third_party/boringssl/gen/crypto/chacha20_poly1305_x86_64-linux.S +8940 -0
  566. package/runtime/third_party/boringssl/gen/crypto/err_data.cc +1578 -0
  567. package/runtime/third_party/boringssl/gen/crypto/md5-586-apple.S +684 -0
  568. package/runtime/third_party/boringssl/gen/crypto/md5-586-linux.S +686 -0
  569. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-apple.S +690 -0
  570. package/runtime/third_party/boringssl/gen/crypto/md5-x86_64-linux.S +695 -0
  571. package/runtime/third_party/boringssl/include/openssl/aead.h +650 -0
  572. package/runtime/third_party/boringssl/include/openssl/aes.h +173 -0
  573. package/runtime/third_party/boringssl/include/openssl/arm_arch.h +24 -0
  574. package/runtime/third_party/boringssl/include/openssl/asm_base.h +219 -0
  575. package/runtime/third_party/boringssl/include/openssl/asn1.h +2002 -0
  576. package/runtime/third_party/boringssl/include/openssl/asn1_mac.h +18 -0
  577. package/runtime/third_party/boringssl/include/openssl/asn1t.h +584 -0
  578. package/runtime/third_party/boringssl/include/openssl/base.h +548 -0
  579. package/runtime/third_party/boringssl/include/openssl/base64.h +156 -0
  580. package/runtime/third_party/boringssl/include/openssl/bio.h +1061 -0
  581. package/runtime/third_party/boringssl/include/openssl/blake2.h +63 -0
  582. package/runtime/third_party/boringssl/include/openssl/blowfish.h +58 -0
  583. package/runtime/third_party/boringssl/include/openssl/bn.h +986 -0
  584. package/runtime/third_party/boringssl/include/openssl/buf.h +95 -0
  585. package/runtime/third_party/boringssl/include/openssl/buffer.h +18 -0
  586. package/runtime/third_party/boringssl/include/openssl/bytestring.h +798 -0
  587. package/runtime/third_party/boringssl/include/openssl/cast.h +91 -0
  588. package/runtime/third_party/boringssl/include/openssl/chacha.h +47 -0
  589. package/runtime/third_party/boringssl/include/openssl/cipher.h +819 -0
  590. package/runtime/third_party/boringssl/include/openssl/cmac.h +91 -0
  591. package/runtime/third_party/boringssl/include/openssl/cms.h +147 -0
  592. package/runtime/third_party/boringssl/include/openssl/conf.h +136 -0
  593. package/runtime/third_party/boringssl/include/openssl/configuration.h +18 -0
  594. package/runtime/third_party/boringssl/include/openssl/cpu.h +18 -0
  595. package/runtime/third_party/boringssl/include/openssl/crypto.h +235 -0
  596. package/runtime/third_party/boringssl/include/openssl/ctrdrbg.h +116 -0
  597. package/runtime/third_party/boringssl/include/openssl/curve25519.h +309 -0
  598. package/runtime/third_party/boringssl/include/openssl/des.h +134 -0
  599. package/runtime/third_party/boringssl/include/openssl/dh.h +336 -0
  600. package/runtime/third_party/boringssl/include/openssl/digest.h +399 -0
  601. package/runtime/third_party/boringssl/include/openssl/dsa.h +392 -0
  602. package/runtime/third_party/boringssl/include/openssl/dtls1.h +16 -0
  603. package/runtime/third_party/boringssl/include/openssl/e_os2.h +18 -0
  604. package/runtime/third_party/boringssl/include/openssl/ec.h +530 -0
  605. package/runtime/third_party/boringssl/include/openssl/ec_key.h +358 -0
  606. package/runtime/third_party/boringssl/include/openssl/ecdh.h +67 -0
  607. package/runtime/third_party/boringssl/include/openssl/ecdsa.h +242 -0
  608. package/runtime/third_party/boringssl/include/openssl/engine.h +109 -0
  609. package/runtime/third_party/boringssl/include/openssl/err.h +416 -0
  610. package/runtime/third_party/boringssl/include/openssl/evp.h +1645 -0
  611. package/runtime/third_party/boringssl/include/openssl/evp_errors.h +66 -0
  612. package/runtime/third_party/boringssl/include/openssl/ex_data.h +117 -0
  613. package/runtime/third_party/boringssl/include/openssl/hkdf.h +68 -0
  614. package/runtime/third_party/boringssl/include/openssl/hmac.h +151 -0
  615. package/runtime/third_party/boringssl/include/openssl/hpke.h +456 -0
  616. package/runtime/third_party/boringssl/include/openssl/hrss.h +108 -0
  617. package/runtime/third_party/boringssl/include/openssl/is_boringssl.h +16 -0
  618. package/runtime/third_party/boringssl/include/openssl/kdf.h +92 -0
  619. package/runtime/third_party/boringssl/include/openssl/lhash.h +18 -0
  620. package/runtime/third_party/boringssl/include/openssl/md4.h +73 -0
  621. package/runtime/third_party/boringssl/include/openssl/md5.h +67 -0
  622. package/runtime/third_party/boringssl/include/openssl/mem.h +215 -0
  623. package/runtime/third_party/boringssl/include/openssl/mldsa.h +486 -0
  624. package/runtime/third_party/boringssl/include/openssl/mlkem.h +222 -0
  625. package/runtime/third_party/boringssl/include/openssl/nid.h +5561 -0
  626. package/runtime/third_party/boringssl/include/openssl/obj.h +225 -0
  627. package/runtime/third_party/boringssl/include/openssl/obj_mac.h +18 -0
  628. package/runtime/third_party/boringssl/include/openssl/objects.h +18 -0
  629. package/runtime/third_party/boringssl/include/openssl/opensslconf.h +108 -0
  630. package/runtime/third_party/boringssl/include/openssl/opensslv.h +18 -0
  631. package/runtime/third_party/boringssl/include/openssl/ossl_typ.h +18 -0
  632. package/runtime/third_party/boringssl/include/openssl/params.h +42 -0
  633. package/runtime/third_party/boringssl/include/openssl/pem.h +769 -0
  634. package/runtime/third_party/boringssl/include/openssl/pkcs12.h +18 -0
  635. package/runtime/third_party/boringssl/include/openssl/pkcs7.h +239 -0
  636. package/runtime/third_party/boringssl/include/openssl/pkcs8.h +267 -0
  637. package/runtime/third_party/boringssl/include/openssl/poly1305.h +52 -0
  638. package/runtime/third_party/boringssl/include/openssl/pool.h +137 -0
  639. package/runtime/third_party/boringssl/include/openssl/posix_time.h +51 -0
  640. package/runtime/third_party/boringssl/include/openssl/prefix_symbols.h +8000 -0
  641. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_S.h +633 -0
  642. package/runtime/third_party/boringssl/include/openssl/prefix_symbols_internal_c.h +329 -0
  643. package/runtime/third_party/boringssl/include/openssl/rand.h +138 -0
  644. package/runtime/third_party/boringssl/include/openssl/rc4.h +54 -0
  645. package/runtime/third_party/boringssl/include/openssl/ripemd.h +71 -0
  646. package/runtime/third_party/boringssl/include/openssl/rsa.h +893 -0
  647. package/runtime/third_party/boringssl/include/openssl/safestack.h +16 -0
  648. package/runtime/third_party/boringssl/include/openssl/service_indicator.h +19 -0
  649. package/runtime/third_party/boringssl/include/openssl/sha.h +108 -0
  650. package/runtime/third_party/boringssl/include/openssl/sha2.h +201 -0
  651. package/runtime/third_party/boringssl/include/openssl/siphash.h +37 -0
  652. package/runtime/third_party/boringssl/include/openssl/slhdsa.h +250 -0
  653. package/runtime/third_party/boringssl/include/openssl/span.h +376 -0
  654. package/runtime/third_party/boringssl/include/openssl/srtp.h +18 -0
  655. package/runtime/third_party/boringssl/include/openssl/ssl.h +7211 -0
  656. package/runtime/third_party/boringssl/include/openssl/ssl3.h +171 -0
  657. package/runtime/third_party/boringssl/include/openssl/stack.h +688 -0
  658. package/runtime/third_party/boringssl/include/openssl/target.h +246 -0
  659. package/runtime/third_party/boringssl/include/openssl/thread.h +114 -0
  660. package/runtime/third_party/boringssl/include/openssl/time.h +22 -0
  661. package/runtime/third_party/boringssl/include/openssl/tls1.h +263 -0
  662. package/runtime/third_party/boringssl/include/openssl/tls_prf.h +47 -0
  663. package/runtime/third_party/boringssl/include/openssl/trust_token.h +349 -0
  664. package/runtime/third_party/boringssl/include/openssl/type_check.h +37 -0
  665. package/runtime/third_party/boringssl/include/openssl/types.h +18 -0
  666. package/runtime/third_party/boringssl/include/openssl/x509.h +5404 -0
  667. package/runtime/third_party/boringssl/include/openssl/x509_vfy.h +18 -0
  668. package/runtime/third_party/boringssl/include/openssl/x509v3.h +63 -0
  669. package/runtime/third_party/boringssl/include/openssl/x509v3_errors.h +84 -0
  670. package/runtime/third_party/boringssl/include/openssl/xwing.h +115 -0
  671. package/runtime/third_party/boringssl/sources.json +696 -0
  672. package/runtime/third_party/boringssl/ssl/bio_ssl.cc +196 -0
  673. package/runtime/third_party/boringssl/ssl/d1_both.cc +1137 -0
  674. package/runtime/third_party/boringssl/ssl/d1_lib.cc +245 -0
  675. package/runtime/third_party/boringssl/ssl/d1_pkt.cc +322 -0
  676. package/runtime/third_party/boringssl/ssl/d1_srtp.cc +128 -0
  677. package/runtime/third_party/boringssl/ssl/dtls_method.cc +216 -0
  678. package/runtime/third_party/boringssl/ssl/dtls_record.cc +586 -0
  679. package/runtime/third_party/boringssl/ssl/encrypted_client_hello.cc +1110 -0
  680. package/runtime/third_party/boringssl/ssl/extensions.cc +5368 -0
  681. package/runtime/third_party/boringssl/ssl/handoff.cc +625 -0
  682. package/runtime/third_party/boringssl/ssl/handshake.cc +694 -0
  683. package/runtime/third_party/boringssl/ssl/handshake_client.cc +1958 -0
  684. package/runtime/third_party/boringssl/ssl/handshake_server.cc +1875 -0
  685. package/runtime/third_party/boringssl/ssl/internal.h +4506 -0
  686. package/runtime/third_party/boringssl/ssl/s3_both.cc +555 -0
  687. package/runtime/third_party/boringssl/ssl/s3_lib.cc +88 -0
  688. package/runtime/third_party/boringssl/ssl/s3_pkt.cc +396 -0
  689. package/runtime/third_party/boringssl/ssl/ssl_aead_ctx.cc +416 -0
  690. package/runtime/third_party/boringssl/ssl/ssl_asn1.cc +851 -0
  691. package/runtime/third_party/boringssl/ssl/ssl_buffer.cc +304 -0
  692. package/runtime/third_party/boringssl/ssl/ssl_cert.cc +723 -0
  693. package/runtime/third_party/boringssl/ssl/ssl_cipher.cc +1762 -0
  694. package/runtime/third_party/boringssl/ssl/ssl_credential.cc +913 -0
  695. package/runtime/third_party/boringssl/ssl/ssl_file.cc +375 -0
  696. package/runtime/third_party/boringssl/ssl/ssl_key_share.cc +445 -0
  697. package/runtime/third_party/boringssl/ssl/ssl_lib.cc +4132 -0
  698. package/runtime/third_party/boringssl/ssl/ssl_privkey.cc +973 -0
  699. package/runtime/third_party/boringssl/ssl/ssl_session.cc +1273 -0
  700. package/runtime/third_party/boringssl/ssl/ssl_stat.cc +162 -0
  701. package/runtime/third_party/boringssl/ssl/ssl_transcript.cc +224 -0
  702. package/runtime/third_party/boringssl/ssl/ssl_versions.cc +436 -0
  703. package/runtime/third_party/boringssl/ssl/ssl_x509.cc +1229 -0
  704. package/runtime/third_party/boringssl/ssl/t1_enc.cc +266 -0
  705. package/runtime/third_party/boringssl/ssl/tls13_both.cc +764 -0
  706. package/runtime/third_party/boringssl/ssl/tls13_client.cc +1325 -0
  707. package/runtime/third_party/boringssl/ssl/tls13_enc.cc +746 -0
  708. package/runtime/third_party/boringssl/ssl/tls13_server.cc +1623 -0
  709. package/runtime/third_party/boringssl/ssl/tls_method.cc +266 -0
  710. package/runtime/third_party/boringssl/ssl/tls_record.cc +524 -0
  711. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_mul.S +178 -0
  712. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_curve25519_adx_square.S +146 -0
  713. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_mul.S +177 -0
  714. package/runtime/third_party/boringssl/third_party/fiat/asm/fiat_p256_adx_sqr.S +166 -0
  715. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_bareminimum.c.inc +47 -0
  716. package/runtime/third_party/boringssl/third_party/fiat/bedrock_unverified_platform.c.inc +137 -0
  717. package/runtime/third_party/boringssl/third_party/fiat/curve25519_32.h +1571 -0
  718. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64.h +978 -0
  719. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_adx.h +700 -0
  720. package/runtime/third_party/boringssl/third_party/fiat/curve25519_64_msvc.h +1281 -0
  721. package/runtime/third_party/boringssl/third_party/fiat/p256_32.h +4760 -0
  722. package/runtime/third_party/boringssl/third_party/fiat/p256_64.h +1984 -0
  723. package/runtime/third_party/boringssl/third_party/fiat/p256_64_msvc.h +1939 -0
  724. package/runtime/third_party/boringssl/third_party/fiat/p256_field.c.inc +26 -0
  725. package/runtime/third_party/boringssl/third_party/fiat/p256_field_32.br.c.inc +71 -0
  726. package/runtime/third_party/boringssl/third_party/fiat/p256_field_64.br.c.inc +84 -0
  727. package/runtime/third_party/boringssl/third_party/fiat/p256_point.br.c.inc +112 -0
  728. package/runtime/third_party/v8-ieee754/README.md +2 -1
  729. package/runtime/third_party/v8-ieee754/convert.py +4 -0
  730. package/runtime/third_party/v8-ieee754/ieee754.c +1 -1
  731. package/runtime/third_party/bearssl/LICENSE.txt +0 -21
  732. package/runtime/third_party/bearssl/README.txt +0 -136
  733. package/runtime/third_party/bearssl/VERSION +0 -1
  734. package/runtime/third_party/bearssl/inc/bearssl.h +0 -183
  735. package/runtime/third_party/bearssl/inc/bearssl_aead.h +0 -1059
  736. package/runtime/third_party/bearssl/inc/bearssl_block.h +0 -2618
  737. package/runtime/third_party/bearssl/inc/bearssl_ec.h +0 -967
  738. package/runtime/third_party/bearssl/inc/bearssl_hash.h +0 -1346
  739. package/runtime/third_party/bearssl/inc/bearssl_hmac.h +0 -241
  740. package/runtime/third_party/bearssl/inc/bearssl_kdf.h +0 -284
  741. package/runtime/third_party/bearssl/inc/bearssl_pem.h +0 -294
  742. package/runtime/third_party/bearssl/inc/bearssl_prf.h +0 -150
  743. package/runtime/third_party/bearssl/inc/bearssl_rand.h +0 -397
  744. package/runtime/third_party/bearssl/inc/bearssl_rsa.h +0 -1655
  745. package/runtime/third_party/bearssl/inc/bearssl_ssl.h +0 -4296
  746. package/runtime/third_party/bearssl/inc/bearssl_x509.h +0 -1474
  747. package/runtime/third_party/bearssl/src/aead/ccm.c +0 -346
  748. package/runtime/third_party/bearssl/src/aead/eax.c +0 -525
  749. package/runtime/third_party/bearssl/src/aead/gcm.c +0 -318
  750. package/runtime/third_party/bearssl/src/codec/ccopy.c +0 -44
  751. package/runtime/third_party/bearssl/src/codec/dec16be.c +0 -38
  752. package/runtime/third_party/bearssl/src/codec/dec16le.c +0 -38
  753. package/runtime/third_party/bearssl/src/codec/dec32be.c +0 -38
  754. package/runtime/third_party/bearssl/src/codec/dec32le.c +0 -38
  755. package/runtime/third_party/bearssl/src/codec/dec64be.c +0 -38
  756. package/runtime/third_party/bearssl/src/codec/dec64le.c +0 -38
  757. package/runtime/third_party/bearssl/src/codec/enc16be.c +0 -38
  758. package/runtime/third_party/bearssl/src/codec/enc16le.c +0 -38
  759. package/runtime/third_party/bearssl/src/codec/enc32be.c +0 -38
  760. package/runtime/third_party/bearssl/src/codec/enc32le.c +0 -38
  761. package/runtime/third_party/bearssl/src/codec/enc64be.c +0 -38
  762. package/runtime/third_party/bearssl/src/codec/enc64le.c +0 -38
  763. package/runtime/third_party/bearssl/src/codec/pemdec.c +0 -526
  764. package/runtime/third_party/bearssl/src/codec/pemdec.t0 +0 -314
  765. package/runtime/third_party/bearssl/src/codec/pemenc.c +0 -173
  766. package/runtime/third_party/bearssl/src/config.h +0 -247
  767. package/runtime/third_party/bearssl/src/ec/ec_all_m15.c +0 -121
  768. package/runtime/third_party/bearssl/src/ec/ec_all_m31.c +0 -171
  769. package/runtime/third_party/bearssl/src/ec/ec_c25519_i15.c +0 -398
  770. package/runtime/third_party/bearssl/src/ec/ec_c25519_i31.c +0 -390
  771. package/runtime/third_party/bearssl/src/ec/ec_c25519_m15.c +0 -1478
  772. package/runtime/third_party/bearssl/src/ec/ec_c25519_m31.c +0 -800
  773. package/runtime/third_party/bearssl/src/ec/ec_c25519_m62.c +0 -605
  774. package/runtime/third_party/bearssl/src/ec/ec_c25519_m64.c +0 -831
  775. package/runtime/third_party/bearssl/src/ec/ec_curve25519.c +0 -46
  776. package/runtime/third_party/bearssl/src/ec/ec_default.c +0 -36
  777. package/runtime/third_party/bearssl/src/ec/ec_keygen.c +0 -86
  778. package/runtime/third_party/bearssl/src/ec/ec_p256_m15.c +0 -2124
  779. package/runtime/third_party/bearssl/src/ec/ec_p256_m31.c +0 -1469
  780. package/runtime/third_party/bearssl/src/ec/ec_p256_m62.c +0 -1765
  781. package/runtime/third_party/bearssl/src/ec/ec_p256_m64.c +0 -1781
  782. package/runtime/third_party/bearssl/src/ec/ec_prime_i15.c +0 -824
  783. package/runtime/third_party/bearssl/src/ec/ec_prime_i31.c +0 -826
  784. package/runtime/third_party/bearssl/src/ec/ec_pubkey.c +0 -85
  785. package/runtime/third_party/bearssl/src/ec/ec_secp256r1.c +0 -51
  786. package/runtime/third_party/bearssl/src/ec/ec_secp384r1.c +0 -57
  787. package/runtime/third_party/bearssl/src/ec/ec_secp521r1.c +0 -64
  788. package/runtime/third_party/bearssl/src/ec/ecdsa_atr.c +0 -134
  789. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_asn1.c +0 -36
  790. package/runtime/third_party/bearssl/src/ec/ecdsa_default_sign_raw.c +0 -36
  791. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_asn1.c +0 -36
  792. package/runtime/third_party/bearssl/src/ec/ecdsa_default_vrfy_raw.c +0 -36
  793. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_bits.c +0 -47
  794. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_asn1.c +0 -45
  795. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_sign_raw.c +0 -174
  796. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_asn1.c +0 -48
  797. package/runtime/third_party/bearssl/src/ec/ecdsa_i15_vrfy_raw.c +0 -166
  798. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_bits.c +0 -47
  799. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_asn1.c +0 -45
  800. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_sign_raw.c +0 -173
  801. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_asn1.c +0 -48
  802. package/runtime/third_party/bearssl/src/ec/ecdsa_i31_vrfy_raw.c +0 -165
  803. package/runtime/third_party/bearssl/src/ec/ecdsa_rta.c +0 -121
  804. package/runtime/third_party/bearssl/src/hash/dig_oid.c +0 -84
  805. package/runtime/third_party/bearssl/src/hash/dig_size.c +0 -50
  806. package/runtime/third_party/bearssl/src/hash/ghash_ctmul.c +0 -345
  807. package/runtime/third_party/bearssl/src/hash/ghash_ctmul32.c +0 -251
  808. package/runtime/third_party/bearssl/src/hash/ghash_ctmul64.c +0 -154
  809. package/runtime/third_party/bearssl/src/hash/ghash_pclmul.c +0 -389
  810. package/runtime/third_party/bearssl/src/hash/ghash_pwr8.c +0 -411
  811. package/runtime/third_party/bearssl/src/hash/md5.c +0 -208
  812. package/runtime/third_party/bearssl/src/hash/md5sha1.c +0 -141
  813. package/runtime/third_party/bearssl/src/hash/mgf1.c +0 -56
  814. package/runtime/third_party/bearssl/src/hash/multihash.c +0 -166
  815. package/runtime/third_party/bearssl/src/hash/sha1.c +0 -191
  816. package/runtime/third_party/bearssl/src/hash/sha2big.c +0 -285
  817. package/runtime/third_party/bearssl/src/hash/sha2small.c +0 -341
  818. package/runtime/third_party/bearssl/src/inner.h +0 -2577
  819. package/runtime/third_party/bearssl/src/int/i15_add.c +0 -46
  820. package/runtime/third_party/bearssl/src/int/i15_bitlen.c +0 -44
  821. package/runtime/third_party/bearssl/src/int/i15_decmod.c +0 -124
  822. package/runtime/third_party/bearssl/src/int/i15_decode.c +0 -56
  823. package/runtime/third_party/bearssl/src/int/i15_decred.c +0 -100
  824. package/runtime/third_party/bearssl/src/int/i15_encode.c +0 -56
  825. package/runtime/third_party/bearssl/src/int/i15_fmont.c +0 -59
  826. package/runtime/third_party/bearssl/src/int/i15_iszero.c +0 -39
  827. package/runtime/third_party/bearssl/src/int/i15_moddiv.c +0 -465
  828. package/runtime/third_party/bearssl/src/int/i15_modpow.c +0 -50
  829. package/runtime/third_party/bearssl/src/int/i15_modpow2.c +0 -160
  830. package/runtime/third_party/bearssl/src/int/i15_montmul.c +0 -184
  831. package/runtime/third_party/bearssl/src/int/i15_mulacc.c +0 -61
  832. package/runtime/third_party/bearssl/src/int/i15_muladd.c +0 -173
  833. package/runtime/third_party/bearssl/src/int/i15_ninv15.c +0 -38
  834. package/runtime/third_party/bearssl/src/int/i15_reduce.c +0 -66
  835. package/runtime/third_party/bearssl/src/int/i15_rshift.c +0 -47
  836. package/runtime/third_party/bearssl/src/int/i15_sub.c +0 -46
  837. package/runtime/third_party/bearssl/src/int/i15_tmont.c +0 -36
  838. package/runtime/third_party/bearssl/src/int/i31_add.c +0 -46
  839. package/runtime/third_party/bearssl/src/int/i31_bitlen.c +0 -44
  840. package/runtime/third_party/bearssl/src/int/i31_decmod.c +0 -124
  841. package/runtime/third_party/bearssl/src/int/i31_decode.c +0 -57
  842. package/runtime/third_party/bearssl/src/int/i31_decred.c +0 -103
  843. package/runtime/third_party/bearssl/src/int/i31_encode.c +0 -79
  844. package/runtime/third_party/bearssl/src/int/i31_fmont.c +0 -60
  845. package/runtime/third_party/bearssl/src/int/i31_iszero.c +0 -39
  846. package/runtime/third_party/bearssl/src/int/i31_moddiv.c +0 -488
  847. package/runtime/third_party/bearssl/src/int/i31_modpow.c +0 -65
  848. package/runtime/third_party/bearssl/src/int/i31_modpow2.c +0 -160
  849. package/runtime/third_party/bearssl/src/int/i31_montmul.c +0 -127
  850. package/runtime/third_party/bearssl/src/int/i31_mulacc.c +0 -74
  851. package/runtime/third_party/bearssl/src/int/i31_muladd.c +0 -157
  852. package/runtime/third_party/bearssl/src/int/i31_ninv31.c +0 -39
  853. package/runtime/third_party/bearssl/src/int/i31_reduce.c +0 -66
  854. package/runtime/third_party/bearssl/src/int/i31_rshift.c +0 -47
  855. package/runtime/third_party/bearssl/src/int/i31_sub.c +0 -46
  856. package/runtime/third_party/bearssl/src/int/i31_tmont.c +0 -36
  857. package/runtime/third_party/bearssl/src/int/i32_add.c +0 -51
  858. package/runtime/third_party/bearssl/src/int/i32_bitlen.c +0 -44
  859. package/runtime/third_party/bearssl/src/int/i32_decmod.c +0 -77
  860. package/runtime/third_party/bearssl/src/int/i32_decode.c +0 -63
  861. package/runtime/third_party/bearssl/src/int/i32_decred.c +0 -107
  862. package/runtime/third_party/bearssl/src/int/i32_div32.c +0 -56
  863. package/runtime/third_party/bearssl/src/int/i32_encode.c +0 -72
  864. package/runtime/third_party/bearssl/src/int/i32_fmont.c +0 -60
  865. package/runtime/third_party/bearssl/src/int/i32_iszero.c +0 -39
  866. package/runtime/third_party/bearssl/src/int/i32_modpow.c +0 -65
  867. package/runtime/third_party/bearssl/src/int/i32_montmul.c +0 -69
  868. package/runtime/third_party/bearssl/src/int/i32_mulacc.c +0 -56
  869. package/runtime/third_party/bearssl/src/int/i32_muladd.c +0 -138
  870. package/runtime/third_party/bearssl/src/int/i32_ninv32.c +0 -39
  871. package/runtime/third_party/bearssl/src/int/i32_reduce.c +0 -66
  872. package/runtime/third_party/bearssl/src/int/i32_sub.c +0 -51
  873. package/runtime/third_party/bearssl/src/int/i32_tmont.c +0 -36
  874. package/runtime/third_party/bearssl/src/int/i62_modpow2.c +0 -493
  875. package/runtime/third_party/bearssl/src/kdf/hkdf.c +0 -107
  876. package/runtime/third_party/bearssl/src/kdf/shake.c +0 -590
  877. package/runtime/third_party/bearssl/src/mac/hmac.c +0 -122
  878. package/runtime/third_party/bearssl/src/mac/hmac_ct.c +0 -193
  879. package/runtime/third_party/bearssl/src/rand/aesctr_drbg.c +0 -206
  880. package/runtime/third_party/bearssl/src/rand/hmac_drbg.c +0 -157
  881. package/runtime/third_party/bearssl/src/rand/sysrng.c +0 -252
  882. package/runtime/third_party/bearssl/src/rsa/rsa_default_keygen.c +0 -38
  883. package/runtime/third_party/bearssl/src/rsa/rsa_default_modulus.c +0 -36
  884. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_decrypt.c +0 -38
  885. package/runtime/third_party/bearssl/src/rsa/rsa_default_oaep_encrypt.c +0 -38
  886. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_sign.c +0 -38
  887. package/runtime/third_party/bearssl/src/rsa/rsa_default_pkcs1_vrfy.c +0 -38
  888. package/runtime/third_party/bearssl/src/rsa/rsa_default_priv.c +0 -38
  889. package/runtime/third_party/bearssl/src/rsa/rsa_default_privexp.c +0 -36
  890. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_sign.c +0 -38
  891. package/runtime/third_party/bearssl/src/rsa/rsa_default_pss_vrfy.c +0 -38
  892. package/runtime/third_party/bearssl/src/rsa/rsa_default_pub.c +0 -38
  893. package/runtime/third_party/bearssl/src/rsa/rsa_default_pubexp.c +0 -36
  894. package/runtime/third_party/bearssl/src/rsa/rsa_i15_keygen.c +0 -583
  895. package/runtime/third_party/bearssl/src/rsa/rsa_i15_modulus.c +0 -99
  896. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_decrypt.c +0 -41
  897. package/runtime/third_party/bearssl/src/rsa/rsa_i15_oaep_encrypt.c +0 -44
  898. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_sign.c +0 -37
  899. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pkcs1_vrfy.c +0 -43
  900. package/runtime/third_party/bearssl/src/rsa/rsa_i15_priv.c +0 -209
  901. package/runtime/third_party/bearssl/src/rsa/rsa_i15_privexp.c +0 -320
  902. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_sign.c +0 -40
  903. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pss_vrfy.c +0 -44
  904. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pub.c +0 -113
  905. package/runtime/third_party/bearssl/src/rsa/rsa_i15_pubexp.c +0 -152
  906. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen.c +0 -37
  907. package/runtime/third_party/bearssl/src/rsa/rsa_i31_keygen_inner.c +0 -608
  908. package/runtime/third_party/bearssl/src/rsa/rsa_i31_modulus.c +0 -99
  909. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_decrypt.c +0 -41
  910. package/runtime/third_party/bearssl/src/rsa/rsa_i31_oaep_encrypt.c +0 -44
  911. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_sign.c +0 -37
  912. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pkcs1_vrfy.c +0 -43
  913. package/runtime/third_party/bearssl/src/rsa/rsa_i31_priv.c +0 -203
  914. package/runtime/third_party/bearssl/src/rsa/rsa_i31_privexp.c +0 -318
  915. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_sign.c +0 -40
  916. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pss_vrfy.c +0 -44
  917. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pub.c +0 -106
  918. package/runtime/third_party/bearssl/src/rsa/rsa_i31_pubexp.c +0 -152
  919. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_decrypt.c +0 -41
  920. package/runtime/third_party/bearssl/src/rsa/rsa_i32_oaep_encrypt.c +0 -44
  921. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_sign.c +0 -37
  922. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pkcs1_vrfy.c +0 -43
  923. package/runtime/third_party/bearssl/src/rsa/rsa_i32_priv.c +0 -160
  924. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_sign.c +0 -40
  925. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pss_vrfy.c +0 -44
  926. package/runtime/third_party/bearssl/src/rsa/rsa_i32_pub.c +0 -77
  927. package/runtime/third_party/bearssl/src/rsa/rsa_i62_keygen.c +0 -57
  928. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_decrypt.c +0 -61
  929. package/runtime/third_party/bearssl/src/rsa/rsa_i62_oaep_encrypt.c +0 -64
  930. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_sign.c +0 -57
  931. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pkcs1_vrfy.c +0 -63
  932. package/runtime/third_party/bearssl/src/rsa/rsa_i62_priv.c +0 -223
  933. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_sign.c +0 -60
  934. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pss_vrfy.c +0 -64
  935. package/runtime/third_party/bearssl/src/rsa/rsa_i62_pub.c +0 -125
  936. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_pad.c +0 -112
  937. package/runtime/third_party/bearssl/src/rsa/rsa_oaep_unpad.c +0 -145
  938. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_pad.c +0 -100
  939. package/runtime/third_party/bearssl/src/rsa/rsa_pkcs1_sig_unpad.c +0 -121
  940. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_pad.c +0 -106
  941. package/runtime/third_party/bearssl/src/rsa/rsa_pss_sig_unpad.c +0 -121
  942. package/runtime/third_party/bearssl/src/rsa/rsa_ssl_decrypt.c +0 -52
  943. package/runtime/third_party/bearssl/src/settings.c +0 -306
  944. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcdec.c +0 -69
  945. package/runtime/third_party/bearssl/src/symcipher/aes_big_cbcenc.c +0 -67
  946. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctr.c +0 -84
  947. package/runtime/third_party/bearssl/src/symcipher/aes_big_ctrcbc.c +0 -142
  948. package/runtime/third_party/bearssl/src/symcipher/aes_big_dec.c +0 -254
  949. package/runtime/third_party/bearssl/src/symcipher/aes_big_enc.c +0 -157
  950. package/runtime/third_party/bearssl/src/symcipher/aes_common.c +0 -112
  951. package/runtime/third_party/bearssl/src/symcipher/aes_ct.c +0 -328
  952. package/runtime/third_party/bearssl/src/symcipher/aes_ct64.c +0 -398
  953. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcdec.c +0 -104
  954. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_cbcenc.c +0 -81
  955. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctr.c +0 -114
  956. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_ctrcbc.c +0 -433
  957. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_dec.c +0 -159
  958. package/runtime/third_party/bearssl/src/symcipher/aes_ct64_enc.c +0 -115
  959. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcdec.c +0 -111
  960. package/runtime/third_party/bearssl/src/symcipher/aes_ct_cbcenc.c +0 -91
  961. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctr.c +0 -116
  962. package/runtime/third_party/bearssl/src/symcipher/aes_ct_ctrcbc.c +0 -422
  963. package/runtime/third_party/bearssl/src/symcipher/aes_ct_dec.c +0 -170
  964. package/runtime/third_party/bearssl/src/symcipher/aes_ct_enc.c +0 -112
  965. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8.c +0 -445
  966. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcdec.c +0 -670
  967. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_cbcenc.c +0 -417
  968. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctr.c +0 -717
  969. package/runtime/third_party/bearssl/src/symcipher/aes_pwr8_ctrcbc.c +0 -946
  970. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcdec.c +0 -69
  971. package/runtime/third_party/bearssl/src/symcipher/aes_small_cbcenc.c +0 -67
  972. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctr.c +0 -84
  973. package/runtime/third_party/bearssl/src/symcipher/aes_small_ctrcbc.c +0 -142
  974. package/runtime/third_party/bearssl/src/symcipher/aes_small_dec.c +0 -176
  975. package/runtime/third_party/bearssl/src/symcipher/aes_small_enc.c +0 -129
  976. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni.c +0 -240
  977. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcdec.c +0 -223
  978. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_cbcenc.c +0 -122
  979. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctr.c +0 -211
  980. package/runtime/third_party/bearssl/src/symcipher/aes_x86ni_ctrcbc.c +0 -596
  981. package/runtime/third_party/bearssl/src/symcipher/chacha20_ct.c +0 -106
  982. package/runtime/third_party/bearssl/src/symcipher/chacha20_sse2.c +0 -237
  983. package/runtime/third_party/bearssl/src/symcipher/des_ct.c +0 -411
  984. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcdec.c +0 -87
  985. package/runtime/third_party/bearssl/src/symcipher/des_ct_cbcenc.c +0 -69
  986. package/runtime/third_party/bearssl/src/symcipher/des_support.c +0 -166
  987. package/runtime/third_party/bearssl/src/symcipher/des_tab.c +0 -310
  988. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcdec.c +0 -85
  989. package/runtime/third_party/bearssl/src/symcipher/des_tab_cbcenc.c +0 -67
  990. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul.c +0 -260
  991. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmul32.c +0 -297
  992. package/runtime/third_party/bearssl/src/symcipher/poly1305_ctmulq.c +0 -475
  993. package/runtime/third_party/bearssl/src/symcipher/poly1305_i15.c +0 -221
  994. package/runtime/third_party/bearssl/src/x509/asn1.t0 +0 -757
  995. package/runtime/third_party/bearssl/src/x509/asn1enc.c +0 -93
  996. package/runtime/third_party/bearssl/src/x509/encode_ec_pk8der.c +0 -110
  997. package/runtime/third_party/bearssl/src/x509/encode_ec_rawder.c +0 -161
  998. package/runtime/third_party/bearssl/src/x509/encode_rsa_pk8der.c +0 -97
  999. package/runtime/third_party/bearssl/src/x509/encode_rsa_rawder.c +0 -96
  1000. package/runtime/third_party/bearssl/src/x509/skey_decoder.c +0 -653
  1001. package/runtime/third_party/bearssl/src/x509/skey_decoder.t0 +0 -376
  1002. package/runtime/third_party/bearssl/src/x509/x509_decoder.c +0 -776
  1003. package/runtime/third_party/bearssl/src/x509/x509_decoder.t0 +0 -324
  1004. package/runtime/third_party/bearssl/src/x509/x509_knownkey.c +0 -105
  1005. package/runtime/third_party/bearssl/src/x509/x509_minimal.c +0 -1722
  1006. package/runtime/third_party/bearssl/src/x509/x509_minimal.t0 +0 -1526
  1007. package/runtime/third_party/bearssl/src/x509/x509_minimal_full.c +0 -59
@@ -0,0 +1,2530 @@
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_X86) && defined(__ELF__)
7
+ .text
8
+ #ifdef BORINGSSL_DISPATCH_TEST
9
+ #endif
10
+ .globl aes_hw_encrypt
11
+ .hidden aes_hw_encrypt
12
+ .type aes_hw_encrypt,@function
13
+ .align 16
14
+ aes_hw_encrypt:
15
+ .L_aes_hw_encrypt_begin:
16
+ #ifdef BORINGSSL_DISPATCH_TEST
17
+ pushl %ebx
18
+ pushl %edx
19
+ call .L000pic_for_function_hit
20
+ .L000pic_for_function_hit:
21
+ popl %ebx
22
+ leal BORINGSSL_function_hit+1-.L000pic_for_function_hit(%ebx),%ebx
23
+ movl $1,%edx
24
+ movb %dl,(%ebx)
25
+ popl %edx
26
+ popl %ebx
27
+ #endif
28
+ movl 4(%esp),%eax
29
+ movl 12(%esp),%edx
30
+ movups (%eax),%xmm2
31
+ movl 240(%edx),%ecx
32
+ movl 8(%esp),%eax
33
+ movups (%edx),%xmm0
34
+ movups 16(%edx),%xmm1
35
+ leal 32(%edx),%edx
36
+ xorps %xmm0,%xmm2
37
+ .L001enc1_loop_1:
38
+ aesenc %xmm1,%xmm2
39
+ decl %ecx
40
+ movups (%edx),%xmm1
41
+ leal 16(%edx),%edx
42
+ jnz .L001enc1_loop_1
43
+ aesenclast %xmm1,%xmm2
44
+ pxor %xmm0,%xmm0
45
+ pxor %xmm1,%xmm1
46
+ movups %xmm2,(%eax)
47
+ pxor %xmm2,%xmm2
48
+ ret
49
+ .size aes_hw_encrypt,.-.L_aes_hw_encrypt_begin
50
+ .globl aes_hw_decrypt
51
+ .hidden aes_hw_decrypt
52
+ .type aes_hw_decrypt,@function
53
+ .align 16
54
+ aes_hw_decrypt:
55
+ .L_aes_hw_decrypt_begin:
56
+ movl 4(%esp),%eax
57
+ movl 12(%esp),%edx
58
+ movups (%eax),%xmm2
59
+ movl 240(%edx),%ecx
60
+ movl 8(%esp),%eax
61
+ movups (%edx),%xmm0
62
+ movups 16(%edx),%xmm1
63
+ leal 32(%edx),%edx
64
+ xorps %xmm0,%xmm2
65
+ .L002dec1_loop_2:
66
+ aesdec %xmm1,%xmm2
67
+ decl %ecx
68
+ movups (%edx),%xmm1
69
+ leal 16(%edx),%edx
70
+ jnz .L002dec1_loop_2
71
+ aesdeclast %xmm1,%xmm2
72
+ pxor %xmm0,%xmm0
73
+ pxor %xmm1,%xmm1
74
+ movups %xmm2,(%eax)
75
+ pxor %xmm2,%xmm2
76
+ ret
77
+ .size aes_hw_decrypt,.-.L_aes_hw_decrypt_begin
78
+ .hidden _aesni_encrypt2
79
+ .type _aesni_encrypt2,@function
80
+ .align 16
81
+ _aesni_encrypt2:
82
+ movups (%edx),%xmm0
83
+ shll $4,%ecx
84
+ movups 16(%edx),%xmm1
85
+ xorps %xmm0,%xmm2
86
+ pxor %xmm0,%xmm3
87
+ movups 32(%edx),%xmm0
88
+ leal 32(%edx,%ecx,1),%edx
89
+ negl %ecx
90
+ addl $16,%ecx
91
+ .L003enc2_loop:
92
+ aesenc %xmm1,%xmm2
93
+ aesenc %xmm1,%xmm3
94
+ movups (%edx,%ecx,1),%xmm1
95
+ addl $32,%ecx
96
+ aesenc %xmm0,%xmm2
97
+ aesenc %xmm0,%xmm3
98
+ movups -16(%edx,%ecx,1),%xmm0
99
+ jnz .L003enc2_loop
100
+ aesenc %xmm1,%xmm2
101
+ aesenc %xmm1,%xmm3
102
+ aesenclast %xmm0,%xmm2
103
+ aesenclast %xmm0,%xmm3
104
+ ret
105
+ .size _aesni_encrypt2,.-_aesni_encrypt2
106
+ .hidden _aesni_decrypt2
107
+ .type _aesni_decrypt2,@function
108
+ .align 16
109
+ _aesni_decrypt2:
110
+ movups (%edx),%xmm0
111
+ shll $4,%ecx
112
+ movups 16(%edx),%xmm1
113
+ xorps %xmm0,%xmm2
114
+ pxor %xmm0,%xmm3
115
+ movups 32(%edx),%xmm0
116
+ leal 32(%edx,%ecx,1),%edx
117
+ negl %ecx
118
+ addl $16,%ecx
119
+ .L004dec2_loop:
120
+ aesdec %xmm1,%xmm2
121
+ aesdec %xmm1,%xmm3
122
+ movups (%edx,%ecx,1),%xmm1
123
+ addl $32,%ecx
124
+ aesdec %xmm0,%xmm2
125
+ aesdec %xmm0,%xmm3
126
+ movups -16(%edx,%ecx,1),%xmm0
127
+ jnz .L004dec2_loop
128
+ aesdec %xmm1,%xmm2
129
+ aesdec %xmm1,%xmm3
130
+ aesdeclast %xmm0,%xmm2
131
+ aesdeclast %xmm0,%xmm3
132
+ ret
133
+ .size _aesni_decrypt2,.-_aesni_decrypt2
134
+ .hidden _aesni_encrypt3
135
+ .type _aesni_encrypt3,@function
136
+ .align 16
137
+ _aesni_encrypt3:
138
+ movups (%edx),%xmm0
139
+ shll $4,%ecx
140
+ movups 16(%edx),%xmm1
141
+ xorps %xmm0,%xmm2
142
+ pxor %xmm0,%xmm3
143
+ pxor %xmm0,%xmm4
144
+ movups 32(%edx),%xmm0
145
+ leal 32(%edx,%ecx,1),%edx
146
+ negl %ecx
147
+ addl $16,%ecx
148
+ .L005enc3_loop:
149
+ aesenc %xmm1,%xmm2
150
+ aesenc %xmm1,%xmm3
151
+ aesenc %xmm1,%xmm4
152
+ movups (%edx,%ecx,1),%xmm1
153
+ addl $32,%ecx
154
+ aesenc %xmm0,%xmm2
155
+ aesenc %xmm0,%xmm3
156
+ aesenc %xmm0,%xmm4
157
+ movups -16(%edx,%ecx,1),%xmm0
158
+ jnz .L005enc3_loop
159
+ aesenc %xmm1,%xmm2
160
+ aesenc %xmm1,%xmm3
161
+ aesenc %xmm1,%xmm4
162
+ aesenclast %xmm0,%xmm2
163
+ aesenclast %xmm0,%xmm3
164
+ aesenclast %xmm0,%xmm4
165
+ ret
166
+ .size _aesni_encrypt3,.-_aesni_encrypt3
167
+ .hidden _aesni_decrypt3
168
+ .type _aesni_decrypt3,@function
169
+ .align 16
170
+ _aesni_decrypt3:
171
+ movups (%edx),%xmm0
172
+ shll $4,%ecx
173
+ movups 16(%edx),%xmm1
174
+ xorps %xmm0,%xmm2
175
+ pxor %xmm0,%xmm3
176
+ pxor %xmm0,%xmm4
177
+ movups 32(%edx),%xmm0
178
+ leal 32(%edx,%ecx,1),%edx
179
+ negl %ecx
180
+ addl $16,%ecx
181
+ .L006dec3_loop:
182
+ aesdec %xmm1,%xmm2
183
+ aesdec %xmm1,%xmm3
184
+ aesdec %xmm1,%xmm4
185
+ movups (%edx,%ecx,1),%xmm1
186
+ addl $32,%ecx
187
+ aesdec %xmm0,%xmm2
188
+ aesdec %xmm0,%xmm3
189
+ aesdec %xmm0,%xmm4
190
+ movups -16(%edx,%ecx,1),%xmm0
191
+ jnz .L006dec3_loop
192
+ aesdec %xmm1,%xmm2
193
+ aesdec %xmm1,%xmm3
194
+ aesdec %xmm1,%xmm4
195
+ aesdeclast %xmm0,%xmm2
196
+ aesdeclast %xmm0,%xmm3
197
+ aesdeclast %xmm0,%xmm4
198
+ ret
199
+ .size _aesni_decrypt3,.-_aesni_decrypt3
200
+ .hidden _aesni_encrypt4
201
+ .type _aesni_encrypt4,@function
202
+ .align 16
203
+ _aesni_encrypt4:
204
+ movups (%edx),%xmm0
205
+ movups 16(%edx),%xmm1
206
+ shll $4,%ecx
207
+ xorps %xmm0,%xmm2
208
+ pxor %xmm0,%xmm3
209
+ pxor %xmm0,%xmm4
210
+ pxor %xmm0,%xmm5
211
+ movups 32(%edx),%xmm0
212
+ leal 32(%edx,%ecx,1),%edx
213
+ negl %ecx
214
+ .byte 15,31,64,0
215
+ addl $16,%ecx
216
+ .L007enc4_loop:
217
+ aesenc %xmm1,%xmm2
218
+ aesenc %xmm1,%xmm3
219
+ aesenc %xmm1,%xmm4
220
+ aesenc %xmm1,%xmm5
221
+ movups (%edx,%ecx,1),%xmm1
222
+ addl $32,%ecx
223
+ aesenc %xmm0,%xmm2
224
+ aesenc %xmm0,%xmm3
225
+ aesenc %xmm0,%xmm4
226
+ aesenc %xmm0,%xmm5
227
+ movups -16(%edx,%ecx,1),%xmm0
228
+ jnz .L007enc4_loop
229
+ aesenc %xmm1,%xmm2
230
+ aesenc %xmm1,%xmm3
231
+ aesenc %xmm1,%xmm4
232
+ aesenc %xmm1,%xmm5
233
+ aesenclast %xmm0,%xmm2
234
+ aesenclast %xmm0,%xmm3
235
+ aesenclast %xmm0,%xmm4
236
+ aesenclast %xmm0,%xmm5
237
+ ret
238
+ .size _aesni_encrypt4,.-_aesni_encrypt4
239
+ .hidden _aesni_decrypt4
240
+ .type _aesni_decrypt4,@function
241
+ .align 16
242
+ _aesni_decrypt4:
243
+ movups (%edx),%xmm0
244
+ movups 16(%edx),%xmm1
245
+ shll $4,%ecx
246
+ xorps %xmm0,%xmm2
247
+ pxor %xmm0,%xmm3
248
+ pxor %xmm0,%xmm4
249
+ pxor %xmm0,%xmm5
250
+ movups 32(%edx),%xmm0
251
+ leal 32(%edx,%ecx,1),%edx
252
+ negl %ecx
253
+ .byte 15,31,64,0
254
+ addl $16,%ecx
255
+ .L008dec4_loop:
256
+ aesdec %xmm1,%xmm2
257
+ aesdec %xmm1,%xmm3
258
+ aesdec %xmm1,%xmm4
259
+ aesdec %xmm1,%xmm5
260
+ movups (%edx,%ecx,1),%xmm1
261
+ addl $32,%ecx
262
+ aesdec %xmm0,%xmm2
263
+ aesdec %xmm0,%xmm3
264
+ aesdec %xmm0,%xmm4
265
+ aesdec %xmm0,%xmm5
266
+ movups -16(%edx,%ecx,1),%xmm0
267
+ jnz .L008dec4_loop
268
+ aesdec %xmm1,%xmm2
269
+ aesdec %xmm1,%xmm3
270
+ aesdec %xmm1,%xmm4
271
+ aesdec %xmm1,%xmm5
272
+ aesdeclast %xmm0,%xmm2
273
+ aesdeclast %xmm0,%xmm3
274
+ aesdeclast %xmm0,%xmm4
275
+ aesdeclast %xmm0,%xmm5
276
+ ret
277
+ .size _aesni_decrypt4,.-_aesni_decrypt4
278
+ .hidden _aesni_encrypt6
279
+ .type _aesni_encrypt6,@function
280
+ .align 16
281
+ _aesni_encrypt6:
282
+ movups (%edx),%xmm0
283
+ shll $4,%ecx
284
+ movups 16(%edx),%xmm1
285
+ xorps %xmm0,%xmm2
286
+ pxor %xmm0,%xmm3
287
+ pxor %xmm0,%xmm4
288
+ aesenc %xmm1,%xmm2
289
+ pxor %xmm0,%xmm5
290
+ pxor %xmm0,%xmm6
291
+ aesenc %xmm1,%xmm3
292
+ leal 32(%edx,%ecx,1),%edx
293
+ negl %ecx
294
+ aesenc %xmm1,%xmm4
295
+ pxor %xmm0,%xmm7
296
+ movups (%edx,%ecx,1),%xmm0
297
+ addl $16,%ecx
298
+ jmp .L009_aesni_encrypt6_inner
299
+ .align 16
300
+ .L010enc6_loop:
301
+ aesenc %xmm1,%xmm2
302
+ aesenc %xmm1,%xmm3
303
+ aesenc %xmm1,%xmm4
304
+ .L009_aesni_encrypt6_inner:
305
+ aesenc %xmm1,%xmm5
306
+ aesenc %xmm1,%xmm6
307
+ aesenc %xmm1,%xmm7
308
+ .L_aesni_encrypt6_enter:
309
+ movups (%edx,%ecx,1),%xmm1
310
+ addl $32,%ecx
311
+ aesenc %xmm0,%xmm2
312
+ aesenc %xmm0,%xmm3
313
+ aesenc %xmm0,%xmm4
314
+ aesenc %xmm0,%xmm5
315
+ aesenc %xmm0,%xmm6
316
+ aesenc %xmm0,%xmm7
317
+ movups -16(%edx,%ecx,1),%xmm0
318
+ jnz .L010enc6_loop
319
+ aesenc %xmm1,%xmm2
320
+ aesenc %xmm1,%xmm3
321
+ aesenc %xmm1,%xmm4
322
+ aesenc %xmm1,%xmm5
323
+ aesenc %xmm1,%xmm6
324
+ aesenc %xmm1,%xmm7
325
+ aesenclast %xmm0,%xmm2
326
+ aesenclast %xmm0,%xmm3
327
+ aesenclast %xmm0,%xmm4
328
+ aesenclast %xmm0,%xmm5
329
+ aesenclast %xmm0,%xmm6
330
+ aesenclast %xmm0,%xmm7
331
+ ret
332
+ .size _aesni_encrypt6,.-_aesni_encrypt6
333
+ .hidden _aesni_decrypt6
334
+ .type _aesni_decrypt6,@function
335
+ .align 16
336
+ _aesni_decrypt6:
337
+ movups (%edx),%xmm0
338
+ shll $4,%ecx
339
+ movups 16(%edx),%xmm1
340
+ xorps %xmm0,%xmm2
341
+ pxor %xmm0,%xmm3
342
+ pxor %xmm0,%xmm4
343
+ aesdec %xmm1,%xmm2
344
+ pxor %xmm0,%xmm5
345
+ pxor %xmm0,%xmm6
346
+ aesdec %xmm1,%xmm3
347
+ leal 32(%edx,%ecx,1),%edx
348
+ negl %ecx
349
+ aesdec %xmm1,%xmm4
350
+ pxor %xmm0,%xmm7
351
+ movups (%edx,%ecx,1),%xmm0
352
+ addl $16,%ecx
353
+ jmp .L011_aesni_decrypt6_inner
354
+ .align 16
355
+ .L012dec6_loop:
356
+ aesdec %xmm1,%xmm2
357
+ aesdec %xmm1,%xmm3
358
+ aesdec %xmm1,%xmm4
359
+ .L011_aesni_decrypt6_inner:
360
+ aesdec %xmm1,%xmm5
361
+ aesdec %xmm1,%xmm6
362
+ aesdec %xmm1,%xmm7
363
+ .L_aesni_decrypt6_enter:
364
+ movups (%edx,%ecx,1),%xmm1
365
+ addl $32,%ecx
366
+ aesdec %xmm0,%xmm2
367
+ aesdec %xmm0,%xmm3
368
+ aesdec %xmm0,%xmm4
369
+ aesdec %xmm0,%xmm5
370
+ aesdec %xmm0,%xmm6
371
+ aesdec %xmm0,%xmm7
372
+ movups -16(%edx,%ecx,1),%xmm0
373
+ jnz .L012dec6_loop
374
+ aesdec %xmm1,%xmm2
375
+ aesdec %xmm1,%xmm3
376
+ aesdec %xmm1,%xmm4
377
+ aesdec %xmm1,%xmm5
378
+ aesdec %xmm1,%xmm6
379
+ aesdec %xmm1,%xmm7
380
+ aesdeclast %xmm0,%xmm2
381
+ aesdeclast %xmm0,%xmm3
382
+ aesdeclast %xmm0,%xmm4
383
+ aesdeclast %xmm0,%xmm5
384
+ aesdeclast %xmm0,%xmm6
385
+ aesdeclast %xmm0,%xmm7
386
+ ret
387
+ .size _aesni_decrypt6,.-_aesni_decrypt6
388
+ .globl aes_hw_ecb_encrypt
389
+ .hidden aes_hw_ecb_encrypt
390
+ .type aes_hw_ecb_encrypt,@function
391
+ .align 16
392
+ aes_hw_ecb_encrypt:
393
+ .L_aes_hw_ecb_encrypt_begin:
394
+ pushl %ebp
395
+ pushl %ebx
396
+ pushl %esi
397
+ pushl %edi
398
+ movl 20(%esp),%esi
399
+ movl 24(%esp),%edi
400
+ movl 28(%esp),%eax
401
+ movl 32(%esp),%edx
402
+ movl 36(%esp),%ebx
403
+ andl $-16,%eax
404
+ jz .L013ecb_ret
405
+ movl 240(%edx),%ecx
406
+ testl %ebx,%ebx
407
+ jz .L014ecb_decrypt
408
+ movl %edx,%ebp
409
+ movl %ecx,%ebx
410
+ cmpl $96,%eax
411
+ jb .L015ecb_enc_tail
412
+ movdqu (%esi),%xmm2
413
+ movdqu 16(%esi),%xmm3
414
+ movdqu 32(%esi),%xmm4
415
+ movdqu 48(%esi),%xmm5
416
+ movdqu 64(%esi),%xmm6
417
+ movdqu 80(%esi),%xmm7
418
+ leal 96(%esi),%esi
419
+ subl $96,%eax
420
+ jmp .L016ecb_enc_loop6_enter
421
+ .align 16
422
+ .L017ecb_enc_loop6:
423
+ movups %xmm2,(%edi)
424
+ movdqu (%esi),%xmm2
425
+ movups %xmm3,16(%edi)
426
+ movdqu 16(%esi),%xmm3
427
+ movups %xmm4,32(%edi)
428
+ movdqu 32(%esi),%xmm4
429
+ movups %xmm5,48(%edi)
430
+ movdqu 48(%esi),%xmm5
431
+ movups %xmm6,64(%edi)
432
+ movdqu 64(%esi),%xmm6
433
+ movups %xmm7,80(%edi)
434
+ leal 96(%edi),%edi
435
+ movdqu 80(%esi),%xmm7
436
+ leal 96(%esi),%esi
437
+ .L016ecb_enc_loop6_enter:
438
+ call _aesni_encrypt6
439
+ movl %ebp,%edx
440
+ movl %ebx,%ecx
441
+ subl $96,%eax
442
+ jnc .L017ecb_enc_loop6
443
+ movups %xmm2,(%edi)
444
+ movups %xmm3,16(%edi)
445
+ movups %xmm4,32(%edi)
446
+ movups %xmm5,48(%edi)
447
+ movups %xmm6,64(%edi)
448
+ movups %xmm7,80(%edi)
449
+ leal 96(%edi),%edi
450
+ addl $96,%eax
451
+ jz .L013ecb_ret
452
+ .L015ecb_enc_tail:
453
+ movups (%esi),%xmm2
454
+ cmpl $32,%eax
455
+ jb .L018ecb_enc_one
456
+ movups 16(%esi),%xmm3
457
+ je .L019ecb_enc_two
458
+ movups 32(%esi),%xmm4
459
+ cmpl $64,%eax
460
+ jb .L020ecb_enc_three
461
+ movups 48(%esi),%xmm5
462
+ je .L021ecb_enc_four
463
+ movups 64(%esi),%xmm6
464
+ xorps %xmm7,%xmm7
465
+ call _aesni_encrypt6
466
+ movups %xmm2,(%edi)
467
+ movups %xmm3,16(%edi)
468
+ movups %xmm4,32(%edi)
469
+ movups %xmm5,48(%edi)
470
+ movups %xmm6,64(%edi)
471
+ jmp .L013ecb_ret
472
+ .align 16
473
+ .L018ecb_enc_one:
474
+ movups (%edx),%xmm0
475
+ movups 16(%edx),%xmm1
476
+ leal 32(%edx),%edx
477
+ xorps %xmm0,%xmm2
478
+ .L022enc1_loop_3:
479
+ aesenc %xmm1,%xmm2
480
+ decl %ecx
481
+ movups (%edx),%xmm1
482
+ leal 16(%edx),%edx
483
+ jnz .L022enc1_loop_3
484
+ aesenclast %xmm1,%xmm2
485
+ movups %xmm2,(%edi)
486
+ jmp .L013ecb_ret
487
+ .align 16
488
+ .L019ecb_enc_two:
489
+ call _aesni_encrypt2
490
+ movups %xmm2,(%edi)
491
+ movups %xmm3,16(%edi)
492
+ jmp .L013ecb_ret
493
+ .align 16
494
+ .L020ecb_enc_three:
495
+ call _aesni_encrypt3
496
+ movups %xmm2,(%edi)
497
+ movups %xmm3,16(%edi)
498
+ movups %xmm4,32(%edi)
499
+ jmp .L013ecb_ret
500
+ .align 16
501
+ .L021ecb_enc_four:
502
+ call _aesni_encrypt4
503
+ movups %xmm2,(%edi)
504
+ movups %xmm3,16(%edi)
505
+ movups %xmm4,32(%edi)
506
+ movups %xmm5,48(%edi)
507
+ jmp .L013ecb_ret
508
+ .align 16
509
+ .L014ecb_decrypt:
510
+ movl %edx,%ebp
511
+ movl %ecx,%ebx
512
+ cmpl $96,%eax
513
+ jb .L023ecb_dec_tail
514
+ movdqu (%esi),%xmm2
515
+ movdqu 16(%esi),%xmm3
516
+ movdqu 32(%esi),%xmm4
517
+ movdqu 48(%esi),%xmm5
518
+ movdqu 64(%esi),%xmm6
519
+ movdqu 80(%esi),%xmm7
520
+ leal 96(%esi),%esi
521
+ subl $96,%eax
522
+ jmp .L024ecb_dec_loop6_enter
523
+ .align 16
524
+ .L025ecb_dec_loop6:
525
+ movups %xmm2,(%edi)
526
+ movdqu (%esi),%xmm2
527
+ movups %xmm3,16(%edi)
528
+ movdqu 16(%esi),%xmm3
529
+ movups %xmm4,32(%edi)
530
+ movdqu 32(%esi),%xmm4
531
+ movups %xmm5,48(%edi)
532
+ movdqu 48(%esi),%xmm5
533
+ movups %xmm6,64(%edi)
534
+ movdqu 64(%esi),%xmm6
535
+ movups %xmm7,80(%edi)
536
+ leal 96(%edi),%edi
537
+ movdqu 80(%esi),%xmm7
538
+ leal 96(%esi),%esi
539
+ .L024ecb_dec_loop6_enter:
540
+ call _aesni_decrypt6
541
+ movl %ebp,%edx
542
+ movl %ebx,%ecx
543
+ subl $96,%eax
544
+ jnc .L025ecb_dec_loop6
545
+ movups %xmm2,(%edi)
546
+ movups %xmm3,16(%edi)
547
+ movups %xmm4,32(%edi)
548
+ movups %xmm5,48(%edi)
549
+ movups %xmm6,64(%edi)
550
+ movups %xmm7,80(%edi)
551
+ leal 96(%edi),%edi
552
+ addl $96,%eax
553
+ jz .L013ecb_ret
554
+ .L023ecb_dec_tail:
555
+ movups (%esi),%xmm2
556
+ cmpl $32,%eax
557
+ jb .L026ecb_dec_one
558
+ movups 16(%esi),%xmm3
559
+ je .L027ecb_dec_two
560
+ movups 32(%esi),%xmm4
561
+ cmpl $64,%eax
562
+ jb .L028ecb_dec_three
563
+ movups 48(%esi),%xmm5
564
+ je .L029ecb_dec_four
565
+ movups 64(%esi),%xmm6
566
+ xorps %xmm7,%xmm7
567
+ call _aesni_decrypt6
568
+ movups %xmm2,(%edi)
569
+ movups %xmm3,16(%edi)
570
+ movups %xmm4,32(%edi)
571
+ movups %xmm5,48(%edi)
572
+ movups %xmm6,64(%edi)
573
+ jmp .L013ecb_ret
574
+ .align 16
575
+ .L026ecb_dec_one:
576
+ movups (%edx),%xmm0
577
+ movups 16(%edx),%xmm1
578
+ leal 32(%edx),%edx
579
+ xorps %xmm0,%xmm2
580
+ .L030dec1_loop_4:
581
+ aesdec %xmm1,%xmm2
582
+ decl %ecx
583
+ movups (%edx),%xmm1
584
+ leal 16(%edx),%edx
585
+ jnz .L030dec1_loop_4
586
+ aesdeclast %xmm1,%xmm2
587
+ movups %xmm2,(%edi)
588
+ jmp .L013ecb_ret
589
+ .align 16
590
+ .L027ecb_dec_two:
591
+ call _aesni_decrypt2
592
+ movups %xmm2,(%edi)
593
+ movups %xmm3,16(%edi)
594
+ jmp .L013ecb_ret
595
+ .align 16
596
+ .L028ecb_dec_three:
597
+ call _aesni_decrypt3
598
+ movups %xmm2,(%edi)
599
+ movups %xmm3,16(%edi)
600
+ movups %xmm4,32(%edi)
601
+ jmp .L013ecb_ret
602
+ .align 16
603
+ .L029ecb_dec_four:
604
+ call _aesni_decrypt4
605
+ movups %xmm2,(%edi)
606
+ movups %xmm3,16(%edi)
607
+ movups %xmm4,32(%edi)
608
+ movups %xmm5,48(%edi)
609
+ .L013ecb_ret:
610
+ pxor %xmm0,%xmm0
611
+ pxor %xmm1,%xmm1
612
+ pxor %xmm2,%xmm2
613
+ pxor %xmm3,%xmm3
614
+ pxor %xmm4,%xmm4
615
+ pxor %xmm5,%xmm5
616
+ pxor %xmm6,%xmm6
617
+ pxor %xmm7,%xmm7
618
+ popl %edi
619
+ popl %esi
620
+ popl %ebx
621
+ popl %ebp
622
+ ret
623
+ .size aes_hw_ecb_encrypt,.-.L_aes_hw_ecb_encrypt_begin
624
+ .globl aes_hw_ccm64_encrypt_blocks
625
+ .hidden aes_hw_ccm64_encrypt_blocks
626
+ .type aes_hw_ccm64_encrypt_blocks,@function
627
+ .align 16
628
+ aes_hw_ccm64_encrypt_blocks:
629
+ .L_aes_hw_ccm64_encrypt_blocks_begin:
630
+ pushl %ebp
631
+ pushl %ebx
632
+ pushl %esi
633
+ pushl %edi
634
+ movl 20(%esp),%esi
635
+ movl 24(%esp),%edi
636
+ movl 28(%esp),%eax
637
+ movl 32(%esp),%edx
638
+ movl 36(%esp),%ebx
639
+ movl 40(%esp),%ecx
640
+ movl %esp,%ebp
641
+ subl $60,%esp
642
+ andl $-16,%esp
643
+ movl %ebp,48(%esp)
644
+ movdqu (%ebx),%xmm7
645
+ movdqu (%ecx),%xmm3
646
+ movl 240(%edx),%ecx
647
+ movl $202182159,(%esp)
648
+ movl $134810123,4(%esp)
649
+ movl $67438087,8(%esp)
650
+ movl $66051,12(%esp)
651
+ movl $1,%ebx
652
+ xorl %ebp,%ebp
653
+ movl %ebx,16(%esp)
654
+ movl %ebp,20(%esp)
655
+ movl %ebp,24(%esp)
656
+ movl %ebp,28(%esp)
657
+ shll $4,%ecx
658
+ movl $16,%ebx
659
+ leal (%edx),%ebp
660
+ movdqa (%esp),%xmm5
661
+ movdqa %xmm7,%xmm2
662
+ leal 32(%edx,%ecx,1),%edx
663
+ subl %ecx,%ebx
664
+ pshufb %xmm5,%xmm7
665
+ .L031ccm64_enc_outer:
666
+ movups (%ebp),%xmm0
667
+ movl %ebx,%ecx
668
+ movups (%esi),%xmm6
669
+ xorps %xmm0,%xmm2
670
+ movups 16(%ebp),%xmm1
671
+ xorps %xmm6,%xmm0
672
+ xorps %xmm0,%xmm3
673
+ movups 32(%ebp),%xmm0
674
+ .L032ccm64_enc2_loop:
675
+ aesenc %xmm1,%xmm2
676
+ aesenc %xmm1,%xmm3
677
+ movups (%edx,%ecx,1),%xmm1
678
+ addl $32,%ecx
679
+ aesenc %xmm0,%xmm2
680
+ aesenc %xmm0,%xmm3
681
+ movups -16(%edx,%ecx,1),%xmm0
682
+ jnz .L032ccm64_enc2_loop
683
+ aesenc %xmm1,%xmm2
684
+ aesenc %xmm1,%xmm3
685
+ paddq 16(%esp),%xmm7
686
+ decl %eax
687
+ aesenclast %xmm0,%xmm2
688
+ aesenclast %xmm0,%xmm3
689
+ leal 16(%esi),%esi
690
+ xorps %xmm2,%xmm6
691
+ movdqa %xmm7,%xmm2
692
+ movups %xmm6,(%edi)
693
+ pshufb %xmm5,%xmm2
694
+ leal 16(%edi),%edi
695
+ jnz .L031ccm64_enc_outer
696
+ movl 48(%esp),%esp
697
+ movl 40(%esp),%edi
698
+ movups %xmm3,(%edi)
699
+ pxor %xmm0,%xmm0
700
+ pxor %xmm1,%xmm1
701
+ pxor %xmm2,%xmm2
702
+ pxor %xmm3,%xmm3
703
+ pxor %xmm4,%xmm4
704
+ pxor %xmm5,%xmm5
705
+ pxor %xmm6,%xmm6
706
+ pxor %xmm7,%xmm7
707
+ popl %edi
708
+ popl %esi
709
+ popl %ebx
710
+ popl %ebp
711
+ ret
712
+ .size aes_hw_ccm64_encrypt_blocks,.-.L_aes_hw_ccm64_encrypt_blocks_begin
713
+ .globl aes_hw_ccm64_decrypt_blocks
714
+ .hidden aes_hw_ccm64_decrypt_blocks
715
+ .type aes_hw_ccm64_decrypt_blocks,@function
716
+ .align 16
717
+ aes_hw_ccm64_decrypt_blocks:
718
+ .L_aes_hw_ccm64_decrypt_blocks_begin:
719
+ pushl %ebp
720
+ pushl %ebx
721
+ pushl %esi
722
+ pushl %edi
723
+ movl 20(%esp),%esi
724
+ movl 24(%esp),%edi
725
+ movl 28(%esp),%eax
726
+ movl 32(%esp),%edx
727
+ movl 36(%esp),%ebx
728
+ movl 40(%esp),%ecx
729
+ movl %esp,%ebp
730
+ subl $60,%esp
731
+ andl $-16,%esp
732
+ movl %ebp,48(%esp)
733
+ movdqu (%ebx),%xmm7
734
+ movdqu (%ecx),%xmm3
735
+ movl 240(%edx),%ecx
736
+ movl $202182159,(%esp)
737
+ movl $134810123,4(%esp)
738
+ movl $67438087,8(%esp)
739
+ movl $66051,12(%esp)
740
+ movl $1,%ebx
741
+ xorl %ebp,%ebp
742
+ movl %ebx,16(%esp)
743
+ movl %ebp,20(%esp)
744
+ movl %ebp,24(%esp)
745
+ movl %ebp,28(%esp)
746
+ movdqa (%esp),%xmm5
747
+ movdqa %xmm7,%xmm2
748
+ movl %edx,%ebp
749
+ movl %ecx,%ebx
750
+ pshufb %xmm5,%xmm7
751
+ movups (%edx),%xmm0
752
+ movups 16(%edx),%xmm1
753
+ leal 32(%edx),%edx
754
+ xorps %xmm0,%xmm2
755
+ .L033enc1_loop_5:
756
+ aesenc %xmm1,%xmm2
757
+ decl %ecx
758
+ movups (%edx),%xmm1
759
+ leal 16(%edx),%edx
760
+ jnz .L033enc1_loop_5
761
+ aesenclast %xmm1,%xmm2
762
+ shll $4,%ebx
763
+ movl $16,%ecx
764
+ movups (%esi),%xmm6
765
+ paddq 16(%esp),%xmm7
766
+ leal 16(%esi),%esi
767
+ subl %ebx,%ecx
768
+ leal 32(%ebp,%ebx,1),%edx
769
+ movl %ecx,%ebx
770
+ jmp .L034ccm64_dec_outer
771
+ .align 16
772
+ .L034ccm64_dec_outer:
773
+ xorps %xmm2,%xmm6
774
+ movdqa %xmm7,%xmm2
775
+ movups %xmm6,(%edi)
776
+ leal 16(%edi),%edi
777
+ pshufb %xmm5,%xmm2
778
+ subl $1,%eax
779
+ jz .L035ccm64_dec_break
780
+ movups (%ebp),%xmm0
781
+ movl %ebx,%ecx
782
+ movups 16(%ebp),%xmm1
783
+ xorps %xmm0,%xmm6
784
+ xorps %xmm0,%xmm2
785
+ xorps %xmm6,%xmm3
786
+ movups 32(%ebp),%xmm0
787
+ .L036ccm64_dec2_loop:
788
+ aesenc %xmm1,%xmm2
789
+ aesenc %xmm1,%xmm3
790
+ movups (%edx,%ecx,1),%xmm1
791
+ addl $32,%ecx
792
+ aesenc %xmm0,%xmm2
793
+ aesenc %xmm0,%xmm3
794
+ movups -16(%edx,%ecx,1),%xmm0
795
+ jnz .L036ccm64_dec2_loop
796
+ movups (%esi),%xmm6
797
+ paddq 16(%esp),%xmm7
798
+ aesenc %xmm1,%xmm2
799
+ aesenc %xmm1,%xmm3
800
+ aesenclast %xmm0,%xmm2
801
+ aesenclast %xmm0,%xmm3
802
+ leal 16(%esi),%esi
803
+ jmp .L034ccm64_dec_outer
804
+ .align 16
805
+ .L035ccm64_dec_break:
806
+ movl 240(%ebp),%ecx
807
+ movl %ebp,%edx
808
+ movups (%edx),%xmm0
809
+ movups 16(%edx),%xmm1
810
+ xorps %xmm0,%xmm6
811
+ leal 32(%edx),%edx
812
+ xorps %xmm6,%xmm3
813
+ .L037enc1_loop_6:
814
+ aesenc %xmm1,%xmm3
815
+ decl %ecx
816
+ movups (%edx),%xmm1
817
+ leal 16(%edx),%edx
818
+ jnz .L037enc1_loop_6
819
+ aesenclast %xmm1,%xmm3
820
+ movl 48(%esp),%esp
821
+ movl 40(%esp),%edi
822
+ movups %xmm3,(%edi)
823
+ pxor %xmm0,%xmm0
824
+ pxor %xmm1,%xmm1
825
+ pxor %xmm2,%xmm2
826
+ pxor %xmm3,%xmm3
827
+ pxor %xmm4,%xmm4
828
+ pxor %xmm5,%xmm5
829
+ pxor %xmm6,%xmm6
830
+ pxor %xmm7,%xmm7
831
+ popl %edi
832
+ popl %esi
833
+ popl %ebx
834
+ popl %ebp
835
+ ret
836
+ .size aes_hw_ccm64_decrypt_blocks,.-.L_aes_hw_ccm64_decrypt_blocks_begin
837
+ .globl aes_hw_ctr32_encrypt_blocks
838
+ .hidden aes_hw_ctr32_encrypt_blocks
839
+ .type aes_hw_ctr32_encrypt_blocks,@function
840
+ .align 16
841
+ aes_hw_ctr32_encrypt_blocks:
842
+ .L_aes_hw_ctr32_encrypt_blocks_begin:
843
+ pushl %ebp
844
+ pushl %ebx
845
+ pushl %esi
846
+ pushl %edi
847
+ #ifdef BORINGSSL_DISPATCH_TEST
848
+ pushl %ebx
849
+ pushl %edx
850
+ call .L038pic_for_function_hit
851
+ .L038pic_for_function_hit:
852
+ popl %ebx
853
+ leal BORINGSSL_function_hit+0-.L038pic_for_function_hit(%ebx),%ebx
854
+ movl $1,%edx
855
+ movb %dl,(%ebx)
856
+ popl %edx
857
+ popl %ebx
858
+ #endif
859
+ movl 20(%esp),%esi
860
+ movl 24(%esp),%edi
861
+ movl 28(%esp),%eax
862
+ movl 32(%esp),%edx
863
+ movl 36(%esp),%ebx
864
+ movl %esp,%ebp
865
+ subl $88,%esp
866
+ andl $-16,%esp
867
+ movl %ebp,80(%esp)
868
+ cmpl $1,%eax
869
+ je .L039ctr32_one_shortcut
870
+ movdqu (%ebx),%xmm7
871
+ movl $202182159,(%esp)
872
+ movl $134810123,4(%esp)
873
+ movl $67438087,8(%esp)
874
+ movl $66051,12(%esp)
875
+ movl $6,%ecx
876
+ xorl %ebp,%ebp
877
+ movl %ecx,16(%esp)
878
+ movl %ecx,20(%esp)
879
+ movl %ecx,24(%esp)
880
+ movl %ebp,28(%esp)
881
+ pextrd $3,%xmm7,%ebx
882
+ pinsrd $3,%ebp,%xmm7
883
+ movl 240(%edx),%ecx
884
+ bswap %ebx
885
+ pxor %xmm0,%xmm0
886
+ pxor %xmm1,%xmm1
887
+ movdqa (%esp),%xmm2
888
+ pinsrd $0,%ebx,%xmm0
889
+ leal 3(%ebx),%ebp
890
+ pinsrd $0,%ebp,%xmm1
891
+ incl %ebx
892
+ pinsrd $1,%ebx,%xmm0
893
+ incl %ebp
894
+ pinsrd $1,%ebp,%xmm1
895
+ incl %ebx
896
+ pinsrd $2,%ebx,%xmm0
897
+ incl %ebp
898
+ pinsrd $2,%ebp,%xmm1
899
+ movdqa %xmm0,48(%esp)
900
+ pshufb %xmm2,%xmm0
901
+ movdqu (%edx),%xmm6
902
+ movdqa %xmm1,64(%esp)
903
+ pshufb %xmm2,%xmm1
904
+ pshufd $192,%xmm0,%xmm2
905
+ pshufd $128,%xmm0,%xmm3
906
+ cmpl $6,%eax
907
+ jb .L040ctr32_tail
908
+ pxor %xmm6,%xmm7
909
+ shll $4,%ecx
910
+ movl $16,%ebx
911
+ movdqa %xmm7,32(%esp)
912
+ movl %edx,%ebp
913
+ subl %ecx,%ebx
914
+ leal 32(%edx,%ecx,1),%edx
915
+ subl $6,%eax
916
+ jmp .L041ctr32_loop6
917
+ .align 16
918
+ .L041ctr32_loop6:
919
+ pshufd $64,%xmm0,%xmm4
920
+ movdqa 32(%esp),%xmm0
921
+ pshufd $192,%xmm1,%xmm5
922
+ pxor %xmm0,%xmm2
923
+ pshufd $128,%xmm1,%xmm6
924
+ pxor %xmm0,%xmm3
925
+ pshufd $64,%xmm1,%xmm7
926
+ movups 16(%ebp),%xmm1
927
+ pxor %xmm0,%xmm4
928
+ pxor %xmm0,%xmm5
929
+ aesenc %xmm1,%xmm2
930
+ pxor %xmm0,%xmm6
931
+ pxor %xmm0,%xmm7
932
+ aesenc %xmm1,%xmm3
933
+ movups 32(%ebp),%xmm0
934
+ movl %ebx,%ecx
935
+ aesenc %xmm1,%xmm4
936
+ aesenc %xmm1,%xmm5
937
+ aesenc %xmm1,%xmm6
938
+ aesenc %xmm1,%xmm7
939
+ call .L_aesni_encrypt6_enter
940
+ movups (%esi),%xmm1
941
+ movups 16(%esi),%xmm0
942
+ xorps %xmm1,%xmm2
943
+ movups 32(%esi),%xmm1
944
+ xorps %xmm0,%xmm3
945
+ movups %xmm2,(%edi)
946
+ movdqa 16(%esp),%xmm0
947
+ xorps %xmm1,%xmm4
948
+ movdqa 64(%esp),%xmm1
949
+ movups %xmm3,16(%edi)
950
+ movups %xmm4,32(%edi)
951
+ paddd %xmm0,%xmm1
952
+ paddd 48(%esp),%xmm0
953
+ movdqa (%esp),%xmm2
954
+ movups 48(%esi),%xmm3
955
+ movups 64(%esi),%xmm4
956
+ xorps %xmm3,%xmm5
957
+ movups 80(%esi),%xmm3
958
+ leal 96(%esi),%esi
959
+ movdqa %xmm0,48(%esp)
960
+ pshufb %xmm2,%xmm0
961
+ xorps %xmm4,%xmm6
962
+ movups %xmm5,48(%edi)
963
+ xorps %xmm3,%xmm7
964
+ movdqa %xmm1,64(%esp)
965
+ pshufb %xmm2,%xmm1
966
+ movups %xmm6,64(%edi)
967
+ pshufd $192,%xmm0,%xmm2
968
+ movups %xmm7,80(%edi)
969
+ leal 96(%edi),%edi
970
+ pshufd $128,%xmm0,%xmm3
971
+ subl $6,%eax
972
+ jnc .L041ctr32_loop6
973
+ addl $6,%eax
974
+ jz .L042ctr32_ret
975
+ movdqu (%ebp),%xmm7
976
+ movl %ebp,%edx
977
+ pxor 32(%esp),%xmm7
978
+ movl 240(%ebp),%ecx
979
+ .L040ctr32_tail:
980
+ por %xmm7,%xmm2
981
+ cmpl $2,%eax
982
+ jb .L043ctr32_one
983
+ pshufd $64,%xmm0,%xmm4
984
+ por %xmm7,%xmm3
985
+ je .L044ctr32_two
986
+ pshufd $192,%xmm1,%xmm5
987
+ por %xmm7,%xmm4
988
+ cmpl $4,%eax
989
+ jb .L045ctr32_three
990
+ pshufd $128,%xmm1,%xmm6
991
+ por %xmm7,%xmm5
992
+ je .L046ctr32_four
993
+ por %xmm7,%xmm6
994
+ call _aesni_encrypt6
995
+ movups (%esi),%xmm1
996
+ movups 16(%esi),%xmm0
997
+ xorps %xmm1,%xmm2
998
+ movups 32(%esi),%xmm1
999
+ xorps %xmm0,%xmm3
1000
+ movups 48(%esi),%xmm0
1001
+ xorps %xmm1,%xmm4
1002
+ movups 64(%esi),%xmm1
1003
+ xorps %xmm0,%xmm5
1004
+ movups %xmm2,(%edi)
1005
+ xorps %xmm1,%xmm6
1006
+ movups %xmm3,16(%edi)
1007
+ movups %xmm4,32(%edi)
1008
+ movups %xmm5,48(%edi)
1009
+ movups %xmm6,64(%edi)
1010
+ jmp .L042ctr32_ret
1011
+ .align 16
1012
+ .L039ctr32_one_shortcut:
1013
+ movups (%ebx),%xmm2
1014
+ movl 240(%edx),%ecx
1015
+ .L043ctr32_one:
1016
+ movups (%edx),%xmm0
1017
+ movups 16(%edx),%xmm1
1018
+ leal 32(%edx),%edx
1019
+ xorps %xmm0,%xmm2
1020
+ .L047enc1_loop_7:
1021
+ aesenc %xmm1,%xmm2
1022
+ decl %ecx
1023
+ movups (%edx),%xmm1
1024
+ leal 16(%edx),%edx
1025
+ jnz .L047enc1_loop_7
1026
+ aesenclast %xmm1,%xmm2
1027
+ movups (%esi),%xmm6
1028
+ xorps %xmm2,%xmm6
1029
+ movups %xmm6,(%edi)
1030
+ jmp .L042ctr32_ret
1031
+ .align 16
1032
+ .L044ctr32_two:
1033
+ call _aesni_encrypt2
1034
+ movups (%esi),%xmm5
1035
+ movups 16(%esi),%xmm6
1036
+ xorps %xmm5,%xmm2
1037
+ xorps %xmm6,%xmm3
1038
+ movups %xmm2,(%edi)
1039
+ movups %xmm3,16(%edi)
1040
+ jmp .L042ctr32_ret
1041
+ .align 16
1042
+ .L045ctr32_three:
1043
+ call _aesni_encrypt3
1044
+ movups (%esi),%xmm5
1045
+ movups 16(%esi),%xmm6
1046
+ xorps %xmm5,%xmm2
1047
+ movups 32(%esi),%xmm7
1048
+ xorps %xmm6,%xmm3
1049
+ movups %xmm2,(%edi)
1050
+ xorps %xmm7,%xmm4
1051
+ movups %xmm3,16(%edi)
1052
+ movups %xmm4,32(%edi)
1053
+ jmp .L042ctr32_ret
1054
+ .align 16
1055
+ .L046ctr32_four:
1056
+ call _aesni_encrypt4
1057
+ movups (%esi),%xmm6
1058
+ movups 16(%esi),%xmm7
1059
+ movups 32(%esi),%xmm1
1060
+ xorps %xmm6,%xmm2
1061
+ movups 48(%esi),%xmm0
1062
+ xorps %xmm7,%xmm3
1063
+ movups %xmm2,(%edi)
1064
+ xorps %xmm1,%xmm4
1065
+ movups %xmm3,16(%edi)
1066
+ xorps %xmm0,%xmm5
1067
+ movups %xmm4,32(%edi)
1068
+ movups %xmm5,48(%edi)
1069
+ .L042ctr32_ret:
1070
+ pxor %xmm0,%xmm0
1071
+ pxor %xmm1,%xmm1
1072
+ pxor %xmm2,%xmm2
1073
+ pxor %xmm3,%xmm3
1074
+ pxor %xmm4,%xmm4
1075
+ movdqa %xmm0,32(%esp)
1076
+ pxor %xmm5,%xmm5
1077
+ movdqa %xmm0,48(%esp)
1078
+ pxor %xmm6,%xmm6
1079
+ movdqa %xmm0,64(%esp)
1080
+ pxor %xmm7,%xmm7
1081
+ movl 80(%esp),%esp
1082
+ popl %edi
1083
+ popl %esi
1084
+ popl %ebx
1085
+ popl %ebp
1086
+ ret
1087
+ .size aes_hw_ctr32_encrypt_blocks,.-.L_aes_hw_ctr32_encrypt_blocks_begin
1088
+ .globl aes_hw_xts_encrypt
1089
+ .hidden aes_hw_xts_encrypt
1090
+ .type aes_hw_xts_encrypt,@function
1091
+ .align 16
1092
+ aes_hw_xts_encrypt:
1093
+ .L_aes_hw_xts_encrypt_begin:
1094
+ pushl %ebp
1095
+ pushl %ebx
1096
+ pushl %esi
1097
+ pushl %edi
1098
+ movl 36(%esp),%edx
1099
+ movl 40(%esp),%esi
1100
+ movl 240(%edx),%ecx
1101
+ movups (%esi),%xmm2
1102
+ movups (%edx),%xmm0
1103
+ movups 16(%edx),%xmm1
1104
+ leal 32(%edx),%edx
1105
+ xorps %xmm0,%xmm2
1106
+ .L048enc1_loop_8:
1107
+ aesenc %xmm1,%xmm2
1108
+ decl %ecx
1109
+ movups (%edx),%xmm1
1110
+ leal 16(%edx),%edx
1111
+ jnz .L048enc1_loop_8
1112
+ aesenclast %xmm1,%xmm2
1113
+ movl 20(%esp),%esi
1114
+ movl 24(%esp),%edi
1115
+ movl 28(%esp),%eax
1116
+ movl 32(%esp),%edx
1117
+ movl %esp,%ebp
1118
+ subl $120,%esp
1119
+ movl 240(%edx),%ecx
1120
+ andl $-16,%esp
1121
+ movl $135,96(%esp)
1122
+ movl $0,100(%esp)
1123
+ movl $1,104(%esp)
1124
+ movl $0,108(%esp)
1125
+ movl %eax,112(%esp)
1126
+ movl %ebp,116(%esp)
1127
+ movdqa %xmm2,%xmm1
1128
+ pxor %xmm0,%xmm0
1129
+ movdqa 96(%esp),%xmm3
1130
+ pcmpgtd %xmm1,%xmm0
1131
+ andl $-16,%eax
1132
+ movl %edx,%ebp
1133
+ movl %ecx,%ebx
1134
+ subl $96,%eax
1135
+ jc .L049xts_enc_short
1136
+ shll $4,%ecx
1137
+ movl $16,%ebx
1138
+ subl %ecx,%ebx
1139
+ leal 32(%edx,%ecx,1),%edx
1140
+ jmp .L050xts_enc_loop6
1141
+ .align 16
1142
+ .L050xts_enc_loop6:
1143
+ pshufd $19,%xmm0,%xmm2
1144
+ pxor %xmm0,%xmm0
1145
+ movdqa %xmm1,(%esp)
1146
+ paddq %xmm1,%xmm1
1147
+ pand %xmm3,%xmm2
1148
+ pcmpgtd %xmm1,%xmm0
1149
+ pxor %xmm2,%xmm1
1150
+ pshufd $19,%xmm0,%xmm2
1151
+ pxor %xmm0,%xmm0
1152
+ movdqa %xmm1,16(%esp)
1153
+ paddq %xmm1,%xmm1
1154
+ pand %xmm3,%xmm2
1155
+ pcmpgtd %xmm1,%xmm0
1156
+ pxor %xmm2,%xmm1
1157
+ pshufd $19,%xmm0,%xmm2
1158
+ pxor %xmm0,%xmm0
1159
+ movdqa %xmm1,32(%esp)
1160
+ paddq %xmm1,%xmm1
1161
+ pand %xmm3,%xmm2
1162
+ pcmpgtd %xmm1,%xmm0
1163
+ pxor %xmm2,%xmm1
1164
+ pshufd $19,%xmm0,%xmm2
1165
+ pxor %xmm0,%xmm0
1166
+ movdqa %xmm1,48(%esp)
1167
+ paddq %xmm1,%xmm1
1168
+ pand %xmm3,%xmm2
1169
+ pcmpgtd %xmm1,%xmm0
1170
+ pxor %xmm2,%xmm1
1171
+ pshufd $19,%xmm0,%xmm7
1172
+ movdqa %xmm1,64(%esp)
1173
+ paddq %xmm1,%xmm1
1174
+ movups (%ebp),%xmm0
1175
+ pand %xmm3,%xmm7
1176
+ movups (%esi),%xmm2
1177
+ pxor %xmm1,%xmm7
1178
+ movl %ebx,%ecx
1179
+ movdqu 16(%esi),%xmm3
1180
+ xorps %xmm0,%xmm2
1181
+ movdqu 32(%esi),%xmm4
1182
+ pxor %xmm0,%xmm3
1183
+ movdqu 48(%esi),%xmm5
1184
+ pxor %xmm0,%xmm4
1185
+ movdqu 64(%esi),%xmm6
1186
+ pxor %xmm0,%xmm5
1187
+ movdqu 80(%esi),%xmm1
1188
+ pxor %xmm0,%xmm6
1189
+ leal 96(%esi),%esi
1190
+ pxor (%esp),%xmm2
1191
+ movdqa %xmm7,80(%esp)
1192
+ pxor %xmm1,%xmm7
1193
+ movups 16(%ebp),%xmm1
1194
+ pxor 16(%esp),%xmm3
1195
+ pxor 32(%esp),%xmm4
1196
+ aesenc %xmm1,%xmm2
1197
+ pxor 48(%esp),%xmm5
1198
+ pxor 64(%esp),%xmm6
1199
+ aesenc %xmm1,%xmm3
1200
+ pxor %xmm0,%xmm7
1201
+ movups 32(%ebp),%xmm0
1202
+ aesenc %xmm1,%xmm4
1203
+ aesenc %xmm1,%xmm5
1204
+ aesenc %xmm1,%xmm6
1205
+ aesenc %xmm1,%xmm7
1206
+ call .L_aesni_encrypt6_enter
1207
+ movdqa 80(%esp),%xmm1
1208
+ pxor %xmm0,%xmm0
1209
+ xorps (%esp),%xmm2
1210
+ pcmpgtd %xmm1,%xmm0
1211
+ xorps 16(%esp),%xmm3
1212
+ movups %xmm2,(%edi)
1213
+ xorps 32(%esp),%xmm4
1214
+ movups %xmm3,16(%edi)
1215
+ xorps 48(%esp),%xmm5
1216
+ movups %xmm4,32(%edi)
1217
+ xorps 64(%esp),%xmm6
1218
+ movups %xmm5,48(%edi)
1219
+ xorps %xmm1,%xmm7
1220
+ movups %xmm6,64(%edi)
1221
+ pshufd $19,%xmm0,%xmm2
1222
+ movups %xmm7,80(%edi)
1223
+ leal 96(%edi),%edi
1224
+ movdqa 96(%esp),%xmm3
1225
+ pxor %xmm0,%xmm0
1226
+ paddq %xmm1,%xmm1
1227
+ pand %xmm3,%xmm2
1228
+ pcmpgtd %xmm1,%xmm0
1229
+ pxor %xmm2,%xmm1
1230
+ subl $96,%eax
1231
+ jnc .L050xts_enc_loop6
1232
+ movl 240(%ebp),%ecx
1233
+ movl %ebp,%edx
1234
+ movl %ecx,%ebx
1235
+ .L049xts_enc_short:
1236
+ addl $96,%eax
1237
+ jz .L051xts_enc_done6x
1238
+ movdqa %xmm1,%xmm5
1239
+ cmpl $32,%eax
1240
+ jb .L052xts_enc_one
1241
+ pshufd $19,%xmm0,%xmm2
1242
+ pxor %xmm0,%xmm0
1243
+ paddq %xmm1,%xmm1
1244
+ pand %xmm3,%xmm2
1245
+ pcmpgtd %xmm1,%xmm0
1246
+ pxor %xmm2,%xmm1
1247
+ je .L053xts_enc_two
1248
+ pshufd $19,%xmm0,%xmm2
1249
+ pxor %xmm0,%xmm0
1250
+ movdqa %xmm1,%xmm6
1251
+ paddq %xmm1,%xmm1
1252
+ pand %xmm3,%xmm2
1253
+ pcmpgtd %xmm1,%xmm0
1254
+ pxor %xmm2,%xmm1
1255
+ cmpl $64,%eax
1256
+ jb .L054xts_enc_three
1257
+ pshufd $19,%xmm0,%xmm2
1258
+ pxor %xmm0,%xmm0
1259
+ movdqa %xmm1,%xmm7
1260
+ paddq %xmm1,%xmm1
1261
+ pand %xmm3,%xmm2
1262
+ pcmpgtd %xmm1,%xmm0
1263
+ pxor %xmm2,%xmm1
1264
+ movdqa %xmm5,(%esp)
1265
+ movdqa %xmm6,16(%esp)
1266
+ je .L055xts_enc_four
1267
+ movdqa %xmm7,32(%esp)
1268
+ pshufd $19,%xmm0,%xmm7
1269
+ movdqa %xmm1,48(%esp)
1270
+ paddq %xmm1,%xmm1
1271
+ pand %xmm3,%xmm7
1272
+ pxor %xmm1,%xmm7
1273
+ movdqu (%esi),%xmm2
1274
+ movdqu 16(%esi),%xmm3
1275
+ movdqu 32(%esi),%xmm4
1276
+ pxor (%esp),%xmm2
1277
+ movdqu 48(%esi),%xmm5
1278
+ pxor 16(%esp),%xmm3
1279
+ movdqu 64(%esi),%xmm6
1280
+ pxor 32(%esp),%xmm4
1281
+ leal 80(%esi),%esi
1282
+ pxor 48(%esp),%xmm5
1283
+ movdqa %xmm7,64(%esp)
1284
+ pxor %xmm7,%xmm6
1285
+ call _aesni_encrypt6
1286
+ movaps 64(%esp),%xmm1
1287
+ xorps (%esp),%xmm2
1288
+ xorps 16(%esp),%xmm3
1289
+ xorps 32(%esp),%xmm4
1290
+ movups %xmm2,(%edi)
1291
+ xorps 48(%esp),%xmm5
1292
+ movups %xmm3,16(%edi)
1293
+ xorps %xmm1,%xmm6
1294
+ movups %xmm4,32(%edi)
1295
+ movups %xmm5,48(%edi)
1296
+ movups %xmm6,64(%edi)
1297
+ leal 80(%edi),%edi
1298
+ jmp .L056xts_enc_done
1299
+ .align 16
1300
+ .L052xts_enc_one:
1301
+ movups (%esi),%xmm2
1302
+ leal 16(%esi),%esi
1303
+ xorps %xmm5,%xmm2
1304
+ movups (%edx),%xmm0
1305
+ movups 16(%edx),%xmm1
1306
+ leal 32(%edx),%edx
1307
+ xorps %xmm0,%xmm2
1308
+ .L057enc1_loop_9:
1309
+ aesenc %xmm1,%xmm2
1310
+ decl %ecx
1311
+ movups (%edx),%xmm1
1312
+ leal 16(%edx),%edx
1313
+ jnz .L057enc1_loop_9
1314
+ aesenclast %xmm1,%xmm2
1315
+ xorps %xmm5,%xmm2
1316
+ movups %xmm2,(%edi)
1317
+ leal 16(%edi),%edi
1318
+ movdqa %xmm5,%xmm1
1319
+ jmp .L056xts_enc_done
1320
+ .align 16
1321
+ .L053xts_enc_two:
1322
+ movaps %xmm1,%xmm6
1323
+ movups (%esi),%xmm2
1324
+ movups 16(%esi),%xmm3
1325
+ leal 32(%esi),%esi
1326
+ xorps %xmm5,%xmm2
1327
+ xorps %xmm6,%xmm3
1328
+ call _aesni_encrypt2
1329
+ xorps %xmm5,%xmm2
1330
+ xorps %xmm6,%xmm3
1331
+ movups %xmm2,(%edi)
1332
+ movups %xmm3,16(%edi)
1333
+ leal 32(%edi),%edi
1334
+ movdqa %xmm6,%xmm1
1335
+ jmp .L056xts_enc_done
1336
+ .align 16
1337
+ .L054xts_enc_three:
1338
+ movaps %xmm1,%xmm7
1339
+ movups (%esi),%xmm2
1340
+ movups 16(%esi),%xmm3
1341
+ movups 32(%esi),%xmm4
1342
+ leal 48(%esi),%esi
1343
+ xorps %xmm5,%xmm2
1344
+ xorps %xmm6,%xmm3
1345
+ xorps %xmm7,%xmm4
1346
+ call _aesni_encrypt3
1347
+ xorps %xmm5,%xmm2
1348
+ xorps %xmm6,%xmm3
1349
+ xorps %xmm7,%xmm4
1350
+ movups %xmm2,(%edi)
1351
+ movups %xmm3,16(%edi)
1352
+ movups %xmm4,32(%edi)
1353
+ leal 48(%edi),%edi
1354
+ movdqa %xmm7,%xmm1
1355
+ jmp .L056xts_enc_done
1356
+ .align 16
1357
+ .L055xts_enc_four:
1358
+ movaps %xmm1,%xmm6
1359
+ movups (%esi),%xmm2
1360
+ movups 16(%esi),%xmm3
1361
+ movups 32(%esi),%xmm4
1362
+ xorps (%esp),%xmm2
1363
+ movups 48(%esi),%xmm5
1364
+ leal 64(%esi),%esi
1365
+ xorps 16(%esp),%xmm3
1366
+ xorps %xmm7,%xmm4
1367
+ xorps %xmm6,%xmm5
1368
+ call _aesni_encrypt4
1369
+ xorps (%esp),%xmm2
1370
+ xorps 16(%esp),%xmm3
1371
+ xorps %xmm7,%xmm4
1372
+ movups %xmm2,(%edi)
1373
+ xorps %xmm6,%xmm5
1374
+ movups %xmm3,16(%edi)
1375
+ movups %xmm4,32(%edi)
1376
+ movups %xmm5,48(%edi)
1377
+ leal 64(%edi),%edi
1378
+ movdqa %xmm6,%xmm1
1379
+ jmp .L056xts_enc_done
1380
+ .align 16
1381
+ .L051xts_enc_done6x:
1382
+ movl 112(%esp),%eax
1383
+ andl $15,%eax
1384
+ jz .L058xts_enc_ret
1385
+ movdqa %xmm1,%xmm5
1386
+ movl %eax,112(%esp)
1387
+ jmp .L059xts_enc_steal
1388
+ .align 16
1389
+ .L056xts_enc_done:
1390
+ movl 112(%esp),%eax
1391
+ pxor %xmm0,%xmm0
1392
+ andl $15,%eax
1393
+ jz .L058xts_enc_ret
1394
+ pcmpgtd %xmm1,%xmm0
1395
+ movl %eax,112(%esp)
1396
+ pshufd $19,%xmm0,%xmm5
1397
+ paddq %xmm1,%xmm1
1398
+ pand 96(%esp),%xmm5
1399
+ pxor %xmm1,%xmm5
1400
+ .L059xts_enc_steal:
1401
+ movzbl (%esi),%ecx
1402
+ movzbl -16(%edi),%edx
1403
+ leal 1(%esi),%esi
1404
+ movb %cl,-16(%edi)
1405
+ movb %dl,(%edi)
1406
+ leal 1(%edi),%edi
1407
+ subl $1,%eax
1408
+ jnz .L059xts_enc_steal
1409
+ subl 112(%esp),%edi
1410
+ movl %ebp,%edx
1411
+ movl %ebx,%ecx
1412
+ movups -16(%edi),%xmm2
1413
+ xorps %xmm5,%xmm2
1414
+ movups (%edx),%xmm0
1415
+ movups 16(%edx),%xmm1
1416
+ leal 32(%edx),%edx
1417
+ xorps %xmm0,%xmm2
1418
+ .L060enc1_loop_10:
1419
+ aesenc %xmm1,%xmm2
1420
+ decl %ecx
1421
+ movups (%edx),%xmm1
1422
+ leal 16(%edx),%edx
1423
+ jnz .L060enc1_loop_10
1424
+ aesenclast %xmm1,%xmm2
1425
+ xorps %xmm5,%xmm2
1426
+ movups %xmm2,-16(%edi)
1427
+ .L058xts_enc_ret:
1428
+ pxor %xmm0,%xmm0
1429
+ pxor %xmm1,%xmm1
1430
+ pxor %xmm2,%xmm2
1431
+ movdqa %xmm0,(%esp)
1432
+ pxor %xmm3,%xmm3
1433
+ movdqa %xmm0,16(%esp)
1434
+ pxor %xmm4,%xmm4
1435
+ movdqa %xmm0,32(%esp)
1436
+ pxor %xmm5,%xmm5
1437
+ movdqa %xmm0,48(%esp)
1438
+ pxor %xmm6,%xmm6
1439
+ movdqa %xmm0,64(%esp)
1440
+ pxor %xmm7,%xmm7
1441
+ movdqa %xmm0,80(%esp)
1442
+ movl 116(%esp),%esp
1443
+ popl %edi
1444
+ popl %esi
1445
+ popl %ebx
1446
+ popl %ebp
1447
+ ret
1448
+ .size aes_hw_xts_encrypt,.-.L_aes_hw_xts_encrypt_begin
1449
+ .globl aes_hw_xts_decrypt
1450
+ .hidden aes_hw_xts_decrypt
1451
+ .type aes_hw_xts_decrypt,@function
1452
+ .align 16
1453
+ aes_hw_xts_decrypt:
1454
+ .L_aes_hw_xts_decrypt_begin:
1455
+ pushl %ebp
1456
+ pushl %ebx
1457
+ pushl %esi
1458
+ pushl %edi
1459
+ movl 36(%esp),%edx
1460
+ movl 40(%esp),%esi
1461
+ movl 240(%edx),%ecx
1462
+ movups (%esi),%xmm2
1463
+ movups (%edx),%xmm0
1464
+ movups 16(%edx),%xmm1
1465
+ leal 32(%edx),%edx
1466
+ xorps %xmm0,%xmm2
1467
+ .L061enc1_loop_11:
1468
+ aesenc %xmm1,%xmm2
1469
+ decl %ecx
1470
+ movups (%edx),%xmm1
1471
+ leal 16(%edx),%edx
1472
+ jnz .L061enc1_loop_11
1473
+ aesenclast %xmm1,%xmm2
1474
+ movl 20(%esp),%esi
1475
+ movl 24(%esp),%edi
1476
+ movl 28(%esp),%eax
1477
+ movl 32(%esp),%edx
1478
+ movl %esp,%ebp
1479
+ subl $120,%esp
1480
+ andl $-16,%esp
1481
+ xorl %ebx,%ebx
1482
+ testl $15,%eax
1483
+ setnz %bl
1484
+ shll $4,%ebx
1485
+ subl %ebx,%eax
1486
+ movl $135,96(%esp)
1487
+ movl $0,100(%esp)
1488
+ movl $1,104(%esp)
1489
+ movl $0,108(%esp)
1490
+ movl %eax,112(%esp)
1491
+ movl %ebp,116(%esp)
1492
+ movl 240(%edx),%ecx
1493
+ movl %edx,%ebp
1494
+ movl %ecx,%ebx
1495
+ movdqa %xmm2,%xmm1
1496
+ pxor %xmm0,%xmm0
1497
+ movdqa 96(%esp),%xmm3
1498
+ pcmpgtd %xmm1,%xmm0
1499
+ andl $-16,%eax
1500
+ subl $96,%eax
1501
+ jc .L062xts_dec_short
1502
+ shll $4,%ecx
1503
+ movl $16,%ebx
1504
+ subl %ecx,%ebx
1505
+ leal 32(%edx,%ecx,1),%edx
1506
+ jmp .L063xts_dec_loop6
1507
+ .align 16
1508
+ .L063xts_dec_loop6:
1509
+ pshufd $19,%xmm0,%xmm2
1510
+ pxor %xmm0,%xmm0
1511
+ movdqa %xmm1,(%esp)
1512
+ paddq %xmm1,%xmm1
1513
+ pand %xmm3,%xmm2
1514
+ pcmpgtd %xmm1,%xmm0
1515
+ pxor %xmm2,%xmm1
1516
+ pshufd $19,%xmm0,%xmm2
1517
+ pxor %xmm0,%xmm0
1518
+ movdqa %xmm1,16(%esp)
1519
+ paddq %xmm1,%xmm1
1520
+ pand %xmm3,%xmm2
1521
+ pcmpgtd %xmm1,%xmm0
1522
+ pxor %xmm2,%xmm1
1523
+ pshufd $19,%xmm0,%xmm2
1524
+ pxor %xmm0,%xmm0
1525
+ movdqa %xmm1,32(%esp)
1526
+ paddq %xmm1,%xmm1
1527
+ pand %xmm3,%xmm2
1528
+ pcmpgtd %xmm1,%xmm0
1529
+ pxor %xmm2,%xmm1
1530
+ pshufd $19,%xmm0,%xmm2
1531
+ pxor %xmm0,%xmm0
1532
+ movdqa %xmm1,48(%esp)
1533
+ paddq %xmm1,%xmm1
1534
+ pand %xmm3,%xmm2
1535
+ pcmpgtd %xmm1,%xmm0
1536
+ pxor %xmm2,%xmm1
1537
+ pshufd $19,%xmm0,%xmm7
1538
+ movdqa %xmm1,64(%esp)
1539
+ paddq %xmm1,%xmm1
1540
+ movups (%ebp),%xmm0
1541
+ pand %xmm3,%xmm7
1542
+ movups (%esi),%xmm2
1543
+ pxor %xmm1,%xmm7
1544
+ movl %ebx,%ecx
1545
+ movdqu 16(%esi),%xmm3
1546
+ xorps %xmm0,%xmm2
1547
+ movdqu 32(%esi),%xmm4
1548
+ pxor %xmm0,%xmm3
1549
+ movdqu 48(%esi),%xmm5
1550
+ pxor %xmm0,%xmm4
1551
+ movdqu 64(%esi),%xmm6
1552
+ pxor %xmm0,%xmm5
1553
+ movdqu 80(%esi),%xmm1
1554
+ pxor %xmm0,%xmm6
1555
+ leal 96(%esi),%esi
1556
+ pxor (%esp),%xmm2
1557
+ movdqa %xmm7,80(%esp)
1558
+ pxor %xmm1,%xmm7
1559
+ movups 16(%ebp),%xmm1
1560
+ pxor 16(%esp),%xmm3
1561
+ pxor 32(%esp),%xmm4
1562
+ aesdec %xmm1,%xmm2
1563
+ pxor 48(%esp),%xmm5
1564
+ pxor 64(%esp),%xmm6
1565
+ aesdec %xmm1,%xmm3
1566
+ pxor %xmm0,%xmm7
1567
+ movups 32(%ebp),%xmm0
1568
+ aesdec %xmm1,%xmm4
1569
+ aesdec %xmm1,%xmm5
1570
+ aesdec %xmm1,%xmm6
1571
+ aesdec %xmm1,%xmm7
1572
+ call .L_aesni_decrypt6_enter
1573
+ movdqa 80(%esp),%xmm1
1574
+ pxor %xmm0,%xmm0
1575
+ xorps (%esp),%xmm2
1576
+ pcmpgtd %xmm1,%xmm0
1577
+ xorps 16(%esp),%xmm3
1578
+ movups %xmm2,(%edi)
1579
+ xorps 32(%esp),%xmm4
1580
+ movups %xmm3,16(%edi)
1581
+ xorps 48(%esp),%xmm5
1582
+ movups %xmm4,32(%edi)
1583
+ xorps 64(%esp),%xmm6
1584
+ movups %xmm5,48(%edi)
1585
+ xorps %xmm1,%xmm7
1586
+ movups %xmm6,64(%edi)
1587
+ pshufd $19,%xmm0,%xmm2
1588
+ movups %xmm7,80(%edi)
1589
+ leal 96(%edi),%edi
1590
+ movdqa 96(%esp),%xmm3
1591
+ pxor %xmm0,%xmm0
1592
+ paddq %xmm1,%xmm1
1593
+ pand %xmm3,%xmm2
1594
+ pcmpgtd %xmm1,%xmm0
1595
+ pxor %xmm2,%xmm1
1596
+ subl $96,%eax
1597
+ jnc .L063xts_dec_loop6
1598
+ movl 240(%ebp),%ecx
1599
+ movl %ebp,%edx
1600
+ movl %ecx,%ebx
1601
+ .L062xts_dec_short:
1602
+ addl $96,%eax
1603
+ jz .L064xts_dec_done6x
1604
+ movdqa %xmm1,%xmm5
1605
+ cmpl $32,%eax
1606
+ jb .L065xts_dec_one
1607
+ pshufd $19,%xmm0,%xmm2
1608
+ pxor %xmm0,%xmm0
1609
+ paddq %xmm1,%xmm1
1610
+ pand %xmm3,%xmm2
1611
+ pcmpgtd %xmm1,%xmm0
1612
+ pxor %xmm2,%xmm1
1613
+ je .L066xts_dec_two
1614
+ pshufd $19,%xmm0,%xmm2
1615
+ pxor %xmm0,%xmm0
1616
+ movdqa %xmm1,%xmm6
1617
+ paddq %xmm1,%xmm1
1618
+ pand %xmm3,%xmm2
1619
+ pcmpgtd %xmm1,%xmm0
1620
+ pxor %xmm2,%xmm1
1621
+ cmpl $64,%eax
1622
+ jb .L067xts_dec_three
1623
+ pshufd $19,%xmm0,%xmm2
1624
+ pxor %xmm0,%xmm0
1625
+ movdqa %xmm1,%xmm7
1626
+ paddq %xmm1,%xmm1
1627
+ pand %xmm3,%xmm2
1628
+ pcmpgtd %xmm1,%xmm0
1629
+ pxor %xmm2,%xmm1
1630
+ movdqa %xmm5,(%esp)
1631
+ movdqa %xmm6,16(%esp)
1632
+ je .L068xts_dec_four
1633
+ movdqa %xmm7,32(%esp)
1634
+ pshufd $19,%xmm0,%xmm7
1635
+ movdqa %xmm1,48(%esp)
1636
+ paddq %xmm1,%xmm1
1637
+ pand %xmm3,%xmm7
1638
+ pxor %xmm1,%xmm7
1639
+ movdqu (%esi),%xmm2
1640
+ movdqu 16(%esi),%xmm3
1641
+ movdqu 32(%esi),%xmm4
1642
+ pxor (%esp),%xmm2
1643
+ movdqu 48(%esi),%xmm5
1644
+ pxor 16(%esp),%xmm3
1645
+ movdqu 64(%esi),%xmm6
1646
+ pxor 32(%esp),%xmm4
1647
+ leal 80(%esi),%esi
1648
+ pxor 48(%esp),%xmm5
1649
+ movdqa %xmm7,64(%esp)
1650
+ pxor %xmm7,%xmm6
1651
+ call _aesni_decrypt6
1652
+ movaps 64(%esp),%xmm1
1653
+ xorps (%esp),%xmm2
1654
+ xorps 16(%esp),%xmm3
1655
+ xorps 32(%esp),%xmm4
1656
+ movups %xmm2,(%edi)
1657
+ xorps 48(%esp),%xmm5
1658
+ movups %xmm3,16(%edi)
1659
+ xorps %xmm1,%xmm6
1660
+ movups %xmm4,32(%edi)
1661
+ movups %xmm5,48(%edi)
1662
+ movups %xmm6,64(%edi)
1663
+ leal 80(%edi),%edi
1664
+ jmp .L069xts_dec_done
1665
+ .align 16
1666
+ .L065xts_dec_one:
1667
+ movups (%esi),%xmm2
1668
+ leal 16(%esi),%esi
1669
+ xorps %xmm5,%xmm2
1670
+ movups (%edx),%xmm0
1671
+ movups 16(%edx),%xmm1
1672
+ leal 32(%edx),%edx
1673
+ xorps %xmm0,%xmm2
1674
+ .L070dec1_loop_12:
1675
+ aesdec %xmm1,%xmm2
1676
+ decl %ecx
1677
+ movups (%edx),%xmm1
1678
+ leal 16(%edx),%edx
1679
+ jnz .L070dec1_loop_12
1680
+ aesdeclast %xmm1,%xmm2
1681
+ xorps %xmm5,%xmm2
1682
+ movups %xmm2,(%edi)
1683
+ leal 16(%edi),%edi
1684
+ movdqa %xmm5,%xmm1
1685
+ jmp .L069xts_dec_done
1686
+ .align 16
1687
+ .L066xts_dec_two:
1688
+ movaps %xmm1,%xmm6
1689
+ movups (%esi),%xmm2
1690
+ movups 16(%esi),%xmm3
1691
+ leal 32(%esi),%esi
1692
+ xorps %xmm5,%xmm2
1693
+ xorps %xmm6,%xmm3
1694
+ call _aesni_decrypt2
1695
+ xorps %xmm5,%xmm2
1696
+ xorps %xmm6,%xmm3
1697
+ movups %xmm2,(%edi)
1698
+ movups %xmm3,16(%edi)
1699
+ leal 32(%edi),%edi
1700
+ movdqa %xmm6,%xmm1
1701
+ jmp .L069xts_dec_done
1702
+ .align 16
1703
+ .L067xts_dec_three:
1704
+ movaps %xmm1,%xmm7
1705
+ movups (%esi),%xmm2
1706
+ movups 16(%esi),%xmm3
1707
+ movups 32(%esi),%xmm4
1708
+ leal 48(%esi),%esi
1709
+ xorps %xmm5,%xmm2
1710
+ xorps %xmm6,%xmm3
1711
+ xorps %xmm7,%xmm4
1712
+ call _aesni_decrypt3
1713
+ xorps %xmm5,%xmm2
1714
+ xorps %xmm6,%xmm3
1715
+ xorps %xmm7,%xmm4
1716
+ movups %xmm2,(%edi)
1717
+ movups %xmm3,16(%edi)
1718
+ movups %xmm4,32(%edi)
1719
+ leal 48(%edi),%edi
1720
+ movdqa %xmm7,%xmm1
1721
+ jmp .L069xts_dec_done
1722
+ .align 16
1723
+ .L068xts_dec_four:
1724
+ movaps %xmm1,%xmm6
1725
+ movups (%esi),%xmm2
1726
+ movups 16(%esi),%xmm3
1727
+ movups 32(%esi),%xmm4
1728
+ xorps (%esp),%xmm2
1729
+ movups 48(%esi),%xmm5
1730
+ leal 64(%esi),%esi
1731
+ xorps 16(%esp),%xmm3
1732
+ xorps %xmm7,%xmm4
1733
+ xorps %xmm6,%xmm5
1734
+ call _aesni_decrypt4
1735
+ xorps (%esp),%xmm2
1736
+ xorps 16(%esp),%xmm3
1737
+ xorps %xmm7,%xmm4
1738
+ movups %xmm2,(%edi)
1739
+ xorps %xmm6,%xmm5
1740
+ movups %xmm3,16(%edi)
1741
+ movups %xmm4,32(%edi)
1742
+ movups %xmm5,48(%edi)
1743
+ leal 64(%edi),%edi
1744
+ movdqa %xmm6,%xmm1
1745
+ jmp .L069xts_dec_done
1746
+ .align 16
1747
+ .L064xts_dec_done6x:
1748
+ movl 112(%esp),%eax
1749
+ andl $15,%eax
1750
+ jz .L071xts_dec_ret
1751
+ movl %eax,112(%esp)
1752
+ jmp .L072xts_dec_only_one_more
1753
+ .align 16
1754
+ .L069xts_dec_done:
1755
+ movl 112(%esp),%eax
1756
+ pxor %xmm0,%xmm0
1757
+ andl $15,%eax
1758
+ jz .L071xts_dec_ret
1759
+ pcmpgtd %xmm1,%xmm0
1760
+ movl %eax,112(%esp)
1761
+ pshufd $19,%xmm0,%xmm2
1762
+ pxor %xmm0,%xmm0
1763
+ movdqa 96(%esp),%xmm3
1764
+ paddq %xmm1,%xmm1
1765
+ pand %xmm3,%xmm2
1766
+ pcmpgtd %xmm1,%xmm0
1767
+ pxor %xmm2,%xmm1
1768
+ .L072xts_dec_only_one_more:
1769
+ pshufd $19,%xmm0,%xmm5
1770
+ movdqa %xmm1,%xmm6
1771
+ paddq %xmm1,%xmm1
1772
+ pand %xmm3,%xmm5
1773
+ pxor %xmm1,%xmm5
1774
+ movl %ebp,%edx
1775
+ movl %ebx,%ecx
1776
+ movups (%esi),%xmm2
1777
+ xorps %xmm5,%xmm2
1778
+ movups (%edx),%xmm0
1779
+ movups 16(%edx),%xmm1
1780
+ leal 32(%edx),%edx
1781
+ xorps %xmm0,%xmm2
1782
+ .L073dec1_loop_13:
1783
+ aesdec %xmm1,%xmm2
1784
+ decl %ecx
1785
+ movups (%edx),%xmm1
1786
+ leal 16(%edx),%edx
1787
+ jnz .L073dec1_loop_13
1788
+ aesdeclast %xmm1,%xmm2
1789
+ xorps %xmm5,%xmm2
1790
+ movups %xmm2,(%edi)
1791
+ .L074xts_dec_steal:
1792
+ movzbl 16(%esi),%ecx
1793
+ movzbl (%edi),%edx
1794
+ leal 1(%esi),%esi
1795
+ movb %cl,(%edi)
1796
+ movb %dl,16(%edi)
1797
+ leal 1(%edi),%edi
1798
+ subl $1,%eax
1799
+ jnz .L074xts_dec_steal
1800
+ subl 112(%esp),%edi
1801
+ movl %ebp,%edx
1802
+ movl %ebx,%ecx
1803
+ movups (%edi),%xmm2
1804
+ xorps %xmm6,%xmm2
1805
+ movups (%edx),%xmm0
1806
+ movups 16(%edx),%xmm1
1807
+ leal 32(%edx),%edx
1808
+ xorps %xmm0,%xmm2
1809
+ .L075dec1_loop_14:
1810
+ aesdec %xmm1,%xmm2
1811
+ decl %ecx
1812
+ movups (%edx),%xmm1
1813
+ leal 16(%edx),%edx
1814
+ jnz .L075dec1_loop_14
1815
+ aesdeclast %xmm1,%xmm2
1816
+ xorps %xmm6,%xmm2
1817
+ movups %xmm2,(%edi)
1818
+ .L071xts_dec_ret:
1819
+ pxor %xmm0,%xmm0
1820
+ pxor %xmm1,%xmm1
1821
+ pxor %xmm2,%xmm2
1822
+ movdqa %xmm0,(%esp)
1823
+ pxor %xmm3,%xmm3
1824
+ movdqa %xmm0,16(%esp)
1825
+ pxor %xmm4,%xmm4
1826
+ movdqa %xmm0,32(%esp)
1827
+ pxor %xmm5,%xmm5
1828
+ movdqa %xmm0,48(%esp)
1829
+ pxor %xmm6,%xmm6
1830
+ movdqa %xmm0,64(%esp)
1831
+ pxor %xmm7,%xmm7
1832
+ movdqa %xmm0,80(%esp)
1833
+ movl 116(%esp),%esp
1834
+ popl %edi
1835
+ popl %esi
1836
+ popl %ebx
1837
+ popl %ebp
1838
+ ret
1839
+ .size aes_hw_xts_decrypt,.-.L_aes_hw_xts_decrypt_begin
1840
+ .globl aes_hw_cbc_encrypt
1841
+ .hidden aes_hw_cbc_encrypt
1842
+ .type aes_hw_cbc_encrypt,@function
1843
+ .align 16
1844
+ aes_hw_cbc_encrypt:
1845
+ .L_aes_hw_cbc_encrypt_begin:
1846
+ pushl %ebp
1847
+ pushl %ebx
1848
+ pushl %esi
1849
+ pushl %edi
1850
+ movl 20(%esp),%esi
1851
+ movl %esp,%ebx
1852
+ movl 24(%esp),%edi
1853
+ subl $24,%ebx
1854
+ movl 28(%esp),%eax
1855
+ andl $-16,%ebx
1856
+ movl 32(%esp),%edx
1857
+ movl 36(%esp),%ebp
1858
+ testl %eax,%eax
1859
+ jz .L076cbc_abort
1860
+ cmpl $0,40(%esp)
1861
+ xchgl %esp,%ebx
1862
+ movups (%ebp),%xmm7
1863
+ movl 240(%edx),%ecx
1864
+ movl %edx,%ebp
1865
+ movl %ebx,16(%esp)
1866
+ movl %ecx,%ebx
1867
+ je .L077cbc_decrypt
1868
+ movaps %xmm7,%xmm2
1869
+ cmpl $16,%eax
1870
+ jb .L078cbc_enc_tail
1871
+ subl $16,%eax
1872
+ jmp .L079cbc_enc_loop
1873
+ .align 16
1874
+ .L079cbc_enc_loop:
1875
+ movups (%esi),%xmm7
1876
+ leal 16(%esi),%esi
1877
+ movups (%edx),%xmm0
1878
+ movups 16(%edx),%xmm1
1879
+ xorps %xmm0,%xmm7
1880
+ leal 32(%edx),%edx
1881
+ xorps %xmm7,%xmm2
1882
+ .L080enc1_loop_15:
1883
+ aesenc %xmm1,%xmm2
1884
+ decl %ecx
1885
+ movups (%edx),%xmm1
1886
+ leal 16(%edx),%edx
1887
+ jnz .L080enc1_loop_15
1888
+ aesenclast %xmm1,%xmm2
1889
+ movl %ebx,%ecx
1890
+ movl %ebp,%edx
1891
+ movups %xmm2,(%edi)
1892
+ leal 16(%edi),%edi
1893
+ subl $16,%eax
1894
+ jnc .L079cbc_enc_loop
1895
+ addl $16,%eax
1896
+ jnz .L078cbc_enc_tail
1897
+ movaps %xmm2,%xmm7
1898
+ pxor %xmm2,%xmm2
1899
+ jmp .L081cbc_ret
1900
+ .L078cbc_enc_tail:
1901
+ movl %eax,%ecx
1902
+ .long 2767451785
1903
+ movl $16,%ecx
1904
+ subl %eax,%ecx
1905
+ xorl %eax,%eax
1906
+ .long 2868115081
1907
+ leal -16(%edi),%edi
1908
+ movl %ebx,%ecx
1909
+ movl %edi,%esi
1910
+ movl %ebp,%edx
1911
+ jmp .L079cbc_enc_loop
1912
+ .align 16
1913
+ .L077cbc_decrypt:
1914
+ cmpl $80,%eax
1915
+ jbe .L082cbc_dec_tail
1916
+ movaps %xmm7,(%esp)
1917
+ subl $80,%eax
1918
+ jmp .L083cbc_dec_loop6_enter
1919
+ .align 16
1920
+ .L084cbc_dec_loop6:
1921
+ movaps %xmm0,(%esp)
1922
+ movups %xmm7,(%edi)
1923
+ leal 16(%edi),%edi
1924
+ .L083cbc_dec_loop6_enter:
1925
+ movdqu (%esi),%xmm2
1926
+ movdqu 16(%esi),%xmm3
1927
+ movdqu 32(%esi),%xmm4
1928
+ movdqu 48(%esi),%xmm5
1929
+ movdqu 64(%esi),%xmm6
1930
+ movdqu 80(%esi),%xmm7
1931
+ call _aesni_decrypt6
1932
+ movups (%esi),%xmm1
1933
+ movups 16(%esi),%xmm0
1934
+ xorps (%esp),%xmm2
1935
+ xorps %xmm1,%xmm3
1936
+ movups 32(%esi),%xmm1
1937
+ xorps %xmm0,%xmm4
1938
+ movups 48(%esi),%xmm0
1939
+ xorps %xmm1,%xmm5
1940
+ movups 64(%esi),%xmm1
1941
+ xorps %xmm0,%xmm6
1942
+ movups 80(%esi),%xmm0
1943
+ xorps %xmm1,%xmm7
1944
+ movups %xmm2,(%edi)
1945
+ movups %xmm3,16(%edi)
1946
+ leal 96(%esi),%esi
1947
+ movups %xmm4,32(%edi)
1948
+ movl %ebx,%ecx
1949
+ movups %xmm5,48(%edi)
1950
+ movl %ebp,%edx
1951
+ movups %xmm6,64(%edi)
1952
+ leal 80(%edi),%edi
1953
+ subl $96,%eax
1954
+ ja .L084cbc_dec_loop6
1955
+ movaps %xmm7,%xmm2
1956
+ movaps %xmm0,%xmm7
1957
+ addl $80,%eax
1958
+ jle .L085cbc_dec_clear_tail_collected
1959
+ movups %xmm2,(%edi)
1960
+ leal 16(%edi),%edi
1961
+ .L082cbc_dec_tail:
1962
+ movups (%esi),%xmm2
1963
+ movaps %xmm2,%xmm6
1964
+ cmpl $16,%eax
1965
+ jbe .L086cbc_dec_one
1966
+ movups 16(%esi),%xmm3
1967
+ movaps %xmm3,%xmm5
1968
+ cmpl $32,%eax
1969
+ jbe .L087cbc_dec_two
1970
+ movups 32(%esi),%xmm4
1971
+ cmpl $48,%eax
1972
+ jbe .L088cbc_dec_three
1973
+ movups 48(%esi),%xmm5
1974
+ cmpl $64,%eax
1975
+ jbe .L089cbc_dec_four
1976
+ movups 64(%esi),%xmm6
1977
+ movaps %xmm7,(%esp)
1978
+ movups (%esi),%xmm2
1979
+ xorps %xmm7,%xmm7
1980
+ call _aesni_decrypt6
1981
+ movups (%esi),%xmm1
1982
+ movups 16(%esi),%xmm0
1983
+ xorps (%esp),%xmm2
1984
+ xorps %xmm1,%xmm3
1985
+ movups 32(%esi),%xmm1
1986
+ xorps %xmm0,%xmm4
1987
+ movups 48(%esi),%xmm0
1988
+ xorps %xmm1,%xmm5
1989
+ movups 64(%esi),%xmm7
1990
+ xorps %xmm0,%xmm6
1991
+ movups %xmm2,(%edi)
1992
+ movups %xmm3,16(%edi)
1993
+ pxor %xmm3,%xmm3
1994
+ movups %xmm4,32(%edi)
1995
+ pxor %xmm4,%xmm4
1996
+ movups %xmm5,48(%edi)
1997
+ pxor %xmm5,%xmm5
1998
+ leal 64(%edi),%edi
1999
+ movaps %xmm6,%xmm2
2000
+ pxor %xmm6,%xmm6
2001
+ subl $80,%eax
2002
+ jmp .L090cbc_dec_tail_collected
2003
+ .align 16
2004
+ .L086cbc_dec_one:
2005
+ movups (%edx),%xmm0
2006
+ movups 16(%edx),%xmm1
2007
+ leal 32(%edx),%edx
2008
+ xorps %xmm0,%xmm2
2009
+ .L091dec1_loop_16:
2010
+ aesdec %xmm1,%xmm2
2011
+ decl %ecx
2012
+ movups (%edx),%xmm1
2013
+ leal 16(%edx),%edx
2014
+ jnz .L091dec1_loop_16
2015
+ aesdeclast %xmm1,%xmm2
2016
+ xorps %xmm7,%xmm2
2017
+ movaps %xmm6,%xmm7
2018
+ subl $16,%eax
2019
+ jmp .L090cbc_dec_tail_collected
2020
+ .align 16
2021
+ .L087cbc_dec_two:
2022
+ call _aesni_decrypt2
2023
+ xorps %xmm7,%xmm2
2024
+ xorps %xmm6,%xmm3
2025
+ movups %xmm2,(%edi)
2026
+ movaps %xmm3,%xmm2
2027
+ pxor %xmm3,%xmm3
2028
+ leal 16(%edi),%edi
2029
+ movaps %xmm5,%xmm7
2030
+ subl $32,%eax
2031
+ jmp .L090cbc_dec_tail_collected
2032
+ .align 16
2033
+ .L088cbc_dec_three:
2034
+ call _aesni_decrypt3
2035
+ xorps %xmm7,%xmm2
2036
+ xorps %xmm6,%xmm3
2037
+ xorps %xmm5,%xmm4
2038
+ movups %xmm2,(%edi)
2039
+ movaps %xmm4,%xmm2
2040
+ pxor %xmm4,%xmm4
2041
+ movups %xmm3,16(%edi)
2042
+ pxor %xmm3,%xmm3
2043
+ leal 32(%edi),%edi
2044
+ movups 32(%esi),%xmm7
2045
+ subl $48,%eax
2046
+ jmp .L090cbc_dec_tail_collected
2047
+ .align 16
2048
+ .L089cbc_dec_four:
2049
+ call _aesni_decrypt4
2050
+ movups 16(%esi),%xmm1
2051
+ movups 32(%esi),%xmm0
2052
+ xorps %xmm7,%xmm2
2053
+ movups 48(%esi),%xmm7
2054
+ xorps %xmm6,%xmm3
2055
+ movups %xmm2,(%edi)
2056
+ xorps %xmm1,%xmm4
2057
+ movups %xmm3,16(%edi)
2058
+ pxor %xmm3,%xmm3
2059
+ xorps %xmm0,%xmm5
2060
+ movups %xmm4,32(%edi)
2061
+ pxor %xmm4,%xmm4
2062
+ leal 48(%edi),%edi
2063
+ movaps %xmm5,%xmm2
2064
+ pxor %xmm5,%xmm5
2065
+ subl $64,%eax
2066
+ jmp .L090cbc_dec_tail_collected
2067
+ .align 16
2068
+ .L085cbc_dec_clear_tail_collected:
2069
+ pxor %xmm3,%xmm3
2070
+ pxor %xmm4,%xmm4
2071
+ pxor %xmm5,%xmm5
2072
+ pxor %xmm6,%xmm6
2073
+ .L090cbc_dec_tail_collected:
2074
+ andl $15,%eax
2075
+ jnz .L092cbc_dec_tail_partial
2076
+ movups %xmm2,(%edi)
2077
+ pxor %xmm0,%xmm0
2078
+ jmp .L081cbc_ret
2079
+ .align 16
2080
+ .L092cbc_dec_tail_partial:
2081
+ movaps %xmm2,(%esp)
2082
+ pxor %xmm0,%xmm0
2083
+ movl $16,%ecx
2084
+ movl %esp,%esi
2085
+ subl %eax,%ecx
2086
+ .long 2767451785
2087
+ movdqa %xmm2,(%esp)
2088
+ .L081cbc_ret:
2089
+ movl 16(%esp),%esp
2090
+ movl 36(%esp),%ebp
2091
+ pxor %xmm2,%xmm2
2092
+ pxor %xmm1,%xmm1
2093
+ movups %xmm7,(%ebp)
2094
+ pxor %xmm7,%xmm7
2095
+ .L076cbc_abort:
2096
+ popl %edi
2097
+ popl %esi
2098
+ popl %ebx
2099
+ popl %ebp
2100
+ ret
2101
+ .size aes_hw_cbc_encrypt,.-.L_aes_hw_cbc_encrypt_begin
2102
+ .globl aes_hw_set_encrypt_key_base
2103
+ .hidden aes_hw_set_encrypt_key_base
2104
+ .type aes_hw_set_encrypt_key_base,@function
2105
+ .align 16
2106
+ aes_hw_set_encrypt_key_base:
2107
+ .L_aes_hw_set_encrypt_key_base_begin:
2108
+ #ifdef BORINGSSL_DISPATCH_TEST
2109
+ pushl %ebx
2110
+ pushl %edx
2111
+ call .L093pic_for_function_hit
2112
+ .L093pic_for_function_hit:
2113
+ popl %ebx
2114
+ leal BORINGSSL_function_hit+3-.L093pic_for_function_hit(%ebx),%ebx
2115
+ movl $1,%edx
2116
+ movb %dl,(%ebx)
2117
+ popl %edx
2118
+ popl %ebx
2119
+ #endif
2120
+ movl 4(%esp),%eax
2121
+ movl 8(%esp),%ecx
2122
+ movl 12(%esp),%edx
2123
+ pushl %ebx
2124
+ call .L094pic
2125
+ .L094pic:
2126
+ popl %ebx
2127
+ leal .Lkey_const-.L094pic(%ebx),%ebx
2128
+ movups (%eax),%xmm0
2129
+ xorps %xmm4,%xmm4
2130
+ leal 16(%edx),%edx
2131
+ cmpl $256,%ecx
2132
+ je .L09514rounds
2133
+ cmpl $192,%ecx
2134
+ je .L09612rounds
2135
+ cmpl $128,%ecx
2136
+ jne .L097bad_keybits
2137
+ .align 16
2138
+ .L09810rounds:
2139
+ movl $9,%ecx
2140
+ movups %xmm0,-16(%edx)
2141
+ aeskeygenassist $1,%xmm0,%xmm1
2142
+ call .L099key_128_cold
2143
+ aeskeygenassist $2,%xmm0,%xmm1
2144
+ call .L100key_128
2145
+ aeskeygenassist $4,%xmm0,%xmm1
2146
+ call .L100key_128
2147
+ aeskeygenassist $8,%xmm0,%xmm1
2148
+ call .L100key_128
2149
+ aeskeygenassist $16,%xmm0,%xmm1
2150
+ call .L100key_128
2151
+ aeskeygenassist $32,%xmm0,%xmm1
2152
+ call .L100key_128
2153
+ aeskeygenassist $64,%xmm0,%xmm1
2154
+ call .L100key_128
2155
+ aeskeygenassist $128,%xmm0,%xmm1
2156
+ call .L100key_128
2157
+ aeskeygenassist $27,%xmm0,%xmm1
2158
+ call .L100key_128
2159
+ aeskeygenassist $54,%xmm0,%xmm1
2160
+ call .L100key_128
2161
+ movups %xmm0,(%edx)
2162
+ movl %ecx,80(%edx)
2163
+ jmp .L101good_key
2164
+ .align 16
2165
+ .L100key_128:
2166
+ movups %xmm0,(%edx)
2167
+ leal 16(%edx),%edx
2168
+ .L099key_128_cold:
2169
+ shufps $16,%xmm0,%xmm4
2170
+ xorps %xmm4,%xmm0
2171
+ shufps $140,%xmm0,%xmm4
2172
+ xorps %xmm4,%xmm0
2173
+ shufps $255,%xmm1,%xmm1
2174
+ xorps %xmm1,%xmm0
2175
+ ret
2176
+ .align 16
2177
+ .L09612rounds:
2178
+ movq 16(%eax),%xmm2
2179
+ movl $11,%ecx
2180
+ movups %xmm0,-16(%edx)
2181
+ aeskeygenassist $1,%xmm2,%xmm1
2182
+ call .L102key_192a_cold
2183
+ aeskeygenassist $2,%xmm2,%xmm1
2184
+ call .L103key_192b
2185
+ aeskeygenassist $4,%xmm2,%xmm1
2186
+ call .L104key_192a
2187
+ aeskeygenassist $8,%xmm2,%xmm1
2188
+ call .L103key_192b
2189
+ aeskeygenassist $16,%xmm2,%xmm1
2190
+ call .L104key_192a
2191
+ aeskeygenassist $32,%xmm2,%xmm1
2192
+ call .L103key_192b
2193
+ aeskeygenassist $64,%xmm2,%xmm1
2194
+ call .L104key_192a
2195
+ aeskeygenassist $128,%xmm2,%xmm1
2196
+ call .L103key_192b
2197
+ movups %xmm0,(%edx)
2198
+ movl %ecx,48(%edx)
2199
+ jmp .L101good_key
2200
+ .align 16
2201
+ .L104key_192a:
2202
+ movups %xmm0,(%edx)
2203
+ leal 16(%edx),%edx
2204
+ .align 16
2205
+ .L102key_192a_cold:
2206
+ movaps %xmm2,%xmm5
2207
+ .L105key_192b_warm:
2208
+ shufps $16,%xmm0,%xmm4
2209
+ movdqa %xmm2,%xmm3
2210
+ xorps %xmm4,%xmm0
2211
+ shufps $140,%xmm0,%xmm4
2212
+ pslldq $4,%xmm3
2213
+ xorps %xmm4,%xmm0
2214
+ pshufd $85,%xmm1,%xmm1
2215
+ pxor %xmm3,%xmm2
2216
+ pxor %xmm1,%xmm0
2217
+ pshufd $255,%xmm0,%xmm3
2218
+ pxor %xmm3,%xmm2
2219
+ ret
2220
+ .align 16
2221
+ .L103key_192b:
2222
+ movaps %xmm0,%xmm3
2223
+ shufps $68,%xmm0,%xmm5
2224
+ movups %xmm5,(%edx)
2225
+ shufps $78,%xmm2,%xmm3
2226
+ movups %xmm3,16(%edx)
2227
+ leal 32(%edx),%edx
2228
+ jmp .L105key_192b_warm
2229
+ .align 16
2230
+ .L09514rounds:
2231
+ movups 16(%eax),%xmm2
2232
+ leal 16(%edx),%edx
2233
+ movl $13,%ecx
2234
+ movups %xmm0,-32(%edx)
2235
+ movups %xmm2,-16(%edx)
2236
+ aeskeygenassist $1,%xmm2,%xmm1
2237
+ call .L106key_256a_cold
2238
+ aeskeygenassist $1,%xmm0,%xmm1
2239
+ call .L107key_256b
2240
+ aeskeygenassist $2,%xmm2,%xmm1
2241
+ call .L108key_256a
2242
+ aeskeygenassist $2,%xmm0,%xmm1
2243
+ call .L107key_256b
2244
+ aeskeygenassist $4,%xmm2,%xmm1
2245
+ call .L108key_256a
2246
+ aeskeygenassist $4,%xmm0,%xmm1
2247
+ call .L107key_256b
2248
+ aeskeygenassist $8,%xmm2,%xmm1
2249
+ call .L108key_256a
2250
+ aeskeygenassist $8,%xmm0,%xmm1
2251
+ call .L107key_256b
2252
+ aeskeygenassist $16,%xmm2,%xmm1
2253
+ call .L108key_256a
2254
+ aeskeygenassist $16,%xmm0,%xmm1
2255
+ call .L107key_256b
2256
+ aeskeygenassist $32,%xmm2,%xmm1
2257
+ call .L108key_256a
2258
+ aeskeygenassist $32,%xmm0,%xmm1
2259
+ call .L107key_256b
2260
+ aeskeygenassist $64,%xmm2,%xmm1
2261
+ call .L108key_256a
2262
+ movups %xmm0,(%edx)
2263
+ movl %ecx,16(%edx)
2264
+ xorl %eax,%eax
2265
+ jmp .L101good_key
2266
+ .align 16
2267
+ .L108key_256a:
2268
+ movups %xmm2,(%edx)
2269
+ leal 16(%edx),%edx
2270
+ .L106key_256a_cold:
2271
+ shufps $16,%xmm0,%xmm4
2272
+ xorps %xmm4,%xmm0
2273
+ shufps $140,%xmm0,%xmm4
2274
+ xorps %xmm4,%xmm0
2275
+ shufps $255,%xmm1,%xmm1
2276
+ xorps %xmm1,%xmm0
2277
+ ret
2278
+ .align 16
2279
+ .L107key_256b:
2280
+ movups %xmm0,(%edx)
2281
+ leal 16(%edx),%edx
2282
+ shufps $16,%xmm2,%xmm4
2283
+ xorps %xmm4,%xmm2
2284
+ shufps $140,%xmm2,%xmm4
2285
+ xorps %xmm4,%xmm2
2286
+ shufps $170,%xmm1,%xmm1
2287
+ xorps %xmm1,%xmm2
2288
+ ret
2289
+ .L101good_key:
2290
+ pxor %xmm0,%xmm0
2291
+ pxor %xmm1,%xmm1
2292
+ pxor %xmm2,%xmm2
2293
+ pxor %xmm3,%xmm3
2294
+ pxor %xmm4,%xmm4
2295
+ pxor %xmm5,%xmm5
2296
+ xorl %eax,%eax
2297
+ popl %ebx
2298
+ ret
2299
+ .align 4
2300
+ .L097bad_keybits:
2301
+ pxor %xmm0,%xmm0
2302
+ movl $-2,%eax
2303
+ popl %ebx
2304
+ ret
2305
+ .size aes_hw_set_encrypt_key_base,.-.L_aes_hw_set_encrypt_key_base_begin
2306
+ .globl aes_hw_set_encrypt_key_alt
2307
+ .hidden aes_hw_set_encrypt_key_alt
2308
+ .type aes_hw_set_encrypt_key_alt,@function
2309
+ .align 16
2310
+ aes_hw_set_encrypt_key_alt:
2311
+ .L_aes_hw_set_encrypt_key_alt_begin:
2312
+ #ifdef BORINGSSL_DISPATCH_TEST
2313
+ pushl %ebx
2314
+ pushl %edx
2315
+ call .L109pic_for_function_hit
2316
+ .L109pic_for_function_hit:
2317
+ popl %ebx
2318
+ leal BORINGSSL_function_hit+3-.L109pic_for_function_hit(%ebx),%ebx
2319
+ movl $1,%edx
2320
+ movb %dl,(%ebx)
2321
+ popl %edx
2322
+ popl %ebx
2323
+ #endif
2324
+ movl 4(%esp),%eax
2325
+ movl 8(%esp),%ecx
2326
+ movl 12(%esp),%edx
2327
+ pushl %ebx
2328
+ call .L110pic
2329
+ .L110pic:
2330
+ popl %ebx
2331
+ leal .Lkey_const-.L110pic(%ebx),%ebx
2332
+ movups (%eax),%xmm0
2333
+ xorps %xmm4,%xmm4
2334
+ leal 16(%edx),%edx
2335
+ cmpl $256,%ecx
2336
+ je .L11114rounds_alt
2337
+ cmpl $192,%ecx
2338
+ je .L11212rounds_alt
2339
+ cmpl $128,%ecx
2340
+ jne .L113bad_keybits
2341
+ .align 16
2342
+ .L11410rounds_alt:
2343
+ movdqa (%ebx),%xmm5
2344
+ movl $8,%ecx
2345
+ movdqa 32(%ebx),%xmm4
2346
+ movdqa %xmm0,%xmm2
2347
+ movdqu %xmm0,-16(%edx)
2348
+ .L115loop_key128:
2349
+ pshufb %xmm5,%xmm0
2350
+ aesenclast %xmm4,%xmm0
2351
+ pslld $1,%xmm4
2352
+ leal 16(%edx),%edx
2353
+ movdqa %xmm2,%xmm3
2354
+ pslldq $4,%xmm2
2355
+ pxor %xmm2,%xmm3
2356
+ pslldq $4,%xmm2
2357
+ pxor %xmm2,%xmm3
2358
+ pslldq $4,%xmm2
2359
+ pxor %xmm3,%xmm2
2360
+ pxor %xmm2,%xmm0
2361
+ movdqu %xmm0,-16(%edx)
2362
+ movdqa %xmm0,%xmm2
2363
+ decl %ecx
2364
+ jnz .L115loop_key128
2365
+ movdqa 48(%ebx),%xmm4
2366
+ pshufb %xmm5,%xmm0
2367
+ aesenclast %xmm4,%xmm0
2368
+ pslld $1,%xmm4
2369
+ movdqa %xmm2,%xmm3
2370
+ pslldq $4,%xmm2
2371
+ pxor %xmm2,%xmm3
2372
+ pslldq $4,%xmm2
2373
+ pxor %xmm2,%xmm3
2374
+ pslldq $4,%xmm2
2375
+ pxor %xmm3,%xmm2
2376
+ pxor %xmm2,%xmm0
2377
+ movdqu %xmm0,(%edx)
2378
+ movdqa %xmm0,%xmm2
2379
+ pshufb %xmm5,%xmm0
2380
+ aesenclast %xmm4,%xmm0
2381
+ movdqa %xmm2,%xmm3
2382
+ pslldq $4,%xmm2
2383
+ pxor %xmm2,%xmm3
2384
+ pslldq $4,%xmm2
2385
+ pxor %xmm2,%xmm3
2386
+ pslldq $4,%xmm2
2387
+ pxor %xmm3,%xmm2
2388
+ pxor %xmm2,%xmm0
2389
+ movdqu %xmm0,16(%edx)
2390
+ movl $9,%ecx
2391
+ movl %ecx,96(%edx)
2392
+ jmp .L116good_key
2393
+ .align 16
2394
+ .L11212rounds_alt:
2395
+ movq 16(%eax),%xmm2
2396
+ movdqa 16(%ebx),%xmm5
2397
+ movdqa 32(%ebx),%xmm4
2398
+ movl $8,%ecx
2399
+ movdqu %xmm0,-16(%edx)
2400
+ .L117loop_key192:
2401
+ movq %xmm2,(%edx)
2402
+ movdqa %xmm2,%xmm1
2403
+ pshufb %xmm5,%xmm2
2404
+ aesenclast %xmm4,%xmm2
2405
+ pslld $1,%xmm4
2406
+ leal 24(%edx),%edx
2407
+ movdqa %xmm0,%xmm3
2408
+ pslldq $4,%xmm0
2409
+ pxor %xmm0,%xmm3
2410
+ pslldq $4,%xmm0
2411
+ pxor %xmm0,%xmm3
2412
+ pslldq $4,%xmm0
2413
+ pxor %xmm3,%xmm0
2414
+ pshufd $255,%xmm0,%xmm3
2415
+ pxor %xmm1,%xmm3
2416
+ pslldq $4,%xmm1
2417
+ pxor %xmm1,%xmm3
2418
+ pxor %xmm2,%xmm0
2419
+ pxor %xmm3,%xmm2
2420
+ movdqu %xmm0,-16(%edx)
2421
+ decl %ecx
2422
+ jnz .L117loop_key192
2423
+ movl $11,%ecx
2424
+ movl %ecx,32(%edx)
2425
+ jmp .L116good_key
2426
+ .align 16
2427
+ .L11114rounds_alt:
2428
+ movups 16(%eax),%xmm2
2429
+ leal 16(%edx),%edx
2430
+ movdqa (%ebx),%xmm5
2431
+ movdqa 32(%ebx),%xmm4
2432
+ movl $7,%ecx
2433
+ movdqu %xmm0,-32(%edx)
2434
+ movdqa %xmm2,%xmm1
2435
+ movdqu %xmm2,-16(%edx)
2436
+ .L118loop_key256:
2437
+ pshufb %xmm5,%xmm2
2438
+ aesenclast %xmm4,%xmm2
2439
+ movdqa %xmm0,%xmm3
2440
+ pslldq $4,%xmm0
2441
+ pxor %xmm0,%xmm3
2442
+ pslldq $4,%xmm0
2443
+ pxor %xmm0,%xmm3
2444
+ pslldq $4,%xmm0
2445
+ pxor %xmm3,%xmm0
2446
+ pslld $1,%xmm4
2447
+ pxor %xmm2,%xmm0
2448
+ movdqu %xmm0,(%edx)
2449
+ decl %ecx
2450
+ jz .L119done_key256
2451
+ pshufd $255,%xmm0,%xmm2
2452
+ pxor %xmm3,%xmm3
2453
+ aesenclast %xmm3,%xmm2
2454
+ movdqa %xmm1,%xmm3
2455
+ pslldq $4,%xmm1
2456
+ pxor %xmm1,%xmm3
2457
+ pslldq $4,%xmm1
2458
+ pxor %xmm1,%xmm3
2459
+ pslldq $4,%xmm1
2460
+ pxor %xmm3,%xmm1
2461
+ pxor %xmm1,%xmm2
2462
+ movdqu %xmm2,16(%edx)
2463
+ leal 32(%edx),%edx
2464
+ movdqa %xmm2,%xmm1
2465
+ jmp .L118loop_key256
2466
+ .L119done_key256:
2467
+ movl $13,%ecx
2468
+ movl %ecx,16(%edx)
2469
+ .L116good_key:
2470
+ pxor %xmm0,%xmm0
2471
+ pxor %xmm1,%xmm1
2472
+ pxor %xmm2,%xmm2
2473
+ pxor %xmm3,%xmm3
2474
+ pxor %xmm4,%xmm4
2475
+ pxor %xmm5,%xmm5
2476
+ xorl %eax,%eax
2477
+ popl %ebx
2478
+ ret
2479
+ .align 4
2480
+ .L113bad_keybits:
2481
+ pxor %xmm0,%xmm0
2482
+ movl $-2,%eax
2483
+ popl %ebx
2484
+ ret
2485
+ .size aes_hw_set_encrypt_key_alt,.-.L_aes_hw_set_encrypt_key_alt_begin
2486
+ .globl aes_hw_encrypt_key_to_decrypt_key
2487
+ .hidden aes_hw_encrypt_key_to_decrypt_key
2488
+ .type aes_hw_encrypt_key_to_decrypt_key,@function
2489
+ .align 16
2490
+ aes_hw_encrypt_key_to_decrypt_key:
2491
+ .L_aes_hw_encrypt_key_to_decrypt_key_begin:
2492
+ movl 4(%esp),%edx
2493
+ movl 240(%edx),%ecx
2494
+ shll $4,%ecx
2495
+ leal 16(%edx,%ecx,1),%eax
2496
+ movups (%edx),%xmm0
2497
+ movups (%eax),%xmm1
2498
+ movups %xmm0,(%eax)
2499
+ movups %xmm1,(%edx)
2500
+ leal 16(%edx),%edx
2501
+ leal -16(%eax),%eax
2502
+ .L120dec_key_inverse:
2503
+ movups (%edx),%xmm0
2504
+ movups (%eax),%xmm1
2505
+ aesimc %xmm0,%xmm0
2506
+ aesimc %xmm1,%xmm1
2507
+ leal 16(%edx),%edx
2508
+ leal -16(%eax),%eax
2509
+ movups %xmm0,16(%eax)
2510
+ movups %xmm1,-16(%edx)
2511
+ cmpl %edx,%eax
2512
+ ja .L120dec_key_inverse
2513
+ movups (%edx),%xmm0
2514
+ aesimc %xmm0,%xmm0
2515
+ movups %xmm0,(%edx)
2516
+ pxor %xmm0,%xmm0
2517
+ pxor %xmm1,%xmm1
2518
+ ret
2519
+ .size aes_hw_encrypt_key_to_decrypt_key,.-.L_aes_hw_encrypt_key_to_decrypt_key_begin
2520
+ .align 64
2521
+ .Lkey_const:
2522
+ .long 202313229,202313229,202313229,202313229
2523
+ .long 67569157,67569157,67569157,67569157
2524
+ .long 1,1,1,1
2525
+ .long 27,27,27,27
2526
+ .byte 65,69,83,32,102,111,114,32,73,110,116,101,108,32,65,69
2527
+ .byte 83,45,78,73,44,32,67,82,89,80,84,79,71,65,77,83
2528
+ .byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
2529
+ .byte 115,108,46,111,114,103,62,0
2530
+ #endif // !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86) && defined(__ELF__)