pretty-print SSA names

This adds the SSA name version to the gdb pretty-printing of SSA names.

(gdb) p (tree)$1
$5 = <ssa_name 0x7ffff68435a0 323>

2020-04-16  Richard Biener  <rguenther@suse.de>

	* gdbhooks.py (TreePrinter): Print SSA_NAME_VERSION of SSA_NAME
	nodes.
This commit is contained in:
Richard Biener 2020-04-15 14:50:00 +02:00
parent c8d88bf26e
commit fc6b42bbaa
2 changed files with 8 additions and 0 deletions

View file

@ -1,3 +1,8 @@
2020-04-16 Richard Biener <rguenther@suse.de>
* gdbhooks.py (TreePrinter): Print SSA_NAME_VERSION of SSA_NAME
nodes.
2020-04-15 Uroš Bizjak <ubizjak@gmail.com>
PR target/94603

View file

@ -154,6 +154,7 @@ tree_code_dict = gdb.types.make_enum_dict(gdb.lookup_type('enum tree_code'))
# ...and look up specific values for use later:
IDENTIFIER_NODE = tree_code_dict['IDENTIFIER_NODE']
TYPE_DECL = tree_code_dict['TYPE_DECL']
SSA_NAME = tree_code_dict['SSA_NAME']
# Similarly for "enum tree_code_class" (tree.h):
tree_code_class_dict = gdb.types.make_enum_dict(gdb.lookup_type('enum tree_code_class'))
@ -252,6 +253,8 @@ class TreePrinter:
result += ' %s' % tree_TYPE_NAME.DECL_NAME().IDENTIFIER_POINTER()
if self.node.TREE_CODE() == IDENTIFIER_NODE:
result += ' %s' % self.node.IDENTIFIER_POINTER()
elif self.node.TREE_CODE() == SSA_NAME:
result += ' %u' % self.gdbval['base']['u']['version']
# etc
result += '>'
return result