Daniel Stone
2d03e67bbf
ci/angle: Use relative paths
...
When we use build-angle as a sourced script, $0 refers to the overall
build script, which may not be in .gitlab-ci/container/.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31781 >
2024-10-22 10:44:36 +00:00
Daniel Stone
ff97a8b006
ci/firmware: Allow calling firmware as sourced script
...
Most of our build scripts are sourced rather than executed in a
subshell, so they inherit our environment. Allow our firmware script to
do the same by not exiting when we have no firmware to download, as is
the case on arm32.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31781 >
2024-10-22 10:44:36 +00:00
Daniel Stone
24a9fe6655
ci: Really remove Mesa drivers from rootfs
...
It turns out dpkg doesn't actually support wildcard expansion. Oops.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31781 >
2024-10-22 10:44:36 +00:00
Daniel Stone
5e1d3c2ffe
ci/mold: Use appropriate parallelism and strip binaries
...
--parallel will by default launch way too many processes and just DoS
itself. We also want to strip the installed binary.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31781 >
2024-10-22 10:44:36 +00:00
Daniel Stone
05b5701c01
ci/lava: Source setup-test-env
...
Make sure we have it available everywhere.
Signed-off-by: Daniel Stone <daniels@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31781 >
2024-10-22 10:44:36 +00:00
Vignesh Raman
68135b620c
ci: move rules from rules-anchors to workflow
...
The workflow is almost self-contained except by two rules that are still in an
old rules-anchors definition. So, we can keep all the rules in the same place.
Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com >
Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31561 >
2024-10-22 09:54:59 +00:00
Vignesh Raman
a9e11c2f09
ci: build KERNEL_IMAGE_BASE in before_script
...
When a job modifies the KERNEL_TAG variable, the url shall be rebuilt. So,
instead of building it in the variables section, do right before the script
when all the environment is set.
But, as we still have the FORCE_KERNEL_TAG that then defines the
KERNEL_IMAGE_BASE in the old style, for backwards compatibility it is not
overwriting the KERNEL_IMAGE_BASE.
The last two rules are now redundant and can be dropped.
Signed-off-by: Sergi Blanch Torne <sergi.blanch.torne@collabora.com >
Signed-off-by: Vignesh Raman <vignesh.raman@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31561 >
2024-10-22 09:54:59 +00:00
Marek Olšák
0bffe8ec05
mesa_interface: rename __DRIimage to struct dri_image
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31752 >
2024-10-22 06:48:02 +00:00
Marek Olšák
ee54fe9f69
mesa_interface: rename __DRIconfig to struct dri_config
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31752 >
2024-10-22 06:48:02 +00:00
Marek Olšák
872b5c70d1
mesa_interface: remove redundant __DRI*Rec types
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31752 >
2024-10-22 06:48:02 +00:00
Marek Olšák
186a3b6dad
mesa_interface: replace opaque __DRIdrawable with struct dri_drawable everywhere
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31752 >
2024-10-22 06:48:02 +00:00
Marek Olšák
329e03535b
mesa_interface: replace opaque __DRIcontext with struct dri_context everywhere
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31752 >
2024-10-22 06:48:02 +00:00
Marek Olšák
1ce9aa3d65
mesa_interface: replace opaque __DRIscreen with struct dri_screen everywhere
...
it's always struct dri_screen
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31752 >
2024-10-22 06:48:02 +00:00
Marek Olšák
3b603d1646
mesa_interface: remove unused stuff
...
Reviewed-By: Mike Blumenkrantz <michael.blumenkrantz@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31752 >
2024-10-22 06:48:01 +00:00
Eric Engestrom
28655b26f5
ci/b2c: make initramfs & kernel urls optional
...
If omitted, the default ones are used.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31570 >
2024-10-22 05:29:07 +00:00
Eric Engestrom
fa7c4b148b
ci/b2c: allow B2C_DTB_URL to be set to an empty string to unset it
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31570 >
2024-10-22 05:29:06 +00:00
Louis-Francis Ratté-Boulianne
7af000a6ec
panfrost: initialize all UBO and vertex buffer descriptors
...
When tracing the command stream with PAN_MESA_DEBUG=trace, all
descriptors are read and decoded. Trying to read an invalid or old
descriptor might cause confusion or (more importantly) a crash.
Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31768 >
2024-10-22 05:01:27 +00:00
Kenneth Graunke
834b919f6a
brw: Optimize 16-bit texture fetches later
...
At the point we were calling this, we hadn't necessarily cleaned up
derefs via nir_lower_vars_to_ssa, nor movs/vecs via copy propagation,
so it wasn't necessarily easy for this pass to see the actual usage of
the destination.
Moving this later allows us to detect f2f32(txf(...)) and avoid
converting it to a 16-bit txf (why convert with ALU instructions
when the sampler could do it for us?).
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Sushma Venkatesh Reddy <sushma.venkatesh.reddy@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31750 >
2024-10-22 01:15:10 +00:00
Chia-I Wu
ea478efa2e
panvk: advertise VK_EXT_image_drm_format_modifier
...
The extension is supported despite we only support
DRM_FORMAT_MOD_LINEAR.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31719 >
2024-10-22 00:47:47 +00:00
Chia-I Wu
b7bc7852d7
panvk: advertise VK_KHR_image_format_list
...
Since panvk does not treat VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT specially,
we can just advertise the extension. When AFBC is supported in the
future, we will want to check the list to see if we can keep AFBC even
when VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT is set.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31719 >
2024-10-22 00:47:47 +00:00
Chia-I Wu
cb7ce6a934
panvk: check VkPhysicalDeviceImageDrmFormatModifierInfoEXT
...
Make sure VK_ERROR_FORMAT_NOT_SUPPORTED is returned when
VkPhysicalDeviceImageDrmFormatModifierInfoEXT specifies an unsupported
modifier.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31719 >
2024-10-22 00:47:47 +00:00
Chia-I Wu
252ddaf51b
panvk: fix VkDrmFormatModifierPropertiesListEXT query
...
Do not advertise unsupported formats. Fix the array type and init
drmFormatModifierTilingFeatures.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31719 >
2024-10-22 00:47:47 +00:00
Chia-I Wu
b3266db918
panvk: remove panvk_GetImageDrmFormatModifierPropertiesEXT
...
Init vk_image::drm_format_mod and let
vk_common_GetImageDrmFormatModifierPropertiesEXT handle it.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31719 >
2024-10-22 00:47:47 +00:00
Adam Jackson
514ba16d95
rusticl: Enable out-of-order execution
...
Ought to work, let's find out.
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12029
Reviewed-by: Karol Herbst <kherbst@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31672 >
2024-10-22 00:03:48 +00:00
Karol Herbst
1798597637
radeonsi: move si_compute::global_buffers to si_context
...
si_set_global_binding is a context function, but it touches the bound
compute program. As radeonsi also advertizes PIPE_CAP_SHAREABLE_SHADERS
this function is supposed to be safe when the same compute state object is
bound to multiple contexts at once.
In order to fix this data race global_buffers is moved to si_context so it
becomes context private data instead.
Cc: mesa-stable
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31672 >
2024-10-22 00:03:48 +00:00
Christian Gmeiner
fad599a619
etnaviv: Enable ARB_framebuffer_no_attachments
...
There is not much needed to pass the supported tests.
Signed-off-by: Christian Gmeiner <cgmeiner@igalia.com >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31578 >
2024-10-21 23:27:30 +00:00
David Heidelberg
3dbbc24cb3
ci/build: debian-build-testing should follow same limit as other jobs
...
This was temporarily measure to prevent long LTO builds get stuck.
Signed-off-by: David Heidelberg <david@ixit.cz >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31758 >
2024-10-21 22:30:09 +00:00
Eric Engestrom
5a65c478dd
ci: fix shader-db rules
...
All the post-merge pipelines are failing to be created with this error:
'shader-db' job needs 'debian-build-testing' job, but 'debian-build-testing' is not in any previous stage
Like all the other test jobs, shader-db should never run in post-merge
pipelines.
Fixes: 0724b00dad ("ci: run shader-db only when one of the drivers it tests is modified")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31758 >
2024-10-21 22:30:08 +00:00
Amber
9ace01edbe
tu, ir3: Implement VK_KHR_shader_atomic_int64 for a7xx.
...
Passes dEQP-VK.glsl.atomic_operations.*64bit*
Signed-off-by: Amber Harmonia <amber@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27776 >
2024-10-21 21:47:44 +00:00
Amber
a3afe22dc9
nir: add pass to lower atomic arithmetic to a loop with cmpxchg.
...
Signed-off-by: Amber Harmonia <amber@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27776 >
2024-10-21 21:47:44 +00:00
Amber
7d0870e5d5
ir3: add support for 64 bit atomics
...
Signed-off-by: Amber Harmonia <amber@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27776 >
2024-10-21 21:47:44 +00:00
Amber
5628a01523
ir3: add encoding support for 64-bit atomics introduced in a7xx.
...
Signed-off-by: Amber Harmonia <amber@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27776 >
2024-10-21 21:47:44 +00:00
Mary Guillemard
84d57e1fb1
nir: Move atomic_op_to_alu to common code
...
Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27776 >
2024-10-21 21:47:44 +00:00
quic_lkondred
334af37697
freedreno: Add support for Adreno 663 GPU
...
Add support to enable basic functionality of Adreno 663 GPU.
Signed-off-by: quic_lkondred <quic_lkondred@quicinc.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31211 >
2024-10-21 21:05:57 +00:00
Eric Engestrom
ce02c9b5ef
ci: simplify setting lava job priority
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31755 >
2024-10-21 20:18:23 +00:00
Eric Engestrom
e70db26d18
ci: simplify ci-tron priority variable
...
Set it to low, and only override in merge pipelines.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31755 >
2024-10-21 20:18:23 +00:00
Rebecca Mckeever
c2299b6642
panvk/csf: Implement vkCmdExecuteCommands
...
Signed-off-by: Rebecca Mckeever <rebecca.mckeever@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31159 >
2024-10-21 19:39:07 +00:00
Rebecca Mckeever
3513960fe6
panvk: Move rendering info to panvk_rendering_state struct
...
Signed-off-by: Rebecca Mckeever <rebecca.mckeever@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31159 >
2024-10-21 19:39:07 +00:00
Rebecca Mckeever
ddb2f6f1fa
panvk: Track VkFormats for depth and stencil attachments
...
These can be used directly in vk_meta_rendering_info.
Signed-off-by: Rebecca Mckeever <rebecca.mckeever@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31159 >
2024-10-21 19:39:07 +00:00
Rebecca Mckeever
26a03222ef
panvk/csf: Split tiler flags initialization into two steps
...
The first step conditionally updates the tiler flags based on dirty bits,
and the second step is the override flags, which are unconditionally
updated at draw time.
Use pan_pack_nodefaults() to avoid default initialized fields.
Signed-off-by: Rebecca Mckeever <rebecca.mckeever@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31159 >
2024-10-21 19:39:07 +00:00
Rebecca Mckeever
07346ea1e6
panvk/csf: Set and clear vb.dirty flag
...
Fixes: 5544d39f44 ("panvk: Add a CSF backend for panvk_queue/cmd_buffer")
Signed-off-by: Rebecca Mckeever <rebecca.mckeever@collabora.com >
Reviewed-by: Lars-Ivar Hesselberg Simonsen <lars-ivar.simonsen@arm.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31159 >
2024-10-21 19:39:07 +00:00
Marek Olšák
fb6184f89c
nir: add shader_info::tess::tcs_same_invocation_inputs_read(_indirect)
...
We need both the same-invocation usage mask and cross-invocation usage
mask. The AMD reason is below.
Cross-invocation TCS input access doesn't prevent the same-invocation
fast path in AMD hw because it's just a different way to load the same
data, and we want to use both paths for the same TCS input based on
the load instruction. The fast path can't be used for indirect access,
which is gathered separately for same-invocation access.
Reviewed-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/31645 >
2024-10-21 18:53:51 +00:00
David Heidelberg
9ef6ff1702
build: Fix LTO with Android NDK
...
`no-emulated-tls` is passed, but also link arguments are required for LTO.
Tested-by: Mauro Rossi <issor.oruam@gmail.com >
Signed-off-by: David Heidelberg <david@ixit.cz >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31615 >
2024-10-21 17:39:59 +00:00
Rhys Perry
8221367fba
radv: use explicitly sized types for some radv_shader_info members
...
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/31593 >
2024-10-21 15:52:53 +00:00
Rhys Perry
4383a917e6
radv: optimize VS input load components to constants earlier
...
This helps some linking optimizations.
fossil-db (navi21):
Totals from 2262 (2.85% of 79395) affected shaders:
MaxWaves: 57680 -> 57738 (+0.10%); split: +0.11%, -0.01%
Instrs: 1061526 -> 1053937 (-0.71%); split: -0.79%, +0.07%
CodeSize: 5766352 -> 5736784 (-0.51%); split: -0.60%, +0.08%
VGPRs: 89376 -> 89000 (-0.42%); split: -0.43%, +0.01%
Latency: 4102938 -> 4059773 (-1.05%); split: -1.14%, +0.08%
InvThroughput: 1105885 -> 1092291 (-1.23%); split: -1.24%, +0.01%
VClause: 18917 -> 18972 (+0.29%); split: -0.12%, +0.41%
SClause: 28839 -> 28115 (-2.51%); split: -3.32%, +0.81%
Copies: 73396 -> 72671 (-0.99%); split: -1.63%, +0.65%
PreSGPRs: 65866 -> 65838 (-0.04%); split: -0.22%, +0.17%
PreVGPRs: 69752 -> 69278 (-0.68%)
VALU: 680351 -> 673489 (-1.01%); split: -1.03%, +0.02%
SALU: 121459 -> 121515 (+0.05%); split: -0.00%, +0.05%
VMEM: 29632 -> 30021 (+1.31%); split: -0.02%, +1.33%
SMEM: 73744 -> 73836 (+0.12%); split: -0.01%, +0.14%
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/31593 >
2024-10-21 15:52:53 +00:00
Rhys Perry
9784165de5
radv: fix output statistic for fragment shaders
...
This is a per-component bit mask (0xf for each output).
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com >
Reviewed-by: Timur Kristóf <timur.kristof@gmail.com >
Fixes: 0e0c2574d1 ("radv: Add shader stats for inputs and outputs.")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31593 >
2024-10-21 15:52:52 +00:00
Marek Olšák
45d8cd037a
ac/nir: rewrite ac_nir_lower_ps epilog to fix dual src blending with mono PS
...
Unigine Heaven with AMD_DEBUG=mono has incorrect rendering on gfx11
because it doesn't set nir_io_semantics::dual_source_blend_index for
the second output, resulting in garbage asm.
Instead of trying to find out what's wrong, I decided to rewrite this
to make it the same as the LLVM IR path. It simplifies the code and fixes
Unigine Heaven with AMD_DEBUG=mono.
Reviewed-by: Qiang Yu <yuq825@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31669 >
2024-10-21 12:06:14 +00:00
Eric Engestrom
d117411309
{freedreno,intel}/ci: add missing tracking of merge-skips.txt files
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31739 >
2024-10-21 10:22:57 +00:00
Eric Engestrom
ee0d782229
{freedreno,intel}/ci: rename "premerge-skips.txt" to "merge-skips.txt" to accurately reflect what they are
...
This also means the infrastructure added by @gallo in 1dc64d0613
("ci: Use merge-skips files during merge pipelines") can be used and all
the manual adding of these files can be dropped, reducing the likeliness
of bugs.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31739 >
2024-10-21 10:22:57 +00:00
Eric Engestrom
bb98949134
ci: rename "freedreno" farm to "google-freedreno"
...
There are 3 freedreno farms: google, collabora, and valve.
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31709 >
2024-10-21 09:36:05 +00:00