On Tuesday 20 November 2012 10:30 AM, Miles Bader wrote:
Basile Starynkevitch <bas...@starynkevitch.net> writes:
PS. LLVM has also a decisive documentation advantage w.r.t. GCC

What...?  The last time I tried to do something with LLVM, the
internals docs were awful (full of <not yet written> kinda stuff,
usually just in the area I was confused about)...

Yes but it is far better than that of GCC and the code itself is far better than GCC's code, not surprisingly because

(a) it was designed in a closed group,
(b) and the front end as well as back end were out of scope
(c) back end generation from specification has remained out of scope

In my opinion, at an abstract level the core LLVM is comparable to the framework of GIMPLE pass structure of GCC (and hence it is more easily describable). GCC on the other hand is a big spaghetti containing compiler generation thrown in.

and gcc
historically has had great internals documentation, though I don't
know if it's managed to keep up with all the changes in the 4.x
series...

By great, if you mean in size, yes I agree with you :-)

Otherwise, I strongly disagree with you. Please look up the teaching material and assignments available at http://www.cse.iitb.ac.in/grc/gcc-workshop-12/ to see what the default GCC documentation lacks.

Just as a case in point, try asking a novice to understand LTO from the official documentation and code and then refer him/her to my slides to understand LTO.

Uday.

Reply via email to