This is the mail archive of the 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: SIMPLE: A language-independent tree IR

On 08-Jan-2002, Diego Novillo <> wrote:
> On Tue, 2002-01-08 at 22:17, Fergus Henderson wrote:
> > In particular you seem to be suggesting that the INITIAL trees be
> > language-dependent, and that there be some language-dependent pass that
> > converts them into language-independent SIMPLE trees.
> Yes.  The idea is to preserve the status quo of the existing
> front-ends.  Let them generate ld-trees.  An additional pass will
> simplify them and make them language-independent.
> > But I think there
> > should be a language-independent tree form at a higher level than SIMPLE
> > trees; either the INITIAL trees should be language-independent (as I
> > implied above), or there should be another language-independent form of
> > trees that is used after the INITIAL trees but before the SIMPLE trees.
> Now I think I understand what you're proposing.  I'm not sure I can find
> specific advantages of having the INITIAL trees be language-independent.
> Do you have anything specific in mind?

Well, for one thing that means that the code which converts to SIMPLE
trees would be part of the language-independent infrastructure code,
and hence only needs to be done once, rather than having to be done
separately for each language front-end.

Also I'm not sure where tree-based inlining fits in all of this,
but the inlining code should be language-independent, and so
if inlining is done before conversion to SIMPLE trees,
this would require a language-independent tree form before SIMPLE trees.

Fergus Henderson <>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <>  |     -- the last words of T. S. Garp.

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