Commit graph

172547 commits

Author SHA1 Message Date
Caio Oliveira
4f9a23e339 spirv: Use vtn_translate_scope for OpReadClockKHR
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23508>
2023-06-08 21:21:47 +00:00
Caio Oliveira
089a0cf4ef spirv: Refactor and rename scope translation helper
This will make the change from nir_scope to mesa_scope
later less noisy.

Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23508>
2023-06-08 21:21:47 +00:00
Juston Li
7ff978b5de docs: venus: update extension support
Advertise support for the follow extensions:
- VK_EXT_non_seamless_cube_map
- VK_EXT_dynamic_rendering_unused_attachments
- VK_KHR_shader_clock
- VK_EXT_border_color_swizzle
- VK_EXT_fragment_shader_interlock
- VK_EXT_shader_subgroup_ballot
- VK_EXT_color_write_enable

Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
106e97a43a venus: enable VK_EXT_color_write_enable
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
ca0b781132 venus: enable VK_EXT_shader_subgroup_ballot
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
5f2d38ac3c venus: enable VK_EXT_fragment_shader_interlock
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
6e4c93886d venus: enable VK_EXT_border_color_swizzle
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
e217b3093c venus: enable VK_KHR_shader_clock
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
7b31127ed2 venus: enable VK_EXT_dynamic_rendering_unused_attachments
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
7fe390c85b venus: enable VK_EXT_non_seamless_cube_map
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:13 +00:00
Juston Li
bd4cb328a3 venus: sync protocol for multiple extensions for zink
- VK_EXT_non_seamless_cube_map
- VK_EXT_dynamic_rendering_unused_attachments
- VK_KHR_shader_clock
- VK_EXT_border_color_swizzle
- VK_EXT_fragment_shader_interlock
- VK_EXT_shader_subgroup_ballot
- VK_EXT_color_write_enable

Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:12 +00:00
Juston Li
f63ea8614a venus: sync to latest protocol header from v1.3.252
Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23510>
2023-06-08 21:08:12 +00:00
Rhys Perry
7a4a2428c0 util/tests: add gc_alloc_size alignment tests
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23501>
2023-06-08 18:15:13 +00:00
Rhys Perry
928f31a24a util: fix gc_alloc_size alignment
This was only aligning the gc_block_header. The returned pointer could be
incorrectly aligned.

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
Fixes: 69a9b343e8 ("util: add freelist allocator with mark/sweep")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9166
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23501>
2023-06-08 18:15:13 +00:00
Karol Herbst
90b8666ff2 clc: relax spec constant validation
Multiple values can have multiple spec constants assigned and vtn handles
this just fine. So just drop that assert as we need it to run SyCL
kernels.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9037
Fixes: a699844ffb ("microsoft/clc: Parse SPIR-V specialization consts into metadata")
Signed-off-by: Karol Herbst <git@karolherbst.de>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23512>
2023-06-08 17:22:47 +00:00
Karol Herbst
1bbc997bef rusticl: fix clippy errors on image_slice_pitch change to usize
That field got changed from `unsigned` to `uintptr_t` on the C side, so
now we can drop a bit of code dealing with conversions to `usize`.

Fixes: 68735f4e86 ("treewide: use uint64_t / (u)intptr_t in image address calculations")
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23522>
2023-06-08 16:30:52 +00:00
Karol Herbst
d57303ace7 ci: add and use clippy for rusticl
Acked-by: Daniel Stone <daniels@collabora.com>
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23522>
2023-06-08 16:30:52 +00:00
Eric Engestrom
5d551d14cc docs: update calendar for 23.1.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23525>
2023-06-08 16:19:06 +00:00
Eric Engestrom
df0c5d8455 docs/relnotes: add sha256sum for 23.1.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23525>
2023-06-08 16:19:06 +00:00
Eric Engestrom
0e428b6479 docs: add release notes for 23.1.2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23525>
2023-06-08 16:19:06 +00:00
Marek Olšák
bac1c88ea3 mesa: fix glBitmap in display lists when width <= 0 || height <= 0
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8904
Fixes: bb860f63 - mesa: create glBitmap textures while creating display lists

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23335>
2023-06-08 15:30:33 +00:00
Timur Kristóf
206cdbc440 radv: Clarify gang submit terminology.
This is done to better match the terminology used by the kernel
and also because the follower may not always be ACE in the future.

- Gang:	a group of command streams that are submitted to
  more than one HW queue at the same time.
- Leader: the main command stream of a command buffer that works
  on the queue type of the command buffer.
- Follower: a command stream on a different HW queue that doesn't
  have a separate command buffer state and is submitted together
  with its leader.

During submission, a follower must always precede the leader in
the submitted command streams array.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23462>
2023-06-08 15:06:52 +00:00
Mike Blumenkrantz
dad91dc7c4 zink: update some radv qbo fails
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23511>
2023-06-08 14:30:39 +00:00
Mike Blumenkrantz
6aa9e95021 zink: stop swizzling conditional render during batch flush
conditional render is only supposed to be enabled during renderpasses,
and this ends up doing mismatched start/stop in and out of renderpasses

affects:
GTF-GL46.gtf30.GL3Tests.conditional_render*

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23511>
2023-06-08 14:30:39 +00:00
Mike Blumenkrantz
43a6f8b9f8 zink: remove assert for dt in zink_kopper_update
this is a valid (harmless) path that can be hit by in some cases

cc: mesa-stable

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23511>
2023-06-08 14:30:39 +00:00
Mike Blumenkrantz
81834a211d zink: check for cached mem correctly when mapping buffer
bo placement is the mem index, not the mem flags

Fixes: 52f27cda05 ("zink: allow direct memory mapping for any COHERENT+CACHED buffer")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23511>
2023-06-08 14:30:39 +00:00
Mike Blumenkrantz
3e1431dee9 zink: don't check prog->shaders when creating gfx pipeline
these objects don't technically belong to the pipeline, and checking
them may lead to inconsistent results in some corner cases

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23511>
2023-06-08 14:30:39 +00:00
Mike Blumenkrantz
eca11febe2 zink: combine some rast state draw conditionals
no functional changes

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23511>
2023-06-08 14:30:39 +00:00
norablackcat
a1189f4b7f docs/features update opencl extensions add rusticl
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23055>
2023-06-08 13:00:58 +00:00
norablackcat
be673fdd78 rusticl: add cl_khr_create_command_queue
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23055>
2023-06-08 13:00:58 +00:00
Eric Engestrom
c41faeb323 docs/relnotes/23.1.1: clear "new features"
I should've done this after 23.1.0/before 23.1.1, but I forgot :]

Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23521>
2023-06-08 11:16:15 +00:00
Rhys Perry
31c8c42f48 aco/tests: test that s_bfe bits is masked
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23464>
2023-06-08 11:54:45 +01:00
Rhys Perry
08064a5542 aco: mask bits source of s_bfe
The s_bfe instructions use 7 bits, not 5 like the NIR opcode requires.

No fossil-db changes (navi21).

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9162
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23464>
2023-06-08 11:54:17 +01:00
Matt Coster
4a2e62844b pvr: Add support for sampler border colors
Currently only the six vulkan 1.0 pre-defined formats are supported,
but some basic infrastructure that will be useful for implementing
VK_EXT_custom_border_color (and vulkan 1.1) is included.

Only formats currently listed in the pvr_format_table in pvr_formats.c
are currently supported. Unlike most (all?) other drivers, the PowerVR
hardware requires each entry in the border color table to be encoded
for every hardware format (of which there are 128 available, plus 128
for compressed formats).

Also in this commit:
 - Two new constants in rogue_texstate.xml:
    - IMAGE_WORD0_TEXFORMAT_MAX_SIZE, and
    - SAMPLER_BORDERCOLOR_INDEX_MAX_SIZE; and
 - A new device feature (tpu_border_colour_enhanced)

Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21555>
2023-06-08 10:33:46 +00:00
Matt Coster
b8a32e7694 pvr: Declare dependency on idep_mesautil
Signed-off-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21555>
2023-06-08 10:33:46 +00:00
Christian Gmeiner
ae828a33a7 etnaviv: make wider use of DBG_ENABLED(..)
Make the source code more consistent.

