llvm-project/compiler-rt/test/msan
Adhemerval Zanella 689724e578 [compiler-rt] [msan] Unify aarch64 mapping
This patch unify the 39-bit and 42-bit mapping for aarch64 to use only
one instrumentation algorithm.  A runtime check avoid mapping 42-bit 
only segments for 39-bit kernels.

The mapping to use now is for 39 and 42-bits:

    0x00000000000ULL-0x01000000000ULL  MappingDesc::INVALID
    0x01000000000ULL-0x02000000000ULL  MappingDesc::SHADOW
    0x02000000000ULL-0x03000000000ULL  MappingDesc::ORIGIN
    0x03000000000ULL-0x04000000000ULL  MappingDesc::SHADOW
    0x04000000000ULL-0x05000000000ULL  MappingDesc::ORIGIN
    0x05000000000ULL-0x06000000000ULL  MappingDesc::APP
    0x06000000000ULL-0x07000000000ULL  MappingDesc::INVALID
    0x07000000000ULL-0x08000000000ULL  MappingDesc::APP

And only for 42-bits:

    0x08000000000ULL-0x09000000000ULL  MappingDesc::INVALID
    0x09000000000ULL-0x0A000000000ULL  MappingDesc::SHADOW
    0x0A000000000ULL-0x0B000000000ULL  MappingDesc::ORIGIN
    0x0B000000000ULL-0x0F000000000ULL  MappingDesc::INVALID
    0x0F000000000ULL-0x10000000000ULL  MappingDesc::APP
    0x10000000000ULL-0x11000000000ULL  MappingDesc::INVALID
    0x11000000000ULL-0x12000000000ULL  MappingDesc::APP
    0x12000000000ULL-0x17000000000ULL  MappingDesc::INVALID
    0x17000000000ULL-0x18000000000ULL  MappingDesc::SHADOW
    0x18000000000ULL-0x19000000000ULL  MappingDesc::ORIGIN
    0x19000000000ULL-0x20000000000ULL  MappingDesc::INVALID
    0x20000000000ULL-0x21000000000ULL  MappingDesc::APP
    0x21000000000ULL-0x26000000000ULL  MappingDesc::INVALID
    0x26000000000ULL-0x27000000000ULL  MappingDesc::SHADOW
    0x27000000000ULL-0x28000000000ULL  MappingDesc::ORIGIN
    0x28000000000ULL-0x29000000000ULL  MappingDesc::SHADOW
    0x29000000000ULL-0x2A000000000ULL  MappingDesc::ORIGIN
    0x2A000000000ULL-0x2B000000000ULL  MappingDesc::APP
    0x2B000000000ULL-0x2C000000000ULL  MappingDesc::INVALID
    0x2C000000000ULL-0x2D000000000ULL  MappingDesc::SHADOW
    0x2D000000000ULL-0x2E000000000ULL  MappingDesc::ORIGIN
    0x2E000000000ULL-0x2F000000000ULL  MappingDesc::APP
    0x2F000000000ULL-0x39000000000ULL  MappingDesc::INVALID
    0x39000000000ULL-0x3A000000000ULL  MappingDesc::SHADOW
    0x3A000000000ULL-0x3B000000000ULL  MappingDesc::ORIGIN
    0x3B000000000ULL-0x3C000000000ULL  MappingDesc::APP
    0x3C000000000ULL-0x3D000000000ULL  MappingDesc::INVALID
    0x3D000000000ULL-0x3E000000000ULL  MappingDesc::SHADOW
    0x3E000000000ULL-0x3F000000000ULL  MappingDesc::ORIGIN
    0x3F000000000ULL-0x40000000000ULL  MappingDesc::APP

And although complex it provides a better memory utilization that
previous one.

[1] http://reviews.llvm.org/D13817

