summaryrefslogtreecommitdiff
path: root/gcc/lto-streamer.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-25 14:05:28 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-08-25 14:05:28 +0000
commitea74f76f37533dce30120bd711f7ae38036f3a49 (patch)
tree5be829b0ffed7290b19e398a7f2b7765810a510d /gcc/lto-streamer.c
parent3d0669bc4c7809951a75d70eadcbfa5d8e3e45db (diff)
downloadgcc-ea74f76f37533dce30120bd711f7ae38036f3a49.tar.gz
2010-08-25 Richard Guenther <rguenther@suse.de>
PR lto/44562 * lto-streamer.c (lto_record_common_node): Do not mess with TYPE_CANONICAL when not in lto. * gimple.c (gimple_register_type): Likewise. * gcc.dg/graphite/id-27.c: New testcase. * gcc.dg/lto/20100825-1_0.c: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163545 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lto-streamer.c')
-rw-r--r--gcc/lto-streamer.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/lto-streamer.c b/gcc/lto-streamer.c
index 2b3d1724fe7..27b7e560508 100644
--- a/gcc/lto-streamer.c
+++ b/gcc/lto-streamer.c
@@ -524,7 +524,8 @@ lto_record_common_node (tree *nodep, VEC(tree, heap) **common_nodes,
{
/* Type merging will get confused by the canonical types as they
are set by the middle-end. */
- TYPE_CANONICAL (node) = NULL_TREE;
+ if (in_lto_p)
+ TYPE_CANONICAL (node) = NULL_TREE;
*nodep = node = gimple_register_type (node);
}