tree-pretty-print.c (dump_generic_node, [...]): Handle TYPE_REF_CAN_ALIAS_ALL.
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>
Wed, 24 Nov 2004 16:10:06 +0000 (16:10 +0000)
committerRichard Kenner <kenner@gcc.gnu.org>
Wed, 24 Nov 2004 16:10:06 +0000 (11:10 -0500)
* tree-pretty-print.c (dump_generic_node, case POINTER_TYPE):
Handle TYPE_REF_CAN_ALIAS_ALL.
(print_declaration): Print array dimensions like dump_generic_node.

From-SVN: r91173

gcc/ChangeLog
gcc/tree-pretty-print.c

index 80baf0f40f186d708d866c73f0d7648cfb91420b..9d9423452f06b6c077cb55d306849d494b1717c8 100644 (file)
@@ -1,5 +1,9 @@
 2004-11-24  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
 
+       * tree-pretty-print.c (dump_generic_node, case POINTER_TYPE):
+       Handle TYPE_REF_CAN_ALIAS_ALL.
+       (print_declaration): Print array dimensions like dump_generic_node.
+
        * fold-const.c (operand_equal_p): Remove kludge allowing ARG0 and
        ARG1 to be null; instead define OP_SAME and OP_SAME_NULL and use them.
 
index 6d2977369a012138cb17fd6171c747c810af1dd6..e1e0c63db50f88ee222a3d8beef73d637e7d4ca7 100644 (file)
@@ -397,6 +397,9 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags,
            pp_string (buffer,  "volatile");
          else if (quals & TYPE_QUAL_RESTRICT)
            pp_string (buffer, " restrict");
+
+         if (TYPE_REF_CAN_ALIAS_ALL (node))
+           pp_string (buffer, " {ref-all}");
        }
       break;
 
@@ -1515,13 +1518,18 @@ print_declaration (pretty_printer *buffer, tree t, int spc, int flags)
          pp_character (buffer, '[');
          if (TYPE_DOMAIN (tmp))
            {
-             if (TREE_CODE (TYPE_SIZE (tmp)) == INTEGER_CST)
-               pp_wide_integer (buffer,
-                               TREE_INT_CST_LOW (TYPE_SIZE (tmp)) /
-                               TREE_INT_CST_LOW (TYPE_SIZE (TREE_TYPE (tmp))));
-             else
-               dump_generic_node (buffer, TYPE_SIZE_UNIT (tmp), spc, flags,
-                                  false);
+             if (TYPE_MIN_VALUE (TYPE_DOMAIN (tmp))
+                 && !integer_zerop (TYPE_MIN_VALUE (TYPE_DOMAIN (tmp))))
+               {
+                 dump_generic_node (buffer,
+                                    TYPE_MIN_VALUE (TYPE_DOMAIN (tmp)),
+                                    spc, flags, false);
+                 pp_string (buffer, " .. ");
+               }
+
+             if (TYPE_MAX_VALUE (TYPE_DOMAIN (tmp)))
+               dump_generic_node (buffer, TYPE_MAX_VALUE (TYPE_DOMAIN (tmp)),
+                                  spc, flags, false);
            }
          pp_character (buffer, ']');
          tmp = TREE_TYPE (tmp);