qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: qemu-arm@nongnu.org
Subject: [PATCH v4 0/9] Implement Most ARMv8.3 Pointer Authentication Features
Date: Mon, 21 Aug 2023 21:25:21 -0700	[thread overview]
Message-ID: <20230822042530.1026751-1-richard.henderson@linaro.org> (raw)

This is an update of Aaron's v3 [1].
There are a fair number of changes beyond a mere rebase:

  * Updates to the test cases which fail with the new features.
  * Updates to the documentation.
  * Preserve pauth feature set when changing pauth algorithm.
  * Rearrange feature detection:
     - Add ARMPauthFeature
     - Use it with isar_feature_pauth_feature
     - Remove many of the isar predicates
    The pauth_auth and pauth_addpac routines wind up making lots
    of tests against the pauth feature set.  Rather than recompute
    the feature set many times for each predicate, compute it once
    and compare against the enumerators.
  * Algorithmic simplification of Pauth2 and FPAC using cmp_mask.

r~

[1] https://patchew.org/QEMU/20230322202541.1404058-1-aaron@os.amperecomputing.com/

Aaron Lindsay (6):
  target/arm: Add ID_AA64ISAR2_EL1
  target/arm: Add feature detection for FEAT_Pauth2 and extensions
  target/arm: Implement FEAT_EPAC
  target/arm: Implement FEAT_Pauth2
  targer/arm: Inform helpers whether a PAC instruction is 'combined'
  target/arm: Implement FEAT_FPAC and FEAT_FPACCOMBINE

Richard Henderson (3):
  tests/tcg/aarch64: Adjust pauth tests for FEAT_FPAC
  target/arm: Don't change pauth features when changing algorithm
  target/arm: Implement FEAT_PACQARMA3

 docs/system/arm/cpu-features.rst  |  21 ++--
 docs/system/arm/emulation.rst     |   7 ++
 target/arm/cpu.h                  |  51 +++++++--
 target/arm/syndrome.h             |   7 ++
 target/arm/tcg/helper-a64.h       |   4 +
 target/arm/arm-qmp-cmds.c         |   2 +-
 target/arm/cpu64.c                |  86 ++++++++++----
 target/arm/helper.c               |   4 +-
 target/arm/hvf/hvf.c              |   1 +
 target/arm/kvm64.c                |   2 +
 target/arm/tcg/cpu64.c            |   2 +
 target/arm/tcg/pauth_helper.c     | 180 ++++++++++++++++++++++++------
 target/arm/tcg/translate-a64.c    |  12 +-
 tests/qtest/arm-cpu-features.c    |  12 +-
 tests/tcg/aarch64/pauth-2.c       |  61 ++++++++--
 tests/tcg/aarch64/pauth-4.c       |  28 ++++-
 tests/tcg/aarch64/pauth-5.c       |  20 ++++
 tests/tcg/aarch64/Makefile.target |   5 +-
 18 files changed, 409 insertions(+), 96 deletions(-)

-- 
2.34.1



             reply	other threads:[~2023-08-22  4:27 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-22  4:25 Richard Henderson [this message]
2023-08-22  4:25 ` [PATCH v4 1/9] tests/tcg/aarch64: Adjust pauth tests for FEAT_FPAC Richard Henderson
2023-08-29 12:52   ` Peter Maydell
2023-08-29 22:05     ` Richard Henderson
2023-08-22  4:25 ` [PATCH v4 2/9] target/arm: Add ID_AA64ISAR2_EL1 Richard Henderson
2023-08-22  6:14   ` Philippe Mathieu-Daudé
2023-08-22  4:25 ` [PATCH v4 3/9] target/arm: Add feature detection for FEAT_Pauth2 and extensions Richard Henderson
2023-08-29 13:00   ` Peter Maydell
2023-08-22  4:25 ` [PATCH v4 4/9] target/arm: Don't change pauth features when changing algorithm Richard Henderson
2023-08-29 13:05   ` Peter Maydell
2023-08-22  4:25 ` [PATCH v4 5/9] target/arm: Implement FEAT_PACQARMA3 Richard Henderson
2023-08-22  4:25 ` [PATCH v4 6/9] target/arm: Implement FEAT_EPAC Richard Henderson
2023-08-22  4:25 ` [PATCH v4 7/9] target/arm: Implement FEAT_Pauth2 Richard Henderson
2023-08-22  4:25 ` [PATCH v4 8/9] targer/arm: Inform helpers whether a PAC instruction is 'combined' Richard Henderson
2023-08-22  6:28   ` Philippe Mathieu-Daudé
2023-08-22  4:25 ` [PATCH v4 9/9] target/arm: Implement FEAT_FPAC and FEAT_FPACCOMBINE Richard Henderson
2023-08-22  9:40 ` [PATCH v4 0/9] Implement Most ARMv8.3 Pointer Authentication Features Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230822042530.1026751-1-richard.henderson@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=qemu-arm@nongnu.org \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).