Lines Matching refs:dgs
915 struct draw_geometry_shader *dgs) in draw_bind_geometry_shader() argument
919 if (dgs) { in draw_bind_geometry_shader()
920 draw->gs.geometry_shader = dgs; in draw_bind_geometry_shader()
921 draw->gs.num_gs_outputs = dgs->info.num_outputs; in draw_bind_geometry_shader()
922 draw->gs.position_output = dgs->position_output; in draw_bind_geometry_shader()
923 draw_geometry_shader_prepare(dgs, draw); in draw_bind_geometry_shader()
932 struct draw_geometry_shader *dgs) in draw_delete_geometry_shader() argument
935 if (!dgs) { in draw_delete_geometry_shader()
940 struct llvm_geometry_shader *shader = llvm_geometry_shader(dgs); in draw_delete_geometry_shader()
952 if (dgs->llvm_prim_lengths) { in draw_delete_geometry_shader()
954 for (i = 0; i < dgs->num_vertex_streams * dgs->max_out_prims; ++i) { in draw_delete_geometry_shader()
955 align_free(dgs->llvm_prim_lengths[i]); in draw_delete_geometry_shader()
957 FREE(dgs->llvm_prim_lengths); in draw_delete_geometry_shader()
959 align_free(dgs->llvm_emitted_primitives); in draw_delete_geometry_shader()
960 align_free(dgs->llvm_emitted_vertices); in draw_delete_geometry_shader()
961 align_free(dgs->llvm_prim_ids); in draw_delete_geometry_shader()
963 align_free(dgs->gs_input); in draw_delete_geometry_shader()
967 if (draw->gs.tgsi.machine && draw->gs.tgsi.machine->Tokens == dgs->state.tokens) in draw_delete_geometry_shader()
971 FREE(dgs->stream[i].primitive_lengths); in draw_delete_geometry_shader()
973 if (dgs->state.ir.nir) in draw_delete_geometry_shader()
974 ralloc_free(dgs->state.ir.nir); in draw_delete_geometry_shader()
975 FREE((void*) dgs->state.tokens); in draw_delete_geometry_shader()
976 FREE(dgs); in draw_delete_geometry_shader()