Lines Matching defs:levels
368 struct array_level_info levels[0];
400 num_levels * sizeof(info->levels[0]));
407 info->levels[i].array_len = glsl_get_length(type);
410 /* All levels start out initially as split */
411 info->levels[i].split = true;
466 info->levels[i].split = false;
510 while (level < var_info->num_levels && !var_info->levels[level].split) {
531 assert(var_info->levels[level].split);
532 split->num_splits = var_info->levels[level].array_len;
566 if (info->levels[i].split) {
578 info->levels[i].array_len);
580 split_type = glsl_array_type(split_type, info->levels[i].array_len, 0);
620 info->levels[i].split)
641 nir_src_as_uint(p->arr.index) >= info->levels[i].array_len)
680 if ((dst_info && dst_info->levels[dst_level].split) ||
681 (src_info && src_info->levels[src_level].split)) {
822 if (info->levels[i].split) {
825 assert(index < info->levels[i].array_len);
833 if (!info->levels[i].split) {
851 * This pass looks at arrays (possibly multiple levels) of vectors (not
972 struct array_level_usage levels[0];
998 num_levels * sizeof(usage->levels[0]));
1003 usage->levels[i].array_len = glsl_get_length(type);
1105 struct array_level_usage *level = &usage->levels[i];
1127 ©_usage->levels[copy_i++];
1290 struct array_level_usage *level = &usage->levels[i];
1331 struct array_level_usage *var_level = &var_usage->levels[i];
1365 if (usage->levels[i].array_len == 0) {
1370 assert(usage->levels[i].array_len <= glsl_get_length(vec_type));
1371 if (usage->levels[i].array_len < glsl_get_length(vec_type))
1401 assert(usage->levels[i].array_len > 0);
1407 new_num_comps > 1 && usage->levels[i].array_len > 1) {
1410 usage->levels[i].array_len);
1412 new_type = glsl_array_type(new_type, usage->levels[i].array_len, 0);
1437 nir_src_as_uint(p->arr.index) >= usage->levels[i].array_len) {