From 1da77539da4bf6151baac656f48f00eff544a448 Mon Sep 17 00:00:00 2001 From: Takashi Kokubun Date: Sat, 1 Apr 2023 00:19:27 -0700 Subject: gdb: Don't dump params and locals for C frames --- misc/gdb.py | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'misc') diff --git a/misc/gdb.py b/misc/gdb.py index 2c2b94f5dc..06f0d16443 100644 --- a/misc/gdb.py +++ b/misc/gdb.py @@ -46,17 +46,18 @@ class CFP(gdb.Command): gdb.execute(f'p *({cfp})') print() - local_size = self.get_int(f'{cfp}->iseq->body->local_table_size - {cfp}->iseq->body->param.size') - param_size = self.get_int(f'{cfp}->iseq->body->param.size') - print(f'Params (size={param_size}):') - for i in range(-3 - local_size - param_size, -3 - local_size): - self.print_stack(cfp, i, self.rp(cfp, i)) - print() - - print(f'Locals (size={local_size}):') - for i in range(-3 - local_size, -3): - self.print_stack(cfp, i, self.rp(cfp, i)) - print() + if self.get_int(f'{cfp}->iseq'): + local_size = self.get_int(f'{cfp}->iseq->body->local_table_size - {cfp}->iseq->body->param.size') + param_size = self.get_int(f'{cfp}->iseq->body->param.size') + print(f'Params (size={param_size}):') + for i in range(-3 - local_size - param_size, -3 - local_size): + self.print_stack(cfp, i, self.rp(cfp, i)) + print() + + print(f'Locals (size={local_size}):') + for i in range(-3 - local_size, -3): + self.print_stack(cfp, i, self.rp(cfp, i)) + print() print('Env:') self.print_stack(cfp, -3, self.rp(cfp, -3)) -- cgit v1.2.1