Mike Blumenkrantz [Wed, 12 Oct 2022 21:35:03 +0000 (17:35 -0400)]
zink: prevent ballooning of view object memory
if a resource is in use every frame and never goes idle, it becomes
impossible to execute pruning, as there is no tracking for when views
are no longer in use
to avoid eventually ooming in this scenario, add some data to zink_resource_object
which can effectively "queue" pruning of these views if ballooning is
detected at a time when the views are guaranteed to be safe to delete
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19056>
Mike Blumenkrantz [Wed, 12 Oct 2022 19:03:55 +0000 (15:03 -0400)]
zink: delete view objects when unsetting resource usage in batch reset
if the resource has no usage, it's guaranteed to be idle, which means view
objects can be pruned to avoid memory ballooning
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19056>
Mike Blumenkrantz [Wed, 12 Oct 2022 14:48:14 +0000 (10:48 -0400)]
zink: rework/improve descriptor pool overflow handling on batch reset
the existing model for descriptor pools works thusly:
* allocate pool
* when possible, reuse existing pool from overflow array
* when pool is full, append to overflow array
* on batch reset, cycle the overflow arrays to enable reuse
the problem with this is it uses two separate arrays for overflow, and these arrays
are cycled but never consolidated, leading to wasted memory allocations for whichever
array is not currently being recycled
to resolve this, make the following changes to batch resets:
* set the recycle index to whichever overflow array is smaller
* copy the elements from the smaller array to the larger array (consolidate)
* set the number of elements in the smaller array to 0
this leads to always appending to an empty array while the array containing all the
"free" pools is always the one that's available for recycled use
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19053>
Mike Blumenkrantz [Wed, 12 Oct 2022 15:51:14 +0000 (11:51 -0400)]
zink: fix pool overflow handling on batch reset
this mechanism worked off the previous iteration of descriptor updating,
in which pools were stored in a set to the batch state and could be iterated
normally
now, however, they're stored as a sparse array, and so the dynarray util for getting
the number of elements cannot be used
instead, use the calculated size for the array like every other accessor for
the pools to ensure correct indexing
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19053>
Mike Blumenkrantz [Wed, 12 Oct 2022 14:45:07 +0000 (10:45 -0400)]
zink: handle oom better during descriptor updating
in the case where a new descriptor pool cannot be allocated naturally:
* iterate free batch states and try to free up memory
* iterate in-use batch states and try to free up memory
* ???
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19053>
Mike Blumenkrantz [Wed, 12 Oct 2022 14:44:44 +0000 (10:44 -0400)]
zink: move descriptor function up in file
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19053>
Chad Versace [Wed, 12 Oct 2022 04:09:19 +0000 (21:09 -0700)]
venus: Enable Vulkan 1.3
Signed-off-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19046>
Chad Versace [Wed, 12 Oct 2022 02:01:13 +0000 (19:01 -0700)]
venus: Enable VK_KHR_synchronization2
Signed-off-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19046>
Chad Versace [Wed, 12 Oct 2022 03:27:11 +0000 (20:27 -0700)]
venus: Refactor vn_command_buffer_builder temp storage
Easy refactor. Change the storage type from `VkImageMemoryBarrier *` to
`void *`. Prepares for VK_KHR_synchronization2.
The patch series is cleaner with this refactor. I promise.
Signed-off-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19046>
Chad Versace [Wed, 12 Oct 2022 02:00:46 +0000 (19:00 -0700)]
venus: Add vn_queue_wait_idle_before_present()
Trivial refactor.
Signed-off-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19046>
Chad Versace [Wed, 12 Oct 2022 01:58:19 +0000 (18:58 -0700)]
venus: Change signature of vn_get_fence_feedback_cmd
Trivial refactor.
Signed-off-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19046>
Chad Versace [Wed, 12 Oct 2022 02:05:25 +0000 (19:05 -0700)]
venus/queue: Rename some local vars
Reduces noise in following patches.
Signed-off-by: Chad Versace <chadversary@chromium.org>
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org>
Reviewed-by: Ryan Neph <ryanneph@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19046>
Simon Zeni [Wed, 28 Sep 2022 10:25:11 +0000 (06:25 -0400)]
meson: remove unused EGL_NO_X11 definition
Last EGL header update changed the logic for the Xlib header inclusion. Now
the caller has to specify USE_X11 if they want the Xlib definitions.
Signed-off-by: Simon Zeni <simon@bl4ckb0ne.ca>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18848>
Simon Zeni [Wed, 28 Sep 2022 10:23:01 +0000 (06:23 -0400)]
EGL: sync headers with Khronos
Since [1], EGL removed the inclusion of the Xlib headers by default.
The logic is now reversed, and the call has to define USE_X11 to include the
Xlib headers instead of EGL_NO_X11_HEADERS to prevent the inclusion.
[1]: https://github.com/KhronosGroup/EGL-Registry/pull/130/commits/
3670d645f4a26a0a9e87e7f3a8608e7cc1d53b5b
Signed-off-by: Simon Zeni <simon@bl4ckb0ne.ca>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18848>
Simon Zeni [Fri, 30 Sep 2022 10:11:07 +0000 (06:11 -0400)]
egl: set API symbols public
With the latest header update from Khronos, KHRONOS_APICALL (which is then
defined as EGLAPI) is empty, preventing the API symbols to be visible.
This commit adds `PUBLIC` to all the symbols from the EGL API that needs to be
visible.
Signed-off-by: Simon Zeni <simon@bl4ckb0ne.ca>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18848>
Simon Zeni [Wed, 28 Sep 2022 10:15:26 +0000 (06:15 -0400)]
egl: fix Xlib include in egldisplay.h
Signed-off-by: Simon Zeni <simon@bl4ckb0ne.ca>
Reviewed-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18848>
Brian Paul [Tue, 11 Oct 2022 17:51:57 +0000 (11:51 -0600)]
draw: fix base vertex bug
Move the assignment of draw->start_index into the num_draws loop
in draw_pt_arrays() so that it's updated for each primitive we're
drawing. Previously, it was only set once to the 0th primitive's
start index.
This fixes incorrect gl_BaseVertex values when using
vkCmdDrawMultiEXT() with more than one VkMultiDrawInfoEXT item.
Signed-off-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19039>
Brian Paul [Mon, 10 Oct 2022 20:13:10 +0000 (14:13 -0600)]
draw: fix vertex id offset bug
The vertex_id_offset value needs to be used both for the elt and
linear cases. As it was, if a long primitive was split, the vertex id
seen in the VS was also getting to reset to zero for each batch of the
split prim's vertices.
This fixes at least five VMware test cases (dx11-dxsdk-FluidCS11,
dx11-amd-TressFX-v1.0, dx10-win7-dxsdk-samples-nbodygravity,
dx10-win7-dxsdk-samples-gpuboids, dx10-wide-points).
Signed-off-by: Brian Paul <brianp@vmware.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Roland Scheidegger <sroland@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19039>
Dylan Baker [Wed, 12 Oct 2022 17:18:38 +0000 (10:18 -0700)]
intel/genxml: use Path.replace instead of unlink and rename
Suggested-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Mon, 3 Oct 2022 17:32:37 +0000 (10:32 -0700)]
intel/genxml: use a main() function
So we have less stuff in the global namespace
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Mon, 3 Oct 2022 17:31:58 +0000 (10:31 -0700)]
intel/genxml: split the processing code up
Instead of crewating output or validating in the process code, just
process, then let main handle the rest
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Mon, 3 Oct 2022 17:45:47 +0000 (10:45 -0700)]
intel/genxml: reprocess xml with elementree output
This makes two relatively small changes, first it addes the encoding to
the xml delcaration, and switches the quote style. Second, it changes
the final newline. These seemed minor enough to not warrent patches to
make the old wrter do the same thing as the new writer.
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Mon, 3 Oct 2022 17:22:20 +0000 (10:22 -0700)]
intel/genxml: use ElementTree.write and .indent
This removes a bunch of hand-written code, and allows for fewer corner
cases. The resulting code has some minor differences (no empty newlines
and the encoding is declared in the xml declaration)
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Tue, 4 Oct 2022 17:14:21 +0000 (10:14 -0700)]
intel/genxml: re-process with extra whitespace removed
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Mon, 3 Oct 2022 17:38:02 +0000 (10:38 -0700)]
intel/genxml: remove newlines between xml islands
When we move to using etree to print this it won't have them, so this
minimizes the diff further.
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Tue, 4 Oct 2022 17:13:47 +0000 (10:13 -0700)]
intel/genxml: re-process with space before `/>`
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Dylan Baker [Mon, 3 Oct 2022 17:49:09 +0000 (10:49 -0700)]
intel/genxml: write a space before the '/>` closing tag
ElementTree.write will do this, and we want to minimize the diff when we
switch from our own writer to the builtin one.
Reviewed-by: Eric Engestrom <eric@engestrom.ch>
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Jordan Justen <jordan.l.justen@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18955>
Ruijing Dong [Thu, 6 Oct 2022 20:45:58 +0000 (16:45 -0400)]
radeonsi/vcn: enable multi-slice encoding
- enable h264 multiple slice encoding
- enable hevc multiple slice encoding
- enable hevc block size config options.
- enable amp, strong_intra_smmothing,
constrained_intra_pred and deblocking filter
disable config options for hevc encoding.
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18992>
Ruijing Dong [Thu, 6 Oct 2022 20:37:47 +0000 (16:37 -0400)]
radeonsi/vcn: enable dbk in avc encoding
enable deblocking filter in avc encoder.
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18992>
Ruijing Dong [Thu, 6 Oct 2022 20:33:36 +0000 (16:33 -0400)]
frontends/va: add h264 dbk enc parameters
Obtain va h264 dbk enc parameters.
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18992>
Ruijing Dong [Thu, 6 Oct 2022 20:26:56 +0000 (16:26 -0400)]
gallium/pipe/video: add data struct for dbk in avc encoding.
add dbk data structure for preparing enabling
avc deblocking filter.
Reviewed-by: Sil Vilerino <sivileri@microsoft.com>
Reviewed-by: Boyuan Zhang <Boyuan.Zhang@amd.com>
Signed-off-by: Ruijing Dong <ruijing.dong@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18992>
Bas Nieuwenhuizen [Fri, 8 Oct 2021 00:11:19 +0000 (02:11 +0200)]
radv: Rework modification detection of the meta cache.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19047>
Bas Nieuwenhuizen [Thu, 7 Oct 2021 22:39:17 +0000 (00:39 +0200)]
radv: Use a VkPipelineCache handle for meta shaders.
Prep work for using the common vk caches.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19047>
Bas Nieuwenhuizen [Fri, 8 Oct 2021 00:03:06 +0000 (02:03 +0200)]
radv: Constify entry_size.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19047>
Samuel Pitoiset [Tue, 11 Oct 2022 09:06:05 +0000 (11:06 +0200)]
radv: use SHA1_DIGEST_LENGTH in the pipeline cache
Instead of a magic value.
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/19047>
Samuel Pitoiset [Tue, 11 Oct 2022 10:27:20 +0000 (12:27 +0200)]
radv: move the disk cache to the vk_physical_device struct
To be able to use it from the common pipeline cache implementation.
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/19047>
Konstantin Seurer [Sun, 9 Oct 2022 12:46:31 +0000 (14:46 +0200)]
radv: Remove create_accel_build_shader
Unused since every kernel is written in GLSL now.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19006>
Mike Blumenkrantz [Wed, 12 Oct 2022 01:53:49 +0000 (21:53 -0400)]
zink: handle global and scratch vars
also delete cs pushconst since that was for clover and I don't care anymore
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19044>
Mike Blumenkrantz [Wed, 12 Oct 2022 01:55:16 +0000 (21:55 -0400)]
zink: add some bda handling
will be useful in the near future
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19044>
Mike Blumenkrantz [Tue, 11 Oct 2022 20:24:51 +0000 (16:24 -0400)]
zink: add a safety assert in descriptor updates
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19038>
Mike Blumenkrantz [Tue, 11 Oct 2022 20:34:27 +0000 (16:34 -0400)]
zink: move descriptor layout/pool stuff to screen object
this already has locks for async gfx precompiles, but compute shaders
can be compiled on one context and bound on another, which means
all the descriptor stuff they allocate has to be portable:
specifically the pool key ids MUST match across contexts
this is trivially achieved by making pool keys into screen objects
fixes #7434
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19038>
Dylan Baker [Tue, 11 Oct 2022 20:49:07 +0000 (13:49 -0700)]
docs: update calendar and link releases notes for 22.2.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19040>
Dylan Baker [Tue, 11 Oct 2022 19:09:25 +0000 (12:09 -0700)]
docs: Add sha256 sum for 22.2.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19040>
Dylan Baker [Tue, 11 Oct 2022 18:53:31 +0000 (11:53 -0700)]
docs: add release notes for 22.2.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19040>
SoroushIMG [Fri, 30 Sep 2022 15:08:27 +0000 (16:08 +0100)]
zink: fix isNan mismatch between NIR and SPIR-V
SPIR-V and Vulkan allow implementations to optimize
float ops assuming inputs are not NaN unless SignedZeroInfNanPreserve
execution mode is enabled.
This means isnan which is turned to nir_op_fneu(a,a) and then emitted
as SpvOpFUnordNotEqual could potentially be optimised to a const 0.
isnan is special in this approach and therefore recognise this pattern,
and emit SpvOpIsNan instead of enabling SignedZeroInfNanPreserve which
will hurt performace of some vulkan drivers.
Fixes dEQP-GL45-ES31.functional.shaders.builtin_functions.common.isnan.*
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18910>
SoroushIMG [Thu, 1 Sep 2022 18:40:16 +0000 (19:40 +0100)]
zink: stop enabling minmax filtering when not supported
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18910>
SoroushIMG [Tue, 19 Jul 2022 12:25:02 +0000 (13:25 +0100)]
zink: fix invalid Offset set for variables which do not need an offset
Offset decoration in spirv is unsigned and it does not have a notion of an invalid offset.
Unlike NIR which set -1 for invlaid offset. This translates to invalid spirv being produced.
Instead, just don't emit an Offset decoration.
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18910>
Konstantin Seurer [Mon, 10 Oct 2022 14:07:08 +0000 (16:07 +0200)]
radv/rra: Calculate bvh size requirements recursively
Gets rid of the assumption, that every internal node has the same size.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19017>
Konstantin Seurer [Sun, 9 Oct 2022 20:00:17 +0000 (22:00 +0200)]
radv/rra: Handle box16 nodes
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19017>
Konstantin Seurer [Sun, 9 Oct 2022 16:30:42 +0000 (18:30 +0200)]
radv: Use half floats for box16 coords
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19017>
Konstantin Seurer [Sun, 9 Oct 2022 16:24:51 +0000 (18:24 +0200)]
radv: Add radv_bvh_node_box16
Adds the last useful node type. The different triangle types can be
derived by addition.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19017>
Konstantin Seurer [Sun, 9 Oct 2022 16:21:27 +0000 (18:21 +0200)]
radv: Rename node_internal to node_box32
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19017>
Brian Paul [Fri, 7 Oct 2022 19:24:25 +0000 (13:24 -0600)]
draw: s/start_or_maxelt/start/ in llvm VS code
Per the now removed comment, the maxelt part of start_or_maxelt was
not used. Rename to start to avoid confusion.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Fri, 7 Oct 2022 19:18:22 +0000 (13:18 -0600)]
draw: move vs_slot var in tgsi/llvm_fetch_gs_input()
Move the decl to where it's first used. Remove the unneeded increment.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Fri, 7 Oct 2022 03:24:56 +0000 (21:24 -0600)]
draw: fix some const-correctness in draw_vbo()
There's no need to cast away const for use_info and draw_info. There
might have been a reason in the past.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 17:08:16 +0000 (11:08 -0600)]
draw: make draw_geometry_shader_run() return void
The return value was always zero and unused.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 16:35:18 +0000 (10:35 -0600)]
draw: replace double conditional expression with if/else
This is a bit more verbose, but quicker to grok, IMHO.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Wed, 5 Oct 2022 19:42:12 +0000 (13:42 -0600)]
draw: asst. clean-ups in draw_pt_fetch_shade_pipeline_llvm.c
Also rename vid_base to vertex_id_offset to match code elsewhere.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Fri, 7 Oct 2022 19:14:15 +0000 (13:14 -0600)]
draw: asst. clean-ups in draw_private.h
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 16:36:59 +0000 (10:36 -0600)]
draw: clean-up count assignment in draw_pt_arrays()
count was initialized to draw_info[i].count but then re-assigned a few
lines later. Remove the original assignment. Move the var decl.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 16:33:19 +0000 (10:33 -0600)]
draw: asst. clean-ups in draw_pt.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:47:43 +0000 (21:47 -0600)]
draw: asst. clean-ups in draw_split_tmp.h
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:47:18 +0000 (21:47 -0600)]
draw: asst. clean-ups in draw_pt_vsplit_tmp.h
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:47:03 +0000 (21:47 -0600)]
draw: asst. clean-ups in draw_pipe.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:42:07 +0000 (21:42 -0600)]
draw: asst. clean-ups in draw_prim_assembler.[ch]
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:38:57 +0000 (21:38 -0600)]
draw: asst. clean-ups in draw_gs.[ch]
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:31:54 +0000 (21:31 -0600)]
draw: asst. clean-ups in draw_cliptest_tmp.h
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:26:12 +0000 (21:26 -0600)]
draw: asst. clean-ups in draw_llvm.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:16:47 +0000 (21:16 -0600)]
draw: asst. clean-ups in draw_pipe_aapoint.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:14:31 +0000 (21:14 -0600)]
draw: asst. clean-ups in draw_pt_so_emit.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:09:32 +0000 (21:09 -0600)]
draw: asst. clean-ups in draw_vertex.[ch]
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:08:28 +0000 (21:08 -0600)]
draw: asst. clean-ups in draw_pipe_wide_point.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:06:54 +0000 (21:06 -0600)]
draw: asst. clean-ups in draw_pipe_wide_line.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:05:08 +0000 (21:05 -0600)]
draw: asst. clean-ups in draw_pipe_util.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:03:39 +0000 (21:03 -0600)]
draw: asst. clean-ups in draw_pipe_user_cull.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:02:20 +0000 (21:02 -0600)]
draw: asst. clean-ups in draw_pipe_unfilled.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 03:00:15 +0000 (21:00 -0600)]
draw: asst. clean-ups in draw_pipe_twoside.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:58:23 +0000 (20:58 -0600)]
draw: asst. clean-ups in draw_pipe_pstipple.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:56:24 +0000 (20:56 -0600)]
draw: asst. clean-ups in draw_pipe_offset.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:56:15 +0000 (20:56 -0600)]
draw: asst. clean-ups in draw_pipe_flatshade.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:52:17 +0000 (20:52 -0600)]
draw: asst. clean-ups in draw_pipe_clip.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:43:42 +0000 (20:43 -0600)]
draw: asst. clean-ups in draw_pipe_cull.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:40:57 +0000 (20:40 -0600)]
draw: asst. clean-ups in draw_pt_post_vs.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:37:13 +0000 (20:37 -0600)]
draw: asst. clean-ups in draw_pt_fetch.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:34:29 +0000 (20:34 -0600)]
draw: asst. clean-ups in draw_pipe.h
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Wed, 5 Oct 2022 18:13:16 +0000 (12:13 -0600)]
draw: remove unused draw_has_llvm()
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Wed, 5 Oct 2022 16:06:23 +0000 (10:06 -0600)]
draw: remove goto in llvm_pipeline_generic()
Just use an else clause.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Thu, 6 Oct 2022 02:31:38 +0000 (20:31 -0600)]
draw: asst. clean-ups in draw_vs.[ch]
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Wed, 5 Oct 2022 19:48:21 +0000 (13:48 -0600)]
draw: asst. clean-ups in draw_vs_variant.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Wed, 5 Oct 2022 18:13:42 +0000 (12:13 -0600)]
draw: asst. clean-ups in draw_vs_llvm.c
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Brian Paul [Wed, 5 Oct 2022 18:23:06 +0000 (12:23 -0600)]
draw: asst. clean-ups in draw_context.[ch]
Fix whitespace/formatting for consistency. Move var decls to where
they're first used, etc.
Signed-off-by: Brian Paul <brianp@vmware.com>
Acked-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19024>
Bas Nieuwenhuizen [Tue, 11 Oct 2022 10:51:05 +0000 (12:51 +0200)]
radv: Consider inactive internal nodes never in the tree.
Since the parent doesn't know to signal it.
Fixes:
e83e4fafc84 ("radv: Only emit parents from parents that actually end up in the tree.")
Reviewed-By: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19033>
Emma Anholt [Thu, 6 Oct 2022 19:01:03 +0000 (12:01 -0700)]
turnip: Add perf debug for more UBWC-disable cases that we could support.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18990>
Emma Anholt [Wed, 31 Aug 2022 19:23:43 +0000 (12:23 -0700)]
turnip: Add perf_debug for UBWC being disabled due to mutable formats.
I suspect this is going to be a popular perf issue for zink and angle. I
keep having to print out format lists for debug.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18990>
Emma Anholt [Thu, 6 Oct 2022 17:42:22 +0000 (10:42 -0700)]
turnip: Move the ubwc_possible check before mutable formats.
I'm going to add some perf debug about mutable formats, and I don't want
to warn when UBWC would be impossible anyway.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18990>
Emma Anholt [Mon, 3 Oct 2022 22:50:33 +0000 (15:50 -0700)]
turnip: Add a perf_debug for feedback-related performance traps.
This can show up in layering drivers.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18990>
Emma Anholt [Tue, 4 Oct 2022 21:00:07 +0000 (14:00 -0700)]
zink: Decorate mediump outputs as RelaxedPrecision.
The NIR lowering for mediump can sometimes detect stores of 16-bit values
and demote the outputs, but even better is to have them decorated properly
in the first place. Fixes a bunch of full-precision outputs in gfxbench
Aztec Ruins.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18960>
Emma Anholt [Tue, 20 Sep 2022 21:55:19 +0000 (14:55 -0700)]
zink: Fix RelaxedPrecision decoration of texture samples.
You can't do it unless GL called the sampler mediump. Also, the spirv
says "For image-sampling operations, decorations can appear on both the
sampling instruction and the image variable being sampled. If either is
decorated, they both should be decorated, and if both are decorated their
decorations must match. If only one is decorated, the sampling instruction
can behave either as if both were decorated or neither were decorated." so
emit it on the declaration too.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18960>
Emma Anholt [Wed, 5 Oct 2022 18:23:58 +0000 (11:23 -0700)]
ci/zink: Add some more flakes for turnip.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18960>
Bas Nieuwenhuizen [Tue, 11 Oct 2022 01:12:15 +0000 (03:12 +0200)]
radv: Implement pipeline-wide skiptriangles/skipaabbs.
Reviewed-By: Konstantin Seurer <konstantin.seurer@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19030>