summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/zink/zink_compiler.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/zink/zink_compiler.c')
-rw-r--r--src/gallium/drivers/zink/zink_compiler.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/zink/zink_compiler.c b/src/gallium/drivers/zink/zink_compiler.c
index 55e49c72185..69d611522eb 100644
--- a/src/gallium/drivers/zink/zink_compiler.c
+++ b/src/gallium/drivers/zink/zink_compiler.c
@@ -338,8 +338,10 @@ zink_shader_compile(struct zink_screen *screen, struct zink_shader *zs, struct z
if (zs->streamout.so_info_slots)
streamout = &zs->streamout;
- nir = nir_shader_clone(NULL, zs->nir);
- NIR_PASS_V(nir, nir_lower_clip_halfz);
+ if (!zink_vs_key(key)->clip_halfz) {
+ nir = nir_shader_clone(NULL, zs->nir);
+ NIR_PASS_V(nir, nir_lower_clip_halfz);
+ }
}
} else {
if (!zink_fs_key(key)->samples &&