Ian Lance Taylor wrote:
> 
> More deeply, I think his concern is misplaced.  I think that gcc has
> already demonstrated that the only widely used compilers are free
> software.  Proprietary compilers don't keep up over time, outside of
> niche markets.  Hooking proprietary code into gcc, one way or another,
> is just going to create a dead end for the people who do it.
> Certainly it's not a good thing, and certainly it would be preferable
> to prevent it if possible.  But it is not the worst possible thing
> that could happen; it is merely a cost.
> 
> I won't enumerate the benefits of plugins here.  But it is clear to me
> that the benefits outweigh the costs.

I won't add anything to the comments of Ian because I fully agree with
him but I would like to clarify what I expect from GCC.

First of all, I'm coming from the verification community and I'm
currently very interested in '(automatic) code verification'. What our
community is really seeking for by now is a tool aiming at providing an
abstract (i.e. simplified) model of program sources. And actually, GCC
do it internally. Indeed, you can provide a gimplified CFG of C, C++,
Java, ... source files and many other informations, which overpass tools
such as CIL (C Intermediate Language, http://manju.cs.berkeley.edu/cil/)
because of the numerous front-end of GCC.

What I would like to have is just some mean to extract the last step
before the translation into RTL (usually 'final_cleanup').

Surely, having the possibility to decorate the code with some extra
information would be something more but we can actually work-around
without any problem considering the benefits we get from not having to
maintain all the front-ends.

What is providing the 'plugin scheme' is actually much more than we need
because it goes deep inside GCC and allow *modification* of GCC
internals (and therefore might break a lot of things, I guess) which (in
my humble opinion) is the real problem here.

Maybe defining some standardized outputs (very similar to -fdump-tree-*)
targeted for static-analysis and model-checking tools would be enough as
the main problem for us is just to get GCC to export its intermediate
internal representations of the program in a way which is reliable and
stable from one version to another.

For the software I'm thinking of I really just need the final CFG and
maybe a summary of the IPA would help as well.

Regards
-- 
Emmanuel Fleury

If you don't get everything you want,
think of the things you don't get that you don't want.
  -- Oscar Wilde

Reply via email to