public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/23384] Clobber list should be flow sensitive
       [not found] <bug-23384-4@http.gcc.gnu.org/bugzilla/>
@ 2014-01-05 23:14 ` pinskia at gcc dot gnu.org
  2014-01-07 11:26 ` [Bug tree-optimization/23384] escaped set " rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 5+ messages in thread
From: pinskia at gcc dot gnu.org @ 2014-01-05 23:14 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23384

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |patrick at parcs dot ath.cx

--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
*** Bug 59690 has been marked as a duplicate of this bug. ***


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/23384] escaped set should be flow sensitive
       [not found] <bug-23384-4@http.gcc.gnu.org/bugzilla/>
  2014-01-05 23:14 ` [Bug tree-optimization/23384] Clobber list should be flow sensitive pinskia at gcc dot gnu.org
@ 2014-01-07 11:26 ` rguenth at gcc dot gnu.org
  2014-01-07 22:46 ` steven at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 5+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-01-07 11:26 UTC (permalink / raw)
  To: gcc-bugs

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.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/23384] escaped set should be flow sensitive
       [not found] <bug-23384-4@http.gcc.gnu.org/bugzilla/>
  2014-01-05 23:14 ` [Bug tree-optimization/23384] Clobber list should be flow sensitive pinskia at gcc dot gnu.org
  2014-01-07 11:26 ` [Bug tree-optimization/23384] escaped set " rguenth at gcc dot gnu.org
@ 2014-01-07 22:46 ` steven at gcc dot gnu.org
  2014-01-08  8:58 ` rguenther at suse dot de
  2022-12-24 20:14 ` pinskia at gcc dot gnu.org
  4 siblings, 0 replies; 5+ messages in thread
From: steven at gcc dot gnu.org @ 2014-01-07 22:46 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23384

--- Comment #6 from Steven Bosscher <steven at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #5)

Would it be possible to compute ESCAPED per basic block as a local set,
compute transitive closure over the CFG, and use that information when
constructing the points-to graph?


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/23384] escaped set should be flow sensitive
       [not found] <bug-23384-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2014-01-07 22:46 ` steven at gcc dot gnu.org
@ 2014-01-08  8:58 ` rguenther at suse dot de
  2022-12-24 20:14 ` pinskia at gcc dot gnu.org
  4 siblings, 0 replies; 5+ messages in thread
From: rguenther at suse dot de @ 2014-01-08  8:58 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23384

--- Comment #7 from rguenther at suse dot de <rguenther at suse dot de> ---
On Tue, 7 Jan 2014, steven at gcc dot gnu.org wrote:

> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23384
> 
> --- Comment #6 from Steven Bosscher <steven at gcc dot gnu.org> ---
> (In reply to Richard Biener from comment #5)
> 
> Would it be possible to compute ESCAPED per basic block as a local set,
> compute transitive closure over the CFG, and use that information when
> constructing the points-to graph?

Well, ESCAPED is computed by solving the points-to graph ... also
"transitive closing" over the CFG isn't easily possible without
doing a full points-to graph solving.

I think more flow-sensitivity asks for a entirely different algorithm
(or - just a weird quick idea - marking constraints with a "flow"
version, and during solving only consider "older" edges/constraints
and only when that converged bump the "age" of the solving process.
that's probably equivalent to incrementally building / solving the
points-to graph for all SESE regions in a dominator order)


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug tree-optimization/23384] escaped set should be flow sensitive
       [not found] <bug-23384-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2014-01-08  8:58 ` rguenther at suse dot de
@ 2022-12-24 20:14 ` pinskia at gcc dot gnu.org
  4 siblings, 0 replies; 5+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-12-24 20:14 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=23384

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jhaberman at gmail dot com

--- Comment #11 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
*** Bug 108217 has been marked as a duplicate of this bug. ***

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-12-24 20:14 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-23384-4@http.gcc.gnu.org/bugzilla/>
2014-01-05 23:14 ` [Bug tree-optimization/23384] Clobber list should be flow sensitive pinskia at gcc dot gnu.org
2014-01-07 11:26 ` [Bug tree-optimization/23384] escaped set " rguenth at gcc dot gnu.org
2014-01-07 22:46 ` steven at gcc dot gnu.org
2014-01-08  8:58 ` rguenther at suse dot de
2022-12-24 20:14 ` pinskia at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).