diff options
author | Richard Kenner <kenner@vlsi1.ultra.nyu.edu> | 2004-11-24 16:10:06 +0000 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 2004-11-24 11:10:06 -0500 |
commit | 39123624ff2ab0c737d88382b350937a2ed9bc24 (patch) | |
tree | 4a1bf870d79f91ae11522495f926a1436ad98ab7 /gcc | |
parent | f2ede5d6213c42e75ce7dfeaa98950adfa6de73b (diff) | |
download | gcc-39123624ff2ab0c737d88382b350937a2ed9bc24.zip gcc-39123624ff2ab0c737d88382b350937a2ed9bc24.tar.gz gcc-39123624ff2ab0c737d88382b350937a2ed9bc24.tar.bz2 |
tree-pretty-print.c (dump_generic_node, [...]): Handle TYPE_REF_CAN_ALIAS_ALL.
* 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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/tree-pretty-print.c | 22 |
2 files changed, 19 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 80baf0f..9d94234 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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. diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c index 6d29773..e1e0c63 100644 --- a/gcc/tree-pretty-print.c +++ b/gcc/tree-pretty-print.c @@ -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); |