Lionel Landwerlin [Tue, 27 Jun 2023 11:06:43 +0000 (14:06 +0300)]
isl: disallow miptails on planar formats
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/23620>
Lionel Landwerlin [Wed, 28 Jun 2023 11:29:30 +0000 (14:29 +0300)]
isl: add Gfx12/12.5 restriction on 3D surfaces & compression
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/23620>
Jason Ekstrand [Tue, 6 Mar 2018 01:42:11 +0000 (17:42 -0800)]
intel/isl: Disallow CCS on 3D surfaces with miptails
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Sat, 3 Mar 2018 03:02:17 +0000 (19:02 -0800)]
intel/isl: Start using miptails
This commit adds the code for choosing where to start the miptail and
enables miptails by default unless the client driver passes
info->min_miptail_start_level >= info->levels.
Reviewed-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/23620>
Jason Ekstrand [Sat, 3 Mar 2018 00:43:35 +0000 (16:43 -0800)]
intel/isl: Support miptails in isl_surf_get_uncompressed_surf
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Lionel Landwerlin [Tue, 29 Aug 2023 08:54:47 +0000 (11:54 +0300)]
isl: make isl_surf_get_uncompressed_surf robust to argument accesses
Since the input & output arguments can point to the same location in
memory, if you ever access the input after writing the output you're
in trouble.
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/23620>
Jason Ekstrand [Fri, 2 Mar 2018 20:37:52 +0000 (12:37 -0800)]
intel/isl: Add support for computing offsets with miptails
Reviewed-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/23620>
Lionel Landwerlin [Fri, 2 Mar 2018 23:30:24 +0000 (15:30 -0800)]
intel/isl: Add a max_miptail_levels field to isl_tile_info
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
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/23620>
Jason Ekstrand [Sat, 3 Mar 2018 00:02:58 +0000 (16:02 -0800)]
intel/isl: Add initial data-structure support for miptails
This commit just adds a miptail start field to isl_surf and wires it up
in the RENDER_SURFACE_STATE and 3DSTATE_DEPTH code. We also add a
minimum miptail LOD so that client drivers have a knob to control the
miptails a bit.
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Fri, 25 Aug 2017 18:23:23 +0000 (11:23 -0700)]
intel/isl: Support Yf/Ys tiling in emit_depth_stencil_hiz
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Fri, 25 Aug 2017 04:16:03 +0000 (21:16 -0700)]
intel/isl: Support Yf/Ys tiling in surf_fill_state
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Thu, 22 Feb 2018 21:53:03 +0000 (13:53 -0800)]
intel/isl: Support Ys, Yf & Tile64 in isl_surf_get_uncompressed_surf
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Wed, 7 Jul 2021 15:37:57 +0000 (10:37 -0500)]
intel/isl: Indent uncompressed surface code
We're about to add separate code for Yf/Ys and this helps keep the diff
reasonable.
Reviewed-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/23620>
Jason Ekstrand [Thu, 22 Feb 2018 02:12:30 +0000 (18:12 -0800)]
intel/isl: Fill out the correct phys_total_extent for Ys/Yf/Tile64
With these tilings, everything is aligned to a tile and the tiled
surface size calculations will handle the array stride for us. We need
to provide an accurate 4D size so that 3D and multisampled images get
tiled correctly.
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Thu, 22 Feb 2018 02:05:15 +0000 (18:05 -0800)]
intel/isl: Use the depth field of phys_level0_sa for GFX4_2D 3D surfaces
This makes things a tiny bit stickier in isl_calc_phys_total_extent_el
but will be worth it when we enable Yf and Ys.
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Lionel Landwerlin [Sun, 25 Jun 2023 20:31:39 +0000 (23:31 +0300)]
isl: disallow TileYs/Yf on 3D storage images on Gfx9/11
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Acked-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Lionel Landwerlin [Fri, 23 Jun 2023 21:47:25 +0000 (00:47 +0300)]
isl: add a usage flag to request 2D/3D compatible views
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Lionel Landwerlin [Tue, 8 Aug 2023 11:14:02 +0000 (14:14 +0300)]
isl: disable Yf/Ys/Tile64 tilings for 1D images
The ICL+ PRMs show that this is not a supported thing anymore for
Ys/Yf and there isn't really much use for it in Vulkan/Sparse.
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/23620>
Lionel Landwerlin [Fri, 12 Oct 2018 17:17:02 +0000 (12:17 -0500)]
intel/isl: Disallow Yf, Ys and Tile64 for 3D depth/stencil surfaces
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/23620>
Jason Ekstrand [Thu, 22 Feb 2018 00:04:32 +0000 (16:04 -0800)]
intel/isl: Implement correct tile size calculations for Ys/Yf
The tile size calculations use a clever bit of math to make them short
and simple. We add unit tests to assert that they identically match the
tables in the PRM.
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Wed, 7 Mar 2018 05:04:50 +0000 (21:04 -0800)]
intel/isl: Add ICL variants of Yf and Ys tiling
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-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/23620>
Jason Ekstrand [Wed, 7 Mar 2018 04:50:44 +0000 (20:50 -0800)]
intel/isl: Rename ISL_TILING_Yf/s to ISL_TILING_SKL_Yf/s
The Yf and Ys tilings change a bit between SKL and later generations so
we have to be able to distinguish between them.
Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Lionel Landwerlin [Mon, 19 Jun 2023 13:38:24 +0000 (16:38 +0300)]
isl: program 3DSTATE_HIER_DEPTH_BUFFER_BODY::TiledMode as documented
Since this value is 0, it doesn't change anything, but it's just good
practice like we did for Gfx12.5 right above.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Lionel Landwerlin [Mon, 19 Jun 2023 13:37:42 +0000 (16:37 +0300)]
genxml/gfx12: rename Tiled Resource Mode
To match documentation.
BSpec 46965
TGL PRMs, Volume 2d: Command Reference: Structures, 3DSTATE_HIER_DEPTH_BUFFER_BODY
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Lionel Landwerlin [Mon, 19 Jun 2023 13:36:58 +0000 (16:36 +0300)]
genxml/gfx11: remove Tiled Resource Mode field from HIER_DEPTH_BUFFER
This field doesn't exist according to documentation. Only a MBZ.
BSpec 6511
ICL PRMs, Volume 2a - Command Reference: Instructions (Command
Opcodes) 3DSTATE_HIER_DEPTH_BUFFER
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Lionel Landwerlin [Mon, 26 Jun 2023 07:09:50 +0000 (10:09 +0300)]
anv: add missing ISL storage usage
ISL makes a bunch of decision on programming (MOCS,
RENDER_SURFACE_STATE values) based on this flag. It's important to set
it if we're going to use an image as storage.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Reviewed-by: Nanley Chery <nanley.g.chery@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/23620>
Matt Turner [Thu, 31 Aug 2023 17:16:29 +0000 (13:16 -0400)]
intel: Allow using intel_clc from the system
With -Dintel-clc=system, the build system will search for an `intel_clc`
binary and use it instead of building `intel_clc` itself.
This allows Intel Vulkan ray tracing support to be built when cross
compiling without terrible hacks (that would otherwise be necessary due
to `intel_clc`'s dependence on SPIRV-LLVM-Translator, libclc, clang, and
LLVM).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24983>
Karol Herbst [Fri, 1 Sep 2023 10:49:59 +0000 (12:49 +0200)]
rusticl/memory: do not verify pitch for IMAGE1D_BUFFER
Devices might report an image_pitch_alignment of 0 leading to a division
by 0 trap.
Fixes:
06daa03c5cd ("rusticl: Implement spec for cl_khr_image2d_from_buffer")
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24993>
Eric Engestrom [Fri, 1 Sep 2023 13:52:31 +0000 (14:52 +0100)]
ci/amd: split the polaris10 rules into one for each farm
There is now one polaris10 in each farm, so we need two rules for which
one to use.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24996>
Mark Janes [Thu, 24 Aug 2023 00:24:34 +0000 (17:24 -0700)]
intel: allow reduced memory usage for INTEL_MEASURE
The default batch size was increased to support large numbers of
INTEL_MEASURE snapshots for complex workloads. Some titles create
large numbers of small secondary command buffers, and quickly exhaust
memory. An example of this is Dota2, where INTEL_MEASURE increases
the memory usage by a factor of 20.
Allow the user to specify smaller batch sizes and buffer sizes.
Reviewed-by: Felix DeGrood <felix.j.degrood@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24860>
Georg Lehmann [Fri, 25 Aug 2023 17:23:14 +0000 (19:23 +0200)]
aco: use v_cvt_f32_ubyte for signed casts too
The extract is always positive, so signed vs unsigned conversion doesn't matter.
Foz-DB GFX11:
Totals from 167 (0.13% of 133461) affected shaders:
Instrs: 401631 -> 401225 (-0.10%)
CodeSize: 2107256 -> 2104344 (-0.14%)
VGPRs: 13320 -> 13332 (+0.09%)
Latency: 6468063 -> 6467241 (-0.01%)
InvThroughput: 801854 -> 801653 (-0.03%)
Copies: 13926 -> 13927 (+0.01%); split: -0.08%, +0.09%
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24893>
Nanley Chery [Wed, 23 Aug 2023 14:30:33 +0000 (10:30 -0400)]
anv: Initialize the clear color more often for FCV
Instead of only initializing the clear color when the first subresource
is accessed, initialize it for every FCV-enabled subresource. This is
needed because writes to any subresource may be converted to fast
clears.
Now that init_fast_clear_color is called for every subresource, we take
care not to stomp on the fast-clear-tracking state of the first
subresource by moving the code which updates it outside of
init_fast_clear_color.
Now init_fast_clear_color does just what it says: initializes the fast
clear color.
This fixes the regression introduced with commit
57445adc891,
("anv: Re-enable CCS_E on TGL+").
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8461
Reviewed-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24857>
Samuel Pitoiset [Thu, 31 Aug 2023 10:26:33 +0000 (12:26 +0200)]
radv/ci: re-enable vkcts-polaris10-valve
This was disabled a long time ago because of unknown GPU hangs during
boot but it seems stable again for some reasons.
This also bumps the job timeouts to make sure it will be able to finish.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24968>
Karol Herbst [Fri, 1 Sep 2023 09:10:28 +0000 (11:10 +0200)]
rusticl/queue: properly implement clCreateCommandQueueWithProperties
It didn't do any of the error checking, but it was supposed to be. Also
the error checking was slightly wrong and we should return
CL_INVALID_QUEUE_PROPERTIES instead of CL_INVALID_VALUE for unsupported
properties.
Signed-off-by: Karol Herbst <git@karolherbst.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24991>
Samuel Pitoiset [Thu, 31 Aug 2023 14:35:21 +0000 (16:35 +0200)]
zink/ci: add zink-radv-polaris10-valve
This introduces Zink/RADV testing on Polaris10!
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24976>
Feng Jiang [Thu, 10 Aug 2023 02:53:47 +0000 (10:53 +0800)]
meson: Move video to separate section in meson configuration summary
Since the video configuration is shared by multiple video APIs, not
just vulkan, move it to a separate section.
Signed-off-by: Feng Jiang <jiangfeng@kylinos.cn>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24598>
Tapani Pälli [Thu, 31 Aug 2023 03:15:35 +0000 (06:15 +0300)]
ci: add a fix for KHR-GLES3.packed_pixels.*snorm tests
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Acked-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24600>
Tapani Pälli [Thu, 10 Aug 2023 05:07:29 +0000 (08:07 +0300)]
mesa: remove GL_UNSIGNED_BYTE as supported for snorm reads
UNSIGNED_BYTE should not be allowed for reading snorm color buffers.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9718
Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24600>
Vlad Schiller [Mon, 21 Aug 2023 08:55:18 +0000 (09:55 +0100)]
pvr: Implement VK_EXT_tooling_info
This commit will enable the EXT_tooling_info extension,
which was already implemented in the common code.
Signed-off-by: Vlad Schiller <vlad-radu.schiller@imgtec.com>
Reviewed-by: Frank Binns <frank.binns@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24928>
Rohan Garg [Thu, 31 Aug 2023 17:06:34 +0000 (19:06 +0200)]
anv: use the pre defined _3DPRIMITIVE_DIRECT macro
Signed-off-by: Rohan Garg <rohan.garg@intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24978>
Konstantin Seurer [Mon, 28 Aug 2023 16:24:36 +0000 (18:24 +0200)]
aco/lower_to_cssa: Fix typo
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24906>
Konstantin Seurer [Mon, 28 Aug 2023 13:39:44 +0000 (15:39 +0200)]
radv: Only generate debug info if required
Fixes:
51f2fa1a5ef ("radv: Break up radv_shader_nir_to_asm")
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24906>
Konstantin Seurer [Mon, 28 Aug 2023 08:58:05 +0000 (10:58 +0200)]
aco: Unify demote and demote_if selection
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24906>
Konstantin Seurer [Mon, 28 Aug 2023 07:36:50 +0000 (09:36 +0200)]
aco: Use bytes() instead of size() in emit_wqm
This should get most of the cases that would fail validation.
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24906>
Konstantin Seurer [Mon, 28 Aug 2023 07:36:18 +0000 (09:36 +0200)]
aco/validate: Handle p_wqm like p_parallelcopy
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24906>
Samuel Pitoiset [Mon, 28 Aug 2023 13:53:40 +0000 (15:53 +0200)]
aco: allow separate compilation of NGG shaders
Also prevent to emit a long-jump for VS as NGG without a GS.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24907>
Samuel Pitoiset [Mon, 28 Aug 2023 14:51:17 +0000 (16:51 +0200)]
aco: adjust fix_exports() for VS/TES as NGG and non-monolithic shaders
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24907>
Samuel Pitoiset [Mon, 28 Aug 2023 14:48:24 +0000 (16:48 +0200)]
aco: flag blocks with long-jump as export_end for separate compilation
This will allow us to adjust fix_exports().
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24907>
Samuel Pitoiset [Mon, 28 Aug 2023 13:39:08 +0000 (15:39 +0200)]
radv: preserve shader argument for separate compilation of NGG shaders
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24907>
Qiang Yu [Sat, 5 Aug 2023 09:24:55 +0000 (17:24 +0800)]
radeonsi: enable aco compile for part mode standalone vs
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24713>
Qiang Yu [Sat, 5 Aug 2023 12:30:05 +0000 (20:30 +0800)]
radeonsi: set vs has prolog aco shader info
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24713>
Qiang Yu [Sat, 5 Aug 2023 08:56:33 +0000 (16:56 +0800)]
radeonsi: add vs prolog aco build
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24713>
Qiang Yu [Fri, 4 Aug 2023 12:50:28 +0000 (20:50 +0800)]
radeonsi: fix aco options has_ls_vgpr_init_bug setup
Fixes:
b313d950e23 ("radeonsi: enable aco compile for mono merged LS/HS")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24713>
Qiang Yu [Fri, 4 Aug 2023 12:06:18 +0000 (20:06 +0800)]
radeonsi: extract si_get_vs_prolog_args to be shared with aco
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24713>
Qiang Yu [Fri, 4 Aug 2023 09:49:04 +0000 (17:49 +0800)]
radeonsi: remove is_monolithic from vs prolog key
We do not generate vs prolog for monolithic shader any more.
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24713>
Dave Airlie [Tue, 29 Aug 2023 01:23:27 +0000 (11:23 +1000)]
nvk: add build_id linker argument.
the build id was failing for a gentoo build causing instance
creation to fail, this seems to fix it.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24916>
Qiang Yu [Tue, 29 Aug 2023 06:49:00 +0000 (14:49 +0800)]
radeonsi: fill aco_shader_info->is_monolithic
Fixes:
80177e02962 ("aco: add support for compiling VS+TCS separately on GFX9+")
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24944>
Karol Herbst [Tue, 29 Aug 2023 18:30:21 +0000 (20:30 +0200)]
rusticl/event: disable profiling for devices without timestamps
Timestamp queries are strictly required, but a bit odd to not expose CL
for not supporting it...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24938>
Karol Herbst [Tue, 29 Aug 2023 18:20:24 +0000 (20:20 +0200)]
rusticl/query: fix use-after-free, but also fix incorrect usage of unsafe
`PipeQuery::new` create a `PipeQuery` wrapper before handling errors, so
we ended up calling `drop` and destroy_query, meaning the latter ended up
being called twice.
While at it, also restrict visibility of related methods and add some
unsafe declarations.
Fixes:
52e53938c37 ("rusticl: Wrap pipe queries")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24938>
Lina Versace [Thu, 31 Aug 2023 17:44:30 +0000 (10:44 -0700)]
docs: Add row for VK_KHR_maintenance5
Reviewed-By: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24980>
Matt Turner [Wed, 30 Aug 2023 18:47:30 +0000 (14:47 -0400)]
intel: Only build perf if drivers or tools are enabled
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24974>
Matt Turner [Wed, 30 Aug 2023 18:46:59 +0000 (14:46 -0400)]
intel: Only build ds if drivers are enabled
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24974>
Matt Turner [Wed, 30 Aug 2023 18:46:03 +0000 (14:46 -0400)]
intel: Only build blorp if drivers are enabled
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24974>
Matt Turner [Wed, 30 Aug 2023 18:51:14 +0000 (14:51 -0400)]
intel: Consider with_intel_clc in with_any_intel
This makes it possible to configure mesa to build only intel_clc.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24974>
Matt Turner [Wed, 30 Aug 2023 18:50:00 +0000 (14:50 -0400)]
intel: Rearrange for next commit
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24974>
Lang Yu [Sun, 27 Aug 2023 11:56:49 +0000 (19:56 +0800)]
radeonsi: use wave size to determine index stride
Signed-off-by: Lang Yu <lang.yu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24920>
Lang Yu [Sun, 27 Aug 2023 05:21:00 +0000 (13:21 +0800)]
radeonsi: use AMD_CODE_PROPERTY_ENABLE_WAVEFRONT_SIZE32 to determine wave size
Signed-off-by: Lang Yu <lang.yu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24920>
Lang Yu [Sun, 27 Aug 2023 05:07:59 +0000 (13:07 +0800)]
amd/common: add AMD_CODE_PROPERTY_ENABLE_WAVEFRONT_SIZE32 property
This property can be used to determine wave size on gfx10+.
Signed-off-by: Lang Yu <lang.yu@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24920>
Connor Abbott [Thu, 31 Aug 2023 11:43:36 +0000 (13:43 +0200)]
freedreno/a7xx: Add CP_RESET_CONTEXT_STATE
Used by the kernel driver. Definition taken from kgsl.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24969>
Mike Blumenkrantz [Tue, 15 Aug 2023 16:07:22 +0000 (12:07 -0400)]
egl: bind dri2_set_WL_bind_wayland_display for zink when necessary
Acked-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24701>
Mike Blumenkrantz [Tue, 15 Aug 2023 16:07:07 +0000 (12:07 -0400)]
egl: call dri3_x11_connect() for zink
Acked-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24701>
Mike Blumenkrantz [Tue, 15 Aug 2023 16:06:52 +0000 (12:06 -0400)]
egl/dri3: only set driver_name if not already set
Acked-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24701>
Eric Engestrom [Thu, 31 Aug 2023 12:39:41 +0000 (13:39 +0100)]
ci/b2c: assert that install folder is present whether or not the tarball was extracted
We already `rm -rf install` at the beginning so it can't be a stale install folder.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24970>
Eric Engestrom [Thu, 31 Aug 2023 12:30:34 +0000 (13:30 +0100)]
ci/b2c: don't allow failures in test script preparation
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24970>
Eric Engestrom [Thu, 31 Aug 2023 12:32:06 +0000 (13:32 +0100)]
ci/b2c: skip install.tar extraction if the tarball is not present
This is the case when retrying after a B2C_TIMEOUT for instance.
Fixes:
85a8f03211090bc9a23a ("ci: delete install.tar after extracting it to avoid re-uploading it")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24970>
Friedrich Vock [Thu, 31 Aug 2023 13:34:58 +0000 (15:34 +0200)]
radv/rt: Pre-initialize instance address
It's not disallowed by spec to load instance-related data in case of a
miss where no instance was ever visited. Such loads make no sense, so we
can return garbage, but it mustn't hang the GPU. Initialize the instance
addresses to the TLAS base to make sure we always have valid memory to load from.
Partially fixes GPU hangs in RTX Remix games.
Cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24971>
Eric Engestrom [Fri, 25 Aug 2023 19:03:28 +0000 (20:03 +0100)]
ci: document farm rules
Signed-off-by: Eric Engestrom <eric@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24898>
Karol Herbst [Thu, 31 Aug 2023 10:31:16 +0000 (12:31 +0200)]
rusticl/disk_cache: fix stack corruption
The length passed to mesa_bytes_to_hex is the one of the input, not output
data.
Fixes:
fbe9a7ca3e7 ("rusticl/mesa: create proper build-id hash for the disk cache")
Signed-off-by: Karol Herbst <git@karolherbst.de>
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24967>
Lionel Landwerlin [Wed, 8 Mar 2023 11:43:41 +0000 (13:43 +0200)]
anv: enable KHR_maintenance5
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24387>
Lionel Landwerlin [Fri, 28 Jul 2023 08:52:49 +0000 (11:52 +0300)]
anv: deal with new pipeline flags
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24387>
Lionel Landwerlin [Tue, 14 Mar 2023 11:00:50 +0000 (13:00 +0200)]
anv: add maintenance5 A8_UNORM/A1B5G5R5_UNORM support
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24387>
Lionel Landwerlin [Wed, 8 Mar 2023 12:08:47 +0000 (14:08 +0200)]
anv: implement GetDeviceImageSubresourceLayoutKHR/GetImageSubresourceLayout2KHR
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24387>
Lionel Landwerlin [Wed, 8 Mar 2023 11:49:35 +0000 (13:49 +0200)]
anv: add vkGetRenderingAreaGranularityKHR()
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24387>
Lionel Landwerlin [Wed, 8 Mar 2023 11:33:21 +0000 (13:33 +0200)]
anv: handle new VkBufferViewUsageCreateInfoKHR
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24387>
Lionel Landwerlin [Wed, 8 Mar 2023 10:35:27 +0000 (12:35 +0200)]
anv: implement vkCmdBindIndexBuffer2KHR
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24387>
Connor Abbott [Wed, 30 Aug 2023 12:43:32 +0000 (14:43 +0200)]
vk/graphic_state, tu: Use dynamic blend count from subpass
A future spec clarification will state that pipelines will not have to
fill out the blend attachment count if every blend state is dynamic.
Instead, this comes from the subpass/rendering/inheritance info. To fix
this while still being able to use the same code to emit dynamic and
precompiled state, we have to set the attachment count in the blend
struct at the beginning of the subpass.
This will also help with ESO where it already worked like this.
Closes: #9709
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24957>
Konstantin Seurer [Wed, 30 Aug 2023 16:30:28 +0000 (18:30 +0200)]
lavapipe: Fix the locking around cso destruction
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24956>
Konstantin Seurer [Wed, 30 Aug 2023 14:31:21 +0000 (16:31 +0200)]
lavapipe: Avoid lowering shaders twice
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9726
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24956>
Dave Airlie [Wed, 2 Aug 2023 05:42:50 +0000 (15:42 +1000)]
llvmpipe/fs: rewrite output finding using nir.
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24817>
Dave Airlie [Wed, 2 Aug 2023 05:33:37 +0000 (15:33 +1000)]
llvmpipe/fs: drop the simple shader logic
It's been turned off since 2013.
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24817>
Dave Airlie [Wed, 2 Aug 2023 04:48:16 +0000 (14:48 +1000)]
llvmpipe/fs: start using nir info in some places.
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24817>
Dave Airlie [Wed, 2 Aug 2023 05:53:29 +0000 (15:53 +1000)]
llvmpipe/analyse: drop TGSI path.
This drop the AERO path, this should probably be reworked using NIR.
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24817>
Dave Airlie [Wed, 2 Aug 2023 04:42:44 +0000 (14:42 +1000)]
llvmpipe/fs: switch to using tgsi->nir instead of handling tgsi
This just swaps, lots of cleanup after this.
Reviewed-by: Brian Paul <brianp@vmware.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24817>
Roman Stratiienko [Wed, 30 Aug 2023 13:53:06 +0000 (16:53 +0300)]
android: Fix num_planes assignment in u_gralloc_fallback
That seems to be an uncaught porting issue from EGL code to a common.
Fixes:
ee42e2166d8362 ("android: Introduce the Android buffer info abstraction")
Signed-off-by: Roman Stratiienko <r.stratiienko@gmail.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24953>
Qiang Yu [Thu, 17 Aug 2023 06:45:37 +0000 (14:45 +0800)]
aco: do not fix_exports when program is prolog
Otherwise fix_export() will abort when find no export.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24712>
Qiang Yu [Sat, 5 Aug 2023 08:18:47 +0000 (16:18 +0800)]
aco: add aco compile interface for radeonsi vs prolog
Radeonsi prolog does not need s_endpgm.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24712>
Qiang Yu [Sat, 5 Aug 2023 08:17:02 +0000 (16:17 +0800)]
aco: add vs prolog instruction selection for radeonsi
Port from llvm si_llvm_build_vs_prolog().
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24712>
Qiang Yu [Fri, 4 Aug 2023 12:14:30 +0000 (20:14 +0800)]
aco: prepare fix_ls_vgpr_init_bug to be used by gl vs prolog
Prolog does not have nir shader.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24712>
Qiang Yu [Thu, 3 Aug 2023 09:08:17 +0000 (17:08 +0800)]
aco: pass sw_stage when setup_isel_context
We are going to add more shader parts.
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24712>
Qiang Yu [Tue, 29 Aug 2023 12:50:34 +0000 (20:50 +0800)]
aco: simplify setup_tcs_info
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Signed-off-by: Qiang Yu <yuq825@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24712>