This patch adds assemblyFormat for omp.critical.declare, omp.atomic.read,
omp.atomic.write, omp.atomic.update and omp.atomic.capture.
Also removing those clauses from parseClauses that aren't needed
anymore, thanks to the new assemblyFormats.
Paths
| Differential D120248
[mlir][OpenMP] Added assemblyFormat for atomic and critical operations ClosedPublic Authored by shraiysh on Feb 21 2022, 5:43 AM.
Details Summary This patch adds assemblyFormat for omp.critical.declare, omp.atomic.read, Also removing those clauses from parseClauses that aren't needed
Diff Detail
Event Timelineshraiysh added reviewers: kiranktp, NimishMishra, AMDChirag, kiranchandramohan, clementval, peixin, Mogball, rriddle.Feb 21 2022, 5:44 AM Comment Actions Thanks @shraiysh for the patch. I have a few questions. Please find them below.
This revision now requires changes to proceed.Feb 22 2022, 8:28 PM
shraiysh retitled this revision from [mlir][OpenMP] Added assemblyFormat for atomic operations to [mlir][OpenMP] Added assemblyFormat for atomic and critical operations.Feb 22 2022, 10:08 PM This revision is now accepted and ready to land.Feb 24 2022, 9:22 PM This revision is now accepted and ready to land.Mar 1 2022, 9:19 PM Closed by commit rGd2f0fe23d237: [mlir][OpenMP] Added assemblyFormat for atomic and critical operations (authored by shraiysh). · Explain WhyMar 1 2022, 9:52 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 412319 mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
mlir/test/Dialect/OpenMP/invalid.mlir
mlir/test/Dialect/OpenMP/ops.mlir
|
I think you have introduced the operations for atomic in an earlier patch. It was merged below I realised this problem. Probably we can fix this here.
According to OpenMP 5.0 specification, (section 2,17.7) atomic read can't have acq_rel or release memory-order clause.