[sanitizer] Android ELF TLS is supported from Q (API 29)
authorRyan Prichard <rprichard@google.com>
Thu, 27 May 2021 21:53:49 +0000 (14:53 -0700)
committerRyan Prichard <rprichard@google.com>
Thu, 27 May 2021 21:53:49 +0000 (14:53 -0700)
Reviewed By: oontvoo, MaskRay

Differential Revision: https://reviews.llvm.org/D103214

compiler-rt/CMakeLists.txt
compiler-rt/test/lit.common.cfg.py
compiler-rt/test/sanitizer_common/TestCases/Linux/use_tls_test.cpp

index c9939ac..aa4905e 100644 (file)
@@ -274,8 +274,8 @@ if(NOT COMPILER_RT_HAS_FUNC_SYMBOL)
   add_definitions(-D__func__=__FUNCTION__)
 endif()
 
-# Provide some common commmandline flags for Sanitizer runtimes.
-if("${ANDROID_API_LEVEL}" GREATER_EQUAL 28)
+# Provide some common commandline flags for Sanitizer runtimes.
+if("${ANDROID_API_LEVEL}" GREATER_EQUAL 29)
   list(APPEND SANITIZER_COMMON_CFLAGS -fno-emulated-tls)
   string(APPEND COMPILER_RT_TEST_COMPILER_CFLAGS " -fno-emulated-tls")
 endif()
index 12e2b22..75dc77e 100644 (file)
@@ -463,7 +463,7 @@ if config.android:
   except ValueError:
     lit_config.fatal("Failed to read ro.build.version.sdk (using '%s' as adb): got '%s'" % (adb, android_api_level_str))
   android_api_level = min(android_api_level, int(config.android_api_level))
-  for required in [26, 28, 30]:
+  for required in [26, 28, 29, 30]:
     if android_api_level >= required:
       config.available_features.add('android-%s' % required)
   # FIXME: Replace with appropriate version when availible.
index 202030e..4cbdb77 100644 (file)
@@ -1,7 +1,7 @@
 // Test that executable with ELF-TLS will link/run successfully
 // RUN: %clangxx -fno-emulated-tls %s -o %t
 // RUN: %run %t 2>&1
-// REQUIRES: android-28
+// REQUIRES: android-29
 
 #include <stdio.h>
 #include <stdlib.h>