diff options
Diffstat (limited to 'video/out')
-rw-r--r-- | video/out/gpu/spirv.c | 8 | ||||
-rw-r--r-- | video/out/vulkan/spirv_nvidia.c | 54 |
2 files changed, 0 insertions, 62 deletions
diff --git a/video/out/gpu/spirv.c b/video/out/gpu/spirv.c index 06d33686d0..ee11d601a3 100644 --- a/video/out/gpu/spirv.c +++ b/video/out/gpu/spirv.c @@ -5,22 +5,17 @@ #include "config.h" extern const struct spirv_compiler_fns spirv_shaderc; -extern const struct spirv_compiler_fns spirv_nvidia_builtin; // in probe-order enum { SPIRV_AUTO = 0, SPIRV_SHADERC, // generally preferred, but not packaged everywhere - SPIRV_NVIDIA, // can be useful for testing, only available on nvidia }; static const struct spirv_compiler_fns *compilers[] = { #if HAVE_SHADERC [SPIRV_SHADERC] = &spirv_shaderc, #endif -#if HAVE_VULKAN - [SPIRV_NVIDIA] = &spirv_nvidia_builtin, -#endif }; static const struct m_opt_choice_alternatives compiler_choices[] = { @@ -28,9 +23,6 @@ static const struct m_opt_choice_alternatives compiler_choices[] = { #if HAVE_SHADERC {"shaderc", SPIRV_SHADERC}, #endif -#if HAVE_VULKAN - {"nvidia", SPIRV_NVIDIA}, -#endif {0} }; diff --git a/video/out/vulkan/spirv_nvidia.c b/video/out/vulkan/spirv_nvidia.c deleted file mode 100644 index 6cc43a5619..0000000000 --- a/video/out/vulkan/spirv_nvidia.c +++ /dev/null @@ -1,54 +0,0 @@ -#include "video/out/gpu/spirv.h" - -#include "common.h" -#include "context.h" -#include "utils.h" - -static bool nv_glsl_compile(struct spirv_compiler *spirv, void *tactx, - enum glsl_shader type, const char *glsl, - struct bstr *out_spirv) -{ - // The nvidia extension literally assumes your SPIRV is in fact valid GLSL - *out_spirv = bstr0(glsl); - return true; -} - -static bool nv_glsl_init(struct ra_ctx *ctx) -{ - struct mpvk_ctx *vk = ra_vk_ctx_get(ctx); - if (!vk) - return false; - - struct spirv_compiler *spv = ctx->spirv; - spv->required_ext = VK_NV_GLSL_SHADER_EXTENSION_NAME; - spv->glsl_version = 450; // impossible to query, so hard-code it.. - spv->ra_caps = RA_CAP_NESTED_ARRAY; - - // Make sure the extension is actually available, and fail gracefully - // if it isn't - VkExtensionProperties *props = NULL; - uint32_t extnum = 0; - VK(vkEnumerateDeviceExtensionProperties(vk->physd, NULL, &extnum, NULL)); - props = talloc_array(NULL, VkExtensionProperties, extnum); - VK(vkEnumerateDeviceExtensionProperties(vk->physd, NULL, &extnum, props)); - - bool ret = true; - for (int e = 0; e < extnum; e++) { - if (strncmp(props[e].extensionName, spv->required_ext, - VK_MAX_EXTENSION_NAME_SIZE) == 0) - goto done; - } - -error: - MP_VERBOSE(ctx, "Device doesn't support VK_NV_glsl_shader, skipping..\n"); - ret = false; - -done: - talloc_free(props); - return ret; -} - -const struct spirv_compiler_fns spirv_nvidia_builtin = { - .compile_glsl = nv_glsl_compile, - .init = nv_glsl_init, -}; |