https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88214
--- Comment #4 from Martin Jambor <jamborm at gcc dot gnu.org> --- I don't think this has much to do with IPA-CP per se. What is happening is that call_may_clobber_ref_p_1 extracts SSA_NAME_PTR_INFO of an SSA_NAME that is a base of a MEM_REF and runs pt_solutions_intersect on it, but the SSA_NAME_PTR_INFO just has invalid pt.vars bitmap address 0xffffffffffff8000 in it (before IPA-CP changed anything). When I set a watch in gdb to find out how the value got there, it turned out to be from a rather unexpected context: Watchpoint 5: ((ptr_info_def *) 0x3fffaf246e20)->pt.vars Old value = (bitmap) 0xafafafafafafafaf New value = (bitmap) 0xffffffffffff8000 wi::copy<trailing_wide_int_storage, generic_wide_int<wide_int_ref_storage<false, true> > > (x=..., y=...) at /home/jamborm/gcc/mine/src/gcc/wide-int.h:1776 1776 do (gdb) bt #0 wi::copy<trailing_wide_int_storage, generic_wide_int<wide_int_ref_storage<false, true> > > (x=..., y=...) at /home/jamborm/gcc/mine/src/gcc/wide-int.h:1776 #1 0x00000000112eea1c in trailing_wide_int_storage::operator=<generic_wide_int<wide_int_ref_storage<false, true> > > (this=0x3fffffffd920, x=...) at /home/jamborm/gcc/mine/src/gcc/wide-int.h:1432 #2 0x00000000112edff8 in generic_wide_int<trailing_wide_int_storage>::operator=<generic_wide_int<wide_int_ref_storage<false, true> > > (this=0x3fffffffd920, x=...) at /home/jamborm/gcc/mine/src/gcc/wide-int.h:916 #3 0x00000000112ed96c in range_info_def::set_min<generic_wide_int<wide_int_ref_storage<false, true> > > ( this=0x3fffaf246e20, x=...) at /home/jamborm/gcc/mine/src/gcc/tree-ssanames.h:52 #4 0x00000000112ea434 in set_range_info_raw (name=<ssa_name 0x3fffaf2e0990>, range_type=VR_RANGE, min=..., max=...) at /home/jamborm/gcc/mine/src/gcc/tree-ssanames.c:360 #5 0x00000000112ea91c in set_range_info (name=<ssa_name 0x3fffaf2e0990>, range_type=VR_RANGE, min=..., max=...) at /home/jamborm/gcc/mine/src/gcc/tree-ssanames.c:398 #6 0x0000000011c25b44 in evrp_range_analyzer::set_ssa_range_info (this=0x3fffffffe0f8, lhs=<ssa_name 0x3fffaf2e0990>, vr=0x3fffffffddb0) at /home/jamborm/gcc/mine/src/gcc/gimple-ssa-evrp-analyze.c:116 #7 0x0000000011c26a18 in evrp_range_analyzer::record_ranges_from_stmt (this=0x3fffffffe0f8, stmt=0x3fffaf43e290, temporary=false) at /home/jamborm/gcc/mine/src/gcc/gimple-ssa-evrp-analyze.c:312 #8 0x0000000011c22ab4 in evrp_dom_walker::before_dom_children (this=0x3fffffffe0c0, bb=0x3fffaf450138) at /home/jamborm/gcc/mine/src/gcc/gimple-ssa-evrp.c:139 #9 0x0000000011bdc634 in dom_walker::walk (this=0x3fffffffe0c0, bb=0x3fffaf450138) at /home/jamborm/gcc/mine/src/gcc/domwalk.c:353 #10 0x0000000011c23448 in execute_early_vrp () at /home/jamborm/gcc/mine/src/gcc/gimple-ssa-evrp.c:311 #11 0x0000000011c235f0 in (anonymous namespace)::pass_early_vrp::execute (this=0x1282aed0) at /home/jamborm/gcc/mine/src/gcc/gimple-ssa-evrp.c:348 That looks like some memory corruption or unwanted memory sharing...?