https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117023
--- Comment #11 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>: https://gcc.gnu.org/g:1e27e9a3184c948b499a21ff20181611514ed720 commit r16-363-g1e27e9a3184c948b499a21ff20181611514ed720 Author: Jakub Jelinek <ja...@redhat.com> Date: Fri May 2 19:40:55 2025 +0200 ranger: Improve nonnull_if_nonzero attribute [PR117023] On Mon, Mar 31, 2025 at 11:30:20AM -0400, Andrew MacLeod wrote: > Infer range processing was adjusted to allow a query to be specified, > but during VRP folding, ranger w3as not providing a query. This results > in contextual ranges being missed. Pass the cache in as the query > which provide a read-only query of the current state. Now that this patch is in, I've retested my patch and it works fine. If we can determine a range for the arg2 argument and prove that it doesn't include zero, we can imply nonzero for the arg1 argument. 2025-05-02 Jakub Jelinek <ja...@redhat.com> Andrew MacLeod <amacl...@redhat.com> PR c/117023 * gimple-range-infer.cc (gimple_infer_range::gimple_infer_range): For nonnull_if_nonzero attribute check also arg2 range if it doesn't include zero and in that case call add_nonzero too. * gcc.dg/tree-ssa/pr78154-2.c: New test.