Commit d45ebd48 authored by Janne Grunau's avatar Janne Grunau

configure: add support for neon intrinsics

parent 389380c2
...@@ -130,6 +130,7 @@ $(foreach V,$(SUBDIR_VARS),$(eval $(call RESET,$(V)))) ...@@ -130,6 +130,7 @@ $(foreach V,$(SUBDIR_VARS),$(eval $(call RESET,$(V))))
SUBDIR := $(1)/ SUBDIR := $(1)/
include $(SRC_PATH)/$(1)/Makefile include $(SRC_PATH)/$(1)/Makefile
-include $(SRC_PATH)/$(1)/$(ARCH)/Makefile -include $(SRC_PATH)/$(1)/$(ARCH)/Makefile
-include $(SRC_PATH)/$(1)/$(INTRINSICS)/Makefile
include $(SRC_PATH)/library.mak include $(SRC_PATH)/library.mak
endef endef
......
...@@ -1397,6 +1397,10 @@ HEADERS_LIST=" ...@@ -1397,6 +1397,10 @@ HEADERS_LIST="
winsock2_h winsock2_h
" "
INTRINSICS_LIST="
intrinsics_neon
"
MATH_FUNCS=" MATH_FUNCS="
atanf atanf
atan2f atan2f
...@@ -1512,6 +1516,7 @@ HAVE_LIST=" ...@@ -1512,6 +1516,7 @@ HAVE_LIST="
$HAVE_LIST_CMDLINE $HAVE_LIST_CMDLINE
$HAVE_LIST_PUB $HAVE_LIST_PUB
$HEADERS_LIST $HEADERS_LIST
$INTRINSICS_LIST
$MATH_FUNCS $MATH_FUNCS
$SYSTEM_FUNCS $SYSTEM_FUNCS
$THREADS_LIST $THREADS_LIST
...@@ -1651,6 +1656,7 @@ armv6_deps="arm" ...@@ -1651,6 +1656,7 @@ armv6_deps="arm"
armv6t2_deps="arm" armv6t2_deps="arm"
armv8_deps="aarch64" armv8_deps="aarch64"
neon_deps_any="aarch64 arm" neon_deps_any="aarch64 arm"
intrinsics_neon_deps="neon"
vfp_deps_any="aarch64 arm" vfp_deps_any="aarch64 arm"
vfpv3_deps="vfp" vfpv3_deps="vfp"
...@@ -2196,6 +2202,7 @@ nogas=":" ...@@ -2196,6 +2202,7 @@ nogas=":"
# machine # machine
arch_default=$(uname -m) arch_default=$(uname -m)
cpu="generic" cpu="generic"
intrinsics="none"
# OS # OS
target_os_default=$(tolower $(uname -s)) target_os_default=$(tolower $(uname -s))
...@@ -3928,6 +3935,8 @@ EOF ...@@ -3928,6 +3935,8 @@ EOF
fi fi
check_code cc arm_neon.h "int64x2_t test" && enable intrinsics_neon
check_ldflags -Wl,--as-needed check_ldflags -Wl,--as-needed
if check_func dlopen; then if check_func dlopen; then
...@@ -4423,6 +4432,8 @@ enabled_all dxva2 CoTaskMemFree && ...@@ -4423,6 +4432,8 @@ enabled_all dxva2 CoTaskMemFree &&
! enabled_any memalign posix_memalign aligned_malloc && ! enabled_any memalign posix_memalign aligned_malloc &&
enabled_any $need_memalign && enable memalign_hack enabled_any $need_memalign && enable memalign_hack
map 'enabled $v && intrinsics=${v#intrinsics_}' $INTRINSICS_LIST
for thread in $THREADS_LIST; do for thread in $THREADS_LIST; do
if enabled $thread; then if enabled $thread; then
test -n "$thread_type" && test -n "$thread_type" &&
...@@ -4555,6 +4566,7 @@ MANDIR=\$(DESTDIR)$mandir ...@@ -4555,6 +4566,7 @@ MANDIR=\$(DESTDIR)$mandir
SRC_PATH=$source_path SRC_PATH=$source_path
CC_IDENT=$cc_ident CC_IDENT=$cc_ident
ARCH=$arch ARCH=$arch
INTRINSICS=$intrinsics
CC=$cc CC=$cc
AS=$as AS=$as
LD=$ld LD=$ld
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment