Marcin Ślusarz [Wed, 13 Jul 2022 11:52:52 +0000 (13:52 +0200)]
intel/compiler: print shaders after nir_remove_unused_varyings
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17516>
Lucas Stach [Sun, 10 Jul 2022 14:37:25 +0000 (16:37 +0200)]
etnaviv: tex_desc: remove descriptor patch TODO comment
There is nothing more TODO here. With softpin, which is available on all
GPUs using texture descriptors, there is no need for the kernel to patch
the descriptor, as the proper GPU virtual address is filled in by userspace.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17448>
Lucas Stach [Sun, 10 Jul 2022 14:21:02 +0000 (16:21 +0200)]
etnaviv: tex_desc: make error handling more consistent
There already is a error handling label to free the sampler view
struct and return failure. Consistently use this label to make
error handling more uniform.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17448>
Lucas Stach [Sun, 10 Jul 2022 14:03:45 +0000 (16:03 +0200)]
etnaviv: add texture descriptor suballocator
Texture descriptors currently waste a massive ammount of memory, as every
one is allocated via a separate BO. As the allocation granularity of the
kernel is 4KB and the descriptor is only 256B, 93.75% of the allocated
memory is wasted.
Add a simple suballocator for the texture descriptors, to allocate multiple
ones out of a single kernel BO. This isn't perfect, as freed slots in the
suballocated resource are not reused, but worst-case we end up with the
same waste as we had before. This also potentially improves efficiency at
the kernel side, as this reduces the number of BOs needed for the sampler
views in each submit.
As the BO is now used by multiple descriptors, avoid syncing with the GPU
via the cpu_prep/fini calls, as to not introduce stalls between pending
rendering and new descriptors being filled. This is safe, as each
suballocation slot is only used once, so newly filled slots are certainly
not in use by the GPU.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17448>
Lucas Stach [Sun, 10 Jul 2022 13:21:00 +0000 (15:21 +0200)]
etnaviv: move dummy BOs to screen
The dummy texture descriptor and the dummy render target relocs are not ever
changed by a context operation, so we can save some space by moving them to
the screen and potentially share them and the BOs backing them between
multiple contexts.
Also don't hold two pointers to the same BO, one in the reloc and one raw,
but always just use the reloc one.
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17448>
Eric Engestrom [Mon, 11 Jul 2022 22:33:37 +0000 (23:33 +0100)]
zink: add missing guards around `have_{ext}`
Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17466>
Eric Engestrom [Mon, 11 Jul 2022 22:31:25 +0000 (23:31 +0100)]
zink: drop unused VkPhysicalDevicePortabilitySubsetPropertiesKHR
Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17466>
Eric Engestrom [Mon, 11 Jul 2022 17:40:04 +0000 (18:40 +0100)]
zink: fix portability_subset usage after rename from EXTX to KHR
Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17466>
Gert Wollny [Mon, 11 Jul 2022 06:58:48 +0000 (08:58 +0200)]
r600/sfn: emulate pmr::monotonic_buffer_resource if needed
libc++ does not yet implement the c++17 monotonic_buffer_resource,
so emulate it by doing normal allocations that are cleaned up
when the resource is destroyed.
v2: - Use C include and version without namespace aligned_alloc
- add include for sstream needed with clang++ (maurossi)
Closes: #6836
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17452>
Gert Wollny [Sun, 3 Jul 2022 17:04:05 +0000 (19:04 +0200)]
r600/sfn: lower CLIPVERTEX to clip planes
With that most piglits for compatibility contexts are
passing, so enable higher compatibility profile support.
v2: fix formatting ahd fallthrough tag (Filip)
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17484>
Gert Wollny [Tue, 12 Jul 2022 09:45:58 +0000 (11:45 +0200)]
r600/sfn: Add support for fdph
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17484>
Gert Wollny [Mon, 11 Jul 2022 18:09:59 +0000 (20:09 +0200)]
r600/sfn: Never consider an op with register dest as dead
Another hot-fix: when a local register is written to, it is
actually unlikely that the value is never used, so just make
sure that this is never done.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17484>
Gert Wollny [Mon, 11 Jul 2022 17:34:05 +0000 (19:34 +0200)]
r600: limit loops when trying to merge alu groups
On Cayman bank_swizzle[4] is never counted up, so add an
additional condition to make sure the loop is finished
at one point. This is a hot-fix, the logic below should be
improved.
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17484>
Matt Coster [Mon, 4 Jul 2022 11:51:12 +0000 (12:51 +0100)]
pvr: Implicitly assert that the correct sub-command type is present
Now that we have separate C types for the different sub-command types,
we can require a pointer to that type to be passed into functions
which expect the current sub-command to be of a specific type.
Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17458>
Matt Coster [Wed, 29 Jun 2022 10:34:09 +0000 (11:34 +0100)]
pvr: Split out unioned structs from struct pvr_sub_cmd
This is a simple optimization to make type-specific uses of struct
pvr_sub_cmd slightly less verbose.
Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17458>
Rajnesh Kanwal [Wed, 29 Jun 2022 11:16:44 +0000 (12:16 +0100)]
pvr: Implement vkCmdDraw API.
Signed-off-by: Rajnesh Kanwal <rajnesh.kanwal@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17487>
Iago Toral Quiroga [Wed, 13 Jul 2022 07:24:18 +0000 (09:24 +0200)]
v3d,v3dv: stop copying and pasting the translate_swizzle helper
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17509>
Iago Toral Quiroga [Wed, 13 Jul 2022 07:05:01 +0000 (09:05 +0200)]
v3d: stop using a smaller texture limit in OpenGL
The compiler has improved significantly since we found this issue
and this is no longer required.
Notice that because we are increasing the number of samplers
supported beyond what we can loop unroll (currently capped at 16),
some piglit tests that test the maximum number of samplers supported
start to fail because they use indirect indexing on a sampler array
and we don't support that (previously the indirect indexing was
removed by loop unrolling). This is a bug in tests which the
GLSL linker detects, failing to compile the shaders.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17509>
Iago Toral Quiroga [Wed, 13 Jul 2022 06:41:10 +0000 (08:41 +0200)]
v3d,v3dv: stop hardcoding various image limits
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17509>
Iago Toral Quiroga [Wed, 13 Jul 2022 06:15:59 +0000 (08:15 +0200)]
v3dv: clean up get_internal_type_bpp_for_image_aspects
Also, remove the FIXME to pre-compute this in images. We only use
this helper from copy/clear operations where we may be working
with a compatible framebuffer format instead of the original image.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17509>
newbluemoon [Mon, 11 Jul 2022 19:21:35 +0000 (21:21 +0200)]
nine: replace ulimit with sysconf call
__UL_GETOPENMAX seems to be glibc specific and not portable.
In glibc’s sysdeps/posix/ulimit.c it is assigned the return
value of sysconf(_SC_OPEN_MAX). So use the latter in the first place.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5176
CC: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17471>
Chuansheng Liu [Fri, 24 Jun 2022 02:19:03 +0000 (10:19 +0800)]
iris,anv: correct the max thread number for DG2+
Correct the max thread number for DG2+ platforms according
to below bspec.
Ref: Bspec: 47202
Cc: mesa-stable
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Signed-off-by: Chuansheng Liu <chuansheng.liu@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17506>
Georg Lehmann [Mon, 11 Jul 2022 18:55:37 +0000 (20:55 +0200)]
nir/opt_algebraic: Optimize [ui](add|sub)_sat with 0.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17468>
Georg Lehmann [Mon, 11 Jul 2022 18:43:52 +0000 (20:43 +0200)]
nir/lower_io: Fix array length of buffers larger than INT32_MAX.
Before, if the ssbo is too large this would always return 0.
Also, this code is easier to optimize, so the common case of offset 0
and pot stride results in one ushr instead of 5+ instructions.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17468>
Georg Lehmann [Tue, 12 Jul 2022 18:33:49 +0000 (20:33 +0200)]
ir3: Implement [iu]sub_sat.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17468>
Georg Lehmann [Tue, 12 Jul 2022 18:32:00 +0000 (20:32 +0200)]
r600: Lower uadd_sat/usub_sat.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17468>
Georg Lehmann [Tue, 12 Jul 2022 18:29:00 +0000 (20:29 +0200)]
zink: Lower uadd_sat/usub_sat.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17468>
Georg Lehmann [Tue, 12 Jul 2022 18:27:12 +0000 (20:27 +0200)]
nir_to_tgsi: Lower uadd_sat/usub_sat.
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17468>
Panagiotis Apostolou [Tue, 28 Jun 2022 06:47:19 +0000 (08:47 +0200)]
util: Don't block SIGSEGV for new threads
SIGSEGV is used by Vulkan API trace layers to track user changes in
device memory mapped to user space. Now with drivers such as Zink, GLES
applications are translated into Vulkan API calls and therefore it is
possible to be tracked by Vulkan api trace layers.
Blocking SIGSEGV hinders one of the memory tracking mechanisms used by
such layers.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17273>
Iago Toral Quiroga [Tue, 12 Jul 2022 10:30:00 +0000 (12:30 +0200)]
v3dv: fix comment for point_sprite_mask filed in shader key
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17486>
Lionel Landwerlin [Tue, 12 Jul 2022 08:21:57 +0000 (11:21 +0300)]
anv: skip flush/invalidate faster
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17481>
Lionel Landwerlin [Tue, 12 Jul 2022 08:20:10 +0000 (11:20 +0300)]
intel: protect against empty invalidate ranges
It's legal for an application to call vkInvalidateMappedMemoryRanges()
/ vkFlushMappedMemoryRanges() with zero sized ranges.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Fixes:
b91971c240d3 ("anv: use the right helper to invalidate memory")
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6852
Reviewed-by: Marcin Ślusarz <marcin.slusarz@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17481>
Dave Airlie [Mon, 11 Apr 2022 05:37:01 +0000 (15:37 +1000)]
radv: add a dynamic vertex format cache.
With dynamic vertex bindings the vertex format lookups are a lot
more frequent (vs being baked in the pipeline). Add a simple lookup
cache using a dynamic array to keep track of the hw values, and
avoid repeated translation.
This also reduces the memset to just the bitfields since all
the others will be overwritten.
Seen in perf traces gputest gimark with zink on radv.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15846>
Lionel Landwerlin [Tue, 12 Jul 2022 20:07:00 +0000 (23:07 +0300)]
anv: add a comment about handling buffer view swizzles on gfx7
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17385>
Lionel Landwerlin [Tue, 12 Jul 2022 15:33:47 +0000 (18:33 +0300)]
anv: validate image view lowered storage formats for storage
Ensure that if we have swizzle on the initial format, that the
component bits are identical with the lowered format.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17385>
Lionel Landwerlin [Wed, 6 Jul 2022 14:48:27 +0000 (17:48 +0300)]
anv: deal with isl format swizzles for buffer views
For some formats like VK_FORMAT_B5G6R5_UNORM_PACK16, we have no direct
matching HW format. We can support it by swizzling.
We already apply those swizzles for image views. We just forgot to
deal with buffer views.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6235
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17385>
Danylo Piliaiev [Tue, 31 May 2022 11:04:27 +0000 (14:04 +0300)]
docs/u_trace: Add documentation for *_GPU_TRACEPOINT envvars
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16781>
Danylo Piliaiev [Tue, 31 May 2022 09:51:13 +0000 (12:51 +0300)]
freedreno: Add FD_GPU_TRACEPOINT envvar to toggle tracepoints
All tracepoints are enabled by default.
Example:
FD_GPU_TRACEPOINT=-flush_batch
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16781>
Danylo Piliaiev [Mon, 30 May 2022 18:42:55 +0000 (21:42 +0300)]
freedreno: Refactor tracepoints generation to reduce duplication
This way we will not need to repeat arguments for "start" and "end"
tracepoints.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16781>
Danylo Piliaiev [Tue, 31 May 2022 09:37:01 +0000 (12:37 +0300)]
freedreno: Add the rest of tracepoints with start/end to perfetto
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16781>
Danylo Piliaiev [Tue, 31 May 2022 09:54:27 +0000 (12:54 +0300)]
turnip: Add TU_GPU_TRACEPOINT envvar to toggle tracepoints
All tracepoints are enabled by default.
Example:
TU_GPU_TRACEPOINT=-sysmem_clear
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16781>
Danylo Piliaiev [Mon, 30 May 2022 17:49:16 +0000 (20:49 +0300)]
turnip: Refactor tracepoints generation to reduce duplication
This way we will not need to repeat arguments for "start" and "end"
tracepoints.
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16781>
Danylo Piliaiev [Mon, 30 May 2022 18:40:47 +0000 (21:40 +0300)]
util/u_trace: Fix iteration over config_control
Fixes:
e1811af75d5b9385f9811724557a81570d0ef98e
("util/perf: add options to enable/disable tracepoints")
Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16781>
Emma Anholt [Tue, 12 Jul 2022 21:23:51 +0000 (14:23 -0700)]
ci/freedreno: Mark an occasional flake pass that happens on a530.
This MR just saw it happen for the second time I've noticed.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17470>
Emma Anholt [Mon, 11 Jul 2022 19:37:51 +0000 (12:37 -0700)]
loader: Just include driconf.h instead of redefining its values.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17470>
Emma Anholt [Mon, 11 Jul 2022 19:37:38 +0000 (12:37 -0700)]
egl: Just include driconf.h instead of redefining its values.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17470>
Emma Anholt [Thu, 7 Jul 2022 00:13:37 +0000 (17:13 -0700)]
kopper: Respect the vblank_mode env var.
We were defaulting to a swap interval of 1, but we can follow dri2/dri3's
lead and respect the driconf var.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17470>
Emma Anholt [Mon, 11 Jul 2022 19:01:27 +0000 (12:01 -0700)]
glx: Unify dri2/dri3 vblank_mode logic.
We need it from kopper, as well.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17470>
Emma Anholt [Mon, 11 Jul 2022 19:24:17 +0000 (12:24 -0700)]
kopper: Use the swap interval that was set at swapchain creation time.
We need to track what the caller has given us for swap interval, and use
that to set the present mode at startup.
Fixes incorrect vblank syncing in apitrace's glretrace, which sets the
swap interval to 0 before the swapchain is made.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17470>
Emma Anholt [Mon, 11 Jul 2022 18:51:54 +0000 (11:51 -0700)]
kopper: Fix the return value of kopperSetSwapInterval().
Compare to dri2SetSwapInterval() and dri3_set_swap_interval()
implementations of the same method.
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17470>
Marek Vasut [Sat, 23 Apr 2022 13:41:13 +0000 (15:41 +0200)]
etnaviv: Implement TXD
Fill in support for TXD instruction which emits shader TEXLDD opcode.
Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17500>
Marek Vasut [Mon, 25 Apr 2022 21:35:26 +0000 (23:35 +0200)]
etnaviv: Rename etna_emit_tex() args
Rename the args from low_bias/compare to src1/src2, since they
are used for different purposes depending on the texture load
type. No functional change.
Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17500>
Yiwei Zhang [Mon, 11 Jul 2022 22:36:02 +0000 (22:36 +0000)]
venus: GetPhysicalDeviceSparseImageFormatProperties to match sparse support
Test: dEQP-VK.api.info.sparse_image_format_properties2.*
Fixes:
1a7632e54b4 ("venus: add NO_FENCE_FEEDBACK perf option and disable sparse resource")
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17476>
Enrico Galli [Mon, 11 Jul 2022 21:15:40 +0000 (14:15 -0700)]
microsoft/spirv_to_dxil: Fix discard to demote + return pass
While SPIR-V's OpKill is block terminating, the converted discard
intrinsic is not block terminating. This can lead to issues where
instruction could be placed after discard.
This patch adds an extra pass that drops all instructions after discard
before we convert discards.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17474>
Samuel Pitoiset [Tue, 12 Jul 2022 11:56:13 +0000 (13:56 +0200)]
zink/ci: update list of CTS flakes for RADV
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17492>
Adam Jackson [Wed, 6 Jul 2022 17:46:24 +0000 (13:46 -0400)]
glx: Fix return values from __glXGetDrawableAttribute
This is intended to return true on attribute-found.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17422>
Adam Jackson [Wed, 6 Jul 2022 14:22:39 +0000 (10:22 -0400)]
glx/dri2: Stop tracking the protocol version in the display state
We only use it at init time, no need to keep it around.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17422>
Adam Jackson [Fri, 1 Jul 2022 15:50:04 +0000 (11:50 -0400)]
glx: Remove excess screen parameter from CreateContext
This is effectively looked up from the config anyway, which we're
already passing in.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17422>
Adam Jackson [Thu, 23 Jun 2022 18:44:20 +0000 (14:44 -0400)]
glx: Remove unused __glXSetupForCommand from __glXIsDirect
This was needed when we emitted an xlib request here, but xcb knows the
GLX major opcode for the connection already.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17422>
Adam Jackson [Tue, 21 Jun 2022 21:36:03 +0000 (17:36 -0400)]
glx: Remove some can't-happen checks from protocolDestroyDrawable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17422>
Connor Abbott [Tue, 12 Jul 2022 14:55:03 +0000 (16:55 +0200)]
freedreno/a6xx: VPC_SO_NCOMP is actually VPC_SO_BUFFER_STRIDE
This answers the question in a comment in turnip, and fixes some GL46
tests and piglit tests.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17494>
Emma Anholt [Sun, 10 Jul 2022 15:39:36 +0000 (08:39 -0700)]
vc4: Add links to test bug reports.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17449>
Emma Anholt [Sun, 10 Jul 2022 15:11:15 +0000 (08:11 -0700)]
vc4: Work around a HW bug with 2-vert line loops.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17449>
Emma Anholt [Sun, 10 Jul 2022 15:02:51 +0000 (08:02 -0700)]
mesa: Fix the error check for VertexAttrib*.
It was checking "mesa's theoretical max attributes" rather than "the
driver's max attributes."
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17449>
Emma Anholt [Mon, 11 Jul 2022 22:50:50 +0000 (15:50 -0700)]
zink: Do the timestamp-to-ns math in a double to have better precision.
Fixes arb_timer_query-timestamp-get on my radv system, where the GPU has
been on for many days and the timestamp would only increment every once in
a while.
Part of fixing #6808
Fixes:
7a40b734ee2b ("zink: handle timestamp queries")
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17477>
Gert Wollny [Tue, 12 Jul 2022 16:15:41 +0000 (18:15 +0200)]
r600/sfn: Don't use assert to test success of operation
With that the actual call will be eliminated if the code is
compiled with NDEBUG.
Fixes:
79ca456b4837b3bc21cf9ef3c03c505c4b4909f6
r600/sfn: rewrite NIR backend
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6832
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Filip Gawin <filip@gawin.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17496>
Eric Engestrom [Fri, 1 Jul 2022 12:06:18 +0000 (13:06 +0100)]
venus: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:07:04 +0000 (13:07 +0100)]
panvk: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:05:54 +0000 (13:05 +0100)]
dzn: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:03:31 +0000 (13:03 +0100)]
anv: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:05:45 +0000 (13:05 +0100)]
pvr: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:05:20 +0000 (13:05 +0100)]
lavapipe: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:05:06 +0000 (13:05 +0100)]
zink: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Hoe Hao Cheng [Sat, 2 Jul 2022 08:19:13 +0000 (16:19 +0800)]
zink/codegen: use the updated identifiers
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:04:48 +0000 (13:04 +0100)]
turnip: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:04:28 +0000 (13:04 +0100)]
v3dv: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Acked-by: Iago Toral Quiroga <itoral@igalia.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:03:58 +0000 (13:03 +0100)]
radv: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:07:26 +0000 (13:07 +0100)]
nir: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:02:59 +0000 (13:02 +0100)]
vulkan: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Fri, 1 Jul 2022 12:02:59 +0000 (13:02 +0100)]
vulkan/runtime: use updated tokens from vk.xml
Signed-off-by: Eric Engestrom <eric@igalia.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Eric Engestrom [Thu, 10 Jan 2019 14:02:51 +0000 (14:02 +0000)]
vulkan: add script to detect & replace identifiers that have been renamed
Signed-off-by: Eric Engestrom <eric@engestrom.ch>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17342>
Jason Ekstrand [Fri, 8 Jul 2022 21:21:25 +0000 (16:21 -0500)]
vulkan/wsi: Add debug variables to force the SW and PRIME buffer blit paths
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17436>
Jason Ekstrand [Fri, 8 Jul 2022 21:47:48 +0000 (16:47 -0500)]
vulkan/wsi/wayland: Add a BUFFER_TYPE flag
This makes all the different ways of presenting a bit more clear.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17436>
Jason Ekstrand [Thu, 7 Jul 2022 00:51:03 +0000 (19:51 -0500)]
anv: Init supported extensions before WSI
Otherwise WSI extension support checks won't work.
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17436>
Mike Blumenkrantz [Mon, 11 Jul 2022 19:04:00 +0000 (15:04 -0400)]
lavapipe: don't crash on null xfb buffer pointer
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17469>
Mike Blumenkrantz [Mon, 11 Jul 2022 14:59:00 +0000 (10:59 -0400)]
lavapipe: don't overwrite entire VkFormatProperties3 struct
this clobbers pNext and breaks tooling, as found by Panagiotis Apostolou
Fixes:
f72d5a930b1 ("lavapipe: KHR_format_feature_flags2")
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17462>
SoroushIMG [Mon, 11 Jul 2022 13:00:50 +0000 (14:00 +0100)]
zink: Fix BO size when it's not aligned to 16 bytes
glsl_get_explicit_size can return non-16 byte aligned sizes.
Therefore, make sure the sure the size isrounded up so that OOB does not happen.
Fixes:
ea8a0654f5b ("zink: further improve bo sizing")
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17460>
Konstantin Seurer [Sat, 9 Jul 2022 20:20:58 +0000 (22:20 +0200)]
radv: Fix acceleration structure size queries
From looking at the CTS,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR
refers to the serialization size and not to the
actual, current size.
Fixes the following CTS:
dEQP-VK.ray_tracing_pipeline.acceleration_structures.query_pool_results.cpu.buffer.size
dEQP-VK.ray_tracing_pipeline.acceleration_structures.query_pool_results.cpu.memory.size
dEQP-VK.ray_tracing_pipeline.acceleration_structures.query_pool_results.gpu.buffer.size
dEQP-VK.ray_tracing_pipeline.acceleration_structures.query_pool_results.gpu.memory.size
Fixes: 5d56c2c ("radv: Add accel struct queries for maintenance1")
Signed-off-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17444>
Bas Nieuwenhuizen [Fri, 8 Jul 2022 16:18:13 +0000 (18:18 +0200)]
radv: Add ability to override the build id for the cache.
This would allow us to keep the shader cache key the same for updates
that we know won't impact compilation on SteamOS.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17426>
Iago Toral Quiroga [Tue, 12 Jul 2022 09:36:56 +0000 (11:36 +0200)]
v3dv: remove unused lowering for nir_intrinsic_load_layer_id
This intrinsic is only produced when the compiler is instructed
to handle layer id as a system value, which we don't use. Also,
we have been supporting layered rendering for a while and passing
all the relevant tests which would've failed if we were hitting
this lowering.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17483>
Iago Toral Quiroga [Tue, 12 Jul 2022 09:02:15 +0000 (11:02 +0200)]
v3dv: fix comment in texel buffer shader copy path
When using the texel buffer copy path to copy a buffer we need to
sample from the buffer and for that we need a texture shader state
record where we specify the base offset of the texture (the buffer).
If the copy operation has a start offset we can't add that offset
to the base address of the buffer because the texture state record
requires the base pointer to be 64-byte aligned, so it would only
work for offsets that are multiple of 64B. Instead, we pass the
offset (in elements) to the shader and we use that to shift the
indices into the buffer when selecting the source texel to copy.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17482>
Adam Jackson [Mon, 11 Jul 2022 20:24:36 +0000 (16:24 -0400)]
gallium/dri: Remove the memory of GLX_MESA_multithread_makecurrent
The only way this could happen was if GLX did it, which it doesn't.
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17473>
Adam Jackson [Mon, 11 Jul 2022 20:11:53 +0000 (16:11 -0400)]
glx: Remove the remains of GLX_MESA_multithread_makecurrent
This hasn't actually been exported for a while. I think I probably broke
this in
commit
63a6b719d98fb1ad58ae93c2de859e6d4bfa8b8b
Author: Adam Jackson <ajax@redhat.com>
Date: Tue Dec 5 11:10:09 2017 -0500
glx: GLX_MESA_multithread_makecurrent is direct-only
in which I made it no longer default to having client support, but
failed to instruct dri{2,3,sw} to enable it. In any case, it was never
widely used, there is no EGL equivalent, and we've had zero complaints
about it getting nerfed.
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17473>
Konstantin Seurer [Sat, 9 Jul 2022 15:22:43 +0000 (17:22 +0200)]
radv: Skip pipeline_no_null_shaders_flag tests
Those tests either fail or hang so just exclude
all of them for now to make ray tracing CTS usable
again.
Signed-off-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17443>
Samuel Pitoiset [Thu, 7 Jul 2022 08:28:57 +0000 (10:28 +0200)]
radv: fix wide points/lines by configuring the guardband correctly
Fixes all remaining wide points/lines failures with Zink.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6121
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17392>
Nanley Chery [Tue, 12 Apr 2022 22:00:23 +0000 (15:00 -0700)]
mesa: Follow ASTC decode mode extension for RGBA8 output
The GL extension, EXT_texture_compression_astc_decode_mode, enables
applications to specify the desired decoding precision when decoding
non-sRGB ASTC textures. The options for the channels are FP16 (the
default), UNORM8, and RGB9_E5.
The ASTC LDR decoder outputs to UNORM8 by doing the following
conversions: UNORM16 -> FP16 -> UNORM8. This doesn't seem to be defined
by any specification and is costly according to perf profiles. To
conform to the decode mode spec (and for better performance), we convert
UNORM16 to UNORM8 by simply storing/keeping the top 8 bits.
In a texture upload microbenchmark, this decreases the upload time for
textures in the linear color space by about 34%.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17195>
Nanley Chery [Wed, 13 Apr 2022 22:15:38 +0000 (15:15 -0700)]
mesa: Simplify UNORM8 conversions for sRGB ASTC textures
The ASTC extension specs state that a vector of UNORM8 values are
returned when decoding sRGB ASTC textures. For the alpha channel
however, they don't seem to specify how to get there from the UNORM16
produced after interpolation (or returned from a void-extent block).
The ASTC decoder in the VK-GL-CTS project treats the alpha channel like
the RGB channels and simply uses the top 8 bits of the UNORM16. For
better performance, we choose to do the same.
In a texture upload microbenchmark, this decreases the upload time for
textures in the sRGB color space by about 13%.
Ref: https://gitlab.khronos.org/egl/DataFormat/-/merge_requests/32
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17195>
Adam Jackson [Fri, 8 Jul 2022 15:43:55 +0000 (11:43 -0400)]
mesa: Stub out GL_APPLE_object_purgeable
There's slots in the glapi static dispatch table (which is still
arguably ABI) which we need to preserve, but we can stop exposing the
extension string or doing anything in the added functions.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17425>
Emma Anholt [Thu, 30 Jun 2022 21:10:50 +0000 (14:10 -0700)]
ir3: Use non-persp interpolation when appropriate for interpolateAtOffset.
Fixes dEQP-VK.draw.renderpass.linear_interpolation.offset_min_4_samples.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17322>
Emma Anholt [Tue, 5 Jul 2022 17:15:07 +0000 (10:15 -0700)]
ir3: Clarify what's happening in the interpolateAtOffset() math.
nir_builder lets us build much cleaner code than we had (assuming that we
get a scalarizing after this).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17322>