diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2020-05-11 16:51:48 +0100 |
---|---|---|
committer | Richard Sandiford <richard.sandiford@arm.com> | 2020-05-11 16:51:48 +0100 |
commit | d8bd9d32e8b3e7c2a1bb6fc920efe6691fb5e8b6 (patch) | |
tree | cf0ac88538a214da81569718807c2786e012bddf /gcc/tree-pretty-print.c | |
parent | 7c00c55914f89bf46ca5d01c7d76e2fcedf795f9 (diff) | |
download | gcc-d8bd9d32e8b3e7c2a1bb6fc920efe6691fb5e8b6.zip gcc-d8bd9d32e8b3e7c2a1bb6fc920efe6691fb5e8b6.tar.gz gcc-d8bd9d32e8b3e7c2a1bb6fc920efe6691fb5e8b6.tar.bz2 |
tree-pretty-print: Handle boolean types
AVX512-style masks and SVE-style predicates can be difficult
to debug in gimple dumps, since the types are printed like this:
vector(4) <unnamed type> foo;
Some important details are hidden by that <unnamed type>,
such as the number of bits in an element and whether the type
is signed or unsigned.
This patch uses an ad-hoc syntax for printing unnamed
boolean types. Normal frontend ones should be handled
by the earlier TYPE_NAME code.
2020-05-11 Richard Sandiford <richard.sandiford@arm.com>
gcc/
* tree-pretty-print.c (dump_generic_node): Handle BOOLEAN_TYPEs.
Diffstat (limited to 'gcc/tree-pretty-print.c')
-rw-r--r-- | gcc/tree-pretty-print.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c index 885ca8c..f04fd65 100644 --- a/gcc/tree-pretty-print.c +++ b/gcc/tree-pretty-print.c @@ -1761,6 +1761,14 @@ dump_generic_node (pretty_printer *pp, tree node, int spc, dump_flags_t flags, pp_decimal_int (pp, TYPE_PRECISION (node)); pp_greater (pp); } + else if (TREE_CODE (node) == BOOLEAN_TYPE) + { + pp_string (pp, (TYPE_UNSIGNED (node) + ? "<unsigned-boolean:" + : "<signed-boolean:")); + pp_decimal_int (pp, TYPE_PRECISION (node)); + pp_greater (pp); + } else if (TREE_CODE (node) == VOID_TYPE) pp_string (pp, "void"); else |