1# 32-bit mips.
2
3#
4# Default implementations of functions that are commonly optimized.
5#
6
7libc_bionic_src_files_mips += \
8    arch-mips/string/memcmp.c \
9    arch-mips/string/memcpy.S \
10    arch-mips/string/memset.S \
11    arch-mips/string/strcmp.S \
12    bionic/__memcpy_chk.cpp \
13    bionic/__memset_chk.cpp \
14    bionic/__strcpy_chk.cpp \
15    bionic/__strcat_chk.cpp \
16    bionic/strchr.cpp \
17    bionic/strnlen.c \
18    bionic/strrchr.cpp \
19
20libc_freebsd_src_files_mips += \
21    upstream-freebsd/lib/libc/string/wcscat.c \
22    upstream-freebsd/lib/libc/string/wcschr.c \
23    upstream-freebsd/lib/libc/string/wcscmp.c \
24    upstream-freebsd/lib/libc/string/wcscpy.c \
25    upstream-freebsd/lib/libc/string/wcslen.c \
26    upstream-freebsd/lib/libc/string/wcsrchr.c \
27    upstream-freebsd/lib/libc/string/wmemcmp.c \
28    upstream-freebsd/lib/libc/string/wmemmove.c \
29
30libc_openbsd_src_files_mips += \
31    upstream-openbsd/lib/libc/string/memchr.c \
32    upstream-openbsd/lib/libc/string/memmove.c \
33    upstream-openbsd/lib/libc/string/memrchr.c \
34    upstream-openbsd/lib/libc/string/stpcpy.c \
35    upstream-openbsd/lib/libc/string/stpncpy.c \
36    upstream-openbsd/lib/libc/string/strcat.c \
37    upstream-openbsd/lib/libc/string/strcpy.c \
38    upstream-openbsd/lib/libc/string/strlcat.c \
39    upstream-openbsd/lib/libc/string/strlcpy.c \
40    upstream-openbsd/lib/libc/string/strncat.c \
41    upstream-openbsd/lib/libc/string/strncmp.c \
42    upstream-openbsd/lib/libc/string/strncpy.c \
43
44#
45# Inherently architecture-specific code.
46#
47
48libc_bionic_src_files_mips += \
49    arch-mips/bionic/__bionic_clone.S \
50    arch-mips/bionic/bzero.S \
51    arch-mips/bionic/cacheflush.cpp \
52    arch-mips/bionic/_exit_with_stack_teardown.S \
53    arch-mips/bionic/setjmp.S \
54    arch-mips/bionic/syscall.S \
55    arch-mips/bionic/vfork.S \
56
57ifndef ARCH_MIPS_REV6
58libc_bionic_src_files_mips += \
59    arch-mips/string/mips_strlen.c \
60
61else
62libc_bionic_src_files_mips += \
63    arch-mips/string/strlen.c \
64
65endif
66
67libc_crt_target_cflags_mips := \
68    $($(my_2nd_arch_prefix)TARGET_GLOBAL_CFLAGS) \
69    -I$(LOCAL_PATH)/arch-mips/include
70
71libc_crt_target_crtbegin_file_mips := \
72    $(LOCAL_PATH)/arch-mips/bionic/crtbegin.c
73
74libc_crt_target_crtbegin_so_file_mips := \
75    $(LOCAL_PATH)/arch-common/bionic/crtbegin_so.c
76
77libc_crt_target_so_cflags_mips := \
78    -fPIC
79
80libc_crt_target_ldflags_mips := \
81    -melf32ltsmip
82