[PATCH 5/n] OpenMP 4.0 offloading infrastructure: libgomp

Thomas Schwinge thomas@codesourcery.com
Fri Dec 12 09:58:00 GMT 2014


Hi!

I know, I'm a little late, but:

On Mon, 6 Oct 2014 19:53:17 +0400, Ilya Verbin <iverbin@gmail.com> wrote:
> This patch adds plugin support to libgomp, as well as memory mapping and
> interaction with target devices through plugin's interface.

> libgomp/

> 	* libgomp_target.h: New file.

> --- /dev/null
> +++ b/libgomp/libgomp_target.h
> @@ -0,0 +1,44 @@
> +/* Copyright (C) 2014 Free Software Foundation, Inc.
> +
> +   This file is part of the GNU OpenMP Library (libgomp).

> +#ifndef LIBGOMP_TARGET_H
> +#define LIBGOMP_TARGET_H 1
> +
> +/* Type of offload target device.  */
> +enum offload_target_type
> +{
> +  OFFLOAD_TARGET_TYPE_HOST,
> +  OFFLOAD_TARGET_TYPE_INTEL_MIC
> +};
> +
> +/* Auxiliary struct, used for transferring a host-target address range mapping
> +   from plugin to libgomp.  */
> +struct mapping_table
> +{
> +  uintptr_t host_start;
> +  uintptr_t host_end;
> +  uintptr_t tgt_start;
> +  uintptr_t tgt_end;
> +};
> +
> +#endif /* LIBGOMP_TARGET_H */

Doesn't this file conceptually serve the same purpose as the
[top-level]/include/libgomp-constants.h file that we began using on
gomp-4_0-branch,
<https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;a=blob;f=include/gomp-constants.h;hb=refs/remotes/gomp-4_0-branch>
-- that is, share "stuff" (constants, data structures -- so the
libgomp-constants.h name also isn't totally appropriate...) between the
complier proper and libgomp (including offloading plugins living
elsewhere)?  I think we should settle on one such file.  For the reason
of encapsulation,
<http://news.gmane.org/find-root.php?message_id=%3C87k31x4321.fsf%40kepler.schwinge.homeip.net%3E>,
I'd prefer this to live outside of libgomp, so what about a generic
[top-level]/include/libgomp.h file?


Grüße,
 Thomas
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 472 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20141212/ac4aa55c/attachment.sig>


More information about the Gcc-patches mailing list