From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id E980E3857C40; Wed, 7 Oct 2020 11:42:45 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E980E3857C40 From: "rguenth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug bootstrap/95582] [11 Regression] LTO lean + PGO bootstrap is broken in Ada Date: Wed, 07 Oct 2020 11:42:45 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: bootstrap X-Bugzilla-Version: 11.0 X-Bugzilla-Keywords: ice-on-valid-code X-Bugzilla-Severity: normal X-Bugzilla-Who: rguenth at gcc dot gnu.org 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: 11.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: Wed, 07 Oct 2020 11:42:46 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D95582 --- Comment #16 from Richard Biener --- (In reply to Richard Biener from comment #15) > The patch causes g++.dg/vect/simd-bool-comparison-1.cc to FAIL because > it will result in signed BOOLEAN_TYPEs with precision 1 rejected. Those = we > use for build_nonstandard_boolean_type via >=20 > #0 0x0000000001b93458 in build_truth_vector_type_for_mode (nunits=3D..., > mask_mode=3DE_DImode) at /home/rguenther/src/gcc3/gcc/tree.c:10931 > #1 0x0000000001b935a2 in build_truth_vector_type_for (vectype=3D 0x7ffff69c0bd0>) at /home/rguenther/src/gcc3/gcc/tree.c:10949 > #2 0x0000000001b96175 in truth_type_for (type=3D) > at /home/rguenther/src/gcc3/gcc/tree.c:11764 > #3 0x0000000001ae92b6 in get_mask_type_for_scalar_type (vinfo=3D0x3beccd= 0, > scalar_type=3D, group_size=3D0) > at /home/rguenther/src/gcc3/gcc/tree-vect-stmts.c:11137 > #4 0x00000000028cfaee in vect_recog_mask_conversion_pattern > (vinfo=3D0x3beccd0, stmt_vinfo=3D0x3da6ae0, type_out=3D0x7fffffffc320) > at /home/rguenther/src/gcc3/gcc/tree-vect-patterns.c:4354 >=20 > which then causes the VECT_SCALAR_BOOLEAN_TYPE_P result to differ even for > C++ > at >=20 > #1 0x0000000001abfa11 in VECT_SCALAR_BOOLEAN_TYPE_P (TYPE=3D 0x7ffff69c01f8>) at /home/rguenther/src/gcc3/gcc/tree-vectorizer.h:1425 > #2 0x0000000001ae41c1 in vect_is_simple_cond (cond=3D 22>, vinfo=3D0x3beccd0, stmt_info=3D0x3da7410, slp_node=3D0x0,=20 > comp_vectype=3D0x7fffffffbbe0, dts=3D0x7fffffffbbb0, vectype=3D 0x7ffff68f7150>) at /home/rguenther/src/gcc3/gcc/tree-vect-stmts.c:9711 > #3 0x0000000001ae49bf in vectorizable_condition (vinfo=3D0x3beccd0, > stmt_info=3D0x3da7410, gsi=3D0x0, vec_stmt=3D0x0, slp_node=3D0x0, > cost_vec=3D0x7fffffffc1b8) > at /home/rguenther/src/gcc3/gcc/tree-vect-stmts.c:9876 >=20 > now the Ada issue was about non-1 precision BOOLEAN_TYPE, so we could nar= row > down the fix. But then the question is why we allow signed 1-bit bools > but not signed 1-bit integers... >=20 > So I'm first re-testing >=20 > #define VECT_SCALAR_BOOLEAN_TYPE_P(TYPE) \ > - (TREE_CODE (TYPE) =3D=3D BOOLEAN_TYPE \ > - || ((TREE_CODE (TYPE) =3D=3D INTEGER_TYPE \ > - || TREE_CODE (TYPE) =3D=3D ENUMERAL_TYPE) \ > - && TYPE_PRECISION (TYPE) =3D=3D 1 \ > - && TYPE_UNSIGNED (TYPE))) > + (INTEGRAL_TYPE_P (TYPE) \ > + && TYPE_PRECISION (TYPE) =3D=3D 1) FAIL: gcc.dg/vect/vect-cond-reduc-4.c -flto -ffat-lto-objects=20 scan-tree-dump-times vect "LOOP VECTORIZED" 2 FAIL: gcc.dg/vect/vect-cond-reduc-4.c scan-tree-dump-times vect "LOOP VECTORIZED" 2 FAIL: gcc.target/i386/avx512vl-pr88464-1.c scan-tree-dump-times vect "loop vectorized using 32 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-1.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/avx512vl-pr88464-11.c scan-tree-dump-times vect "loop vectorized using 16 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-11.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/avx512vl-pr88464-13.c scan-tree-dump-times vect "loop vectorized using 32 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-13.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/avx512vl-pr88464-15.c scan-tree-dump-times vect "loop vectorized using 16 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-15.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/avx512vl-pr88464-3.c scan-tree-dump-times vect "loop vectorized using 16 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-3.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/avx512vl-pr88464-5.c scan-tree-dump-times vect "loop vectorized using 32 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-5.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/avx512vl-pr88464-7.c scan-tree-dump-times vect "loop vectorized using 16 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-7.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/avx512vl-pr88464-9.c scan-tree-dump-times vect "loop vectorized using 32 byte vectors" 4 FAIL: gcc.target/i386/avx512vl-pr88464-9.c scan-tree-dump-times vect "vectorized 1 loops in function" 4 FAIL: gcc.target/i386/pr87007-4.c scan-assembler-times vxorps[^\\n\\r]*xmm[= 0-9] 0 FAIL: gcc.target/i386/pr87007-5.c scan-assembler-times vxorps[^\\n\\r]*xmm[= 0-9] 0 FAIL: gcc.target/i386/vectorize10.c scan-tree-dump vect "vectorized 1 loops= "=