Lines Matching refs:so_info

67    struct pipe_stream_output_info so_info;  in vrend_decode_create_shader()  local
96 so_info.num_outputs = num_so_outputs; in vrend_decode_create_shader()
97 if (so_info.num_outputs) { in vrend_decode_create_shader()
99 so_info.stride[i] = get_buf_entry(buf, VIRGL_OBJ_SHADER_SO_STRIDE(i)); in vrend_decode_create_shader()
100 for (i = 0; i < so_info.num_outputs; i++) { in vrend_decode_create_shader()
103 so_info.output[i].register_index = tmp & 0xff; in vrend_decode_create_shader()
104 so_info.output[i].start_component = (tmp >> 8) & 0x3; in vrend_decode_create_shader()
105 so_info.output[i].num_components = (tmp >> 10) & 0x7; in vrend_decode_create_shader()
106 so_info.output[i].output_buffer = (tmp >> 13) & 0x7; in vrend_decode_create_shader()
107 so_info.output[i].dst_offset = (tmp >> 16) & 0xffff; in vrend_decode_create_shader()
109 so_info.output[i].stream = (tmp & 0x3); in vrend_decode_create_shader()
110 so_info.output[i].need_temp = so_info.output[i].num_components < 4; in vrend_decode_create_shader()
113 for (i = 0; i < so_info.num_outputs - 1; i++) { in vrend_decode_create_shader()
114 for (unsigned j = i + 1; j < so_info.num_outputs; j++) { in vrend_decode_create_shader()
115 so_info.output[j].need_temp |= in vrend_decode_create_shader()
116 (so_info.output[i].register_index == so_info.output[j].register_index); in vrend_decode_create_shader()
122 memset(&so_info, 0, sizeof(so_info)); in vrend_decode_create_shader()
125 …ret = vrend_create_shader(ctx, handle, &so_info, req_local_mem, (const char *)shd_text, offlen, nu… in vrend_decode_create_shader()