This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/40389] optimizer bug (possibly)
- From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 13 Jun 2009 22:58:29 -0000
- Subject: [Bug c++/40389] optimizer bug (possibly)
- References: <bug-40389-17817@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #21 from rguenth at gcc dot gnu dot org 2009-06-13 22:58 -------
Subject: Bug 40389
Author: rguenth
Date: Sat Jun 13 22:58:13 2009
New Revision: 148462
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=148462
Log:
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.
Added:
trunk/gcc/testsuite/g++.dg/torture/pr40389.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimple.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-ssa-structalias.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40389