Priority of builtins expansion strategies

2021-07-12 Thread Christoph Müllner via Gcc
Hi, I'm working on some platform-specific optimizations for memset/memcpy/strcpy/strncpy. However, I am having difficulties understanding how my code should be integrated. Initially, I got inspired by rs6000-string.c, where I see expansion code for instructions like setmemsi or cmpstrsi. However,

Re: Priority of builtins expansion strategies

2021-07-13 Thread Christoph Müllner via Gcc
On Tue, Jul 13, 2021 at 2:11 AM Alexandre Oliva wrote: > > On Jul 12, 2021, Christoph Müllner wrote: > > > * Why does the generic by-pieces infrastructure have a higher priority > > than the target-specific expansion via INSNs like setmem? > > by-pieces was not affected by the recent change, and

Re: Priority of builtins expansion strategies

2021-07-13 Thread Christoph Müllner via Gcc
On Tue, Jul 13, 2021 at 2:59 PM Richard Biener wrote: > > On Tue, Jul 13, 2021 at 2:19 PM Christoph Müllner via Gcc > wrote: > > > > On Tue, Jul 13, 2021 at 2:11 AM Alexandre Oliva wrote: > > > > > > On Jul 12, 2021, Christoph Müllner wrote: > &g

Re: [libc-coord] Add new ABI '__memcmpeq()' to libc

2021-09-22 Thread Christoph Müllner via Gcc
Would it make sense to extend this proposal to include __strcmpeq() and __strncmpeq()? Both are already available internally in GCC in form of BUILT_IN_STRCMP_EQ and BUILT_IN_STRNCMP_EQ (tree-ssa-strlen.c detects them in handle_builtin_string_cmp() and builtins.c tries to inline them in expand_bui