]> git.proxmox.com Git - mirror_qemu.git/commitdiff
target/arm: Enable FEAT_DGH for -cpu max
authorRichard Henderson <richard.henderson@linaro.org>
Fri, 6 May 2022 18:02:40 +0000 (13:02 -0500)
committerPeter Maydell <peter.maydell@linaro.org>
Mon, 9 May 2022 10:47:54 +0000 (11:47 +0100)
This extension concerns not merging memory access, which TCG does
not implement.  Thus we can trivially enable this feature.
Add a comment to handle_hint for the DGH instruction, but no code.

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 20220506180242.216785-23-richard.henderson@linaro.org
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
docs/system/arm/emulation.rst
target/arm/cpu64.c
target/arm/translate-a64.c

index 48522b8e1cdeae1fb461d7a2c785472513821d1e..8ed466bf68e029063f454f67e5af3364b172d1e4 100644 (file)
@@ -17,6 +17,7 @@ the following architecture extensions:
 - FEAT_CSV2_1p2 (Cache speculation variant 2, version 1.2)
 - FEAT_CSV2_2 (Cache speculation variant 2, version 2)
 - FEAT_CSV3 (Cache speculation variant 3)
+- FEAT_DGH (Data gathering hint)
 - FEAT_DIT (Data Independent Timing instructions)
 - FEAT_DPB (DC CVAP instruction)
 - FEAT_Debugv8p2 (Debug changes for v8.2)
index 40f77defb5122bf6f73aa60f3e415c99dcedd503..f55121060dc889e2582ba8c6473e66c8691a30db 100644 (file)
@@ -738,6 +738,7 @@ static void aarch64_max_initfn(Object *obj)
     t = FIELD_DP64(t, ID_AA64ISAR1, SB, 1);       /* FEAT_SB */
     t = FIELD_DP64(t, ID_AA64ISAR1, SPECRES, 1);  /* FEAT_SPECRES */
     t = FIELD_DP64(t, ID_AA64ISAR1, BF16, 1);     /* FEAT_BF16 */
+    t = FIELD_DP64(t, ID_AA64ISAR1, DGH, 1);      /* FEAT_DGH */
     t = FIELD_DP64(t, ID_AA64ISAR1, I8MM, 1);     /* FEAT_I8MM */
     cpu->isar.id_aa64isar1 = t;
 
index 5a02e076b7fc7df371cef176acfb5c39c1f6c672..6a27234a5c4e07bb083d9822a8d6ab39ba488934 100644 (file)
@@ -1427,6 +1427,7 @@ static void handle_hint(DisasContext *s, uint32_t insn,
         break;
     case 0b00100: /* SEV */
     case 0b00101: /* SEVL */
+    case 0b00110: /* DGH */
         /* we treat all as NOP at least for now */
         break;
     case 0b00111: /* XPACLRI */