diff options
Diffstat (limited to 'clang/lib/CodeGen/CGStmtOpenMP.cpp')
-rw-r--r-- | clang/lib/CodeGen/CGStmtOpenMP.cpp | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/clang/lib/CodeGen/CGStmtOpenMP.cpp b/clang/lib/CodeGen/CGStmtOpenMP.cpp index 84059ab2912..bd208cb4df5 100644 --- a/clang/lib/CodeGen/CGStmtOpenMP.cpp +++ b/clang/lib/CodeGen/CGStmtOpenMP.cpp @@ -3098,18 +3098,11 @@ static void emitCommonOMPTeamsDirective(CodeGenFunction &CGF, const OMPNumTeamsClause *NT = TD.getSingleClause<OMPNumTeamsClause>(); const OMPThreadLimitClause *TL = TD.getSingleClause<OMPThreadLimitClause>(); if (NT || TL) { - llvm::Value *NumTeamsVal = (NT) ? CGF.Builder.CreateIntCast( - CGF.EmitScalarExpr(NT->getNumTeams()), CGF.CGM.Int32Ty, - /* isSigned = */ true) : - CGF.Builder.getInt32(0); - - llvm::Value *ThreadLimitVal = (TL) ? CGF.Builder.CreateIntCast( - CGF.EmitScalarExpr(TL->getThreadLimit()), CGF.CGM.Int32Ty, - /* isSigned = */ true) : - CGF.Builder.getInt32(0); - - CGF.CGM.getOpenMPRuntime().emitNumTeamsClause(CGF, NumTeamsVal, - ThreadLimitVal, S.getLocStart()); + Expr *NumTeams = (NT) ? NT->getNumTeams() : nullptr; + Expr *ThreadLimit = (TL) ? TL->getThreadLimit() : nullptr; + + CGF.CGM.getOpenMPRuntime().emitNumTeamsClause(CGF, NumTeams, ThreadLimit, + S.getLocStart()); } OMPLexicalScope Scope(CGF, S); |