Home | History | Annotate | Download | only in svga

Lines Matching defs:variant

63  * Translate TGSI shader into an svga shader variant.
71 struct svga_shader_variant *variant;
74 variant = translate_geometry_program(svga, gs, key);
75 if (!variant) {
84 variant = translate_geometry_program(svga, gs, key);
85 if (!variant) {
90 ret = svga_define_shader(svga, SVGA3D_SHADERTYPE_GS, variant);
92 svga_destroy_shader_variant(svga, SVGA3D_SHADERTYPE_GS, variant);
96 *out_variant = variant;
173 struct svga_shader_variant *variant;
212 variant = NULL;
217 /* See if we already have a GS variant that matches the key */
218 variant = svga_search_shader_key(&gs->base, &key);
220 if (!variant) {
221 ret = compile_gs(svga, gs, &key, &variant);
225 /* insert the new variant at head of linked list */
226 assert(variant);
227 variant->next = gs->base.variants;
228 gs->base.variants = variant;
232 if (variant != svga->state.hw_draw.gs) {
233 /* Bind the new variant */
234 ret = svga_set_shader(svga, SVGA3D_SHADERTYPE_GS, variant);
240 svga->state.hw_draw.gs = variant;