1 libmvec-supported-funcs
= acos \
19 float-advsimd-funcs
= $(libmvec-supported-funcs
)
20 double-advsimd-funcs
= $(libmvec-supported-funcs
)
21 float-sve-funcs
= $(libmvec-supported-funcs
)
22 double-sve-funcs
= $(libmvec-supported-funcs
)
24 ifeq ($(subdir
),mathvec
)
25 libmvec-support
= $(addsuffix f_advsimd
,$(float-advsimd-funcs
)) \
26 $(addsuffix _advsimd
,$(double-advsimd-funcs
)) \
27 $(addsuffix f_sve
,$(float-sve-funcs
)) \
28 $(addsuffix _sve
,$(double-sve-funcs
)) \
40 sve-cflags
= -march
=armv8-a
+sve
43 ifeq ($(build-mathvec
),yes
)
44 bench-libmvec
= $(addprefix float-advsimd-
,$(float-advsimd-funcs
)) \
45 $(addprefix double-advsimd-
,$(double-advsimd-funcs
)) \
46 $(addprefix float-sve-
,$(float-sve-funcs
)) \
47 $(addprefix double-sve-
,$(double-sve-funcs
))
50 $(objpfx
)bench-float-advsimd-
%.c
:
51 $(PYTHON
) $(..
)sysdeps
/aarch64
/fpu
/scripts
/bench_libmvec_advsimd.py
$(basename $(@F
)) > $@
52 $(objpfx
)bench-double-advsimd-
%.c
:
53 $(PYTHON
) $(..
)sysdeps
/aarch64
/fpu
/scripts
/bench_libmvec_advsimd.py
$(basename $(@F
)) > $@
54 $(objpfx
)bench-float-sve-
%.c
:
55 $(PYTHON
) $(..
)sysdeps
/aarch64
/fpu
/scripts
/bench_libmvec_sve.py
$(basename $(@F
)) > $@
56 $(objpfx
)bench-double-sve-
%.c
:
57 $(PYTHON
) $(..
)sysdeps
/aarch64
/fpu
/scripts
/bench_libmvec_sve.py
$(basename $(@F
)) > $@
59 ifeq (${STATIC-BENCHTESTS
},yes
)
60 libmvec-benchtests
= $(common-objpfx
)mathvec
/libmvec.a
$(common-objpfx
)math
/libm.a
62 libmvec-benchtests
= $(libmvec
) $(libm
)
65 $(addprefix $(objpfx
)bench-
,$(bench-libmvec
)): $(libmvec-benchtests
)
67 ifeq ($(build-mathvec
),yes
)
68 libmvec-tests
+= float-advsimd double-advsimd float-sve double-sve
71 define sve-float-cflags-template
72 CFLAGS-
$(1)f_sve.c
+= $(sve-cflags
)
73 CFLAGS-bench-float-sve-
$(1).c
+= $(sve-cflags
)
76 define sve-double-cflags-template
77 CFLAGS-
$(1)_sve.c
+= $(sve-cflags
)
78 CFLAGS-bench-double-sve-
$(1).c
+= $(sve-cflags
)
81 $(foreach f
,$(float-sve-funcs
), $(eval
$(call sve-float-cflags-template
,$(f
))))
82 $(foreach f
,$(double-sve-funcs
), $(eval
$(call sve-double-cflags-template
,$(f
))))
84 CFLAGS-test-float-sve-wrappers.c
= $(sve-cflags
)
85 CFLAGS-test-double-sve-wrappers.c
= $(sve-cflags
)