zink: stop exporting PIPE_SHADER_CAP_FP16_DERIVATIVES
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>
Tue, 26 Oct 2021 15:05:31 +0000 (11:05 -0400)
committerMarge Bot <eric+marge@anholt.net>
Tue, 26 Oct 2021 17:33:47 +0000 (17:33 +0000)
spirv doesn't support this

fixes #5561

cc: mesa-stable

Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13530>

src/gallium/drivers/zink/zink_screen.c

index 1020763..c7606e8 100644 (file)
@@ -827,8 +827,7 @@ zink_get_shader_param(struct pipe_screen *pscreen,
       return screen->info.feats11.uniformAndStorageBuffer16BitAccess ||
              (screen->info.have_KHR_16bit_storage && screen->info.storage_16bit_feats.uniformAndStorageBuffer16BitAccess);
    case PIPE_SHADER_CAP_FP16_DERIVATIVES:
-      return screen->info.feats11.storageInputOutput16 ||
-             (screen->info.have_KHR_16bit_storage && screen->info.storage_16bit_feats.storageInputOutput16);
+      return 0; //spirv requires 32bit derivative srcs and dests
    case PIPE_SHADER_CAP_FP16:
       return screen->info.feats12.shaderFloat16 ||
              (screen->info.have_KHR_shader_float16_int8 &&