-
Notifications
You must be signed in to change notification settings - Fork 4
Architecture
Baptiste Wicht edited this page Oct 1, 2012
·
8 revisions
The architecture of eddic is made to support several source programming languages and several target platforms as well.
For that, the compiler is separate in two parts:
- The front end that parse the source code, perform semantical analysis on it and generates an intermediate representation that is understandable by the back end
- The back end performs optimizations on the program and generates machine code for the target.
There are one front end for the EDDI programming language and one back-end for machine code generation. The back-end use different code generators depending if the user want 32 or 64 bits.
The design is not perfect. The middle-end should be better separated to perform optimizations and then pass the intermediate to the back-end.
Ideally, the Low-Level Three-Address-Code representation should be more target-independent.