Mesa 25.2.0 Release Notes / 2025-08-06 — The Mesa 3D Graphics Library latest documentation

# Mesa 25.2.0 Release Notes / 2025-08-06

Mesa 25.2.0 is a new development release. People who are concerned with stability and reliability should stick with a previous release or wait for Mesa 25.2.1.

Mesa 25.2.0 implements the OpenGL 4.6 API, but the version reported by glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. Some drivers don’t support all the features required in OpenGL 4.6. OpenGL 4.6 is only available if requested at context creation. Compatibility contexts may report a lower version depending on each driver.

Mesa 25.2.0 implements the Vulkan 1.4 API, but the version reported by the apiVersion property of the VkPhysicalDeviceProperties struct depends on the particular driver being used.

## SHA checksums

    SHA256: 7c726b21c074d14d31d253d638b741422f3c0a497ce7f1b4aaaa917d10bd8d4f  mesa-25.2.0.tar.xz
    SHA512: f36e4f9f619becfc89f9cf3704d21f5f1532f1e658808fd30c0edce8c28cd65dc6578a21333e896aa5eaccf09da99efd9127a8d3d46681e8360f618cf63bab94  mesa-25.2.0.tar.xz

## New features

- removed clover frontend

- VK_EXT_vertex_input_dynamic_state/vertexInputDynamicState on panvk

- pushDescriptor on panvk

- VK_EXT_vertex_input_dynamic_state on panvk

- VK_EXT_vertex_attribute_divisor on panvk

- supportsNonZeroFirstInstance on panvk

- GL_ARB_blend_func_extended on v3d

- dualSrcBlend on v3dv

- VK_KHR_maintenance4 on panvk/v10+

- VK_KHR_maintenance5 on panvk/v10+

- VK_EXT_direct_mode_display on panvk

- VK_EXT_extended_dynamic_state[2] on panvk

- Vulkan 1.2 on panvk/v10+

- VK_KHR_shader_quad_control on panvk/v10+

- multiDrawIndirect on panvk/v10+

- VK_KHR_draw_indirect_count on panvk/v10+

- VK_KHR_shader_integer_dot_product on panvk

- VK_KHR_shader_terminate_invocation on panvk

- VK_EXT_shader_demote_to_helper_invocation on panvk

- VK_EXT_shader_replicated_composites on panvk

- VK_EXT_depth_bias_control on panvk

- VK_KHR_shader_bfloat16 on anv/gfx125+ and radv/gfx12+

- VK_KHR_robustness2 on RADV

- VK_EXT_zero_initialize_device_memory on RADV and NVK

- VK_EXT_primitive_topology_list_restart on panvk

- VK_EXT_image_2d_view_of_3d on panvk

- VK_EXT_texel_buffer_alignment on panvk

- cl_khr_kernel_clock on freedreno, iris, llvmpipe, nvc0, panfrost, radeonsi and zink with llvm-19 or newer

- GL_KHR_texture_compression_astc_hdr on panfrost and asahi

- cl_ext_buffer_device_address on iris, llvmpipe, radeonsi and zink

- Completed OpenCL 2.0 coarse grain buffer SVM support for iris and radeonsi

- VK_EXT_shader_subgroup_ballot on panvk

- VK_EXT_shader_subgroup_vote on panvk

- Vulkan video support on GFX12 (RDNA4) for RADV

- VK_KHR_load_store_op_none on panvk

- VK_EXT_load_store_op_none on panvk

- VK_EXT_scalar_block_layout on radv/gfx6

- VK_EXT_inline_uniform_block on panvk

- cl_khr_fp16 on asahi, freedreno, llvmpipe, panfrost, radeonsi and zink

- GL_ARB_shader_clock on panfrost/v6+

- VK_EXT_texture_compression_astc_hdr on panvk

- MSAA with 8 and 16 sample counts on panfrost

- cl_khr_spirv_queries

- VK_EXT_depth_clamp_zero_one on panvk

- VK_KHR_depth_clamp_zero_one on panvk

- VK_EXT_depth_clip_control on panvk

- VK_KHR_maintenance9 on RADV

- VK_KHR_unified_image_layouts on RADV (RDNA3+), tu and panvk

- VK_KHR_vulkan_memory_model on panvk

- Vulkan 1.3 on panvk/v10+

- VK_KHR_present_wait2

- VK_EXT_descriptor_indexing on panvk/v10+

- cl_khr_priority_hints

- VK_KHR_maintenance6 on panvk/v10+

- CL_sRGBA and CL_sBGRA images

- cl_khr_extended_bit_ops

- VK_KHR_shader_clock on panvk

- GL_EXT_shader_realtime_clock on panfrost/v6+

- VK_KHR_shader_float8 on RADV (RDNA4+)

- GL_EXT_window_rectangles on r600

- GL_EXT_shader_image_load_store on r600/evergreen+

- GL_EXT_shader_clock on all drivers that support GL_ARB_shader_clock

- CL_UNORM_INT_101010_2 and cl_ext_image_unorm_int_2_101010

- timestamps on panvk/v10+

- VK_KHR_calibrated_timestamps on panvk/v10+

- VK_EXT_non_seamless_cube_map on panvk

- VK_ARM_shader_core_properties on panvk/v10+

- removed X11 DRI2 support

- removed EGL_MESA_drm_image

- removed pre-dmabuf wl_drm support

- deprecated EGL_WL_bind_wayland_display

- VK_KHR_shader_atomic_int64 on panvk/v10+

- VK_EXT_host_image_copy on RADV (RDNA1+)

- VK_KHR_cooperative_matrix on nvk/turing+

- VK_KHR_host_image_copy on panvk

- Vulkan 1.4 on panvk/v10+

## Bug fixes

- [RADV] Graphical glitches in Ghost of Tsushima on Polaris

- radv: RT regressions

- macOS: use of undeclared identifier ‘free_zombie_glx_drawable’

- macOS: Undefined symbols “_pipe_loader_drm_probe_fd”, referenced from: _dri_get_drm_device_info in libdri.a[7](dri_util.c.o)

- Segfault when activating DPMS on i915 hardware

- nvk Blackwell support

- radv: regression: commit a7291074c800 break lighting in Like a Dragon: Infinite Wealth

- [bisected regression] Latest mesa-git keeps /dev/dri/renderD129 always open with new applications even though they don’t use it at all

- High GPU usage when using Zink for eglgears_x11 (on X11)

- Segfault in X11 image acquire code with timeout=0

- Race condition with timeline semaphores

- Crash from iris_set_sampler_views in chromium/chrome with accelerated video decoding

- rusticl: aco: LLVM outperforms ACO in clpeak for `short` benchmarks on hawaii

- rusticl: aco: Performance regression in clpeak for char benchmarks on hawaii

- zink on tu assertion failing doing shader-db runs.

- nir_algebraic silently ignores operand conditions in some cases

- lavapipe: valgrind triggers errors with CTS unit tests when creating a vulkan device

- radv: gfx12 RGP captures don’t support instruction timings for graphics pipelines

- radv: more glcts fails KHR-GL46.shading_language_420pack.initializer_list_initializer*

- radv: regression in KHR-GL46.gpu_shader5_gl.float_encoding

- !36097 breaks Xwayland (& others)

- radeonsi: Broken VAAPI video color conversion

- Gallium HUD broken since !34054

- RADV indirect buffer size limitation

- v3dv: regression in vkAllocateMemory importing gbm bo

- etnaviv: instruction count regression due to 2193ae0253e5 (etnaviv: compiler: Call nir_lower_alu_width(..))

- etnaviv: instruction count regression due to 2193ae0253e5 (etnaviv: compiler: Call nir_lower_alu_width(..))

- Vulkan WSI (and zink) use threads on X11 even when the X connection isn’t thread-safe

- agx: Crashes in BO management in CEF/Chromium when resizing browser surface

- RADV/NAVI31: spec@glsl-1.50@gs-max-output,Crash - Assertion `max_esverts >= max_verts_per_prim && max_gsprims >= 1’

- mediafoundation: DX12 encoder fails at D3D12 OpenSharedHandle with E_INVALIDARG

- [regression][bisected] [FirePro W4100]: crashing/rebooting

- zink: regression with spec@arb_indirect_parameters@conditional-render and RADV

- Descriptor set layout with binding flags fails due to indices not matching bindings

- piglit bindless texture tests crash

- ir3,turnip: Think about better heuristics of THREAD64 vs THREAD128 for fragment shader

- regression - e0cdf4df causes much lower pp512 on llama.cpp

- [radeonsi] Artifacts in Team Fortress 2 (bisected)

- eglgears_wayland segfault on zink+nvk with PRIME

- vn_renderer_virtgpu.c:13:10: fatal error: ‘xf86drm.h’ file not found

- error[E0425]: cannot find value `MAP_DROPPABLE` in module `linux_raw_sys::general`

- brw: mad instruction printing broken on Gfx11

- Add something simiar to draw_bkp for compute dispatch

- Add something simiar to draw_bkp for compute dispatch

- broadcom: use VARYING_BIT_* macros more

- radv: RGB9E5 rendering does not ignore alpha write mask

- Confidential issue #13431

- Confidential issue #13432

- dzn: dzn_meta_init may return VK_SUCCESS when failing, leading to application crashes

- ci: artifacts have weird filenames

- anv: Add support for Float16 as cooperative matrix destination

- brw_nir_lower_cmat produces invalid NIR for OpVariable initializers

- src/asahi/lib/meson.build:65:52: ERROR: Unknown variable “inc_virtio_vdrm”.

- turnip: loadOp must be deferred

- hasvk_tests: ../src/vulkan/runtime/vk_log.c:40: vk_object_to_device: Assertion `obj->device’ failed.

- radv: android: Why `VkNativeBufferANDROID::handle::numFds` must be 1 in function `radv_image_from_gralloc`

- Single-slice fallback in st_CompressedTexSubImage doesn’t work

- Regression: Mesa 25.1.1 causes ground texture flickering in DOTA 2

- GPU process crash via WebGPU shader - wild-deref in Mesa try_opt_exclusive_scan_to_inclusive

- rusticl: Meson: `rust.bindgen()` does not pass edition before 1.7.0 resulting in build failures on some configurations.

- vkGetPhysicalDeviceImageFormatProperties2 not correctly implemented for VK_FORMAT_G8_B8R8_2PLANE_420_UNORM + VK_IMAGE_CREATE_EXTENDED_USAGE_BIT

- ci_run_n_monitor broken

- RADV regression: make a parameter to specify preferred memory heap

- anv, bmg: Striped pattern on ground in Heroes of Valor

- New Mesa drivers failing to launch some flatpak apps

- PanVK: Vkmark - CS_FAULT.EXCEPTIONS when running specifically vkmark -b clear

- [ANV][LNL/BMG] - The Last of Us™ Part II Remastered (2531310) - Multicolored dots present on some objects

- Oddworld: Strangers Wrath bad shading on NPC chickens

- RADV: Unimplemented instrinsic instr when creating a pipeline with a task shader

- FTBFS LLVM21 CLC error: no matching function for call to ‘clang::TextDiagnosticPrinter

- ci: update GL CTS

- mesa:freedreno / cffdump-shadow failure

- [anv] [feature request] support for emulated shaderStorageImageReadWithoutFormat

- v3d crashes on Raspberry Pi 5 if no monitor connected

- aco/gfx12: don’t insert waitcnts between d16 loads that write to separate register halves

- [mediafoundation] [rfc] Ideas for single pass build compatibility

- anv: Support fast clears in anv_CmdClearDepthStencilImage

- 25.1.2 - instant crash on upgrade, very first attempt at a new surface

- [ANV][LNL] - Sid Meier’s Civilization VII (1295660) - Linux version hangs when starting the “Graphics Benchmark”.

- Steam game recording on Intel ANV resulting in green corrupted image due to bug with VK_FORMAT_G8_B8R8_2PLANE_420_UNORM rendering

- Confidential issue #13281

- anv, regression: Missing terrain in It Takes Two on BMG

- “breaking-limit” benchmark will Freeze before starting.

- rusticl: fails to build on non-Linux

- rusticl: Assertion failed for ACO and stuck for LLVM (radeonsi)

- rusticl: CL_MEM_HOST_READ_ONLY cl_image2d reads zeroes from host on AMD Vega8

- 9070 XT: Missing VK_KHR_video_decode_queue

- Bug (bad code optimization?) in the GLSL (compute) shader compiler

- nvk: Broken lighting in Trine 5

- RX9070 hard crash with Mafia Definitive Edition

- [RADV] mesa-git: GPU hangs in Oblivion Remaster

- [Intel Arc a770] Sky: Children of the Light, meshes are visible around text and spirits

- RADV: Potential bug with vulkan fragment shader interpolation (on outputs from mesh shaders?)

- In the game “Foundation” a buildings areas of effect is missing

- ANV: Dota 2 May 22 2025 update crashing in vkCmdBindDescriptorSets with no validation error

- RustiCL / fdo: infinite loop in compiler on astype OpenCL test

- Vulkan Video engages during playback of format which is not supported by my Fiji GPU

- radv/video: naluSliceSegmentEntryCount is ignored

- Weston hangs on virtio (non-accelerated version) on QEMU with Mesa main

- KVM/qemu: GDM fails to start / gnome-shell crashes after update to mesa-dri-drivers-25.0.3

- radv: Copying from non-resident sparse buffer hangs on GFX9

- Follow-up from “ci: Use test-* containers as the base for rootfs on LAVA & baremetal”

- DRI_PRIME env var on EGL Surfaceless platform is ineffective

- radv: VK_EXT_primitive_topology_list_restart bug

- [RADV][GFX9] Recent Mesa-git broken on AMD Vega 64 with ring sdma0 timeouts when launching DXVK games

- ACO: IR Validation error “SDWA operand selection size” triggered by compute shader on VEGA20

- RADV: Gibberish output with llama.cpp (Vulkan compute) on Radeon VII (Vega20) with Mesa 25.1.0, works on 25.0.5

- main fails to build with missing defines in d3d12 video code

- Flickering in Control after mesa-git-25.2.0_devel.205323.7c4f501e99d.d41d8cd

- regression with mr 34601 on the witcher 3

- Blending broken in game SkinDeep

- Radeon R5 (Mullins) H264 VA-API encoding acceleration doesn’t work

- ci/debian: arm64 does not respect `DEBIAN_BUILD_TAG`

- nvk: lib_rs_gen.py requires `rustfmt`

- radv: vkd3d-proton test failure with predication + EXT_dgc

- nvk: Implement VK_EXT_zero_initialize_device_memory

- mesa-25.0.4 aborts Xserver due to ACO “Unsupported opcode” v_lshlrev_b16

- In SkinDeep, GL_LINES causes GL_INVALID_OPERATION with radeonsi and llvmpipe

- radv: UB and artifacts when copying a `COMBINED_IMAGE_SAMPLER` with an immutable sampler

- RADV: Dynamic state multiple viewport corruption

- intel: Improve color fast-clear handling

- Follow-up from “intel/isl: Add and use a multi-engine surf usage bit”

- [drm:amdgpu_uvd_cs_pass2 [amdgpu]] *ERROR* )Handle 0x48780001 already in use!

- glGetInternalformativ returns incorrect information for GL_STENCIL_INDEX8

- RadeonSI: Psychonauts rendering regression since !29895

- [r600g] Rejected CS when using dolphin’s GPU texture decoder

- radeonsi: Assertion `src_bit_size == bit_size’ failed. when running without MESA_GLSL_DISABLE_IO_OPT=1

- radeonsi vdpau + Packed YUY2 = assert

- Indiana Jones and The Great Circle, Graphical corruption on 9070 XT.

- glPushAttrib/glPopAttrib broken with glColorMaterial and ligthing

- FTBFS (LLVM 21): ../src/compiler/clc/clc_helpers.cpp:867:60: error: ‘std::shared_ptr<clang::TargetOptions> clang::CompilerInvocationBase::TargetOpts’ is protected within this context

- RADV:RX 9070:Mesa-25.0.5 GTA 5 Enhanced GPU HANG

- [Feature request] Add support for VK_EXT_map_memory_placed vulkan extension on hk

- [ANV/DG2] nvpro-samples/vk_raytracing_tutorial_KHR/ray_tracing_reflections renders not all reflections

- venus: Missing VK_KHR_swapchain

- radv: Flickering in Kingdom Come: Deliverance II

- RADV regression causes severe glitches in Hunt Showdown 1896 on Polaris

- Z-Fighting in Tomb Raider IV - VI Remastered Linux

- [anv] VK_ERROR_DEVICE_LOST on Linux 6.13.8 while playing Dota 2 on Intel Graphics

- Request for coop_matrix and bfloat16 (ML/AI related) VK exts and VK_KHR_shader_clock for Asahi HoneyKrisp driver (if/when possible/supported in HW)

- Variable Rate Shading (VRS) produces very aliased results on RADV with an AMD gpu

- WWE 2k23 small “artifacts”

- RadeonSI - ACO does not spill enough SGPRs despite low VGPR pressure in some scenarios

- [ANV][LNL] - Jusant (1977170) - Game crashes with an Unreal Engine error at launch

- RADV: Performance Regression (~18%) on Vega 64 (GFX9) in Cyberpunk 2077 caused by commit 08918f08805f (MR 34361)

- [macOS] glapi_gentable.c:46:10: fatal error: ‘glapitable.h’ file not found

- radeonsi: CL conformance test `vector_swizzle` fails since 177427877bb50ad7ba24abfa13e55a2684d804df

- commit 90faadae regression - Warhammer 40,000: Space Marine 2 crashing

- RADV: GPU hangs always at certain places in the game “Sniper Elite: Resistance”

- Random mesa crashes in kwin_wayland on a 6600XT

- Patch to fix clinfo on rusticl

- radv/aco: Ghost of Tsushima hangs and causes gpu resets on RDNA 3 GPU

- mesa-vulkan-driver-git.x86_64 causes strange colored rectangle artifacts in Final Fantasy XIV

- NVK - Out of video memory error when starting Marvel Rivals

- NVK - Out of video memory error when starting Marvel Rivals

- radv/rt ray tracing performance regression in control found in mesa git

- NAK: copy-prop is failing to fold fabs into fadd

## Changes

Aaron Ruby (1):

- gfxstream: Prune the wait/signal semaphore lists on queue submissions

Adam Jackson (12):

- loader: Use RTLD_LOCAL not RTLD_GLOBAL

- glx: Don’t try to dlopen ourselves

- util: Remove unused USED macro

- util/cpu: Remove util_cpu_caps_t::family

- util/cpu: Teach the Linux code about getauxval()

- rusticl: Add RUSTICL_FEATURES=intel

- rusticl: Enable cl_intel_subgroups if you ask nicely

- vtn: Handle SPV_KHR_uniform_group_instructions

- vtn: (Silently) handle FunctionParameterAttributeNo{Capture,Write}

- vtn/opencl: Handle OpenCLstd_F{Min,Max}_common

- rusticl: Implement cl_intel_required_subgroup_size

- meson: Require LLVM 8 or newer

Aditya Swarup (2):

- anv: Disable fast clear when surface width is 16k

- iris: Disable fast clear when surface width is 16k

Adrián Larumbe (12):

- pan/kmod: Add BO-labeling kernel module operation

- drm-uapi: Sync panthor_drm.h

- drm-uapi: Sync panfrost_drm.h

- pan/kmod: Add Panthor BO Labeling IOCTL support

- pan/kmod: Add Panfrost BO Labeling IOCTL support

- panfrost: Fix Panfrost BO leak in error handling path

- panfrost: Label kernel BO’s for newly created objects

- panfrost: Flag resources with imported BOs

- panfrost: Expand BO label for panfrost resources

- mesa: Implement label sharing from GL objects with UM drivers

- panfrost: Implement pipe screen’s resource_label interface

- panfrost: Add missing util_range_init()

Agate, Jesse (1):

- amd/vpelib: Add macro to perform ceil division

Albert Liu (1):

- gfxstream: Add `VK_EXT_memory_budget` to allowlists. (mesa3d side)

Alejandro Piñeiro (2):

- v3d/compiler: properly handle the RA debug option

- nir/lower_clip: update comment

Aleksi Sapon (3):

- lp: fix gnu-empty-initializer warning

- draw: fix prim_info.start for linear_run_elts

- draw: remove unused prim_flags from run_linear_elts

Alessandro Astone (3):

- android: Link with libc++fs up to SDK 35

- asahi: Do not require fopencookie on Android

- asahi: Avoid AND-ing with string literal in static_assert

Alyssa Rosenzweig (176):

- hk: fix underbinding scratch

- hk: fix tessellation + clipper queries

- hk: fix null FS corner cases

- hk: drop FS null checks

- hk: reindent/unscope

- hk: fill sparse.write with nonzero values

- ail: generalize ail_space_bits

- ail: support twiddled

- asahi: pack sample count in s/w texture descriptor

- asahi: extend tile width/height in texture desc

- asahi: generalize tiling checks

- asahi: generalize compression check

- asahi: identify ZLS tiling bits

- asahi: plumb ZLS tiling bits

- hk: plumb ZLS tiling

- asahi: identify ZLS compress load/store bits

- asahi,hk: factor out zls_control pack helper

- asahi: let booleans be your guide

- hk: handle HIC with twiddled

- agx: model sources as late-kill in demand calcs

- agx: late-kill sources

- agx: early-kill sources only if it won’t shuffle

- agx: remove silly cls argument

- hk: fix patch count = 0 handling

- agx: delete more inots

- asahi: fix possible null deref

- nir: factor out nir_verts_in_output_prim helper

- agx: add agx_is_shader_empty helper

- hk: optimize out empty dispatches

- asahi: optimize out empty dispatches

- libagx: factor out _libagx_end_primitive

- agx/nir_lower_gs: optimize static topologies

- agx/nir_lower_gs: clean comment

- hk: bump wg sizes for geometry shader

- asahi,hk: use indirect-local dispatches for GS

- agx/nir_lower_gs: clean up state/info duplication

- agx/nir_lower_gs: remove silly comment

- agx/nir_lower_gs: clean up more state->info

- agx/nir_lower_gs: privatize lower_output_to_var_state

- agx/nir_lower_gs: drop silly fwd decl

- agx/nir_lower_gs: use common nir_verts_in_output_prim

- agx/nir_lower_tess: drop pointless helpers

- agx/nir_lower_tess: drop dead todo

- libagx: use #pragma once in geometry.h

- libagx: drop libagx_popcount

- libagx: drop libagx_sub_sat

- util: optimize bitcount on OpenCL

- asahi: clang-format

- agx: use abi.h defines

- agx: plumb vertex_id_zero_base

- agx/nir_lower_gs: fix type confusion

- agx/nir_lower_gs: avoid redundant sr read’s

- agx/nir_lower_gs: don’t use nir_def_rewrite_uses

- agx/nir_lower_gs: rework gs rast shape handling

- agx/nir_lower_gs: compact static topologies

- agx/nir_lower_gs: bound static topologies

- libagx: do not include heap in geometry params

- libagx: rename agx_geometry_state to agx_heap

- libagx: use common heap alloc for tessellator

- asahi: do not use “Null” layout

- hk: advertise VK_KHR_shader_quad_control

- nir: add nir_lower_default_point_size pass

- agx/nir_lower_gs: use nir_lower_default_point_size

- agx/nir_lower_tess: use nir_lower_default_point_size

- hk: use nir_lower_default_point_size

- vtn: remove spurious texel buffer warning

- nir/lower_printf: fix vectors with nir_printf_fmt

- vtn: ignore SpvDecorationFPFastMathMode

- meson: make ffs available in OpenCL code

- docs/features: add honeykrisp

- vulkan: pass enabled features to drivers

- hk: make hk_lower_nir static

- hk: gate min LOD emulation on the feature

- asahi: clang-format

- hk: gate custom border colour emulation on feature

- asahi: advertise ASTC HDR formats

- nir: generalize bitfield_reverse bit size

- nir/lower_alu: compact bitcount lowering

- nir/lower_int64: add bitfield_reverse lowering

- asahi: drop dead surface stuff

- asahi: clang-format

- agx: fix sample_mask packing overflow

- agx: add XML description of the AGX2 ISA

- agx: add instruction encoding cases

- agx: add XML-based disassembler

- agx: drop encoding masks

- hk: clean out unused driconf

- asahi: fix shader-db with fbfetch

- hk: enable ETC, ASTC

- hk: enable another format

- hk: clarify A8_UNORM issue

- hk: fix texture state count

- nir/opt_preamble: hoist reorderable SSBO loads on AGX

- nir/opt_sink: sink agx backfacing

- nir: model dynamic uniform layout on hk

- agx: add headers for uniform abi

- asahi: clean up fs prolog pass

- asahi: use #defines for prologs/epilogs

- asahi: use #defines for uniforms

- hk: use #defines for uniforms

- hk: don’t advertise b4g4r4a4 format

- hk: make image heap / root uniform dynamic

- hk: stop reserving pile of uniform regs for literally no reason

- hk: stop uploading blend constants

- hk: don’t give DXVK fake min/max

- hk: make border colour lint quieter

- hk: disable custom border for proton

- hk: optimize !largePoints

- hk: drop psiz writes with !largePoints

- asahi,hk: fix ts allocation for more shader types

- ail: generalize solid mode values

- ail,asahi,hk: distinguish logical vs allocation compression

- libagx: add agx_2d grid helper

- libagx: export coordinate twiddle routine

- libagx: add fast-clear kernels

- hk: implement vkCmdClear*Image with fast-clears

- hk: use fast-clears for empty render passes

- hk: merge adjacent CDM control streams

- nir/lower_blend: fix snorm factor clamping

- hk: enable snorm rendering

- nir: plumb load_global_bounded

- hk: optimize load_global_bounded

- hk: sink SSBO loads

- nir,hk: sink lowered UBOs

- hk: use new path for !soft fault UBO

- nir/search_helpers: add has_multiple_uses helper

- agx: optimize sign fix ups

- agx: defer nir_opt_idiv_const

- hk,asahi: move scratch BO to common

- asahi: use zero/scratch page for null textures

- hk: eliminate null_sink

- asahi,hk,libagx: drop null checks

- libagx: optimize xfb offset pointers

- agx/nir_lower_gs: rework XFB prim calculation

- agx/nir_lower_gs: CLify more XFB code

- agx/nir_lower_gs: remove random idiv const call

- libagx: port pre-GS to CL

- hk: fix gs static topology + indirect draw

- nir/opt_algebraic: add trichotomy identity

- nir: add intrinsics for geometry shader lowering

- nir: add rasterization_stream sysval

- libagx: add agx_vdm_barrier

- asahi: clang-format

- asahi: flush around XFB

- asahi,hk: significantly rework GS

- hk: advertise more GS features

- hk: optimize point size writes with GS/TS

- nir/lower_gs_intrinsics: drop stuff added for AGX

- nir: rename AGX geom/tess intrinsics

- treewide: use nir_break_if

- treewide: use nir_break_if with named if

- nir/lower_system_values: optimize global ID

- nir/lower_tex: optimize LOD bias lower for txl

- treewide: use VARYING_BIT_*

- nir: fuse ffma even with float controls

- nir/opt_algebraic: optimize signed pow in Control

- nir/lower_alu: optimize min/max signed zeros

- agx: lower alu after scalarizing

- nir/opt_preamble: add “register class” concept

- nir/rewrite_image_intrinsic: handle explicit coord

- nir/rewrite_image_intrinsic: handle non-derefs

- nir: fix AGX intrinsic flag

- agx: add stats for preamble inst

- nir,agx: switch to bindless_image_agx intrinsic

- agx: handle image_sparse_load

- agx: model scoreboard slot for state stores

- agx: plumb texture state store instruction

- agx: add bindless texture promotion support

- asahi/clc: promote bindless textures

- hk: promote bindless textures

- asahi: use nir_rewrite_image_intrinsic

- agx: fix incorrect 16-bit promotions with comparisons

- asahi: fix disasm of large shaders

- nir/lower_tex: revert “optimize LOD bias lower for txl”

- agx: make sure denorm flushing really happens

- asahi: enable virtgpu support

Antonino Maniscalco (2):

- zink: wait for sparse queue to go idle

- freedreno/decode: expose lookback as a cli option

Antonio Ospite (29):

- meson: bump default value of platform-sdk-version to Android 14

- ci/android: only use custom kernel for venus GPU_MODEs

- ci/deqp: force overwriting exiting files when compressing with zstd

- ci/android: specify EXCLUDE_FILTERS after INCLUDE_FILTERS when launching Android CTS

- ci/android: strip tailing spaces in Android CTS expectation files

- ci/android: show how to add more Android CTS test cases

- ci/android: fix printing the original GLES and Vulkan versions

- ci/android: get only the first device from eglinfo and vulkaninfo

- ci/android: show also the device name when printing GLES and VK info

- ci/android: silence mesa error about `//.cache`

- ci: set up XDG_RUNTIME_DIR to be under /tmp which is tmpfs

- ci/android: skip org.skia.skqp.SkQPRunner#UnitTest_BulkTextureRectTest

- ci/android: skip org.skia.skqp.SkQPRunner#UnitTest_SurfaceResolveTest

- ci/android: configure both hard limits and soft limits

- ci/android: use newer cuttlefish images

- ci/android: use `curl -O` to avoid having to specify the same filename again

- ci/android: test that all available modules ran in android-cts-runner.sh

- ci/android: get aapt from the build-tools from Google instead of Debian

- ci/android: trust system GLES if ANGLE_TAG is not specified

- ci/android: support issuing custom commands before running Android CTS

- ci/android: download mesa artifacts in a more robust way

- ci/android: download S3_ANDROID_ARTIFACT_NAME in cuttlefish-runner.sh

- ci: fix using _section_switch and _uncollapsed_section_switch

- ci/android: allow unbound ARTIFACTS_BASE_URL in android-cts-runner.sh

- ci/android: have a cleaner structure for results from Android CTS

- ci/android: update comment about ANDROID_CTS_MODULES

- build: stop calling unreachable() without arguments

- util: avoid calling UNREACHABLE(str) macro without arguments

- libcl: avoid calling UNREACHABLE(str) macro without arguments

Arunpravin Paneer Selvam (1):

- amdgpu: Add queue id support to the user queue wait IOCTL

Asahi Lina (4):

- asahi: Add refcnt assert to agx_bo_unreference()

- asahi: Add BO handles to resource debug

- asahi: Mark KMS exported resource BOs as shared

- asahi: Ensure shared BOs have a prime_fd

Ashley Smith (10):

- panvk: Add support for VK_KHR_multiview on v7

- panvk: Expose support for multiview on v7

- mesa: Add support for GL_EXT_shader_realtime_clock

- panfrost: Fix shader_clock support for v6+

- panvk: enable VK_KHR_shader_clock

- panfrost: Enable GL_EXT_shader_realtime_clock on panfrost v6+

- mesa: Add support for GL_EXT_shader_clock

- bi/va: Add instructions required for KHR_shader_atomic_int64

- pan/va: Add support for 64-bit atomic operations

- panvk: Enable VK_KHR_shader_atomic_int64 on Valhall

Autumn Ashton (2):

- tu: Implement VK_KHR_unified_image_layouts

- radv: Fix handling of NULL pColorAttachmentLocations in vkCmdSetRenderingAttachmentLocations

Bas Nieuwenhuizen (4):

- radv: Add support for not having gfx queues.

- radv: Don’t init gfx preamble without gfx support.

- radv: Add CDNA register settings.

- radv: Use packed invocation ids for newer CDNA.

Bo Hu (8):

- gfxstream: update sudbdecode snapshot code

- gfxstream:: update code gen for vkResetCommandPool

- gfxstream: [vulkan snapshot]: update codegen for vkCmdBindPipeline

- gfxstream: [vulkan snapshot]: update to support vkCmdCopyBuffer

- gfxstream: [vulkan snapshot]: update codegen to handle failed api calls

- gfxstream: [vulkan snapshot]: update codegen for vkUpdateDescriptorSetWithTemplateSized

- gfxstream: update codegen for vkQueueFlushCommandsGOOGLE

- gfxstream: [vulkan snapshot]: update codegen for vkCmdCopyImageToBuffer

Boris Brezillon (95):

- panvk: Advertise support for VK_EXT_vertex_input_dynamic_state

- panvk: Set .pushDescriptor=true

- panvk/csf: Pass less arguments to emit_vs_attrib()

- panvk/csf: Fix instance attribute offseting

- panvk: Advertise support for VK_EXT_vertex_attribute_divisor

- panvk: Set supportsNonZeroFirstInstance=true

- panvk: Advertise support for VK_KHR_maintenance4

- panvk: Implement CmdBindIndexBuffer2()

- panvk: Pass a const image to is_disjoint()

- panvk: Don’t pass a dev to panvk_image_init()

- panvk: Call vk_image_finish() in GetDeviceImageMemoryRequirements()

- panvk: Implement GetImageSubresourceLayout2 and GetDeviceImageSubresourceLayoutKHR()

- pan/format: Disable image storage on A8_UNORM

- panvk: Advertise support for VK_KHR_maintenance5

- panvk: Implement CmdBindVertexBuffers2()

- panvk: Advertise support for VK_EXT_extended_dynamic_state[2]

- panvk: Advertise support for VK_KHR_shader_terminate_invocation

- pan/bi: Fix and improve the !abs && !coarse case in bi_emit_derivative()

- pan/bi: Lower is_helper_invocation

- pan/{bi,va}: Lower terminate to demote

- panvk: Advertise VK_EXT_shader_demote_to_helper_invocation support

- pan/format: Make pan_format::bind a 5-bit field

- pan: Drop the format argument passed to drm_is_mtk_tiled()

- pan/format: Change the way we expose supported modifiers

- pan: Rename/move panfrost_format_supports_mtk_tiled()

- pan: Consolidate AFBC helpers in a single source file

- pan: Consolidate AFRC helpers in a single source file

- pan/layout: Refactor WSI explicit image layout support

- pan: Draw a clear line between image layout, image and texture helpers

- pan: Use a consistent pan_ prefix across src/panfrost/*

- pan: Add a pan_image_mip_level_size() helper and use it for 3D attribute initialization

- pan/image: Get rid of pan_image_mem::offset

- pan/layout: Split pan_image_layout

- pan/texture: s/pan_texture_emit/pan_sampled_texture_emit/

- pan/texture: Don’t mix image and buffer views

- pan/format: Draw a clear line between native and emulated modifiers

- pan/afbc: Add helpers to query AFBC header alignment requirements

- pan/afrc: Fix pan_format_supports_afrc()

- pan/afrc: Let’s not pretend we support AFRC(YUV)

- pan/afrc: Reject AFRC(compressed)

- pan/layout: Drop the AFBC(compressed) tests in AFBCFormatInvariant

- pan/layout: Check the wsi_layout consistency in wsi_row_pitch_to_row_stride()

- pan/layout: Don’t align WSI import offset

- pan/layout: Add an option to enforce WSI row pitch at layout init time

- pan/layout: Don’t base the WSI row_pitch calculation on the image width

- util/format: Add missing entries for {R8_B8G8,G8_B8R8}_422_UNORM

- pan/layout: Test WSI import behavior on all supported format/mods

- panfrost: Add a debug flag to enforce WSI row pitch at import time

- util/format: Handle emulated YUV formats in util_format_get_plane_{height,width}()

- pan/image: Teach pan_image/layout about planar images

- panfrost: Draw a clear line between AFBC and MTK_TILED conversion shaders

- panfrost: Make the MTK detiling more robust

- pan/image: Start checking image view consistency

- pan/format: Add an entry for BGR8 to the blendable table

- panvk: Make panvk_device.{c,h} panvk_queue agnostic

- pan/genxml: Make sure we catch overflows on 32-bit integer fields

- panfrost: Make sure we don’t use AFBC on resources that are too big

- panfrost: Let ::can_create_resource() report when the layout init failed

- panvk: Make sure we don’t use AFBC on images that are too big

- panvk: Lower maxImageDimension{2D,3D,Cube} to match the HW caps

- panvk: Check the return of pan_image_layout_init()

- pan/layout: Fix size_B calculation for AFBC(3D)

- pan/layout: Fix get_plane_blocksize()

- pan/layout: Relax alignment constraints on pre-v7 for imports of linear/u-tiled

- pan/layout: Use uint64_t types for offsets and sizes

- pan/layout: Drop pan_image_slice_layout::afbc::{stride_sb,nr_sblocks}

- pan/genxml: Reconcile AFBC RT properties naming on v5+

- pan/afbc: Fix header alignment requirement on Midgard

- pan/afxc: s/pan_format_supports_afxc/pan_afxc_supports_format/

- pan/genxml: Introduce per-type plane descriptors

- pan/texture: Split the texture payload emission logic per modifier

- pan/genxml: Get rid of the Plane descriptor

- pan/desc: Split the attachment descriptor emission per modifier

- pan/image: Get rid of pan_iview_get_surface()

- pan/layout: Get rid of pan_image_surface_{offset,stride}()

- pan/afbc: Add the pan_afbc_{super,render}block_size_el() helpers

- pan/format: De-duplicate get_plane_blocksize()

- pan/layout: Split the logic per modifier

- pan/layout: Get rid of pan_image_[render]block_size_el()

- pan/layout: Document the strict property

- pan/layout: Fix WSI.Import test

- pan/layout: Don’t mix AFBC and non-AFBC properties

- panfrost: Allow AFBC(3D) on Valhall

- pan: Add the concept of modifier handler

- pan: Make it so all pan_image_xxx helpers get passed an image

- pan/layout: Interleave header/body in AFBC(3D)

- pan/genxml: Fix the texture dimension field on v9+

- pan/genxml: Add missing upper-32 bits of the buffer size on v12+

- pan/genxml: Rework the RT/ZS emission logic

- pan/layout: Allow bigger size/surface stride on v12+

- panvk: Bump the max image size on v11+

- panfrost: Force strict import rules for AFBC(YUV)

- panvk: Make imports strict at all times except for AFBC(RGB)

- pan/kmod: Explicitly set the user MMIO offset when the KMD supports it

- pan/kmod: Expose the raw GPU ID through pan_kmod_dev_props

Boyuan Zhang (10):

- pipe: add boolean for CENC standard

- radeonsi: add header file for cenc parameters

- radeonsi/vcn: add subsample for cenc

- radeonsi/vcn: add drm key for cenc

- radeonsi/vcn: add drm keyblob for cenc

- frontends/va: enable cenc for protected playback

- pipe: add gaps_in_frame for h264

- frontends/va: get gaps_in_frame for h264 dec

- radeon/vcn: add gaps_in_frame flag to h264 sps

- ci/fluster: remove 3 pass cases resulted by gaps_in_frame

Brian Paul (14):

- svga: handle null target pointers in svga_set_stream_output_targets()

- svga: increase SVGA_MAX_FRAMEBUFFER_DEFAULT_SAMPLES to 16

- svga: 80-column wrapping and misc code cleanups

- svga: handle NULL surface in svga_surface_needs_propagation()

- svga: remove unneeded assignments in svga_set_framebuffer_state()

- gallium/util: minor clean-ups in u_framebuffer.c

- svga: whitespace clean-ups in svga_screen_cache.h

- svga: asst. clean-ups in svga_surface.c

- svga: rework framebuffer state

- svga: stop using pipe_context::create_surface()

- svga: assorted code clean-ups

- svga: assorted code clean-ups in svga drm code

- gallivm: always use mkdir() instead of std::filesytem::create_directory()

- util: add/use new os_mkdir() function

Caio Oliveira (36):

- spirv, radv, intel: Add NIR intrinsic for cmat conversion

- spirv, nir: Delay calculation of shared_size when using explicit layout

- spirv, nir: Allow non-Aliased workgroup memory blocks

- hk: Don’t expect garbage on shared_size

- intel/executor: Reorganize -h and –help

- intel/executor: Fix bfloat example for converting F to packed BF

- util: Add functions to convert float to/from bfloat16

- nir: Add opcodes for BFloat16

- brw, nir: Use glsl_base_type instead of nir_alu_type for @dpas_intel

- brw: Implement support for BFloat16 ALU opcodes

- brw: Consider bfloat16 in copy propagation

- brw: Consider bfloat16 in lower regioning pass

- brw: Consider bfloat16 in lower simd width pass

- brw/cmat: Store more information about cmat slices

- brw/cmat: Extract emit_packed_alu1() function

- brw/cmat: Support different src/dst packing factors in emit_packed_alu1

- brw/cmat: Implement conversion from/to BFloat16

- spirv: Move Convert opcodes handling to its own function

- spirv: Refactor to use glsl_type to pick ALU ops

- spirv: Add bfloat16 support to SpecConstantOp

- spirv: Implement Conversions to/from bfloat16

- spirv: Use bfdot for SpvOpDot with BFloat16

- intel: Add support for BFloat16 as cooperative matrix source

- intel: Don’t require dpas_intel src2 to match destination

- brw/disasm: Don’t print src1 information for SEND gather

- brw: Fix MAD instruction usage in spilling logic

- intel/executor: update SFID names in macros to match recent changes

- intel/executor: allow single line comments in macro lines

- brw: Use the right width in brw_nir_apply_key for BS shaders

- brw: Don’t use simd_select for BS shaders

- spirv: Add more restrictions around Blocks

- iris: Refactor BRW_KEY_INIT to get an iris_prog_base_key

- intel: Add INTEL_DEBUG=no-vrt

- brw: Add scoreboard test for edge case involving baked dependency

- brw: Fix comparison with unordered_mode when making baked dependency

- brw: Remove extra iteration on instructions from brw_opt_address_reg_load

Calder Young (11):

- iris: Fix accidental writes to global dirty bit instead of local

- iris: set dependency between SF_CL and CC states

- intel_aux_map: Avoid creating new table pages when removing

- anv: Support render to aspect other than IMAGE_ASPECT_COLOR_BIT

- anv: Support multi-planar formats in anv_formats_are_compatible

- anv: Fix typo when checking format’s extended usage flag

- iris: Fix issue with conditional dispatching

- intel/genxml: Update AVP instructions for Gfx125 and Xe2

- anv: Add support for AV1 video decoding on Gfx125 and Xe2

- anv: Fix tiling for H.265 and VP9 video surfaces on GFX 12.5+

- isl: Set tiling requirements for video surfaces

Caleb Callaway (9):

- driconf: Jusant needs force_vk_vendor=-1 on Intel devices

- intel/perf: intel_monitor documentation tweak

- intel/debug: shader dump filter

- intel/compiler: fix SHA generation for shader replace

- anv: ANV_DEBUG_WAIT_FOR_ATTACH

- docs: Add CPU frequency governor perf tip

- anv: Increase max VBs to 33 on Gen11+

- iris: re-emit push constants at compute batch start

- iris: ISP invalidate at end of compute batches

Caterina Shablia (5):

- panvk: ensure we don’t go over the hardware FAU limit

- panvk: bump maxPushConstantSize to 256

- panvk: prepare for multiple queue types

- panvk: move panvk_image_plane_bind to the beginning of the file

- panvk: add panvk_as_alloc and panvk_as_free helpers

Chan, Roy (1):

- amd/vpelib: fix doxgen warnings

Chang, Tomson (1):

- amd/vpelib: Update headers

Charlotte Pabst (1):

- mesa: clear program info when updating program string

Chen, Phoebe (1):

- amd/vpelib: Fix memory leak from segment ctx

Chia-I Wu (7):

- panvk: check for CS error

- panvk: remove debug_syncobjs

- panvk: propagate CS error in barrier sync wait

- panvk: define more utrace tracepoints

- panvk/csf: add panvk_cache_flush_is_nop

- panvk/csf: prepare for indirect dispatch tracing

- panvk/csf: add more utrace tracepoints

Christian Gmeiner (47):

- etnaviv: isa: Add txf instruction

- etnaviv: nir: Legalize txf lod src

- etnaviv: nir: Add support for txf texture operation

- etnaviv: nir: Use nir_shader_tex_pass(..)

- etnaviv: nir: Legalize txd derivatives src’s

- etnaviv: compiler: Handle f2f16 and f2f32

- etnaviv: compiler: Call nir_lower_alu_width(..)

- etnaviv: compiler: Enable more pack/unpack lowerings

- lima: Move fdot lowering from NIR to lima

- zink: Fix NIR validation error in cubemap-to-array lowering

- asahi: Don’t use deprecated NIR_PASS_V macro

- util/perf: Change _mesa_trace begin functions to return void *

- util/perf: Add sysprof integration

- treewide: Do not use NIR_PASS_V for nir_divergence_analysis(..)

- vc4: Use nir_shader_intrinsics_pass(..) for vc4_nir_lower_io(..)

- vc4: Use nir_shader_intrinsics_pass(..) for vc4_nir_lower_blend(..)

- lima: Convert to use nir_shader_intrinsics_pass

- asahi/lib: Don’t use deprecated NIR_PASS_V macro

- nir/inline_uniforms: Convert to use nir_shader_intrinsics_pass(..)

- zink: fixup_io_locations: Preserve all metadata

- zink: Don’t use deprecated NIR_PASS_V macro anymore

- st/mesa: Remove NIR_PASS_V usage

- ir2: Remove NIR_PASS_V usage

- crocus: Return progress for crocus_lower_storage_image_derefs(..)

- crocus: Don’t use deprecated NIR_PASS_V macro

- etnaviv: tex_desc: Add seamless cube map support

- nouveau/nir: Return progress for nv_nir_move_stores_to_end(..)

- nouveau/nir: Don’t use deprecated NIR_PASS_V macro

- etnaviv: isa: Add texldgpcf instruction

- etnaviv: nir: Legalize txd comparator

- etnaviv: Push nir_tex_instr down to etna_emit_tex(..)

- etnaviv: nir: Use texldgpcf opcode for shadow texture gradients

- etnaviv: nir: Add assertion to prevent src2 conflicts in texture instructions

- etnaviv: nir: Use texldlpcf opcode for shadow texture look-ups with explicit LOD

- etnaviv: nir: Use nir offset lowering

- etnaviv: nir: Move pre-halti5 tex lowering

- etnaviv: nir: Use nir offset lowering for txb

- nir: Unvendor sampler_lod_parameters(_pan)

- etnaviv: nir: Support nir_intrinsic_load_sampler_lod_parameters

- etnaviv: nir: Add nir_texop_tex offset lowering

- etnaviv: nir: Add nir_texop_txl offset lowering

- etnaviv: nir: Add nir_texop_txd offset lowering

- etnaviv: nir: Enable vectorization with 4-component width limit

- etnaviv: nir: Preserve dot product instructions

- mesa: Include mask value in glStencilMask VERBOSE_API debug output

- etnaviv: blt: Clear only requested color buffers

- etnaviv: rs: Clear only requested color buffers

Christoph Neuhauser (2):

- egl: Add EGL_EXT_device_query_name and EGL_EXT_device_persistent_id

- egl: Fix DRI utility function compilation on macOS

Christoph Pillmayer (36):

- panfrost: Enable more than 16 varyings on v9+

- panfrost: Remove fixed_varying_mask from uncompiled_shader

- panfrost: Use LD_VAR_BUF if possible on v9+

- panfrost/ci: Update spec@ext_transform_feedback@max-varyings result

- panfrost: Make ls tracker mandatory in cs_builder

- panvk: Change pending_stores from bitset to bool

- panvk: Add automatic load/store cs WAITs

- panvk: Remove explicit LS waits

- panfrost: Remove unused ls_sb_slot from contexts

- panvk: Remove unused path in flush_tiling

- panvk: Implement VK_EXT_inline_uniform_block

- panvk: Advertise VK_EXT_inline_uniform_block

- panvk: Fix start label position in cs_while_start

- panvk: Add support for 64bit conditionals in CSF

- panvk: Use ls_tracker in cs_if_else

- panvk: Manually flush loads in panvk_cmd_draw_indirect

- panvk: Move cs_wait_slot(s) and cs_flush_loads/stores

- panvk: Fix ls_tracker usage in cs_loop

- panvk: Add tests for ls tracker behavior in cs_loop

- panvk: Add cs_single_link_list

- panvk: Fix occlusion query oq_chain order

- panvk: Handle occlusion queries + multiview

- panvk: Propagate occ query state from secondary to primary

- panvk: Pull CSF barrier logic into separate function

- panvk: Rename reset_oq_batch

- panvk: Add conditional wait in emit_barrier

- panvk: Move get_subqueue_stages to header

- panvk: Add timestamp write and reset

- panvk: Add timestamp copy

- panvk: Advertise timestamp support

- panvk: Handle IUBs in decoder

- panvk: Implement VK_KHR_calibrated_timestamps

- panvk: Advertise VK_KHR_calibrated_timestamps

- panvk: Fix IUB desc type check

- panvk: Allow invalid enum values in get_image_format_properties

- vk/sync: Pass dependencyFlags in vk_common_CmdPipelineBarrier

Christopher Gautier (2):

- panfrost, panvk: Use arch version 9 to distinguish between Bifrost & Valhall

- panfrost, panvk: The size of resource tables needs to be a multiple of 4.

Collabora’s Gfx CI Team (12):

- Uprev ANGLE to f355e2b37ed43939e2753fc7dacccf75abb4c1a3

- Uprev Piglit to c50d9aa54f85e0af9d72fab86c73f89356d96399

- Uprev Piglit to 1498c397ea35119692b579dd6f523de4651c663f

- Uprev ANGLE to 3540a326ec8497700523eb2d3eca90ae21806e8e

- Uprev ANGLE to db33baf4eb0d7954f0110cddc30acb9cdc12e2d4

- Uprev ANGLE to db71e8fa7c26d18f76d7b9e9474447b20f1c73b3

- Uprev Piglit to 1767af745ed96f77b16c0c205015366d1fbbdb22

- Uprev ANGLE to ec4d8f8e4d3f1a9e64430abd8b6b436253732adf

- Uprev Piglit to c32e5cc717e846ffa43408174181dc16a31d3df0

- Uprev ANGLE to b1359277066648c3577ea8b57cc5e0bccee7b6cc

- Uprev Piglit to 685ea49b47ae52560975cfcdb0ea0d4d27fead16

- Uprev Piglit to a0a27e528f643dfeb785350a1213bfff09681950

Connor Abbott (25):

- tu: Fix flushing when using a staging buffer for copies

- freedreno: Add compute_lb_size device info

- freedreno/a6xx: Define CONSTANTRAMMODE

- freedreno/a6xx, turnip: Set CONSTANTRAMMODE correctly

- ir3: Take LB restriction on constlen into account on a7xx

- freedreno: Remove compute_constlen_quirk

- freedreno: Fix CP_RESET_CONTEXT_STATE bitfield names

- tu: Use safe-const GS variant for VPC binning state

- tu: Add perf debug for FDM being disabled

- tu: Remove outdated comment

- tu: Add tu_bo_init_new_cached() helper

- tu: Use cached coherent memory when possible for query pools

- tu: Use a temporary descriptor to patch input attachments

- tu: Make sure to re-emit viewports if per_view_viewport changes

- tu: Re-emit viewports/scissors when has_fdm changes

- util/u_trace: Add u_trace_move()

- tu: Give renderpass events a separate trace buffer

- tu: Remove now-redundant tu_trace_render_pass_start()

- tu: Don’t leave tile store CS writeable

- tu/cs: Assert that the CS is not writeable when resetting

- tu: Don’t allow changing writeableness in a condition

- tu: Add debug flag to force disable FDM

- vk/runtime: Handle VK_PIPELINE_CREATE_2_PER_LAYER_FRAGMENT_DENSITY_BIT_VALVE

- tu: Split out viewport faking from per-view viewports

- tu: Implement VK_VALVE_fragment_density_map_layered

Corentin Noël (23):

- mesa: enable GL name reuse for virgl

- vtest: Silence some coverity issues

- vtest: Be more resilient when a resource creation has failed

- virgl: Ensure to not overflow when encoding string marker

- virgl: Bail out on file descriptor duplication failure

- virgl: Avoid possible double free when destroying the hw resource

- llvmpipe: Avoid function name leak on fail paths

- llvmpipe: Asserts that the format at least has one non-void channel

- llvmpipe: Check allocated memory instead of argument

- llvmpipe: Do bitwise operation on unsigned constants

- llvmpipe: Close mem_fd or dmabuf_fd on error

- llvmpipe: Check for negative size before mapping the memory

- llvmpipe: Make sure to not divide by zero on debug output

- llvmpipe: Make sure to not divide by zero on debug output

- ci: Update CrosVM and Virglrenderer

- virgl: Free resource memory on creation failure

- egl/wayland: Plug leak when implicit modifiers are unsupported

- glx: Free all populated fields of the glx_display on creation failure

- mesa/st: Fix memory leak in st_create_common_variant

- mesa/st: Fix leak in st_create_fp_variant

- venus: Fix leak in syncobj creation failure path

- virgl: Add more Gallium formats to the list

- virgl: Add more Gallium formats to the list

Daniel Lang (2):

- etnaviv: hwdb: update gc_feature_database from ST

- etnaviv: hwdb: update gc_feature_database from NXP

Daniel Schürmann (45):

- nir: add option to move terminate{_if} out of loops

- radv: move terminate{_if} out of loops.

- aco: remove block_kind_continue_or_break workaround and tests

- aco/isel: remove check for empty exec mask on uniform continues

- aco/isel: assert that terminate intrinsics don’t appear in loops

- nir/tests: add tests for nir_move_terminate_out_of_loops

- aco/insert_exec_mask: don’t create unnecessary loop-header and -exit phis after demote

- aco: rename aco_instruction_selection_setup.cpp -> aco_isel_setup.cpp

- aco: move instruction selection files to /compiler/instruction selection/ subfolder

- aco/isel: move some helper functions into a separate file

- aco/isel: move control-flow helper functions into separate file

- aco/isel: move select_trap_handler_shader() into separate file

- aco/isel: move select_rt_prolog() into separate file

- aco/isel: move select_vs_prolog() into separate file

- aco/isel: move select_ps_prolog() into separate file

- aco/isel: move select_ps_epilog() into separate file

- aco/isel: rename aco_instruction_selection.cpp -> aco_isel_nir.cpp

- aco/isel: move visit_alu_instr() into separate file

- aco/isel: move visit_intrinsic() into separate file

- aco: simplify Operand() constructor

- aco/live_var_analysis: set same lateKill flags for same operands

- aco: introduce concept of vector-aligned Operands

- aco/print_ir: only print ‘lateKill’ if requested via print_kill flag

- aco/print_ir: print parenthesis around vector-aligned operands

- aco/assembler: support vector-aligned operands on MIMG instructions

- aco/ra: don’t use kill-flags as indicator in get_reg_create_vector()

- aco/ra: only change registers of already handled operands in update_renames()

- aco/ra: Always rename copy-kill operands, even if the temporary doesn’t match

- aco/ra: handle register assignment of vector-aligned operands

- aco/ra: add affinities for MIMG vector-aligned operands

- aco/validate: validate register assignment of vector-aligned operands

- aco/isel: use vector-aligned operands for image_bvh64_intersect_ray

- aco/ra: always fill moved operands when handling vector-operands

- aco/ra: always set fill_operands=true when handling operands

- nir: remove recursive check in nir_lower_phis_to_scalar()

- nir/lower_phis_to_scalar: remove exec_list dead_instrs

- nir: add nir_vectorize_cb callback parameter to nir_lower_phis_to_scalar()

- aco/isel: refactor emission of bitwise logical operations

- aco: allow subdword vector-definitions on some VALU instructions

- aco: allow vectorized nir_op_mov

- radv: don’t lower subdword phis to scalar

- radv: vectorize some integer arithmetic and bcsel with scalar condition

- aco: split vectorized bcsel and bitwise logic VGPR definitions

- aco/isel: allow to select SGPR defs for vectorized bcsel and logical operations

- aco/ra: always use bytes for register stride requirements

Daniel Stone (33):

- ci/piglit: Use structured tagging for Piglit

- ci: Add firmware to test-base container

- ci: Add packages for hardware CI testing

- ci: Add ci-kdl to test-base container

- ci/panfrost: Really document T860 array flakes

- ci/bare-metal: Remove remnants of old bare-metal setups

- ci/panfrost: Demote T720 to nightly runs only

- ci: Bump v6.14 kernel for updated Panthor scheduler

- ci: Remove baremetal rules special case

- ci/baremetal: Fix broken dependency declaration

- ci/freedreno: Fix dependencies for trace jobs

- ci/windows: Use build rules for the build job

- ci: Only run rustfmt when necessary

- ci: Skip check-only container jobs for pre-merge

- ci: Use placeholder-job for sanity

- ci: Fix missing pipelines on user pipelines in MRs

- egl/wayland: Remove unnecessary plane validity check

- egl/wayland: Move EGL components to wayland-drm

- dri2: Remove format components mapping

- dri: Garbage-collect old DRI interfaces

- x11: Remove DRI2 support

- egl: Remove EGL_MESA_drm_image

- vulkan: Remove build-system remnants of wl_drm support

- egl/wayland: Remove support for non-dmabuf wl_drm

- egl/wayland: Use DRM formats rather than wl_drm

- dri: Remove dri2_from_names

- dri: Remove getBuffersWithFormat

- dri: Remove DRI2 loader extension

- dri: Remove remnants of TexBuffer extension

- egl/wayland: Move bind_wayland_display to legacy build option

- dri: Convert DRI_IMAGE_FORMAT to pipe_format

- dri: Convert pipe_format <-> FourCC lookup to a table

- dri: Expand pipe_format <-> FourCC lookup table

Danylo Piliaiev (39):

- ir3: Move nir_intrinsic_barycentric_sysval to common ir3

- ir3,tu,freedreno: Allow more tex coord interpolations for prefetch

- tu,freedreno: Don’t fallback to LINEAR with DRM_FORMAT_MOD_QCOM_COMPRESSED

- ir3: VARYING_SLOT_LAYER output is used for binning

- tu: Don’t enable secondary command buffer tracepoint by default

- tu: Add total renderpasses,dispatches to cmdbuf tracepoint

- freedreno/percntr: Expose LRZ derived counters

- freedreno/regs: Document fast border color in sampler

- tu: Implement fast border colors in sampler

- tu: Remove builtin border color logic

- freedreno/a6xx: Implement fast border colors in sampler

- tu/lrz: Fix DONT_CARE not resulting in disabled LRZ

- tu/lrz: Fix NOLRZ dbg option

- tu/lrz: Call tu_lrz_write_disable_reason once per RP

- tu/lrz: Disable LRZ if RP writes depth but doesn’t set on GPU dir

- tu: Fix disable_fs state update condition

- tu/lrz: Consider FS depth layout when gl_FragDepth is written

- tu/lrz: Add tu_ignore_frag_depth_direction driconf

- tu/lrz: Don’t disable LRZ test for blend+depth write

- tu: Don’t disable EARLY_Z if SampleMask is written without d/s write

- nir: Add option to not lower gl_InstanceIndex

- tu,freedreno: Use HW option to auto add base instance to instance id

- tu: Fix state.lrz.force_late_z condition not being updated

- freedreno/regs: A6XX_EARLY_LRZ_LATE_Z is really A6XX_EARLY_Z_LATE_Z

- tu: Use EARLY_Z_LATE_Z even when LRZ is disabled

- tu: Use EARLY_Z_LATE_Z with alpha-to-coverage

- tu: Occlusion query counting should happen after FS that kills

- tu: Use EARLY_Z when there is no depth/stencil tests

- freedreno: Use fast variants of {BC4/BC5}_SNORM formats

- tu: Rename u_trace renderpass iterators

- tu: Fix tracepoints with renderpasses spanning several cmdbufs

- tu: Suballocate u_trace buffers to avoid allocations on submit

- tu: Cache copy timestamp cs to avoid allocations on submit

- tu: Add MESA_TRACE_FUNC to submit and BO alloc paths

- tu: Add info about usage to command buffers tracepoint

- tu/perfetto: Ignore events with zero duration

- freedreno/regs: update A2D definitions

- tu: Use safe-const binning VS when safe-const full VS is used

- tu: Fix nullptr dereference in cmd_buffer tracepoint

Dave Airlie (45):

- nouveau/headers: Add stub blackwell class headers

- nvk: Fix compute class comparison in dispatch indirect

- nvk: Don’t emit MME FIFO config on Blackwell+

- nvk: Add hopper priv registers

- nak: Use TexOffsetMode for all texture ops

- nvk/headers: sync up the latest blackwell compute class headers

- Revert “hasvk/elk: stop turning load_push_constants into load_uniform”

- nak/qmd: Move slm size to a separate macro

- nvk: bindless cbufs on hopper/blackwell are different.

- nak: add support for cbuf2 format to non uniform lowering.

- amd: move vp9 probs table to common code.

- vulkan/video: add vp9 decode

- ac/vcn: add new firmware flag to pass uncompresed header offset.

- radv/video: add KHR_video_decode_vp9 support.

- radv/video: add some missing hevc header bits

- radv/video: port hevc slice header encoding from radeonsi

- anv: only expose VK_KHR_cooperative_matrix on devices with hw instructions.

- radv/video: move session defines to header as encode needs more.

- vulkan/video: add support for AV1 encoding to runtime

- radv/video: add support for AV1 encoding

- nvk/nil: add texture header v2 support for hopper/blackwell

- nvk/nil: Use PTE_KIND_GENERIC_MEMORY for everything on Blackwell+

- nouveau/headers: add a single field to skip parsing headers.

- nvk: add clc86f class for hopper host methods.

- nvk: handle hopper invalidate sequence for memory barrier

- nvk: SET_REFERENCE is not legal anymore.

- nvk: invalidate raster cache after setting shading rate

- nvk: Add hopper shared memory window alignment

- nak/sm70: fix imnmx on blackwell.

- nvk/sm90: fix su atom vs atom encoding

- nvk/qmd: fix shared memory size calcs for blackwell.

- nouveau/winsys: Add blackwell support

- nouveau/headers: generate c56f host methods.

- nvk/hopper: set texture header version

- nvk/nak: handle sm100 lod mode encoding.

- nouveau: workaround linear/z rendering interaction

- nak: Add misc Blackwell tex encoding bits

- nouveau/headers: add a hacked up clc9b5 dma-copy

- nvk: add support for separate depth/stencil for blackwell

- nak/sm70: allow first parameter of hfma2 to be non-reg

- nak: add divergent attribute and wrapper for nir_load_sysval_nv

- nak: add uniform support for s2r

- nak: don’t set the divergent flag on uniform sysvals

- nak: disable imma 8x8x16 on Blackwell+

- spirv: move cmat store barrier after the store.

David Heidelberg (2):

- docs: Drop distro unmaintained and deprecated file.

- docs: Rename distro to distribution

David Neto (3):

- mesa: flush stderr when dumping nir validation errors

- spirv: spirv-to-c-array: use ‘-’ to specify stdin

- nir: Support printing cmat constants

David Rosca (74):

- radeonsi/vcn: Fix decode target index for H264 interlaced streams

- radeonsi/vce: Move all code to radeon_vce.c

- radeonsi/uvd_enc: Move all code to radeon_uvd_enc.c

- frontends/vdpau: Fix creating surfaces with 422 chroma

- frontends/va: Correctly derive HEVC StCurrBefore, StCurrAfter and LtCurr

- radeonsi/vcn: Stop using HEVC direct reflist

- radeonsi/uvd: Stop using HEVC direct reflist

- frontends/va: Only keep current slice RefPicList for HEVC

- pipe/video: Remove unused UseRefPicList

- frontends/va: Set HEVC NumShortTermPictureSliceHeaderBits

- pipe/video: Remove st_rps_bits and UseStRpsBits

- radeonsi/uvd_enc: Remove unused stream_handle

- radeonsi/vcn: Remove unused stream_handle for encode

- radeonsi/vcn: Stop using stream handle for decode

- ac/uvd: Add ac_uvd_alloc_stream_handle

- radv/video: Use ac_uvd_alloc_stream_handle

- radeonsi/video: Use ac_uvd_alloc_stream_handle

- radeonsi/vce: Fix bitstream buffer size

- radeonsi/vce: Only send one task per IB

- radeonsi/vce: Fix output quality and performance in speed preset

- radv/video: Support encoding multiple slices

- radv/video: Remove carrizo workaround from VCN decode

- radv/video: Limit 10bit H265 decode support to stoney and newer

- radeonsi/vcn: Get rid of not_referenced

- radeonsi/vcn: Remove carrizo workaround

- radeonsi/vcn: Support disabling HEVC dependent slice segments

- frontends/va: Fix H264 top/bottom is reference flags

- radeonsi/vcn: Use picture fence in JPEG decode

- radv: Use RADEON_SURF_VIDEO_REFERENCE for video DPB images

- radv/video: Set correct minCodedExtent for encode

- radv/video: Enable decode on VCN5

- radv/video: Add VCN5 encode support

- radv/video: Add radv_enc_h264/5_pic_type

- radv/video: Set all pic params for H264 encode refs

- radeonsi/vcn: Fix encoding multiple tiles with recent VCN4 firmwares

- ac/gpu_info: Add vcn_fw_revision

- radv/video: Only enable VP9 decode with supported firmware

- radv/video: Fix indentation

- radv/video: Prefer visible VRAM for host visible context buffers

- radeonsi/vpe: Change some error messages to warnings

- vulkan/video: Add bit depth to session and session params

- frontends/va: Fix SyncSurface when used to sync coded buffer

- radeonsi/vcn: Stop forcing OBU frame for first frame on VCN4

- frontends/va: Fix RefRpsIdx calculation in st_ref_pic_set

- radeonsi/video: Fix RefRpsIdx calculation in st_ref_pic_set

- radeonsi/video: Fix copy paste errors in HEVC header encoder

- radeonsi/video: Fix assert in radeon_bs_code_ns

- frontends/va: Fix leaking fences in GetImage/PutImage

- radeonsi/vcn: Allow B-frames as L0 reference

- radv/video: Add couple missing encode flags and stdSyntaxFlags

- ac/surface: Support RADEON_SURF_FORCE_SWIZZLE_MODE on gfx12

- radv: Don’t allow linear tiling for video DPB images

- radv: Enable tiling for video images on VCN5

- radv/video: Add support for decode tier3

- radeonsi/video: Set correct minimum size for VP9 decode

- radv/video: Set correct H264/5 decode minCodedExtent

- radv/video: Set correct VP9 decode minCodedExtent

- Revert “radeonsi/vcn: Stop using stream handle for decode”

- radeonsi/vcn: Correctly handle tile swizzle

- radv/video: Fix encode when using layered source image

- radeonsi/uvd: Set H264 gaps_in_frame_num_value_allowed_flag

- radv/video: Add bit depth and profile check for AV1 encode

- radv/video: Add bit depth and profile check for VP9 decode

- radv/video: Set encodeInputPictureGranularity for AV1 encode

- radv/video: Send slice control, spec misc and deblocking params every frame

- radv/video: Add more encode session params overrides

- radv/video: Fix encode bitstream buffer offset and alignment

- radv/video: Fix setting H265 encode cu_qp_delta on VCN2

- radv/video: Fix session_init and rc_per_pic on VCN2

- radv/video: Use the new defines for H264 SPS info flags

- frontends/va: Add H264 encode more_rbsp_data PPS flag

- radeonsi/vcn: Use more_rbsp_data flag for H264 PPS encode

- radeonsi: Add missing DEBUG_NAMED_VALUE_END to radeonsi_shader_debug_options

- vulkan/video: Fix h265 level values

Derek Foreman (22):

- loader: Move the wayland protocol build into loader

- wsi/wayland: Add a bool to track the presentation id fallback path

- wsi/wayland: Count outstanding feedbacks

- wsi/wayland: Refactor some buffer management code into loader

- wsi/wayland: Move perfetto flow_ids into loader_wayland_buffer

- wsi/wayland: Move buffer name string into common code

- wsi/wayland: Refactor some surface management code into loader

- wsi/wayland: Early return from tracing function

- wsi/wayland: Move presentation tracing code into loader

- loader/wayland: Move acquisition time tracking into perfetto flows

- egl/dri/wayland: Use loader_wayland_buffer abstraction

- egl/dri/wayland: Use loader_wayland_surface abstraction

- egl/dri/wayland: Refactor throttle code

- egl/dri/wayland: Refactor buffer wait out of get_back_bo()

- egl/dri/wayland: Use presentation feedback to track frame delivery

- egl/dri/wayland: Add some arbitrary perfetto trace points

- egl/dri/wayland: Fix memory leak in wayland buffer handling

- vulkan/wsi: Add basic support for PresentWait2

- wsi/wayland: Add support for PresentWait2

- wsi/display: Add support for PresentWait2

- wsi/x11: add support for PresentWait2

- vulkan: Enable PresentWait2 on many physical devices

Dmitry Baryshkov (5):

- mesa-clc: add an option to force inclusion of OpenCL headers

- rusticl/device: relax some params for embdded profile

- ir3: enable lower_pack_64_4x16

- meson: stop building XA by default

- freedreno: replace fixed array for globabl_bindings with dynamic array

Dmitry Osipenko (3):

- util/disk_cache: Re-enable multi-file cache by default

- virtio/vpipe: Correct vdrm_vpipe_connect() definition

- venus: Fix vn_CreateImage crashing with debug build of venus

Doug Nazar (1):

- glx: Fix memory leak with software dri

Dylan Baker (9):

- blorp: cast uint32_t -> int64_t to avoid potential overflow

- anv: avoid potential integer overflow

- anv: attempt to make coverity happy

- anv: Add comment why we overmap and then unmap a region

- meson: update b_sanitize check for Meson >= 1.8

- meson: use feature options for LLVM

- meson: change RadV dependency on LLVM to an ACO tests dependency

- meson: use .enable_if for intel tools dependency on expat

- meson: set the `legacy-x11` option as deprecated

Echo J (2):

- subprojects: Don’t ignore Meson wrappers in gitignore

- subprojects: Don’t use native option for rustc-hash dependency

Ella Stanforth (17):

- asahi/lib: Move alpha_to_one and alpha_to_coverage lowering to common code.

- v3d/compiler: Fixup output types for all 8 outputs

- v3d/compiler: Only lower logic ops for color buffers that exist

- nir/alpha_to_coverage: Add an intrinsic for better dithering

- v3d/compiler: Implement software blend lowering

- v3d: Implement dual source blending

- v3dv: Implement dual source blending

- v3d/ci: move depthstencil-default_fb-drawpixels-24_8 samples=4 to flakes

- nir/printf: break out va_list handling

- nir/printf: add new helper to printf at a specific pixel.

- v3d/compiler: remove int/uint tracking

- v3d/compiler: remove return_channels from the shader key

- v3d/compiler: remove unused texture swizzle

- v3d/compiler: remove num_samplers_used from shader key

- v3d/compiler: use mask for 16bit and 32bit return values

- v3d/compiler: remove requirement for format information for fbfetch

- v3d/compiler: Fix ub when using memcmp for texture comparisons.

Emma Anholt (69):

- wsi: Label the WSI blit command buffer with a name.

- zink: Add debug names to our command buffers.

- perfetto: Create a common MesaRenderpassIncrementalState.

- perfetto: Move the debug_markers to the incremental state.

- intel/ds: Move “have we already sent initial state?” into the helper.

- perfetto: Allow tracepoint args to map to native perfetto fields.

- anv/ds: Associate the VkCommandBuffer some anv-only renderstage events.

- perfetto: Add helpers for passing VkDebugUtilsObjectNameInfoEXT to perfetto.

- anv/ds: Forward VkDebugUtilsObjectNameInfoEXT to perfetto.

- intel/ds: Fix formatting of stage index.

- tu/perfetto: Attach VkCommandBuffer handles to the GPU events.

- tu/perfetto: Move “have we already sent initial state?” into the helper.

- tu/perfetto: Forward VkDebugUtilsObjectNameInfoEXT to perfetto.

- tu: Disable Z reads for always/never.

- u_trace: Fix payload refcounting in u_trace_clone_append().

- ir3: Enable nir_opt_combine_barriers.

- ir3: Enable nir_opt_acquire_release_barriers.

- ci/tu: Add a frequent a618 flake I’ve noticed.

- tu,freedreno: Rename the MRT enable_blend field to blend_reads_dest.

- tu,freedreno/a6xx: Give the FS_CTRL UNK24 bit a name: INOUTREGOVERLAP.

- tu: Add a link to my branch for stencil read optimization.

- intel: Use the common NIR lowering for fquantize2f16.

- nir: Split nir_load_frag_coord_zw to separate z/w intrinsics.

- nir: Add SYSTEM_VALUE_FRAG_COORD_Z/W.

- nir: Make pixel_coord/frag_coord_zw be peephole-able sysvals.

- nir: Add support for load_frag_coord_zw to nir_opt_fragdepth.

- intel/shim: Report support for PXP status.

- intel/shim: Report I915_PARAM_HAS_GEN7_SOL_RESET.

- intel/fs: Don’t bother checking if load_frag_coord uses interpolation.

- intel/elk: Save the UW pixel x/y as a temp on gfx6+.

- intel/elk: Save the UW pixel x/y as a temp.

- intel/elk: Lower load_frag_coord to load_{pixel_coord,frag_coord_z/w} in NIR.

- intel/elk: Use the pixel_coord UW x/y values for noncoherent FB reads.

- intel/elk: Reduce this->pixel_x/y usage in gfx4 interp setup.

- intel/elk: Retire the global float pixel_x/y values.

- intel/elk: Fix some tabs in gen4 URB setup.

- intel/elk: Move pre-gen6 gl_FragCoord.w -> interpolation lowering to NIR.

- intel/elk: Move pre-gen6 smooth interpolation 1/w multiply to NIR.

- intel/elk: Use pixel_z for gl_FragCoord.z on pre-gen6.

- intel/elk: Move wpos_w setup right into nir_intrinsic_load_frag_w.

- mesa: Retire the OptimizeForAOS code.

- vc4: Drop VS ucp lowering code.

- gallium: Remove the need for set_clip_state() on !PIPE_CAP_CLIP_PLANES.

- v3d: Stop advertising support for HW clip planes.

- ci/tu: Add some recent flakes and consolidate lists into regexes.

- ci/tu: Don’t forget to report flakes on a660, too.

- ci/tu: Sync up a660’s flakes with a618 where they seem to match up.

- ci/tu: Fix a typo in the flakes list, add a couple more tess/gs flakes.

- nir: Add a pass to reassociate multiplication of mat*mat*vec.

- ir3: Enable NIR matrix reassociation.

- freedreno/a2xx: Disable interpolated input intrinsics.

- freedreno/a2xx: Dump the intrinsic name instead of a number when compile failing.

- freedreno/a2xx: Share the shader state create/delete functions.

- turnip: Fix subpass depth/stencil change detection.

- turnip: Move end-of-subpass resolves to a helper function.

- turnip: Emit tile stores at subpass end time.

- turnip: Share gmem allocations between attachments.

- tu: Block ib2 skipping for pre-final subpass resolves.

- glx: clean up a litttle remains of DRI2 support.

- egl/x11: Match loader_destroy_screen_resources() with init().

- dri2: Finish removing the now-unused dep_xcb_dri2.

- ir3: Store the sha1 string of the compiled shader in the shader info.

- tu: Include the CS binary sha1 in CS dispatch tracepoints.

- tu: Add tracepoints around draws, with shader sha1s.

- ir3: Consider double_threadsize in the shader’s sha1.

- ir3: Dump max_waves and double_threadsize with shader native code.

- ir3: Prioritize max waves over doubling threadsize for non-fp16 shaders.

- ir3: Clarify a bit of the CS threadsize logic.

- i915: Avoid calling drm_intel_get_aperture_sizes().

Eric Engestrom (298):

- VERSION: bump to 25.2

- docs: reset new_features.txt

- docs: update calendar for 25.1.0-rc1

- docs: update calendar for 25.0.4

- docs: add release notes for 25.0.4

- docs: add sha sum for 25.0.4

- meson: remove duplicate `deprecated` for `gallium-xa` option

- meson: remove duplicate `deprecated` for `power8` option

- ci: give high priority to post-merge jobs as well

- pick-ui: make `Backport-to: 25.0` backport to 25.0 *and more recent release branches*

- ci: bump apitrace

- glx: drop dead GL_LIB_NAME define

- ci/vkd3d: drop unused 32-bit build

- turnip/ci: drop skip of test_vrs_depth_write_dxbc as it no longer hangs

- ci: uprev vkd3d-proton

- aco: help clang 20 do some additions and subtractions

- ci: bump to fedora 42

- pick-ui: add missing dependency

- docs: update calendar for 25.1.0-rc2

- ci/vkd3d: drop misguided “something failed” error message

- ci/vkd3d: fix test failure list when no test failed

- ci/vkd3d: quieten the mesa version check

- ci/vkd3d: only keep logs of failed tests

- ci/vkd3d: fix RESULTS_DIR variable name

- ci/vkd3d: treat reading undefined variables as an error

- ci/vkd3d: fail shell pipeline when part of it fails

- ci: drop dead wgetrc as there are no uses of wget in our CI images

- ci: use curl instead of wget in download-git-cache.sh

- ci/build: drop b2c files from the builds artifacts

- ci/build: drop expectation files from python-artifacts

- ci/build: drop lava scripts from builds artifacts

- ci/build: drop unused VERSION from python-artifacts

- ci/build: split git commit sha command out of echo

- ci/build: rename variable to avoid changing the meaning of existing variable

- ci/build: drop unnecessary shellcheck disables

- ci/test: fix annoying yamllint warning about 2 spaces before comments

- amd/ci: ci yaml indentation

- radv/ci: move radv-kabini-vkd3d out of gitlab-ci-inc.yml

- ci/test: rename .b2c-vkd3d-proton-test to .test-vkd3d-proton

- ci/ci-tron: default HWCI_TEST_SCRIPT to deqp-runner, as it’s almost always what’s run

- ci/test: make generic fdo runner test jobs use the S3 artifacts too

- ci/build: drop install.tar from gitlab artifacts

- ci: take google-freedreno farm offline

- ci: use https:// to install ci-fairy

- ci: rename misleading *-postmerge stages to *-nightly

- amd/ci: disable retry on nightly radeonsi-vangogh-glcts-full job

- amd/ci: document regression in e612e840…e210b79c

- docs: update calendar for 25.1.0-rc3

- docs: update calendar for 25.0.5

- docs: add release notes for 25.0.5

- docs: add sha sum for 25.0.5

- ci: drop tracking of removed folder

- radv/ci: document flakes seen recently

- radeonsi/ci: document flakes seen recently

- turnip/ci: document flakes seen recently

- zink+radv/ci: document flakes seen recently

- zink+nvk/ci: document flakes seen recently

- lavapipe/ci: document flakes (including a flaky timeout) seen recently

- etnaviv/ci: document two fixed tests

- llvmpipe/ci: document regression in a02b6e6b…676e26ae

- ci: pass vk_require_etc2 from radv jobs through to the duts

- v3dv/ci: fix malformatted flakes line

- vc4/ci: document flakes seen over the last 7 days

- v3d/ci: document flakes seen over the last 7 days

- v3dv/ci: document flakes seen over the last 7 days

- turnip/ci: document a750 fixed tests

- radv/ci: add recent flakes

- etnaviv/ci: add recent flakes

- r300/ci: add recent flakes

- lavapipe/ci: add recent flakes

- docs: update calendar for 25.1.0

- docs: add release notes for 25.1.0

- docs: add sha sum for 25.1.0

- docs: add calendar for 25.1.x releases

- ci/b2c: drop dead /runner-before-script.sh code

- ci/vkd3d: stop supressing vulkaninfo errors

- etnaviv/ci: split model and revision tags

- etnaviv/ci: introduce common .austriancoder-ci-tron

- ci/ci-tron: deduplicate setting the runner tags for most jobs

- amd/ci: simplify radeonsi-vangogh-glcts jobs definition

- radv/ci: inline .vkcts-test-valve

- radv/ci: fix inheritance/override order

- zink+turnip/ci: fix inheritance/override order

- ci/ci-tron: add check that the required variables are set

- ci/ci-tron: print all the variables

- ci/build: stop uploading python-artifacts to gitlab artifacts

- radv/ci: increase swap size on kabini to 16g

- radv/ci: set swap size for all amd jobs to 16g

- radv/ci: rename .test-radv to .ci-tron-test-radv

- ci/ci-tron: uprev b2c to 0.9.15.1

- amd/ci: split .ci-tron-test-amdgpu from .ci-tron-test-radv

- amd/ci: set kernel for amdgpu jobs in .ci-tron-test-amdgpu

- ci/ci-tron: document which kernel version is provided in a given b2c release

- ci/ci-tron: drop special case for default x86_64 kernel (= uprev to 6.13.7)

- zink+nvk/ci: document more flakes

- nvk/ci: tighten job timeouts a little bit

- ci-tron: drop default timeouts

- nvk/ci: drop CI_TRON_TIMEOUT__BOOT_CYCLE__MINUTES

- turnip/ci: drop CI_TRON_TIMEOUT__BOOT_CYCLE__MINUTES

- radv/ci: move the timeout from polaris10 job template to polaris10 job

- radv/ci: drop unnecessary CI_TRON_TIMEOUT__BOOT_CYCLE__MINUTES

- radeonsi/ci: document regression

- radeonsi/ci: document flakes

- radv/ci: document flakes

- broadcom/ci: document fixed tests

- lavapipe/ci: replace large (and growing) list of flakes with a regex

- lavapipe/ci: document flakes

- docs/linkcheck: print summary of problems found

- docs/conf.py: fix python formatting (whitespace changes only)

- docs/linkcheck: ignore a couple more domains blocking the linkcheck user-agent

- docs/linkcheck: ignore loging wall for broadcom

- docs/ci: allow running linkcheck in pre-merge pipelines

- docs/release-calendar: add 25.2 branchpoint & rc dates

- docs: update calendar for 25.0.6

- docs: add release notes for 25.0.6

- docs: add sha sum for 25.0.6

- docs/release-calendar: fix release numbers

- r300/ci: switch radeon.ko jobs to common kernel (6.13.7)

- ci/ci-tron: replace crude dump of env vars with reproducible job script

- vmware/ci: move jobs to nightly until farm is stabilized

- ci: clear S3_JWT_FILE_SCRIPT as it also contains the S3_JWT

- ci: avoid unsetting S3_JWT too early in container image builds

- ci/container: fix whitespace for yamllint

- ci: uprev vkd3d

- docs: update calendar for 25.1.1

- docs: add release notes for 25.1.1

- docs: add sha sum for 25.1.1

- radv/ci: document fixed angle test

- radeonsi/ci: document fixed piglit tests

- r300/ci: document fixed test

- amd/ci: document radeonsi flakes

- amd/ci: document radv flakes

- rpi/ci: document flakes

- rpi/ci: skip timing out test

- lavapipe/ci: document flakes

- lavapipe/ci: skip timing out tests

- delete xa leftovers

- amd/ci: uprev amdgpu.ko jobs to kernel 6.14.8

- ci: uprev vkd3d

- ci/vkd3d: collapse section by default

- gallium: drop dynamic pipe-loader leftovers

- docs: update calendar for 25.0.7

- docs: add release notes for 25.0.7

- docs: add sha sum for 25.0.7

- ci: drop unneeded printing of `pass`/`fail` alongside the exit_code

- svga/ci: fix job stages

- svga/ci: fix indentation

- ci: improve names of push-to-upstream-{default,staging}-branch pipelines

- ci: improve name of fork pipelines

- ci: improve name of merge-request pipelines

- ci: improve explanation of the pre-merge/merge-request pipelines

- ci: inline the only anchor reference that was on its own line

- docs: update calendar for 25.1.2

- docs: add release notes for 25.1.2

- docs: add sha sum for 25.1.2

- docs: update calendar for 25.1.3

- docs: add release notes for 25.1.3

- docs: add sha sum for 25.1.3

- radv/ci: document flakes seen over the last week

- radeonsi/ci: document flakes seen over the last week

- broadcom/ci: document flakes seen over the last week

- lavapipe/ci: document flakes seen over the last week

- nvk/ci: add missing VKD3D_PROTON_TAG

- turnip/ci: add missing VKD3D_PROTON_TAG

- lavapipe/ci: add missing VKD3D_PROTON_TAG

- ci/piglit: avoid copying /piglit across filesystems when unused

- radeonsi/ci: update glcts expectations

- etnaviv/ci: document new failure

- freedreno/ci: document fixed & new failures

- nvk+zink/ci: document new failures

- lavapipe/ci: document new failure

- lavapipe/ci: skip timing out tests

- radeonsi/ci: document flakes seen recently

- radv/ci: document flakes seen recently

- broadcom/ci: document flakes seen recently

- freedreno/ci: document flakes seen recently

- lavapipe/ci: document flakes seen recently

- radv+zink/ci: document flakes seen recently

- broadcom/ci: catch more similar flakes

- lavapipe/ci: catch all the dEQP-VK.synchronization2.timeline_semaphore.* flakes

- ci_run_n_monitor: fix padding in links

- meson: drop unnecessary `-D legacy-x11=none`

- docs: update calendar for 25.1.4

- docs: add release notes for 25.1.4

- docs: add sha sum for 25.1.4

- hasvk: only run tests on x86 (32 & 64 bit)

- turnip/ci: document vkd3d regression

- radeonsi/ci: reduce coverage of radeonsi-vangogh-glcts

- meson: include VkLayer_INTEL_nullhw in the devenv

- meson: include VkLayer_MESA_device_select in the devenv

- meson: include VkLayer_MESA_overlay in the devenv

- egl/meson: simplify glvnd json configuration

- egl/meson: reuse existing glvnd_vendor_name variable

- egl/meson: move glvnd config file after libEGL

- egl/meson: allow passing a full path to the glvnd json file

- egl/meson: include glvnd in the devenv

- intel/compiler tests: rewrite subprocess handling in run-test.py

- intel/compiler tests: fix path-to-string conversion

- intel/compiler tests: fix “is there something after the options” check

- intel/compiler tests: fix variable type for getopt_long() return value

- lavapipe/ci: fix flakes regex

- lavapipe/ci: remove duplicate flakes line

- lavapipe/ci: document recent flakes

- radeonsi/ci: document recent flakes

- radv/ci: document recent flakes

- broadcom/ci: document recent flakes

- zink/ci: document recent flakes

- r300/ci: update expectations and document recent flakes

- lavapipe/ci: drop redundant `stage:`

- lavapipe/ci: drop unneeded MESA_VK_IGNORE_CONFORMANCE_WARNING

- lavapipe/ci: promote vkd3d job from nightly to merge pipelines

- lavapipe/ci: drop redundant .lavapipe-rules in .lavapipe-test

- lavapipe/ci: move job timeout definition to jobs

- lavapipe/ci: explicitly state in the job name which test is being run

- docs: drop outdated line about meson version

- meson: drop error for meson < 1.3 since we require 1.3+ already

- meson: bump required meson version to 1.4

- meson: allow “venus without virgl” builds

- meson: fix vdrm inclusion logic

- virtio: move inc_virtio up one folder

- meson: split subdir for virtio/vdrm and virtio/vulkan

- freedreno/drm: fix libvdrm inclusion logic

- radv/ci: sort previously added flakes

- radeonsi/ci: document flakes

- radv/ci: document flakes

- nvk/ci: document flakes

- zink+radv/ci: document flakes

- zink+nvk/ci: document flakes

- zink+lavapipe/ci: document flakes

- broadcom/ci: document flakes

- ci/build: use !reference to build scripts instead of yaml anchors

- ci: make sure that sanity job must pass before running other jobs

- ci: fix yamllint warnings about whitespace

- broadcom/ci: move job timeout definitions to jobs

- ci-tron: add ci-tron-arm64-test-{asan,ubsan}-{gl,vk} job templates

- docs: update calendar for 25.1.5

- docs: add release notes for 25.1.5

- docs: add sha sum for 25.1.5

- bin/symbols-check: add missing newline before function

- bin/symbols-check: fix fields length condition before accessing fields

- bin/symbols-check: ignore `nm` lines that don’t have a symbol name

- bin/symbols-check: ignore version of platform symbols

- bin/symbols-check: sort platform symbols

- bin/symbols-check: document new platform symbols exported since symbols-check was broken

- meson: only run symbols-check if `nm` is available

- freedreno/ci: fix a750-piglit-cl rules

- freedreno: rename `.gitlab-ci` folder to `tests`

- panfrost/meson: drop invalid C-only -Wno-override-init from C++ args

- docs/perfetto: update link to documentation

- broadcom/ci: add definitions for ci-tron jobs

- broadcom/ci: add ci-tron variant of each job

- broadcom/ci: skip tests that sometimes time out

- panfrost/meson: drop invalid C-only -Wno-override-init from C++ args

- crocus/ci: disable jobs on anholt farm

- ci: document anholt farm as decommissioned

- hasvk/ci: disable jobs on anholt farm

- nvk/ci: document usual run time for ad106 job

- vc4/ci: sort dEQP-GLES2 flakes

- broadcom/ci: document recent flakes

- radeonsi/ci: sort stoney flakes

- radeonsi/ci: document recent flakes

- radv/ci: document recent flakes

- zink+radv/ci: document recent flakes

- zink+lavapipe/ci: document recent flakes

- ci: uprev apitrace

- docs: improve “backport MR” instructions

- etnaviv/ci: document fixed tests

- zink+nvk/ci: document crash->fail change from !36031

- zink+radv/ci: document new failures

- lavapipe/ci: document one fixed and two new failures

- radeonsi/ci: document recent flakes

- radv/ci: document recent flakes

- broadcom/ci: document recent flakes

- zink+radv/ci: document recent flakes

- llvmpipe/ci: document recent flakes

- lavapipe/ci: document recent flakes

- turnip+zink/ci: add piglit to the a750 job

- ci: fix priority of nightly pipeline & staging pipeline jobs

- nvk/ci: document vkd3d regression

- zink+nvk/ci: fix mistake in yesterday’s crash->fail improvement update

- freedreno/ci: document recent flakes

- zink+radv/ci: document recent flakes

- ci/piglit: drop LAVA variable from non-LAVA jobs

- ci/piglit: provide default device name

- ci/piglit: provide default results file name

- ci/lava: inherit .piglit-traces-test in .lava-piglit-traces and deduplicate configs

- ci: move `script:` override from .piglit-traces-test to llvmpipe-traces

- VERSION: bump for 25.2.0-rc1

- .pick_status.json: Update to f4166ab1e1d6dec2355c0d861c75319248d4de08

- .pick_status.json: Mark 80be9153f9debe9021c425c3b10de7804e4a0d7e as denominated

- ci: fix rustfmt job rules

- ci: fix rustfmt job rules (one more case)

- VERSION: bump for 25.2.0-rc2

- .pick_status.json: Update to f4436d606e0ae76ef6092b850cf79fa3e014f61e

- .pick_status.json: Mark f4596e78283aa9124ad3358d488167c8a72d6176 as denominated

- VERSION: bump for 25.2.0-rc3

- .pick_status.json: Update to 20dab5f819f7016b8d7f4e88927855a0e5ff7a61

- meson: fix VkLayer_MESA_device_select in the devenv

Eric R. Smith (14):

- pan/layout: Use _{B,el,px,sb} suffixes to clarify things

- panfrost, panvk: fix G31 use of SHADER_MODE_EARLY_ZS_ALWAYS

- panfrost, panvk: spread hierarchy mask bits out when max_levels < 8

- util/format: fix some missing cases in util_format_get_plane_format

- pan/afbc: Teach AFBC about YUV formats

- panfrost: add support for AFBC modifiers on YUV formats

- util/format: add support for YU08 and YU10 formats

- gallium/st: Teach the state tracker about YU08 and YU10 formats

- dri2: Teach the DRI layer about YU08 and YU10

- pan: Teach libpanfrost about YU08/Y010

- panvk: add a driConf to force enable atomics in shaders

- panfrost: spill registers in SSA form

- panfrost: fix SSA register allocation

- panvk: use minimum attachment size for frame buffer size

Erico Nunes (9):

- lima: drop unused fields from lima_context_framebuffer

- lima: drop tiled_w and tiled_h from lima_surface

- lima: handle luminance and intensity pixel formats

- lima: move reload flags from surface to resource

- lima: drop util_framebuffer_init usage

- lima: drop lima_surface

- lima: fix array limit in texture mipmap descriptor

- lima: ppir: fix check for discard_block in optimization

- lima: ppir: fix store_output optimization for modifiers

Erik Faye-Lund (82):

- panvk: support vulkan 1.2 on v10+

- panvk: re-enable KHR_shader_quad_control on v10+

- docs/features: mark off missing panvk extensions

- pan/ci: add fragment_out flakes from t860 to t760

- gallium/aux: move util_pipe_tex_to_tgsi_tex to u_blitter.c

- r600: ingest u_blitter_clear_buffer

- gallium/aux: fixup bad indent

- pan/ci: remove no longer failing test

- panvk: expose EXT_texel_buffer_alignment support

- mesa/main: remove non-existing function prototype

- panfrost: v4 does not support 16x msaa

- panfrost: do not try to use 4x4 tiles on v4 gpus

- panfrost: do not calculate max-msaa on v4

- panfrost: re-align table

- panfrost: properly compute tile-buffer requirements

- panfrost: change tie-breaking rule for 16x MSAA

- panfrost: pass quirks through __VA_ARGS__

- panfrost: add max_4x_msaa quirk

- util/format: add ASTC HDR formats

- util/format: add util_format_is_astc_hdr()-helper

- mesa/main: support astc_hdr formats

- gallium/st: enable KHR_texture_compression_astc_hdr when supported

- panfrost: correct texfeat-bit for ASTC LDR

- panfrost: set decode_hdr when needed

- pan/lib: wire up ASTC HDR formats

- mesa/main: fixup bad indent

- mesa/main: use _mesa_is_desktop_gl_compat-helper

- mesa/main: use _mesa_has_Foo-helpers

- mesa/main: do not allow non-gles1 enums in gles1

- mesa/main: fix ARB_texture_float quirk

- mesa/main: clean up invalid pname-check

- mesa/main: do not allow desktop enums on gles

- mesa/main: fix texture view enum checks

- mesa/main: add _mesa_has_texture_multisample-helper

- mesa/main: correct error-checks for GL_TEXTURE_2D_MULTISAMPLE_ARRAY

- mesa/main: fix multisample enum checks

- mesa/main: fix error-handling for gles1/2

- mesa/main: fix enum errors

- vulkan/format: map ASTC HDR formats

- panvk: add EXT_texture_compression_astc_hdr support

- panfrost: do not double-insert shader into hash-table

- panfrost: plug leak of modifier conversion shaders

- panfrost: remove surface create/destroy hooks

- lima: drop R16G16B16_FLOAT support

- lima: add driconf infrastructure

- lima: make fp16 render-targets opt-in with driconf

- upanfrost: make 128-bit opt-in with driconf on v4

- docs/features: add GL_EXT_shader_realtime_clock

- Revert “mesa: limit number of error raised by invalid GL_TEXTURE_MAX_ANISOTROPY_EXT”

- mesa/main: introduce MAX_SAMPLES define

- mesa/main: search all the way to MAX_SAMPLES

- st/mesa: search for smallest supported sample-count

- mesa/main: correct internalformat query condition

- mesa/main: use _mesa_check_sample_count instead of open-coding error

- mesa/main: add missing error-check for samples

- mesa/main: more careful ext checking

- mesa/main: contain mutlisample advanced limitations

- panfrost: enable 8x and 16x msaa modes when supported

- meson: use literal false instead of string

- panfrost/ci: fix sorting of fails

- panfrost/ci: add new half-float fails

- pan/bi: rework memory barriers

- pan/bi: handle barriers with NONE scope

- panvk: optimize barriers

- panvk: enable KHR_vulkan_memory_model

- panvk: expose vulkan 1.3 support

- docs/features: mark vk 1.3 as complete on panvk/v10+

- panfrost/ci: explain g52 fails

- panfrost/ci: add new 8x/16x msaa fails on t760

- panfrost/ci: bump timeout for panfrost-t760-gles

- panfrost/ci: fix up msaa fails… again

- panfrost: disable 16x MSAA on t760 before r1p0

- panvk: fixup bad indent

- panvk: pass flags to panvk_sampler_fill_desc

- panvk: implement VK_EXT_non_seamless_cube_map support

- st/pbo: use sized nir-types for download-path

- panfrost: limit sample_shading to bifrost and later

- mesa/st: do not check single-sampled for max_samples

- Revert “lima: make fp16 render-targets opt-in with driconf”

- Revert “upanfrost: make 128-bit opt-in with driconf on v4”

- pan/ci: remove non-existent flag from PAN_MESA_DEBUG

- docs/features: add missing panvk extension

Eve (1):

- radv: add RADV_PERFTEST option to turn off gtt spilling

Faith Ekstrand (236):

- nak/legalize: Take a RegFile in copy_alu_src_and_lower_fmod

- nak/legalize: Take a RegFile in copy_alu_src_and_lower_ineg()

- nak/sm70: Fix the bit74_75_ar_mod assert

- nak/sm20: Add initial SM20 encoding

- nak/sm20: Add float ops

- nak/sm20: Add integer ops

- nak: Lower 64-bit shifts in NIR on Kepler A and earlier

- nak: Record and set DOES_FP64 in the SPH

- nak/sm20: Add conversion ops

- nak/nir: Use Maxwell input interpolation for SM20+

- nak/sm20: Add shader I/O ops

- nak/sm20: Add control-flow ops

- nak/nir: Use Kepler texture source ordering on SM30

- nak/sm20: Add texture ops

- nak/sm20: Add more memory ops

- nak/sm20: Add subgroup ops

- nak/sm20: Add double ops

- nak/sm20: Implement OpBar

- nvk: Return an error for Kepler storage images instead of asserting

- nak/sm20: Improve folding of ffma and dfma

- nak/sm20: Use the correct index field for OpS2R

- nak: Handle OpFRnd in is_fp64()

- nak/sm20: Fix legalization of float source types

- nak/sm20: Use the immediates instead of rZ in OpShfl

- nvk: Maxwell+ is now conformant

- docs/nvk: Update conformance and hardware support information

- nak/sm20: Call copy_alu_src_if_fabs() first

- nak/sm20: Fix legalization of IAdd and IMul

- nak: Match on the SrcRef directly in Src::is_nonzero()

- nak/sm20: Use SrcRef::as_u32()

- nak: Take a SrcType in Src::as_u32()

- nak: Fold source modifiers in Src::as_u32()

- nak: Handle SrcType::F64 in Src::is_fneg_zero()

- nak: Use as_u32() directly in Src::is_fneg_zero()

- nak: Fold Src::fold_imm() into the legalization pass

- nak: Replace Src::new_zero() with a ZERO constant

- nak: Move SSAValue and friends to a new ssa_value.rs file

- nak: Print the % for SSA predicates

- nak: Set lower_pack_64_4x16

- nak: Stop relying on nir_lower_pack

- nvk: Stop printing errors for invalid dma-buf image queries

- docs/nvk: Improve the NVK docs page

- docs/nvk: Add section about NVK+Zink

- docs/systems: Point people at the NVK page first

- nak: sm32: Add Texture ops

- nak: Improve documentaiton for SSAValue and SSARef

- nak: Improve documentation on RegFile

- nak: Improve documentation for PerRegFile

- nak: Improve documentation for RegRef

- nak: Fix some rusdoc warnings

- compiler/rust: Better document CFG

- nak/sm70: Increase the number of UGPRs on Blackwell+ to 80

- nak/sm70: Properly encode ldc on Blackwell+

- nak/hw_tests: Copy data stride and invocations to avoid cbuf sources

- nak/lower_copy: Implement copy from CBuf as ldc on Blackwell+

- nak/copy_prop: Don’t propagate cbufs into ALU on Blackwell+

- nak/sm70: Fix bra offset encoding for for Hopper+

- nak/sm70: Use rZ for the 3rd source of lea when .hi is not set

- nak/sm70: imnmx takes and returns more predicates on Blackwell+

- nak/nir/lower_tex: Use nir_tex_instr_add_src()

- nak/sm70: Don’t set a predicate destination on redg

- nak/sm20: Remove some unnecessary Option<>

- nak: Fix OpShf folding for shift >= 64

- nak: Add HW tests for OpShr and OpShl

- nak: Reduce shift immediates instead of adding copies

- nak: Add a helper for reducing OpShfl lane and c immediates

- nak: Add a helper to reduce OpPrmt sel immediates

- nvk: Implement VK_EXT_zero_initialize_device_memory

- nak: Use Default::default() for BitSet constructors

- compiler/rust,nak: Rename BitSet::get() to contains()

- compiler/rust/bitset: Make BitSet a generic container type

- nak/liveness: Use an SSA value as the last_use HashMap key

- nak/liveness: Use typed bitsets

- nak/repair_ssa: Rename Phi to PhiTracker

- nak: Use op instead of phi when referring to OpPhiSrcs or OpPhiDsts

- nak: Add a Phi struct type

- nak/dce: Use BitSet for live phis and SSA values

- nvk: Disable R64_[US]INT formats when shaderImageInt64Atomics isn’t supported

- nak/sm20: Don’t allow 64-bit atomics

- nvk: 64-bit atomics exist on Kepler B+

- nouveau/mme: Don’t install the HW tests

- nak/sm20: Encode OpViLd instead of OpIsberd

- nak/sm20: Add encodings for OpLdSharedLock and OpStSCheckUnlock

- nak/sm20: Fix the encoding of fset

- nak/sm20: Fix a comple misplaced bits

- nvk: Allocate the correct VAB size on Kepler

- nak/sm20: Encode OpAL2P

- bitview: Implement SetFieldU64 for all BitViewMutable

- nak: Scalarize non-constant ald/ast on Kepler

- nvk: Reserve a sampler for TXF on Kepler

- nvk: Drop the union from nvk_buffer_view

- nil: Align linear image strides to the image alignment

- nouveau: Move bitview to a common rust util folder

- nvk: Lower images to addresses on Kepler

- nak/sm20: Encode surface address ops

- nak/sm20: Encode OpSuLdGa and OpSuStGa

- nvk: Use NAK by default on Kepler

- nvk: Don’t disable features based on NVK_USE_NAK

- nvk: Remove codegen support

- nvk: Inline nvk_compile_nir_with_nak()

- nvk: Only pass texture handles to NAK

- nvk: Stop doubling root descriptors

- nak: Unconditionally call lower_io_to_temporaries in preprocess_nir

- nouveau: Move codegen back to the src/gallium/drivers/nouveau

- nvk/nvkmd: Add a force_mem_to_gart() helper

- nvk: Don’t assert memory placement on import

- nvk: Only allow importing mappable dma-bufs to HOST_VISIBLE types

- nvk: Disallow GetMemoryFdProperties with OPAQUE_FD_BIT

- nak: Handle suld.constant on Turing and Volta in legalization

- nak/sm50: Use MemScope::CTA for constant image loads

- nak: Set MemOrder::Constant for CAN_REORDER image loads on all hardware

- nak: Set cache ops on global memory access on Kepler

- nak: Set cache ops on surface load/store ops

- nak/sm20: pixld has a predicate destination

- nvk: Don’t use INVALIDATE_TEXTURE_DATA_CACHE_NO_WFI on Kepler

- nak: Plumb the ShaderModel through to Ld/StCacheOp::select()

- nak: Print cache ops on suldga and sustga

- nak: Handle MemScope::System on Kepler

- nak/sm50: Encode cache ops on Maxwell

- nak/sm50: Use ld.ci for constant loads

- nvk/lower_descriptors: Drop buffer_address_to_ldcx_handle()

- nvk: Rework non-uniform access lowering

- nvk: Run nir_opt_non_uniform_access for UBOs on Turing+

- nvk: Claim shaderUniformBufferArrayNonUniformIndexingNative

- vulkan/pipeline: Hash null descriptor robustness info

- nak/sm70: Fix r2ur for Blackwell+

- nak/qmd: Allow program addresses to be shifted

- nak/qmd: Add QMD version 5.0 for Blackwell+

- nvk: Add a new arena data structure

- nvk/heap: Use an nvk_mem_arena

- nvk/descriptor_table: Add a couple new helpers

- nvk: Use an nvk_arena for nvk_descriptor_table

- nvk: Add an nvk_mem_stream struct

- nvk/upload_queue: Use an nvk_mem_stream internally

- nvk/queue: Rename submit_simple() to push()

- nvk: Use an nvk_mem_stream for nvk_queue_push()

- nvk: Set memory windows in engine init

- nvk: Don’t set queue lost from nvk_queue_push()

- nvk: Drop nvk_buffer_address()

- nil: Rework the descriptor interface

- nil: Don’t use Fermi bits in the Maxwell null descriptor

- nvk: Add an nvk_sampler_header struct and return it by value

- nir/lower_input_attachments: Stop assuming tex src indices

- nir/lower_input_attachments: Don’t ignore tex coordinates

- nir: Add a new load_input_attachment_coord intrinsic

- nvk: Add a load_root_table() helper

- nvk: Switch to nir_intrinsic_load_input_attachment_coord

- nvk: Lower input attachments earlier

- vulkan: Add a vk_sampler_state struct

- vulkan/sampler: Add border color swizzle info to vk_sampler_state

- nvk: Use vk_sampler_state for nvk_sampler_get_header()

- vulkan: Drop vk_sampler_init()

- nir: Move nir_steal_tex_src() to nir.h

- nir: Add more tex_src helpers

- nvk: Use nir_tex_get/steal_src in nvk_nir_lower_descriptors()

- nil: Add more GOBType enums

- nil: Use GOBType::choose() to pick gob kinds for modifiers

- nil: Match on gob types in the tiled image copy code

- nil: Add new GOBTypes for blackwell+

- nil/copy: Add a simpler CopyGOBLines trait

- nil: Improve Tiling and GOBType documentation

- nil: Fix the GOBType::TuringColor2D description

- nil: Rename a few GOB types

- nak/hw_tests: Align the shared memory window to 4GB on Hopper+

- nvk/bitview: Add a new ToFieldBits trait

- nvk/bitview: Add a set_field2() trait and method

- nak: Use the new set_field2() helper for a few things

- nil: Use set_field2() for a few descriptor cases

- nak: Use set_ureg_src() for Blackwell texture offsets and handles

- nak: Rework printing of TexLodMode

- nak: Add better is_blackwell*() helpers

- nak: Tell NIR to lower invalid implicit LODs

- nak: Add a new TexDerivMode enum and plumb it through

- nak: Add a TexDerivMode to OpFSwz and OpFSwzAdd

- nak: Use fswzadd.ndv on Blackwell+

- nil: Reorder the checks in GOBType::choose() again

- nil: Add a new GOBType for Z24 on Blackwell+

- nil: Remove some unused renames from cbindgen.toml

- nvk/copy: Set the gob_kind for tiled copies on Blackwell+

- nil/copy: Base swizzling on the per-plane pipe_format

- nvk: Use util_format_stencil_only()

- nvk: Allow sparse binding of YCbCr images

- nvk: Allocate separate planes for depth and stencil on Blackwell+

- nak: Don’t se .yld or .reuse_mask on Blackwell+

- nak: I/O offsets are unsigned when combined with RZ

- nvk: Pass the pipe_format to copy_remap_format()

- nak: Surface handles are not allowed to be rZ

- nak: Encode ureg handle sources for surface ops on Blackwell

- ci: Bump libwayland to 1.24.0

- ci: Build weston 14.0.1 from source

- ci: Add a weston.ini

- ci: Upgrade XWayland to 24.1.8

- zink: Clean up file descriptor closing in export_dmabuf_semaphore()

- zink: Add a resource_get_dma_buf() helper

- glx: Drop LIBGL_DRI3_DISABLE

- zink/kopper: Don’t recycle unused acquire semaphores

- docs: Improve the docs for LIBGL_KOPPER_DRI2

- loader: Report DRI_PRIME errors earlier

- kopper: Dead code get_image() and get_image_shm()

- egl,glx,kopper: Switch back to DRIkopperLoaderExtension::GetDrawableInfo

- egl: Add a shared kopper_pbuffer_loader_extension

- egl/x11: Stop mixing kopper and swrast extensions

- egl/x11: Always select Zink when requested

- egl/x11: Move the multibuffers check into dri2_initialize_x11()

- egl/x11: Rework LIBGL_KOPPER_DRI2 checks

- egl/x11: Only use kopper vtables when kopper is enabled

- egl/x11: Add a separate dri2_initialize_x11_kopper helper

- egl/wayland: Move kopper higher up the file

- egl/wayland: Only use kopper calbacks if kopper is enabled

- egl/wayland: Use the DRM path for Zink when !ForceSoftware

- egl/wayland: Delete the kopper checks from the kopper paths

- egl/surfaceless: Select kopper based on dri2_dpy->kopper

- egl: Rename dri2_detect_swrast() and also detect kopper

- egl: Choose kopper based on driver name rather than Options.Zink

- egl/x11: Allow the loader to choose zink

- gallium/dri3: Drop loader_dri3_buffer::size

- vulkan/wsi/x11: Refuse to connect to thread-unsafe Displays

- nak/sm20: TexDepBar::textures_left is 6 bits

- nvk: Kepler is now Vulkan 1.2 conformant

- nouveau: Import the Blackwell 3D class headers from NVIDIA

- meson: Require libX11 >= 1.8

- meson: Only build src/x11 if with_platform_x11

- x11: Move loader_x11.c/h to x11_dri3.c/h

- x11: Add an x11_xlib_display_is_thread_safe() helper

- glx: Refuse to initialize if Display is not thread-safe

- egl/x11: Refuse to initialize if Display isn’t thread-safe

- dri: Get rid of __DRIbackgroundCallableExtension

- nak: Wire up the mma predicate on Hopper+

- nir/instr_set: Rework tex instr hash/compare

- nvk: Bump the conformance version to 1.4.3

- nvk: Add an nvk_is_conformant() helper

- loader: Ignore NOUVEAU_USE_ZINK on Hopper+

- vulkan: Rename a bunch of vk_sync_timeline helpers

- vulkan: Hold a reference to pending vk_sync_timeline_points

- vulkan/wsi/x11: Handle VK_NOT_READY in AcquireNextImage()

- nvk: Blackwell is now Vulkan 1.4 conformant

Felix DeGrood (2):

- anv: Do conservative oversubscription of pages to 2MB

- intel/tools: add intel_measure.py

Feng Jiang (2):

- virgl: Make max_hw_atomic_counter_buffers less than PIPE_MAX_HW_ATOMIC_BUFFERS

- mesa/st: Fix potential array out-of-bounds in st_bind_hw_atomic_buffers()

Frank Binns (1):

- pvr: add missing refcounting for descriptor set layouts

GKraats (1):

- EGL: legacy-x11=dri2 should support hardware driver

Ganesh Belgur Ramachandra (1):

- radeonsi: change do_update_shaders boolean to a bitmask

Georg Lehmann (134):

- nir/opt_algebraic: generalize fmax(fadd(a, b), 0.0) to fsat by not requiring fneg

- nir/opt_algebraic: optimize fmax(ffma(a, b, c), 0.0) to fsat

- nir/opt_algebraic: turn exact fmin(1.0, a) into fsat if a is not NaN and not negative

- nir: add range analysis for ffmaz

- nir: add is_a_number analysis for ffma

- nir: improve fadd is_a_number analysis by using the range

- nir/opt_algebraic: disable fsat(a + 1.0) opt if a can be NaN

- aco: set opsel_hi to 1 for WMMA

- nir,amd: add neg_lo/hi modifiers to cmat_matmul_amd

- radv: apply fneg/fabs modifiers to wmma

- aco/insert_NOPs: allow WMMA with constant C matrix

- aco/isel: create WMMA with constant C matrix if possible

- aco/insert_exec: only restore wqm mask after control flow if necessary

- aco/insert_exec: reset temporary when recreating wqm mask from exact mask

- radv/nir/lower_cmat: use radv_nir_cmat_bits consistently

- radv/nir/lower_cmat: use cmat_mul instead of duplicating hw details for type conversion

- radv/nir/lower_cmat: tightly pack 8bit gfx11 acc matrix

- aco/insert_exec: disable empty quads when leaving divergent control, even if not top level

- radv,aco,nir: keep the A and B base type for cmat_muladd_amd

- aco: support bf16 wmma

- radv/nir/opt_cmat: support bfloat16

- radv/nir/lower_cmat: handle bf16 conversions

- nir: add an option to lower bf2f and f2bf

- ac/nir: set lower_bfloat16_conversions

- nir: add bfdot2_bfadd and use it for lowering bfdot if supported

- aco: support nir_op_bfdot2_bfadd

- ac/llvm: support nir_op_bfdot2_bfadd

- ac/nir: enable nir_op_bfdot2_bfadd

- radv/gfx12+: enable VK_KHR_shader_bfloat16

- aco/optimizer: remove label_vopc

- aco/optimizer: remove label_vop3p

- aco/optimizer: remove label_add_sub

- aco/optimizer: remove label_dpp8 and label_dpp16

- aco/optimizer: remove label_f2f32

- aco/optimizer: remove label_minmax

- aco/optimizer: remove label_vec

- aco/optimizer: remove label_split

- aco/optimizer: remove label_bitwise

- aco/optimizer: remove label_mul

- aco/optimizer: add semantic aliases for info.instr

- aco/optimizer: store parent_instr for all temps

- aco: replace novalidateir with novalidate debug option

- aco/optimizer: validate context data

- aco/optimizer: apply f2f32 without label_usedef

- aco/optimizer: label p_extract as usedef

- aco/optimizer: apply dpp without label_usedef

- aco/optimizer: create fma without label_usedef

- aco/optimizer: remove label_usedef

- aco/optimizer: remove instr_usedef_labels completely

- gallium: remove left over clover files

- nir/opt_algebraic: some bitfield_select optimizations

- radeonsi: always lower alu bit sizes

- aco: add type information for operands/definitions

- aco: swap operands without instructions

- aco/optimizer: optimize packed fneg with negative constant

- aco/optimizer: only use get_operand_size for alu

- aco: replace get_operand_size with get_operand_type

- aco: don’t use constant_bits when not applying constants

- aco: assume sram ecc is enabled on Vega20

- radeonsi: remove unscaled poly offset support

- zink: remove unscaled poly offset support

- r600: remove unscaled poly offset support

- nvc0: remove unscaled poly offset support

- gallium: remove polygon_offset_units_unscaled pipe cap

- gallium: remove tgsi_div pipe cap

- docs/gallium: remove some nine mentions

- aco: clamp exponent of 16bit ldexp

- radv: expose scalarBlockLayout on GFX6

- nir/opt_if: don’t replace constant uses with other uniform values

- nir/opt_if: limit rewrite_uniform_uses iand recursion

- radv: don’t accidentally expose samplerFilterMinmax through Vulkan 1.2

- aco: do not use v_cvt_pk_u8_f32 for f2u8

- aco: remove p_v_cvt_pk_u8_f32

- aco: add a readme entry for v_pk_cvt_u8_f32

- spirv: use feq for OpIsInf

- vulkan: update headers/xml for 1.4.318

- radv/nir/lower_cmat: use common matrix layout on gfx12

- nir/opt_intrinsic: fix inclusive scan rewrite with multiple uses

- aco: allow nir divergence to be printed again

- radv: dump NIR for executable info after nir_to_asm

- aco: optimize boolean phi with empty else block

- compiler: add float8 glsl types

- util: add float8 conversion functions

- nir: add float8 conversion opcodes

- spirv: vtn_has_decoration helper

- spirv,nir: emit saturating float8 cmat convert

- spirv: support float8 conversions

- spirv: create float8 types

- spirv: support float8 spec constant op

- spirv: support float8 capabilities

- aco: emit float8 wmma

- aco/lower_to_hw: support saturating fp8 conversions

- aco: select fp32 to float8 conversions

- nir,aco: optimize FP16_OFVL pattern created by vkd3d-proton

- aco/isel: fix get_alu_src with 8bit vec2 source

- aco: select float8 to fp32 conversions

- radv: vectorize float8 conversions

- radv/nir/lower_cmat: handle float8 conversions

- radv: expose VK_EXT_shader_float8

- nir: add cmat_transpose

- spirv: implement CooperativeMatrixConversionsNV

- radv/nir/lower_cmat: implement use conversions/transpose

- radv: advertise VK_NV_cooperative_matrix2/cooperativeMatrixConversions behind an env var

- radv/ci: test VK_NV_cooperative_matrix2

- nir/loop_analyze: always consider comparisions between induction var and constant free

- nir/loop_analyze: handle vector selections properly

- nir/loop_analyze: consider movs/vecs free

- radv/nir/lower_cmat: fix gfx11 B->ACC conversion

- radv/nir/lower_cmat: share cmat_load/cmat_store code

- radv/nir/lower_cmat: set optimal load/store alignment

- radv/nir/lower_cmat: use nir_src_as_deref

- nir/shrink_vectors: shrink larger vectors too

- nir/opt_shrink_vectors: also split vecs into distinct smaller vecs if possible

- radv: keep fp8 conversions vectorized

- aco/optimizer: generalize p_create_vector of split vector opt

- nir/opt_sink: don’t assume moving conversion can’t increase register pressure

- nir,radv: add an option to not move 8/16bit vecs

- nir/opt_algebraic: optimize 16bit vec2 comparison followed by b2i16 using usub_sat

- aco/isel: implement 16bit vec2 shifts

- aco: remove unused swap_srcs from emit_vop3p_instruction

- aco/vn: remove dead instructions early

- radv/nir/lower_cmat: use explicit shift when calculating gfx12 wave64 layout

- aco: add a dedicated pass for better float MODE insertion

- aco: only insert fp mode when needed

- ac/llvm: support vec2 extract

- ac/nir: lower uniform extract_i8/u8 to 32bit

- aco: vectorize 16bit extracts

- aco: vectorize conversions from 8bit to 16bit

- radv/nir/lower_cmat: use v_permlanex16_b32 instead of ds_swizzle_b32 for GFX11 ACC->B

- radv/nir/lower_cmat: convert matrix use in smaller type

- nir,aco: add byte_perm_amd

- radv/nir/lower_cmat: vectorize GFX11 ACC -> B conversion

- radv/nir/lower_cmat: vectorize GFX11 B -> ACC conversion

- nir/opt_remove_phis: skip unreachable phis

Gert Wollny (6):

- r600/sfn: dump the lowered shader when translation fails

- mesa/st: Re-instate test for shader_clock cap

- r600: Correct nir_indirect_supported_mask

- r600: remove the use of separate nir options for fs

- r600/sfn: Add support for indirect VS input read

- r600/sfn: catch remaining indirect inputs when lowering GS input arrays

Gorazd Sumkovski (1):

- panfrost: Fix incorrect condition in assert

Guilherme Gallo (34):

- ci: Extract target job handling in CI monitor script

- bin/ci: crnm: Improve job enabling robustness

- bin/ci: crnm: Improve timer display formatting

- bin/ci: crnm: Fix job duration calculation

- ci: bump apitrace version

- ci: Update build-apitrace.sh header with the right tag

- ci: Update setup-rootfs.sh for test-* containers

- ci: Keep important packages for rootfs

- ci: Add rootfs export script

- ci/lava: Improve timeout estimation logic for case/suite runs

- ci/lava: Parametrize message burst length on unit tests

- ci/lava: make overlay->compression optional

- bin/ci: crnm: Sanitize n_colums value

- ci/panfrost: Reuse file list YAML anchors

- ci/build: Remove CPP_ARGS var duplication

- ci/lava: SSH tweaks

- ci/android: Add gitlab section for logs uploads

- ci/android: disable errexit in trap function

- ci/android: reduce launch_cvd memory limit to 4GB by default

- ci/lava: Fix type hint errors in GitlabSection

- ci/lava: Style fixes in test_lava_log

- ci/lava: Don’t fail if the section times mismatches

- ci/lava: Update image tag to apply the changes

- ci/turnip: Update a couple of flaky tests on a660-vk

- ci: Simplify filter_env_vars using indirect expansion

- ci/lava: Avoid eval when generating env script

- ci/android: export container for DUTs

- ci/virtio: Add an Android Venus job on Intel Comet Lake

- ci/android: Store stripped CTS on S3

- ci/android: Disable zipbomb detection for CTS

- ci/android: Use structured tag for Android CTS version

- ci/android: Add a job to run CTS on Intel CML

- ci/android: Move ANDROID_CTS_MODULES to build script

- ci/android: Add dEQP module for CML cuttlefish test

Gurchetan Singh (30):

- gfxstream: make sure by default descriptor is negative

- gfxstream: add VulkanMapper

- gfxstream: get rid of logspam in virtualized case

- gfxstream: fix missing include

- gfxstream: fix suballocation logic using u_mm

- gfxstream: add virgl_hw.h in VirtGpu.h header

- gfxstream: fix opening virtgpu DRM

- gfxstream: fix virtio-gpu on Goldfish interactions

- subprojects: fix missing space between colon and license string

- subprojects: update quote to 1.0.35

- subprojects: update syn to 2.0.87

- subprojects: add more syn features

- subprojects: add cfg-if

- subprojects: add bitflags

- subprojects: add libc

- subprojects: add errno

- subprojects: add linux-raw-sys

- subprojects: add rustix

- subprojects: add log

- subprojects: add thiserror

- subprojects: add remain

- subprojects: add zerocopy

- mesa: import mesa3d_util

- mesa: import mesa3d_protocols

- mesa: import virtgpu kumquat

- mesa: import virtgpu_kumquat_ffi

- mesa: add option to enable virtgpu_kumquat FFI for gfxstream

- gfxstream: proper depedendences in non virtgpu-kumquat case

- util: rust: update to rustix 1.0.7

- mesa: subprojects: remove linux-raw-sys backend and use libc

Han, Szu Chih (2):

- amd/vpelib: add VPE_TF_SRGB

- amd/vpelib: add TF_BT709

Hans-Kristian Arntzen (3):

- radv: Consider that DGC might need shader reads of predicated data.

- radv: Timestamps are not valid on dedicated sparse queue.

- ac/nir: Avoid 0/0 when computing texel buffer size on Polaris.

Hoe Hao Cheng (9):

- zink: fix win32 detection in zink_device_info

- zink: make zink_device_info look for KHR versions of promoted exts

- zink: apply core functions to extension functions

- zink: apply EXT-suffixed functions to their unsuffixed counterpart

- zink/codegen: add indentation to the mako templates

- zink/codegen: support double-loading dynamic properties arrays

- zink: remove fixup_driver_props

- zink/codegen: check for core promotion using the latest registry entry

- zink/codegen: init properties struct fully for double-loaded extensions

Hyunjun Ko (9):

- vulkan/video: Fix wrong parsing for H265 decoding

- anv: Set tc/beta offset according to the flag from PPS.

- anv: Always allocate cdf tables when independent profiles provided

- anv: Allocate MV buffers enough for AV1 decoding.

- anv: Fix to set CDEF filter flag correctly.

- intel/genxml: fix HCP_VP9 commands

- anv: add default vp9 tables from FFMpeg and intel-vaapi-driver

- anv: Initial support for VP9 decoding

- anv: enable the KHR_video_decode_vp9 extension

Iago Toral Quiroga (4):

- frontend/dri: don’t call set_damage_region with a null resource

- v3d: fix incorrect resource unref

- broadcom/compiler: handle moving last ubo load in the block correctly

- v3dv: switch to using nir_intrinsic_load_input_attachment_coord

Ian Romanick (19):

- brw/algebraic: Greatly simplify brw_opt_constant_fold_instruction

- brw/cmod: Delete some stale comment text

- brw/algebraic: Convert some NOT to MOV

- brw/cmod: Remove special handling of NOT

- brw/cmod: Fix some errors when propagating from CMP to ADD.SAT

- brw/cmod: Don’t propagate from CMP to possible Inf + (-Inf)

- brw/cmod: Allow integer CMP to ADD propagation only for Z and NZ

- brw/reg_allocate: Optimize spill offset calculation using more SIMD8

- brw/reg_allocate: Optimize spill offset calculation using integer MAD

- nir/algebraic: Optimize some open-coded extract_i8

- nir/algebraic: Generalize an existing bfi(a, 0, …) pattern

- brw: Fully write temporary destinations

- brw/nir: Use nir_opt_reassociate_matrix_mul

- brw: Only apply GRF 127 send workaround to Gfx9

- brw/reg_allocate: Require SIMD32 for destination / source interference on Xe2

- brw/reg_allocate: Only add interference for the source with the hazard

- brw/reg_allocate: Adjust source / destination hazard conditions for broadcast

- brw/reg_allocate: Check source / destination hazard for all larger SIMD

- nir/print: Don’t segfault checking has_debug_info

Icenowy Zheng (4):

- zink: Do not use demote on IMG blobs

- zink: don’t assert geometryShader for IMG proprietary driver

- zink: reject IMG blob < 24.1@6554834 unless enforced

- Revert “zink: reject Imagination proprietary driver w/o geometryShader”

Iván Briano (14):

- anv: expose promoted KHR_depth_clamp_zero_one

- brw: make HALT instruction act as barrier in new CSE pass

- anv, hasvk: ignore QFOT if both src and dst queue families are equal

- anv: vkCmdTraceRays* are not covered by conditional rendering

- intel/genxml: update some instructions for Xe2+

- brw: implement load_input_vertex intrinsic

- brw: check if the FS needs vertex_attributes_bypass to be set

- brw/anv: add provoking vertex to fs_msaa_flags

- brw: add lowering passes for FS barycentric inputs

- anv: set HW state for fragment shader barycentric

- anv: enable VK_KHR_fragment_shader_barycentric

- anv: don’t report custom sample locations for sample count 1

- anv: move view_usage check to before setting the protected bit on it

- intel: Re-disable ray tracing on 32 bits

James Price (1):

- spirv: Fix cooperative matrix in OpVariable initializer

Janne Grunau (7):

- venus: Do not use instance pointer before NULL check

- venus: virtgpu: Require stable wire format

- asahi: build asahi_clc for -Dtools=asahi

- asahi: Drop unnecessary idep_mesaclc dependency

- panfrost: build panfrost_compile for -Dtools=panfrost

- ci: Switch cross-builds to ‘-D tools=panfrost’

- gallium/dril: Add entrypoint for apple (asahi) kms driver

Jason Macnak (12):

- gfxstream: Update to new logging

- gfxstream: Update iostream header

- gfxstream: Update codegen to use gfxstream_common_base

- gfxstream: Update codegen after many aemu -> gfxstream changes

- gfxstream: Update codegen for aemu -> gfxstream stream interface

- gfxstream: Remove old include

- gfxstream: Update gfxstreaml vk xml location

- gfxstream: Update GfxApiLogger namespace and header file

- gfxstream: Update codegen license

- gfxstream: use VkSnapshotApiCallHandle outside of VkReconstruction

- gfxstream: Fix strict aliasing violations in VkDecoder

- gfxstream: Update snapshot decoder to handle imageless framebuffer

Jayanth Vutukuri (1):

- Add libzstd static library.

Jesse Natalie (21):

- microsoft/compiler: Force load_output => undef in tess_ctrl main func

- d3d12: Add tc memory throttles

- d3d12: Minor fixes to residency algorithm when eviction is needed

- winsys/d3d12: Support no-alpha formats through the DXGI swapchain path

- d3d12: Handle sampler view creation on B8G8R8X8

- d3d12: Handle a null threaded context

- nir_gather_output_deps: Fix incorrect enum in switch

- formats: Cast enum to int before shifting

- microsoft/compiler: Cast one enum to another instead of to int to resolve warning

- d3d12: Optimize redundant flushes

- d3d12: Fix ‘surface conversion’ path for RTVs

- microsoft/compiler: Fix PSV0 for validator 1.8

- microsoft/compiler: Clamp bias to DXIL valid range

- d3d12: Fail-fast on PSO creation failures

- microsoft/compiler: Separate ‘advanced texture ops’ from SM6.7

- dzn: Roll up initialization failure in dzn_meta_init

- d3d12: Store fence FD type in the fence

- d3d12: Fix video fence lifetime issues

- gallium/video: Frontends separate in_fence and out_fence

- mediafoundation: Fix fence handling

- mediafoundation: Use C++ brace initialization instead of C-style

Jesse.Zhang (1):

- winsys/amdgpu: Add support for queue priority in Mesa

Jianxun Zhang (14):

- intel/dev: Differentiate displayable PAT entry of compression (xe2)

- iris: New compressed heaps for scanout buffers (xe2)

- anv: Use different PAT entries for compressed resources

- isl: Add Xe2 CCS modifiers (xe2)

- iris: Align size of compressed scanout buffers to 64KB on BMG (xe2)

- iris: Add new modifiers into code (xe2)

- iris: Choose PAT entry on imported buffers (xe2)

- iris: Update conditions when flushing resource (xe2)

- iris: Refactor function iris_flush_resource

- iris: Enable Xe2 modifier (xe2)

- anv: Treat imported compressed buffers as displayable (xe2)

- anv: Align size of compressed scanout buffers to 64KB on BMG (xe2)

- anv: Don’t choose compression modifier when aux is disabled

- anv: Enable compression on CCS modifiers (xe2)

Job Noorman (61):

- nir/opt_shrink_vectors: enable for load_ubo_vec4

- ir3: use opt_shrink_vectors

- ir3/isa: add nop encoding for bary.f/flat.b

- ir3: don’t use VS input regs for binning variant

- nir/lower_io_to_vector: remove can_read_output assert

- tu: scalarize IO before linking

- ir3: calculate sstall/systall across blocks

- ir3: add mergedregs to ir3_compiler

- ir3/legalize: add cycle to ir3_legalize_state

- ir3/legalize: normalize nop state at block start

- ir3/legalize: remove ctx argument from delay_calc/update

- ir3/legalize: extract ir3_required_sync_flags helper

- ir3/legalize: extract sync_update helper

- ir3/legalize: add ir3_init_legalize_state helper

- ir3/legalize: extract ir3_merge_pred_legalize_states helper

- ir3/legalize: remove unused parameter from delay_update

- ir3/legalize: add ir3_update_legalize_state helper

- ir3/legalize: add syncs based on previous instr to sync_update

- ir3/legalize: apply ss/sy to state in sync_update

- ir3/legalize: make ir3_legalize_state and helpers public

- ir3/postsched: use legalize state for delay/sync calc

- freedreno/ci: update expectations

- freedreno/drm-shim: add support for MSM_PARAM_UCHE_TRAP_BASE

- ir3: don’t free constant_data after assembling

- Revert “ir3: optimize SSBO offset shifts for nir_opt_offsets”

- ir3: don’t vectorize 8bit SSBO accesses

- ir3/lower_io_offsets: set progress when scalarizing UAV loads

- ir3: optimize more before opt_preamble

- ir3: move collect/split helpers to ir3.{c,h}

- ir3: add support for collects in ir3_get_src_shared

- ir3: flatten nested collects

- ir3: add helpers to handle 64b values

- ir3: add ir3_split_off_scalar helper

- ir3/lower_preamble: add support for 64b values

- ir3: add support for u2u64

- ir3: don’t vectorize 64b values

- ir3: use ir3_64b helpers where possible

- ir3: ingest global addresses as 64b values from NIR

- nir: remove unused global_atomic(_swap)_ir3 intrinsics

- ir3: enable nir_opt_uniform_subgroup

- freedreno/decode: don’t count alias regs for GPR stats

- ir3/legalize: don’t force (ss) after predt

- ir3/legalize: propagate force_ss/sy across blocks

- ir3/legalize: apply initial GS/TCS sync in legalize

- ir3: add helper to apply half shared mov quirk

- ir3: support half regs for read_{first,cond,getlast}

- ir3/a7xx: disable half shared mov quirk

- ir3/parser: add uinteger helper

- ir3/isa: add isaspec definition for movs

- ir3: make backend aware of movs

- ir3: add codegen for movs

- ir3/cf: add support for movs

- ir3/isa: ignore bit 54 in alias encoding

- ir3/merge_regs: fix merge set alignment check

- ir3: add subreg move optimization

- ir3/legalize: emit predication quirk nops in next block

- ir3/legalize: merge predication quirk nops with existing nops

- mailmap,bin/people.csv: fix my preferred email address

- freedreno/computerator: add support for UBOs

- ir3/legalize: prevent infinite loop when inserting (ss)nop

- nir/opt_uniform_subgroup: use ballot_bit_count

John Anthony (10):

- panvk: Enable VK_EXT_direct_mode_display

- panvk: fix maxInlineUniformTotalSize

- panvk: add panvk_get_iub_desc_count and panvk_get_iub_size

- panvk: fix allocated size for sets with variable count iub

- panvk: use variable count when initializing iub buffer descriptor

- panvk: count iubs correctly when checking if layout is supported

- panvk: handle 0 count for vdc when checking if layout is supported

- panvk: report the maximum supported size for a variable count iub

- pan/lib: Add some shader core properties to model table

- panvk: Enable VK_ARM_shader_core_properties

Jonathan Gray (3):

- vulkan: add missing include for FALLTHROUGH

- util: fix OpenBSD/powerpc64 build

- intel/dev: update BMG device names

Jordan Justen (9):

- intel/dev: Add BMG PCI IDs 0xe220-0xe223

- intel/dev: Add PTL PCI IDs 0xb084-0xb087

- intel/dev: Update names for BMG G31 PCI IDs

- anv: Set Xe3 as supported

- intel/dev: Enable PTL PCI IDs (without INTEL_FORCE_PROBE)

- intel/dev: Add WCL platform enum

- intel/dev/mesa_defs.json: Add WCL WA entries

- intel/dev: Add WCL device info

- intel/dev: Add WCL PCI IDs

Jose Maria Casanova Crespo (22):

- vc4: Remove offset from vc4_surface

- vc4: Remove tiling from vc4_surface

- vc4: Stop calling deprecated util_framebuffer_init

- vc4: Remove struct vc4_surface and create/destroy surface functions

- v3d: Remove swap_rb logic from v3d_surface

- v3d: Remove rt_format from v3d_surface

- v3d: Remove never used offset from v3d_surface

- v3d: Remove tiling from v3d_surface

- v3d: Remove padded_height_of_output_image_in_uif_blocks from v3d_surface

- v3d: Remove internal_type and internal_bpp from v3d_surface

- v3d: Remove separate_stencil from v3d_surface

- v3d: Stop calling deprecated util_framebuffer_init

- v3d: Remove struct v3d_surface and create/destroy surface functions

- v3d: Add missing newline char on perf debug message

- v3d: Only apply TLB load invalidation on first job after FB state update

- v3d: Force job submit if the number of attached BOs is over 2048

- v3d: Rename MAX_JOB_SCISSORS to V3D_JOB_MAX_SCISSORS

- v3d: Avoid fast TLB blit if reused job doesn’t store the color buffer

- v3d: avoid submit of supertile coordinates on jobs without rasterization

- v3d: fix support for no buffer object bound

- v3d: Fix depth resource invalidation with separate_stencil

- v3dv: Do not increase TFU READAHEAD for imported buffers size

Joshua Duong (1):

- gfxstream: VkDecoder: break from seqno logic when puid dies.

José Roberto de Souza (49):

- iris: Fix IRIS_HEAP_SYSTEM_MEMORY_CACHED_COHERENT slab parent allocation

- intel: Program XY_FAST_COLOR_BLT::Destination Mocs for gfx12

- intel: Fix the MOCS values in XY_FAST_COLOR_BLT for Xe2+

- intel: Fix the MOCS values in XY_BLOCK_COPY_BLT for Xe2+

- intel: Add has_partial_mmap_offset to intel_device_info

- gallium: Remove pb_buffer.h include from pb_slab.h

- util: Move pb_slab from gallium to util

- anv: Export anv_bo_is_small_heap()

- anv: Move VMA alignment requirements to its own function

- anv: Add the base infrastructure to support memory pool

- anv: Implement anv_slab_bo and enable memory pool

- anv: Add support for ANV_BO_ALLOC_AUX_CCS in anv_slab_bo

- anv: Add support for ANV_BO_ALLOC_DESCRIPTOR_POOL in anv_slab_bo

- anv: Add support for ANV_BO_ALLOC_DYNAMIC_VISIBLE_POOL in anv_slab_bo

- anv: Skip anv_bo_pool if memory pool is enabled

- anv: Add support for batch buffers in anv_slab_bo in Xe KMD

- anv: Add support for batch buffers in anv_slab_bo in i915

- anv: Remove useless if block

- anv: Always grow fixed address pools by 2MB in platforms that there is a performance gain

- anv: Align size of bos larger than 1MB to 64k to enable 64k pages

- iris: Remove iris_slab_free cast

- anv: Fix assert failure in discrete GPUs when allocating a LMEM+SMEM slab parent

- anv: Remove ANV_BO_ALLOC_HOST_CACHED from ANV_BO_ALLOC_MAPPED assert() on anv_device_alloc_bo()

- intel/tools: Fix batch buffer decoder

- anv: Reduce memory pool usage in MTL and ARL

- anv: Implement missing part of Wa_1604061319

- anv: Enable preemption due 3DPRIMITIVE in GFX 12

- iris: Restrict platforms that needs Wa_1604061319

- anv: Drop ‘#if GFX_VERx10 >= 125’ inside of ‘#if GFX_VERx10 >= 125’

- anv: Remove a ‘#if GFX_VER >= 30’ block inside of a else of ‘#if GFX_VERx10 >= 125’

- intel: Return PTL stepping

- intel/tools: Replace error_decode_xe_read_hw_sp_or_ctx_line() by a more generic function

- intel/tools: Rename and better detect topic changes

- intel/tools: Skip dump of binaries in unknown sections

- Revert “anv: Enable preemption due 3DPRIMITIVE in GFX 12”

- intel/common: Add function to compute optimal compute engine async thread limits

- intel/common: Use as much as possible spec recommended values for compute engine async thread limits

- iris: Emit STATE_COMPUTE_MODE before COMPUTE_WALKER when new async compute limits are needed

- blorp: Emit STATE_COMPUTE_MODE before COMPUTE_WALKER

- anv: Emit STATE_COMPUTE_MODE before COMPUTE_WALKER when new async compute limits are needed

- anv: Read the correct register for aux table invalidation when in GPGPU mode in render engine

- anv: Flush before invalidate aux map in copy and video engines

- anv: Do not emit batch_emit_fast_color_dummy_blit() for video engine

- anv: Reduce compiled code for Wa_16018063123

- iris: Reduce compiled code for Wa_16018063123

- anv: Decode and print async submit batch when debug flag is set

- iris: Program DispatchWalkOrder and ThreadGroupBatchSize with optimized values for regular computer walkers

- intel/blorp: Program DispatchWalkOrder and ThreadGroupBatchSize with optimized values for regular computer walkers

- anv: Program DispatchWalkOrder and ThreadGroupBatchSize with optimized values for regular computer walkers

Juan A. Suarez Romero (24):

- v3d/vc4/ci: update fraction and parallel values

- v3d/vc4/ci: Add -gl suffix to the GL suite names

- Revert “ci: disable Igalia’s farm”

- ci/baremetal: fix ubsan gl target

- broadcom/ci: update expected results

- v3d/v3dv/ci: update expected results

- broadcom/ci: update test expected results

- v3dv: free indirect CSD job with queue cpu

- gallium/util: fix num primitives for line loops

- broadcom/v3dv: skip implicit synchronization tests

- broadcom/ci: add skqp testing

- broadcom/ci: update expected test results

- vc4: return progress on custom nir lowering

- vc4: don’t use deprecated NIR_PASS_V macro

- v3d/compiler: don’t use deprecated NIR_PASS_V macro

- v3dv: don’t use deprecated NIR_PASS_V macro

- v3d,v3dv: set max supertiles to 256

- v3dv: consider render area when configuring supertiles

- vc4,v3d: update expected results

- vc4: free RA interference graph on failure

- vc4/ci: disable skqp job

- broadcom/ci: update expected results

- broadcom/ci: unlock some CI-Tron jobs

- docs/features: GL_ARB_timer_query implemented for v3d

Julia Zhang (1):

- radeonsi: small fixes of radeonsi renderstage

Juston Li (3):

- driconf: enable custom_border_colors_without_format for ANGLE-on-anv

- anv/android: refactor anb resolve to fix align assertion

- anv: fix uninitialized mutex lock in anv_slab_bo_deinit()

K900 (1):

- gfxstream: fix build on 32-bit

Kai Wasserbäch (1):

- fix(FTBFS): clc: switch to new non-owned `TargetOptions` for LLVM 21

Karmjit Mahil (6):

- tu: Fix segfault in fail_submit KGSL path

- anv,tu: Bypass RMV pcie_family_id check

- tu: Add “check_cmd_buffer_status” debug option

- tu,freedreno: Add pkt_field_{get,set} helper macro

- tu: Use A2D for float16 formats

- tu: Remove handling of float16 in the 3D blit path

Karol Herbst (132):

- ac/llvm: use mul24 intrinsics

- rusticl/device: fix panic when disabling 3D image write support

- rusticl: allow packagers to enable radeonsi by default

- nir_lower_mem_access_bit_sizes: fix negative chunk offsets

- nak: fix handling of delays > 15

- r600: fix r600_buffer_from_user_memory for rusticl

- r600: remove all clover related code

- radeonsi: remove more clover related code

- nv50: move pipe_grid_info::input into the driver

- nvc0: remove support for pipe_grid_info::input

- gallium: remove pipe_binary_program_header

- gallium: remove pipe_compute_caps::max_block_size_clover

- gallium: remove pipe_compute_caps::max_threads_per_block_clover

- gallium: remove pipe_compute_caps::ir_target

- gallium: remove pipe_compute_caps::images_supported

- gallium: remove pipe_compute_caps::max_private_size

- gallium: remove pipe_compute_caps::max_input_size

- gallium: remove pipe_compute_state::req_input_mem

- gallium: remove pipe_context::set_compute_resources and PIPE_BIND_COMPUTE_RESOURCE

- gallium: remove pipe_grid_info::pc and PIPE_SHADER_IR_NATIVE

- gallium: remove pipe_grid_info::input

- iris: parse global bindings for every gen

- iris/xe: fix compute shader start address

- iris/xe: take the grids variable_shared_mem into account

- nir: add nir_opt_algebraic_integer_promotion

- radeonsi: fix variable_shared_size assert in si_switch_compute_shader

- nir: fix use-after-free on function parameter names

- vtn: fix use-after-free on function parameter names

- frontend/dri: add wrapper around pipe_loader_get_driinfo_xml

- glx,egl: use driGetDriInfoXML

- glx,egl: drop libpipe_loader_dynamic dependency

- pipe-loader: remove libpipe_loader_dynamic

- gallium: remove dynamic pipe-loader

- clc: wire up cl_khr_kernel_clock

- rusticl: generate bindings for llvm version macros

- rusticl: support cl_khr_kernel_clock

- include: sync CL headers

- gallium: add fixed address resource API

- gallium: new VM interfaces for SVM

- zink: set unordered_read/write after buffer_barrier in set_global_binding

- zink: implement resource_get_address

- lp: implement resource_get_address

- rusticl/mesa: wrap new VM interfaces

- rusticl/mesa: wrap new VM interfaces SVM edition

- rusticl/mesa: add util_vma_heap wrapper

- rusticl/kernel: rework validation in clSetKernelExecInfo

- rusticl: implement cl_ext_buffer_device_address

- rusticl: move SVM allocation into core

- rusticl/kernel: add an SVM kernel argument value

- rusticl: add support for coarse-grain buffer SVM

- rusticl: add memory debugging

- include: remove C++ OpenCL headers

- llvmpipe remove llvmpipe_screen::allow_cl

- rusticl/kernel: implement CL_INVALID_ARG_VALUE for image args in clSetKernelArg

- rusticl/memory: properly set pipe_image_view::access

- rusticl/kernel: rework unsafe block inside clSetKernelArg

- ac/nir: fix unaligned single component load/stores

- rusticl: fix compilation on non Linux systems

- rusticl: move unmap out of debug_assert_eq statement

- rusticl: check the returned pointer of mmap

- freedreno/ci: add CL fp16 skips

- util/u_printf: support printing fp16 values

- clc: support fp16 spec constants

- vtn/opencl: support fp16 builtins

- nir/scale_fdiv: handle fp16 fdiv

- rusticl: enable proper fp16 support

- clc: use new createTargetMachine overload with llvm-21

- clc: fix DiagnosticOptions related build failure with llvm-21

- rusticl/mesa: catch invalid use of resource_assign_vma in debug builds

- iris: implement resource_get_address

- iris: implement SVM interfaces

- include: update CL headers

- rusticl/device: refactor Device::new

- rusticl: implement cl_khr_spirv_queries

- ac/llvm: fix bitfield ops

- rusticl: implement cl_khr_priority_hints

- rusticl/image: fix sub-buffer images

- rusticl/image: enable sRGB support

- vtn: mark BitInstructions cap as supported

- clc: support cl_khr_extended_bit_ops

- llvmpipe: more bitfield_extract lowering

- agx: enable bitfield lowering for cl_khr_extended_bit_ops

- ir3: enable bitfield lowering for cl_khr_extended_bit_ops

- panfrost: lower bitfield_extract8|16

- r600: lower bitfield_extract8|16

- v3d: lower bitfield_extract8|16

- zink: check for VK_KHR_maintenance9

- zink: lower bitfield operations without maintenance9

- rusticl: support cl_khr_extended_bit_ops

- include: sync OpenCL headers

- rusticl/icd: use default value for cl_icd_dispatch

- rusticl: cl_khr_icd 2.0.0

- radeosi: assert addresses are not NULL in a couple of places

- radeonsi: implement resource_get_address

- radeonsi: implement SVM interfaces

- rusticl: allow packagers to enable freedreno by default

- rusticl/queue: signal events directly on panics

- rusticl/event: change Queue argument to Context in EventSig

- rusticl/event: check the queue timed to detect enabled profiling in call

- rusticl/event: convert queue to Weak reference

- rusticl/queue: do not block when dropping a queue

- rusticl/queue: use let else statement when receiving new events

- rusticl/queue: reuse vector between queue iterations

- rusticl/queue: fix wrong_self_convention and needless_borrow clippy warnings

- clc: add support for cl_ext_image_unorm_int_2_101010

- rusticl/formats: support CL_UNORM_INT_101010_2

- rusticl/formats: support cl_ext_image_unorm_int_2_101010

- rusticl: use image_copy_buffer

- rusticl: reset VMA address of resource inside SVMAlloc::drop

- rusticl/mesa: add PipeResource::new_ref

- rusticl: drop Arc around PipeResource

- doc/features.txt: synchronize OpenCL extension list with official spec

- docs/features.txt: entirely rework OpenCL feature 2.x reporting

- nak: Provide our own callback to nir_lower_phis_to_scalar

- nak: stop lowering all phis to 32 bits.

- nak: keep phis vectorized if they fit into a register

- nv50,nvc0: Set the texture for 3D blitter surfaces

- nvc0: remove dead surface tracking code

- nouveau: move util_framebuffer_init into the driver

- nak: fix MMA latencies for Ampere

- nak: Add cooperative matrix lowering pass

- nak: support faster back to back latencies for MMA

- nvk: add support for 16x8x16 IMMA on Ampere+

- vtn/opencl: set exact on all ffmas and mads

- zink: disallow intensity buffer images

- zink: disable shader images for intensity formats

- rusticl/mem: relax flags validation for clGetSupportedImageFormats

- rusticl/queue: do not return event status errors on flush/finish

- zink: properly unbind sampler views with imported 2D resource

- rusticl/mesa: use pipe_sampler_view_reference

- rusticl/queue: clear shader images when destroying queues

- nv50: fully migrate away from util_framebuffer_init

Kenneth Graunke (5):

- nir: Add a new optimization for acquire/release atomics & barriers

- anv: Use the new nir_opt_acquire_release_barriers pass

- brw: Refactor copy propagation checks for EOT send restrictions

- brw: Fix units in copy propagation EOT restriction size calculation

- brw: Update copy propagation into EOT sends handling for Xe2 units

Kevin Chuang (4):

- intel/compiler: Use 24bits for hit_kind on Xe3+

- intel/compiler/rt: Calculate barycentrics on demand

- intel/bvh: Compile and adapt bvh shaders separately into Xe1/2 and Xe3+

- intel/bvh/debug: Adapt instance leaf dumping to support 64-bit RT

Konrad Dybcio (1):

- freedreno: Add initial A702 support

Konstantin Seurer (80):

- util: Add BITSET_EXTRACT

- vulkan: Add a vk_device parameter to get_encode_key

- vulkan: Add vk_ir_header::dst_leaf_node_offset

- ac: Add rt_version

- aco,nir: Add support for new GFX12 ray tracing instructions

- radv: Refactor create_bvh_descriptor

- radv/rra: Move gfx10_3 specific code to a new file

- radv/rra: Set rra_accel_struct_header::rtip_level

- radv/bvh: Document GFX12 BVH encoding

- radv/bvh: Add helpers for encoding

- radv: Use the BVH8 format on GFX12

- radv: Optimize the gfx12 encode shader

- lavapipe: Fix ray tracing position fetch with multiple geometries

- radv: Return VK_ERROR_INCOMPATIBLE_DRIVER for unsupported devices

- util: Add util_format_is_int64

- llvmpipe: Implement 64-bit image operations

- llvmpipe: Disable 64-bit integer formats for vertex fetch

- gallium: Handle 64bit textures in the SW clear fallback path

- lavapipe: Implement 64-bit image clears

- lavapipe: Advertise VK_EXT_shader_image_atomic_int64

- llvmpipe: Handle nir_tex_src_min_lod

- lavapipe: Advertise shaderResourceMinLod

- lavapipe: Implement KHR_shader_quad_control

- lavapipe: Implement VK_EXT_fragment_shader_interlock

- gallivm/nir/aos: Remove left over debug print

- gallivm: Use divergent sources for more subgroup ops

- lavapipe/ci: Update expected vkd3d-proton fails

- vulkan: Introduce VK_BUILD_FLAG for specializing BVH build shaders

- vulkan: Add helpers for creating bvh build pipelines/layouts

- radv: Use build flags instead of defines

- vulkan: Add acceleration structure update keys

- radv: Use a specialized shader for in place updates

- radv: Refactor the update scratch layout code

- vulkan/bvh: Add type information for vk_bvh_geometry_data

- vulkan: Add more information to BVH update callbacks

- radv: Make radv_update_memory non-static

- radv: Use subgroup OPs for BVH updates on GFX12

- nir/print: Add a get_name helper

- nir/print: Use get_name for types

- nir: Print struct type declarations

- radv: Flush L2 on GFX12 when binding an update pipeline

- radv/bvh: Make sure the AABB is written before internal_ready_count

- radv/bvh: Remove some unused variables

- radv/bvh: Fix comment

- lavapipe: Fail device enumeration when DRAW_USE_LLVM=0 is set

- llvmpipe: Compile texture fetch functions on demand

- llvmpipe: Compile fewer unnecessary functions

- llvmpipe: Compile size query functions on demand

- llvmpipe: Make more texture state static with bindless

- llvmpipe: Reduce the size of lp_descriptor

- radv/bvh: Fix updating empty bvhs

- vulkan: Allow reserving scratch memory for encode passes

- vulkan: Move the build options to the accel struct header

- vulkan: Replace get_*_key with get_build_config

- vulkan: Remove bvh_state::leaf_node_size

- vulkan: Pass a structure to most BVH build callbacks

- spirv: Move the shader_call_data workaround above nir_validate_shader

- nir: Add nir_lower_halt_to_return

- gallivm: Implement demote and lower terminate in nir

- gallivm/nir/soa: Fix typo

- gallivm/nir/soa: Include helper invocations in first_active_invocation

- gallivm/nir/soa: Cast divergent->uniform at the consumer

- gallivm/nir/soa: Call lp_build_opt_nir

- ci: Update trace checksums

- lavapipe: Suspend conditional rendering around ray tracing dispatches

- lavapipe: Advertise VK_EXT_tooling_info support

- docs: Document some lavapipe extensions

- gallium: Add back pipe_rasterizer_state::offset_units_unscaled

- llvmpipe: Implement pipe_rasterizer_state::offset_units_unscaled

- llvmpipe: Improve depth bias rounding workaround

- lavapipe: Implement VK_EXT_depth_bias_control

- llvmpipe: Use the correct field to decide if coroutines are used

- lavapipe: Implement VK_KHR_workgroup_memory_explicit_layout

- vulkan/cmd_queue: Fix indentation a bit

- vulkan/cmd_queue: Free pNext

- ci/llvmpipe: Update expectations

- llvmpipe: Move allocation out of compile_sample_functions

- llvmpipe: Allocate some stuff on demand

- radv/rra/gfx10_3: Fix acceleration structure addresses

- radv: Initialize base IDs when doing a BVH update with src!=dst

Kovac, Krunoslav (2):

- amd/vpelib: Update comment and fix some code alignment issues.

- amd/vpelib: Fix CodeQL issues Pt1

Krunoslav Kovac (1):

- amd/vpelib: Remove RGBE_ALPHA

Lars-Ivar Hesselberg Simonsen (21):

- panfrost: Add pan_unpack to ForEachMacros

- pan/texture: Correctly handle slice stride for MSAA

- pan/texture: Set plane size to slice size

- pan/genxml/v10: Add minus1 mod for plane width/height

- pan/genxml/v12: Add minus1 mod for plane width/height

- pan/genxml/v13: Add minus1 mod for plane width/height

- pan/texture/v10+: Set width/height in the plane descs

- panvk/v9+: Set up limited texture descs for storage use

- panvk: Request resources during subqueue init

- panvk/v10+: Remove unnecessary alloc in dispatch_precomp

- panvk/v10+: Limit direct dispatch WLS allocation

- panvk/jm: Apply direct dispatch WLS instance limit

- panfrost: Apply direct dispatch WLS instance limit

- panvk: Fix unsupported LogicOp NOOP blending

- panvk: Add FS read support for PrimitiveID

- panvk: Skip barrier QFOT if src_qfi equals dst_qfi

- pan/genxml/v9+: Add support for NullDescriptor decode

- panvk/v10+: Implement nullDescriptor support

- panvk/v9+: Handle nullDescriptor for texture/image builtins

- panvk/v10+: Advertise nullDescriptor support

- panvk: Advertise VK_KHR_unified_image_layouts

Leder, Brendan Steve (1):

- amd/vpelib: Make BG gen stream idx adjustable

Lina Versace (3):

- anv: Assert that only external images have private bindings

- anv: Fix comment about external queue transitions

- anv: Enable VK_EXT_external_memory_acquire_unmodified

LingMan (4):

- entaviv/isa: Silence warnings about non snake case names

- meson: Streamline silencing of warnings in bindgen generated code

- rusticl: Initialize NIR option structs with default values

- docs/rusticl: Update documented version requirements for meson and bindgen

Lionel Landwerlin (101):

- intel: fixup a few debugging option checks

- anv: use companion batch for operations with HIZ/STC_CCS destination

- anv: update Wa_22019225126 check

- anv: add ability to mmap at offset

- anv: force fragment shader execution when occlusion queries are active

- intel: fix null render target setup logic

- anv: promote VK_EXT_robustness2 to VK_KHR_robustness2

- brw: add pre ray trace intrinsic moves

- compiler: add VARYING_BIT_CULL_PRIMITIVE

- compiler: add VARYING_BIT_PRIMITIVE_INDICES

- anv: remove tbimr workaround check

- anv: lower input vertices for TCS unconditionally

- brw: add helpers to check if a fragment shader execution is dynamic

- brw: store input_vertices on tcs_prog_data

- anv: switch to use the tcs_prog_data for dynamic input vertices

- anv: switch to brw helpers to figure out if a fragment is dynamic

- brw: improve VUE printout

- brw: add new helper to print out FS URB setup

- brw: move helper to brw_nir.c

- brw: use newer NIR constructs

- brw/nir: use a new intrinsic for fs_msaa_flag

- anv/brw: shrink FS varying payload

- anv: tidy up (CLIP|SBE)_MESH emission

- brw: use VARYING_BIT_* macros more

- brw: document some brw_wm_prog_data fields

- brw: fix brw_nir_move_interpolation_to_top

- anv/brw: use separate_shader to deduced MUE compaction

- brw/nir: add intrinsics to read attribute payload register indirectly

- brw: add documentation pointers to FS attribute layout

- intel: prepare VUE layout for more than 2 layouts

- intel: introduce new VUE layout for separate compiled shader with mesh

- anv/brw: handle pipeline libraries with mesh

- panvk/ci: add more flaky tests

- vulkan/runtime: store index of the push descriptor in pipeline layout

- vulkan/runtime: track dynamics descriptor in a set layout

- vulkan/runtime: fixup assert with link_geom_stages

- vulkan/runtime: add a multialloc variant for pipeline create

- anv: enable preemption setting on command/batch correctly

- anv: add a comment about Wa_14016820455

- anv/brw: stop turning load_push_constants into load_uniform

- hasvk/elk: stop turning load_push_constants into load_uniform

- anv: avoid 64bit atomics emulation on Xe2+

- anv: don’t use pipeline layout at descriptor bind

- radv: rename radv_lower_terminate_to_discard for wider use

- anv: add support for lower_terminate_to_discard workaround

- anv: workaround Sky: Children of the Light

- intel: remove GRL/intel-clc

- brw: don’t generate invalid instructions

- brw: fix brw_nir_fs_needs_null_rt helper

- nir/opt_algebraic: extend lowering for (i|u)bitfield_extract

- anv: fix pool allocation failure reporting

- brw: implement read without format lowering

- anv: add support for shaderStorageImageReadWithoutFormat through emulation

- anv: simplify RENDER_SURFACE_STATE parsing

- spirv: bump headers

- vulkan: dump headers/registry to 1.4.317

- ci: add intel format emulation testing

- brw: enable more lowering for bitfield manipulation at non 32bit sizes

- anv: allow device creation with no queue

- anv: implement VK_KHR_maintenance9

- anv: missing bit from maintenance9

- anv: handle REMAINING_LAYERS with 3D images & maintenance9

- docs/features: update anv support

- anv: fix valgrind warning

- anv: fix R64 format support reporting

- anv: pass image usage/flags to anv_get_image_format_features2

- anv: report color/storage features on YCbCr images with EXTENDED_USAGE

- ci/zink: add the same glx@glx-tfp flake on ADL

- ci/zink: add validation error

- anv: only use compressed memory types on Xe2+

- intel: fix monitor build dependencies

- nir/divergence: add missing intel intrinsics

- brw: print descriptor & extended descriptors

- intel: replace RANGE_BASE by BASE for uniform block loads

- nir: add new intel ssbo intrinsics

- nir/opt_offsets: add support for intel intrinsics

- brw: add new helper for immediate integer register with type

- isl: handle DISABLE_AUX in get_mcs_surf

- anv: fix clears on single aspect of YCbCr images

- anv: fix sampler hashing in set layouts

- intel/ci: document a couple of vkd3d failures

- brw: fix set_range on load_per_primitive_output

- brw: fix vertex attribute offset computation

- anv: make Wa_18019110168 deal with dynamic provoking vertex

- anv/brw: move Wa_18019110168 handling to backend

- brw: extract out attribute register remapping

- brw: store the remapping table for wa_18019110168 in constant data

- brw: move primitive_id_index field in fs_msaa

- brw: make a helper for vertex attribute offset computation

- brw: handle wa_18019110168 with independent shader compilation

- anv: add support for handling wa_18019110168 with gfx-libs

- brw: remove debug printf

- brw: fix non constant BTI accesses with offsets

- anv: rework embedded sampler hashing

- anv: do not rely on sampler objects for pipeline compilation

- intel/genxml: rename body field

- genxml: fix 3DSTATE_TE definition on Gfx12.[05]

- brw: fix NIR metadata invalidation with closest-hit shaders

- brw: fixup source depth enabling with coarse pixel shading

- brw: fixup coarse_z computation

- anv: fix wsi image aliasing

Lorenzo Rossi (32):

- nak: Add OpTexDepBar

- nak: Add a new OpFSwz and use it for derivatives on Kepler

- nak: Use s2r for SV_CLOCK on Kepler

- nvk: nak: Add OpViLd support

- nak: Initial SM32 support

- nvk: Clean up boilerplate around complex NIR flags

- nak: sm32: Fix wrong dsetp encoding

- nak/from_nir: Fix fquantize crash on < SM70

- nak/opt_copy_prop: convert b2i-i2b into copy

- nak/sm32: Fix shfl.up register alignment

- nak/sm32: Fix various encoding bugs

- nvk: Don’t advertise BAR memory for Kepler cards

- nvk: Fix local memory loads in Kepler shader header

- nak/sm20: Fix encoding panic for OpFAdd

- nir,nak: Add KeplerB shared atomics intrinsics and lowering

- nak: Add OpLdSharedLock and OpStSCheckUnlock

- nak/sm32: Add encodings for OpLdSharedLock and OpStSCheckUnlock

- nil: Add helpers for filling out Fermi/Kepler surface info

- nir,nak: Add NV-specific image intrinsics

- nak: Add an image address lowering pass

- nvk: Use nil_su_info for image descriptors on Kepler

- nak: Add surface address ops

- nak: Remove unused intrinsic image_load_raw_nv

- nak/sm32: Encode surface address ops

- nak/sm20: Encode imadsp

- nak: Add tests for imnmx and dsetp

- nak: Remove unreachable code in sm50.rs

- nak/sm32: Remove unnecessary NOP filling

- nak: Specialize MAX_INSTR_DELAY by ShaderModel

- nak: Add real instruction dependencies for Kepler

- nak: Add forward dataflow algorithm

- nak/kepler: Add texdepbar insertion pass

Loïc Molinari (16):

- panfrost: Optimize AFBC-P offsets computation

- util: Add AArch64 support to util_streaming_load_memcpy()

- panfrost: Use util_streaming_load_memcpy() to copy AFBC superblocks

- panfrost: Fix modifier conversion shaders search key

- panfrost: Fix AFBC packing

- panfrost: Disable AFBC tiled layout with driconf option

- panfrost: Improve AFBC packing terms

- panfrost: Test mipmap chain validity in panfrost_should_pack_afbc()

- panfrost: Make panfrost_pack_afbc() static

- panfrost: Async AFBC packing

- panfrost: Async AFBC packing debug info

- panfrost: Improve AFBC header block accesses

- panfrost: Get AFBC-P payload layout on the CPU

- panfrost: Optimize pan_afbc_payload_layout_packed() for AArch64

- panfrost: Optimize pan_afbc_payload_layout_packed() for AArch32

- panfrost: Test pan_afbc_payload_layout_packed()

Lucas Fryzek (2):

- anv: Add format conversion for AHARDWAREBUFFER_FORMAT_YCbCr_P010

- lp: Don’t allocate sampler functions if count is 0

Lucas Stach (33):

- etnaviv: don’t pretend to support TS for array or 3D textures

- etnaviv: drop ts_offset from etna_surface

- etnaviv: add resource render compatible check

- etnaviv: move TS allocation to resource allocation

- etnaviv: add screen spec bit for PE multitiling

- etnaviv: drop unused member PE_RT_COLOR_ADDR from compile framebuffer state

- etnaviv: stop tracking color buffer address information multiple times

- etnaviv: stop tracking ZS buffer address information multiple times

- etnaviv: don’t prepare relocs in etna_surface

- etnaviv: drop superfluous PE alignment check

- etnaviv: drop precomputed offset from etna_surface

- etnaviv: stop caching RS clear commands on surface

- etnaviv: return render resource from render_handle_incompatible if it exists

- etnaviv: move render compatible handling from surface to resource

- etnaviv: rs: stop using etna_surface

- etnaviv: blt: stop using etna_surface

- etnaviv: state: stop using etna_surface

- etnaviv: get rid of etna_surface

- etnaviv: use direct BLT/RS blit hook for internal copies

- etnaviv: use most recent shadow of resources as blit source/target

- etnaviv/ci: update expection after blit fixes

- etnaviv: expose ARB_seamless_cube_map

- docs/etnaviv: add/fix supported texture extensions

- etnaviv: use TX_SEAMLESS_CUBE to determine seamless cubemap support

- etnaviv: don’t advertise anisotropic filtering on GPUs with NO_ANISTRO_FILTER

- Revert “etnaviv/ci: document new failure”

- etnaviv: improve dither enable conditions

- etnaviv/ci: update expectation after dither fixes

- etnaviv: remove obsolete two-sided stencil comment

- etnaviv: drop obsolete question about alpha/stencil test interaction

- etnaviv: simplify stencil ref front/back selection condition

- etnaviv: allow 0 back stencil valuemask on new cores

- etnaviv/ci: drop fails due to ignored stencil valuemask

Ludvig Lindau (1):

- panvk: Fix ls_tracker usage in cs_maybe

Luigi Santivetti (2):

- vulkan/util: add vk_realloc2

- Revert “pvr: Implement VK_EXT_memory_budget”

M Henning (5):

- nv50_ir_ra: Remove an assign to lval->compMask

- nv50_ir_ra: Add constraint movs for split-of-split

- nv50_ir_ra: Use propagated compMask for reg offset

- nv50_ir_ra: Don’t coalesce mixed constraints

- nv50_ir: Remove dead variable

Marek Olšák (265):

- ac/gpu_info: clean up ac_get_hs_info, use standard terms like workgroup

- ac/gpu_info: add total_tess_ring_size

- radv: move the tess factor ring after the tess offchip ring

- ac/gpu_info: move HS info into radeon_info

- ac: use HS offchip wg size from radeon_info in ac_compute_num_tess_patches

- ac: minor cleanup of ac_compute_num_tess_patches

- ac/gpu_info: print tessellation ring info

- ac/nir: don’t include TCS offchip size in LDS_SIZE

- ac/gpu_info: compute the tess factor ring size proportionately to the CU count

- ac/gpu_info: reduce the tess offchip ring size and compute it proportionately

- ac/nir: remove shader_info parameter from ac_nir_compute_tess_wg_info

- ac/nir: don’t store tess levels for TES in TCS if no_varying is set

- ac/gpu_info: rename tess ring variables, fold double_offchip_wg

- radv: fix incorrect patch_outputs_read for TCS with dynamic state

- nir: add gathering passes that gather which inputs affect specific outputs

- nir/opt_varyings: group TES inputs based on whether they are used by POS or VAR

- radeonsi: initialize use_ngg* sooner

- radeonsi: enable nir_io_compaction_groups_tes_inputs_into_pos_and_var_groups

- amd: stop using CLEAR_STATE on gfx11

- ac: remove gfx11_emulate_clear_state

- nir: add shader_info::tess::tcs_cross_invocation_outputs_written

- nir: split *_accessed_indirectly* bitmasks into *_read/written_indirectly*

- ac/nir/tess: remove unused variables

- ac/nir/tess: don’t pass nir_intrinsic_instr to VMEM IO calc helpers

- ac/nir/tess: don’t pass nir_intrinsic_instr to hs_output_lds_offset

- radeonsi: remove dead gfx12 tess code from a gfx6-11 function

- aco: remove unused aco_shader_info::tcs_offchip_layout

- ac: adjust maximum HS workgroup size

- nir/opt_vectorize_io: fix a failure when vectorizing different bit sizes

- nir: fix gathering color interp modes in nir_lower_color_inputs

- nir: remove unnecessary (nir_shader *) typecasts

- nir: handle ibfe/ubfe in nir_def_bits_used

- nir: handle bit shifts by constants in nir_def_bits_used

- nir: handle mul24 in nir_def_bits_used

- nir: handle u2u/i2i recursively in nir_def_bits_used

- nir: handle extract opcodes recursively in nir_def_bits_used

- nir: handle iand/ior opcodes recursively in nir_def_bits_used

- nir: handle mov and bcsel in nir_def_bits_used

- ac/nir: fix export_ps_outputs not preserving divergence metadata

- radeonsi: don’t check sel->nir in si_init_shader_selector_async

- radeonsi: restructure si_get_shader_variant_info

- radeonsi: remove si_shader_info::uses_indirect_descriptor

- radeonsi: determine uses_vmem_load_other more accurately

- radeonsi: don’t return progress from run_pre_link_optimization_passes

- radeonsi: always gather shader variant info

- radeonsi: move gathering VMEM information into si_get_shader_variant_info

- radeonsi: gather VS system value usage from shader variants

- radeonsi: gather uses_gs_state_provoking_vtx_first/outprim from the shader

- radeonsi: gather writes_z/stencil/sample_mask as shader variant info

- radeonsi: gather uses_discard from shader variants

- radeonsi: don’t use si_shader_info in si_parse_next_shader_property

- radeonsi: remove si_shader_info::writes_position

- radeonsi: move xfb fields from si_shader_info to shader variant info

- radeonsi: implement remove_streamout in si_nir_kill_outputs

- radeonsi: don’t declare GDS size for LLVM

- radeonsi: use info.num_streamout_vec4s instead of si_shader_uses_streamout

- radeonsi: use a simpler way to gather enabled_streamout_buffer_mask

- radeonsi: rename num_stream_output_components -> num_gs_stream_components

- radeonsi: inline shader_info in si_shader_info, keep only what’s used

- radeonsi: move NIR passes from si_shader.c into their own files

- radeonsi: move shader info structures into new file si_shader_info.h

- nir: move nir_lower_color_inputs into radeonsi

- radeonsi: move si_nir_mark_divergent_texture_non_uniform to its own file

- radeonsi: move shader variant info and spi_ps_input_ena code into its own file

- radeonsi: move shaders args initialization into its own file

- radeonsi: add struct si_temp_shader_variant_info

- radeonsi: move si_gs_output_info into si_temp_shader_variant_info

- mesa: remove the old GL name (ID) allocator

- nir/tcs_info: gather for all patch outputs whether they’re written by all invocs

- nir/tcs_info: gather which patch outputs are only read/written by invoc 0

- nir/tcs_info: use range analysis to determine the range of tess levels

- winsys/amdgpu: print an error when we fail to allocate VA

- winsys/amdgpu: use alt_fence for all video queues

- winsys/amdgpu: fix running out of 32bit address space with high FPS

- winsys/amdgpu: add enums for queues using the fence rings

- winsys/amdgpu: add a high priority gfx queue

- winsys/amdgpu: set the priority for gfx user queues

- winsys/amdgpu: pass PIPE_CONTEXT_* flags to ctx_create

- winsys/amdgpu: fall back to a normal priority without root in the winsys

- glsl: fix sampler and image type checking in lower_precision

- glsl,gallium: add an option not to lower mediump tex & image dst

- radeonsi: enable 16-bit ALU, LDS, uniforms on gfx8

- nir: change the type of shader_info::patch_* fields to 32 bits

- nir: always index SSA defs before printing

- nir/xfb_info: add new fields to describe 16-bit XFB better

- nir/opt_clip_cull_const: support GS

- nir: remove unused nir_io_semantics::invariant

- mesa: strengthen the condition that triggers generating VS with edge flags

- amd: replace most u_bit_consecutive* with BITFIELD_MASK/RANGE

- ac/nir: implement load_subgroup_id/local_invocation_index for TCS on gfx6-10.x

- ac/nir/tess: add if/endif for HS threads in NIR instead of ACO/LLVM

- ac/nir/tess: adjust memory layout of TCS outputs to have aligned store offsets

- radv,radeonsi: merge PATCH_CONTROL_POINT & OUT_PATCH_CP into 1 field

- radv,radeonsi: make TCS_OFFCHIP_LAYOUT_NUM_PATCHES not off by one

- radv,radeonsi: precompute and pass TCS per-vertex output stride via a user SGPR

- ac/nir/tess: allow passing explicit patch_offset to VMEM/LDS offset calculations

- ac/nir/tess: write TCS per-vertex outputs to memory as vec4 stores at the end

- ac/nir/tess: execute the tess level workgroup vote on all chips

- ac/nir/tess: if all tess levels are 0, skip per-vertex TCS output stores

- ac/nir/tess: indent a block for nir_if

- ac/nir/tess: move LDS and VMEM output masks into a new info structure

- radv,radeonsi: use ac_nir_tess_io_info for LDS size computation

- nir: add shader_info::tess::tcs_*outputs_read_by_tes*

- ac/nir/tess: apply no_varying to ac_nir_tess_io_info

- ac/nir/tess: stop using tes_inputs_read / tes_patch_inputs read for TCS & TES

- ac/nir/tess: compute the number of remapped VRAM outputs in common code

- radeonsi: replace tess_levels_written_for_tes mask with a count

- ac/nir/tess: rewrite tess level tracking, don’t use LDS for more cases

- ac/nir/tess: inline mask helpers

- ac/nir/tess: use if-ladder to determine valid tess level components for the vote

- ac/nir/tess: unify computing LDS output patch size, minimize LDS bank conflicts

- ac/nir/tess: write TCS patch outputs to memory as vec4 stores at the end

- ac: set LDS limit for TCS to 32K for all chips

- ac: move tcs_offchip_layout into ac_shader_args

- ac/nir/tess: remove parameter from and simplify hs_per_patch_output_vmem_offset

- egl: export GL-CL interop functions from libEGL_mesa.so

- ac/llvm: allocate LLVM PS output variables on demand

- radeonsi: restructure si_emit_clip_regs

- radeonsi: support 8 instead of 6 clip planes with gl_ClipVertex

- radeonsi: use AC_EXP_PARAM_UNDEFINED for clarity

- radeonsi: remove a non-trivial optimization that doesn’t do much

- radeonsi: don’t refer to removed GTF CTS tests

- radeonsi: fix AMD_DEBUG=usellvm

- radeonsi: don’t clamp the shadow comparison value for nir_texop_lod on gfx8-9

- radeonsi/ci: update gfx8 failures

- radeonsi: add a workaround for a DrawTransformFeedback issue on gfx11.5

- nir: add shader_info::prev_stage

- glsl: set prev/next_stage according to the new definition

- nir/opt_varyings: completely exclude mediump from type changes

- nir/opt_varyings: set prev_stage/next_stage if they are NONE and validate them

- nir/opt_vectorize_io: convert bool merge_low_high_16_to_32 to an enum

- nir/opt_vectorize_io: don’t vectorize 16-bit IO to vec8 - it’s illegal

- nir/opt_vectorize_io: fix vectorizing 16-bit XFB

- nir/xfb_info: don’t merge incompatible XFB outputs to fix mediump

- nir: add nir_clear_mediump_io_flag

- glsl/spirv: link XFB before prelink_lowering

- nir: add shader_info::prev_stage_has_xfb

- nir/opt_vectorize_io: work around a 16-bit IO bug for RADV

- nir: return progress from nir_group_loads, nir_inline_uniforms

- radeonsi: fix tess regression with latest LLVM git

- radeonsi: fix printing asm for the first shader of merged shaders for ACO

- nir: rename nir_lower_io_to_scalar_early -> nir_lower_io_vars_to_scalar

- nir: move nir_lower_io_vars_to_scalar into its own file

- nir: rename nir_lower_io_to_vector -> nir_opt_vectorize_io_vars

- nir: rename nir_vectorize_tess_levels -> nir_lower_tess_level_array_vars_to_vec

- nir: move nir_io_add_intrinsic_xfb_info into its own file

- nir: move nir_io_add_const_offset_to_base into its own file

- nir: move nir_assign_var_locations to freedreno (its only use)

- nir: move lots of code from nir_lower_io.c into new nir_lower_explicit_io.c

- nir: remove unused nir_force_mediump_io & nir_unpack_16bit_varying_slots

- nir: move nir_recompute_io_bases into its own file

- nir: rename nir_lower_clip_cull_distance_arrays -> nir_lower_clip_cull_distance_array_vars

- nir: rename nir_lower_io_arrays_to_elements -> nir_lower_io_array_vars_to_elements

- nir: rename nir_lower_io_to_temporaries -> nir_lower_io_vars_to_temporaries

- ac/nir/lower_ngg: never export edge flags via position exports

- ac/nir: remove the done parameter from ac_nir_export_position

- ac/nir: lower ClipVertex before all position exports

- ac/nir/lower_ngg_gs: build streamout after lowering intrinsics

- ac/nir: add an option write_pos_to_clip_vertex to clip against POS

- ac/nir: add an option to pack clip/cull distance components to remove holes

- ac/nir: add LDS layout info for GSVS and XFB to ac_nir_prerast_per_output_info

- ac/nir: add an option not to gather values in ac_nir_gather_prerast_store_output_info

- ac/nir/lower_ngg_gs: split lower_ngg_gs_intrinsic into gathering and lowering

- radv: always use the ngg_lds_layout SGPR

- radv: call gfx10_get_ngg_info after NIR lowering

- ac/nir/lower_ngg: return LDS size for NGG VS and TES from the pass

- ac/nir/lower_ngg_gs: return LDS size from the pass

- ac/nir/lower_ngg: pack GS outputs and XFB outputs in LDS optimally

- ac/nir/lower_ngg: rename user_clip_plane_enable_mask -> cull_clipdist_mask

- ac/nir/lower_ngg_gs: cull against clip/cull distances & clip planes in GS

- ac/nir/lower_ngg: add & use new scalar helpers for GS loads/stores

- ac/nir/lower_ngg: add & use new scalar helpers for XFB loads/stores

- ac/nir/lower_ngg: forward constant GS & XFB output components from stores to loads for LDS

- ac/nir/lower_ngg: rename clip_cull_dist_mask and use it correctly

- ac/nir: rename clip_cull_mask parameter to clearer export_clipdist_mask

- ac/nir/lower_ngg: add an option not to export cull distances if the shader culls them

- ac/nir: remove ngg_scratch LDS ABI, allocate it in the lowering pass

- ac: add NGG subgroup size computation from radeonsi

- ac: add legacy GS subgroup size computation from radeonsi

- ac/nir: remove no-op loop from ac_nir_create_gs_copy_shader

- ac/nir: return the GS copy shader from ac_nir_lower_legacy_gs

- ac/nir: move gs_output_component_mask_with_stream to prerast utils

- ac/nir: switch legacy GS lowering to ac_nir_prerast_out completely

- ac/nir: remove kill_pointsize and kill_layer options from lowering passes

- ac/nir: rename force_center_interp_no_msaa to msaa_disabled

- ac/nir: eliminate sample_id/sample_pos if MSAA is disabled

- ac/nir: use u_foreach_bit more

- etnaviv,r600,v3d,virgl: report correct nir_options::support_indirect_*

- agx,freedreno,intel,lima,panfrost,svga,virgl,zink: fix supports_indirect_inputs

- nir: remove nir_shader_compiler_options::lower_all_io_to_temps

- glsl: fix a possible crash in gl_nir_lower_xfb_varying

- glsl: don’t lower inputs to temps unconditionally

- glsl: don’t lower outputs to temps unconditionally

- glsl: don’t call nir_split_var_copies in preprocess_shader

- glsl: don’t call nir_lower_global_vars_to_local twice in preprocess_shader

- nir: invert the meaning of has_indirect_* flags in nir_lower_io_passes

- gallium/noop: fix a crash in sampler_view_release

- nir: remove deprecated nir_io_dont_optimize

- nir/lower_io: validate that location and num_slots fit in the bitfields

- nir: print lowp/mediump/highp next to deref types

- nir: add nir_shift_channels helper

- nir: change nir_lower_mem_access_bit_sizes to an intrinsics pass

- glsl: only set has_transform_feedback_varyings for the last pre-FS shader

- glsl: check against varying limits using NIR shader_info after nir_opt_varyings

- glsl: remove gl_nir_opt_dead_builtin_varyings

- nir: add new pass nir_lower_io_indirect_loads

- nir: add new pass nir_opt_move_to_top

- radeonsi: use nir_opt_move_to_top for input loads

- nir: switch indirect IO load lowering to nir_lower_io_indirect_loads for GLSL

- glsl: fix MESA_GLSL_DISABLE_IO_OPT env var

- ac/nir: fix indexing GS inputs with non-constant vertex index on gfx9-11

- zink/ci: add post-merge failures from a previous MR

- radv: use shared ac_ngg_compute_subgroup_info

- radv: use shared ac_legacy_gs_compute_subgroup_info

- radv: set the maximum possible workgroup size for legacy GS before linking

- radv: call radv_get_legacy_gs_info after ac_nir_lower_legacy_gs

- ac/nir: return GSVS emit sizes from legacy GS lowering and simplify shader info

- ac/nir: remove unnecessary 16-bit handling from pre-rast GS and XFB loads/stores

- ac/nir: fix mediump XFB

- ac/nir: handle VARYING_SLOT_VARn_16BIT the same as other slots

- radv: cull against clip and cull distances in the shader

- radv: enable W/front/back face NGG culling with multiple viewports

- radv: rework radv_link_shaders_info as as not be called in a loop

- radv: enable NGG culling for GS

- radv: don’t include positions exports in pipeline executable stats

- radv: compute the number of position outputs after compilation

- radv: don’t export cull distances if the shader culls against them

- radv: enable nir_opt_clip_cull_const for GS too

- radv: pack clip and cull distance outputs for both legacy and NGG pipelines

- radv: stop using LLVM LDS linking logic

- radeonsi: add si_shader_variant_info::clip/culldist_mask

- radeonsi: simplify old_vs & old_ps checking in si_update_shaders

- radeonsi: gather nr_pos_exports from the final NIR

- radeonsi: support 8 non-ClipVertex clip planes instead of 6

- radeonsi: use nir_opt_clip_cull_const

- radeonsi: pack clip/cull distance export components

- radeonsi: reduce the size of 2 fields in si_shader_variant_info

- radeonsi: enable culling against clip/cull distances and clip planes in GS

- radeonsi: cull against cull distances in the shader and don’t export them

- radeonsi: move gfx10_shader_ngg.c contents into si_shader.c

- radeonsi: use si_assign_param_offsets for legacy GS too

- radeonsi: don’t count outputs with GS streams > 0 for outputs_written_before_ps

- radeonsi: remove unused output_type and output_usage from si_shader_info

- radeonsi: remove gs_input_verts_per_prim from si_shader_info

- radeonsi: enable 16-bit mediump IO for PS outputs only, and VS->PS with env var

- radeonsi: stop using LLVM LDS linking logic for the GS out LDS offset

- radeonsi: remove now unused LLVM LDS logic for NGG

- radeonsi: determine compute shader LDS size from NIR instead of LLVM

- radeonsi: add a comment about early prim exports

- radeonsi: remove all uses of NIR_PASS_V

- radeonsi: use shader_info::next_stage correctly

- aco: remove unused aco_symbol_lds_ngg_gs_out_vertex_base

- ac/llvm: don’t declare LDS as an array for HS & GS & CS, use IntToPtr(0)

- ac/llvm: remove LDS linking code

- ac/llvm: rename misnamed get_memory_ptr -> get_shared_mem_ptr

- ac/nir: remove pack_clip_cull_distances option

- ac/nir: rename ac_nir_get_lds_gs_out_slot_offset -> ac_nir_get_gs_out_lds_offset

- ac/nir: remove redundant option dont_export_cull_distances

- nir/opt_varyings: use nir_scalar

- nir/opt_varyings: optimize the consumer after constant propagation and dedupli.

- nir/lower_io: validate locations more accurately

- glsl: remove most IO optimizations that are replaced by nir_opt_varyings

- nir/opt_vectorize_io: optionally vectorize loads with holes

- aco: implement upcasting 16-bit types for 32-bit color buffers in PS epilog

- radeonsi: recompute FS output IO bases to prevent an LLVM crash

Martin Krastev (9):

- svga/ci: enable vmware farm

- svga/ci: Increase vmware-vmx-piglit job parallelism to 4

- svga/ci: return svga piglit job to automatic rules pool

- svga/ci: vmware farm is out; temporary relegate piglit job to manual

- svga/ci: vmware farm is back; restore piglit job to automatic

- svga/ci: enable vmware farm

- svga/ci: bump up piglit coverage to 100%

- svga/ci: bump up FDO_CI_CONCURRENT to 2

- svga/ci: drop ‘fraction’ from deqp-vmware-vmx-piglit job config

Martin Roukala (né Peres) (10):

- radv/ci: move the vangogh timeouts to the jobs

- radv/ci: drop redundant renoir timeouts

- ci/ci-tron: switch to the upstream ci-tron template

- ci: rename all the .b2c- jobs into .ci-tron-

- panfrost/ci: document new t860 flakes

- nvk/ci: switch nouveau.ko jobs to common kernel (6.13.7)

- nvk/ci: split the common ci-tron parts to their own job

- nvk/ci: uprev the kernel to v6.16-rc2

- nvk/ci: run on our jobs on ad106

- zink/ci: run glcts and piglit on NVK’s ad106

Mary Guillemard (87):

- panfrost: Take tiler memory budget into account in pan_select_tiler_hierarchy_mask

- panvk: reset dyn_bufs map count to 0 in create_copy_table

- panvk: Take rasterization sample into account in indirect draw on v10+

- panvk: Emit sample count and tile size when emitting framebuffer/tiler descriptors

- panfrost: Allow max effective tile size of 64x64 on v12+

- panvk: Take resource index in valhall_lower_get_ssbo_size

- panvk: Advertise VK_EXT_shader_replicated_composites

- panvk: Advertise VK_EXT_depth_bias_control

- pan/bi: Properly lower add/sub with saturation on v11+

- pan/genxml: Fix inverted logic on nr_regs

- panfrost: Ensure printf buffer size is lowered

- panfrost: Move genxml out of pan/lib

- pan/util: Move lcra to midgard

- pan/util: Move liveness logic to midgard

- panfrost/util: Move print_alu_type and PAN_IS_REG to midgard

- pan/util,midgard: Remove pan_block

- panfrost: Remove progress_increment from all CS builders

- panfrost: Remove PROGRESS_* helpers in cs_builder.h

- pan/bi: Flush subnormals to zero for FROUND on v11+

- pan/bi: Lower ffract in bifrost_nir_algebraic on v11+

- pan/genxml: Add Register File Format to common.xml

- pan/lib: Move pan_fixup_blend_type to pan_blend.c

- pan/lib: Make pan_shader_compile not GENX

- pan/lib: Make pan_shader_get_compiler_options not GENX

- pan/lib: Make pan_shader.c not GENX

- pan/lib: Add support for rotated 2x grid sample pattern

- panvk: Enable VK_SAMPLE_COUNT_2_BIT support on v12+

- panfrost: Use pan_sample_pattern in pan_cmdstream

- panfrost: Enable 2 sample count support on v12+

- panvk: Advertise support for VK_EXT_primitive_topology_list_restart

- panvk: Advertise support for VK_EXT_image_2d_view_of_3d

- panvk: Clean up some todo comments about already supported extensions

- pan/csf: Fix typo in cs_trace_run_idvs2

- panfrost: Fix varying descriptors on v12+

- panfrost: Allow up to 16 for scoreboards on CSF instructions on v11+

- panvk: Depends on Panthor scoreboard information

- panfrost: Add cs_* helpers for v11 CSF instructions

- panfrost: Add indirect mode for async operations on v11+

- panfrost: Fix codestyle issue with cs_nop

- panvk: Set proper upper limit for IDVS reg blacklist on v12+

- panvk: Increase CSF scratch limits on v12+

- pan/genxml: Fix typo for NEXT_SB_ENTRY

- panvk: Expose 2 queues on v10+

- panforst: Update ForEachMacros for pan/bi

- pan/bi: Stop writing pan_shader_info::vs::idvs on non VS stages

- pan/bi: Lower VS atomics direct output store to only exec in one stage when possible

- panvk: Enable vertexPipelineStoresAndAtomics on ANGLE for v13+

- panfrost: Make pan_encoder.h CL safe

- pan/genxml: Switch pan_merge to a macro

- libpan: Add indirect dispatch implementation

- panvk: Implement indirect dispatch on JM

- panfrost: Use panlib indirect dispatch precomp shader in Gallium

- panfrost: Enable indirect dispatch support on v6 and v9

- panfrost: Remove pan_indirect_dispatch

- panvk: Rework iter_sb to be the scoreboard directly

- panvk: Select next iter scoreboard early

- panvk: Use NEXT_SB_ENTRY on v11+ and prepare for indirect wait

- panvk: Implement v11+ path for compute dispatch

- panvk: Implement v11+ path for flush_tiling

- panvk: Implement v11+ path for issue_fragment_jobs

- panvk: Only restrict iter scoreboards on v10

- panvk: Remove iter_sb on v11+

- pan/lib: Rewrite npot divisor algorithm

- pan/lib: Refactor pan_padded_vertex_count

- pan/lib: Inline pan_atributes.c in pan_encoder.h

- pan/lib: Rename pan_compute_magic_divisor to pan_compute_npot_divisor

- pan/lib: Add a test for pan_compute_npot_divisor

- pan/clc: Use hash_format_strings option with nir_lower_printf

- pan/clc: Lower IO as late as possible

- libcl: Add more UINT_MAX variants

- meson: make clz available in OpenCL code

- panvk: Fix dependency chain on indirect dispatch for JM

- panvk/ci: Update Mali-G52 status with full VKCTS

- pan/genxml: Fix wrong size for compute size workgroup

- panvk: Do not adjust job offset with base on CSF

- pan/bi: Do not allow passthrough for instructions disallowing temps

- pan/bi: Disallow FAU for CLPER in bi_check_fau_src

- panvk: Fix wrong reporting of subgroup size for executable properties

- nvk: Do not ignore contiguous in nvk_heap_init

- nir: Add NVIDIA-specific muladd intrinsics

- nak: Wire up coop matrix opcodes

- nvk: Advertise VK_KHR_cooperative_matrix

- panvk: Fix nullDescriptor for dynamic descriptors

- pan/genxml: Add missing parenthesis on pan_cast_and_pack macros

- pan/bi: Properly handle SWZ.v4i8 lowering on v11+

- panvk: Always use varying_count in emit_varying_attrs

- panvk: track oq write jobs in JM

Matt Jolly (5):

- ci/alpine: Control Meson version

- ci/debian: arm64: only install Meson once

- ci/fedora: use `build-bindgen.sh` to install [c]bindgen

- ci: add header with image tags to `build-bindgen.sh`

- build: Rust: Bump minimum Meson and bindgen version

Matt Turner (14):

- gallivm: Use `llvm.roundeven` in lp_build_round()

- meson: add wrap for libdrm

- intel/compiler: Align human-readable send message info

- compiler: Generate files with newline at end

- intel: Generate files with newline at end

- vulkan: Generate files with newline at end

- intel: Increase size of cooperative_matrix_configurations[] to 16

- nir: Add convert_cmat_intel intrinsic

- brw: Implement convert_cmat_intel intrinsic

- brw: Use convert_cmat_intel intrinsic

- intel: Add support for float16 as cooperative matrix accumulator

- brw: Handle bfloat16 dest and src0 operands for DPAS

- intel: Add support for BFloat16 as cooperative matrix accumulator

- bin/people.csv: Prefer mattst88’s @gmail.com address

Matthieu Oechslin (1):

- r600: Take dual source blending in account when creating target mask with RATs

Mauro Rossi (6):

- intel/compiler: use ffsll instead of ffsl in brw_vue_map.c

- android: fix llvmpipe build rules

- llvmpipe: Define LP_NIR_SHADER_DUMP_DIR differently on Android

- llvmpipe: Use mkdir instead of std::filesystem::create_directory on Android

- Revert “android: Link with libc++fs up to SDK 35”

- radv: Fix gnu-empty-initializer error

Maíra Canal (6):

- ci: disable Igalia’s farm

- v3d: make sure all jobs are done before destroying the context

- broadcom/ci: update expected results with kernel 6.12

- bin: explicitly use `python3` instead of `python`

- vulkan: create a wrapper struct for vk_sync_timeline

- vulkan: don’t destroy vk_sync_timeline if a point is still pending

Mel Henning (83):

- nak/spill_values: Spill constants across edges if needed

- nak: Handle idp4 ureg latencies

- nvk: SET_STATISTICS_COUNTER at start of meta_begin

- nvk: Override render enable for blits and resolves

- nvk: Remove dead function nvk_meta_init_render

- nak: Add nvdisasm_tests

- nak: Remove range parameter from set_atom_type

- nak: Fix sm90+ atomg/redg encoding

- nak: sm100+ texture encodings

- nak: Disable cbuf textures on blackwell

- nak: Add test for lea disasm.

- wsi/headless: Override finish_create

- nak: Remove hfma2 src 1 modifiers

- nak/sm70_encode: Encode fneg/fabs for hfma2 src 2

- nak/sm70_encode: Remove unused has_mod parameter

- nak: Add an SSARef::from_iter() helper

- nak: Use NonZeroU32 for SSAValue and remove NONE

- nak: Split scalar/vec in SSABuilder::alloc_ssa

- nak: Return SSAValue from builder where possible

- nak: Use references to src/dst more places

- nak/from_nir: Make fault an Option<SSAValue>

- nak: Dst is no longer Copy

- nak/from_nir: Turn srcs into a closure

- nak: Src is no longer Copy

- nak: SrcRef is no longer Copy

- nak: CBuf and SSARef are no longer Copy

- nak: Support large SSARef

- nak: Mark Large SSARef paths as cold

- nak: Add Src::is_unmodified() helper

- nak: Check that swizzles are none

- nak: Call nir_opt_phi_to_bool

- nak: Remove #![allow(unstable_name_collisions)]

- nouveau/headers: Run rustfmt after file is closed

- nouveau/headers: Ignore PermissionError in rustfmt

- nak: rustfmt ir_proc.rs

- nak: s/HashMap::new()/Default::default()/

- nak: s/HashSet::new()/Default::default()/

- nak: Add a dependency on rustc-hash

- nak: Switch most Hash{Set,Map} uses to rustc-hash

- nak: Also use rustc-hash for UnionFind

- compiler/rust/cfg: Add a hash func type parameter

- nak: Use nir membar optimizations

- compiler/rust/bitset: find_aligned_unset_region()

- nak: Change parameters to try_find_unset_reg_range

- nak: Bias RA to find clear spaces for vector dests

- nak: Fix a perf regression in tex lowering

- nak: Call nir_lower_undef_to_zero

- nvk: Call ensure_slm for nvk_cmd_dispatch_shader

- nak/spill_values: Follow phis from src to dest

- nak: Forbid reordering labeled OpNop

- nak: Always run nak_nir_mark_lcssa_invariants

- nak: Change divergence analysis pass order

- nak: lower_scan_reduce after divergence analysis

- nak: Add OpRedux

- nak: Implement nir_intrinsic_reduce with REDUX

- nak: Don’t swap f2fp sources in legalize

- nir/divergence_analysis: Update LCSSA comment

- nak,nir: Stop using std::mem::zeroed()

- compiler/rust/bitset: BitSetStream takes Key type

- zink: Return NULL on vkCreateInstance failure

- zink: Handle null instance in 2nd create_screen

- vulkan: Specify library_arch in ICD files

- nak: Add OpMatch

- nir: Split lower_vote_eq into int/float versions

- nak: Implement nir_intrinsic_vote_ieq with OpMatch

- nak: Call nir_opt_uniform_subgroup

- nir/opt_uniform_subgroup: Handle vote_ieq

- nir/opt_uniform_subgroup: Handle vote_feq

- nak: Factor dataflow logic out of SimpleLiveness

- nak: Use the dataflow framework for NextUseLiveness

- nak: Use a worklist approach for dataflow

- nak/nvdisasm_tests: Remove extra . for lod_mode

- meson: Allow unnecessary_transmutes for bindgen

- nir/divergence_analysis: Add NV_shader_sm_builtins

- zink: Assert ici.tiling != DRM_FORMAT_MODIFIER_EXT

- egl: Clear modifiers if we clear use_flags

- nouveau/headers: Stop running rustfmt

- nouveau/headers: Move use statements into template

- nouveau/headers: Factor out write_template

- nouveau/headers: Re-enable rustfmt

- nouveau/headers: Update g_nv_name_released.h

- nak/mark_lcssa_invariants: Invalidate divergence

- loader: Don’t load nouveau GL on nvidia kmd

Michael Cheng (3):

- intel: Switch debug flags to enums to prep for bitset conversion

- intel: Switch uint64_t intel_debug to a bitset

- anv: Add new debug flag to show shader stage

Michel Dänzer (3):

- ci: Drop obsolete -Wno-error= stanzas

- amd/ci: Add cl profile on rusticl in radeonsi-raven-piglit job

- radeonsi: Don’t assert src_va != 0 with CP_DMA_CLEAR

Mike Blumenkrantz (208):

- delete clover

- zink: verify that surface exists when adding implicit feedback loop

- util/dynarray: add util_dynarray_resize_zero()

- zink: use util_dynarray_resize_zero() for descriptor pool

- vk/cmd_queue: try to fix some indentation

- vk/cmd_queue: stop generating weird casts for free functions

- vk/cmd_queue: generate copies for struct-ptr members

- vk/cmd_queue: generate copies for string struct members

- egl: rename dri2_load_driver -> dri2_detect_swrast

- egl: fix sw fallback rejection in non-sw EGL_PLATFORM=device

- zink: fix broken comparison for dummy pipe surface sizing

- lavapipe: EXT_zero_initialize_device_memory

- egl: handle DRI_PRIME with surfaceless

- gallium: pipe_surface_release -> pipe_surface_unref

- util/inlines: constify pipe_surface_equal()

- ci: set -Wno-error=deprecated-declarations

- mesa: remove gl_renderbuffer::surface

- gallium: de-pointerize pipe_surface

- ci: disable panfrost-t720-gles2

- llvmpipe: disable conditional rendering mem for blits

- lavapipe: handle counterOffset in vkCmdDrawIndirectByteCountEXT

- delete the XA frontend

- delete gallium-nine

- zink: delete legacy renderpasses and framebuffer objects

- zink: delete zink_surface_info

- aux/trace: handle sampler_view_destroy

- tc: rework resource usage tracking to be lighter

- gallium: delete pipe_surface::writable

- gallium: delete union pipe_surface_desc

- zink: also check for host-visible on staging uploads

- zink: fix queue transition check in check_for_layout_update()

- util/blitter: delete more pipe_context::create_surface usage

- util/debug: delete more pipe_context::create_surface usage

- util/surface: delete more pipe_context::create_surface usage

- gallium: kill off pipe_surface_unref_no_context()

- lavapipe: kill off pipe_surface objects

- util/tc: fix surface refcounting (by deleting it)

- d3d10umd: stop using pipe_surface::width/height

- d3d10umd: update to latest pipe_surface changes

- va: remove one more pipe_surface object

- vdpau: de-pointerize surfaces

- vl: delete a missed pipe_surface_reference usage

- util/tc: delete surface hooks

- aux/trace: delete surface object hooks

- noop: delete surface object hooks

- util/dd: delete surface object hooks

- zink: unlock instance mutex if creation fails

- zink: fix ZINK_RENDERDOC=all

- zink: remove a pipe_surface from blitting

- zink: slightly rework transient surface/image handling

- zink: remove some trivial transient surface references in rt init

- zink: delete another pipe_surface from msaa replicate

- zink: delete zink_ctx_surface::transient

- zink: delete zink_ctx_surface::needs_mutable

- zink: don’t fixup depth buffer if it’s already big enough

- zink: delete zink_ctx_surface

- lavapipe: undo fb remapping before poisoning memory at end of renderpass

- nir/lower_to_scalar: fix opt_varying with output reads

- zink: update renderdoc layer string for android

- zink: support vulkan 1.4

- zink: hook up VK_KHR_unified_image_layouts

- zink: add a local screen variable in begin_rendering

- zink: add UIM feedback loop info for dynamic rendering

- zink: rename a sync function

- zink: hook up global GENERAL image layouts

- zink: emulated alpha formats do not require mutable

- zink: verify that mutable dmabufs are created with a format list

- util/box: make u_box_test_intersection_2d() consistent with other funcs

- zink: update docs for nopc

- zink: be slightly more precise about flagging loadop change on fb invalidate

- zink: extract resolve surface init to separate function

- zink: add format param to zink_surface_resolve_init

- zink: move tc inlined resolve code down a bit

- zink: create inline resolve surface in begin_rendering

- tc: fix zsbuf rp info persistence across fb states

- tc: explicitly terminate renderpasses on fb access

- tc: rework rp info incrementing

- tc: add resolve resource to rp info

- tc: add #define to disable strict resolve merging

- zink: add ZINK_DEBUG to skip msaa stores on renderpasses which have ended

- draw: silence some no-op draw debug prints

- ci: rename “lvp” jobs to lavapipe

- gallium: add compressed_surface_reinterpret_blocks_layered

- zink: put back the sampler barrier on fb unbind with GENERAL layouts

- zink: fill in sync flags for a couple barriers

- zink: delete barrier sync flag inferring

- zink: fix image transfer op batching with GENERAL layouts

- zink: local screen variable in zink_copy_image_buffer

- zink: use GENERAL layout in zink_copy_image_buffer when possible

- zink: fix GENERAL image copy box resets on non-transfer barrier

- zink: break out the fb unbind sampler barrier

- zink: add another aggressive sampler barrier after sequential image copies

- zink: skip sampler layout updates when using GENERAL layouts

- zink: don’t use TRANSFER bit as default pipeline stage if no access is set

- zink: always pass through src access flags for buffer barriers

- zink: always unset unordered access flags when executing an ordered barrier

- zink: mimic buffer transfer dst noop barrier semantics with images

- zink: actually use GENERAL image barrier functions

- zink: enable image2DViewOf3DSparse with maint9

- zink: require nullDescriptor feature

- zink: delete zink_surface::hash

- zink: remove resource param from apply_view_usage_for_format()

- zink: delete zink_surface::usage_info

- zink: add a pipe_resource ref to bindless descriptors

- zink: make pipe_resource refs for image views more consistent

- zink: remove pipe_resource ref from bufferviews

- zink: move zink_prep_fb_attachment up and make static

- zink: clean up null surface case in prep_fb_attachment()

- zink: simplify code surrounding prep_fb_attachment()

- zink: delete surface handling of blockTexelViewCompatibleMultipleLayers

- zink: unify zink_resource_object_init_mutable() calling

- zink: always directly create surfaces

- zink: delete transient attachments instead of leaking them

- zink: delete some redundant flagging of ctx->rp_changed

- zink: remove random format check in surface create

- zink: unify some z24 sampler clamping code

- zink: remove some usage of zink_surface::ivci

- zink: big resource view rework

- zink: break out fb ivci init

- zink: tweak zink_create_transient_surface to stop using zink_surface::ivci

- zink: store/use fb attachment formats directly

- zink: allocate keys for surface cache to stop using zink_surface::ivci

- zink: delete zink_surface::ivci

- zink: delete/simplify some bindless descriptor resource accesss

- zink: use a better check for current fb zsbuf in zink_clear_depth_stencil()

- zink: track whether fb has swapchain bound on context

- zink: directly use imageview format for image descriptors for depth clamping

- zink: directly return import2d resource

- zink: add layer info to bindless descriptor

- zink: use temp struct for implicit feedback loop detection

- zink: various trivial struct access changes

- zink: prune zink_surface down to the imageview and create/fetch on demand

- zink: enforce pipe_surface::texture matching the resource in zink_get_surface()

- zink: remove redundant pipe_resource param from zink surface funcs

- zink: unify bvci creation

- zink: use samplerview obj to check buffer rebinds in non-db path

- zink: use smaller keys for surface/bufferview caching and switch to sets

- tc: don’t reuse first rp info on batch if there is work pending

- zink: enable ioopt by default

- aux/trace: always finish dumping draw/dispatch calls before triggering them

- gallium: add pipe_context::image_copy_buffer

- zink: rework zink_copy_image_buffer()

- zink: implement image_copy_buffer

- tc: use image_copy_buffer for subdata uploads instead of resource_copy_region

- tc: replace gpu util_copy_box with single image_copy_buffer call

- zink: loosen heuristic for buf2img texture upload barriers

- zink: don’t modify the u_foreach_bit64 bit inside the loop in loop_io_var_mask()

- zink: make HIC image transitions public

- zink: use HIC image transitions to init swapchain images

- zink: more fixups for GENERAL image sync

- zink: fix another case of blocking image op reordering with GENERAL layouts

- zink: stop deleting src stage in image sync

- zink: fix acquire semaphore sync

- zink: fix submit_count disambiguation for bo usage checks

- mesa/st: handle renderbuffer with null zsbuf

- zink: move HIC resource usage check into hic transition function

- zink: always insert current batch sparse semaphore into sparse wait chain

- zink: use unsynchronized cmdbuf for unsynchronized image GENERAL barriers

- mesa: unify creation of real semaphore objects

- mesa: set semaphore type directly during creation

- mesa: PIPE_FD_TYPE_TIMELINE_SEMAPHORE -> PIPE_FD_TYPE_TIMELINE_SEMAPHORE_D3D12

- zink: fix signaling multiple API semaphores

- mesa: support NV_timeline_semaphore

- zink: capture KHR_timeline_semaphore properties

- gallium: fix timeline semaphore value passing

- zink: support NV_timeline_semaphore

- st/clear: handle null color renderbuffer

- lavapipe: fix advertised depth resolve modes

- vulkan/cmd_queue: don’t null deref when freeing pNext

- zink: use a rebind counter to manage descriptor rebinds

- zink: zero the unordered access for images upon executing an ordered barrier

- cso: use unbind_trailing for sampler view unbinds on context unbinds

- zink: only copy resource during add_bind if it is valid

- zink: enable img copy boxes for blit/copy ops

- zink: assert that batches never use a timeline value of 0

- zink: slightly tighten the implicit feedback loop detection logic

- zink: fix UIL feedback loop usage

- zink: remove duplicate setting of last_write in image sync

- zink: unify setting general access flags in sync

- zink: tighten up same-batch sync

- zink: double-check descriptor layout creation before adding to cache

- zink: always create gfx shader objects with 5 descriptor layouts

- zink: fix qbo sync

- zink: always emit fb attachment sync

- zink: fix fb attachment usage setting

- tc: fix usage wrapping in busy test

- zink: document VK_EXT_primitive_topology_list_restart in profile

- zink: lock harder around memory mappings

- zink: reenable unsynchronized texture subdata without HIC

- aux/trace: sanitize draws

- zink: translate intensity formats

- gallium/hud: set the framebuffer texture when drawing

- zink: fix valid contents check for adding new bind

- lavapipe: call nir_lower_int64

- zink: simplify sampler bufferview change for non-db path

- egl/x11: don’t leak device_name when choosing zink

- zink: account for generated tcs when pruning programs

- zink: remove extra gfx prog unref during separable replacement

- anv: fix format compatibility check typo

- zink: create a dummy image for shaderdb runs

- kopper: fix initial swapinterval setting

- zink: also add access stage sync when rebinding buffers

- zink: fix tc buffer replacement rebind condition

- zink: trigger multi-context buffer invalidate on internal buffer invalidate

- zink: zero dynamic rendering resolve views on rp end

- tc: also inline depth resolves

- zink: fix assert for unsynchronized non-GENERAL image barriers

- tc: don’t clobber CSO info when renderpass has ended

Mohamed Ahmed (3):

- nil/copy: Rename Copy16B to CopyBytes and add a copy_8b method

- nil/copy: Add Blackwell+ GOB layouts for host copy

- nil/copy.rs: Add host copy support for Fermi-Volta

Myrrh Periwinkle (1):

- gallium: Properly handle non-contiguous used sampler view indexes

Nagulendran, Iswara (2):

- amd/vpelib: Setup cost profiling support

- amd/vpelib: Fix VPELIB Build Warnings

Nanley Chery (17):

- intel: Add and use isl_surf_from_mem()

- intel: Add and use isl_surf_image_has_unique_tiles()

- intel/blorp: Disable repclear for gfx12 fast-clear

- intel/blorp: Drop clear color assignment prior to Xe2

- intel/blorp: Redescribe gfx12.5 surfaces for CCS fast clears

- intel/blorp: Simplify get_fast_clear_rect() for gfx12.5

- anv: Drop the slow clear heuristic

- intel/isl: Fix isl_surf_image_has_unique_tiles()

- intel/isl: Fix isl_get_sampler_clear_field_offset()

- intel/blorp: Use get_copy_format_for_bpb more for gfx12.5

- iris: Update check for sampler field changes

- iris: Update clear color initializations for FCV

- anv: Fix an assert for ISL_FORMAT_RAW clear color update

- anv: Query sampler offset in set_image_clear_color()

- anv: Move the gfx9 sRGB sampling clear color code

- anv: Use genX(set_fast_clear_state)() in transition_depth_buffer()

- intel/blorp: Don’t redescribe some Tile64 clears

Natalie Vock (34):

- aco: Add support for multiple ops fixed to defs

- aco: Add support for multiple definitions in emit_mimg

- aco/ra: Don’t consider precolored ops/defs in get_reg_impl

- radv,driconf: Add radv_force_64k_sparse_alignment config

- driconf: Add workarounds for DOOM: The Dark Ages

- radv/rt: Avoid encoding infinities in box node coords

- radv/rt: Report 256 byte alignment for scratch

- aco/opt: Rename loop header phis

- aco: Add pseudo instr to calculate a function callee’s stack pointer

- aco: Add scratch stack pointer

- aco/spill: Use scratch stack pointer

- aco: Add common utility to load scratch descriptor

- aco/isel: Use stack pointer parameter in load/store_scratch

- aco/isel: Don’t add scratch offset as gfx8- soffset if no offsets exist

- aco: Introduce static_scratch_rsrc program member

- aco/spill: Add a null scratch offset if no scratch_offset arg exists

- aco/spill: Don’t spill scratch_rsrc-related temps

- vulkan/runtime/bvh: Propagate opaqueness information through the BVH

- radv: Encode child opaqueness information in triangle nodes

- radv: Encode child opaqueness information in box nodes

- radv: Use common helper to set BLAS node pointer flags on gfx11+

- radv/rt: Enable pointer flags on GFX11+

- aco/isel: Improve vector splits for image_bvh8_intersect_ray

- aco: Support vector-aligned ops fixed to defs

- aco: Use vector-aligned operands for image_bvh8_intersect_ray

- radv/rt/gfx12: Always overwrite origin/dir

- nir,aco: Add ds_bvh_stack_rtn

- radv/rt: Use ds_bvh_stack_rtn

- aco,nir: Add support for GFX12 ds_bvh_stack_push8_pop1_rtn_b32 instruction

- radv/rt: Use ds_bvh_stack_push8_pop1_rtn_b32

- aco/assembler: Support vector-aligned operands on DS instructions

- aco/ra: Add affinities for DS vector-aligned operands

- aco/isel: Use vector-aligned operands for ds_stack_push8_pop1_rtn_b32

- radv/winsys: Support vm_always_valid in the NULL winsys

Nicolas Dufresne (2):

- build: Sort the tools ‘all’ list

- build: Include panfrost to the tools ‘all’ list

Okenczyc, Andrzej (1):

- amd/vpelib: Resolve query, predication and timestamp operations

Olivia Lee (66):

- panfrost: allow promoting sysval UBO to push constants

- mailmap: update my name and email

- panfrost: move some blend shader infrastructure into gallium driver

- panfrost: map sysval UBO to a fixed index

- panfrost: pass blend constants to blend shaders dynamically

- pan/bi: push blend constants to FAU

- panfrost: upload blend shaders to bin pool

- panvk: fix driconf memory leak

- util/u_printf: fix memory leak in u_printf_singleton_add_serialized

- panfrost: use cpp_args instead of c_args for C++ files

- pan/csf: make cs_builder.h usable from c++

- pan/csf: add cs_builder unit test infrastructure

- pan/csf: add cs_maybe mechanism to retroactively patch cs contents

- pan/csf: rename cs_exception_handler to cs_function

- panvk/csf: set up shared register dump regions for cs functions

- panvk: track whether we are in a vk_meta command

- panvk: fix case where vk_meta is used after PROVOKING_VERTEX_MODE_LAST

- panvk/csf: fix case where vk_meta is used before PROVOKING_VERTEX_MODE_LAST

- panvk/csf: fix provoking vertex mode in partial secondary cmdbufs

- pan/va: allow using both FAU and small constants in the same instruction

- panvk: advertise VK_EXT_shader_subgroup_vote and VK_EXT_shader_subgroup_ballot

- panfrost: fix assertion failure compiling image conversion shaders

- panfrost: legalize afbc before zs and rt clears

- panfrost/ci: smoke test AFBC-P in CI

- panvk: advertise VK_KHR_depth_clamp_zero_one

- panvk: refactor depth range logic

- panvk: implement VK_EXT_depth_clip_control

- panvk: Add tests for ls tracking in cs_maybe

- ci: disable vmware farm

- panvk: add missing include to panvk_cmd_draw.h

- panvk: fix outdated comment

- panvk: make extensions, features, and properties per-arch

- panvk: use constants from other headers in device properties

- panvk: move descriptor set limits to constant macros

- panvk: advertise texel buffer dynamic indexing

- panvk: allow sysvals to be dynamically-indexed

- panvk: implement shaderInputAttachmentArrayDynamicIndexing

- panvk: implement runtimeDescriptorArray and descriptorBindingVariableDescriptorCount

- panvk: implement non uniform indexing except for input attachments

- panvk: implement shaderInputAttachmentArrayNonUniformIndexing

- panvk: raise descriptor limits on valhall

- panvk: advertise descriptor indexing on valhall

- ci: document process for disabling broken farms in more detail

- ci: update CI contact list

- panvk: return error when mmap fails in BindImageMemory2 and BindBufferMemory2

- panvk: factor BindImageMemory2 loop into function

- panvk: implement VkBindMemoryStatus

- panvk: allow binding VK_NULL_HANDLE index buffers

- panvk: advertise VK_KHR_maintenance6 on v10+

- panfrost: fix depth clip range with u_blitter

- bin/people.csv: update my name/email

- pan/shared: fix typo in pan_tiling doc comments

- panvk: document vulkan 1.3 in new_features.txt

- docs: document GL_EXT_shader_clock in new_features.txt

- panvk: add error checking for dump/trace mmap call

- pan/kmod: fix propagation of MAP_FAILED in pan_kmod_bo_mmap

- panvk: don’t report features for image formats that are only usable as vertex buffers

- panvk: store BO offset in panvk_image_plane

- panvk: implement VK_EXT_host_image_copy for linear color images

- panvk: split out helper function for checking AFBC support

- pan/shared: add function to copy between two tiled images

- panvk: implement VK_EXT_host_image_copy for tiled images

- pan/shared: refactor pan_tiling

- panfrost: add support for (de)interleaving Z24S8 in pan_tiling

- panvk: implement VK_EXT_host_image_copy for depth/stencil images

- panvk: advertise vulkan 1.4 on v10+

Patrick Lerda (37):

- mesa_interface: fix legacy dri2 compatibility

- r600: implement EXT_shader_image_load_store

- r600: add a constant representing gs vertex indirect total

- r600: implement gs indirect load_per_vertex_input

- radeon/evergreen: improve depth24_stencil8 mipmap behavior

- r600: add r600_lower_tess_io metadata compatibility

- r600: add r600_lower_shared_io metadata compatibility

- r600: add r600_nir_lower_int_tg4 metadata compatibility

- r600: add r600_nir_lower_txl_txf_array_or_cube metadata compatibility

- r600: fix pop-free clipping

- r600: index_bias should be forced to zero for all indirect draw calls

- r600: add an unlikely() to synchronize with the index_bias fix

- r600: fix index buffer with offset

- r600: restructure the atomic function for the next update

- r600: unlock cayman number of atomic counters

- r600: bump evergreen atomic counters to twelve

- r600: enable ARB_transform_feedback_overflow_query

- r600: enable trivial ARB_shader_group_vote

- r600: improve command stream constraints

- r600: implement ARB_shader_draw_parameters

- r600: implement ARB_indirect_parameters

- r600: bump evergreen and cayman glsl level to 460

- r600: handle cayman border color sint formats

- r600: clean up and refactor texture_buffer_sampler_view()

- r600: clamp to max_texel_buffer_elements

- r600: update the documentation of the extensions

- r600: make vertex r10g10b10a2_snorm conformant on palm and beyond

- r600: fix emit_image_load_or_atomic() snorm formats

- r600: enable AMD_framebuffer_multisample_advanced

- r600: fix emit_ssbo_store() wrmask compatibility

- r600: set never as the depth compare function when depth compare is disabled

- r600: fix rv770 border color

- dri: fix image_loader_extensions array

- dri: complete the support for ARGB4444

- r600: refactor r600_is_buffer_format_supported() for the next update

- r600: fix remaining pbo issues

- r600: fix arb_shader_image_load_store incomplete

Paul Gofman (1):

- radv/amdgpu: Fix hash key in radv_amdgpu_winsys_destroy().

Paulo Zanoni (3):

- anv/trtt: don’t avoid the TR-TT submission when there is stuff to signal

- intel/isl: don’t clamp num_elements to (1 << 27)

- brw: properly decode TGL_PIPE_SCALAR

Pavel Gribov (1):

- radv: small fix for sam check

Pavel Ondračka (2):

- r300/ci: add two flakes

- r300: minor fix for backend writer/reader detection

Petar G. Georgiev (1):

- freedreno/fdl: Add support for RGB888/BGR888 pipe formats in render buffer creation

Peyton Lee (5):

- radeonsi/vpe: enhance scaling quality

- radeonsi/vpe: remove background color

- radeonsi/vpe: correct capability

- amd: add vpe_version

- amd/gmlib: remove the executable bit

Philip Rebohle (1):

- radv: Remove offset parameter from radv_make_texel_buffer_descriptor.

Philipp Zabel (1):

- teflon: Allow per-axis quantization

Pierre-Eric Pelloux-Prayer (52):

- winsys/amdgpu: disable VM_ALWAYS_VALID

- radeonsi/tests: use proper skip file

- radeonsi: fix potential use after free in si_set_debug_callback

- ac/nir: init blake3 for cs blit shader

- radeonsi: skip blit incompatible scenarios

- radeonsi: init use_aco properly when llvm is disabled

- winsys/radeon: add surface_offset_from_coord

- radeonsi: allow msaa sparse textures on gfx10+

- radeonsi: skip draws using invalid setup

- amd/ci: remove references to tests that don’t exist anymore

- radeonsi/tests: fix script handling of missing results

- radeonsi: allow sparse depth textures

- ac/llvm: rework component trimming in visit_tex

- aco/isel: fix visit_tex handling of is_sparse

- radeonsi/tests: update expected results

- radeonsi: fix attribute_pos_prim_ring handling

- radeonsi: check set_debug_callback before use

- winsys/amdgpu: remove return value from amdgpu_init_cs_context

- radeonsi: use mesa_loge instead of fprintf

- winsys/amdgpu: use mesa_loge instead of fprintf

- radeonsi: use si_set_buf_desc_address helper

- radeonsi: fix typo in sdma code

- ac/pm4: determine spi_shader_pgm_lo_reg when PKT3_SET_SH_REG_PAIRS is used

- radeonsi: enable SQTT for more chips

- radeonsi: transition to TC-compatible HTILE on full clears

- util: add util_sync_provider::clone

- ac/info: rename has_local_buffers into has_vm_always_valid

- ac/virtio: port to vdrm functions

- ac/drm: remove ac_drm_cs_create_syncobj

- ac/drm: store a util_sync_provider in ac_drm_device

- ac/drm: replace direct ioctl calls by util_sync_provider

- amd/virtio: add vpipe support

- radeonsi/virtio: support vpipe

- radv/virtio: support vpipe

- radv: disable extension depending on timeline syncobj when missing

- radv: rework VM_ALWAYS_VALID handling

- ac/info: use u_sync_provider instead of DRM_CAP_SYNCOBJ(_TIMELINE)

- ac/info: add ac_drm_query_pci_bus_info

- ac/virtio: support timeline syncobj

- amd/virtio: clear DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT

- ac/virtio: fix alignment of metadata command

- ac: fix potential overflows

- ac: fix invalid array size

- radeonsi: fix potential overflows

- tc: fix potential overflows

- mesa/program: remove useless assignment

- egl: cast printf argument to the expected type

- aux/indices: remove useless lines

- util/texcompress: fix comparison warning

- mesa: fix total_invocations computation

- frontends/va: fix potential overflows

- bufferobj: init the return value for GetParam functions

Pohsiang (John) Hsu (24):

- pipe: add PIPE_VIDEO_CAP_ENC_MAX_LONG_TERM_REFERENCES_PER_FRAME for H264/H265 encode

- d3d12: Add support for retrieving PIPE_VIDEO_CAP_ENC_MAX_LONG_TERM_REFERENCES_PER_FRAME for H264/H265 encode

- pipe: add PIPE_VIDEO_CAP_ENC_MAX_DPB_CAPACITY for H264/H265 encode

- d3d12: Add support for retreiving PIPE_VIDEO_CAP_ENC_MAX_DPB_CAPACITY for H264/H265 encode

- d3d12: enable D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_ENABLE_LONG_TERM_REFERENCES when max_num_ltr_frames > 0

- d3d12: fix configuration flag for D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_DISABLE_LOOP_FILTER_ACROSS_SLICES

- util: fix msvc build warning 4146 (unary minus operator applied to unsigned type, result still unsigned)

- gallium/auxiliary: fix msvc build warning 4146 (unary minus operator applied to unsigned type, result still unsigned)

- mediafoundation: Add mediafoundation frontend

- mediafoundation: add ETW event for perf analysis

- mediafoundation: get device vendor id, device id, and driver version

- mediafoundation: on use LTR, synchronize the active ltr bitmap to the one passed in

- mediafoundation: add mechanism to disable async and h.264 unwrapped POC (commented out for now) according to gpu/version

- mediafoundation: move readme.md to docs folder

- mediafoundation: Allow to build multiple codec MFT DLLs in one build pass

- ci: build mediafoundation frontend in windows-msvc

- mediafoundation: Disable level check to unblock 8K x 8K HEVC encode for now.

- mediafoundation: periodic clang-format

- mediafoundation: fix slice capability check, and fix the slice mb mode, remove slice mode 2

- d3d12: fix failure when building with v1.717.0-preview and running on Windows 11 without Agility Pack

- mediafoundation: make file version the same as product version, and increment version to 1.0.6

- mediafoundation: fix cropping flag when using software sample

- mediafoundation: fix build after updating sdk to 26100.4188

- mediafoundation: don’t send METransformNeedInput when in Flush/Drain

Qiang Yu (17):

- nir/opt_varyings: fix mesh shader miss promote varying to flat

- gallium: remove ir arg from pipe_screen.get_compiler_options

- mesa: do not assume geometry shader when init

- Revert “gallium: add drawid_offset to draw_mesh_tasks interface”

- mesa: remove gl_program.Target

- radeonsi: check render feedback only for fragment shader

- radeonsi: use mask for uses_bindless_samplers/images

- radeonsi: fix gfx11 ngg shader emit

- ac,radv: move mesh_fast_launch_2 to ac

- radeonsi: support more than 64 options for AMD_DEBUG

- ac: parse ib for mesh shader dispatch packets

- radv: change mesh shader gs_vgpr_comp_cnt for gfx11

- nir: fix PRIMITIVE_INDICES mistreated as varying

- nir/recompute_io_bases: fix for per primitive IO

- ac,radv: move nir_load_task_ring_entry_amd to ac

- ac,radv: move mesh scratch ring constants to ac

- ac,radv: move nir_load_ring_mesh_scratch_offset_amd to ac

Renato Pereyra (2):

- pps: Report available counters when gpu.counters* data source is registered

- pps: Generate libgpudataprofiling.so from pps-producer sources for Android CTS

Rhys Perry (131):

- aco/gfx12: don’t use second VALU for VOPD’s OPX if there is a WaR

- aco: rename is_opy_only to can_be_opx

- aco: add are_src_banks_compatible helper for VOPD creation

- aco: refactor can_use_vopd so that it returns flags

- aco/gfx12: assume VOPD with two v_mov_b32 are src bank compatible

- aco/gfx12: VOPD src0/1 are src bank compatible if they are the same vgpr

- aco: combine VALU lanemask hazard into VALUMaskWriteHazard

- aco: init vm_vsrc/sa_sdst from depctr_wait

- aco: remove va_vdst/vm_vsrc/sa_sdst variables

- aco: use v_perm_b32 for do_pack_2x16 on gfx10+

- aco: use v_perm_b32 for byte swaps within a VGPR on gfx10

- aco/gfx11: create waitcnt for workgroup vmem barriers

- aco/ra: update_renames() before add_subdword_definition()

- aco/ra: use a correct stride for subdword get_reg_impl

- aco: fix get_temp_reg_changes with clobbered operands

- aco: improve spilling of clobbered operands

- aco/ra: change sorting in compact_relocate_vars

- aco/ra: don’t require alignment for NPOT SGPR temporaries

- aco: fix compact_relocate_vars fallback with scc/exec/m0 precolored regs

- aco/ra: cleanup compact_relocate_vars fallback path

- aco/ra: add ra_test_policy::use_compact_relocate

- aco/tests: add pseudo-scalar transcendental and fallback path RA tests

- aco/gfx12: use s_add_u64

- aco/gfx12: use s_sub_u64

- aco: increase max_const_offset_plus_one for SMEM load_global

- aco/gfx12: increase maximum smem offset

- aco/gfx12: increase maximum global/scratch offset

- aco/gfx12: increase maximum vbuffer offset

- aco: fix max_const_offset_plus_one overflow

- aco: replace max_const_offset_plus_one with max_const_offset

- vtn: use nir_const_value_for_raw_uint for bfloat SpecConstantOp/FConvert

- util: silence -Wstringop-overread in SHA1

- nir/opt_shrink_vectors: add assume to silence warning

- nir/lower_gs_intrinsics: silence warning

- aco: swap the correct v_mov_b32 if there are two of them

- aco: add smem opcode helper

- aco/gfx12: use s_load_dwordx3 to load ray launch sizes

- aco: prepare for dwordx3 smem loads

- aco/gfx12: select dwordx3 smem loads

- radv/gfx12: use dword3 smem loads for push constants

- aco: support 8/16-bit loads in smem_combine()

- aco/gfx12: allow 8/16-bit smem loads

- nir/search: extend swizzle_y

- nir/algebraic: optimize ior(unpack_4x8, unpack_4x8<<8) to unpack_32_2x16

- ac/nir: round components when lowering 8/16-bit loads to 32-bit

- ac/nir: allow less than one register of overfetch

- ac/nir: allow vectorization of unsupported 8/16-bit loads

- ac/nir: allow 8/16-bit smem loads

- aco: support more opcodes in apply_ds_extract

- aco: support sign extension in apply_load_extract

- aco: don’t check dst_bitsize in apply_load_extract

- radv: perform nir_opt_access before the first radv_optimize_nir

- util: fix float to bfloat16 conversion with NaN

- ac/llvm: correctly split vector 8/16-bit stores

- ac/llvm: correctly set alignment of vector global load/store

- aco/gfx115: consider point sample acceleration

- aco: fix wait_entry::join() when changing vmem_types

- aco: rename ops_fixed_to_def to tied_defs

- aco/ra: replace skip_renaming with copy_kill

- aco/ra: move optimize_encoding earlier

- aco: set copy-kill for tied operands with the same temporary

- aco/ra: rewrite handling of tied definitions

- aco/tests: add tests for tied definitions

- aco/tests: Add tests for vector-aligned operands

- aco: consider image_msaa_load a sample operation before gfx12

- aco/hard_clauses: simplify and complete get_type()

- nir: fix unpack_unorm_2x16/unpack_snorm_2x16 constant folding

- radv: fix too large shift exponent in radv_remove_color_exports

- nir: fix signed overflow in pack_half_2x16 constant folding

- nir: fix left shift of negative value in ibfe constant folding

- nir/load_store_vectorize: stabilize entry sort

- radv/meta: use unsigned min in copy/fill shaders

- aco: set vmem_types for args_pending_vmem

- aco: only join barrier_imm/barrier_events for logical edges

- aco: add wait_entry::vm_mask

- aco: add wait_entry::logical_events

- aco: skip waitcnt between two vmem writing different halves

- aco: skip waitcnt between two vmem writing different lanes

- aco: sometimes join linear wait entries on logical edges

- aco: make all wait entries linear

- aco: don’t consider gfx1153 to have point sample acceleration

- aco/gfx12: fix VALUReadSGPRHazard with carry-out

- aco: update VALUReadSGPRHazard comment

- ac/nir: run nir_lower_vars_to_ssa after nir_lower_task_shader

- meson: add dep_llvm to radv_tests

- ac/nir: create lowered inverse_ballot

- ac/llvm: fix overloading of intrinsic names

- ac/llvm: fix mul24 intrinsic overloading

- ac/llvm: convert to integer after reductions

- ac/llvm: rewrite shuffle waterfall loop

- ac/llvm: use ds_bpermute_b32 for GFX12 wave64

- nir/uub: improve ishl/imul with constant sources

- nir/uub: improve iand with constant sources

- nir/uub: improve ior/ixor with constant sources

- nir: simplify nir_addition_might_overflow

- aco/lower_branches: keep blocks with multiple logical successors

- aco: continue when try_remove_simple_block can’t remove a predecessor

- aco: validate that preds/succs match

- aco/tests: add lower_branches tests

- util/stats: fix signness of c types

- util/stats: use PRIdx/PRIux format constants

- util/stats: fix XML type validation

- util/stats: add serialize helpers

- radv: use vk_outarray for pipeline statistics/executables

- radv,aco: switch to shader statistics framework

- nir/lower_bit_size: fix bitz/bitnz

- nir/search: fix dumping of conversions

- aco: update ctx.block when inserting discard block

- aco/ra: fix repeated compact_linear_vgprs() in get_reg()

- aco: handle FPAtomicToDenormModeHazard

- aco: count flat as vmem in statistics

- ac/nir: don’t combine multiple non-constant offsets into a global access

- aco/gfx6: disallow global access with sgpr address and two offsets

- aco: use addition helper in emit_load

- aco: add too-large constant offset to the address instead of the offset

- aco: simplify the load callback

- aco/gfx6: allow vgpr offset for global access with sgpr address

- aco/gfx6: allow both constant and gpr offset for global with sgpr address

- aco: increase global constant offset limit slightly

- aco: return a format in lower_global_address

- aco: simplify waitcnt insertion for flat access

- aco: optimize lds-only or vmem-only flat access

- aco: use MUBUF for global access with SGPR address on GFX7/8

- aco: remove RegClass::as_subdword

- nir/divergence: ignore boolean phis for ignore_undef_if_phi_srcs

- nir/cf: have nir_remove_after_cf_node remove phis at the start too

- nir/search: check variable requirements even if it’s already seen

- nir/uub: fix 8/16-bit overflow

- nir/load_store_vectorize: check for interfering shared2 before vectorizing

- nir/load_store_vectorize: set is_store for shared append/consume

- aco/ra: set late-kill for operands of temporary p_create_vector

Ricardo Garcia (1):

- radv: Ignore image barrier queue families if equal

Rob Clark (72):

- ci: Re enable fd-farm

- tu: Add TU_DEBUG=comm

- tu/virtio: Use util_get_command_line() helper

- freedreno/virtio: Use util_get_command_line() helper

- freedreno/ir3: Fix tess/geom asan error

- freedreno: Fix shader-clock when kernel exposes UCHE_TRAP_BASE

- ci: Disable fd-farm

- freedreno: Avoid repeated device lookup

- freedreno: Don’t autotune if we are already sysmem

- freedreno: Fix compute caps

- freedreno: Use non-draw batches for compute contexts

- freedreno: correct resource usage check

- freedreno: A couple features.txt updates

- freedreno: Fold X1-85 back into existing dev table entry

- freedreno: Enable the X1-45

- freedreno/fdl: Add fd6_texture_format_supported()

- vtn: Handle non-32b tex dests

- freedreno: Remove obsolete comment

- freedreno/a6xx: Fix max_threads_per_block calc

- freedreno/a6xx: cl_khr_image2d_from_buffer support

- freedreno/cffdec: Skip printing null descriptors

- freedreno/a6xx: Fix buffer clears

- util+tu: Add util_format_is_float16()

- util: Add a util_blitter_blit_with_txf() helper

- freedreno: Add custom f16 blit shader

- freedreno/a6xx: Don’t use 2d blit path for f16

- nir: Fix lower_readonly_images_to_tex bitsize

- freedreno/a6xx: Fix max_threads to account for reg footprint

- freedreno/decode: Add a simple util to dump csv reg list

- freedreno/a6xx: Fix SP_CS_IBO address on a7xx

- freedreno/registers: Fix a couple missing variants

- freedreno/registers: Some reg64 conversion

- freedreno: Rename IBO -> UAV

- freedreno/a6xx: The great register renaming

- freedreno/a6xx: Fix thread calc for dummy kernels

- rusticl: Fix work group size validation

- dri: Remove unused prototype

- dri: Don’t iterate the planes for non-YUV

- dri: Remove plane info for RGB formats

- freedreno: Add register renaming to .git-blame-ignore-revs

- freedreno: Add missing CP_INDIRECT_BUFFER

- freedreno/a6xx: Add single common source for a6xx.xml.h

- freedreno/a6xx: Split enums out of a6xx.xml

- freedreno/a6xx: Split descriptors out into their own file

- freedreno/a6xx: Don’t try to tile NPoT formats

- freedreno/layout: Support for NPoT formats

- dri2+gallium: Support to import suboptimal formats

- dri: Correct handle-usage flags

- freedreno/a6xx: Allow suboptimal sampling formats when requested

- freedreno: Avoid unnecessarily aligning to gmem_align_w

- freedreno: Advertise external_only if we can’t render

- freedreno: Misc whitespace cleanups

- freedreno/layout: Introduce fdl_image_params

- turnip: convert to fdl6_layout_image

- freedreno: Don’t call setup_slices for buffers

- freedreno: Add helper to initialize layout params

- freedreno: Pass layout type to backend

- freedreno: Move layout init to backends

- freedreno/a5xx: Convert to fdl5_layout_image

- freedreno/a6xx: Convert to fdl6_layout_image

- freedreno/layout: Remove unneeded shims

- freedreno: Pass handle down to layout_resource_for_modifier

- freedreno/a6xx: Use handle for explicit layout

- freedreno/a6xx: Refactor handle import

- freedreno/a6xx: Use metadata to resolve INVALID modifier

- freedreno: Move layout to layout_resource_for_handle()

- freedreno: dump layout in import path as well

- drm-uapi: update drm_fourcc.h

- mesa/main: Add MESA_FORMAT_RGB_UNORM16

- dri2: Allow allocating suboptimal for sampling

- dri: Add additional 16/32b float/int formats

- gbm: Add more formats

Robert Mader (9):

- llvmpipe: Fix dmabuf import paths for DRM_FORMAT_YUYV variants

- llvmpipe: Preparations for multiplanar formats

- llvmpipe: Enable support for multiplanar formats

- egl: Remove check for GL or GLES

- egl: Fixes for eglQueryContext and RESET_NOTIFICATION_STRATEGY

- drm-uapi: update drm_fourcc.h to latest version

- mesa/formats: Add support for 10 and 12 bit SW decoder YCbCr formats

- gles: Add support for 10/12/16 bit SW decoder YCbCr formats

- llvmpipe: Fix parameter queries for mulitplanar formats

Rohan Garg (15):

- anv: re enable compression for CPS surfaces on platforms other than Xe

- intel/compiler: use a immediate when doing the shift

- anv: use the common function for detecting a mesh shader stage

- compiler/types: add a bfloat16 type

- spirv: construct a bfloat16 from the given SPIR-V bitsize and encoding

- spirv: Enable bfloat16 capabilities

- anv: enable VK_KHR_shader_bfloat16

- anv: use the float qualifier to denote the right value

- anv: Support fast-clears in vkCmdClearDepthStencilImage

- anv: drop anv_can_hiz_clear_ds_view in favor of anv_can_hiz_clear_image

- nir/lower_io: add io_offset support for more intrinsics

- brw: introduce MEMORY_LOGICAL_ADDRESS_OFFSET to encode address offsets

- brw: encode the offset into the message descriptor for Xe2

- brw: store the buffer offset for load/store intrinsics

- brw: run the nir_opt_offsets pass and set the maximum offset size

Roland Scheidegger (2):

- llvmpipe: Fix crash when using nir_tex_src_min_lod

- llvmpipe: Improve persepctive correction with centroid/sample interpolation

Romaric Jodin (7):

- panvk: Advertise support for VK_KHR_shader_integer_dot_product

- panfrost: bi_builder.h.py: stop generating unneeded parentheses

- panfrost: Update bifrost_isa.py to support saturate for valhall

- panvk: add support for {s,u}dot_4x8_{sat}

- panvk: fix typo in printf in bi_validate

- panvk: fix bi_emit_alu calling bi_make_vec_to

- nir/lower_bit_size: Avoid round-trip conversion when possible

Ruijing Dong (1):

- radeonsi/vcn: vcn5 av1 decoding context buffer fix

Russell Greene (1):

- radeonsi: vpe: fix noisy false error

Ryan Houdek (1):

- tu: Fixes missing sse2 flags

Ryan Mckeever (14):

- panvk: Prepare cmd_prepare_push_uniforms() for multiDrawIndirect

- panvk: Prepare cmd_prepare_shader_res_table() for multiDrawIndirect

- panvk: Implement multiDrawIndirect for v10+

- panvk: Implement CmdDraw[Indexed]IndirectCount for v10+

- panvk: Advertise KHR_draw_indirect_count for v10+

- panvk: Enable VK_EXT_load_store_op_none

- frontend/dri: Replace tabs with spaces

- st/mesa: Do not specify PIPE_FORMAT_R8G8B8X8_UNORM twice for RGB

- gallium: Support RGB888/BGR888 formats

- gbm/dri: Support RGB888/BGR888 formats

- egl/wayland: Set EGL_NATIVE_VISUAL_ID for EGLConfig

- egl/wayland: Support RGB888/BGR888 formats

- st/mesa: Support RGB888/BGR888 formats

- pan/format: Add render target support for R8G8B8/B8G8R8 formats

Sagar Ghuge (17):

- intel/genxml/xe3: Update 3STATE_BTD field

- anv: Update RT dispatch globals to use 64bit data structure

- intel/compiler: Pass around intel_device_info parameter in helper

- intel/compiler: Update MemHit data structure to 64-bit version

- intel/compiler: Update MemRay data structure to 64-bit

- intel/rt: Update BVH instance leaf load for Xe3+

- anv: Enable 64bit memory structure mode for RT

- intel/compiler: Fix stackIDs on Xe2+

- anv: Fix untyped data port cache pipe control dump output

- anv: Drop unused helper cmd_buffer_dispatch_kernel

- anv: Apply flush during WriteAccelerationStructures

- anv: Drop unused anv_rt_bvh_build_method enum

- intel/common: Add helper for compute thread group dispatch size

- iris: Set TG size based on number of threads

- blorp: Set TG size based on number of threads

- anv: Set TG size based on number of threads

- intel/compiler: Drop unused param from set_memory_address

Samuel Pitoiset (189):

- radv: use radv_fill_memory() in the accel struct path

- radv: add radv_fill_image() helper

- radv: simplify radv_fill_xxx() helpers

- radv: re-introduce the compute vs CP DMA heuristic for copy/fill operations

- ac/gpu_info,radv: add scratch_wavesize_granularity info

- ac,radeonsi: rework computing scratch wavesize and tmpring register

- radv: compute the optimal scratch wavesize

- radv: use common scratch tmpring size programming

- radv: use radeon_set_sh_reg() for only 1 DWORD

- radv: remove redundant assertion when emitting PS epilog state

- radv: simplify combining TES/VS+GS config registers

- radv: tidy up radv_emit_vertex_shader()

- radv: tidy up radv_emit_geometry_shader()

- radv: tidy up radv_emit_ps_epilog_state()

- radv: add a function to emit meshlet registers on GFX11+

- radeonsi: fix configuring compute scratch

- radv/meta: simplify dealing with image layouts for blits/resolves

- radv/meta: remove unused functions/prototypes

- radv/meta: rename more buffer->memory for fill/copy/update operations

- radv/meta: remove unnecessary radv_meta_blit2d_buffer::bs

- radv/meta: remove redundant parameter to blit_surf_for_image_level_layer()

- radv: set radv_disable_dcc=true for WWE 2k23

- radv: fix re-emitting VRS state when rendering begins

- radv: do not clear unwritten color attachments with dual-source blending

- radv: disable SINGLE clear codes to workaround a hw bug with DCC on GFX11

- radv: fix GPU hangs with image copies for ASTC/ETC2 formats on transfer queue

- spirv: Update the JSON and headers

- vulkan: Update XML and headers to 1.4.314

- radv: promote VK_EXT_robustness2 to VK_KHR_robustness2

- radv: ignore radv_disable_dcc_stores on GFX12

- radv: ignore conditional rendering with vkCmdTraceRays*

- radv: adjust computing the PC from the trap handler on GFX12

- radv: fix save/restore SCC in the trap handler on GFX12

- radv: fix configuring TRAP_PRESENT for compute shaders on GFX12

- radv,aco: dump more SQ_WAVE registers from the trap handler on GFX12

- aco: adjust an assertion in select_trap_handler_shader()

- vulkan: Update XML and headers to 1.4.315

- vulkan: add support for VK_IMAGE_LAYOUT_ZERO_INITIALIZED_EXT

- ac/gpu_info: add has_zerovram_support

- radv: implement VK_EXT_zero_initialize_device_memory

- radv: advertise VK_EXT_zero_initialize_device_memory

- radv: ignore radv_zero_vram=true if zeroInitialDeviceMemory is enabled

- radv: fix SDMA copies for linear 96-bits formats

- radv: fix emitting dynamic viewports/scissors when the count is static

- radv: remove the optimization for equal immutable samplers

- radv: fix fetching conditional rendering state for DGC preprocess

- radv: fix conditional rendering with DGC and non native 32-bit predicate

- ac/gpu_info: allow 32-bit predicate on GFX11+

- vulkan/runtime: fix a wrong assert that validates timeline semaphores

- radv: expose VK_EXT_zero_initialize_device_memory unconditionally

- ac/gpu_info: rename has_zerovram_support to has_default_zerovram_support

- radv: fix missing texel scale for unaligned linear SDMA copies

- radv: add vk_format_is_96bit()

- radv/meta: move and rename get_r32g32b32_format()

- radv: fix non-indexed draws with primitive restart enable

- radv: adjust comments describing GDS needs

- radv: rename a variable in gfx10_copy_shader_query_ace()

- radv: stop reserving NGG streamout counters

- radv: increase size of the buffer for emulated queries on GFX12

- radv: declare and emit NGG_QUERY_BUF_VA on GFX11-GFX11.5

- radv: stop using GDS for emulated prims gen/xfb queries on GFX11-GFX11.5

- ac/gpu_info: add has_cp_dma_with_null_prt_bug

- radv: fix CP DMA with NULL PRT pages on GFX8-9

- radv: eliminate useless mov(const) after lowering all IO to scalar

- amd/ci: hold back navi21/navi31 to kernel 6.6

- radv/ci: remove RADV_PERFTEST=video_{decode,encode} when it’s the default

- radv: fix capture/replay with sparse images and descriptor buffer

- radv: add radv_disable_hiz_his_gfx12 and enable for Mafia Definitive Edition

- aco: implement bitfield_reverse for types other than 32-bits

- nir/lower_int64: add bitfield_extract lowering

- ac/nir: enable 64-bit lowering for bitfield_extract

- aco: implement bitfield_extract for 8-bit/16-bit

- radv,radeonsi: emit UPDATE_DB_SUMMARIZER_TIMEOUT on GFX12

- ci: uprev VKCTS main to f66e0ae866117f3d7375763bf5ec194404d88cdb

- radv/ci: bump the timeout for radv-polaris10-vkcts

- radv: set radv_zero_vram=true for GPUScore: Breaking limit

- radv: add a new dirty state for emitting tess user SGPRs

- radv: add macros for paired shader registers on GFX12

- radv: use paired shader registers for graphics on GFX12

- spirv: disable mediump for bitfield insert/extract

- nir: generalize bitfield insert/extract sizes

- radv,radeonsi: fix emitting UPDATE_DB_SUMMARIZER_TIMEOUT on GFX12

- radv: stop using multiview with DGC

- radv: remove dead code in radv_CreateDescriptorSetLayout()

- radv: use 32 bytes descriptor for sampled/input attachment images on GFX11+

- radv/meta: fix using the wrong pipeline layout for ASTC decoding

- radv: remove useless vk_common_entrypoints.h includes

- radv: stop using vk_common entrypoints when not necessary

- radv: stop setting the address for capture/replay and non-sparse buffers

- radv: cleanup creating sparse buffers with capture/replay

- radv: add capture/replay for sparse buffers and descriptor buffer

- radv: make sure to zero-initialize image view descriptors

- radv: fix 3-plane formats with descriptor buffers

- radv: unset radv_disable_dedicated_sparse_queue for Bethesda Games

- radv: remove radv_disable_dedicated_sparse_queue completely

- radv: unset radv_force_64k_sparse_alignment for DOOM: The Dark Ages

- Revert “radv,driconf: Add radv_force_64k_sparse_alignment config”

- radv: unset radv_lower_terminate_to_discard=true for Indiana Jones

- radv: add support for VK_QUERY_POOL_CREATE_RESET_BIT_KHR

- radv/nir: lower unassigned vertex attributes to (0,0,0,0)

- radv: advertise VK_KHR_maintenance9

- radv/nir: adjust a comment about inlining immutable samplers

- radv: cleanup redundant switch cases in radv_GetDescriptorEXT()

- radv: remove unused 96-bit memcpy for image descriptors

- radv: use constants for different descriptor sizes

- radv: implement VK_KHR_unified_image_layouts

- radv: advertise VK_KHR_unified_image_layouts on GFX11+

- radv: enable shaderBufferFloat32AtomicMinMax on GFX12

- aco: add support for image f32 atomic add

- radv: enable shaderImageFloat32AtomicAdd on GFX12 with ACO

- radv: fix a compilation warning with Clang in radv_get_depth_clamp_mode()

- docs: mark VK_KHR_depth_clamp_zero_one as done for RADV

- ac/surface: fix aliasing DCC tilings with HiZ info on GFX12

- radv: fix 1x user sample locations on GFX10+

- radv/meta: use radv_get_copy_flags_from_bo() more

- docs: move nogttspill to the RADV_PERFTEST section

- docs: remove redundant nogttspill description

- ci: uprev VKCTS main to 9cc8e038994c32534b3d2c4ba88c1dc49ef53228

- radv: replace radv_combined_image_descriptor_sampler_offset() by a constant

- radv: add a separate path for writing ycbcr combined image+sampler desc

- radv: reduce the number of bytes written for combined image+sampler desc

- radv: use one descriptor per plane for combined image+sampler with ycbcr

- ci: uprev vkd3d

- radv: switch to nir_intrinsic_load_input_attachment_coord

- ac/descriptors: configure {Z,STENCIL}_READ_ONLY for ds surfaces on GFX12+

- radv/meta: add a helper to determine if clearing is a full rect

- meson: remove unused osmesa option

- mr-label-maker.yml: remove remaining osmesa occurrences

- radeonsi: add a way to override the disk cache key with radeonsi-build-id

- radv: remove an useless check about custom border color

- radv: rename border_color_slot to border_color_index

- radv: simplify add_descriptor_set()

- radv: move pipeline layout implementation to radv_pipeline_layout.c/h

- aco: consider that nir_tex_src_{coord,ddx} can be the first source

- radv: gather nir shader info at the end of radv_optimize_nir()

- radv: make sure to zero-initialize MSB of accel struct descriptor

- radv: move descriptor pool implementation to radv_descriptor_pool.c/h

- radv: move write descriptor helpers to radv_descriptors.h

- radv: move descriptor update implementation to radv_descriptor_update_template.c/h

- radv: move radv_push_descriptor_set to radv_cmd_buffer.h

- radv: split descriptor set and descriptor utils in separate files

- radv/ci: uprev kernel to 6.15.3

- vulkan/runtime: add vk_sampler_{init,finish}() helpers

- radv: rework initializing/finishing samplers

- radv/meta: stop allocating sampler for blit operations

- radv: stop disabling the alpha optimization with E5B9G9R9 and RB+

- radv: disable RB+ with E5B9G9R9 to workaround failures on GFX10.3-GFX11.5

- ac/surface: use align with NPOT for estimating surface size

- ac/surface: select a different swizzle mode for ASTC formats on GFX12

- zink/ci: update list of expected failures for RADV

- radv: add a helper to emit INDIRECT_BUFFER in DGC

- radv: add helpers to emit one DGC sequence

- radv: add a helper to emit padding with DGC cmdbuf

- radv: remove unused parameter in build_dgc_buffer_preamble()

- radv: pass a dgc_cmdbuf parameter to more functions

- radv: do not perform a per-pixel copy for BCn formats with mips on GFX12+

- ac/descriptors,radv: move the nbc view param to the gfx10 union

- radv: fix indexing with variable descriptor count

- radv: fix the maximum variable descriptor count with inline uniform blocks

- radv: simplify creating descriptor sets with variable desciptor count

- radv/sdma: fix unaligned 96-bits copies on GFX9

- ac/surface: constify bpe_to_format()

- ac/surface: add support for surface<->memory copy using addrlib

- ac/surface: add a flag to forbid some swizzles for surface<->memory copies

- radv: only expose host visible memory types for images with host-transfer

- radv: map images with host-transfer at bind time

- radv: disable compression for host-transfer images

- radv: set RADEON_SURF_HOST_TRANSFER for host-transfer images

- radv: add support for formats with host-transfer

- radv: add support for querying HIC performance info

- radv: add support for querying HIC memcpy size

- radv: do not use MRT counters for host-transfer images

- radv: implement vkCopyMemoryToImageEXT()/vkCopyImageToMemoryEXT()

- radv: implement vkCopyImageToImageEXT()

- radv: implement vkTransitionImageLayout()

- radv: advertise VK_EXT_host_image_copy on GFX10+ behind RADV_PERFTEST=hic

- radv/ci: enable RADV_PERFTEST=hic for GFX10+ jobs

- zink/ci: enable RADV_PERFTEST=hic for GFX10+ jobs

- radv: add a way to disable the HIZ/HiS events based workaround on GFX12

- radv/bvh: remove redundant definition of DIV_ROUND_UP

- radv: re-run clang-format

- ci: uprev VKCTS main to 73db56e823f8bf6b9dcab57af43b4216c3ba19b5

- radv: implement DGC IB chaining when the number of sequences is too high

- radv: fix SQTT shaders relocation on GFX12

- radv: fix reporting instance/vertex_count for direct draws with RGP on GFX12

- radv: reject 1D block-compresed formats with mips on GFX6

- radv: fix a memleak with GS copy shader NIR

- radv: fix fbfetch output with compresed FMASK on <= GFX9

- vulkan: fix missing presentId2/presentWait2 enable features

Sasha Finkelstein (1):

- hk: Implement VK_EXT_map_memory_placed

Serdar Kocdemir (15):

- gfxstream: Track sparse image related functions

- gfxstream: Use logging functions for call tracing

- gfxstream: Mark VK_KHR_ray_tracing_pipeline dispatch only

- gfxstream: Reduce log level on AHB allocation

- gfxstream: Track vkGetDeviceImageMemoryRequirements on host

- gfxstream: Adjust allowed device extensions

- gfxstream: Implement private data extension

- gfxstream: Fix codegen for the moved logging.h file

- gfxstream: Fix compiler warnings

- gfxstream: Allow all promoted device extensions

- gfxstream: Fix min max reduction samplers v2

- gfxstream: Change clear colors only for images with ANB

- gfxstream: Check size for memcpy operations

- gfxstream: Remove unnecessary parentheses in codegen

- gfxstream: Small optimization on transformDescriptorSetList

Sergi Blanch Torne (11):

- bin/ci: crnm: bug while stressing a single job

- bin/ci: crnm: bug stress mode retry formula

- ci: angle: fix depot-tools dependency release

- ci: disable Collabora’s farm due to maintenance

- Revert “ci: disable Collabora’s farm due to maintenance”

- fluster: xfile update

- bin/ci: crnm: format in columns when listing

- bin/ci: crnm: columns list for cancelled jobs

- bin/ci: crnm: columns list when waiting jobs update

- bin/ci: crnm: adaptative field pads

- docs: crnm: document token usage

Sergi Blanch-Torne (11):

- ci: disable Collabora’s farm due to maintenance

- ci: Re-enable the Collabora farm

- Uprev ANGLE to c39f4a5c553cbee39af8f866aa82a9ffa4f02f5b

- ci: crnm: fix hyperlink format

- ci: separate hidden jobs to -inc yml files

- ci: split long containers build yaml

- ci: split hidden job definition for bare-metal and ci-tron

- ci: reduce the root .gitlab-ci file

- ci: crnm: extend it to work with other instances

- ci: crnm: rev argument for tags and branches

- ci: crnm: review argument metavar and type

Seán de Búrca (22):

- rusticl/device: set maximum work dimension to match implicit bounds

- rusticl: align memory utilities with std

- rusticl: improve internal typing

- rusticl: verify validity of property names and values

- rusticl: improve use of Rust idioms

- rusticl: remove unnecessary check for device in kernel list

- rusticl: replace `map_or(false, f)` with `is_some_and(f)`

- rusticl: fix build with clippy driver

- nak: remove unnecessary casts and conversions

- nak: collapse extraneous conditional branches

- nak: use `Option` propagation instead of explicit let-else clauses

- nak: use standard methods and macros to improve readability

- nak,nil: avoid explicit returns at the end of functions

- nak,nil: elide lifetimes where possible

- nak,nouveau: adjust function/method signatures to better match convention

- nak,nil: style cleanup

- nouveau: implement `Default` for `Push`

- rusticl: hand-map 3-element arrays for fallible conversion

- rusticl: use simple equality check for contexts instead of `HashSet`

- rusticl: iterate subgroup sizes only as needed

- rusticl: write `CLInfoValue`s from iterators instead of collecting

- rusticl: replace unnecessary `Vec` references with slice refs

Shih, Jude (3):

- amd/vpelib: VPE descriptor added

- amd/vpelib: remove sensitive keywords

- amd/vpelib: Alpha Fill add mode

Sid Pranjale (1):

- vulkan/wsi: add cached bit to wsi host memory selection

Sil Vilerino (58):

- pipe: Add pipe_enc_cap_roi.log2_roi_min_block_pixel_size

- d3d12: Report pipe_enc_cap_roi.log2_roi_min_block_pixel_size

- d3d12: Fix reporting for PIPE_VIDEO_CAP_ENC_MAX_DPB_CAPACITY

- d3d12: Add #if guards for using new ID3D12VideoEncodeCommandList4

- d3d12: Use D3D12_FEATURE_VIDEO_ENCODER_SUPPORT2 when D3D12_VIDEO_USE_NEW_ENCODECMDLIST4_INTERFACE is set

- pipe: Add PIPE_VIDEO_CAP_ENC_DIRTY_RECTS and pipe_enc_dirty_rects for H264/H265 encode

- d3d12: Add support for pipe_enc_dirty_rects for H264/H265 encode

- pipe: Add PIPE_VIDEO_CAP_ENC_MOVE_RECTS and pipe_enc_move_rects for H264/H265 encode

- d3d12: Add support for pipe_enc_move_rects for H264/H265 encode

- pipe: Add PIPE_VIDEO_CAP_ENC_GPU_STATS_* and pipe_resource textures in H264/H265 encode pic params

- d3d12: Add support for QP, SATD and RC bits output stats

- pipe: Add sliced encoding API and caps

- d3d12: Prepare d3d12_video_encoder_encode_bitstream for sliced encoding. Checked working with single slice buffer at this point

- d3d12: Implement multi-slice notifications

- d3d12: Support slice NAL prefixes on slice notifications mode

- d3d12: deduplicate code with helpers: get_dirty_rects_support, get_move_rects_support, get_gpu_output_stats_support, get_sliced_encode_support

- pipe: Add (GPU input) PIPE_VIDEO_CAP_ENC_DIRTY_MAPS and pipe_enc_move_rects GPU input support

- d3d12: Add GPU input dirty rect support

- pipe: Add (GPU input) PIPE_VIDEO_CAP_ENC_QP_MAPS and input_gpu_qpmap GPU input support

- d3d12: Implement PIPE_VIDEO_CAP_ENC_QP_MAPS and CPU/GPU input QPMaps

- pipe: Add support for (GPU Input) motion maps

- d3d12: Make d3d12_video_encode_support_caps in/out param capEncoderSupportData1 pointer members an external allocation to outlive the stack of the method call

- d3d12: Implement GPU Input Motion vectors

- pipe: Add pipe_enc_cap_dirty_info.supports_require_auto_slice_mode

- d3d12: Reports pipe_enc_cap_dirty_info.supports_require_auto_slice_mode

- pipe: Add PIPE_VIDEO_SLICE_MODE_AUTO for gallium driver auto-partition

- d3d12: Implement H264/HEVC PIPE_VIDEO_SLICE_MODE_AUTO for gallium driver auto-partition

- pipe: Add pipe_enc_cap_dirty_info.supports_require_sao/loop_filter_disabled

- d3d12: Report pipe_enc_cap_dirty_info.supports_require_sao/loop_filter_disabled

- d3d12: Do not build microsoft/compiler when graphics, gl or vk disabled

- d3d12: Remove more nir dependencies when with_gallium_d3d12_graphics disabled

- d3d12: Set HEVC slice mode state before calling d3d12_video_encoder_negotiate_requested_features_and_d3d12_driver_caps

- d3d12: Add missing D3D12_VIDEO_USE_NEW_ENCODECMDLIST4_INTERFACE guards

- d3d12: Add fallback to ID3D12VideoEncodeCommandList2 if ID3D12VideoEncodeCommandList4 not available in underlying OS

- d3d12: Add missing offset to encode slice metadata in the get_feedback function

- nir: Only build nir headers for mediafoundation/d3d12-no-graphics paired build

- d3d12/meson: Add USE_D3D12_PREVIEW_HEADERS compiler flag based on dep_dxheaders.version()

- d3d12: Add new video encode HEVC configuration CU size 16-32 range

- mr-label-maker.yml: Add mediafoundation tag and associated directories

- d3d12: Upgrade to use DirectX-Headers 717 SDK from previous 716 version

- d3d12: Add D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_DISABLE_LOOP_FILTER_ACROSS_SLICES when querying HEVC capabilities

- d3d12: Fix sliced encode ID3D12Resource/ID3D12Fence reuse. Note the fence value now is the frame fence value as the fence is reused

- d3d12: Use RefPicListL0/L1 sizes in pipe_h265_enc_picture_desc when supported

- d3d12: Use helper to properly initialize d3d12_fences in d3d12 video

- pipe: Two pass video encode definitions

- d3d12: Implement full/lower two pass video encode

- pipe: Add video encode PSNR output stats

- d3d12: Add video encode PSNR output stats

- mediafoundation: Upgrade to use DirectX-Headers 717 SDK from previous 716 version

- mediafoundation: Fill RefPicListL0/L1 sizes in pipe_h265_enc_picture_desc

- mediafoundation: Implement full/lower resolution two pass

- mediafoundation: Request PSNR frame stats

- ci: Add Windows SDK 26100 to msvc image

- mediafoundation: Remove WIL dependency, use std elements instead

- mediafoundation: Cleanup comments/dead code

- mediafoundation: Pass the frame stats buffers to the gallium driver

- d3d12: Remove requirement of surface creation/clearing functions for video

- mediafoundation: Fix interop without copy fallback from DX11 to DX12

Simon Perretta (47):

- pco: drop shader binary finalizing

- pco: amend source validation tracking

- pco: amend z/w usage code

- pco, pygen: rework isa gen to support multi-instruction groups

- pco, pygen: amend translation of srcs/dests with no mods

- pco, pygen: support enum mappings for instances of two bitsets

- pco, pygen: add fdiv/frcp support

- pco, pygen: add support for tst, movc instructions and s{lt,ge,eq,ne} ops

- pco, pygen: add support for dma ld and add64_32

- pco, pygen: add support for unpck and conversions

- pco, pygen: add support for bitwise logical ops

- pco, pygen: further abstract src/dest references

- pco, pygen: track which hw srcs map to op srcs/dests

- pco: initial legalize pass/validation to handle hw restrictions

- pco, pygen: track valid phases and io allocations for ops

- pco, pygen: iterators for igrps and the instrs they contain

- pco, pygen: validate phases and io allocations for ops

- pco: commonise pass macro, use on opt subpasses

- pvr: commonize limits

- pvr: set device features/props/extensions to Vulkan 1.0 minimums (unless implemented)

- pco: run dce pass until no more progress is made

- pco: add pco nir algebraic pass boilerplate and basic lowering/opts

- pco: additional helper functions for address refs

- pvr: clarify image/sampler state word packing

- pvr: drop pvr_lower_nir

- pvr, pco: initial descriptor rework

- pco: remove per-device specialization of SPIR-V/NIR options

- pco: add support for load_ubo

- pco: handle frag/point coords sysvals

- pco: skip vector coalescing if ssa srcs are repeatedly referenced

- pco, pygen: add f{min,max} support

- pvr, pco: point size handling

- pco: support flat interpolation varyings

- pco: enable translation of vs sysvals

- pvr: store device uuid and build sha

- pvr: setup vk pipeline cache

- pco: allow empty/nop vertex shaders

- pvr: reorder device setup to create the compiler context earlier

- pco: add support for more pack/unpack ops

- pvr: enable partial vertex input dmas

- nir/precompiled: add helper to emit an enum map for multiple targets

- nir/precompiled: add shader stage option to nir_precompiled_build_variant

- nir/serialize: increase the op limit to 10 bits/1024

- nir/builder: add nir_bitfield_insert_imm helper

- nir/builder: add nir_ibitfield_extract_imm helper

- nir/lower_io_to_scalar: add case for lowering push constants

- glsl/list: add foreach_list_typed_from_reverse iterator

Stéphane Cerveau (2):

- radv/debug: use common path for dmesg and tail

- vulkan: radv: set quality level properties

Sushma Venkatesh Reddy (9):

- intel/compiler: Always run opt_algebraic after descriptor_lowering

- intel/compiler: Centralize type stomping logic for Gen12.5 restrictions

- intel/compiler: Call brw_try_override_assembly independent of debug flag

- intel/tools: Reflect SIMD lane count for EUs in device info output

- intel/perf: Add PTL OA support

- intel: Add env variable to add break point on/before compute dispatch

- anv: Add GPU breakpoint before/after specific compute dispatch call

- docs: Add INTEL_DEBUG_BKP_BEFORE/AFTER_DISPATCH_COUNT

- intel/executor: Add missing dependency to fix intermittent build failures

Sviatoslav Peleshko (2):

- intel/brw: Use correct instruction for value change check when coalescing

- brw/disasm: Fix Gfx11 3src-instructions dst register disassembly

Tanner Van De Walle (1):

- util: Make atomic_read use volatile reads with _Generic/decltype

Tapani Pälli (11):

- iris: force reallocate on eglCreateImage with GFX >= 20

- iris: make sure to not mix compressed vs non-compressed

- intel/dev: add note about PAT entries and Wa_18038669374

- anv: put parenthesis to the set_sampler_size equation

- intel/dev: update mesa_defs.json from internal database

- mesa: add missing stencil formats to _mesa_is_stencil_format

- intel/compiler: provide a helper for null any-hit shader

- anv: use internal rt-null-ahs when any_hit is null

- anv: small cleanup, remove unused helper function

- drirc: toggle on intel_storage_cache_policy_wt for tlou2

- drirc: toggle filter addr rounding for Heroes Of Valor

Thomas H.P. Andersen (3):

- nak: make is_fneg_zero detect -rZ

- driconf: update X4 Foundations executable name

- zink: do not overwrite existing error for miptail on uncommit

Timothy Arceri (22):

- util/driconf: add force_gl_depth_component_type_int workaround

- mesa: fix color material tracking

- mesa: relax EXT_texture_integer validation

- st/mesa: fix _IntegerBuffers bitfield use

- mesa/st: fix _BlendForceAlphaToOneDraw bitfield use

- mesa/st: fix _IsRGBDraw bitfield use

- mesa: fix _FP32Buffers bitfield use

- mesa: update validation when draw buffer changes

- mesa: extend linear_as_nearest work around

- util: add workaround for the game Foundation

- mesa: get correct src address for transferOps

- nir: raise NIR_SEARCH_MAX_VARIABLES limit to 24

- util/cpu: fix broken powerpc linux builds

- dril: fix format typo in lookup helper

- dril: use endian independent pipe formats

- dril: add BGR{X,A}8888 and RGB{X,A}8888

- dri: use plane format directly

- dri: add missing field to dri2_dup_image()

- dri: fix __DRI_IMAGE_FORMAT* to PIPE_FORMAT* mappings

- util: add workaround for legacy OpenGL tf2

- glsl: fix reuse of deref

- util: add workaround for Interstellar Rift

Timur Kristóf (2):

- radv: Clear dirty flag for MSAA state after emitting it.

- radv: Clear dirty flag for clip rects state after emitting it.

Tomeu Vizoso (26):

- teflon/tests: Use a single tolerance value

- teflon/tests: Test all models in /models

- teflon/tests: Take into account signedness when checking the output tensors

- teflon/tests: Print shorter negative INT8s

- teflon/tests: Divide the tolerance level by a constant

- teflon/tests: Dump output buffers to disk

- etnaviv/tests: Add comment on why the SSDLite MobileDet test fails

- etnaviv/ml: Use etna_buffer_resource instead of etna_resource

- etnaviv/ml: Reorder dimensions in convolutions

- etnaviv/ml: Fix zero point values for signedness

- etnaviv/ml: Support per-channel quantized weights

- teflon: Only mark integers as signed

- etnaviv/ml: Consolidate transpose/detranspose

- teflon: Actually accept concatenations with different number of channels

- teflon: Set unused dimensions to 1

- etnaviv/ml: Track memory layout of tensors

- etnaviv/ml: All tensors are now 4D, adapt to it

- teflon: Skip unsupported FullyConvolution operations

- etnaviv/ml: Support FullyConnected with signed weights

- etnaviv/ml: Fix depthwise convolutions

- teflon: Support more Pad configurations

- etnaviv/ml: Support padding the channels dimension

- etnaviv/ml: Rework tensor addition on V8

- teflon/tests: Read model data with mmap, for speed

- etnaviv: Release screen->dummy_desc_reloc.bo

- teflon: Release the arrays of tensors in operations

Valentine Burley (163):

- ci/lava: Collapse more log sections

- ci/lava: Don’t include the timeout in the log sections

- ci/lava: Merge and deduplicate log sections

- intel/ci: Start using the new 6.14 kernel on JSL

- ci: Uncollapse yaml-toml-shell-py-test log sections

- ci: Fix Android container structured tagging checks

- ci: Update ci-fairy to use shared ref from ci-templates

- ci: Use hyphens in make-git-archive job name

- ci: Update kernel to fix GPU recovery issues on sm8350

- ci/android: Use aapt from Debian packages

- ci/android: Collapse more build sections

- ci/angle: Collapse build section

- ci/deqp: Collapse build section

- ci/rust: Collapse build section

- ci/deqp-runner: Collapse build section

- ci/android: Remove redundant android-tools folder

- ci: Uprev ci-templates to get FDO_DISTRIBUTION_POST_EXEC and S3 fixes

- ci/lava: Ensure firmware directory exists before downloading a660_zap.mbn

- ci: Export the rootfs from the test-* containers

- ci/container: Include ANGLE in the x86_64 test-gl container

- ci/container: Include SkQP in the test-gl containers

- ci/lava: Add job definitions using the test-* containers

- ci/lava: Use rootfs exported from test-* containers

- ci/lava: Use the new container based rootfs for piglit traces

- ci/lava: Move rootfs handling for Fluster out of build script

- ci/va: Collapse build section for va-tools

- ci/va: Add /va/bin to PATH for test-video container

- ci/container: Add new container for libva and fluster testing

- ci: Include Fluster vectors in the rootfs

- ci/lava: Use the new test-video-based rootfs for VA-API jobs

- ci/amd: Convert to using the new container based rootfs

- ci/freedreno: Convert to using the new container based rootfs

- ci/panfrost: Convert to using the new container based rootfs

- ci/etnaviv: Convert to using the new container based rootfs

- ci/lima: Convert to using the new container based rootfs

- ci/svga: Convert to using the new container based rootfs

- ci/intel: Convert to using the new container based rootfs

- ci/lava: Remove job definitions using kernel+rootfs jobs

- ci: Add a workaround for finding deqp-runner on Broadcom

- ci/baremetal: Remove legacy support for unused devices

- ci/baremetal: Split baremetal_arm64_test to -gl and -vk

- ci/baremetal: Use container rootfs

- ci: Delete the kernel+rootfs jobs

- docs: Move the docs about caching downloads to LAVA from bare-metal

- docs: Remove the docs for setting up bare-metal devices

- ci/test: Move and rename .lava-fluster to .test-fluster

- amd/ci: Rename .radeonsi-raven-vaapi-fluster to .radeonsi-vaapi-fluster-rules

- ci/fluster: Move the fluster-runner.sh script

- ci/fluster: Add sections to job logs

- ci/fluster: Move Fluster to its own subfolder in the test-video container

- ci/fluster: Use structured tagging for Fluster

- ci/fluster: Use the structured tag as the Fluster vector version

- amd/ci: Remove increased timeout for radeonsi-raven-vaapi-fluster job

- ci/fluster: Fix and rename S3_PATH_FLUSTER to S3_FLUSTER_TAR

- iris/ci: Update trace checksums

- anv/ci: Update expectations

- freedreno/ci: Document regressions

- turnip/ci: Update expectations

- freedreno/ci: Disable a630 jobs

- zink/ci: Properly source setup-test-env.sh in zink-venus-lvp

- ci/crosvm: Fix image tags in build-crosvm.sh header

- ci/crosvm: Collapse build section

- ci/crosvm: Use structured tagging for crosvm

- ci: Don’t include the kernel in test-base image

- ci: Replace HWCI_KVM with HWCI_ENABLE_X86_KVM

- ci: Refactor structured tagging component definitions

- ci/baremetal: Fix rootfs URL detection

- ci: Remove EXTERNAL_KERNEL_TAG variable

- ci/container: Include DEBIAN_BUILD_TAG in debian/arm64_build

- ci: Run rustfmt and python jobs on aarch64

- zink/ci: Skip flaky trace on TGL

- freedreno/ci: Disable all a630 jobs

- freedreno/ci: Update piglit expectations on a618

- freedreno/ci: Re-enable a618-piglit

- amd/ci: Update kernel for Raven

- ci: Remove firmware from test-base

- ci: Forward all environment variables to DUTs and crosvm

- ci: Fix date parsing with BusyBox on Alpine

- ci/lava: Use init-stage2 and setup-test-env.sh from Mesa install

- ci/lava: Forward environmental variables to DUT directly

- bin/ci: Split out LAVA-specific python requirements

- ci: Add a minimal Alpine container for running LAVA jobs

- ci/baremetal: Set LAVA_DISTRIBUTION_TAG directly

- ci/lava: Drop LAVA_DISTRIBUTION_TAG

- ci: Remove debian/x86_64_pyutils container

- ci: Delete python-artifacts job

- ci/lava: Rename LAVA_S3_ARTIFACT_NAME

- ci/lava: Move mesa build job dependency to variant definitions

- ci: Don’t forward long environment variables

- ci: Rename debian-testing to debian-x86_64

- ci/android: Switch to using eglinfo to check GLES implementation

- ci/android: Check Vulkan driver using vulkaninfo

- ci: Use zstd compressed kernel modules

- ci/lava: Only deploy kernel-modules when needed

- ci/android: Make android-runner scripts safe for set -u

- ci/android: Add a version and renderer check for android-angle-lavapipe

- ci/android: Only replace ANGLE if needed

- ci: Allow ANGLE_TAG to be unset in -runner scripts

- ci/android: Close the Android tools section

- khronos-update: Add missing Vulkan Video headers

- lima/ci: Remove redundant FDO_HTTP_CACHE_URI

- ci: Add and use find_s3_project_artifact (and curl-with-retry) helpers

- ci/deqp: Use curl-with-retry helper

- ci/fluster: Move build-time check into GitLab log section

- ci/vkd3d: Use structured tagging for vkd3d-proton

- ci/lava: Remove vkd3d-proton from the core rootfs

- ci/init-stage1: Add /dev/fd symlink

- radv/ci: Add a pre-merge vkd3d job on Raven

- ci: Uprev GL & GLES CTS

- ci/android: Use DEQP_ANDROID_EXE for GLES CTS

- ci/vkd3d: Fix build when not uploading vkd3d-proton archive

- ci/piglit: Collapse build section

- anv/ci: Add a pre-merge vkd3d job on ADL

- intel/ci: Reduce parallelism of intel-adl-cl job

- intel/ci: Drop deprecated fp16 environment variable

- ci/android: Build test AMD drivers

- ci/lava: Make Cuttlefish a LAVA overlay

- ci/lava: Remove Android CTS from the core rootfs

- ci/android: Print the detailed deqp versions

- ci/intel: Fix the runner tag for Flip-hatch

- ci/virtio: Generalize .venus-rules

- ci/lava: Fix .lava-x86_64-test-android dependencies

- panvk/ci: Increase DEQP_FRACTION for g610-vk

- radeonsi/ci: Move full radeonsi-stoney-glcts-piglit job to pre-merge

- radeonsi/ci: Rename radeonsi Collabora rule to make it unambiguous

- radeonsi/ci: Add glcts and piglit job on Mendocino

- zink/ci: Rename zink-radv Valve rule to make it unambiguous

- zink/ci: Add glcts and piglit job on Cezanne with RADV

- ci: Uprev kernel to enable Multi-Gen LRU

- virtio/ci: Increase timeout for AHB tests

- virtio/ci: Split android-angle-venus-anv into reusable template

- virtio/ci: Add nightly Android Venus jobs on Intel TGL and ADL

- ci: Fix artifact name for jobs with parallel indices

- ci/android: Move sourcing setup-test-env.sh before `set -uex`

- ci/android: Add separate log section for Android CTS

- ci/android: Add link to Android CTS results

- ci: Use placeholder-job for mr-label-maker-test

- ci: Fix location of conditional build tags

- virtio/ci: Run additional VKCTS tests on Cuttlefish with Venus+ANV

- ci/android: Update Cuttlefish image

- freedreno/ci: Merge a618-piglit-cl into a618-piglit

- freedreno/ci: Merge a660-piglit-cl and a660-gl

- freedreno/ci: Increase parallelism of a660-gl-cl

- freedreno/ci: Increase the concurrency of a660-gl-cl

- freedreno/ci: Merge a750-piglit-cl and a750-gl

- panvk/ci: Run full g52-vk job pre-merge

- freedreno/ci: Increase the concurrency of sm8350-hdk

- turnip/ci: Skip slow tests in a660-vk

- turnip/ci: Reduce parallelism of a660-vk

- zink/ci: Update restricted trace checksums

- turnip/ci: Skip Vulkan Video tests

- ci/lava: Add arm64 ASan job templates

- freedreno/ci: Add ASan jobs on a618

- ci: Fix trace update script following environment variable changes

- freedreno/ci: Fix configuration for a618-traces-performance

- iris/ci: Simplify performance trace template

- zink/ci: Add a performance traces job on ADL

- iris/ci: Add a performance traces job on ADL

- radv/ci: Lower concurrency of radv-raven-traces-restricted

- iris/ci: Lower concurrency of iris-cml-traces

- panfrost/ci: Update expectations

- freedreno/ci: Update expectations

- ci: Always save the artifacts for performance traces

Vasily Khoruzhick (1):

- lima: ppir: index SSA nodes the same way as we index registers

Vignesh Raman (5):

- ci: bump ci-templates

- ci: use MESA_TEMPLATES_COMMIT for ci-fairy install

- ci: replace s3_upload wrapper with ci-fairy s3cp

- ci: add libproc2-0

- virgl/ci: update flakes

Ville Syrjälä (1):

- iris: Don’t use CCS_CC modifiers with INTEL_DEBUG=nofc

Vinson Lee (2):

- freedreno: Sort MRTs so output is stable

- subprojects: Update linux-raw-sys to 0.7.0

Visan, Tiberiu (1):

- amd/vpelib: feature augment

Vitaliy Triang3l Kuzmin (3):

- r600/sfn: Remove unused r600_lower_scratch_addresses

- r600/sfn: Fix scratch layout calculation for composite types

- r600: Fix rectangle coordinate limits on R6xx/R7xx

Vladly (2):

- freedreno/a3xx-a5xx: re-emit vertex state on VS change

- ir3/legalize: don’t allow end instruction as jump target on a5xx

Wei Zhao (1):

- winsys/amdgpu: Remove assert about user fence in amdgpu_fence_wait

Wenfeng Gao (5):

- mediafoundation: Added new CODECAPIs for GetValue and SetValue.

- mediafoundation: Support new MFSampleExtension for PSNR, QPMap, and BitsUsedMap.

- mediafoundation: enable new CODECAPI properties for frame stats

- mediafoundation: Modify the newly added CODECAPI behavior CODECAPI_AVEncVideoOutputQPMapBlockSize, CODECAPI_AVEncVideoOutputBitsUsedMapBlockSize.

- mediafoundation: Modify the helper function MFAttachPipeResourceAsSampleExtension to tell MF that the attached IMFMediaBuffer is ready to use. With this change, application can use Lock() to get the buffer.

Wolf480pl (1):

- radv/virtio: don’t leak drm FD when using vpipe

Yao Zi (1):

- radeonsi: Fix violation of aliasing rules in radeon_ws_bo_reference

Yinjie Yao (3):

- gallium/pipe: Increase hevc max slice to 600

- frontends/va: Handle properly when decoding more slices than limit

- radeonsi: Disable av1 cdef_channel_strength for VCN4

Yiwei Zhang (127):

- venus: fix missing renderer destructions

- venus: expose WSI on renderer without dma-buf support

- venus: fix to passively enable wsi required extensions

- vulkan: fix random tabs to spaces

- venus: clang-format

- venus: relax external memory ext requirement

- venus: misc cleanups post wsi requirement relax

- venus: filter out venus incapable physical devices

- kopper: Revert “kopper: Explicitly choose zink”

- venus: avoid false assert for MESA_VK_WSI_DEBUG=sw,linear

- venus: update docs and drop obsolete code for prime blit

- venus: refactor wsi acquire to use semaphore and fence SYNC_FD import

- venus: force different device on NV proprietary

- venus: track prime blit dst buffer memory in the wsi image

- venus: properly handle implicit fence from the compositor

- panvk: fix memory binding for wsi image alias

- panvk: drop bo tracking from panvk_buffer

- panvk: drop bo refcount from panvk_image

- vulkan/wsi: include missing barrier for transferring to blit dst image

- vulkan/wsi: split cmd record for img2buf blit and img2img blit

- pan/layout: add const to immutable local vars in pan_image_layout_init

- pan/layout: exclude plane offset from plane data size for import

- pan/layout: refactor wsi layout query

- pan/layout: document and prepare to fix planar plane offset

- panvk: fix imported external multi-planar image support

- venus: do not force prime blit on nv

- venus: force sw wsi path on nv proprietary

- lvp: fix wsi platform swapchain image bind

- venus: fix maint7 layered vk props query

- zink: leave can_do_invalid_linear_modifier open for venus

- v3dv: fix swapchain bind info look up

- anv: use narrow range to match up with mesa EGL

- hasvk: use narrow range to match up with mesa EGL

- vulkan/android: rename global u_gralloc ptr

- vulkan/android: update helper to initialize u_gralloc once

- anv: free up hwvulkan_device_t upon driver unloading

- anv: adopt common Android gralloc helpers

- hasvk: free up hwvulkan_device_t upon driver unloading

- lvp: free up hwvulkan_device_t upon driver unloading

- lvp: drop explicit u_gralloc init

- nvk: free up hwvulkan_device_t upon driver unloading

- nvk: drop explicit u_gralloc init

- panvk: free up hwvulkan_device_t upon driver unloading

- radv: free up hwvulkan_device_t upon driver unloading

- turnip: free up hwvulkan_device_t upon driver unloading

- v3dv: free up hwvulkan_device_t upon driver unloading

- v3dv: drop explicit u_gralloc init

- gfxstream: free up hwvulkan_device_t upon driver unloading

- venus: adopt common android u_gralloc helpers

- vulkan/android: clean up helpers no longer used

- vulkan/treewide: add and use common Android HMI hal implementation

- radv: relax the native_handle_t::numFds requirement

- u_gralloc/mapper5: fill u_gralloc_buffer_color_info properly

- u_gralloc/mapper4: fill u_gralloc_buffer_color_info properly

- u_gralloc: assign default u_gralloc_buffer_color_info

- egl/android: clean up u_gralloc_get_buffer_color_info handling

- vulkan/android: clean up u_gralloc_get_buffer_color_info handling

- vulkan/android: add a helper to easy front buffer usage query

- anv: use common vk_android_get_front_buffer_usage helper

- v3dv: use common vk_android_get_front_buffer_usage helper

- venus: use common vk_android_get_front_buffer_usage helper

- docs/venus: drop Virtio-WL section

- docs/venus: keep requirements up to date

- dozen: drop redundant dzn_swapchain_get_image api

- vulkan/wsi: drop wsi_common_get_images

- venus: relocate tls ring hint from wsi init to queue submission

- venus: use more common wsi codes

- venus: suppress Coverity Uninitialized scalar variable

- panvk: refactor panvk_image to track panvk_device_memory instead of bo

- panvk: refactor swapchain image alias bind

- venus: fix msaa state sample location info sanitization

- venus: use wsi_common_create_swapchain_image

- venus: drop drm_format_modifier tracking

- venus: drop tiling_override tracking

- venus: share code for AHB image subres query

- venus: wsi workaround for gamescope

- vulkan/wsi: amend barriers for blit dst buffer

- vulkan/wsi: amend barriers for blit dst buffer going to foreign queue

- venus: filter out vulkan video feature bits on common video formats

- venus: support AHB storage image format

- virtio/ci: update AHardwareBufferNativeTests expectations

- anv: avoid leaking private binding for aliased wsi image

- meson: drop vdrm from virgl and venus

- venus: fix a prime blit assert

- venus: back out implicit fencing handling for NV proprietary

- vulkan/android: fix to not append GRALLOC_USAGE_HW_COMPOSER bit

- vulkan/android: drop redundant image format query

- vulkan/android: rewrite swapchain gralloc usage query

- vulkan/android: fix and re-orgnize support before api level 26

- radv: use common ANB swapchain gralloc usage query

- radv: use AHARDWAREBUFFER_USAGE_CAMERA_MASK

- anv: fix ANB gralloc usage query to not append display usage bits

- anv: use common ANB swapchain gralloc usage query

- anv: use AHARDWAREBUFFER_USAGE_CAMERA_MASK

- hasvk: use common ANB swapchain gralloc usage query

- hasvk: use AHARDWAREBUFFER_USAGE_CAMERA_MASK

- venus: use common ANB swapchain gralloc usage query

- venus: allow to build vtest-only on non-DRM/KMS systems

- vulkan/wsi: add wsi_common_get_memory

- venus: adopt wsi_common_get_memory

- hk: adopt wsi_common_get_memory

- radv: adopt wsi_common_get_memory

- dozen: adopt wsi_common_get_memory

- panvk: adopt wsi_common_get_memory

- nvk: adopt wsi_common_get_memory

- turnip: adopt wsi_common_get_memory

- lavapipe: adopt wsi_common_create_swapchain_image

- lavapipe: adopt wsi_common_get_memory

- v3dv: adopt wsi_common_create_swapchain_image

- v3dv: adopt wsi_common_get_memory

- anv: adopt wsi_common_get_memory

- hasvk: avoid leaking private binding for aliased wsi image

- hasvk: adopt wsi_common_get_memory

- vulkan/wsi: drop unused common wsi helpers

- venus/meson: amend api_version in the generated icd file

- lavapipe: allow AHB export allocation

- lavapipe: implement GetMemoryAndroidHardwareBufferANDROID

- lavapipe: do not close import fd on error and amend an error code

- lavapipe: properly handle AHB release

- lavapipe: populate AHB memory mapping

- lavapipe: do not short-circuit AHB export alloc (non-import)

- lavapipe: amend missing object finish on mem alloc failure

- u_gralloc/mapper4: properly expose ChromaSiting types based on api level

- lavapipe: ensure to use zero memoryOffset for wsi image alias binding

- lavapipe: fix a leak on a lvp_image_create exit path

- lavapipe: fix maint4 vkGetDeviceBufferMemoryRequirements

- lavapipe: fix maint4 vkGetDeviceImageMemoryRequirements

Yogesh Mohan Marimuthu (17):

- amd: update amdgpu_drm.h for userq info

- ac,winsys/amdgpu: get userq_ip_mask supported from kernel info ioctl

- ac,radeonsi: clear_state is not supported in user queue

- ac: fix getting mcbp info for userq

- ac: add AMD_USERQ env var to enable user queue

- winsys/amdgpu: apu fwm packet supports only 4 max fences

- ac: for userq do not set info->has_fw_based_shadowing

- winsys/amdgpu: pass r/w bo to w/r list in userq_wait ioctl

- radeonsi: replace fprintf stderr using mesa_log helper functions

- ac,radeonsi,radv: rename register_shadowing_required

- ac: enable kernelq reg shadowing only when userq is disabled

- radeonsi: has_kernelq_reg_shadowing failure means driver failed

- radeonsi: rename sctx->has_graphics to sctx->is_gfx_queue

- radeonsi: add uses_kernelq_reg_shadowing in struct si_context

- radeonsi: reorder if condition in si_init_cp_reg_shadowing() function

- ac, radeonsi: prepare cs_preamble_state for userq reg shadowing

- radeonsi: submit cs_preamble_state to as first job in userqueue

Yurii Kolesnykov (3):

- Get rid of 5 remaining references to glapitable.h

- Guard double include of libdrm.h by defining LIBDRM_H

- Guard call to free_zombie_glx_drawable with condition from its definition

Zan Dobersek (4):

- tu: allow bigger block sizes when copying between buffers

- ir3: fix display of dot-product instructions

- ir3: fix parsing of texture prefetch headers

- ir3: allow asm roundtrip testing of compiled shader variants

Zhao, Jiali (1):

- amd/vpelib: G2084 STUDIO output gamma fix

Zoltán Böszörményi (4):

- docs/features.txt: Move optional features of OpenCL 1.0 and 1.1 into a new section

- docs/features.txt: Move optional OpenCL 1.2 features to the new section

- docs/features.txt: Follow-up changes for rusticl

- docs/features.txt: Indicate SPIR-V version for rusticl

jesse.zhang (1):

- amd: Add user queue HQD count to hw_ip info

jhananit (4):

- iris: Update NIR_PASS_V to NIR_PASS

- intel: Update all NIR_PASS_V to NIR_PASS

- i915: Remove NIR_PASS_V and updated it to NIR_PASS

- anv: Remove NIR_PASS_V usage

llyyr (3):

- vulkan/wsi/wayland: make needs_color_surface_old check if surface exists

- brw: don’t unconditionally print message on instance creation

- radv: don’t set HOST_IMAGE_TRANSFER_BIT if host_image_copy not enabled

mojyack (1):

- mesa: reorder mesa format corresponding to GL_BGRA

sarbes (2):

- lima: add ‘unorm8’ format to genxml

- lima: genxml-ify PP frame registers

sergiuferentz (2):

- gfxstream: Remove MEMORY_HANDLE_OPAQUE_FD support from Guest to fix suballocation dEQP tests

- gfxstream: intercept vkCmdClearColor(…) and do linear->SRGB conversion