https://gcc.gnu.org/bugzilla/show_bug.cgi?id=97292
--- Comment #7 from Martin Liška <marxin at gcc dot gnu.org> --- Ok, I've just installed the patch with the debug counter. I can reproduce it with first bad value with --param=lto-partitions=1: -fdbg-cnt=ipa_mod_ref:16848 and the difference comes from dealII.ltrans0.ltrans.137t.pre: distribute_dofs (struct DoFHandler * const this, const struct FiniteElement & ff, const unsigned int offset): GOOD: <bb 164> [local count: 410235502]: # __n_981 = PHI <__n_979(163), __n_978(162)> # __tmp$_M_p_984 = PHI <_980(163), _977(162)> _982 = (unsigned int) __n_981; _983 = 1 << _982; _985 = *__tmp$_M_p_984; _986 = _983 | _985; *__tmp$_M_p_984 = _986; operator++ (&cell); _25 = BIT_FIELD_REF <MEM[(const struct TriaAccessor *)&cell + 8B], 64, 0>; if (_25 != -1) goto <bb 165>; [89.00%] else goto <bb 166>; [11.00%] <bb 165> [local count: 365109597]: pretmp_2354 = MEM[(int *)&cell + 12B]; goto <bb 132>; [100.00%] <bb 166> [local count: 50703262]: # next_free_dof_577 = PHI <offset_13(D)(128), next_free_dof_822(164)> this_6(D)->used_dofs = next_free_dof_577; MEM[(struct _Bvector_impl_data *)&tmp] ={v} {CLOBBER}; MEM[(struct __as_base &)&tmp] ={v} {CLOBBER}; BAD: <bb 164> [local count: 410235502]: # __n_981 = PHI <__n_979(163), __n_978(162)> # __tmp$_M_p_984 = PHI <_980(163), _977(162)> _982 = (unsigned int) __n_981; _983 = 1 << _982; _985 = *__tmp$_M_p_984; _986 = _983 | _985; *__tmp$_M_p_984 = _986; operator++ (&cell); _25 = BIT_FIELD_REF <MEM[(const struct TriaAccessor *)&cell + 8B], 64, 0>; if (_25 != -1) goto <bb 132>; [89.00%] else goto <bb 165>; [11.00%] <bb 165> [local count: 50703262]: # next_free_dof_577 = PHI <offset_13(D)(128), next_free_dof_822(164)> this_6(D)->used_dofs = next_free_dof_577; MEM[(struct _Bvector_impl_data *)&tmp] ={v} {CLOBBER}; MEM[(struct __as_base &)&tmp] ={v} {CLOBBER};