I wrote a high-level guide to the insides of GCC, from the perspective
(I hope) of a Python programmer hoping to write a script.
The built HTML version can be seen at:
http://readthedocs.org/docs/gcc-python-plugin/en/latest/gcc-overview.html
I've also exposed more of the pass-handling machinery, and used this to
generate a dump of all of the passes (in my version of gcc, 4.6.0, at
any rate).
This can be seen at:
http://readthedocs.org/docs/gcc-python-plugin/en/latest/passes.html
and:
http://readthedocs.org/docs/gcc-python-plugin/en/latest/tables-of-passes....
I hope I've understood things correctly! Please let me know if you see
any significant errors.
Dave