2c3e0051c31c3f5b2328b447eadf1cf9c4427442 |
|
06-May-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master LLVM for rebase to r235153 Change-Id: I9bf53792f9fc30570e81a8d80d296c681d005ea7 (cherry picked from commit 0c7f116bb6950ef819323d855415b2f2b0aad987)
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
4c5e43da7792f75567b693105cc53e3f1992ad98 |
|
08-Apr-2015 |
Pirama Arumuga Nainar <pirama@google.com> |
Update aosp/master llvm for rebase to r233350 Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ebe69fe11e48d322045d5949c83283927a0d790b |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r230699. Change-Id: I2b5be30509658cb8266be782de0ab24f9099f9b9
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
37ed9c199ca639565f6ce88105f9e39e898d82d0 |
|
01-Dec-2014 |
Stephen Hines <srhines@google.com> |
Update aosp/master LLVM for rebase to r222494. Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
c6a4f5e819217e1e12c458aed8e7b122e23a3a58 |
|
21-Jul-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for rebase to r212749. Includes a cherry-pick of: r212948 - fixes a small issue with atomic calls Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
dce4a407a24b04eebc6a376f8e62b41aaa7b071f |
|
29-May-2014 |
Stephen Hines <srhines@google.com> |
Update LLVM for 3.5 rebase (r209712). Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
36b56886974eae4f9c5ebc96befd3e7bfe5de338 |
|
24-Apr-2014 |
Stephen Hines <srhines@google.com> |
Update to LLVM 3.5a. Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
64409ad8e3b360b84349042f14b57f87a5c0ca18 |
|
18-Nov-2013 |
Alexey Samsonov <samsonov@google.com> |
[ASan] Fix PR17867 - make sure ASan doesn't crash if use-after-scope and use-after-return are combined. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195014 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
8f15c6822251bbe7eb21732c46aa6d9f30ba8836 |
|
15-Nov-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] use GlobalValue::PrivateLinkage for coverage guard to save quite a bit of code size git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194800 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
4b8991424a8967dfdafc1768a9748f67e6c8b36f |
|
15-Nov-2013 |
Bob Wilson <bob.wilson@apple.com> |
Reapply "[asan] Poor man's coverage that works with ASan" I was able to successfully run a bootstrapped LTO build of clang with r194701, so this change does not seem to be the cause of our failing buildbots. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194789 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
2475da80edafcf3a45bddbc937e60312dba435ad |
|
15-Nov-2013 |
Bob Wilson <bob.wilson@apple.com> |
Revert "[asan] Poor man's coverage that works with ASan" This reverts commit 194701. Apple's bootstrapped LTO builds have been failing, and this change (along with compiler-rt 194702-194704) is the only thing on the blamelist. I will either reappy these changes or help debug the problem, depending on whether this fixes the buildbots. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194780 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
8cc5f7cd59c69250ab3b6a68e38405dcdb6a4b25 |
|
14-Nov-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] Poor man's coverage that works with ASan git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3386d252579ea00d0fc26a3ba7874bec25ce4516 |
|
16-Oct-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] Optimize accesses to global arrays with constant index Summary: Given a global array G[N], which is declared in this CU and has static initializer avoid instrumenting accesses like G[i], where 'i' is a constant and 0<=i<N. Also add a bit of stats. This eliminates ~1% of instrumentations on SPEC2006 and also partially helps when asan is being run together with coverage. Reviewers: samsonov Reviewed By: samsonov CC: llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1947 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192794 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
8819c84aed10777ba91d4e862229882b8da0b272 |
|
01-Oct-2013 |
Rafael Espindola <rafael.espindola@gmail.com> |
Remove several unused variables. Patch by Alp Toker. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ac04abaf5a1df4c4bf48367cfbb41600289c4d78 |
|
18-Sep-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] call __asan_stack_malloc_N only if use-after-return detection is enabled with the run-time option git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190939 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
0b956507cab3dc4b06b310d2674bb35c79f46dc0 |
|
18-Sep-2013 |
David Blaikie <dblaikie@gmail.com> |
ifndef NDEBUG-out an asserts-only constant committed in r190863 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190905 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
671c3ba921d5b8271307a8caa5e29f512d2e8e82 |
|
17-Sep-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] inline the calls to __asan_stack_free_* with small sizes. Yet another 10%-20% speedup for use-after-return git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
f3d4b35f24f4e54b2cb99e06f47a958e5557d01e |
|
10-Sep-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] refactor the use-after-return API so that the size class is computed at compile time instead of at run-time. llvm part git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190407 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
e39e1316f034e9932cb8da535541a3e35a0e490a |
|
12-Aug-2013 |
Alexey Samsonov <samsonov@google.com> |
Add SpecialCaseList::createOrDie() factory and use it in sanitizer passes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188169 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
4c71064129d1e5def34d74ee47c4f3beaa0a66df |
|
09-Aug-2013 |
Jakub Staszak <kubastaszak@gmail.com> |
Mark obviously const methods. Also use reference for parameters when possible. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188103 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
55a1a590bf0cadf88dfbef2aab6948ffec35c1c3 |
|
07-Aug-2013 |
Bill Wendling <isanbard@gmail.com> |
Change the linkage of these global values to 'internal'. The globals being generated here were given the 'private' linkage type. However, this caused them to end up in different sections with the wrong prefix. E.g., they would be in the __TEXT,__const section with an 'L' prefix instead of an 'l' (lowercase ell) prefix. The problem is that the linker will eat a literal label with 'L'. If a weak symbol is then placed into the __TEXT,__const section near that literal, then it cannot distinguish between the literal and the weak symbol. Part of the problems here was introduced because the address sanitizer converted some C strings into constant initializers with trailing nuls. (Thus putting them in the __const section with the wrong prefix.) The others were variables that the address sanitizer created but simply had the wrong linkage type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187827 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
48d7d1d231cde758599fa0a010c29a174907c12f |
|
05-Aug-2013 |
Alexey Samsonov <samsonov@google.com> |
80-cols git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187725 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
f38cc38fa647d4e72c053c39bbe0cdec1342535f |
|
26-Jul-2013 |
Bill Schmidt <wschmidt@linux.vnet.ibm.com> |
[PowerPC] Support powerpc64le as a syntax-checking target. This patch provides basic support for powerpc64le as an LLVM target. However, use of this target will not actually generate little-endian code. Instead, use of the target will cause the correct little-endian built-in defines to be generated, so that code that tests for __LITTLE_ENDIAN__, for example, will be correctly parsed for syntax-only testing. Code generation will otherwise be the same as powerpc64 (big-endian), for now. The patch leaves open the possibility of creating a little-endian PowerPC64 back end, but there is no immediate intent to create such a thing. The LLVM portions of this patch simply add ppc64le coverage everywhere that ppc64 coverage currently exists. There is nothing of any import worth testing until such time as little-endian code generation is implemented. In the corresponding Clang patch, there is a new test case variant to ensure that correct built-in defines for little-endian code are generated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187179 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
4172a8abbabea2359d91bb07101166565127d798 |
|
16-Jul-2013 |
Craig Topper <craig.topper@gmail.com> |
Add 'const' qualifiers to static const char* variables. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186371 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
46e11c4c97fe1c424241e4098801456303a5c86e |
|
10-Jul-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Implement categories for special case lists. A special case list can now specify categories for specific globals, which can be used to instruct an instrumentation pass to treat certain functions or global variables in a specific way, such as by omitting certain aspects of instrumentation while keeping others, or informing the instrumentation pass that a specific uninstrumentable function has certain semantics, thus allowing the pass to instrument callers according to those semantics. For example, AddressSanitizer now uses the "init" category instead of global-init prefixes for globals whose initializers should not be instrumented, but which in all other respects should be instrumented. The motivating use case is DataFlowSanitizer, which will have a number of different categories for uninstrumentable functions, such as "functional" which specifies that a function has pure functional semantics, or "discard" which indicates that a function's return value should not be labelled. Differential Revision: http://llvm-reviews.chandlerc.com/D1092 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
405515d55f470d04ef75f653b7f1994329c9066b |
|
10-Jul-2013 |
Peter Collingbourne <peter@pcc.me.uk> |
Rename BlackList class to SpecialCaseList and move it to Transforms/Utils. Differential Revision: http://llvm-reviews.chandlerc.com/D1089 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185975 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
d4429214a2dffcfd8f97956ac8b1a67c4795d242 |
|
26-Jun-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] workaround for PR16277: don't instrument AllocaInstr with alignment more than the redzone size git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184928 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
20985711c76b8799d689a9c0e416b68896333c23 |
|
26-Jun-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] add option -asan-keep-uninstrumented-functions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184927 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3e1d45bf44f882f3ee139d452dd50305d831a341 |
|
03-Jun-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] ASan Linux MIPS32 support (llvm part), patch by Jyun-Yan Y git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183104 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
c6af2432c802d241c8fffbe0371c023e6c58844e |
|
25-May-2013 |
Michael J. Spencer <bigcheesegs@gmail.com> |
Replace Count{Leading,Trailing}Zeros_{32,64} with count{Leading,Trailing}Zeros. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182680 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
d02c8f4066ddf35f606582d914ee17834cb14e15 |
|
20-May-2013 |
Bill Wendling <isanbard@gmail.com> |
Remove unused #include. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@182315 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ca825ea24de2f3d819845ee01796dc6c7a45170d |
|
26-Mar-2013 |
Alexey Samsonov <samsonov@google.com> |
[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. LLVM part git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3016056769639878b4f152838f0cf16d2e482339 |
|
22-Mar-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] Change the way we report the alloca frame on stack-buff-overflow. 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. llvm part. 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' git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177724 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
5111627ac1b0ae8a5a9d4dc1be8b22939ba850d0 |
|
18-Mar-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] when creating string constants, set unnamed_attr and align 1 so that equal strings are merged by the linker. Observed up to 1% binary size reduction. Thanks to Anton Korobeynikov for the suggestion git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177264 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
086a472dbed9911f83add781e020cb49c89829d0 |
|
18-Mar-2013 |
Kostya Serebryany <kcc@google.com> |
[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. llvm-part git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177254 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3797adb94fdc6b747cb0e97a64b15b931f2533b8 |
|
18-Mar-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] don't instrument functions with available_externally linkage. This saves a bit of compile time and reduces the number of redundant global strings generated by asan (https://code.google.com/p/address-sanitizer/issues/detail?id=167) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177250 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
b4ba5e68e1ac00bfb93572a1f271673deefd7ea9 |
|
14-Mar-2013 |
Alexey Samsonov <samsonov@google.com> |
[ASan] emit instrumentation for initialization order checking by default git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177063 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
8eec41fc778e99d42172a7f6de76faa43a6d8847 |
|
26-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
Unify clang/llvm attributes for asan/tsan/msan (LLVM part) These are two related changes (one in llvm, one in clang). LLVM: - rename address_safety => sanitize_address (the enum value is the same, so we preserve binary compatibility with old bitcode) - rename thread_safety => sanitize_thread - rename no_uninitialized_checks -> sanitize_memory CLANG: - add __attribute__((no_sanitize_address)) as a synonym for __attribute__((no_address_safety_analysis)) - add __attribute__((no_sanitize_thread)) - add __attribute__((no_sanitize_memory)) for S in address thread memory If -fsanitize=S is present and __attribute__((no_sanitize_S)) is not set llvm attribute sanitize_S git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176075 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
1479c9bb392325688b72e5829bbb7939c4a079a4 |
|
20-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] instrument invoke insns with noreturn attribute (as well as call insns) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175617 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
6ecccdbb2bf24a011b9c8ecbdd39be5a02269670 |
|
19-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] instrument memory accesses with unusual sizes This patch makes asan instrument memory accesses with unusual sizes (e.g. 5 bytes or 10 bytes), e.g. long double or packed structures. Instrumentation is done with two 1-byte checks (first and last bytes) and if the error is found __asan_report_load_n(addr, real_size) or __asan_report_store_n(addr, real_size) is called. Also, call these two new functions in memset/memcpy instrumentation. asan-rt part will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175507 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
605ff6655b31033dde21e61416751847bd0ee201 |
|
18-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] revert r175266 as it breaks code with packed structures. supporting long double will require a more general solution git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175442 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
74ecd214e267c9b24d824a6403d2f89aff1a7697 |
|
15-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] support long double on 64-bit. See https://code.google.com/p/address-sanitizer/issues/detail?id=151 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175266 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
39f02940ba085af79011f7e9095bf9902cd0fa6f |
|
13-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] fix confusing indentation git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
c8a196ae8fad3cba7a777e2e7916fd36ebf70fe6 |
|
12-Feb-2013 |
Alexander Potapenko <glider@google.com> |
[ASan] Do not use kDefaultShort64bitShadowOffset on Mac, where the binaries may get mapped at 0x100000000+ and thus may interleave with the shadow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174964 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
0bc55d517e8e64f0f441736fba2447781c405ef4 |
|
12-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] change the default mapping offset on x86_64 to 0x7fff8000. This gives roughly 5% speedup. Since this is an ABI change, bump the asan ABI version by renaming __asan_init to __asan_init_v1. llvm part, compiler-rt part will follow git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174957 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
117de489a0d5f4ff280fb173fe45bd5ce8514d93 |
|
11-Feb-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] added a flag -mllvm asan-short-64bit-mapping-offset=1 (0 by default) This flag makes asan use a small (<2G) offset for 64-bit asan shadow mapping. On x86_64 this saves us a register, thus achieving ~2/3 of the zero-base-offset's benefits in both performance and code size. Thanks Jakub Jelinek for the idea. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174886 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
29f975f8ffda1f5d78cbf2530c2316abef11aa70 |
|
24-Jan-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] fix 32-bit builds git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173338 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
63f0846f1eb43332a08811d332b813276b727eb6 |
|
24-Jan-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] adaptive redzones for globals (the larger the global the larger is the redzone) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173335 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
48a615fee78c3c262c60147a65dc6fff5fd6bb3b |
|
23-Jan-2013 |
Kostya Serebryany <kcc@google.com> |
[asan] use ADD instead of OR when applying shadow offset of PowerPC. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55975 for details git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173258 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
90230c84668269fbd53d163e398cd16486d5d414 |
|
19-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Sort all of the includes. Several files got checked in with mis-sorted includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ae36eccdfbad53a1e76ca263b7540b84d50d3524 |
|
18-Jan-2013 |
Will Dietz <wdietz2@illinois.edu> |
Move Blacklist.h to include/ to enable use from clang. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172806 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
11af9a873f9e1409a422ab31e22729368805afaf |
|
17-Jan-2013 |
Alexey Samsonov <samsonov@google.com> |
ASan: add optional 'zero-based shadow' option to ASan passes. Always tell the values of shadow scale and offset to the runtime git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172709 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
19cd7e9ce28ed7f3326ebcd386eec215ab3763f9 |
|
16-Jan-2013 |
Alexey Samsonov <samsonov@google.com> |
ASan: wrap mapping scale and offset in a struct and make it a member of ASan passes. Add test for non-default mapping scale and offset. No functionality change git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@172610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
0b8c9a80f20772c3793201ab5b251d3520b9cea3 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Move all of the header files which are involved in modelling the LLVM IR into their new header subdirectory: include/llvm/IR. This matches the directory structure of lib, and begins to correct a long standing point of file layout clutter in LLVM. There are still more header files to move here, but I wanted to handle them in separate commits to make tracking what files make sense at each layer easier. The only really questionable files here are the target intrinsic tablegen files. But that's a battle I'd rather not fight today. I've updated both CMake and Makefile build systems (I think, and my tests think, but I may have missed something). I've also re-sorted the includes throughout the project. I'll be committing updates to Clang, DragonEgg, and Polly momentarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
58a2cbef4aac9ee7d530dfb690c78d6fc11a2371 |
|
02-Jan-2013 |
Chandler Carruth <chandlerc@gmail.com> |
Resort the #include lines in include/... and lib/... with the utils/sort_includes.py script. Most of these are updating the new R600 target and fixing up a few regressions that have creeped in since the last time I sorted the includes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171362 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
831737d329a727f53a1fb0572f7b7a8127208881 |
|
30-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove the Function::getFnAttributes method in favor of using the AttributeSet directly. This is in preparation for removing the use of the 'Attribute' class as a collection of attributes. That will shift to the AttributeSet class instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
1c8b825c4396ad9cd38f713d9e9a51adae1d4c4e |
|
27-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
[ASan] Fix lifetime intrinsics handling. Now for each intrinsic we check if it describes one of 'interesting' allocas. Assume that allocas can go through casts and phi-nodes before apperaring as llvm.lifetime arguments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
4684858624d7ffe82379783e9b678227d5e0b515 |
|
25-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
ASan: initialize callbacks from ASan module pass in a separate function for consistency git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171061 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
59cca13a80ed78ccbcdaa9bf20381bd48243f2f1 |
|
25-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
ASan: move stack poisoning logic into FunctionStackPoisoner struct git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171060 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
034b94b17006f51722886b0f2283fb6fb19aca1f |
|
19-Dec-2012 |
Bill Wendling <isanbard@gmail.com> |
Rename the 'Attributes' class to 'Attribute'. It's going to represent a single attribute in the future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170502 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
1afbb517965e29b07cb42e2335d5eadd87de6535 |
|
12-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
Improve debug info generated with enabled AddressSanitizer. When ASan replaces <alloca instruction> with <offset into a common large alloca>, it should also patch llvm.dbg.declare calls and replace debug info descriptors to mark that we've replaced alloca with a value that stores an address of the user variable, not the user variable itself. See PR11818 for more context. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
6c55412ea4b39103a3a5764d49ddfdf50e066d56 |
|
04-Dec-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] add experimental -asan-realign-stack option (true by default, which does not change the current behavior) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169216 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
f985f44b13681071e585acb7a5703a2c1c23b6ce |
|
04-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
ASan: add initial support for handling llvm.lifetime intrinsics in ASan - emit calls into runtime library that poison memory for local variables when their lifetime is over and unpoison memory when their lifetime begins. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169200 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
b0dcf61252e58715a3bea79f4c112572df361c30 |
|
03-Dec-2012 |
Alexey Samsonov <samsonov@google.com> |
ASan: add blacklist file to ASan pass options. Clang patch for this will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169143 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
d04a8d4b33ff316ca4cf961e06c9e312eff8e64f |
|
03-Dec-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Use the new script to sort the includes of every file under lib. Sooooo many of these had incorrect or strange main module includes. I have manually inspected all of these, and fixed the main module include to be the nearest plausible thing I could find. If you own or care about any of these source files, I encourage you to take some time and check that these edits were sensible. I can't have broken anything (I strictly added headers, and reordered them, never removed), but they may not be the headers you'd really like to identify as containing the API being implemented. Many forward declarations and missing includes were added to a header files to allow them to parse cleanly when included first. The main module rule does in fact have its merits. =] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
a17babb021aa9dc3441ecce1ac8a62d2b27edecb |
|
30-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] simplify the code around doesNotReturn call. It now magically works. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168995 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
d6f62c8da5aa4f3388cec1542309ffa623cac601 |
|
29-Nov-2012 |
Alexey Samsonov <samsonov@google.com> |
[ASan] Simplify check added in r168861. Bail out from module pass early if the module is blacklisted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ee548275c63a1eeffda9d3edd2bea04e1dadcc67 |
|
29-Nov-2012 |
Alexey Samsonov <samsonov@google.com> |
Add options to AddressSanitizer passes to make them configurable by frontend. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168910 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
8b390ffbfdd52a23a45a21de99aa1c31f3ce623f |
|
29-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan/tsan] initialize the asan/tsan callbacks in runOnFunction as opposed to doInitialization. This is required to allow the upcoming changes in PassManager behavior git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
5085eb80abe29320fa8922c10b36249f5163f45d |
|
29-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] when checking the noreturn attribute on the call, also check it on the callee git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168861 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
1416edc30adbd53b2be863f7f3de56de4a4c9d0a |
|
28-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] Split AddressSanitizer into two passes (FunctionPass, ModulePass), LLVM part. This requires a clang part which will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168781 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
d59c07255e2dc8471a0049d6c8466cd0eba13cb9 |
|
22-Nov-2012 |
NAKAMURA Takumi <geek4civic@gmail.com> |
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp: Prune AddressSanitizerCreateGlobalRedzonesPass::ID. [-Wunused-variable] git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168499 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
b9a12ea0fd92bfdb4c6eb5af333648a618f68686 |
|
22-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] rip off the creation of global redzones from the main AddressSanitizer class into a separate class. The intent is to make it a separate ModulePass in the following commmits git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168484 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
51c7c65e32f76ec5a50cdecfe2b4c287c57da127 |
|
20-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] use names of globals instead of an external set to distinguish the globals generated by asan git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
407790604b8f71f7172bbdfb76c27e1799d241c2 |
|
20-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] don't instrument linker-initialized globals even with external linkage in -asan-initialization-order mode git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168367 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ca23d43084c45a7d6f4371d62f45be044650ce38 |
|
20-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] make sure that linker-initialized globals (non-extern) are not instrumented even in -asan-initialization-order mode. This time with a test git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
7846c1c851a53a8280f9d8ed57cd98d82c742551 |
|
07-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] fix bug 14277 (asan needs to fail with fata error if an __asan interface function is being redefined. Before this fix asan asserts) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167529 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
9ce84c1c95c0153a2f33e188ce0db00770425f9e |
|
02-Nov-2012 |
Alexey Samsonov <samsonov@google.com> |
Fix whitespaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167295 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
a5f54f14435d881b10d8eb65e19fa42af95757e9 |
|
01-Nov-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] don't instrument globals that we've created ourselves (reduces the binary size a bit) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167230 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
426c2bf5cdd2173e4a33aea8cb92cf684a724f4b |
|
01-Nov-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert the majority of the next patch in the address space series: r165941: Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address space basis. Despite this commit log, this change primarily changed stuff outside of VMCore, and those changes do not carry any tests for correctness (or even plausibility), and we have consistently found questionable or flat out incorrect cases in these changes. Most of them are probably correct, but we need to devise a system that makes it more clear when we have handled the address space concerns correctly, and ideally each pass that gets updated would receive an accompanying test case that exercises that pass specificaly w.r.t. alternate address spaces. However, from this commit, I have retained the new C API entry points. Those were an orthogonal change that probably should have been split apart, but they seem entirely good. In several places the changes were very obvious cleanups with no actual multiple address space code added; these I have not reverted when I spotted them. In a few other places there were merge conflicts due to a cleaner solution being implemented later, often not using address spaces at all. In those cases, I've preserved the new code which isn't address space dependent. This is part of my ongoing effort to clean out the partial address space code which carries high risk and low test coverage, and not likely to be finished before the 3.2 release looms closer. Duncan and I would both like to see the above issues addressed before we return to these changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167222 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
4a2dec05cef5882b745dd248d79e42a42cdbc87b |
|
19-Oct-2012 |
Evgeniy Stepanov <eugeni.stepanov@gmail.com> |
Move SplitBlockAndInsertIfThen to BasicBlockUtils. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
bd0052a0f26f04b8fcf59e8f645e5e33751e1f6e |
|
19-Oct-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] make sure asan erases old unused allocas after it created a new one. This became important after the recent move from ModulePass to FunctionPass because no cleanup is happening after asan pass any more. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166267 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
324d96b9e265b0fd8bf63a28340910def64e2164 |
|
17-Oct-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] better debug diagnostics in asan compiler module git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
2c39b15073db81d93bb629303915b7d7e5d088dc |
|
15-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Resubmit the changes to llvm core to update the functions to support different pointer sizes on a per address space basis. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165941 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ee4edeccabe1854ee895f52d4ac5588bd5f40c80 |
|
15-Oct-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] make AddressSanitizer to be a FunctionPass instead of ModulePass. This will simplify chaining other FunctionPasses with asan. Also some minor cleanup git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165936 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
fb384d61c78b60787ed65475d8403aee65023962 |
|
11-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Revert 165732 for further review. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
f3840d2c16a4ec4c879a8ded402835746de380f8 |
|
11-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Add in the first iteration of support for llvm/clang/lldb to allow variable per address space pointer sizes to be optimized correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165726 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
6765834754cbb3cb0f15b4b15e98c5e73fa50066 |
|
09-Oct-2012 |
Bill Wendling <isanbard@gmail.com> |
Create enums for the different attributes. We use the enums to query whether an Attributes object has that attribute. The opaque layer is responsible for knowing where that specific attribute is stored. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165488 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3574eca1b02600bac4e625297f4ecf745f4c4f32 |
|
08-Oct-2012 |
Micah Villmow <villmow@gmail.com> |
Move TargetData to DataLayout. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165402 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
2c189061184925c6a8ecbb5a19e648b230a41c0e |
|
26-Sep-2012 |
Bill Wendling <isanbard@gmail.com> |
Remove the `hasFnAttr' method from Function. The hasFnAttr method has been replaced by querying the Attributes explicitly. No intended functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164725 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3780ad8b998d93d7db406919c06137cdb786ef05 |
|
17-Sep-2012 |
Axel Naumann <Axel.Naumann@cern.ch> |
Fix a few vars that can end up being used without initialization. The cases where no initialization happens should still be checked for logic flaws. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164032 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
7dadac65d375ff21b7a36bfb7642578d2f467525 |
|
05-Sep-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] fix lint git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
59a4a47a7bea7cc17877c6a3954ad9f8309ff1cb |
|
05-Sep-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] extend the blacklist functionality to handle global-init. Patch by Reid Watson git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163199 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
43bf70986bb13c812e87ca959dd8f2dd9edf802c |
|
02-Sep-2012 |
Logan Chien <tzuhsiang.chien@gmail.com> |
Rename ANDROIDEABI to Android. Most of the code guarded with ANDROIDEABI are not ARM-specific, and having no relation with arm-eabi. Thus, it will be more natural to call this environment "Android" instead of "ANDROIDEABI". Note: We are not using ANDROID because several projects are using "-DANDROID" as the conditional compilation flag. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163087 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
b5b86d263a651566cb25c0f406f75ceffb771029 |
|
24-Aug-2012 |
Kostya Serebryany <kcc@google.com> |
[asan/tsan] rename FunctionBlackList* to BlackList* as this class is not limited to functions any more git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162566 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
9b9f87a87ac1b373c4c6a70904315bebbd01c50c |
|
21-Aug-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] add code to detect global initialization fiasco in C/C++. The sub-pass is off by default for now. Patch by Reid Watson. Note: this patch changes the interface between LLVM and compiler-rt parts of asan. The corresponding patch to compiler-rt will follow. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162268 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
6e2d506dc962873a0e05092bbb034f9a615d1084 |
|
15-Aug-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] implement --asan-always-slow-path, which is a part of the improvement to handle unaligned partially OOB accesses. See http://code.google.com/p/address-sanitizer/issues/detail?id=100 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161937 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ebd6454929f2ba3b92f61c151eccde0b8b0a8ded |
|
14-Aug-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] insert crash basic blocks inline as opposed to inserting them at the end of the function. This doesn't seem to fix or break anything, but is considered to be more friendly to downstream passes git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161870 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
11c2a47af825a0f89d75aaa97ad873ed2acef266 |
|
13-Aug-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] remove the code for --asan-merge-callbacks as it appears to be a bad idea. (partly related to Bug 13225) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@161757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
f7b08226eb44458f6f38cbeaca527028803c725a |
|
20-Jul-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] make sure that the crash callbacks do not get merged (Chandler's idea: insert an empty InlineAsm). Change the order in which the new BBs are inserted: the slow path BB is insert between old BBs, the crash BB is inserted at the end. Don't create an empty BB (introduced by recent commits). Update the test. The experimental code that does manual crash callback merge will most likely be deleted later. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
4f0c69623c10a3a49f6926fd53694ee532e06a85 |
|
17-Jul-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] more code to merge crash callbacks. Doesn't fully work yet, but allows to hold performance experiments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160361 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
2735cf4aa52e31b8d2de90f836c3ad991215e04e |
|
16-Jul-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] a bit more refactoring, addressed some of the style comments from chandlerc, partially implemented crash callback merging (under flag) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160290 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
c0ed3e548c6f688e22685de04e210c7b59ac3433 |
|
16-Jul-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] refactor instrumentation to allow merging the crash callbacks (not fully implemented yet, no functionality change except the BB order) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
9db5b5ffa9fccd5c7f1f39a3e9aa66cc4a5eedc1 |
|
16-Jul-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] initialize asan error callbacks in runOnModule instead of doing that on-demand git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160269 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
349f14c72cbcd3c50091d20a874967aca5f2f746 |
|
16-Jul-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Revert r160254 temporarily. It turns out that ASan relied on the at-the-end block insertion order to (purely by happenstance) disable some LLVM optimizations, which in turn start firing when the ordering is made more "normal". These optimizations in turn merge many of the instrumentation reporting calls which breaks the return address based error reporting in ASan. We're looking at several different options for fixing this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160256 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
c3c8db9d25e69083cec0c2d4a01735cd9e01269f |
|
16-Jul-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Teach AddressSanitizer to create basic blocks in a more natural order. This is particularly useful to the backend code generators which try to process things in the incoming function order. Also, cleanup some uses of IRBuilder to be a bit simpler and more clear. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@160254 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
56139bc493790612ee6281630678e293be6b2eb2 |
|
02-Jul-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] small code simplification git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159522 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
06cb8ed00696eb14d1b831921452e50ec0568ea2 |
|
29-Jun-2012 |
Chandler Carruth <chandlerc@gmail.com> |
Move llvm/Support/IRBuilder.h -> llvm/IRBuilder.h This was always part of the VMCore library out of necessity -- it deals entirely in the IR. The .cpp file in fact was already part of the VMCore library. This is just a mechanical move. I've tried to go through and re-apply the coding standard's preferred header sort, but at 40-ish files, I may have gotten some wrong. Please let me know if so. I'll be committing the corresponding updates to Clang and Polly, and Duncan has DragonEgg. Thanks to Bill and Eric for giving the green light for this bit of cleanup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
324cbb89f2759fb9ad347bd2af4631e50c39c8f3 |
|
28-Jun-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] set a hard limit on the number of instructions instrumented pear each BB. This is (hopefully temporary) workaround for PR13225 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159344 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
ce718ff9f42c7da092eaa01dd0242e8d5ba84713 |
|
23-Jun-2012 |
Hans Wennborg <hans@hanshq.net> |
Extend the IL for selecting TLS models (PR9788) This allows the user/front-end to specify a model that is better than what LLVM would choose by default. For example, a variable might be declared as @x = thread_local(initialexec) global i32 42 if it will not be used in a shared library that is dlopen'ed. If the specified model isn't supported by the target, or if LLVM can make a better choice, a different model may be used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@159077 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
e6cf2e0bd09544eeb69665deb908d264e62a71c2 |
|
30-May-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] instrument cmpxchg and atomicrmw git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157683 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
06fdbaa9145f01a291d4981ca5120b7bdcad44c6 |
|
23-May-2012 |
Evgeniy Stepanov <eugeni.stepanov@gmail.com> |
Use zero-based shadow by default on Android. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@157317 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3f119989c3839c98b20bf6ea00c2ccc95aacff69 |
|
27-Apr-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] small optimization: do not emit "x+0" instructions git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
55cabae685991ac6bc6d96b14e2139f64a0c9967 |
|
23-Apr-2012 |
Alexander Potapenko <glider@google.com> |
Fix issue 67 by checking that the interface functions weren't redefined in the compiled source file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@155346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
208a4ff2b56f453910bb817540f34b8169f7702a |
|
21-Mar-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] fix one more bug related to long double git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
8c0134a77615b66f57250f0662bc899e4574551e |
|
19-Mar-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] don't emit __asan_mapping_offset/__asan_mapping_scale by default -- they are currently used only for experiments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
a1c45044099cf7fb4a072f1326f164706d5bb2e2 |
|
15-Mar-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] rename class BlackList to FunctionBlackList and move it into a separate file -- we will need the same functionality in ThreadSanitizer git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152753 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
d8313be41031e4d768f5b38199904d4debff88cd |
|
02-Mar-2012 |
Evgeniy Stepanov <eugeni.stepanov@gmail.com> |
ASan: use getTypeAllocSize instead of getTypeStoreSize. This change replaces getTypeStoreSize with getTypeAllocSize in AddressSanitizer instrumentation for stack allocations. One case where old behaviour produced undesired results is an optimization in InstCombine pass (PromoteCastOfAllocation), which can replace alloca(T) with alloca(S), where S has the same AllocSize, but a smaller StoreSize. Another case is memcpy(long double => long double), where ASan will poison bytes 10-15 of a stack-allocated long double (StoreSize 10, AllocSize 16, sizeof(long double) = 16). See http://llvm.org/bugs/show_bug.cgi?id=12047 for more context. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151887 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
95e3cf44a9d4672655dee3bd558bfeefa631dd55 |
|
08-Feb-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] unpoison the stack before every noreturn call. Fixes asan issue 37. llvm part git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
858143816d43e58b17bfd11cb1b57afbd7f0f893 |
|
07-Feb-2012 |
Craig Topper <craig.topper@gmail.com> |
Convert assert(0) to llvm_unreachable git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149967 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
18c7f80b3e83ab584bd8572695a3cde8bafd9d3c |
|
05-Feb-2012 |
Chris Lattner <sabre@nondot.org> |
reapply the patches reverted in r149470 that reenable ConstantDataArray, but with a critical fix to the SelectionDAG code that optimizes copies from strings into immediate stores: the previous code was stopping reading string data at the first nul. Address this by adding a new argument to llvm::getConstantStringInfo, preserving the behavior before the patch. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149800 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
91766fe066efe6e0969ba805a2e3726a70ed34a3 |
|
01-Feb-2012 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Revert Chris' commits up to r149348 that started causing VMCoreTests unit test to fail. These are: r149348 r149351 r149352 r149354 r149356 r149357 r149361 r149362 r149364 r149365 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149470 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
6a89228faca4b30c4abc29b5dec98bdac011ea4c |
|
31-Jan-2012 |
Chris Lattner <sabre@nondot.org> |
eliminate the "string" form of ConstantArray::get, using ConstantDataArray::getString instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149365 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
a1a8a323f43a95620fc4c6b5aad8d5ff5e5eb590 |
|
31-Jan-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] fix the ObjC support (asan Issue #33) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149300 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
8375bc923638299410e75e8f668524fc1aa113bd |
|
30-Jan-2012 |
Alexander Potapenko <glider@google.com> |
Fix compilation of ASan tests on OS X Lion (see http://code.google.com/p/address-sanitizer/issues/detail?id=32) The redzones emitted by AddressSanitizer for CFString instances confuse the linker and are of little use, so we shouldn't add them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149243 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
f1639abf1aaba1448f719f595156cd0f4cd560cc |
|
28-Jan-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] correctly use ConstantExpr::getGetElementPtr. Catch by NAKAMURA Takumi git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149172 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
0307b9a88574d7e54459181afaa656ac92971847 |
|
24-Jan-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] enable asan only for the functions that have Attribute::AddressSafety git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148846 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
25878042030e85c244b41bfcdfad27c32360e2ec |
|
23-Jan-2012 |
Alexander Potapenko <glider@google.com> |
Implemented AddressSanitizer::getPassName() git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@148697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
bcb55ce3862bbbedac4e09d7099c9e0efc434e4b |
|
11-Jan-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] extend the workaround for http://llvm.org/bugs/show_bug.cgi?id=11395: don't instrument the function at all on x86_32 if it has a large asm blob git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
3c7faae346f548c55cad86d82a2e242443001f23 |
|
06-Jan-2012 |
Kostya Serebryany <kcc@google.com> |
[asan] cleanup: remove the SIGILL-related code (compiler part) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147667 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
a4b2b1d8fbb84b0b6fac5abce21a2a5c5e907282 |
|
15-Dec-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] add the name of the module to the description of a global variable. This improves the readability of global-buffer-overflow reports. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146698 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
7bcfc9950bac0f411f9671e8d6ce483bd219727e |
|
15-Dec-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] fix a bug (issue 19) where dlclose and the following mmap caused a false positive. compiler part. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146688 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
bd7910d158ad2e2a3cb17f2b3f160a9c39dd6b0f |
|
14-Dec-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] remove .preinit_array from the compiler module (it breaks .so builds). This should be done in the run-time. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146527 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
085cb8f0b957841ab667a46be0c49ce4ee8c9c79 |
|
13-Dec-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] report an error if blacklist file contains a malformed regex. fixes asan issue 17 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
9b02741d2284d9516a59666c211fe1f57e8803ad |
|
12-Dec-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] use .preinit_array only on linux git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
25a8b809a074941e52cf357674b4382437aabb08 |
|
09-Dec-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] call __asan_init from .preinit_array. This simplifies __asan_init vs malloc chicken-and-egg situation on Android and probably on other flavours of Linux. Patch by eugenis@google.com. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146284 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
cc1d856d8e8e11407b3c6c1d08768f77c3722e38 |
|
01-Dec-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] two minor fixes: use UnreachableInst after the neverreturn function call; use report_fatal_error when blacklist file can not be found git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
d2703dec271d82c8c9d22afb835c07730fd25d47 |
|
23-Nov-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] do not instrument threadlocal globals, this is buggy git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145092 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
5a3a9c937198084498a196dae856ac5a5a005bcc |
|
18-Nov-2011 |
Kostya Serebryany <kcc@google.com> |
[asan] workaround for reg alloc bug 11395: don't instrument functions with large chunks of inline assembler git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144962 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
2e7fb2f73641f1f1ca385fe7777075945bf4ca24 |
|
18-Nov-2011 |
Kostya Serebryany <kcc@google.com> |
quick fix: remove GlobalVariable::GlobalVariable mistakenly commited at r144933. For some reason this compiles on linux git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144936 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
7cf2a04361e8613264498e50babe52d65c070473 |
|
18-Nov-2011 |
Kostya Serebryany <kcc@google.com> |
fall back to explicit list of allowed linkages when instrumenting globals in asan; add a test check that asan does not touch linkonce_odr git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144933 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|
800e03f59896ef4b26d988f1878370bb5aeec0d8 |
|
16-Nov-2011 |
Kostya Serebryany <kcc@google.com> |
AddressSanitizer, first commit (compiler module only) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@144758 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
|