diff options
| author | Petr Hosek <phosek@chromium.org> | 2017-09-06 02:43:54 +0000 | 
|---|---|---|
| committer | Petr Hosek <phosek@chromium.org> | 2017-09-06 02:43:54 +0000 | 
| commit | 53335d6d86d5a3790d8fd6bcfa8860a577ccabfd (patch) | |
| tree | dda34af080e9217d68b48e8302258cbbfd3c604a /llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp | |
| parent | 0aa4b7d4c5e97b5157a784848d977fc142918ef2 (diff) | |
| download | llvm-53335d6d86d5a3790d8fd6bcfa8860a577ccabfd.zip llvm-53335d6d86d5a3790d8fd6bcfa8860a577ccabfd.tar.gz llvm-53335d6d86d5a3790d8fd6bcfa8860a577ccabfd.tar.bz2 | |
[libcxxabi] When built with ASan, __cxa_throw calls __asan_handle_no_return
The ASan runtime on many systems intercepts cxa_throw just so it
can call asan_handle_no_return first. Some newer systems such as
Fuchsia don't use interceptors on standard library functions at all,
but instead use sanitizer-instrumented versions of the standard
libraries. When libc++abi is built with ASan, cxa_throw can just
call asan_handle_no_return itself so no interceptor is required.
This is a re-land of r311045, which has become safe after r311869
changed compiler-rt to declare __asan_handle_no_return.
Patch by Roland McGrath
Differential Revision: https://reviews.llvm.org/D37229
llvm-svn: 312606
Diffstat (limited to 'llvm/lib/ToolDrivers/llvm-lib/LibDriver.cpp')
0 files changed, 0 insertions, 0 deletions
