i965: Avoid recompiles for fragment clamping on non-clamping APIs.
Removes 75/78 state-dependent recompiles in GLB2.7 (the remaining 3 are due to FBO-rendering size predictions). We currently expose GL_ARB_color_buffer_float on GL core, so we may mis-predict there, but I'm about to send a patch for removing that silly extension in that case. Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
parent
b5145ca2a8
commit
578987ce1c
|
@ -3153,7 +3153,7 @@ brw_fs_precompile(struct gl_context *ctx, struct gl_shader_program *prog)
|
|||
}
|
||||
}
|
||||
|
||||
key.clamp_fragment_color = true;
|
||||
key.clamp_fragment_color = ctx->API == API_OPENGL_COMPAT;
|
||||
|
||||
for (int i = 0; i < MAX_SAMPLERS; i++) {
|
||||
if (fp->Base.ShadowSamplers & (1 << i)) {
|
||||
|
|
|
@ -564,7 +564,7 @@ brw_vs_precompile(struct gl_context *ctx, struct gl_shader_program *prog)
|
|||
memset(&key, 0, sizeof(key));
|
||||
|
||||
key.base.program_string_id = bvp->id;
|
||||
key.base.clamp_vertex_color = true;
|
||||
key.base.clamp_vertex_color = ctx->API == API_OPENGL_COMPAT;
|
||||
|
||||
for (int i = 0; i < MAX_SAMPLERS; i++) {
|
||||
if (vp->Base.ShadowSamplers & (1 << i)) {
|
||||
|
|
Loading…
Reference in New Issue