[Openmp-commits] [PATCH] D112504: [OpenMP] Wrap (v)printf in the new RT and use same handling for AMD
Johannes Doerfert via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Mon Oct 25 19:19:21 PDT 2021
jdoerfert created this revision.
jdoerfert added reviewers: JonChesterfield, tianshilei1992, jhuber6.
Herald added subscribers: guansong, bollu, yaxunl.
jdoerfert requested review of this revision.
Herald added subscribers: cfe-commits, sstefan1.
Herald added projects: clang, OpenMP.
To support `printf` NVPTX and AMD targets are handled differently. The
latter performs host calls, which we don't really want in OpenMP, the
former translates `printf` calls to `vprintf` calls as the NVIDIA
runtime provides an implementation for the device of `vprintf`. This
patch unifies the AMD and NVPTX handling and emits for both calls to the
`vprintf` wrapper `__llvm_omp_vprintf` which we define in our new device
runtime. The main benefit of this wrapper is that we can more easily
control (and profile) the emission of `printf` calls in device code.
Note: Tests are coming.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D112504
Files:
clang/lib/CodeGen/CGGPUBuiltin.cpp
openmp/libomptarget/DeviceRTL/include/Debug.h
openmp/libomptarget/DeviceRTL/include/Interface.h
openmp/libomptarget/DeviceRTL/src/Debug.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D112504.382165.patch
Type: text/x-patch
Size: 4623 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20211026/ac1c7ef1/attachment-0001.bin>
More information about the Openmp-commits
mailing list