1 The compiler is based on the original Portable C Compiler by S. C.
2 Johnson, written in the late 70's. Even though much of the compiler
3 has been rewritten, some of the basics still remain.
5 The intention is to write a C99 compiler while still keeping it
6 small, simple, fast and understandable. Think of it as if it shall
7 be able to compile and run on PDP11 (even if it may not happen in
8 reality). But with this in mind it becomes important to think
9 twice about what algorithms are used.
11 The compiler is conceptually structured in two parts; pass1 which
12 is language-dependent, does parsing, typechecking and build trees,
13 and pass2 which is mostly language-independent.
15 About 50% of the frontend code and 80% of the backend code has been
16 rewritten. Most stuff is written by Anders Magnusson, with the
17 exception of the data-flow analysis part and the SSA conversion
18 code which is written by Peter A Jonsson, and the Mips port that
19 were written as part of a project by undergraduate students at LTU.