Mike Stump <mikest...@comcast.net> wrote:
>On Aug 10, 2013, at 3:03 AM, Richard Biener
><richard.guent...@gmail.com> wrote:
>> Mike Stump <mikest...@comcast.net> wrote:
>>> On Aug 9, 2013, at 3:36 PM, Diego Novillo <dnovi...@google.com>
>wrote:
>>>> This patch is still WIP.  It builds stage1, but I'm getting ICEs
>>>> during stage 2.
>>>> 
>>>> The patch splits tree.h into three files:
>>>> 
>>>> - tree-core.h: All data structures, enums and typedefs from
>>>> tree.h
>>>> 
>>>> - tree-api.h: All extern function definitions from tree.h
>>>> 
>>>> - tree-macros.h: All macro accessors, tree checks and other
>>>> inline functions.
>>> 
>>> I don't like this split.  You focus in on the details and sort code
>by
>>> detail.  I think this is wrong.
>
>> I mostly agree - tree-macros.h is a red herring. It should be
>tree-core.h and tree.h only.
>
>I disagree.  core isn't a concept that should be binned into.  control
>flow, call graph, register, arm, alias, allocation, attribute, builtin,
>type, eval, jit, symbol, file, floating point, pass, block, stack,
>constant, hash, map, range, memory, debug, dump, elf, dwarf, operator,
>value, vector, declarations, int, statements, object, storage,
>expressions, frame, error, values, mapping, the list is endless. core
>is like a bin for important, functions that begin with a, functions I
>wrote, big functions, functions implemented with templates, trivial
>functions, hard to grasp concepts, simple things, things added in the
>last year, old things, fun things, extra things, useful thing, unsorted
>things, often used things, and so on…  core goes in exactly the wrong
>long term direction.

Fact is that we need to separate internal details of tree.h into sth shareable 
from exactly two places.  Tree-core.h and tree.h are both 'tree.h' in some way. 
Call it tree-internal.h or tree1.h.

The goal is to have two distinct and conflicting APIs to trees, one exposed 
from gimple.h and one from tree.h. And yes, that's a transitional thing - but 
possibly a very long living one...

Richard.


Reply via email to