blob: 2da806c2230e0807ca51cb5a562aa4b6c09774e7 [file] [log] [blame]
Elliott Hughes7c02d942014-09-16 19:06:31 -07001# 64-bit arm.
Ying Wangf25d6772014-01-23 15:17:50 -08002
Elliott Hughes7c02d942014-09-16 19:06:31 -07003#
Dan Willemsen268a6732015-10-15 14:49:45 -07004# Generic arm64 optimizations, may be overriden by CPU variants.
Elliott Hughes7c02d942014-09-16 19:06:31 -07005#
Elliott Hughes7c02d942014-09-16 19:06:31 -07006libc_bionic_src_files_arm64 += \
Dan Willemsen268a6732015-10-15 14:49:45 -07007 arch-arm64/generic/bionic/memchr.S \
8 arch-arm64/generic/bionic/memcmp.S \
9 arch-arm64/generic/bionic/memcpy.S \
10 arch-arm64/generic/bionic/memmove.S \
11 arch-arm64/generic/bionic/memset.S \
12 arch-arm64/generic/bionic/stpcpy.S \
13 arch-arm64/generic/bionic/strchr.S \
14 arch-arm64/generic/bionic/strcmp.S \
15 arch-arm64/generic/bionic/strcpy.S \
16 arch-arm64/generic/bionic/strlen.S \
17 arch-arm64/generic/bionic/strncmp.S \
18 arch-arm64/generic/bionic/strnlen.S \
Richard Earnshaw1e905522014-12-08 15:21:00 +000019 arch-arm64/generic/bionic/strrchr.S \
Dan Willemsen268a6732015-10-15 14:49:45 -070020 arch-arm64/generic/bionic/wmemmove.S \
Elliott Hughes7c02d942014-09-16 19:06:31 -070021
Dan Willemsen268a6732015-10-15 14:49:45 -070022libc_bionic_src_files_exclude_arm64 += \
23 bionic/__memcpy_chk.cpp \
24 bionic/strchr.cpp \
25 bionic/strnlen.c \
Richard Earnshaw1e905522014-12-08 15:21:00 +000026 bionic/strrchr.cpp \
Elliott Hughes7c02d942014-09-16 19:06:31 -070027
Dan Willemsen268a6732015-10-15 14:49:45 -070028libc_freebsd_src_files_exclude_arm64 += \
29 upstream-freebsd/lib/libc/string/wmemmove.c \
30
31libc_openbsd_src_files_exclude_arm64 += \
32 upstream-openbsd/lib/libc/string/memchr.c \
33 upstream-openbsd/lib/libc/string/memmove.c \
34 upstream-openbsd/lib/libc/string/stpcpy.c \
35 upstream-openbsd/lib/libc/string/strcpy.c \
36 upstream-openbsd/lib/libc/string/strncmp.c \
Ying Wangf25d6772014-01-23 15:17:50 -080037
Richard Earnshaw1e905522014-12-08 15:21:00 +000038
Elliott Hughes7c02d942014-09-16 19:06:31 -070039#
40# Inherently architecture-specific code.
41#
Ying Wangf25d6772014-01-23 15:17:50 -080042
Elliott Hughes7c02d942014-09-16 19:06:31 -070043libc_bionic_src_files_arm64 += \
Colin Crossd1973ca2014-01-21 19:50:58 -080044 arch-arm64/bionic/__bionic_clone.S \
Colin Crossd1973ca2014-01-21 19:50:58 -080045 arch-arm64/bionic/_exit_with_stack_teardown.S \
Colin Crossd1973ca2014-01-21 19:50:58 -080046 arch-arm64/bionic/setjmp.S \
Colin Crossd1973ca2014-01-21 19:50:58 -080047 arch-arm64/bionic/syscall.S \
Dan Albert6a918872014-08-05 20:53:31 +000048 arch-arm64/bionic/vfork.S \
Ying Wangf25d6772014-01-23 15:17:50 -080049
Ying Wangf25d6772014-01-23 15:17:50 -080050
Ying Wangf25d6772014-01-23 15:17:50 -080051libc_crt_target_cflags_arm64 := \
52 -I$(LOCAL_PATH)/arch-arm64/include
53
54libc_crt_target_crtbegin_file_arm64 := \
55 $(LOCAL_PATH)/arch-arm64/bionic/crtbegin.c
56
57libc_crt_target_crtbegin_so_file_arm64 := \
58 $(LOCAL_PATH)/arch-common/bionic/crtbegin_so.c
Bernhard Rosenkraenzer7e4fa562014-03-05 11:40:57 +010059
Christopher Ferris2146d142014-05-01 18:10:51 -070060## CPU variant specific source files
61ifeq ($(strip $(TARGET_CPU_VARIANT)),)
62 $(warning TARGET_ARCH is arm64, but TARGET_CPU_VARIANT is not defined)
63endif
Dan Willemsen268a6732015-10-15 14:49:45 -070064ifneq ($(TARGET_CPU_VARIANT),generic)
Christopher Ferris2146d142014-05-01 18:10:51 -070065cpu_variant_mk := $(LOCAL_PATH)/arch-arm64/$(TARGET_CPU_VARIANT)/$(TARGET_CPU_VARIANT).mk
66ifeq ($(wildcard $(cpu_variant_mk)),)
Christopher Ferris2169e172014-09-23 18:31:45 -070067$(error "TARGET_CPU_VARIANT not set or set to an unknown value. Possible values are generic, denver64. Use generic for devices that do not have a CPU similar to any of the supported cpu variants.")
Christopher Ferris2146d142014-05-01 18:10:51 -070068endif
69include $(cpu_variant_mk)
Colin Crossa6b6ed52015-02-04 17:38:27 -080070libc_common_additional_dependencies += $(cpu_variant_mk)
Christopher Ferris2146d142014-05-01 18:10:51 -070071
72cpu_variant_mk :=
Dan Willemsen268a6732015-10-15 14:49:45 -070073endif