Lines Matching refs:svga
190 svga_init_shader_key_common(const struct svga_context *svga, in svga_init_shader_key_common() argument
196 assert(shader < ARRAY_SIZE(svga->curr.num_sampler_views)); in svga_init_shader_key_common()
201 key->num_textures = MAX2(svga->curr.num_sampler_views[shader], in svga_init_shader_key_common()
202 svga->curr.num_samplers[shader]); in svga_init_shader_key_common()
205 struct pipe_sampler_view *view = svga->curr.sampler_views[shader][i]; in svga_init_shader_key_common()
206 const struct svga_sampler_state *sampler = svga->curr.sampler[shader][i]; in svga_init_shader_key_common()
296 define_gb_shader_vgpu9(struct svga_context *svga, in define_gb_shader_vgpu9() argument
301 struct svga_winsys_screen *sws = svga_screen(svga->pipe.screen)->sws; in define_gb_shader_vgpu9()
315 ret = SVGA3D_BindGBShader(svga->swc, variant->gb_shader); in define_gb_shader_vgpu9()
324 define_gb_shader_vgpu10(struct svga_context *svga, in define_gb_shader_vgpu10() argument
329 struct svga_winsys_context *swc = svga->swc; in define_gb_shader_vgpu10()
337 variant->id = util_bitmask_add(svga->shader_id_bm); in define_gb_shader_vgpu10()
374 util_bitmask_clear(svga->shader_id_bm, variant->id); in define_gb_shader_vgpu10()
386 svga_define_shader(struct svga_context *svga, in svga_define_shader() argument
393 SVGA_STATS_TIME_PUSH(svga_sws(svga), SVGA_STATS_TIME_DEFINESHADER); in svga_define_shader()
397 if (svga_have_gb_objects(svga)) { in svga_define_shader()
398 if (svga_have_vgpu10(svga)) in svga_define_shader()
399 ret = define_gb_shader_vgpu10(svga, type, variant, codeLen); in svga_define_shader()
401 ret = define_gb_shader_vgpu9(svga, type, variant, codeLen); in svga_define_shader()
405 variant->id = util_bitmask_add(svga->shader_id_bm); in svga_define_shader()
412 ret = SVGA3D_DefineShader(svga->swc, in svga_define_shader()
420 util_bitmask_clear(svga->shader_id_bm, variant->id); in svga_define_shader()
426 SVGA_STATS_TIME_POP(svga_sws(svga)); in svga_define_shader()
436 svga_set_shader(struct svga_context *svga, in svga_set_shader() argument
447 if (svga_have_gb_objects(svga)) { in svga_set_shader()
451 if (svga_have_vgpu10(svga)) in svga_set_shader()
452 ret = SVGA3D_vgpu10_SetShader(svga->swc, type, gbshader, id); in svga_set_shader()
454 ret = SVGA3D_SetGBShader(svga->swc, type, gbshader); in svga_set_shader()
457 ret = SVGA3D_SetShader(svga->swc, type, id); in svga_set_shader()
465 svga_new_shader_variant(struct svga_context *svga) in svga_new_shader_variant() argument
467 svga->hud.num_shaders++; in svga_new_shader_variant()
473 svga_destroy_shader_variant(struct svga_context *svga, in svga_destroy_shader_variant() argument
479 if (svga_have_gb_objects(svga) && variant->gb_shader) { in svga_destroy_shader_variant()
480 if (svga_have_vgpu10(svga)) { in svga_destroy_shader_variant()
481 struct svga_winsys_context *swc = svga->swc; in svga_destroy_shader_variant()
483 ret = SVGA3D_vgpu10_DestroyShader(svga->swc, variant->id); in svga_destroy_shader_variant()
486 svga_context_flush(svga, NULL); in svga_destroy_shader_variant()
487 ret = SVGA3D_vgpu10_DestroyShader(svga->swc, variant->id); in svga_destroy_shader_variant()
489 util_bitmask_clear(svga->shader_id_bm, variant->id); in svga_destroy_shader_variant()
492 struct svga_winsys_screen *sws = svga_screen(svga->pipe.screen)->sws; in svga_destroy_shader_variant()
499 ret = SVGA3D_DestroyShader(svga->swc, variant->id, type); in svga_destroy_shader_variant()
502 svga_context_flush(svga, NULL); in svga_destroy_shader_variant()
503 ret = SVGA3D_DestroyShader(svga->swc, variant->id, type); in svga_destroy_shader_variant()
506 util_bitmask_clear(svga->shader_id_bm, variant->id); in svga_destroy_shader_variant()
513 svga->hud.num_shaders--; in svga_destroy_shader_variant()
527 svga_rebind_shaders(struct svga_context *svga) in svga_rebind_shaders() argument
529 struct svga_winsys_context *swc = svga->swc; in svga_rebind_shaders()
530 struct svga_hw_draw_state *hw = &svga->state.hw_draw; in svga_rebind_shaders()
533 assert(svga_have_vgpu10(svga)); in svga_rebind_shaders()
540 svga->rebind.flags.vs = 0; in svga_rebind_shaders()
541 svga->rebind.flags.gs = 0; in svga_rebind_shaders()
542 svga->rebind.flags.fs = 0; in svga_rebind_shaders()
547 if (svga->rebind.flags.vs && hw->vs && hw->vs->gb_shader) { in svga_rebind_shaders()
552 svga->rebind.flags.vs = 0; in svga_rebind_shaders()
554 if (svga->rebind.flags.gs && hw->gs && hw->gs->gb_shader) { in svga_rebind_shaders()
559 svga->rebind.flags.gs = 0; in svga_rebind_shaders()
561 if (svga->rebind.flags.fs && hw->fs && hw->fs->gb_shader) { in svga_rebind_shaders()
566 svga->rebind.flags.fs = 0; in svga_rebind_shaders()