diff --git a/mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td b/mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td --- a/mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td +++ b/mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td @@ -400,6 +400,9 @@ The optional $nowait elliminates the implicit barrier so the parent task can make progress even if the target task is not yet completed. + The optional $private_vars and $firstprivate_vars have the same meaning as + their OpenMP standard counterparts. + TODO: map, is_device_ptr, depend, defaultmap, in_reduction }]; diff --git a/mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp b/mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp --- a/mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp +++ b/mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp @@ -980,8 +980,9 @@ if (failed(parseClauses(parser, result, clauses, segments))) return failure(); - result.addAttribute("operand_segment_sizes", - parser.getBuilder().getI32VectorAttr(segments)); + result.addAttribute( + TargetOp::AttrSizedOperandSegments::getOperandSegmentSizeAttr(), + parser.getBuilder().getI32VectorAttr(segments)); Region *body = result.addRegion(); SmallVector regionArgs;