summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/rust-ring-0.17-ring-core.patch
blob: faa3a8a191b6865b900f23a02d1ae6fb28b3cf99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
These two files are needed to finish generating the files for windows
and were generated using 'RING_PREGENERATE_ASM=1 cargo build
--target-dir=target/pregenerate_asm'. Included here so we don't need to
add cargo to the computed-source.

---
 .../ring_core_generated/prefix_symbols_asm.h  | 236 ++++++++++++++++++
 .../prefix_symbols_nasm.inc                   | 236 ++++++++++++++++++
 2 files changed, 472 insertions(+)
 create mode 100644 pregenerated/tmp/ring_core_generated/prefix_symbols_asm.h
 create mode 100644 pregenerated/tmp/ring_core_generated/prefix_symbols_nasm.inc

diff --git a/pregenerated/tmp/ring_core_generated/prefix_symbols_asm.h b/pregenerated/tmp/ring_core_generated/prefix_symbols_asm.h
new file mode 100644
index 000000000..1cd766400
--- /dev/null
+++ b/pregenerated/tmp/ring_core_generated/prefix_symbols_asm.h
@@ -0,0 +1,236 @@
+
+#ifndef ring_core_generated_PREFIX_SYMBOLS_ASM_H
+#define ring_core_generated_PREFIX_SYMBOLS_ASM_H
+
+#if defined(__APPLE__)
+#define _ecp_nistz256_point_double _p256_point_double
+#define _ecp_nistz256_point_add _p256_point_add
+#define _ecp_nistz256_point_add_affine _p256_point_add_affine
+#define _ecp_nistz256_ord_mul_mont _p256_scalar_mul_mont
+#define _ecp_nistz256_ord_sqr_mont _p256_scalar_sqr_rep_mont
+#define _ecp_nistz256_mul_mont _p256_mul_mont
+#define _ecp_nistz256_sqr_mont _p256_sqr_mont
+#define _CRYPTO_memcmp _ring_core_0_17_7_CRYPTO_memcmp
+#define _CRYPTO_poly1305_finish _ring_core_0_17_7_CRYPTO_poly1305_finish
+#define _CRYPTO_poly1305_finish_neon _ring_core_0_17_7_CRYPTO_poly1305_finish_neon
+#define _CRYPTO_poly1305_init _ring_core_0_17_7_CRYPTO_poly1305_init
+#define _CRYPTO_poly1305_init_neon _ring_core_0_17_7_CRYPTO_poly1305_init_neon
+#define _CRYPTO_poly1305_update _ring_core_0_17_7_CRYPTO_poly1305_update
+#define _CRYPTO_poly1305_update_neon _ring_core_0_17_7_CRYPTO_poly1305_update_neon
+#define _ChaCha20_ctr32 _ring_core_0_17_7_ChaCha20_ctr32
+#define _LIMBS_add_mod _ring_core_0_17_7_LIMBS_add_mod
+#define _LIMBS_are_even _ring_core_0_17_7_LIMBS_are_even
+#define _LIMBS_are_zero _ring_core_0_17_7_LIMBS_are_zero
+#define _LIMBS_equal _ring_core_0_17_7_LIMBS_equal
+#define _LIMBS_equal_limb _ring_core_0_17_7_LIMBS_equal_limb
+#define _LIMBS_less_than _ring_core_0_17_7_LIMBS_less_than
+#define _LIMBS_less_than_limb _ring_core_0_17_7_LIMBS_less_than_limb
+#define _LIMBS_reduce_once _ring_core_0_17_7_LIMBS_reduce_once
+#define _LIMBS_select_512_32 _ring_core_0_17_7_LIMBS_select_512_32
+#define _LIMBS_shl_mod _ring_core_0_17_7_LIMBS_shl_mod
+#define _LIMBS_sub_mod _ring_core_0_17_7_LIMBS_sub_mod
+#define _LIMBS_window5_split_window _ring_core_0_17_7_LIMBS_window5_split_window
+#define _LIMBS_window5_unsplit_window _ring_core_0_17_7_LIMBS_window5_unsplit_window
+#define _LIMB_shr _ring_core_0_17_7_LIMB_shr
+#define _OPENSSL_armcap_P _ring_core_0_17_7_OPENSSL_armcap_P
+#define _OPENSSL_cpuid_setup _ring_core_0_17_7_OPENSSL_cpuid_setup
+#define _OPENSSL_ia32cap_P _ring_core_0_17_7_OPENSSL_ia32cap_P
+#define _aes_hw_ctr32_encrypt_blocks _ring_core_0_17_7_aes_hw_ctr32_encrypt_blocks
+#define _aes_hw_encrypt _ring_core_0_17_7_aes_hw_encrypt
+#define _aes_hw_set_encrypt_key _ring_core_0_17_7_aes_hw_set_encrypt_key
+#define _aes_nohw_ctr32_encrypt_blocks _ring_core_0_17_7_aes_nohw_ctr32_encrypt_blocks
+#define _aes_nohw_encrypt _ring_core_0_17_7_aes_nohw_encrypt
+#define _aes_nohw_set_encrypt_key _ring_core_0_17_7_aes_nohw_set_encrypt_key
+#define _aesni_gcm_decrypt _ring_core_0_17_7_aesni_gcm_decrypt
+#define _aesni_gcm_encrypt _ring_core_0_17_7_aesni_gcm_encrypt
+#define _bn_from_montgomery_in_place _ring_core_0_17_7_bn_from_montgomery_in_place
+#define _bn_gather5 _ring_core_0_17_7_bn_gather5
+#define _bn_mul_mont _ring_core_0_17_7_bn_mul_mont
+#define _bn_mul_mont_gather5 _ring_core_0_17_7_bn_mul_mont_gather5
+#define _bn_neg_inv_mod_r_u64 _ring_core_0_17_7_bn_neg_inv_mod_r_u64
+#define _bn_power5 _ring_core_0_17_7_bn_power5
+#define _bn_scatter5 _ring_core_0_17_7_bn_scatter5
+#define _bn_sqr8x_internal _ring_core_0_17_7_bn_sqr8x_internal
+#define _bn_sqrx8x_internal _ring_core_0_17_7_bn_sqrx8x_internal
+#define _bsaes_ctr32_encrypt_blocks _ring_core_0_17_7_bsaes_ctr32_encrypt_blocks
+#define _bssl_constant_time_test_conditional_memcpy _ring_core_0_17_7_bssl_constant_time_test_conditional_memcpy
+#define _bssl_constant_time_test_conditional_memxor _ring_core_0_17_7_bssl_constant_time_test_conditional_memxor
+#define _bssl_constant_time_test_main _ring_core_0_17_7_bssl_constant_time_test_main
+#define _chacha20_poly1305_open _ring_core_0_17_7_chacha20_poly1305_open
+#define _chacha20_poly1305_seal _ring_core_0_17_7_chacha20_poly1305_seal
+#define _fiat_curve25519_adx_mul _ring_core_0_17_7_fiat_curve25519_adx_mul
+#define _fiat_curve25519_adx_square _ring_core_0_17_7_fiat_curve25519_adx_square
+#define _gcm_ghash_avx _ring_core_0_17_7_gcm_ghash_avx
+#define _gcm_ghash_clmul _ring_core_0_17_7_gcm_ghash_clmul
+#define _gcm_ghash_neon _ring_core_0_17_7_gcm_ghash_neon
+#define _gcm_gmult_clmul _ring_core_0_17_7_gcm_gmult_clmul
+#define _gcm_gmult_neon _ring_core_0_17_7_gcm_gmult_neon
+#define _gcm_init_avx _ring_core_0_17_7_gcm_init_avx
+#define _gcm_init_clmul _ring_core_0_17_7_gcm_init_clmul
+#define _gcm_init_neon _ring_core_0_17_7_gcm_init_neon
+#define _k25519Precomp _ring_core_0_17_7_k25519Precomp
+#define _limbs_mul_add_limb _ring_core_0_17_7_limbs_mul_add_limb
+#define _little_endian_bytes_from_scalar _ring_core_0_17_7_little_endian_bytes_from_scalar
+#define _ecp_nistz256_neg _ring_core_0_17_7_ecp_nistz256_neg
+#define _ecp_nistz256_select_w5 _ring_core_0_17_7_ecp_nistz256_select_w5
+#define _ecp_nistz256_select_w7 _ring_core_0_17_7_ecp_nistz256_select_w7
+#define _p256_mul_mont _ring_core_0_17_7_p256_mul_mont
+#define _p256_point_add _ring_core_0_17_7_p256_point_add
+#define _p256_point_add_affine _ring_core_0_17_7_p256_point_add_affine
+#define _p256_point_double _ring_core_0_17_7_p256_point_double
+#define _p256_point_mul _ring_core_0_17_7_p256_point_mul
+#define _p256_point_mul_base _ring_core_0_17_7_p256_point_mul_base
+#define _p256_point_mul_base_vartime _ring_core_0_17_7_p256_point_mul_base_vartime
+#define _p256_scalar_mul_mont _ring_core_0_17_7_p256_scalar_mul_mont
+#define _p256_scalar_sqr_rep_mont _ring_core_0_17_7_p256_scalar_sqr_rep_mont
+#define _p256_sqr_mont _ring_core_0_17_7_p256_sqr_mont
+#define _p384_elem_div_by_2 _ring_core_0_17_7_p384_elem_div_by_2
+#define _p384_elem_mul_mont _ring_core_0_17_7_p384_elem_mul_mont
+#define _p384_elem_neg _ring_core_0_17_7_p384_elem_neg
+#define _p384_elem_sub _ring_core_0_17_7_p384_elem_sub
+#define _p384_point_add _ring_core_0_17_7_p384_point_add
+#define _p384_point_double _ring_core_0_17_7_p384_point_double
+#define _p384_point_mul _ring_core_0_17_7_p384_point_mul
+#define _p384_scalar_mul_mont _ring_core_0_17_7_p384_scalar_mul_mont
+#define _openssl_poly1305_neon2_addmulmod _ring_core_0_17_7_openssl_poly1305_neon2_addmulmod
+#define _openssl_poly1305_neon2_blocks _ring_core_0_17_7_openssl_poly1305_neon2_blocks
+#define _sha256_block_data_order _ring_core_0_17_7_sha256_block_data_order
+#define _sha512_block_data_order _ring_core_0_17_7_sha512_block_data_order
+#define _vpaes_ctr32_encrypt_blocks _ring_core_0_17_7_vpaes_ctr32_encrypt_blocks
+#define _vpaes_encrypt _ring_core_0_17_7_vpaes_encrypt
+#define _vpaes_encrypt_key_to_bsaes _ring_core_0_17_7_vpaes_encrypt_key_to_bsaes
+#define _vpaes_set_encrypt_key _ring_core_0_17_7_vpaes_set_encrypt_key
+#define _x25519_NEON _ring_core_0_17_7_x25519_NEON
+#define _x25519_fe_invert _ring_core_0_17_7_x25519_fe_invert
+#define _x25519_fe_isnegative _ring_core_0_17_7_x25519_fe_isnegative
+#define _x25519_fe_mul_ttt _ring_core_0_17_7_x25519_fe_mul_ttt
+#define _x25519_fe_neg _ring_core_0_17_7_x25519_fe_neg
+#define _x25519_fe_tobytes _ring_core_0_17_7_x25519_fe_tobytes
+#define _x25519_ge_double_scalarmult_vartime _ring_core_0_17_7_x25519_ge_double_scalarmult_vartime
+#define _x25519_ge_frombytes_vartime _ring_core_0_17_7_x25519_ge_frombytes_vartime
+#define _x25519_ge_scalarmult_base _ring_core_0_17_7_x25519_ge_scalarmult_base
+#define _x25519_ge_scalarmult_base_adx _ring_core_0_17_7_x25519_ge_scalarmult_base_adx
+#define _x25519_public_from_private_generic_masked _ring_core_0_17_7_x25519_public_from_private_generic_masked
+#define _x25519_sc_mask _ring_core_0_17_7_x25519_sc_mask
+#define _x25519_sc_muladd _ring_core_0_17_7_x25519_sc_muladd
+#define _x25519_sc_reduce _ring_core_0_17_7_x25519_sc_reduce
+#define _x25519_scalar_mult_adx _ring_core_0_17_7_x25519_scalar_mult_adx
+#define _x25519_scalar_mult_generic_masked _ring_core_0_17_7_x25519_scalar_mult_generic_masked
+
+#else
+#define ecp_nistz256_point_double p256_point_double
+#define ecp_nistz256_point_add p256_point_add
+#define ecp_nistz256_point_add_affine p256_point_add_affine
+#define ecp_nistz256_ord_mul_mont p256_scalar_mul_mont
+#define ecp_nistz256_ord_sqr_mont p256_scalar_sqr_rep_mont
+#define ecp_nistz256_mul_mont p256_mul_mont
+#define ecp_nistz256_sqr_mont p256_sqr_mont
+#define CRYPTO_memcmp ring_core_0_17_7_CRYPTO_memcmp
+#define CRYPTO_poly1305_finish ring_core_0_17_7_CRYPTO_poly1305_finish
+#define CRYPTO_poly1305_finish_neon ring_core_0_17_7_CRYPTO_poly1305_finish_neon
+#define CRYPTO_poly1305_init ring_core_0_17_7_CRYPTO_poly1305_init
+#define CRYPTO_poly1305_init_neon ring_core_0_17_7_CRYPTO_poly1305_init_neon
+#define CRYPTO_poly1305_update ring_core_0_17_7_CRYPTO_poly1305_update
+#define CRYPTO_poly1305_update_neon ring_core_0_17_7_CRYPTO_poly1305_update_neon
+#define ChaCha20_ctr32 ring_core_0_17_7_ChaCha20_ctr32
+#define LIMBS_add_mod ring_core_0_17_7_LIMBS_add_mod
+#define LIMBS_are_even ring_core_0_17_7_LIMBS_are_even
+#define LIMBS_are_zero ring_core_0_17_7_LIMBS_are_zero
+#define LIMBS_equal ring_core_0_17_7_LIMBS_equal
+#define LIMBS_equal_limb ring_core_0_17_7_LIMBS_equal_limb
+#define LIMBS_less_than ring_core_0_17_7_LIMBS_less_than
+#define LIMBS_less_than_limb ring_core_0_17_7_LIMBS_less_than_limb
+#define LIMBS_reduce_once ring_core_0_17_7_LIMBS_reduce_once
+#define LIMBS_select_512_32 ring_core_0_17_7_LIMBS_select_512_32
+#define LIMBS_shl_mod ring_core_0_17_7_LIMBS_shl_mod
+#define LIMBS_sub_mod ring_core_0_17_7_LIMBS_sub_mod
+#define LIMBS_window5_split_window ring_core_0_17_7_LIMBS_window5_split_window
+#define LIMBS_window5_unsplit_window ring_core_0_17_7_LIMBS_window5_unsplit_window
+#define LIMB_shr ring_core_0_17_7_LIMB_shr
+#define OPENSSL_armcap_P ring_core_0_17_7_OPENSSL_armcap_P
+#define OPENSSL_cpuid_setup ring_core_0_17_7_OPENSSL_cpuid_setup
+#define OPENSSL_ia32cap_P ring_core_0_17_7_OPENSSL_ia32cap_P
+#define aes_hw_ctr32_encrypt_blocks ring_core_0_17_7_aes_hw_ctr32_encrypt_blocks
+#define aes_hw_encrypt ring_core_0_17_7_aes_hw_encrypt
+#define aes_hw_set_encrypt_key ring_core_0_17_7_aes_hw_set_encrypt_key
+#define aes_nohw_ctr32_encrypt_blocks ring_core_0_17_7_aes_nohw_ctr32_encrypt_blocks
+#define aes_nohw_encrypt ring_core_0_17_7_aes_nohw_encrypt
+#define aes_nohw_set_encrypt_key ring_core_0_17_7_aes_nohw_set_encrypt_key
+#define aesni_gcm_decrypt ring_core_0_17_7_aesni_gcm_decrypt
+#define aesni_gcm_encrypt ring_core_0_17_7_aesni_gcm_encrypt
+#define bn_from_montgomery_in_place ring_core_0_17_7_bn_from_montgomery_in_place
+#define bn_gather5 ring_core_0_17_7_bn_gather5
+#define bn_mul_mont ring_core_0_17_7_bn_mul_mont
+#define bn_mul_mont_gather5 ring_core_0_17_7_bn_mul_mont_gather5
+#define bn_neg_inv_mod_r_u64 ring_core_0_17_7_bn_neg_inv_mod_r_u64
+#define bn_power5 ring_core_0_17_7_bn_power5
+#define bn_scatter5 ring_core_0_17_7_bn_scatter5
+#define bn_sqr8x_internal ring_core_0_17_7_bn_sqr8x_internal
+#define bn_sqrx8x_internal ring_core_0_17_7_bn_sqrx8x_internal
+#define bsaes_ctr32_encrypt_blocks ring_core_0_17_7_bsaes_ctr32_encrypt_blocks
+#define bssl_constant_time_test_conditional_memcpy ring_core_0_17_7_bssl_constant_time_test_conditional_memcpy
+#define bssl_constant_time_test_conditional_memxor ring_core_0_17_7_bssl_constant_time_test_conditional_memxor
+#define bssl_constant_time_test_main ring_core_0_17_7_bssl_constant_time_test_main
+#define chacha20_poly1305_open ring_core_0_17_7_chacha20_poly1305_open
+#define chacha20_poly1305_seal ring_core_0_17_7_chacha20_poly1305_seal
+#define fiat_curve25519_adx_mul ring_core_0_17_7_fiat_curve25519_adx_mul
+#define fiat_curve25519_adx_square ring_core_0_17_7_fiat_curve25519_adx_square
+#define gcm_ghash_avx ring_core_0_17_7_gcm_ghash_avx
+#define gcm_ghash_clmul ring_core_0_17_7_gcm_ghash_clmul
+#define gcm_ghash_neon ring_core_0_17_7_gcm_ghash_neon
+#define gcm_gmult_clmul ring_core_0_17_7_gcm_gmult_clmul
+#define gcm_gmult_neon ring_core_0_17_7_gcm_gmult_neon
+#define gcm_init_avx ring_core_0_17_7_gcm_init_avx
+#define gcm_init_clmul ring_core_0_17_7_gcm_init_clmul
+#define gcm_init_neon ring_core_0_17_7_gcm_init_neon
+#define k25519Precomp ring_core_0_17_7_k25519Precomp
+#define limbs_mul_add_limb ring_core_0_17_7_limbs_mul_add_limb
+#define little_endian_bytes_from_scalar ring_core_0_17_7_little_endian_bytes_from_scalar
+#define ecp_nistz256_neg ring_core_0_17_7_ecp_nistz256_neg
+#define ecp_nistz256_select_w5 ring_core_0_17_7_ecp_nistz256_select_w5
+#define ecp_nistz256_select_w7 ring_core_0_17_7_ecp_nistz256_select_w7
+#define p256_mul_mont ring_core_0_17_7_p256_mul_mont
+#define p256_point_add ring_core_0_17_7_p256_point_add
+#define p256_point_add_affine ring_core_0_17_7_p256_point_add_affine
+#define p256_point_double ring_core_0_17_7_p256_point_double
+#define p256_point_mul ring_core_0_17_7_p256_point_mul
+#define p256_point_mul_base ring_core_0_17_7_p256_point_mul_base
+#define p256_point_mul_base_vartime ring_core_0_17_7_p256_point_mul_base_vartime
+#define p256_scalar_mul_mont ring_core_0_17_7_p256_scalar_mul_mont
+#define p256_scalar_sqr_rep_mont ring_core_0_17_7_p256_scalar_sqr_rep_mont
+#define p256_sqr_mont ring_core_0_17_7_p256_sqr_mont
+#define p384_elem_div_by_2 ring_core_0_17_7_p384_elem_div_by_2
+#define p384_elem_mul_mont ring_core_0_17_7_p384_elem_mul_mont
+#define p384_elem_neg ring_core_0_17_7_p384_elem_neg
+#define p384_elem_sub ring_core_0_17_7_p384_elem_sub
+#define p384_point_add ring_core_0_17_7_p384_point_add
+#define p384_point_double ring_core_0_17_7_p384_point_double
+#define p384_point_mul ring_core_0_17_7_p384_point_mul
+#define p384_scalar_mul_mont ring_core_0_17_7_p384_scalar_mul_mont
+#define openssl_poly1305_neon2_addmulmod ring_core_0_17_7_openssl_poly1305_neon2_addmulmod
+#define openssl_poly1305_neon2_blocks ring_core_0_17_7_openssl_poly1305_neon2_blocks
+#define sha256_block_data_order ring_core_0_17_7_sha256_block_data_order
+#define sha512_block_data_order ring_core_0_17_7_sha512_block_data_order
+#define vpaes_ctr32_encrypt_blocks ring_core_0_17_7_vpaes_ctr32_encrypt_blocks
+#define vpaes_encrypt ring_core_0_17_7_vpaes_encrypt
+#define vpaes_encrypt_key_to_bsaes ring_core_0_17_7_vpaes_encrypt_key_to_bsaes
+#define vpaes_set_encrypt_key ring_core_0_17_7_vpaes_set_encrypt_key
+#define x25519_NEON ring_core_0_17_7_x25519_NEON
+#define x25519_fe_invert ring_core_0_17_7_x25519_fe_invert
+#define x25519_fe_isnegative ring_core_0_17_7_x25519_fe_isnegative
+#define x25519_fe_mul_ttt ring_core_0_17_7_x25519_fe_mul_ttt
+#define x25519_fe_neg ring_core_0_17_7_x25519_fe_neg
+#define x25519_fe_tobytes ring_core_0_17_7_x25519_fe_tobytes
+#define x25519_ge_double_scalarmult_vartime ring_core_0_17_7_x25519_ge_double_scalarmult_vartime
+#define x25519_ge_frombytes_vartime ring_core_0_17_7_x25519_ge_frombytes_vartime
+#define x25519_ge_scalarmult_base ring_core_0_17_7_x25519_ge_scalarmult_base
+#define x25519_ge_scalarmult_base_adx ring_core_0_17_7_x25519_ge_scalarmult_base_adx
+#define x25519_public_from_private_generic_masked ring_core_0_17_7_x25519_public_from_private_generic_masked
+#define x25519_sc_mask ring_core_0_17_7_x25519_sc_mask
+#define x25519_sc_muladd ring_core_0_17_7_x25519_sc_muladd
+#define x25519_sc_reduce ring_core_0_17_7_x25519_sc_reduce
+#define x25519_scalar_mult_adx ring_core_0_17_7_x25519_scalar_mult_adx
+#define x25519_scalar_mult_generic_masked ring_core_0_17_7_x25519_scalar_mult_generic_masked
+
+#endif
+#endif
diff --git a/pregenerated/tmp/ring_core_generated/prefix_symbols_nasm.inc b/pregenerated/tmp/ring_core_generated/prefix_symbols_nasm.inc
new file mode 100644
index 000000000..65ce0cfaa
--- /dev/null
+++ b/pregenerated/tmp/ring_core_generated/prefix_symbols_nasm.inc
@@ -0,0 +1,236 @@
+
+%ifndef ring_core_generated_PREFIX_SYMBOLS_NASM_INC
+%define ring_core_generated_PREFIX_SYMBOLS_NASM_INC
+
+%ifidn __OUTPUT_FORMAT__,win32
+%define _ecp_nistz256_point_double _p256_point_double
+%define _ecp_nistz256_point_add _p256_point_add
+%define _ecp_nistz256_point_add_affine _p256_point_add_affine
+%define _ecp_nistz256_ord_mul_mont _p256_scalar_mul_mont
+%define _ecp_nistz256_ord_sqr_mont _p256_scalar_sqr_rep_mont
+%define _ecp_nistz256_mul_mont _p256_mul_mont
+%define _ecp_nistz256_sqr_mont _p256_sqr_mont
+%define _CRYPTO_memcmp _ring_core_0_17_7_CRYPTO_memcmp
+%define _CRYPTO_poly1305_finish _ring_core_0_17_7_CRYPTO_poly1305_finish
+%define _CRYPTO_poly1305_finish_neon _ring_core_0_17_7_CRYPTO_poly1305_finish_neon
+%define _CRYPTO_poly1305_init _ring_core_0_17_7_CRYPTO_poly1305_init
+%define _CRYPTO_poly1305_init_neon _ring_core_0_17_7_CRYPTO_poly1305_init_neon
+%define _CRYPTO_poly1305_update _ring_core_0_17_7_CRYPTO_poly1305_update
+%define _CRYPTO_poly1305_update_neon _ring_core_0_17_7_CRYPTO_poly1305_update_neon
+%define _ChaCha20_ctr32 _ring_core_0_17_7_ChaCha20_ctr32
+%define _LIMBS_add_mod _ring_core_0_17_7_LIMBS_add_mod
+%define _LIMBS_are_even _ring_core_0_17_7_LIMBS_are_even
+%define _LIMBS_are_zero _ring_core_0_17_7_LIMBS_are_zero
+%define _LIMBS_equal _ring_core_0_17_7_LIMBS_equal
+%define _LIMBS_equal_limb _ring_core_0_17_7_LIMBS_equal_limb
+%define _LIMBS_less_than _ring_core_0_17_7_LIMBS_less_than
+%define _LIMBS_less_than_limb _ring_core_0_17_7_LIMBS_less_than_limb
+%define _LIMBS_reduce_once _ring_core_0_17_7_LIMBS_reduce_once
+%define _LIMBS_select_512_32 _ring_core_0_17_7_LIMBS_select_512_32
+%define _LIMBS_shl_mod _ring_core_0_17_7_LIMBS_shl_mod
+%define _LIMBS_sub_mod _ring_core_0_17_7_LIMBS_sub_mod
+%define _LIMBS_window5_split_window _ring_core_0_17_7_LIMBS_window5_split_window
+%define _LIMBS_window5_unsplit_window _ring_core_0_17_7_LIMBS_window5_unsplit_window
+%define _LIMB_shr _ring_core_0_17_7_LIMB_shr
+%define _OPENSSL_armcap_P _ring_core_0_17_7_OPENSSL_armcap_P
+%define _OPENSSL_cpuid_setup _ring_core_0_17_7_OPENSSL_cpuid_setup
+%define _OPENSSL_ia32cap_P _ring_core_0_17_7_OPENSSL_ia32cap_P
+%define _aes_hw_ctr32_encrypt_blocks _ring_core_0_17_7_aes_hw_ctr32_encrypt_blocks
+%define _aes_hw_encrypt _ring_core_0_17_7_aes_hw_encrypt
+%define _aes_hw_set_encrypt_key _ring_core_0_17_7_aes_hw_set_encrypt_key
+%define _aes_nohw_ctr32_encrypt_blocks _ring_core_0_17_7_aes_nohw_ctr32_encrypt_blocks
+%define _aes_nohw_encrypt _ring_core_0_17_7_aes_nohw_encrypt
+%define _aes_nohw_set_encrypt_key _ring_core_0_17_7_aes_nohw_set_encrypt_key
+%define _aesni_gcm_decrypt _ring_core_0_17_7_aesni_gcm_decrypt
+%define _aesni_gcm_encrypt _ring_core_0_17_7_aesni_gcm_encrypt
+%define _bn_from_montgomery_in_place _ring_core_0_17_7_bn_from_montgomery_in_place
+%define _bn_gather5 _ring_core_0_17_7_bn_gather5
+%define _bn_mul_mont _ring_core_0_17_7_bn_mul_mont
+%define _bn_mul_mont_gather5 _ring_core_0_17_7_bn_mul_mont_gather5
+%define _bn_neg_inv_mod_r_u64 _ring_core_0_17_7_bn_neg_inv_mod_r_u64
+%define _bn_power5 _ring_core_0_17_7_bn_power5
+%define _bn_scatter5 _ring_core_0_17_7_bn_scatter5
+%define _bn_sqr8x_internal _ring_core_0_17_7_bn_sqr8x_internal
+%define _bn_sqrx8x_internal _ring_core_0_17_7_bn_sqrx8x_internal
+%define _bsaes_ctr32_encrypt_blocks _ring_core_0_17_7_bsaes_ctr32_encrypt_blocks
+%define _bssl_constant_time_test_conditional_memcpy _ring_core_0_17_7_bssl_constant_time_test_conditional_memcpy
+%define _bssl_constant_time_test_conditional_memxor _ring_core_0_17_7_bssl_constant_time_test_conditional_memxor
+%define _bssl_constant_time_test_main _ring_core_0_17_7_bssl_constant_time_test_main
+%define _chacha20_poly1305_open _ring_core_0_17_7_chacha20_poly1305_open
+%define _chacha20_poly1305_seal _ring_core_0_17_7_chacha20_poly1305_seal
+%define _fiat_curve25519_adx_mul _ring_core_0_17_7_fiat_curve25519_adx_mul
+%define _fiat_curve25519_adx_square _ring_core_0_17_7_fiat_curve25519_adx_square
+%define _gcm_ghash_avx _ring_core_0_17_7_gcm_ghash_avx
+%define _gcm_ghash_clmul _ring_core_0_17_7_gcm_ghash_clmul
+%define _gcm_ghash_neon _ring_core_0_17_7_gcm_ghash_neon
+%define _gcm_gmult_clmul _ring_core_0_17_7_gcm_gmult_clmul
+%define _gcm_gmult_neon _ring_core_0_17_7_gcm_gmult_neon
+%define _gcm_init_avx _ring_core_0_17_7_gcm_init_avx
+%define _gcm_init_clmul _ring_core_0_17_7_gcm_init_clmul
+%define _gcm_init_neon _ring_core_0_17_7_gcm_init_neon
+%define _k25519Precomp _ring_core_0_17_7_k25519Precomp
+%define _limbs_mul_add_limb _ring_core_0_17_7_limbs_mul_add_limb
+%define _little_endian_bytes_from_scalar _ring_core_0_17_7_little_endian_bytes_from_scalar
+%define _ecp_nistz256_neg _ring_core_0_17_7_ecp_nistz256_neg
+%define _ecp_nistz256_select_w5 _ring_core_0_17_7_ecp_nistz256_select_w5
+%define _ecp_nistz256_select_w7 _ring_core_0_17_7_ecp_nistz256_select_w7
+%define _p256_mul_mont _ring_core_0_17_7_p256_mul_mont
+%define _p256_point_add _ring_core_0_17_7_p256_point_add
+%define _p256_point_add_affine _ring_core_0_17_7_p256_point_add_affine
+%define _p256_point_double _ring_core_0_17_7_p256_point_double
+%define _p256_point_mul _ring_core_0_17_7_p256_point_mul
+%define _p256_point_mul_base _ring_core_0_17_7_p256_point_mul_base
+%define _p256_point_mul_base_vartime _ring_core_0_17_7_p256_point_mul_base_vartime
+%define _p256_scalar_mul_mont _ring_core_0_17_7_p256_scalar_mul_mont
+%define _p256_scalar_sqr_rep_mont _ring_core_0_17_7_p256_scalar_sqr_rep_mont
+%define _p256_sqr_mont _ring_core_0_17_7_p256_sqr_mont
+%define _p384_elem_div_by_2 _ring_core_0_17_7_p384_elem_div_by_2
+%define _p384_elem_mul_mont _ring_core_0_17_7_p384_elem_mul_mont
+%define _p384_elem_neg _ring_core_0_17_7_p384_elem_neg
+%define _p384_elem_sub _ring_core_0_17_7_p384_elem_sub
+%define _p384_point_add _ring_core_0_17_7_p384_point_add
+%define _p384_point_double _ring_core_0_17_7_p384_point_double
+%define _p384_point_mul _ring_core_0_17_7_p384_point_mul
+%define _p384_scalar_mul_mont _ring_core_0_17_7_p384_scalar_mul_mont
+%define _openssl_poly1305_neon2_addmulmod _ring_core_0_17_7_openssl_poly1305_neon2_addmulmod
+%define _openssl_poly1305_neon2_blocks _ring_core_0_17_7_openssl_poly1305_neon2_blocks
+%define _sha256_block_data_order _ring_core_0_17_7_sha256_block_data_order
+%define _sha512_block_data_order _ring_core_0_17_7_sha512_block_data_order
+%define _vpaes_ctr32_encrypt_blocks _ring_core_0_17_7_vpaes_ctr32_encrypt_blocks
+%define _vpaes_encrypt _ring_core_0_17_7_vpaes_encrypt
+%define _vpaes_encrypt_key_to_bsaes _ring_core_0_17_7_vpaes_encrypt_key_to_bsaes
+%define _vpaes_set_encrypt_key _ring_core_0_17_7_vpaes_set_encrypt_key
+%define _x25519_NEON _ring_core_0_17_7_x25519_NEON
+%define _x25519_fe_invert _ring_core_0_17_7_x25519_fe_invert
+%define _x25519_fe_isnegative _ring_core_0_17_7_x25519_fe_isnegative
+%define _x25519_fe_mul_ttt _ring_core_0_17_7_x25519_fe_mul_ttt
+%define _x25519_fe_neg _ring_core_0_17_7_x25519_fe_neg
+%define _x25519_fe_tobytes _ring_core_0_17_7_x25519_fe_tobytes
+%define _x25519_ge_double_scalarmult_vartime _ring_core_0_17_7_x25519_ge_double_scalarmult_vartime
+%define _x25519_ge_frombytes_vartime _ring_core_0_17_7_x25519_ge_frombytes_vartime
+%define _x25519_ge_scalarmult_base _ring_core_0_17_7_x25519_ge_scalarmult_base
+%define _x25519_ge_scalarmult_base_adx _ring_core_0_17_7_x25519_ge_scalarmult_base_adx
+%define _x25519_public_from_private_generic_masked _ring_core_0_17_7_x25519_public_from_private_generic_masked
+%define _x25519_sc_mask _ring_core_0_17_7_x25519_sc_mask
+%define _x25519_sc_muladd _ring_core_0_17_7_x25519_sc_muladd
+%define _x25519_sc_reduce _ring_core_0_17_7_x25519_sc_reduce
+%define _x25519_scalar_mult_adx _ring_core_0_17_7_x25519_scalar_mult_adx
+%define _x25519_scalar_mult_generic_masked _ring_core_0_17_7_x25519_scalar_mult_generic_masked
+
+%else
+%define ecp_nistz256_point_double p256_point_double
+%define ecp_nistz256_point_add p256_point_add
+%define ecp_nistz256_point_add_affine p256_point_add_affine
+%define ecp_nistz256_ord_mul_mont p256_scalar_mul_mont
+%define ecp_nistz256_ord_sqr_mont p256_scalar_sqr_rep_mont
+%define ecp_nistz256_mul_mont p256_mul_mont
+%define ecp_nistz256_sqr_mont p256_sqr_mont
+%define CRYPTO_memcmp ring_core_0_17_7_CRYPTO_memcmp
+%define CRYPTO_poly1305_finish ring_core_0_17_7_CRYPTO_poly1305_finish
+%define CRYPTO_poly1305_finish_neon ring_core_0_17_7_CRYPTO_poly1305_finish_neon
+%define CRYPTO_poly1305_init ring_core_0_17_7_CRYPTO_poly1305_init
+%define CRYPTO_poly1305_init_neon ring_core_0_17_7_CRYPTO_poly1305_init_neon
+%define CRYPTO_poly1305_update ring_core_0_17_7_CRYPTO_poly1305_update
+%define CRYPTO_poly1305_update_neon ring_core_0_17_7_CRYPTO_poly1305_update_neon
+%define ChaCha20_ctr32 ring_core_0_17_7_ChaCha20_ctr32
+%define LIMBS_add_mod ring_core_0_17_7_LIMBS_add_mod
+%define LIMBS_are_even ring_core_0_17_7_LIMBS_are_even
+%define LIMBS_are_zero ring_core_0_17_7_LIMBS_are_zero
+%define LIMBS_equal ring_core_0_17_7_LIMBS_equal
+%define LIMBS_equal_limb ring_core_0_17_7_LIMBS_equal_limb
+%define LIMBS_less_than ring_core_0_17_7_LIMBS_less_than
+%define LIMBS_less_than_limb ring_core_0_17_7_LIMBS_less_than_limb
+%define LIMBS_reduce_once ring_core_0_17_7_LIMBS_reduce_once
+%define LIMBS_select_512_32 ring_core_0_17_7_LIMBS_select_512_32
+%define LIMBS_shl_mod ring_core_0_17_7_LIMBS_shl_mod
+%define LIMBS_sub_mod ring_core_0_17_7_LIMBS_sub_mod
+%define LIMBS_window5_split_window ring_core_0_17_7_LIMBS_window5_split_window
+%define LIMBS_window5_unsplit_window ring_core_0_17_7_LIMBS_window5_unsplit_window
+%define LIMB_shr ring_core_0_17_7_LIMB_shr
+%define OPENSSL_armcap_P ring_core_0_17_7_OPENSSL_armcap_P
+%define OPENSSL_cpuid_setup ring_core_0_17_7_OPENSSL_cpuid_setup
+%define OPENSSL_ia32cap_P ring_core_0_17_7_OPENSSL_ia32cap_P
+%define aes_hw_ctr32_encrypt_blocks ring_core_0_17_7_aes_hw_ctr32_encrypt_blocks
+%define aes_hw_encrypt ring_core_0_17_7_aes_hw_encrypt
+%define aes_hw_set_encrypt_key ring_core_0_17_7_aes_hw_set_encrypt_key
+%define aes_nohw_ctr32_encrypt_blocks ring_core_0_17_7_aes_nohw_ctr32_encrypt_blocks
+%define aes_nohw_encrypt ring_core_0_17_7_aes_nohw_encrypt
+%define aes_nohw_set_encrypt_key ring_core_0_17_7_aes_nohw_set_encrypt_key
+%define aesni_gcm_decrypt ring_core_0_17_7_aesni_gcm_decrypt
+%define aesni_gcm_encrypt ring_core_0_17_7_aesni_gcm_encrypt
+%define bn_from_montgomery_in_place ring_core_0_17_7_bn_from_montgomery_in_place
+%define bn_gather5 ring_core_0_17_7_bn_gather5
+%define bn_mul_mont ring_core_0_17_7_bn_mul_mont
+%define bn_mul_mont_gather5 ring_core_0_17_7_bn_mul_mont_gather5
+%define bn_neg_inv_mod_r_u64 ring_core_0_17_7_bn_neg_inv_mod_r_u64
+%define bn_power5 ring_core_0_17_7_bn_power5
+%define bn_scatter5 ring_core_0_17_7_bn_scatter5
+%define bn_sqr8x_internal ring_core_0_17_7_bn_sqr8x_internal
+%define bn_sqrx8x_internal ring_core_0_17_7_bn_sqrx8x_internal
+%define bsaes_ctr32_encrypt_blocks ring_core_0_17_7_bsaes_ctr32_encrypt_blocks
+%define bssl_constant_time_test_conditional_memcpy ring_core_0_17_7_bssl_constant_time_test_conditional_memcpy
+%define bssl_constant_time_test_conditional_memxor ring_core_0_17_7_bssl_constant_time_test_conditional_memxor
+%define bssl_constant_time_test_main ring_core_0_17_7_bssl_constant_time_test_main
+%define chacha20_poly1305_open ring_core_0_17_7_chacha20_poly1305_open
+%define chacha20_poly1305_seal ring_core_0_17_7_chacha20_poly1305_seal
+%define fiat_curve25519_adx_mul ring_core_0_17_7_fiat_curve25519_adx_mul
+%define fiat_curve25519_adx_square ring_core_0_17_7_fiat_curve25519_adx_square
+%define gcm_ghash_avx ring_core_0_17_7_gcm_ghash_avx
+%define gcm_ghash_clmul ring_core_0_17_7_gcm_ghash_clmul
+%define gcm_ghash_neon ring_core_0_17_7_gcm_ghash_neon
+%define gcm_gmult_clmul ring_core_0_17_7_gcm_gmult_clmul
+%define gcm_gmult_neon ring_core_0_17_7_gcm_gmult_neon
+%define gcm_init_avx ring_core_0_17_7_gcm_init_avx
+%define gcm_init_clmul ring_core_0_17_7_gcm_init_clmul
+%define gcm_init_neon ring_core_0_17_7_gcm_init_neon
+%define k25519Precomp ring_core_0_17_7_k25519Precomp
+%define limbs_mul_add_limb ring_core_0_17_7_limbs_mul_add_limb
+%define little_endian_bytes_from_scalar ring_core_0_17_7_little_endian_bytes_from_scalar
+%define ecp_nistz256_neg ring_core_0_17_7_ecp_nistz256_neg
+%define ecp_nistz256_select_w5 ring_core_0_17_7_ecp_nistz256_select_w5
+%define ecp_nistz256_select_w7 ring_core_0_17_7_ecp_nistz256_select_w7
+%define p256_mul_mont ring_core_0_17_7_p256_mul_mont
+%define p256_point_add ring_core_0_17_7_p256_point_add
+%define p256_point_add_affine ring_core_0_17_7_p256_point_add_affine
+%define p256_point_double ring_core_0_17_7_p256_point_double
+%define p256_point_mul ring_core_0_17_7_p256_point_mul
+%define p256_point_mul_base ring_core_0_17_7_p256_point_mul_base
+%define p256_point_mul_base_vartime ring_core_0_17_7_p256_point_mul_base_vartime
+%define p256_scalar_mul_mont ring_core_0_17_7_p256_scalar_mul_mont
+%define p256_scalar_sqr_rep_mont ring_core_0_17_7_p256_scalar_sqr_rep_mont
+%define p256_sqr_mont ring_core_0_17_7_p256_sqr_mont
+%define p384_elem_div_by_2 ring_core_0_17_7_p384_elem_div_by_2
+%define p384_elem_mul_mont ring_core_0_17_7_p384_elem_mul_mont
+%define p384_elem_neg ring_core_0_17_7_p384_elem_neg
+%define p384_elem_sub ring_core_0_17_7_p384_elem_sub
+%define p384_point_add ring_core_0_17_7_p384_point_add
+%define p384_point_double ring_core_0_17_7_p384_point_double
+%define p384_point_mul ring_core_0_17_7_p384_point_mul
+%define p384_scalar_mul_mont ring_core_0_17_7_p384_scalar_mul_mont
+%define openssl_poly1305_neon2_addmulmod ring_core_0_17_7_openssl_poly1305_neon2_addmulmod
+%define openssl_poly1305_neon2_blocks ring_core_0_17_7_openssl_poly1305_neon2_blocks
+%define sha256_block_data_order ring_core_0_17_7_sha256_block_data_order
+%define sha512_block_data_order ring_core_0_17_7_sha512_block_data_order
+%define vpaes_ctr32_encrypt_blocks ring_core_0_17_7_vpaes_ctr32_encrypt_blocks
+%define vpaes_encrypt ring_core_0_17_7_vpaes_encrypt
+%define vpaes_encrypt_key_to_bsaes ring_core_0_17_7_vpaes_encrypt_key_to_bsaes
+%define vpaes_set_encrypt_key ring_core_0_17_7_vpaes_set_encrypt_key
+%define x25519_NEON ring_core_0_17_7_x25519_NEON
+%define x25519_fe_invert ring_core_0_17_7_x25519_fe_invert
+%define x25519_fe_isnegative ring_core_0_17_7_x25519_fe_isnegative
+%define x25519_fe_mul_ttt ring_core_0_17_7_x25519_fe_mul_ttt
+%define x25519_fe_neg ring_core_0_17_7_x25519_fe_neg
+%define x25519_fe_tobytes ring_core_0_17_7_x25519_fe_tobytes
+%define x25519_ge_double_scalarmult_vartime ring_core_0_17_7_x25519_ge_double_scalarmult_vartime
+%define x25519_ge_frombytes_vartime ring_core_0_17_7_x25519_ge_frombytes_vartime
+%define x25519_ge_scalarmult_base ring_core_0_17_7_x25519_ge_scalarmult_base
+%define x25519_ge_scalarmult_base_adx ring_core_0_17_7_x25519_ge_scalarmult_base_adx
+%define x25519_public_from_private_generic_masked ring_core_0_17_7_x25519_public_from_private_generic_masked
+%define x25519_sc_mask ring_core_0_17_7_x25519_sc_mask
+%define x25519_sc_muladd ring_core_0_17_7_x25519_sc_muladd
+%define x25519_sc_reduce ring_core_0_17_7_x25519_sc_reduce
+%define x25519_scalar_mult_adx ring_core_0_17_7_x25519_scalar_mult_adx
+%define x25519_scalar_mult_generic_masked ring_core_0_17_7_x25519_scalar_mult_generic_masked
+
+%endif
+%endif