From 38de85f9a5f3daae65ebe715f29fe2783e4ea146 Mon Sep 17 00:00:00 2001 From: Jason Ekstrand Date: Fri, 25 Mar 2016 14:07:41 -0700 Subject: nir: Add a helper for getting the unique function in a shader Reviewed-by: Rob Clark --- src/compiler/nir/nir.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/compiler/nir/nir.h b/src/compiler/nir/nir.h index 6bd871dc43a..cab304814a2 100644 --- a/src/compiler/nir/nir.h +++ b/src/compiler/nir/nir.h @@ -1761,6 +1761,17 @@ typedef struct nir_shader { gl_shader_stage stage; } nir_shader; +static inline nir_function * +nir_shader_get_entrypoint(nir_shader *shader) +{ + assert(exec_list_length(&shader->functions) == 1); + struct exec_node *func_node = exec_list_get_head(&shader->functions); + nir_function *func = exec_node_data(nir_function, func_node, node); + assert(func->return_type == glsl_void_type()); + assert(func->num_params == 0); + return func; +} + #define nir_foreach_function(shader, func) \ foreach_list_typed(nir_function, func, node, &(shader)->functions) -- cgit v1.2.3