From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id B1F8E384B11C; Wed, 24 Apr 2024 03:12:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B1F8E384B11C DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1713928366; bh=cMfw7ingDMEKDi7OWh4iUdXFPhGgMUDzhVzu05LwhMA=; h=From:To:Subject:Date:From; b=TksewzHdjFE5FYnIsXhap08TUViGSTSzVdKETDrLmKqYL8lZi6k+pfsxDmslOLhMl HhocyVdAt0Sli1zoDvToGwVHzDHBewh2MqWKcgQGund01fqq7ItelxA5PYO9nGbdki HdMmb/YBVxPt1vYRjF7XGzTyfOI69ksYuRXjnRes= From: "zhendong.su at inf dot ethz.ch" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/114832] New: ICE at -O{2,3} with "-fno-tree-loop-if-convert -fno-tree-loop-distribute-patterns -ftree-vectorize" on x86_64-linux-gnu: in verify_dominators, at dominance.cc:1194 Date: Wed, 24 Apr 2024 03:12:45 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: unknown X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: zhendong.su at inf dot ethz.ch X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: 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 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D114832 Bug ID: 114832 Summary: ICE at -O{2,3} with "-fno-tree-loop-if-convert -fno-tree-loop-distribute-patterns -ftree-vectorize" on x86_64-linux-gnu: in verify_dominators, at dominance.cc:1194 Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: zhendong.su at inf dot ethz.ch Target Milestone: --- It appears to be a recent regression and does not reproduce with 13.2 and earlier. Compiler Explorer: https://godbolt.org/z/1do4bc9W7 [515] % gcctk -v Using built-in specs. COLLECT_GCC=3Dgcctk COLLECT_LTO_WRAPPER=3D/local/suz-local/software/local/gcc-trunk/libexec/gcc= /x86_64-pc-linux-gnu/14.0.1/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: ../gcc-trunk/configure --disable-bootstrap --enable-checking=3Dyes --prefix=3D/local/suz-local/software/local/gcc-trunk --enable-sanitizers --enable-languages=3Dc,c++ --disable-werror --enable-mu= ltilib Thread model: posix Supported LTO compression algorithms: zlib gcc version 14.0.1 20240423 (experimental) (GCC)=20 [516] %=20 [516] % gcctk -c -O2 -fno-tree-loop-if-convert -fno-tree-loop-distribute-patterns -ftree-vectorize small.c=20 small.c: In function =E2=80=98e=E2=80=99: small.c:2:6: error: dominator of 6 should be 13, not 5 2 | void e() { | ^ during GIMPLE pass: vect small.c:2:6: internal compiler error: in verify_dominators, at dominance.cc:1194 0x7a1828 verify_dominators(cdi_direction) ../../gcc-trunk/gcc/dominance.cc:1194 0x145a0d0 checking_verify_dominators(cdi_direction) ../../gcc-trunk/gcc/dominance.h:76 0x145a0d0 slpeel_tree_duplicate_loop_to_edge_cfg(loop*, edge_def*, loop*, edge_def*, edge_def*, edge_def**, bool, vec*) ../../gcc-trunk/gcc/tree-vect-loop-manip.cc:1961 0x145d46c vect_do_peeling(_loop_vec_info*, tree_node*, tree_node*, tree_nod= e**, tree_node**, tree_node**, int, bool, bool, tree_node**) ../../gcc-trunk/gcc/tree-vect-loop-manip.cc:3444 0x144cd58 vect_transform_loop(_loop_vec_info*, gimple*) ../../gcc-trunk/gcc/tree-vect-loop.cc:11910 0x149374e vect_transform_loops ../../gcc-trunk/gcc/tree-vectorizer.cc:1006 0x1493e53 try_vectorize_loop_1 ../../gcc-trunk/gcc/tree-vectorizer.cc:1152 0x1493e53 try_vectorize_loop ../../gcc-trunk/gcc/tree-vectorizer.cc:1182 0x149448c execute ../../gcc-trunk/gcc/tree-vectorizer.cc:1298 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See for instructions. [517] %=20 [517] % cat small.c int a, b, c, d[3]; void e() { int f, g =3D 0; for (; g < 3; g++) { if (f || a || b && c) { int h, *i =3D &h, **j =3D &i; } d[g] =3D 0; } }=