diff options
author | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2017-05-18 17:07:11 +0000 |
---|---|---|
committer | Krzysztof Parzyszek <kparzysz@codeaurora.org> | 2017-05-18 17:07:11 +0000 |
commit | 8f248234faa6c86961deab2670202a098a286572 (patch) | |
tree | 71b7779a380beaf68ed67f792d609f034e025daa /clang/lib/CodeGen/CGStmtOpenMP.cpp | |
parent | 01f93335a067b8939609646efd5211b170197682 (diff) | |
download | bcm5719-llvm-8f248234faa6c86961deab2670202a098a286572.tar.gz bcm5719-llvm-8f248234faa6c86961deab2670202a098a286572.zip |
[CodeGen] Propagate LValueBaseInfo instead of AlignmentSource
The functions creating LValues propagated information about alignment
source. Extend the propagated data to also include information about
possible unrestricted aliasing. A new class LValueBaseInfo will
contain both AlignmentSource and MayAlias info.
This patch should not introduce any functional changes.
Differential Revision: https://reviews.llvm.org/D33284
llvm-svn: 303358
Diffstat (limited to 'clang/lib/CodeGen/CGStmtOpenMP.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGStmtOpenMP.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/clang/lib/CodeGen/CGStmtOpenMP.cpp b/clang/lib/CodeGen/CGStmtOpenMP.cpp index 19b6cbab66c..c8c71dd83e9 100644 --- a/clang/lib/CodeGen/CGStmtOpenMP.cpp +++ b/clang/lib/CodeGen/CGStmtOpenMP.cpp @@ -327,14 +327,15 @@ CodeGenFunction::GenerateOpenMPCapturedStmtFunction(const CapturedStmt &S) { continue; } + LValueBaseInfo BaseInfo(AlignmentSource::Decl, false); LValue ArgLVal = MakeAddrLValue(GetAddrOfLocalVar(Args[Cnt]), Args[Cnt]->getType(), - AlignmentSource::Decl); + BaseInfo); if (FD->hasCapturedVLAType()) { LValue CastedArgLVal = MakeAddrLValue(castValueFromUintptr(*this, FD->getType(), Args[Cnt]->getName(), ArgLVal), - FD->getType(), AlignmentSource::Decl); + FD->getType(), BaseInfo); auto *ExprArg = EmitLoadOfLValue(CastedArgLVal, SourceLocation()).getScalarVal(); auto VAT = FD->getCapturedVLAType(); @@ -991,7 +992,7 @@ static LValue loadToBegin(CodeGenFunction &CGF, QualType BaseTy, QualType ElTy, CGF.Builder.CreatePointerBitCastOrAddrSpaceCast( BaseLV.getPointer(), CGF.ConvertTypeForMem(ElTy)->getPointerTo()), BaseLV.getAlignment()), - BaseLV.getType(), BaseLV.getAlignmentSource()); + BaseLV.getType(), BaseLV.getBaseInfo()); } void CodeGenFunction::EmitOMPReductionClauseInit( |