[Bug tree-optimization/23384] escaped set should be flow sensitive
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jan 7 11:26:00 GMT 2014
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.
More information about the Gcc-bugs
mailing list