diff options
author | Vadim Girlin <[email protected]> | 2012-07-11 02:19:51 +0400 |
---|---|---|
committer | Vadim Girlin <[email protected]> | 2012-07-11 02:39:59 +0400 |
commit | 37708479608af877986b76302a9c92611d1e23d0 (patch) | |
tree | f66db9d3760b8402df29044b59e70f7e59c7b451 /src/gallium/drivers/r600/r600_state.c | |
parent | 860d5bdf984730f69cd19b4f7145f3c84b57d33d (diff) |
r600g: improve flushed depth texture handling v2
Use r600_resource_texture::flished_depth_texture for GPU access, and
allocate it in the VRAM. For transfers we'll allocate texture in the GTT
and store it in the r600_transfer::staging.
Improves performance when flushed depth texture is frequently used by the
GPU, e.g. in Lightsmark (~30%)
Signed-off-by: Vadim Girlin <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_state.c')
-rw-r--r-- | src/gallium/drivers/r600/r600_state.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_state.c b/src/gallium/drivers/r600/r600_state.c index d51c64bca5e..0ba7fade043 100644 --- a/src/gallium/drivers/r600/r600_state.c +++ b/src/gallium/drivers/r600/r600_state.c @@ -1002,7 +1002,7 @@ static struct pipe_sampler_view *r600_create_sampler_view(struct pipe_context *c } if (tmp->is_depth && !tmp->is_flushing_texture) { - r600_init_flushed_depth_texture(ctx, texture); + r600_init_flushed_depth_texture(ctx, texture, NULL); tmp = tmp->flushed_depth_texture; if (!tmp) { FREE(view); |