OSDN Git Service

2009-06-14 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 13 Jun 2009 22:58:13 +0000 (22:58 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 13 Jun 2009 22:58:13 +0000 (22:58 +0000)
commit60b9b3ae358572c3b9e10c59ce1beb9566df34d6
tree8ff0bc85b42906f5dd2e481e0620be0c340e16de
parent65edca84b3cc8bf79d1bf076047d21270e1cb470
2009-06-14  Richard Guenther  <rguenther@suse.de>

PR middle-end/40389
* gimple.c (walk_stmt_load_store_addr_ops): The LHS of a call
has its address taken if NRV was applied and it is addressable.
* tree-ssa-structalias.c (get_constraint_for_address_of): New
function split out from ...
(get_constraint_for_1): ... here.
(handle_rhs_call): Use it to mark the return slot escaped if
it is addressable and NRV was applied.

* g++.dg/torture/pr40389.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148462 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/gimple.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/torture/pr40389.C [new file with mode: 0644]
gcc/tree-ssa-structalias.c