[all-commits] [llvm/llvm-project] 0c35b6: [ASAN] Don't inline when -asan-max-inline-poisonin...
Roy Sundahl via All-commits
all-commits at lists.llvm.org
Mon Oct 24 14:27:13 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0c35b6165ccc4fc3c5c1286236a02ea6f7894d00
https://github.com/llvm/llvm-project/commit/0c35b6165ccc4fc3c5c1286236a02ea6f7894d00
Author: Roy Sundahl <rsundahl at apple.com>
Date: 2022-10-24 (Mon, 24 Oct 2022)
Changed paths:
M compiler-rt/lib/asan/asan_interface.inc
M compiler-rt/lib/asan/asan_interface_internal.h
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/asan_rtl.cpp
M compiler-rt/lib/asan/tests/asan_internal_interface_test.cpp
M compiler-rt/test/asan/TestCases/set_shadow_test.c
M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
A llvm/test/Instrumentation/AddressSanitizer/calls-only.ll
Log Message:
-----------
[ASAN] Don't inline when -asan-max-inline-poisoning-size=0
When -asan-max-inline-poisoning-size=0, all shadow memory access should be
outlined (through asan calls). This was not occuring when partial poisoning
was required on the right side of a variable's redzone. This diff contains
the changes necessary to implement and utilize __asan_set_shadow_01() through
__asan_set_shadow_07(). The change is necessary for the full abstraction of
the asan implementation and will enable experimentation with alternate strategies.
Differential Revision: https://reviews.llvm.org/D136197
More information about the All-commits
mailing list