mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-26 21:30:09 +01:00
freedreno/ir3: indicate that clipdist arrays are in use
We expose the compact array cap, which means that we get compact clipdist arrays. Indicate this to the lowering pass so that it works for gl_ClipDistance from fs, among others. Fixes, among others, on a420, tests/spec/glsl-1.30/execution/clipping/fs-clip-distance-interpolated.shader_test Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Matt Turner <mattst88@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/13891>
This commit is contained in:
parent
b7f423006a
commit
13fb587b8a
2 changed files with 2 additions and 3 deletions
|
|
@ -478,7 +478,6 @@ spec@nv_copy_image@nv_copy_image-formats,Fail
|
|||
spec@nv_copy_image@nv_copy_image-formats@Source: GL_DEPTH32F_STENCIL8/Destination: GL_DEPTH32F_STENCIL8,Fail
|
||||
spec@oes_egl_image_external_essl3@oes_egl_image_external_essl3,Crash
|
||||
spec@oes_egl_image_external_essl3@oes_egl_image_external_essl3@oes_egl_image_external_essl3_imageLoad,Fail
|
||||
spec@glsl-1.30@execution@clipping@fs-clip-distance-interpolated,Crash
|
||||
spec@glsl-1.30@execution@fs-large-local-array-vec2,Fail
|
||||
spec@glsl-1.30@execution@fs-large-local-array-vec3,Fail
|
||||
spec@glsl-1.30@execution@fs-large-local-array-vec4,Fail
|
||||
|
|
|
|||
|
|
@ -668,7 +668,7 @@ ir3_nir_lower_variant(struct ir3_shader_variant *so, nir_shader *s)
|
|||
if (s->info.stage == MESA_SHADER_VERTEX) {
|
||||
if (so->key.ucp_enables)
|
||||
progress |=
|
||||
OPT(s, nir_lower_clip_vs, so->key.ucp_enables, false, false, NULL);
|
||||
OPT(s, nir_lower_clip_vs, so->key.ucp_enables, false, true, NULL);
|
||||
} else if (s->info.stage == MESA_SHADER_FRAGMENT) {
|
||||
bool layer_zero =
|
||||
so->key.layer_zero && (s->info.inputs_read & VARYING_BIT_LAYER);
|
||||
|
|
@ -676,7 +676,7 @@ ir3_nir_lower_variant(struct ir3_shader_variant *so, nir_shader *s)
|
|||
so->key.view_zero && (s->info.inputs_read & VARYING_BIT_VIEWPORT);
|
||||
|
||||
if (so->key.ucp_enables && !so->shader->compiler->has_clip_cull)
|
||||
progress |= OPT(s, nir_lower_clip_fs, so->key.ucp_enables, false);
|
||||
progress |= OPT(s, nir_lower_clip_fs, so->key.ucp_enables, true);
|
||||
if (layer_zero || view_zero)
|
||||
progress |= OPT(s, ir3_nir_lower_view_layer_id, layer_zero, view_zero);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue