From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 77A64385ED40; Thu, 27 Jan 2022 09:36:34 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 77A64385ED40 From: "ro at CeBiTec dot Uni-Bielefeld.DE" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/104198] [12 regression] ifcvf change breaks 64-bit SPARC bootstrap Date: Thu, 27 Jan 2022 09:36:34 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: rtl-optimization X-Bugzilla-Version: 12.0 X-Bugzilla-Keywords: build, wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: ro at CeBiTec dot Uni-Bielefeld.DE X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P1 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 12.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Jan 2022 09:36:34 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D104198 --- Comment #11 from ro at CeBiTec dot Uni-Bielefeld.DE --- > --- Comment #10 from rdapp at linux dot ibm.com --- > Created attachment 52297 > --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=3D52297&action=3Dedit > Tentative patch [...] > A full testsuite run on gcc202 just finished, 83 FAILs, but I haven't yet= done > a comparison run from before the ifcvt changes. I've now successfully completed a sparcv9-sun-solaris2.11 bootstrap (sparc-sun-solaris2.11 for comparison with last night's bootstrap of an unpatched tree still running), so we're mostly good again. Thanks. However, I see a couple of regressions compared to the last successful bootstrap: +FAIL: gfortran.dg/maxloc_2.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (internal compiler error: Segmentation Fault) +FAIL: gfortran.dg/maxloc_2.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess errors) +UNRESOLVED: gfortran.dg/maxloc_2.f90 -O3 -fomit-frame-pointer -funroll-l= oops -fpeel-loops -ftracer -finline-functions compilation failed to produce executable +FAIL: gfortran.dg/minloc_1.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (internal compiler error: Segmentation Fault) +FAIL: gfortran.dg/minloc_1.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess errors) +UNRESOLVED: gfortran.dg/minloc_1.f90 -O3 -fomit-frame-pointer -funroll-l= oops -fpeel-loops -ftracer -finline-functions compilation failed to produce executable +FAIL: gfortran.dg/minlocval_3.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (internal compiler error: Segmentation Fault) +FAIL: gfortran.dg/minlocval_3.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess errors) +UNRESOLVED: gfortran.dg/minlocval_3.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions compilation failed= to produce executable +FAIL: gfortran.dg/minlocval_3.f90 -O3 -g (internal compiler error: Segmentation Fault) +FAIL: gfortran.dg/minlocval_3.f90 -O3 -g (test for excess errors) +UNRESOLVED: gfortran.dg/minlocval_3.f90 -O3 -g compilation failed to produce executable +FAIL: gfortran.dg/g77/19990826-3.f -O (internal compiler error: Segmentation Fault) +FAIL: gfortran.dg/g77/19990826-3.f -O (test for excess errors) +FAIL: ext/special_functions/hyperg/check_nan.cc (test for excess errors) +UNRESOLVED: ext/special_functions/hyperg/check_nan.cc compilation failed to produce executable +FAIL: ext/special_functions/hyperg/check_value.cc (test for excess errors) +UNRESOLVED: ext/special_functions/hyperg/check_value.cc compilation failed= to produce executable +FAIL: ext/special_functions/hyperg/compile.cc (test for excess errors) +FAIL: tr1/5_numerical_facilities/special_functions/17_hyperg/check_nan.cc (test for excess errors) +UNRESOLVED: tr1/5_numerical_facilities/special_functions/17_hyperg/check_nan.cc compila= tion failed to produce executable +FAIL: tr1/5_numerical_facilities/special_functions/17_hyperg/check_value.cc (test for excess errors) +UNRESOLVED: tr1/5_numerical_facilities/special_functions/17_hyperg/check_value.cc compilation failed to produce executable +FAIL: tr1/5_numerical_facilities/special_functions/17_hyperg/compile.cc (t= est for excess errors) +FAIL: tr1/5_numerical_facilities/special_functions/17_hyperg/compile_2.cc (test for excess errors) for both 32 and 64-bit multilibs. All of them are the same, it seems: FAIL: gfortran.dg/maxloc_2.f90 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess errors) Excess errors: during RTL pass: ce1 /vol/gcc/src/hg/master/local/gcc/testsuite/gfortran.dg/maxloc_2.f90:155:3: internal compiler error: Segmentation Fault 0x100fed85b crash_signal /vol/gcc/src/hg/master/local/gcc/toplev.cc:322 0x100f5de28 copy_rtx(rtx_def*) /vol/gcc/src/hg/master/local/gcc/rtl.cc:290 0x101b0905b noce_convert_multiple_sets_1 /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:3394 0x101b1027f noce_convert_multiple_sets /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:3281 0x101b12a9f noce_process_if_block /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:3731 0x101b12a9f noce_find_if_block /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:4485 0x101b12a9f find_if_header /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:4690 0x101b12a9f if_convert /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:5831 0x101b13ca7 rest_of_handle_if_conversion /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:5896 0x101b13ca7 execute /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:5936 gdb shows gdb) run /vol/gcc/src/hg/master/local/gcc/testsuite/gfortran.dg/maxloc_2.f90 -quiet -mcpu=3Dv9 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftr= acer -o maxloc_2.s Starting program: /var/gcc/regression/master/11.4-gcc-64/build/gcc/testsuite/gfortran/f951 /vol/gcc/src/hg/master/local/gcc/testsuite/gfortran.dg/maxloc_2.f90 -quiet -mcpu=3Dv9 -O3 -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -o maxloc_2.s [Thread debugging using libthread_db enabled] [New Thread 1 (LWP 1)] Thread 2 received signal SIGSEGV, Segmentation fault. [Switching to Thread 1 (LWP 1)] copy_rtx (orig=3D0x0) at /vol/gcc/src/hg/master/local/gcc/rtl.cc:290 290 code =3D GET_CODE (orig); (gdb) bt #0 copy_rtx (orig=3D0x0) at /vol/gcc/src/hg/master/local/gcc/rtl.cc:290 #1 0x0000000101b0905c in noce_convert_multiple_sets_1 (if_info=3D0xffffffff7fffdbc8, need_no_cmov=3D0xffffffff7fffdbe0, rewired_src=3D0xffffffff7fffdc10, targets=3D0xffffffff7fffdbc0, temporaries=3D0xffffffff7fffdbc8, unmodified_insns=3D0xffffffff7fffdbd0, last_needs_comparison=3D0xffffffff7fffdbb4) at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:3394 #2 0x0000000101b10280 in noce_convert_multiple_sets (if_info=3D) at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:3280 #3 0x0000000101b12aa0 in noce_process_if_block (if_info=3D0xffffffff7fffde= 08) at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:3731 #4 noce_find_if_block (pass=3D2, else_edge=3D 202)>, then_edge=3D 201)>, test_bb=3D) at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:4485 #5 find_if_header (pass=3D2, test_bb=3D) at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:4690 #6 if_convert (after_combine=3D) at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:5831 #7 0x0000000101b13ca8 in rest_of_handle_if_conversion () at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:5896 #8 (anonymous namespace)::pass_rtl_ifcvt::execute (this=3D0x0) at /vol/gcc/src/hg/master/local/gcc/ifcvt.cc:5936 #9 0x0000000100ebb0c4 in execute_one_pass (pass=3D) at /vol/gcc/src/hg/master/local/gcc/passes.cc:2637 #10 0x0000000100ebbd38 in execute_pass_list_1 (pass=3D) at /vol/gcc/src/hg/master/local/gcc/passes.cc:2737 #11 0x0000000100ebbd58 in execute_pass_list_1 (pass=3D) at /vol/gcc/src/hg/master/local/gcc/passes.cc:= 2738 #12 0x0000000100ebbdc0 in execute_pass_list (fn=3D0xffffffff7acac0b8, pass=3D) at /vol/gcc/src/hg/master/local/gcc/passes.cc:2748 #13 0x00000001009ad934 in cgraph_node::expand (this=3D) at /vol/gcc/src/hg/master/local/gcc/context.h= :48 #14 cgraph_node::expand (this=3D) at /vol/gcc/src/hg/master/local/gcc/cgraphunit.cc:1787 #15 0x00000001009afb78 in expand_all_functions () at /vol/gcc/src/hg/master/local/gcc/cgraphunit.cc:1998 #16 symbol_table::compile (this=3D0xffffffff7ac10000) at /vol/gcc/src/hg/master/local/gcc/cgraphunit.cc:2348 #17 0x00000001009b42c0 in symbol_table::compile (this=3D0xffffffff7ac10000)= at /vol/gcc/src/hg/master/local/gcc/cgraphunit.cc:2261 #18 symbol_table::finalize_compilation_unit (this=3D0xffffffff7ac10000) at /vol/gcc/src/hg/master/local/gcc/cgraphunit.cc:2529 #19 0x0000000100fedbf0 in compile_file () at /vol/gcc/src/hg/master/local/gcc/toplev.cc:479 #20 0x0000000100ff2200 in do_compile (no_backend=3Dfalse) at /vol/gcc/src/hg/master/local/gcc/toplev.cc:2158 #21 toplev::main (this=3D, argc=3D, argv=3D) at /vol/gcc/src/hg/master/local/gcc/toplev.cc:2310 #22 0x0000000101cf90a8 in main (argc=3D, argv=3D0xffffffff7f= ffe7d8) at /vol/gcc/src/hg/master/local/gcc/main.cc:39=