aboutsummaryrefslogtreecommitdiff
path: root/gcc/graphite-scop-detection.c
diff options
context:
space:
mode:
authorTom de Vries <tom@codesourcery.com>2016-03-16 09:19:12 +0000
committerTom de Vries <vries@gcc.gnu.org>2016-03-16 09:19:12 +0000
commitbe7ce7aefd00f15e98f2802cfe3434dcca517643 (patch)
treeba4d740a7622c18269bd8ac6c22f41fcda01cb2f /gcc/graphite-scop-detection.c
parent6651c93e42d125b151a4a2631fbb912c8d5a986a (diff)
downloadgcc-be7ce7aefd00f15e98f2802cfe3434dcca517643.zip
gcc-be7ce7aefd00f15e98f2802cfe3434dcca517643.tar.gz
gcc-be7ce7aefd00f15e98f2802cfe3434dcca517643.tar.bz2
Fix same_close_phi_node
2016-03-16 Tom de Vries <tom@codesourcery.com> PR tree-optimization/68809 * graphite-scop-detection.c (same_close_phi_node): Test if result types are the same. * gcc.dg/graphite/pr68809-2.c: New test. * gcc.dg/graphite/pr68809.c: New test. From-SVN: r234250
Diffstat (limited to 'gcc/graphite-scop-detection.c')
-rw-r--r--gcc/graphite-scop-detection.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c
index 03b1c49..e20baa10 100644
--- a/gcc/graphite-scop-detection.c
+++ b/gcc/graphite-scop-detection.c
@@ -273,8 +273,10 @@ trivially_empty_bb_p (basic_block bb)
static inline bool
same_close_phi_node (gphi *p1, gphi *p2)
{
- return operand_equal_p (gimple_phi_arg_def (p1, 0),
- gimple_phi_arg_def (p2, 0), 0);
+ return (types_compatible_p (TREE_TYPE (gimple_phi_result (p1)),
+ TREE_TYPE (gimple_phi_result (p2)))
+ && operand_equal_p (gimple_phi_arg_def (p1, 0),
+ gimple_phi_arg_def (p2, 0), 0));
}
static void make_close_phi_nodes_unique (basic_block bb);