Martin Liska wrote: > There are some numbers for cc1plus: > > $ bloaty ./objdir2/gcc/cc1plus -- ./objdir/gcc/cc1plus > VM SIZE FILE SIZE > +3.8% +1.11Mi TOTAL +1.03Mi +0.5%
> insn-attrtab.o: > VM SIZE FILE SIZE > +214% +682Ki .rodata +682Ki +214% > -50.1% -63.3Ki .text -63.3Ki -50.1% So is that a 3.8% codesize increase or decrease? If an increase, I can't see how replacing 63KB of instructions with 682KB of data is a good tradeoff... There should be an accurate calculation of the density, taking the switch table width into account (really small tables can use 1-byte offsets, large tables are typically forced to use 4-byte offsets). This may need new target callbacks - I changed PARAM_CASE_VALUES_THRESHOLD on AArch64 to get smaller code and better performance since the current density calculations are hardcoded and quite wrong for big tables... Also what is the codesize difference on SPEC2006/2017? I don't see any mention of performance impact either... Wilco