OSDN Git Service

tracetool: Add module for the 'h' format
authorLluís Vilanova <vilanova@ac.upc.edu>
Tue, 3 Apr 2012 18:47:50 +0000 (20:47 +0200)
committerStefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Wed, 18 Apr 2012 13:02:59 +0000 (14:02 +0100)
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
scripts/tracetool/format/h.py [new file with mode: 0644]

diff --git a/scripts/tracetool/format/h.py b/scripts/tracetool/format/h.py
new file mode 100644 (file)
index 0000000..6ffb3c2
--- /dev/null
@@ -0,0 +1,45 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+"""
+Generate .h file.
+"""
+
+__author__     = "Lluís Vilanova <vilanova@ac.upc.edu>"
+__copyright__  = "Copyright 2012, Lluís Vilanova <vilanova@ac.upc.edu>"
+__license__    = "GPL version 2 or (at your option) any later version"
+
+__maintainer__ = "Stefan Hajnoczi"
+__email__      = "stefanha@linux.vnet.ibm.com"
+
+
+from tracetool import out
+
+
+def begin(events):
+    out('/* This file is autogenerated by tracetool, do not edit. */',
+        '',
+        '#ifndef TRACE_H',
+        '#define TRACE_H',
+        '',
+        '#include "qemu-common.h"')
+
+def end(events):
+    for e in events:
+        if "disable" in e.properties:
+            enabled = 0
+        else:
+            enabled = 1
+        out('#define TRACE_%s_ENABLED %d' % (e.name.upper(), enabled))
+    out('',
+        '#endif /* TRACE_H */')
+
+def nop(events):
+    for e in events:
+        out('',
+            'static inline void trace_%(name)s(%(args)s)',
+            '{',
+            '}',
+            name = e.name,
+            args = e.args,
+            )