diff options
Diffstat (limited to 'src/gallium/drivers/freedreno/ir3/ir3.c')
-rw-r--r-- | src/gallium/drivers/freedreno/ir3/ir3.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/ir3/ir3.c b/src/gallium/drivers/freedreno/ir3/ir3.c index e59f10dab93..04c02340940 100644 --- a/src/gallium/drivers/freedreno/ir3/ir3.c +++ b/src/gallium/drivers/freedreno/ir3/ir3.c @@ -258,6 +258,7 @@ static int emit_cat2(struct ir3_instruction *instr, void *ptr, cat2->dst = reg(dst, info, instr->repeat, IR3_REG_R | IR3_REG_EI | IR3_REG_HALF); cat2->repeat = instr->repeat; + cat2->sat = !!(instr->flags & IR3_INSTR_SAT); cat2->ss = !!(instr->flags & IR3_INSTR_SS); cat2->ul = !!(instr->flags & IR3_INSTR_UL); cat2->dst_half = !!((src1->flags ^ dst->flags) & IR3_REG_HALF); @@ -354,6 +355,7 @@ static int emit_cat3(struct ir3_instruction *instr, void *ptr, cat3->dst = reg(dst, info, instr->repeat, IR3_REG_R | IR3_REG_HALF); cat3->repeat = instr->repeat; + cat3->sat = !!(instr->flags & IR3_INSTR_SAT); cat3->ss = !!(instr->flags & IR3_INSTR_SS); cat3->ul = !!(instr->flags & IR3_INSTR_UL); cat3->dst_half = !!((src_flags ^ dst->flags) & IR3_REG_HALF); @@ -401,6 +403,7 @@ static int emit_cat4(struct ir3_instruction *instr, void *ptr, cat4->dst = reg(dst, info, instr->repeat, IR3_REG_R | IR3_REG_HALF); cat4->repeat = instr->repeat; + cat4->sat = !!(instr->flags & IR3_INSTR_SAT); cat4->ss = !!(instr->flags & IR3_INSTR_SS); cat4->ul = !!(instr->flags & IR3_INSTR_UL); cat4->dst_half = !!((src->flags ^ dst->flags) & IR3_REG_HALF); |