This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Path ping


On Tue, 30 Jun 2009, Jan Hubicka wrote:

> Hi,
> I would like to ping:
> http://gcc.gnu.org/ml/gcc-patches/2009-04/msg02077.html

Hm, do you really need the virtual PHI handling here:

!   /* Since we don't track liveness of virtual PHI nodes, it is possible 
that we
!      rendered some PHI nodes unreachable while they are still in use.
!      Mark them for renaming.  */
!   if (cfg_altered)
!     {
!       basic_block next_bb;

?

In fact I fail to see why if then only PHIs are necessary
to be dealt with here...

In fact, remove_bb is careful to remove stmts via release_defs / 
gsi_remove (but it doesn't call unlink_stmt_vdefs which it probably
should and this might fix it...?).

Anyway, the patch looks good apart from that virtual PHI business.
Can you update it to current trunk and try adding

  if (gimple_vdef (stmt))
    unlink_stmt_vdef (stmt);

in tree-cfg.c:remove_bb (before the release_defs call, inside the
gimple_in_ssa_p conditional).

And remove all the virtual PHI handling from the patch?

Thanks,
Richard.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]