History log of /external/compiler-rt/lib/asan/asan_report.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5d71de26cedae3dafc17449fe0182045c0bd20e8 21-Jul-2014 Stephen Hines <srhines@google.com> Update compiler-rt for rebase to r212749.

Includes a cherry-pick of:
r213309 - fixes umodsi3

Change-Id: Ic7367e3586b6af7ef74bee6a8cf437d5f28d975a
/external/compiler-rt/lib/asan/asan_report.cc
2d1fdb26e458c4ddc04155c1d421bced3ba90cd0 29-May-2014 Stephen Hines <srhines@google.com> Update compiler-rt aosp/master for 3.5 (r209699) rebase.

Change-Id: I158a30186f0faea2e2400e9dfdd878db2eb40e90
/external/compiler-rt/lib/asan/asan_report.cc
1b17f5b79d58c5aff291dde05727ad0b215b81c6 13-Nov-2013 Alexey Samsonov <samsonov@google.com> [ASan] Do not rely on malloc context in allocator reports.

Invoke a fatal stack trace unwinder when ASan prints allocator-relevant
error reports (double-free, alloc-dealloc-mismatch, invalid-free).
Thus we'll be able to print complete stack trace even if allocation/free
stacks are not stored (malloc_context_size=0).

Based on the patch by Yuri Gribov!


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@194579 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
2fb08720b11b4c339e191b90d85477c6a2dd74db 01-Nov-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Unify summary reporting across all sanitizers.

This change unifies the summary printing across sanitizers:
now each tool uses specific version of ReportErrorSummary() method,
which deals with symbolization of the top frame and formatting a
summary message. This change modifies the summary line for ASan+LSan mode:
now the summary mentions "AddressSanitizer" instead of "LeakSanitizer".


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
f456018a324dc48668a57060f5ac9c838dfd9f32 28-Oct-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Revert r193501 and properly fix r193448

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193522 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
e38046aae1f76e525c2466af20c27269185a37bf 27-Oct-2013 Timur Iskhodzhanov <timurrrr@google.com> Work around ASan/Win breakage by r193448

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193501 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
c1a1ed62228288155459d39194995a36aca4a8a6 26-Oct-2013 Peter Collingbourne <peter@pcc.me.uk> Overhaul the symbolizer interface.

This moves away from creating the symbolizer object and initializing the
external symbolizer as separate steps. Those steps now always take place
together.

Sanitizers with a legacy requirement to specify their own symbolizer path
should use InitSymbolizer to initialize the symbolizer with the desired
path, and GetSymbolizer to access the symbolizer. Sanitizers with no
such requirement (e.g. UBSan) can use GetOrInitSymbolizer with no need for
initialization.

The symbolizer interface has been made thread-safe (as far as I can
tell) by protecting its member functions with mutexes.

Finally, the symbolizer interface no longer relies on weak externals, the
introduction of which was probably a mistake on my part.

Differential Revision: http://llvm-reviews.chandlerc.com/D1985

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193448 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
4b861aa4b40daabd81fdaed352380ea1c486053a 23-Oct-2013 Nick Lewycky <nicholas@mxc.ca> Make sure ASan always emits an error summary if it reports an error.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@193229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
6d95869fa900da9ddd68e15e2aa065854cfa176b 18-Oct-2013 Kostya Serebryany <kcc@google.com> [asan] reduce the size of AsanThreadContext by storing the stack trace in the stack depot

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192979 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
d9def29fe0dc8fc70ef270dcc1a266ad9257ec1f 14-Oct-2013 Alexey Samsonov <samsonov@google.com> [ASan] Don't die with internal ASan error on large buffer overflows

Summary:
Out-of-bound access may touch not-yet allocated or already freed
and recycled from quarantine chunks. We should treat this situation as
a "free-range memory access" and avoid printing any data about that
irrelevant chunk (which may be inconsistent).

This should fix https://code.google.com/p/address-sanitizer/issues/detail?id=183

Reviewers: kcc

Reviewed By: kcc

