This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Great example of why "everything is a tree" sucks
- From: Steven Bosscher <stevenb dot gcc at gmail dot com>
- To: Richard Biener <richard dot guenther at gmail dot com>
- Cc: Diego Novillo <dnovillo at google dot com>, Jakub Jelinek <jakub at redhat dot com>, Jeff Law <law at redhat dot com>, GCC <gcc at gcc dot gnu dot org>
- Date: Wed, 13 Nov 2013 11:37:36 +0100
- Subject: Re: Great example of why "everything is a tree" sucks
- Authentication-results: sourceware.org; auth=none
- References: <528288B3 dot 8010109 at redhat dot com> <20131112203509 dot GC27813 at tucnak dot zalov dot cz> <CAD_=9DQRZy92RCJEopO=XHMj9+eDHQ0MW1g__ZaFNNrWQW=QNg at mail dot gmail dot com> <CAFiYyc38jGfAaWwo5OWTxmQnNeP9=f5McGrW_3HCNJotvbBtKQ at mail dot gmail dot com>
On Wed, Nov 13, 2013 at 11:10 AM, Richard Biener wrote:
> Well, he doesn't even consider that the exact same "tree rant" applies
> to frontend code.
That's not entirely true, either. Most front ends already use their
own IL in the parser (only C++ uses 'tree' for everything).
What worries me most, is that we may end up with:
FE-IL => 'tree' => gimple
where 'tree' is just a memory-consuming, complicated intermediate step
between the front ends and the middle end. I don't think that's the
interface we want.
Really the best place to start IMHO would be to evict 'tree' from the
front ends. That would really be a step towards making the front ends
independent of the rest of the compiler, and it would simplify changes
towards static 'tree' types.
Ciao!
Steven