*/
void svga_cleanup_tss_binding(struct svga_context *svga)
{
- const unsigned shader = PIPE_SHADER_FRAGMENT;
+ const enum pipe_shader_type shader = PIPE_SHADER_FRAGMENT;
unsigned i;
- for (i = 0; i < Elements(svga->state.hw_draw.views); i++) {
+ for (i = 0; i < ARRAY_SIZE(svga->state.hw_draw.views); i++) {
struct svga_hw_view_state *view = &svga->state.hw_draw.views[i];
if (view) {
svga_sampler_view_reference(&view->v, NULL);
}
else {
last_level = MIN2(sv->u.tex.last_level, sv->texture->last_level);
- min_lod = MAX2(0, (s->view_min_lod + sv->u.tex.first_level));
+ min_lod = s->view_min_lod + sv->u.tex.first_level;
min_lod = MIN2(min_lod, last_level);
max_lod = MIN2(s->view_max_lod + sv->u.tex.first_level, last_level);
}
update_tss_binding(struct svga_context *svga,
unsigned dirty )
{
- const unsigned shader = PIPE_SHADER_FRAGMENT;
+ const enum pipe_shader_type shader = PIPE_SHADER_FRAGMENT;
boolean reemit = svga->rebind.flags.texture_samplers;
unsigned i;
unsigned count = MAX2( svga->curr.num_sampler_views[shader],
struct svga_tracked_state svga_hw_tss_binding = {
"texture binding emit",
+ SVGA_NEW_FRAME_BUFFER |
SVGA_NEW_TEXTURE_BINDING |
SVGA_NEW_STIPPLE |
SVGA_NEW_SAMPLER,
unsigned tss,
unsigned value )
{
- assert(q->ts_count < sizeof(q->ts)/sizeof(q->ts[0]));
+ assert(q->ts_count < ARRAY_SIZE(q->ts));
q->ts[q->ts_count].stage = unit;
q->ts[q->ts_count].name = tss;
q->ts[q->ts_count].value = value;
#define EMIT_TS(svga, unit, val, token) \
do { \
- assert(unit < Elements(svga->state.hw_draw.ts)); \
- assert(SVGA3D_TS_##token < Elements(svga->state.hw_draw.ts[unit])); \
+ assert(unit < ARRAY_SIZE(svga->state.hw_draw.ts)); \
+ STATIC_ASSERT(SVGA3D_TS_##token < ARRAY_SIZE(svga->state.hw_draw.ts[unit])); \
if (svga->state.hw_draw.ts[unit][SVGA3D_TS_##token] != val) { \
svga_queue_tss( queue, unit, SVGA3D_TS_##token, val ); \
svga->state.hw_draw.ts[unit][SVGA3D_TS_##token] = val; \
#define EMIT_TS_FLOAT(svga, unit, fvalue, token) \
do { \
unsigned val = fui(fvalue); \
- assert(unit < Elements(svga->state.hw_draw.ts)); \
- assert(SVGA3D_TS_##token < Elements(svga->state.hw_draw.ts[unit])); \
+ assert(unit < ARRAY_SIZE(svga->state.hw_draw.ts)); \
+ STATIC_ASSERT(SVGA3D_TS_##token < ARRAY_SIZE(svga->state.hw_draw.ts[unit])); \
if (svga->state.hw_draw.ts[unit][SVGA3D_TS_##token] != val) { \
svga_queue_tss( queue, unit, SVGA3D_TS_##token, val ); \
svga->state.hw_draw.ts[unit][SVGA3D_TS_##token] = val; \
update_tss(struct svga_context *svga,
unsigned dirty )
{
- const unsigned shader = PIPE_SHADER_FRAGMENT;
+ const enum pipe_shader_type shader = PIPE_SHADER_FRAGMENT;
unsigned i;
struct ts_queue queue;