mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-10 02:50:28 +01:00
nir: Create function parameters in function_impl_create
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
parent
066d3c115e
commit
e4bebe8a02
1 changed files with 20 additions and 0 deletions
|
|
@ -300,6 +300,26 @@ nir_function_impl_create(nir_function *function)
|
|||
function->impl = impl;
|
||||
impl->function = function;
|
||||
|
||||
impl->num_params = function->num_params;
|
||||
impl->params = ralloc_array(function->shader,
|
||||
nir_variable *, impl->num_params);
|
||||
|
||||
for (unsigned i = 0; i < impl->num_params; i++) {
|
||||
impl->params[i] = rzalloc(function->shader, nir_variable);
|
||||
impl->params[i]->type = function->params[i].type;
|
||||
impl->params[i]->data.mode = nir_var_param;
|
||||
impl->params[i]->data.location = i;
|
||||
}
|
||||
|
||||
if (!glsl_type_is_void(function->return_type)) {
|
||||
impl->return_var = rzalloc(function->shader, nir_variable);
|
||||
impl->return_var->type = function->return_type;
|
||||
impl->return_var->data.mode = nir_var_param;
|
||||
impl->return_var->data.location = -1;
|
||||
} else {
|
||||
impl->return_var = NULL;
|
||||
}
|
||||
|
||||
return impl;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue