Displaying 4 results from an estimated 4 matches for "load_fp_attrib".
2009 Sep 12
0
[PATCH 09/13] nv50: move allocation of pc regs
...>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;
@@ -1997,15 +1983,11 @@ load_fp_attrib(struct nv50_pc *pc, int i, unsigned *acc, int *mid,
for...
2009 Jun 21
0
[PATCH] nv50: add support for two-sided lighting
...- bcol = first;
+ fcol[c] = first;
mode = INTERP_PERSPECTIVE;
break;
}
@@ -1931,10 +1939,9 @@ nv50_program_tx_prep(struct nv50_pc *pc)
/* position should be loaded first */
if (fcrd != 0xffff) {
unsigned mask;
- mid = 0;
+ oid = mid = 0;
mask = load_fp_attrib(pc, fcrd, r_usage[1],
&mid, &aid, &oid);
- oid = 0;
pc->p->cfg.fp.regs[1] |= (mask << 24);
pc->p->cfg.fp.map[0] += 0x04040404 * fcrd;
}
@@ -1966,16 +1973,24 @@ nv50_program_tx_prep(struct nv50_pc *pc)
pc->p->cfg.fp.regs[1] |= 0x...
2009 Sep 12
0
[PATCH 10/13] nv50: proper linkage between VP and FP
...d 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 = 0;
-
- iv = (pc->interp_mode[i] & INTERP_CENTROID) ? pc->iv_c : pc->iv_p;
+ struct nv50_reg *...
2009 Sep 10
0
[PATCH 02/13] nv50: add functions for swizzle resolution
...) {
+ int c = ffs(~mask & fd->DstRegister.WriteMask);
+ if (c)
+ return tgsi_dst(pc, c - 1, fd);
+ } else {
+ int c = ffs(fd->DstRegister.WriteMask) - 1;
+ if ((1 << c) == fd->DstRegister.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: inlin...