summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorIago Toral Quiroga <[email protected]>2017-01-25 15:04:35 +0100
committerIago Toral Quiroga <[email protected]>2017-01-26 08:11:21 +0100
commit9b25769da63999fa65a70a14194a452c49d18f3e (patch)
treea8c69c4862669eee91e8a7d666fd80f686a10002 /src
parent5106df85da20d57007e89262472bb1624afbdaba (diff)
anv/lower_input_attachments: honor sample index parameter to subpassLoad()
According to GL_KHR_vulkan_glsl, the signature of subpassLoad() is: gvec4 subpassLoad(gsubpassInput subpass); gvec4 subpassLoad(gsubpassInputMS subpass, int sample); So the multisampled case always receives an explicit sample index that we should use. The current implementation was ignoring this parameter and using gl_SampleID value instead. Fixes: dEQP-VK.pipeline.multisample_shader_builtin.sample_id.* Reviewed-by: Jason Ekstrand <[email protected]> Cc: "17.0" <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/intel/vulkan/anv_nir_lower_input_attachments.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/intel/vulkan/anv_nir_lower_input_attachments.c b/src/intel/vulkan/anv_nir_lower_input_attachments.c
index 1d6f727258a..244e7ff7ae1 100644
--- a/src/intel/vulkan/anv_nir_lower_input_attachments.c
+++ b/src/intel/vulkan/anv_nir_lower_input_attachments.c
@@ -100,11 +100,8 @@ try_lower_input_load(nir_function_impl *impl, nir_intrinsic_instr *load)
if (image_dim == GLSL_SAMPLER_DIM_SUBPASS_MS) {
tex->op = nir_texop_txf_ms;
-
- nir_ssa_def *sample_id =
- nir_load_system_value(&b, nir_intrinsic_load_sample_id, 0);
tex->src[2].src_type = nir_tex_src_ms_index;
- tex->src[2].src = nir_src_for_ssa(sample_id);
+ tex->src[2].src = load->src[1];
}
nir_ssa_dest_init(&tex->instr, &tex->dest, 4, 32, NULL);