blob: 35deacb161d368aff4e214f5c1def1ef0ac05286 [file] [log] [blame]
Elliott Hughesa0664b92017-04-18 17:46:52 -07001Only in /huge-ssd/aosp-arm64/external/valgrind/: android
2Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.build_all.mk
3Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.build_host.mk
4Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.build_one.mk
5Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.clean.mk
6Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.mk
7Only in /huge-ssd/aosp-arm64/external/valgrind/: ANDROID_PATCH_AGAINST_UPSTREAM.txt
8Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.test.mk
9diff '--exclude=.git' -ru ./config.h /huge-ssd/aosp-arm64/external/valgrind/config.h
10--- ./config.h 2016-10-21 03:42:48.000000000 -0700
11+++ /huge-ssd/aosp-arm64/external/valgrind/config.h 2017-04-18 17:15:06.884303094 -0700
12@@ -45,10 +45,14 @@
13
14 /* Define to 1 if index() and strlen() have been optimized heavily (x86 glibc
15 >= 2.12) */
16+#ifndef __ANDROID__
17 #define GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT 1
18+#endif
19
20 /* Define to 1 if strlen() has been optimized heavily (amd64 glibc >= 2.10) */
21+#ifndef __ANDROID__
22 #define GLIBC_MANDATORY_STRLEN_REDIRECT 1
23+#endif
24
25 /* Define to 1 if you have the <asm/unistd.h> header file. */
26 #define HAVE_ASM_UNISTD_H 1
27@@ -86,13 +90,15 @@
28 #define HAVE_CLOCK_MONOTONIC 1
29
30 /* Define to 1 if you have a dlinfo that can do RTLD_DI_TLS_MODID. */
31+#ifndef __ANDROID__
32 #define HAVE_DLINFO_RTLD_DI_TLS_MODID 1
33+#endif
34
35 /* Define to 1 if the system has the type `Elf32_Chdr'. */
36-#define HAVE_ELF32_CHDR 1
37+/* #undef HAVE_ELF32_CHDR */
38
39 /* Define to 1 if the system has the type `Elf64_Chdr'. */
40-#define HAVE_ELF64_CHDR 1
41+/* #undef HAVE_ELF64_CHDR */
42
43 /* Define to 1 if you have the <endian.h> header file. */
44 #define HAVE_ENDIAN_H 1
45@@ -170,7 +176,9 @@
46 /* #undef HAVE_PTHREAD_CREATE_GLIBC_2_0 */
47
48 /* Define to 1 if you have the `PTHREAD_MUTEX_ADAPTIVE_NP' constant. */
49+#ifndef __ANDROID__
50 #define HAVE_PTHREAD_MUTEX_ADAPTIVE_NP 1
51+#endif
52
53 /* Define to 1 if you have the `PTHREAD_MUTEX_ERRORCHECK_NP' constant. */
54 #define HAVE_PTHREAD_MUTEX_ERRORCHECK_NP 1
55@@ -182,7 +190,9 @@
56 #define HAVE_PTHREAD_MUTEX_TIMEDLOCK 1
57
58 /* Define to 1 if pthread_mutex_t has a member __data.__kind. */
59+#ifndef __ANDROID__
60 #define HAVE_PTHREAD_MUTEX_T__DATA__KIND 1
61+#endif
62
63 /* Define to 1 if pthread_mutex_t has a member called __m_kind. */
64 /* #undef HAVE_PTHREAD_MUTEX_T__M_KIND */
65@@ -219,7 +229,9 @@
66 #define HAVE_SEMTIMEDOP 1
67
68 /* Define to 1 if libstd++ supports annotating shared pointers */
69+#ifndef __ANDROID__
70 #define HAVE_SHARED_POINTER_ANNOTATION 1
71+#endif
72
73 /* Define to 1 if you have the `signalfd' function. */
74 #define HAVE_SIGNALFD 1
75@@ -450,7 +462,11 @@
76 #define VERSION "3.12.0"
77
78 /* Temporary files directory */
79+#ifdef __ANDROID__
80+#define VG_TMPDIR "/data/local/tmp"
81+#else
82 #define VG_TMPDIR "/tmp"
83+#endif
84
85 /* Define to `int' if <sys/types.h> doesn't define. */
86 /* #undef gid_t */
87diff '--exclude=.git' -ru ./coregrind/m_coredump/coredump-elf.c /huge-ssd/aosp-arm64/external/valgrind/coregrind/m_coredump/coredump-elf.c
88--- ./coregrind/m_coredump/coredump-elf.c 2016-10-21 03:37:40.000000000 -0700
89+++ /huge-ssd/aosp-arm64/external/valgrind/coregrind/m_coredump/coredump-elf.c 2017-04-18 17:46:05.683070839 -0700
90@@ -135,6 +135,7 @@
91 phdr->p_align = VKI_PAGE_SIZE;
92 }
93
94+#if 0 /* We've had Elf32_Nhdr since at least froyo! */
95 #if defined(VGPV_arm_linux_android) || defined(VGPV_x86_linux_android) \
96 || defined(VGPV_mips32_linux_android)
97 /* Android's libc doesn't provide a definition for this. Hence: */
98@@ -146,6 +147,7 @@
99 }
100 Elf32_Nhdr;
101 #endif
102+#endif
103
104 struct note {
105 struct note *next;
106diff '--exclude=.git' -ru ./coregrind/m_main.c /huge-ssd/aosp-arm64/external/valgrind/coregrind/m_main.c
107--- ./coregrind/m_main.c 2016-10-21 03:37:40.000000000 -0700
108+++ /huge-ssd/aosp-arm64/external/valgrind/coregrind/m_main.c 2017-04-19 10:42:08.740064299 -0700
109@@ -2943,6 +2943,47 @@
110 VG_(printf)("Something called __aeabi_unwind_cpp_pr1()\n");
111 vg_assert(0);
112 }
113+
114+#if defined(__ANDROID__) && defined(__clang__)
115+/* Replace __aeabi_memcpy* functions with vgPlain_memcpy. */
116+void* __aeabi_memcpy(void *dest, const void *src, SizeT n);
117+void* __aeabi_memcpy(void *dest, const void *src, SizeT n)
118+{
119+ return VG_(memcpy)(dest, src, n);
120+}
121+
122+void* __aeabi_memcpy4(void *dest, const void *src, SizeT n);
123+void* __aeabi_memcpy4(void *dest, const void *src, SizeT n)
124+{
125+ return VG_(memcpy)(dest, src, n);
126+}
127+
128+void* __aeabi_memcpy8(void *dest, const void *src, SizeT n);
129+void* __aeabi_memcpy8(void *dest, const void *src, SizeT n)
130+{
131+ return VG_(memcpy)(dest, src, n);
132+}
133+
134+/* Replace __aeabi_memclr* functions with vgPlain_memset. */
135+void* __aeabi_memclr(void *dest, SizeT n);
136+void* __aeabi_memclr(void *dest, SizeT n)
137+{
138+ return VG_(memset)(dest, 0, n);
139+}
140+
141+void* __aeabi_memclr4(void *dest, SizeT n);
142+void* __aeabi_memclr4(void *dest, SizeT n)
143+{
144+ return VG_(memset)(dest, 0, n);
145+}
146+
147+void* __aeabi_memclr8(void *dest, SizeT n);
148+void* __aeabi_memclr8(void *dest, SizeT n)
149+{
150+ return VG_(memset)(dest, 0, n);
151+}
152+#endif /* __ANDROID__ __clang__ */
153+
154 #endif
155
156 /* ---------------- Requirement 2 ---------------- */
157diff '--exclude=.git' -ru ./coregrind/vgdb.c /huge-ssd/aosp-arm64/external/valgrind/coregrind/vgdb.c
158--- ./coregrind/vgdb.c 2016-10-21 03:37:39.000000000 -0700
159+++ /huge-ssd/aosp-arm64/external/valgrind/coregrind/vgdb.c 2017-04-18 18:08:21.647243892 -0700
160@@ -682,7 +682,8 @@
161 sigpipe++;
162 } else if (signum == SIGALRM) {
163 sigalrm++;
164-#if defined(VGPV_arm_linux_android) \
165+#if defined(VGPV_amd64_linux_android) \
166+ || defined(VGPV_arm_linux_android) \
167 || defined(VGPV_x86_linux_android) \
168 || defined(VGPV_mips32_linux_android) \
169 || defined(VGPV_arm64_linux_android)
170diff '--exclude=.git' -ru ./coregrind/vg_preloaded.c /huge-ssd/aosp-arm64/external/valgrind/coregrind/vg_preloaded.c
171--- ./coregrind/vg_preloaded.c 2016-10-21 03:37:40.000000000 -0700
172+++ /huge-ssd/aosp-arm64/external/valgrind/coregrind/vg_preloaded.c 2017-04-19 09:41:12.242842176 -0700
173@@ -58,6 +58,7 @@
174 void VG_NOTIFY_ON_LOAD(freeres)(Vg_FreeresToRun to_run)
175 {
176 # if !defined(__UCLIBC__) \
177+ && !defined(VGPV_amd64_linux_android) \
178 && !defined(VGPV_arm_linux_android) \
179 && !defined(VGPV_x86_linux_android) \
180 && !defined(VGPV_mips32_linux_android) \
181diff '--exclude=.git' -ru ./include/pub_tool_libcsetjmp.h /huge-ssd/aosp-arm64/external/valgrind/include/pub_tool_libcsetjmp.h
182--- ./include/pub_tool_libcsetjmp.h 2016-10-21 03:37:39.000000000 -0700
183+++ /huge-ssd/aosp-arm64/external/valgrind/include/pub_tool_libcsetjmp.h 2017-04-18 17:15:06.932302961 -0700
184@@ -120,6 +120,14 @@
185 __attribute__((noreturn))
186 void VG_MINIMAL_LONGJMP(VG_MINIMAL_JMP_BUF(_env));
187
188+#elif defined(VGPV_arm64_linux_android)
189+
190+/* Android clang/llvm has no __builtin_{setjmp,longjmp} for aarch64. */
191+/* Use the same setjmp/longjmp functions for both gcc and clang. */
192+#define VG_MINIMAL_JMP_BUF(_name) jmp_buf _name
193+#define VG_MINIMAL_SETJMP(_env) ((UWord)(setjmp((_env))))
194+#define VG_MINIMAL_LONGJMP(_env) longjmp((_env),1)
195+
196 #else
197
198 /* The default implementation. */
199Only in /huge-ssd/aosp-arm64/external/valgrind/: MODULE_LICENSE_GPL
200Only in /huge-ssd/aosp-arm64/external/valgrind/: NOTICE
201Only in /huge-ssd/aosp-arm64/external/valgrind/: runtests-arm64.sh
202Only in /huge-ssd/aosp-arm64/external/valgrind/: runtests-arm.sh
203Only in /huge-ssd/aosp-arm64/external/valgrind/: runtest.sh