[esan|wset] Fix incorrect memory size assert
Summary:
Fixes an incorrect assert that fails on 128-bit-sized loads or stores.
Augments the wset tests to include this case.
Reviewers: aizatsky
Subscribers: vitalybuka, zhaoqin, kcc, eugenis, llvm-commits
Differential Revision: http://reviews.llvm.org/D22062
llvm-svn: 274666
diff --git a/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp b/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp
index 6640e7b..111b087 100644
--- a/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp
+++ b/llvm/lib/Transforms/Instrumentation/EfficiencySanitizer.cpp
@@ -671,7 +671,7 @@
NumFastpaths++;
return true;
}
- if (Alignment == 0 || Alignment >= 8 || (Alignment % TypeSizeBytes) == 0)
+ if (Alignment == 0 || (Alignment % TypeSizeBytes) == 0)
OnAccessFunc = IsStore ? EsanAlignedStore[Idx] : EsanAlignedLoad[Idx];
else
OnAccessFunc = IsStore ? EsanUnalignedStore[Idx] : EsanUnalignedLoad[Idx];
@@ -832,7 +832,7 @@
// getMemoryAccessFuncIndex has already ruled out a size larger than 16
// and thus larger than a cache line for platforms this tool targets
// (and our shadow memory setup assumes 64-byte cache lines).
- assert(TypeSize <= 64);
+ assert(TypeSize <= 128);
if (!(TypeSize == 8 ||
(Alignment % (TypeSize / 8)) == 0)) {
if (ClAssumeIntraCacheLine)