Use the proper rtx cost model for the selected CPU, even when optimizing for size. This generates better code. --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -17483,7 +17483,7 @@ mips_option_override (void) flag_pcc_struct_return = 0; /* Decide which rtx_costs structure to use. */ - if (optimize_size) + if (0 && optimize_size) mips_cost = &mips_rtx_cost_optimize_size; else mips_cost = &mips_rtx_cost_data[mips_tune];