Lines Matching defs:shader

98        * the surface state, there is no shader w/a required.
183 * (1.0) rather than integer 1. This needs shader hacks.
203 * needs a shader workaround.
368 * Fix an uncompiled shader's stream output info.
374 * compile a specific shader variant. So, we remap these and simply store
484 /* This one is special because it reads from the shader constant
496 nir_intrinsic_instr_create(b.shader, nir_intrinsic_load_ubo);
800 * Set up the binding table indices and apply to the shader.
858 * they are uploaded separately from shs->constbufs[], but from a shader
1082 brw_shader_perf_log(c, &ice->dbg, "Recompiling %s shader for program %s: %s\n",
1094 * Get the shader for the last enabled geometry stage.
1144 * shader doesn't write to gl_ClipDistance.
1156 * require giving the clip shader a default edgeflag.
1177 * Compile a vertex shader, and upload the assembly.
1253 dbg_printf("Failed to compile vertex shader: %s\n", params.error_str);
1269 struct crocus_compiled_shader *shader =
1276 crocus_disk_cache_store(screen->disk_cache, ish, shader,
1281 return shader;
1285 * Update the current vertex shader variant.
1305 struct crocus_compiled_shader *shader =
1308 if (!shader)
1309 shader = crocus_disk_cache_retrieve(ice, ish, &key, sizeof(key));
1311 if (!shader)
1312 shader = crocus_compile_vs(ice, ish, &key);
1314 if (old != shader) {
1315 ice->shaders.prog[CROCUS_CACHE_VS] = shader;
1324 (void *) shader->prog_data;
1397 * Compile a tessellation control shader, and upload the assembly.
1482 dbg_printf("Failed to compile control shader: %s\n", params.error_str);
1495 struct crocus_compiled_shader *shader =
1503 crocus_disk_cache_store(screen->disk_cache, ish, shader,
1508 return shader;
1512 * Update the current tessellation control shader variant.
1544 struct crocus_compiled_shader *shader =
1547 if (tcs && !shader)
1548 shader = crocus_disk_cache_retrieve(ice, tcs, &key, sizeof(key));
1550 if (!shader)
1551 shader = crocus_compile_tcs(ice, tcs, &key);
1553 if (old != shader) {
1554 ice->shaders.prog[CROCUS_CACHE_TCS] = shader;
1563 * Compile a tessellation evaluation shader, and upload the assembly.
1624 dbg_printf("Failed to compile evaluation shader: %s\n", params.error_str);
1640 struct crocus_compiled_shader *shader =
1647 crocus_disk_cache_store(screen->disk_cache, ish, shader,
1652 return shader;
1656 * Update the current tessellation evaluation shader variant.
1677 struct crocus_compiled_shader *shader =
1680 if (!shader)
1681 shader = crocus_disk_cache_retrieve(ice, ish, &key, sizeof(key));
1683 if (!shader)
1684 shader = crocus_compile_tes(ice, ish, &key);
1686 if (old != shader) {
1687 ice->shaders.prog[CROCUS_CACHE_TES] = shader;
1703 * Compile a geometry shader, and upload the assembly.
1765 dbg_printf("Failed to compile geometry shader: %s\n", params.error_str);
1781 struct crocus_compiled_shader *shader =
1788 crocus_disk_cache_store(screen->disk_cache, ish, shader,
1793 return shader;
1797 * Update the current geometry shader variant.
1808 struct crocus_compiled_shader *shader = NULL;
1820 shader =
1823 if (!shader)
1824 shader = crocus_disk_cache_retrieve(ice, ish, &key, sizeof(key));
1826 if (!shader)
1827 shader = crocus_compile_gs(ice, ish, &key);
1830 if (old != shader) {
1831 ice->shaders.prog[CROCUS_CACHE_GS] = shader;
1840 * Compile a fragment (pixel) shader, and upload the assembly.
1902 dbg_printf("Failed to compile fragment shader: %s\n", params.error_str);
1913 struct crocus_compiled_shader *shader =
1920 crocus_disk_cache_store(screen->disk_cache, ish, shader,
1925 return shader;
1929 * Update the current fragment shader variant.
1952 struct crocus_compiled_shader *shader =
1955 if (!shader)
1956 shader = crocus_disk_cache_retrieve(ice, ish, &key, sizeof(key));
1958 if (!shader)
1959 shader = crocus_compile_fs(ice, ish, &key, ice->shaders.last_vue_map);
1961 if (old != shader) {
1964 ice->shaders.prog[CROCUS_CACHE_FS] = shader;
1985 * When the shader feeding the rasterizer's output interface changes, we
2032 struct crocus_compiled_shader *shader = ice->shaders.prog[stage];
2034 if (!shader || !shader->prog_data->has_ubo_pull)
2039 shader->num_system_values > 0 && shs->sysvals_need_upload;
2083 dbg_printf("failed to compile clip shader\n");
2090 struct crocus_compiled_shader *shader =
2096 return shader;
2209 struct crocus_compiled_shader *shader =
2212 if (!shader)
2213 shader = crocus_compile_clip(ice, &key);
2215 if (old != shader) {
2217 ice->shaders.clip_prog = shader;
2237 dbg_printf("failed to compile sf shader\n");
2244 struct crocus_compiled_shader *shader =
2250 return shader;
2302 struct crocus_compiled_shader *shader =
2305 if (!shader)
2306 shader = crocus_compile_sf(ice, &key);
2308 if (old != shader) {
2310 ice->shaders.sf_prog = shader;
2330 dbg_printf("failed to compile sf shader\n");
2345 struct crocus_compiled_shader *shader =
2351 return shader;
2393 struct crocus_compiled_shader *shader = NULL;
2395 shader = crocus_find_cached_shader(ice, CROCUS_CACHE_FF_GS,
2397 if (!shader)
2398 shader = crocus_compile_ff_gs(ice, &key);
2400 if (old != shader) {
2402 if (!!old != !!shader)
2404 ice->shaders.ff_gs_prog = shader;
2405 if (shader) {
2416 * Update the current shader variants for the given state.
2488 struct crocus_compiled_shader *shader = ice->shaders.prog[last_stage];
2490 update_last_vue_map(ice, shader->prog_data);
2491 if (ice->state.streamout != shader->streamout) {
2492 ice->state.streamout = shader->streamout;
2518 /* Changing shader interfaces may require a URB configuration. */
2577 dbg_printf("Failed to compile compute shader: %s\n", params.error_str);
2588 struct crocus_compiled_shader *shader =
2595 crocus_disk_cache_store(screen->disk_cache, ish, shader,
2600 return shader;
2619 struct crocus_compiled_shader *shader =
2622 if (!shader)
2623 shader = crocus_disk_cache_retrieve(ice, ish, &key, sizeof(key));
2625 if (!shader)
2626 shader = crocus_compile_cs(ice, ish, &key);
2628 if (old != shader) {
2629 ice->shaders.prog[CROCUS_CACHE_CS] = shader;
2694 * Actual shader compilation to assembly happens later, at first use.
3007 * Binds an uncompiled shader as the current one for a particular stage.
3008 * Updates dirty tracking to account for the shader's NOS.
3110 /* Fragment shader outputs influence HasWriteableRT */