https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100112
--- Comment #6 from Richard Biener <rguenth at gcc dot gnu.org> --- Oh, and walking doesn't help since we may not use TBAA for the lookup but the load handling did use TBAA and only because of that figured a better VUSE to record the reference into the hashtables. A smaller testcase is int *c, *b; void foo() { int *tem = b; *tem = 0; tem = c; c = tem; } so it really boils down to last_vuse being good and bad at the same time.