lavapipe: Ignore src_plane for samplers
Some checks are pending
macOS-CI / macOS-CI (dri) (push) Waiting to run
macOS-CI / macOS-CI (xlib) (push) Waiting to run

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/42098>
This commit is contained in:
Konstantin Seurer 2026-06-08 22:25:59 +02:00 committed by Marge Bot
parent 6cb9aaa2b7
commit e68358756c

View file

@ -102,13 +102,13 @@ pass(nir_builder *b, nir_instr *instr, void *data)
} else if (tex->src[i].src_type == nir_tex_src_sampler_heap_offset) {
tex->src[i].src_type = nir_tex_src_sampler_handle;
nir_def *base = nir_load_const_buf_base_addr_lvp(b, nir_imm_int(b, LVP_DESCRIPTOR_HEAP_SAMPLER + 1));
nir_src_rewrite(&tex->src[i].src, nir_iadd(b, base, nir_u2u64(b, nir_iadd_imm(b, tex->src[i].src.ssa, plane_offset))));
nir_src_rewrite(&tex->src[i].src, nir_iadd(b, base, nir_u2u64(b, tex->src[i].src.ssa)));
}
}
if (tex->embedded_sampler) {
nir_def *base = nir_load_const_buf_base_addr_lvp(b, nir_imm_int(b, LVP_DESCRIPTOR_HEAP_EMBEDDED + 1));
nir_def *sampler = nir_iadd_imm(b, base, tex->sampler_index * sizeof(struct lp_sampler_descriptor) + plane_offset);
nir_def *sampler = nir_iadd_imm(b, base, tex->sampler_index * sizeof(struct lp_sampler_descriptor));
nir_tex_instr_add_src(tex, nir_tex_src_sampler_handle, sampler);
}