llvm-svn: 251625
2015-10-29 13:04:19 +00:00
..
Linux [msan] Yet another attempt to fix process_vm_readv test. 2015-10-27 00:11:28 +00:00
Unit
scandir_test_root
CMakeLists.txt [CMake] lit tests shouldn't depend on runtimes in standalone build 2014-02-20 09:47:18 +00:00
allocator_mapping.cc [msan] Disable allocator_mapping test on mips64 and aarch64. 2015-09-29 22:24:57 +00:00
allocator_returns_null.cc Add %run to all lit tests 2014-04-30 21:34:17 +00:00
backtrace.cc [Msan] Fix the backtrace.cc tests to build and pass on FreeBSD 2015-04-24 07:52:47 +00:00
c-strdup.c [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
chained_origin.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
chained_origin_empty_stack.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
chained_origin_limits.cc [compiler-rt] [msan] Unify aarch64 mapping 2015-10-29 13:04:19 +00:00
chained_origin_memcpy.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
chained_origin_with_signals.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
check_mem_is_initialized.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
coverage-levels.cc [SanitizerCoverage] Upgrade lit tests to new -fsanitize-coverage= flags. 2015-05-07 23:20:47 +00:00
cxa_atexit.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
death-callback.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
default_blacklist.cc
dlerror.cc [MSan] Enable MSAN for aarch64 2015-09-16 15:12:25 +00:00
dso-origin.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
dtls_test.c [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
dtor-base-access.cc Removed xfail, since test is passing in line with expanded dtor sanitizing functionality 2015-08-13 20:54:05 +00:00
dtor-bit-fields.cc Test triangle inheritance member poisoning. 2015-09-03 23:06:13 +00:00
dtor-derived-class.cc Test triangle inheritance member poisoning. 2015-09-03 23:06:13 +00:00
dtor-member.cc added test file 2015-07-17 23:28:02 +00:00
dtor-multiple-inheritance-nontrivial-class-members.cc Failing test highlighting no poisoning when destructor not declared. 2015-09-08 22:41:50 +00:00
dtor-multiple-inheritance.cc Explicit reference to bug highlighted by 2015-09-16 00:41:28 +00:00
dtor-trivial-class-members.cc Test triangle inheritance member poisoning. 2015-09-03 23:06:13 +00:00
dtor-trivial.cpp Explicit reference to bug highlighted by 2015-09-16 00:41:28 +00:00
dtor-vtable-multiple-inheritance.cc Explicit reference to bug highlighted by 2015-09-16 00:41:28 +00:00
dtor-vtable.cc Explicit reference to bug highlighted by 2015-09-16 00:41:28 +00:00
errno.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
fork.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
ftime.cc [Msan] XFAIL the ftime.cc test on FreeBSD 2015-04-24 07:54:38 +00:00
getaddrinfo-positive.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
getaddrinfo.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
getc_unlocked.c [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
getline.cc [Msan] Fix the getline.cc test to pass on FreeBSD 2015-04-28 10:23:52 +00:00
heap-origin.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
icmp_slt_allones.cc [msan] Regression test for PR24561. 2015-08-25 22:20:15 +00:00
iconv.cc [Msan] Fix the iconv.cc test to build and pass on FreeBSD 2015-04-25 11:07:05 +00:00
if_indextoname.cc [Msan] Fix the if_indextoname.cc test to pass on FreeBSD 2015-05-11 14:46:16 +00:00
ifaddrs.cc [Msan] Fix the ifaddrs.cc test to build and pass on FreeBSD 2015-05-06 09:24:02 +00:00
initgroups.cc [Msan] Fix the initgroups.cc test to build on FreeBSD 2015-05-06 09:26:35 +00:00
inline.cc Add %run to all lit tests 2014-04-30 21:34:17 +00:00
insertvalue_origin.cc Disable one MSAN test in AArch64 until we have a proper fix 2015-09-18 17:22:48 +00:00
ioctl.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
ioctl_custom.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
keep-going-dso.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
keep-going.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
lit.cfg [Msan] Fix the backtrace.cc tests to build and pass on FreeBSD 2015-04-24 07:52:47 +00:00
lit.site.cfg.in
memcmp_test.cc [asan,tsan,msan] move the memcmp interceptor from asan/tsan to sanitizer_common. This may potentially lead to more reports from msan as it now sees the reads inside memcmp. To disable, use the flag intercept_memcmp=0. Likewise, it may potentially cause new races to appear due to more strict memcmp checking (flag strict_memcmp=1) 2015-07-29 23:53:08 +00:00
mktime.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
mmap.cc [compiler-rt] [msan] Unify aarch64 mapping 2015-10-29 13:04:19 +00:00
mmap_below_shadow.cc [MSan] Enable MSAN for aarch64 2015-09-16 15:12:25 +00:00
msan_check_mem_is_initialized.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
msan_copy_shadow.cc [msan] Add __msan_copy_shadow interface function. 2015-10-12 23:20:24 +00:00
msan_dump_shadow.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
msan_print_shadow.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
msan_print_shadow2.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
msan_print_shadow3.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
mul_by_const.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
no_sanitize_memory.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
no_sanitize_memory_prop.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
origin-store-long.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
param_tls_limit.cc [MSan] Enable MSAN for aarch64 2015-09-16 15:12:25 +00:00
poison_in_free.cc Add %run to all lit tests 2014-04-30 21:34:17 +00:00
print_stats.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
pthread_getattr_np_deadlock.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
pthread_setcancelstate.cc [msan] Intercept pthread_getcancel*. 2015-10-19 23:00:13 +00:00
rand_r.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
readdir64.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
realloc-large-origin.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
realloc-origin.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
report-demangling.cc [Msan] Fix the report-demangling.cc test to pass on FreeBSD 2015-05-08 12:10:46 +00:00
scandir.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
scandir_null.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
select.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
select_float_origin.cc [msan] Better use-after-free reports. 2015-01-22 13:33:16 +00:00
select_origin.cc Add %run to all lit tests 2014-04-30 21:34:17 +00:00
sem_getvalue.cc [sanitizer] Move sem_* to common interceptors. 2015-08-27 18:51:18 +00:00
setlocale.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
signal_stress_test.cc [MSan] Enable MSAN for aarch64 2015-09-16 15:12:25 +00:00
sigwait.cc Add %run to all lit tests 2014-04-30 21:34:17 +00:00
sigwaitinfo.cc Add %run to all lit tests 2014-04-30 21:34:17 +00:00
stack-origin.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
stack-origin2.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
strerror_r-non-gnu.c Add %run to all lit tests 2014-04-30 21:34:17 +00:00
strlen_of_shadow.cc [compiler-rt] [msan] Unify aarch64 mapping 2015-10-29 13:04:19 +00:00
strxfrm.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
sync_lock_set_and_test.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
test.h [MSan] Enable MSAN for aarch64 2015-09-16 15:12:25 +00:00
textdomain.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
times.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
tls_reuse.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
tsearch.cc Add %run to all lit tests 2014-04-30 21:34:17 +00:00
tzset.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
unaligned_read_origin.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
unpoison_string.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
use-after-dtor.cc testing for tail call optimization repression when sanitizing use-after-dtor 2015-07-30 18:46:18 +00:00
use-after-free.cc [MSan] Remove explicit -m64 from RUN lines. 2015-03-02 19:34:27 +00:00
vector_cvt.cc [msan] Mark one test as only supported on x86 2015-06-23 20:17:45 +00:00
vector_select.cc Enable this test for PPC64. 2015-07-05 08:11:36 +00:00