doru1004 added inline comments.

================
Comment at: clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp:243
         if (!FD->getType()->isReferenceType()) {
-          assert(!VD->getType()->isVariablyModifiedType() &&
+          bool isVMT = VD->getType()->isVariablyModifiedType();
+          assert((!isVMT || (isVMT && !IsForCombinedParallelRegion)) &&
----------------
doru1004 wrote:
> ABataev wrote:
> > Is it for pointers only? Or for other types too?
> I am not sure about that distinction; it allows for the same types as before 
> except that when the directive is not a combined parallel for directive it 
> returns immediately because the variable will then have to be captured and 
> shared.
Correction: it allows for VMTs to pass through in cases in which you don't use 
a combined parallel for directive.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D138614/new/

https://reviews.llvm.org/D138614

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to