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]

Re: virtual stack regs.


On 6/19/07, Rask Ingemann Lambertsen <rask@sygehus.dk> wrote:

> 3) If they really are uninitialized, why is it a problem to assign zero
> to them.

   It is possible to mess up the substitution that the vregs pass performs.
IIRC, it happened to me once because I accidentally put one of these virtual
pseudo inside a (clobber) or (use) or something like that. I don't quite
recall the details, but maybe the substitution fails if they appear outside
an operand?

There is one annoying case in PR32374, where on-the-stack constructor creates invalid memory clobber that includes virtual-stack-regs. These are simply ignored by vregs pass and this confuses dataflow register initialization.

Uros.


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