From 33960e2e8ad75ac54052c24ce8ba8dbd447ef300 Mon Sep 17 00:00:00 2001 From: Tristan Gingold Date: Tue, 15 May 2012 09:31:45 +0000 Subject: [PATCH] tree-ssa-strlen.c (get_string_length): Convert lhs if needed. 2012-05-15 Tristan Gingold * tree-ssa-strlen.c (get_string_length): Convert lhs if needed. From-SVN: r187507 --- gcc/ChangeLog | 6 +++++- gcc/tree-ssa-strlen.c | 6 ++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ba4cd854f5a..da1587e47df 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2012-05-15 Tristan Gingold + + * tree-ssa-strlen.c (get_string_length): Convert lhs if needed. + 2012-05-15 Richard Guenther * gimple.c (gimple_set_modified): Move ... @@ -26,7 +30,7 @@ * doc/md.texi (fma): Define to only be applicable for single rounding. - + 2012-05-14 Uros Bizjak PR target/46098 diff --git a/gcc/tree-ssa-strlen.c b/gcc/tree-ssa-strlen.c index a37633a920f..05fd10d6d53 100644 --- a/gcc/tree-ssa-strlen.c +++ b/gcc/tree-ssa-strlen.c @@ -427,6 +427,12 @@ get_string_length (strinfo si) NULL); add_referenced_var (lhs_var); tem = gimple_call_arg (stmt, 0); + if (!ptrofftype_p (TREE_TYPE (lhs))) + { + lhs = convert_to_ptrofftype (lhs); + lhs = force_gimple_operand_gsi (&gsi, lhs, true, NULL_TREE, + true, GSI_SAME_STMT); + } lenstmt = gimple_build_assign_with_ops (POINTER_PLUS_EXPR, make_ssa_name (lhs_var, NULL),