https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106558
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Perhaps either a quick check that for base ptrs that live in memory gimple_vuse is the same for both statements or if not, do walk_aliased_vdefs with low constant limit? We'd want to stop if we reach the vdef of the stmt in base_checks vector (then we didn't find anything that could clobber it and can therefore use the cached check) or when we see a stmt that may clobber it (then we can't use the cached check).