On 14/09/16 14:45, Jakub Jelinek wrote: > I think for the middle-end, using strchr (a, 0) as canonical instead of a + > strlen (a) > is better, and at expansion time we can decide what to use (a + strlen (a) > if you'd expand strlen inline, rather than as a function call, or > __rawmemchr (which if libc is sane should be fastest), or strchr, or a + > strlen (a)). >
i think the compiler should move away from generating calls to nonstandard functions, __rawmemchr is much less used than strlen so it's less likely to be optimized in certain target/libc combination.