]> xenbits.xensource.com Git - qemu-xen.git/commitdiff
accel/tcg: Introduce CF_BP_PAGE
authorRichard Henderson <richard.henderson@linaro.org>
Fri, 22 Mar 2024 02:54:11 +0000 (16:54 -1000)
committerRichard Henderson <richard.henderson@linaro.org>
Mon, 6 May 2024 19:55:51 +0000 (12:55 -0700)
Record the fact that we've found a breakpoint on the page
in which a TranslationBlock is running.

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
accel/tcg/cpu-exec.c
include/exec/translation-block.h

index 225e5fbd3e182a2a19532105369e490ba2c59d1b..6a764f527b751074a5eab32599c508fb74e761fb 100644 (file)
@@ -371,7 +371,7 @@ static bool check_for_breakpoints_slow(CPUState *cpu, vaddr pc,
      * breakpoints are removed.
      */
     if (match_page) {
-        *cflags = (*cflags & ~CF_COUNT_MASK) | CF_NO_GOTO_TB | 1;
+        *cflags = (*cflags & ~CF_COUNT_MASK) | CF_NO_GOTO_TB | CF_BP_PAGE | 1;
     }
     return false;
 }
index 48211c890a7573f8264f46426031403c9f58e5a7..a6d1af6e9bee968dbe01f6804178a72ed168ce7b 100644 (file)
@@ -77,6 +77,7 @@ struct TranslationBlock {
 #define CF_PARALLEL      0x00008000 /* Generate code for a parallel context */
 #define CF_NOIRQ         0x00010000 /* Generate an uninterruptible TB */
 #define CF_PCREL         0x00020000 /* Opcodes in TB are PC-relative */
+#define CF_BP_PAGE       0x00040000 /* Breakpoint present in code page */
 #define CF_CLUSTER_MASK  0xff000000 /* Top 8 bits are cluster ID */
 #define CF_CLUSTER_SHIFT 24