This is a follow up to https://gmplib.org/list-archives/gmp-devel/2024-August/006261.html and the feedback provided by Niels at https://gmplib.org/list-archives/gmp-devel/2024-October/006267.html
This moves the generation of the m4 defines into the autoconf system (hats off to whomever built that for GMP) as well adds code test for BTI enablement within GMP assembly stubs. Additionally, it also tests that the proper GNU Notes attributes are added with readelf -n. The tests skip on non-aarch64 hardware or when PAC or BTI support is not enabled. Bill Roberts (1): aarch64: support PAC and BTI acinclude.m4 | 33 ++++++++++++ configure.ac | 20 ++++++- mpn/Makeasm.am | 3 +- mpn/arm64/aors_n.asm | 1 + mpn/arm64/aorsmul_1.asm | 1 + mpn/arm64/aorsorrlsh1_n.asm | 1 + mpn/arm64/aorsorrlsh2_n.asm | 1 + mpn/arm64/arm64-defs.m4 | 95 +++++++++++++++++++++++++++++++++ mpn/arm64/bdiv_dbm1c.asm | 1 + mpn/arm64/bdiv_q_1.asm | 1 + mpn/arm64/cnd_aors_n.asm | 1 + mpn/arm64/com.asm | 1 + mpn/arm64/copyd.asm | 1 + mpn/arm64/copyi.asm | 1 + mpn/arm64/divrem_1.asm | 9 +++- mpn/arm64/gcd_11.asm | 1 + mpn/arm64/gcd_22.asm | 1 + mpn/arm64/hamdist.asm | 1 + mpn/arm64/invert_limb.asm | 1 + mpn/arm64/logops_n.asm | 1 + mpn/arm64/lshift.asm | 1 + mpn/arm64/lshiftc.asm | 1 + mpn/arm64/mod_34lsub1.asm | 1 + mpn/arm64/mul_1.asm | 1 + mpn/arm64/popcount.asm | 1 + mpn/arm64/rsh1aors_n.asm | 1 + mpn/arm64/rshift.asm | 1 + mpn/arm64/sec_tabselect.asm | 1 + mpn/arm64/sqr_diag_addlsh1.asm | 1 + tests/mpn/Makefile.am | 43 ++++++++++----- tests/mpn/log-compiler.sh | 21 ++++++++ tests/mpn/t-arm64_bti.c | 86 ++++++++++++++++++++++++++++++ tests/mpn/t-arm64_elf_check.sh | 96 ++++++++++++++++++++++++++++++++++ 33 files changed, 412 insertions(+), 18 deletions(-) create mode 100755 tests/mpn/log-compiler.sh create mode 100644 tests/mpn/t-arm64_bti.c create mode 100755 tests/mpn/t-arm64_elf_check.sh -- 2.46.0 _______________________________________________ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel