https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105517
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Richard Biener <rgue...@gcc.gnu.org>: https://gcc.gnu.org/g:faabc751d0bb7e7fe86abfe8991b0307d585874a commit r13-205-gfaabc751d0bb7e7fe86abfe8991b0307d585874a Author: Richard Biener <rguent...@suse.de> Date: Mon May 9 11:33:44 2022 +0200 tree-optimization/105517 - avoid offset truncation during VN When value-numbering an address expression like &p_74(D)->a1x[4294967295].a1; we are accumulating the byte offset in an 64bit integer. When later exploiting the duality between that and a POINTER_PLUS_EXPR we should avoid truncating that offset to fit in the target specific sizetype. While such overflows are generally undefined behavior, exploiting this may leads to spurious missing diagnostics. 2022-05-09 Richard Biener <rguent...@suse.de> PR tree-optimization/105517 * tree-ssa-sccvn.cc (vn_reference_lookup): Make sure the accumulated offset can be represented in the POINTER_PLUS_EXPR IL. (vn_reference_insert): Likewise. * poly-int.h (sext_hwi): Add poly version of sext_hwi.