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: Question on GIMPLE semantics and EH


On Saturday 14 August 2004 00:46, Joe Buck wrote:
> On Sat, Aug 14, 2004 at 12:34:29AM +0100, Paul Brook wrote:
> > On Saturday 14 August 2004 00:26, Richard Kenner wrote:
> > >     I don't suppose F36b has DECL_ARTIFICIAL set?  If it does, then
> > >     that would explain the mistake -- the gimplifier thinks it
> > >     already *is* a temporary.
> > >
> > > I can confirm that not setting it fixes this ACATS test and a few
> > > others.
> >
> > Is this intended as a long-term solution or a temporary kludge?
> >
> > The fortran frontend also sets DECL_ARTIFICIAL on variables not mentioned
> > in the source.
>
> It seems to me that many temporaries introduced by language front ends are
> SSA safe, in the sense that they are always assigned before first use and
> always hold the same value.  However, apparently in the Ada case this is
> not true of all temporaries.  So is the issue that the gimplify conversion
> is assuming that DECL_ARTIFICIAL variables are SSA?

Many of the temporaries introduced by the Fortran frontend are not SSA safe. 
We generate everything from simple scalars to loop index variables, 
addressable variables and aggregate/array typed variables.

Between them these break pretty much any assumptions the gimplifier might 
make.

Paul


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