This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/23384] escaped set should be flow sensitive
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 07 Jan 2014 11:26:49 +0000
- Subject: [Bug tree-optimization/23384] escaped set should be flow sensitive
- Auto-submitted: auto-generated
- References: <bug-23384-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23384
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|Clobber list should be flow |escaped set should be flow
|sensitive |sensitive
--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Note implementing a flow-sensitive ESCAPED set is not really possible within
the current framework. Note that all memory operations are not flow-sensitive,
so
int *global;
int kk(void)
{
int j;
j = 1;
g ();
j += 2;
global = &j;
}
will still cause g() to clobber j as far as points-to analysis is concerned
(the write to 'global' is not flow-sensitive).
"Trivial" optimization can avoid refering to ESCAPED in the first basic-block
as long as nothing could have been possibly escaped yet. But that's a hack.