nir: fix lower_wpos for 16-bit fddy

Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5002>
This commit is contained in:
Marek Olšák 2020-05-11 02:56:47 -04:00 committed by Marge Bot
parent 92333c6d1a
commit a6916d1ce8
1 changed files with 5 additions and 2 deletions

View File

@ -267,8 +267,11 @@ lower_fddy(lower_wpos_ytransform_state *state, nir_alu_instr *fddy)
b->cursor = nir_before_instr(&fddy->instr);
p = nir_ssa_for_alu_src(b, fddy, 0);
trans = get_transform(state);
pt = nir_fmul(b, p, nir_channel(b, trans, 0));
trans = nir_channel(b, get_transform(state), 0);
if (p->bit_size == 16)
trans = nir_f2f16(b, trans);
pt = nir_fmul(b, p, trans);
nir_instr_rewrite_src(&fddy->instr,
&fddy->src[0].src,