pq_crypto 0.6.1 → 0.6.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 (247) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/SECURITY.md +7 -0
  4. data/ext/pqcrypto/pqcrypto_version.h +1 -1
  5. data/ext/pqcrypto/vendor/.vendored +7 -7
  6. data/ext/pqcrypto/vendor/mldsa-native/README.md +23 -10
  7. data/ext/pqcrypto/vendor/mldsa-native/mldsa/README.md +23 -0
  8. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native.c +114 -58
  9. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native.h +498 -461
  10. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native_asm.S +145 -85
  11. data/ext/pqcrypto/vendor/mldsa-native/mldsa/mldsa_native_config.h +456 -422
  12. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/cbmc.h +47 -25
  13. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/common.h +26 -14
  14. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/ct.h +56 -81
  15. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/debug.h +17 -24
  16. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202.c +33 -40
  17. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202.h +67 -87
  18. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202x4.c +19 -14
  19. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/fips202x4.h +13 -5
  20. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/keccakf1600.c +84 -10
  21. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/keccakf1600.h +10 -5
  22. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/auto.h +6 -0
  23. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/fips202_native_aarch64.h +22 -15
  24. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_aarch64_asm.S +376 -0
  25. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_aarch64_asm.S +204 -0
  26. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_aarch64_asm.S +259 -0
  27. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_aarch64_asm.S +1077 -0
  28. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_aarch64_asm.S +987 -0
  29. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccakf1600_round_constants.c +16 -10
  30. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x1_scalar.h +2 -1
  31. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x1_v84a.h +1 -1
  32. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x2_v84a.h +4 -2
  33. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x4_v8a_scalar.h +2 -2
  34. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h +1 -1
  35. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/api.h +60 -0
  36. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/mve.h +48 -0
  37. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/fips202_native_armv81m.h +18 -1
  38. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.S +658 -582
  39. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.c +5 -100
  40. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/keccakf1600_round_constants.c +26 -25
  41. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/state_extract_bytes_x4_mve.S +334 -0
  42. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/armv81m/src/state_xor_bytes_x4_mve.S +355 -0
  43. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/auto.h +8 -3
  44. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/{xkcp.h → keccak_f1600_x4_avx2.h} +11 -8
  45. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/fips202_native_x86_64.h +44 -0
  46. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/keccak_f1600_x4_avx2_asm.S +454 -0
  47. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/keccakf1600_constants.c +52 -0
  48. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/meta.h +37 -28
  49. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/aarch64_zetas.c +213 -196
  50. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/arith_native_aarch64.h +248 -64
  51. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/intt_aarch64_asm.S +753 -0
  52. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l4_aarch64_asm.S +129 -0
  53. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l5_aarch64_asm.S +145 -0
  54. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l7_aarch64_asm.S +177 -0
  55. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/ntt_aarch64_asm.S +653 -0
  56. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/pointwise_montgomery_aarch64_asm.S +84 -0
  57. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_caddq_aarch64_asm.S +53 -0
  58. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_chknorm_aarch64_asm.S +55 -0
  59. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_decompose_32_aarch64_asm.S +86 -0
  60. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_decompose_88_aarch64_asm.S +86 -0
  61. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_use_hint_32_aarch64_asm.S +103 -0
  62. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_use_hint_88_aarch64_asm.S +111 -0
  63. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_17_aarch64_asm.S +75 -0
  64. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_19_aarch64_asm.S +72 -0
  65. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_table.c +23 -11
  66. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_aarch64_asm.S +189 -0
  67. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta2_aarch64_asm.S +137 -0
  68. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta4_aarch64_asm.S +130 -0
  69. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta_table.c +520 -516
  70. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_table.c +34 -33
  71. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/api.h +202 -242
  72. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/meta.h +25 -17
  73. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/arith_native_x86_64.h +112 -28
  74. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/consts.c +1 -1
  75. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/consts.h +1 -1
  76. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/intt_avx2_asm.S +2311 -0
  77. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/ntt_avx2_asm.S +2383 -0
  78. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/nttunpack_avx2_asm.S +238 -0
  79. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l4_avx2_asm.S +139 -0
  80. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l5_avx2_asm.S +155 -0
  81. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l7_avx2_asm.S +187 -0
  82. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_avx2_asm.S +130 -0
  83. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_caddq_avx2_asm.S +190 -0
  84. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_decompose_32_avx2.c +6 -4
  85. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_decompose_88_avx2.c +6 -4
  86. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_use_hint_32_avx2.c +9 -8
  87. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_use_hint_88_avx2.c +10 -9
  88. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/polyz_unpack_17_avx2.c +8 -5
  89. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/polyz_unpack_19_avx2.c +8 -5
  90. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_eta2_avx2.c +6 -4
  91. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_eta4_avx2.c +6 -4
  92. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/rej_uniform_table.c +130 -129
  93. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/packing.c +109 -180
  94. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/packing.h +169 -150
  95. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly.c +56 -40
  96. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly.h +149 -164
  97. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly_kl.c +52 -57
  98. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/poly_kl.h +132 -167
  99. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec.c +57 -424
  100. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec.h +167 -474
  101. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec_lazy.c +308 -0
  102. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/polyvec_lazy.h +653 -0
  103. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/reduce.h +22 -29
  104. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/rounding.h +37 -43
  105. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sign.c +511 -367
  106. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/sign.h +456 -417
  107. data/ext/pqcrypto/vendor/mlkem-native/README.md +6 -3
  108. data/ext/pqcrypto/vendor/mlkem-native/RELEASE.md +22 -0
  109. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native.c +77 -36
  110. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native.h +135 -146
  111. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native_asm.S +116 -72
  112. data/ext/pqcrypto/vendor/mlkem-native/mlkem/mlkem_native_config.h +351 -415
  113. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/cbmc.h +43 -20
  114. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/common.h +16 -8
  115. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/compress.c +57 -31
  116. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/compress.h +260 -349
  117. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/debug.h +17 -24
  118. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202.c +35 -37
  119. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202.h +43 -57
  120. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202x4.c +14 -15
  121. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/fips202x4.h +5 -4
  122. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/keccakf1600.c +42 -6
  123. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/fips202_native_aarch64.h +31 -20
  124. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/{keccak_f1600_x1_scalar_asm.S → keccak_f1600_x1_scalar_aarch64_asm.S} +10 -10
  125. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/{keccak_f1600_x1_v84a_asm.S → keccak_f1600_x1_v84a_aarch64_asm.S} +10 -10
  126. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/{keccak_f1600_x2_v84a_asm.S → keccak_f1600_x2_v84a_aarch64_asm.S} +10 -10
  127. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/{keccak_f1600_x4_v8a_scalar_hybrid_asm.S → keccak_f1600_x4_v8a_scalar_hybrid_aarch64_asm.S} +10 -10
  128. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/{keccak_f1600_x4_v8a_v84a_scalar_hybrid_asm.S → keccak_f1600_x4_v8a_v84a_scalar_hybrid_aarch64_asm.S} +10 -10
  129. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/src/keccakf1600_round_constants.c +10 -9
  130. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x1_scalar.h +2 -1
  131. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x1_v84a.h +1 -1
  132. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x2_v84a.h +4 -2
  133. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x4_v8a_scalar.h +2 -2
  134. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/aarch64/x4_v8a_v84a_scalar.h +1 -1
  135. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/fips202_native_armv81m.h +2 -1
  136. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/keccak_f1600_x4_mve.S +55 -9
  137. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/keccakf1600_round_constants.c +26 -25
  138. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/state_extract_bytes_x4_mve.S +58 -14
  139. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/armv81m/src/state_xor_bytes_x4_mve.S +57 -16
  140. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/auto.h +2 -1
  141. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/keccak_f1600_x4_avx2.h +2 -2
  142. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/src/fips202_native_x86_64.h +10 -7
  143. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/src/{keccak_f1600_x4_avx2.S → keccak_f1600_x4_avx2_asm.S} +13 -11
  144. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/fips202/native/x86_64/src/keccakf1600_constants.c +12 -11
  145. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/indcpa.c +167 -136
  146. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/indcpa.h +75 -68
  147. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/kem.h +135 -157
  148. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/meta.h +15 -13
  149. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/aarch64_zetas.c +143 -135
  150. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/arith_native_aarch64.h +52 -46
  151. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{intt.S → intt_aarch64_asm.S} +10 -10
  152. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{ntt.S → ntt_aarch64_asm.S} +10 -10
  153. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_mulcache_compute_asm.S → poly_mulcache_compute_aarch64_asm.S} +10 -10
  154. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_reduce_asm.S → poly_reduce_aarch64_asm.S} +10 -10
  155. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_tobytes_asm.S → poly_tobytes_aarch64_asm.S} +10 -10
  156. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{poly_tomont_asm.S → poly_tomont_aarch64_asm.S} +10 -12
  157. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{polyvec_basemul_acc_montgomery_cached_asm_k2.S → polyvec_basemul_acc_montgomery_cached_k2_aarch64_asm.S} +10 -10
  158. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{polyvec_basemul_acc_montgomery_cached_asm_k3.S → polyvec_basemul_acc_montgomery_cached_k3_aarch64_asm.S} +10 -10
  159. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{polyvec_basemul_acc_montgomery_cached_asm_k4.S → polyvec_basemul_acc_montgomery_cached_k4_aarch64_asm.S} +10 -10
  160. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/{rej_uniform_asm.S → rej_uniform_aarch64_asm.S} +12 -12
  161. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/aarch64/src/rej_uniform_table.c +514 -513
  162. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/api.h +254 -253
  163. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/meta.h +6 -1
  164. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/README.md +6 -0
  165. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/meta.h +77 -0
  166. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/arith_native_ppc64le.h +24 -0
  167. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/consts.c +299 -0
  168. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/consts.h +34 -0
  169. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/intt_ppc_asm.S +3222 -0
  170. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/ntt_ppc_asm.S +1651 -0
  171. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/poly_tomont_ppc_asm.S +294 -0
  172. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/ppc64le/src/reduce_ppc_asm.S +710 -0
  173. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/meta.h +5 -0
  174. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_debug.c +18 -16
  175. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_debug.h +19 -24
  176. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/riscv64/src/rv64v_poly.c +53 -65
  177. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/meta.h +20 -20
  178. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/arith_native_x86_64.h +106 -88
  179. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/compress_consts.c +45 -35
  180. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/compress_consts.h +8 -8
  181. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/consts.c +1 -1
  182. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/consts.h +1 -1
  183. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{intt.S → intt_avx2_asm.S} +8 -8
  184. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{ntt.S → ntt_avx2_asm.S} +8 -8
  185. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{nttfrombytes.S → nttfrombytes_avx2_asm.S} +8 -8
  186. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{ntttobytes.S → ntttobytes_avx2_asm.S} +8 -8
  187. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{nttunpack.S → nttunpack_avx2_asm.S} +8 -8
  188. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d10.S → poly_compress_d10_avx2_asm.S} +9 -9
  189. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d11.S → poly_compress_d11_avx2_asm.S} +9 -9
  190. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d4.S → poly_compress_d4_avx2_asm.S} +9 -9
  191. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_compress_d5.S → poly_compress_d5_avx2_asm.S} +9 -9
  192. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d10.S → poly_decompress_d10_avx2_asm.S} +9 -9
  193. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d11.S → poly_decompress_d11_avx2_asm.S} +9 -9
  194. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d4.S → poly_decompress_d4_avx2_asm.S} +9 -9
  195. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{poly_decompress_d5.S → poly_decompress_d5_avx2_asm.S} +9 -9
  196. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{mulcache_compute.S → poly_mulcache_compute_avx2_asm.S} +8 -8
  197. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{polyvec_basemul_acc_montgomery_cached_asm_k2.S → polyvec_basemul_acc_montgomery_cached_k2_avx2_asm.S} +8 -8
  198. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{polyvec_basemul_acc_montgomery_cached_asm_k3.S → polyvec_basemul_acc_montgomery_cached_k3_avx2_asm.S} +8 -8
  199. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{polyvec_basemul_acc_montgomery_cached_asm_k4.S → polyvec_basemul_acc_montgomery_cached_k4_avx2_asm.S} +8 -8
  200. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{reduce.S → reduce_avx2_asm.S} +8 -8
  201. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{rej_uniform_asm.S → rej_uniform_avx2_asm.S} +9 -9
  202. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/rej_uniform_table.c +514 -513
  203. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/native/x86_64/src/{tomont.S → tomont_avx2_asm.S} +8 -8
  204. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly.c +61 -57
  205. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly.h +89 -116
  206. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly_k.c +31 -32
  207. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/poly_k.h +226 -301
  208. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/randombytes.h +21 -29
  209. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sampling.c +68 -63
  210. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sampling.h +37 -48
  211. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/sys.h +44 -2
  212. data/ext/pqcrypto/vendor/mlkem-native/mlkem/src/verify.h +141 -159
  213. data/lib/pq_crypto/version.rb +1 -1
  214. data/script/vendor_libs.rb +6 -6
  215. metadata +86 -71
  216. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_asm.S +0 -376
  217. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_asm.S +0 -204
  218. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_asm.S +0 -259
  219. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_asm.S +0 -1077
  220. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_asm.S +0 -987
  221. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/KeccakP_1600_times4_SIMD256.c +0 -488
  222. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/fips202/native/x86_64/src/KeccakP_1600_times4_SIMD256.h +0 -16
  223. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/intt.S +0 -753
  224. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l4.S +0 -129
  225. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l5.S +0 -145
  226. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/mld_polyvecl_pointwise_acc_montgomery_l7.S +0 -177
  227. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/ntt.S +0 -653
  228. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/pointwise_montgomery.S +0 -79
  229. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_caddq_asm.S +0 -53
  230. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_chknorm_asm.S +0 -55
  231. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_decompose_32_asm.S +0 -85
  232. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_decompose_88_asm.S +0 -85
  233. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_use_hint_32_asm.S +0 -102
  234. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/poly_use_hint_88_asm.S +0 -110
  235. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_17_asm.S +0 -72
  236. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/polyz_unpack_19_asm.S +0 -69
  237. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_asm.S +0 -189
  238. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta2_asm.S +0 -135
  239. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/aarch64/src/rej_uniform_eta4_asm.S +0 -128
  240. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/intt.S +0 -2311
  241. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/ntt.S +0 -2383
  242. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/nttunpack.S +0 -239
  243. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise.S +0 -131
  244. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l4.S +0 -139
  245. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l5.S +0 -155
  246. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/pointwise_acc_l7.S +0 -187
  247. data/ext/pqcrypto/vendor/mldsa-native/mldsa/src/native/x86_64/src/poly_caddq_avx2.c +0 -61
