From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id BDFCF3858D39; Tue, 1 Mar 2022 13:39:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BDFCF3858D39 From: "vries at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/104717] [9/10/11/12 Regression] ICE: verify_ssa failed (Error: type mismatch between an SSA_NAME and its symbol) Date: Tue, 01 Mar 2022 13:39:46 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 12.0 X-Bugzilla-Keywords: openacc X-Bugzilla-Severity: normal X-Bugzilla-Who: vries at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 9.5 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: Tue, 01 Mar 2022 13:39:46 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D104717 --- Comment #5 from Tom de Vries --- At original: ... void foo () ... #pragma acc parallel ... integer(kind=3D4) A.3[0:D.4266]; ... At gimple: ... void foo () ... #pragma omp target oacc_parallel ... integer(kind=3D4)[0:D.4266] * A.14; integer(kind=3D4) A.3[0:D.4266] [value-expr: *A.14]; ... A.14 =3D __builtin_alloca_with_align (D.4329, 32); ... And at ompexp: ... void foo.0._omp_fn.0 () ... integer(kind=3D4) A.3[0:D.4266] [value-expr: *A.14]; integer(kind=3D4)[0:D.4266] * A.14; ... A.14 =3D __builtin_alloca_with_align (D.4392, 32); ... and: ... void foo () ... __builtin_GOACC_parallel_keyed (-1, foo.0._omp_fn.0, 4, &.omp_data_arr.20, &.omp_data_sizes.21, &.omp_data_kinds.22,= 0); ... However, somehow the A.3 remains part of the BLOCK_VARS of foo, so when ipa inline (activated by pta-ipa, which does node->get_body ()) inlines foo into main, it does a remap of block-var A.3, and then a remap of its value-expr A.14, and then a remap of its TREE_TYPE. Which has the effect of changing = the TREE_TYPE of A.14 in foo.0._omp_fn.0.=