================ @@ -705,28 +740,7 @@ convertOmpTaskOp(omp::TaskOp taskOp, llvm::IRBuilderBase &builder, }; SmallVector<llvm::OpenMPIRBuilder::DependData> dds; - if (!taskOp.getDependVars().empty() && taskOp.getDepends()) { - for (auto dep : - llvm::zip(taskOp.getDependVars(), taskOp.getDepends()->getValue())) { - llvm::omp::RTLDependenceKindTy type; - switch ( - cast<mlir::omp::ClauseTaskDependAttr>(std::get<1>(dep)).getValue()) { - case mlir::omp::ClauseTaskDepend::taskdependin: - type = llvm::omp::RTLDependenceKindTy::DepIn; - break; - // The OpenMP runtime requires that the codegen for 'depend' clause for - // 'out' dependency kind must be the same as codegen for 'depend' clause - // with 'inout' dependency. - case mlir::omp::ClauseTaskDepend::taskdependout: - case mlir::omp::ClauseTaskDepend::taskdependinout: - type = llvm::omp::RTLDependenceKindTy::DepInOut; - break; - }; - llvm::Value *depVal = moduleTranslation.lookupValue(std::get<0>(dep)); - llvm::OpenMPIRBuilder::DependData dd(type, depVal->getType(), depVal); - dds.emplace_back(dd); - } - } + buildDependData(taskOp.getOperation(), moduleTranslation, dds); ---------------- skatrak wrote:
Suggestion to how this call could look if following my comment above: ```suggestion buildDependData(moduleTranslation, taskOp.getDepends(), taskOp.getDependVars(), dds); ``` https://github.com/llvm/llvm-project/pull/93977 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits