aco: use v1 definition for v_interp_p1lv_f16
The result of the first interpolation step is always fp32.
Fixes: 1647e098e9 ("aco: implement 16-bit interp")
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28435>
This commit is contained in:
@@ -5504,7 +5504,7 @@ emit_interp_instr(isel_context* ctx, unsigned idx, unsigned component, Temp src,
|
||||
Builder::Result interp_p1 =
|
||||
bld.vintrp(aco_opcode::v_interp_mov_f32, bld.def(v1), Operand::c32(2u) /* P0 */,
|
||||
bld.m0(prim_mask), idx, component);
|
||||
interp_p1 = bld.vintrp(aco_opcode::v_interp_p1lv_f16, bld.def(v2b), coord1,
|
||||
interp_p1 = bld.vintrp(aco_opcode::v_interp_p1lv_f16, bld.def(v1), coord1,
|
||||
bld.m0(prim_mask), interp_p1, idx, component);
|
||||
bld.vintrp(aco_opcode::v_interp_p2_legacy_f16, Definition(dst), coord2, bld.m0(prim_mask),
|
||||
interp_p1, idx, component);
|
||||
|
||||
Reference in New Issue
Block a user