https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120683

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|vector_loop generates       |vector_loop generates poor
                   |horrible prologue and       |codes on memset/memcpy
                   |epilogue on memset/memcpy   |

--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> ---
ix86_expand_set_or_cpymem has:

  /* For now vector-version of memset is generated only for memory zeroing, as
     creating of promoted vector value is very cheap in this case.  */
  if (issetmem && alg == vector_loop && val_exp != const0_rtx)
    alg = unrolled_loop;

ix86_expand_vector_init_duplicate can handle variable and non-zero value.

Reply via email to