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 33397 Build 33396: 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?