Evgeniy Stepanov
f485c3ccbd
[asan] Add a negative test for memcpy of long double.
...
llvm-svn: 151888
2012-03-02 10:42:10 +00:00
Alexander Potapenko
8e9d772c5a
Force __asan_set_death_callback into the resulting binary.
...
llvm-svn: 151808
2012-03-01 14:39:21 +00:00
Timur Iskhodzhanov
972720e564
[ASan] Replace CRT .dll malloc with our implementation at asan_init() time
...
llvm-svn: 151715
2012-02-29 11:43:03 +00:00
Alexander Potapenko
7e07f56811
Introduce __asan_set_error_report_callback() to allow the client program post-process the error reports.
...
If the callback is set, Report() and Printf() print the reports into a buffer (together with stderr), which is then passed to the client.
llvm-svn: 151528
2012-02-27 14:06:48 +00:00
Evgeniy Stepanov
d84e16e6a3
Replace some #ifdef(s) with plain if(s).
...
llvm-svn: 151526
2012-02-27 13:07:29 +00:00
Alexey Samsonov
a1a3a2ffc3
AddressSanitizer: add some checks to AsanChunkFifoList::PushList
...
llvm-svn: 151521
2012-02-27 09:06:10 +00:00
Kostya Serebryany
6ad2115575
[asan] don't compile gtest with asan when building asan tests
...
llvm-svn: 151391
2012-02-24 20:49:36 +00:00
Timur Iskhodzhanov
0f9c9a5332
[ASan] Intercept CreateThread on Windows
...
llvm-svn: 151366
2012-02-24 15:28:43 +00:00
Alexey Samsonov
53e191e77e
AddressSanitizer: quick fix - undef INT32_MIN etc to avoid macro redefinition
...
llvm-svn: 151165
2012-02-22 16:12:46 +00:00
Alexey Samsonov
d6651509d0
AddressSanitizer: get rid of stdlib.h and add (smaller) stddef.h instead
...
llvm-svn: 151162
2012-02-22 14:07:06 +00:00
Timur Iskhodzhanov
36d297d27f
[ASan] Intercept functions on Windows - first version
...
llvm-svn: 151161
2012-02-22 13:59:49 +00:00
Alexey Samsonov
a5b3130e86
AddressSanitizer: get rid of limits.h, use constants for fixed size integral types instead.
...
llvm-svn: 151159
2012-02-22 12:54:04 +00:00
Evgeniy Stepanov
abaf196be3
[asan] Remove mentions of pthread*_t from interceptors.
...
Some platforms do not define pthread_t in stdlib.h.
llvm-svn: 151158
2012-02-22 12:31:25 +00:00
Alexey Samsonov
2df8afa075
AddressSanitizer: fix Makefile.old - gtest should depend on libasan
...
llvm-svn: 151157
2012-02-22 11:59:44 +00:00
Timur Iskhodzhanov
94602b48ee
[ASan] Fix style + suppress 'long' lint warnings
...
llvm-svn: 151149
2012-02-22 09:28:14 +00:00
Alexander Potapenko
2c0ed61c7a
Move the contents of AsanProcMaps::Dump() into AsanDumpProcessMaps() for Posix systems.
...
Define AsanDumpProcessMaps as unimplemented on Windows.
This should fix the Windows build.
llvm-svn: 151147
2012-02-22 09:11:55 +00:00
Timur Iskhodzhanov
3a32ed913b
[ASan] Fix a wrong filename mentioned in a comment
...
llvm-svn: 151145
2012-02-22 08:56:25 +00:00
Alexander Potapenko
c259ab3cac
Dump the process memory map if any of the mappings interleaves with the shadow.
...
llvm-svn: 151141
2012-02-22 08:27:32 +00:00
Alexander Potapenko
fce2ca9f66
Add AsanProcMaps::Dump()
...
llvm-svn: 151139
2012-02-22 08:13:47 +00:00
Timur Iskhodzhanov
a1c987ff38
[ASan] Add __asan_init to the list of C dynamic initializers to support /MD on Windows
...
llvm-svn: 151059
2012-02-21 16:24:23 +00:00
Alexander Potapenko
47038cae29
Fix the lib32 and lib64 targets.
...
llvm-svn: 151057
2012-02-21 14:11:52 +00:00
Timur Iskhodzhanov
f2061453bd
[ASan] Remove one FIXME - re-enable "free-not-malloced" reports on Windows
...
llvm-svn: 151051
2012-02-21 09:58:39 +00:00
Alexander Potapenko
0be25d562c
Check that the FakeStack size is non-zero before looking into it.
...
Sometimes DescribeStackAddress is called before another thread's FakeStack is initialized, which could previously cause a check to fire.
llvm-svn: 151046
2012-02-21 08:45:41 +00:00
Alexey Samsonov
789456bf68
AddressSanitizer: Don't include GrandCentralDispatch headers in asan headers on Mac
...
llvm-svn: 151044
2012-02-21 08:30:57 +00:00
Alexey Samsonov
2d2f1711b7
AddressSanitizer: don't use /tmp for temporary file in output tests.
...
llvm-svn: 151042
2012-02-21 07:08:38 +00:00
Alexey Samsonov
0d0b406aba
AddressSanitizer: use custom strtol/atoll functions
...
llvm-svn: 150812
2012-02-17 16:15:09 +00:00
Alexey Samsonov
8e7bfceb98
AddressSanitizer: fix lint
...
llvm-svn: 150802
2012-02-17 08:31:10 +00:00
Alexey Samsonov
fbb50f19ad
AddressSanitizer: revert r150683 - we can't get rid of headers that easily
...
llvm-svn: 150699
2012-02-16 17:00:45 +00:00
Evgeniy Stepanov
5d47e9164c
[asan] Allocator tweaks for low memory systems.
...
llvm-svn: 150689
2012-02-16 13:35:11 +00:00
Alexey Samsonov
ca37969c24
AddressSanitizer: don't include pthread.h and signal.h in interceptors on Mac
...
llvm-svn: 150683
2012-02-16 11:26:52 +00:00
Kostya Serebryany
10dbd68bd2
[asan] don't do AsanDie twice
...
llvm-svn: 150641
2012-02-16 00:40:18 +00:00
Alexey Samsonov
1e7e2370aa
AddressSanitizer: don't include pthread.h in asan_interceptors.cc on Linux
...
llvm-svn: 150573
2012-02-15 09:14:26 +00:00
Alexey Samsonov
278c25f241
AddressSanitizer: simplify IntervalsAreSeparate function
...
llvm-svn: 150569
2012-02-15 08:27:34 +00:00
Timur Iskhodzhanov
d2a9075de0
[ASan] Define an internal implementation of strchr to make stack OOB tests pass on Windows
...
llvm-svn: 150499
2012-02-14 19:33:04 +00:00
Evgeniy Stepanov
2ee5950dd0
[asan] Add lots of missing visibility attributes.
...
llvm-svn: 150479
2012-02-14 13:46:06 +00:00
Kostya Serebryany
fcd535ba6c
[asan] implement __asan_set_death_callback
...
llvm-svn: 150414
2012-02-13 21:24:29 +00:00
Alexander Potapenko
438447a7f3
Fix compilation on Mac.
...
llvm-svn: 150400
2012-02-13 17:14:31 +00:00
Alexander Potapenko
234d8c2168
Lint fix
...
llvm-svn: 150399
2012-02-13 17:11:19 +00:00
Alexander Potapenko
720aaefb8d
Move the non-trivial implementation of AsanShadowRangeIsAvailable to asan_mac.cc
...
to avoid crashes on Linux and Win.
llvm-svn: 150398
2012-02-13 17:09:40 +00:00
Alexander Potapenko
ef4521e239
Check whether the shadow memory range intersects with an existing mapping.
...
This should help to detect problems with ASLR or linker tricks early.
llvm-svn: 150391
2012-02-13 15:11:23 +00:00
Alexey Samsonov
ea308d876b
AddressSanitizer: re-enable lint for output tests
...
llvm-svn: 150386
2012-02-13 14:18:36 +00:00
Alexey Samsonov
54671b63be
AddressSanitizer: fix llvm headers in output tests
...
llvm-svn: 150385
2012-02-13 14:05:07 +00:00
Alexey Samsonov
633c8be0ae
AddressSanitizer: remove match_output.py, split expected output into OS-specific and OS-independent parts
...
llvm-svn: 150384
2012-02-13 13:59:24 +00:00
Evgeniy Stepanov
c5d845dc09
[asan] Add a missing include.
...
llvm-svn: 150382
2012-02-13 12:37:56 +00:00
Evgeniy Stepanov
450c123218
[asan] Add a missing return.
...
It is technically reachable on Android, where pthread_exit is not
marked noreturn.
llvm-svn: 150381
2012-02-13 12:36:44 +00:00
Alexey Samsonov
92a0b806a6
AddressSanitizer: Convert templates for output tests to FileCheck format and move them inside sources
...
llvm-svn: 150375
2012-02-13 12:21:58 +00:00
Evgeniy Stepanov
b25d0d2318
[asan] Return type of index() is char*.
...
This is important for Android, where we can't keep system headers
from leaking into asan_interceptors.cc.
llvm-svn: 150374
2012-02-13 12:12:32 +00:00
Evgeniy Stepanov
da7522b551
[asan] Disable signal&sigaction interceptors on Android.
...
llvm-svn: 150373
2012-02-13 12:04:36 +00:00
Evgeniy Stepanov
45fd36110b
[asan] Default visibility for __asan_handle_no_return.
...
llvm-svn: 150372
2012-02-13 11:55:24 +00:00
Evgeniy Stepanov
56ae29f92d
[asan] Fix a crash in GetCurrent() of an undead thread.
...
llvm-svn: 150371
2012-02-13 11:53:24 +00:00