summaryrefslogtreecommitdiffstats
path: root/compiler-rt
diff options
context:
space:
mode:
authorYabin Cui <yabinc@google.com>2015-12-09 18:37:27 +0000
committerYabin Cui <yabinc@google.com>2015-12-09 18:37:27 +0000
commitd28ffacc991bcc9bb2cb6493fbb214b842615e0f (patch)
tree9ba33a15dd68a6b2ae9f5174807f76a6de180777 /compiler-rt
parent29508491e5aa05dd1fb9a0ac2ad7d7366b84012a (diff)
downloadbcm5719-llvm-d28ffacc991bcc9bb2cb6493fbb214b842615e0f.tar.gz
bcm5719-llvm-d28ffacc991bcc9bb2cb6493fbb214b842615e0f.zip
[tsan] Define sigaction_t for Android.
Reviewers: kcc, eugenis, dvyukov Subscribers: llvm-commits, tberghammer, danalbert, srhines Differential Revision: http://reviews.llvm.org/D15298 llvm-svn: 255135
Diffstat (limited to 'compiler-rt')
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_interceptors.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc b/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc
index 0f24935c9ed..1456db36b99 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc
@@ -151,6 +151,17 @@ typedef long long_t; // NOLINT
typedef void (*sighandler_t)(int sig);
typedef void (*sigactionhandler_t)(int sig, my_siginfo_t *siginfo, void *uctx);
+#if SANITIZER_ANDROID
+struct sigaction_t {
+ u32 sa_flags;
+ union {
+ sighandler_t sa_handler;
+ sigactionhandler_t sa_sgiaction;
+ };
+ __sanitizer_sigset_t sa_mask;
+ void (*sa_restorer)();
+};
+#else
struct sigaction_t {
#ifdef __mips__
u32 sa_flags;
@@ -173,6 +184,7 @@ struct sigaction_t {
void (*sa_restorer)();
#endif
};
+#endif
const sighandler_t SIG_DFL = (sighandler_t)0;
const sighandler_t SIG_IGN = (sighandler_t)1;
OpenPOWER on IntegriCloud