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: [patch 3/4] Separate gimple.[ch] and gimplify.[ch] - front end files


On 11/13/2013 04:40 AM, Richard Biener wrote:
On Mon, Nov 11, 2013 at 10:07 PM, Andrew MacLeod <amacleod@redhat.com> wrote:
This one covers the front end files which included gimple.h

Bootstraps on x86_64-unknown-linux-gnu with no new regressions.  OK?
        * c-family/c-omp.c: Include gimple-expr.h instead of gimple.h.

can you explain why gimple-expr.h is not as bad as gimple.h?
(gimple-expr.h sounds oxymoronish ... but I didn't follow the thread
that ended up creating this beast, it seems a better matching name
would be gimple-tree.h ... haha).

Otherwise gimple.h -> gimplify.h indeed looks like an improvement.


There needs to be a place which has gimple componentry that is not related to or require a statement. gimple.h is becoming the home for just 0gimple statements. There are 3 (for the moment) major classes of things that are in statements and are also used by other parts of the compiler .. Types, Decls, and Expressions. I could have split it into those 3 files right now, but it didn't seem like that granularity was needed yet.

I was going to call it gimple-decl.h since most of the things are decl related... but I figured that eventually there will be all 3 files, and its likely that gimple-expr.h will eventually include gimple-type.h and gimple-decl.,h so just include gimple-expr.h now and have less include turmoil eventually. Perhaps that wont be the case and gimple-decl.h may have been a more appropriate name for now.

Its true that gimple-tree would in fact be a more appropriate name at the moment, but these gimple-* files are the core ones I'll be changing first, so the tree part would no longer be meaningful. the 'expr' part is suppose to represent the abstract purpose... The stuff required to represent an expression in gimple IL. And yes, that is currently a tree :-)

Andrew


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