Re: [PATCH 1/3] x86: Update memcpy/memset inline strategies for Ice Lake

2021-03-22 Thread Jan Hubicka
> > gcc/ > > * config/i386/i386-expand.c (expand_set_or_cpymem_via_rep): > For TARGET_PREFER_KNOWN_REP_MOVSB_STOSB, don't convert QImode > to SImode. > (decide_alg): For TARGET_PREFER_KNOWN_REP_MOVSB_STOSB, use > "rep movsb/stosb" only for known sizes. > * conf

[PATCH 1/3] x86: Update memcpy/memset inline strategies for Ice Lake

2021-03-22 Thread H.J. Lu via Gcc-patches
Simply memcpy and memset inline strategies to avoid branches for -mtune=icelake: 1. With MOVE_RATIO and CLEAR_RATIO == 17, GCC will use integer/vector load and store for up to 16 * 16 (256) bytes when the data size is fixed and known. 2. Inline only if data size is known to be <= 256. a.