diff options
author | Simon Richter <Simon.Richter@hogyros.de> | 2013-04-03 20:32:45 +0200 |
---|---|---|
committer | Zhigang Gong <zhigang.gong@linux.intel.com> | 2013-04-18 11:21:01 +0800 |
commit | 0118a372252180fb6b8c597dd0874fb31b477435 (patch) | |
tree | fac60e7178e2948bf4d8c2aff8e906ff18b9cc8e /src/cl_program.h | |
parent | cb618258d42fbde26bcb5f4437e2ccec1db4003f (diff) |
Implement KHR ICD extension
This adds a pointer to the dispatch table at the beginning of every object
of type
- cl_command_queue
- cl_context
- cl_device_id
- cl_event
- cl_kernel
- cl_mem
- cl_platform_id
- cl_program
- cl_sampler
as required by the ICD specification. The layout of the dispatch table
comes from the OpenCL ICD loader by Brice Videau <brice.videau@imag.fr> and
Vincent Danjean <Vincent.Danjean@ens-lyon.org>.
To avoid dispatch table entries being overwritten with the ICD loader's
implementations of the CL functions (as would be the proper behaviour for
the ELF loader), the -Bsymbolic option is given to the linker.
Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
Diffstat (limited to 'src/cl_program.h')
-rw-r--r-- | src/cl_program.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/cl_program.h b/src/cl_program.h index fd006210..161d8587 100644 --- a/src/cl_program.h +++ b/src/cl_program.h @@ -38,6 +38,7 @@ enum { /* This maps an OCL file containing some kernels */ struct _cl_program { + DEFINE_ICD(dispatch) uint64_t magic; /* To identify it as a program */ volatile int ref_n; /* We reference count this object */ gbe_program opaque; /* (Opaque) program as ouput by the compiler */ |