Lines Matching defs:split
135 /* create second variable for the split */
137 /* split new variable into second slot */
947 /* GLSL specifies that interface blocks are split per-buffer in XFB */
972 nir_variable **split;
980 nir_variable **split = state->split;
988 if (var != split[0])
990 unsigned num_components = glsl_get_vector_elements(split[0]->type);
994 loads[i] = nir_load_deref(b, nir_build_deref_var(b, split[i+1]));
1014 nir_variable *split[5];
1016 state.split = split;
1019 split[0] = var;
1025 split[i+1] = nir_variable_clone(var, nir);
1026 split[i+1]->name = ralloc_asprintf(nir, "%s_split%u", var->name, i);
1028 split[i+1]->type = !i && num_components == 4 ? var->type : new_type;
1030 split[i+1]->type = new_type;
1031 split[i+1]->data.driver_location = ffs(bits) - 1;
1032 bits &= ~BITFIELD_BIT(split[i+1]->data.driver_location);
1033 nir_shader_add_variable(nir, split[i+1]);