[Bug tree-optimization/90626] fold strcmp(a, b) == 0 to zero when one string length is exact and the other is unequal

msebor at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Wed Jun 19 20:38:00 GMT 2019


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90626

--- Comment #1 from Martin Sebor <msebor at gcc dot gnu.org> ---
Author: msebor
Date: Wed Jun 19 20:37:41 2019
New Revision: 272485

URL: https://gcc.gnu.org/viewcvs?rev=272485&root=gcc&view=rev
Log:
PR tree-optimization/90626 - fold strcmp(a, b) == 0 to zero when one string
length is exact and the other is unequal

gcc/ChangeLog:

        PR tree-optimization/90626
        * tree-ssa-strlen.c (strxcmp_unequal): New function.
        (handle_builtin_string_cmp): Call it.

gcc/testsuite/ChangeLog:

        PR tree-optimization/90626
        * gcc.dg/strlenopt-65.c: New test.
        * gcc.dg/strlenopt-66.c: New test.
        * gcc.dg/strlenopt.h (strcmp, strncmp): Declare.


Added:
    trunk/gcc/testsuite/gcc.dg/strlenopt-65.c
    trunk/gcc/testsuite/gcc.dg/strlenopt-66.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/strlenopt.h
    trunk/gcc/tree-ssa-strlen.c


More information about the Gcc-bugs mailing list