diff options
author | Jason Ekstrand <[email protected]> | 2016-03-25 14:07:41 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2016-03-28 18:32:48 -0700 |
commit | 38de85f9a5f3daae65ebe715f29fe2783e4ea146 (patch) | |
tree | 003e6542c0429b12611d907e6a92172453eae215 /src | |
parent | 49be812be60e7fab949bcd352583649a1dbf06b4 (diff) |
nir: Add a helper for getting the unique function in a shader
Reviewed-by: Rob Clark <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/nir/nir.h | 11 |
1 files changed, 11 insertions, 0 deletions
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) |