summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/asan/asan_win.cc
Commit message (Collapse)AuthorAgeFilesLines
...
* Add detect_stack_use_after_scope runtime flagVitaly Buka2016-07-191-0/+6
| | | | | | | | | | Summary: This flag could be used to disable check in runtime. Subscribers: kubabrecka Differential Revision: https://reviews.llvm.org/D22495 llvm-svn: 276004
* [compiler-rt] Fix 64-bits exception handlers in ASAN 64-bits runtimeEtienne Bergeron2016-07-151-5/+14
| | | | | | | | | | | | | | Summary: This is adding the appropriate suport for exception handling for 64-bits ASAN on windows. Reviewers: rnk Subscribers: kubabrecka, llvm-commits, wang0109, chrisha Differential Revision: https://reviews.llvm.org/D22395 llvm-svn: 275585
* [asan] Add exception handler to map memory on demand on Win64.Etienne Bergeron2016-07-111-0/+50
| | | | | | | | | | Memory will be committed on demand when exception happens while accessing shadow memeory region. Patch by: Wei Wang Differential Revision: http://reviews.llvm.org/D21942 llvm-svn: 275107
* This patch is activating the build of Asan on Windows 64-bits.Etienne Bergeron2016-05-271-0/+17
| | | | | | | | | | | | | | | | | | It's fixing compilation errors. The runtime is not yet working. Missing features: OverrideFunction for x64 an equiv function for inline asm (atomic_compare_exchange_strong) shadow memory offset needs to be adjusted RoundUpToInstrBoundary for x64 They will be implemented by subsequent patches. Patch by Wei Wang. Differential revision: http://reviews.llvm.org/D20455 llvm-svn: 271049
* [asan] Add runtime support for __asan_(un)register_image_globalsRyan Govostes2016-03-281-0/+4
| | | | | | | | | | | This change introduces routines that register and unregister all instrumented globals in a loaded executable image. These routines are only implemented on Darwin, where globals metadata is expected to be placed in the __DATA,__asan_globals section. Review: http://reviews.llvm.org/D16841 llvm-svn: 264644
* [asan] Set the unhandled exception filter slightly later during startupReid Kleckner2016-03-211-4/+10
| | | | | | | | | | | VS 2015 moved the priority of their exception filter initializer from XIY to XCAA. We now set ours to XCAB, which makes it run after both CRT versions but before user constructors, as it should. Fixes null_deref.cc and a variety of related tests with VS 2015. Only 4 failures remain. llvm-svn: 264006
* [tsan] Use re-exec method to enable interceptors on older versions of OS XKuba Brecka2015-12-031-8/+0
| | | | | | | | In AddressSanitizer, we have the MaybeReexec method to detect when we're running without DYLD_INSERT_LIBRARIES (in which case interceptors don't work) and re-execute with the environment variable set. On OS X 10.11+, this is no longer necessary, but to have ThreadSanitizer supported on older versions of OS X, let's use the same method as well. This patch moves the implementation from `asan/` into `sanitizer_common/`. Differential Revision: http://reviews.llvm.org/D15123 llvm-svn: 254600
* Sanitizer: define WIN32_LEAN_AND_MEANSaleem Abdulrasool2015-10-291-0/+1
| | | | | | | | Define WIN32_LEAN_AND_MEAN before including Windows.h. This is already being done in some places. This does it more broadly. This permits building ASAN on Linux for Winndows, as well as reduces the amount of included declarations. llvm-svn: 251649
* Fix installation of the unhandled exception filter with r244767Reid Kleckner2015-08-131-1/+1
| | | | | | | Apparently /Zc:inline causes static globals in custom sections to be discarded if they are unreferenced. llvm-svn: 244908
* [sanitizer] 2-nd attempt. Add the flag handle_sigfpe that is default true to ↵Kostya Serebryany2015-08-061-2/+2
| | | | | | handle SIGFPE crashes same as SIGSEV crashes, patch by Karl Skomski. This time the test is enabled only on x86-64 (it broke on ARM) llvm-svn: 244234
* Revert "[sanitizer] Add the flag handle_sigfpe that is default true to ↵Renato Golin2015-08-061-2/+2
| | | | | | | | handle SIGFPE crashes same as SIGSEV crashes, patch by Karl Skomski" This reverts commit r244136, it was breaking the ARM bots for too long. We should investigate it offline. llvm-svn: 244210
* [sanitizer] Add the flag handle_sigfpe that is default true to handle SIGFPE ↵Kostya Serebryany2015-08-051-2/+2
| | | | | | crashes same as SIGSEV crashes, patch by Karl Skomski llvm-svn: 244136
* Delete unused <dbghelp.h> includeReid Kleckner2015-07-291-1/+0
| | | | llvm-svn: 243529
* [asan] Remove AsanPlatformThreadInitReid Kleckner2015-07-211-4/+0
| | | | | | | | | | | Since the CoreFoundation allocator replacement was moved in r173134, all implementations of this function have been empty. Reviewers: samsonov Differential Revision: http://reviews.llvm.org/D11375 llvm-svn: 242811
* [ASan/Win] Fix a CHECK failure when an exception is thrown from a callback ↵Timur Iskhodzhanov2015-03-171-40/+30
| | | | | | | | passed to BindIoCompletionCallback This also simplifies how we handle QueueUserWorkItem llvm-svn: 232499
* [ASan] NFC: Factor out platform-specific interceptorsTimur Iskhodzhanov2015-03-161-3/+113
| | | | | | Reviewed at http://reviews.llvm.org/D8321 llvm-svn: 232377
* asan: fix windows build after commit 230978Dmitry Vyukov2015-03-021-17/+0
| | | | llvm-svn: 230980
* Reland r230419 - add __asan_default_suppressions() hook with a fix for WindowsTimur Iskhodzhanov2015-02-251-0/+2
| | | | llvm-svn: 230501
* Revert 230419, 230425, 230432.Nico Weber2015-02-251-1/+0
| | | | | | | They don't build on Windows. http://lab.llvm.org:8011/builders/sanitizer-windows/ went red for example. llvm-svn: 230461
* [asan] one more attempt to fix windows buildKostya Serebryany2015-02-251-0/+1
| | | | llvm-svn: 230432
* [ASan/Win] Add support for sanitizer allocator hooks, __asan_default_options ↵Timur Iskhodzhanov2015-02-241-5/+18
| | | | | | and __asan_on_error llvm-svn: 230344
* Fix ASan's Noinst unit testsKuba Brecka2015-02-101-0/+4
| | | | | | | | We currently skip all "Noinst" unit tests on OS X, which was probably caused when we removed the "allow_reexec" flag. The MaybeReexec function fails to re-execute when the runtime is linked statically, because there is no dylib to use. This patch adds an explicit DisableReexec function that is used from asan_noinst_test.cc and the runtime then doesn't try to re-execute. Reviewed at http://reviews.llvm.org/D7493 llvm-svn: 228740
* [Asan] Pack signal context into a structureViktor Kutuzov2014-11-251-7/+18
| | | | | | Differential Revision: http://reviews.llvm.org/D6148 llvm-svn: 222756
* [ASan/Win] Fix PR20918 -- SEH handler doesn't work with the MD runtimeTimur Iskhodzhanov2014-09-121-7/+30
| | | | llvm-svn: 217679
* [ASan/Win] Land the trivial bits of -MD RTL support (PR20214)Timur Iskhodzhanov2014-08-221-1/+1
| | | | llvm-svn: 216265
* [ASan/Win] Catch NULL derefs and page faultsTimur Iskhodzhanov2014-07-111-0/+39
| | | | | | Reviewed at http://reviews.llvm.org/D4471 llvm-svn: 212807
* [ASan] Optional support for dynamic ASan runtime on Linux.Alexey Samsonov2014-04-011-0/+4
| | | | | | Based on http://llvm-reviews.chandlerc.com/D3042 by Yuri Gribov! llvm-svn: 205308
* [ASan] Implement __sanitizer::InstallDeadlySignalHandlers() and ↵Alexander Potapenko2014-01-311-0/+4
| | | | | | __asan::AsanOnSIGSEGV() on Windows. llvm-svn: 200554
* [ASan] Move the SIGSEGV/SIGBUS handling to sanitizer_commonAlexander Potapenko2014-01-311-4/+0
| | | | | | | This change is a part of refactoring intended to have common signal handling behavior in all tools. This particular CL moves InstallSignalHandlers() into sanitizer_common (making it InstallDeadlySignalHandlers()), but doesn't enable default signal handlers for any tool other than ASan. llvm-svn: 200542
* [ASan] Move the sigaltstack() bits to sanitizer_common.Alexander Potapenko2014-01-281-8/+0
| | | | | | | This change is a part of refactoring intended to have common signal handling behavior in all tools. Note that this particular change doesn't enable use_sigaltstack support in every tool. llvm-svn: 200310
* [Sanitizer] Implement Symbolizer class on WindowsTimur Iskhodzhanov2013-12-181-53/+0
| | | | llvm-svn: 197571
* [asan] Improve thread lifetime tracking on POSIX systems.Sergey Matveev2013-10-141-0/+3
| | | | | | | | Call AsanThread::Destroy() from a late-running TSD destructor. Previously we called it before any user-registered TSD destructors, which caused false positives in LeakSanitizer. llvm-svn: 192585
* [ASan] Fix a compile-time warningTimur Iskhodzhanov2013-09-231-1/+1
| | | | llvm-svn: 191189
* [ASan] Add DLL thunks for the new stack UAR interfaceTimur Iskhodzhanov2013-09-231-0/+8
| | | | llvm-svn: 191188
* [sanitizer] Move GetStackTrace from ASan to sanitizer_common.Sergey Matveev2013-05-081-24/+0
| | | | llvm-svn: 181424
* [sanitizer] More renamed macros.Evgeniy Stepanov2013-03-191-1/+1
| | | | llvm-svn: 177401
* [sanitizer] Replace more platform checks with SANITIZER_ constants.Evgeniy Stepanov2013-03-191-0/+2
| | | | llvm-svn: 177400
* [ASan] minor changes to swapcontext handling: don't clear shadow memory if ↵Alexey Samsonov2013-01-171-1/+1
| | | | | | context stack is too large llvm-svn: 172727
* asan/tsan: move blocking mutex from asan to sanitizer_commonDmitry Vyukov2013-01-141-40/+3
| | | | llvm-svn: 172380
* asan: fix FIXME on windowsDmitry Vyukov2013-01-111-2/+1
| | | | llvm-svn: 172226
* [asan] fix win buildKostya Serebryany2012-12-131-1/+2
| | | | llvm-svn: 170119
* [ASan] Add interceptor for swapcontext to fight with false positives in some ↵Alexey Samsonov2012-11-231-0/+4
| | | | | | of its use cases. llvm-svn: 168508
* [ASan] Add extern C for __asan_symbolize on WindowsAlexey Samsonov2012-10-021-1/+3
| | | | llvm-svn: 165003
* [Sanitizer/ASan] Simplify the code that prints and symbolizes stack traces. ↵Alexey Samsonov2012-10-021-41/+46
| | | | | | Fall back to module+offset if user-provided symbolizer failed. Use weak function __asan_symbolize instead of __asan_set_symbolize_callback in ASan interface, so that we're able to symbolize reports for errors that happen before the main() is called, for example, during module initialization. llvm-svn: 165000
* [asan] fix Windows buildKostya Serebryany2012-08-281-7/+7
| | | | llvm-svn: 162758
* [asan] some renaming before we move StackTrace into sanitizer_commonKostya Serebryany2012-08-281-1/+1
| | | | llvm-svn: 162747
* If the program is linked to a dynamic ASan runtime which is not present in ↵Alexander Potapenko2012-08-241-0/+4
| | | | | | | | | DYLD_INSERT_LIBRARIES (which, in turn, is required for our interceptors to take effect), re-exec the program with DYLD_INSERT_LIBRARIES set. llvm-svn: 162547
* [ASan] get rid of ASAN_USE_EXTERNAL_SYMBOLIZER compiler def in favor of ↵Alexey Samsonov2012-08-221-1/+1
| | | | | | __asan_set_symbolize_callback interface function. Now the user doesn't have to recompile ASan runtime to provide its own symbolizer llvm-svn: 162358
* Intercept CFAllocator for each thread in the program.Alexander Potapenko2012-07-231-0/+4
| | | | | | | Test that child threads use the ASan allocator, that allocated memory can be passed to another thread and deallocated on it. This should fix http://code.google.com/p/address-sanitizer/issues/detail?id=81 llvm-svn: 160630
* [Sanitizer] Renaming: SNPrintf -> internal_snprintf (and move it to ↵Alexey Samsonov2012-06-191-2/+3
| | | | | | sanitizer libc) llvm-svn: 158710
OpenPOWER on IntegriCloud