llvm-6502/lib/Transforms
Dmitry Vyukov 826cbaf934 asan: do not instrument direct inbounds accesses to stack variables
Do not instrument direct accesses to stack variables that can be
proven to be inbounds, e.g. accesses to fields of structs on stack.

But it eliminates 33% of instrumentation on webrtc/modules_unittests
(number of memory accesses goes down from 290152 to 193998) and
reduces binary size by 15% (from 74M to 64M) and improved compilation time by 6-12%.

The optimization is guarded by asan-opt-stack flag that is off by default.

http://reviews.llvm.org/D7583



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231241 91177308-0d34-0410-b5e6-96231b3b80d8
2015-03-04 13:27:53 +00:00
..
Hello [CMake] Add LLVM_LINK_COMPONENTS to loadable modules, LLVMHello and BugpointPasses, on Win32. 2014-07-13 13:36:48 +00:00
InstCombine InstCombine: Ensure select condition types are identical before merging 2015-03-03 22:40:36 +00:00
Instrumentation asan: do not instrument direct inbounds accesses to stack variables 2015-03-04 13:27:53 +00:00
IPO LowerBitSets: Use byte arrays instead of bit sets to represent in-memory bit sets. 2015-03-03 00:49:28 +00:00
ObjCARC [objc-arc-contract] We can not move retains over instructions which can not conservatively be proven to not decrement the retain's RCIdentity. 2015-02-20 00:02:49 +00:00
Scalar [RewriteStatepointsForGC] Fix a relocation bug w.r.t values defined by invoke instructions 2015-03-04 00:13:52 +00:00
Utils Remap frame variables for native Windows exception handling. 2015-02-23 20:01:56 +00:00
Vectorize Make ToVectorTy static. 2015-03-02 20:43:24 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile