This patch series improves the support for the targets other than mips64r6 in GCC.
These patches are cherry-picked from the mips_rel/9_3_0/master branch from the MIPS' repository: https://github.com/MIPS/gcc . Further details on the individual changes are included in the respective patches. Changes in v3: - Rebased on current GCC master. - Dropped patches from v2 that have already been upstreamed. - Added testcases for the relevant patches. Andrew Bennett (1): MIPS: Only split shifts if using -mno-debugd Jaydeep Patil (1): MIPS: P5600: Option -msched-weight added Matthew Fortune (1): Testsuite: Skip tests making calls to variables Robert Suchanek (1): MIPS: Remove redundant moves dragan.mladjenovic (1): nanoMIPS: unnecessary AND following an EXT mfortune (1): MIPS: Add offset shrinking pass (-mshrink-offsets) gcc/config/mips/mips.cc | 620 ++++++++++++++++++ gcc/config/mips/mips.md | 25 + gcc/config/mips/mips.opt | 9 +- gcc/doc/invoke.texi | 11 + gcc/fwprop.cc | 38 +- .../gcc.c-torture/compile/20020129-1.c | 5 + .../gcc.c-torture/compile/pr37433-1.c | 5 + gcc/testsuite/gcc.c-torture/compile/pr37433.c | 5 + gcc/testsuite/gcc.target/mips/mips.exp | 3 + .../gcc.target/mips/mips16-debugd-shift-1.c | 13 + .../gcc.target/mips/mips16-debugd-shift-2.c | 12 + .../mips/mips16-redundant-moves-1.c | 42 ++ .../gcc.target/mips/sched-weight-1.c | 21 + .../gcc.target/mips/shrink-offsets-1.c | 22 + gcc/testsuite/gcc.target/mips/union-zext.c | 29 + gcc/testsuite/lib/target-supports.exp | 10 + 16 files changed, 862 insertions(+), 8 deletions(-) create mode 100644 gcc/testsuite/gcc.target/mips/mips16-debugd-shift-1.c create mode 100644 gcc/testsuite/gcc.target/mips/mips16-debugd-shift-2.c create mode 100644 gcc/testsuite/gcc.target/mips/mips16-redundant-moves-1.c create mode 100644 gcc/testsuite/gcc.target/mips/sched-weight-1.c create mode 100644 gcc/testsuite/gcc.target/mips/shrink-offsets-1.c create mode 100644 gcc/testsuite/gcc.target/mips/union-zext.c -- 2.43.0
