Elliott Hughes | a0664b9 | 2017-04-18 17:46:52 -0700 | [diff] [blame] | 1 | Only in /huge-ssd/aosp-arm64/external/valgrind/: android |
| 2 | Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.build_all.mk |
| 3 | Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.build_host.mk |
| 4 | Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.build_one.mk |
| 5 | Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.clean.mk |
| 6 | Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.mk |
| 7 | Only in /huge-ssd/aosp-arm64/external/valgrind/: ANDROID_PATCH_AGAINST_UPSTREAM.txt |
| 8 | Only in /huge-ssd/aosp-arm64/external/valgrind/: Android.test.mk |
| 9 | diff '--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 */ |
| 87 | diff '--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; |
| 106 | diff '--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 ---------------- */ |
| 157 | diff '--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) |
| 170 | diff '--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) \ |
| 181 | diff '--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. */ |
| 199 | Only in /huge-ssd/aosp-arm64/external/valgrind/: MODULE_LICENSE_GPL |
| 200 | Only in /huge-ssd/aosp-arm64/external/valgrind/: NOTICE |
| 201 | Only in /huge-ssd/aosp-arm64/external/valgrind/: runtests-arm64.sh |
| 202 | Only in /huge-ssd/aosp-arm64/external/valgrind/: runtests-arm.sh |
| 203 | Only in /huge-ssd/aosp-arm64/external/valgrind/: runtest.sh |