mbox series

[v2,0/7] Implement Most ARMv8.3 Pointer Authentication Features

Message ID 20230222193544.3392713-1-aaron@os.amperecomputing.com (mailing list archive)
Headers show
Series Implement Most ARMv8.3 Pointer Authentication Features | expand

Message

Aaron Lindsay Feb. 22, 2023, 7:35 p.m. UTC
Changes from v1 of this patchset [0]:

* Changed ISAR feature detection to use '>=' rather than '=='
* Switched around the logic handling EPAC/Pauth2 to play nicely with the
  '>=' ISAR feature detection for EPAC
* Re-organized a stray fragment of a patch to be bisect-friendly
* Moved call-sites for GETPC() to top-level helpers
* Calculate FPAC error code inside syn_pacfail() instead of the
  callsite. 

I have NOT yet made any changes to the properties/documentation (see
"target/arm: Add CPU properties for most v8.3 PAC features") since my
previous patchset - I'm planning to await further discussion about the
appropriate way to organize them before making those changes and
particularly welcome further review there.

-Aaron

[0] https://lists.nongnu.org/archive/html/qemu-devel/2023-02/msg00660.html

Aaron Lindsay (7):
  target/arm: v8.3 PAC ID_AA64ISAR[12] feature-detection
  target/arm: Implement v8.3 QARMA3 PAC cipher
  target/arm: Implement v8.3 EnhancedPAC
  target/arm: Implement v8.3 Pauth2
  targer/arm: Inform helpers whether a PAC instruction is 'combined'
  target/arm: Implement v8.3 FPAC and FPACCOMBINE
  target/arm: Add CPU properties for most v8.3 PAC features

 target/arm/cpu.h           |  66 ++++++++++++-
 target/arm/cpu64.c         |  81 +++++++++++++---
 target/arm/helper-a64.h    |   4 +
 target/arm/helper.c        |   4 +-
 target/arm/pauth_helper.c  | 192 +++++++++++++++++++++++++++++--------
 target/arm/syndrome.h      |   7 ++
 target/arm/translate-a64.c |  20 ++--
 7 files changed, 307 insertions(+), 67 deletions(-)