https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90989
Martin Sebor <msebor at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |ASSIGNED Known to work| |8.3.0 Keywords| |wrong-code Last reconfirmed| |2019-06-24 Assignee|unassigned at gcc dot gnu.org |msebor at gcc dot gnu.org Blocks| |83819 Ever confirmed|0 |1 Known to fail| |10.0, 9.1.0 --- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> --- The bug was introduced by my r263018: PR tree-optimization/86043 - strlen after memcpy partially overwriting a string not optimized PR tree-optimization/86042 - missing strlen optimization after second strcpy gcc/ChangeLog: PR tree-optimization/86043 PR tree-optimization/86042 * tree-ssa-strlen.c (handle_builtin_memcpy): Handle strict overlaps. (get_string_cst_length): Rename... (get_min_string_length): ...to this. Add argument. (handle_char_store): Extend to handle multi-character stores by MEM_REF. * tree.c (initializer_zerop): Use new argument. Handle MEM_REF. * tree.h (initializer_zerop): Add argument. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83819 [Bug 83819] [meta-bug] missing strlen optimizations