gallivm: passing fp16_split_fp64 to fp16 lowering.

This causes lavapipe to use the split code and fixes accuracy
for CTS.

Fixes dEQP-VK.glsl.builtin.precision_fconvert.f64_to_f16*

Cc: mesa-stable
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27228>
This commit is contained in:
Dave Airlie
2024-01-24 17:21:50 +10:00
committed by Marge Bot
parent c2a25cf75c
commit 38e92556a0

View File

@@ -2967,7 +2967,7 @@ lp_build_opt_nir(struct nir_shader *nir)
}
NIR_PASS_V(nir, nir_lower_flrp, 16|32|64, true);
NIR_PASS_V(nir, nir_lower_fp16_casts, nir_lower_fp16_all);
NIR_PASS_V(nir, nir_lower_fp16_casts, nir_lower_fp16_all | nir_lower_fp16_split_fp64);
do {
progress = false;
NIR_PASS(progress, nir, nir_opt_constant_folding);