mesa/src/broadcom
Alejandro Piñeiro ee917d2b78 v3dv/descriptor_set: combine texture and sampler indices
OpenGL doesn't have the concept of individual texture and sampler, so
texture and sampler indexes have the same value. v3d compiler uses
this assumption, so for example, the texture info at the v3d key
include values that you need to use the texture format and the sampler
to fill (like the return_size).

One option would be to adapt the v3d compiler to handle both, but then
we would need to adapt to the lowerings it uses, like nir_lower_tex,
that also take the same assumption.

We deal with this on the Vulkan driver, by reassigning the texture and
sampler index to a combined one. We add a hash table to map the
combined texture idx and sampler idx to this combined idx, and a
simple array to the opposite map. On the driver we work with the
separate indices to fill up the data, while the v3d compiler works
with the combined one.

As mentioned, this is needed to properly fill up the texture return
size, so as we are here, we fix that. This gets tests like the
following working:

dEQP-VK.glsl.texture_gather.basic.2d.depth32f.base_level.level_2

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6766>
2020-10-13 21:21:29 +00:00
..
cle v3dv: fix a1r5g5b5 format 2020-10-13 21:21:28 +00:00
clif v3dv: clif format dumping support 2020-10-13 21:21:26 +00:00
common v3dv: initial CreateGraphicsPipeline/DestroyPipeline implementation 2020-10-13 21:21:26 +00:00
compiler v3d/compiler: implement nir_op_fquantize2f16 2020-10-13 21:21:28 +00:00
drm-shim v3d: moving v3d simulator to src/broadcom 2020-06-27 00:06:58 +00:00
qpu broadcom/qpu_instr: wait is not a read or write vpm instruction 2020-08-31 15:02:42 +02:00
simulator broadcom/simulator: update to a newer simulator 2020-10-05 22:08:43 +02:00
vulkan v3dv/descriptor_set: combine texture and sampler indices 2020-10-13 21:21:29 +00:00
.editorconfig broadcom: add editorconfig 2017-07-25 14:44:52 -07:00
Android.cle.mk android: broadcom/cle: export the broadcom top level path headers 2018-09-15 09:14:46 +02:00
Android.genxml.mk android: broadcom/genxml: fix collision with intel/genxml header-gen macro 2018-09-15 09:14:33 +02:00
Android.mk broadcom/genxml: Introduce a V3D packet/struct decoder. 2017-07-25 14:44:52 -07:00
Makefile.sources v3d: Add a lowering pass for line smoothing 2020-07-06 21:59:16 +00:00
meson.build v3dv: add v3d vulkan driver skeleton 2020-10-13 21:21:24 +00:00