Signed-off-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/23495>
2023-06-08 10:09:14 +00:00
Andres Gomez
14782cf248 .mailmap: add an alias for Christian Gmeiner
Signed-off-by: Andres Gomez <agomez@igalia.com>
Reviewed-by: Christian Gmeiner <cgmeiner@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23498>
2023-06-08 09:16:25 +00:00
Karmjit Mahil
aae23fe68d pvr: HWRT creation simplifications.
Signed-off-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Reviewed-by: Matt Coster <matt.coster@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20092>
2023-06-08 08:55:12 +00:00
Gert Wollny
9ace53f3cc r600/sfn: Don't rewrite TESS_EVAL inner tess level outputs
Fixes: 5cd3e3950 (r600/sfn: Make sure all components are usable when lowering TF inputs)

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23518>
2023-06-08 08:32:16 +00:00
Gert Wollny
976d6de232 r600/sfn: add read instruction for unused but required LDS op results
DS_XCHG_RET and LDS_CMP_XCHG_RET don't have a version that doesn't return
a value in the LDS red queue. so we have to read the value from the queue
and discard it.

Fixes: 79ca456b (r600/sfn: rewrite NIR backend)

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23518>
2023-06-08 08:32:16 +00:00
Luigi Santivetti
9396ba3be1 pvr: fixup assert in pvr_cmd_buffer_alloc_mem
Stop explicitly passing PVR_BO_ALLOC_FLAG_CPU_MAPPED to
pvr_cmd_buffer_alloc_mem(). This is redundant for sub-allocations,
as they are always unconditionally mapped to the CPU.

Signed-off-by: Luigi Santivetti <luigi.santivetti@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23463>
2023-06-08 08:14:04 +00:00
SoroushIMG
4dc82b4473 pvr: fix infinite recursion in pvr_cmd_buffer_{start,end}_sub_cmd
Reported-by: James Glanville <james.glanville@imgtec.com>
Reviewed-by: Karmjit Mahil <Karmjit.Mahil@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23463>
2023-06-08 08:14:04 +00:00
Gert Wollny
cb41ef0d3f util/driconf: pin minImageCount to three for "Path of Exile"
"Path of Exile" will fail with an error "unsupported backbuffer image count"
when vkGetPhysicalDeviceSurfaceCapabilitiesKHR reports more than 3 as
minImageCount.

Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21547>
2023-06-08 07:41:53 +00:00
Caio Oliveira
75b63a5d3e r600/sfn: Fix warning about overloads hiding virtual functions
Fixes multiple warnings when building with g++ 13.1.1 that look like

```
./src/gallium/drivers/r600/sfn/sfn_scheduler.cpp:1111:9: warning: ‘virtual void r600::CheckArrayAccessVisitor::visit(const r600::InlineConstant&)’ was hidden [-Woverloaded-virtual=]
 1111 |    void visit(const InlineConstant& value) override {(void)value;}
      |         ^~~~~
../src/gallium/drivers/r600/sfn/sfn_scheduler.cpp:1125:9: note:   by ‘virtual void r600::UpdateArrayWrite::visit(const r600::LocalArrayValue&)’
 1125 |    void visit(const LocalArrayValue& value) override {
      |         ^~~~~
(...)
```

What's going on here is when mixing overloading and virtual functions,
compiler will warn when one of the variants is not overriden.  So tell
it to also use the base class definitions.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23509>
2023-06-08 07:17:21 +00:00
Yonggang Luo
1eda220f18 compiler: use align instead glsl_align and remove glsl_align
#include "util/u_math.h" when necessary to call align function

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:21 +00:00
Yonggang Luo
4134f9ac09 util: Do not use align as variable name
Because align is also a function in u_math.h

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:21 +00:00
Yonggang Luo
586391720b util: use uint32_t as the parameter of align function
align on negative value doesn't make sense

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:21 +00:00
Yonggang Luo
9ce8ff9bb1 util: Remove redundant type cast in function align64
Fixes: 0a06cf7523 ("util: migrate alignment functions and macros to use ALIGN_POT")

Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23421>
2023-06-08 06:41:20 +00:00
Konstantin Seurer
93f047b6ff gallivm: Zero initialize param structs
Zero all param structs using {0} because it's shorter than a memset and
there were some instances where the structs weren't zero initialized.

Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00
Konstantin Seurer
a2159dfe8a gallivm: Handle invalid image format/op combinations
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23515>
2023-06-08 06:07:37 +00:00