https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121454

            Bug ID: 121454
           Summary: [16 regression] ICE in
                    nonoverlapping_refs_since_match_p, at
                    tree-ssa-alias.cc:1684
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ro at gcc dot gnu.org
                CC: rguenth at gcc dot gnu.org
  Target Milestone: ---
            Target: i386-pc-solaris2.11, i686-pc-linux-gnu,
                    x86_64-pc-linux-gnu

Between 20250806 (54edbeeaac6eb4865fab37374fbdff3a9a2f2e12) and 20250807
(8e3239e3e92f3cd57bf3a19f10daa66c4cb45cc1),
Go bootstrap got broken on x86 (seen on Solaris/i386, Linux/i686, Linux/x86_64)
compiling the 32-bit libgo/go/crypto/elliptic/elliptic.go:

during GIMPLE pass: fre
/vol/gcc/src/hg/master/local/libgo/go/crypto/elliptic/elliptic.go: In function
‘crypto/elliptic.CurveParams.ScalarMult’:
/vol/gcc/src/hg/master/local/libgo/go/crypto/elliptic/elliptic.go:295:1:
internal compiler error: in nonoverlapping_refs_since_match_p, at
tree-ssa-alias.cc:1684
  295 | func (curve *CurveParams) ScalarMult(Bx, By *big.Int, k []byte)
(*big.Int, *big.Int) { 
      | ^
0xac6efd0 internal_error(char const*, ...)
        /vol/gcc/src/hg/master/local/gcc/diagnostic-global-context.cc:534
0xac7ae19 fancy_abort(char const*, int, char const*)
        /vol/gcc/src/hg/master/local/gcc/diagnostics/context.cc:1640
0x97b71f1 nonoverlapping_refs_since_match_p
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-alias.cc:1684
0x97b20cc decl_refs_may_alias_p
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-alias.cc:2073
0x97b20cc refs_may_alias_p_2
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-alias.cc:2467
0x97b471b refs_may_alias_p_1(ao_ref*, ao_ref*, bool)
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-alias.cc:2576
0x97b471b stmt_may_clobber_ref_p_1(gimple*, ao_ref*, bool)
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-alias.cc:3299
0x97b4bff walk_non_aliased_vuses(ao_ref*, tree_node*, bool, void* (*)(ao_ref*,
tree_node*, void*), void* (*)(ao_ref*, tree_node*, void*, translate_flags*),
tree_node* (*)(tree_node*), unsigned int&, void*)
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-alias.cc:3966
0x98e74e2 vn_reference_lookup(tree_node*, tree_node*, vn_lookup_kind,
vn_reference_s**, bool, tree_node**, tree_node*, bool)
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-sccvn.cc:4198
0x98eb08c visit_nary_op
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-sccvn.cc:5649
0x98ec0d1 process_bb
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-sccvn.cc:8331
0x98ee6cd do_rpo_vn_1
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-sccvn.cc:8917
0x98ef4e7 execute
        /vol/gcc/src/hg/master/local/gcc/tree-ssa-sccvn.cc:9078

I suspect this is due to

commit 53f491ccd1e59fad77fb2cb30d1a58b9e5e5f63c
Author: Richard Biener <rguent...@suse.de>
Date:   Wed Aug 6 12:31:13 2025 +0200

    tree-optimization/121405 - missed VN with aggregate copy

although I haven't verified that yet.

Reply via email to