aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2010-10-08 04:40:59 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2010-10-08 04:40:59 +0000
commit7de9e0a108c8bde8750dc0575afbb4aaa6bf978f (patch)
tree8928b411deda7d3ae2c7cb5cc355f5b0c3585060 /gcc
parent5bd84829f73d467f67746090cd781973d674f2f3 (diff)
downloadgcc-7de9e0a108c8bde8750dc0575afbb4aaa6bf978f.zip
gcc-7de9e0a108c8bde8750dc0575afbb4aaa6bf978f.tar.gz
gcc-7de9e0a108c8bde8750dc0575afbb4aaa6bf978f.tar.bz2
re PR debug/45673 (-fcompare-debug failure with minor difference in dumps)
PR debug/45673 PR debug/45604 PR debug/45419 PR debug/45408 * tree-pretty-print.c (dump_generic_node): Explicitly dump the type of MEM_REFs to INTEGER_CSTs. From-SVN: r165149
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/tree-pretty-print.c8
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 403c825..3525466 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,12 @@
+2010-10-08 Alexandre Oliva <aoliva@redhat.com>
+
+ PR debug/45673
+ PR debug/45604
+ PR debug/45419
+ PR debug/45408
+ * tree-pretty-print.c (dump_generic_node): Explicitly dump the
+ type of MEM_REFs to INTEGER_CSTs.
+
2010-10-07 Nathan Froyd <froydnj@codesourcery.com>
* config/m68hc11/m68hc11.c (m68hc11_print_operand): Call
diff --git a/gcc/tree-pretty-print.c b/gcc/tree-pretty-print.c
index 6440f80..8ec2ded 100644
--- a/gcc/tree-pretty-print.c
+++ b/gcc/tree-pretty-print.c
@@ -801,6 +801,10 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags,
case MEM_REF:
{
if (integer_zerop (TREE_OPERAND (node, 1))
+ /* Dump the types of INTEGER_CSTs explicitly, for we can't
+ infer them and MEM_ATTR caching will share MEM_REFs
+ with differently-typed op0s. */
+ && TREE_CODE (TREE_OPERAND (node, 0)) != INTEGER_CST
/* Same pointer types, but ignoring POINTER_TYPE vs.
REFERENCE_TYPE. */
&& (TREE_TYPE (TREE_TYPE (TREE_OPERAND (node, 0)))
@@ -1163,6 +1167,10 @@ dump_generic_node (pretty_printer *buffer, tree node, int spc, int flags,
|| (TREE_CODE (op0) == MEM_REF
&& TREE_CODE (TREE_OPERAND (op0, 0)) != ADDR_EXPR
&& integer_zerop (TREE_OPERAND (op0, 1))
+ /* Dump the types of INTEGER_CSTs explicitly, for we
+ can't infer them and MEM_ATTR caching will share
+ MEM_REFs with differently-typed op0s. */
+ && TREE_CODE (TREE_OPERAND (op0, 0)) != INTEGER_CST
/* Same pointer types, but ignoring POINTER_TYPE vs.
REFERENCE_TYPE. */
&& (TREE_TYPE (TREE_TYPE (TREE_OPERAND (op0, 0)))