summaryrefslogtreecommitdiff
path: root/sysdeps/x86_64/multiarch/Makefile
blob: 1afc9911952f75380862354302c2448662cefeea (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
ifeq ($(subdir),csu)
aux += init-arch
tests += test-multiarch
gen-as-const-headers += ifunc-defines.sym
endif

ifeq ($(subdir),string)

sysdep_routines += strncat-c stpncpy-c strncpy-c strcmp-ssse3 \
		   strcmp-sse2-unaligned strncmp-ssse3 \
		   memcmp-sse4 memcpy-ssse3 \
		   memcpy-sse2-unaligned mempcpy-ssse3 \
		   memmove-ssse3 memcpy-ssse3-back mempcpy-ssse3-back \
		   memmove-avx-unaligned memcpy-avx-unaligned mempcpy-avx-unaligned \
		   memmove-ssse3-back strcasecmp_l-ssse3 \
		   strncase_l-ssse3 strcat-ssse3 strncat-ssse3\
		   strcpy-ssse3 strncpy-ssse3 stpcpy-ssse3 stpncpy-ssse3 \
		   strcpy-sse2-unaligned strncpy-sse2-unaligned \
		   stpcpy-sse2-unaligned stpncpy-sse2-unaligned \
		   strcat-sse2-unaligned strncat-sse2-unaligned \
		   strchr-sse2-no-bsf memcmp-ssse3 strstr-sse2-unaligned \
		   memcpy-rte-ssse3

CFLAGS-memcpy-rte-ssse3.c += -mssse3

ifeq (yes,$(config-cflags-sse4))
sysdep_routines += strcspn-c strpbrk-c strspn-c varshift
CFLAGS-varshift.c += -msse4
CFLAGS-strcspn-c.c += -msse4
CFLAGS-strpbrk-c.c += -msse4
CFLAGS-strspn-c.c += -msse4
endif

ifeq (yes,$(config-cflags-avx))
sysdep_routines += memcpy-rte-avx
CFLAGS-memcpy-rte-avx.c += -mavx
endif

ifeq (yes,$(config-cflags-avx2))
sysdep_routines += memset-avx2
endif
endif

ifeq ($(subdir),wcsmbs)
sysdep_routines += wmemcmp-sse4 wmemcmp-ssse3 wmemcmp-c wcscpy-ssse3 wcscpy-c
endif