Re: [PATCH] Improve performance of strstr
Craig Howland <[email protected]>
| Newsgroups | gmane.comp.lib.newlib |
|---|---|
| Message-ID | <[email protected]> |
On 09/27/2018 11:12 AM, Wilco Dijkstra wrote: > This patch significantly improves performance of strstr by using Sunday's > Quick-Search algorithm. Due to its simplicity it has the best average > performance of string matching algorithms on almost all inputs. It uses a > bad-character shift table to skip past mismatches. > > ... > > --- > > diff --git a/newlib/libc/string/strstr.c b/newlib/libc/string/strstr.c > index e72b4bd9125f928486f52bb3ebd199eacef7cfaf..ccbcc50a1b034d36200b9b4b17e8c4f62fcb7fc0 100644 > --- a/newlib/libc/string/strstr.c > +++ b/newlib/libc/string/strstr.c > @@ -1,169 +1,154 @@ > -/* > -FUNCTION > - <<strstr>>---find string segment > - > -INDEX > - strstr > - > -SYNOPSIS > - #include <string.h> > - char *strstr(const char *<[s1]>, const char *<[s2]>); > - > -DESCRIPTION > - Locates the first occurrence in the string pointed to by <[s1]> of > - the sequence of characters in the string pointed to by <[s2]> > - (excluding the terminating null character). > - > -RETURNS > - Returns a pointer to the located string segment, or a null > - pointer if the string <[s2]> is not found. If <[s2]> points to > - a string with zero length, <[s1]> is returned. > - > -PORTABILITY > -<<strstr>> is ANSI C. > - > -<<strstr>> requires no supporting OS subroutines. > - > -QUICKREF > - strstr ansi pure > -*/ Did you really intend to delete the documentation information? (Seems like it must be by accident.) Craig