aboutsummaryrefslogtreecommitdiffstats
path: root/src/intel/vulkan/anv_pipeline.c
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2016-08-24 19:09:57 -0700
committerKenneth Graunke <[email protected]>2016-08-25 19:18:24 -0700
commit93bfa1d7a2e70a72a01c48a04c208845c22f9376 (patch)
treee15311ebb02be905f41d94d09afb5e5c1ac5ca65 /src/intel/vulkan/anv_pipeline.c
parent8479b03c5826f32355775d865d99d69c829e65bb (diff)
nir: Change nir_shader_get_entrypoint to return an impl.
Jason suggested adding an assert(function->impl) here. All callers of this function actually want ->impl, so I decided just to change the API. We also change the nir_lower_io_to_temporaries API here. All but one caller passed nir_shader_get_entrypoint(), and with the previous commit, it now uses a nir_function_impl internally. Folding this change in avoids the need to change it and change it back. v2: Fix one call I missed in ir3_compiler (caught by Eric). Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Jason Ekstrand <[email protected]> Reviewed-by: Connor Abbott <[email protected]>
Diffstat (limited to 'src/intel/vulkan/anv_pipeline.c')
-rw-r--r--src/intel/vulkan/anv_pipeline.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/intel/vulkan/anv_pipeline.c b/src/intel/vulkan/anv_pipeline.c
index 48d267b9181..88f414e023a 100644
--- a/src/intel/vulkan/anv_pipeline.c
+++ b/src/intel/vulkan/anv_pipeline.c
@@ -168,7 +168,8 @@ anv_shader_compile_to_nir(struct anv_device *device,
nir_propagate_invariant(nir);
nir_validate_shader(nir);
- nir_lower_io_to_temporaries(entry_point->shader, entry_point, true, false);
+ nir_lower_io_to_temporaries(entry_point->shader, entry_point->impl,
+ true, false);
nir_lower_system_values(nir);
nir_validate_shader(nir);
@@ -616,7 +617,7 @@ anv_pipeline_compile_fs(struct anv_pipeline *pipeline,
unsigned num_rts = 0;
struct anv_pipeline_binding rt_bindings[8];
- nir_function_impl *impl = nir_shader_get_entrypoint(nir)->impl;
+ nir_function_impl *impl = nir_shader_get_entrypoint(nir);
nir_foreach_variable_safe(var, &nir->outputs) {
if (var->data.location < FRAG_RESULT_DATA0)
continue;