@@ -60,53 +60,59 @@
60
60
 
61
61
  #if defined(MLK_CONFIG_USE_NATIVE_BACKEND_ARITH)
62
62
  #if defined(MLK_SYS_AARCH64)
63
- #include "src/native/aarch64/src/intt.S"
64
- #include "src/native/aarch64/src/ntt.S"
65
- #include "src/native/aarch64/src/poly_mulcache_compute_asm.S"
66
- #include "src/native/aarch64/src/poly_reduce_asm.S"
67
- #include "src/native/aarch64/src/poly_tobytes_asm.S"
68
- #include "src/native/aarch64/src/poly_tomont_asm.S"
69
- #include "src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_asm_k2.S"
70
- #include "src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_asm_k3.S"
71
- #include "src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_asm_k4.S"
72
- #include "src/native/aarch64/src/rej_uniform_asm.S"
63
+ #include "src/native/aarch64/src/intt_aarch64_asm.S"
64
+ #include "src/native/aarch64/src/ntt_aarch64_asm.S"
65
+ #include "src/native/aarch64/src/poly_mulcache_compute_aarch64_asm.S"
66
+ #include "src/native/aarch64/src/poly_reduce_aarch64_asm.S"
67
+ #include "src/native/aarch64/src/poly_tobytes_aarch64_asm.S"
68
+ #include "src/native/aarch64/src/poly_tomont_aarch64_asm.S"
69
+ #include "src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_k2_aarch64_asm.S"
70
+ #include "src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_k3_aarch64_asm.S"
71
+ #include "src/native/aarch64/src/polyvec_basemul_acc_montgomery_cached_k4_aarch64_asm.S"
72
+ #include "src/native/aarch64/src/rej_uniform_aarch64_asm.S"
73
73
  #endif /* MLK_SYS_AARCH64 */
74
74
  #if defined(MLK_SYS_X86_64)
75
- #include "src/native/x86_64/src/intt.S"
76
- #include "src/native/x86_64/src/mulcache_compute.S"
77
- #include "src/native/x86_64/src/ntt.S"
78
- #include "src/native/x86_64/src/nttfrombytes.S"
79
- #include "src/native/x86_64/src/ntttobytes.S"
80
- #include "src/native/x86_64/src/nttunpack.S"
81
- #include "src/native/x86_64/src/poly_compress_d10.S"
82
- #include "src/native/x86_64/src/poly_compress_d11.S"
83
- #include "src/native/x86_64/src/poly_compress_d4.S"
84
- #include "src/native/x86_64/src/poly_compress_d5.S"
85
- #include "src/native/x86_64/src/poly_decompress_d10.S"
86
- #include "src/native/x86_64/src/poly_decompress_d11.S"
87
- #include "src/native/x86_64/src/poly_decompress_d4.S"
88
- #include "src/native/x86_64/src/poly_decompress_d5.S"
89
- #include "src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_asm_k2.S"
90
- #include "src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_asm_k3.S"
91
- #include "src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_asm_k4.S"
92
- #include "src/native/x86_64/src/reduce.S"
93
- #include "src/native/x86_64/src/rej_uniform_asm.S"
94
- #include "src/native/x86_64/src/tomont.S"
75
+ #include "src/native/x86_64/src/intt_avx2_asm.S"
76
+ #include "src/native/x86_64/src/ntt_avx2_asm.S"
77
+ #include "src/native/x86_64/src/nttfrombytes_avx2_asm.S"
78
+ #include "src/native/x86_64/src/ntttobytes_avx2_asm.S"
79
+ #include "src/native/x86_64/src/nttunpack_avx2_asm.S"
80
+ #include "src/native/x86_64/src/poly_compress_d10_avx2_asm.S"
81
+ #include "src/native/x86_64/src/poly_compress_d11_avx2_asm.S"
82
+ #include "src/native/x86_64/src/poly_compress_d4_avx2_asm.S"
83
+ #include "src/native/x86_64/src/poly_compress_d5_avx2_asm.S"
84
+ #include "src/native/x86_64/src/poly_decompress_d10_avx2_asm.S"
85
+ #include "src/native/x86_64/src/poly_decompress_d11_avx2_asm.S"
86
+ #include "src/native/x86_64/src/poly_decompress_d4_avx2_asm.S"
87
+ #include "src/native/x86_64/src/poly_decompress_d5_avx2_asm.S"
88
+ #include "src/native/x86_64/src/poly_mulcache_compute_avx2_asm.S"
89
+ #include "src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_k2_avx2_asm.S"
90
+ #include "src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_k3_avx2_asm.S"
91
+ #include "src/native/x86_64/src/polyvec_basemul_acc_montgomery_cached_k4_avx2_asm.S"
92
+ #include "src/native/x86_64/src/reduce_avx2_asm.S"
93
+ #include "src/native/x86_64/src/rej_uniform_avx2_asm.S"
94
+ #include "src/native/x86_64/src/tomont_avx2_asm.S"
95
95
  #endif /* MLK_SYS_X86_64 */
