On Mon, Oct 06, 2014 at 07:53:17PM +0400, Ilya Verbin wrote:
> 2014-10-06  Jakub Jelinek  <ja...@redhat.com>
>           Ilya Verbin  <ilya.ver...@intel.com>
>           Thomas Schwinge  <tho...@codesourcery.com>
>           Andrey Turetskiy  <andrey.turets...@intel.com>
> 
> libgomp/
>       * libgomp.map (GOMP_4.0.1): New symbol version.
>       Add GOMP_offload_register.
>       * libgomp_target.h: New file.
>       * splay-tree.h: New file.
>       * target.c: Include config.h, libgomp_target.h, dlfcn.h, splay-tree.h.
>       (gomp_target_init): New forward declaration.
>       (gomp_is_initialized): New static variable.
>       (splay_tree_node, splay_tree, splay_tree_key): New typedefs.
>       (struct target_mem_desc, struct splay_tree_key_s, offload_image_descr):
>       New structures.
>       (offload_images, num_offload_images, devices, num_devices): New static
>       variables.
>       (splay_compare): New static function.
>       (struct gomp_device_descr): New structure.
>       (gomp_get_num_devices): Call gomp_target_init.
>       (resolve_device, gomp_map_vars_existing, gomp_map_vars, gomp_unmap_tgt)
>       (gomp_unmap_vars, gomp_update, gomp_init_device): New static functions.
>       (GOMP_offload_register): New function.
>       (GOMP_target): Arrange for host callback to be performed in a separate
>       initial thread and contention group, inheriting ICVs from
>       gomp_global_icv etc.  Call gomp_map_vars and gomp_unmap_vars.
>       Add device initialization and lookup for target function in splay tree.
>       (GOMP_target_data): Add device initialization and call gomp_map_vars.
>       (GOMP_target_end_data): Call gomp_unmap_vars.
>       (GOMP_target_update): Add device initialization and call gomp_update.
>       (gomp_load_plugin_for_device, gomp_register_images_for_device)
>       (gomp_target_init): New static functions.

This looks good to me.

        Jakub

Reply via email to