zink: fix PIPE_SHADER_CAP_FP16_DERIVATIVES handling

this requires 16bit io, not just alus

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12634>
This commit is contained in:
Mike Blumenkrantz 2021-09-01 09:35:58 -04:00 committed by Marge Bot
parent 5ce3fa0100
commit 71aa4adba3

View file

@ -816,8 +816,10 @@ zink_get_shader_param(struct pipe_screen *pscreen,
case PIPE_SHADER_CAP_GLSL_16BIT_CONSTS:
return 0; /* not implemented */
case PIPE_SHADER_CAP_FP16:
case PIPE_SHADER_CAP_FP16_DERIVATIVES:
return screen->info.feats11.storageInputOutput16 ||
(screen->info.have_KHR_16bit_storage && screen->info.storage_16bit_feats.storageInputOutput16);
case PIPE_SHADER_CAP_FP16:
return screen->info.feats12.shaderFloat16 ||
(screen->info.have_KHR_shader_float16_int8 &&
screen->info.shader_float16_int8_feats.shaderFloat16);