gmp: extensions for chrony

- compile nextprime, sec_div and sqr_diag_addlsh1
- updated symbols and hash

Fixes #4526
This commit is contained in:
Roland Bär 2022-06-11 10:03:46 +02:00 committed by Christian Helmuth
parent 88db584566
commit 789a60278c
4 changed files with 158 additions and 48 deletions

View File

@ -10,7 +10,7 @@ SRC_C += assert.c compat.c errno.c extract-dbl.c invalid.c \
mp_minv_tab.c mp_get_fns.c mp_set_fns.c rand.c randclr.c \
randdef.c randiset.c randlc2s.c randlc2x.c randmt.c \
randmts.c rands.c randsd.c randsdui.c randbui.c randmui.c \
version.c tal-reent.c
version.c tal-reent.c nextprime.c
#
# Source codes from subdirectories

View File

@ -4,8 +4,7 @@ GMP_MPN_DIR = $(GMP_DIR)/mpn
# this file uses the 'sdiv_qrnnd' symbol which is not defined
FILTER_OUT += udiv_w_sdiv.c
FILTER_OUT += pre_divrem_1.c sec_div.c sec_pi1_div.c copyi.c copyd.c
FILTER_OUT += pre_divrem_1.c sec_pi1_div.c copyi.c copyd.c
# add x86_64-specific assembly files and filter out the generic C files if needed
@ -13,6 +12,8 @@ SRC_ASM += copyd.asm copyi.asm invert_limb.asm invert_limb_table.asm
CC_OPT_add_n = -DOPERATION_add_n
CC_OPT_sub_n = -DOPERATION_sub_n
CC_OPT_sec_aors_1 = -DOPERATION_sec_add_1
CC_OPT_sec_div = -DOPERATION_sec_div_r
FILTER_OUT += popham.c
@ -23,7 +24,7 @@ include $(REP_DIR)/lib/mk/gmp.inc
PWD := $(shell pwd)
SRC_O += $(SRC_ASM:.asm=.o) hamdist.o popcount.o
SRC_O += $(SRC_ASM:.asm=.o) hamdist.o popcount.o sqr_diag_addlsh1.o
#
# Create execution environment for the m4-ccas tool, which is used by the gmp

View File

@ -13,7 +13,7 @@ __gmp_default_allocate T
__gmp_default_fp_limb_precision D 8
__gmp_default_free T
__gmp_default_reallocate T
__gmp_digit_value_tab R 480
__gmp_digit_value_tab R 464
__gmp_divide_by_zero T
__gmp_doprnt T
__gmp_doprnt_integer T
@ -22,6 +22,7 @@ __gmp_doscan T
__gmp_errno B 4
__gmp_exception T
__gmp_extract_double T
__gmp_fac2cnt_table R 40
__gmp_fib_table R 760
__gmp_fprintf T
__gmp_fprintf_funs D 32
@ -29,9 +30,15 @@ __gmp_free_func D 8
__gmp_fscanf T
__gmp_fscanf_funs D 32
__gmp_get_memory_functions T
__gmp_init_primesieve T
__gmp_invalid_operation T
__gmp_jacobi_table R 208
__gmp_junk B 4
__gmp_limbroots_table R 64
__gmp_mt_recalc_buffer T
__gmp_nextprime T
__gmp_odd2fac_table R 136
__gmp_oddfac_table R 544
__gmp_printf T
__gmp_randclear T
__gmp_randclear_mt T
@ -76,10 +83,12 @@ __gmpf_add T
__gmpf_add_ui T
__gmpf_ceil T
__gmpf_clear T
__gmpf_clears T
__gmpf_cmp T
__gmpf_cmp_d T
__gmpf_cmp_si T
__gmpf_cmp_ui T
__gmpf_cmp_z T
__gmpf_div T
__gmpf_div_2exp T
__gmpf_div_ui T
@ -106,6 +115,7 @@ __gmpf_init_set_d T
__gmpf_init_set_si T
__gmpf_init_set_str T
__gmpf_init_set_ui T
__gmpf_inits T
__gmpf_inp_str T
__gmpf_integer_p T
__gmpf_mul T
@ -138,37 +148,57 @@ __gmpf_ui_sub T
__gmpf_urandomb T
__gmpn_add T
__gmpn_add_1 T
__gmpn_add_err1_n T
__gmpn_add_err2_n T
__gmpn_add_err3_n T
__gmpn_add_n T
__gmpn_add_n_sub_n T
__gmpn_addmul_1 T
__gmpn_addmul_2 T
__gmpn_addsub_n T
__gmpn_bases R 10280
__gmpn_bc_mulmod_bnm1 T
__gmpn_bc_set_str T
__gmpn_bdiv_dbm1c T
__gmpn_bdivmod T
__gmpn_bdiv_q T
__gmpn_bdiv_q_1 T
__gmpn_bdiv_q_itch T
__gmpn_bdiv_qr T
__gmpn_bdiv_qr_itch T
__gmpn_binvert T
__gmpn_binvert_itch T
__gmpn_broot T
__gmpn_broot_invm1 T
__gmpn_brootinv T
__gmpn_bsqrt T
__gmpn_bsqrtinv T
__gmpn_cmp T
__gmpn_cnd_add_n T
__gmpn_cnd_sub_n T
__gmpn_cnd_swap T
__gmpn_com T
__gmpn_copyd T
__gmpn_copyi T
__gmpn_dc_bdiv_q T
__gmpn_dc_bdiv_q_n T
__gmpn_dc_bdiv_q_n_itch T
__gmpn_dc_bdiv_qr T
__gmpn_dc_bdiv_qr_n T
__gmpn_dc_bdiv_qr_n_itch T
__gmpn_dc_div_q T
__gmpn_dc_div_qr T
__gmpn_dc_div_qr_n T
__gmpn_dc_divappr_q T
__gmpn_dc_divappr_q_n T
__gmpn_dc_divrem_n T
__gmpn_dc_set_str T
__gmpn_dcpi1_bdiv_q T
__gmpn_dcpi1_bdiv_q_n T
__gmpn_dcpi1_bdiv_q_n_itch T
__gmpn_dcpi1_bdiv_qr T
__gmpn_dcpi1_bdiv_qr_n T
__gmpn_dcpi1_bdiv_qr_n_itch T
__gmpn_dcpi1_div_q T
__gmpn_dcpi1_div_qr T
__gmpn_dcpi1_div_qr_n T
__gmpn_dcpi1_divappr_q T
__gmpn_dcpi1_divappr_q_n T
__gmpn_div_q T
__gmpn_div_qr_1 T
__gmpn_div_qr_1n_pi1 T
__gmpn_div_qr_2 T
__gmpn_div_qr_2n_pi1 T
__gmpn_div_qr_2u_pi1 T
__gmpn_divexact T
__gmpn_divexact_1 T
__gmpn_divexact_by3 T
__gmpn_divexact_by3c T
__gmpn_divexact_itch T
__gmpn_divisible_p T
__gmpn_divmod_1 T
__gmpn_divrem T
@ -180,36 +210,45 @@ __gmpn_fft_next_size T
__gmpn_fib2_ui T
__gmpn_gcd T
__gmpn_gcd_1 T
__gmpn_gcd_lehmer_n T
__gmpn_gcd_subdiv_step T
__gmpn_gcdext T
__gmpn_gcdext_1 T
__gmpn_gcdext_hook T
__gmpn_gcdext_lehmer_n T
__gmpn_gcdext_subdiv_step T
__gmpn_get_d T
__gmpn_get_str T
__gmpn_hamdist T
__gmpn_hgcd T
__gmpn_hgcd2 T
__gmpn_hgcd2_jacobi T
__gmpn_hgcd_appr T
__gmpn_hgcd_appr_itch T
__gmpn_hgcd_itch T
__gmpn_hgcd_lehmer T
__gmpn_hgcd_jacobi T
__gmpn_hgcd_matrix_adjust T
__gmpn_hgcd_matrix_init T
__gmpn_hgcd_matrix_mul T
__gmpn_hgcd_mul_matrix1_inverse_vector T
__gmpn_hgcd_matrix_mul_1 T
__gmpn_hgcd_matrix_update_q T
__gmpn_hgcd_mul_matrix1_vector T
__gmpn_hgcd_reduce T
__gmpn_hgcd_reduce_itch T
__gmpn_hgcd_step T
__gmpn_invert T
__gmpn_invert_itch T
__gmpn_invert_limb T
__gmpn_invertappr T
__gmpn_jacobi_2 T
__gmpn_jacobi_base T
__gmpn_kara_mul_n T
__gmpn_kara_sqr_n T
__gmpn_jacobi_n T
__gmpn_lshift T
__gmpn_lshiftc T
__gmpn_matrix22_mul T
__gmpn_matrix22_mul1_inverse_vector T
__gmpn_matrix22_mul_itch T
__gmpn_matrix22_mul_strassen T
__gmpn_mod_1 T
__gmpn_mod_1s_1p T
__gmpn_mod_1s_1p_cps T
__gmpn_mod_1_1p T
__gmpn_mod_1_1p_cps T
__gmpn_mod_1s_2p T
__gmpn_mod_1s_2p_cps T
__gmpn_mod_1s_3p T
@ -222,7 +261,9 @@ __gmpn_modexact_1c_odd T
__gmpn_mu_bdiv_q T
__gmpn_mu_bdiv_q_itch T
__gmpn_mu_bdiv_qr T
__gmpn_mu_bdiv_qr_itch T
__gmpn_mu_div_q T
__gmpn_mu_div_q_itch T
__gmpn_mu_div_qr T
__gmpn_mu_div_qr_choose_in T
__gmpn_mu_div_qr_itch T
@ -234,70 +275,120 @@ __gmpn_mul_1 T
__gmpn_mul_1c T
__gmpn_mul_basecase T
__gmpn_mul_fft T
__gmpn_mul_fft_full T
__gmpn_mul_n T
__gmpn_mullow_basecase T
__gmpn_mullow_n T
__gmpn_neg_n T
__gmpn_mullo_basecase T
__gmpn_mullo_n T
__gmpn_mulmid T
__gmpn_mulmid_basecase T
__gmpn_mulmid_n T
__gmpn_mulmod_bnm1 T
__gmpn_mulmod_bnm1_next_size T
__gmpn_neg T
__gmpn_ni_invertappr T
__gmpn_nussbaumer_mul T
__gmpn_perfect_power_p T
__gmpn_perfect_square_p T
__gmpn_pi1_bdiv_q_1 T
__gmpn_popcount T
__gmpn_pow_1 T
__gmpn_powlo T
__gmpn_powm T
__gmpn_powm_sec T
__gmpn_preinv_dc_div_qr T
__gmpn_preinv_dc_divappr_q T
__gmpn_preinv_divrem_1 T
__gmpn_preinv_mod_1 T
__gmpn_preinv_mu_div_qr T
__gmpn_preinv_mu_div_qr_itch T
__gmpn_preinv_mu_divappr_q T
__gmpn_random T
__gmpn_random2 T
__gmpn_redc_1 T
__gmpn_redc_2 T
__gmpn_redc_n T
__gmpn_remove T
__gmpn_rootrem T
__gmpn_rshift T
__gmpn_sb_bdiv_q T
__gmpn_sb_bdiv_qr T
__gmpn_sb_div_q T
__gmpn_sb_div_qr T
__gmpn_sb_divappr_q T
__gmpn_sb_divrem_mn T
__gmpn_sbpi1_bdiv_q T
__gmpn_sbpi1_bdiv_qr T
__gmpn_sbpi1_div_q T
__gmpn_sbpi1_div_qr T
__gmpn_sbpi1_divappr_q T
__gmpn_scan0 T
__gmpn_scan1 T
__gmpn_sec_add_1 T
__gmpn_sec_add_1_itch T
__gmpn_sec_div_r T
__gmpn_sec_div_r_itch T
__gmpn_sec_invert T
__gmpn_sec_invert_itch T
__gmpn_sec_mul T
__gmpn_sec_mul_itch T
__gmpn_sec_powm T
__gmpn_sec_powm_itch T
__gmpn_sec_sqr T
__gmpn_sec_sqr_itch T
__gmpn_sec_tabselect T
__gmpn_set_str T
__gmpn_set_str_compute_powtab T
__gmpn_sizeinbase T
__gmpn_sqr T
__gmpn_sqr_basecase T
__gmpn_sqr_diag_addlsh1 T
__gmpn_sqrlo T
__gmpn_sqrlo_basecase T
__gmpn_sqrmod_bnm1 T
__gmpn_sqrmod_bnm1_next_size T
__gmpn_sqrtrem T
__gmpn_sub T
__gmpn_sub_1 T
__gmpn_sub_err1_n T
__gmpn_sub_err2_n T
__gmpn_sub_err3_n T
__gmpn_sub_n T
__gmpn_subcnd_n T
__gmpn_submul_1 T
__gmpn_tabselect T
__gmpn_tdiv_qr T
__gmpn_toom22_mul T
__gmpn_toom2_sqr T
__gmpn_toom32_mul T
__gmpn_toom33_mul T
__gmpn_toom3_mul_n T
__gmpn_toom3_sqr T
__gmpn_toom3_sqr_n T
__gmpn_toom42_mul T
__gmpn_toom42_mulmid T
__gmpn_toom43_mul T
__gmpn_toom44_mul T
__gmpn_toom4_sqr T
__gmpn_toom52_mul T
__gmpn_toom53_mul T
__gmpn_toom54_mul T
__gmpn_toom62_mul T
__gmpn_toom63_mul T
__gmpn_toom6_sqr T
__gmpn_toom6h_mul T
__gmpn_toom8_sqr T
__gmpn_toom8h_mul T
__gmpn_toom_couple_handling T
__gmpn_toom_eval_dgr3_pm1 T
__gmpn_toom_eval_dgr3_pm2 T
__gmpn_toom_eval_pm1 T
__gmpn_toom_eval_pm2 T
__gmpn_toom_eval_pm2exp T
__gmpn_toom_eval_pm2rexp T
__gmpn_toom_interpolate_12pts T
__gmpn_toom_interpolate_16pts T
__gmpn_toom_interpolate_5pts T
__gmpn_toom_interpolate_6pts T
__gmpn_toom_interpolate_7pts T
__gmpn_toom_interpolate_8pts T
__gmpn_trialdiv T
__gmpn_zero T
__gmpn_zero_p T
__gmpq_abs T
__gmpq_add T
__gmpq_canonicalize T
__gmpq_clear T
__gmpq_clears T
__gmpq_cmp T
__gmpq_cmp_si T
__gmpq_cmp_ui T
__gmpq_cmp_z T
__gmpq_div T
__gmpq_div_2exp T
__gmpq_equal T
@ -306,6 +397,7 @@ __gmpq_get_den T
__gmpq_get_num T
__gmpq_get_str T
__gmpq_init T
__gmpq_inits T
__gmpq_inp_str T
__gmpq_inv T
__gmpq_mul T
@ -323,6 +415,7 @@ __gmpq_set_ui T
__gmpq_set_z T
__gmpq_sub T
__gmpq_swap T
__gmpz_2fac_ui T
__gmpz_abs T
__gmpz_add T
__gmpz_add_ui T
@ -343,6 +436,7 @@ __gmpz_cdiv_r_2exp T
__gmpz_cdiv_r_ui T
__gmpz_cdiv_ui T
__gmpz_clear T
__gmpz_clears T
__gmpz_clrbit T
__gmpz_cmp T
__gmpz_cmp_d T
@ -400,6 +494,7 @@ __gmpz_init_set_d T
__gmpz_init_set_si T
__gmpz_init_set_str T
__gmpz_init_set_ui T
__gmpz_inits T
__gmpz_inp_raw T
__gmpz_inp_str T
__gmpz_inp_str_nowhite T
@ -411,8 +506,13 @@ __gmpz_kronecker_ui T
__gmpz_lcm T
__gmpz_lcm_ui T
__gmpz_legendre T
__gmpz_limbs_finish T
__gmpz_limbs_modify T
__gmpz_limbs_read T
__gmpz_limbs_write T
__gmpz_lucnum2_ui T
__gmpz_lucnum_ui T
__gmpz_mfac_uiui T
__gmpz_millerrabin T
__gmpz_mod T
__gmpz_mul T
@ -422,6 +522,7 @@ __gmpz_mul_ui T
__gmpz_n_pow_ui T
__gmpz_neg T
__gmpz_nextprime T
__gmpz_oddfac_1 T
__gmpz_out_raw T
__gmpz_out_str T
__gmpz_perfect_power_p T
@ -429,13 +530,17 @@ __gmpz_perfect_square_p T
__gmpz_popcount T
__gmpz_pow_ui T
__gmpz_powm T
__gmpz_powm_sec T
__gmpz_powm_ui T
__gmpz_primorial_ui T
__gmpz_probab_prime_p T
__gmpz_prodlimbs T
__gmpz_random T
__gmpz_random2 T
__gmpz_realloc T
__gmpz_realloc2 T
__gmpz_remove T
__gmpz_roinit_n T
__gmpz_root T
__gmpz_rootrem T
__gmpz_rrandomb T
@ -475,3 +580,7 @@ __gmpz_ui_sub T
__gmpz_urandomb T
__gmpz_urandomm T
__gmpz_xor T
__gnu_Unwind_Find_exidx T
dl_unwind_find_exidx W
mpn_div_qr_1n_pi2 T
mpn_div_qr_1u_pi2 T

View File

@ -1 +1 @@
2022-05-24 982fbc9f71641fafa7ed3ab0cd438b0ac0dc158e
2022-06-06 b4d8311bc69e669ffc135f7a18df3866db4a4e88