[Mesa-dev] [PATCH 0/4] gallium: add support for retrieving number of texture samples

Roland Scheidegger sroland at vmware.com
Fri Sep 11 06:26:04 PDT 2015


Am 11.09.2015 um 05:15 schrieb Ilia Mirkin:
> My hope was (as you can see in the last patch) to enable this for all
> drivers that support MS textures. I've got nv50/nvc0/r600g covered.
> 
> RadeonSI will have to read the data from the texture descriptor. I'm
> totally unfamiliar with LLVM, the descriptor format, etc. Hopefully
> someone will be able to write an appropriate patch.
> 
> SVGA seems to support ms textures, but I didn't see anything in its
> virtual ISA that would fit. VMWare folk -- is this going to be easy to
> add? Or do I need to add a new PIPE_CAP?
Note the d3d equivalent (sample_info) is d3d10.1 and svga3d opcodes only
cover d3d10, so yes this isn't doable. So I guess for the time being,
either a cap bit or emulation (stick it into a uniform) should be done,
though Brian probably knows better.

Roland


> 
> Ilia Mirkin (4):
>   tgsi: add a TXQS opcode to retrieve the number of texture samples
>   nv50/ir: add support for TXQS tgsi opcode
>   r600g: add support for TXQS tgsi opcode
>   st/mesa: emit TXQS, support ARB_shader_texture_image_samples
> 
>  src/gallium/auxiliary/tgsi/tgsi_info.c                |  3 ++-
>  src/gallium/docs/source/tgsi.rst                      | 12 +++++++++++-
>  .../drivers/nouveau/codegen/nv50_ir_from_tgsi.cpp     | 17 ++++++++++++-----
>  .../drivers/nouveau/codegen/nv50_ir_lowering_nv50.cpp | 19 +++++++++++++++++++
>  .../drivers/nouveau/codegen/nv50_ir_lowering_nvc0.cpp |  2 ++
>  src/gallium/drivers/r600/r600_shader.c                | 16 ++++++++++++----
>  src/gallium/include/pipe/p_shader_tokens.h            |  1 +
>  src/mesa/state_tracker/st_extensions.c                |  1 +
>  src/mesa/state_tracker/st_glsl_to_tgsi.cpp            |  6 +++++-
>  9 files changed, 65 insertions(+), 12 deletions(-)
> 



More information about the mesa-dev mailing list