diff options
author | Emil Velikov <[email protected]> | 2016-07-27 14:02:53 +0100 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2016-08-18 14:55:42 +0100 |
commit | 49394e8d7713fa42bccc273ed4c060149291614c (patch) | |
tree | 66e32ccf8ff5d2b2ef35ad1d4d2fc0957aed499e /src/intel/vulkan | |
parent | 1cdb6ca40b8a2daa09ce5c972da3a96e60aceaed (diff) |
anv: do not export the Vulkan API
With version 1 of the Loader interface there is an internal/private symbol
(vk_icdGetInstanceProcAddr) which is used to retrieve all the API from the
Vulkan entrypoints from the ICD. Implying that exposing the Vulkan API is not
recommended.
Version 2 goes a step further explicitly forbiding the ICD from exposing Vulkan
symbols (and adding a negotiation API)
As a reference:
- Nvidia 367.35
Missing negotiation API - version 1.
Exposes only vk_icdGetInstanceProcAddr.
- AMD 16.30.3.306809
Have negotiation API - version 2,
Exposes vk_icdGetInstanceProcAddr.
Exposes a couple of Vulkan entry points - seems to be in violation with the spec.
Cc: "12.0" <[email protected]>
Cc: Christian König <[email protected]>
Signed-off-by: Emil Velikov <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/intel/vulkan')
-rw-r--r-- | src/intel/vulkan/anv_entrypoints_gen.py | 11 |
1 files changed, 0 insertions, 11 deletions
diff --git a/src/intel/vulkan/anv_entrypoints_gen.py b/src/intel/vulkan/anv_entrypoints_gen.py index c86548fc1db..dcf25ee76c6 100644 --- a/src/intel/vulkan/anv_entrypoints_gen.py +++ b/src/intel/vulkan/anv_entrypoints_gen.py @@ -253,17 +253,6 @@ anv_resolve_entrypoint(uint32_t index) } """ -# Now output ifuncs and their resolve helpers for all entry points. The -# resolve helper calls resolve_entrypoint() with the entry point index, which -# lets the resolver look it up in the table. - -for type, name, args, num, h in entrypoints: - print_guard_start(name) - print "static void *resolve_%s(void) { return anv_resolve_entrypoint(%d); }" % (name, num) - print "%s vk%s%s\n __attribute__ ((ifunc (\"resolve_%s\"), visibility (\"default\")));\n" % (type, name, args, name) - print_guard_end(name) - - # Now generate the hash table used for entry point look up. This is a # uint16_t table of entry point indices. We use 0xffff to indicate an entry # in the hash table is empty. |