nvc0: enable spirv caps with nir
authorKarol Herbst <kherbst@redhat.com>
Tue, 16 Jun 2020 09:31:13 +0000 (11:31 +0200)
committerMarge Bot <eric+marge@anholt.net>
Mon, 22 Jun 2020 11:41:31 +0000 (11:41 +0000)
This enables the SPIR-V GL extensions moving us a step closer to GL 4.6.

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Tested-by: Ben Skeggs <bskeggs@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5512>

docs/relnotes/new_features.txt
src/gallium/drivers/nouveau/nvc0/nvc0_screen.c

index e6f1499abff395fb8c6cad7b08931cb3c2055fcf..a0f3789877bd5b92e4b715ca7605d2908e236412 100644 (file)
@@ -10,3 +10,5 @@ VK_EXT_shader_demote_to_helper_invocation on RADV/LLVM.
 VK_EXT_subgroup_size_control on RADV/ACO.
 VK_GOOGLE_user_type on ANV and RADV.
 VK_KHR_shader_subgroup_extended_types on RADV/ACO.
+GL_ARB_gl_spirv on nvc0/nir.
+GL_ARB_spirv_extensions on nvc0/nir.
index c3233632790c05e20fc08b3035349a04dbd4e169..9e8a3e5c3e369228877b9f8171ecee12b2b6c412 100644 (file)
@@ -324,6 +324,8 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
       return class_3d >= GP100_3D_CLASS;
 
    /* caps has to be turned on with nir */
+   case PIPE_CAP_GL_SPIRV:
+   case PIPE_CAP_GL_SPIRV_VARIABLE_POINTERS:
    case PIPE_CAP_INT64_DIVMOD:
       return screen->prefer_nir ? 1 : 0;
 
@@ -391,7 +393,6 @@ nvc0_screen_get_param(struct pipe_screen *pscreen, enum pipe_cap param)
    case PIPE_CAP_OPENCL_INTEGER_FUNCTIONS: /* could be done */
    case PIPE_CAP_INTEGER_MULTIPLY_32X16: /* could be done */
    case PIPE_CAP_FRONTEND_NOOP:
-   case PIPE_CAP_GL_SPIRV:
    case PIPE_CAP_SHADER_SAMPLES_IDENTICAL:
    case PIPE_CAP_VIEWPORT_TRANSFORM_LOWERED:
    case PIPE_CAP_PSIZ_CLAMPED: