Samuel Pitoiset
2cc981a0cd
radv: fix capturing RGP on RDNA3 with more than one Shader Engine
...
PKT3_RESET_FILTER_CAM_S seems required on GFX11. Otherwise, capturing
with more than on SE can hang.
Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25156 >
2023-09-12 08:38:39 +00:00
Dave Airlie
4dbc55818c
llvmpipe: enable driver functions.
...
This enables driver functions for the CL paths.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24687 >
2023-09-12 01:57:50 +00:00
Dave Airlie
4ecd471ee3
llvmpipe/cs: add support for function calls.
...
This adds (disabled) support for function calls to the compute shader.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24687 >
2023-09-12 01:57:50 +00:00
Dave Airlie
3704f158a2
gallivm: add support for function calling
...
This adds support for calling functions in compute shaders.
Functions are passed two implicit arguments
- the current exec mask
- a context containing all the info needed for intrinsics to work
when not in the toplevel.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24687 >
2023-09-12 01:57:50 +00:00
Dave Airlie
14a6668964
rusticl: use cleanup funcs
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24687 >
2023-09-12 01:57:50 +00:00
Dave Airlie
b8e93abd11
gallivm: rework translator to allow per-impl work.
...
This allows a function implementation to be targetted, this will
only be used by the compute shader paths, so keep a compat path
for all the others.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24687 >
2023-09-12 01:57:50 +00:00
Dave Airlie
3cd20feed0
gallivm/nir: split prepasses out to make per-function work easier.
...
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24687 >
2023-09-12 01:57:50 +00:00
Dave Airlie
bfe152916c
nir: move the libclc lowering over to functions file.
...
This lowering is pretty generic, and I want to enhance it for
times when we don't want to inline.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24687 >
2023-09-12 01:57:50 +00:00
Collabora's Gfx CI Team
52343ac668
Uprev Piglit to f7db20b03de6896d013826c0a731bc4417c1a5a0
...
ed58dfbd12...f7db20b03d
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24624 >
2023-09-12 01:18:07 +00:00
Rob Clark
c4c76b72e1
freedreno/a6xx: ARB_shader_viewport_layer_array
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
0bb34e49ec
freedreno/a6xx: Handle PIPE_BIND_BLENDABLE
...
We weren't advertising EXT_float_blend due to missing handling for the
BLENDABLE usage bit.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
e6b5e965cc
freedreno/a6xx: Use pipe_blit_info::sample0_only
...
Instead of trying to pass this back-door, and failing in a few cases we
go thru generic paths.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
c1a188ad4f
freedreno/a6xx: EXT_depth_bounds_test
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
43c77244d9
freedreno/a6xx: EXT_shader_image_load_formatted
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
6df5f3d4f1
freedreno/a6xx: EXT_demote_to_helper_invocation
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
babe8a10d9
freedreno/a6xx: ARB_texture_filter_minmax
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
286b7723f0
freedreno/a6xx: ARB_sample_locations
...
Note, gl_SamplePosition (rgetpos), and therefore interpolateAtSample(),
doesn't work with sample location_enable=true. For vulkan, "If the
current pipeline uses custom sample locations the value of any variable
decorated with the SamplePosition built-in decoration is undefined."
But ARB_sample_positions doesn't mention this. Possibly the vk text
should be backported to the gl extension. (If the app is specifying the
sample locations, it shouldn't need gl_SamplePosition.)
The upshot of this is 2 out of 3 tests that piglit arb_sample_locations
test tests fail, even though sample locations itself is working.
Possibly the test should be updated. Or we could use driconf to hide
ARB_gpu_shader5 and ARB_sample_shading from this test.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
fd00e99444
freedreno/a6xx: ARB_post_depth_coverage
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
eb3cb03bbe
freedreno: Implement ATI_meminfo
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
c2e8b52922
freedreno/a6xx: Re-write the function-of-doom
...
Re-write the program state building to align more closely with turnip,
for easier comparision.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
9b2780dcaf
freedreno/a6xx: Re-work fd6_emit_shader
...
Shuffle around a bit of the state emit, so that it more closely matches
tu_emit_xs().
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Rob Clark
a11e3f35df
freedreno/a6xx: Drop unused screen args
...
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24999 >
2023-09-11 19:45:19 +00:00
Pavel Ondračka
38694b7386
r300: reduce number of iterations for vertex shader loops
...
Using the default value leads to occasional hangs on RV516 for unknown
reasons. Set it to 128 insted of 255.
dEQP and piglit are still happy and I don't expect any real app to hit
this, but lets see. As a side effect this boosts fps in the apps that
have non-unrollable vertex shaders (as the shaders now effectivelly run
almost two times faster) and ~5% dEQP runtime decrease.
Reviewed-by: Filip Gawin <filip.gawin@collabora.com>
Signed-off-by: Pavel Ondračka <pavel.ondracka@gmail.com>
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/7934
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20873 >
2023-09-11 19:30:52 +00:00
Chia-I Wu
ccd3bb4548
winsys/radeon: fix a race between bo import and destroy
...
This is similar to commit 85e74944c6 ("winsys/amdgpu: fix a race
between import and destroy") but for winsys/radeon. In short, we need
to check the reference count again after bo_handles_mutex is held.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25133 >
2023-09-11 19:11:29 +00:00
Mike Blumenkrantz
39aa483760
zink: set optimal_keys for turnip jobs
...
nobody cares about stipple on turnip for real world scenarios, so
testing it instead of the thing that people will actually want is pointless
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25037 >
2023-09-11 14:48:31 +00:00
Mike Blumenkrantz
cf66ed2dec
zink: imply ZINK_DEBUG=quiet if ZINK_DEBUG=optimal_keys is set on turnip
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25037 >
2023-09-11 14:48:31 +00:00
Mike Blumenkrantz
1e1f58c1ac
zink: add ZINK_DEBUG=quiet
...
mainly for use with ZINK_DEBUG=optimal_keys on turnip since spamming
a warning like that constantly is pointless
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25037 >
2023-09-11 14:48:31 +00:00
Daniel Stone
cb76e90793
ci/zink: Add new zink-lvp flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25149 >
2023-09-11 14:10:23 +00:00
Daniel Stone
077e2da21e
ci/d3d12: Add new flake
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25149 >
2023-09-11 14:10:23 +00:00
Alba Mendez
e3aab80d4f
meson: support installation tags
...
the only thing missing is to tag custom install targets, namely:
- ICDs (vulkan, glvnd, OpenCL, VA-API, VDPAU)
- Vulkan layers
- custom install script for megadrivers
- drirc file
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24911 >
2023-09-11 13:00:45 +00:00
Connor Abbott
252aee2634
freedreno, ir3, tu: Constify various uses of ir3_shader_variant
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25076 >
2023-09-11 10:34:10 +00:00
Connor Abbott
5666758820
tu, freedreno/a6xx: Don't use VS for PrimID passthru state
...
Emit the registers solely based on whether FS reads PrimID, and assume
the HW will do the right thing and disable PrimID passthru when GS is
enabled. This untangles these registers so we can set them from the FS
draw state in the future.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25076 >
2023-09-11 10:34:10 +00:00
Connor Abbott
b312155cc5
tu: Rename PrimID-related registers
...
It turns out that the hardware automatically selects whether PrimID
passthrough needs to happen based on whether GS is enabled, which means
that it's safe to always set these registers based whether PrimID is
read by the FS and the hardware will ignore them when GS is enabled. Use
the real names for these registers to make it less confusing when we
start to do that.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25076 >
2023-09-11 10:34:10 +00:00
Ganesh Belgur Ramachandra
51773d135d
radeonsi: sets OPTIMAL_BIN_SELECTION to 0 if using bottom_edge_rule
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24725 >
2023-09-11 04:24:41 -05:00
Ganesh Belgur Ramachandra
86b4fe5d68
radeonsi: stores bottom_edge_rule option in the rasterizer state
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24725 >
2023-09-11 04:23:59 -05:00
Dave Airlie
2d4fe5f229
clover/llvm: move to modern pass manager.
...
This seems like it should work, but I haven't tested it yet.
Tested-by: Dieter Nützel <Dieter@nuetzel-hh.de>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24879 >
2023-09-11 13:04:07 +10:00
Erico Nunes
cb1c88d41f
lima: fix plbu block stride calculation
...
For some specific texture sizes, notably some texture sizes with width
4096, block stride calculation could end up calculating stride 256 which
is an invalid value.
In those specific cases, this could cause rendering artifacts or
application/driver crashes.
Cc: mesa-stable
Signed-off-by: Erico Nunes <nunes.erico@gmail.com>
Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25084 >
2023-09-10 20:41:24 +00:00
Mike Blumenkrantz
94941de25b
zink: delete all psiz=1.0 stores if maintenance5 is present
...
this frees up an output location woooo
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24782 >
2023-09-09 15:44:45 +00:00
Mike Blumenkrantz
23df2bf41b
zink: slightly refactor psiz deletion during linking
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24782 >
2023-09-09 15:44:45 +00:00
Mike Blumenkrantz
6d5174974a
zink: use HIC for image subdata when possible
...
this has a lot of caveats:
* extension must be supported
* resource must have usage bit set
* resource must not have any pending batch usage
* resource must be in supported layout
if all of these conditionals pass, then HIC can be used for direct image subdata
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
f24891269d
zink: check/use suboptimal HIC during ici init
...
this allows implicit use of HIC where possible while rejecting it when
it would cause performance loss
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
e006a3d8bc
zink: use some return codes for check_ici errors
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
4feb37d629
zink: fix some off-by-one indentation
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
9907573d98
zink: add a fixup method for extra driver props
...
some extensions have "extra" props which need the get_count -> get_prop_array
dance, and codegen is too stupid to figure this out (and probably always will be)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
9ff5026100
zink: disable HIC without resizable BAR
...
this otherwise ooms the system
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
f95134468a
zink: move mem type detection up in file
...
no functional changes
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
521800cf59
zink: hook up VK_EXT_host_image_copy
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
5edcab3385
lavapipe: don't advertise UNDEFINED layout for HIC
...
this is illegal
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
943909514e
lavapipe: handle VkHostImageCopyDevicePerformanceQueryEXT
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00
Mike Blumenkrantz
87fa46c10d
zink: use VkFormatProperties3
...
but wrap it in a smaller type to save some space
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24775 >
2023-09-09 13:02:44 +00:00