qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH v2] The m68k gdbstub SR reg request doesnt include C


From: Lucien Murray-Pitts
Subject: [Qemu-devel] [PATCH v2] The m68k gdbstub SR reg request doesnt include Condition-Codes
Date: Sun, 9 Jun 2019 18:07:13 +0900
User-agent: Mutt/1.11.4 (2019-03-13)

The register request via gdbstub would return the SR part
which contains the Trace/Master/IRQ state flags, but
would be missing the CR (Condition Register) state bits.

This fix adds this support by merging them in the m68k
specific gdbstub handler m68k_cpu_gdb_read_register for SR register.

Signed-off-by: Lucien Murray-Pitts <address@hidden>
---

Notes:
    v1->v2
      - remove superfluous braces from my additional code
      - slightly amended the commit message

 target/m68k/gdbstub.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/target/m68k/gdbstub.c b/target/m68k/gdbstub.c
index fd2bb46c42..5e5aef5c0f 100644
--- a/target/m68k/gdbstub.c
+++ b/target/m68k/gdbstub.c
@@ -35,8 +35,10 @@ int m68k_cpu_gdb_read_register(CPUState *cs, uint8_t 
*mem_buf, int n)
         return gdb_get_reg32(mem_buf, env->aregs[n - 8]);
     } else {
         switch (n) {
-        case 16:
-            return gdb_get_reg32(mem_buf, env->sr);
+        case 16: {
+            /* SR is made of SR+CCR, CCR is many 1bit flags so uses helper */
+            return gdb_get_reg32(mem_buf, env->sr | cpu_m68k_get_ccr(env));
+        }
         case 17:
             return gdb_get_reg32(mem_buf, env->pc);
         }
-- 
2.21.0





reply via email to

[Prev in Thread] Current Thread [Next in Thread]