blob: 33eceab72af49b7b88107cf0b41b0be696fa5bf3 [file] [log] [blame]
Elliott Hughes7c02d942014-09-16 19:06:31 -07001# 32-bit mips.
Ying Wangf25d6772014-01-23 15:17:50 -08002
Elliott Hughes7c02d942014-09-16 19:06:31 -07003#
Elliott Hughes7c02d942014-09-16 19:06:31 -07004# Default implementations of functions that are commonly optimized.
5#
Ying Wangf25d6772014-01-23 15:17:50 -08006
Elliott Hughes7c02d942014-09-16 19:06:31 -07007libc_bionic_src_files_mips += \
Elliott Hughese6099092015-01-27 11:09:27 -08008 arch-mips/string/memcmp.c \
Elliott Hughes7c02d942014-09-16 19:06:31 -07009 bionic/__memcpy_chk.cpp \
10 bionic/__memset_chk.cpp \
11 bionic/__strcpy_chk.cpp \
12 bionic/__strcat_chk.cpp \
Ying Wangf25d6772014-01-23 15:17:50 -080013 bionic/strchr.cpp \
14 bionic/strnlen.c \
Elliott Hughes53e43292014-02-24 18:00:43 -080015 bionic/strrchr.cpp \
Elliott Hughes7c02d942014-09-16 19:06:31 -070016
17libc_freebsd_src_files_mips += \
Ying Wangf25d6772014-01-23 15:17:50 -080018 upstream-freebsd/lib/libc/string/wcscat.c \
19 upstream-freebsd/lib/libc/string/wcschr.c \
20 upstream-freebsd/lib/libc/string/wcscmp.c \
21 upstream-freebsd/lib/libc/string/wcscpy.c \
22 upstream-freebsd/lib/libc/string/wcslen.c \
23 upstream-freebsd/lib/libc/string/wcsrchr.c \
24 upstream-freebsd/lib/libc/string/wmemcmp.c \
Bernhard Rosenkraenzer6f2bde32014-05-23 17:44:18 +020025 upstream-freebsd/lib/libc/string/wmemmove.c \
Elliott Hughes7c02d942014-09-16 19:06:31 -070026
27libc_openbsd_src_files_mips += \
Elliott Hughes41ef9022015-02-14 13:21:22 -080028 upstream-openbsd/lib/libc/string/memchr.c \
Elliott Hughes76f89162015-01-26 13:34:58 -080029 upstream-openbsd/lib/libc/string/memmove.c \
Elliott Hughes41ef9022015-02-14 13:21:22 -080030 upstream-openbsd/lib/libc/string/memrchr.c \
Varvara Rainchik5a922842014-04-24 15:41:20 +040031 upstream-openbsd/lib/libc/string/stpcpy.c \
32 upstream-openbsd/lib/libc/string/stpncpy.c \
Elliott Hughes53e43292014-02-24 18:00:43 -080033 upstream-openbsd/lib/libc/string/strcat.c \
34 upstream-openbsd/lib/libc/string/strcmp.c \
35 upstream-openbsd/lib/libc/string/strcpy.c \
36 upstream-openbsd/lib/libc/string/strlcat.c \
37 upstream-openbsd/lib/libc/string/strlcpy.c \
38 upstream-openbsd/lib/libc/string/strncat.c \
39 upstream-openbsd/lib/libc/string/strncmp.c \
40 upstream-openbsd/lib/libc/string/strncpy.c \
Ying Wangf25d6772014-01-23 15:17:50 -080041
Elliott Hughes7c02d942014-09-16 19:06:31 -070042#
43# Inherently architecture-specific code.
44#
Ying Wangf25d6772014-01-23 15:17:50 -080045
Ying Wangf25d6772014-01-23 15:17:50 -080046libc_bionic_src_files_mips += \
Elliott Hughes36d61882013-11-19 13:31:58 -080047 arch-mips/bionic/__bionic_clone.S \
Christopher Ferris7c83a1e2013-02-26 01:30:00 -080048 arch-mips/bionic/bzero.S \
Elliott Hughes14b467e2013-10-09 16:40:33 -070049 arch-mips/bionic/cacheflush.cpp \
Elliott Hughesbf425682013-10-24 16:29:40 -070050 arch-mips/bionic/_exit_with_stack_teardown.S \
Christopher Ferris7c83a1e2013-02-26 01:30:00 -080051 arch-mips/bionic/setjmp.S \
Chris Dearmaneffaa782013-11-13 14:15:31 -080052 arch-mips/bionic/syscall.S \
Dan Albert6a918872014-08-05 20:53:31 +000053 arch-mips/bionic/vfork.S \
Duane Sandbc5a3ec2014-07-10 15:24:27 -070054
55ifndef ARCH_MIPS_REV6
56libc_bionic_src_files_mips += \
Christopher Ferris7c83a1e2013-02-26 01:30:00 -080057 arch-mips/string/memcpy.S \
Elliott Hughesbf425682013-10-24 16:29:40 -070058 arch-mips/string/memset.S \
Christopher Ferris7c83a1e2013-02-26 01:30:00 -080059 arch-mips/string/mips_strlen.c \
Ying Wangf25d6772014-01-23 15:17:50 -080060
Duane Sandbc5a3ec2014-07-10 15:24:27 -070061else
62libc_bionic_src_files_mips += \
Elliott Hughese6099092015-01-27 11:09:27 -080063 arch-mips/string/memcpy.c \
64 arch-mips/string/memset.c \
65 arch-mips/string/strlen.c \
Elliott Hughes7c02d942014-09-16 19:06:31 -070066
67endif
Ying Wangf25d6772014-01-23 15:17:50 -080068
Ying Wangf25d6772014-01-23 15:17:50 -080069libc_crt_target_cflags_mips := \
70 $($(my_2nd_arch_prefix)TARGET_GLOBAL_CFLAGS) \
71 -I$(LOCAL_PATH)/arch-mips/include
72
73libc_crt_target_crtbegin_file_mips := \
74 $(LOCAL_PATH)/arch-mips/bionic/crtbegin.c
75
76libc_crt_target_crtbegin_so_file_mips := \
77 $(LOCAL_PATH)/arch-common/bionic/crtbegin_so.c
78
79libc_crt_target_so_cflags_mips := \
80 -fPIC
Duane Sandf5416502014-07-16 12:29:34 -070081
82libc_crt_target_ldflags_mips := \
83 -melf32ltsmip