scripts/replay-dump.py: rejig decoders in event number order

Sort decoder functions to be ascending in order of event number,
same as the decoder tables.

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Message-Id: <20240813050638.446172-3-npiggin@gmail.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20240813202329.1237572-11-alex.bennee@linaro.org>
This commit is contained in:
Nicholas Piggin 2024-08-13 21:23:18 +01:00 committed by Alex Bennée
parent 00140e79bb
commit 01a385fb49

View File

@ -139,6 +139,19 @@ def swallow_bytes(eid, name, dumpfile, nr):
"""Swallow nr bytes of data without looking at it"""
dumpfile.seek(nr, os.SEEK_CUR)
total_insns = 0
def decode_instruction(eid, name, dumpfile):
global total_insns
ins_diff = read_dword(dumpfile)
total_insns += ins_diff
print_event(eid, name, "+ %d -> %d" % (ins_diff, total_insns))
return True
def decode_interrupt(eid, name, dumpfile):
print_event(eid, name)
return True
def decode_exception(eid, name, dumpfile):
print_event(eid, name)
return True
@ -198,15 +211,6 @@ def decode_async_net(eid, name, dumpfile):
print_event(eid, name, "net:%x flags:%x bytes:%d" % (net_id, flags, size))
return True
total_insns = 0
def decode_instruction(eid, name, dumpfile):
global total_insns
ins_diff = read_dword(dumpfile)
total_insns += ins_diff
print_event(eid, name, "+ %d -> %d" % (ins_diff, total_insns))
return True
def decode_shutdown(eid, name, dumpfile):
print_event(eid, name)
return True
@ -222,6 +226,21 @@ def decode_audio_out(eid, name, dumpfile):
print_event(eid, name, "%d" % (audio_data))
return True
def decode_random(eid, name, dumpfile):
ret = read_dword(dumpfile)
size = read_dword(dumpfile)
swallow_bytes(eid, name, dumpfile, size)
if (ret):
print_event(eid, name, "%d bytes (getrandom failed)" % (size))
else:
print_event(eid, name, "%d bytes" % (size))
return True
def decode_clock(eid, name, dumpfile):
clock_data = read_qword(dumpfile)
print_event(eid, name, "0x%x" % (clock_data))
return True
def __decode_checkpoint(eid, name, dumpfile, old):
"""Decode a checkpoint.
@ -252,25 +271,6 @@ def decode_checkpoint_init(eid, name, dumpfile):
print_event(eid, name)
return True
def decode_interrupt(eid, name, dumpfile):
print_event(eid, name)
return True
def decode_clock(eid, name, dumpfile):
clock_data = read_qword(dumpfile)
print_event(eid, name, "0x%x" % (clock_data))
return True
def decode_random(eid, name, dumpfile):
ret = read_dword(dumpfile)
size = read_dword(dumpfile)
swallow_bytes(eid, name, dumpfile, size)
if (ret):
print_event(eid, name, "%d bytes (getrandom failed)" % (size))
else:
print_event(eid, name, "%d bytes" % (size))
return True
def decode_end(eid, name, dumpfile):
print_event(eid, name)
return False