summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/vc4
diff options
context:
space:
mode:
authorTimur Kristóf <[email protected]>2019-03-05 18:59:47 +0100
committerEric Anholt <[email protected]>2019-03-05 19:13:27 +0000
commit9a834447d652ea50864bb6c32f4ff99ac10d39bf (patch)
treeb60582e7bb504b2e2bad847f6494b418db9e83ea /src/gallium/drivers/vc4
parente582e761b7f49d1c0b100289b62442e6295cefef (diff)
tgsi_to_nir: Produce optimized NIR for a given pipe_screen.
With this patch, tgsi_to_nir will output NIR that is tailored to the given pipe, by reading its capabilities and adjusting the NIR code to those capabilities similarly to how glsl_to_nir works. It also adds an optimization loop that brings the output NIR in line with what glsl_to_nir outputs. This is necessary for the same reason why glsl_to_nir has its own optimization loop: currently not every driver does these optimizations yet. For uses which cannot pass a pipe_screen we also keep a variant called tgsi_to_nir_noscreen which keeps the old behavior. Signed-Off-By: Timur Kristóf <[email protected]> Tested-by: Andre Heider <[email protected]> Tested-by: Rob Clark <[email protected]> Acked-By: Eric Anholt <[email protected]>
Diffstat (limited to 'src/gallium/drivers/vc4')
-rw-r--r--src/gallium/drivers/vc4/vc4_program.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gallium/drivers/vc4/vc4_program.c b/src/gallium/drivers/vc4/vc4_program.c
index 2d0a52bb5fb..eb8b3a2c377 100644
--- a/src/gallium/drivers/vc4/vc4_program.c
+++ b/src/gallium/drivers/vc4/vc4_program.c
@@ -2502,7 +2502,7 @@ vc4_shader_state_create(struct pipe_context *pctx,
tgsi_dump(cso->tokens, 0);
fprintf(stderr, "\n");
}
- s = tgsi_to_nir(cso->tokens, &nir_options);
+ s = tgsi_to_nir(cso->tokens, pctx->screen);
}
NIR_PASS_V(s, nir_lower_io, nir_var_all & ~nir_var_uniform,