diff options
author | Anuj Phogat <[email protected]> | 2014-01-13 12:26:55 -0800 |
---|---|---|
committer | Anuj Phogat <[email protected]> | 2014-01-21 14:42:27 -0800 |
commit | 3313cc269bd428ca96a132d86da5fddc0f27386a (patch) | |
tree | 96712dc4be363f902f55666e1759be7959a9f223 /src/mesa/program | |
parent | 78d65476b69402dc1d82b35e7ba3047ef44d783a (diff) |
i965: Add an option to ignore sample qualifier
This will be useful in my next patch which depends on a functionality
of _mesa_get_min_invocations_per_fragment() to ignore the sample
qualifier (prog->IsSample) based on a flag passed to it.
Cc: [email protected]
Signed-off-by: Anuj Phogat <[email protected]>
Reviewed-by: Chris Forbes <[email protected]>
Diffstat (limited to 'src/mesa/program')
-rw-r--r-- | src/mesa/program/program.c | 5 | ||||
-rw-r--r-- | src/mesa/program/program.h | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/mesa/program/program.c b/src/mesa/program/program.c index 3c19e8c60f0..ea8eb0d3a7a 100644 --- a/src/mesa/program/program.c +++ b/src/mesa/program/program.c @@ -1023,7 +1023,8 @@ _mesa_postprocess_program(struct gl_context *ctx, struct gl_program *prog) */ GLint _mesa_get_min_invocations_per_fragment(struct gl_context *ctx, - const struct gl_fragment_program *prog) + const struct gl_fragment_program *prog, + bool ignore_sample_qualifier) { /* From ARB_sample_shading specification: * "Using gl_SampleID in a fragment shader causes the entire shader @@ -1041,7 +1042,7 @@ _mesa_get_min_invocations_per_fragment(struct gl_context *ctx, * "Use of the "sample" qualifier on a fragment shader input * forces per-sample shading" */ - if (prog->IsSample) + if (prog->IsSample && !ignore_sample_qualifier) return MAX2(ctx->DrawBuffer->Visual.samples, 1); if (prog->Base.SystemValuesRead & (SYSTEM_BIT_SAMPLE_ID | diff --git a/src/mesa/program/program.h b/src/mesa/program/program.h index 0e350cd6f86..c47ac1cc796 100644 --- a/src/mesa/program/program.h +++ b/src/mesa/program/program.h @@ -189,7 +189,8 @@ _mesa_postprocess_program(struct gl_context *ctx, struct gl_program *prog); extern GLint _mesa_get_min_invocations_per_fragment(struct gl_context *ctx, - const struct gl_fragment_program *prog); + const struct gl_fragment_program *prog, + bool ignore_sample_qualifier); static inline GLuint _mesa_program_enum_to_shader_stage(GLenum v) |