From: Christoph Bumiller Date: Wed, 18 Aug 2010 12:36:47 +0000 (+0200) Subject: nv50: emit predicate for interp X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=eaab76457818fad0926b84c663440e8987e1f19f;p=mesa.git nv50: emit predicate for interp --- diff --git a/src/gallium/drivers/nv50/nv50_pc_emit.c b/src/gallium/drivers/nv50/nv50_pc_emit.c index b5f4383aa1a..bc151c3a808 100644 --- a/src/gallium/drivers/nv50/nv50_pc_emit.c +++ b/src/gallium/drivers/nv50/nv50_pc_emit.c @@ -596,8 +596,12 @@ emit_interp(struct nv_pc *pc, struct nv_instruction *i) if (i->centroid) pc->emit[0] |= 1 << 24; + assert(i->is_long || !i->flags_src); + if (i->is_long) { - pc->emit[1] |= 0x0780 | + set_pred(pc, i); + + pc->emit[1] |= (pc->emit[0] & (3 << 24)) >> (24 - 16) | (pc->emit[0] & (1 << 8)) >> (18 - 8);