OpenACC deviceptr clause: Remove bogus assertion.
[official-gcc.git] / include / gomp-constants.h
blobe600766fe1907c907fbcd7cc80908d69ac0870a8
1 /* Copyright (C) 2014 Free Software Foundation, Inc.
2 Contributed by Mentor Embedded.
4 This file is part of the GNU OpenMP Library (libgomp).
6 Libgomp is free software; you can redistribute it and/or modify it
7 under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 3, or (at your option)
9 any later version.
11 Libgomp is distributed in the hope that it will be useful, but WITHOUT ANY
12 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13 FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14 more details.
16 Under Section 7 of GPL version 3, you are granted additional
17 permissions described in the GCC Runtime Library Exception, version
18 3.1, as published by the Free Software Foundation.
20 You should have received a copy of the GNU General Public License and
21 a copy of the GCC Runtime Library Exception along with this program;
22 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
23 <http://www.gnu.org/licenses/>. */
25 #ifndef GOMP_CONSTANTS_H
26 #define GOMP_CONSTANTS_H 1
28 /* Enumerated variable mapping types used to communicate between GCC and
29 libgomp. These values are used for both OpenMP and OpenACC. */
31 #define GOMP_MAP_ALLOC 0x00
32 #define GOMP_MAP_ALLOC_TO 0x01
33 #define GOMP_MAP_ALLOC_FROM 0x02
34 #define GOMP_MAP_ALLOC_TOFROM 0x03
35 #define GOMP_MAP_POINTER 0x04
36 #define GOMP_MAP_TO_PSET 0x05
37 #define GOMP_MAP_FORCE_ALLOC 0x08
38 #define GOMP_MAP_FORCE_TO 0x09
39 #define GOMP_MAP_FORCE_FROM 0x0a
40 #define GOMP_MAP_FORCE_TOFROM 0x0b
41 #define GOMP_MAP_FORCE_PRESENT 0x0c
42 #define GOMP_MAP_FORCE_DEALLOC 0x0d
43 #define GOMP_MAP_FORCE_DEVICEPTR 0x0e
44 #define GOMP_MAP_FORCE_PRIVATE 0x18
45 #define GOMP_MAP_FORCE_FIRSTPRIVATE 0x19
47 #define GOMP_MAP_COPYTO_P(X) \
48 ((X) == GOMP_MAP_ALLOC_TO || (X) == GOMP_MAP_FORCE_TO)
50 #define GOMP_MAP_COPYFROM_P(X) \
51 ((X) == GOMP_MAP_ALLOC_FROM || (X) == GOMP_MAP_FORCE_FROM)
53 #define GOMP_MAP_TOFROM_P(X) \
54 ((X) == GOMP_MAP_ALLOC_TOFROM || (X) == GOMP_MAP_FORCE_TOFROM)
56 #define GOMP_MAP_POINTER_P(X) \
57 ((X) == GOMP_MAP_POINTER)
59 #define GOMP_IF_CLAUSE_FALSE -2
61 /* Canonical list of target type codes for OpenMP/OpenACC. */
62 #define GOMP_TARGET_NONE 0
63 #define GOMP_TARGET_HOST 2
64 #define GOMP_TARGET_HOST_NONSHM 3
65 #define GOMP_TARGET_NOT_HOST 4
66 #define GOMP_TARGET_NVIDIA_PTX 5
67 #define GOMP_TARGET_INTEL_MIC 6
69 #endif