96
96
  #if defined(MLK_SYS_RISCV64)
97
97
  #endif
98
+ #if defined(MLK_SYS_PPC64LE)
99
+ #include "src/native/ppc64le/src/intt_ppc_asm.S"
100
+ #include "src/native/ppc64le/src/ntt_ppc_asm.S"
101
+ #include "src/native/ppc64le/src/poly_tomont_ppc_asm.S"
102
+ #include "src/native/ppc64le/src/reduce_ppc_asm.S"
103
+ #endif /* MLK_SYS_PPC64LE */
98
104
  #endif /* MLK_CONFIG_USE_NATIVE_BACKEND_ARITH */
99
105
 
100
106
  #if defined(MLK_CONFIG_USE_NATIVE_BACKEND_FIPS202)
101
107
  #if defined(MLK_SYS_AARCH64)
102
- #include "src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_asm.S"
103
- #include "src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_asm.S"
104
- #include "src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_asm.S"
105
- #include "src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_asm.S"
106
- #include "src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_asm.S"
108
+ #include "src/fips202/native/aarch64/src/keccak_f1600_x1_scalar_aarch64_asm.S"
109
+ #include "src/fips202/native/aarch64/src/keccak_f1600_x1_v84a_aarch64_asm.S"
110
+ #include "src/fips202/native/aarch64/src/keccak_f1600_x2_v84a_aarch64_asm.S"
111
+ #include "src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_scalar_hybrid_aarch64_asm.S"
112
+ #include "src/fips202/native/aarch64/src/keccak_f1600_x4_v8a_v84a_scalar_hybrid_aarch64_asm.S"
107
113
  #endif /* MLK_SYS_AARCH64 */
