[PATCH] Optimize strchr (s, 0) to strlen
Jakub Jelinek
jakub@redhat.com
Mon Apr 18 17:09:00 GMT 2016
On Mon, Apr 18, 2016 at 05:00:45PM +0000, Wilco Dijkstra wrote:
> Optimize strchr (s, 0) to s + strlen (s). strchr (s, 0) appears a common
> idiom for finding the end of a string, however it is not a very efficient
> way of doing so. Strlen is a much simpler operation which is significantly
> faster (eg. on x86 strlen is 50% faster for strings of 8 bytes and about
> twice as fast as strchr on strings of 1KB).
That is generally a bad idea, it really depends on the target.
So, perhaps such decision should be done on a case by case basis,
and certainly not this early.
Often strchr (s, 0) should be just optimized as rawmemchr (s, 0) instead.
Jakub
More information about the Gcc-patches
mailing list