mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-31 15:40:24 +01:00
r600: update correct hw shaders depending on configuration.
This updates the tess hw shaders from the sw ones routing things correctly. Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
b1da110b71
commit
8849867b8a
1 changed files with 12 additions and 1 deletions
|
|
@ -209,6 +209,15 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
|
|||
|
||||
/* Build state. */
|
||||
switch (shader->shader.processor_type) {
|
||||
case TGSI_PROCESSOR_TESS_CTRL:
|
||||
evergreen_update_hs_state(ctx, shader);
|
||||
break;
|
||||
case TGSI_PROCESSOR_TESS_EVAL:
|
||||
if (key.tes.as_es)
|
||||
evergreen_update_es_state(ctx, shader);
|
||||
else
|
||||
evergreen_update_vs_state(ctx, shader);
|
||||
break;
|
||||
case TGSI_PROCESSOR_GEOMETRY:
|
||||
if (rctx->b.chip_class >= EVERGREEN) {
|
||||
evergreen_update_gs_state(ctx, shader);
|
||||
|
|
@ -221,7 +230,9 @@ int r600_pipe_shader_create(struct pipe_context *ctx,
|
|||
case TGSI_PROCESSOR_VERTEX:
|
||||
export_shader = key.vs.as_es;
|
||||
if (rctx->b.chip_class >= EVERGREEN) {
|
||||
if (export_shader)
|
||||
if (key.vs.as_ls)
|
||||
evergreen_update_ls_state(ctx, shader);
|
||||
else if (key.vs.as_es)
|
||||
evergreen_update_es_state(ctx, shader);
|
||||
else
|
||||
evergreen_update_vs_state(ctx, shader);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue