- Apr 04, 2013
-
-
Kostya Serebryany authored
llvm-svn: 178758
-
Kostya Serebryany authored
[asan] fill first 4K of malloc-ed memory with garbage, implement flags max_malloc_fill_size and malloc_fill_byte llvm-svn: 178757
-
- Apr 03, 2013
-
-
Alexey Samsonov authored
llvm-svn: 178629
-
- Apr 01, 2013
-
-
Alexey Samsonov authored
llvm-svn: 178458
-
- Mar 28, 2013
-
-
Timur Iskhodzhanov authored
llvm-svn: 178290
-
Timur Iskhodzhanov authored
llvm-svn: 178266
-
Alexey Samsonov authored
[ASan] Speed-up initialization-order checking: create and use fast versions of PoisonShadow functions, store copies of __asan_global descriptors in a vector instead of list of pointers. This gives 3x speedup on both benchmarks and real binaries with lots of globals. llvm-svn: 178239
-
Alexey Samsonov authored
Fix unmatching ASan runtime flag for init-order checking exposed by r178158. Add a test for r178158. llvm-svn: 178229
-
- Mar 27, 2013
-
-
Alexey Samsonov authored
llvm-svn: 178131
-
- Mar 26, 2013
-
-
Alexey Samsonov authored
[ASan] Change the ABI of __asan_before_dynamic_init function: now it takes pointer to private string with module name. This string serves as a unique module ID in ASan runtime. compiler-rt part llvm-svn: 178014
-
Dmitry Vyukov authored
llvm-svn: 178010
-
Kostya Serebryany authored
[asan] print thread number while reporting invalid-free and double-free; add tests; also add a test for use-after-poison llvm-svn: 177993
-
- Mar 25, 2013
-
-
Alexey Samsonov authored
llvm-svn: 177868
-
Alexey Samsonov authored
llvm-svn: 177862
-
- Mar 23, 2013
-
-
Richard Smith authored
specify which symbols are exported to DSOs when the sanitizer is statically linked into a binary. llvm-svn: 177784
-
- Mar 22, 2013
-
-
Timur Iskhodzhanov authored
llvm-svn: 177746
-
Timur Iskhodzhanov authored
Band-aid fix for the Windows build caused by r177710. Long-term, atomic_compare_exchange_strong should be a template on Windows too... llvm-svn: 177745
-
Kostya Serebryany authored
Before: the function name was stored by the compiler as a constant string and the run-time was printing it. Now: the PC is stored instead and the run-time prints the full symbolized frame. This adds a couple of instructions into every function with non-empty stack frame, but also reduces the binary size because we store less strings (I saw 2% size reduction). This change bumps the asan ABI version to v3. compiler-rt part, llvm part will follow. Example of report (now): ==31711==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fffa77cf1c5 at pc 0x41feb0 bp 0x7fffa77cefb0 sp 0x7fffa77cefa8 READ of size 1 at 0x7fffa77cf1c5 thread T0 #0 0x41feaf in Frame0(int, char*, char*, char*) stack-oob-frames.cc:20 #1 0x41f7ff in Frame1(int, char*, char*) stack-oob-frames.cc:24 #2 0x41f477 in Frame2(int, char*) stack-oob-frames.cc:28 #3 0x41f194 in Frame3(int) stack-oob-frames.cc:32 #4 0x41eee0 in main stack-oob-frames.cc:38 #5 0x7f0c5566f76c (/lib/x86_64-linux-gnu/libc.so.6+0x2176c) #6 0x41eb1c (/usr/local/google/kcc/llvm_cmake/a.out+0x41eb1c) Address 0x7fffa77cf1c5 is located in stack of thread T0 at offset 293 in frame #0 0x41f87f in Frame0(int, char*, char*, char*) stack-oob-frames.cc:12 <<<<<<<<<<<<<< this is new This frame has 6 object(s): [32, 36) 'frame.addr' [96, 104) 'a.addr' [160, 168) 'b.addr' [224, 232) 'c.addr' [288, 292) 's' [352, 360) 'd' llvm-svn: 177723
-
Alexey Samsonov authored
llvm-svn: 177711
-
Alexey Samsonov authored
[ASan] Fix an error on invalid deallocation in ASan allocator. When ASan checks if memory freed by user was indeed previously allocated, it first does an atomic write to presumed location of chunk header. This is wrong, as if the free is invalid, we may overwrite some valuable data (like other fields of the chunk header). Fix this by using atomic_compare_exchange instead. llvm-svn: 177710
-
Dmitry Vyukov authored
llvm-svn: 177709
-
- Mar 21, 2013
-
-
Alexey Samsonov authored
[ASan] Switch ASan to generic ThreadRegistry from sanitizer_common. Delete ASan-specific AsanThreadRegistry. llvm-svn: 177634
-
- Mar 20, 2013
-
-
Alexey Samsonov authored
llvm-svn: 177508
-
Alexey Samsonov authored
[ASan] Move GetCurrentThread/SetCurrentThread from AsanThreadRegistry class into plain functions: they don't actually use registry llvm-svn: 177501
-
- Mar 19, 2013
-
-
Evgeniy Stepanov authored
llvm-svn: 177407
-
Evgeniy Stepanov authored
llvm-svn: 177401
-
Evgeniy Stepanov authored
llvm-svn: 177400
-
Evgeniy Stepanov authored
llvm-svn: 177397
-
- Mar 18, 2013
-
-
Kostya Serebryany authored
llvm-svn: 177270
-
Evgeniy Stepanov authored
llvm-svn: 177263
-
Kostya Serebryany authored
[asan] while generating the description of a global variable, emit the module name in a separate field, thus not duplicating this information if every description. This decreases the binary size (observed up to 3%). https://code.google.com/p/address-sanitizer/issues/detail?id=168 . This changes the asan API version. compiler-rt part, llvm-part will follow llvm-svn: 177253
-
- Mar 15, 2013
-
-
Alexey Samsonov authored
[Sanitizer] Don't intercept frexpf and frexpl on Windows. Add frexp declaration to asan_intercepted_functions.h llvm-svn: 177155
-
- Mar 14, 2013
-
-
Kostya Serebryany authored
[asan] remove one redundant malloc stress test, unify the usage of ASAN_LOW_MEMORY macro in tests, slightly reduce test memory usage (all to make 32-bit runs consume less RAM) llvm-svn: 177069
-
Alexey Samsonov authored
llvm-svn: 177064
-
Alexey Samsonov authored
[ASan] turn off checking initialization order in ASan runtime by default. Instead, it should be turned on by default in the compiler llvm-svn: 177058
-
Alexey Samsonov authored
llvm-svn: 177036
-
- Mar 13, 2013
-
-
Alexey Samsonov authored
llvm-svn: 176940
-
- Mar 12, 2013
-
-
Kostya Serebryany authored
[asan] use 4Tb of address space for the asan allocator instead of 1Tb. This increases the memory available for a single size class from 16Gb to 64Gb. The total VM footprint becomes 20Tb llvm-svn: 176857
-
- Mar 01, 2013
-
-
Evgeniy Stepanov authored
New allocator has 1.5x memory overhead of the old one. llvm-svn: 176340
-
- Feb 28, 2013
-
-
Evgeniy Stepanov authored
llvm-svn: 176264
-