[Bug tree-optimization/102513] [10/11/12 Regression] Many false positive warnings with recursive function
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jan 20 13:58:54 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102513
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
It is in
/* Recursively generate lattice values with a limited count. */
FOR_EACH_VEC_ELT (val_seeds, i, src_val)
{
for (int j = 1; j < max_recursive_depth; j++)
{
tree cstval = get_val_across_arith_op (opcode, opnd1_type, opnd2,
src_val, res_type);
if (!cstval
|| !ipacp_value_safe_for_type (res_type, cstval))
break;
ret |= dest_lat->add_value (cstval, cs, src_val, src_idx,
src_offset, &src_val, j);
gcc_checking_assert (src_val);
}
}
(but there is another spot doing the similar thing) where it would be nice to
also break if cstval is non-NULL and safe for type, but is outside of the value
range. I have no idea how to get from this spot at that value range though.
More information about the Gcc-bugs
mailing list