llvm-project/llvm/test/Instrumentation/AddressSanitizer
Xun Li 11453740bc [ASAN] Properly deal with musttail calls in ASAN
When address sanitizing a function, stack unpinsoning code is inserted before each ret instruction. However if the ret instruciton is preceded by a musttail call, such transformation broke the musttail call contract and generates invalid IR.
This patch fixes the issue by moving the insertion point prior to the musttail call if there is one.

Differential Revision: https://reviews.llvm.org/D87777
2020-09-18 23:10:34 -07:00
..
X86 [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
adaptive_global_redzones.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
asan-detect-invalid-pointer-pair.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
asan-masked-load-store.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
asan-vs-gvn.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
asan_address_space_attr.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
basic-msvc64.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
basic-myriad.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
basic.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
byref-args.ll [ASan][NewPM] Fix byref-args.ll under NPM 2020-09-18 10:50:53 -07:00
byval-args.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
debug-info-alloca.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
debug-info-global-var.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
debug_info.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
debug_info_noninstrumented_alloca.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
debug_info_noninstrumented_alloca2.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-instrument-globals-darwin.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-instrument-globals-linux.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-instrument-internal-globals.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-instrument-profiling-globals.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-instrument-promotable-allocas.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-instrument-sanitizers.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-touch-comdat-global.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-touch-odr-global.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
do-not-touch-threadlocal.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
dynamic-shadow-darwin.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
experiment-call.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
experiment.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
force-dynamic-shadow.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
freebsd.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_addrspace.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_cstring_darwin.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_lto_merge.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_metadata.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_metadata_array.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_metadata_bitcasts.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_metadata_darwin.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_metadata_external_comdat.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
global_metadata_windows.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
hoist-argument-init-insts.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
instrument-dynamic-allocas.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
instrument-no-return.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
instrument-stack.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
instrument_global.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
instrument_initializer_metadata.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
instrument_load_then_store.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
instrumentation-with-call-threshold.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
keep_going.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
lifetime-throw.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
lifetime-uar-uas.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
lifetime.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
local_alias.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
local_stack_base.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
localescape.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
musttail.ll [ASAN] Properly deal with musttail calls in ASAN 2020-09-18 23:10:34 -07:00
no-globals.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
odr-check-ignore.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
ps4.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
scale-offset.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
stack-poisoning-and-lifetime-be.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
stack-poisoning-and-lifetime.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
stack-poisoning-byval-args.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
stack-poisoning.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
stack_dynamic_alloca.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
stack_layout.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
str-nobuiltin.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
test64.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
twice.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
ubsan.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
version-mismatch-check.ll [ASan] Version mismatch check follow-up 2019-08-29 20:20:05 +00:00
win-sorted-sections.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
win-string-literal.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00
with-ifunc.ll [NewPM][ASan] Make ASan tests work under NPM 2020-07-17 18:01:25 -07:00