forked from OSchip/llvm-project
a28c9e8f09
On Darwin, simple C null-terminated constant strings normally end up in the __TEXT,__cstring section of the resulting Mach-O binary. When instrumented with ASan, these strings are transformed in a way that they cannot be in __cstring (the linker unifies the content of this section and strips extra NUL bytes, which would break instrumentation), and are put into a generic __const section. This breaks some of the tools that we have: Some tools need to scan all C null-terminated strings in Mach-O binaries, and scanning all the contents of __const has a large performance penalty. This patch instead introduces a special section, __asan_cstring which will now hold the instrumented null-terminated strings. Differential Revision: https://reviews.llvm.org/D25026 llvm-svn: 285619 |
||
---|---|---|
.. | ||
X86 | ||
adaptive_global_redzones.ll | ||
asan-vs-gvn.ll | ||
asan_address_space_attr.ll | ||
basic-msvc64.ll | ||
basic.ll | ||
debug-info-global-var.ll | ||
debug_info.ll | ||
debug_info_noninstrumented_alloca.ll | ||
do-not-instrument-globals-darwin.ll | ||
do-not-instrument-globals-linux.ll | ||
do-not-instrument-internal-globals.ll | ||
do-not-instrument-profiling-globals.ll | ||
do-not-instrument-promotable-allocas.ll | ||
do-not-instrument-sanitizers.ll | ||
do-not-touch-comdat-global.ll | ||
do-not-touch-odr-global.ll | ||
do-not-touch-threadlocal.ll | ||
experiment-call.ll | ||
experiment.ll | ||
freebsd.ll | ||
global_cstring_darwin.ll | ||
global_metadata.ll | ||
global_metadata_darwin.ll | ||
instrument-dynamic-allocas.ll | ||
instrument-no-return.ll | ||
instrument-stack.ll | ||
instrument_global.ll | ||
instrument_initializer_metadata.ll | ||
instrument_load_then_store.ll | ||
instrumentation-with-call-threshold.ll | ||
keep_going.ll | ||
lifetime-throw.ll | ||
lifetime-uar-uas.ll | ||
lifetime.ll | ||
local_alias.ll | ||
localescape.ll | ||
scale-offset.ll | ||
stack-poisoning-and-lifetime-be.ll | ||
stack-poisoning-and-lifetime.ll | ||
stack-poisoning.ll | ||
stack_dynamic_alloca.ll | ||
stack_layout.ll | ||
str-nobuiltin.ll | ||
test64.ll | ||
twice.ll | ||
ubsan.ll |