summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEvgeniy Stepanov <eugeni.stepanov@gmail.com>2015-09-04 22:39:21 +0000
committerEvgeniy Stepanov <eugeni.stepanov@gmail.com>2015-09-04 22:39:21 +0000
commitde77b1cdf361dcd6fa344cf8d921a2728d47eaf9 (patch)
tree35ec19f070be54f992ec4b62411cf7773f52713c
parentb40cd567c3c1caf16e29c34829071e0182e5c5bd (diff)
downloadbcm5719-llvm-de77b1cdf361dcd6fa344cf8d921a2728d47eaf9.tar.gz
bcm5719-llvm-de77b1cdf361dcd6fa344cf8d921a2728d47eaf9.zip
[asan] Detect asanwrapper binary in android tests.
Tests need to be run either via asanwrapper or asanwrapper64 depending in the binary bitness. This matters when testing on an aarch64 device. llvm-svn: 246891
-rwxr-xr-xcompiler-rt/test/asan/android_commands/android_run.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler-rt/test/asan/android_commands/android_run.py b/compiler-rt/test/asan/android_commands/android_run.py
index 621844fd30a..6bda6e96d2a 100755
--- a/compiler-rt/test/asan/android_commands/android_run.py
+++ b/compiler-rt/test/asan/android_commands/android_run.py
@@ -18,13 +18,16 @@ def build_env():
args.append('%s="%s"' % (key, value))
return ' '.join(args)
+is_64bit = (subprocess.check_output(['file', sys.argv[0] + '.real']).find('64-bit') != -1)
+asanwrapper = "asanwrapper64" if is_64bit else "asanwrapper"
+
device_env = build_env()
device_args = ' '.join(sys.argv[1:]) # FIXME: escape?
device_stdout = device_binary + '.stdout'
device_stderr = device_binary + '.stderr'
device_exitcode = device_binary + '.exitcode'
-ret = adb(['shell', 'cd %s && %s asanwrapper %s %s >%s 2>%s ; echo $? >%s' %
- (ANDROID_TMPDIR, device_env, device_binary, device_args,
+ret = adb(['shell', 'cd %s && %s %s %s %s >%s 2>%s ; echo $? >%s' %
+ (ANDROID_TMPDIR, device_env, asanwrapper, device_binary, device_args,
device_stdout, device_stderr, device_exitcode)])
if ret != 0:
sys.exit(ret)
OpenPOWER on IntegriCloud