This is the mail archive of the gcc@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]

[tree-ssa] Kills by VDEFs in mark_def_sites


Hello,

a comment in tree-into-ssa.c:mark_def_sites states that

/* Note that virtual definitions are irrelevant for computing KILLS
   because a VDEF does not constitute a killing definition of the
   variable.  */

and indeed, we do not set a bit in "kills" bitmap for VDEFs.

There are two things that make this part of code a bit weird:

1) For operand of VDEF and for VUSE we test whether the bit is set
   in the "kills" bitmap; however this is clearly useless, as there
   is no way how there could be anything set in this bitmap for virtual
   operands.

2) The comment above is moreorless useless as well.  Even if we set the
   bit in the "kills" bitmap, everything would work exactly the same
   way, since VDEF has an operand that is processed before the VDEF's
   result, so the basic block processed would be marked in the livein
   bitmap as well.

Are these observations correct, or am I missing something?

Zdenek


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