This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: C tree question
On Wed, 2003-12-03 at 00:01, Mathieu Lacage wrote:
> - frontend: builds a tree which represents the syntax of the input
> file.
> - middle end: language-specific manipulations on the syntax tree to
> generate a valid tree for the language-independent optimization passes
> and backends.
The middle end is language independent, except for a few hooks into the
front ends. The primary purpose of the middle end is to convert trees
(AST) to RTL (IL), using various code generation strategies. The RTL
maps into machine instructions, so we essentially do code generation
first, and then optimization. There is also some, but not much,
optimization of the trees before we generate RTL.
This changes a bit on the tree-ssa branch, as we now have a higher level
IL (gimple), and a number of optimization passes on it. We may need a
terminology change then, I don't think anyone has thought about it.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com