[asan] properly instrument memory accesses that have small alignment (smaller than...
authorKostya Serebryany <kcc@google.com>
Fri, 23 May 2014 11:52:07 +0000 (11:52 +0000)
committerKostya Serebryany <kcc@google.com>
Fri, 23 May 2014 11:52:07 +0000 (11:52 +0000)
commitc7895a83d2121aff5170d377d501d139aa0e9ed9
treeb1306ab67d7ac2bb586046aae8d463e4a76262b7
parent23b222cc502263219c435da17fea6d85be66c4dc
[asan] properly instrument memory accesses that have small alignment (smaller than min(8,size)) by making two checks instead of one. This may slowdown some cases, e.g. long long on 32-bit or wide loads produced after loop unrolling. The benefit is higher sencitivity.

llvm-svn: 209508
llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
llvm/test/Instrumentation/AddressSanitizer/basic.ll
llvm/test/Instrumentation/AddressSanitizer/instrumentation-with-call-threshold.ll
llvm/test/Instrumentation/AddressSanitizer/test64.ll