108
114
  #if defined(MLK_SYS_X86_64)
109
- #include "src/fips202/native/x86_64/src/keccak_f1600_x4_avx2.S"
115
+ #include "src/fips202/native/x86_64/src/keccak_f1600_x4_avx2_asm.S"
110
116
  #endif
111
117
  #if defined(MLK_SYS_ARMV81M_MVE)
112
118
  #include "src/fips202/native/armv81m/src/keccak_f1600_x4_mve.S"
@@ -234,6 +240,8 @@
234
240
  #undef MLK_FIPS202_HEADER_FILE
235
241
  #undef MLK_FREE
236
242
  #undef MLK_INTERNAL_API
243
+ #undef MLK_INTERNAL_DATA_DECLARATION
244
+ #undef MLK_INTERNAL_DATA_DEFINITION
237
245
  #undef MLK_NAMESPACE
238
246
  #undef MLK_NAMESPACE_K
239
247
  #undef MLK_NAMESPACE_PREFIX
@@ -386,8 +394,11 @@
386
394
  #undef MLK_HAVE_INLINE_ASM
387
395
  #undef MLK_INLINE
388
396
  #undef MLK_MUST_CHECK_RETURN_VALUE
397
+ #undef MLK_NOINLINE
389
398
  #undef MLK_RESTRICT