CC: timurrrr, llvm-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1893

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@192581 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
90b0f1e3ba126bb2e92ab51ef379c98782c23d90 04-Oct-2013 Alexey Samsonov <samsonov@google.com> Refactor the usage of strip_path_prefix option and make it more consistent across sanitizers

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@191943 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
22e21b044c9337a2fa921f268b7d221c693ad78b 16-Sep-2013 Alexey Samsonov <samsonov@google.com> [ASan] Check that getSymbolizer() is defined. Turn magic mapping constants into named variables

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190787 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
ac3ae5dc29d3623ada2bcb0db22ee88b0382e3b1 12-Sep-2013 Kostya Serebryany <kcc@google.com> [asan] fully re-implement the FakeStack (use-after-return) to make it faster and async-signal-safe. The implementation is not yet complete (see FIXMEs) but the existing tests pass.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190588 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
7847d77b246635211c3bf465421d49d7af5226c1 10-Sep-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Refactor symbolization interface: use class instead of several functions. Move some code around to get rid of extra source files

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190410 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
997454a41a1658837d72d69ec7def59616311243 10-Sep-2013 Timur Iskhodzhanov <timurrrr@google.com> [ASan] Don't crash in DescribeHeapAddress if we don't know the current thread's ID

Also make DescribeThread easier to use.
This was firing on Dr.ASan runs, not sure how to repro InvalidTID in a simple test.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@190392 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
22917e961033a840c500761d3c7110b5a654fca4 03-Sep-2013 Timur Iskhodzhanov <timurrrr@google.com> [asan] Hopefully fix the RTL build on Windows (part 2)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189817 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
89fe5642529335dc5d13ce7f4e61bdea36fca508 03-Sep-2013 Kostya Serebryany <kcc@google.com> [asan] attemping to fix the Windows build

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189814 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
edb39c7942fc9fe5043b7cce348bac0aec4c83eb 03-Sep-2013 Kostya Serebryany <kcc@google.com> implement PR17059: more visible diagnostics for stack-buffer-overflow

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189806 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
650c7d44b659ddfb4af471dc2ad79a727b7de939 03-Sep-2013 Sergey Matveev <earthdok@google.com> [lsan] Colorize LSan reports.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189804 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
696902ad6f427ce37b5f64a84a9cd53162f09abf 03-Sep-2013 Kostya Serebryany <kcc@google.com> fix PR17061 (and pleeease, don't ask me for a test, this is just a minor output formatting issue :)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@189783 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
13f5be4dd1d8bf6a44d8d976325f1c6f26fa9f7f 16-Aug-2013 Timur Iskhodzhanov <timurrrr@google.com> [ASan/RTL] Disable colored reporting on Windows

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188545 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
3c80c6c574850106481f82b9e23d1c728458d4a9 13-Aug-2013 Timur Iskhodzhanov <timurrrr@google.com> Define SANITIZER_INTERFACE_ATTRIBUTE on Windows and fix all the places where SANITIZER_INTERFACE_ATTRIBUTE or SANITIZER_ATTRIBUTE_WEAK are used

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@188261 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
7a0bba457ee05ced3adf37a0c0790d0ed23a5446 26-Jun-2013 Kostya Serebryany <kcc@google.com> [asan] initialize fake_stack lazily and increase its maximal size. This makes -fsanitize=address,use-after-return more robust: all SPEC tests pass now. In the default mode thread stacks become a bit smaller.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@184934 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
5e97ba38b00eb843a55189bb913b445cbe620894 29-May-2013 Timur Iskhodzhanov <timurrrr@google.com> Fix MSVC W3 compiler warnings

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182857 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
d570bb4c7d82767d26ada0f923f84b10d8ec0fc6 22-May-2013 Kostya Serebryany <kcc@google.com> [asan] fix the reported PCs for powerpc64

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@182477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
ed20ebe35c64b8c7043447f6a48b0e5adc89aded 06-May-2013 Sergey Matveev <earthdok@google.com> [asan] Common flags in ASan.

Some flags that are common to ASan/MSan/TSan/LSan have been moved to
sanitizer_common.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@181193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
22c1c18585f04957cbb7b90573e7acf8ed1c1ca7 11-Apr-2013 Alexey Samsonov <samsonov@google.com> [ASan] Symbolize correct address when printint error summary

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179274 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
f3f2f5ced1fa60dcec46f423297d5e651db8437f 10-Apr-2013 Alexey Samsonov <samsonov@google.com> [ASan] fix a typo in legend in error report

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@179161 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
a27bdf70ca24202dce21cf7c1a387aeaa400d889 05-Apr-2013 Kostya Serebryany <kcc@google.com> [sanitizer] found a bug by code inspection: CHECK(a=b) instead of CHECK(a==b). Was puzzled why lint did not catch it. Turns out this check was disabled for asan source. fix all cases and enable the check

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
7ed46ff7af911da0dd2067734d1408c6986c6657 05-Apr-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] Use a common mutex to prevent mixing reports from different sanitizers. This fixes PR15516

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
939316c822cc46e62684464eecd5cb2cefcf41c5 01-Apr-2013 Alexey Samsonov <samsonov@google.com> [ASan] More careful reports for globals that are ASCII strings

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178458 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
c9424276474a27bd7b6ae59e771371f850a08ba1 27-Mar-2013 Alexey Samsonov <samsonov@google.com> [ASan] Demangle global names in error reports.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@178131 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
a89a35acf3004de3e39f1074b8620fb3c423d41f 26-Mar-2013 Kostya Serebryany <kcc@google.com> [asan] print thread number while reporting invalid-free and double-free; add tests; also add a test for use-after-poison

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177993 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
50f3daa00d3da0a80c8798a3e977705e96ec106f 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.

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'




git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177723 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
def1be9b7ef4091ce465c0fbfb26cdb52128ade8 21-Mar-2013 Alexey Samsonov <samsonov@google.com> [ASan] Switch ASan to generic ThreadRegistry from sanitizer_common. Delete ASan-specific AsanThreadRegistry.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
89c1384464848c1ad041becf8b97936fa10de21b 20-Mar-2013 Alexey Samsonov <samsonov@google.com> [ASan] Move GetCurrentThread/SetCurrentThread from AsanThreadRegistry class into plain functions: they don't actually use registry

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177501 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
60c9f441255211f17c4d355ead94392ba1841355 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. compiler-rt part, llvm-part will follow

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@177253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
f882247088952deed954a19d745c2dd8871e2035 20-Feb-2013 Alexey Samsonov <samsonov@google.com> [Sanitizer] use raw syscall instead of _exit() function on Linux

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@175622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
2673fd8406197c42f16cede6d287f72169298c2e 06-Feb-2013 Kostya Serebryany <kcc@google.com> [asan] print a short one-line report summary after the full report. Currently, works only if symbolization happens in-process.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174501 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
589dcdaa520de1033a0f6112c9b67ab9eb7931af 05-Feb-2013 Evgeniy Stepanov <eugeni.stepanov@gmail.com> [asan] Fix nonsensical reports of partial right OOB.

In case of partial right OOB, ASan was reporting
X is located 0 bytes to the right of [A, B)
where X was actually inside [A, B).

With this change, ASan will report B as the error address in such case.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@174373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
95f630ae40cef78fb03b18110eff43bcf8d1c040 28-Jan-2013 Kostya Serebryany <kcc@google.com> [asan] two more internal flags for asan-rt: print_stats (0) and print_legend (1)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173671 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
a3b0e5e4f9f48b2ed0baee10c0236eda7c21c660 23-Jan-2013 Kostya Serebryany <kcc@google.com> [asan] simplify the code that poisons global redzones, add some more tests

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@173251 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
17a7c6763224300f6740b5e7fae274734afec675 29-Dec-2012 Kostya Serebryany <kcc@google.com> [asan] add a new interface function __asan_describe_address, useful for running asan-ified binary under a debugger (e.g. gdb)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171217 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
9c92748b8fa3b833924138a6ae1e653972c9de3b 26-Dec-2012 Alexey Samsonov <samsonov@google.com> [ASan] Teach ASan to print demangled function name when describing stack frame

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@171112 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
fe6d91684bcda766593800f6307233f1a33d31f6 21-Dec-2012 Kostya Serebryany <kcc@google.com> [asan] add a flag alloc_dealloc_mismatch (off by default for now) which finds malloc/delete, new/free, new/delete[], etc mismatches

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170869 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
e01f96be0daecec81f41b46377508885d83bb584 20-Dec-2012 Alexey Samsonov <samsonov@google.com> [ASan] remove duplicate entry in shadow byte legend

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170701 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
9514a53d7b56be6302c666291b21c0387f7ceca8 19-Dec-2012 Kostya Serebryany <kcc@google.com> [asan] print the shadow bytes in different colors and also output the shadow byte legend

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170520 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
58f54555c2528f863e211a0679c2c423cfa55fb2 18-Dec-2012 Kostya Serebryany <kcc@google.com> [asan] add some colors to asan output if printing to tty (following ubsan)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
a30c8f9eac981dcf137e84226810b760e35c7be1 13-Dec-2012 Kostya Serebryany <kcc@google.com> [asan] add two asan flags: fast_unwind_on_fatal and fast_unwind_on_malloc to allow using the slow CFI-based unwinder

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@170117 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
6a08d29b2020004b801ca69d8aea5872a7e67d72 07-Dec-2012 Alexey Samsonov <samsonov@google.com> ASan: change the strategy we use for installing malloc/free/symbolization hooks on Linux: don't provide a default no-op implementations for hooks in runtime, and optionally call hooks if they are provided by the user. Don't force weak interface functions into runtime.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169641 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
716e2f25123bf9b20fbc6b582803a3929b78b96d 07-Dec-2012 Kostya Serebryany <kcc@google.com> [asan] intercept prctl(PR_SET_NAME) and set the thread name. Output the thread names (if non-empty) in asan reports

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169601 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
d4b5db8cb8a7a13bb5cc1d4ce53e8e088303c854 04-Dec-2012 Alexey Samsonov <samsonov@google.com> ASan: add new interface functions - __asan_(un)poison_stack_memory. Calls to these functions are inserted by the instrumentation pass in use-after-scope mode

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@169201 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
0870028410087e67a0049c76cb7c64f02c260d24 23-Nov-2012 Alexey Samsonov <samsonov@google.com> [ASan] Add interceptor for swapcontext to fight with false positives in some of its use cases.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168508 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
5af39e50366f1aacbebc284f572f08ad1ad07357 21-Nov-2012 Kostya Serebryany <kcc@google.com> [asan/tsan] do not use __WORDSIZE macro, as it is glibc-private thing. Instead, define our own SANITIZER_WORDSIZE

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168424 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
031633bef8dff03f4e8943a12e34856bd66bbc78 19-Nov-2012 Alexey Samsonov <samsonov@google.com> [ASan] use raw Exit() to kill the program in case ASan finds an error while reporting the error in the same thread

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168308 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
e406c8c47570659287e619e23479f9fb6640299e 15-Nov-2012 Alexander Potapenko <glider@google.com> [ASan] Revert r168040 and r168043 and take a cleaner solution suggested by Kostya: return the known frame name for fake stack instead of looking it up.


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168046 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
036945d16d94ed6e83a85e243d7fe89687b9baf8 15-Nov-2012 Alexander Potapenko <glider@google.com> [ASan] Poison the leftmost shadow byte with a special value so that we can find
the beginning of the fake frame when reporting an use-after-return error.
Fixes http://code.google.com/p/address-sanitizer/issues/detail?id=126



git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@168040 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
69d8ede30a0ef32c74af7e4e795eb4b4e7fb1d36 15-Oct-2012 Kostya Serebryany <kcc@google.com> [asan] change the asan output slightly to avoid user confusion: a) add ':' after 'AddressSanitizer' and b) changed 'crashed' to 'SEGV'

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165932 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
866334332ff8c2a1b7f3715224614b6b75a7578c 02-Oct-2012 Alexey Samsonov <samsonov@google.com> [ASan] Change __asan_set_on_error_callback to weak overridable __asan_on_error, so that ASan would call the latter even if it finds the error early (i.e. during module initialization)

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@165008 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
5c153faa535f671dd0e8d40ab43397f2d3c6f6f5 18-Sep-2012 Alexey Samsonov <samsonov@google.com> [ASan] Move printing descriptions of heap addresses in error report from allocator internals to asan_report.cc.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164112 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
62e27098b97e5ef74931c536350123a3df9dec6d 17-Sep-2012 Alexey Samsonov <samsonov@google.com> [ASan] increase sleep time if ASan finds two bugs simultaneously to make sure full error report is printed

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@164018 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
cb9bd24e5f226b9a922098403cbd1589be39e605 11-Sep-2012 Chandler Carruth <chandlerc@gmail.com> Revert r163411 based on review discussion.

