Georg Lehmann
359ba65903
nir/lower_poly_line_smooth: support partial store_output
...
RADV needs this to skip if there is no alpha component
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33340 >
2025-02-05 11:23:35 +00:00
Georg Lehmann
6c410456d9
nir/lower_poly_line_smooth: only smooth first color target
...
The VK spec says:
coverage value is multiplied into the color location 0’s
alpha value after fragment shading
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33340 >
2025-02-05 11:23:34 +00:00
Georg Lehmann
534c2ceac8
nir/lower_poly_line_smooth: don't emit control flow
...
The if is really short so it should really use a conditional select,
but this pass is called too late go through all the usual lowerings
and opts.
Foz-DB Navi21:
Totals from 1128 (1.42% of 79377) affected shaders:
MaxWaves: 29358 -> 29342 (-0.05%)
Instrs: 552306 -> 549668 (-0.48%); split: -0.58%, +0.10%
CodeSize: 2796392 -> 2782360 (-0.50%); split: -0.59%, +0.08%
Latency: 2574361 -> 2566482 (-0.31%); split: -0.47%, +0.16%
InvThroughput: 644047 -> 647500 (+0.54%); split: -0.18%, +0.72%
Copies: 37521 -> 36460 (-2.83%); split: -2.92%, +0.09%
Branches: 12009 -> 10157 (-15.42%)
VALU: 350886 -> 349199 (-0.48%); split: -0.64%, +0.16%
SALU: 104459 -> 105415 (+0.92%); split: -0.00%, +0.92%
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33340 >
2025-02-05 11:23:34 +00:00
Daniel Schürmann
1a8a643bbd
aco/isel: track control flow divergence in loops more accurately
...
We introduce two new variables, cf_context::in_divergent_cf and
cf_context::parent_loop.has_divergent_break, in order to determine
whether there is any other invocations on a different CF path.
Totals from 1305 (1.64% of 79395) affected shaders: (Navi31)
Instrs: 659211 -> 657815 (-0.21%); split: -0.22%, +0.01%
CodeSize: 3483228 -> 3477960 (-0.15%); split: -0.16%, +0.01%
VGPRs: 68820 -> 48048 (-30.18%)
Latency: 14197750 -> 14170767 (-0.19%); split: -0.26%, +0.07%
InvThroughput: 1619103 -> 1619826 (+0.04%); split: -0.02%, +0.07%
VClause: 12384 -> 12350 (-0.27%)
SClause: 26693 -> 26844 (+0.57%); split: -0.01%, +0.57%
Copies: 44994 -> 43535 (-3.24%); split: -3.26%, +0.02%
PreSGPRs: 49007 -> 48907 (-0.20%)
PreVGPRs: 32171 -> 32121 (-0.16%)
VALU: 349984 -> 349857 (-0.04%); split: -0.04%, +0.00%
SALU: 84252 -> 83988 (-0.31%); split: -0.32%, +0.00%
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
583c3586fe
aco/isel: remove loop nest information from exec_info
...
Since we never enter loops with an empty exec mask, and the
control flow is structured, we don't need to consider the
loop nest depth.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
a77258346c
aco/isel: fix assumptions about potential empty exec mask in nested control flow
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
44216e035f
aco/isel: add and use exec_info::empty() helper
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
8e8398832c
aco/isel: use cf_context in loop_context to restore cf information
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
8b9c9fb904
aco/isel: use cf_context in if_context to restore cf information
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
c2bfc05d71
aco/isel: rename cf_context::has_divergent_branch
...
Make it more consistent with cf_context::has_branch.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
0c5a91b9f2
aco/isel: move cf_info into separate struct cf_context
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Daniel Schürmann
61fa007e48
aco/isel: fix empty exec tracking for uniform branches
...
Totals from 5 (0.01% of 79395) affected shaders: (Navi31)
Instrs: 54730 -> 54715 (-0.03%)
CodeSize: 276928 -> 276852 (-0.03%)
Latency: 215212 -> 214874 (-0.16%)
InvThroughput: 40154 -> 40150 (-0.01%)
Copies: 6824 -> 6821 (-0.04%); split: -0.06%, +0.01%
Branches: 1625 -> 1615 (-0.62%)
SALU: 5682 -> 5678 (-0.07%)
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33206 >
2025-02-05 10:54:21 +00:00
Valentine Burley
a4b8131255
zink/ci: Make zink-venus-lvp-full a nightly job
...
The zink-venus-lvp-full job was intended to be a nightly job, but it
was missing the proper manual rules for that.
Fixes: 7bf4d6a4db ("zink/ci: Add a fraction for zink-venus-lvp")
Signed-off-by: Valentine Burley <valentine.burley@collabora.com>
Reviewed-by: Martin Roukala <None>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33393 >
2025-02-05 10:25:01 +00:00
Lionel Landwerlin
a8b84e1898
anv: use A64 messages for push constants loads on Gfx12.5+
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:04 +00:00
Lionel Landwerlin
5c17299084
brw: enable A64 pulling of push constants
...
This will be useful for pulling constants in device bound shaders. A64
allows us to put the constants anywhere.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:04 +00:00
Lionel Landwerlin
0808125914
brw/anv: rework push constants for mesh/task shaders
...
Now using the same model as the compute shader.
As a result we temporarily disable the use of the Inline register for
providing push constants on Task & Mesh shaders. Since that register
is also available on the compute shader we'll try to find a way to use
the same mechanism for all 3 shaders in another MR and bring back that
optimization.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:04 +00:00
Lionel Landwerlin
a77e532248
anv: add a helper for getting gfx push constant addresses
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:03 +00:00
Lionel Landwerlin
26347b4876
anv: use heap size to program generate state heap
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:03 +00:00
Lionel Landwerlin
ddf64a7d95
anv: track the first 2MB of unused VA
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:03 +00:00
Lionel Landwerlin
48e41c87b0
anv: increase general state pool
...
We'll start store more push constants in there.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:03 +00:00
Lionel Landwerlin
75e09c4ff3
anv: reuse helper for compute push constants
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:03 +00:00
Lionel Landwerlin
c08b437db7
brw: fixup scoreboarding for find_live_channels
...
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Reviewed-by: Caio Oliveira <caio.oliveira@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32895 >
2025-02-05 09:56:03 +00:00
Qiang Yu
09b5de379c
gallium/ddebug: add missing modifier callback
...
Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33391 >
2025-02-05 09:26:22 +00:00
Qiang Yu
da023a5a19
ac/surface: fix radv import dmabuf from radeonsi
...
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33391 >
2025-02-05 09:26:22 +00:00
Samuel Pitoiset
f095aaf819
radv/meta: stop using string keys also for DGC and query objects
...
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33379 >
2025-02-05 08:25:00 +00:00
Iago Toral Quiroga
886d720c19
mesa: fix RGBA_SIGNED_COMPONENTS for lowered signed luminance
...
Some drivers implement luminance as RGBA. Since the code checks the
renderbuffer format instead of the internal format this can cause the
query to incorrectly return "signed" on the Alpha component for signed
luminance formats.
Fixes the following Piglit test for various drivers (at least Panfrost
and V3D):
spec/ext_packed_float/query-rgba-signed-components
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33372 >
2025-02-05 07:41:51 +00:00
Iago Toral Quiroga
a6dc8fa426
v3dv: fix missing access bit flag when checking for texel buffer reads
...
VK_ACCESS_2_SHADER_READ_BIT matches all types of reads from shaders,
texel buffers too.
Reviewed-by: Juan A. Suarez <jasuarez@igalia.com>
cc: mesa-stable
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33367 >
2025-02-05 07:04:35 +00:00
Martin Roukala (né Peres)
183ffe86b7
etnaviv/ci: convert from baremetal to CI-Tron
...
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32927 >
2025-02-05 04:35:07 +00:00
Martin Roukala (né Peres)
978c0989eb
ci: fix the artifact name
...
This has probably no incidence on anything else but human-visible names
but let's fix it anyway.
Fixes: ef3091736c ("ci: use CI_PROJECT_NAME for artifacts name")
Signed-off-by: Martin Roukala (né Peres) <martin.roukala@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/32927 >
2025-02-05 04:35:07 +00:00
Dave Airlie
44b88c1034
radv/video: add h264 b frame encoding support.
...
This is supported on VCN 3 and newer.
Acked-by: David Rosca <nowrep@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31104 >
2025-02-05 04:11:38 +00:00
Dave Airlie
717c85d08a
radv/video: calculate colloc buffer size for h264 B frames.
...
This adds the overheads for the colloc buffer needed when
B frames are enabled.
Acked-by: David Rosca <nowrep@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31104 >
2025-02-05 04:11:38 +00:00
Dave Airlie
19b27c77bd
radv/video: move encoder to using a buffer instead of an image
...
For the encoder DPB just allocate a buffer of storage, this should
align memory usage more with what radeonsi does.
Acked-by: David Rosca <nowrep@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31104 >
2025-02-05 04:11:38 +00:00
Qiang Yu
adc51bea28
doc,src: replace doc and comments for shader and compute cap
...
Use command:
find . -type d \( -path "./.git" -o -path "./docs/relnotes" \) -prune -o -type f -exec sed -i 's/PIPE_SHADER_CAP_\([A-Za-z0-9_]*\)/pipe_shader_caps.\L\1/g' {} +
find . -type d \( -path "./.git" -o -path "./docs/relnotes" \) -prune -o -type f -exec sed -i 's/PIPE_COMPUTE_CAP_\([A-Za-z0-9_]*\)/pipe_compute_caps.\L\1/g' {} +
Also remove value type in pipe_compute_caps doc because they
are explicit in struct now.
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
f020ab18e1
gallium: remove screen shader and compute get param callback
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
cb251ff3d0
gallium/aux: remove aux shader param get function
...
Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
4e0f722fc1
zink: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
aaf865cdf2
virgl: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
27c4ac1c10
vc4: remove shader get param
...
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
e51b32e7e9
v3d: remove shader and compute get param
...
Reviewed-by: Jose Maria Casanova Crespo <jmcasanova@igalia.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
b3ae0e6054
tegra: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
d353965473
svga: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
b2c981183c
softpipe: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
7ca3618c01
radeonsi: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
ba2e6ae8f8
r600: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
809b5728a2
r300: remove shader get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
bdd59c1cd5
panfrost: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
5667133413
nouveau/nvc0: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:49 +08:00
Qiang Yu
98529b9b65
nouveau/nv50: remove shader and compute get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:48 +08:00
Qiang Yu
8d9890c0e0
nouveau/nv30: remove shader get param
...
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:48 +08:00
Qiang Yu
d32c928038
llvmpipe: remove shader and compute get param
...
Reviewed-by: Konstantin Seurer <konstantin.seurer@gmail.com>
Acked-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>
Acked-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33176 >
2025-02-05 11:20:48 +08:00