pan/bi: Pack second argument of F32_TO_F16

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5307>
This commit is contained in:
Alyssa Rosenzweig
2020-06-02 19:28:55 -04:00
committed by Marge Bot
parent 323eecaf13
commit 8a4efe2d73

View File

@@ -829,17 +829,19 @@ bi_pack_convert(bi_instruction *ins, bi_registers *regs, bool FMA)
assert((MAX2(from_size, to_size) / MIN2(from_size, to_size)) <= 2);
/* f32 to f16 is special */
if (from_size == 32 && to_size == 16 && from_base == nir_type_float && to_base == from_base) {
/* TODO: second vectorized source? */
if (from_size == 32 && to_size == 16 && from_base == to_base) {
/* TODO uint/int */
assert(from_base == nir_type_float);
struct bifrost_fma_2src pfma = {
.src0 = bi_get_src(ins, regs, 0),
.src1 = BIFROST_SRC_STAGE, /* 0 */
.src1 = bi_get_src(ins, regs, 1),
.op = BIFROST_FMA_FLOAT32_TO_16
};
struct bifrost_add_2src padd = {
.src0 = bi_get_src(ins, regs, 0),
.src1 = BIFROST_SRC_STAGE, /* 0 */
.src1 = bi_get_src(ins, regs, 1),
.op = BIFROST_ADD_FLOAT32_TO_16
};