mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 11:42:57 +01:00
19a3f5fed4
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. llvm-svn: 151887 |
||
---|---|---|
.. | ||
AddressSanitizer.cpp | ||
CMakeLists.txt | ||
EdgeProfiling.cpp | ||
GCOVProfiling.cpp | ||
Instrumentation.cpp | ||
LLVMBuild.txt | ||
Makefile | ||
MaximumSpanningTree.h | ||
OptimalEdgeProfiling.cpp | ||
PathProfiling.cpp | ||
ProfilingUtils.cpp | ||
ProfilingUtils.h | ||
ThreadSanitizer.cpp |