llvm/test/Instrumentation
Kostya Serebryany daa1bf3b74 [asan] rewrite asan's stack frame layout
Summary:
Rewrite asan's stack frame layout.
First, most of the stack layout logic is moved into a separte file
to make it more testable and (potentially) useful for other projects.
Second, make the frames more compact by using adaptive redzones
(smaller for small objects, larger for large objects).
Third, try to minimized gaps due to large alignments (this is hypothetical since
today we don't see many stack vars aligned by more than 32).

The frames indeed become more compact, but I'll still need to run more benchmarks
before committing, but I am sking for review now to get early feedback.

This change will be accompanied by a trivial change in compiler-rt tests
to match the new frame sizes.

Reviewers: samsonov, dvyukov

Reviewed By: samsonov

CC: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@196568 91177308-0d34-0410-b5e6-96231b3b80d8
2013-12-06 09:00:17 +00:00
..
AddressSanitizer [asan] rewrite asan's stack frame layout 2013-12-06 09:00:17 +00:00
BoundsChecking fix PR17635: false positive with packed structures 2013-10-24 09:17:24 +00:00
DataFlowSanitizer Introduce two command-line flags for the instrumentation pass to control whether the labels of pointers should be ignored in load and store instructions 2013-11-21 23:20:54 +00:00
MemorySanitizer [msan] Propagate condition origin in select instruction. 2013-11-21 12:00:24 +00:00
ThreadSanitizer [tsan] fix PR18146: sometimes a variable written into vptr could have an integer type (after other optimizations) 2013-12-05 15:03:02 +00:00