summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
68 min.frontends/va: fix potential overflowsHEADmainPierre-Eric Pelloux-Prayer1-3/+3
The multiplication of 32 bits integers will be truncated before being widened to the destination variable' size. Reported by static analysis. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.mesa: fix total_invocations computationPierre-Eric Pelloux-Prayer1-1/+1
The multiplication of 32 bits integers will be truncated before being widened to the destination variable' size. Reported by static analysis. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.util/texcompress: fix comparison warningPierre-Eric Pelloux-Prayer3-6/+8
Fixes warnings reported by static analysis. It shouldn't change the behavior as numxpixels/numypixels should always be smaller than 255. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.aux/indices: remove useless linesPierre-Eric Pelloux-Prayer2-2/+0
Presumably these were added to silence a "variable j not used" compiler warning, but "j" seems used in the loop counter. Reported by static analysis. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.egl: cast printf argument to the expected typePierre-Eric Pelloux-Prayer1-1/+1
Reported by static analysis. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.mesa/program: remove useless assignmentPierre-Eric Pelloux-Prayer1-2/+2
target_mask is set to 0 and then unconditionnally assigned a different value 10 lines below. Drop the useless init. Reported by static analysis. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.tc: fix potential overflowsPierre-Eric Pelloux-Prayer1-1/+4
Reported by static analysis. Multiplication may overflow before being converted to the larger type, so fix this by casting one of the operands to the destination type. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.radeonsi: fix potential overflowsPierre-Eric Pelloux-Prayer5-8/+8
Reported by static analysis. Multiplication may overflow before being converted to the larger type, so fix this by casting one of the operands to the destination type. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.ac: fix invalid array sizePierre-Eric Pelloux-Prayer1-2/+1
Reported by static analysis. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
68 min.ac: fix potential overflowsPierre-Eric Pelloux-Prayer4-5/+5
Reported by static analysis. Multiplication may overflow before being converted to the larger type, so fix this by casting one of the operands to the destination type. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35877>
4 hourspanfrost/meson: drop invalid C-only -Wno-override-init from C++ argsEric Engestrom2-2/+2
cc1plus: warning: command-line option '-Wno-override-init' is valid for C/ObjC but not for C++ Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35892>
4 hoursci/android: allow unbound ARTIFACTS_BASE_URL in android-cts-runner.shAntonio Ospite1-2/+4
It may happen that `android-cts-runner.sh` is launched from a pure LAVA job which may not define `ARTIFACTS_BASE_URL`. Allow the script to continue even in that case. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35937>
4 hoursdocs/features.txt: Indicate SPIR-V version for rusticlZoltán Böszörményi1-0/+1
Suggested-by: Karol Herbst <kherbst@redhat.com> Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35599>
4 hoursdocs/features.txt: Follow-up changes for rusticlZoltán Böszörményi1-3/+3
Suggested-by: Karol Herbst <kherbst@redhat.com> Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35599>
4 hoursdocs/features.txt: entirely rework OpenCL feature 2.x reportingKarol Herbst1-48/+39
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35599>
4 hoursdoc/features.txt: synchronize OpenCL extension list with official specKarol Herbst1-2/+27
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35599>
4 hoursdocs/features.txt: Move optional OpenCL 1.2 features to the new sectionZoltán Böszörményi1-3/+4
Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Reviewed-by: Karol Herbst <kherbst@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35599>
4 hoursdocs/features.txt: Move optional features of OpenCL 1.0 and 1.1 into a new ↵Zoltán Böszörményi1-5/+10
section Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Reviewed-by: Karol Herbst <kherbst@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35599>
5 hourspanfrost: limit sample_shading to bifrost and laterErik Faye-Lund1-1/+1
We haven't wired this up in the Midgard compiler, so we can't expose sample shading on Midgard GPUs. This all seems fixable, because the KILL instruction can update the coverage without the kill-flag (yeah, a bit confusing naming), but until someone puts in the time to wire up that, let's just disable the functionality to avoid crashes. Fixes: 6bba718027e ("panfrost: Advertise SAMPLE_SHADING") Reviewed-by: Eric R. Smith <eric.smith@collabora.com> Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35881>
5 hourstu: Remove handling of float16 in the 3D blit pathKarmjit Mahil2-34/+9
We're using the 2D path for float16 now, so no need for this code anymore. Signed-off-by: Karmjit Mahil <karmjit.mahil@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35709>
5 hourstu: Use A2D for float16 formatsKarmjit Mahil1-7/+4
Previously we had to utilize the 3D path for float16 formats since the hw would implicitly convert f16->f32 canonicalizing NaNs resulting in copies that were not bit exact. The `HALF_PRECISION` bit was discovered which avoids this conversion, so we can go back to using the 2D path. Using the 2D path is faster than the 3D path. Results of Crucible bench.cast-image show an improvement of slightly above a 50% average for the 1 MiB image->image copy of {4,6,16,32,64)B chunks, and for the 16 GiB there's a slight improvement. The affected formats are {R16,R16G16,R16G16A16}_SFLOAT. Signed-off-by: Karmjit Mahil <karmjit.mahil@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35709>
5 hoursfreedreno/regs: update A2D definitionsDanylo Piliaiev8-60/+81
Co-authored-by: Karmjit Mahil <karmjit.mahil@igalia.com> Signed-off-by: Karmjit Mahil <karmjit.mahil@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35709>
5 hoursiris: ISP invalidate at end of compute batchesCaleb Callaway1-1/+1
We're now re-emitting push constants at the start of compute batches, so we can avoid the overhead of restoring them. CC: mesa-stable Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35873>
5 hoursiris: re-emit push constants at compute batch startCaleb Callaway1-0/+1
Per Ken Graunke, corruption issues with push constants for render batches on Gen12 graphics have been observed and worked around by re-emitting push constants at the start of the batch buffer. We're seeing similar issues with compute batches, so we'll apply the same work-around. Fixes corruption reported in Blender on ADL/RPL CC: mesa-stable Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35873>
6 hoursir3: add subreg move optimizationJob Noorman4-0/+103
Certain instructions essentially behave as a move of half of their full src to their half dst. More specifically: - `cov.u32u16 hdst, src`: moves lower half of src to hdst. - `[a]shr.b hdst, src, 16`: moves upper half of src to hdst. In mergedregs mode, if the src and dst of these instructions are assigned overlapping registers, they can be removed. Implement this by 1) merging the src and dst merge sets of such instruction before RA, and 2) removing them if RA assigned overlapping registers. Totals from 7483 (4.55% of 164575) affected shaders: Instrs: 8913039 -> 8859209 (-0.60%); split: -0.62%, +0.01% CodeSize: 16588988 -> 16489082 (-0.60%); split: -0.61%, +0.00% NOPs: 2020848 -> 2013070 (-0.38%); split: -0.71%, +0.33% MOVs: 352179 -> 352146 (-0.01%); split: -0.06%, +0.05% COVs: 256946 -> 242972 (-5.44%) Full: 145737 -> 145738 (+0.00%) (ss): 224816 -> 222102 (-1.21%); split: -1.24%, +0.03% (sy): 109208 -> 109222 (+0.01%); split: -0.01%, +0.02% (ss)-stall: 842387 -> 831457 (-1.30%); split: -1.63%, +0.33% (sy)-stall: 3353188 -> 3337732 (-0.46%); split: -0.62%, +0.16% Preamble Instrs: 1403333 -> 1401362 (-0.14%) Cat0: 2219312 -> 2211530 (-0.35%); split: -0.65%, +0.30% Cat1: 690367 -> 677240 (-1.90%); split: -1.99%, +0.09% Cat2: 3279215 -> 3246293 (-1.00%) Cat7: 412865 -> 412866 (+0.00%) Signed-off-by: Job Noorman <jnoorman@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35858>
6 hoursir3/merge_regs: fix merge set alignment checkJob Noorman1-1/+1
b_offset should be checked against b's alignment, not a's. Signed-off-by: Job Noorman <jnoorman@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35858>
7 hoursmeson: drop vdrm from virgl and venusYiwei Zhang1-2/+0
Currently neither virgl nor venus uses vdrm. One big blocker is neither of them has adopted drm_syncobj yet. Fixes: 1a6fc7006af ("meson: split subdir for virtio/vdrm and virtio/vulkan") Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35933>
7 hourspanvk: Advertise VK_KHR_unified_image_layoutsLars-Ivar Hesselberg Simonsen3-2/+8
We're currently not using image layouts in PanVK so we can advertise this extension without additional changes. Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Reviewed-by: John Anthony <john.anthony@arm.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35911>
8 hourspanvk/ci: Run full g52-vk job pre-mergeValentine Burley1-11/+1
We have enough DUTs to increase the job parallelism to 8. At this level, the runtime reported by deqp-runner averages about 8:30, which is below the 10-minute target recommended by the docs. Signed-off-by: Valentine Burley <valentine.burley@collabora.com> Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35913>
10 hoursfreedreno/ci: Merge a750-piglit-cl and a750-glValentine Burley3-23/+13
The actual runtime of `a750-piglit-cl` was under 2 minutes. Signed-off-by: Valentine Burley <valentine.burley@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35906>
10 hoursfreedreno/ci: Increase the concurrency of a660-gl-clValentine Burley1-0/+1
The sm8350-hdk has 8 threads and 12 GB of RAM, which allows increasing `FDO_CI_CONCURRENT` to 9 to speed up the job. Signed-off-by: Valentine Burley <valentine.burley@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35906>
10 hoursfreedreno/ci: Increase parallelism of a660-gl-clValentine Burley1-10/+1
Following the previous commit, we have an additional `parallel:` slot available. Use it to run `a660-gl-cl` without a fraction, allowing us to remove the nightly `a660-gl-full` job. Signed-off-by: Valentine Burley <valentine.burley@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35906>
10 hoursfreedreno/ci: Merge a660-piglit-cl and a660-glValentine Burley3-18/+10
The actual runtime of `a660-piglit-cl` is under 2 minutes, so it can be merged into `a660-gl` to improve resource utilization by avoiding the launch of the additional job. Signed-off-by: Valentine Burley <valentine.burley@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35906>
10 hoursfreedreno/ci: Merge a618-piglit-cl into a618-piglitValentine Burley3-24/+13
The actual runtime of `a618-piglit-cl` was under 2 minutes, so it can be folded into the main `a618-piglit` job. To accommodate this, the "gpu" profile's fraction was fully moved to the deqp-runner suite without changing the overall test coverage: `fraction = 3` * `DEQP_FRACTION: 2` = 6 Also drop the redundant freedreno-a618-skips.txt skip while we're here, as that's automatically picked up via GPU_VERSION. Signed-off-by: Valentine Burley <valentine.burley@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35906>
13 hourszink: fix another case of blocking image op reordering with GENERAL layoutsMike Blumenkrantz1-2/+1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35896>
13 hourszink: more fixups for GENERAL image syncMike Blumenkrantz1-6/+7
these need to always use unordered access when set Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35896>
13 hourszink: use HIC image transitions to init swapchain imagesMike Blumenkrantz1-0/+4
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35896>
13 hourszink: make HIC image transitions publicMike Blumenkrantz2-5/+8
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35896>
17 hoursnak: Use a worklist approach for dataflowMel Henning1-21/+66
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35446>
17 hoursnak: Use the dataflow framework for NextUseLivenessMel Henning1-44/+39
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35446>
17 hoursnak: Factor dataflow logic out of SimpleLivenessMel Henning3-18/+169
Reviewed-by: Faith Ekstrand <faith.ekstrand@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35446>
20 hoursbin: explicitly use `python3` instead of `python`Maíra Canal1-5/+5
The `python` command's default behaviour can vary between OSes and even different versions of the same OS. On some systems, `python` might still point to Python 2 for backward compatibility, while on others, it might point to Python 3. As Mesa already requires "Python 3.6 or newer", use `python3` explicitly to ensure that the script is using a Python 3 interpreter. Moreover, this commit allows this script to run on macOS, as macOS doesn't have a `python` symlink or alias by default. Therefore, currently, when running this script in macOS, you get a "python: command not found" error. Signed-off-by: Maíra Canal <mcanal@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35918>
20 hoursnir/opt_algebraic: optimize 16bit vec2 comparison followed by b2i16 using ↵Georg Lehmann2-0/+31
usub_sat Helps vectorized emulated fp16 -> fp8 conversions No Foz-DB changes. Reviewed-by: Rhys Perry <pendingchaos02@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35876>
23 hoursanv: avoid leaking private binding for aliased wsi imageYiwei Zhang1-10/+16
Aliased wsi image has to share the same private binding with the original wsi image for memory consistency. If the private binding exists, it needs to be released before being overridden. Fixes: d85a9d658fa ("anv/image: Call into WSI to create swapchain images") Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35893>
23 hourszink: don't modify the u_foreach_bit64 bit inside the loop in loop_io_var_mask()Mike Blumenkrantz1-3/+4
this breaks the macro and causes infinite loops on patch locations in release builds cc: mesa-stable Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35922>
24 hourspanvk: Do not adjust job offset with base on CSFMary Guillemard1-6/+9
The JOB_OFFSET only actually affect the global id and not wg id. In NIR common, we assume that if base wg isn't supported, it means that global and wg id already contains it. To follow the convention around, we remove the offset to assume global id will need an offset added. Alone, this doesn't change functionality as we always lower away global id so far. Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com> Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35909>
24 hourspan/genxml: Fix wrong size for compute size workgroupMary Guillemard3-3/+3
Fix annoying warnings when decoding CSF. Signed-off-by: Mary Guillemard <mary.guillemard@collabora.com> Fixes: 486c3417691 ("panfrost: Add architecture description XML for v10") Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com> Reviewed-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35909>
24 hoursnir/lower_tex: optimize LOD bias lower for txlAlyssa Rosenzweig1-1/+5
make sure we can fold the f2f away. alternatively f2fmp would work here but details. elden ring: Totals from 137 (4.27% of 3206) affected shaders: Instrs: 485455 -> 484904 (-0.11%) CodeSize: 3218638 -> 3215338 (-0.10%) ALU: 308071 -> 307520 (-0.18%) FSCIB: 308071 -> 307520 (-0.18%) Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35909>
24 hoursnir/lower_system_values: optimize global IDAlyssa Rosenzweig1-2/+11
for drivers where we need to lower a base_workgroup_id but not global IDs. rather than lowering the whole global ID to stick the base workgroup ID in there, just add the workgroup offset to the final thread position. Elden ring fossils: Totals from 52 (1.62% of 3206) affected shaders: Instrs: 48355 -> 48233 (-0.25%); split: -0.31%, +0.06% CodeSize: 331912 -> 331148 (-0.23%); split: -0.28%, +0.05% ALU: 30853 -> 30674 (-0.58%); split: -0.70%, +0.12% FSCIB: 30853 -> 30674 (-0.58%); split: -0.70%, +0.12% IC: 9054 -> 8958 (-1.06%) GPRs: 4184 -> 4216 (+0.76%) Uniforms: 6703 -> 6677 (-0.39%); split: -1.61%, +1.22% Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Reviewed-by: Emma Anholt <emma@anholt.net> Reviewed-by: Mary Guillemard <mary.guillemard@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35909>
25 hoursst/pbo: use sized nir-types for download-pathErik Faye-Lund1-10/+7
The Midgard compiler only deals with sized NIR types for image loads and stores. Since we already have nir_get_nir_type_for_glsl_base_type() which can provide us with the corresponding sized type, let's just use that, and drop the extra table. This fixes the following piglits on Mali-T760: - spec/ext_texture_compression_s3tc/getteximage-targets 2d s3tc - spec/ext_texture_compression_s3tc/getteximage-targets cube s3tc Fixes: 9123ee0f185 ("st/mesa/pbo: Set src type on image_store") Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Rob Clark <robclark@freedesktop.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/35882>