aboutsummaryrefslogtreecommitdiff
path: root/runtime/tools
diff options
context:
space:
mode:
authorJonathan Peyton <jonathan.l.peyton@intel.com>2018-09-07 18:25:49 +0000
committerJonathan Peyton <jonathan.l.peyton@intel.com>2018-09-07 18:25:49 +0000
commitd590b1f16e7b0c5b2f8ca9d07d6dffd6b72f0b8e (patch)
tree6cfcee7535507c13e52bfaf879552b18249e81d4 /runtime/tools
parent0913dc25642bb065e7203d5b4f55d44e941fe2ea (diff)
[OpenMP] Initial implementation of OMP 5.0 Memory Management routines
Implemented omp_alloc, omp_free, omp_{set,get}_default_allocator entries, and OMP_ALLOCATOR environment variable. Added support for HBW memory on Linux if libmemkind.so library is accessible (dynamic library only, no support for static libraries). Only used stable API (hbwmalloc) of the memkind library though we may consider using experimental API in future. The ICV def-allocator-var is implemented per implicit task similar to place-partition-var. In the absence of a requested allocator, the uses the default allocator. Predefined allocators (the only ones currently available) are made similar for C and Fortran, - pointers (long integers) with values 1 to 8. Patch by Andrey Churbanov Differential Revision: https://reviews.llvm.org/D51232 git-svn-id: https://llvm.org/svn/llvm-project/openmp/trunk@341687 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'runtime/tools')
-rwxr-xr-xruntime/tools/generate-def.pl6
1 files changed, 4 insertions, 2 deletions
diff --git a/runtime/tools/generate-def.pl b/runtime/tools/generate-def.pl
index 7c2b0f3..f6e4a4c 100755
--- a/runtime/tools/generate-def.pl
+++ b/runtime/tools/generate-def.pl
@@ -110,12 +110,14 @@ sub process(\%) {
if ( not $entries->{ $entry }->{ obsolete } ) {
my $ordinal = $entries->{ $entry }->{ ordinal };
if ( $entry =~ m{\A[ok]mp_} ) {
- if ( not defined( $ordinal ) or $ordinal eq "DATA" ) {
+ if ( not defined( $ordinal ) ) {
runtime_error(
"Bad entry \"$entry\": ordinal number is not specified."
);
}; # if
- $entries->{ uc( $entry ) } = { ordinal => 1000 + $ordinal };
+ if ( $ordinal ne "DATA" ) {
+ $entries->{ uc( $entry ) } = { ordinal => 1000 + $ordinal };
+ }
}; # if
}; # if
}; # foreach