diff options
Diffstat (limited to 'lib/Transforms/Instrumentation/MemorySanitizer.cpp')
| -rw-r--r-- | lib/Transforms/Instrumentation/MemorySanitizer.cpp | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/Transforms/Instrumentation/MemorySanitizer.cpp b/lib/Transforms/Instrumentation/MemorySanitizer.cpp index 190f05db4b0c1..3e480a6df446d 100644 --- a/lib/Transforms/Instrumentation/MemorySanitizer.cpp +++ b/lib/Transforms/Instrumentation/MemorySanitizer.cpp @@ -2643,7 +2643,7 @@ struct MemorySanitizerVisitor : public InstVisitor<MemorySanitizerVisitor> {                 "ByVal argument is not a pointer!");          Size = DL.getTypeAllocSize(A->getType()->getPointerElementType());          if (ArgOffset + Size > kParamTLSSize) break; -        unsigned ParamAlignment = CS.getParamAlignment(i + 1); +        unsigned ParamAlignment = CS.getParamAlignment(i);          unsigned Alignment = std::min(ParamAlignment, kShadowTLSAlignment);          Store = IRB.CreateMemCpy(ArgShadowBase,                                   getShadowPtr(A, Type::getInt8Ty(*MS.C), IRB), @@ -3502,7 +3502,7 @@ struct VarArgPowerPC64Helper : public VarArgHelper {          assert(A->getType()->isPointerTy());          Type *RealTy = A->getType()->getPointerElementType();          uint64_t ArgSize = DL.getTypeAllocSize(RealTy); -        uint64_t ArgAlign = CS.getParamAlignment(ArgNo + 1); +        uint64_t ArgAlign = CS.getParamAlignment(ArgNo);          if (ArgAlign < 8)            ArgAlign = 8;          VAArgOffset = alignTo(VAArgOffset, ArgAlign);  | 
