On Tue, Jul 04, 2017 at 12:14:48PM +0100, Richard Sandiford wrote: > r249880 installed the result of a strlen in a strinfo if the strinfo > wasn't previously a full string. But as Jakub says in the PR comments, > we can't just do that in isolation, because there are no vdefs on the > call that would invalidate any related strinfos. > > This patch updates the related strinfos if the adjustment is simple and > invalidates them otherwise. As elsewhere, we treat adjustments of the > form strlen +/- INTEGER_CST as simple but anything else as too complex. > > Tested on x86_64-linux-gnu and aarch64-linux-gnu. OK to install? > > Sorry for the breakage. > > Richard > > > gcc/ > PR tree-optimization/81292 > * tree-ssa-strlen.c (handle_builtin_strlen): When setting > full_string_p, also call adjust_related_strinfos if the adjustment > is simple, otherwise invalidate related strinfos. > > gcc/testsuite/ > PR tree-optimization/81292 > * gcc.dg/pr81292-1.c: New test. > * gcc.dg/pr81292-2.c: Likewise.
Ok, thanks. Jakub