qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH v3 8/9] tcg: Include liveness info in the dumps


From: Richard Henderson
Subject: [Qemu-devel] [PATCH v3 8/9] tcg: Include liveness info in the dumps
Date: Thu, 23 Jun 2016 20:48:26 -0700

Signed-off-by: Richard Henderson <address@hidden>
---
 tcg/tcg.c | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/tcg/tcg.c b/tcg/tcg.c
index fd92b06..3e4bc99 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -1009,6 +1009,7 @@ void tcg_dump_ops(TCGContext *s)
         const TCGOpDef *def;
         const TCGArg *args;
         TCGOpcode c;
+        long pos = ftell(qemu_logfile);
 
         op = &s->gen_op_buf[oi];
         c = op->opc;
@@ -1133,6 +1134,31 @@ void tcg_dump_ops(TCGContext *s)
                 qemu_log("%s$0x%" TCG_PRIlx, k ? "," : "", args[k]);
             }
         }
+        if (op->life) {
+            unsigned life = op->life;
+
+            for (i = ftell(qemu_logfile) - pos; i < 48; ++i) {
+                putc(' ', qemu_logfile);
+            }
+
+            if (life & (SYNC_ARG * 3)) {
+                qemu_log("  sync:");
+                for (i = 0; i < 2; ++i) {
+                    if (life & (SYNC_ARG << i)) {
+                        qemu_log(" %d", i);
+                    }
+                }
+            }
+            life /= DEAD_ARG;
+            if (life) {
+                qemu_log("  dead:");
+                for (i = 0; life; ++i, life >>= 1) {
+                    if (life & 1) {
+                        qemu_log(" %d", i);
+                    }
+                }
+            }
+        }
         qemu_log("\n");
     }
 }
-- 
2.5.5




reply via email to

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