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: Push GENERIC farther into C/C++ front ends.


> 
> Richard Henderson wrote:
> 
> > The eventual goal is to get rid of all the C/C++ private front end 
> > tree codes that have a clear and direct generic counterpart.  This
> > is the smallest possible step toward making this happen.
> > 
> > The following patch replaces the use of TREE_CHAIN to link statements
> > with the use of STATEMENT_LISTs.  With this changed, the other tree
> > nodes can be replaced one by one.
> 
> I'm OK with this change -- but I want to make sure that we don't try to 
> generate GENERIC stuff too early.  I think it should be a fundamental 
> design goal that we first generate a representation that is unlowered 
> C++, and then transform to GENERIC.  The reason that is imperative is 
> that people really do want to use G++ for source-analysis kinds of 
> applications, and the unlowered form is essential for that.

I would disagree with this as we are first a compiler and then a source
to use for other purposes.  In fact generating GENERIC first will speed
up the compiler so I (as an employee of Apple) will very much like to 
replace the whole front-ends with ones which produce GENERIC right
away for compile time reasons.  Creating too many trees is one of the
current problems in compile time so why create one set of trees and
then create a new set of trees which takes time and memory usage just
goes up.  In fact this is exactly the reason why 3.5.0 was so much
slower than 3.4.0 at -O0 (besides the fact we generate much more RTL).


Thanks,
Andrew Pinski
apinski@apple.com
pinskia@physics.uc.edu


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