mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-27 12:40:09 +01:00
r600g: Enable reusing of compute state
This commit is contained in:
parent
5cd6ce939d
commit
ff08f1ec6f
1 changed files with 9 additions and 6 deletions
|
|
@ -147,18 +147,21 @@ static void evergreen_bind_compute_state(struct pipe_context *ctx_, void *state)
|
|||
|
||||
ctx->cs_shader = (struct r600_pipe_compute *)state;
|
||||
|
||||
assert(!ctx->cs_shader->shader_code_bo);
|
||||
if (!ctx->cs_shader->shader_code_bo) {
|
||||
|
||||
ctx->cs_shader->shader_code_bo =
|
||||
r600_compute_buffer_alloc_vram(ctx->screen,
|
||||
ctx->cs_shader->shader_code_bo =
|
||||
r600_compute_buffer_alloc_vram(ctx->screen,
|
||||
ctx->cs_shader->bc.ndw * 4);
|
||||
|
||||
void *p = ctx->ws->buffer_map(ctx->cs_shader->shader_code_bo->cs_buf,
|
||||
void *p = ctx->ws->buffer_map(
|
||||
ctx->cs_shader->shader_code_bo->cs_buf,
|
||||
ctx->cs, PIPE_TRANSFER_WRITE);
|
||||
|
||||
memcpy(p, ctx->cs_shader->bc.bytecode, ctx->cs_shader->bc.ndw * 4);
|
||||
memcpy(p, ctx->cs_shader->bc.bytecode, ctx->cs_shader->bc.ndw * 4);
|
||||
|
||||
ctx->ws->buffer_unmap(ctx->cs_shader->shader_code_bo->cs_buf);
|
||||
ctx->ws->buffer_unmap(ctx->cs_shader->shader_code_bo->cs_buf);
|
||||
|
||||
}
|
||||
|
||||
evergreen_compute_init_config(ctx);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue