1#if IS_IN (libc)
2# define USE_WITH_AVX2	1
3
4# define VEC_SIZE	32
5# define MOV_SIZE	4
6# define RET_SIZE	4
7
8# define VEC(i)		ymm##i
9
10# define VMOVU     vmovdqu
11# define VMOVA     vmovdqa
12
13# define MEMSET_VDUP_TO_VEC0_AND_SET_RETURN(d, r) \
14  vmovd d, %xmm0; \
15  movq r, %rax; \
16  vpbroadcastb %xmm0, %ymm0
17
18# define WMEMSET_VDUP_TO_VEC0_AND_SET_RETURN(d, r) \
19  vmovd d, %xmm0; \
20  movq r, %rax; \
21  vpbroadcastd %xmm0, %ymm0
22
23# ifndef SECTION
24#  define SECTION(p)		p##.avx
25# endif
26# ifndef MEMSET_SYMBOL
27#  define MEMSET_SYMBOL(p,s)	p##_avx2_##s
28# endif
29# ifndef WMEMSET_SYMBOL
30#  define WMEMSET_SYMBOL(p,s)	p##_avx2_##s
31# endif
32
33# include "memset-vec-unaligned-erms.S"
34#endif
35