mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-01 06:43:53 -06:00
trace: get rid of generated-events.h/generated-events.c
Currently the generated-events.[ch] files contain the event dstates, constants and TraceEvent structs, while the generated-tracers.[ch] files contain the actual trace probe logic. With the removal of usage of the event enums from the API there is no longer any compelling reason for the separation between these files. The generated-events.h content is only ever needed from the generated-tracers.[ch] files. The enums/constants/structs from generated-events.[ch] are thus moved into the generated-tracers.[ch], so that there is one less file to be generated. Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Reviewed-by: Lluís Vilanova <vilanova@ac.upc.edu> Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-id: 1475588159-30598-17-git-send-email-berrange@redhat.com Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
ca3fa0e88f
commit
347701879c
10 changed files with 70 additions and 150 deletions
|
@ -17,12 +17,52 @@ from tracetool import out
|
|||
|
||||
|
||||
def generate(events, backend):
|
||||
events = [e for e in events
|
||||
if "disable" not in e.properties]
|
||||
active_events = [e for e in events
|
||||
if "disable" not in e.properties]
|
||||
|
||||
out('/* This file is autogenerated by tracetool, do not edit. */',
|
||||
'',
|
||||
'#include "qemu/osdep.h"',
|
||||
'#include "trace.h"',
|
||||
'')
|
||||
backend.generate_begin(events)
|
||||
for event in events:
|
||||
|
||||
for e in events:
|
||||
out('uint16_t %s;' % e.api(e.QEMU_DSTATE))
|
||||
|
||||
for e in events:
|
||||
if "vcpu" in e.properties:
|
||||
vcpu_id = 0
|
||||
else:
|
||||
vcpu_id = "TRACE_VCPU_EVENT_NONE"
|
||||
out('TraceEvent %(event)s = {',
|
||||
' .id = 0,',
|
||||
' .vcpu_id = %(vcpu_id)s,',
|
||||
' .name = \"%(name)s\",',
|
||||
' .sstate = %(sstate)s,',
|
||||
' .dstate = &%(dstate)s ',
|
||||
'};',
|
||||
event = e.api(e.QEMU_EVENT),
|
||||
vcpu_id = vcpu_id,
|
||||
name = e.name,
|
||||
sstate = "TRACE_%s_ENABLED" % e.name.upper(),
|
||||
dstate = e.api(e.QEMU_DSTATE))
|
||||
|
||||
out('TraceEvent *trace_events[] = {')
|
||||
|
||||
for e in events:
|
||||
out(' &%(event)s,', event = e.api(e.QEMU_EVENT))
|
||||
|
||||
out(' NULL,',
|
||||
'};',
|
||||
'')
|
||||
|
||||
out('static void trace_register_events(void)',
|
||||
'{',
|
||||
' trace_event_register_group(trace_events);',
|
||||
'}',
|
||||
'trace_init(trace_register_events)')
|
||||
|
||||
backend.generate_begin(active_events)
|
||||
for event in active_events:
|
||||
backend.generate(event)
|
||||
backend.generate_end(events)
|
||||
backend.generate_end(active_events)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue