diff options
author | Richard Guenther <rguenther@suse.de> | 2010-07-05 16:06:56 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2010-07-05 16:06:56 +0000 |
commit | bdf0f819d51b7e0a5f758a721658536369b4fd7a (patch) | |
tree | 6e3ea01580542a83abe923c70db2b91759f307b0 /gcc | |
parent | a41e5e86c0bbcb0dca6311a5e6dab8d7e005a076 (diff) | |
download | gcc-bdf0f819d51b7e0a5f758a721658536369b4fd7a.zip gcc-bdf0f819d51b7e0a5f758a721658536369b4fd7a.tar.gz gcc-bdf0f819d51b7e0a5f758a721658536369b4fd7a.tar.bz2 |
tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Copy alias info.
2010-07-05 Richard Guenther <rguenther@suse.de>
* tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Copy
alias info.
From-SVN: r161841
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-ssa-loop-ivopts.c | 8 |
2 files changed, 11 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f4ad907..737c89f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2010-07-05 Richard Guenther <rguenther@suse.de> + * tree-ssa-loop-ivopts.c (rewrite_use_nonlinear_expr): Copy + alias info. + +2010-07-05 Richard Guenther <rguenther@suse.de> + * tree.c (reference_alias_ptr_type): New function. * tree.h (reference_alias_ptr_type): Declare. * tree-ssa-loop-ivopts.c (copy_ref_info): Restructure to diff --git a/gcc/tree-ssa-loop-ivopts.c b/gcc/tree-ssa-loop-ivopts.c index db56b93..d9362e5 100644 --- a/gcc/tree-ssa-loop-ivopts.c +++ b/gcc/tree-ssa-loop-ivopts.c @@ -5486,8 +5486,12 @@ rewrite_use_nonlinear_expr (struct ivopts_data *data, to still. */ && (get_gimple_rhs_num_ops (TREE_CODE (comp)) >= gimple_num_ops (gsi_stmt (bsi))))) - comp = force_gimple_operand_gsi (&bsi, comp, false, SSA_NAME_VAR (tgt), - true, GSI_SAME_STMT); + { + comp = force_gimple_operand_gsi (&bsi, comp, true, NULL_TREE, + true, GSI_SAME_STMT); + if (POINTER_TYPE_P (TREE_TYPE (tgt))) + duplicate_ssa_name_ptr_info (comp, SSA_NAME_PTR_INFO (tgt)); + } if (gimple_code (use->stmt) == GIMPLE_PHI) { |