This is the mail archive of the
mailing list for the GCC project.
Re: Great example of why "everything is a tree" sucks
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: Richard Biener <richard dot guenther at gmail dot com>
- Cc: gcc at gcc dot gnu dot org, Steven Bosscher <stevenb dot gcc at gmail dot com>, Diego Novillo <dnovillo at google dot com>, Jakub Jelinek <jakub at redhat dot com>, Jeff Law <law at redhat dot com>
- Date: Wed, 13 Nov 2013 13:07:30 +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> <CABu31nOpcf1EivKXYy-i4Czm84aSv+hOYhrSPpefzNVTjjNW0Q at mail dot gmail dot com> <CAFiYyc3OZhg0NvnMqkN9CLu4f6oGiV2GFM55JE17MjDAgj8Jsw at mail dot gmail dot com>
> Eric, would emitting GIMPLE from gigi make that a lot more
> complicated? That is, would you prefer to have an even
> higher-level early GIMPLE (considering stuff like TARGET_EXPR
> and WITH_CLEANUP_EXPR, etc.)?
This would mean privatizing in gigi all the machinery needed to support types
with variable size scattered over the middle-end (tree.c, fold-const.c and
stor-layout.c) unless you want to make them first-class citizens in GIMPLE,
which is very unlikely I presume. Not undoable, but IMO that would be a step
backwards from GENERIC in which you can express a lot a things, and not only
the semantics of C and its close relatives.