From: Aleksandar Rakic <aleksandar.ra...@htecgroup.com> Andrew Bennett (4): Fix unsafe comparison against stack_pointer_rtx Add microMIPS R6 support MIPS: Only split shifts if using -mdebugd Testsuite: Modify the gcc.dg/memcpy-4.c test
Chao-ying Fu (6): Fix libsanitizer linkage options for cross toolchains Enable LSAN and TSAN for mips with the 64-bit abi Hazard barrier return support Add support for -mclib=[newlib,small,tiny] Check anti-dependence between 0 and 3 for loads Fix pr54240 Faraz Shahbazker (1): Add shadow-map for n32 ABI Jaydeep Patil (2): P5600: Option -msched-weight added MIPSR6: Fix ICE occurred in R6 target Jean Lee (1): Add uclibc support Matthew Fortune (21): Testsuite: Accept jrc for clear cache intrinsic Ensure _UNDER_TEST executables are target based MIPS: Add support for -mdead-loads Add -msdata-num and -msdata-opt-list support Add -munique-sections feature Add support for a limit for inlining memcpy Add -minline-intermix to ignore mips16/nomips16 Fix negative offset memory addressing MIPSR6: Define new R6 FPU instructions MSA: Make MSA and microMIPS R5 unsupported Account for LWL/LWR in store_by_pieces_p Testsuite: Fix insn-*.c tests from trunk Testsuite: Adjust tests to cope with -mips16 Testsuite: Use HAS_LDC instead of a specific ISA Testsuite: Disable the time-profiler-2.c test Testsuite: Skip tests making calls to variables MIPSR6: Mark R6 unaligned access Frame barrier fix Lightweight fix for shrink-wrapping inhibition Disable ssa-dom-cse-2.c for MIPS lp64 Add -mmxu and -mno-mxu driver pass through Mihailo Stojanovic (6): Fix MSA SUBREG moves on big-endian targets Test solution on dspmac builtins Inefficient scattered double precision load in MSA Performance drop in mips-img-linux-gnu-gcc 7.x Inefficient 64-bit signed modulo by powers of two Implement synthesised conditional xor/or Robert Suchanek (7): Multilib changes Possible inlining improvements with -Os Add -march=interaptiv-mr2 with MIPS16E2 Load/store bonding improvements Fix wrong instruction in the delay slot Improve aligned straight line memcpy Remove redundant moves Simon Dardis (2): Add -mfunc-opt-list=<FILE> Prevent FP values being spilled to GPRs abennett (1): Testsuite: Fix tests properly for compact-branches dragan.mladjenovic (8): Autovectorization failures on BE targets Test float32-basic.c fails with -mabi=64 -EB nanoMIPS: unnecessary AND following an EXT Performance degradation for iDCT-4M example Make rtl if-conversion more common Fix register spill issue for soft-float glibc 2.29 fmadd.w should be restricted to mipsr6 Add EHB after last load if branch within 16 inst. mfortune (2): Add -mgrow-frame-downwards Add offset shrinking pass (-mshrink-offsets) config-ml.in | 25 +- configure | 25 + configure.ac | 25 + contrib/test_installed | 12 +- gcc/Makefile.in | 20 + gcc/calls.cc | 7 +- gcc/config.gcc | 12 +- gcc/config/aarch64/aarch64-protos.h | 2 +- gcc/config/aarch64/aarch64.cc | 8 +- gcc/config/aarch64/aarch64.h | 7 +- gcc/config/arm/arm-protos.h | 2 +- gcc/config/arm/arm.cc | 6 +- gcc/config/arm/arm.h | 4 +- gcc/config/c6x/c6x-protos.h | 2 +- gcc/config/c6x/c6x.cc | 5 +- gcc/config/c6x/c6x.h | 5 +- gcc/config/mips/24k.md | 68 +- gcc/config/mips/constraints.md | 33 +- gcc/config/mips/i6400.md | 6 +- gcc/config/mips/loongson-mmi.md | 2 +- gcc/config/mips/m6200.md | 229 ++ gcc/config/mips/mips-cpus.def | 5 + gcc/config/mips/mips-dsp.md | 17 +- gcc/config/mips/mips-msa.md | 1105 +++--- gcc/config/mips/mips-opts.h | 7 + gcc/config/mips/mips-protos.h | 13 +- gcc/config/mips/mips-tables.opt | 58 +- gcc/config/mips/mips.cc | 3301 ++++++++++++++++- gcc/config/mips/mips.h | 105 +- gcc/config/mips/mips.md | 425 ++- gcc/config/mips/mips.opt | 84 +- gcc/config/mips/ml-img-elf | 16 + gcc/config/mips/ml-img-linux | 14 + gcc/config/mips/ml-mti-elf | 31 + gcc/config/mips/ml-mti-linux | 27 + gcc/config/mips/mti-elf.h | 2 + gcc/config/mips/mti-linux.h | 2 + gcc/config/mips/p6600.md | 4 +- gcc/config/mips/predicates.md | 12 +- gcc/config/mips/t-img-elf | 33 - gcc/config/mips/t-img-linux | 38 - gcc/config/mips/t-mips-multi | 452 +++ gcc/config/mips/t-mti-elf | 48 - gcc/config/mips/t-mti-linux | 158 - gcc/config/nios2/nios2-protos.h | 2 +- gcc/config/nios2/nios2.cc | 2 +- gcc/config/nios2/nios2.h | 4 +- gcc/config/pa/pa.h | 2 +- gcc/config/rs6000/aix.h | 2 +- gcc/config/rs6000/darwin.h | 2 +- gcc/config/rs6000/freebsd64.h | 2 +- gcc/config/rs6000/linux64.h | 2 +- gcc/configure | 8 +- gcc/configure.ac | 3 + gcc/doc/extend.texi | 17 + gcc/doc/invoke.texi | 127 +- gcc/doc/md.texi | 11 +- gcc/doc/tm.texi | 5 + gcc/doc/tm.texi.in | 2 + gcc/expr.cc | 4 +- gcc/function.cc | 10 +- gcc/fwprop.cc | 38 +- gcc/gcc.cc | 20 +- gcc/gcse.cc | 3 + gcc/genmultilib | 3 - gcc/ifcvt.cc | 135 + gcc/ipa-inline.cc | 4 +- gcc/params.opt | 8 + gcc/reorg.cc | 28 + gcc/target.def | 8 + gcc/targhooks.cc | 9 + gcc/targhooks.h | 5 + .../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.dg/memcpy-4.c | 7 +- .../gcc.dg/tree-prof/time-profiler-2.c | 1 + gcc/testsuite/gcc.dg/tree-ssa/ssa-dom-cse-2.c | 2 +- gcc/testsuite/gcc.target/mips/branch-cost-1.c | 2 +- .../gcc.target/mips/call-clobbered-1.c | 2 +- .../gcc.target/mips/call-clobbered-2.c | 3 +- .../gcc.target/mips/call-clobbered-3.c | 2 +- .../gcc.target/mips/call-clobbered-5.c | 2 +- gcc/testsuite/gcc.target/mips/clear-cache-1.c | 2 +- gcc/testsuite/gcc.target/mips/cond_xor.c | 15 + gcc/testsuite/gcc.target/mips/cond_xor1.c | 15 + gcc/testsuite/gcc.target/mips/cond_xor2.c | 15 + gcc/testsuite/gcc.target/mips/ds-schedule-2.c | 4 +- gcc/testsuite/gcc.target/mips/fix-i6500.c | 18 + .../mips/hazard-barrier-return-attribute.c | 2 +- gcc/testsuite/gcc.target/mips/iamr2.c | 51 + .../gcc.target/mips/inline-intermix-1.c | 13 + .../gcc.target/mips/inline-intermix-2.c | 13 + .../gcc.target/mips/inline-intermix-3.c | 13 + .../gcc.target/mips/inline-intermix-4.c | 13 + gcc/testsuite/gcc.target/mips/insn-casesi.c | 6 +- .../gcc.target/mips/insn-tablejump.c | 6 +- .../gcc.target/mips/inter/msa-inter.exp | 67 + gcc/testsuite/gcc.target/mips/inter/msa_1.h | 23 + .../gcc.target/mips/inter/msa_1_main.c | 8 + gcc/testsuite/gcc.target/mips/inter/msa_1_x.c | 35 + gcc/testsuite/gcc.target/mips/inter/msa_1_y.c | 14 + .../gcc.target/mips/interrupt_handler-bug-1.c | 2 +- .../gcc.target/mips/mac_zero_reload.c | 32 + gcc/testsuite/gcc.target/mips/memcpy-2.c | 12 + gcc/testsuite/gcc.target/mips/memcpy-3.c | 14 + gcc/testsuite/gcc.target/mips/memcpy-4.c | 14 + gcc/testsuite/gcc.target/mips/mips.exp | 26 +- gcc/testsuite/gcc.target/mips/mod-pow2.c | 176 + gcc/testsuite/gcc.target/mips/movdf-1.c | 2 +- gcc/testsuite/gcc.target/mips/movdf-2.c | 2 +- gcc/testsuite/gcc.target/mips/movdf-3.c | 2 +- gcc/testsuite/gcc.target/mips/msa-builtins.c | 334 +- .../gcc.target/mips/msa-fuse-madd-double.c | 52 + .../gcc.target/mips/msa-fuse-madd-single.c | 51 + .../gcc.target/mips/msa-fuse-vect-init.c | 18 + .../gcc.target/mips/msa-scattered-load.c | 20 + gcc/testsuite/gcc.target/mips/msa.c | 26 +- gcc/testsuite/gcc.target/mips/near-far-1.c | 10 +- gcc/testsuite/gcc.target/mips/near-far-2.c | 10 +- gcc/testsuite/gcc.target/mips/near-far-3.c | 10 +- gcc/testsuite/gcc.target/mips/near-far-4.c | 10 +- gcc/testsuite/gcc.target/mips/pr54240.c | 2 +- .../gcc.target/mips/r10k-cache-barrier-9.c | 1 + gcc/testsuite/gcc.target/mips/stack-1.c | 1 + gcc/testsuite/gcc.target/mips/tls-1.c | 10 + gcc/testsuite/gcc.target/mips/union-zext.c | 29 + .../gcc.target/mips/unique-sections-bad.c | 3 + .../gcc.target/mips/unique-sections.c | 15 + .../gcc.target/mips/unique-sections.txt | 3 + gcc/testsuite/lib/target-supports.exp | 20 + gcc/varasm.cc | 11 + libsanitizer/Makefile.in | 1 + libsanitizer/asan/Makefile.in | 1 + libsanitizer/asan/asan_descriptions.cpp | 5 + libsanitizer/asan/asan_linux.cpp | 2 +- libsanitizer/asan/asan_mapping.h | 13 +- libsanitizer/configure | 14 +- libsanitizer/configure.ac | 9 + libsanitizer/configure.tgt | 5 + libsanitizer/hwasan/Makefile.in | 1 + libsanitizer/interception/Makefile.in | 1 + .../interception/interception_linux.cpp | 6 +- .../interception/interception_linux.h | 6 +- libsanitizer/libbacktrace/Makefile.in | 1 + libsanitizer/libsanitizer.spec.in | 2 + libsanitizer/lsan/Makefile.in | 1 + libsanitizer/sanitizer_common/Makefile.in | 1 + .../sanitizer_common/sanitizer_common.cpp | 10 +- .../sanitizer_common/sanitizer_linux.cpp | 6 +- .../sanitizer_common/sanitizer_platform.h | 9 + .../sanitizer_platform_interceptors.h | 14 +- .../sanitizer_platform_limits_posix.cpp | 46 +- .../sanitizer_platform_limits_posix.h | 9 +- .../sanitizer_unwind_linux_libcdep.cpp | 2 + libsanitizer/tsan/Makefile.in | 1 + libsanitizer/ubsan/Makefile.in | 1 + 157 files changed, 6951 insertions(+), 1431 deletions(-) create mode 100644 gcc/config/mips/m6200.md create mode 100644 gcc/config/mips/ml-img-elf create mode 100644 gcc/config/mips/ml-img-linux create mode 100644 gcc/config/mips/ml-mti-elf create mode 100644 gcc/config/mips/ml-mti-linux delete mode 100644 gcc/config/mips/t-img-elf delete mode 100644 gcc/config/mips/t-img-linux create mode 100644 gcc/config/mips/t-mips-multi delete mode 100644 gcc/config/mips/t-mti-elf delete mode 100644 gcc/config/mips/t-mti-linux create mode 100644 gcc/testsuite/gcc.target/mips/cond_xor.c create mode 100644 gcc/testsuite/gcc.target/mips/cond_xor1.c create mode 100644 gcc/testsuite/gcc.target/mips/cond_xor2.c create mode 100644 gcc/testsuite/gcc.target/mips/fix-i6500.c create mode 100644 gcc/testsuite/gcc.target/mips/iamr2.c create mode 100644 gcc/testsuite/gcc.target/mips/inline-intermix-1.c create mode 100644 gcc/testsuite/gcc.target/mips/inline-intermix-2.c create mode 100644 gcc/testsuite/gcc.target/mips/inline-intermix-3.c create mode 100644 gcc/testsuite/gcc.target/mips/inline-intermix-4.c create mode 100644 gcc/testsuite/gcc.target/mips/inter/msa-inter.exp create mode 100644 gcc/testsuite/gcc.target/mips/inter/msa_1.h create mode 100644 gcc/testsuite/gcc.target/mips/inter/msa_1_main.c create mode 100644 gcc/testsuite/gcc.target/mips/inter/msa_1_x.c create mode 100644 gcc/testsuite/gcc.target/mips/inter/msa_1_y.c create mode 100644 gcc/testsuite/gcc.target/mips/mac_zero_reload.c create mode 100644 gcc/testsuite/gcc.target/mips/memcpy-2.c create mode 100644 gcc/testsuite/gcc.target/mips/memcpy-3.c create mode 100644 gcc/testsuite/gcc.target/mips/memcpy-4.c create mode 100644 gcc/testsuite/gcc.target/mips/mod-pow2.c create mode 100644 gcc/testsuite/gcc.target/mips/msa-fuse-madd-double.c create mode 100644 gcc/testsuite/gcc.target/mips/msa-fuse-madd-single.c create mode 100644 gcc/testsuite/gcc.target/mips/msa-fuse-vect-init.c create mode 100644 gcc/testsuite/gcc.target/mips/msa-scattered-load.c create mode 100644 gcc/testsuite/gcc.target/mips/tls-1.c create mode 100644 gcc/testsuite/gcc.target/mips/union-zext.c create mode 100644 gcc/testsuite/gcc.target/mips/unique-sections-bad.c create mode 100644 gcc/testsuite/gcc.target/mips/unique-sections.c create mode 100644 gcc/testsuite/gcc.target/mips/unique-sections.txt -- 2.34.1