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

Reply via email to