diff options
author | Felix Fietkau <nbd@nbd.name> | 2016-08-04 20:29:45 +0200 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2016-08-04 20:53:28 +0200 |
commit | ecf7671b769fe96f7b5134be442089f8bdba55d2 (patch) | |
tree | 06d7a8b307b39a46912e6e3a9d69a491dead00b2 | |
parent | 7c874d18f51cb952babd8241fae5a8286dc68878 (diff) | |
download | upstream-ecf7671b769fe96f7b5134be442089f8bdba55d2.tar.gz upstream-ecf7671b769fe96f7b5134be442089f8bdba55d2.tar.bz2 upstream-ecf7671b769fe96f7b5134be442089f8bdba55d2.zip |
gcc: add a patch to generate better code with Os on mips
Also happens to reduce compressed code size a bit
Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r-- | toolchain/gcc/patches/5.4.0/300-mips_Os_cpu_rtx_cost_model.patch | 14 | ||||
-rw-r--r-- | toolchain/gcc/patches/6.1.0/300-mips_Os_cpu_rtx_cost_model.patch | 11 |
2 files changed, 25 insertions, 0 deletions
diff --git a/toolchain/gcc/patches/5.4.0/300-mips_Os_cpu_rtx_cost_model.patch b/toolchain/gcc/patches/5.4.0/300-mips_Os_cpu_rtx_cost_model.patch new file mode 100644 index 0000000000..1743658ac6 --- /dev/null +++ b/toolchain/gcc/patches/5.4.0/300-mips_Os_cpu_rtx_cost_model.patch @@ -0,0 +1,14 @@ +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]; diff --git a/toolchain/gcc/patches/6.1.0/300-mips_Os_cpu_rtx_cost_model.patch b/toolchain/gcc/patches/6.1.0/300-mips_Os_cpu_rtx_cost_model.patch new file mode 100644 index 0000000000..d76bd8cb1d --- /dev/null +++ b/toolchain/gcc/patches/6.1.0/300-mips_Os_cpu_rtx_cost_model.patch @@ -0,0 +1,11 @@ +--- a/gcc/config/mips/mips.c ++++ b/gcc/config/mips/mips.c +@@ -17928,7 +17928,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]; |