qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/36] target/arm: Reorg VHE redirection
@ 2025-09-16 14:22 Richard Henderson
  2025-09-16 14:22 ` [PATCH v2 01/36] target/arm: Introduce KVMID_AA64_SYS_REG64 Richard Henderson
                   ` (36 more replies)
  0 siblings, 37 replies; 87+ messages in thread
From: Richard Henderson @ 2025-09-16 14:22 UTC (permalink / raw)
  To: qemu-devel; +Cc: qemu-arm, peter.maydell

Prerequisite for FEAT_SYSREG128, split out of 

  20250827010453.4059782-1-richard.henderson@linaro.org
  [RFC PATCH 00/61] target/arm: Implement FEAT_SYSREG128

which also reorganizes how ARMCPRegInfo are allocated during registration.


r~


Richard Henderson (36):
  target/arm: Introduce KVMID_AA64_SYS_REG64
  target/arm: Move compare_u64 to helper.c
  target/arm/hvf: Split out sysreg.c.inc
  target/arm/hvf: Reorder DEF_SYSREG arguments
  target/arm/hvf: Add KVMID_TO_HVF, HVF_TO_KVMID
  target/arm/hvf: Remove hvf_sreg_match.key
  target/arm/hvf: Replace hvf_sreg_match with hvf_sreg_list
  target/arm/hvf: Sort the cpreg_indexes array
  target/arm/hvf: Use raw_read, raw_write to access
  target/arm: Use raw_write in cp_reg_reset
  target/arm: Rename all ARMCPRegInfo from opaque to ri
  target/arm: Drop define_one_arm_cp_reg_with_opaque
  target/arm: Restrict the scope of CPREG_FIELD32, CPREG_FIELD64
  target/arm: Replace cpreg_field_is_64bit with cpreg_field_type
  target/arm: Add CP_REG_AA32_64BIT_{SHIFT,MASK}
  target/arm: Rename CP_REG_AA32_NS_{SHIFT,MASK}
  target/arm: Convert init_cpreg_list to g_hash_table_foreach
  target/arm: Remove cp argument to ENCODE_AA64_CP_REG
  target/arm: Reorder ENCODE_AA64_CP_REG arguments
  target/arm: Split out add_cpreg_to_hashtable_aa{32,64}
  target/arm: Improve asserts in define_one_arm_cp_reg
  target/arm: Move cp processing to define_one_arm_cp_reg
  target/arm: Move cpreg elimination to define_one_arm_cp_reg
  target/arm: Add key parameter to add_cpreg_to_hashtable
  target/arm: Split out alloc_cpreg
  target/arm: Hoist the allocation of ARMCPRegInfo
  target/arm: Remove name argument to alloc_cpreg
  target/arm: Move alias setting for wildcards
  target/arm: Move writeback of CP_ANY fields
  target/arm: Move endianness fixup for 32-bit registers
  target/arm: Rename TBFLAG_A64_NV2_MEM_E20 with *_E2H
  target/arm: Split out redirect_cpreg
  target/arm: Redirect VHE FOO_EL1 -> FOO_EL2 during translation
  target/arm: Redirect VHE FOO_EL12 to FOO_EL1 during translation
  target/arm: Rename some cpreg to their aarch64 names
  target/arm: Remove define_arm_vh_e2h_redirects_aliases

 target/arm/cpregs.h            | 111 ++--
 target/arm/cpu.h               |   3 +-
 target/arm/internals.h         |   3 +
 target/arm/kvm-consts.h        |  14 +-
 target/arm/tcg/translate.h     |   2 +
 hw/intc/arm_gicv3_cpuif.c      |  10 +-
 target/arm/cpu.c               |  10 +-
 target/arm/gdbstub.c           |  14 +-
 target/arm/helper.c            | 928 +++++++++++++++------------------
 target/arm/hvf/hvf.c           | 239 ++-------
 target/arm/kvm.c               |  11 -
 target/arm/tcg/hflags.c        |   8 +-
 target/arm/tcg/translate-a64.c |  47 +-
 target/arm/hvf/sysreg.c.inc    | 146 ++++++
 14 files changed, 738 insertions(+), 808 deletions(-)
 create mode 100644 target/arm/hvf/sysreg.c.inc

-- 
2.43.0



^ permalink raw reply	[flat|nested] 87+ messages in thread

end of thread, other threads:[~2025-09-25 15:56 UTC | newest]

Thread overview: 87+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-16 14:22 [PATCH v2 00/36] target/arm: Reorg VHE redirection Richard Henderson
2025-09-16 14:22 ` [PATCH v2 01/36] target/arm: Introduce KVMID_AA64_SYS_REG64 Richard Henderson
2025-09-23 10:40   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 02/36] target/arm: Move compare_u64 to helper.c Richard Henderson
2025-09-23 10:39   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 03/36] target/arm/hvf: Split out sysreg.c.inc Richard Henderson
2025-09-23 10:38   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 04/36] target/arm/hvf: Reorder DEF_SYSREG arguments Richard Henderson
2025-09-23 10:38   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 05/36] target/arm/hvf: Add KVMID_TO_HVF, HVF_TO_KVMID Richard Henderson
2025-09-23 10:39   ` Philippe Mathieu-Daudé
2025-09-25 10:31   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 06/36] target/arm/hvf: Remove hvf_sreg_match.key Richard Henderson
2025-09-25 10:31   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 07/36] target/arm/hvf: Replace hvf_sreg_match with hvf_sreg_list Richard Henderson
2025-09-25 10:32   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 08/36] target/arm/hvf: Sort the cpreg_indexes array Richard Henderson
2025-09-25 10:33   ` Philippe Mathieu-Daudé
2025-09-25 13:23     ` Peter Maydell
2025-09-25 13:38       ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 09/36] target/arm/hvf: Use raw_read, raw_write to access Richard Henderson
2025-09-25 10:35   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 10/36] target/arm: Use raw_write in cp_reg_reset Richard Henderson
2025-09-25 10:36   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 11/36] target/arm: Rename all ARMCPRegInfo from opaque to ri Richard Henderson
2025-09-23 10:31   ` Philippe Mathieu-Daudé
2025-09-25 10:36     ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 12/36] target/arm: Drop define_one_arm_cp_reg_with_opaque Richard Henderson
2025-09-23 10:44   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 13/36] target/arm: Restrict the scope of CPREG_FIELD32, CPREG_FIELD64 Richard Henderson
2025-09-23 10:37   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 14/36] target/arm: Replace cpreg_field_is_64bit with cpreg_field_type Richard Henderson
2025-09-25 10:37   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 15/36] target/arm: Add CP_REG_AA32_64BIT_{SHIFT,MASK} Richard Henderson
2025-09-25 10:38   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 16/36] target/arm: Rename CP_REG_AA32_NS_{SHIFT,MASK} Richard Henderson
2025-09-25 10:39   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 17/36] target/arm: Convert init_cpreg_list to g_hash_table_foreach Richard Henderson
2025-09-25 10:43   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 18/36] target/arm: Remove cp argument to ENCODE_AA64_CP_REG Richard Henderson
2025-09-25 10:45   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 19/36] target/arm: Reorder ENCODE_AA64_CP_REG arguments Richard Henderson
2025-09-23 10:47   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 20/36] target/arm: Split out add_cpreg_to_hashtable_aa{32, 64} Richard Henderson
2025-09-25 10:55   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 21/36] target/arm: Improve asserts in define_one_arm_cp_reg Richard Henderson
2025-09-25 10:59   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 22/36] target/arm: Move cp processing to define_one_arm_cp_reg Richard Henderson
2025-09-25 11:00   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 23/36] target/arm: Move cpreg elimination " Richard Henderson
2025-09-25 13:27   ` Philippe Mathieu-Daudé
2025-09-25 13:44   ` Peter Maydell
2025-09-16 14:22 ` [PATCH v2 24/36] target/arm: Add key parameter to add_cpreg_to_hashtable Richard Henderson
2025-09-25 11:07   ` Philippe Mathieu-Daudé
2025-09-25 14:51     ` Peter Maydell
2025-09-25 15:54       ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 25/36] target/arm: Split out alloc_cpreg Richard Henderson
2025-09-25 11:09   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 26/36] target/arm: Hoist the allocation of ARMCPRegInfo Richard Henderson
2025-09-25 11:13   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 27/36] target/arm: Remove name argument to alloc_cpreg Richard Henderson
2025-09-25 11:15   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 28/36] target/arm: Move alias setting for wildcards Richard Henderson
2025-09-25 11:40   ` Philippe Mathieu-Daudé
2025-09-25 14:55   ` Peter Maydell
2025-09-16 14:22 ` [PATCH v2 29/36] target/arm: Move writeback of CP_ANY fields Richard Henderson
2025-09-25 11:43   ` Philippe Mathieu-Daudé
2025-09-25 11:43   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 30/36] target/arm: Move endianness fixup for 32-bit registers Richard Henderson
2025-09-25 11:49   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 31/36] target/arm: Rename TBFLAG_A64_NV2_MEM_E20 with *_E2H Richard Henderson
2025-09-25 11:29   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 32/36] target/arm: Split out redirect_cpreg Richard Henderson
2025-09-25 11:30   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 33/36] target/arm: Redirect VHE FOO_EL1 -> FOO_EL2 during translation Richard Henderson
2025-09-25 13:27   ` Philippe Mathieu-Daudé
2025-09-25 13:54   ` Peter Maydell
2025-09-25 14:10     ` Peter Maydell
2025-09-16 14:22 ` [PATCH v2 34/36] target/arm: Redirect VHE FOO_EL12 to FOO_EL1 " Richard Henderson
2025-09-25 13:27   ` Philippe Mathieu-Daudé
2025-09-25 14:27   ` Peter Maydell
2025-09-16 14:22 ` [PATCH v2 35/36] target/arm: Rename some cpreg to their aarch64 names Richard Henderson
2025-09-25 11:32   ` Philippe Mathieu-Daudé
2025-09-16 14:22 ` [PATCH v2 36/36] target/arm: Remove define_arm_vh_e2h_redirects_aliases Richard Henderson
2025-09-25 13:27   ` Philippe Mathieu-Daudé
2025-09-25 14:37   ` Peter Maydell
2025-09-25 15:10 ` [PATCH v2 00/36] target/arm: Reorg VHE redirection Peter Maydell

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).