mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 16:08:04 +02:00
llvmpipe: add support for tg4 component selection.
This is needed as part of GLES3.1 and helps for ARB_gpu_shader5. Fixes: KHR-GLES31.core.texture_gather.* cases Reviewed-by: Roland Scheidegger <sroland@vmware.com>
This commit is contained in:
parent
a70f0a8841
commit
05b008c961
2 changed files with 5 additions and 0 deletions
|
|
@ -2237,6 +2237,10 @@ emit_tex( struct lp_build_tgsi_soa_context *bld,
|
|||
lod_property = lp_build_lod_property(&bld->bld_base, inst, 0);
|
||||
}
|
||||
|
||||
if (sampler_op == LP_SAMPLER_OP_GATHER) {
|
||||
uint32_t comp_val = inst->Src[sampler_reg].Register.SwizzleX;
|
||||
sample_key |= (comp_val << LP_SAMPLER_GATHER_COMP_SHIFT);
|
||||
}
|
||||
if (modifier == LP_BLD_TEX_MODIFIER_PROJECTED) {
|
||||
oow = lp_build_emit_fetch(&bld->bld_base, inst, 0, 3);
|
||||
oow = lp_build_rcp(&bld->bld_base.base, oow);
|
||||
|
|
|
|||
|
|
@ -388,6 +388,7 @@ llvmpipe_get_param(struct pipe_screen *screen, enum pipe_cap param)
|
|||
case PIPE_CAP_MAX_SHADER_BUFFER_SIZE:
|
||||
return LP_MAX_TGSI_SHADER_BUFFER_SIZE;
|
||||
case PIPE_CAP_FRAMEBUFFER_NO_ATTACHMENT:
|
||||
case PIPE_CAP_TGSI_TG4_COMPONENT_IN_SWIZZLE:
|
||||
return 1;
|
||||
default:
|
||||
return u_pipe_screen_get_param_defaults(screen, param);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue