diff options
author | Brian Paul <[email protected]> | 2016-08-26 07:00:48 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2016-08-26 14:20:19 -0600 |
commit | 8433b433378fce3b578b9fcf47e0ed6b92b68a59 (patch) | |
tree | db2b2fb8bdd3edc37ef4184cfeea4ec0f003aa7a /src/gallium/drivers/svga/svga_surface.c | |
parent | 1a10b37ac3ff7adaf8e876a893cbd6fa0486426f (diff) |
svga: move some code in svga_propagate_surface()
Move computation of zslice, layer inside the conditional where they're
used.
Reviewed-by: Neha Bhende <[email protected]>
Diffstat (limited to 'src/gallium/drivers/svga/svga_surface.c')
-rw-r--r-- | src/gallium/drivers/svga/svga_surface.c | 37 |
1 files changed, 19 insertions, 18 deletions
diff --git a/src/gallium/drivers/svga/svga_surface.c b/src/gallium/drivers/svga/svga_surface.c index 4b0b56c534d..00e9cbc1518 100644 --- a/src/gallium/drivers/svga/svga_surface.c +++ b/src/gallium/drivers/svga/svga_surface.c @@ -607,35 +607,36 @@ svga_propagate_surface(struct svga_context *svga, struct pipe_surface *surf) struct svga_surface *s = svga_surface(surf); struct svga_texture *tex = svga_texture(surf->texture); struct svga_screen *ss = svga_screen(surf->texture->screen); - unsigned zslice, layer; - unsigned nlayers = 1; - unsigned i; if (!s->dirty) return; SVGA_STATS_TIME_PUSH(ss->sws, SVGA_STATS_TIME_PROPAGATESURFACE); - if (surf->texture->target == PIPE_TEXTURE_CUBE) { - zslice = 0; - layer = surf->u.tex.first_layer; - } - else if (surf->texture->target == PIPE_TEXTURE_1D_ARRAY || - surf->texture->target == PIPE_TEXTURE_2D_ARRAY) { - zslice = 0; - layer = surf->u.tex.first_layer; - nlayers = surf->u.tex.last_layer - surf->u.tex.first_layer + 1; - } - else { - zslice = surf->u.tex.first_layer; - layer = 0; - } - s->dirty = FALSE; ss->texture_timestamp++; svga_age_texture_view(tex, surf->u.tex.level); if (s->handle != tex->handle) { + unsigned zslice, layer; + unsigned nlayers = 1; + unsigned i; + + if (surf->texture->target == PIPE_TEXTURE_CUBE) { + zslice = 0; + layer = surf->u.tex.first_layer; + } + else if (surf->texture->target == PIPE_TEXTURE_1D_ARRAY || + surf->texture->target == PIPE_TEXTURE_2D_ARRAY) { + zslice = 0; + layer = surf->u.tex.first_layer; + nlayers = surf->u.tex.last_layer - surf->u.tex.first_layer + 1; + } + else { + zslice = surf->u.tex.first_layer; + layer = 0; + } + SVGA_DBG(DEBUG_VIEWS, "svga: Surface propagate: tex %p, level %u, from %p\n", tex, surf->u.tex.level, surf); |