Qiang Yu
c77a57b981
radeonsi: reduce sgpr count for scratch_offset when aco
...
aco add scratch_offset to shader args explicitly.
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/24989 >
2023-10-10 11:09:48 +08:00
Qiang Yu
f97a701d89
aco,radv,radeonsi: pass spi ps input ena and addr
...
radeonsi may pass different ena and addr when part mode 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/24973 >
2023-10-10 02:36:34 +00:00
Qiang Yu
38530b808e
ac,radeonsi: move ps arg pos_fixed_pt to ac_shader_args
...
It's a HW init reg, not driver spec user sgpr. radv just
doesn't use it. Move it to amd common for aco ps prolog
usage.
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/24973 >
2023-10-10 02:36:33 +00:00
Emma Anholt
47024f22fe
ci/crocus: Disable flaky unvanquished-ultra trace
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25626 >
2023-10-10 01:24:47 +00:00
Emma Anholt
e25f5875bd
ci/zink: Skip dmat[34] op tests in general, as well
...
More "make full-run zink CI take less time". You still get dmat2 to see
if double matrices work at all.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25626 >
2023-10-10 01:24:47 +00:00
Emma Anholt
7d6d63e554
ci/zink: Skip 3-minute-long glx-visuals timeouts.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25626 >
2023-10-10 01:24:47 +00:00
Emma Anholt
9aec599678
ci/crocus: Generalize the drawarrays-vertex-count flakes.
...
We just got it for triangle fan as well.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25626 >
2023-10-10 01:24:47 +00:00
José Roberto de Souza
c8c1109bc6
iris: Nuke useless flags from iris_fine_fence_new()
...
Only IRIS_FENCE_TOP_OF_PIPE was changing the PIPE_CONTROL flags but it
was not set in any caller.
So we can remove IRIS_FENCE_* and flags from iris_fine_fence struct.
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25571 >
2023-10-09 21:12:56 +00:00
José Roberto de Souza
2641b8d1e0
iris: Lock bufmgr->lock before call vma_free() in error path
...
vma_free() requires that bufmgr->lock is held.
Signed-off-by: José Roberto de Souza <jose.souza@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25571 >
2023-10-09 21:12:55 +00:00
Mike Blumenkrantz
c8f4cfd641
zink: error at handle export on missing EXT_image_drm_format_modifier
...
this doesn't work anyway
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Daniel Stone <daniels@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25526 >
2023-10-09 18:43:09 +00:00
Emma Anholt
e9e6a67600
i915: Use nir_group_loads() to reduce texture indirection phases.
...
total instructions in shared programs: 467049 -> 467040 (<.01%)
instructions in affected programs: 573 -> 564 (-1.57%)
total tex_indirect in shared programs: 14133 -> 14019 (-0.81%)
tex_indirect in affected programs: 491 -> 377 (-23.22%)
total temps in shared programs: 28543 -> 29178 (2.22%)
temps in affected programs: 3307 -> 3942 (19.20%)
LOST: 0
GAINED: 65
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25533 >
2023-10-09 17:14:10 +00:00
Emma Anholt
af823b5d58
i915: Make exceeding tex indirect count fatal.
...
The HW should fail to run shaders that have too many phases, so do this so
that we get link failures.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25533 >
2023-10-09 17:14:10 +00:00
Emma Anholt
4f78c27330
i915: Do a test compile at glLinkShader() time.
...
This lets us throw errors back to the app for shaders that are too
complex. The X server would really like to have this instead of guessing
based on renderer strings when shaders might be too complicated.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25533 >
2023-10-09 17:14:10 +00:00
Emma Anholt
2432f14d00
i915: Save fragment program compile error messages in the fragment shader.
...
We'll want this for doing linking failure messages for shaders that are
too long.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25533 >
2023-10-09 17:14:10 +00:00
Emma Anholt
8e81aff4bb
i915: Don't log I915_DEBUG=fs output for blit shaders.
...
Unless you have NIR_DEBUG=print_internal, the rest of the shader debug
pipeline is also hidden. Cleans up output when looking at shader-db
compiles.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25533 >
2023-10-09 17:14:09 +00:00
Emma Anholt
9c7d94c57e
i915: Print the relevant counts vs limits when throwing errors.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25533 >
2023-10-09 17:14:09 +00:00
Emma Anholt
0e284876ca
i915: Re-clang-format and enforce it in CI.
...
I want to be able to mash the format button at any point when hacking on
this thing instead of doing bespoke whitespace.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25533 >
2023-10-09 17:14:09 +00:00
Rob Clark
1e820ac128
freedreno: Rework supported-modifiers handling
...
We should be taking into account the format while deciding if we support
a given modifier or not. So a simple array of supported modifiers does
not do the trick.
While we are at it, also handle QCOM_TILED3. (We really only use
QCOM_TILED2 in GMEM so it isn't user visible.)
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9938
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25575 >
2023-10-08 18:07:37 +00:00
Gert Wollny
3c1020724e
virgl: Use common clear_texture if host doesn't support the feature
...
v2: Fix include (osy)
Fixes: a1eabeff (gallium: remove PIPE_CAP_CLEAR_TEXTURE)
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/9944
Signed-off-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25580 >
2023-10-07 09:20:57 +00:00
antonino
3a33e59596
zink: store bindless var when creating it to avoid creating it again
...
When bindless variables are created they get used directly and never
stored anywhere so if another bindless instruction is encountered
duplicate variables are created.
Fixes: fe2ba184d8 ("zink: use descriptor indices in compiler")
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25591 >
2023-10-06 19:55:44 +00:00
Mike Blumenkrantz
06816cccb9
zink: don't check submit count for unflushed usage
...
unflushed usage is unflushed regardless of the submit count and is
critical for detecting multi-context synchronization
fixes Wolfenstein: The New Order load screen deadlock
Fixes: db12b881c7 ("zink: track/check submit info on resource batch usage")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25572 >
2023-10-06 05:30:22 +00:00
Emma Anholt
762210e224
ci/crocus: Add known piglit flakes
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25574 >
2023-10-06 04:06:29 +00:00
Konstantin Seurer
ac838c1c5c
mesa: Fix glBegin/End when LINE_LOOP is not supported
...
Emits the first vertex inside glEnd.
cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25346 >
2023-10-05 21:52:37 +00:00
Ganesh Belgur Ramachandra
e3e47aa96e
radeonsi: "clear_12bytes_buffer" shader in nir
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25221 >
2023-10-05 09:43:11 +00:00
Ganesh Belgur Ramachandra
3f44a8321f
radeonsi: "clear_render_target_1d_array" shader in nir
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25221 >
2023-10-05 09:43:11 +00:00
Ganesh Belgur Ramachandra
d0b14c56ea
radeonsi: "clear_render_target" shader in nir
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25221 >
2023-10-05 09:43:11 +00:00
Marek Olšák
340218c51e
radeonsi: upload shaders via a staging buffer so as not to map VRAM directly
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25494 >
2023-10-04 23:53:19 -04:00
Marek Olšák
23af6d3d35
radeonsi: add another aux context for uploading shaders
...
When the first auxiliary context is locked and wants to compile and upload
a shader asynchronously, we need to use another auxiliary context
in the compiler thread because the first one is locked at that point.
This adds an array of auxiliary contexts into si_screen and changes how aux
contexts are accessed.
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25494 >
2023-10-04 23:53:16 -04:00
Konstantin Seurer
20e8760c75
zink: Enable edge flags with points
...
Fixes: 90a8525 ("zink: handle edgeflags")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25335 >
2023-10-04 23:20:52 +00:00
Konstantin Seurer
4625e18619
nir/passthrough_gs: Support edge flags with points
...
Fixes: 24535ff ("nir: handle edge flags in nir_create_passthrough_gs")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25335 >
2023-10-04 23:20:52 +00:00
Konstantin Seurer
3bf60f904b
zink: Initialize primitive types to an invalid value
...
The memory is zero initialized which corresponds to MESA_PRIM_POINTS.
Fixes: 659c39f ("zink: rework primitive rasterization type logic")
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
Acked-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25335 >
2023-10-04 23:20:52 +00:00
Igor Torrente
f0762f003d
zink: fix for startup crash of weston running on top of zink + venus
...
Venus asserts if we are transitioning to/from
`VK_IMAGE_LAYOUT_PRESENT_SRC_KHR` if we are not dealing with a wsi
image.
Now we detects this case and avoid transition the layout in this case.
Signed-off-by: Igor Torrente <igor.torrente@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25423 >
2023-10-04 22:28:32 +00:00
Marek Olšák
bc432ab9a0
radeonsi/ci: update navi10 results
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25515 >
2023-10-04 12:35:15 +00:00
Marek Olšák
f4d08bf92d
Revert "radeonsi: specialize si_draw_rectangle using a C++ template"
...
This reverts commit cd7e20f513 .
Navi1x turns off NGG when streamout queries are active, which breaks
the assumption of specialized si_draw_rectangle that NGG is always
enabled on Navi1x.
Fixes: cd7e20f513
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25515 >
2023-10-04 12:35:15 +00:00
Martin Roukala (né Peres)
cbdd4f5373
zink/ci: remove 19 tests from the zink-radv-polaris10-fails list
...
It seems that most crashes in glgetteximage-related tests were fixed,
likely by [1] \o/.
[1]: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25460
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25535 >
2023-10-04 11:13:29 +00:00
Mike Blumenkrantz
72323f66d9
zink: guarantee egl syncobj lifetime
...
according to spec, egl syncobjs can be deleted before they complete,
which means they need to be preserved while they're still in progress
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25460 >
2023-10-04 02:27:53 +00:00
Mike Blumenkrantz
4ef2226210
zink: fix end-of-batch barrier pipeline stages
...
ALL_COMMANDS covers all the layouts used here
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25460 >
2023-10-04 02:27:53 +00:00
Mike Blumenkrantz
d0dd973fe2
zink: move v3dv scalarBlockLayout workaround
...
this isn't actually device-level workaround, it's just error suppression
fixes #9895
Fixes: 2978b85789 ("zink: don't warn about missing scalarBlockLayout on v3dv")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25456 >
2023-10-04 02:00:20 +00:00
Mike Blumenkrantz
2531050ec9
zink: move push descriptor disable to driver workarounds
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25456 >
2023-10-04 02:00:20 +00:00
Mike Blumenkrantz
c3f5416eaf
zink: fix crashing in image rebinds
...
this is invalid for buffer textures
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25379 >
2023-10-04 01:34:55 +00:00
Samuel Pitoiset
60dd34b02a
zink/ci: bump zink-anv-tgl-full timeout to 1h45m
...
It can timeout otherwise. Might be due to recent uprev CTS.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25509 >
2023-10-03 19:38:39 +00:00
Samuel Pitoiset
91cb09b236
zink/ci: update list of expectations for zink-anv-tgl
...
See https://gitlab.freedesktop.org/mesa/mesa/-/pipelines/995410 .
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25509 >
2023-10-03 19:38:39 +00:00
Emma Anholt
57aa6dad16
ci/crocus: Add a related flake to a known one.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25509 >
2023-10-03 19:38:39 +00:00
Emma Anholt
c3c2a8def0
ci/zink: Skip more doubles tests on anv that flake at 3 minute timeouts.
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25509 >
2023-10-03 19:38:39 +00:00
Rob Clark
366367eba8
freedreno: Move/add some attach_bo()
...
In some cases we were missing this, in others we just needed to move it
before the OUT_RELOC().
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25465 >
2023-10-03 15:18:03 +00:00
Rob Clark
9870cca6a0
freedreno: Add missing indirect_draw_count tracking
...
Fixes: f677f64e80 ("freedreno: implement GL_ARB_indirect_parameters")
Fixes: b43e5aec0d ("freedreno/batch: Move submit bo tracking to batch")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25465 >
2023-10-03 15:18:03 +00:00
Rob Clark
8a3b4b69a2
freedreno: Add private-BO tracking
...
There are some internally used buffers that we should just attach to
every submit up-front.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25465 >
2023-10-03 15:18:03 +00:00
Rob Clark
c6f17d89c7
freedreno/batch: Move query_buf allocation
...
This lets us move fd_batch_update_queries() after resource tracking.
Which will become needed in the next patch which adds validation to
assert needed BOs are attached to the submit.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25465 >
2023-10-03 15:18:03 +00:00
Rob Clark
2189920e49
freedreno: Fix user const buffer dirtiness
...
If we went the upload_user_buffer() path, cb->buffer would be null,
causing fd_dirty_shader_resource() to be a no-op. What we want to
use is &so->cb[index].
Fixes: b43e5aec0d ("freedreno/batch: Move submit bo tracking to batch")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25465 >
2023-10-03 15:18:03 +00:00
Rob Clark
4c0defda8a
freedreno: Fix streamout offset_buf dirtiness
...
We also need to mark the offset buffer as dirty.
Fixes: b43e5aec0d ("freedreno/batch: Move submit bo tracking to batch")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25465 >
2023-10-03 15:18:03 +00:00