[PATCH] D107842: [OpenMP] Version functions to aid SPMDzation

Johannes Doerfert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 10 10:05:19 PDT 2021


jdoerfert created this revision.
jdoerfert added reviewers: jhuber6, ggeorgakoudis.
Herald added subscribers: ormris, okura, kuter, jfb, guansong, bollu, hiraditya, yaxunl.
jdoerfert requested review of this revision.
Herald added a reviewer: sstefan1.
Herald added subscribers: llvm-commits, sstefan1.
Herald added a reviewer: baziotis.
Herald added a project: LLVM.

If a function is reached from a parallel region and a sequential part of
a kernel we cannot use the simple guarding blocks for side effects as
they might deadlock in the parallel region. This patch will track such
functions and version them. We will call a ".parallel" version if we
reach it from a parallel region and the default one otherwise. Only in
the default one we will create guards which avoids checks for the "mode"
and potential deadlocks.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D107842

Files:
  llvm/include/llvm/Transforms/IPO/Attributor.h
  llvm/lib/Transforms/IPO/Attributor.cpp
  llvm/lib/Transforms/IPO/OpenMPOpt.cpp
  llvm/test/Transforms/OpenMP/spmdization_versioning.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D107842.365526.patch
Type: text/x-patch
Size: 37063 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210810/ab140df1/attachment.bin>


More information about the llvm-commits mailing list