Lines Matching defs:nir
29 #include "compiler/nir/nir.h"
260 nir_shader *nir =
269 assert(nir);
270 assert(nir->info.stage == stage);
272 nir->options = options;
274 nir->info.name =
275 ralloc_asprintf(nir, "SPIRV:%s:%d",
276 _mesa_shader_stage_to_abbrev(nir->info.stage),
278 nir_validate_shader(nir, "after spirv_to_nir");
280 nir->info.separate_shader = linked_shader->Program->info.separate_shader;
288 NIR_PASS_V(nir, nir_lower_sysvals_to_varyings, &sysvals_to_varyings);
294 NIR_PASS_V(nir, nir_lower_variable_initializers, nir_var_function_temp);
295 NIR_PASS_V(nir, nir_lower_returns);
296 NIR_PASS_V(nir, nir_inline_functions);
297 NIR_PASS_V(nir, nir_copy_prop);
298 NIR_PASS_V(nir, nir_opt_deref);
301 nir_remove_non_entrypoints(nir);
308 NIR_PASS_V(nir, nir_lower_variable_initializers, ~0);
313 NIR_PASS_V(nir, nir_split_var_copies);
314 NIR_PASS_V(nir, nir_split_per_member_structs);
316 if (nir->info.stage == MESA_SHADER_VERTEX)
317 nir_remap_dual_slot_attributes(nir, &linked_shader->Program->DualSlotInputs);
319 NIR_PASS_V(nir, nir_lower_frexp);
321 return nir;