Emma Anholt [Tue, 10 May 2022 18:32:40 +0000 (11:32 -0700)]
panfrost: always print the bad ALU op if we're failing to translate.
CI failure could have told me what needed fixing, but no...
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16437>
Emma Anholt [Tue, 10 May 2022 17:31:07 +0000 (10:31 -0700)]
glsl,nir: Move i/umulExtended lowering to NIR.
NIR already has the necessary lowering, and the GLSL lowering violates
GLSL IR validation rules. Once quadop lowering was turned off, the IR
validation at the end of the compile path on DEBUG builds caught the
problem.
In order to move the lowering to NIR, though, we need to make sure that
drivers supporting these functions actually have the lowering flag set.
xfails added for t860, where apparently this tickles a variety of existing
64-bit bugs in the backend.
Fixes: #6461
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Mykhailo Skorokhodov <mykhailo.skorokhodov@globallogic.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16437>
Emma Anholt [Tue, 10 May 2022 19:13:17 +0000 (12:13 -0700)]
mesa/st: Only scalarize for doubles lowering if we're lowering doubles.
lower_int64 doesn't need it, and the scalarizing ended up tickling some
bug in virgl once I started using lower_int64.
Acked-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16437>
Sagar Ghuge [Thu, 4 Nov 2021 01:20:58 +0000 (18:20 -0700)]
anv: Disable storage image compression for possible atomic ops
It looks like atomics are slow on compressed surfaces so when enabling
compression for storage images that can be possibly used for atomic
operation hinders performance. Lets just disable compression in this
scenario.
v2: Reword comment (Ken)
Allow mutable with 16/32/64 bits (Ken)
Signed-off-by: Sagar Ghuge <sagar.ghuge@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14712>
Kenneth Graunke [Tue, 13 Oct 2020 20:58:20 +0000 (13:58 -0700)]
isl: Add an isl_format_supports_typed_atomics() helper.
v2: Add a fields in isl_format with per gen support (Lionel)
v3: Fixup R32_FLOAT from 80 to 90
Fixup R32_[SU]INT from 80 to 70 (Ken)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14712>
Daniel Schürmann [Wed, 25 May 2022 14:12:19 +0000 (16:12 +0200)]
aco: fix spilling of phis without temp operands
These were spilled unconditionally.
Cc: mesa-stable
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16708>
Erik Faye-Lund [Tue, 31 May 2022 05:20:55 +0000 (07:20 +0200)]
editorconfig: remove pl-rule
Fixes:
721b880e4cf ("script: drop get_reviewer.pl")
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16786>
Erik Faye-Lund [Tue, 31 May 2022 05:19:27 +0000 (07:19 +0200)]
editorconfig: remove m4-rule
Fixes:
95aefc94a94 ("Delete autotools")
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16786>
Erik Faye-Lund [Tue, 31 May 2022 05:17:20 +0000 (07:17 +0200)]
editorconfig: remove html-rule
Fixes:
44a4e34d52e ("docs: remove doxygen support")
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16786>
Erik Faye-Lund [Tue, 31 May 2022 05:15:37 +0000 (07:15 +0200)]
editorconfig: remove scons-ism
Fixes:
6e6cd7d93cc ("scons: Remove.")
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16786>
Erik Faye-Lund [Thu, 19 May 2022 12:47:31 +0000 (14:47 +0200)]
dzn: add debug option to redirect stdout/stderr
For applications that doesn't have a terminal, it's useful to get output
like nir_log etc output somewhere.
This outputs these to stderr.txt and stdout.txt in the current user's
home directory, typically in C:\Users\my-user\.
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16640>
Erik Faye-Lund [Thu, 19 May 2022 12:06:42 +0000 (14:06 +0200)]
dzn: add a debug-flag to wait for the debugger
It's geneunely useful to wait for the debugger to attach in some cases.
So let's add a debug-flag and staill untik the debugger has attached.
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
Acked-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16640>
Erik Faye-Lund [Tue, 31 May 2022 07:28:21 +0000 (09:28 +0200)]
tests/graw: rename shaders from .sh to .txt
The vertex and fragment shaders are named foo.sh, while the geometry
shaders are named foo.txt. Since .sh can easily be confused with shell
scripts, let's rename the vertex and fragment shaders to .txt to match
the geometry shaders.
These tests aren't hooked up to run automatically, so there's no need to
update references to the file names.
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16791>
Samuel Pitoiset [Mon, 30 May 2022 14:14:20 +0000 (16:14 +0200)]
radv: reduce radv_discard_rectangle_info::count to 8-bit
DiscardRectangleCount must be less than or equal to
maxDiscardRectangles which is limited to 4.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16778>
Samuel Pitoiset [Mon, 30 May 2022 14:12:39 +0000 (16:12 +0200)]
radv: reduce radv_rasterization_info::polygon_mode to 8-bit
It's large enough.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16778>
Samuel Pitoiset [Mon, 30 May 2022 14:10:08 +0000 (16:10 +0200)]
radv: reduce radv_input_assembly_info::primitive_topology to 8-bit
It's large enough.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16778>
Samuel Pitoiset [Mon, 30 May 2022 14:06:42 +0000 (16:06 +0200)]
radv: reduce radv_tessellation_info::patch_control_points to 8-bit
The value must be less than or equal to maxTessellationPatchSize which
is limited to 32 with RADV.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16778>
Samuel Pitoiset [Mon, 30 May 2022 20:23:01 +0000 (22:23 +0200)]
radv: ignore DYNAMIC_STENCIL_OP if stencil test isn't enabled
Like compare/write masks and reference.
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/16783>
Iago Toral Quiroga [Tue, 31 May 2022 09:16:35 +0000 (11:16 +0200)]
v3dv: use the global RCL EZ disable if we don't have any EZ draws in the job
Until now we would only disable EZ globally if we had a depth or stencil
load operation or if we had no draw calls at all, but even if we have draw
calls if all of them disable EZ we should also us the global disable.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16794>
Iago Toral Quiroga [Mon, 30 May 2022 09:28:50 +0000 (11:28 +0200)]
v3dv: don't be too aggressive disabling early Z
When we have a draw call that is incompatible with EZ we should only
disable EZ for the remaining of the job in the case that both of the
following conditions are met:
1. The cause for the incompatibility is an incompatible depth test
direction.
2. The pipeline does Z writes.
Otherwise it is enough to disable EZ temporarily only for draw calls
with the incompatible pipeline.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16794>
Martin Roukala (né Peres) [Fri, 13 May 2022 09:51:07 +0000 (12:51 +0300)]
radv/ci: update the list of flakes
This commit has been created by aggregating all the flakes found in the
last 2 weeks, excluding the ones seen once.
v2 (Martin Roukala):
- stop trying to hardcode all the flakes, use a wildcard
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16777>
Lionel Landwerlin [Mon, 30 May 2022 10:53:34 +0000 (13:53 +0300)]
nir/divergence: handle load_ray_num_dss_rt_stacks_intel
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16797>
Lionel Landwerlin [Mon, 2 May 2022 13:32:07 +0000 (16:32 +0300)]
nir/divergence: handle load_scratch_base_ptr
v2: divergent (Jason)
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16797>
Vinson Lee [Wed, 25 May 2022 23:49:31 +0000 (16:49 -0700)]
d3d12: Remove unnecessary NULL check.
Fix defect reported by Coverity Scan.
Dereference before null check (REVERSE_INULL)
check_after_deref: Null-checking pD3D12VideoBuffer suggests that it may
be null, but it has already been dereferenced on all paths leading to
the check.
Fixes:
d8206f62865 ("d3d12: Add video decode implementation of pipe_video_codec")
Signed-off-by: Vinson Lee <vlee@freedesktop.org>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16714>
Connor Abbott [Tue, 3 May 2022 01:37:47 +0000 (03:37 +0200)]
tu: Expose VK_KHR_synchronization2
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16374>
Connor Abbott [Tue, 5 Apr 2022 15:25:42 +0000 (17:25 +0200)]
tu: Convert to sync2 entrypoints
Use the common Vulkan fallbacks to implement the now-deprecated original
entrypoints.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16374>
Timothy Arceri [Tue, 31 May 2022 03:36:34 +0000 (13:36 +1000)]
ci: uprev piglit 2022-05-31
Also document additional piglit failures and passes.
Multiple changes, mostly notable:
- few new tests
- fixed test for upcoming mesa MR
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16785>
Mike Blumenkrantz [Fri, 13 May 2022 19:29:24 +0000 (15:29 -0400)]
st/texture: allow compute blits for (some) non-finalized textures
this yields sizable perf improvements in some cases
KHR-GL46.copy_image.functional timing (zink+anv-icl):
before
MESA_LOADER_DRIVER_OVERRIDE=zink ./glcts -n 74.77s user 76.44s system 33% cpu 7:32.38 total
after
MESA_LOADER_DRIVER_OVERRIDE=zink ./glcts -n 69.95s user 68.84s system 33% cpu 6:51.54 total
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16545>
Mike Blumenkrantz [Fri, 13 May 2022 19:30:11 +0000 (15:30 -0400)]
st/texture: use base teximage for compute blits
this matches behavior of st_texture_image_map
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16545>
Mike Blumenkrantz [Mon, 30 May 2022 13:13:17 +0000 (09:13 -0400)]
zink: make swapchain kill message more descriptive
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16776>
Mike Blumenkrantz [Fri, 27 May 2022 19:57:25 +0000 (15:57 -0400)]
zink: add a #define for descriptor compaction
make those 2s a little less random
fixes #6556
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16755>
Mike Blumenkrantz [Fri, 27 May 2022 19:37:20 +0000 (15:37 -0400)]
zink: flag all cached descriptors as needing update on program change
programs have different usages of descriptors, so forcing a recalc on program
change ensures that the right hash values are always set, especially for compact
sets where there's more descriptors going into each hash value
this can (ideally) be optimized later to check for matching interfaces between old
program and new program to avoid recalc if both programs have identical descriptor
usage for a given set
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16755>
Mike Blumenkrantz [Fri, 27 May 2022 19:02:38 +0000 (15:02 -0400)]
zink: fix change flagging for compact descriptor cache
using pool existence alone is broken since the pools are compacted,
so instead flag based on whether usage exists
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16755>
Mike Blumenkrantz [Fri, 27 May 2022 19:01:52 +0000 (15:01 -0400)]
zink: store the real (non-compact) binding usage for programs
this is useful for quickly determining whether a program has a certain
type of descriptor usage
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16755>
Mike Blumenkrantz [Fri, 27 May 2022 18:46:30 +0000 (14:46 -0400)]
zink: drop requirement for 6 descriptorsets to use bindless
compact mode takes care of this
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16755>
Mike Blumenkrantz [Thu, 26 May 2022 13:17:44 +0000 (09:17 -0400)]
zink: only infer modifiers if winsys handle has a stride
if no stride is passed, the image creation will fail, so avoid this case
fixes:
spec@ext_external_objects@vk-image-overwrite
Fixes:
d79c716331f ("zink: create images with modifiers any time there is an import handle")
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16722>
Jason Ekstrand [Fri, 27 May 2022 18:36:50 +0000 (13:36 -0500)]
st,nir: Use nir_shader::xfb_info in nir_lower_io_passes
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 18:55:18 +0000 (13:55 -0500)]
glsl/nir: Stash the xfb_info in the nir_shader when linking XFB
This pass is used for shaders coming in from SPIR-V.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 18:53:07 +0000 (13:53 -0500)]
glsl/nir: Stop leaking varyings_info
Fixes:
34b3b92bbee1 ("nir/xfb: move varyings info out of nir_xfb_info")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 17:52:25 +0000 (12:52 -0500)]
glsl/nir: Populate nir_shader::xfb_info after linking varyings
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 17:33:11 +0000 (12:33 -0500)]
nir: Drop nir_shader_get_xfb_info
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 17:30:02 +0000 (12:30 -0500)]
radv: Use nir_gather_xfb_info
Instead of gathering XFB info over and over again every time we even
want to know if the shader uses XFB, gather it once when we compile the
shader and refer to the copy in the NIR.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 17:03:52 +0000 (12:03 -0500)]
turnip: Use nir_gather_xfb_info
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 16:57:41 +0000 (11:57 -0500)]
lavapipe: Use nir_shader_gather_xfb_info
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Fri, 27 May 2022 16:53:43 +0000 (11:53 -0500)]
anv: Use nir_shader_gather_xfb_info
Now that the resulting xfb_info is stashed on the shader, we can put
this with all the other NIR stuff and only fetch it out at the last
minute when we upload the kernel.
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Tue, 17 May 2022 15:16:55 +0000 (10:16 -0500)]
nir: Add a nir_xfb_info to nir_shader
We want to be able to carry this along with the shader instead of always
having to re-generate it from scratch. A new nir_gather_xfb_info()
helper is also added which, instead of returning it, adds it to the
shader.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jason Ekstrand [Tue, 17 May 2022 15:56:52 +0000 (10:56 -0500)]
nir: Rename nir_gather_xfb_info to nir_shader_get_xfb_info
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16750>
Jesse Natalie [Sat, 28 May 2022 00:19:23 +0000 (17:19 -0700)]
nir: Consider PNTC to be a varying
Fixes:
3528dcdf ("nir: add nir_io_semantics::no_varying, no_sysval_output, and helpers")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6091
Reviewed-by: Marek Ol\9aák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16761>
Mike Blumenkrantz [Thu, 26 May 2022 18:19:15 +0000 (14:19 -0400)]
st/pbo_compute: fix z coords for compute pbos
without manually taking the value from the global_id vec, this will
end up being offset.y again, which breaks z-indexing
Fixes:
e7b95619596 ("gallium: implement compute pbo download")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16728>
Mike Blumenkrantz [Thu, 26 May 2022 18:52:46 +0000 (14:52 -0400)]
st/pbo_compute: make compute download conditional in shader slightly more readable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16728>
Mike Blumenkrantz [Thu, 26 May 2022 18:48:47 +0000 (14:48 -0400)]
st/pbo_compute: use different calc for non-3d compute buffer sizing
this avoids looking at irrelevant 3d pixelstore params like
GL_PACK_IMAGE_HEIGHT when they don't apply, which will cause the storage
buffer to be incorrectly sized and break the operation
Fixes:
e7b95619596 ("gallium: implement compute pbo download")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16728>
Mike Blumenkrantz [Tue, 17 May 2022 18:58:35 +0000 (14:58 -0400)]
st/pbo_compute: do pbo readback directly to the buffer object if it exists
no point in copying more than needed
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16802>
Mike Blumenkrantz [Fri, 27 May 2022 21:28:02 +0000 (17:28 -0400)]
zink: drop largePoints requirement
this is not required by any version of GL, so don't pretend it's needed
cc: mesa-stable
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16758>
Mike Blumenkrantz [Fri, 27 May 2022 21:26:13 +0000 (17:26 -0400)]
zink: drop wideLines requirement
this is not a requirement for any version of GL, so don't pretend it's
a requirement
cc: mesa-stable
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16758>
Mike Blumenkrantz [Tue, 31 May 2022 13:56:30 +0000 (09:56 -0400)]
zink: remove first_frame stalling
this is fixed by kopper
cc: mesa-stable
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16796>
Jesse Natalie [Fri, 27 May 2022 16:24:33 +0000 (09:24 -0700)]
CI: Re-enable Windows builds
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 20:07:02 +0000 (13:07 -0700)]
dzn: Update fails/flakes
Acked-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 20:15:21 +0000 (13:15 -0700)]
CI/windows: Move --fraction for deqp-runner to run command line
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 17:58:43 +0000 (10:58 -0700)]
CI/windows: Disable LLVM CMake developer warnings to shrink log size
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 17:58:18 +0000 (10:58 -0700)]
CI/windows: Disable chocolatey progress printing to shrink log size
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 17:46:06 +0000 (10:46 -0700)]
CI/windows: Delete comment for installing vulkan-runtime
Since we're now actually running Vulkan tests on Dozen, the comment
was wrong and we actually want the runtime. The referenced issue
has been fixed anyway.
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 17:20:23 +0000 (10:20 -0700)]
CI/windows: Install Vulkan SDK from LunarG directly isntead of Chocolatey
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 20:08:33 +0000 (13:08 -0700)]
CI/d3d12: Add skips and update baselines
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 19:47:25 +0000 (12:47 -0700)]
d3d12: Re-add missed bitmasks to shader key comparison
Fixes:
a064e63e ("d3d12: Reduce cost of shader key comparisons")
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Jesse Natalie [Fri, 27 May 2022 18:33:52 +0000 (11:33 -0700)]
nir_lower_task_shader: Fix return from lower_task_intrin (bool, not void*)
Fixes:
8aff8d3d ("nir: Add common task shader lowering to make the backend's job easier.")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16756>
Rhys Perry [Fri, 13 May 2022 15:36:53 +0000 (16:36 +0100)]
aco/tests: update for GFX11's removal of SDWA
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16595>
Rhys Perry [Fri, 13 May 2022 14:11:48 +0000 (15:11 +0100)]
aco: use v_perm_b32 to copy 0xff00/0x00ff/0xff/0x00
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16595>
Rhys Perry [Fri, 13 May 2022 11:01:03 +0000 (12:01 +0100)]
aco: disable sdwa on gfx11
Instead of SDWA v_mov_b32/v_xor_b32, we can use a combination of
v_add_u16/v_sub_u16 (add/sub swap, similar to xor swap) and v_perm_b32
with a literal.
I don't know yet if GFX11 adds any new instructions which makes this
easier, but this approach should have full functionality.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16595>
Rhys Perry [Fri, 13 May 2022 14:27:31 +0000 (15:27 +0100)]
aco/tests: fix gfx11 variants printed as gfx12
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16595>
Rhys Perry [Fri, 13 May 2022 14:27:12 +0000 (15:27 +0100)]
aco/tests: disable regalloc.subdword_alloc.reuse_16bit_operands on GFX11
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16595>
Rhys Perry [Fri, 13 May 2022 12:49:49 +0000 (13:49 +0100)]
aco: clarify a portion of do_pack_2x16
This confused me a bit when I first saw it.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16595>
Rhys Perry [Fri, 13 May 2022 12:39:01 +0000 (13:39 +0100)]
aco: use p_parallelcopy for uniform reduction with zero source
I think v_mov_b32 was only used because a sub-dword p_parallelcopy
couldn't take constants on some gfx levels. That shouldn't be the case
anymore.
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16595>
Juan A. Suarez Romero [Fri, 27 May 2022 11:32:50 +0000 (13:32 +0200)]
v3d: expose GL_ARB_draw_buffers_blend
This automatically exposes GL_OES_draw_buffers_indexed too.
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16747>
Juan A. Suarez Romero [Fri, 27 May 2022 11:12:11 +0000 (13:12 +0200)]
v3d: fix blending for mixed RT formats
Blending configuration needs to be adapted in case the RT format does
not have an alpha channel. This is handled so far correctly.
But when we have two RT, one with alpha and other without it, we need
to split the blend configuration, so one is adapted and the other not.
Otherwise we would be changing the blend config for the wrong RT.
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16747>
Juan A. Suarez Romero [Tue, 31 May 2022 09:23:35 +0000 (11:23 +0200)]
ci: bump VK-GL-CTS to 1.3.2.0
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Acked-by: Alyssa Rosenzweig <alyssa@collabora.com>
Acked-by: Alejandro Piñeiro <apinheiro@igalia.com>
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Acked-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16689>
Mike Blumenkrantz [Tue, 31 May 2022 13:02:06 +0000 (09:02 -0400)]
zink: lower subgroup width to 1 for unsupported subgroup vote stages
this should handle unsupported gfx subgroup vote
cc: mesa-stable
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16757>
Mike Blumenkrantz [Fri, 27 May 2022 20:40:10 +0000 (16:40 -0400)]
zink: fix subgroup vote detection
this is uses the 1.1 features, not 1.3
also check the shader stages available since the GL extension requires
all of them
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16757>
Mike Blumenkrantz [Fri, 27 May 2022 21:03:43 +0000 (17:03 -0400)]
zink: use correct scope for subgroup vote ops
this is restricted to subgroup for vulkan use
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16757>
Mike Blumenkrantz [Fri, 27 May 2022 21:03:29 +0000 (17:03 -0400)]
zink: emit spirv cap for subgroup vote ops
cc: mesa-stable
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16757>
Mike Blumenkrantz [Fri, 27 May 2022 20:16:04 +0000 (16:16 -0400)]
zink: require draw params ext/cap in ntv if drawid is used
cc: mesa-stable
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16757>
Jason Ekstrand [Mon, 30 May 2022 23:57:58 +0000 (18:57 -0500)]
nir: Add a correctness note for nir_lower_phis_to_regs_block
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16111>
Jason Ekstrand [Fri, 22 Apr 2022 21:37:37 +0000 (16:37 -0500)]
nir: Handle register sources in lower_phis_to_regs_block
During certain control-flow manipulation passes, we go out-of-SSA
temporarily in certain areas of the code to make control-flow
manipulation easier. This can result in registers being in phi sources
temporarily. If two sub-passes run before we get a chance to do
clean-up, we can end up doing some out-of-SSA and then a bit more
out-of-SSA and trigger this case. It's easy enough to handle.
Fixes:
a620f66872c2 ("nir: Add a couple quick-and-dirty out-of-SSA helpers")
Fixes:
79a987ad2a1e ("nir/opt_if: also merge break statements with ones after the branch")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6370
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16111>
Jason Ekstrand [Mon, 30 May 2022 14:52:10 +0000 (09:52 -0500)]
isl: Add some asserts about multisampled surfaces
This isn't really necessary because the API doesn't allow MSAA and
mipmapping at the same time but people forget that pretty often so it's
good to have it as documentation if nothing else.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14129>
Jason Ekstrand [Tue, 6 Jul 2021 15:59:49 +0000 (10:59 -0500)]
anv: Implement VK_EXT_image_view_min_lod
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14129>
Jason Ekstrand [Tue, 6 Jul 2021 15:54:28 +0000 (10:54 -0500)]
intel/isl: Add isl_view::min_lod_clamp for IVB+
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14129>
Jason Ekstrand [Wed, 8 Dec 2021 22:45:33 +0000 (16:45 -0600)]
vulkan/runtime: Add min_lod to vk_image_view
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14129>
Pierre-Eric Pelloux-Prayer [Wed, 25 May 2022 14:05:39 +0000 (16:05 +0200)]
radeonsi: enable use_waterfall_for_divergent_tex_samplers
And run the nir_divergence_analysis pass in si_get_nir_shader to make
sure it's up to date.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2253
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16709>
Pierre-Eric Pelloux-Prayer [Wed, 25 May 2022 13:57:53 +0000 (15:57 +0200)]
ac/llvm: add use_waterfall_for_divergent_tex_samplers option
GLSL says that indexing in a samplers array should be done with
a dynamically uniform value.
If the app doesn't obey this constraint, it'll get incorrect
results.
But there's one case where the app might be correct and yet
get incorrect result: if 2 consecutive draws are used, with no
state changes in between, the hardware might run them in the
same wave and the app will get incorrect result as-if it was
using non-dynamically uniform index.
To prevent this, this commit takes advantage of the divergence
analysis pass - if the index is marked as divergent, then it will
have the same effect as using ACCESS_NON_UNIFORM in SPIR-V.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16709>
Karol Herbst [Tue, 26 Apr 2022 19:22:43 +0000 (21:22 +0200)]
nir/gce: pin call instructions
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16202>
Karol Herbst [Tue, 26 Apr 2022 15:12:07 +0000 (17:12 +0200)]
nir/gather_info: allow to run it before inlining
Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16202>
M Henning [Wed, 18 May 2022 19:38:26 +0000 (15:38 -0400)]
nv50: Fix tlsSpace alignment
Commit
d1ff453a added this alignment in the wrong spot - it needs to
happen after RA because spilling can increment this 32 bits at a time.
Also assert that we align this correctly now.
Reviewed-by: Karol Herbst <kherbst@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16596>
Timur Kristóf [Thu, 26 May 2022 11:36:14 +0000 (13:36 +0200)]
ac/nir/taskmesh: Use 3 dimensional workgroup ID.
For the sake of consistency, do not rely on a 1-dimensional
workgroup ID anymore.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16721>
Timur Kristóf [Thu, 26 May 2022 11:35:24 +0000 (13:35 +0200)]
ac/nir/taskmesh: Use task shader lowering from common NIR code.
This also implements task_payload atomics for RADV.
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16721>
Timur Kristóf [Fri, 13 May 2022 19:32:12 +0000 (21:32 +0200)]
radv, ac/nir: Fix multiview layer export for mesh shaders.
Unfortunately, radv_lower_multiview is not suitable for mesh shaders
because it can't know the mapping between API mesh shader
invocations and output primitives.
Additionally, when lowering view id to layer, it must be created
as a per-primitive PS input.
Fixes:
d32656bc65a7c0165e53d551e23462d626bbf870
Signed-off-by: Timur Kristóf <timur.kristof@gmail.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16504>
Erico Nunes [Fri, 20 May 2022 15:25:15 +0000 (17:25 +0200)]
lima/ci: reenable lima-mali450-piglit-gpu:arm64
With the kernel uprev we are no longer affected by the kernel
regression that was causing issues.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16641>
Erico Nunes [Tue, 24 May 2022 12:24:50 +0000 (14:24 +0200)]
lima/ci: update piglit ci expectations
This new test reports a failure and started to run during the time
piglit runs were temporarily disabled.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16641>
Erico Nunes [Fri, 20 May 2022 15:23:53 +0000 (17:23 +0200)]
ci: update docs for linux kernel uprevs
Update a few paths that have changed since this doc was first submitted.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16641>
Erico Nunes [Fri, 20 May 2022 15:21:21 +0000 (17:21 +0200)]
ci: update linux kernel to v5.17
In addition to pushing it to the current latest stable, the v5.17 kernel
for mesa CI pulls a patch to address a regression in drm that affects at
least the lima jobs.
The dtb for sc7180-trogdor-lazor-limozeen-nots is also updated since the
old one no longer exists in v5.17.
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16641>
Iago Toral Quiroga [Mon, 30 May 2022 07:12:22 +0000 (09:12 +0200)]
v3dv: limit sync for barriers to hw queues selected by source mask
Until know when we consumed a barrier we would implement it by
setting the serialize flag on a job, which would cause it to
be serialized across all hardware queues (CL, CSD, TFU). However,
now that we track the source(s) of the barrier, we can restrict this
to only the relevant queue(s) instead (multisync path only).
It should be noted that we can implement transfers via TFU or CL
jobs, so if the source of a barrier is a transfer, we currently
synchronize against both the TFU and the CL queues, however, we
may be able to more effectively track this in the future to
restrict this to just one of the queues.
Also, for secondary command buffers we are taking the easy way
out and always synchronize against all queues, but we should
be able to do the same for secondaries without too much effort.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16743>
Iago Toral Quiroga [Mon, 30 May 2022 06:52:31 +0000 (08:52 +0200)]
v3dv: track sources of barriers
Until now we have been tracking the dstStageMask of barriers (where they
are consumed) but not where they are produced (the srcStageMask). With
this change we extend our barrier state to keep track of this as well.
This allows the driver to have better knowledge of the intended barrier
semantics so it can limit the amount of synchronization it does only
to the source stages involved with a barrier. We will do this in a
later patch.
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16743>