From: Jan Hubicka Date: Sat, 30 Dec 2006 12:15:16 +0000 (+0100) Subject: ipa-pure-const.c (check_operand): SSA_NAME is safe. X-Git-Tag: releases/gcc-4.3.0~7789 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=54e7d067d5f79ec637ca301e69b70665df0d16dd;p=thirdparty%2Fgcc.git ipa-pure-const.c (check_operand): SSA_NAME is safe. * ipa-pure-const.c (check_operand): SSA_NAME is safe. * ipa-type-escape.c (scan_for_refs): Look into SSA_NAMEs. From-SVN: r120286 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 83440dd795bb..b7bae1a1cfdc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2006-12-30 Jan Hubicka + + * ipa-pure-const.c (check_operand): SSA_NAME is safe. + * ipa-type-escape.c (scan_for_refs): Look into SSA_NAMEs. + 2006-12-30 Jan Hubicka * tree.h (DECL_CALL_CLOBBERED): Remove. diff --git a/gcc/ipa-pure-const.c b/gcc/ipa-pure-const.c index bd1d72b75067..5f19af8c61ea 100644 --- a/gcc/ipa-pure-const.c +++ b/gcc/ipa-pure-const.c @@ -163,7 +163,8 @@ check_operand (funct_state local, static void check_tree (funct_state local, tree t, bool checking_write) { - if ((TREE_CODE (t) == EXC_PTR_EXPR) || (TREE_CODE (t) == FILTER_EXPR)) + if ((TREE_CODE (t) == EXC_PTR_EXPR) || (TREE_CODE (t) == FILTER_EXPR) + || TREE_CODE (t) == SSA_NAME) return; /* Any tree which is volatile disqualifies thie function from being diff --git a/gcc/ipa-type-escape.c b/gcc/ipa-type-escape.c index a7749f46a27a..7b2fac104bc7 100644 --- a/gcc/ipa-type-escape.c +++ b/gcc/ipa-type-escape.c @@ -1267,7 +1267,11 @@ scan_for_refs (tree *tp, int *walk_subtrees, void *data) result so we do mark the resulting cast as being bad. */ if (check_call (rhs)) - bitmap_set_bit (results_of_malloc, DECL_UID (lhs)); + { + if (TREE_CODE (lhs) == SSA_NAME) + lhs = SSA_NAME_VAR (lhs); + bitmap_set_bit (results_of_malloc, DECL_UID (lhs)); + } break; default: break;