search for: nv50_tgsi_insn

Displaying 3 results from an estimated 3 matches for "nv50_tgsi_insn".

2009 Sep 10
0
[PATCH 02/13] nv50: add functions for swizzle resolution
...tRegister.WriteMask) + return tgsi_dst(pc, c, fd); + } + + return NULL; +} + static unsigned load_fp_attrib(struct nv50_pc *pc, int i, unsigned *acc, int *mid, int *aid, int *p_oid) -- 1.6.3.3 --------------010208090904000401070505 Content-Type: text/plain; name="0003-nv50-add-nv50_tgsi_insn-to-handle-swizzles-safely.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename*0="0003-nv50-add-nv50_tgsi_insn-to-handle-swizzles-safely.patch"
2009 Sep 12
0
[PATCH 09/13] nv50: move allocation of pc regs
...- case TGSI_EXTSWIZZLE_W: - n = src->SrcRegister.Index * 4 + k; - acc_p[n] = pc->insn_nr; - break; - default: - break; - } + + if (k > TGSI_EXTSWIZZLE_W) + continue; + + reg[src->SrcRegister.Index * 4 + k].acc = pc->insn_nr; } } } @@ -1986,8 +1973,7 @@ nv50_tgsi_insn(struct nv50_pc *pc, const union tgsi_full_token *tok) } static unsigned -load_fp_attrib(struct nv50_pc *pc, int i, unsigned *acc, int *mid, - int *aid, int *p_oid) +load_fp_attrib(struct nv50_pc *pc, int i, int *mid, int *aid, int *p_oid) { struct nv50_reg *iv; int oid, c, n; @@ -19...
2009 Sep 12
0
[PATCH 10/13] nv50: proper linkage between VP and FP
...x, int hw) reg->acc = 0; } +static INLINE unsigned +popcnt4(uint32_t val) +{ + static const unsigned cnt[16] + = { 0, 1, 1, 2, 1, 2, 2, 3, 1, 2, 2, 3, 2, 3, 3, 4 }; + return cnt[val & 0xf]; +} + static void alloc_reg(struct nv50_pc *pc, struct nv50_reg *reg) { @@ -1972,59 +1980,48 @@ nv50_tgsi_insn(struct nv50_pc *pc, const union tgsi_full_token *tok) return TRUE; } -static unsigned -load_fp_attrib(struct nv50_pc *pc, int i, int *mid, int *aid, int *p_oid) +static void +load_interpolant(struct nv50_pc *pc, struct nv50_reg *reg) { - struct nv50_reg *iv; - int oid, c, n; - unsigned mask =...