comparison libgomp/libgomp.h @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children 1830386684a0
comparison
equal deleted inserted replaced
111:04ced10e8804 131:84e7813d76e9
1 /* Copyright (C) 2005-2017 Free Software Foundation, Inc. 1 /* Copyright (C) 2005-2018 Free Software Foundation, Inc.
2 Contributed by Richard Henderson <rth@redhat.com>. 2 Contributed by Richard Henderson <rth@redhat.com>.
3 3
4 This file is part of the GNU Offloading and Multi Processing Library 4 This file is part of the GNU Offloading and Multi Processing Library
5 (libgomp). 5 (libgomp).
6 6
42 #endif 42 #endif
43 43
44 #include "config.h" 44 #include "config.h"
45 #include "gstdint.h" 45 #include "gstdint.h"
46 #include "libgomp-plugin.h" 46 #include "libgomp-plugin.h"
47 #include "gomp-constants.h"
47 48
48 #ifdef HAVE_PTHREAD_H 49 #ifdef HAVE_PTHREAD_H
49 #include <pthread.h> 50 #include <pthread.h>
50 #endif 51 #endif
51 #include <stdbool.h> 52 #include <stdbool.h>
365 extern unsigned long gomp_places_list_len; 366 extern unsigned long gomp_places_list_len;
366 extern unsigned int gomp_num_teams_var; 367 extern unsigned int gomp_num_teams_var;
367 extern int gomp_debug_var; 368 extern int gomp_debug_var;
368 extern int goacc_device_num; 369 extern int goacc_device_num;
369 extern char *goacc_device_type; 370 extern char *goacc_device_type;
371 extern int goacc_default_dims[GOMP_DIM_MAX];
370 372
371 enum gomp_task_kind 373 enum gomp_task_kind
372 { 374 {
373 /* Implicit task. */ 375 /* Implicit task. */
374 GOMP_TASK_IMPLICIT, 376 GOMP_TASK_IMPLICIT,
849 struct target_mem_desc *tgt; 851 struct target_mem_desc *tgt;
850 /* Offset from tgt->tgt_start to the start of the target object. */ 852 /* Offset from tgt->tgt_start to the start of the target object. */
851 uintptr_t tgt_offset; 853 uintptr_t tgt_offset;
852 /* Reference count. */ 854 /* Reference count. */
853 uintptr_t refcount; 855 uintptr_t refcount;
856 /* Dynamic reference count. */
857 uintptr_t dynamic_refcount;
854 /* Pointer to the original mapping of "omp declare target link" object. */ 858 /* Pointer to the original mapping of "omp declare target link" object. */
855 splay_tree_key link_key; 859 splay_tree_key link_key;
856 }; 860 };
857 861
858 /* The comparison function. */ 862 /* The comparison function. */
987 GOMP_MAP_VARS_DATA, 991 GOMP_MAP_VARS_DATA,
988 GOMP_MAP_VARS_ENTER_DATA 992 GOMP_MAP_VARS_ENTER_DATA
989 }; 993 };
990 994
991 extern void gomp_acc_insert_pointer (size_t, void **, size_t *, void *); 995 extern void gomp_acc_insert_pointer (size_t, void **, size_t *, void *);
992 extern void gomp_acc_remove_pointer (void *, bool, int, int); 996 extern void gomp_acc_remove_pointer (void *, size_t, bool, int, int, int);
997 extern void gomp_acc_declare_allocate (bool, size_t, void **, size_t *,
998 unsigned short *);
993 999
994 extern struct target_mem_desc *gomp_map_vars (struct gomp_device_descr *, 1000 extern struct target_mem_desc *gomp_map_vars (struct gomp_device_descr *,
995 size_t, void **, void **, 1001 size_t, void **, void **,
996 size_t *, void *, bool, 1002 size_t *, void *, bool,
997 enum gomp_map_vars_kind); 1003 enum gomp_map_vars_kind);
998 extern void gomp_unmap_vars (struct target_mem_desc *, bool); 1004 extern void gomp_unmap_vars (struct target_mem_desc *, bool);
999 extern void gomp_init_device (struct gomp_device_descr *); 1005 extern void gomp_init_device (struct gomp_device_descr *);
1000 extern void gomp_free_memmap (struct splay_tree_s *); 1006 extern void gomp_free_memmap (struct splay_tree_s *);
1001 extern void gomp_unload_device (struct gomp_device_descr *); 1007 extern void gomp_unload_device (struct gomp_device_descr *);
1008 extern bool gomp_remove_var (struct gomp_device_descr *, splay_tree_key);
1002 1009
1003 /* work.c */ 1010 /* work.c */
1004 1011
1005 extern void gomp_init_work_share (struct gomp_work_share *, bool, unsigned); 1012 extern void gomp_init_work_share (struct gomp_work_share *, bool, unsigned);
1006 extern void gomp_fini_work_share (struct gomp_work_share *); 1013 extern void gomp_fini_work_share (struct gomp_work_share *);