20 lines
750 B
Diff
20 lines
750 B
Diff
--- ../cache/valgrind-3.13.0/include/pub_tool_libcsetjmp.h 2017-05-31 15:14:14.000000000 +0000
|
|
+++ ./include/pub_tool_libcsetjmp.h 2018-08-17 23:14:23.768384982 +0000
|
|
@@ -120,6 +120,16 @@
|
|
__attribute__((noreturn))
|
|
void VG_MINIMAL_LONGJMP(VG_MINIMAL_JMP_BUF(_env));
|
|
|
|
+
|
|
+#elif defined(__ANDROID__) && defined(__aarch64__)
|
|
+
|
|
+/* Android clang/llvm has no __builtin_{setjmp,longjmp} for aarch64. */
|
|
+/* Use the same setjmp/longjmp functions for both gcc and clang. */
|
|
+#define VG_MINIMAL_JMP_BUF(_name) jmp_buf _name
|
|
+#define VG_MINIMAL_SETJMP(_env) ((UWord)(setjmp((_env))))
|
|
+#define VG_MINIMAL_LONGJMP(_env) longjmp((_env),1)
|
|
+
|
|
+
|
|
#elif defined(VGP_mips64_linux)
|
|
|
|
#define VG_MINIMAL_JMP_BUF(_name) ULong _name [168 / sizeof(ULong)]
|