// detected after dead stripping has been performed. This proves that the
// runtime is able to register globals in the __DATA,__asan_globals section.
+// REQUIRES: osx-ld64-live_support
// RUN: %clang_asan -Xlinker -dead_strip -o %t %s
// RUN: llvm-nm -format=posix %t | FileCheck --check-prefix NM-CHECK %s
// RUN: not %run %t 2>&1 | FileCheck --check-prefix ASAN-CHECK %s
lit.util.usePlatformSdkOnDarwin(config, lit_config)
if config.host_os == 'Darwin':
- ld_cmd = subprocess.Popen(["bash", "-c", "sw_vers -productVersion | awk -F '.' '{print $1 \".\" $2}'"], stdout = subprocess.PIPE)
- ld_out = ld_cmd.stdout.read().decode()
- ld_cmd.wait()
- osx_version = float(ld_out)
- if osx_version >= 10.11:
- config.available_features.add('osx-autointerception')
+ try:
+ osx_version = subprocess.check_output(["sw_vers", "-productVersion"])
+ osx_version = tuple(int(x) for x in osx_version.split('.'))
+ if osx_version >= (10, 11):
+ config.available_features.add('osx-autointerception')
+ config.available_features.add('osx-ld64-live_support')
+ except:
+ pass
sancovcc_path = os.path.join(llvm_tools_dir, "sancov")
if os.path.exists(sancovcc_path):