390
399
  #undef MLK_STATIC_TESTABLE
400
+ #undef MLK_SYSV_ABI
401
+ #undef MLK_SYSV_ABI_SUPPORTED
391
402
  #undef MLK_SYS_AARCH64
392
403
  #undef MLK_SYS_AARCH64_EB
393
404
  #undef MLK_SYS_APPLE
@@ -467,11 +478,11 @@
467
478
  #undef MLK_FIPS202_NATIVE_AARCH64_AUTO_H
468
479
  /* mlkem/src/fips202/native/aarch64/src/fips202_native_aarch64.h */
469
480
  #undef MLK_FIPS202_NATIVE_AARCH64_SRC_FIPS202_NATIVE_AARCH64_H
470
- #undef mlk_keccak_f1600_x1_scalar_asm
471
- #undef mlk_keccak_f1600_x1_v84a_asm
472
- #undef mlk_keccak_f1600_x2_v84a_asm
473
- #undef mlk_keccak_f1600_x4_v8a_scalar_hybrid_asm
474
- #undef mlk_keccak_f1600_x4_v8a_v84a_scalar_hybrid_asm
481
+ #undef mlk_keccak_f1600_x1_scalar_aarch64_asm
482
+ #undef mlk_keccak_f1600_x1_v84a_aarch64_asm
483
+ #undef mlk_keccak_f1600_x2_v84a_aarch64_asm
484
+ #undef mlk_keccak_f1600_x4_v8a_scalar_hybrid_aarch64_asm
485
+ #undef mlk_keccak_f1600_x4_v8a_v84a_scalar_hybrid_aarch64_asm
475
486
  #undef mlk_keccakf1600_round_constants
476
487
  /* mlkem/src/fips202/native/aarch64/x1_scalar.h */
477
488
  #undef MLK_FIPS202_AARCH64_NEED_X1_SCALAR
@@ -504,7 +515,7 @@
504
515
  #undef MLK_USE_FIPS202_X4_NATIVE
505
516
  /* mlkem/src/fips202/native/x86_64/src/fips202_native_x86_64.h */
506
517
  #undef MLK_FIPS202_NATIVE_X86_64_SRC_FIPS202_NATIVE_X86_64_H
507
- #undef mlk_keccak_f1600_x4_avx2
518
+ #undef mlk_keccak_f1600_x4_avx2_asm
508
519
  #undef mlk_keccak_rho56
509
520
  #undef mlk_keccak_rho8
510
521
  #undef mlk_keccakf1600_round_constants
@@ -563,16 +574,16 @@
563
574
  #undef mlk_aarch64_ntt_zetas_layer67
564
575
  #undef mlk_aarch64_zetas_mulcache_native
565
576
  #undef mlk_aarch64_zetas_mulcache_twisted_native
566
- #undef mlk_intt_asm
567
- #undef mlk_ntt_asm
568
- #undef mlk_poly_mulcache_compute_asm
569
- #undef mlk_poly_reduce_asm
570
- #undef mlk_poly_tobytes_asm
571
- #undef mlk_poly_tomont_asm
572
- #undef mlk_polyvec_basemul_acc_montgomery_cached_asm_k2
573
- #undef mlk_polyvec_basemul_acc_montgomery_cached_asm_k3
574
- #undef mlk_polyvec_basemul_acc_montgomery_cached_asm_k4
575
- #undef mlk_rej_uniform_asm
577
+ #undef mlk_intt_aarch64_asm
578
+ #undef mlk_ntt_aarch64_asm
579
+ #undef mlk_poly_mulcache_compute_aarch64_asm
580
+ #undef mlk_poly_reduce_aarch64_asm
581
+ #undef mlk_poly_tobytes_aarch64_asm
582
+ #undef mlk_poly_tomont_aarch64_asm
583
+ #undef mlk_polyvec_basemul_acc_montgomery_cached_k2_aarch64_asm
584
+ #undef mlk_polyvec_basemul_acc_montgomery_cached_k3_aarch64_asm
585
+ #undef mlk_polyvec_basemul_acc_montgomery_cached_k4_aarch64_asm
586
+ #undef mlk_rej_uniform_aarch64_asm
576
587
  #undef mlk_rej_uniform_table
577
588
  #endif /* MLK_SYS_AARCH64 */
578
589
  #if defined(MLK_SYS_X86_64)
@@ -603,27 +614,27 @@
603
614
  /* mlkem/src/native/x86_64/src/arith_native_x86_64.h */
604
615
  #undef MLK_AVX2_REJ_UNIFORM_BUFLEN
605
616
  #undef MLK_NATIVE_X86_64_SRC_ARITH_NATIVE_X86_64_H
606
- #undef mlk_invntt_avx2
607
- #undef mlk_ntt_avx2
608
- #undef mlk_nttfrombytes_avx2
609
- #undef mlk_ntttobytes_avx2
610
- #undef mlk_nttunpack_avx2
611
- #undef mlk_poly_compress_d10_avx2
612
- #undef mlk_poly_compress_d11_avx2
613
- #undef mlk_poly_compress_d4_avx2
614
- #undef mlk_poly_compress_d5_avx2
615
- #undef mlk_poly_decompress_d10_avx2
616
- #undef mlk_poly_decompress_d11_avx2
617
- #undef mlk_poly_decompress_d4_avx2
618
- #undef mlk_poly_decompress_d5_avx2
619
- #undef mlk_poly_mulcache_compute_avx2
620
- #undef mlk_polyvec_basemul_acc_montgomery_cached_asm_k2
621
- #undef mlk_polyvec_basemul_acc_montgomery_cached_asm_k3
622
- #undef mlk_polyvec_basemul_acc_montgomery_cached_asm_k4
623
- #undef mlk_reduce_avx2
624
- #undef mlk_rej_uniform_asm
617
+ #undef mlk_invntt_avx2_asm
618
+ #undef mlk_ntt_avx2_asm
619
+ #undef mlk_nttfrombytes_avx2_asm
620
+ #undef mlk_ntttobytes_avx2_asm
621
+ #undef mlk_nttunpack_avx2_asm
622
+ #undef mlk_poly_compress_d10_avx2_asm
623
+ #undef mlk_poly_compress_d11_avx2_asm
624
+ #undef mlk_poly_compress_d4_avx2_asm
625
+ #undef mlk_poly_compress_d5_avx2_asm
626
+ #undef mlk_poly_decompress_d10_avx2_asm
627
+ #undef mlk_poly_decompress_d11_avx2_asm
628
+ #undef mlk_poly_decompress_d4_avx2_asm
629
+ #undef mlk_poly_decompress_d5_avx2_asm
630
+ #undef mlk_poly_mulcache_compute_avx2_asm
631
+ #undef mlk_polyvec_basemul_acc_montgomery_cached_k2_avx2_asm
632
+ #undef mlk_polyvec_basemul_acc_montgomery_cached_k3_avx2_asm
633
+ #undef mlk_polyvec_basemul_acc_montgomery_cached_k4_avx2_asm
634
+ #undef mlk_reduce_avx2_asm
635
+ #undef mlk_rej_uniform_avx2_asm
625
636
  #undef mlk_rej_uniform_table
626
- #undef mlk_tomont_avx2
637
+ #undef mlk_tomont_avx2_asm
627
638
  /* mlkem/src/native/x86_64/src/compress_consts.h */
628
639
  #undef MLK_NATIVE_X86_64_SRC_COMPRESS_CONSTS_H
629
640
  #undef mlk_compress_d10_data
@@ -677,5 +688,38 @@
677
688
  #undef mlk_debug_check_bounds_int16m1
678
689
  #undef mlk_debug_check_bounds_int16m2
679
690
  #endif /* MLK_SYS_RISCV64 */
691
+ #if defined(MLK_SYS_PPC64LE)
692
+ /*
693
+ * Undefine macros from native code (Arith, PPC64LE)
694
+ */
695
+ /* mlkem/src/native/ppc64le/meta.h */
696
+ #undef MLK_ARITH_BACKEND_NAME
697
+ #undef MLK_ARITH_BACKEND_PPC64LE_DEFAULT
698
+ #undef MLK_NATIVE_PPC64LE_META_H
699
+ #undef MLK_USE_NATIVE_INTT
700
+ #undef MLK_USE_NATIVE_NTT
701
+ #undef MLK_USE_NATIVE_POLY_REDUCE
702
+ #undef MLK_USE_NATIVE_POLY_TOMONT
703
+ /* mlkem/src/native/ppc64le/src/arith_native_ppc64le.h */
704
+ #undef MLK_NATIVE_PPC64LE_SRC_ARITH_NATIVE_PPC64LE_H
705
+ #undef mlk_intt_ppc_asm
706
+ #undef mlk_ntt_ppc_asm
707
+ #undef mlk_poly_tomont_ppc_asm
708
+ #undef mlk_reduce_ppc_asm
709
+ /* mlkem/src/native/ppc64le/src/consts.h */
710
+ #undef MLK_NATIVE_PPC64LE_SRC_CONSTS_H
711
+ #undef MLK_PPC_C20159_OFFSET
712
+ #undef MLK_PPC_NQ_OFFSET
713
+ #undef MLK_PPC_N_INV_OFFSET
714
+ #undef MLK_PPC_N_INV_TW_OFFSET
715
+ #undef MLK_PPC_Q_OFFSET
716
+ #undef MLK_PPC_TOMONT_OFFSET
717
+ #undef MLK_PPC_TOMONT_TW_OFFSET
718
+ #undef MLK_PPC_ZETA_INTT_OFFSET
719
+ #undef MLK_PPC_ZETA_INTT_TW_OFFSET
720
+ #undef MLK_PPC_ZETA_NTT_OFFSET
721
+ #undef MLK_PPC_ZETA_NTT_TW_OFFSET
722
+ #undef mlk_ppc_qdata
723
+ #endif /* MLK_SYS_PPC64LE */
680
724
  #endif /* MLK_CONFIG_USE_NATIVE_BACKEND_ARITH */
681
725
  #endif /* !MLK_CONFIG_MONOBUILD_KEEP_SHARED_HEADERS */