mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 22:49:13 +02:00
pan/bit: Add BI_REDUCE_FMA interp
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4615>
This commit is contained in:
parent
68b4e708f1
commit
5546d1958b
1 changed files with 15 additions and 0 deletions
|
|
@ -472,6 +472,21 @@ bit_step(struct bit_state *s, bi_instruction *ins, bool FMA)
|
|||
case BI_MOV:
|
||||
bpoly(mov);
|
||||
|
||||
case BI_REDUCE_FMA: {
|
||||
if (ins->src_types[0] != nir_type_float32)
|
||||
unreachable("Unknown reduce type");
|
||||
|
||||
if (ins->op.reduce == BI_REDUCE_ADD_FREXPM) {
|
||||
int _nop = 0;
|
||||
float f = frexp_log(srcs[1].f32, &_nop);
|
||||
dest.f32 = srcs[0].f32 + f;
|
||||
} else {
|
||||
unreachable("Unknown reduce");
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case BI_SPECIAL: {
|
||||
assert(nir_alu_type_get_base_type(ins->dest_type) == nir_type_float);
|
||||
assert(nir_alu_type_get_base_type(ins->dest_type) != nir_type_float64);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue