diff options
author | Sagar Thakur <sagar.thakur@imgtec.com> | 2016-09-07 09:09:03 +0000 |
---|---|---|
committer | Sagar Thakur <sagar.thakur@imgtec.com> | 2016-09-07 09:09:03 +0000 |
commit | 62b3eecdbe72af0255f0639b0446087a47efbf48 (patch) | |
tree | e8a99710b11b50df5ac40784edf1127e34798ace /test | |
parent | 22ae7c6cfe4cde570e900d4bb2883715c2014e5d (diff) |
[ESan][MIPS] Adds support for MIPS64
With this patch 10 out of 13 tests are passing.
Following is the list of failing tests:
struct-simple.cpp
workingset-signal-posix.cpp
mmap-shadow-conflict.c
Reviewed by bruening
Differential: D23799
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@280795 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/esan/TestCases/verbose-simple.c | 18 | ||||
-rw-r--r-- | test/esan/lit.cfg | 2 | ||||
-rw-r--r-- | test/lit.common.cfg | 3 |
3 files changed, 15 insertions, 8 deletions
diff --git a/test/esan/TestCases/verbose-simple.c b/test/esan/TestCases/verbose-simple.c index 0d867bf55..ba9575903 100644 --- a/test/esan/TestCases/verbose-simple.c +++ b/test/esan/TestCases/verbose-simple.c @@ -1,14 +1,18 @@ // RUN: %clang_esan_frag -O0 %s -o %t 2>&1 -// RUN: %env_esan_opts="verbosity=1 log_exe_name=1" %run %t 2>&1 | FileCheck %s +// RUN: %env_esan_opts="verbosity=1 log_exe_name=1" %run %t 2>&1 | FileCheck --check-prefix=CHECK-%arch %s int main(int argc, char **argv) { // CHECK: in esan::initializeLibrary // (There can be a re-exec for stack limit here.) - // CHECK: Shadow scale=2 offset=0x440000000000 - // CHECK-NEXT: Shadow #0: [110000000000-114000000000) (256GB) - // CHECK-NEXT: Shadow #1: [124000000000-12c000000000) (512GB) - // CHECK-NEXT: Shadow #2: [148000000000-150000000000) (512GB) - // CHECK-NEXT: in esan::finalizeLibrary - // CHECK-NEXT: ==verbose-simple{{.*}}EfficiencySanitizer: total struct field access count = 0 + // CHECK-x86_64: Shadow scale=2 offset=0x440000000000 + // CHECK-x86_64: Shadow #0: [110000000000-114000000000) (256GB) + // CHECK-x86_64: Shadow #1: [124000000000-12c000000000) (512GB) + // CHECK-x86_64: Shadow #2: [148000000000-150000000000) (512GB) + // CHECK-mips64: Shadow scale=2 offset=0x4400000000 + // CHECK-mips64: Shadow #0: [1140000000-1180000000) (1GB) + // CHECK-mips64: Shadow #1: [1380000000-13c0000000) (1GB) + // CHECK-mips64: Shadow #2: [14c0000000-1500000000) (1GB) + // CHECK: in esan::finalizeLibrary + // CHECK: ==verbose-simple{{.*}}EfficiencySanitizer: total struct field access count = 0 return 0; } diff --git a/test/esan/lit.cfg b/test/esan/lit.cfg index cf16a6b5d..8b8457d66 100644 --- a/test/esan/lit.cfg +++ b/test/esan/lit.cfg @@ -40,5 +40,5 @@ config.substitutions.append(('%env_esan_opts=', config.suffixes = ['.c', '.cpp'] # EfficiencySanitizer tests are currently supported on Linux x86-64 only. -if config.host_os not in ['Linux'] or config.target_arch != 'x86_64': +if config.host_os not in ['Linux'] or config.target_arch not in ['x86_64', 'mips64'] : config.unsupported = True diff --git a/test/lit.common.cfg b/test/lit.common.cfg index 9c5e7d0b7..068aa016c 100644 --- a/test/lit.common.cfg +++ b/test/lit.common.cfg @@ -88,6 +88,9 @@ config.substitutions.append( ('%run', config.emulator) ) # Define CHECK-%os to check for OS-dependent output. config.substitutions.append( ('CHECK-%os', ("CHECK-" + config.host_os))) +# Define CHECK-%arch to check for architecture-dependent output. +config.substitutions.append( ('CHECK-%arch', ("CHECK-" + config.host_arch))) + if config.host_os == 'Windows': # FIXME: This isn't quite right. Specifically, it will succeed if the program # does not crash but exits with a non-zero exit code. We ought to merge |