[Openmp-commits] [PATCH] D85216: [LIBOMPTARGET]Fix order of mapper data for targetDataEnd function.
Alexey Bataev via Phabricator via Openmp-commits
openmp-commits at lists.llvm.org
Wed Aug 5 10:49:18 PDT 2020
This revision was automatically updated to reflect the committed changes.
Closed by commit rG6780d5675b7c: [LIBOMPTARGET]Fix order of mapper data for targetDataEnd function. (authored by ABataev).
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D85216/new/
https://reviews.llvm.org/D85216
Files:
openmp/libomptarget/src/omptarget.cpp
Index: openmp/libomptarget/src/omptarget.cpp
===================================================================
--- openmp/libomptarget/src/omptarget.cpp
+++ openmp/libomptarget/src/omptarget.cpp
@@ -230,22 +230,26 @@
// Construct new arrays for args_base, args, arg_sizes and arg_types
// using the information in MapperComponents and call the corresponding
// target_data_* function using these new arrays.
- std::vector<void *> mapper_args_base;
- std::vector<void *> mapper_args;
- std::vector<int64_t> mapper_arg_sizes;
- std::vector<int64_t> mapper_arg_types;
-
- for (auto& C : MapperComponents.Components) {
- mapper_args_base.push_back(C.Base);
- mapper_args.push_back(C.Begin);
- mapper_arg_sizes.push_back(C.Size);
- mapper_arg_types.push_back(C.Type);
+ std::vector<void *> MapperArgsBase(MapperComponents.Components.size());
+ std::vector<void *> MapperArgs(MapperComponents.Components.size());
+ std::vector<int64_t> MapperArgSizes(MapperComponents.Components.size());
+ std::vector<int64_t> MapperArgTypes(MapperComponents.Components.size());
+
+ for (unsigned I = 0, E = MapperComponents.Components.size(); I < E; ++I) {
+ auto &C =
+ MapperComponents
+ .Components[target_data_function == targetDataEnd ? I : E - I - 1];
+ MapperArgsBase[I] = C.Base;
+ MapperArgs[I] = C.Begin;
+ MapperArgSizes[I] = C.Size;
+ MapperArgTypes[I] = C.Type;
}
int rc = target_data_function(Device, MapperComponents.Components.size(),
- mapper_args_base.data(), mapper_args.data(), mapper_arg_sizes.data(),
- mapper_arg_types.data(), /*arg_mappers*/ nullptr,
- /*__tgt_async_info*/ nullptr);
+ MapperArgsBase.data(), MapperArgs.data(),
+ MapperArgSizes.data(), MapperArgTypes.data(),
+ /*arg_mappers*/ nullptr,
+ /*__tgt_async_info*/ nullptr);
return rc;
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D85216.283299.patch
Type: text/x-patch
Size: 1971 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/openmp-commits/attachments/20200805/d88a8107/attachment.bin>
More information about the Openmp-commits
mailing list