Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Reviewed-by: Eric Anholt <eric@anholt.net>
if (!is_mov(p))
break;
+ if (p->alu.saturate)
+ break;
+
/* cant apply abs to const src, const src only for alu */
if (p->src[0].type == IR2_SRC_CONST &&
(src->abs || instr->type != IR2_ALU))
p->is_ssa = true;
p->ssa.ncomp = 0;
memset(p->ssa.comp, 0, sizeof(p->ssa.comp));
+ p->alu.saturate |= instr->alu.saturate;
switch (instr->alu.vector_opc) {
case PRED_SETE_PUSHv ... PRED_SETGTE_PUSHv: