Lines Matching defs:omp

49 namespace omp {
53 return clause.id == llvm::omp::Clause::OMPC_collapse;
115 const ObjectList &objects, mlir::omp::DeclareTargetCaptureClause clause,
121 mlir::omp::MapInfoOp
127 mlir::omp::VariableCaptureKind mapCaptureType, mlir::Type retTy,
135 llvm::cast<mlir::omp::PointerLikeType>(retTy).getElementType());
144 mlir::omp::MapInfoOp op = builder.create<mlir::omp::MapInfoOp>(
147 builder.getAttr<mlir::omp::VariableCaptureKindAttr>(mapCaptureType),
152 // This function gathers the individual omp::Object's that make up a
153 // larger omp::Object symbol.
160 // returned omp::ObjectList is LHS to RHS, with the "parent" at the
162 omp::ObjectList gatherObjectsOf(omp::Object derivedTypeMember,
164 omp::ObjectList objList;
165 std::optional<omp::Object> baseObj = derivedTypeMember;
170 return omp::ObjectList{llvm::reverse(objList)};
173 // This function generates a series of indices from a provided omp::Object,
189 omp::Object object) {
238 /// !$omp target map(tofrom: alloca_dtype%vertexes(N1)%vertexx)
251 /// %51 = omp.map.info var_ptr(%40 : ...) map_clauses(to) capture(ByRef) ...
270 /// %61 = omp.map.info var_ptr(%58 : ...) map_clauses(to) capture(ByRef) ...
275 /// omp.map.info var_ptr(%13#1 : ...) map_clauses(to) capture(ByRef)
278 /// \param objectList - The list of omp::Object symbol data for each parent
296 omp::ObjectList &objectList, llvm::SmallVectorImpl<int64_t> &indices,
298 llvm::omp::OpenMPOffloadMappingFlags mapTypeBits) {
301 /// Checks if an omp::Object is an array expression with a subscript, e.g.
303 auto isArrayExprWithSubscript = [](omp::Object obj) {
394 mlir::omp::MapBoundsOp, mlir::omp::MapBoundsType>(
406 llvm::omp::OpenMPOffloadMappingFlags interimMapType = mapTypeBits;
407 interimMapType &= ~llvm::omp::OpenMPOffloadMappingFlags::OMP_MAP_TO;
408 interimMapType &= ~llvm::omp::OpenMPOffloadMappingFlags::OMP_MAP_FROM;
412 mlir::omp::MapInfoOp mapOp = createMapInfoOp(
419 std::underlying_type_t<llvm::omp::OpenMPOffloadMappingFlags>>(
421 mlir::omp::VariableCaptureKind::ByRef, curValue.getType());
492 const omp::Object &object, mlir::omp::MapInfoOp &mapOp,
528 auto mapOp = llvm::cast<mlir::omp::MapInfoOp>(
543 for (mlir::omp::MapInfoOp memberMap : indices.second.memberMap)
558 for (mlir::omp::MapInfoOp memberMap : indices.second.memberMap)
565 lower::gatherDataOperandAddrAndBounds<mlir::omp::MapBoundsOp,
566 mlir::omp::MapBoundsType>(
572 mlir::omp::MapInfoOp mapOp = createMapInfoOp(
577 mapType, mlir::omp::VariableCaptureKind::ByRef,
587 void lastprivateModifierNotSupported(const omp::clause::Lastprivate &lastp,
589 using Lastprivate = omp::clause::Lastprivate;
599 } // namespace omp