diff options
author | Richard Guenther <rguenther@suse.de> | 2009-06-17 10:29:22 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2009-06-17 10:29:22 +0000 |
commit | 4d61856d0a221c695bbb5193ae18403d07cde0d4 (patch) | |
tree | 824902ba221886d42966346c76169bbff0889f86 /gcc/tree-ssa-structalias.c | |
parent | 3cb8677cc030b145391ac547f159609b03dbbd6c (diff) | |
download | gcc-4d61856d0a221c695bbb5193ae18403d07cde0d4.zip gcc-4d61856d0a221c695bbb5193ae18403d07cde0d4.tar.gz gcc-4d61856d0a221c695bbb5193ae18403d07cde0d4.tar.bz2 |
re PR c++/40389 (optimizer bug (possibly))
2009-06-17 Richard Guenther <rguenther@suse.de>
PR tree-optimization/40389
* tree-ssa-structalias.c (handle_rhs_call): Restrict NRV case
to addressable types.
* gimple.c (walk_stmt_load_store_addr_ops): Likewise.
From-SVN: r148597
Diffstat (limited to 'gcc/tree-ssa-structalias.c')
-rw-r--r-- | gcc/tree-ssa-structalias.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c index f60b24c..60863d5 100644 --- a/gcc/tree-ssa-structalias.c +++ b/gcc/tree-ssa-structalias.c @@ -3362,7 +3362,7 @@ handle_rhs_call (gimple stmt, VEC(ce_s, heap) **results) /* And if we applied NRV the address of the return slot escapes as well. */ if (gimple_call_return_slot_opt_p (stmt) && gimple_call_lhs (stmt) != NULL_TREE - && TREE_ADDRESSABLE (gimple_call_lhs (stmt))) + && TREE_ADDRESSABLE (TREE_TYPE (gimple_call_lhs (stmt)))) { VEC(ce_s, heap) *tmpc = NULL; struct constraint_expr lhsc, *c; |