https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87871
Bug ID: 87871 Summary: [9 Regression] testcases fail after r265398 on arm Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: clyon at gcc dot gnu.org Target Milestone: --- The following tests fail on arm after r265398 (combine: Do not combine moves from hard registers). gcc.c-torture/execute/920428-2.c -O2 execution test gcc.c-torture/execute/920428-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/920428-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.c-torture/execute/920428-2.c -O3 -g execution test gcc.c-torture/execute/920501-7.c -O2 execution test gcc.c-torture/execute/920501-7.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/920501-7.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.c-torture/execute/920501-7.c -O3 -g execution test gcc.c-torture/execute/built-in-setjmp.c -O2 execution test gcc.c-torture/execute/built-in-setjmp.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/built-in-setjmp.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.c-torture/execute/built-in-setjmp.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.c-torture/execute/built-in-setjmp.c -O3 -g execution test gcc.c-torture/execute/builtins/memcpy-chk.c execution, -O2 gcc.c-torture/execute/builtins/memcpy-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/memcpy-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/memcpy-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/memmove-chk.c execution, -O2 gcc.c-torture/execute/builtins/memmove-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/memmove-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/memmove-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/mempcpy-chk.c execution, -O2 gcc.c-torture/execute/builtins/mempcpy-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/mempcpy-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/mempcpy-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/mempcpy-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/memset-chk.c execution, -O2 gcc.c-torture/execute/builtins/memset-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/memset-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/memset-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/memset-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/snprintf-chk.c execution, -O2 gcc.c-torture/execute/builtins/snprintf-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/snprintf-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/snprintf-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/snprintf-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/sprintf-chk.c execution, -O2 gcc.c-torture/execute/builtins/sprintf-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/sprintf-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/sprintf-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/sprintf-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/stpcpy-chk.c execution, -O2 gcc.c-torture/execute/builtins/stpcpy-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/stpcpy-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/stpcpy-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/stpcpy-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/stpncpy-chk.c execution, -O2 gcc.c-torture/execute/builtins/stpncpy-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/stpncpy-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/stpncpy-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/strcat-chk.c execution, -O2 gcc.c-torture/execute/builtins/strcat-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/strcat-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/strcat-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/strcat-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/strcpy-chk.c execution, -O2 gcc.c-torture/execute/builtins/strcpy-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/strcpy-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/strcpy-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/strcpy-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/strncat-chk.c execution, -O2 gcc.c-torture/execute/builtins/strncat-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/strncat-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/strncat-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/strncat-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/strncpy-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/strncpy-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/strncpy-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/vsnprintf-chk.c execution, -O2 gcc.c-torture/execute/builtins/vsnprintf-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/vsnprintf-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/vsnprintf-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/vsnprintf-chk.c execution, -O3 -g gcc.c-torture/execute/builtins/vsprintf-chk.c execution, -O2 gcc.c-torture/execute/builtins/vsprintf-chk.c execution, -O2 -flto -fno-use-linker-plugin -flto-partition=none gcc.c-torture/execute/builtins/vsprintf-chk.c execution, -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects gcc.c-torture/execute/builtins/vsprintf-chk.c execution, -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions gcc.c-torture/execute/builtins/vsprintf-chk.c execution, -O3 -g gcc.c-torture/execute/comp-goto-2.c -O2 execution test gcc.c-torture/execute/comp-goto-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/comp-goto-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.c-torture/execute/comp-goto-2.c -O3 -g execution test gcc.c-torture/execute/nestfunc-5.c -O2 execution test gcc.c-torture/execute/nestfunc-5.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/nestfunc-5.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.c-torture/execute/nestfunc-5.c -O3 -g execution test gcc.c-torture/execute/pr24135.c -O2 execution test gcc.c-torture/execute/pr24135.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/pr24135.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.c-torture/execute/pr24135.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.c-torture/execute/pr24135.c -O3 -g execution test gcc.c-torture/execute/pr51447.c -O2 execution test gcc.c-torture/execute/pr51447.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/pr51447.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.c-torture/execute/pr51447.c -O3 -g execution test gcc.c-torture/execute/pr60003.c -O2 execution test gcc.c-torture/execute/pr60003.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.c-torture/execute/pr60003.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.c-torture/execute/pr60003.c -O3 -g execution test gcc.dg/ira-shrinkwrap-prep-1.c scan-rtl-dump ira "Split live-range of register" gcc.dg/ira-shrinkwrap-prep-1.c scan-rtl-dump pro_and_epilogue "Performing shrink-wrapping" gcc.dg/ira-shrinkwrap-prep-2.c scan-rtl-dump ira "Split live-range of register" gcc.dg/non-local-goto-1.c execution test gcc.dg/non-local-goto-2.c execution test gcc.dg/torture/stackalign/comp-goto-1.c -O2 execution test gcc.dg/torture/stackalign/comp-goto-1.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/comp-goto-1.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/comp-goto-1.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/comp-goto-1.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/comp-goto-1.c -O2 -fpic execution test gcc.dg/torture/stackalign/comp-goto-1.c -O3 -g execution test gcc.dg/torture/stackalign/comp-goto-1.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/nested-5.c -O2 execution test gcc.dg/torture/stackalign/nested-5.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/nested-5.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/nested-5.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/nested-5.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/nested-5.c -O2 -fpic execution test gcc.dg/torture/stackalign/nested-5.c -O3 -g execution test gcc.dg/torture/stackalign/nested-5.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O2 execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O2 -fpic execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions -fpic execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O3 -g execution test gcc.dg/torture/stackalign/non-local-goto-1.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O2 execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O2 -fpic execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions -fpic execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O3 -g execution test gcc.dg/torture/stackalign/non-local-goto-2.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O2 execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O2 -fpic execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions -fpic execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O3 -g execution test gcc.dg/torture/stackalign/non-local-goto-3.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O2 execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O2 -fpic execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O3 -g execution test gcc.dg/torture/stackalign/non-local-goto-4.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O2 execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O2 -fpic execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O3 -g execution test gcc.dg/torture/stackalign/non-local-goto-5.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/setjmp-1.c -O2 execution test gcc.dg/torture/stackalign/setjmp-1.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/setjmp-1.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/setjmp-1.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects execution test gcc.dg/torture/stackalign/setjmp-1.c -O2 -flto -fuse-linker-plugin -fno-fat-lto-objects -fpic execution test gcc.dg/torture/stackalign/setjmp-1.c -O2 -fpic execution test gcc.dg/torture/stackalign/setjmp-1.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.dg/torture/stackalign/setjmp-1.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions -fpic execution test gcc.dg/torture/stackalign/setjmp-1.c -O3 -g execution test gcc.dg/torture/stackalign/setjmp-1.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/setjmp-3.c -O2 execution test gcc.dg/torture/stackalign/setjmp-3.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/setjmp-3.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/setjmp-3.c -O2 -fpic execution test gcc.dg/torture/stackalign/setjmp-3.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.dg/torture/stackalign/setjmp-3.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions -fpic execution test gcc.dg/torture/stackalign/setjmp-3.c -O3 -g execution test gcc.dg/torture/stackalign/setjmp-3.c -O3 -g -fpic execution test gcc.dg/torture/stackalign/setjmp-4.c -O2 execution test gcc.dg/torture/stackalign/setjmp-4.c -O2 -flto -fno-use-linker-plugin -flto-partition=none execution test gcc.dg/torture/stackalign/setjmp-4.c -O2 -flto -fno-use-linker-plugin -flto-partition=none -fpic execution test gcc.dg/torture/stackalign/setjmp-4.c -O2 -fpic execution test gcc.dg/torture/stackalign/setjmp-4.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions execution test gcc.dg/torture/stackalign/setjmp-4.c -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions -fpic execution test gcc.dg/torture/stackalign/setjmp-4.c -O3 -g execution test gcc.dg/torture/stackalign/setjmp-4.c -O3 -g -fpic execution test gcc.target/arm/addr-modes-float.c scan-assembler vst3.8\t{d[02468], d[02468], d[02468]}, \\[r[0-9]+\\]! gcc.target/arm/armv8_2-fp16-move-1.c scan-assembler-times strh\\tr[0-9]+ 2 gcc.target/arm/armv8_2-fp16-move-1.c scan-assembler-times vst1\\.16\\t{d[0-9]+\\[[0-9]+\\]}, \\[r[0-9]+\\] 2