This patch fixes an issue with failing to properly capture a variably modified type alias of an already mapped flat array. The test showcases a minimal example of the failing scenario.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
| clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | ||
|---|---|---|
| 243 | Is it for pointers only? Or for other types too? | |
| clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | ||
|---|---|---|
| 243 | 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. | |
| clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | ||
|---|---|---|
| 243 | Correction: it allows for VMTs to pass through in cases in which you don't use a combined parallel for directive. | |
| clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | ||
|---|---|---|
| 243 | Yes it should be called IsVMTTy | |
| clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | ||
|---|---|---|
| 243–244 | Still naming, IsVMTTy. | |
| clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp | ||
|---|---|---|
| 243 | It only applies to pointers, it's the pointer that needs to be used correctly. | |
Is it for pointers only? Or for other types too?