Lines Matching refs:selector

49    struct si_shader_info *info = &ps->selector->info;
52 ps->selector->info.num_inputs + (ps->key.ps.part.prolog.color_two_side ? num_colors : 0);
61 if (shader->selector->screen->info.gfx_level <= GFX8 ||
62 shader->selector->stage > MESA_SHADER_GEOMETRY)
66 shader->selector->stage == MESA_SHADER_TESS_CTRL ||
67 shader->selector->stage == MESA_SHADER_GEOMETRY;
73 if (shader->selector->stage > MESA_SHADER_GEOMETRY)
227 switch (shader->selector->stage) {
235 return shader->selector->screen->info.gfx_level >= GFX7 ? 128 : 0;
238 return shader->selector->screen->info.gfx_level >= GFX9 ? 128 : 0;
248 if (shader->selector->info.base.workgroup_size_variable)
251 uint16_t *local_size = shader->selector->info.base.workgroup_size;
263 if (ctx->shader->selector->info.base.num_ubos == 1 &&
264 ctx->shader->selector->info.base.num_ssbos == 0)
297 unsigned num_vbos_in_user_sgprs = ctx->shader->selector->info.num_vbos_in_user_sgprs;
347 if (shader->selector->info.num_inputs) {
349 for (unsigned i = 1; i < shader->selector->info.num_inputs; i++)
352 *num_prolog_vgprs += shader->selector->info.num_inputs;
420 if (shader->selector->info.base.vs.blit_sgprs_amd) {
421 declare_vs_blit_inputs(ctx, shader->selector->info.base.vs.blit_sgprs_amd);
521 unsigned num_outputs = util_last_bit64(shader->selector->info.outputs_written);
567 if (ctx->stage != MESA_SHADER_VERTEX || !shader->selector->info.base.vs.blit_sgprs_amd) {
572 if (ctx->stage == MESA_SHADER_VERTEX && shader->selector->info.base.vs.blit_sgprs_amd) {
573 declare_vs_blit_inputs(ctx, shader->selector->info.base.vs.blit_sgprs_amd);
625 if (shader->selector->info.num_vbos_in_user_sgprs) {
628 SI_SGPR_VS_VB_DESCRIPTOR_FIRST + shader->selector->info.num_vbos_in_user_sgprs * 4;
728 if (shader->selector->info.colors_read) {
729 unsigned num_color_elements = util_bitcount(shader->selector->info.colors_read);
739 num_returns = num_return_sgprs + util_bitcount(shader->selector->info.colors_written) * 4 +
740 shader->selector->info.writes_z + shader->selector->info.writes_stencil +
741 shader->selector->info.writes_samplemask + 1 /* SampleMaskIn */;
752 if (shader->selector->info.uses_grid_size)
754 if (shader->selector->info.uses_variable_block_size)
758 shader->selector->info.base.cs.user_data_components_amd;
765 for (unsigned i = 0; i < shader->selector->cs_num_shaderbufs_in_user_sgprs; i++) {
772 for (unsigned i = 0; i < shader->selector->cs_num_images_in_user_sgprs; i++) {
773 unsigned num_sgprs = BITSET_TEST(shader->selector->info.base.image_buffers, i) ? 4 : 8;
783 if (shader->selector->info.uses_block_id[i]) {
787 if (shader->selector->info.uses_subgroup_info)
823 const struct si_shader_selector *sel = shader->selector;
1020 struct si_screen *sscreen = shader->selector->screen;
1022 unsigned num_inputs = shader->selector->info.num_inputs;
1023 unsigned lds_increment = get_lds_granularity(sscreen, shader->selector->stage);
1030 switch (shader->selector->stage) {
1080 si_shader_dump_disassembly(screen, &shader->binary, shader->selector->stage,
1091 shader->selector->info.has_divergent_loop,
1092 shader->selector->info.base.num_inlinable_uniforms,
1094 stages[shader->selector->stage], shader->wave_size);
1102 if (!check_debug_option || si_can_dump_shader(sscreen, shader->selector->stage)) {
1103 if (shader->selector->stage == MESA_SHADER_FRAGMENT) {
1125 conf->lds_size * get_lds_granularity(sscreen, shader->selector->stage),
1132 switch (shader->selector->stage) {
1168 gl_shader_stage stage = shader->selector->stage;
1233 gl_shader_stage stage = shader->selector->stage;
1237 _mesa_sha1_print(f, shader->selector->info.base.source_sha1);
1250 if (shader->selector->screen->info.gfx_level >= GFX9) {
1268 if (shader->selector->screen->info.gfx_level >= GFX9 &&
1397 if (shader_out->selector->stage != MESA_SHADER_GEOMETRY &&
1401 if (shader_out->selector->stage == MESA_SHADER_TESS_CTRL) {
1404 } else if (shader_out->selector->stage == MESA_SHADER_GEOMETRY) {
1518 struct si_shader_selector *sel = shader->selector;
1578 struct si_shader_selector *sel = shader->selector;
1725 si_nir_scan_shader(shader->selector->screen, nir, &info);
1780 struct si_shader_selector *sel = shader->selector;
2011 shader.selector = &sel;
2070 struct si_shader_selector *vs = main_part->selector;
2073 shader->selector->stage == MESA_SHADER_GEOMETRY))
2104 shader->wave_size % shader->selector->info.base.tess.tcs_vertices_out == 0;
2165 struct si_shader_info *info = &shader->selector->info;
2187 ubyte *color = shader->selector->info.color_attr_index;
2305 struct si_shader_info *info = &shader->selector->info;
2426 if (shader->selector->stage == MESA_SHADER_COMPUTE &&
2435 struct si_shader_selector *sel = shader->selector;
2458 * selector