In code review, it looked like these warnings do not actually fire with
modern Clang or GCC. However, the pragma is flat out rejected by GCC in
many configurations (-Werror) so it ended up causing more problems than
it fixed.

Daniel agreed with reverting this, but I think didn't have time to get
to it.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163583 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
f4e21fb6369497a271373ef4530e33a40e607542 07-Sep-2012 Daniel Dunbar <daniel@zuster.org> [asan] Suppress some bogus -Winvalid-noreturn diagnostics.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
71b42c9740e6f73da607aaa539affb5c4807231c 05-Sep-2012 Alexey Samsonov <samsonov@google.com> [ASan] Add print_full_thread_history runtime option (on by default) that prints all full thread creation paths for threads involved in ASan error report

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163200 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
cc347222d55967fdb775429a8a0a3a5d795b8b50 28-Aug-2012 Kostya Serebryany <kcc@google.com> [asan] even more refactoring to move StackTrace to sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162754 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
c3390df6670cb166119b961eb27a033fb9073496 28-Aug-2012 Kostya Serebryany <kcc@google.com> [asan] some renaming before we move StackTrace into sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
283c296b64bc55deec9698260b3427a9b050a925 28-Aug-2012 Kostya Serebryany <kcc@google.com> [asan] get rid of AsanPrintf in favor of Printf from sanitizer_common

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162746 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
3945c58f9db42671b1a3b865fde5008f09a3a40e 21-Aug-2012 Kostya Serebryany <kcc@google.com> [asan] run-time part of the initialization order checker. Patch by Reid Watson with some bits from kcc. The sub-pass is off by default for now. On simple tests it works fine.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@162278 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
f657a1977b6053c76ca8393f574da7593ea3ea12 13-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] Add __asan_set_on_error_callback() interface function that allows user to set a callback to be called right when ASan detects an error

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161754 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
be98caf9fe5e7b94b2009616cf31f0d87cf98d67 13-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] If ASan finds second error report, wait for some time and die (instead of running in a busy loop) to make sure ASan won't hang if it finds error while reporting an error in the same thread

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161749 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
9873792adb79e9daa1594564cbe5b2d680c5ed13 10-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] share code executed at the beginning/end of printing error reports

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161666 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
663c50134e01feefb6c5418c6ec7753be951c14f 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] Move mac-specific error reports to asan_report.cc as well

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161576 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
812ff90eaad0e4555554ffb81db0e611ec434e10 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] Small fix to please tests on Windows, where stack unwinding using provided pc/bp works too bad

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161575 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
c98570beff64ec0a513dcc11a4662ffba70e43dd 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] Move __asan_report_error implementation to asan_report.cc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161574 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
e4bfca2b154a6ab4eda921aff454035f33f3551a 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] move code that describes globals to asan_report.cc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161572 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
e218beb2d14b663bd277158f386a86d0e62fef74 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] move some functions that describe addresses to asan_report.cc

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161571 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
487fee7f6f7497906a00d7d2fe2c75e6d5d4feb1 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] Move error reporting code away from file with interceptors

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161570 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
f7c1d18183d2dfbd02864cf47b3239d6a5d717c0 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] Move error reports away from ASan allocator. Add new source file to CMakeLists as well

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161569 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc
7354509ec8a37262c5ea0c54f99afee8a5116ce5 09-Aug-2012 Alexey Samsonov <samsonov@google.com> [ASan] Create new files asan_report.{h,cc} as a preparation for refactoring of ASan error reporting code.
Currently ASan reports many kinds of errors, and the code that actually prints error messages can
be found inside allocator, OS-specific files, interceptors code etc.

An example of maintenance troubles this situation causes:
There is currently an ASan interface function that registers
callback which should take the char buffer with error report printed by ASan.
This function is now broken, as one has to insert callback calls to all the places in
ASan code where the error reports are printed, surprisingly it is not only
"__asan_report_error" function...


git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@161568 91177308-0d34-0410-b5e6-96231b3b80d8
/external/compiler-rt/lib/asan/asan_report.cc