1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00
llvm-mirror/test/Instrumentation/MemorySanitizer
Alexander Potapenko 35af6c33d8 [MSan] another take at instrumenting inline assembly - now with calls
Turns out it's not always possible to figure out whether an asm()
statement argument points to a valid memory region.
One example would be per-CPU objects in the Linux kernel, for which the
addresses are calculated using the FS register and a small offset in the
.data..percpu section.
To avoid pulling all sorts of checks into the instrumentation, we replace
actual checking/unpoisoning code with calls to
msan_instrument_asm_load(ptr, size) and
msan_instrument_asm_store(ptr, size) functions in the runtime.

This patch doesn't implement the runtime hooks in compiler-rt, as there's
been no demand in assembly instrumentation for userspace apps so far.

llvm-svn: 345702
2018-10-31 09:32:47 +00:00
..
AArch64 [MSan] Make sure variadic function arguments do not overflow __msan_va_arg_tls 2018-09-06 08:21:54 +00:00
Mips [MSan] Make sure variadic function arguments do not overflow __msan_va_arg_tls 2018-09-06 08:21:54 +00:00
PowerPC [MSan] Make sure variadic function arguments do not overflow __msan_va_arg_tls 2018-09-06 08:21:54 +00:00
X86 [MSan] store origins for variadic function parameters in __msan_va_arg_origin_tls 2018-09-06 15:14:36 +00:00
alloca.ll [MSan] Add KMSAN instrumentation to MSan pass 2018-09-07 09:10:30 +00:00
array_types.ll
atomics.ll
byval-alignment.ll
check_access_address.ll
check-constant-shadow.ll
csr.ll
global_ctors_2to3.ll
instrumentation-with-call-threshold.ll
manual-shadow.ll
masked-store-load.ll
missing_origin.ll
msan_asm_conservative.ll [MSan] another take at instrumenting inline assembly - now with calls 2018-10-31 09:32:47 +00:00
msan_basic.ll
msan_kernel_basic.ll [MSan] Add KMSAN instrumentation to MSan pass 2018-09-07 09:10:30 +00:00
msan_x86_bts_asm.ll [MSan] another take at instrumenting inline assembly - now with calls 2018-10-31 09:32:47 +00:00
msan_x86intrinsics.ll
mul_by_constant.ll
nosanitize.ll
origin-alignment.ll
origin-array.ll
pr32842.ll
return_from_main.ll
store-long-origin.ll
store-origin.ll [MSan] Add KMSAN instrumentation to MSan pass 2018-09-07 09:10:30 +00:00
str-nobuiltin.ll
unreachable.ll
unsized_type.ll
vector_arith.ll
vector_cmp.ll
vector_cvt.ll
vector_pack.ll
vector_shift.ll
with-call-type-size.ll