This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Switching to C++ by default in 4.8
Hi,
On Tue, 10 Apr 2012, Jakub Jelinek wrote:
> > *) gcc implementation has lots of hard coded TREE_OPERAND (exp, nn)
> >
> > e.g.
> > exp->as_component_ref().get_field() ..
> > exp->as_mem_access().get_base() ...
> > exp->as_mem_acesss().get_address() --> produces the
> > address expression for memory access
> > exp->as_mem_access().get_alias_handle ()
> >
> > gimple_inst->serialize (&fixup_list) --> a virtual
> > function overriden by actual instruction types that knows its byte
> > code format.
>
> That silently assumes we want to change basic GIMPLE/tree data structures
> to virtual classes, which is a significant change that has a significant
> cost as well. E.g. all such changed data structures grow by a virtual
> pointer field. Those data structures are heavily optimized for memory
> footprint.
> Not to mention it is very questionable if the above stuff is more readable
> than what we currently have.
Actually it's not questionable. The above stuff is _horrible_.
Ciao,
Michael.