This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: AUTOMATON_STATE_ALTS not used, yet takes 60KB of insn-attrtab.c
- From: Vladimir Makarov <vmakarov at redhat dot com>
- To: Zack Weinberg <zack at codesourcery dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 20 Jan 2003 14:36:24 -0500
- Subject: Re: AUTOMATON_STATE_ALTS not used, yet takes 60KB of insn-attrtab.c
- References: <87smvoaes4.fsf@egil.codesourcery.com>
Zack Weinberg wrote:
>
> As far as I can tell, the code in insn-attrtab.c controlled by #if
> AUTOMATON_STATE_ALTS is used nowhere. To be more precise, I can find
> no circumstance under which that macro is defined with value 1, in CVS
> mainline.
>
> Having a facility which is not currently used is no big deal.
> However, the process of generating this unused code creates the
> derived attribute function insn_alts() as a side effect. This
> function is not used either, but it is *not* wrapped in #if -- and
> it takes up 64129 bytes of space in insn-attrtab.o.
>
> I am tempted to take a chainsaw to all the AUTOMATON_STATE_ALTS code.
> However, I can be persuaded to just figure out a way to put
> insn_alts() under #if too. Do you plan to have AUTOMATON_STATE_ALTS
> be used for anything - even on just one platform - in GCC 3.4?
Originally, it was used for Itanium scheduler heuristics. Now ia64 port
has a general (not heuristic) solution for this. Generally speaking,
this code could be used for improving scheduling for some processors.
Code of insn_alts is smaller than code for insn_state_alts. Therefore I
did not wrap it up.
I'll wrap up insn_alts code too (using new macro AUTOMATON_ALTS) because
now it is not used.
Thank you for pointing me this up.
Vlad