iris: use 0 for TCS passthrough program string ID
authorKenneth Graunke <kenneth@whitecape.org>
Fri, 21 Sep 2018 22:43:49 +0000 (15:43 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Thu, 21 Feb 2019 18:26:08 +0000 (10:26 -0800)
the passthrough shader doesn't need a real program string ID - that's
basically used for ARB programs indicating total program source code
changes, or other pre-baked uniform changes, etc...none of which a
passthrough shader has...so we don't need a unique identifier to
distinguish them.  We want to use a consistent value so we find
existing passthrough shaders in the cache.

src/gallium/drivers/iris/iris_program.c

index 8c425c46d17b410376ca0497802f18ed1b0c41de..597bf4c7ed856a3f151c8aae833654c12ab5dfd3 100644 (file)
@@ -549,7 +549,7 @@ iris_update_compiled_tcs(struct iris_context *ice)
    const struct shader_info *tes_info =
       iris_get_shader_info(ice, MESA_SHADER_TESS_EVAL);
    struct brw_tcs_prog_key key = {
-      .program_string_id = tcs ? tcs->program_id : get_new_program_id((void *)ice->ctx.screen),
+      .program_string_id = tcs ? tcs->program_id : 0,
       .tes_primitive_mode = tes_info->tess.primitive_mode,
       .input_vertices = ice->state.vertices_per_patch,
    };