Lines Matching full:changed
78 if (This->state.changed.ps_const_f) {
79 for (r = This->state.changed.ps_const_f; r->next; r = r->next);
80 nine_range_pool_put_chain(pool, This->state.changed.ps_const_f, r);
82 if (This->state.changed.vs_const_f) {
83 for (r = This->state.changed.vs_const_f; r->next; r = r->next);
84 nine_range_pool_put_chain(pool, This->state.changed.vs_const_f, r);
86 if (This->state.changed.vs_const_i) {
87 for (r = This->state.changed.vs_const_i; r->next; r = r->next);
88 nine_range_pool_put_chain(pool, This->state.changed.vs_const_i, r);
90 if (This->state.changed.vs_const_b) {
91 for (r = This->state.changed.vs_const_b; r->next; r = r->next);
92 nine_range_pool_put_chain(pool, This->state.changed.vs_const_b, r);
122 /* Copy state marked changed in @mask from @src to @dst.
123 * If @apply is false, updating dst->changed can be omitted.
136 DBG("apply:%d changed.group: %x\n", (int)apply, (int)mask->changed.group );
138 dst->changed.group |= mask->changed.group;
140 if (mask->changed.group & NINE_STATE_VIEWPORT)
142 if (mask->changed.group & NINE_STATE_SCISSOR)
145 if (mask->changed.group & NINE_STATE_VS)
147 if (mask->changed.group & NINE_STATE_PS)
161 if (mask->changed.group & NINE_STATE_VS_CONST) {
163 for (r = mask->changed.vs_const_f; r; r = r->next) {
168 for (r = mask->changed.vs_const_i; r; r = r->next) {
173 for (r = mask->changed.vs_const_b; r; r = r->next) {
181 if (mask->changed.group & NINE_STATE_PS_CONST) {
183 for (r = mask->changed.ps_const_f; r; r = r->next) {
188 if (mask->changed.ps_const_i) {
189 uint16_t m = mask->changed.ps_const_i;
194 if (mask->changed.ps_const_b) {
195 uint16_t m = mask->changed.ps_const_b;
205 for (i = 0; i < ARRAY_SIZE(dst->changed.rs); ++i) {
206 uint32_t m = mask->changed.rs[i];
208 dst->changed.rs[i] |= m;
219 if (mask->changed.ucp) {
220 DBG("ucp: %x\n", mask->changed.ucp);
222 if (mask->changed.ucp & (1 << i))
226 dst->changed.ucp |= mask->changed.ucp;
230 if (mask->changed.group & NINE_STATE_SAMPLER) {
232 if (mask->changed.sampler[s] == 0x3ffe) {
235 uint32_t m = mask->changed.sampler[s];
236 DBG("samp %d: changed = %x\n", i, (int)m);
244 dst->changed.sampler[s] |= mask->changed.sampler[s];
249 if (mask->changed.group & NINE_STATE_IDXBUF)
256 if (mask->changed.vtxbuf | mask->changed.stream_freq) {
257 DBG("vtxbuf/stream_freq: %x/%x\n", mask->changed.vtxbuf, mask->changed.stream_freq);
258 uint32_t m = mask->changed.vtxbuf | mask->changed.stream_freq;
260 if (mask->changed.vtxbuf & (1 << i)) {
270 if (mask->changed.stream_freq & (1 << i))
274 dst->changed.vtxbuf |= mask->changed.vtxbuf;
275 dst->changed.stream_freq |= mask->changed.stream_freq;
280 if (mask->changed.texture) {
281 uint32_t m = mask->changed.texture;
287 if (!(mask->changed.group & NINE_STATE_FF))
293 if (mask->changed.group & NINE_STATE_FF_MATERIAL)
296 if (mask->changed.group & NINE_STATE_FF_PSSTAGES) {
299 if (mask->ff.changed.tex_stage[s][i / 32] & (1 << (i % 32)))
303 dst->ff.changed.tex_stage[s][0] |=
304 mask->ff.changed.tex_stage[s][0];
305 dst->ff.changed.tex_stage[s][1] |=
306 mask->ff.changed.tex_stage[s][1];
310 if (mask->changed.group & NINE_STATE_FF_LIGHTING) {
352 if (mask->changed.group & NINE_STATE_FF_VSTRANSF) {
353 for (i = 0; i < ARRAY_SIZE(mask->ff.changed.transform); ++i) {
354 if (!mask->ff.changed.transform[i])
357 if (!(mask->ff.changed.transform[i] & (1 << (s % 32))))
364 dst->ff.changed.transform[i] |= mask->ff.changed.transform[i];
381 dst->changed.group |= src->changed.group;
405 struct nine_range *r = help->changed.ps_const_f;
416 memcpy(dst->changed.rs, src->changed.rs, sizeof(dst->changed.rs));
422 dst->changed.ucp = src->changed.ucp;
427 memcpy(dst->changed.sampler,
428 src->changed.sampler, sizeof(dst->changed.sampler));
450 dst->changed.vtxbuf = (1ULL << MaxStreams) - 1;
451 dst->changed.stream_freq = (1ULL << MaxStreams) - 1;
462 if (!(help->changed.group & NINE_STATE_FF))
471 memcpy(dst->ff.changed.tex_stage,
472 src->ff.changed.tex_stage, sizeof(dst->ff.changed.tex_stage));
500 memcpy(dst->ff.changed.transform,
501 src->ff.changed.transform, sizeof(dst->ff.changed.transform));
505 /* Capture those bits of current device state that have been changed between
523 if (dst->changed.group & NINE_STATE_VDECL)
548 if ((src->changed.group & NINE_STATE_VDECL) && src->vdecl)