1pub const JADE_HASH_SHA256_AMD64_REF_BYTES: u32 = 32;
4pub const JADE_HASH_SHA256_AMD64_REF_ALGNAME: &[u8; 7] = b"SHA256\0";
5pub const JADE_SCALARMULT_CURVE25519_AMD64_REF5_BYTES: u32 = 32;
6pub const JADE_SCALARMULT_CURVE25519_AMD64_REF5_SCALARBYTES: u32 = 32;
7pub const JADE_SCALARMULT_CURVE25519_AMD64_REF5_ALGNAME: &[u8; 11] = b"Curve25519\0";
8pub const JADE_SCALARMULT_CURVE25519_AMD64_MULX_BYTES: u32 = 32;
9pub const JADE_SCALARMULT_CURVE25519_AMD64_MULX_SCALARBYTES: u32 = 32;
10pub const JADE_SCALARMULT_CURVE25519_AMD64_MULX_ALGNAME: &[u8; 11] = b"Curve25519\0";
11pub const JADE_HASH_SHA3_224_AMD64_REF_BYTES: u32 = 28;
12pub const JADE_HASH_SHA3_224_AMD64_REF_ALGNAME: &[u8; 9] = b"SHA3-224\0";
13pub const JADE_HASH_SHA3_256_AMD64_REF_BYTES: u32 = 32;
14pub const JADE_HASH_SHA3_256_AMD64_REF_ALGNAME: &[u8; 9] = b"SHA3-256\0";
15pub const JADE_HASH_SHA3_384_AMD64_REF_BYTES: u32 = 48;
16pub const JADE_HASH_SHA3_384_AMD64_REF_ALGNAME: &[u8; 9] = b"SHA3-384\0";
17pub const JADE_HASH_SHA3_512_AMD64_REF_BYTES: u32 = 64;
18pub const JADE_HASH_SHA3_512_AMD64_REF_ALGNAME: &[u8; 9] = b"SHA3-512\0";
19pub const JADE_ONETIMEAUTH_POLY1305_AMD64_REF_BYTES: u32 = 16;
20pub const JADE_ONETIMEAUTH_POLY1305_AMD64_REF_KEYBYTES: u32 = 32;
21pub const JADE_ONETIMEAUTH_POLY1305_AMD64_REF_ALGNAME: &[u8; 9] = b"Poly1305\0";
22pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_REF_KEYBYTES: u32 = 32;
23pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_REF_NONCEBYTES: u32 = 12;
24pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_REF_ALGNAME: &[u8; 14] = b"ChaCha20-ietf\0";
25pub const JADE_KEM_KYBER_KYBER768_AMD64_REF_SECRETKEYBYTES: u32 = 2400;
26pub const JADE_KEM_KYBER_KYBER768_AMD64_REF_PUBLICKEYBYTES: u32 = 1184;
27pub const JADE_KEM_KYBER_KYBER768_AMD64_REF_CIPHERTEXTBYTES: u32 = 1088;
28pub const JADE_KEM_KYBER_KYBER768_AMD64_REF_KEYPAIRCOINBYTES: u32 = 64;
29pub const JADE_KEM_KYBER_KYBER768_AMD64_REF_ENCCOINBYTES: u32 = 32;
30pub const JADE_KEM_KYBER_KYBER768_AMD64_REF_BYTES: u32 = 32;
31pub const JADE_KEM_KYBER_KYBER768_AMD64_REF_ALGNAME: &[u8; 9] = b"Kyber768\0";
32pub const JADE_HASH_SHA3_224_AMD64_AVX2_BYTES: u32 = 28;
33pub const JADE_HASH_SHA3_224_AMD64_AVX2_ALGNAME: &[u8; 9] = b"SHA3-224\0";
34pub const JADE_HASH_SHA3_256_AMD64_AVX2_BYTES: u32 = 32;
35pub const JADE_HASH_SHA3_256_AMD64_AVX2_ALGNAME: &[u8; 9] = b"SHA3-256\0";
36pub const JADE_HASH_SHA3_384_AMD64_AVX2_BYTES: u32 = 48;
37pub const JADE_HASH_SHA3_384_AMD64_AVX2_ALGNAME: &[u8; 9] = b"SHA3-384\0";
38pub const JADE_HASH_SHA3_512_AMD64_AVX2_BYTES: u32 = 64;
39pub const JADE_HASH_SHA3_512_AMD64_AVX2_ALGNAME: &[u8; 9] = b"SHA3-512\0";
40pub const JADE_ONETIMEAUTH_POLY1305_AMD64_AVX2_BYTES: u32 = 16;
41pub const JADE_ONETIMEAUTH_POLY1305_AMD64_AVX2_KEYBYTES: u32 = 32;
42pub const JADE_ONETIMEAUTH_POLY1305_AMD64_AVX2_ALGNAME: &[u8; 9] = b"Poly1305\0";
43pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_AVX2_KEYBYTES: u32 = 32;
44pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_AVX2_NONCEBYTES: u32 = 12;
45pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_AVX2_ALGNAME: &[u8; 14] = b"ChaCha20-ietf\0";
46pub const JADE_ONETIMEAUTH_POLY1305_AMD64_AVX_BYTES: u32 = 16;
47pub const JADE_ONETIMEAUTH_POLY1305_AMD64_AVX_KEYBYTES: u32 = 32;
48pub const JADE_ONETIMEAUTH_POLY1305_AMD64_AVX_ALGNAME: &[u8; 9] = b"Poly1305\0";
49pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_AVX_KEYBYTES: u32 = 32;
50pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_AVX_NONCEBYTES: u32 = 12;
51pub const JADE_STREAM_CHACHA_CHACHA20_IETF_AMD64_AVX_ALGNAME: &[u8; 14] = b"ChaCha20-ietf\0";
52extern "C" {
53 pub fn jade_hash_sha256_amd64_ref(
54 out: *mut u8,
55 in_: *mut u8,
56 length: u64,
57 ) -> ::core::ffi::c_int;
58}
59extern "C" {
60 pub fn jade_scalarmult_curve25519_amd64_ref5(
61 r: *mut u8,
62 k: *mut u8,
63 u: *mut u8,
64 ) -> ::core::ffi::c_int;
65}
66extern "C" {
67 pub fn jade_scalarmult_curve25519_amd64_ref5_base(r: *mut u8, k: *mut u8)
68 -> ::core::ffi::c_int;
69}
70extern "C" {
71 pub fn jade_scalarmult_curve25519_amd64_mulx(
72 r: *mut u8,
73 k: *mut u8,
74 u: *mut u8,
75 ) -> ::core::ffi::c_int;
76}
77extern "C" {
78 pub fn jade_scalarmult_curve25519_amd64_mulx_base(r: *mut u8, k: *mut u8)
79 -> ::core::ffi::c_int;
80}
81extern "C" {
82 pub fn jade_hash_sha3_224_amd64_ref(
83 out: *mut u8,
84 in_: *mut u8,
85 length: u64,
86 ) -> ::core::ffi::c_int;
87}
88extern "C" {
89 pub fn jade_hash_sha3_256_amd64_ref(
90 out: *mut u8,
91 in_: *mut u8,
92 length: u64,
93 ) -> ::core::ffi::c_int;
94}
95extern "C" {
96 pub fn jade_hash_sha3_384_amd64_ref(
97 out: *mut u8,
98 in_: *mut u8,
99 length: u64,
100 ) -> ::core::ffi::c_int;
101}
102extern "C" {
103 pub fn jade_hash_sha3_512_amd64_ref(
104 out: *mut u8,
105 in_: *mut u8,
106 length: u64,
107 ) -> ::core::ffi::c_int;
108}
109extern "C" {
110 pub fn jade_onetimeauth_poly1305_amd64_ref(
111 out: *mut u8,
112 in_: *mut u8,
113 inlen: u64,
114 key: *mut u8,
115 ) -> ::core::ffi::c_int;
116}
117extern "C" {
118 pub fn jade_onetimeauth_poly1305_amd64_ref_verify(
119 h: *mut u8,
120 in_: *mut u8,
121 inlen: u64,
122 key: *mut u8,
123 ) -> ::core::ffi::c_int;
124}
125extern "C" {
126 pub fn jade_stream_chacha_chacha20_ietf_amd64_ref_xor(
127 ciphertext: *mut u8,
128 plaintext: *mut u8,
129 length: u64,
130 nonce: *mut u8,
131 key: *mut u8,
132 ) -> ::core::ffi::c_int;
133}
134extern "C" {
135 pub fn jade_stream_chacha_chacha20_ietf_amd64_ref(
136 stream: *mut u8,
137 length: u64,
138 nonce: *mut u8,
139 key: *mut u8,
140 ) -> ::core::ffi::c_int;
141}
142extern "C" {
143 pub fn jade_kem_kyber_kyber768_amd64_ref_keypair_derand(
144 public_key: *mut u8,
145 secret_key: *mut u8,
146 coins: *const u8,
147 ) -> ::core::ffi::c_int;
148}
149extern "C" {
150 pub fn jade_kem_kyber_kyber768_amd64_ref_enc_derand(
151 ciphertext: *mut u8,
152 shared_secret: *mut u8,
153 public_key: *const u8,
154 coins: *const u8,
155 ) -> ::core::ffi::c_int;
156}
157extern "C" {
158 pub fn jade_kem_kyber_kyber768_amd64_ref_dec(
159 shared_secret: *mut u8,
160 ciphertext: *const u8,
161 secret_key: *const u8,
162 ) -> ::core::ffi::c_int;
163}
164extern "C" {
165 pub fn jade_hash_sha3_224_amd64_avx2(
166 out: *mut u8,
167 in_: *mut u8,
168 length: u64,
169 ) -> ::core::ffi::c_int;
170}
171extern "C" {
172 pub fn jade_hash_sha3_256_amd64_avx2(
173 out: *mut u8,
174 in_: *mut u8,
175 length: u64,
176 ) -> ::core::ffi::c_int;
177}
178extern "C" {
179 pub fn jade_hash_sha3_384_amd64_avx2(
180 out: *mut u8,
181 in_: *mut u8,
182 length: u64,
183 ) -> ::core::ffi::c_int;
184}
185extern "C" {
186 pub fn jade_hash_sha3_512_amd64_avx2(
187 out: *mut u8,
188 in_: *mut u8,
189 length: u64,
190 ) -> ::core::ffi::c_int;
191}
192extern "C" {
193 pub fn jade_onetimeauth_poly1305_amd64_avx2(
194 out: *mut u8,
195 in_: *mut u8,
196 inlen: u64,
197 key: *mut u8,
198 ) -> ::core::ffi::c_int;
199}
200extern "C" {
201 pub fn jade_onetimeauth_poly1305_amd64_avx2_verify(
202 h: *mut u8,
203 in_: *mut u8,
204 inlen: u64,
205 key: *mut u8,
206 ) -> ::core::ffi::c_int;
207}
208extern "C" {
209 pub fn jade_stream_chacha_chacha20_ietf_amd64_avx2_xor(
210 ciphertext: *mut u8,
211 plaintext: *mut u8,
212 length: u64,
213 nonce: *mut u8,
214 key: *mut u8,
215 ) -> ::core::ffi::c_int;
216}
217extern "C" {
218 pub fn jade_stream_chacha_chacha20_ietf_amd64_avx2(
219 stream: *mut u8,
220 length: u64,
221 nonce: *mut u8,
222 key: *mut u8,
223 ) -> ::core::ffi::c_int;
224}
225extern "C" {
226 pub fn jade_onetimeauth_poly1305_amd64_avx(
227 out: *mut u8,
228 in_: *mut u8,
229 inlen: u64,
230 key: *mut u8,
231 ) -> ::core::ffi::c_int;
232}
233extern "C" {
234 pub fn jade_onetimeauth_poly1305_amd64_avx_verify(
235 h: *mut u8,
236 in_: *mut u8,
237 inlen: u64,
238 key: *mut u8,
239 ) -> ::core::ffi::c_int;
240}
241extern "C" {
242 pub fn jade_stream_chacha_chacha20_ietf_amd64_avx_xor(
243 ciphertext: *mut u8,
244 plaintext: *mut u8,
245 length: u64,
246 nonce: *mut u8,
247 key: *mut u8,
248 ) -> ::core::ffi::c_int;
249}
250extern "C" {
251 pub fn jade_stream_chacha_chacha20_ietf_amd64_avx(
252 stream: *mut u8,
253 length: u64,
254 nonce: *mut u8,
255 key: *mut u8,
256 ) -> ::core::ffi::c_int;
257}