panfrost: Explicitly convert to 32-bit for logic-ops

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reported-by: Icecream95 <ixn@keemail.me>
Fixes: 19b4e586f6 ("panfrost: Switch to pan_lower_framebuffer")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5289>
This commit is contained in:
Alyssa Rosenzweig 2020-06-01 20:34:34 -04:00 committed by Marge Bot
parent 6d00eaf733
commit 3e4a0c2bca

View file

@ -215,6 +215,11 @@ nir_blend_logicop(
const struct util_format_description *format_desc =
util_format_description(options.format);
if (options.half) {
src = nir_f2f32(b, src);
dst = nir_f2f32(b, dst);
}
assert(src->num_components <= 4);
assert(dst->num_components <= 4);
@ -235,7 +240,12 @@ nir_blend_logicop(
out = nir_iand(b, out, nir_build_imm(b, 4, 32, mask));
}
return nir_format_unorm_to_float(b, out, bits);
out = nir_format_unorm_to_float(b, out, bits);
if (options.half)
out = nir_f2f16(b, out);
return out;
}
/* Given a blend state, the source color, and the destination color,