This patch avoids the emission of maps for target link variables when unified memory is present.
Details
- Reviewers
ABataev caomhin - Commits
- rG5254f0a9abab: [OpenMP] Avoid emitting maps for target link variables when unified memory is…
rL363435: [OpenMP] Avoid emitting maps for target link variables when unified memory is…
rC363435: [OpenMP] Avoid emitting maps for target link variables when unified memory is…
Diff Detail
- Repository
- rC Clang
- Build Status
Buildable 32325 Build 32324: arc lint + arc unit
Event Timeline
lib/CodeGen/CGOpenMPRuntime.cpp | ||
---|---|---|
8259 | Hmm, what about regular declare target declarations? Also, this is not enough. You also should not capture such variables in the captured regions. |
lib/CodeGen/CGOpenMPRuntime.cpp | ||
---|---|---|
8259 | For now, only variables under the link clause are considered for unified memory usage. |
Just one question after looking at the test: how we're going to link the device variable to its host copy? I think the address should be passed to the runtime, no?
lib/CodeGen/CGOpenMPRuntime.h | ||
---|---|---|
1628 | Still not answered |
The runtime will take care of it by performing a copy of the host address into the device pointer.
lib/CodeGen/CGOpenMPRuntime.h | ||
---|---|---|
1628 | You can make this function const. |
Do we need to make it virtual?