From 1dad2ce97345f3424c4990cb232b40a35d5e936b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Vilanova?= Date: Sun, 23 Feb 2014 20:37:40 +0100 Subject: trace: [tracetool] Minimize the amount of per-backend code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Backends now only contain the essential backend-specific code, and most of the work is moved to frontend code. Signed-off-by: LluĂ­s Vilanova Signed-off-by: Stefan Hajnoczi --- scripts/tracetool/format/d.py | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to 'scripts/tracetool/format/d.py') diff --git a/scripts/tracetool/format/d.py b/scripts/tracetool/format/d.py index 74ee0d3..46eebb1 100644 --- a/scripts/tracetool/format/d.py +++ b/scripts/tracetool/format/d.py @@ -16,5 +16,27 @@ __email__ = "stefanha@linux.vnet.ibm.com" from tracetool import out -def begin(events): - out('/* This file is autogenerated by tracetool, do not edit. */') +def generate(events, backend): + events = [e for e in events + if "disable" not in e.properties] + + out('/* This file is autogenerated by tracetool, do not edit. */' + '', + 'provider qemu {') + + for e in events: + args = str(e.args) + + # DTrace provider syntax expects foo() for empty + # params, not foo(void) + if args == 'void': + args = '' + + # Define prototype for probe arguments + out('', + 'probe %(name)s(%(args)s);', + name=e.name, + args=args) + + out('', + '};') -- cgit v1.1