[Bug ipa/127162] [15/16/17 Regression] internal compiler error: in verify_mask, at value-range.cc:3125 with -O2 since r15-41-gd71308d5a681de
aldy at quesejoda dot com
gcc-bugzilla@gcc.gnu.org
Wed Sep 2 13:10:43 GMT 2026
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127162
--- Comment #4 from aldy at quesejoda dot com ---
On Wed, Sep 02, 2026 at 12:01:18PM +0000, jamborm at gcc dot gnu.org wrote:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=127162
>
> Martin Jambor <jamborm at gcc dot gnu.org> changed:
>
> What |Removed |Added
> ----------------------------------------------------------------------------
> CC| |aldyh at gcc dot gnu.org
> Summary|[15/16/17 Regression] |[15/16/17 Regression]
> |internal compiler error: in |internal compiler error: in
> |verify_mask, at |verify_mask, at
> |value-range.cc:3125 with |value-range.cc:3125 with
> |-O2 |-O2 since
> | |r15-41-gd71308d5a681de
>
> --- Comment #3 from Martin Jambor <jamborm at gcc dot gnu.org> ---
> Started with r15-41-gd71308d5a681de (Aldy Hernandez: Callers of irange_bitmask
> must normalize value/mask pairs.)
I haven't looked deeply, but get_pointer_alignment_1 in builtins.cc
seems to have a path where it doesn't update bitposp:
else if (TREE_CODE (exp) == SSA_NAME
&& POINTER_TYPE_P (TREE_TYPE (exp)))
{
unsigned int ptr_align, ptr_misalign;
struct ptr_info_def *pi = SSA_NAME_PTR_INFO (exp);
if (pi && get_ptr_info_alignment (pi, &ptr_align, &ptr_misalign))
{
*bitposp = ptr_misalign * BITS_PER_UNIT;
*alignp = ptr_align * BITS_PER_UNIT;
/* Make sure to return a sensible alignment when the multiplication
by BITS_PER_UNIT overflowed. */
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
if (*alignp == 0)
*alignp = 1u << (HOST_BITS_PER_INT - 1);
/* We cannot really tell whether this result is an approximation. */
return false;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
}
More information about the Gcc-bugs
mailing list