is being merged into the GCC mainline! This project brings in an
optimisation framework for GCC Trees based on the Static
Single Assignment (SSA) form. GCC uses Trees as one of its
Intermediate Representations (IRs) - the Register Transfer
Language (RTL) being the other IR.
Trees are being cleaned
up (simplified and made language independent) into the new
"GENERIC" representation, which will then be
simplified further into the "GIMPLE" representation.
More details can be found in the
proceedings of the 2003 Annual GCC Summit.
(See the papers "Tree SSA - A New Optimization Infrastructure for GCC" by Diego Novillo and
"GENERIC and GIMPLE: A new tree representation for entire functions" by Jason Merrill.)
The current mainline now has "Variable Tracking",
that allows GCC to more accurately track and describe
variables in the generated debug information
even after optimisation - even with -fomit-frame-pointer! As a result,
-fomit-frame-pointer will become the default
for the x86 backend, freeing up a much-needed register
on this starved architecture. You will however
minimally need GDB 6.1 to be able to correctly debug
with the generated location lists. This version has
not yet been released though.
(Originally posted on Advogato.)
|
Tweet |
|
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.