It's possible for an aggregate to be declared in a non-default address
space, but the tree pretty-printer doesn't currently show that address
space in dumps, which can be confusing.  This patch adds printing of
"<address-space-N>" markers for aggregates in non-default address spaces.

OK (now or for stage 1)?

Thanks,

Julian

ChangeLog

gcc/
        * tree-pretty-print.c (dump_generic_node): Emit non-generic
        address space info for aggregates.
---
 gcc/tree-pretty-print.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c
index 986f75d1d5f..909708e80c3 100644
--- a/gcc/tree-pretty-print.c
+++ b/gcc/tree-pretty-print.c
@@ -1937,6 +1937,13 @@ dump_generic_node (pretty_printer *pp, tree node, int 
spc, dump_flags_t flags,
        if (quals & TYPE_QUAL_VOLATILE)
          pp_string (pp, "volatile ");
 
+       if (!ADDR_SPACE_GENERIC_P (TYPE_ADDR_SPACE (node)))
+         {
+           pp_string (pp, "<address-space-");
+           pp_decimal_int (pp, TYPE_ADDR_SPACE (node));
+           pp_string (pp, "> ");
+         }
+
         /* Print the name of the structure.  */
         if (TREE_CODE (node) == RECORD_TYPE)
          pp_string (pp, "struct ");
-- 
2.29.2

Reply via email to