• Home
  • Raw
  • Download

Lines Matching refs:gl_prog

1767                                        struct gl_program *gl_prog,  in link_layer_viewport_relative_qualifier()  argument
1776 gl_prog->info.layer_viewport_relative = in link_layer_viewport_relative_qualifier()
1788 gl_prog->info.layer_viewport_relative) { in link_layer_viewport_relative_qualifier()
1802 struct gl_program *gl_prog, in link_tcs_out_layout_qualifiers() argument
1806 if (gl_prog->info.stage != MESA_SHADER_TESS_CTRL) in link_tcs_out_layout_qualifiers()
1809 gl_prog->info.tess.tcs_vertices_out = 0; in link_tcs_out_layout_qualifiers()
1825 if (gl_prog->info.tess.tcs_vertices_out != 0 && in link_tcs_out_layout_qualifiers()
1826 gl_prog->info.tess.tcs_vertices_out != in link_tcs_out_layout_qualifiers()
1830 gl_prog->info.tess.tcs_vertices_out, in link_tcs_out_layout_qualifiers()
1834 gl_prog->info.tess.tcs_vertices_out = in link_tcs_out_layout_qualifiers()
1843 if (gl_prog->info.tess.tcs_vertices_out == 0) { in link_tcs_out_layout_qualifiers()
1859 struct gl_program *gl_prog, in link_tes_in_layout_qualifiers() argument
1863 if (gl_prog->info.stage != MESA_SHADER_TESS_EVAL) in link_tes_in_layout_qualifiers()
1869 gl_prog->info.tess._primitive_mode = TESS_PRIMITIVE_UNSPECIFIED; in link_tes_in_layout_qualifiers()
1870 gl_prog->info.tess.spacing = TESS_SPACING_UNSPECIFIED; in link_tes_in_layout_qualifiers()
1890 if (gl_prog->info.tess._primitive_mode != TESS_PRIMITIVE_UNSPECIFIED && in link_tes_in_layout_qualifiers()
1891 gl_prog->info.tess._primitive_mode != in link_tes_in_layout_qualifiers()
1897 gl_prog->info.tess._primitive_mode = in link_tes_in_layout_qualifiers()
1902 if (gl_prog->info.tess.spacing != 0 && gl_prog->info.tess.spacing != in link_tes_in_layout_qualifiers()
1908 gl_prog->info.tess.spacing = shader->info.TessEval.Spacing; in link_tes_in_layout_qualifiers()
1937 if (gl_prog->info.tess._primitive_mode == TESS_PRIMITIVE_UNSPECIFIED) { in link_tes_in_layout_qualifiers()
1944 if (gl_prog->info.tess.spacing == TESS_SPACING_UNSPECIFIED) in link_tes_in_layout_qualifiers()
1945 gl_prog->info.tess.spacing = TESS_SPACING_EQUAL; in link_tes_in_layout_qualifiers()
1948 gl_prog->info.tess.ccw = true; in link_tes_in_layout_qualifiers()
1950 gl_prog->info.tess.ccw = false; in link_tes_in_layout_qualifiers()
1954 gl_prog->info.tess.point_mode = false; in link_tes_in_layout_qualifiers()
1956 gl_prog->info.tess.point_mode = true; in link_tes_in_layout_qualifiers()
2048 struct gl_program *gl_prog, in link_gs_inout_layout_qualifiers() argument
2055 if (gl_prog->info.stage != MESA_SHADER_GEOMETRY || in link_gs_inout_layout_qualifiers()
2061 gl_prog->info.gs.invocations = 0; in link_gs_inout_layout_qualifiers()
2062 gl_prog->info.gs.input_primitive = SHADER_PRIM_UNKNOWN; in link_gs_inout_layout_qualifiers()
2063 gl_prog->info.gs.output_primitive = SHADER_PRIM_UNKNOWN; in link_gs_inout_layout_qualifiers()
2079 if (gl_prog->info.gs.input_primitive != SHADER_PRIM_UNKNOWN && in link_gs_inout_layout_qualifiers()
2080 gl_prog->info.gs.input_primitive != in link_gs_inout_layout_qualifiers()
2086 gl_prog->info.gs.input_primitive = (enum shader_prim)shader->info.Geom.InputType; in link_gs_inout_layout_qualifiers()
2090 if (gl_prog->info.gs.output_primitive != SHADER_PRIM_UNKNOWN && in link_gs_inout_layout_qualifiers()
2091 gl_prog->info.gs.output_primitive != in link_gs_inout_layout_qualifiers()
2097 gl_prog->info.gs.output_primitive = (enum shader_prim)shader->info.Geom.OutputType; in link_gs_inout_layout_qualifiers()
2112 if (gl_prog->info.gs.invocations != 0 && in link_gs_inout_layout_qualifiers()
2113 gl_prog->info.gs.invocations != in link_gs_inout_layout_qualifiers()
2117 gl_prog->info.gs.invocations, in link_gs_inout_layout_qualifiers()
2121 gl_prog->info.gs.invocations = shader->info.Geom.Invocations; in link_gs_inout_layout_qualifiers()
2129 if (gl_prog->info.gs.input_primitive == SHADER_PRIM_UNKNOWN) { in link_gs_inout_layout_qualifiers()
2135 if (gl_prog->info.gs.output_primitive == SHADER_PRIM_UNKNOWN) { in link_gs_inout_layout_qualifiers()
2146 gl_prog->info.gs.vertices_out = vertices_out; in link_gs_inout_layout_qualifiers()
2149 if (gl_prog->info.gs.invocations == 0) in link_gs_inout_layout_qualifiers()
2150 gl_prog->info.gs.invocations = 1; in link_gs_inout_layout_qualifiers()
2161 struct gl_program *gl_prog, in link_cs_input_layout_qualifiers() argument
2168 if (gl_prog->info.stage != MESA_SHADER_COMPUTE) in link_cs_input_layout_qualifiers()
2172 gl_prog->info.workgroup_size[i] = 0; in link_cs_input_layout_qualifiers()
2174 gl_prog->info.workgroup_size_variable = false; in link_cs_input_layout_qualifiers()
2176 gl_prog->info.cs.derivative_group = DERIVATIVE_GROUP_NONE; in link_cs_input_layout_qualifiers()
2192 if (gl_prog->info.workgroup_size[0] != 0) { in link_cs_input_layout_qualifiers()
2194 if (gl_prog->info.workgroup_size[i] != in link_cs_input_layout_qualifiers()
2203 gl_prog->info.workgroup_size[i] = in link_cs_input_layout_qualifiers()
2207 if (gl_prog->info.workgroup_size[0] != 0) { in link_cs_input_layout_qualifiers()
2219 gl_prog->info.workgroup_size_variable = true; in link_cs_input_layout_qualifiers()
2224 if (gl_prog->info.cs.derivative_group != DERIVATIVE_GROUP_NONE && in link_cs_input_layout_qualifiers()
2225 gl_prog->info.cs.derivative_group != group) { in link_cs_input_layout_qualifiers()
2230 gl_prog->info.cs.derivative_group = group; in link_cs_input_layout_qualifiers()
2238 if (gl_prog->info.workgroup_size[0] == 0 && in link_cs_input_layout_qualifiers()
2239 !gl_prog->info.workgroup_size_variable) { in link_cs_input_layout_qualifiers()
2245 if (gl_prog->info.cs.derivative_group == DERIVATIVE_GROUP_QUADS) { in link_cs_input_layout_qualifiers()
2246 if (gl_prog->info.workgroup_size[0] % 2 != 0) { in link_cs_input_layout_qualifiers()
2252 if (gl_prog->info.workgroup_size[1] % 2 != 0) { in link_cs_input_layout_qualifiers()
2258 } else if (gl_prog->info.cs.derivative_group == DERIVATIVE_GROUP_LINEAR) { in link_cs_input_layout_qualifiers()
2259 if ((gl_prog->info.workgroup_size[0] * in link_cs_input_layout_qualifiers()
2260 gl_prog->info.workgroup_size[1] * in link_cs_input_layout_qualifiers()
2261 gl_prog->info.workgroup_size[2]) % 4 != 0) { in link_cs_input_layout_qualifiers()
2411 struct gl_program *gl_prog = in link_intrastage_shaders() local
2413 if (!gl_prog) { in link_intrastage_shaders()
2419 _mesa_reference_shader_program_data(&gl_prog->sh.data, prog->data); in link_intrastage_shaders()
2422 linked->Program = gl_prog; in link_intrastage_shaders()
2428 link_tcs_out_layout_qualifiers(prog, gl_prog, shader_list, num_shaders); in link_intrastage_shaders()
2429 link_tes_in_layout_qualifiers(prog, gl_prog, shader_list, num_shaders); in link_intrastage_shaders()
2430 link_gs_inout_layout_qualifiers(prog, gl_prog, shader_list, num_shaders); in link_intrastage_shaders()
2431 link_cs_input_layout_qualifiers(prog, gl_prog, shader_list, num_shaders); in link_intrastage_shaders()
2438 link_layer_viewport_relative_qualifier(prog, gl_prog, shader_list, num_shaders); in link_intrastage_shaders()
2539 vertices_per_prim(gl_prog->info.gs.input_primitive); in link_intrastage_shaders()