bader marked an inline comment as done. bader added inline comments.
================ Comment at: clang/docs/SYCLSupport.md:123 +traverse all symbols accessible from kernel functions and add them to the +"device part" of the code marking them with the new SYCL device attribute. + ---------------- Naghasan wrote: > bader wrote: > > Naghasan wrote: > > > ABataev wrote: > > > > bader wrote: > > > > > Naghasan wrote: > > > > > > OpenMP offload uses a similar approach isn't it? Might be worth to > > > > > > describe how the 2 relates to each other and where they diverge. > > > > > Do you mean the approach OpenMP compiler uses to outline > > > > > single-source code parts to offload? > > > > > To be honest, I'm not sure... @ABataev, is there any description how > > > > > OpenMP compiler outlines device code? > > > > > https://clang.llvm.org/docs/OpenMPSupport.html doesn't provide much > > > > > details unfortunately. > > > > I don't think we have anything like this. Moreover, currently, there > > > > are 2 different models, one with outlining by the frontend and another > > > > one with the outlining by the LLVM. > > > I mentioned that as I know there is some support for CUDA and the clang > > > driver openmp offload works with multiple frontend passes. > > > If the model(s) is too different then there is no point going further > > > here. > > > > > > > Moreover, currently, there are 2 different models, one with outlining > > > > by the frontend and another one with the outlining by the LLVM. > > > > > > I do recall some brief conversations about that. Are they meant to work > > > in pair or one aims to replace the other ? > > What do say if add a TODO here (or in a separate TODO document) to study > > more about differences between SYCL/OpenMP-offload/CUDA implementation > > designs? > > It seems to be useful to understanding if we want to re-use other > > programming model experience with implementing common tasks like device > > code outlining. > fine by me :) I've added a TODO section to the document. ================ Comment at: clang/docs/SYCLSupport.rst:198 + class MyObj { + accessor<int> _ptr; // accessor<int> contains a pointer to the global address space. + public: ---------------- Naghasan wrote: > Oups sorry, I just noticed I made a mistake in my suggestion, that's more in > line with the statement `KernelFuncObj.A.__init(a);` in the pseudo opencl Thanks. Fixed. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99190/new/ https://reviews.llvm.org/D99190 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits