From ac764fabb8fd3e0af3e2e2b6faddacdc6a698ae3 Mon Sep 17 00:00:00 2001 From: Adhemerval Zanella Date: Mon, 14 Dec 2015 14:15:32 +0000 Subject: [PATCH] [compiler-rt] [msan] Variadic support for AArch64 Now with variadic support for msan on aarch6 there is no need for XFAIL signal_stress_test anymore. Also to garantee aligned stores for the FP/SIMD arguments enforce the '__msan_va_arg_tls' alignment to sizeof the SIMD register (16). llvm-svn: 255496 --- compiler-rt/lib/msan/msan.cc | 2 +- compiler-rt/test/msan/signal_stress_test.cc | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/compiler-rt/lib/msan/msan.cc b/compiler-rt/lib/msan/msan.cc index b64dcb6ffeb3..9949db4c13a0 100644 --- a/compiler-rt/lib/msan/msan.cc +++ b/compiler-rt/lib/msan/msan.cc @@ -55,7 +55,7 @@ SANITIZER_INTERFACE_ATTRIBUTE THREADLOCAL u32 __msan_retval_origin_tls; SANITIZER_INTERFACE_ATTRIBUTE -THREADLOCAL u64 __msan_va_arg_tls[kMsanParamTlsSize / sizeof(u64)]; +ALIGNED(16) THREADLOCAL u64 __msan_va_arg_tls[kMsanParamTlsSize / sizeof(u64)]; SANITIZER_INTERFACE_ATTRIBUTE THREADLOCAL u64 __msan_va_arg_overflow_size_tls; diff --git a/compiler-rt/test/msan/signal_stress_test.cc b/compiler-rt/test/msan/signal_stress_test.cc index d25bf820ffa0..5bc6f59213b1 100644 --- a/compiler-rt/test/msan/signal_stress_test.cc +++ b/compiler-rt/test/msan/signal_stress_test.cc @@ -1,8 +1,5 @@ // RUN: %clangxx_msan -std=c++11 -O0 %s -o %t && %run %t // -// AArch64 lacks var args instrumentation. -// XFAIL: aarch64 - // Test that va_arg shadow from a signal handler does not leak outside. #include