[PATCH] Print die_hash2 for --odr --devel-dump-dies
Tom de Vries
tdevries@suse.de
Mon Feb 15 20:34:17 GMT 2021
Hi,
For --odr, there's an additional hash value, die->u.p1.die_hash2.
Print this with --devel-dump-dies, such that we have:
...
$ dwz --devel-dump-dies --odr odr-struct
114 O f56004ac(cd46c7ab) f56004ac aaa structure_type
...
1ba O f56004ac(cd46c7ab) f56004ac aaa structure_type
...
Used to debug PR27400.
Any comments?
Thanks,
- Tom
Print die_hash2 for --odr --devel-dump-dies
2021-02-15 Tom de Vries <tdevries@suse.de>
* dwz.c (dump_die_with_indent): Print die->u.p1.die_hash2.
---
dwz.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/dwz.c b/dwz.c
index 17921f0..80bc1e7 100644
--- a/dwz.c
+++ b/dwz.c
@@ -5452,11 +5452,13 @@ dump_die_with_indent (int indent, dw_die_ref die)
else
{
const char *name = get_name (die);
- fprintf (stderr, "%*s %x %c %x %x %s %s", indent, "", die->die_offset,
+ fprintf (stderr, "%*s %x %c %x", indent, "", die->die_offset,
die->die_ck_state == CK_KNOWN ? 'O' : 'X',
- (unsigned) die->u.p1.die_hash,
- (unsigned) die->u.p1.die_ref_hash, name ? name : "",
- get_DW_TAG_name (die->die_tag) + 7);
+ (unsigned) die->u.p1.die_hash);
+ if (odr && die->die_odr_state != ODR_NONE)
+ fprintf (stderr, "(%x)", (unsigned) die->u.p1.die_hash2);
+ fprintf (stderr, " %x %s %s", (unsigned) die->u.p1.die_ref_hash,
+ name ? name : "", get_DW_TAG_name (die->die_tag) + 7);
dump_type (die);
}
fprintf (stderr, "\n");
More information about the Dwz
mailing list