Lines Matching defs:sel
694 struct r600_pipe_shader_selector * sel)
699 if (sel->type == PIPE_SHADER_FRAGMENT) {
702 (MIN2(sel->nr_ps_max_color_exports, rctx->nr_cbufs + rctx->dual_src_blend) << 2);
712 struct r600_pipe_shader_selector* sel,
720 key = r600_shader_selector_key(ctx, sel);
726 if (likely(sel->current && sel->current->key == key)) {
731 if (sel->num_shaders > 1) {
732 struct r600_pipe_shader *p = sel->current, *c = p->next_variant;
747 shader->selector = sel;
752 sel->type, key, r);
753 sel->current = NULL;
760 if (sel->type == PIPE_SHADER_FRAGMENT &&
761 sel->num_shaders == 0) {
762 sel->nr_ps_max_color_exports = shader->shader.nr_ps_max_color_exports;
763 key = r600_shader_selector_key(ctx, sel);
767 sel->num_shaders++;
773 shader->next_variant = sel->current;
774 sel->current = shader;
792 struct r600_pipe_shader_selector *sel = CALLOC_STRUCT(r600_pipe_shader_selector);
795 sel->type = pipe_shader_type;
796 sel->tokens = tgsi_dup_tokens(state->tokens);
797 sel->so = state->stream_output;
799 r = r600_shader_select(ctx, sel, NULL);
803 return sel;
864 struct r600_pipe_shader_selector *sel)
866 struct r600_pipe_shader *p = sel->current, *c;
874 free(sel->tokens);
875 free(sel);
882 struct r600_pipe_shader_selector *sel = (struct r600_pipe_shader_selector *)state;
884 if (rctx->ps_shader == sel) {
888 r600_delete_shader_selector(ctx, sel);
894 struct r600_pipe_shader_selector *sel = (struct r600_pipe_shader_selector *)state;
896 if (rctx->vs_shader == sel) {
900 r600_delete_shader_selector(ctx, sel);