summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/asan/asan_intercepted_functions.h
Commit message (Collapse)AuthorAgeFilesLines
* [ASan] Delete asan_intercepted_functions.h, move the code into ↵Alexander Potapenko2013-12-261-79/+0
| | | | | | | | asan_interceptors.h Fixes https://code.google.com/p/address-sanitizer/issues/detail?id=188. llvm-svn: 198048
* [ASan] Remove the explicit function prototypes for intercepted functions on ↵Timur Iskhodzhanov2013-09-101-36/+0
| | | | | | Windows llvm-svn: 190411
* asan: Add a wcslen interceptor mirroring strlenReid Kleckner2013-09-051-0/+1
| | | | | | Tested on Linux, since I can't build the tests on Windows yet. llvm-svn: 190022
* Disable init-order checking before destructors are run.Alexey Samsonov2013-05-241-0/+6
| | | | | | | | | | We don't want to report initialization-order bugs when a destructor of a global variable accesses dynamically initialized global from another (not necessarily initialized) module. We do this by intercepting __cxa_atexit and registrering our own callback that unpoisons shadow for all dynamically initialized global variables. llvm-svn: 182637
* asan/tsan: move strcasecmp() interceptor to sanitizer_commonDmitry Vyukov2013-03-261-2/+0
| | | | llvm-svn: 178010
* [sanitizer] Replace more platform checks with SANITIZER_ constants.Evgeniy Stepanov2013-03-191-8/+8
| | | | llvm-svn: 177400
* [Sanitizer] Don't intercept frexpf and frexpl on Windows. Add frexp ↵Alexey Samsonov2013-03-151-1/+2
| | | | | | declaration to asan_intercepted_functions.h llvm-svn: 177155
* [asan] move the .preinit_array hack into a separate file (added used attribute)Kostya Serebryany2013-02-221-1/+0
| | | | llvm-svn: 175871
* [ASan] Declare CreateThread as extern "C" to fix the Windows build.Alexander Potapenko2013-02-211-1/+1
| | | | llvm-svn: 175760
* [ASan] Put several function prototypes back under #ifdef _WIN32 to fix the ↵Alexander Potapenko2013-02-211-0/+21
| | | | | | Windows build. llvm-svn: 175743
* [ASan] Refactoring: nuke the redundant function declarations in ↵Alexander Potapenko2013-02-211-237/+0
| | | | | | | | | | asan_intercepted_functions.h that had been used on OS X only. The INTERCEPTOR() macro on OS X is now responsible for declaring the wrapped function, the wrapper and the pair of pointers to them in __DATA,__interposition section. Thus adding an interceptor requires editing a single file now. llvm-svn: 175740
* [ASan] Delete asan/dynamic dir and temporarily move the interposers ↵Alexander Potapenko2013-02-201-13/+32
| | | | | | | | declarations to asan_intercepted_functions.h Now that we have only one dependency on asan_intercepted_functions.h, we can unite that code with the interceptors declarations in asan_interceptors.cc and get rid of asan_intercepted_functions.h llvm-svn: 175631
* [sanitizer] Add interceptors for localtime and friends.Evgeniy Stepanov2013-02-191-0/+14
| | | | llvm-svn: 175499
* [asan] Add new __isoc99_*scanf to ASan intercepted functions list.Evgeniy Stepanov2013-02-121-0/+14
| | | | llvm-svn: 174965
* [ASan] fix the interceptor for siglongjmp. As we're using dylib ↵Alexander Potapenko2013-02-061-3/+1
| | | | | | interposition, we must intercept both siglongjmp and longjmp on Darwin. llvm-svn: 174510
* [ASan] Delete the code related to static runtime on OS X.Alexander Potapenko2013-02-051-3/+4
| | | | | | Nuke lib/interception/mach_override. llvm-svn: 174383
* [ASan] fix compilation on Mac by adding a missing pwrite parameter.Alexander Potapenko2013-01-241-1/+2
| | | | llvm-svn: 173333
* [ASan] Use dylib interposition to hook memory allocation in the dynamic runtime.Alexander Potapenko2013-01-221-7/+26
| | | | | | | | This CL drastically simplifies the way we're hooking the memory allocation routines in ASan on Mac by using dylib interposition to replace the main malloc_zone_* functions. This allows us to avoid replacing the default CFAllocator and drop the CF dependency at all. Committing this patch will result in the static runtime being broken. A follow-up CL will switch ASan to use the dynamic runtime library. llvm-svn: 173134
* ASan: build unit tests with -fsanitize-address-zero-base-shadow on Linux and ↵Alexey Samsonov2013-01-211-1/+1
| | | | | | Android llvm-svn: 173021
* [asan] Move *scanf declarations out of mac-only section.Evgeniy Stepanov2013-01-211-23/+23
| | | | llvm-svn: 173020
* [sanitizer] lintEvgeniy Stepanov2013-01-181-2/+3
| | | | llvm-svn: 172817
* [ASan] Fix compilation on Mac.Alexander Potapenko2013-01-181-6/+8
| | | | llvm-svn: 172810
* [sanitizer] Fix Mac build.Evgeniy Stepanov2013-01-181-0/+11
| | | | llvm-svn: 172809
* [sanitizer] reapply r172719, r172721-172723, r172725, and also fix the ↵Kostya Serebryany2013-01-181-2/+7
| | | | | | warning on Mac. llvm-svn: 172791
* Revert r172719, r172721-172723, and r172725.Jakob Stoklund Olesen2013-01-171-7/+2
| | | | | | | | | | | | | | | | | | The r172719 patch broke the build on Mac, the others depended on it. compiler-rt/lib/asan/asan_interceptors.cc:78:13: error: unused function 'SetThreadName' [-Werror,-Wunused-function] static void SetThreadName(const char *name) { Orignal headlines: [asan] attempting to fix the Mac build [asan] restructure read/pread/pread64 tests [sanitizer] move write/pwrite/pwrite64 interceptors to common [msan] start using common interceptors in msan [tsan] move prctl interceptor from asan to common_interceptors thus enabling it for tsan too llvm-svn: 172763
* [asan] attempting to fix the Mac buildKostya Serebryany2013-01-171-0/+7
| | | | llvm-svn: 172725
* [tsan] move prctl interceptor from asan to common_interceptors thus enabling ↵Kostya Serebryany2013-01-171-2/+0
| | | | | | it for tsan too llvm-svn: 172719
* [Sanitizer] Add new header - sanitizer_platform_interceptors.h, which should ↵Alexey Samsonov2012-12-131-0/+1
| | | | | | define whether or not given function should be intercepted on a given platform. llvm-svn: 170115
* [ASan] one more macro for 'read' interceptionAlexey Samsonov2012-12-131-0/+2
| | | | llvm-svn: 170114
* [ASan] more macro for conditional interception of pread functionsAlexey Samsonov2012-12-131-0/+5
| | | | llvm-svn: 170112
* [sanitizer] replace size_t with SIZE_T in interceptors (same for ssize_t, ↵Kostya Serebryany2012-12-131-14/+7
| | | | | | off_t and off64_t). This is done to avoid confusion and to make the code work with compilers that define size_t w/o any includes (MSVC) llvm-svn: 170103
* [asan] fix the Android build (pread64 interceptor again)Kostya Serebryany2012-12-131-2/+1
| | | | llvm-svn: 170098
* [sanitizer] add OnMap/OnUmap callbacks to the allocator interfaceKostya Serebryany2012-12-121-2/+4
| | | | llvm-svn: 169985
* [ASan] fix compilation on Mac.Alexander Potapenko2012-12-121-0/+12
| | | | llvm-svn: 169969
* ASan: intercept prctl on Linux onlyAlexey Samsonov2012-12-071-0/+2
| | | | llvm-svn: 169616
* [ASan] Do not build the interceptors that use ObjC blocks if the compiler ↵Alexander Potapenko2012-12-041-1/+1
| | | | | | | | | | | does not support blocks. Need to define MISSING_BLOCKS_SUPPORT in this case at buildtime. Patch by Jack Howarth <howarth@bromo.med.uc.edu> llvm-svn: 169206
* [ASan] intercept swapcontext on Linux onlyAlexey Samsonov2012-11-231-8/+6
| | | | llvm-svn: 168509
* [ASan] Add interceptor for swapcontext to fight with false positives in some ↵Alexey Samsonov2012-11-231-0/+8
| | | | | | of its use cases. llvm-svn: 168508
* Fix two compiler warnings: must use at least one argument for "..." in a ↵Alexander Potapenko2012-09-061-1/+1
| | | | | | variadic macros, signed vs. unsigned comparison. llvm-svn: 163314
* Re-implement the wrappers for libdispatch functions using blocks where ↵Alexander Potapenko2012-08-231-0/+8
| | | | | | | | | | | appropriate (kudos to Anna Zaks for a good example). This simplifies the code much and lets us not implement internal parts of libdispatch. All ASan tests from t32 and t64 should pass with the dylib runtime now. llvm-svn: 162439
* Dynamic interceptors for dispatch_async and dispatch_after.Alexander Potapenko2012-08-201-0/+6
| | | | llvm-svn: 162202
* Fix a leftover #if defined(DYNAMIC_MAC_WRAPPERS).Alexander Potapenko2012-08-201-1/+1
| | | | llvm-svn: 162197
* Remove the extra semicolon reported by the buildbot.Alexander Potapenko2012-08-151-1/+1
| | | | llvm-svn: 161954
* Introduce asan_intercepted_functions.h which contains the declarations ↵Alexander Potapenko2012-08-151-0/+205
wrapped functions and their wrappers. Those declarations are going to be shared between asan_interceptors.cc and the dynamic runtime library on Mac OS. llvm-svn: 161952
OpenPOWER on IntegriCloud