Mesa 25.3.0 Release Notes / 2025-11-14 — The Mesa 3D Graphics Library latest documentation

# Mesa 25.3.0 Release Notes / 2025-11-14

Mesa 25.3.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.3.1.

Mesa 25.3.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.3.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: 0fd54fea7dbbddb154df05ac752b18621f26d97e27863db3be951417c6abe8ae  mesa-25.3.0.tar.xz
    SHA512: 46df9e5e27f9a36cf893a68ad4a465fcc6efe1bcb46ad8d4b015699ad1a11e582b8d41f4157326556af603fe454b2ff34ecc17a0c742b5fd9ce5f0097106fec5  mesa-25.3.0.tar.xz

## New features

- EGL_EXT_create_context_robustness support on Panfrost V10+

- GL_ARB_robust_buffer_access_behavior, GL_KHR_robust_buffer_access_behavior and GL_KHR_robustness support on Panfrost

- VK_EXT_mutable_descriptor_type on panvk/v9+

- GL_KHR_robustness on v3d

- VK_ARM_shader_core_builtins on panvk

- VK_KHR_shader_untyped_pointers on anv

- cl_ext_immutable_memory_objects

- VK_KHR_video_encode_intra_refresh on radv

- VK_KHR_video_encode_quantization_map on radv

- GL_ATI_meminfo and GL_NVX_gpu_memory_info on r300

- VK_KHR_shader_untyped_pointers on anv and RADV

- VK_KHR_maintenance8 on NVK

- VK_KHR_maintenance9 on NVK

- cl_khr_semaphore on radeonsi and zink

- cl_khr_external_semaphore on radeonsi and zink

- cl_khr_external_semaphore_sync_fd on radeonsi and zink

- GL_NV_shader_atomic_int64 on radeonsi and Panfrost V9+

- VK_KHR_maintenance7 on panvk/v10+

- VK_KHR_maintenance8 on panvk/v10+

- VK_KHR_maintenance9 on panvk

- VK_AMD_buffer_marker on NVK

- VK_EXT_ycbcr_2plane_444_formats on radv

- Removed VDPAU frontend

- GL_NV_representative_fragment_test on zink

- VK_KHR_maintenance9 on HoneyKrisp

- sparseBinding on panvk/v10+

- sparseResidencyBuffer on panvk/v10+

- Vulkan 1.2 on pvr

- VK_KHR_create_renderpass2 on pvr

- VK_KHR_dedicated_allocation on pvr

- VK_KHR_depth_stencil_resolve on pvr

- VK_KHR_descriptor_update_template on pvr

- VK_KHR_imageless_framebuffer on pvr

- VK_KHR_line_rasterization on pvr

- VK_KHR_maintenance1 on pvr

- VK_KHR_maintenance2 on pvr

- VK_KHR_maintenance3 on pvr

- VK_KHR_multiview on pvr

- VK_KHR_robustness2 on pvr

- VK_KHR_separate_depth_stencil_layouts on pvr

- VK_KHR_shader_draw_parameters on pvr

- VK_KHR_shader_float_controls on pvr

- VK_KHR_shader_subgroup_extended_types on pvr

- VK_KHR_spirv_1_4 on pvr

- VK_KHR_shader_terminate_invocation on pvr

- VK_KHR_swapchain_mutable_format on pvr

- VK_KHR_vertex_attribute_divisor on pvr

- VK_EXT_border_color_swizzle on pvr

- VK_EXT_color_write_enable on pvr

- VK_EXT_custom_border_color on pvr

- VK_EXT_depth_clamp_zero_one on pvr

- VK_EXT_depth_clip_enable on pvr

- VK_EXT_extended_dynamic_state on pvr

- VK_EXT_extended_dynamic_state2 on pvr

- VK_EXT_extended_dynamic_state3 on pvr

- VK_EXT_image_2d_view_of_3d on pvr

- VK_EXT_line_rasterization on pvr

- VK_EXT_physical_device_drm on pvr

- VK_EXT_provoking_vertex on pvr

- VK_EXT_robustness2 on pvr

- VK_EXT_queue_family_foreign on pvr

- VK_EXT_separate_stencil_usage on pvr

- VK_EXT_shader_demote_to_helper_invocation on pvr

- VK_EXT_vertex_attribute_divisor on pvr

- imageCubeArray on pvr

- independentBlend on pvr

- sampleRateShading on pvr

- logicOp on pvr

- drawIndirectFirstInstance on pvr

- alphaToOne on pvr

- samplerAnisotropy on pvr

- shaderStorageImageExtendedFormats on pvr

- shaderStorageImageReadWithoutFormat on pvr

- shaderStorageImageWriteWithoutFormat on pvr

- shaderClipDistance on pvr

- shaderCullDistance on pvr

- VK_EXT_zero_initialize_device_memory on pvr

- VK_KHR_sampler_mirror_clamp_to_edge on pvr

- VK_KHR_shader_non_semantic_info on pvr

- VK_KHR_shader_relaxed_extended_instruction on pvr

- VK_EXT_shader_replicated_composites on pvr

- VK_KHR_device_group_creation on pvr

- VK_KHR_map_memory2 on pvr

- VK_EXT_map_memory_placed on pvr

- VK_KHR_device_group on pvr

- VK_KHR_buffer_device_address on pvr

- GL_EXT_mesh_shader on zink

- VK_KHR_wayland_surface on pvr

- VK_NVX_image_view_handle on NVK

## Bug fixes

- amdgpu: ring gfx_0.0.0 timeout, in vr when opening apps

- zink/radv: new cts fails on rdna3

- Penumbra: Overture OpenGL game has graphical glitch for ice

- mesa: regression caused by hash_table sizing

- RustiCL: fence fd leak on CL-GL interop

- Uniform variable not updated correctly with shared contexts

- [radv] Borderlands 4 triggers a consistent GPU page fault on RDNA2

- radv: RE4 Separate Ways DLC hangs RDNA2 GPU

- ACO: fix a hazard when the number of attributes loaded/consumed don’t match with VS prologs

- ACO: loading 64-bit attributes can override the fetch index in VS prologs

- [RADV][bisected][regression] - Doom: The Dark Ages (3017860) - Square flickering artifacts around Hebeth

- nvk, nak: Broken icons in ENDLESS Legend 2 on a RTX 4080

- LLVMPipe’s `VkPhysicalDeviceAccelerationStructurePropertiesKHR::maxPrimitiveCount` is lower than Vulkan requires.

- asahi: DMABuf import of multi-plane YCbCr (NV12 from ISP) not renderer correctly

- brw: Gfx9 sampler messages violate r127 rule

- radv: No Man’s Sky XESS page fault GPU reset

- r600/sfn: Assertion `cir.alu_vec.empty()` failed

- radv: Hit assert when over maxFragmentDualSrcAttachments but vkCmdSetColorBlendEnableEXT is set to false

- [ANV][PTL][DG2] Flickering textures in Assassin’s Creed Valhalla benchmark

- ADL, ANV: Wuthering Waves leads to gpu reset on Alder Lake iGPU

- RADV: ANGLE deqp regression

- [ANV][EXT_debug_utils] descriptor set object_name leak when not calling vkFreeDescriptorSets

- nvk: CTS failures in sample_locations_ext.verify_interpolation.samples_1

- [regression] [bisected] RuneLite GPU Experimental - GPU crash

- Missing definition of __builtin_ia32_clflush since “util/cache_ops: Add some cache flush helpers”

- LLVM instruction selection compilation error

- v3d: green screen when rpivid hevc decoder is used

- [radv] Stuttering with latest mesa git (21 sept) on radv/6900 XT

- BFN with UW sources gets munged by lower regioning

- zink: chromium flickers in youtube when fullscreening videos

- r600: Attribute stride updates may be skipped

- [ANV][TGL]: test_buffer_feedback_instructions_sm51 on vkd3d-proton crashes

- some video file are not shown in mpv when using vaapi hardware decoding on amd apu

- [ANV][PTL] Indiana Jones and the Great Circle - GPU Hang

- [ANV] [PTL] Hades 2 game freeze on start of gameplay

- [anv][ptl] GPU hang in Dying Light dx12

- radv: Only look at statically used descriptors.

- RADV: Consider always using the global bo list

- anv: Age of Wonders 4 corruption on a Arc b580

- nvk: Incorrect rendering in Baldur’s Gate 3 shadows starting with e6dae6ef5fc134f9ed5dd93b1a462084bc3aadfd

- nvk commets cause problems with kepler

- anv: Assert in brew when descriptor indexing with modulo

- tu: VK_EXT_zero_initialize_device_memory

- ResourceTracker.cpp:40:10: fatal error: perfetto/tracing.h: No such file or directory

- A bunch of CTS tests are failing on Gfx12.0 trying to use the blitter with TILE_X

- radv: meta pipeline cache appears to be broken

- mesa:amd+compiler / aco_tests assembler.mubuf/gfx11 failure with llvm-21.1.2

- [ANV] Bunch of tests in dEQP-VK.pipeline.*.render_to_image.*3d.*2d_compatible failing on gen9/11

- elk: segfault in lower_txd_cb

- bisected: Regression in EXT_shader_framebuffer_fetch_non_coherent test after !37527

- VK_QUERY_RESULT_WAIT_BIT does not work for VK_QUERY_TYPE_VIDEO_ENCODE_FEEDBACK_KHR

- a618-traces often times out

- bisected build failure in clc_helpers.ccp with llvm 22

- anv: GL mesh tests crash/fail on zink with shader object

- 25.2.1 fails to build on risc-v with llvm 21

- RISC-V builds with llvmpipe against LLVM 21 fail due to API changes

- Confidential issue #14013

- implicit-function-declaration error when compiling mesa 25.2.0 devel

- vl_stubs.c:105:1: error: conflicting types for ‘vl_mpg12_bs_decode’

- [ANV][LNL] - FINAL FANTASY XVI (2515020) - Title crashes to Desktop immediately following the splash card.

- Segfault in init_source at ../src/gallium/auxiliary/vl/vl_idct.c:597 when trying to play DVD on r600

- nvk: Failure in vkd3d-proton ibfe tests

- nvk, nak: NAK panic in Call of the Wild: The Angler on RTX 4080

- Simple External Semaphore test hangs in vk_sync_wait

- nir_builtin_builder.h:108:43: error: ‘M_LOG2E’ undeclared

- regression: windows: msys2 - undeclared M_PI and M_LOG2E probably since !37289 21b8e7604ba51f90682adeff650fc866c71c57f2

- dEQP-VK.spirv_assembly.instruction.compute.float_controls.fp32.input_args.reflect_denorm_flush_to_zero regression on nvk

- mesa-25.2.3/src/gallium/drivers/radeonsi/radeon_uvd.c:658: array index used before check ?

- lp_test_arit.c:200:14: error: static declaration of ‘rsqrtf’ follows non-static declaration

- build failure with glibc 2.42

- [bisected] 44aaf884254 regressing FSR vulkan cts tests on PTL

- [bisected] f416a529 “egl: refine dma buf export to support multi plane” results in piglit crash

- Crash on game Elite Dangerous at 0% planetary generation, on Tigerlake+ Iris Xe and Arc GPUs.

- regression;bisected;amd: 0a266f0256025d271945adb3478fc2c1291d4c79 leads pgadmin4-qt to crashes

- segfault with mesa >= 24.1.0 on nvidia

- segfault through lavapipe

- Confidential issue #13807

- [bisected] 25b97a mesa/st: mark internal texture map calls as UNSYNCHRONIZED breaks r600

- Gallium: Segfault while trying to compile a shader with differing UBO contents in fragment and vertex stage - With reproduction case

- aco: generate wrong code when gl_DrawID is used by primitive indices in mesh shader

- Regression since mesa 25.2.0: applications waiting for dGPU to start

- ci: libX11 upgrade tracker

- anv: Regression in dEQP-VK.graphicsfuzz.cov-nested-loops-set-struct-data-verify-in-function

- brw: regression crash on dEQP-VK.graphicsfuzz.cov-dfdx-dfdy-after-nested-loops

- a618-traces often times out

- ci: crosvm dumping log spam from host gl when the job fails

- panfrost: assertion fail in pan_image_get_wsi_row_pitch

- virgl: guest memory leak with qemu + virtio-gpu-gl

- [ANV][LNL] - Horizon Forbidden West™ Complete Edition (2420110) - Orbicular artifacts near heads of machines (wildlife).

- iris: Assertion failures in piglit tests on all platforms

- [radv] [Regression) Shadow of the Tomb Raider - flickering/missing textures

- Minecraft 1.12.2 visual artifacts when running on zink/radv

- [RADV][VEGA 64][bisected] Cyberpunk 2077 - Massive performance regression due to https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37025/diffs?commit_id=d7f401c2bbadd192dbbcaaeede2805bad71f6193

- [PTL] hitting assert when starting Xorg

- GZDoom 4.11/Raze 1.7 exhibit very high memory usage during shader compilation under OpenGL

- anv: Assertion failure replaying q2rtx fossil

- [ANV] [REGRESSION] PCSX2/Midnight Club 3 crashes with VK_ERROR_DEVICE_LOST on Mesa 25.0.7

- Hollow Knight Silksong segfaults with zink on radv

- zink: crash in KHR-GL46.framebuffer_blit.scissor_blit

- Request: RADV support for VK_EXT_ycbcr_2plane_444_formats..

- mesa: state parameters duplicated

- ARB_vertex_program and ARB_fragment_program are broken

- d3d10umd fails to create basic pixel shader, outputs “unknown TGSI opcode: RET”

- turnip: FDM failures with forcebin

- a7xx_state_location

- [ANV] Assertion with VVL GPU-AV around robust UBO

- radv: avoid advertising unsupported global queue priorities for the client

- crocus: SIGSEGV crash at pbo compressed teximage

- nvk: test_conditional_rendering fails on vkd3d-proton

- Segfault in x11_xlib_display_is_thread_safe

- [ANV][BMG] Witcher 3 ray tracing freeze on a Arc b580

- anv: optimize utrace overhead from bo memset

- radv: watching vp9 encoded video with vulkan hwdecode result in artifacts

- ci: zink-venus-lavapipe errors

- [ANV][DG2][BMG] 3DMark Solar Bay Misrendering

- lavapipe defaults to memfd when multiple export types are requested

- anv: Simple vulkan compute shader causes Intel GPU hang due to excessive loop unrolling

- INTEL_DEBUG=spill_fs regression

- NIR validation failed after nir_lower_io in DOOM The Dark Ages

- radv: NIR validation failed after nir_shrink_vec_array_vars in ../src/amd/vulkan/radv_shader.c:171 (bisected)

- Wayland EGL missing pbuffer surface support

- missing sparse synchronization in zink

- ACO validation failed in DOOM: The Dark Ages - Undef operand to `p_parallelcopy`

- ACO validation failure in DOOM: The Dark Ages Shader

- Dragon Age Veilguard / Ability Wheel Targeting Visual Distortion

- [AMD] glTexturePageCommitmentEXT triggers an error if level is higher than 0

- deqp-egl multithread link flakes

- Ratchet and Clank “[gfxhub] page fault” Mesa25.3

- [RADV] Support for VK_KHR_video_encode_quantization_map

- System Crashes when starting VR on rx 9070 (xt)

- [Build][32bit] Meson does not find libdisplay-info in 32-bit builds

- freedreno,decode: Lua environment picks up the A6XX register offset instead of A7XX

- Confidential issue #13351

- d3d10umd: Build regression on 25.2.0-rc1

- turnip: LRZ bug with TU_DEBUG=gmem,forcebin

- nvk/nak regression: memory_model.message_passing fails on KeplerA

- [ANV] dEQP-VK.api.copy_and_blit.copy_commands2.image_to_buffer_transfer_queue.2d_images.whole_r32g32b32_uint_linear and possibly others asserts on LNL

- nir: validation failed after nir_remove_dead_variables in 3DMark Solar Bay

- Build dependency on intel_wa.h missing in Intel vulkan driver

- Missing polygons/vertices in CS2 on BMG

- `vn_ring`: use-after-release crash after `vn_ring_destroy` on Virtio-Vulkan

- venus: vkmark –winsys headless segfault (regression)

- Vulkan headless WSI crashes when initializing swapchain on Asahi Linux running Apple M1 Max

- lavapipe: Crashes on simple Descriptor Buffer test

- make zink-radv-navi31-valve a pre-merge job

- [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

- RADV caps reported sparse address size at 4 GiB

- nvk Blackwell support

- hk: framerate limited/locked to 23 in RDR2 ingame menus (Vulkan)

- i915: multiple dEQP tests asserts at nir_opt_group_loads.c:75: get_load_resource: Assertion `!”” “tex instr should have a resource”’ failed.

- tu: VK_KHR_fragment_shading_rate broken when HelperInvocation is used

- 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

- spec@arb_shader_storage_buffer_object@max-ssbo-size@fs stack overflow since cb558b2b88c2

- anv: enable compression on ASTC LDR emulation surface

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

- Segfault in X11 image acquire code with timeout=0

- v3dv: regression in vkAllocateMemory importing gbm bo

- 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

- nir: Deprecate NIR_PASS_V

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

- Race condition with timeline semaphores

- 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

- xe2: DMA Buffer exported modifier is incorrect

- cleanup CI kernel patches

- 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)

- GPU process crash via WebGPU shader - heap-buffer-overflow in Mesa build_interference_graph

- radeonsi: Broken VAAPI video color conversion

- Gallium HUD broken since !34054

## Changes

Aaron Ruby (13):

- gfxstream: Rename platform/linux to platform/drm

- gfxstream: init vk_queues in CreateDevice() based on queueCreateInfo

- gfxstream: Remove all “Yoda conditions” in gfxstream_vk_device.cpp

- gfxstream: Downgrade some debug prints to traces

- gfxstream: Remove duplicate/unnecessary frees in destroyDevice

- gfxstream: Modify deviceName, driverVersion, driverName, driverInfo …

- gfxstream: Use the Mesa common tss_* TLS helper functions

- gfxstream: Remove on_vkGetDeviceQueue* impls entirely

- gfxstream: Pre-fetch the VkQueue objects from the host

- gfxstream: Add init+tracking for the host-equivalent queue_family information

- vulkan/wsi: No commandPool allocation required for WSI_SWAPCHAIN_NO_BLIT

- gfxstream: Prune all guest-side KHR entrypoints that are provided with VK_VERSION_1_1

- gfxstream: address-space graphics requires kParamResourceBlob and kParamHostVisible

Agate, Jesse (1):

- amd/vpelib: Use Ceil Division Macro

Ahmed Hesham (1):

- rusticl: Fix negative CTS device tests

Aitor Camacho (7):

- nir: Set cursor in lower_sampler_lod_bias

- meson: static link spirv-tools for darwin

- wsi/metal: Cleanup unused members in wsi_metal_swapchain

- wsi/metal: Fix wsi_metal_surface_get_formats2

- wsi/metal: Disable reference counting

- wsi/metal: Fix size query and present result

- wsi/metal: Backend addition for drivers built on top of Metal

Aksel Hjerpbakk (5):

- panvk: avoid cs jump block with no allocator

- panvk: implement cs_extract64 & cs_extract_tuple

- panvk: Use a single FBD for IR

- panvk: pool large TLS allocations

- panvk: clear big_bos on cmd pool reset with release bit

Alejandro Piñeiro (4):

- broadcom/compiler: update compact arrays comment

- docs: GL_ARB_compute_shader is not a ES extension

- v3d: use directly MESA_TRACE_SCOPE for additional context

- v3d: expose GL_KHR_shader_subgroup for v71+

Aleksi Sapon (11):

- meson: add missing x11 dependency on libloader_x11

- util: SWAP macro implementation for older MSVC versions

- wsi/metal: current extents might not be known until swapchain is created

- draw: fix missing line viewport transformation

- draw: don’t set the clipped window coordinate to NaN in debug

- nir: Fix gnu-empty-initializer warning

- nir: Fix nir.h MSVC compilation for C++ source files

- wsi/metal: move VkFormat -> MTLPixelFormat conversion to wsi_common_metal_layer.m

- wsi/metal: add support for color spaces

- wsi/metal: fix cleanup on swapchain image creation failure

- vk: Fix MSVC warning C4189

Alessio Belle (4):

- pvr: Fix error value returned by pvr_rt_datas_init

- pvr: Replace check on Mlist size with assert

- pvr: Pass the PM/FW protect flag to the Mlist allocation

- pvr: add device info for BXM-4-64 (36.56.104.183)

Alexandros Frantzis (1):

- egl/wayland: Support pbuffer surfaces

Ali, Nawwar (1):

- amd/vpelib: add FL capabilitie and lut container size

Alyssa Rosenzweig (145):

- nir/opt_preamble: add sampler class

- nir: add bindless_sampler_agx intrinsic

- hk: dedupe hk_buffer_view_descriptor

- hk: push descriptor set addresses

- hk: embed texture desc in set

- hk: stop pushing image heap

- hk: stop reserving uniform for image heap

- hk: drop image heap

- asahi: drop image heap decode

- agx: report sampler state count

- hk: plumb sampler state counts

- hk,agx: promote bindless samplers

- hk: optimize desc set addr push

- hk: only pass sampler heap if needed

- nir: add nir_mov_scalar helper

- treewide: use nir_mov_scalar

- util: crib SWAP macro from freedreno

- nir: mark exact fmul in ldexp lowering

- nir: introduce “inexact associative” property

- nir: restrict associativity to binary operations

- nir: unmark 24b multiply as associative

- agx: fix dead phis

- agx: simplify block image store offset

- agx: optimize txl LOD

- agx: optimize imgwblk uniform

- agx: add immediate load ts/ss encodings

- agx: use immediate load ts/ss forms

- hk: use amul instead of imul

- hk: always lower bindless samplers

- hk: readvertise required bgra4 format

- nir: introduce ergonomic tex builder

- nir/lower_drawpixels: use tex builder

- nir/lower_bitmap: use more effective NIR

- vulkan/nir_convert_ycbcr: use more effective nir

- radv: remove redundant nir->info.internal = true

- tu: use more effective NIR in meta shaders

- freedreno: use tex builder

- asahi: use tex builders

- dzn: drop redundant internal = true writes

- nir: add vbo_stride_agx

- hk: support static vertex input state

- util: make SWAP safe for MSVC

- nir: add nir_alu_src_rewrite_scalar helper

- nir: add ALU reassocation pass

- agx: make sure denorm flushing really happens

- agx: run more opt passes

- agx: reassociate ALU

- vulkan: fix shader linking with common pipelines

- glsl,nir: factor out nir_opt_varyings_bulk

- nir: handle frag_coord_z/w intrinsics

- nir/opt_vectorize_io: allow i/o semantics w/o component

- nir/divergence_analysis: handle more AGX

- agx/nir_lower_gs: handle XFB corner

- hk: optimize varyings

- dzn: use common SWAP

- treewide: use SWAP macro

- nir/lower_system_values: simplify load_helper_invocation lowering

- nir: drop load_sample_id_no_per_sample

- nir: add nir_def_as_* helpers

- nir: add nir_def_block helper

- treewide: use nir_def_as_*

- treewide: simplify nir_def_rewrite_uses_after

- treewide: use nir_def_block

- asahi: clang-format

- clc: force exact! across libclc

- asahi: drop sink/move in GS code

- agx: try to rematerialize to improve occupancy

- asahi: use native colour masking

- hk: kill psiz writes via topology, not feature

- hk: only enable image view min LOD for dx12

- asahi: optimize pass type with depth-only passes

- asahi,hk: optimize no-op FS

- asahi: rename compressed 1 to just compressed

- agx: add foreach_reg_{src,dest}

- agx: track block divergence

- agx: fix reg cache printing

- agx: fix export instructions in the IR

- agx: fix simd reduce forcing no cache bit

- agx: fix cache bit packing

- agx: plumb is_alu query for reg cache opt

- agx: lower export even later

- agx: set register cache hints

- agx: handle 16-bit coordinates

- asahi: use 16-bit coordinates for bg program

- libagx: factor out query_report

- libagx: port reset query helper to libagx

- hk: use new reset query kernel

- people: add John Anthony

- nir: add nir_inline_sysval pass

- brw: replace lower_fs_msaa with nir_inline_sysval

- pan/bi: replace specialize_idvs with nir_inline_sysval

- lvp: replace lower_ray_tracing_stack_base with inline_sysval

- panfrost: don’t use nir_lower_printf_buffer

- nir,agx: pull lower_printf_buffer into backend

- nir: gather info in opt_varyings_bulk

- nir: gather interpolation qualifiers

- nir/opt_varyings: link interpolation qualifiers

- asahi: use NIR gathered interpolation

- asahi: inline UVS indices

- asahi: enable virtgpu support

- panvk: rewrite pan_nir_lower_static_noperspective

- agx: gate scratch opt on internal shaders

- asahi: clang-format

- asahi: reduce ppp alignment

- hk: fix todo

- hk: clarify command pool types

- hk: fix pathological RAM use for tess emulation

- hk: drop unused

- hk: reduce storage desc

- nir/lower_subgroups: add lower_fp64 option

- nir: plumb ballot options

- glsl: lower fp64 subgroup ops

- agx: lower fmin/fmax scans

- asahi: implement KHR_shader_subgroup

- agx: drop bounds check optimize pass

- people: update Alyssa’s email

- mailmap: add Alyssa’s Intel e-mail address

- hk: assume largePoints always set

- asahi: fix drm-shim

- util: add util_bit_swap macro

- util: add boolean lookup table helpers

- util: add unit tests for util/lut.h

- agx: use util_lut2

- nir/lower_flatshade: clean up

- brw: drop unused brw_kernel code

- brw: drop indirection on compiler options

- brw: hoist shared options out of the stage loop

- brw: cleanup int64 option set

- anv,hasvk: do not use unify_interfaces

- brw: drop printf info plumbing

- intel: drop clamp_fragment_color handling

- intel: drop legacy flatshade handling

- util/shader_stats: allow “hidden” stats

- brw,anv: use XML-based stats

- util: add BITSET_CALLOC helper

- treewide: use BITSET_CALLOC

- brw/nir_lower_alpha_to_coverage: eliminate goto

- brw/nir_lower_fs_barycentrics: avoid nir_def_rewrite_uses_after

- brw/nir_lower_sample_index_in_coord: use helpers

- brw/nir_lower_shader_calls: use helpers

- brw/nir_lower_storage_image: use helper

- intel/nir_blockify_uniform_loads: use helpers

- treewide: don’t check before free

- anv: use D3D-compatible texturing for Proton

- asahi,ail: fix multi-plane imports

Alyssa Ross (4):

- gfxstream: guest: don’t use transitional LFS64 API

- docs: update GitLab option name

- meson.build: remove dead code

- meson.build: set with_clc for asahi tools

Anna Maniscalco (4):

- tu: Add support for realtime vk priority

- mailmap: Update my name

- freedreno/registers: add CP_ALWAYS_ON_CONTEXT

- freedreno/afuc: Add x1e fw-id

Ansari, Muhammad (1):

- amd/vpelib: VPE Events

Antonio Ospite (32):

- ci/android: update comment about ANDROID_CTS_MODULES

- ci/android: fix exit code from android-cts-runner.sh and android-deqp-runner.sh

- zink: fix assigning _Bool to _Bool*

- nir: fix returning _Bool instead of pointer

- crocus: fix returning _Bool instead of pointer

- zink: fix returning _Bool instead of pointer

- anv: fix returning _Bool instead of pointer

- nak: fix returning _Bool instead of pointer

- radv: fix returning _Bool instead of pointer

- dril: fix returning _Bool instead of pointer

- microsoft/compiler: fix returning _Bool instead of pointer

- asahi: fix returning _Bool instead of pointer

- etnaviv: fix returning _Bool instead of pointer

- lima: fix returning _Bool instead of pointer

- broadcom/compiler: prevent FALLTHROUGH error with C23

- glsl: rename state name to avoid conflicts with future changes

- build: stop calling unreachable() without arguments

- build: avoid redefining unreachable() which is standard in C23

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

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

- nak/nouveau: silence errors about never used methods

- compiler/rust: fix errors about hiding elided lifetime

- ci/android: add rust compiler to create-android-cross-file.sh

- ci/android: add comment about updating tags to create-android-cross-file.sh

- nvk: silence error when cross-building for Android

- subprojects: fix ignore exception for files under packagefiles/

- meson: handle dep_libdrm before the driver specific libdrm modules

- ci: bump DEBIAN_BUILD_TAG to include all the android/rust changes for nvk and panvk

- ci/android: enable cross-building nvk and panvk for Android

- radv: don’t include amdgpu.h directly

- radv: fix building with libdrm as a submodule

- device-select: fix build errors on some stricter build configurations

Arkadiusz Hiler (1):

- wsi/display: Avoid connector reprobes in wsi_GetRandROutputDisplayEXT

Arseny Kapoulkine (1):

- ac/rgp: Warn when RGP capture can’t be saved without libelf

Asahi Lina (1):

- asahi: Ensure shared BOs have a prime_fd

Ashish Chauhan (10):

- pvr: temporary spm tweaks

- pvr: Add support for gpu multicore MC1 configurations

- pvr: Implement WA BRN_72168

- pvr: Implement WA BRN_72463

- pvr: Enable PBE_FILTERABLE_F16

- pvr: Feature support TPU_PARALLEL_INSTANCES

- pvr: Enable PDS_DDMADT

- pvr: Enable shaderStorageImageExtendedFormats

- pvr: Drop broken driver environment variable check for BXS-4-64

- pvr: Drop ‘-experimental’ suffix from the ‘imagination’ build option

Ashley Smith (4):

- mesa: Fix support for GL_EXT_shader_clock

- panfrost: Enable shader_atomic_int64 for gallium

- panfrost,mesa: Fix versions for EXT_shader_realtime_clock

- panfrost,mesa: Fix versions for EXT_shader_clock

Assadian, Navid (3):

- amd/vpelib: Exit when VPE not support in debug

- amd/vpelib: Add necessary pointer casting

- amd/vpelib: Add new colors to visual confirm

Autumn Ashton (4):

- radv: Implement VK_KHR_video_encode_quantization_map

- radv: Support VK_IMAGE_TILING_OPTIMAL for quantization maps

- radv: Allow MUTABLE_FORMAT and EXTENDED_USAGE for qp_map images

- nvk: Implement VK_NVX_image_view_handle

Bas Nieuwenhuizen (2):

- device-select: Fix error check.

- radv: use vk_drm_syncobj_copy_payloads

Benjamin Cheng (11):

- vulkan/video: Add vk_video_is_profile_supported()

- radv/video: Fix video profile reporting

- radv/video: Report extra image usages

- vulkan/query_pool: Store video encode feedback

- radv: Output requested encode query results only

- radv/video: Fill maxCodedExtent caps first

- radv/video_enc: Cleanup slice count assert

- radv/video: Override H265 SPS block size parameters

- radv/video: Override H265 SPS unaligned resolutions

- vulkan/video: NULL check codec-specific chain

- radv/video: Fix dummy DPB addresses

Benjamin Otte (1):

- device_select: Allow shortcut names for device types

Bo Hu (2):

- gfxstream: update codegen for event save and load

- gfxstream: [vulkan snapshot]: update code gen for vkUpdateDescriptorSet change

Bohan Yu (1):

- gallium: Fix LLVMpipe function parameter of Vector type call load mismatch

Boris Brezillon (53):

- panfrost: Add get_device_reset_status() to the CSF backend

- panfrost: Add a GPU fault injection mechanism

- panfrost: Log when an unusable group caused a context re-initialization

- util/format: Auto-generate the enum pipe_format definition

- util/format: Use more descriptive names for YUV formats

- util/format: Add subsampling info to our YUV-as-RGB format names

- util/format: Auto-generate a bunch of YUV helpers

- pan/mod: Add a pan_mod_get_handler() implementation when PAN_ARCH is defined

- pan/mod: Replace ::supports_format() by ::test_props()

- pan/image: Provide two helpers to check image viability

- panvk: Use pan_image_test_props() to do our modifier check

- panfrost: Don’t check for MTK_TILED when walking the native modifiers list

- dri: Don’t pretend we can lower NV15/NV20 when we can’t

- panfrost: Use pan_image_test_modifier_with_format() to do our modifier check

- panvk: Remove leftovers from CPU-side min/max index calculation

- panvk: Fix disjoint image memory binding

- panvk: Fix panvk_image_can_use_afbc() for GetPhysicalDeviceImageFormatProperties2()

- panvk: Pass a correct aspect to panvk_plane_index()

- panvk/jm: Preload the FB even if we have no draws queued

- panvk/jm: Automatically open a batch in dispatch_precomp()

- panvk/jm: Add a JM barrier on clear AFBC jobs

- panfrost: Fix panfrost_batch_to_fb_info() for stencil-only attachments

- pan/mod: Allow testing if a modifier is optimal

- pan/format: Fix the mapping for Z32_FLOAT on v7+

- panfrost: Explicitly reject AFBC(Z32)

- pan/afbc: Add missing S8 and Z32 cases to pan_afbc_format()

- panvk: Hook-up optimal modifier selection

- util/format: Autogen type conversion helpers

- pan/afbc: Cache the pan_afbc_mode selection

- panfrost: Explictly filter out AFBC(SNORM)

- pan/desc: Upgrade writeback format to RAW32 on v9+ when AFBC(RAW24)

- pan/afbc: Allow AFBC on UINT/SINT/SNORM types on v9+

- panvk: Don’t allow AFBC if the format format is mutable on v7-

- panvk: Make panvk_meta.h per-gen

- panvk: Consolidate image copy format selection

- panvk: Disallow AFBC(D24S8) if separateDepthStencilLayouts=true

- panvk: Make AFBC an opt-out

- util/format: Add a Z24_UNORM_PACKED format

- pan/lib: Hook-up Z24_UNORM_PACKED support

- panvk: Initialize panvk_image::plane_count early

- panvk: Pass an image to panvk_plane_count()

- panvk: Stop using panvk_image_can_use_afbc() in panvk_image_can_use_mod()

- panvk: Add planar Z24S8 support

- drm-uapi: Sync panfrost_drm.h

- pan/kmod: query and cache available context priorities from KMD

- panfrost: Support JM context creation and destruction

- panfrost: Support debugging JM context priorities with env vars

- panvk: Fix ordering in prepare_draw()

- panvk: Don’t expose low/high priority queues on Bifrost

- vk/meta: Support DS <-> color copies

- panvk: Fix panvk_interleaved_copy() formatting

- panvk: Fix host copies on planar DS resources

- panvk: Only use Z24_UNORM_PACKED for AFBC images

Boyuan Zhang (5):

- 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

- radeonsi/vcn: adjust subsample size alignment

Brais Solla (2):

- r300: Added support for GL_ATI_meminfo and GL_NVX_gpu_memory_info

- r300: move r300_query_memory_info to r300_screen.c

Caio Oliveira (93):

- brw: Fix cmat conversion between bfloat16 and non-float32

- brw: Move insert/remove code to the block

- brw: Add more specific brw_builder helpers

- brw: Use a more specific builder helper in combine constants

- brw: Use a builder to track position in lower_simd

- brw: Make brw_builder() shader constructor use CFG if available

- intel/decoder/tests: Sort gentest.xml file

- intel/genxml: Add support for dword/bits in fields to gen_sort_tags.py script

- intel/genxml: Add support for dword/bits in fields to rest of the code

- intel/genxml: Convert field format from start/end to dword/bits

- intel/genxml: Remove support for start/end atttributes

- spirv: Load block descriptors as soon as we hit them

- spirv: Implement SPV_KHR_untyped_pointers

- brw: Use ralloc helpers for string handling in brw_eu_validate

- brw: Remove extra iteration on instructions from brw_opt_address_reg_load

- spirv: Update headers and metadata from latest Khronos commit

- vulkan: Update enum_to_str conversion to handle ARM enum names

- vulkan: Update headers/xml for 1.4.325

- anv: Advertise VK_KHR_shader_untyped_pointers

- brw: Define order for fixes in 3-src operand fix

- brw: Make sure copied instruction don’t copy the list pointers

- brw: Move resize_sources() earlier when lowering FIND_LIVE_CHANNELS

- brw: Only access valid sources in lower_btd_logical_send()

- brw: If the instruction is already a SEND, no need to resize sources

- brw: Avoid invalid access when compacting out-of-bounds JIP/UIP

- brw: Add disabled test for MAD constant folding

- brw: Fix folding case for MAD instruction with all immediates

- brw: Fix checking sources of wrong instruction in opt_address_reg_load

- brw: Add brw_shader_params

- brw: Pass per_primitive_offset in brw_shader_params

- anv: Allocate prog_data->param array when making internal kernels

- intel/brw: Remove brw_shader::import_uniforms()

- intel/brw: Simplify tracking of dispatch_width_limit in brw_compile_fs

- intel/brw: Simplify variant tracking in brw_compile_fs

- intel/brw: Take shader in the brw_generator::generate_code() parameters

- brw: Run validation as soon as we have the CFG around

- brw: Fix printing of blocks in disassembly when BRW is available

- util: Avoid invalid access in ralloc_print_info()

- brw: Add `FILE *` parameter to dump_assembly

- brw: Add and use more brw_validate.cpp macros

- brw: Use uint16_t for size_written

- brw: Centralize brw_inst allocation

- brw: Allocate brw_inst::src with ralloc

- brw: Remove builtin sources from brw_inst

- brw: Bundle the allocation of brw_inst and its sources

- brw: Let the builder fill the sources of brw_inst

- brw: Allow emit instruction with only number of sources

- brw: Pass brw_shader in fold_instruction

- brw: Add and use brw_transform_inst()

- brw: Add brw_builder::SEND() helper

- brw: Add brw_builder::URB_READ and URB_WRITE helpers

- brw: Remove the extra function call when lowering samplers

- brw: Add initial support for different instruction kinds

- brw: Add brw_send_inst

- brw: Add brw_tex_inst

- brw: Add brw_mem_inst

- brw: Add brw_dpas_inst

- brw: Add brw_load_payload_inst

- brw: Add brw_urb_inst

- brw: Add brw_fb_write_inst

- brw: Add a generic LOGICAL instruction kind

- brw: Allocate only brw_inst for BASE instructions

- brw: Repack brw_inst fields

- brw: Don’t use individual rallocs for each instruction

- brw: Fix encoding of 3-src dst in Xe2+

- egl: Set atexit() handler during initialization

- egl: Don’t maintain a list of AtExit functions

- intel/mda: Add code to produce mesa debug archives

- brw: Use debug archive file with INTEL_DEBUG=mda

- brw: Include some NIR states in the debug archive

- brw: Also include the final disassembly in the debug archive

- anv: Refactor anv_shader_compile result handling

- anv: Create archive file when using INTEL_DEBUG=mda

- iris: Create archive file when using INTEL_DEBUG=mda

- intel/mda: Add tool to inspect mesa debug archives

- intel/mda: Add search/searchall commands

- intel/mda: Add -U and -Y diff options

- intel/mda: Handle non-contiguous object versions in mda.tar files

- intel/mda: Add pager support

- intel/mda: Add MDA_OUTPUT_DIR and MDA_PREFIX environment variable support

- intel/mda: If MDA_PREFIX=timestamp use the actual timestamp as a prefix

- intel/mda: Allow more toplevel directory names inside mda.tar files

- intel/mda: Use archive filename as directory name instead of hardcoded “mda/”

- intel/mda: Add MDA_FILTER to select which archives to generate

- brw: Identify if/break/endif special case before emission

- intel/executor: Destroy syncobjs after using them

- intel/executor: Expose extra command line arguments to script

- intel/executor: Drop check_ver and check_verx10 functions

- intel/executor: Expose a devinfo table

- intel/executor: Add script directory to `package.path`

- intel/executor: Add DPAS examples for HF/F, UB/UD and BF/F

- intel/executor: Add a matrix multiplication example

- brw: Add variable for opcode in the brw_set_* high-level helpers

Calder Young (13):

- nir/builder: Add helper for building uvec8 immediates

- brw,anv: Reduce UBO robustness size alignment to 16 bytes

- isl: Add support for creating layered surfaces for video encode/decode

- anv: Add support for creating layered surfaces for video encode/decode

- anv: Add support for using layered surfaces in H.264 and H.265 video coding

- anv: Add support for using layered surfaces in AV1 video decoding

- anv: Add support for using layered surfaces in VP9 video decoding

- anv: Report disjoint images as unsupported for video usage

- anv: Update video test expectations for layered_dpb

- anv: Advertise only OUTPUT_COINCIDE_BIT for AV1 video decoding

- anv: Add support for AV1 film grain sythesis on Xe2+

- anv: Fix tiling for AV1 IntraBC surface on Gfx125+

- isl: Fix noncoherent framebuffer fetch when base_level != 0

Caleb Callaway (6):

- spirv: Fix RT raygen hit attribute validation error

- compiler: use PATH_MAX for SPIR-V capture filename

- compiler: BLAKE3 ID for SPIR-V capture

- compiler: auto-stage file ext for SPIR-V capture

- compiler: SPIR-V shader replacement

- compiler: document SPIR-V capture + replace

Caterina Shablia (17):

- vulkan/runtime: add vk_image_subresource_slice_count

- panvk/csf: change get_cs_deps to be add_cs_deps

- panvk: add a meta command for transitioning image layout

- panvk: call cmd_transition_image_layout for each image memory barrier

- panvk: do not zero AFBC when an image is being bound

- panvk/csf: plop the stage and access masks into panvk_sync_scope

- panvk: adjust formatting in csf/panvk_queue.h

- pan/kmod,panvk: use uint64_t and not size_t for device sizes

- pan/kmod: introduce pan_kmod_vm::pgsize_bitmap

- panvk: introduce panvk_get_gpu_page_size

- pan/kmod,panvk: rewrite how alignment for an allocation is chosen

- panvk: add blackhole bo

- panvk: add PANVK_DEBUG=force_blackhole

- panvk: implement sparse resources

- panvk: add bind queue

- panvk: report support for sparse{Binding,ResidencyBuffer}

- docs/features: add sparse{Binding,ResidencyBuffer} on panvk/v10+

Chan, Roy (2):

- amd/vpelib: fix memory corruption

- amd/vpelib: check stream_count as well before accessing streams

Chang, Tomson (2):

- amd/vpelib: Add missing swizzle and dcc info

- amd/vpelib: Update register header and definitions macros

Charles Giessen (1):

- docs: Use correct ICD path in install.rst

Chia-I Wu (2):

- panvk: require gpu_can_query_timestamp for calibrated timestamps

- panvk: use common calibrated timestamp support

Christian Gmeiner (63):

- v3dv: Make use of hash table helpers

- freedreno/rddecompiler: Make use of hash table helpers

- etnaviv: Update headers from rnndb

- etnaviv: Handle 64-bit pixel formats in texture sampler TS setup

- etnaviv: Fix vertex format normalization for signed integer formats

- etnaviv: Fix negative LOD value encoding in texture descriptors

- etnaviv: Emulate rasterizer_discard

- etnaviv: hwdb: Add MSAA_FRAGMENT_OPERATION feature

- etnaviv: Only emit VIVS_PS_MSAA_CONFIG if GPU support it

- etnaviv: Update headers from rnndb

- etnaviv: Emit alpha-to-coverage dither

- etnaviv: Add support for alpha_to_coverage

- etnaviv: blt: Add r8_unorm format support

- etnaviv: blt: Add r8g8_unorm format support

- etnaviv: blt: Clear only requested color buffers

- etnaviv: rs: Clear only requested color buffers

- etnaviv: Optimize sampler view iteration with u_foreach_bit(..)

- etnaviv: blt: Extend translate_blt_format(..)

- etnaviv: blt: Add hardware based mipmap generation

- etnaviv: Enable texture_multisample for deqp testing

- etnaviv: isa: Add tg4 instruction

- etnaviv: nir: Add nir_texop_tg4 offset lowering

- etnaviv: Add support for ARB_texture_gather

- etnaviv: Do not update derived states during non-draw force flush

- etnaviv: re-format using clang-format

- etnaviv: Replace unsupported blit debug message with detailed dump and assertion

- r300: re-format using clang-format

- radv: re-format using clang-format

- nak: Move dataflow to compiler crate

- etnaviv: hwdb: Add S8 feature

- etnaviv: Update headers from rnndb

- etnaviv: rs: Support 8bpp for clears

- etnaviv: Support PIPE_FORMAT_S8_UINT stencil format

- imagination: Re-format using clang-format

- clang-format: Add src/imagination to .clang-format-include

- nir/opt_algebraic: optimize f2i32(fround_even(x)) to f2i32_rtne(x)

- etnaviv: blt: Enable scissored clear

- etnaviv: Update headers from rnndb

- etnaviv: hwdb: Add HWTFB cap

- etnaviv: Support hw based rasterizer_discard

- etnaviv: Pass context to acc sample provider supports(..) function

- etnaviv: Support PIPE_QUERY_PRIMITIVES_EMITTED

- etnaviv: Implement stream output target management

- etnaviv: Implement hardware based streamout support

- etnaviv: Fix util_blitter_save_so_targets(..) call

- docs/features: Mark GL_EXT_transform_feedback as done for etnaviv/HWTFB

- etnaviv: Update headers from rnndb

- etnaviv: Support ARB_stencil_texturing

- etnaviv: Expose faked xfb support when DEQP debug flag is enabled

- pvr, pco: Set has_f2i32_rtne to true

- etnaviv/ci: Add per-gpu GLES2 extension lists

- etnaviv: Allow 128-bit formats when DEQP debug flag is enabled

- etnaviv: Add 128bit emulated formats

- etnaviv: Add 128 bit format helper

- etnaviv: Add 128-bit format tilling

- etnaviv: Support 128 bit formats transfers

- etnaviv: 128 bit format needs to be CPU tiled

- etnaviv: Do not use TS for emulated 128 bit formats

- etnaviv: Implement 128-bit format emulation using dual 64-bit layout

- etnaviv: blt: Support 128 bit clear operations

- etnaviv: blt: Support 128 bit blit operations

- anv: Fix needs_temp_copy() incorrectly matching depth/stencil formats

- meson: require sysprof-capture-4 >= 4.49.0

Christian Meissl (1):

- panfrost: take reference from pool used for allocation

Christoph Neuhauser (3):

- egl: Fix DRI utility function compilation on macOS

- iris: Increase max_shader_buffer_size to max_buffer_size

- egl: Fix invalid device UUID returned by EGL_EXT_device_persistent_id

Christoph Pillmayer (25):

- panvk: hide utrace behind more generic interface

- panvk: Make panvk_utrace_record_ts wait mask configurable

- panvk: Make ts in panvk_instr_begin_work synchronous

- panvk: Make most end work instrumentation synchronous

- panvk: Support VK_DESCRIPTOR_TYPE_MUTABLE_EXT on v9+

- panvk: Support DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT

- panvk: Advertise VK_EXT_mutable_descriptor_type on v9+

- vk/sync: Pass dependencyFlags in vk_common_CmdPipelineBarrier

- panvk: Fix preserved metadata in lower_input_attachment_load

- panvk/utrace: Alloc utrace copy buf from userspace heap

- panvk/utrace: Remove dynamic alloc from utrace clone builder

- panvk/perfetto: Handle re-submittable command buffers

- panvk/perfetto: Drop zero duration events

- panvk: Add support for moving constants to the FAU

- pan/bi: Move some constants into FAU entries

- pan/va: Pull out constant swizzle handling

- pan/bi: Prioritize consts moved to the FAU

- nir/opt_algebraic: Convert a + b + a to b + 2a

- pan: Add gpu variant to compile inputs

- panfrost: Wire up gpu_variant to pan_compile_inputs

- panvk: Wire up gpu_variant to pan_compile_inputs

- pan/clc: Wire up gpu_variant to pan_compile_inputs

- pan: Lift pan_get_model into its own lib

- pan/bi: Normalize with pan_model.rates

- pan/va: Remove redundant MOVs from va_lower_split_64bit

Collabora’s Gfx CI Team (11):

- Uprev ANGLE to 6a04a50f98cac71b25464d10289ce7a013841caf

- Uprev Piglit to 0980079dcfb5adbad873d88e00181268f55cb8ef

- Uprev Piglit to c3a3e29d59e0972650a6d30d20de930c87739c14

- Uprev ANGLE to 995c4c4d89ed6a5c28b210e9c0f83eb4f8b6e2f5

- Uprev Piglit to 28d1349844eacda869f0f82f551bcd4ac0c4edfe

- Uprev ANGLE to 1df3b59f8730b56b4770595d4d69f36d5283333f

- Uprev Piglit to 517270ccca11a795d2f29bd723c362eb6ef9ce8f

- Uprev Piglit to a70c33045c59310f972dbbdb33f322eb209971bc

- Uprev ANGLE to 538129c6b3c17dc864101c7a4af4b74b00706f82

- Uprev ANGLE to 8ed16003f27125f27cbb87578368e447043420d3

- Uprev Piglit to 4147e9d7aeb8ba26ffc25a90fc237588bcb3bb11

Connor Abbott (62):

- tu: Don’t keep track of acceleration structure sizes

- freedreno: Add bin scaling registers

- freedreno: Document GRAS_SC_BIN_CNTL::FORCE_LRZ_DIS

- freedreno: Add HW bin scaling feature

- tu: Add documentation for VK_EXT_fragment_density_map

- tu: Use GRAS bin offset registers

- tu: Enable LRZ with FDM

- ir3: Simplify and rationalize shading rate LUT

- freedreno: Add common VRS helpers

- ir3: Use common shading rate lookup table

- tu, freedreno: Document GRAS shading rate LUT

- vulkan/queue: Fix VkTimelineSemaphoreSubmitInfo sanitization

- tu: Refactor BO deletion

- freedreno/drm: Import new UABI for VM_BIND

- tu: Align BO size to page size

- tu: Fix CmdBindTransformFeedbackBuffersEXT size handling

- tu/drm: Enable VM_BIND

- tu/knl: Add an API for sparse binding

- tu/drm: Add support for sparse binding

- tu/kgsl: Add support for sparse binding

- tu: Initial support for sparse binding

- tu: Support sparseResidencyAliased

- freedreno/ci: Add sparse-related a618 skips

- freedreno/ci: Skip dEQP-VK.memory.mapping.*.full.variable.*

- freedreno/ci: Update kernel with VM_BIND fixes

- freedreno/ci: Update a750 expectations

- zink: Make sparse always wait on pending gfx commands

- tu: Don’t decrement implicit_sync_bo_count with VM_BIND

- freedreno/fdl: Expose fdl6_is_r8g8_layout() publicly

- freedreno/fdl: Refactor and expose bank swizzling logic

- freedreno/fdl: Handle cpp=32 and cpp=64 when getting macrotile size

- freedreno/fdl: Handle layout differences for r8g8 images

- freedreno/fdl: Add sparse layout support

- tu: Support sparse residency for images

- ir3: Assemble and disassemble rck modifier

- ir3: Implement sparse residency check

- tu: Expose shaderResourceResidency

- ir3: Assemble and disassemble .clp modifier

- ir3: Support min_lod tex source

- tu: Advertise shaderResourceMinLod

- freedreno/ci: Add a750 sparse skips

- tu: Lower ViewIndex to 0 when multiview is disabled

- freedreno: Add blit_wfi_quirk and use in turnip

- tu/drm: Split out iova allocation and BO allocation

- tu: Add support for a “lazy” sparse VMA

- tu: Make tu_image point to tu_device_memory instead of tu_bo

- tu: Implement transient attachments and lazily allocated memory

- freedreno: Don’t program non-context reg with CRB

- tu: Fix 3d load and clear when FDM bin offsets are in use

- tu/fdm: Use better bounds for LRZ overallocation with FDM offset

- tu: Expose VK_EXT_dynamic_rendering_unused_attachments

- tu: Reset *_BIN_FOVEAT when not using FDM

- freedreno: Don’t stomp VSC registers

- tu: Pass tu_queue to kernel create/destroy functions

- tu/drm: Emulate combined gfx/sparse queues

- tu: Support sparse binds on the gfx queue

- tu: Fix RT count with remapped color attachments

- tu: Don’t patch GMEM for input attachments never in GMEM

- tu: Fix 3d load path with D24S8 on a7xx

- tu: Also disable stencil load for attachments not in GMEM

- tu: Rename tu_render_pass_attachment::clear_views to used_views

- tu: Fix attachment stores with subpasses with partial views

Corentin Noël (8):

- virgl: Stop using deprecated util_framebuffer_init

- ci/piglit: Allow traces content-type to be binary/octet-stream

- docs/features: Add missing llvmpipe extensions

- docs/features: Add missing virgl extensions

- tgsi: Drop TGSI_SEMANTIC_TESS_DEFAULT_OUTER/INNER_LEVEL

- tgsi: Remove return type from tgsi_instruction_texture

- android: Only include libdrm_intel for i915 as iris do not depend on it

- virgl: Skip resource destruction only when there are actually needed references

Daivik Bhatia (7):

- v3d: remove unused functions from v3d_bufmgr.h

- v3d: use Texture Data Formats enum in Texture Shader State struct

- v3d: move format helpers to v3dx_format_table.h

- v3d: replace raw integers with enum types in helper functions

- broadcom/common: Optimize CSD super-group packing

- broadcom/common: Add subgroup support to CSD super-group packing

- broadcom/compiler: support arithmetic subgroup operations

Dallas Strouse (1):

- rusticl/device: skip loading devices in cfg(test)

Daniel Almeida (2):

- nouveau/headers: Import the video class headers from NVIDIA

- nouveau: Handle video decode in nv_push_print()

Daniel Schürmann (74):

- util/time: add os_time_nanosleep_until() function

- vulkan: implement VK_AMD_anti_lag as implicit vulkan layer

- aco/tests: Fix p_startpgm definitions to registers

- aco/ra: generalize register affinities

- aco/ra: collect register affinities for all precolored operands.

- aco/ra: don’t optimize encodings on precolor affinity mismatch

- aco/ra: propagate precolor affinities through phis

- aco/ra: propagate precolor affinities through parallelcopies and tied definitions

- aco/scheduler: improve scheduling heuristic

- nir/opt_load_store_vectorize: only attempt to vectorize shared2 after exhausting other possibilities

- nir/opt_load_store_vectorize: don’t vectorize large shared2_amd loads

- radv: only vectorize shared2 instructions during late optimizations

- aco/isel: allow for large 8-bit vectors in extract_8_16_bit_sgpr_element()

- ac/nir: use HW-requirements on alignment for vectorizing LDS

- ac/nir_lower_mem_access_bit_sizes: Split unsupported shared memory instructions

- aco/isel: rename emit_readfirstlane() -> emit_vector_as_uniform()

- aco/isel: refactor load_shared() by directly matching NIR intrinsics to ACO opcodes

- radv: unconditionally call ac_nir_lower_mem_access_bit_sizes()

- aco/isel: refactor store_shared() by directly matching NIR intrinsics to ACO opcodes

- aco/scheduler: check dependencies of entire clause upfront

- aco/scheduler: Stop downwards scheduling after encountering the first clause

- aco/scheduler: split downwards_move_clause() from downwards_move()

- aco/scheduler: remove DownwardsCursor::insert_demand_clause

- aco/scheduler: remove DownwardsCursor::clause_demand

- aco/scheduler: short-cut downwards_move_clause() when no movement is done

- aco/scheduler: ignore potential SMEM stalls when forming clauses

- aco/scheduler: move clauses as batch

- aco/scheduler: schedule VMEM store clauses during the regular forward pass

- aco/scheduler: small refactor of schedule_VMEM()

- aco/ra: don’t clear lateKill operands in get_reg_create_vector()

- aco/ra: add vector_info::index to indicate the Operand’s index into the vector

- aco/ra: don’t set precolor affinities for already assigned temporaries

- aco/ra: consider precolor affinities in get_reg_vector()

- aco/ra: coalesce vector affinities with tied definitions

- radv/rt: use ACCESS_CAN_REORDER when loading SBT entries

- nir/algebraic: add pattern for (a << #b) * #c => a * (#c << #b)

- nir/load_store_vectorize: also parse offsets through u2u64 if additions don’t wrap around

- nir/load_store_vectorize: hoist base addr instead of subtracting

- nir/opt_offsets: allow for unsigned wraps when folding load/store_shared2_amd offsets

- radv: allow for unsigned wraps for shared memory intrinsics in nir_opt_offsets

- radeonsi: allow for unsigned wraps for shared memory intrinsics in nir_opt_offsets

- aco/optimizer: remove DS offset optimization

- aco: remove excess offset handling for load/store_shared

- amd: don’t allow unsigned wraps for shared memory offsets on GFX6

- nir/opt_offsets: call allow_offset_wrap() for try_fold_shared2()

- nir/load_store_vectorize: Fix parsing offsets through u2u64

- radv: delay lowering global access

- radv: delay lowering int64

- nir/divergence_analysis: check ACCESS_SMEM_AMD

- ac/nir_lower_global_access: require no_unsigned wrap when extracting from 32-bit additions

- ac/nir_lower_global_access: don’t assume pack_64_2x32 is the same as u2u64

- radv: delay nir_opt_shrink_vectors

- radeonsi: delay nir_lower_global_access

- radv,radeonsi: call ac_nir_lower_global_access and nir_lower_int64 for gs copy shaders

- ac/nir: switch load_smem_amd to use load_global

- nir/divergence: don’t assume that load_sample_positions_amd is always uniform

- radv: use load_global instead of load_global_amd for load_sample_positions_amd

- amd/lower_mem_access_bit_sizes: lower all SMEM instructions to supported sizes

- amd/lower_mem_access_bit_sizes: also use SMEM for subdword loads

- amd/common: merge radv_nir_opt_access_speculate() into ac_nir_flag_smem_for_loads()

- radv: delay ac_nir_lower_mem_access_bit_sizes

- ac/nir_flag_smem_for_loads: call divergence analysis internally

- radv/rt: fix LDS size calculation with LLVM for inlined stages

- radv: fix max_waves calculation for tesselation

- radv: use lds_alloc_granularity alignment for stats

- amd: change ac_shader_config::lds_size to bytes

- radv: calculate LDS allocation requirements independently from the compiler

- radeonsi: pass calculated LDS size to ACO

- amd: add and use utility functions for LDS size encoding

- amd/common: remove radeon_info::lds_alloc_granularity and radeon_info::lds_encode_granularity

- aco: remove DeviceInfo::lds_encoding_granule and DeviceInfo::lds_alloc_granule

- amd: keep ac_shader_config::lds_size unaligned

- amd: change radeon_info::lds_size_per_workgroup for GFX10+ to 64KB

- radv/null_device: set more options which affect compilation

Daniel Stone (2):

- ci/panfrost: Add wider EGL/multithread flakes

- ci/freedreno: Skip overly-slow trace

Danylo Piliaiev (30):

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

- util/u_trace: Add scripts for perf analysis based on u_trace results

- tu: Fix nullptr dereference in cmd_buffer tracepoint

- util: Add function os_get_option_secure

- util/disk_cache: Use os independent functions instead of getenv

- util/disk_cache: Fallback to ftruncate if posix_fallocate not supported

- util/disk_cache: Allow disk cache on Android if explicitly enabled

- tu: Fix unaligned image_to_buffer on close to (1 << 14) width

- tu/a6xx: Fix unaligned buffer_to_image on close to (1 << 14) width

- ir3: Add EOLM and EOGM a7xx flags to NOP

- tu: Use approx square tiles when FDM is enabled

- freedreno/a750: Fix typo in recent magic regs change

- tu: Fix the lack of IB size sanitization in several cases in tu_cs

- tu/a7xx: Don’t disable LRZ for empty FS when FDM is used

- tu: Reset rp_trace on tu_reset_cmd_buffer

- tu: Prevent dangling start_sysmem_clear_all tracepoint

- egl: Bring back util_cpu_trace_init

- tu: Reset BIN_FOVEAT regs for tiling with and without HW binning

- freedreno/decode: Fix preamble decoding

- tu/a7xx: Update reg stomping info to fix GPU crashes when stomping

- tu: Destroy all mutexes used for device

- tu/perfetto: Don’t check sync_gpu_ts when emitting renderstage

- tu/perfetto: Track GPU timestamps per-device

- tu/perfetto: Make GPU clock sequence-scoped

- tu/perfetto: Init perfetto datasources once

- tu/perfetto: Use a separate track for VK_EXT_debug_utils labels

- tu: Prevent GPU hang with occlusion query + certain depth state

- tu: Synchronize access to copy_timestamp_cs_pool

- vulkan: Always fill DS state for EXT_dynamic_rendering_unused_attachments

- tu: Use cmd->rp_trace u_trace for draw calls

Dave Airlie (11):

- nak: disable imma 8x8x16 on Blackwell+

- nvk: add sm120 latencies via csv files.

- spirv: move cmat store barrier after the store.

- nouveau: Handle subchannels better in nv_push_print()

- nir: add coop mat flexible dimensions lowering.

- radv: add support for coopmat2 flexible dimensions

- radv: consolidate cooperative matrix array sizes enumeration

- nir: add nir_intrinsic_cmat_load_shared_nv

- gallivm: handle u8/u16 const loads properly on big-endian.

- nir/coopmat: fix non square load/store lowering for flexible dimensions

- c11/threads: fix build on c23

David Rosca (129):

- radeonsi/vcn: Correctly handle tile swizzle

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

- ac/surface: Add ac_modifier_supports_video

- radeonsi/video: Use ac_modifier_supports_video

- radv/video: Support DRM format modifier tiling

- radeonsi/uvd: Set H264 gaps_in_frame_num_value_allowed_flag

- radv/video: Don’t allow DRM format modifier tiling on GFX < 9

- radv/ci: Add dEQP-VK.video.formats.* fails for navi10 and vega10

- 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: Add radv_video_is_profile_supported

- radv/video: Rework GetPhysicalDeviceVideoFormatPropertiesKHR

- radv/video: Remove 10 to 8bit dithering support

- radv: Reject linear modifier for video decode DPB

- radv/ci: Update navi10 and vega10 expected failures

- radv/video: Remove disabled slice header code for field encoding

- radv/video: Set H264 encode cabac_init_idc and Cb/Cr QP offsets

- radv/video: Always send the latency command

- 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: Disable rate control modes for H265 encode on VCN1

- 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

- radeonsi/vcn: Always enable decode tier2 when supported

- vulkan/video: Fix h265 level values

- radeonsi: Move multimedia debug options to its own flags

- radeonsi: Add debug option to disable tiling for video

- radeonsi: Add debug options to disable video decode/encode tiers

- wsi/display: Report supported formats based on plane formats

- wsi/display: Add RGBA16, RGBA16F and A2RGB10(SRGB) formats

- radv: Add timeout to video encode query

- radv/video: Don’t init vp9 probs table in message buffer

- radv/video: Simplify vp9 q params

- radv/video: Remove unused enum

- ac/vcn_dec: Add RDECODE_IT_SCALING_TABLE_SIZE

- radv/video: Use more common defines

- radv: Fix alignment for linear video decode dst images

- rusticl/ptr: Fix hidden lifetime warning

- ac/vcn_dec: Add av1_intrabc_workaround

- radeonsi/vcn: Enable AV1 decode workaround for gfx1153

- radv/video: Enable AV1 decode workaround for gfx1153

- vulkan/video: Add intra refresh support

- radv/video: Add support for VK_KHR_video_encode_intra_refresh

- auxiliary/vl: Map X6R10/X6R10X6G10 formats to R16/R16G16

- radeonsi: Map X6R10/X6R10X6G10 formats to R16/R16G16

- frontends/va: Cleanup CreateContext

- frontends/va: Refactor vlVaVidEngineBlit

- frontends/va: Change vlVaPostProcCompositor to take pipe_vpp_desc arg

- frontends/va: Remove EFC support

- frontends/va: Add support for decode/encode processing

- radeonsi/vcn: Support EFC with encode processing

- radeonsi/vcn: Support VPE with decode processing

- radeonsi: Remove now unused si_vid_is_target_buffer_supported

- pipe: Remove now unused is_video_target_buffer_supported

- subprojects: Remove libdisplay-info wrap file

- radeonsi/vcn: Disable H264 encode 8x8 transform when CABAC is disabled

- radv/video: Disable H264 encode 8x8 transform when CABAC is disabled

- radeonsi/vcn: Disable H264/5 constrained intra pred with rate control

- radeonsi/vcn: Fix compatibility with old FW for encode

- radeonsi/vcn: Fix HEVC encode cu_qp_delta with old FW

- radeonsi/vcn: Fix HEVC encode transform_skip with old FW

- ci: Add missing rust subprojects to meson/build.sh

- radeonsi/vcn: Correctly set chroma location with EFC

- radv: Use extra context for video encode queue with multiple VCN instances

- radv/video: Fix VP9 loop filter and segmentation params

- util/format: Add RGB lowering for single plane YUV formats

- ac/vcn: Add RADEON_VCN_IB_COMMON_OP_RESOLVEINPUTPARAMLAYOUT

- radv/video: Set rate control to default on reset

- radv/video: Support quantization map on VCN5

- util/format: Add VK_EXT_ycbcr_2plane_444_formats formats

- vulkan/format: Map VK_EXT_ycbcr_2plane_444_formats to pipe format

- radv: Enable VK_EXT_ycbcr_2plane_444_formats

- ci: Stop building VDPAU driver

- mesa: Remove NV_vdpau_interop

- Remove VDPAU

- gallium/vl: Remove now unused filters

- radeonsi/video: Remove support for interlaced buffers

- pipe: Remove PIPE_VIDEO_CAP_PREFERS/SUPPORTS_INTERLACED

- radeonsi/vcn: Fix calculating QP map region dimensions

- radeonsi/vcn: Get rid of PIPE_ALIGN_IN_BLOCK_SIZE

- radv/video: Always use OBU_FRAME in AV1 encode

- radeonsi/uvd: Swap order of comparison to avoid warning

- r600: Remove mpeg12 shader decoder support

- r300: Remove mpeg12 shader decoder support

- nouveau: Remove mpeg12 shader decoder support

- gallium/vl: Remove mpeg12 shader decoder

- gallium/vl: Fix building vl_stubs

- r600: Implement resource_get_param

- d3d12: Implement resource_get_param

- frontends/va: Use resource_get_param instead of resource_get_info

- pipe: Remove resource_get_info

- radv: Change radv_vcn_write_event to a write memory func

- radv/video: Check FW version before using WRITE_MEMORY

- radv/video: Fix waiting on encode feedback query

- radeonsi/vpe: Fix transfer function mapping to vpelib

- frontends/va: Fix parsing VP9 frame header

- frontends/va: Add VP9 use_prev_frame_mvs and segmentation_update_data flags

- radeonsi/vcn: Use VP9 use_prev_frame_mvs and segmentation_update_data

- ac/gfx10_format_table: Use new names for 422 subsampled formats

- gallium/vl: Add new function to get RGB YUV conversion matrix

- frontends/va: Set color properties when not using explicit color standard

- frontends/va: Use new RGB YUV conversion matrix

- gallium/vl: Remove vl_csc_get_matrix

- frontends/va: Always advertise explicit color standard support

- radeonsi/vcn: Stop using vpp colors standard

- radeonsi/vpe: Stop using vpp colors standard

- frontends/va: Stop using vpp colors standard

- vl,frontends/va: Implement YUV->YUV matrix coeff conversion

- vl,frontends/va: Implement gamma and primaries conversion

- gallium/vl: Remove luma key support

- gallium/vl: Remove vl_compositor_set_csc_matrix

- pipe: Remove PIPE_VIDEO_CAP_VPP_SUPPORT_HDR_INPUT/OUTPUT

- pipe: Remove pipe_video_vpp_color_standard_type

- radeonsi/vcn: Support BT2020 matrix with EFC

- ac/surface: Limit video modifiers to 64K_S also for VCN 2.2

- radv/video: Introduce two levels of write_memory support

- radv/video: Only use write_memory for encode feedback with full support

- radeonsi/vcn: Fix AV1 bidir compound encode with order_hint disabled

- radv/video: Don’t require encode FW version >= interface version

- radv/video: Fix AV1 bidir compound encode with order_hint disabled

- vulkan/video: Avoid NULL pointers in session parameters

- radv/video: Correctly handle no feedback query for encode

- radv/video: Add NULL checks for picture parameters

Deborah Brouwer (1):

- android: fall back to SwiftShader’s LLVM

Derek Foreman (2):

- dril: Skip some pipe formats to avoid breaking X

- zink: Don’t use VK_PRESENT_MODE_IMMEDIATE_KHR on wayland

Dhruv Mark Collins (1):

- tu/util: Allow setting all TU_DEBUG options from envvar and file

Dmitry Baryshkov (2):

- glx: provide glx.pc

- ci: drop google-freedreno remnants

Dmitry Osipenko (1):

- virtio/vdrm: Fix varying offsets of struct vdrm_device members

Dylan Baker (31):

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

- anv: avoid potential integer overflow in video address calculation

- intel/brw: Fix implementaiton of |= operator for enum

- isl: prevent potential overflow before widen

- blorp: Fix potential read of uninitaized elk fields in debug paths

- anv: add assertion that tes and tcs data is non-null

- anv: remove dead code

- mailmap: Update for Dylan Baker

- calendar: Update release dates and change 25.3 to Dylan

- meson: use the wayland module

- anv: don’t attempt to memcpy if allocation fails

- iris: Fix potential null deref in debug archiver

- VERSION: bump for 25.3.0-rc1

- .pick_status.json: Update to 3b2f7ed918a5ad78c1d3756e9823a1616c1f21d7

- .pick_status.json: Update to ad421cdf2e68a1ccef80cb810c012c8469579cb6

- .pick_status.json: Mark c20e2733bf8f9bb595f1bcc68ebb3d0686ef28e4 as denominated

- .pick_status.json: Update to 28fbc6addbda2ce3e264b41b6ad91a7a0d8eb788

- .pick_status.json: Update to e38491eb1850ab8b0082716b00f514f75e2a0e1a

- VERSION: bump for rc2

- .pick_status.json: Update to fd55e874ed09a04447ebd4dae25c98df2621ef7d

- .pick_status.json: Update to 45a762727cf8708392b6de38616909543c799923

- intel/compiler/brw: Add assert that we don’t have a negative value

- .pick_status.json: Update to 32b646c5976f64152a004d4c83962ca14c46154f

- VERSION: bump for rc3

- .pick_status.json: Update to 33342848451ca06deb054fad94de3cea3a9efe63

- .pick_status.json: Update to e44a776f4751d665efc447d8fe8e6c01d25a60c5

- .pick_status.json: Update to 27d9e4ec2a13a957f416a234a93bf2f0c2c9c56c

- VERSION: bump for 25.3.0-rc4

- .pick_status.json: Update to 04a0d512fa68a48bc2a2632a0a4ff2c3ac10c6ca

- .pick_status.json: Update to 294e72e2b517bc744f909fbce9e154efa698dd10

- .pick_status.json: Update to 8f13905c5e38ac3921c4804b19fc0f50531b0317

Ella Stanforth (22):

- util/list: Fix next instruction removal usecase for non safe iterators

- util/list: Add iterator debug to more routines.

- util/tests: Add list iterator tests

- pvr: Use demote

- nir: assert when we do not have a sample count when not using intrinsic

- pco: Switch to common alpha_to_coverage intrinsic

- pco: Switch to common alpha to coverage lowering

- pco: Cleanup meson.build files

- pco: Switch back to util/list

- v3d: rename msaa resolve

- v3d: Always lower frag color

- v3d: Fallback to software blend support for formats that do not support blend.

- v3d/compiler: Add unpacking instructions for normalised 16bit formats.

- v3d/compiler: Lower load_output after logic operations

- nir: add v3d specific intrinsic normalised to float conversion

- v3d/compiler: implement normalised to float conversions

- v3d/compiler: Implement 16bit normalised render targets.

- v3d: Add support for 16bit normalised formats

- v3dv: Take format plane when packing hw clear color

- v3dv: Add normalisation flags to the format table

- v3dv: Add support for 16bit normalised formats

- pvr: implement buffer device address

Emma Anholt (49):

- wsi/display: Add some comments about what’s going on in the code.

- wsi/display: Add error messages to some shouldn’t-be-hit paths.

- wsi/display: Pull DRM format translation up a level.

- wsi/display: Do connector setup before swapchain init.

- ir3: Rename per_samp to sample_shading.

- tu: Rename per_samp to sample_shading to match ir3.

- freedreno: Drop min_samples handling code.

- tu: Implement sampleShadingEnable by flagging uses_sample_shading.

- nir: Move ST’s force-persample-shading NIR pass to shared code.

- nir/lower_sample_shading: Set the sample qualifier on in vars.

- zink: Lower sample shading before we add_derefs().

- ci/radeonsi: Add a flake on mendocino that appeared yesterday.

- nir,agx: Move AGX’s loop (generalized) to shared NIR code.

- tu: Use nir_opt_reassociate.

- ci/tu: Generalize the subgroupclustered pre-merge skips.

- ci/tu: Do more generalization of the tess flakes.

- i915: Avoid calling drm_intel_get_aperture_sizes().

- Revert “tu: Use nir_opt_reassociate.”

- vk/runtime: Set GPU_MULTI_WAIT on the drm syncobj type.

- tu: Use the common syncobj sync type for the layered timelines.

- tu: Fix the comment about DRM_CAP_SYNCOBJ_TIMELINE support.

- ci/tu: Generalize the FDM flakes and link an issue.

- ci/tu: Drop highp.scalar xfail.

- ci/tu: generalize the multisample_resolve tess/gs flakes.

- tu: Disable LRZ writes after most stencil-write operations.

- vulkan/wsi: Add comments about the WSI’s syncing, and KHR_display stuff.

- vulkan/wsi: Add a test for kernel 6.0 sync file import/export ioctls.

- wsi/drm: Do the dma_buf_semaphore setup at swapchain creation time.

- wsi/drm: Don’t request implicit sync if we’re doing implicit sync ourselves.

- tu: Move the BO implicit sync flag handling to a BO allocation flag.

- ir3: Don’t try to use indirect access in the alias table.

- util/u_queue: Fix data race on num_threads during finish.

- ir3: Enable nir_opt_shrink_stores.

- ir3: Enable nir_opt_shrink_shrink_vec_array_vars.

- ir3: Use a bitset for the defs-seen table.

- ir3: Use a linear allocation context for ir3_registers.

- ir3: Use a linear allocation context for ir3_instructions.

- d3d10umd: Add missing dependency on u_formats codegen.

- treewide: Make exported DRM FDs read-write.

- ir3: Avoid O(n^2) behavior in rpt validation.

- nir: Add a shader bisect tool.

- radv: Restore marking WSI image’s mem->buffer as uncached.

- radv: Allocate BOs as implicit sync even if the WSI is doing implicit sync.

- ir3: Move the big block of C support code out of the parser .y file.

- ir3/parser: Make sure relative accesses have a size set.

- ir3: Use bitset range operations.

- wsi: Fix the flagging of dma_buf_sync_file for the amdgpu workaround.

- nir/shrink_stores: Don’t shrink stores to an invalid num_components.

- v3dv: Fix assertion failure for not-found primary_fd during enumeration.

Eric Engestrom (247):

- VERSION: bump to 25.3

- docs: reset new_features.txt

- docs/releasing: add missing “track remote staging branch” command in instructions

- docs: update calendar for 25.2.0-rc1

- docs: update calendar for 25.1.6

- docs: add release notes for 25.1.6

- docs: add sha sum for 25.1.6

- gfxstream: move variables into the #ifdef that uses them

- docs/linkcheck: drop cgit exception as nothing links to it anymore

- docs/linkcheck: ignore sourceforge subdomains as well

- docs/linkcheck: ignore vulkan.org failures as it also blocks non-browsers

- freedreno/ci: disable defunct baremetal jobs

- wsi/display: setup the connector earlier

- wsi/display: also select a plane when selecting a crtc

- ci: fix rustfmt job rules

- radv/ci: lower timeouts for newly added gfx1201 jobs

- radv/ci: lower timeouts for vkd3d jobs

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

- radv/ci: sort navi21 flakes

- broadcom/ci: sort rpi4 flakes

- zink+radv/ci: sort cezanne flakes

- radeonsi/ci: document recent flakes

- radv/ci: document recent flakes

- broadcom/ci: document recent flakes

- zink+radv/ci: document recent flakes

- lavapipe/ci: document recent flakes

- docs: update calendar for 25.2.0-rc2

- ci/lava: fix heredoc-in-yaml syntax

- wsi/display: pass the image’s DRM modifiers to the kernel

- wsi/display: pass the plane’s modifiers to the image

- docs: update calendar for 25.2.0-rc3

- docs: update calendar for 25.1.7

- docs: add release notes for 25.1.7

- docs: add sha sum for 25.1.7

- ci-tron: set pipefail to show the correct error message when failing to download the install tarball

- ci-tron: drop unnecessary `HWCI_TEST_SCRIPT: deqp-runner.sh` re-defines

- ci-tron: cleanup redundancy in artifacts exclude variable

- ci-tron: set SCRIPTS_DIR where its path is defined

- radv/ci: deduplicate `DEQP_SUITE: radv-valve` in ci-tron jobs

- radv/ci: deduplicate GPU_VERSION in ci-tron jobs

- turnip/ci: drop redundant GPU_VERSION

- broadcom/ci: drop redundant `script:` already set by .broadcom-test

- broadcom/ci: drop redundant HWCI_TEST_SCRIPT already set by .broadcom-test

- anv/ci: drop already included skip list

- iris/ci: drop already included skip list

- nouveau/ci: drop already included *-skips.tx

- llvmpipe/ci: set DRIVER_NAME to not have to manually add llvmpipe-skips.txt in asan job variant

- ci/deqp-runner: fix path to install folder

- ci/prepare-artifacts: move git version dump out of static file copy block

- ci/prepare-artifacts: drop redundant copy

- ci/prepare-artifacts: turn file copies into a loop

- meson: fix VkLayer_MESA_device_select in the devenv

- meson: include VkLayer_MESA_screenshot in the devenv

- meson: include VkLayer_MESA_vram_report_limit in the devenv

- meson: include VkLayer_MESA_anti_lag in the devenv

- radv/ci: add missing GPU_VERSION for navi10 in kws farm

- ci: fix PYTHONPATH variable

- turnip/ci: document new vkd3d crash

- ci/vkd3d: fix “unexpected results” check

- ci: uprev vkd3d to fix some nvk tests

- ci: cleanup weston invocations

- llvmpipe/ci: use weston’s Xwayland instead of broken Xvfb

- llvmpipe/ci: document two regressions

- llvmpipe/ci: document flakes seen during stress-testing

- ci: dedupe weston setup

- ci: document image tag to bump for rust build changes

- docs/llvmpipe: fix links to defunct drdobbs.com website

- docs/linkcheck: ignore crates.io links as it also blocks non-browsers

- zink+nvk/ci: fix flakes

- ci: drop unnecessary rename of *.log into *.log.txt

- freedreno/ci: run a618-gl job on xwayland instead of xorg

- intel/ci: run iris-{apl,glk,amly}-egl jobs on xwayland instead of xorg

- ci: drop xorg + weston workaround now that no user is left

- zink+nvk/ci: sort ad106 fails

- zink+nvk/ci: give piglit tests a display to use

- ci-tron: keep *.qpa in job artifacts

- ci-tron: move vkcts shader cache out of $CI_PROJECT_DIR

- ci-tron: move vkd3d shader cache out of $CI_PROJECT_DIR

- ci: mark igalia farm as offline

- broadcom/ci: skip two more slow CL tests

- radv/ci: mark all of dEQP-VK.ray_tracing_pipeline.pipeline_library.configurations.* as flaky

- radeonsi/ci: document recent flakes

- radv/ci: document recent flakes

- broadcom/ci: document recent flakes

- zink+radv/ci: document recent flakes

- lavapipe/ci: document recent flakes

- docs: update calendar for 25.2.0

- docs: add release notes for 25.2.0

- docs: add sha sum for 25.2.0

- docs: add 25.2.x release dates

- Revert “ci: mark igalia farm as offline”

- radeonsi/ci: document fixes test

- r300/ci: document fixes tests and one regression in c64c6a0c…bf8ebb6a

- turnip/ci: document regression in 0a12ff6f…8fe0a347

- broadcom/ci: fix another slow & flaky CL test on rpi4

- radeonsi/ci: document recent flakes

- radv/ci: document recent flakes

- zink+radv/ci: document recent flakes

- llvmpipe/ci: document fixed test

- llvmpipe/ci: document recent flakes

- lavapipe/ci: document recent flakes

- ci: track changes to new src/x11/ folder

- ci: uprev vkd3d

- ci/init-stage2: drop no-op “copy python path into python path”

- ci: move setting python path for structured_logger.py to where it’s actually used

- docs: update calendar for 25.1.8

- docs: add release notes for 25.1.8

- docs: add sha sum for 25.1.8

- freedreno/ci: consistently use x11- prefix for deqp-egl-x11

- iris/ci: consistently use x11- prefix for deqp-egl-x11

- llvmpipe/ci: consistently use x11- prefix for deqp-egl-x11

- softpipe/ci: document fixed tests

- ci: set DRIVER_NAME in jobs that are implicitly inheriting skip lists

- ci/deqp-runner: drop implicit skips of `GALLIUM_DRIVER` or `VK_DRIVER`

- ci/deqp-runner: simplify handling the various *-skips.txt files

- ci/deqp-runner: add support for all the prefixes for *-flakes.txt files

- ci/deqp-runner: remove duplicate values to avoiding read the same file multiple times

- ci/deqp-runner: add support for all the prefixes for *-fails.txt files

- lavapipe/ci: drop asan fails that are already tracked as normal fails

- softpipe/ci: drop asan fails that are already tracked as normal fails

- zink+radv/ci: set DRIVER_NAME=zink-radv to allow using common expectation files

- zink+radv/ci: deduplicate zink-radv-*-skips.txt lists

- zink+radv/ci: deduplicate zink-radv-*-fails.txt files

- zink+radv/ci: fix typo in skips comment

- zink+radv/ci: add common fails for the next commits

- zink+radv/ci: give polaris10 piglit tests a display to use

- zink+radv/ci: give navi10 piglit tests a display to use

- zink+radv/ci: give navi31 piglit tests a display to use

- zink+radv/ci: give vangogh piglit tests a display to use

- zink+radv/ci: give gfx1201 piglit tests a display to use

- panfrost/meson: drop invalid C++ arg

- zink+turnip/ci: document regression in b22806705c…cac3b4f404

- zink+turnip/ci: document fixed tests

- r300/ci: document flake

- etnaviv/ci: document some flakes

- turnip/ci: document a flake

- nvk/ci: document some flakes

- meson: add spirv-tools option to disable the optional dependency

- docs: stub pipe_format & pipe_video_chroma_format

- docs: update calendar for 25.2.1

- docs: add release notes for 25.2.1

- docs: add sha sum for 25.2.1

- meson: fixup b_sanitize checks

- ci-tron: drop meaningless timestamp in initial section message

- virgl/ci: drop invalid but overridden empty caching proxy

- vmware/ci: fix caching proxy url

- ci/piglit: automatically use LAVA proxy

- ci/piglit: automatically use baremetal proxy

- broadcom/ci: drop unnecessary variables redefinitions

- ci-tron: move s3_jwt token file to the project dir

- ci-tron: avoid uploading downloaded traces

- piglit/ci: configure ci-tron to download traces and upload renders

- broadcom/ci: add ci-tron variant of the piglit traces job

- docs/ci: drop redundant/dead fork rule

- docs/ci: drop unnecessary comment

- docs/ci: always build the docs

- docs: update calendar for 25.1.9

- docs: add release notes for 25.1.9

- docs: add sha sum for 25.1.9

- ci: document what scope the ci_run_n_monitor token needs

- zink+radv/ci: add traces job on vangogh

- zink+radv/ci: add traces job on gfx1201

- broadcom/ci: document recent flakes

- radeonsi/ci: document recent flakes

- radv/ci: document recent flakes

- zink+radv/ci: document recent flakes

- zink+lavapipe/ci: document recent flakes

- docs: update calendar for 25.2.2

- docs: add release notes for 25.2.2

- docs: add sha sum for 25.2.2

- bin/ci: let filter_dag() caller define job filter once (instead of 3 times)

- ci/gitlab_gql: keep track of job tags

- ci_run_n_monitor: add –job-tags filter

- radv/ci: deduplicate navi10 GPU_VERSION

- radv/ci: document whether ci-tron jobs runs on an APU or a dGPU

- etnaviv/ci: document fixed tests

- r300/ci: document fixed tests

- nvk/ci: document fixed tests

- zink+nvk/ci: document fixed tests

- zink+turnip/ci: document fixed tests

- venus/ci: document fixed tests

- zink+radv/ci: comment out the two checksums

- ci/update_traces_checksum: fix decoding of log lines

- ci/update_traces_checksum: fix regex detecting PIGLIT_REPLAY_DEVICE_NAME in job logs

- intel/perf: fix enum type for eu stall props

- zink+radv/ci: sort vangogh flakes

- zink+radv/ci: document recent flakes

- radv/ci: document recent flakes

- broadcom/ci: document recent flakes

- zink+lvp/ci: document recent flakes

- broadcom/ci: update test expectations

- etnaviv/ci: update test expectations

- turnip/ci: update test expectations

- zink+turnip/ci: update test expectations

- zink+nvk/ci: update test expectations

- doc/features.txt: add missing supported anv extensions

- doc/features.txt: add missing supported tu extensions

- doc/features.txt: add missing supported lvp extensions

- doc/features.txt: add missing supported v3dv extensions

- doc/features.txt: add missing supported nvk extensions

- docs/release-calendar: add 25.2.x dates, and 25.3 branchpoint and release candidates

- docs: update calendar for 25.2.3

- docs: add release notes for 25.2.3

- docs: add sha sum for 25.2.3

- doc/features.txt: add missing supported dzn extensions

- radv: make sure fp16 is enabled consistently on gfx8

- radv: add comment explaining why fp16 is disabled by default on gfx8

- meson: require glslang >= 12.2 for bvh preample

- meson: only require glslang >= 12.2 when anv/radv/turnip are built

- ci/fedora: manage rust version ourselves

- ci/alpine: install and manage rust version ourselves

- ci/rust: install components with the initial install command

- ci: use MSRV for build-for-tests jobs and recent version in build-only jobs and CI components

- ci/build-rust: strip rust libs and binaries

- zink+nvk/ci: fix test expectations

- zink/ci: drop gbm override now that debian has a usable xorg

- util/meson: make sure shader_stats.h is generated in time for anything that depends on mesautil

- egl/meson: generate wayland presentation-time header before it gets included

- panvk/meson: generate git_sha1.h before compiling panvk_vX_physical_device.c

- gfxstream/meson: generate git_sha1.h before compiling ResourceTracker.cpp

- intel/meson: generate spirv_info.h before compiling brw_spirv.c

- etnaviv/meson: generate enums.h before compiling assembler.c

- freedreno/meson: generate xml headers before compiling gmemtool

- i915/meson: generate intel_device_info_gen.h before compiling i915_drm_winsys.c

- meson: use vcs_tag() instead of custom script

- llvmpipe/ci: document fixed tests

- docs: update calendar for 25.2.4

- docs: add release notes for 25.2.4

- docs: add sha sum for 25.2.4

- iris/meson: generate git_sha1.h before compiling iris_program.c

- docs: finish converting the docs job into a meson build job

- ci/alpine: install the real `ninja` package

- ci: check for missing meson dependencies

- Revert “meson: use vcs_tag() instead of custom script”

- ci-tron: bump job template commit to get cached job templates

- docs: update khronos wiki url

- nvk/ci: document some flakes

- nvk/ci: document fixed tests

- broadcom/ci: document fixed tests

- docs: update calendar for 25.2.5

- docs: add release notes for 25.2.5

- docs: add sha sum for 25.2.5

- asahi/virtio: fix memleak

- util/meson: don’t build libmesa_util_clflushopt unless needed

- util/meson: don’t build libmesa_util_clflush unless needed

- ci: track src/c11/ changes

- ci: track src/android_stub/ changes

Eric R. Smith (9):

- panvk: use minimum attachment size for frame buffer size

- panvk: fix a NULL pointer dereference in occlusion queries

- mesa: fix off by one in MSRTT handling

- panfrost: add some sanity checks for nr_samples

- panvk: revised occlusion query pointer fix

- panfrost: fix typo in register allocation

- panfrost: fix debug print of spilled registers

- panfrost: align spills to reduce TLS memory usage

- glcpp: prevent accidental token pasting

Erico Nunes (10):

- 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

- ci: lima farm maintenance

- Revert “ci: lima farm maintenance”

- kmsro: enable with zink

- pvr: add VK_EXT_physical_device_drm support

- v3dv: rename primary_fd to display_fd

- v3dv: use v3d primary node for VK_EXT_physical_device_drm

- pvr: enable KHR_wayland_surface

Erik Faye-Lund (89):

- panfrost: enable robust_buffer_access_behavior

- docs: document new panfrost extensions

- docs: add GL_KHR_robustness to panfrost

- r300/ci: update expected failures

- 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”

- panfrost: add new skips

- panvk/ci: try to remove all previously slow tests

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

- docs/features: add missing panvk extension

- panvk: fix EXT_texture_compression_astc_support

- crocus: use os_get_total_physical_memory instead of open-coding

- iris: use os_get_total_physical_memory instead of open-coding

- panfrost: use os_get_page_size()

- winsys/radeon: use os_get_page_size and error-check

- winsys/radeon: use util_get_cpu_caps()-helper

- prefer _SC_PAGESIZE over _SC_PAGE_SIZE

- meson/util: properly detect sysconf

- nvk: drop some needless definitions and deps

- docs/features: sort drivers

- docs/panfrost: update exposed vulkan version

- pan/util: use nir_component_mask instead of BITFIELD_MASK

- pan: use translate_s_format for stencil

- pan/lib: do not duplicate enum mali_pixel_kill

- panvk: avoid implicit cast-warning on Clang

- pan/midgard: avoid implicit cast-warning on Clang

- pan/bi: plug leak

- pan/bi: bail from optimizing on oom

- pan/bi: use ralloc

- pan/midgard: r1w should be set

- pan/midgard: initialize last_next_tag to TAG_BREAK

- pan/decode: detect error on fseek

- pan/clc: handle seek-error

- pan/bi: use os_read_file-helper

- pan/midgard: fix check for negative texture offset

- pan/va: check branch_offset for overflow

- panvk: properly handle errors from utrace_context_init

- pan/lib: clamp format size to 4

- pan/lib: clean up tilebuffer size helpers

- panvk: enable KHR_maintenance7

- doc/features: update VK_KHR_maintenance8

- panvk: enable KHR_maintenance8

- panvk: respect VK_QUERY_POOL_CREATE_RESET_BIT_KHR-flag

- panvk: enable KHR_maintenance9

- panvk: fix up vk1.4 properties

- panvk: clean up feature-bits

- panvk: clean up limits and properties

- panvk: explicitly list unsupported features

- panvk: expose missed vulkan 1.4 properties

- zink: update profile schema

- zink: add missing gpl requirement

- zink: use polygonModePointSize instead of open-coding

- aux/pp: fixup sampler-view release

- pan/lib: set afbc mode based on plane-format, not view

- panfrost: add per-gpu GLES2 extension lists

- panvk: do not export needless symbols

- pvr: use vulkan_icd_link_args

- pvr: report vulkan 1.4 to the loader

- pvr: wire up version-overriding

- pvr: remove unused enum

- pvr: drop pointless PVR_FROM_HANDLE macro

- pvr: move event/sampler cast defs to correct header

- pvr: remove bogus forward-declaration

- pvr: include pvr_common.h instead of pvr_private.h

- pvr: use pvr_memlayout instead of uint32_t

- pvr: remove stale comment about pvr_pds_upload

- pvr: move pvr_pds_upload to pvr_common.h

- pvr: break out queue to separate header

- pvr: break out instance/device to separate header

- pvr: break out image to separate header

- pvr: break out buffer to separate header

- pvr: break out render-pass to separate headers

- pvr: break out cmd-buffer to separate header

- pvr: break out queries to separate header

- pvr: break out pipelines to separate header

- pvr: break out descriptor sets to separate header

- pvr: break out wsi to separate header

- pvr: break out macros to separate header

- pvr: avoid including pvr_private.h from headers

- pvr: kill off pvr_private.h

- pvr: include pvr_csb.h first in implementation

- pvr: kill rogue_hwdefs.h

- pvr: split out rogue hw-defs to separate folder

- v3dv: use ld_args_build_id

- docs/pvr: update conformance status

- docs/pvr: update vulkan version

- aux/pp: release correct sampler-views

- gallium/aux: unconditionally write buffer

Ernst Persson (3):

- meson: Raise minimum Python version to 3.9

- vulkan/util: Use str.removeprefix() from Python 3.9

- amd/vulkan: Use str.removesuffix() from Python 3.9

Fafa Kitten (1):

- meson: detect `memfd_create()` and `getrandom()` from headers, not system libraries

Faith Ekstrand (205):

- nak: Wire up the mma predicate on Hopper+

- nir/instr_set: Rework tex instr hash/compare

- nil: Add a ViewAccess enum and plumb it through from NVK

- nil: Use an extent in samples for MSAA storage images

- nir,nak: Add a nir_texop_sample_pos_nv and plumb it through

- nak/lower_tex: Don’t use remap_sampler_dim() for images

- nak/lower_tex: Add texture query helpers

- nak/lower_tex: Handle NULL image queries pre-Volta

- nvk: Drop the pre-Volta texture query workaround

- nak: Lower MSAA image load/store/atomic/size

- nvk: Delete the old MSAA image workarounds and trust NIL and NAK

- nouveau/headers: Skip duplicate enumerants in rust enums and switches

- nouveau,nvk: Import the Blackwell and Hopper DMA class headers

- nvk: Move KHR_timeline_semaphore to the right spot in the list

- nvk: Bump the conformance version to 1.4.3

- nvk: Add an nvk_is_conformant() helper

- vulkan/meta: Supply image view usage in vk_meta_clear_*_image()

- 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

- nak/lower_tex: Re-order arguments to put can_speculate at the end

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

- spirv: Assert !ptr_as_array for blocks and acceleration structures

- spirv: Drop block_index/offset pointers

- spirv: Simplify pointer_to/from_ssa a bit

- spirv: Assert that vtn_pointer_to_deref() doesn’t return NULL

- compiler/rust: Add a CFG::loop_depth() method

- nak: Take loops into account in static cycle estimates

- nvk: Blackwell is now Vulkan 1.4 conformant

- nvk: Handle empty pushes in nvk_queue_push()

- nouveau/class_parser: Strip unnecessary parens

- nouveau/headers: Import video encode/decode headers from NVIDIA

- nouveau/push: Map b0 classes to subchannel 4

- nouveau/winsys: Allow subchan_dealloc() on zeroed subchans

- nouveau/winsys: Refactor nouveau_ws_context_create()

- nvk: Advertise KHR_shader_untyped_pointers

- vulkan/video: Switch vk_video_session_parameters to create/destroy

- vulkan: Add handle casts for vk_video_session[_parameters]

- vulkan: Add common VideoSessionParametersKHR entrypoints

- anv: Delete anv_video_session_params

- radv: Delete radv_video_session_params

- vulkan: Add a vk_video_session_finish() helper

- nvk: Allow kepler in nvk_is_conformant()

- anv: Set the Shader capability when compiling the FP64 shader

- anv/i915: Require HAS_EXEC_ASYNC

- anv/i915: Require HAS_EXEC_CAPTURE

- anv/i915: Require HAS_EXEC_TIMELINE_FENCES

- intel/gem: Add an intel_gem_supports_dma_buf_sync_file() helper

- anv: Require Linux 6.0 for dma-buf sync file import/export

- anv/wsi: Stop requesting signal_*_with_memory

- anv: Dead code anv_bo_sync

- hasvk: Require HAS_EXEC_ASYNC

- hasvk: Require HAS_EXEC_CAPTURE

- hasvk: Require HAS_EXEC_TIMELINE_FENCES

- hasvk: Require Linux 6.0 for dma-buf sync file import/export

- hasvk/wsi: Stop requesting signal_*_with_memory

- hasvk: Dead code anv_bo_sync

- dozen: Drop dzn_create_sync_for_memory()

- vulkan/wsi: Drop signal_fence/semaphore_with_memory

- vulkan/wsi: Stop setting wsi_memory_signal_submit_info

- vulkan: Drop implicit sync support

- vulkan/wsi: Style nits

- vulkan/wsi: Sanitize the result of wsi_drm_check_dma_buf_sync_file_import_export()

- vulkan/wsi: Only test for dma-buf sync file support once

- subprojects: Stop calling add_languages() in paste-1-rs/meson.build

- meson: Add a rust_2024_lint_args helper

- meson: Disable unsafe_op_in_unsafe_fn in bindgen for now

- meson: Disable unsafe_attr_outside_unsafe for now

- nil/copy: Wrap all unsafe code in unsafe blocks

- nil/copy: Use saturating_sub() instead of doing it manually

- nil: Fix a couple of clippy lints

- nak: Use .as_ref().unwrap() instead ofv &*

- nak/hw_runner: Wrap all unsafe code in unsafe blocks

- nak: Use +use<> to avoid unnecessary lifetime captures

- nouveau: Use rust_2024_lint_args

- nouveau/class_parser: Stop shifting by zero

- nouveau/class_parser: Add a helper for address expression filtering

- nouveau/struct_parser: Stop generationg i * 1

- nouveau/bitview: Drop an unneeded lifetime

- compiler/rust: Use .as_ref().unwrap() instead of &*

- compiler/rust: Stop using NonNull in the NIR bindings

- meson: Add –wrap-unsafe-ops to bindgen

- compiler/rust: Add Rust 2024 lints

- compiler/rust/nir: Drop a bunch of explicit lifetimes

- compiler/rust: Don’t use assert_eq!() with booleans

- compiler/rust: Add a bunch of clippy lints

- compiler/rust: Stop using try_into() for u8 -> usize

- compiler/rust/bitset: Don’t use a vector for expected sets in tests

- compiler/rust/cfg: Use slices instead of &Vec

- vulkan/sync: Return early in vk_sync_timeline_wait() if wait_value == 0

- vulkan/drm_syncobj: Use SWAP() in vk_drm_syncobj_move()

- vulkan/sync: Make the can_wait_many() check faster

- vulkan/sync: Add vk_sync_signal/reset_many()

- vulkan/drm_syncobj: Implement signal/reset_many

- vulkan: Add a vk_sync_wait_unwrap() helper

- vulkan/queue: Move timeline point allocation to vk_queue_submit_final()

- vulkan: Add a vk_sync_signal_unwrap() helper

- vulkan: Add a vk_device_copy_semaphore_payloads() helper

- vulkan/drm_syncobj: Add a vk_drm_syncobj_copy_payloads helper

- anv,hasvk: Use vk_drm_syncobj_copy_payloads

- nvk: Use vk_drm_syncobj_copy_payloads

- panvk: Use vk_drm_syncobj_copy_payloads

- anv: Stop picking our own blit queue

- vulkan/wsi: Switch to vkQueueSubmit2()

- vulkan,anv,hasvk: Drop vk_queue_wait_before_present()

- vulkan/wsi: Take a vk_queue in wsi_common_queue_present()

- vulkan/wsi: Make get_blit_queue return a struct vk_queue *

- vulkan/wsi: Add a QueueSubmit2() wrapper

- vulkan/wsi: Gather per-swapchain results in an array in queue_present()

- vulkan/wsi: Handle throttling in a separate loop

- vulkan/wsi: Consolodate vkQueueSubmit2() calls across swapchains

- vulkan/wsi: Skip the vkQueueSubmit() entirely if we aren’t blitting

- vulkan/wsi: Always use VK_PIPELINE_STAGE_2_TRANSFER_BIT for semaphore ops

- nak: Lower away ldcx when NAK_DEBUG=no_ugpr is set

- nvk/nvkmd: Stop setting WAIT_FOR_SUBMIT for sync

- nvk/nvkmd: Track all memory objects by default

- nvk,nvkmd: Move push dumping to NVKMD

- nouveau/push: Handle more recent versions of 6F

- nak: Add a nak_qmd_size_B() query

- nak/hw_runner: Allow for variable sized QMDs

- nvk: Allow for larger QMDs

- nak/qmd: QMD versions 4.0 and 5.0 are both 384B

- nouveau/headers: Add a MAX_BIT for structs

- nak: Assert that QMDs are big enough

- nak: NAK_MAX_QMD_SIZE_B should be 384

- nak: Increase Imma latencies on Blackwell by 4

- compiler/rust: Fix the DFS loop detection algorithm

- lavapipe: Always use dma-buf for external memory when we can

- vulkan/wsi: Move a couple of dma-buf sync checks

- vulkan/wsi: Don’t dma-buf sync import/export on success

- nir: Add an option to make lower_phis_to_regs_block() less clever

- nak,nir: Use a simpler version of phis_to_regs_block in lower_cf

- nil: Delete some useless image alignment code

- turnip: Use vk_drm_syncobj_copy_payloads

- nouveau/push: Fix SET_OBJECT handling

- nvk: Use the image format for depth views

- vulkan/meta: Always set VK_IMAGE_VIEW_CREATE_DRIVER_INTERNAL_BIT_MESA

- vulkan: Handle VK_IMAGE_VIEW_CREATE_DRIVER_INTERNAL_BIT_MESA automatically

- nvk: Use VK_IMAGE_VIEW_CREATE_DRIVER_INTERNAL_BIT_MESA

- radv: Use VK_IMAGE_VIEW_CREATE_DRIVER_INTERNAL_BIT_MESA

- v3dv: Use VK_IMAGE_VIEW_CREATE_DRIVER_INTERNAL_BIT_MESA

- vulkan: Drop the driver_internal from vk_image_view_init/create()

- nvk: Stop adding Vulkan image usage flags

- nvk: Use Vulkan formats for SET_ZT_FORMAT instead of NIL

- mesa: Use mesa_log_if_debug() for no context errors

- util/log: Add a MESA_LOG_LEVEL environment variable

- vulkan/wsi/x11: Use mesa_logX() instead of fprintf()

- vulkan/queue: Move shared binary semaphores to temps

- spirv: Add support for OpBitcast in OpSpecConstantOp

- nvk: Actually reserve 1/2 for FALCON

- compiler/rust: Add a DepthFirstSearch trait

- compiler/rust/cfg: Use DepthFirstSearch for rev_post_order_sort()

- compiler/rust/cfg: Use DepthFirstSearch for calc_dominance()

- compiler/rust/cfg: Use DepthFirstSearch for find_back_edges()

- compiler/rust/cfg: Use DepthFirstSearch for finding reaches sets

- compiler/rust: Implement dfs() non-recursively

- nil: Add a GOB_TYPE_MODIFIER_INFOS table

- nil: Add GOBType::TegraColor

- util/cache_ops: Add some cache flush helpers

- util/cache_ops/x86: Call util_get_cpu_caps() less

- hasvk: Switch to util/cache_ops.h

- anv: Switch to util/cache_ops.h

- intel/sanitize-gpu: Use util_flush_inval_range()

- crocus: Use util_flush_inval_range()

- intel: Drop intel_mem.c/h

- turnip: Use the util cache helpers

- nouveau/winsys: Add a NOUVEAU_WS_BO_COHERENT flag

- nvk/nvkmd: Add an NVKMD_MEM_COHERENT flag

- nvk/nvkmd: Add map sync to/from GPU helpers

- nvk: Implement Flush/InvalidateMappedMemoryRanges()

- nvk: Flush pushbufs in EndCommandBuffer()

- nvk/nvkmd: Invalidate maps before dumping pushbufs

- nvk: Use a coherent map for the event heap

- nvk: Flush descriptor tables and heap maps on submit

- nvk/mem_stream: Flush maps in nvk_mem_stream_flush()

- nvk: Flush after zeroing memory

- nvk: Flush the zero page

- nvk: Flush/invalidate around host image copies

- nvk: Use _B suffixes in descriptor sets

- nvk: Use a pool offset instead of an address in nvk_descriptor_set

- nvk: Add an nvk_descriptor_writer

- nvk: Route more descriptor types through write_desc()

- nvk: Flush descriptor set maps

- nvk: Flush indirect execution set maps

- nvk/query: Rework offset helpers

- nvk/query: Pass an IS_TIMESTAMP flag explicitly to the CL kernel

- nvk/query: Add a vk_query_pool_report_count() helper

- nvk/query: Add an interleaved query layout

- nvk/query: Rework query waits

- nvk/query: Handle non-coherent query pool memory

- nvk: Expose cached and coherent as separate types on Tegra

- panvk: Fix integer dot product properties

- util: Don’t advertise cache ops on x86 without SSE2

- util: Build util/cache_ops_x86.c with -msse2

- nvk: Include the chipset in the pipeline/binary cache UUID

- nvk: Disable sampleLocationsSampleCounts for 1x MSAA

- nvk: Emit inactive vertex attributes

- nvk: Look at the right pointer in GetDescriptorInfo for SSBOs

- nvk: Capture/replay buffer addresses for EDB capture/replay

- panvk/shader: [de]serialize desc_info.max_varying_loads

- panvk/shader: Use the right copy size for deserializing dynamic UBOs/SSBOs

- nvk: Don’t re-initialize the descriptor writer if the set matches

- drm-uapi: Import the new NVIDIA modifiers

- nil: Add support for Blackwell 8 and 16-bit modifiers

- nir: Add a couple panfrost sysvals to divergence analysis

Francisco Jerez (16):

- intel/brw/xe3+: Handle SENDG in instruction scheduler.

- intel/brw: Fix behavior of scheduler around flag register writes.

- intel/brw/xe3+: Define BRW_SCHEDULE_PRE_LATENCY scheduling mode.

- util/ra: Allow driver to override class P value.

- intel/brw/xe3+: Override P value of GRF register classes to increase thread parallelism.

- intel/brw/xe3+: Model trade-off between parallelism and GRF use in performance analysis.

- intel/brw/xehp+: Adjust performance model weights of LSC atomic ops.

- intel/brw/xe3+: Adjust weights of discard control flow for non-EU-fused platforms.

- intel/brw/xe3+: Tweak render target write timings in performance modeling pass.

- intel/brw: Allow using performance analysis pass pre-register allocation.

- intel/brw: Make sure we don’t use stale analysis after inst. order restore in brw_allocate_registers().

- intel/brw/xe3+: Select scheduler heuristic with best trade-off between register pressure and latency.

- intel/brw: Apply 7e1362e9c070ad037 to pre-xe3 codepath of brw_compile_fs().

- intel/brw/xe3+: Re-enable static analysis-based SIMD32 FS heuristic for the moment.

- intel/brw: Fix regression in brw_allocate_registers() compiling large shaders with throughput==0.

- intel/brw/gfx12.0+: Sync on all pending send messages after halt target.

Frank Binns (30):

- pvr: correctly return core count for pvrsrvkm

- pvr: update conformance version

- pvr: only share scratch buffers when they’re the required size

- pvr: apply PBE stride alignment when setting up image physical extents

- pvr: implement VK_(EXT|KHR)_vertex_attribute_divisor

- pvr: advertise VK_EXT_queue_family_foreign

- pvr: implement VK_EXT_depth_clip_enable

- pvr: Implement VK_KHR_descriptor_update_template

- pvr: add support for VK_FORMAT_D32_SFLOAT_S8_UINT

- pvr: setup tpu_tag_cdm_ctrl when present (pvrsrvkm)

- pvr: support VK_FORMAT_R8G8_SSCALED for vertex attribs

- pvr: add some more pixel formats needed by Zink

- pvr: implement KHR_shader_float_controls

- pvr: disable gs_rta_support for BXS-4-64 to workaround some conformance failures

- pvr: enable KHR_create_renderpass2

- pvr: advertise KHR_shader_subgroup_extended_types

- pvr: advertise KHR_spirv_1_4

- pvr: setup Vulkan 1.1 & 1.2 features, properties, version

- docs: add pvr VK 1.0, extensions and optional features to new_features.txt

- pvr: advertise VK_EXT_zero_initialize_device_memory

- docs/features: claim vk 1.2 for pvr

- pvr: add device info for BXE-4-32 (36.50.54.182)

- pvr: add device info for GX6250 (4.45.2.58)

- pvr: add device info for G6110 (5.9.1.46)

- pvr: add device info for GX6650 (4.46.6.62)

- pvr: add device info for BXM-4-64 (36.52.104.182)

- pvr: add device info for BXE-2-32 (36.29.52.182)

- pvr: add device info for GE8300 (22.102.54.38)

- pvr: add device info for GE8300 (22.68.54.30)

- pvr: support VK_KHR_device_group

GKraats (1):

- crocus: fix SIGSEGV crash at pbo compressed teximage

Georg Lehmann (175):

- ac/nir/lower_mem_access_bit_sizes: make 8/16bit access 32bit if possible

- nir/lower_int64: lower 64bit bitfield_select

- aco/isel: don’t create literal operands for SALU bitfield_select

- aco: supported 64bit or vectorized bitfield_select

- ac/nir: don’t lower 8/16bit bitfield_select

- nir/opt_generate_bfi: create vector and non 32bit bitfield_select

- nir/opt_algebraic: create non 32bit bitfield_select

- radv: vectorize 8/16bit bitfield_select

- lavapipe: use NIR_PASS(_, …) instead of NIR_PASS_V

- gallium/draw: use NIR_PASS(_, …) instead of NIR_PASS_V

- gallivm: use NIR_PASS(_, …) instead of NIR_PASS_V

- nir/schedule: return progress and fix metadata

- broadcom/compiler: use NIR_PASS for nir_schedule

- llvmpipe: use NIR_PASS(_, …) for nir_lower_fragcolor

- svga: use NIR_PASS(_, …) for gl_nir_lower_images

- nir/opt_remove_phis: skip unreachable phis

- pvr/rogue: return progress in rogue_nir_pfo

- pvr/rogue: replace NIR_PASS_V with NIR_PASS(_, …)

- lima: rework lima_nir_duplicate_modifiers

- lima: rework lima_nir_duplicate_intrinsic

- lima: rework lima_nir_duplicate_load_consts

- lima: fix metadata in lima_nir_split_loads

- lima: replace NIR_PASS_V with NIR_PASS(_, …)

- aco: optimize get_alu_src with constant source and size > 1

- nir: remove NIR_PASS_V

- aco/statistics: add latency to WMMA

- aco/statistics: update GFX12 WMMA cost

- aco: insert VALU s_delay_alu for WMMA

- aco/select_alu: avoid vector get_alu_src for instructions with scalar operands

- aco/isel: refactor shared vgpr usage

- aco/gfx10: optimize subgroupRotate(x, 32) and subgroupShuffleXor(x, 32)

- nir/search: support swizzles on expressions in replacement patterns

- radv/nir/lower_cmat: load gfx11 8bit ACC using the B layout to get aligned loads

- nir/opt_algebraic: remove 8bit roundtrip when vectorizing i2i16(unpack_4x8(a).zw)

- aco/print_asm: use real true16 instr on gfx11+

- aco/ra: convert bitwise instruction to gfx11+ 16bit on demand

- nir/opt_algebraic: optimize fsat(fmax(a, b)) where b is not positive

- nir/opt_algebraic: push fsat into bcsel with constant

- nir/opt_algebraic: use range analysis to detect no-op fmin/fmax

- nir/range_analysis: look through f2f

- nir/range_analysis: look through vec2

- nir/opt_algebraic: make fmin/fmax(a, #b) 16bit if only used by f2f16

- nir/opt_algebraic: remove fneg around fmin/fmax

- nir/opt_algebraic: create 16bit fmin/fmax if only used by pack_half_2x16_rtz_split

- nir/opt_algebraic: optimize pack_half_rtz of bcsel with constant

- nir/opt_algebraic: optimize pack_half_rtz of b2f

- nir/opt_tex_skip_helpers: don’t skip helpers for terminate_if source

- nir/opt_tex_skip_helpers: never require helpers for stores/atomics

- nir: print skip_helpers for tex instrs

- nir: rename to nir_opt_load_skip_helpers and add options struct

- nir: add ACCESS_SKIP_HELPERS

- nir: add access for scratch loads

- nir/opt_load_skip_helpers: optionally handle intrinsics

- aco/insert_exec: remove p_jump_to_epilog from needs exact

- aco: add a post-RA pass to disable wqm

- aco/insert_exec: new way to handle instructions that need wqm disabled

- aco: use new disable_wqm for mubuf/mtbuf

- aco: use new disable_wqm for flatlike

- aco: use new disable_wqm for mimg

- aco/builder: support new disable_wqm

- aco: use new disable_wqm for exp

- aco: use new disable_wqm for p_dual_src_export_gfx11

- aco/insert_exec: remove per instruction wqm/exact exec handling

- aco: use a smaller wqm section for strict_wqm sampling

- aco: don’t restrict vmem load scheduling by inserting p_end_wqm early

- aco: disable wqm for tex loads when not needed

- aco: disable wqm for sampled buffer loads when not needed

- aco/disable_wqm: optimize local mask creation

- amd: replace ACCESS_TYPE_SMEM with ACCESS_SMEM_AMD

- amd: stop using custom gl_access_qualifier for access type

- amd/ci: update checksums for restricted traces

- nir/uub: guard against division by 0

- aco/isel: fix vectorized i2i16 with 8bit vec8 source

- nir/uub: fix exclusive scans

- nir/uub: decrease default max subgroup size to 128

- nir/uub: handle more reduction ops

- nir/uub: handle bit_count

- nir/shrink_vec_array_vars: allow nir_var_mem_shared

- radv: shrink shared arrays

- nir/shrink_vec_array_vars: use range analysis for non constant indices

- aco: fix ra validation for flat/global/scratch/ds load sbyte_d16

- aco/optimizer: don’t apply packed clamp to v_fma_mix

- aco/optimizer: don’t create undef copies from p_create_vector

- nir: constant fold txd with 0 ddx/ddy to txl

- nir/shrink_vec_array_vars: update constant initializer after shrinking

- nir/shrink_vec_array_vars: detect zero init shared memory using constant initializer

- radv/nir/lower_cmat: split up larger nested switches

- radv: reorder cmat properties according to performance

- ac/nir: do not assume mesh cull flag is 1bit

- nir/lower_io: fix boolean output stores

- nir/peephole_select: allows more lowered io

- nir/opt_algebraic: optimize some post peephole select patterns

- radv: set ACCESS_CAN_SPECULATE for smem buffer loads with known good descriptors

- aco/isel: add init_disable_wqm helper

- aco: implement skip_helpers for image loads

- aco: implement skip_helpers for load_ssbo/ubo/constant

- aco: implement skip_helpers for load_scratch

- aco: implement skip_helpers for load_global_amd

- aco: never end wqm early for vmem

- nir: make inverse_ballot 1bit only

- nir/builder: add nir_inverse_ballot_imm

- nir: make ballot_bitfield_extract 1bit only

- spirv: handle ballot bit_extract separately

- nir: make ballot find_lsb/msb/bit_count 32bit only

- spirv: ensure ballot find_lsb/find_msb/bit_count have 32bit result

- nir/lower_subgroups: don’t use get_max_subgroup_size for lowering boolean rotates

- nir/lower_subgroups: change filter to intrinsic callback

- nir/lower_subgroups: recursively lower ballot scans

- mesa: clamp fog scale to -FLT_MAX instead of FLT_MIN

- intel/ci: update restricted trace checksums

- radv/nir/lower_cmat: add shuffle_xor_imm helper

- radv/nir/lower_cmat: clean up gfx12 transpose

- radv/nir/lower_cmat: clean up GFX11 ACC->B convert

- nir/lower_subgroup: optimize reduce/scans with unknown subgroup size

- mesa/st: make double subgroup lowering more precise

- nir: remove subgroup size related nir_shader_compiler_options members

- nir/lower_subgroups: remove lower_fp64 option

- nir: remove unused shader_info param in nir_create_shader

- nir: define new subgroup size info

- vulkan: set nir subgroup size shader info

- mesa,glsl,spirv: set new subgroup size info

- intel: switch to new subgroup size info

- radeonsi: switch to new subgroup size info

- rusticl: switch to new subgroup size info

- microsoft: switch to new subgroup size info

- shader_info: remove gl_subgroup_size enum

- radv: add varying subgroup size to shader stage key

- ac/llvm: remove unused ballot size

- radv: remove unused ballot_bit_size from shader info

- ac/nir: set subgroup size for gs copy shader

- radv: determine subgroup/wave size early

- radv: remove uses_rt from radv_shader_info

- nir: remove has_ddx_intrinsics option

- aco/isel: fix output args init stack buffer overflow

- nir/uub: remove vertex input handling

- nir/uub: use shader_info subgroup size

- nir/uub: remove max_workgroup_size from config

- nir: remove unsigned upper bound config

- radv: allow application required fragment shader subgroup size

- radv: use rt wave size in fragment shaders with ray queries

- radv,aco: don’t end monolithic ray tracing with unconditional terminate

- aco: remove existing dealloc_vgprs use

- aco: dealloc vgprs if there is a pending non scratch store and no pending export

- aco: don’t insert s_sendmsg dealloc_vgprs with little vgprs allocated

- util: add util_round_down_npot

- aco: use maximum RT vgpr_limit that doesn’t reduce wave count

- aco/lower_branches: update branch hints after changing jump targets

- radv: call nir_opt_undef late too

- nir/opt_undef: prefer 0 over NaN for pack_half_2x16_rtz_split

- aco/optimizer: fix incorrect operand order assumption for neg(mul) opt

- aco/insert_waitcnt: don’t merge waitcnts for LDS clauses

- nir: add atomic isub

- ac/llvm: support nir_atomic_op_isub

- aco/isel: support nir_op_atomic_isub

- nir: optimize atomic isub if supported

- aco: fix global_atomic_swap offset overflow check

- nir: fix nir_get_io_offset_src for global_atomic_swap_amd

- aco/gfx10+: only work around split execution of uniform LDS in WGP mode

- nir/opt_uniform_atomics: optimize xchg with uniform address and data

- nir/opt_intrinsics: don’t pass nir options around

- nir/opt_intrinsics: optimize atomics to atomic load/store

- ac/nir: enable nir atomic load/store opts

- aco/tests: allow even more literals

- aco/optimizer: add a new dce helper

- aco/optimizer: add alu_opt_info helpers

- aco/optimizer: use new helpers to apply literals

- aco/optimizer: use new helpers to propagate constants/neg/abs

- aco/optimizer: rework packed fneg opt

- aco/optimizer: apply sgprs/extract with new helpers

- aco/optimizer: delete apply_extract

- aco/optimizer: remove can_apply_extract

- aco/optimizer: apply f2f16 conversion with the new helpers

- aco/optimizer: unify constant labels

- radv: do not report wave32 in gl_SubgroupSize for Doom Dark Ages

- aco/gfx10_3: work around NSA hazard

Gert Wollny (95):

- r600/sfn: lower bany/ball *(n)equal in nir

- r600/sfn: lower ineg in nir

- r600/sfn: remove some dead code

- r600/sfn: remove obsolete index and address register handling

- r600/sfn: remove code used for vectorized ALU ops

- r60/sfn: Update .clang-format

- r600/sfn: Move RA helper class declaration into implementation file

- r600/sfn: lower b2f64 in nir

- r600/sfn: Allow f2f64 to use vec2

- r600/sfn: remove first call to r600_split_64bit_alu_and_phi

- r600/sfn: lower u2f64 and i2f64 in nir

- r600/sfn: check number of fsat64 source uses properly

- r600/sfn: rename free_slots and improve updating it

- r600/sfn: Simplify test code when scheduling a vec instr into trans

- r600/sfn: unify and fix naming of group readport reserver

- r600/sfn: reuse readport for already loaded registers

- r600/sfn: Fix update readports method

- r600/sfn: update readports before trying to schedule group instrutions

- r600: Update GPR count when adding a GDS instruction

- r600/sfn: allow skipping RA for shader ID ranges

- r600/sfn: factor out adding an input in GS

- r600/sfn: Handle indirect access to GS input arrays

- r00/sfn: Fix copy propagation into buffer load address

- r600/sfn: resolve constant indices into local arrays better

- r600/sfn: Lower all GS indirect input loads after lowering IO

- r600/sfn: cleanup GS shader emission

- r600/sfn: When splitting an ALU CF update possible start of next CF

- r600/sfn: Fix AR use tracking off-by-one error

- r600/sfn: remove extra slot of AR use

- r600/sfn: remove early emmission of ALU last op

- r600/sfn: Take allowed dest mask into account in copy-prop

- r600/sfn: Only map ssa index to register index if pinning is not free

- r600/sfn: Fix test when allocating registers more freely

- r600/sfn: Take slot count into account when pinning registers

- r600/sfn: Fix the mods when splitting ALU op

- r600/sfn: replace hard-coded multislot dot handling

- r600/sfn: Handle more ops in desk mask evaluation

- r600/sfn: op1v_flt64_to_flt32 as multi-slot instruction

- r600/sfn: give more liberty to the channel selection in simple two-slot ops

- r600/sfn: Emit thread position as two-slot op

- r600/sfn: pass group into AluInstr::split instead of creating it

- R600/sfn: split one-dest multi-slot ops late when scheduling

- r600/sfn: stop early when looking for ALU vec ready ops

- r600/sfn: remove some useless boolean parameters

- r600/sfn: add an unreachable if the creation of a fp64 group fails

- r600/sfn: rework testing readport config for more than one source

- r600/sfn: factor out common code for readport validation

- r600/sfn: preloading sources for fp64 ops with common code path

- r600/sfn/tests: Update source pinning when loading from string

- r600/sfn: Pin registers to channel only after scheduling

- r600/sfn: try all possible configurations when splitting multi-slot instructions

- r600: remove hack to force a new CF if TEX grad is set

- r600/sfn: Increase limit for lowering local arrays to scratch

- r600/sfn: remove superfluous semicolon

- egl,glx,X11: Handle case when PlatformDisplay is EGL_DEFAULT_DISPLAY

- r600/sfn: make pin_dest_to_chan a virtual function

- r600/sfn: Simplify scheduling

- r600/sfn: preselect fetch by using TC and VC in scheduler

- r600/sfn: Prepare scheduler to handle WaitAck instructions

- r600/sfn: Emit and schedule WaitACK as a separate instruction

- r600/sfn: Add more CF instruction types

- r600/sfn: Add a CF block start member and handle it in the tests

- r600/sfn: chain group barrier and predicate instructions

- r600/sfn: Add method to query whether an ALU group sets the predicate

- r600/sfn: Add method to emit ALU_PUSH_BEFORE in assembler

- r600/sfn: Drop test for address register in assembler IF predicate

- r600/sfn: Add method to query whether ALU block will need ALU_EXTENDED

- r600/sfn: extract handling of ALU_PUSH_BEFORE in assembler code

- r600/sfn: make sure that kill and update pred are not in the same group

- r600/sfn: handle the IF predicate in the scheduler

- r600/sfn: start scheduling memory writes earlier

- r600/sfn: Don’t fall through if a WaitACK was scheduled

- r600/sfn: fix op2_pred_sete_64 opcode

- r600/sfn: Pass chan and dest_clamp to alu op if no dest register is given

- r600/sfn: Add handling of channels for dest-less ALU ops

- r600/sfn: don’t use dummy regs in alu ops when no dest register is needed

- r600/sfn: optimize comparison results

- r600/sfn: emit 64 bit predicates like normal ALU ops

- r600/sfn: relax restrictions when optimizing predicate evaluation with a register

- r600/sfh: Handle 64 bit comparisons in predicate optimization

- r600/sfn: Optimize pred(not X != 0) to pred(X == 0)

- r600/sfn: Filter lowering of b2f32(comp(x,y)) for 64 bit sources

- r600/sfn: Propagate pred and exec update flags when splitting ops

- r600/sfn: Add omod to AluInstr and assembler

- r600/sfn: Wire up some omod optimizations

- nir+r600: add option to avoid contracting fabs into ffma

- r600/sfn: replace hand coded comparison opts with opt_algebraic

- r600/sfn: clear PIPE_MAP_UNSYNCRONIZED for partial DS texture writes

- r600: Fix comparison of strides array when emitting vertex buffers

- r600/sfn: extract function to update group after instr insert

- r600/sfn: move some common code into try_readport

- r600/sfn: Track whether a ALU group has a exec flag update

- r600/sfn: make sure kill and update_exec don’t happen in one group

- r600/sfn: AR loads are not dependend on the future and other code blocks

- r600/sfn: Don’t start a new ALU-CF if LDS pipeline loads are pending

Guilherme Gallo (12):

- ci/bare-metal: Fix exit code variable

- ci/panfrost: Disable DUTs under maintenance

- Revert “ci/panfrost: Disable DUTs under maintenance”

- ci: Fix for GitLab 18.2.2 upgrade

- ci: Disable vmware farm

- ci/radeonsi: Document a new flake

- ci/baremetal: Use find_s3_project_artifact on baremetal_build.sh

- ci/android: Use find_s3_project_artifact in build script

- ci/android: Use curl-with-retry in build scripts

- ci/baremetal: Use curl-with-retry in build scripts

- ci/zink: Document bypassed failures

- ci: Bump image tags to force recreation of s3 artifacts

Gurchetan Singh (13):

- gfxstream: null-check in vulkan-mapper

- gfxstream: vulkan-mapper: special case Nvidia

- gfxstream: correct Android API level check

- mesa: define peripheral support for src/util/rust

- util: rust: make stubs simpler

- gfxstream: ANDROID –> VK_USE_PLATFORM_ANDROID_KHR

- vulkan: #if DETECT_OS_ANDROID –> #if defined(VK_USE_PLATFORM_ANDROID_KHR)

- util: rust: fix some warnings

- mesa3d: util: rust: add proper stubs

- util: rust: spelling and whitespace fixes

- gfxstream: determine page size based on guest properties too

- virtio: virtgpu_kumquat: clippy fixes

- gfxstream: delete magma-over-gfxstream

Hans-Kristian Arntzen (10):

- anti-lag: Only consider timestamps from queues which have presented.

- anti-lag: Submit timestamps early in a frame.

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

- nvk: Return 0 for opaque memory capture replay.

- nvk: Avoid passing garbage data in descriptor buffers for UBOs.

- anti-lag: Fix stype for submit2 semaphores.

- anti-lag: Don’t force enable every supported feature on device creation.

- radv/sqtt: Ensure that present fence gets signalled.

- anti-lag: Do not enable layer by default.

- radv: Actually fail custom border color sampler creation.

Hsieh, Mike (3):

- amd/vpelib: add format, colorspace check function

- amd/vpelib: bug fix: remove unnecessary free

- amd/vpelib: add max/min input output capability

Hyunjun Ko (18):

- vulkan/video: fix to write a h264 slice header for CAVLC mode

- vulkan/video: fix to set ref_pic_list_modification_flag_l1 correctly

- anv/video: Fix to set high profile to PPS if high profile provided

- anv/video: implement GetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR

- vulkan/video: align with spec correctly for h265 slice header.

- anv/video: fix to set some attributes for HCP_PIC_STATE.

- anv/genxml: the type of POC delta changes correctly

- anv/video: set short term ref list1 even if P frames provided

- anv/video: don’t set the MVDL1Zero for encoding

- anv/video: create Motion Vector buffers for encoding too

- anv/video: add VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_KHR for minimum ctb sizes

- vulkan/video: fix h265 decoding with LT enabled.

- vulkan/video: fix h265 encoding with LT enabled.

- vulkan/video: fix misuse of CLAMP in h265 slice parsing.

- anv/video: fix to set slice block size correctly for h265 decoding.

- anv/video: Make the query result for video profiles and formats more precisely.

- anv/video: remove support for VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT

- anv/ci: added video tests failures on tgl/jsl

Iago Toral Quiroga (2):

- nir/serialize: make alu src deserialization consistent for unused swizzles

- panfrost: fix swapped stats for varing and position shaders

Ian Romanick (40):

- brw/reg_allocate: Don’t access out of bounds in non-debug builds

- brw: Split virtual GRFs again at the end of optimizations

- nir/print: Don’t segfault checking has_debug_info

- brw: Add and use brw_reg_is_arf to test for a specific ARF

- brw: Implement Wa_22012725308 for flags via SWSB too

- brw: Allow additional flags registers on Xe2+

- brw: Do cmod prop again after brw_lower_subgroup_ops

- brw: Don’t emit redundant flags initialization for subgroup op lowering

- brw: Strategically place flags initialization to help cmod prop

- brw: Use nir_opt_sink and more nir_opt_move

- elk: Use nir_opt_sink and more nir_opt_move

- iris: Limit max_shader_buffer_size to INT32_MAX

- brw: Increase the size of some structure fields in combine_constants

- elk: Increase the size of some structure fields in combine_constants

- brw/nir: nir_intrinsic_load_reloc_const_intel may not be scalar [v3]

- elk: Set lower_txd_data to devinfo

- nir: Add saturating float to integer conversion opcodes

- brw: Enable saturating float to integer conversion opcodes

- elk: Enable saturating float to integer conversion opcodes

- nir/algebraic: Elide range clamping of f2u sources

- nir/algebraic: Remove useless ftrunc inside f2i/f2u

- nir/algebraic: Don’t introduce undefined behavior in f2u conversion

- nir/algebraic: Optimize f2u of negative value to zero

- nir/algebraic: Prefer bfi over bitfield_select for bitfield_insert

- nir/range_analysis: Handle bfi and bitfield_select in get_alu_uub

- brw/disasm: Fix BFN disassembly of src1 and src2

- brw/disasm: Pretty print the BFN equation as an annotation

- brw: Basic validation for BFN

- brw: BFN does not support source modifiers

- brw: Constant propagation and constant combining support for BFN

- brw/builder: Add BFN

- brw/cmod: Enable limited cmod propagation for BFN

- brw: Use BFN to implement nir_opt_bitfield_select

- nir/algebraic: Optimize bfi with odd-valued mask to bitfield_select

- brw: elk: Fix name of function in comment

- brw: Mark src3 of BFN as is_control_source

- brw: Don’t do non-obvious things with BFN parameter ordering

- brw: Apply Gfx9 vgrf127 workaround in more cases

- elk: Apply vgrf127 workaround in more cases

- brw: Correctly generate conditional modifier for BFN

Icenowy Zheng (4):

- pvr: fix for GCC

- pvr: implement samplerAnisotropy

- gallivm: orcjit: put object cache under the protect of lookup_mutex

- gallivm: orcjit: remember Context in addition to ThreadSafeContext

Igor Naigovzin (1):

- zink: fix clamping gl_Layer output to 0 when framebuffer is not layered

Iliyan Dinev (3):

- pvr: fix pvr_CmdResetQueryPool barriers

- pvr: add support for VK_FORMAT_X8_D24_UNORM_PACK32

- pvr: re-emit ppp state update when ds depth bits are set

Iván Briano (15):

- intel: Re-disable ray tracing on 32 bits

- anv: check for pending_db_mode when dirtying descriptor mode

- anv: dirty descriptor state on CmdSetDescriptorBufferOffets

- anv: fix capture/replay of sparse images with descriptor buffer

- anv, hasvk: allow using a 3D image as a resolve target

- anv: pass only isl_format to helper functions

- anv: drop EXT from host_image_copy stuff

- anv: handle multiple aspects in vkCopyImageToImage

- anv: drop height_pitch parameter from anv_copy_image_memory

- anv: intermediate RGB <-> RGBX copy for HIC

- anv: fix FS output <-> attachment map building

- anv: use the color_map if present for calculating color_mask

- anv: handle compiling of mesh shader separately from task shader

- brw/mesh: drop brw_tue_map::per_task_data_start_dw

- anv: report maint5::earlyFragment*SampleCounting correctly

James Fitzpatrick (2):

- pvr: update WClamp value to 1.0e-13f

- pvr: add support for (EXT|KHR)_line_rasterization

Janne Grunau (1):

- hk: Report the correct plane count in VkDrmFormatModifierProperties2?EXT

Jarred Davies (3):

- pvr: Disable PBE resolve on cores without gs_rta_support

- pvr: Reduce number of stencil dependency barriers needed

- pvr: Mark barrier load subcmd as not empty

Jason Macnak (4):

- gfxstream: Add gfxstream TLS connection manager reset

- gfxstream: add a vkTraceAsyncGOOGLE

- gfxstream: hide vkTraceAsyncGOOGLE behind new capset flag

- gfxstream: Address some Werror errors from ag/35389434

Jeffrey Zhuang (1):

- zink: remove ALWAYS_INLINE from zink_batch_usage_unflushed_wait

Jeongik Cha (1):

- gfxstream: Generate goldfish dispatch code for AHB extension

Jesse Natalie (19):

- gallium/aux: nir_lower_pstipple_fs progress and metadata

- microsoft/compiler: Use NIR_PASS instead of NIR_PASS_V

- microsoft/clc: Use NIR_PASS instead of NIR_PASS_V

- dozen: Use NIR_PASS instead of NIR_PASS_V

- d3d12: Use NIR_PASS instead of NIR_PASS_V

- winsys/d3d12: Use DComp swapchains to support transparency

- nir: Add missing #include for c99_alloca.h

- util: Disable inline asm for arm64 for MSVC

- d3d12: Stop using util_framebuffer_init

- d3d12: Support more logic op formats

- d3d12: Move logicop emulation resource from surface to resource

- d3d12: Move logicop descriptor initialization to after all blits

- d3d12: Flush command queue when destroying or resizing

- wgl: Always revalidate framebuffer when front is requested

- d3d12: Only use DComp swapchains when alpha is present in the framebuffer

- wgl: Fix zink depth buffers

- dlist: Flush the context during EndList if it’s part of a share group and uploaded during recording

- microsoft/compiler: Use lower_mem_access_bit_sizes for scratch/shared

- microsoft/compiler: Respect write masks when lowering unaligned loads and stores

Jianxun Zhang (7):

- anv: No compression on host memory allocation (xe2)

- anv: Fix PAT entry in importing (xe2)

- iris: Disable compression on sharing without modifier

- iris: Ensure type of bo’s heap is consistent with modifier

- iris: Assert no disabling aux in first query (xe2)

- isl: Reuse Xe2 modifers on newer platforms

- iris: Enable Xe2 modifiers on all newer platforms

Job Noorman (75):

- ir3/cp: disable cat3 hw bug workaround on a6xx+

- freedreno: remove ir3_cmdline

- ir3/legalize: add asserts to prevent OOB array access

- ir3/postsched/legalize: ignore prefetch sam dummy src

- ir3: use dummy dst for descriptor prefetches

- ir3/shared_ra: don’t reuse src of different halfness

- tu: add constlen shader stat

- ir3/a750: don’t allocate const space for primitive_param/map

- ir3: treat consts_ubo as normal UBO

- tu: remove consts_ubo upload code

- freedreno/a7xx: disable consts_ubo upload

- tu: disable VK_EXT_post_depth_coverage

- tu: enable fragmentShadingRateWithShaderSampleMask

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

- ir3/ra: fix file start wraparound

- ir3: add pointer from ir3_shader_variant to ir3_shader

- ir3: add shader bisect debug tool

- v3d/drm-shim: add support for multisync

- nir/opt_uniform_subgroup: use ballot_bit_count

- ir3: allow 2 const srcs in scalar cat2

- ir3: align alias sequences to work around hardware bug

- ir3: don’t add array stores to block keeps

- ir3: allow shared srcs for ldc

- ir3: use isam for txf with LOD 0

- ir3/array_to_ssa: fix updating/removing phis

- ir3/array_to_ssa: remove trivial all-undef phis

- ir3: allow shared srcs for ldc.k

- ir3: use ir3_get_predicate for demote/kill

- ir3: use shared srcs for demote/kill condition

- ir3/legalize: don’t special-case early-preamble a1 reads

- ir3: make backend aware of scalar predicates

- ir3/isa: add encoding for scalar predicates

- ir3/opt_predicates: move some helpers up

- ir3: enable scalar predicates

- tu: pass SSBO/UBO min alignment to SPIR-V frontend

- nir: add nir_src_is_deref helper

- nir: add offset_shift intrinsic index

- nir: add some helpers for dealing with offset_shift

- nir,ir3: add offset_shift index to SSBO access intrinsics

- nir/lower_atomics: add support for offset_shift

- nir/lower_io_to_scalar: add support for offset_shift

- nir/lower_wrmasks: don’t adjust BASE

- nir/lower_wrmasks: add support for offset_shift

- nir/opt_shrink_vectors: add support for offset_shift

- nir/lower_mem_access_bit_sizes: add partial support for offset_shift

- nir/opt_load_store_vectorize: allow per-instruction offset scaling

- nir/opt_load_store_vectorize: add support for offset_shift

- nir/opt_load_store_vectorize: fix wrap check for scaled offsets

- nir/lower_explicit_io: make offset calculation reusable

- nir/lower_explicit_io: add helper to build address

- nir/lower_explicit_io: use nir_io_offset to pass around addresses

- nir/lower_explicit_io: add alignment parameters to address builder

- nir/lower_explicit_io: add support for offset_shift

- ir3: use offset_shift for SSBO intrinsics

- ir3: don’t vectorize nir_op_sdot_4x8_iadd[_sat]

- ir3: emit descriptor prefetch in block dominated by its sources

- freedreno/drm-shim: disable VM_BIND

- ir3: use shared masks for cov when scalar ALU is supported

- freedreno/computerator: fix cs builder conversion errors

- nir/opt_offsets: rename max_offset_data to cb_data

- nir/opt_offsets: add callback to set need_nuw per intrinsic

- ir3/cf: don’t swap signedness of (sat) instructions

- ir3: use nir_lower_bit_size for 8-bit bit_count

- bin/rb: update Alyssa’s email address in test case

- ir3/spill: initialize base reg as late as possible

- ir3/ra: make main shader reg select independent of preamble

- ir3: don’t create merge sets for subreg moves

- ir3/parser: don’t use instr as ralloc context

- freedreno/computerator: disable disk cache

- nir: add nir_shr builder

- nir/lower_alu: use Knuth’s Algorithm M for [iu]mul_high

- nir,ir3: rename umul_low to umul_16x16

- nir: mark fneg distribution through fadd/ffma as nsz

- ir3/ra: fix assert during file start reset

- spirv: don’t set in_bounds for structs

John Anthony (4):

- nir,agx: unvendor core_id_agx

- nir,spirv: Add support for SPV_ARM_core_builtins

- pan/va: Add support for SPV_ARM_core_builtins

- panvk: Enable VK_ARM_shader_core_builtins

Jonathan Marek (1):

- wsi/display: use atomic mode setting

Jordan Justen (6):

- 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

- intel/dev: Add BMG 0xe209 PCI ID

- anv: Use image view base-layer in can_fast_clear_color_att()

Jose Maria Casanova Crespo (13):

- v3dv: Move V3D_TFU_READAHEAD_SIZE to src/broadcom/common

- v3d: Add V3D_TFU_READAHEAD padding for allocated resources

- v3dv: limit V3D_TFU_READAHEAD to buffers/images with USAGE_TRANSFER_SRC flag

- v3d: glMemoryBarriers only flush jobs with tmu_dirty_rcl

- v3d: Mark DIRTY_ZSA if disable_ez is changed from FS.

- v3d: Reduce CLE submission of CLIP_WINDOW packets

- v3d: Add V3D_TFU_READAHEAD padding for renderonly resources

- vc4/simulator: pass and return sim_file on vc4_simulator init/destroy

- vc4/simulator: avoid free simulator memory on destroy

- v3dv: Fix stencil clear values for only stencil clears

- v3d: Don’t enable Early-z with discards when stencil updates are enabled

- v3d: use helpers util_writes_depth/stencil

- v3d: mark FRAG_RESULT_COLOR as output_written on SAND blits FS

Josh Simmons (2):

- util: Fix `BITSET_EXTRACT` out-of-bounds read

- radv: Fix crash in sqtt due to uninitalized value

Joshua Ashton (5):

- wsi/common: Track VkColorSpaceKHR with wsi swapchain

- wsi/display: Implement VK_EXT_hdr_metadata on KHR_display swapchain

- wsi/display: Clean up DRM hdr/color state on swapchain destruction

- build: Add dependency on libdisplay-info

- wsi/display: Expose HDR10 colorspace based on EDID

Joshua Simmons (1):

- vtn: Fix OpCopyLogical destination type

José Roberto de Souza (23):

- intel/brw: Nuke unused brw_message_desc_header_present()

- intel/brw: Add comment to reg_unit()

- intel/brw: Remove duplicated implementation of brw_imm_uq/brw_imm_u64()

- gallium/llvmpipe/test: Rename rsqrtf() to _rsqrtf()

- intel/decode: Add support to new version of Xe KMD devcoredump with canonical addresses

- intel/brw: Use ASR over SHR for SHADER_OPCODE_ISUB_SAT

- intel/brw: Move brw_s0() to brw_reg.h

- anv/allocator: Move definition of ANV_FREE_LIST_EMPTY to anv_allocator

- anv/allocator: Drop uncessary function

- anv/allocator: Change some parameters and variables from 32bit to 64bits

- anv/allocator: Don’t call anv_block_pool_map() with an offset that includes start_offset

- anv/allocator: Subtract start_offset in chunk_offset

- anv: Add comment to anv_state->offset

- anv: Define bt_block only in the block that uses it in anv_cmd_buffer_alloc_binding_table()

- anv: Replace duplicated code set shader relocs by a function

- anv: Drop shader relocs from anv_shader_bin_create()

- anv: Simply anv_shader_set_relocs() parameters

- anv: Rename anv_shader_bin to anv_shader_internal

- intel/brw: Share mode code in lower_lsc_varying_pull_constant_logical_send()

- intel/brw: Add comment to first_non_payload_grf

- intel/brw: Fix LSC fence scope and flush type

- intel/brw: Call lower_hdc_memory_fence_and_interlock() with brw_send_inst

- intel/brw: Store and set sfid in memory fences

Juan A. Suarez Romero (20):

- broadcom/ci: disable baremetal jobs for ci-tron

- v3d/ci: unlock rusticl citron jobs

- broadcom: remove obvious comment

- drm-uapi: update v3d_drm.h for reset counters

- broadcom: check for GPU reset counters support

- broadcom/simulator: add support for GPU reset counters

- v3d: implement get device reset status

- v3d: handle QUNIFORM_GET_UBO_SIZE

- v3d: implement robust buffer access

- broadcom/ci: disable baremetal rusticl jobs for ci-tron

- meson: check for no_sanitize function attributes

- util: add DECLARE_LINEAR_ZALLOC with no sanitize

- glsl: disable UBSan vptr check for ir_instruction

- broadcom/ci: comment some of the failures

- broadcom/ci: unlock CI-Tron jobs for arm32

- v3d/ci: update expected results

- ci: uprev VKCTS to 1.4.3.3

- glsl: use array element type to validate assignment

- vc4/ci: disable asan job

- v3d/v3dv/ci: switch to asan rpi5

Julia Zhang (2):

- virgl: Small fix of converting format

- pps: init driver in OnSetup

Julian Orth (2):

- ci: build and install native libwayland

- kms-swrast: export dmabufs with DRM_RDWR

Juston Li (3):

- anv/android: refactor anb resolve to fix align assertion

- anv: fix uninitialized mutex lock in anv_slab_bo_deinit()

- android/gralloc0: add CROS_GRALLOC_DRM_GET_BUFFER_COLOR_INFO

K900 (1):

- gfxstream: fix build on 32-bit

Karmjit Mahil (10):

- freedreno/registers: Fix SP_READ_SEL_LOCATION

- pvr: fix spm-related renderpass hwr

- pvr: Remove shareds_dest_offset from load_op

- pvr: Move renderpass load op setup into a separate function

- nir: Add more matches for `fmulz`

- nir, ir3: Add `lower_fmulz_with_abs_min` backend option

- freedreno/registers: Fix typo

- tu: Add VK_EXT_zero_initialize_device_memory

- ci,crnm: Fix f-string print error

- freedreno/decode: Add 2d_to_json lua script

Karol Herbst (125):

- vtn/opencl: set exact on all ffmas and mads

- zink: disallow intensity buffer images

- zink: disable shader images for intensity formats

- rusticl/mem: set swizzle for intensity images

- rusticl/mesa: add return status to PipeFence::wait

- rusticl/queue: offload waiting on fences to another thread

- rusticl/mem: relax flags validation for clGetSupportedImageFormats

- rusticl/queue: do not return event status errors on flush/finish

- rusticl/kernel: fix clippy lint needless-question-mark

- zink: properly unbind sampler views with imported 2D resource

- rusticl/mesa: use pipe_sampler_view_reference

- rusticl/queue: clear shader images when destroying queues

- rusticl/queue: pass a mut reference to QueueContext around

- rusticl/queue: commit lifetime crimes

- rusticl/queue: remove RefCell<QueueKernelState>

- rusticl/kernel: stop clearing sampler views on kernel launches

- rusticl/queue: cache samplers

- rusticl/kernel: unbind trailing shader images

- nak: fix wrong argument order in calls to build_txq_size

- nak: optimize load_subgroup_id

- nv50: fully migrate away from util_framebuffer_init

- nak: use MemScope::CTA for shared memory scoped SCOPE_WORKGROUP barriers

- nak: copy late_algebraic iadd3 rules without the constant restriction

- rusticl: fix impl_trait_overcaptures lint errors

- rusticl: fix unsafe_attr_outside_unsafe lint errors

- rusticl: add lints relevant for edition 2024 migration

- rusticl: use pipe_sampler_view_release

- rusticl/mesa: wire up fence_server

- rusticl/gl: store the mesa_glinterop_export_in

- st/interup: flushing objects is a no-op when no context is bound

- rusticl/gl: only flush objects on import if we get a valid fd

- rusticl/gl: flush and wait on gl objects inside clEnqueueAcquireGLObjects

- vulkan: use p_atomic_read on vk_descriptor_set_layout::ref_cnt

- zink: fix data race in descriptor_util_pool_key_get

- rusticl: silence warnings in generated sources

- rusticl: silence new warnings from rustc versions above our rustc target

- anv: do not map from_host_ptr bos in image_bind_address

- zink: set zink_bo is_user_ptr on creation

- anv/i915: print bo->map when dumping exec buffers bos

- nak: set max_gpr to multiple of 8s

- nak: add more helpers for predicates

- nak: relayout opt_uniform_instrs

- nak: support bra.u with a upred source on Ampere and newer

- rusticl/mesa: add ResourceType::Immutable

- rusticl/kernel: create shader constants as immutable

- rusticl/mem: split out mem_flags validation for creation operations

- rusticl/mem: turn bool argument into enum in validate_mem_flags

- rusticl: implement cl_ext_immutable_memory_objects

- rusticl: fix a bunch of warnings

- rusticl/util: add read_and_advance methods for pointers

- rusticl/util: use read_and_advance in Properties

- rusticl/util: drop uneccesary Arc in event_list_from_cl

- rusticl/icd: qualify CLResult inside impl_cl_type_trait_base macro

- rusticl/icd: sort extension functions by extension name

- rusticl: handle failures when importing fences

- rusticl/mesa: port PipeFence to use ThreadSafeCPtr

- rusticl: specify FD type when importing fences

- nak: run nir_opt_move nir_move_load_ubo

- nak: run nir_opt_move nir_move_comparisons

- rusticl: add SPDX tags

- aux/trace: move fence_server calls outside the locked area

- nak: rework scale argument of compute_mat and rename it

- nak: protect static cycle counting against overflows

- nak: use logarithmic scaling in estimate_block_weight

- nak: extract nir_intrinsic_cmat_load lowering into a function

- nak/hw_runner: support shared memory

- nak/hw_runner: add ldsm tests

- nak: use ldsm

- rusticl/mesa: rename PipeResource to PipeResourceOwned

- rusticl/mesa: add borrow/to_owned semantics to our pipe_resource wrapper

- rusticl/kernel: reduce CPU overhead of set_global_binding

- rusticl/kernel: move add_pointer into KernelExecBuilder

- rusticl/kernel: move add_global into KernelExecBuilder

- rusticl/kernel: move add_sysval into KernelExecBuilder

- rusticl/kernel: add KernelExecBuilder::add_values

- rusticl/kernel: add KernelExecBuilder::add_zero_padding

- rusticl/kernel: add KernelExecBuilder::get_resources_and_globals

- rusticl/kernel: move workgroup id offset handling into KernelExecBuilder

- rusticl/kernel: add KernelExecBuilder::input

- rusticl/kernel: allocate the full input buffer at creation time

- rusticl/kernel: rework KernelExecBuilder::get_resources_and_globals to reduce allocations

- rusticl/device: add DeviceCaps::has_create_fence_fd and use it

- docs/gallium: Clarify ordering requiremenets on fence_server_signal and fence_server_sync

- rusticl/event: fix create_and_queue for deps in error states

- rusticl/util: add MultiValProperties

- gallium/noop: add fence_server_signal

- gallium: add pipe_screen::semaphore_create

- rusticl/mesa: wire up semaphores

- zink: factor out fence creation function

- zink: implement pipe_screen::semaphore_create

- radeonsi: implement pipe_screen::semaphore_create

- rusticl: add stubs for semaphores and external_memory

- rusticl: implement cl_khr_semaphore

- rusticl: implement cl_khr_external_semaphore

- util: move typed_memcpy into macros.h

- nvk: prepare for higher shared memory sizes

- nouveau/winsys: add shared memory size tables

- nak/qmd: base shared mem size allocation on hardware limits

- nvk: use hardware limits for maxComputeSharedMemorySize

- nak/qmd: properly set target shared mem size

- rusticl: drop unneeded dependency to generated sources

- rusticl: drop global allow statements

- rusticl: specify allowed lints for tests in lib.rs

- rusticl: add a bunch of trivial tests

- rusticl/mem: fix Image::read for 1Darray images

- rusticl/mesa: fix NULL pointer access in set_constant_buffer_stream

- ac/llvm: fix get_global_address for global atomics

- rusticl: reference resource in sampler and image view wrappers

- ci: document what version to specify in RUST_VERSION

- rusticl/util: make ThreadSafeCPtr Copy, Clone and transparent

- rusticl/mesa: add PipeScreen::pipe

- rusticl/mesa: rework Context creation

- rusticl/mesa: make PipeScreen transparent

- rusticl/mesa: make PipeScreen refcounted

- libagx: fix heap argument type in libagx_draw_robust_index

- clc: Fix createDiagnostics for LLVM-22

- nak: extract cmat load/store element offset calculation

- nak: ensure deref has a ptr_stride in cmat load/store lowering

- nak: fix MMA latencies on Ampere

- st/interop: fix fence leak

- rusticl/queue: fix error code for invalid queue properties part 1

- rusticl/queue: fix error code for invalid queue properties part 2

- rusticl/queue: fix error code for invalid sampler kernel arg

- rusticl/kernel: take no kernel_info reference inside the launch closure

- rusticl/spirv: preserve signed zeroes by default

Kenneth Graunke (45):

- 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

- crocus: Drop 16X MSAA code remnants

- crocus: Fix a comment about supporting 16x MSAA

- intel: Disable 16x MSAA support on Xe3

- brw: Use BAD_FILE instead of ARF null for second send payload

- brw: Assert that EOT is always SHADER_OPCODE_SEND on pre-Xe3

- brw: Stop checking inst->is_send_from_grf() for g127 register hack

- brw: Stop using is_send_from_grf() in CSE pass

- brw: Drop inst->mlen check from is_send()

- brw: Rename is_send_from_grf to is_send, replace other is_send() helper

- brw: Properly resolve non-sendable sources in a few logical opcodes

- brw: Enumerate SHADER_OPCODE_SEND sources and standardize how many

- brw: Drop INTERPOLATE_AT_* opcodes from is_send()

- brw: Drop interlock and memory fence logical opcodes from is_send()

- brw: Drop uniform pull constant load virtual opcode from is_send()

- brw: Drop INTERPOLATE_AT_* opcodes from is_payload()

- brw: Drop interlock and memory fence logical opcodes from is_payload()

- brw: Validate that send payloads can’t be imms or have source mods

- brw: Remove brw_inst::no_dd_check/no_dd_clear

- nir: Add load_simd_width_intel to divergence analysis

- intel/nir: Make ffma peephole optimization preserve fp_fast_math flags

- brw: Move “SSA form” printing to after divergence analysis is run

- brw: Lower certain subgroup size modes in brw_preprocess_nir

- brw: Split brw_postprocess_nir() into two pieces

- brw: Do most of NIR postprocessing before cloning for SIMD variants

- brw: Add a quick NIR-based register pressure estimate pass

- brw: Skip compilation of larger SIMDs when pressure is too high

- iris/ci: Update trace checksums

- brw: Only skip SIMD widths based on pressure if an smaller one compiled

- elk: Delete ELK_SHADER_RELOC_DESCRIPTORS_ADDR_HIGH

- brw: Rename brw_shader_reloc to intel_shader_reloc

- intel: Move intel_shader_reloc to common code and drop elk_shader_reloc

- brw: Drop ir_expression_operation_h from build system

- brw: Rename brw_nir_trig build target to brw_nir_workarounds

- intel: Make a libintel_compiler_nir internal static library

- intel: Re-unify brw_prim.h and elk_prim.h

- brw: Drop compiler/ from brw includes

- brw: Move into a new src/intel/compiler/brw subdirectory

- brw: Stop using type_size_dvec4 for fragment shader outputs

- brw: Replace type_size_xvec4 with glsl_count_attribute_slots

- brw: Refactor clip/cull distance mask setting into a helper

- brw: Use BITFIELD_{MASK,RANGE} in clip/cull distance mask handling code

- brw: Fix mesh shader asserts in clip/cull distance setting

Konstantin Seurer (63):

- radv: Optimize ray tracing position fetch

- radv: Disable pointer flags and the GFX12 WA for emulated RT

- radv: Implement watertightness for emulated RT

- radv/rt: Optimize emulated ray-triangle tests

- radv/rt: Use inv_dir for software ray-triangle tests

- radv/rt: Implement null acceleration structure in shader code

- radv/rra: Only write used BLAS

- radv/rra: Increase rra_validation_context::location

- radv/rra/gfx12: Handle box nodes without children

- radv/rra/gfx12: Add validation

- gallivm: Silence a warning

- gallium/util: Fix an assert in util_resource_copy_region

- lavapipe: Adjust imageGranularity for block formats

- lavapipe/ci: Add context to some vkd3d-proton test fails

- lavapipe: Set image_array for input attachment loads

- gallivm: Implement txs with divergent explicit lod

- gallivm: Implement arrayed non-arrayed descriptor compatibility

- util: Fix sparse tile size when dimensions=1

- lavapipe/rt: Fix watertightness for real this time

- lavapipe/rt: Set push_constant_size

- lavapipe/rt: Do not use vk_acceleration_structure::size

- radv: Add and use RADV_OFFSET_UNUSED

- radv: Only write leaf node offsets when required

- radv/bvh: Fix flush in bit_writer_skip_to

- radv/bvh: Use a fixed indices midpoint on GFX12

- radv: Initialize base IDs when doing a BVH update with src!=dst

- radv/bvh: Update leaf nodes before refitting

- radv/bvh: Specialize the update shader for geometryCount==1

- vulkan/cmd_queue: Do not free if driver_free_cb is provided

- vulkan/cmd_queue: Improve struct free code indentation

- vulkan/cmd_queue: Recursively free struct members

- vulkan/cmd_queue: Clean up generating copies

- vulkan/cmd_queue: Reorder memcpy in get_struct_copy

- radv: Use vk_acceleration_struct_vtx_format_supported

- lavapipe: Use vk_acceleration_struct_vtx_format_supported

- radv/rra/gfx12: Handle compressed primitive nodes

- radv: Emit compressed primitive nodes on GFX12

- vulkan: Add MESA_VK_SHADER_STAGE_ALL

- lavapipe: Mask invalid shader stage flags

- radv: Rename radv_printf files to radv_debug_nir

- radv: Add RADV_DEBUG=validatevas for address validation in nir

- radv: Store parent node IDs inside nodes on GFX12

- radv/bvh: Copy parent_id during updates on GFX12

- nir: Use nir_def_as_* in more places

- nir: Use nir_def_block in more places

- radv/bvh: Do not write pointer flag related data on GFX103

- vulkan: Use a struct for debug markers

- vulkan: Add more detail to encode debug markers

- radv: Use vk_barrier_compute_w_to_compute_r more

- radv,vulkan: Avoid a useless barrier in radv_update_bind_pipeline

- nir/opt_ray_queries: Cleanup and return if functions is not singular

- vulkan/bvh: Enable glsl extensions in meson

- vulkan/cmd_queue: Remove unused variable

- vulkan/cmd_queue: Handle internal structs

- vulkan/cmd_queue: Handle struct arrays with pNext

- Revert “lavapipe/ci: Disable stack-use-after-return detection for ASan”

- vulkan/vk_cmd_queue: Clone VkSampleLocationsInfoEXT extending VkRenderingInfo

- aco: Fixup out_launch_size_y in the RT prolog for 1D dispatch

- lavapipe: Bump maxPrimitiveCount

- lavapipe: Zero image null descriptors

- lavapipe: Bump MAX_DESCRIPTOR_UNIFORM_BLOCK_SIZE

- gallivm/nir/soa: Use the sign of src1 for imod

- llvmpipe: Always recompute 1/w

Kovac, Krunoslav (2):

- amd/vpelib: Fix Possible dereferencing null

- amd/vpelib: Minor Refactor

Lars-Ivar Hesselberg Simonsen (20):

- u_trace: Indirect capture fixes

- panvk: Fix instrumentation on v12+

- panvk: Fix IUB decode

- panvk/utrace: Pass async_op instead of mask

- panvk/utrace: Make indirect capture wait optional

- panvk/utrace: Add support for storing registers

- panvk/utrace: Add sync32/64_wait support

- panvk/utrace: Add sync32/64_add support

- panvk/utrace: Add flush_cache support

- panvk: Add utrace tracepoints in queue_submit

- vulkan: Stop combining subpass dependencies

- vulkan: Find first_subpass when creating renderpass

- vulkan: Add transition_view_mask calculation

- vulkan: Optimize implicit begin_subpass barrier

- vulkan: Optimize implicit end_subpass barrier

- panvk/ci: Add uncovered CTS issue to flakes

- radv/ci: Add uncovered CTS issue to gfx1201 fails

- panvk: Fix IUB decode

- pan/format: Fix mapping for I16F

- pan/format: Disable PAN_BIND_STORAGE_IMAGE for RGBA4/BGRA4

Leder, Brendan Steve (Brendan) (1):

- amd/vpelib: General cleanup / optimization tasks

Lewis Cooper (2):

- pvr: Implement VK_KHR_maintenance3

- pvr: Implement VK_KHR_dedicated_allocation

LingMan (7):

- ci/rust: Drop date from Rust release channel selection

- docs/rusticl: Update documented version requirements for meson and bindgen

- mesa: Bump required Rust version to 1.82

- rusticl: Use `is_aligned` from std

- rusticl: Drop include paths for `size_of`, `size_of_val`, and `align_of`

- rusticl: Use std::mem::offset_of!()

- nak: Drop include paths for `size_of` and `size_of_val`

Lionel Landwerlin (148):

- anv: reuse runtime descriptor set layout base object

- anv: remove unused helper arguments

- brw: fix NIR metadata invalidation with closest-hit shaders

- brw: fixup source depth enabling with coarse pixel shading

- brw: fixup coarse_z computation

- brw: consider LOAD_PAYLOAD fully defined

- brw: always ensure coarse pixel is disabled on Gfx9

- anv: fix wsi image aliasing

- compiler: add gl_shader_stage_is_graphics

- brw: make more passes printable through NIR_DEBUG

- anv: move over to common descriptor set & pipeline layouts

- anv: expose helper function outside of anv_pipeline.c

- anv: rename vertex input emission helper

- anv: reuse runtime flags field for descriptor set layout

- anv: make anv_pipeline_sets_layout looks more like vk_pipeline_layout

- anv: stop using anv_pipeline_sets_layout

- anv: extract embedded samplers from pipeline_cache

- anv: break ANV_CMD_DIRTY_PIPELINE into each stage

- anv: avoid storing L3 config on the pipeline

- intel: move deref_block_size to intel_urb_config

- intel: reuse intel_urb_config for mesh

- anv: store layout_type on the bind_map for convenience

- anv: move URB programming to dynamic emission path

- anv: avoid looking at the pipeline to flush push descriptors

- anv: constify some helpers

- anv: store gfx/compute bound shaders on command buffer state

- meson: remove intel-clc options

- brw: implement ACCESS_COHERENT on Gfx12.5+

- anv: fix source hash utrace prints

- anv/brw: store min_sample_shading on wm_prog_data

- anv/brw: move sample_shading_enable to wm_prog_data

- anv: move primitive_replication emission to dynamic path

- anv: move 3DSTATE_SF dynamic emission path

- anv: simplify SBE emission

- anv: move SBE emission to dynamic path

- anv: move 3DSTATE_CLIP emission to dynamic path

- anv: move 3DSTATE_VFG emission to dynamic path

- anv: move 3DSTATE_TE::TessellationDistributionMode to dynamic path

- anv: pass active stages to push descriptor flushing

- anv: remove pipeline_stage unused field

- anv: use a local variable for batch

- anv: actually use the COMPUTE_WALKER_BODY prepacked field

- anv: rework gfx state emission (again)

- anv: subclass vk_pipeline

- brw: compute consistent clip/cull distance masks with VUE

- anv: Do not consider task as prerasterization

- anv: fix missing meson dep

- vulkan/runtime: add a few more shader properties

- vulkan/runtime: add ray tracing pipeline support

- brw: reorder reloc enums to leave embedded samplers at the end

- anv: stop using descriptor layouts for descriptor buffers push sizes

- brw: move URB channel mask shifting to the lowering pass

- anv: fix R64* vertex buffer format support

- vulkan/runtime: use a pipeline flag for unaligned dispatches

- brw: enable register allocation to deal with multiple EOTs

- brw: enable opt_register_coalesce to work with multiple EOT blocks

- brw: workaround broken indirect RT messages on Gfx11

- brw: fix analysis dirtying with pulled constants

- brw: make assign_curb_setup visible in optimizer debug

- anv: fix uninitialized return value

- brw: remove uniform from opt_offsets

- brw: use a scalar builder for the load_payload on transpose loads

- brw: fix INTEL_DEBUG=spill_fs

- brw: fix broadcast opcode

- anv: move input coverage mask setup to runtime flush

- anv: temporary disable KHR_maintenance8

- Revert “anv: enable non uniform texture offset lowering”

- Revert “brw: move texture offset packing to NIR”

- intel: update code owners

- anv: fix pipeline barriers with pre-rasterization stages

- anv/utrace: avoid memseting timestamp buffers by using tracepoint flags

- anv: fix partial queries

- nir: add a new intrinsic for load dynamic tessellation config

- brw: add ability to compute VUE map for separate tcs/tes

- anv/brw/iris: move VS VUE computation to backend

- brw: add support for separate tessellation shader compilation

- anv: prep work for separate tessellation shaders

- compiler: add stage_is_graphics() helper

- anv: add infrastructure for common vk_pipeline

- anv: move internal RT shaders around

- anv: add runtime shader statistic support

- anv: add shader instruction emission

- anv: store a few default instructions

- anv: switch over to runtime pipelines

- anv: remove unused gfx/compute pipeline code

- anv: expose VK_EXT_shader_object

- anv: add an undocumented HW workaround for Gfx12.5

- anv: fixup robust_ubo_range mask

- vulkan: remove incorrect assert

- anv: remove divergence requirement

- brw: don’t use brw_null_reg() for unused SEND sources

- anv: run nir_opt_acquire_release_barriers

- brw: remove unused RT write code

- brw: improve eot_reg computation in register allocate

- anv: fixup 3DSTATE_COARSE_PIXEL emission

- anv: avoid unnecessary 3DSTATE_PS_EXTRA emissions

- brw: lower non coherent FS load_output in NIR

- brw/blorp: lower MCS fetching in NIR

- brw: lower shader opcode into tex_instr

- brw: simplify texture surface/sampler handle sources

- brw: fix split_sends with txf combining

- brw: layout patch in VUE in position independent way

- anv: fix streamout config comparison

- anv: fix crash in ESO tests

- brw: fix type conversion in tex operation params

- nir/lower_tex: add an callback to lower txd ops

- brw: use the new lower_txd_cb

- elk: remove txd bindless sampler lowering

- elk: use the new lower_txd_cb

- nir/lower_tex: remove unused options

- brw: fix render target indexing in FS output reads

- vulkan/render_pass: fixup renderpasses barriers for 2D views of 3D images

- nir: add pass to propagate image format to intrinsics

- anv: run image/intrinsic update pass

- iris: run image/intrinsic update pass

- brw: avoid looking at variables to get image formats

- u_trace: use os_get_option instead of getenv

- intel/ds: lump all the draw under the same toggle

- intel/ds: disable draw/blorp tracepoints by default on android

- brw: prevent LOAD_REG modifications on MOV_INDIRECT/BROADCAST

- anv: fix companion usage for emulated image

- nir/divergence: add a new mode to cover fused threads on Intel HW

- nir/lower_io: add get_io_index_src_number support for image intrinsics

- compiler: add an access flag for intel EU fusion

- brw: serialize messages on Gfx12.x if required

- brw: add serialize send stats

- anv: fix query copy with shaders

- intel/ci: remove old comments

- brw: fix invalid sparse bitfield offset computation

- Revert “wsi: Implements scaling controls for DRI3 presentation.”

- anv: fix image-to-image copies of TileW images

- brw: constant fold u2u16 conversion on MCS messages

- brw: only consider cross lane access on non scalar VGRFs

- brw: fix ballot() type operations in shaders with HALT instructions

- nir/divergence: fix handling of intel uniform block load

- anv: rename structure holding 3DSTATE_WM_DEPTH_STENCIL state

- brw: handle GLSL/GLSL tessellation parameters

- nir/lower_io: add missing levels intrinsics to get_io_index_src_number

- anv/brw: fix output tcs vertices

- anv: destroy sets when destroying pool

- vulkan/render_pass: Add a missing sType

- u_trace: reserve chunk space before emitting copies

- anv: avoid null pointer access in utrace copies on CCS

- brw: avoid invalid URB messages

- anv: avoid invalid timestamp generation due to skipped commands

- vulkan/runtime: simplify robustness state hashing

- anv/blorp/iris: rework Wa_14025112257

- anv: disable software detiling on Xe2+ for image atomics 64bits

Lorenzo Rossi (3):

- nak: Fix pre-volta iadd3 panic during compilation

- nak/kepler: Refine instruction scheduling

- nvk: Fix QMD buffer length on upload

Luc Ma (1):

- dri: use XCB_PRESENT_EVENT_* enum instead of macros for consistency

Lucas Fryzek (14):

- lp: Don’t allocate sampler functions if count is 0

- anv: Enable compression on astc emulation plane

- vulkan/util: update pd feature codegen to use platform guards

- anv: Remove special CROS_GRALLOC path from format logic

- hasvk: Remove special CROS_GRALLOC path from format logic

- anv: Update viewport/scissor state when count changes

- vulkan/runtime: Error if ahb has more than one layer

- anv: Assert that we only import ahb image with one layer

- anv: Enable R10X6 & R10X6G10X6 unorm formats

- anv: Modify anv feature (dis)enable code to match other drivers

- vulkan/android: Add rp_attachment_has_external_format helper

- vulkan/runtime: Add logic to set external format resolve mode

- anv: Add external format resolve operation using blorp

- anv: Enable VK_ANDROID_external_format_resolve

Lucas Stach (6):

- etnaviv: Update headers from rnndb

- etnaviv: stop touching code steering bits while updating uniforms

- etnaviv: update code steering bit when writing shader instructions

- etnaviv: don’t emit start/end PC states when unified instmem is present

- etnaviv: use new shader range registers when icache is present

- etnaviv: fix YUV tiler blits

Ludvig Lindau (1):

- panfrost: Make instrs_equal check res table/index

Luigi Santivetti (22):

- pvr: rename pvr tex format description variables for clarity

- pvr: rename pvr_{create,generate} to appear at the end

- pvr: split out missing output register write handling into separate function

- pvr: determine rt layers based on rta support

- pvr: fix logic for setting vdm instance count present

- pvr: don’t csb emit multi-layer clear attachments without rta support

- pvr: reset the pds info map entries pointer to avoid double free

- pvr: align texture stride for spm as the PBE requires

- pvr: take zonlyrender into account when setting up ZLS control

- pvr: add support for VK_KHR_maintenance1

- pvr: add support for VK_KHR_maintenance2

- pvr: unify the creation of load_op objects and shaders

- pvr: rename job field holding pds PR background objects

- pvr: rename {init,setup} command buffer helpers

- pvr: drop unused argument from pvr_load_op_shader_generate()

- pvr: add support for U16U16U16 texture state format

- pvr: restrict signed A2-10 bits per component formats to vertex only

- Revert “pvr: treat VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT as not supported”

- pvr: add initial driver support for VK_KHR_multiview

- pvr: improve unemitted resolve attachments readability

- pvr: restrict the scope of copy_{buffer,image}_to_{image,buffer}

- pvr: propagate image samples when doing a blit from DS surface

Marek Olšák (168):

- gallium: make pipe_screen::finalize_nir return void

- gallium: replace get_compiler_options with pipe_screen::nir_options

- st/mesa: don’t expect pipe_screen::nir_options to be NULL for supported shaders

- mesa: use pipe_screen::nir_options instead of NirOptions

- glsl: use pipe_screen::nir_options instead of NirOptions

- ac/surface/gfx12: add addr_from_coord for sparse MSAA textures

- ac/surface/gfx12: select 64K tiling for sparse MSAA textures

- radeonsi/gfx12: enable sparse textures

- ac/nir: don’t vectorize to 96-bit and 128-bit LDS loads (it’s slower)

- ac/nir: mark all input loads as reorderable and speculatable (for LICM)

- ac/llvm: rewrite global & shared stores to share code

- ac/llvm: rewrite global & shared loads to share code

- ac/llvm: always use opaque pointers

- ac/llvm: fix readlane with vectors

- radeonsi: disallow the compute copy for Z/S

- radeonsi: add a workaround for gfx10.3-11 corruption with R9G9B9E5_FLOAT

- radeonsi: recompute FS output IO bases to prevent an LLVM crash

- radeonsi: get si_shader_info::input::usage_mask from NIR

- radeonsi: flatten struct si_vs_tcs_input_info

- radv,radeonsi: mark VS input loads and poly stipple load speculatable

- radv: don’t sink VS input loads and move them to the top

- nir: add nir_instr_can_speculate helper (for LICM)

- nir: add nir_tex_instr::can_speculate

- nir: add access to load_smem_amd (for ACCESS_CAN_SPECULATE)

- nir/divergence_analysis: simplify nir_vertex_divergence_analysis

- nir/opt_move_to_top: check can_reorder & can_speculate

- nir: silence a warning in nir_opt_shrink_vectors

- nir: handle store_buffer_amd in nir_intrinsic_writes_external_memory

- radeonsi/ci: import piglit & cts build scripts

- radeonsi/ci: don’t build GLES CTS separately

- radeonsi/ci: update gfx12 and other failures

- nir/group_loads: handle more loads

- nir/group_loads: allow moving loads across instructions without defs

- nir/group_loads: split is_barrier into is_barrier + is_terminate

- nir/group_loads: group any reorderable intrinsics regardless of barriers

- nir/group_loads: invert the return value of can_move to reflect its true meaning

- nir/group_loads: remove mostly duplicated function is_memory_load

- nir/group_loads: make is_grouped_load use get_load_resource

- nir/group_loads: use nir_instr_next/prev

- nir/group_loads: store our custom instr->index in an array

- nir/group_loads: don’t use pass_flags to store the indirection level

- nir/group_loads: rename to nir_opt_group_loads

- nir: mark inverse_ballot & is_subgroup_invocation_lt_amd as CAN_REORDER

- nir: change how can_mov_out_of_loop is set for intrinsics in nir_can_move_instr

- nir: handle can_reorder robustly in nir_can_move_instr

- nir: renumber nir_move_options

- nir: split nir_move_load_frag_coord from nir_move_load_input

- nir: handle load_input_vertex in nir_can_move_instr

- nir: add more nir_move_options

- nir: add nir_move_only_convergent/divergent

- glsl: fork exec_node/list -> ir_exec_node/list as private GLSL IR utility

- intel: fork exec_node/list -> brw_exec_node/list as a private Intel utility

- nir: move list.h outside the glsl directory

- nir: remove C++ stuff from list.h

- nir: remove unused stuff from list.h

- glsl: remove unused stuff from ir_list.h

- glsl: remove unused symbol_table_entry::get_interface

- glsl: remove reparent_ir

- nir/opt_group_loads: support tex instructions without resource srcs for i915

- glsl/tests: fix memory leaks

- ralloc/linalloc: allow adding custom code to LINEAR_ALLOC new operator

- glsl: add support for linear_ctx into ir_instruction

- glsl: switch ir_instruction to linear_ctx to eliminate malloc overhead

- glsl: switch ir_variable_refcount to linear_ctx

- mesa: switch symbol_table to linear_ctx

- dri: fail creating DRI images that exceed hw limits

- nir: don’t allocate nir_constant::elements if there are none

- nir: add nir_variable_{set,append,steal}_name{f}() to modify nir_variable names

- nir: eliminate most ralloc/malloc for nir_variable names

- nir/clone: don’t call ralloc_strdup with a NULL pointer for intrinsic names

- nir: don’t use variables as ralloc parents, use the shader instead

- nir: add nir_variable_create_zeroed helper

- nir: use gc_ctx for nir_variable to reduce ralloc/malloc overhead

- meson: reinstate LLVM requirement for r300 and enforce it for i915 too

- meson: remove unused -DLLVM_AVAILABLE

- mesa: move src/mapi to src/mesa/glapi

- docs,ci: update mapi relocation

- mesa: remove inc_mapi

- mesa: stop using inc_mesa in most places that have nothing to do with GL

- glsl: use pipe caps in opt_shader

- glsl: replace LowerBuiltinVariablesXfb with pipe caps

- glsl: replace LowerPrecisionFP16/Int16 with pipe caps

- glsl: replace LowerPrecisionDerivatives with pipe caps

- glsl: replace LowerPrecisionFloat16Uniforms with pipe caps

- glsl: replace LowerPrecision16BitLoadDst with pipe caps

- glsl: replace LowerPrecisionConstants with pipe caps

- st/mesa: replace EmitNoIndirect* with pipe caps

- glsl: move PositionAlwaysInvariant/Precise options to gl_constants

- glsl: remove gl_shader_compiler_options

- ac/nir/meta: allow compute blits with R5G6B5 & R5G5B5A1 formats on GFX9+

- radeonsi/gfx12: print swizzle modes for AMD_TEST=imagecopy

- ac/nir: clarify the behavior of ac_nir_lower_ngg_options::can_cull

- ac/llvm: inline ac_array_in_const*_addr_space

- ac/nir: inline ac_get_ptr_arg

- ac/nir: remove unused ac_get_ptr_arg & ac_arg_type_to_pointee_type

- ac: simplify AC_ARG_CONST_*PTR enums

- ac/llvm: make ac_get_arg non-inline

- radeonsi: bitcast shader args to float in LLVM IR manually

- ac/llvm: make AC_ARG_FLOAT equal to AC_ARG_INT

- ac: merge AC_ARG_INT & AC_ARG_FLOAT into single AC_ARG_VALUE

- egl,glx: allow OpenGL with old libx11, but disable glthread if it’s unsafe

- util/set: improve support for usage without “set” structure allocation

- radv,zink,st/mesa: use _mesa_set_fini instead of ralloc_free

- util/set: start with 16 entries to reduce reallocations when growing the set

- util/set: don’t allocate the smallest table, declare it in the struct

- util/set: set _mesa_set_init return type to void

- util/set: add _mesa_set_copy, a cloning helper without allocation

- util/hash_table: start with 16 entries to reduce reallocations

- util/hash_table: improve support for usage without “hash_table” allocation

- util/hash_table: don’t allocate the smallest table, declare it in the struct

- util/hash_table: set _mesa_hash_table_init return type to void

- util/hash_table: don’t allocate hash_table_u64::table, declare it statically

- util/hash_table: add _mesa_hash_table_copy, a cloning helper without allocation

- nir/dominance: don’t allocate 0-sized dom_children

- nir/dominance: eliminate ralloc overhead for allocating dom_children

- nir: make nir_block::predecessors & dom_frontier sets non-malloc’d

- nir/lower_vars_to_ssa: don’t ralloc sets

- nir/instr_set: don’t ralloc the set

- nir/remove_dead_variables: don’t ralloc the set

- nir/opt_vectorize: don’t ralloc the set

- nir/gather_info: don’t ralloc the set

- nir/search: don’t ralloc the hash table

- nir/opt_copy_prop_vars: don’t allocate vars_written::derefs hash table

- nir/opt_copy_prop_vars: don’t allocate vars_written_map hash table

- nir/opt_copy_prop_vars: don’t allocate copies::ht hash table

- nir/lower_vars_to_ssa: don’t ralloc the hash table

- nir/opt_find_array_copies: don’t allocate the hash tables

- nir/split_vars: don’t allocate the hash tables

- nir/serialize: don’t allocate the hash tables

- nir/opt_load_store_vectorize: don’t allocate 0-sized offset_defs

- nir: convert nir_instr_worklist to init/fini semantics w/out allocation

- nir/opt_dead_write_vars: don’t use ralloc context, share dynarray among blocks

- nir/gather_info: don’t allocate the ralloc context

- glsl/opt_function_inlining: don’t ralloc the hash table

- glsl/ir_constant_expression: don’t ralloc the hash table

- glsl/ir_variable_refcount: don’t ralloc the hash table

- glsl_to_nir: don’t allocate 0-sized num_params & subroutine_types

- glsl_to_nir: don’t allocate 0-sized arrays for Uniform/ShaderStorageBlocks

- nir/opt_call: handle load_global(_amd) with SPECULATE as rematerializable

- nir/opt_sink: handle load_global_amd

- nir/opt_move_to_top: handle load_global_amd with ACCESS_SMEM_AMD

- aco: check that global addresses are 64bit, apply_nuw_to_ssa to global_amd/smem

- ac/llvm: fix handling COHERENT and VOLATILE flags for global access

- ac/llvm: port load_smem_amd behavior to load_global_amd

- aco,radeonsi: expand 32-bit shader arg pointers to 64 bits for ACO

- ac/nir: switch nir_load_smem_amd uses to ac_nir_load_smem wrapper

- radv: fix load_smem alignment

- radeonsi: always set TC_L2 for CP DMA on GFX12

- radeonsi: inline si_upload_const_buffer

- radeonsi: if rebinding the same constbuf, don’t update refcount with atomics

- radeonsi: remove recursion from si_set_constant_buffer

- radeonsi: don’t ref and unref an index buffer uploaded from a user buffer

- radeonsi: switch VBO descriptor uploads from u_upload_alloc_ref to u_upload_alloc

- radeonsi/ci: primitive_counter failures are no longer reproducible on gfx12

- radeonsi: compute blake3 hashes of internal shaders if they are not set

- gallium/u_threaded: remove refcounting for draw indirect buffers

- gallium/u_threaded: remove refcounting for dispatch compute indirect buffers

- gallium/u_threaded: remove refcounting for clear_buffer

- gallium/u_threaded: remove refcounting for draw mesh indirect buffers

- gallium/u_threaded: remove refcounting for get_query_result_resource

- gallium/u_threaded: remove refcounting for buffer_unmap

- gallium/u_threaded: remove refcounting for buffer_subdata

- nir: remove load_smem_amd

- r300: fix DXTC blits

- winsys/radeon: fix completely broken tessellation for gfx6-7

- zink: fix mesh and task shader pipeline statistics

- Revert ABI breakage “amd: Add user queue HQD count to hw_ip info”

- gallium/noop: don’t unref buffers passed to set_vertex_buffers to fix crashes

Marek Vasut (4):

- etnaviv: hwdb: update gc_feature_database from ST

- etnaviv: Turn ETNA_CORE_ into ETNA_FEATURE_CORE_

- pvr: fix features pointer on GX6650 (4.46.6.62)

- pvr: fix device info for GX6250 (4.45.2.58)

Mario Kleiner (6):

- asahi: Fix lseek failure error handling in agx_bo_import().

- asahi: Set PIPE_BIND_SCANOUT in agx_resource_from_handle().

- wsi/display: Accept 0 nits for HDR light level properties for “undefined”

- wsi/display: Initially set default HDR metadata from EDID for HDR modes

- wsi/display: Allow atomic modeset for change of Colorspace or HDR poperties

- wsi/wayland: Zero min_luminance, max_luminance HDR light levels are valid.

Mark Collins (1):

- freedreno/drm: Only initialize memory data source when Perfetto is active

Martin Krastev (1):

- Revert “ci: Disable vmware farm”

Martin Roukala (né Peres) (24):

- radv/ci: add post-merge jobs for gfx1201

- zink/ci: add post-merge jobs for gfx1201

- zink/ci: update the nvk expectations

- nvk/ci: document a new fail and flakes

- radv/ci: document new flakes

- freedreno/ci: document new flakes

- radv/ci: disable hang detection in navi31-vkcts

- ci: disable the valve-kws farm

- Revert “ci: disable the valve-kws farm”

- ci/ci-tron: uprev the job submission template

- freedreno/ci: uprev the kernel for the a750

- nvk/ci: document some vk3d fails

- ci-tron: uprev b2c to v0.9.17

- radv/ci: switch to default kernel to b2c’s default kernel

- nvk/ci: switch to default kernel to b2c’s default kernel

- zink/ci: raise the job timeout from 5 to 8 minutes

- turnip/ci: document more flakes

- zink/ci: document more flakes in the a750 job

- turnip/ci: switch vkcts testing to the KWS farm

- ci,crnm: remove unsupported arguments by console.print

- ci,crnm: remove unused imports

- turnip/ci: enable a750_vk in marge pipelines

- turnip/ci: squeeze a750-vk into 4 jobs

- zink/ci: run the a750 job in pre-merge

Mary Guillemard (85):

- panvk: Fix nullDescriptor for dynamic descriptors

- panvk: Wire robustness2 buffer info down to pan/bi

- panvk: Exposes robustBufferAccess2 on v11+

- pan/genxml: Add missing parenthesis on pan_cast_and_pack macros

- pan/genxml: Make resource table optional on RUN_COMPUTE{_INDIRECT}

- panvk: Add basic infrastructure for shader variants

- pan/bi: Fuse FCMP/ICMP on Valhall

- 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

- panvk: Directly use index buffer tracked value in JM

- libcl: Add stdatomic.h

- panfrost: Allow to pass job dependencies in grid for precomp JM

- libpan: Add draw indexed and indirect helper for Bifrost

- panvk: Prepare draw_emit_attrib_buf and draw_emit_attrib for indirect

- panvk: Move JM draw preparation logic to prepare_draw

- panvk: Prepare panvk_draw_prepare_varyings for JM indirect

- panvk: Prepare tiler and vertex dcd for JM indirect

- panvk: Implement indirect draw for Bifrost on JM

- panvk: Use indirect path for indexed draw on JM

- panvk: Make indexed draw use indirect indexed draw

- panvk: Parallelize min max index search on JM

- panvk: Call nir_opt_access

- pan/bi: Switch to nir_lower_alu_width

- pan/bi: Vectorize UBOs load/store

- pan/bi: Handle needless conversions in nir_lower_bool_to_bitsize

- pan/bi: Revamp bi_optimize_nir

- pan/bi: Move pan_lower_sample_pos to next block

- pan/bi: Stop exposing bifrost_nir_lower_load_output

- panvk: Remove unused color_output_var function in fb_preload

- panvk: Lower sampler and texture index in case of offset

- panfrost: Split compilers preprocess_nir

- panfrost: Move nir_lower_io outside of postprocess

- panfrost: Split texture lowering passes

- pan/bi: Split bi_optimize_nir and run bi_optimize_loop_nir in preprocess

- pan/bi: remove dead variables in preprocess

- pan/bi: Run opt_sink and opt_move in preprocess

- nouveau/headers: Properly parse DMA classes for Turing and Ampere A

- nouveau/headers: Mark SET_POINT_SIZE as using float

- nouveau/headers: Handle Ampere A GPFIFO in dumper

- nouveau/headers: Add missing M2MF parsing and set it for subchan 2

- nouveau/headers: Fix nv_push rust push_inline_data implementation

- nouveau/headers: Add raw INC methods in nv_push rust impl

- nvk: Force GART for command buffers

- nvk: Use MEM_LOCAL for nvk_cmd_mem_create

- nak: add Ldsm

- hk: Return 0 for opaque memory capture replay

- pan/bi: Ensure to merge adjacent ifs after bifrost_nir_lower_shader_output

- pan/bi: Reintroduce bi_fuse_small_int_to_f32 on v11+

- pan/bi: Make va_optimize_forward run until there is no progress

- pan/bi: Propagate MKVEC.v2i8 and V2X8_TO_V2X16 for replicate swizzle

- panvk: Do not clamp blend constants in command buffer

- panvk: Enable SNORM rendering

- panvk/ci: Update waivered tests

- pan/decode: Fix SYNC_SET32 double dots

- panvk: Fix wrong type for sb_mask in CmdSetEvent2

- panvk: Take VK_DEPENDENCY_ASYMMETRIC_EVENT_BIT_KHR into account

- docs/features: Mark VK_KHR_maintenance9 as done for ANV

- hk: Move query pool creation/destruction

- hk: Add support for VK_QUERY_POOL_CREATE_RESET_BIT_KHR

- hk: Rework queue creation logic

- hk: Advertise VK_KHR_maintenance9

- nir/print: Fix load_converted_output_pan and load_readonly_output_pan

- panvk: Follow nir_lower_io for subpass lowering

- panvk: Properly set shader binary properties

- nouveau/headers: Autogenerate push method dumpers

- nouveau/headers: Handle all compute classes in vk_push_print

- nouveau/headers: Handle all DMA classes in vk_push_print

- nouveau/headers: Handle all 3D classes in vk_push_print

- nouveau/headers: Handle more gpfifo classes in vk_push_print

- nouveau/headers: Include class headers instead of redefining class ids

- nouveau/headers: Add Blackwell support to nv_push_dump

- nouveau/headers: Properly set subchannel 3 to 2D engine in vk_push_print

- nouveau/headers: Import Blackwell host class headers

- nouveau/headers: Handle unbound sub channels in vk_push_print

- panvk, vk/meta: Move D/S sanitizing to panvk

- asahi: Add base expectation on VKCTS main

- nouveau/headers: Define fake devices in a table for nv_push_dump

- nouveau/headers: Add missing Kepler, Maxwell and Pascal defs to nv_push_dump

- nouveau/headers: Properly reformat nv_push_dump

- hk: Fix maxVariableDescriptorCount with inline uniform block

- hk: Disable 1x in sampleLocationsSampleCounts

- hk: Remove unused allocation in queue_submit

- hk: Make width and height per block in HIC

- hk: Allocate the temp tile buffer in copy_image_to_image_cpu

Matt Coster (6):

- pvr: Fill in missing {u,s}norm equivalents for tex formats

- pvr: Add missing format adjustment for e5b9g9r9

- pvr: Add macros to iterate all supported tex formats

- pvr: Cleanup compressed border colour support

- pvr: Use 2D texstate for buffer views to allow for >8k sizes

- pvr: Add support for custom border colors

Matt Turner (4):

- meson: Allow controlling perfetto fallback

- meson: Allow configuring with Android-internal perfetto

- brw/algebraic: Protect SHUFFLE from OOB indices

- elk/algebraic: Protect SHUFFLE from OOB indices

Mauro Rossi (4):

- intel/mda: Fix gnu-empty-initializer warning

- amd: require LLVM when amd-use-llvm is enabled

- android: fix building rules for i915, r300

- util: Fix gnu-empty-initializer error

Max R (2):

- d3d10umd: De-bufferize OutputMerger

- d3d10umd: Flush on present

Maíra Canal (3):

- vulkan: create a wrapper struct for vk_sync_timeline

- vulkan: don’t destroy vk_sync_timeline if a point is still pending

- broadcom/ci: remove synchronization-related flakes and skips

Mel Henning (68):

- nouveau/headers: Update g_nv_name_released.h

- nak/mark_lcssa_invariants: Invalidate divergence

- loader: Don’t load nouveau GL on nvidia kmd

- meson,nvk: Require rustc-hash 2.0 or later

- nvk: Call cmd_buffer_begin_* based on queue flags

- nvk: Factor out nvk_queue_engines_from_queue_flags

- nvk: Check subchannels are valid in nv_push

- nvk: Disable non-graphics timestamp queries

- zink: Fix a few profile errors

- zink: Convert profile tabs to spaces

- zink: Add zink_check_requirements

- loader: Don’t fall back to nouveau GL without zink

- nvk: Split out NVC0_FIFO_SUBC_FROM_PKHDR helper

- nvK: Add nvk_cmd_buffer_last_subchannel

- nvk: Reduce subc switches in cmd_invalidate_deps

- nvk/copy: Split out nvk_remap_insert_aspect

- nvk/copy: Split out nvk_remap_extract_aspect

- nvk/copy: Split out nvk_remap_copy_aspect

- nvk/copy: Implement CopyImage2 between R and D/S

- nvk: Expose VK_KHR_maintenance8

- nvk: Clear cond_render_gart_* in reset_cmd_buffer

- nak/hw_runner: Make a few more items public

- nak: Add a test to check how RENDER_ENABLE works

- nvk/cmd_pool: NVK_DEBUG=trash_mem for alloc_mem

- nvk: Clear second SET_RENDER_ENABLE operand

- nvk: Remove gart from the name of cond_render_mem

- nvk: Move cond rendering memory out of gart

- nvk: Reuse the same cond render temp in a cmd_buf

- nvk: Don’t re-initialize cond rendering operand B

- nvk: Only copy 32-bits for cond render operand A

- nir: Don’t require nir_metadata_control_flow

- nir/phi_builder: Adjust valid_metadata assert

- util: Add range_minimum_query

- nir: Add a faster lowest common ancestor algorithm

- treewide: Spell indices correctly

- nak: Remove Option<> from SSARef::file() return

- nak: impl HasRegFile for SSARef and &[SSAValue]

- nak/assign_regs: Make src_ssa_ref return a slice

- nak: Make BindlessSSA store [SSAValue; 2]

- compiler/rust: impl AsSlice for Box

- nak: Special case Box in derive_from_variants

- nak: impl SM*Op for Op

- nak: Place most Op structs in Box<>

- nak: Don’t copy-prop adds that flush to zero

- nak: Fix divergence test for redux availability

- util/macros: Add ATTRIBUTE_COLD

- nouveau/headers: Mark vk_push_print as cold

- nouveau/headers: Split out “cases” in template

- nouveau/headers: Deduplicate push dump impls

- nouveau/headers: Use previous method for default

- nak: Add OpSgxt

- nak: Implement bitfield_extract with OpSgxt

- nvk: Only run one INVALIDATE_SHADER_CACHES

- nvk: Combine BARRIER_{COMPUTE,RENDER}_WFI

- nvk: Fix execution deps in pipeline barriers

- nvk/cmd_buffer: Remove redundant tests for access

- vulkan: Drop vk_pipeline_stage_flags2_has_*_shader

- nvk: INVALIDATE_SHADER_CACHES on most recent subc

- nvk: WFI on the most recent subc

- nvk/cmd_copy: Use PIPELINED for user transfers

- nvk/cmd_copy: Pipeline user copy_rect operations

- nvk: Reduce subc switches with events

- nvk: Call INVALIDATE_RASTER_CACHE for shading rate

- nvk: FLUSH_PENDING_WRITES in gr semaphore release

- nvk: Fix maxVariableDescriptorCount with iub

- nvk: Really fix maxVariableDescriptorCount w/ iub

- nvk: VK_DEPENDENCY_ASYMMETRIC_EVENT_BIT_KHR

- nak/opt_lop: Don’t handle modifiers in dedup_srcs

Michal Krol (3):

- gallium: Do not flush subnormals during tessellation.

- lavapipe: Bump maxTransformFeedbackBufferDataStride to 2048.

- llvmpipe: Add support for 8x MSAA.

Michel Dänzer (2):

- egl/dri: Name struct dri2_egl_buffer

- egl/gbm: Destroy excess BOs

Mike Blumenkrantz (217):

- gallium/hud: set the framebuffer texture when drawing

- ci: bump VVL to 1.4.322ish

- zink: fix valid contents check for adding new bind

- lavapipe: call nir_lower_int64

- lavapipe: maintenance9

- lavapipe: VK_KHR_unified_image_layouts

- zink: use maint9 implicit query resets when available

- zink: flag dmabuf exports on usage set, not synchronization

- 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

- ci: add venus-lavapipe flake

- ci: disable xwm decorations in weston

- zink: create a dummy image for shaderdb runs

- zink: drop primitiveTopologyPatchListRestart from profile

- zink: just check multiview availability to advertise extensions

- crocus: silence perf_debug -Waddress warnings

- iris: silence perf_debug -Waddress warnings

- vulkan: silence typed_memcpy -Waddress warnings

- zink: skip all glx piglit tests on anv-adl

- zink: verify that no generated tcs is ever in zink_context::gfx_stages

- kopper: fix initial swapinterval setting

- zink: also add access stage sync when rebinding buffers

- zink: check for multi-context image/buffer rebinds during dispatch

- zink: fix tc buffer replacement rebind condition

- zink: trigger multi-context buffer invalidate on internal buffer invalidate

- mesa/fbobject: tweak attachment validation

- crocus: stop using util_framebuffer_init

- i915: stop using util_framebuffer_init

- zink: add cezanne skip for a device loss flake

- mesa: fix and advertise GL_EXT_sRGB

- zink: zero dynamic rendering resolve views on rp end

- tc: also inline depth resolves

- zink: add ZINK_DEBUG=rploads to mimic tiler behavior

- zink: fix assert for unsynchronized non-GENERAL image barriers

- tc: don’t clobber CSO info when renderpass has ended

- zink: don’t access ctx in submit_queue

- zink: stop always syncing threaded flushes

- perfetto: unify init

- mesa: make _mesa_bufferobj_release_buffer static

- mesa: add a ctx param to _mesa_bufferobj_release_buffer

- mesa/st: check for tc on context create

- util/tc: don’t print END_BATCH in debug

- tc: break out buffer list busy check

- tc: add a function to check the internal buffer lists

- freedreno: stop using util_set_vertex_buffers

- r300: stop using util_set_vertex_buffers

- r600: stop using util_set_vertex_buffers

- zink: destroy u_uploaders earlier in context destroy

- gallium: set prefer_real_buffer_in_constbuf0 for all drivers using tc

- gallium: always upload cbuf0 when cap is set

- mesa/st: rework thread scheduler handling + add dispatch tracking

- tc: remove user cbuf uploads

- zink: optimize a GENERAL layout case in pre-draw/dispatch barriers

- zink: fix image sync deferral

- zink: remove UNSYNCHRONIZED map flag during unmap flush for non-subdata calls

- zink: improve deferred buffer barrier heuristics

- glthread: mark internal bufferobjs for the ctx they belong to

- st/program: stop calling st_finalize_nir() unnecessarily for variants

- kopper: don’t sync glthread from swapbuffers

- glx/egl/kopper: explicitly pass __DRI2_FLUSH_CONTEXT when appropriate

- glx/kopper: don’t call glFlush from swapbuffers

- zink: sprinkle in a bunch of MESA_TRACE_FUNC

- zink: inline zink_resource_access_is_write()

- zink: ALWAYS_INLINE resource inlines

- zink: break out unflushed batch waiting into separate function/mechanism

- zink: pass ctx to sparse bind functions

- zink: when sparse unbinding, always wait on main timeline semaphore

- zink: trigger fb unbind barrier on resolve images too

- zink: fix sizing on resolve resource array

- zink: update resized swapchain depth buffer layout while blitting

- zink: unify/fix clear flushing

- zink: fixes for flushing clears

- zink: also set msrtss stencil

- zink: always flush clears when doing single-aspect blit to avoid data loss

- zink: enable single-aspected blitting of mixed z/s formats

- zink: fix some weird indentation in update_binds_for_samplerviews()

- zink: flag resources for layout eval in update_binds_for_samplerviews()

- zink: unset validate_all_dirty_states

- zink: set can_bind_const_buffer_as_vertex

- radv: ALWAYS_INLINE radv_upload_graphics_shader_descriptors and relateds

- zink: add a util function for appending a batch state

- zink: split out batch state finding

- zink: null out zink_batch_state::next when reusing a batch state

- zink: defer batch state resets more competently

- zink: check ctx batch states first when finding a usable one

- zink: stop using atomics to check fence submit/complete

- zink: stop trying to oom prune batch states

- zink: rename zink_batch_state::unref_resources -> unref_resource_objs

- zink: move buffer hashlist clear to normal batch state reset

- zink: stop deferring resource object unrefs

- zink: once there are many outstanding submits, check for timeline updates

- zink: zero db offset on batch reset

- zink: don’t init non-db batch stuff in db mode

- zink: reset batch descriptor states again before use on recycle

- zink: don’t increase db scale when resizing a db up to the current scale

- zink: add some cml flakes

- mesa: tag a couple framebuffer commands for MESA_VERBOSE=api

- mesa: add MESA_DEBUG=fallback_tex

- kopper: unwrap screen before checking cpu flag

- tc: don’t unset resolve resource in set_framebuffer_state

- mesa/varray: inline a bunch of functions

- zink: reeneable OVR_multiview2

- mesa: add task/mesh to _mesa_shader_stage_to_subroutine_prefix()

- aux/trace: dump more mesh draw info

- zink: remove rebar requirement for descriptor buffer support

- zink: add another flag to determine whether linked program compile is done

- zink: toggle ctx->has_swapchain when flushing clears

- zink: flag pipeline_changed when updating shader modules

- zink: clamp subgroup op return types to required int/uint types

- zink: fix edgeflags check on program creation

- zink: correctly handle batch_id==0 in check_last_finished()

- zink: only set compute module info on dispatch (after compile fence)

- zink: set current compute prog after comparing against current compute prog

- zink: do bindless init when binding a bindless shader, not on create

- zink: just reference compute progs to batch on delete

- zink: ensure transient surface is created when doing msaa expand

- gallium: add pipe_context::resource_release to eliminate buffer refcounting

- zink: eliminate buffer refcounting to improve performance

- zink: flag vertex element state for rebind after vstate draws

- zink: don’t init batch descriptors for copy contexts

- zink: simplify state iterating in find_completed_batch_state()

- zink: make find_completed_batch_state() only return state for COPY_ONLY ctx

- zink: update gfx pipeline less frequently

- zink: use implicit offsets for function temp variables in ntv

- zink: more vvl exceptions

- cso: unbind vertex buffers when unbinding context

- tc: eliminate refcounting for set_shader_buffers

- ci: bump vvl to another random version

- zink: store last index buffer

- zink: always use vkCmdBindVertexBuffers2

- zink: simplify index type access to normal array

- zink: move draw state flag resets into their blocks

- zink: add some pre-checks before calling query update/suspend/resume

- zink: add another tu flake

- mesa: support GL_NV_representative_fragment test

- zink: support NV_representative_fragment_test

- zink: add a fastpath for nooping vertex and draw buffer barriers

- zink: ALWAYS_INLINE zink_set_vertex_buffers_internal

- zink: split update_res_bind_count

- zink: use velems buffer count in blitter instead of gfx mask

- zink: move zink_bind_vertex_elements_state() to zink_context.c

- zink: move vbo unbind to bind_vertex_state

- zink: rescope some zink_set_vertex_buffers_internal variables

- zink: use memcpy for vbo bind

- zink: delete some function decls that no longer exist

- zink: only remove buffer deferred sync on release

- zink: eliminate even more calls to sync functions

- util/vbuf: stop nooping set_vertex_buffers calls

- Revert “util/vbuf: stop nooping set_vertex_buffers calls”

- zink: mark dirty_gfx_stages using util function

- zink: delete weird prog->pipelines sizing

- zink: make zink_descriptor_util_push_layouts_get() static

- zink: unify ntv code for storing shared/scratch memory

- zink: unify ntv code for loading shared/scratch memory

- zink: add enum zink_pipeline_idx to distinguish between types of pipelines

- zink: break out setting draw-time dynamic state into separate function

- zink: some minor tweaks to descriptor template code

- zink: use a better array loop sizing for gfx descriptor program init

- zink: stop unsetting zink_gfx_pipeline::modules on shader unbind

- zink: don’t use screen ralloc context for screen::pipeline_libs

- zink: imagelessFramebuffer is no longer required/used

- tc: don’t sync on internal UNSYNCHRONIZED texture_map calls

- mesa/st: add a flags param to st_texture_create()

- mesa/st: mark internal texture map calls as UNSYNCHRONIZED

- mesa/st: mark internal buffer map call as UNSYNCHRONIZED

- zink: make zink-anv-adl jobs use descriptor buffer

- zink: hook up VK_EXT_mesh_shader

- zink: implement compiler-side handling for mesh shaders

- zink: split out descriptor invalidation to be more explicit

- zink: use pipeline_idx for descriptor invalidation

- zink: implement mesh shaders

- zink: wait on queues during screen destroy

- zink: account for kopper dt not having a swapchain when pruning batch usage

- zink: prune active queries in reset_batch_state_ctx()

- zink: call post_submit directly from submit_queue

- zink: check for zink_batch_state::ctx before using during descriptor state reset

- zink: null out zink_batch_state::ctx when adding to the screen list

- zink: reset batch states on destroy

- zink: flag gfx pipeline_changed if switching from a shader object draw

- zink: flag mesh pipeline_changed if switching from a shader object draw

- zink: only try update descriptors on draw/dispatch when necessary

- zink: fix descriptor array indexing for mesh pipeline

- zink: set OutputPoints for mesh point output

- zink: various cleanups for mesh+multiview

- zink: stop creating GPL inputs for mesh

- zink: disable single-aspected blits for now

- tu: don’t deref end info in tu_CmdEndRendering2EXT

- zink: add ZINK_DEBUG=nogeneral to disable unified image layouts

- mesa: don’t assert when finding a renderbuffer miplevel fails

- zink: fix u_blitting when clears are pending

- hud: delete buffer refcounting

- zink: convert task_payload offset to array index in prepass

- vulkan: update spec to 1.4.328

- lavapipe: move copy_depth_box to lvp_image.c

- lavapipe: handle aspected depth/stencil memory->image HIC transfers

- lavapipe: VK_KHR_copy_memory_indirect

- mesa: delete task and mesh programs on context destroy

- zink: fix disabling multiview mesh with shader objects

- zink: various fixes for custom sample locations

- zink: stop using vk lazy allocations / transient attachments

- zink: strip dmabuf bind flags when creating transient image

- zink: always add mutable to transient surface creation when needed

- zink: only add mutable bind for transient surfaces when necessary

- zink: disable msrtss handling when blitting

- glsl: fix gl_ViewID_OVR type to uint

- mesa: copy NumSamples in reuse_framebuffer_texture_attachment

- zink: enable GL_EXT_mesh_shader

- zink: enable srgb-mutable for dmabufs when possible

- zink: defer swapchain updates for interval changes if acquired image is active

- zink: consistently set/unset msrtss in begin_rendering

- zink: disable primitiveFragmentShadingRateMeshShader feature

- zink: collapse gfx pipeline fetching and binding conditionals

- zink: collapse mesh pipeline fetching and binding conditionals

- zink: don’t destroy old push layout when enabling fbfetch descriptor

Mohamed Ahmed (12):

- nvk: Dynamically allocate queues

- nak: Fix 64-bit bit_count, ufind_msb, ifind_msb, find_lsb

- nak: Enable lowering for bitfield manipulation at <32bit sizes

- nvk: Ensure we have nvkmd before shader upload

- nvk: Ensure we have nvkmd before sampler descriptor upload

- nvk: Skip creating a nvkmd device if we don’t have to

- nvk: Add support for VK_QUERY_POOL_CREATE_RESET_BIT_KHR

- nvk: Advertise VK_KHR_maintenance9

- nil: Add missing compressible PTE kinds

- nouveau/headers: Add AMPERE_B compute subchannel definition

- nouveau/mme: Add unit tests for sharing between compute and 3D scratch registers

- nvk: Use the compute MME for compute dispatch

Myrrh Periwinkle (1):

- gallium: Properly handle non-contiguous used sampler view indexes

Nagulendran, Iswara (3):

- amd/vpelib: Fix Issues with Background Color insertions

- amd/vpelib: Fix cost profiling support

- amd/vpelib: Handle Destination Rect with zero dimensions

Nanley Chery (18):

- anv: Disable CCS if image bound to wrong heap on Xe2+

- anv: Disable fast-clears on linear surfaces

- iris: Disable fast-clears on linear surfaces

- iris: Add PIPE_BIND_SCANOUT when exporting textures

- iris: Fix image reallocation for sharing

- intel/isl: Only set CMF on renderable views on Xe2+

- intel: Enable CCS_E on linear surfaces on Xe2+

- iris: Drop iris_resource_image_is_pat_compressible

- anv,hasvk: Take trace submission ID out of lock

- anv: Rework locking for sparse binding with TR-TT

- intel/isl: Define initial state of non-zeroed CCS on gfx9-11

- anv: Query ISL for the aux-state of undefined layouts

- intel: Delete the has_illegal_ccs_values bool

- intel/isl: Update the initial HiZ state for Xe2+

- intel/isl: Update the aux-state of zeroed HiZ

- iris: Don’t zero the CCS in an already zeroed BO

- iris: Initialize HiZ to the CLEAR state on BDW-ICL

- iris: Drop iris_resource_level_has_hiz()

Natalie Vock (18):

- radv/winsys: Support vm_always_valid in the NULL winsys

- radv: Only expose indirect raytracing on gfx7+

- aco: Add RegisterDemand::operator!=

- aco: Add function call attributes

- aco: Add ABI and Pseudo CALL format

- aco: Add call-related program/block properties

- aco: Add call info

- aco/lower_to_hw_instr: Lower calls

- aco/live_var_analysis: Handle calls

- aco/sched: Handle calls

- aco/validate: Validate call instructions

- aco/vn: Don’t combine expressions across calls

- aco/opt: Work around GCC compiler issue

- aco/scheduler: Bail early on unreorderable instructions

- vulkan/bvh: Mark instances with NAN AABBs as inactive

- radv/bvh: Encode empty AS bounds as NaN

- nir/lower_shader_calls: Repair SSA after wrap_instrs

- radv: Fix PSO history with RT pipelines

Nataraj Deshpande (1):

- anv: add feature flags for linearly tiled ASTC images

Okenczyc, Andrzej (1):

- amd/vpelib: Move predication size calculation to bufs_req

Olivia Lee (16):

- panvk: stop CPU mapping all index buffers on JM

- perfetto: allow specifying clock domain for cpu timestamps

- panvk/perfetto: improve clock synchronization using CLOCK_MONOTONIC_RAW

- editorconfig: move OpenCL configuration to root

- vulkan: move internal vulkan pseudo-extensions to a common file

- vulkan/util: add vk_topology_to_mesa helper function

- hk: replace vk_conv_topology with vk_topology_to_mesa from vulkan/util

- lavapipe: replace vk_conv_topology with vk_topology_to_mesa from vulkan/util

- v3dv: replace vk_to_mesa_prim with vk_topology_to_mesa from vulkan/util

- panvk: pass correct variant shader/compile inputs to panvk_lower_nir

- pan/va: fix bi_is_imm_desc_handle early return

- panvk: fix FS driver set layout when LD_VAR_BUF is disabled

- vtn_bindgen2: use anonymous namespace to avoid name collisions

- util/macros: coerce likely/unlikely to bool even without __builtin_expect

- panfrost: fix cl_local_size for precompiled shaders

- hk: fix data race when initializing poly_heap

Paolo Bonzini (2):

- meson: rename Rust subprojects to NAME-SEMVER-rs

- docs: document naming convention for Rust subprojects

Patrick Lerda (23):

- 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

- r600: refactor step 1 - r600_texture cast is replaced by a function

- r600: refactor step 2 - r600_resource cast is replaced by a function

- r600: refactor step 3 - split r600_framebuffer

- r600: refactor step 4 - clean up r600_surface width0 and height0 elements

- r600: refactor step 5 - evergreen clean up an incompatible mechanism

- r600: refactor step 6 - pre-evergreen clean up

- r600: refactor step 7 - split r600_surface

- r600: refactor step 8 - pre-evergreen operations

- r600: refactor step 9 - remove util_framebuffer_init

- r600: refactor step 10 - drop create_surface

- r600: refactor step 11 - change r600_aligned_buffer_create() return type

- r600: fix evergreen gds atomic_counter_comp_swap

- r600: fix r600_resource_copy_region behavior for some formats

- r600: update multi_draw_indirect_params drm version requirement

- r600: fix emit_ssbo_atomic_op when ssbo_image_offset is non-zero

- r600: fix r600_draw_rectangle refcnt imbalance

- r600: update nplanes support

- r600: limit pre-evergreen predicate ready size

Paul Gofman (1):

- driconf: add a workaround for Investigation Stories : gunsound

Paulo Zanoni (32):

- brw: remove unnecessary <vector> inclusions

- brw: store ‘volatile’ GLSL/SPIR-V access in MEMORY_LOGICAL_FLAGS

- brw: consider ‘volatile’ memory access when doing CSE

- brw: mark ‘volatile’ sends as uncached on LSC messages

- brw: adjust comment pasted from a commit message

- brw: remove unnecessary casts to unsigned after calling LSC_CACHE()

- brw: null-tile sends don’t need to skip L3 on Xe2 and newer

- anv/sparse: don’t claim Xe2’s non-standard MSAA shapes as unsupported

- anv/sparse: declare sparse MSAA block shapes as standard before Xe2

- anv/sparse: allow multiple sample bits in anv_sparse_image_check_support

- anv/sparse: don’t support depth/stencil with sparse

- anv/sparse: we can support R64 and other atomics emulated formats

- anv/sparse: call sparse_image_check_support from get_image_format_properties

- zink: new expected failures for sparse depth buffers

- intel: rework the way sparse forces CCS/MCS/HIZ to be disabled

- isl: allow sparse with CCS on Xe2 and newer

- isl: allow sparse with STC_CCS on DG2

- iris: fix indentation during command submission

- iris/xe: move error checking to inside the devinfo->no_hw case

- iris: devinfo->no_hw is unlikely

- anv/i915: bring info->no_hw handling to anv_gem_execbuffer()

- anv/xe: extract xe_exec_ioctl()

- anv/xe: rework set_lost handling in xe_exec_ioctl()

- anv/i915: rework set_lost handling in anv_gem_execbuffer()

- anv/xe: set the queue as lost instead of the device on execbuf failure

- anv: we never set I915_EXEC_FENCE_OUT

- intel/i915: add i915_gem_execbuf_ioctl()

- intel/i915: sleep a little bit between retries of the execbuf ioctl

- intel/i915: give up the execbuf ioctl after ~16s of ENOMEMs

- intel/i915: warn the user about repeated execbuf ENOMEM after ~2s

- intel/xe: unify behavior with i915.ko regarding ENOMEM on DRM_IOCTL_XE_EXEC

- intel: unify parameters for the exec ioctl retries

Pavel Asyutchenko (1):

- radv: report full sparse address space size

Pavel Ondračka (5):

- r300/ci: check gles2 extensions

- r300/ci: add one recent flake

- r300/ci: add RS740 piglit and dEQP testing

- r300/ci: remove emulated swtcl testing

- i915/ci: update CI expectations

Peter Quayle (2):

- pvr: various multiview fixes

- pvr: add view index support for vertex shaders

Philipp Zabel (1):

- rusticl: Fix hidden lifetime warnings

Pierre-Eric Pelloux-Prayer (31):

- bufferobj: init the return value for GetParam functions

- radeonsi/tests: enable vk interop testing

- radeonsi: fix refcount with memobj

- radeonsi/gfx12: dont use HTILE for imported textures

- nir/lower_io: make sure range is not 0

- mesa/st: always use base_serialized_nir for draw

- nir/opt_varyings: fix build with PRINT_RELOCATE_SLOT

- mesa/st: check buf before dereferencing it

- radeonsi/tests: update rasterpos results

- radeonsi: sync harder on finish

- radeonsi/sqtt: retry a frame capture after reiszing the buffer

- radeonsi/sqtt: update the shader after scratch config

- mesa: clear TransformFeedback.NumVarying on error

- mesa: add u_overflow.h

- util, vulkan: use u_overflow.h

- nir/opcodes: use u_overflow to fix incorrect checks

- nir/opcodes: remove invalid comment

- glthread, tc: Fix buffer release with glthread and tc

- st: add early to st_prune_releasebufs

- tc: prevent flush of incomplete batches

- tc: add debug code for tc_set_vertex_elements_for_call_pending

- util: mimic KCMP_FILE via epoll when KCMP is missing

- util: use F_DUPFD_QUERY on Linux

- radeonsi/tests: use black to fix style issues

- radeonsi/tests: allow to test radv

- radeonsi/tests: add gfx11_5 to the list

- radeonsi/tests: rename –no-xxx arguments

- radeonsi/tests: rename glcts_path -> vk_gl_cts_path

- radeonsi/tests: add an argument to specify a folder with the must pass files

- radeonsi/tests: add a flag to specify a folder with the cts binaries

- radeonsi: propagate shader updates for merged shaders

Pohsiang (John) Hsu (11):

- mediafoundation: change frame preanalysis rc from ifdef to runtime control

- d3d12: Fix mediafoundation build

- mediafoundation: fix deadlock when user call shutdown and endGetEvent concurrently

- gallium/pipebuffer: fix multithread issue on pb_slab_manager_create_buffer

- mediafoundation: periodic clang-format, no code changes

- mediafoundation: update doc to remove gallium-vdpau from build setup

- mediafoundation: return adjusted LTR frame (need to remove one for short term)

- mediafoundation: create sample allocator for SW input sample on demand to save video memory

- mediafoundation: periodic clang format - no code changes

- mediafoundation: remove extra ‘;’

- mediafoundation: update version to 1.07

Qiang Yu (103):

- all: rename PIPE_SHADER_VERTEX to MESA_SHADER_VERTEX

- all: rename PIPE_SHADER_TESS_CTRL to MESA_SHADER_TESS_CTRL

- all: rename PIPE_SHADER_TESS_EVAL to MESA_SHADER_TESS_EVAL

- all: rename PIPE_SHADER_GEOMETRY to MESA_SHADER_GEOMETRY

- all: rename PIPE_SHADER_FRAGMENT to MESA_SHADER_FRAGMENT

- all: rename PIPE_SHADER_COMPUTE to MESA_SHADER_COMPUTE

- all: rename PIPE_SHADER_TASK to MESA_SHADER_TASK

- all: rename PIPE_SHADER_MESH to MESA_SHADER_MESH

- all: rename PIPE_SHADER_TYPES to MESA_SHADER_STAGES

- all: rename PIPE_SHADER_MESH_TYPES to MESA_SHADER_MESH_STAGES

- glsl: remove miss declaration of struct gl_shader_stage

- all: rename gl_shader_stage to mesa_shader_stage

- all: rename pipe_shader_type to mesa_shader_stage

- mesa,gallium: remove pipe_shader_type_from_mesa

- all: rename gl_shader_stage_is_compute to mesa_shader_stage_is_compute

- all: rename gl_shader_stage_is_mesh to mesa_shader_stage_is_mesh

- compiler: remove gl_shader_stage_is_graphics

- all: rename gl_shader_stage_uses_workgroup to mesa_shader_stage_uses_workgroup

- compiler: rename gl_shader_stage_is_callable to mesa_shader_stage_is_callable

- all: rename gl_shader_stage_is_rt to mesa_shader_stage_is_rt

- all: rename gl_shader_stage_can_set_fragment_shading_rate

- all: rename gl_shader_stage_name to mesa_shader_stage_name

- compiler,gallium: remove PIPE_SHADER_* and adjust some macro usage

- gallium: add mesh shader caps

- mesa,gallium: remove tgsi_processor_to_shader_stage

- mesa/st: use shader_caps.max_instructions to check shader present

- compiler: adjust comments for mesa_shader_stage

- radeonsi: do not init nir_options for mesh shader

- gallium/dd: enlarge shader string for mesh shader

- mesa: enlarge the shader resourse limits for mesh shader

- mesa: init program constants for mesh shader

- glsl,gallium,mesa: replace MESA_SHADER_STAGES with MESA_SHADER_MESH_STAGES

- mesa: set a more accurate value for combined limits

- mesa: count mesh shader when init limits

- mesa: add mesh shader extension state

- nir/opt_varying: remove assert for mesh shader crash

- nir: lower io support task and mesh shader

- nir: compute io base for fragment shader inputs which maybe per primitive

- Update OpenGL headers for GL_EXT_mesh_shader

- mesa,mapi: add EXT_mesh_shader extension

- mesa: implement EXT_mesh_shader glGet* values

- mesa: implement EXT_mesh_shader glGetProgrameiv values

- mesa: implement EXT_mesh_shader glGetActive* values

- mesa,glsl: add mesh shader subrotine handling

- mesa: implement mesh shader queries

- mesa: support mesh shader when glCreateShader

- mesa: remove mtype.h include from st_atom.h

- mesa: fix glTexPageCommitmentARB and glTexturePageCommitmentEXT level check

- mesa: use bitset for driver states tracker

- gallium: cso context support mesh shader

- mesa: add mesh shader states

- mesa: handle mesh shader in state management

- mesa: implement mesh shader draw calls

- mesa,gallium: handle mesh shader create and delete

- gallium: threaded context support mesh shader

- gallium/u_blitter: save mesh shader

- gallium/ddebug: support mesh shader

- mesa: allow NULL for vertex shader when mesh pipeline

- gallium/trace: dump mesh shader queries

- mesa/st: convert mesh shader to gl stages

- mesa: not fail the assert when detach mesh shader

- mesa: program pipeline support mesh shader

- gallium/noop: add mesh shader callbacks

- panfrost: fix image plane array copy

- panfrost: fix lowered multi plane resource offset/stride param get

- ac/surface: refine supported modifier list for multi block size

- ac/surface: add radeonsi exported modifiers to supported list

- ac/surface: add ac_compute_surface_modifier

- gallium: add PIPE_RESOURCE_PARAM_DISJOINT_PLANES

- egl: refine dma buf export to support multi plane

- radeonsi: really support eglExportDMABUFImageQueryMESA

- mesa: fix draw mesh shader indirect buffer size check

- radeonsi: fix use aco/llvm debug options

- radeonsi: hide real modifier export behind AMD_DEBUG

- glsl: prepare parse state for mesh shader

- glsl: handle taskPayloadSharedEXT variables

- glsl: handle PerPrimitiveEXT qualifier

- glsl: allow shared variables in task and mesh shader

- glsl: handle mesh shader primitive type layout qualifier

- glsl: handle max_vertices/primitives for mesh shader

- glsl: handle work group in layout for mesh shader

- glsl: add input builtin variables for mesh shader

- glsl: add mesh shader builtin outputs

- glsl: assign mesh shader output variable array size

- glsl: handle mesh shader output block

- glsl: add mesh shader builtin functions

- glsl: nir_build_program_resource_list support mesh shader

- glsl: gl_nir_link_glsl handle mesh shader

- glsl: validate MS/FS interstage in/out block

- glsl: handle per primitive varying when link

- glsl: validate MS/FS interstage in/out variable type

- glsl: disable mesh shader output remove when separate shader

- glsl: pack vertex pipeline varying linkage into a function

- glsl: pack varying limit check code into functions

- glsl: add mesh pipeline varying linkage

- glsl: handle mesh shader when optimize varying

- glsl: handle explicit location for mesh shader

- glsl: lower shared and task playload for mesh shader

- glsl: no xfb buffer qualifier for mesh shader

- glsl: flat qualifier is not needed for per primitive IO

- glsl: translate mesa stage for mesh shader

- glsl: allow barrier builtin functions for mesh shader

- gallium: fix eglExportDMABUFImageQueryMESA crash for r600

Quentin Schulz (3):

- nvk: remove unused relative_dir variable

- meson: replace global_source_root/global_build_root with project_*

- meson: fix libcl assert() reproducibility

Renato Pereyra (1):

- anv: Enable anv_emulate_read_without_format for Android 15+

Rhys Perry (107):

- aco/lower_phis: add bld_before_logical_end helper

- nir/divergence: ignore boolean phis for ignore_undef_if_phi_srcs

- aco: optimize s_and(s_cselect, exec)

- aco: stop labeling first def of and(uniform_bool/uniform_bitwise, exec)

- aco: don’t both flip s_cselect and label uniform_bool

- aco/opt: add some comments

- aco: optimize uniform s_not

- aco/isel: optimize uniform vote

- 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/opt_access: support RT/callable shaders

- nir/load_store_vectorize: check for interfering shared2 before vectorizing

- nir/load_store_vectorize: set is_store for shared append/consume

- nir/load_store_vectorize: always set num_components correctly

- glsl_to_nir,vtn: insert barriers around begin/end invocation interlock

- ac/nir/lower_ps: remove barrier for end_invocation_interlock

- aco/gfx12: fix printing of temporal hints

- aco: align scratch size after isel

- aco: fix possible scratch offset overflow

- vtn: fix placement of barriers for MakeAvailable/MakeVisible

- nir: don’t move accesses across make visible/available barriers

- vtn: remove acquire/release around make visible/available barriers

- nir/lower_memory_model: remove empty lowered barriers

- aco/ra: set late-kill for operands of temporary p_create_vector

- nir: add global_amd to nir_get_io_offset_src/nir_get_io_index_src

- nir/opt_load_skip_helpers: move divergence check earlier

- nir/opt_load_skip_helpers: always require helpers for handles

- nir/search: add nir_search_state

- nir/search: don’t clear empty hash tables

- nir/search: reorder match_value to check constants first

- nir: add nir_def_num_lsb_zero

- nir/algebraic: improve is_unsigned_multiple_of_4 and use it more

- nir/algebraic: allow non-const for iand(iadd()) -> iadd(iand())

- nir/load_store_vectorize: use nir_def_num_lsb_zero in check_for_robustness

- nir/load_store_vectorize: use nir_def_num_lsb_zero in calc_alignment

- device-select: clang-format

- device-select: move get_default_device to it’s own file

- device-select: simplify adding/removing instances

- device-select: do all getenv during instance creation

- device-select: use debug_get_bool_option for FORCE_DEFAULT_DEVICE

- device-select: refactor device_select_get_default

- nir/divergence: make smem load_global_amd uniform

- drm-shim: use atomics for inited

- drm-shim: fix with asan

- aco: fix signed integer overflow

- radv: fix shift overflow in radv_pipeline_init_dynamic_state

- vtn: use vtn_has_decoration more

- nir/load_store_vectorize: refactor offset parsing

- nir/load_store_vectorize: refactor entry key creation

- nir/load_store_vectorize: call nir_def_num_lsb_zero less

- nir/load_store_vectorize: optimize accesses with u2u64(ishl.nuw(iadd))

- nir/opt_offsets: report progress if NUW is set

- nir/opt_offsets: fix progress determination with offsets that add to zero

- nir/opt_offsets: improve shared2 optimization

- nir/load_store_vectorize: remove offset check in try_vectorize_shared2

- aco: reduce cost of using values defined in predecessors

- aco: add is_atomic_or_control_instr helper

- aco: don’t move release barriers after interlock end

- aco: don’t move acquire barriers before interlock begin

- aco: refactor waitcnt pass to use barrier_info

- aco: add a separate barrier_info for release/acquire barriers

- aco: delay barrier waitcnt until they are needed

- aco: remove waitcnt code for SMEM stores

- aco: remove waitcnt code for POPS

- aco: update waitcnt events for exports

- aco: use a separate event for sendmsg_rtn

- aco: fix workgroup-scope barrier between vmem and lds

- aco/gfx10: skip waitcnts or use vm_vsrc(0) for workgroup vmem barriers

- aco/gfx10: skip waitcnts or use vm_vsrc(0) for workgroup lds barriers

- aco/tests: add barrier-to-waitcnt tests

- aco: avoid wraparound for smem global loads with both offsets

- aco: avoid unaligned offsets when selecting load_global_amd

- zink/ntv: fix coherent image load/store

- vtn: skip make-available/visible for shared

- zink/ntv: use MakePointerAvailable/Visible for shared load/store

- nir/lower_atomics_to_ssbo: set ACCESS_COHERENT for loads

- nir/lower_atomics: set ACCESS_COHERENT

- aco: workaround load tearing for load_shared2_amd

- aco: fix SGPR 8-bit nir_op_vec with mixed constant and non-constant

- ac/nir: fix progress reporting in ac_nir_lower_tex

- nir: fix progress reporting in nir_io_add_const_offset_to_base

- radv: fix progress reporting in lower_rt_derefs

- nir/opt_if: fix progress reporting with multiple function impls

- nir/opt_if: rewrite progress reporting and metadata invalidation

- nir: fix NIR_DEBUG=extended_validation

- nir: add NIR_DEBUG=progress_validation

- rusticl: support NIR_DEBUG=invalidate_metadata/extended_validation

- rusticl: support NIR_DEBUG=progress_validation

- aco: remove buffer_load_lds instructions

- nir: add ACCESS_ATOMIC

- vtn: set ACCESS_ATOMIC

- zink/ntv: use ACCESS_ATOMIC

- nir,vtn: add shader_info::assume_no_data_races

- nir: assume non-atomic loads don’t tear

- aco: only workaround load tearing for atomic loads

- aco: set atomic semantic for atomic load/store

- aco: remove barrier acquire/release workaround

- aco: use MTBUF for 64-bit atomic load/store

- radv: move nir_opt_algebraic loop for NGG culling earlier

- radv: only call radv_should_use_wgp_mode() once

- radv: use CU mode when LDS is used

- radv: allow WGP mode with task/mesh

- amd/lower_mem_access_bit_sizes: don’t create subdword UBO loads with LLVM

- amd/lower_mem_access_bit_sizes: improve subdword/unaligned SMEM lowering

- amd/lower_mem_access_bit_sizes: be more careful with 8/16-bit scratch load

- amd/lower_mem_access_bit_sizes: fix shared access when bytes<bit_size/8

Ritesh Raj Sarraf (8):

- ci: Update to Linux 6.16 for gfx-ci

- ci: Add test streaming-texture-leak to all-skips

- panfrost/ci: Document new/known flakes

- radv/ci: Update flakes uncovered during testing

- venus/ci: Add test to skips list

- ci: Uprev kernel to pick up virtio fix and use it for venus

- ci: Update to latest revision from ci-deb-repo

- ci/android: Use prebuilt cuttlefish packages from ci-deb-repo

Rob Clark (99):

- freedreno/decode: Add enum value decoding

- freedreno/crashdec: Sanitize index-regs section names

- freedreno/crashdec: Add option to export a snapshot

- freedreno/registers: Fix DBGC_CFG_DBGBUS_SEL_D definition

- util: Optimize MESA_TRACE_FUNC()

- freedreno: Remove obsolete comment

- freedreno: Add debug option to crash on context fault

- freedreno/drm: Rename emit_bo

- freedreno/drm: Split out sp_attach_ring()

- freedreno/drm: Split emit/attach obj/nonobj

- freedreno/drm: Expose attach_ring()

- freedreno/registers: Fix array reg names

- freedreno/registers: Add some reg64 to pm4

- freedreno/registers: Rename NCRB

- freedreno/registers: Fix SP_CS_PVT_MEM_BASE type

- freedreno/registers: Fix RB_A2D_DEST_FLAG_BUFFER_PITCH

- freedreno: Drop unused emit_const_asserts() param

- freedreno/a6xx: Drop orval/shift

- freedreno/a6xx: Separate out blit setup

- freedreno/a6xx: Bake iova’s into descriptors

- freedreno/a6xx: Make samp descriptor an array

- freedreno/a6xx: Make tex/samp descriptors a normal BO

- freedreno/a6xx: Make __assert_eq() a nop if !NDEBUG

- freedreno/a6xx: Add new cmdstream builders

- freedreno/a6xx: Remove compute state user_consts_cmdstream_size

- freedreno/a6xx: Rename compute state to cp

- ir3: Don’t count images in num_samp

- freedreno/a6xx: Convert gallium to new cs builders

- freedreno/computerator: Split out context restore

- freedreno/computerator: Convert ubo state to BO

- freedreno/computerator: Convert to new cs builders

- freedreno/a6xx: Remove old reg builder macros

- freedreno/drm-shim: Fix nr_rings/priorities

- drm/drm-shim: Add a702

- freedreno/layout: Don’t align explicit layouts to page size

- freedreno/decode: Add missing varset check

- drirc: Work around ANGLE brokeness

- freedreno/registers: pm4 cleanup

- freedreno/decode: Fix ufixed/fixed decode of bitset fields

- freedreno/decode: lua support for <stripe>

- freedreno/drm-shim: Handle GET/SET_METADATA

- freedreno/registers: Add a way to disable deprecated warnings

- freedreno/registers: Generate variant builder always

- freedreno/a6xx: Convert to variant reg packers

- freedreno/computerator: Convert to variant reg packers

- freedreno/registers: Fix variant ranges

- freedreno/registers: Add implicit reg32 for empty arrays

- freedreno/registers: De-open-code some offsets

- freedreno/registers: Cleanup the bin_cntl’s

- freedreno/registers: Move descriptor related enums

- freedreno/registers: Prep for upcoming things

- freedreno/registers: Make TPL1_BICUBIC_WEIGHTS_TABLE an array

- freedreno: Name a few events

- freedreno/a6xx: Drop VPC table magic

- freedreno/a6xx: Require write support for images

- freedreno/a6xx: Disallow impossible image swizzles

- freedreno/a6xx: Mark tex and samp descriptors for dumping

- freedreno/a6xx: Format table fixes

- nir/lower-amul: Fix crash with unused SSBO

- nir/lower-amul: Comment fix

- freedreno/registers: Add A7XX_CX_DBGC

- freedreno/registers: Re-enable validation for gen_header.py

- freedreno/registers: Remove license/etc from generated headers

- freedreno/registers: remove python 3.9 dependency for compiling msm

- freedreno/registers: Generate _HI/LO builders for reg64

- freedreno/registers: Update GMU register xml

- freedreno/a6xx: Fallback to original blit in the snorm_copy path

- freedreno/blitter: Don’t ignore blit swizzle

- freedreno/a6xx: Add missing format

- freedreno/a6xx: Fix snorm rounding

- freedreno/devices: Update chicken bits

- freedreno/decode: Add test to check for conflicting regs

- freedreno/registers: Remove conflicting RBBM regs

- freedreno/registers: Fix x_CONTEXT_SWITCH_GFX_PREEMPTION_SAFE_MODE

- freedreno/decode: checkreg handling for bitsize/stride

- freedreno/decode/scripts: Add license comments

- freedreno/fdl: Set pitch for buffers

- freedreno/a6xx: Drop arbitrary import restrictions

- freedreno: Handle buffer import

- freedreno: Always use aux-ctx for export blits

- freedreno: Allow TC async fences to have an fd

- freedreno: Disable explicit sync heuristic for Xwayland

- freedreno/a6xx: Move reg to static-non-context

- freedreno/decode/crashdec: Limit snapshot BO size

- freedreno/afuc: Add missing varset check

- freedreno/registers: More register prep

- freedreno/registers: Rename some unknowns

- freedreno/registers: x_ADDR_MODE_CNTL is a6xx and earlier

- freedreno/registers: Fix a couple reg names

- freedreno/registers: Extract out bitset for roq_avail

- freedreno/decode: Add gen8 support

- freedreno/decode: Move enum lookup out of snapshot

- freedreno/registers: Common-ize PIPE definitions

- freedreno/registers: Add gen8 regs

- freedreno/registers: Add gen8 descriptor layout

- freedreno/registers: pm4 updates for gen8

- freedreno/a6xx: Slight re-org of sampler descriptor building

- freedreno/layout: Convert fd6_view to c++

- freedreno/layout: gen8 descriptor support

Rob Hughes (1):

- llvmpipe: Work around WSL 1 missing support for memfd_create()

Robert Mader (8):

- anv: Enable G8_B8_R8_3PLANE_422 and G8_B8_R8_3PLANE_444 formats

- gallium: Set and count all extra samplers

- mesa: Add support for NV61, NV24 and NV42 pixel formats

- panfrost: Add lowerings for the NV61, NV24 and NV42 pixel formats

- nir: Fixup 10/12 bit SW decoder YCbCr formats

- sw_winsys: Add winsys_handle to displaytarget_create_mapped

- kms-dri-sw: Implement create_mapped()

- kms-dri-sw: Report linear modifiers in get_handle()

Rohan Garg (1):

- intel/compiler: use the WA framework when emitting WA 14014595444

Rohit Athavale (6):

- mediafoundation: Add guids for the newly added Input Delta QP & Absolute QP APIs

- mediafoundation: Add IsSupported() & GetValue() for CODECAPI_AVEncVideoInputDeltaQPBlockSettings

- d3d12: Make delta QP min and max to be bit-depth dependent for HEVC

- pipe: Add pipe_enc_qpmap_input_info to contain GPU & CPU QP Maps

- d3d12: Update d3d12 back to use pipe_enc_qpmap_input_info

- mediafoundation: Lock QP Map Buffer when in use, unlock after

Roland Scheidegger (13):

- llvmpipe: minor cleanup

- llvmpipe: Fix array mismatch when accessing shader images

- llvmpipe: Fix attribute interpolation setup when rendering lines with msaa

- llvmpipe: Fix wrong pixel shader invocation count with discard

- llvmpipe: Fix wrong GS invocation count when using instanced GS

- llvmpipe: add bitcasts around fptrunc/fpext operations

- docs: fix up old comment about fake msaa for llvmpipe

- lavapipe: don’t leak the temporary msaa resource

- llvmpipe: fix incorrect scissor planes

- lavapipe: expose support for msaa 8x

- gallium,mesa/st: reverse logic for y flip for programmable sample locations

- llvmpipe: implement GL_ARB_sample_locations

- lavapipe: implement VK_EXT_sample_locations

Romaric Jodin (11):

- pan/bi: use only 1 MKVEC.v2i8 to generate v4i8 when possible

- pan/va: improve lowering of SWZ_V4I8

- pan/bi: add pass to simplify control flow

- pan/bi: schedule simple iterators to avoid extra move

- panfrost/perfetto: Use Android-internal perfetto

- meson: remove ‘–outdir’ argument in script

- meson: add vk_enum_defines.h to idep_vulkan_util_headers

- meson: add depend_files for gl_enums.py

- meson: update xml files list in mesa/glapi

- meson: sort xml files in mesa/glapi

- glapi: static_data: do not use __file__ to get gl symbols file

Ruijing Dong (2):

- radeonsi/vcn: vcn5 av1 decoding context buffer fix

- radeonsi/vcn: Correct a typo condition for jpeg decoding

Ryan Houdek (1):

- freedreno/fdl: Fix typo in tiled_to_linear_2cpp

Sagar Ghuge (24):

- intel/genxml: Update CS_CHICKEN1 register field

- anv: Use thread group preemption granularity

- vulkan/radix_sort: Fix subgroup invocation id

- anv: Use vk_get_bvh_build_pipeline_spv helper

- vulkan/runtime: Add VK_SHADER_CREATE_UNALIGNED_DISPATCH_BIT_MESA flag

- anv: Mask off excessive invocations

- intel/genxml: Drop all unused struct/fields

- intel/compiler: Fix ray geometry index

- anv: Add missing ACCELERATION_STRUCTURE_READ in barrier handling

- anv: Enable CS stall for ACCELERATION_STRUCTURE_COPY stage

- anv: Add missing L3 flushes

- anv: Apply pipe flushes for outstanding PC bits

- anv: Emit state cache invalidation after every compute dispatch

- blorp: Emit state cache invalidation after every compute dispatch

- iris: Emit state cache invalidation after every compute dispatch

- isl: Respect driconf option for EnableSamplerRoutetoLSC

- Revert “intel: Always set Cube Face Enables for all surfaces.”

- anv: Call brw_nir_lower_rt_intrinsics_pre_trace lowering pass

- brw/rt: Move nir_build_vec3_mat_mult_col_major helper to header

- brw/rt: fix ray_object_(direction|origin) for closest-hit shaders

- vulkan/runtime: Fix typo in stack size calculation

- anv: Use correct engine class for companion RCS

- anv: Drop unwanted untyped flush for AS query

- intel/common: Consider 0 threads while setting TG

Samuel Pitoiset (352):

- Revert “ci: Disable Valve keywords farm”

- radv: adjust conservative rasterization configuration on GFX12

- radv: use vk_optimize_depth_stencil_state() for optimal settings

- radv: add RADV_DEBUG=novideo to disable all video extensions

- radv: fix SQTT shaders relocation on GFX12

- radv: simplify emitting SQTT shaders relocation for GFX6-GFX11.5

- radv: fix reporting instance/vertex_count for direct draws with RGP on GFX12

- radv: reject 1D block-compresed formats with mips on GFX6

- zink/ci: update list of expected failures for NAVI31

- zink/ci: remove old gfx1200 lists

- radv/ci: fix list of expected failures for VEGA10/NAVI10

- radv: fix a memleak with GS copy shader NIR

- radv: emit PGM_HI_PS in the gfx preamble on GFX12

- radv: remove dead ES emit code on GFX12

- radv: invalidate compute/rt descriptors at pipeline bind time

- radv: stop passing compute shader to radv_dispatch()

- radv: rework graphics shaders/vbos prefetch sligthly

- radv: handle compute/rt prefetch like graphics

- radv: add radv_{before,after}_dispatch() functions

- radv: replace DGC before/after dispatch helpers with the new ones

- radv: fix fbfetch output with compresed FMASK on <= GFX9

- vulkan: fix missing presentId2/presentWait2 enable features

- docs: add missing VK_KHR_present_id/2 to features.txt

- ci: uprev VKCTS main to 9dd9a72b28218f1ca12777d9b73c2a85c5c60231

- ac/gpu_info,radv: use the maximum virtual address from the kernel

- radv: invalidate compute/rt descriptors at dispatch time

- zink/ci: skip spec@arb_fragment_program@fog-modes on RADV

- radv/ci: fix GPU hang detection regex with recent kernels

- zink/ci: reduce timeout of zink-radv-navi31-valve

- zink/ci: make zink-radv-navi31-valve a pre-merge job

- radv: precompute the mask for enabled color writes

- radv: precompute the mask for color write attachments

- radv: precompute color blend equations

- radv: track more CB related context registers on < GFX12

- radv: regroup CB related states emission together

- radv: tidy up radv_device_init_perf_counters()

- radv: introduce radv_cmd_stream

- radv: switch to radv_cmd_stream everywhere

- radv: move buffered registers for GFX12 to radv_cmd_stream

- radv: move context_roll_without_scissor_emitted to radv_cmd_stream

- radv: move tracked registers to radv_cmd_stream

- radv/ci: uprev kernel to 6.15.9

- radv: cleanup some redundant cmd_buffer->cs occurrences

- radv: remove cs parameter for all opt context emit helpers

- radv: remove cs parameter for gfx12 push SH reg helpers

- radv: implement RB+ depth-only rendering for better perf

- radv: fix destroying CS with RADV_PERFTEST=dmashaders

- ac,radv,radeonsi: fix programming PA_SU_PRIM_FILTER_CNTL on GFX12

- radv/amdgpu: fix creation with different but unused RADV_PERFTEST flags

- ac/descriptors: add a function to create a descriptor for HiZ surfaces

- radv: allocate image metadata to implement a workaround for HiZ on GFX12

- radv: add a function to create an image view for HiZ surfaces

- radv/meta: add a pass to clear HiZ surfaces

- radv: initialize HiZ metadata during image layout transitions

- radv/meta: update HiZ metadata after depth/stencil image clears

- radv: validate dynamic states earlier

- radv: implement an alternative workaround for HiZ on GFX12

- radv: fix reserving space for emitting push constants with DGC IES

- radv: remove redundant push constant size alignment for DGC

- radv: pass the IES struct when computing the DGC sequence size

- radv: pre-compute more information when updating DGC IES

- radv: optimize the preprocess buffer size for DGC IES compute

- radv: use radv_write_sampler_descriptor() for combined image/sampler

- radv: do not hardcode the combined image/sampler offset in the db path

- radv: only write 32 bytes for combined image/sampler on GFX11+

- radv: reduce the combined image/sampler desc size on GFX11+

- radv: remove useless inline push constant emission with DGC IES

- radv: stop using the pipeline layout for inlined push constants with DGC

- radv: split uploading push constants with DGC in two parts

- radv: stop using the pipeline layout for uploading push constants with DGC

- radv: tidy up radv_flush_descriptors()

- radv: slightly optimize indirect descriptor sets upload size

- radv: invalidating push constants for compute<->rt during dispatches

- radv: do not emit inlined SGPRs twice for merged shaders

- radv: use radv_shader_need_indirect_descriptor_sets() more

- radv: determine if push constants need to be uploaded earlier

- radv: rework emitting push constants for less CPU overhead

- radv: add a function that uploads push constants

- radv: remove unused forwarded declarations of pipeline layout

- radv: determine the push constant size from the shader itself

- radv: add a function to get push constant layout info for DGC

- radv: gather push constant size from shaders for DGC

- radv: stop using the pipeline layout completely for DGC

- radv: fix color attachment remapping with fast-GPL/ESO

- radv: merge two similar loops in lookup_ps_epilog()

- Revert “radv/ci: disable hang detection in navi31-vkcts”

- zink/ci: skip one piglit subset that randomly hangs on RADV

- zink/ci: update list of flakes for NAVI31/VANGOGH/CEZANNE

- amd/drm-shim: add navi33

- radv: emit relocation for task shaders at the same place as other stages

- radv: rework the helper to emit buffered regs on GFX12

- radv: emit compute pipeline with buffered SH regs on GFX12

- radv: emit descriptor pointers with buffered SH regs on GFX12

- radv: emit inlined push constants with buffered SH regs on GFX12

- radv/ci: update expected list of failures/flakes on GFX1201

- radv/ci: use 3 parallel jobs for radv-gfx1201-vkcts

- radv/ci: reduce the timeout for radv-gfx1201-vkcts

- radv/ci: make radv-gfx1201-vkcts a pre-merge job

- radv/ci: document a very recent ACO regression on GFX12

- zink/ci: make zink-radv-gfx1201-valve a pre-merge job

- zink/ci: update list of flakes for GFX1201

- radv: get the depth clamp mode earlier when emitting viewports

- radv: emit depth clamp enable as part of the viewport state

- radv: add a new dirty bit for the viewport state

- radv: precompute the depth clamp mode

- radv: precompute the depth clip enable

- radv: dirty some states from graphics pipeline earlier

- radv: do not emit few RADV_CMD_DIRTY_xxx based on dynamic states

- radv: only re-emit needed states when PS inner coverage changes

- radv: add a new dirty bit for the binning state

- radv: optimize re-emitting the occlusion query state on GFX12

- radv: validate dynamic states for the occlusion query state earlier

- radv: validate dynamic states for the db shader control state earlier

- radv: add a new dirty bit for the ngg culling state

- radv: add a new dirty bit for the FSR state

- radv: add a new dirty bit for the rast samples state

- radv: rename RADV_CMD_DIRTY_TESS_STATE to RADV_CMD_DIRTY_TCS_TES_STATE

- radv: add a new dirty bit for the depth bias state

- radv: dirty the depth stencil state when rendering begins

- radv: dirty the cb render state when rendering begins

- radv: dirty more states when rendering begins

- radv: add a new dirty bit for the VS prolog state

- radv: add a new dirty bit for the blend constants state

- radv: add a new dirty bit for the sample locations state

- radv: add a new dirty bit for the scissor state

- radv: make radv_cmd_state::dirty a 64-bit field

- radv: add missing L2 invalidate cache flush for non-coherent images

- radv: add a new dirty bit for the tess domain origin state

- radv: add a new dirty bit for the patch control points state

- radv: add a new dirty bit for the VGT prim state

- radv: remove radv_cmd_buffer_flush_dynamic_state()

- radv: remove dead code when setting dynamic primitive topology

- radv: dirty the rast sample states for VRS att/OOO rast

- radv: dirty RADV_CMD_DIRTY_xx states when binding sample shading state

- radv: dirty the rast samples state when VRS is forced to 1x1

- radv: rename rast_prim to vgt_outprim_type everywhere

- radv: stop abusing dirty_dynamic when binding a NULL fragment shader

- radv: clear RADV_CMD_DIRTY_xxx bits outside of the caller in most cases

- radv: fix hashing graphics pipeline when no stages are compiled

- radv: run nir_lower_memcpy after spirv->nir

- radv: run nir_opt_memcpy before nir_opt_copy_prop_vars

- radv/nir/lower_cmat: handle untyped pointers for load/store

- radv: advertise VK_KHR_shader_untyped_pointers

- radv: clear RADV_CMD_DIRTY_xxx bits outside of the caller in more cases

- radv: handle fbfetch output after binding graphics shaders

- radv: clear descriptors state dirty bit outside of the caller

- radv: add a new state for forced VRS rates

- radv: check if SQTT is enabled before calling radv_describe_draw()

- radv: check flush_bits before calling radv_emit_cache_flush() in the draw path

- radv: add radv_cmd_set_line_width()

- radv: add radv_cmd_set_tessellation_domain_origin()

- radv: add radv_cmd_set_patch_control_points()

- radv: add radv_cmd_set_depth_clamp_range()

- radv: add radv_cmd_set_depth_clip_negative_one_to_one()

- radv: add radv_cmd_set_primitive_restart_enable()

- radv: add radv_cmd_set_depth_bias()

- radv: add radv_cmd_set_line_stipple()

- radv: add radv_cmd_set_cull_mode()

- radv: add radv_cmd_set_front_face()

- radv: add radv_cmd_set_depth_bias_enable()

- radv: add radv_cmd_set_rasterizer_discard_enable()

- radv: add radv_cmd_set_polygon_mode()

- radv: add radv_cmd_set_line_stipple_enable()

- radv: add radv_cmd_set_depth_clip_enable()

- radv: add radv_cmd_set_conservative_rasterization_mode()

- radv: add radv_cmd_set_provoking_vertex_mode()

- radv: add radv_cmd_set_depth_clamp_enable()

- radv: add radv_cmd_set_line_rasterization_mode()

- radv: add radv_cmd_set_alpha_to_coverage_enable()

- radv: add radv_cmd_set_alpha_to_one_enable()

- radv: add radv_cmd_set_sample_mask()

- radv: add radv_cmd_set_rasterization_samples()

- radv: add radv_cmd_set_sample_locations_enable()

- radv: add radv_cmd_set_depth_bounds()

- radv: add radv_cmd_set_stencil_compare_mask()

- radv: add radv_cmd_set_stencil_write_mask()

- radv: add radv_cmd_set_stencil_reference()

- radv: add radv_cmd_set_logic_op()

- radv: add radv_cmd_set_color_write_enable()

- radv: add radv_cmd_set_color_write_mask()

- radv: add radv_cmd_set_logic_op_enable()

- radv: add radv_cmd_set_fragment_shading_rate()

- radv: add radv_cmd_set_attachment_feedback_loop_enable()

- radv: add radv_cmd_set_primitive_topology()

- radv: add radv_cmd_set_blend_constants()

- radv: add radv_cmd_set_discard_rectangle_mode()

- radv: add radv_cmd_set_discard_rectangle_enable()

- radv: add radv_cmd_set_depth_test_enable()

- radv: add radv_cmd_set_depth_write_enable()

- radv: add radv_cmd_set_depth_compare_op()

- radv: add radv_cmd_set_depth_bounds_test_enable()

- radv: add radv_cmd_set_stencil_test_enable()

- radv: add radv_cmd_set_stencil_op()

- radv: add radv_cmd_set_discard_rectangle()

- radv: make use of RADV_DYNAMIC_{VIEWPORT,SCISSOR}_WITH_COUNT

- radv: add radv_cmd_set_viewport_with_count()

- radv: add radv_cmd_set_scissor_with_count()

- radv: add radv_cmd_set_scissor()

- radv: add radv_cmd_set_viewport()

- radv: make radv_ps_epilog_state::color_blend_enable a 8-bit field

- radv: pre-compute color blend enable

- radv: add radv_cmd_set_color_blend_enable()

- radv: add radv_cmd_set_rendering_attachment_locations()

- radv: add radv_cmd_set_rendering_input_attachment_indices()

- radv: add radv_cmd_set_sample_locations()

- radv: add radv_cmd_set_color_blend_equation()

- radv: only update vertex stride if pStrides is non-NULL when binding VBO

- radv: use the dynamic state to store vertex binding strides

- radv: bind the vertex binding strides like a normal dynamic state

- radv: move radv_vertex_input_state to radv_pipeline_graphics.h

- radv: move VBO misaligned/unaligned info to radv_vertex_input_state

- radv: remove unused parameter to radv_pipeline_init_dynamic_state()

- radv: use the dynamic state to store vertex input state

- radv: replace an assertion with a check when emitting VS prolog

- radv: bind the vertex input state like a normal dynamic state

- radv: fix setting VBO misaligned mask in graphics pipelines

- radv: allow to select a different HiZ workaround on GFX12

- radv: add RADV_GFX12_HIZ_WA to select the HiZ wa behavior on GFX12

- radv: rename NGG culling user SGPRs

- radv: split RADV_CMD_DIRTY_NGGC_STATE in two states

- radv: clear dynamic states earlier

- radv: use radv_get_vgt_outprim_type() to disable NGGC for points/lines

- radv: use radv_get_vgt_outprim_type() for the NGG SGPRs state

- radv: add an early return to radv_flush_vertex_descriptors()

- radv: emit BREAK_BATCH when the PS changes also for ESO

- radv: cleanup configuring AUTO_RESET_CNTL

- radv: dirty the raster state when setting the primitive topology

- radv: pre-compute tessellation num patches/lds size earlier

- radv: do not trigger PATCH_CONTROL_POINTS_STATE on GFX12

- radv: rename DIRTY_PATCH_CONTROL_POINTS_STATE to DIRTY_LS_HS_CONFIG

- radv: remove unnecessary ternary expressions in radv_emit_depth_stencil_state()

- radv: translate stencil op earlier

- radv: fix compiler warnings when uploading cmdbuf data might fail

- radv: remove unused radv_pipeline::user_data_0

- radv: remove set but unused has_nggc in radv_cmd_state

- radv: remove set but unused radv_graphics_pipeline fields

- radv: remove unnecessary radv_graphics_pipeline::is_ngg

- radv: disable VK_EXT_image_compression_control on GFX12

- radv/rt: only use one user SGPR for the traversal shader addr

- radv/rt: fix a potential issue with RADV_PERFTEST=dmashaders

- radv/ci: remove RADV_DEBUG=novideo for radv-gfx1201-vkcts

- radv: mark RADV_DEBUG=nodynamicbounds as deprecated

- radv: mark RADV_DEBUG=invariantgeom as deprecated

- radv: mark RADV_DEBUG=splitfma as deprecated

- radv: mark RADV_DEBUG=nongg_gs as deprecated

- radv: move drirc options to a separate struct

- radv: move features related drirc to radv_drirc::features

- radv: move performance related drirc to radv_drirc::performance

- radv: move debug related drirc to radv_drirc::debug

- radv: move misc related drirc to radv_drirc::misc

- radv: fix vk_error in radv_update_preambles()

- radv/amdgpu: add a function to query permitted context priorities

- radv: only expose permitted global queue priorities

- radv: rework the optimal packet order for “normal” draws

- radv: rework the optimal packet order for task/mesh draws

- radv: rework the optimal packet order for dispatches

- radv: rename radv_flush_occlusion_query_state()

- radv: simplify sample shading state tracking

- radv: determine which shader is the last VGT shader using next stage

- radv: trigger VS related states in radv_bind_pre_rast_shader()

- radv/meta: use radv_CmdDispatchBase() directly for ASTC decode

- radv: add small helper to dispatch RT

- radv: remove unnecessary NULL check when creating PS epilogs

- radv: add a function to bind a PS epilog

- radv: add a new dirty bit for compiling/binding a PS epilog

- radv: add a new dirty bit for emitting a PS epilog

- radv: rename RADV_CMD_DIRTY_FS_STATE to RADV_CMD_DIRTY_PS_STATE

- radv: exclude dynamic vertex input stride for the late scissor workaround

- radv/amdgpu: return OOM device when BO mapping fails

- radv/amdgpu: add more helpers for managing virtual BOs

- radv: add RADV_DEBUG=bo_history

- Revert “radv: handle fbfetch output after binding graphics shaders”

- radv: emit more push shader registers on GFX12

- radv: report an message when RADV_GFX12_HIZ_WA value is invalid

- radv: replace RADV_GFX12_HIZ_WA by a drirc option

- radv: switch to the full HiZ workaround by default on GFX12

- radv: disable radv_disable_hiz_his_gfx12 for Mafia Definition Edition

- radv: set radv_gfx12_hiz_wa=partial for some games to mitigate performance loss

- zink/ci: mark one test as crash/flake for turnip a618

- radv: get NIR options after initializing the physical device cache key

- radv: fix capture/replay with sampler border color

- spirv: add missing non-uniform access for SSBO atomics

- radv/meta: fix saving push constants for depth/stensil resolves on compute

- radv/meta: rework depth/stencil resolves using compute

- radv/meta: rework depth/stencil resolves using graphics

- radv/meta: remove useless VK_ACCESS_2_SHADER_WRITE_BIT for subpass resolves

- radv/meta: simplify barriers for resolves

- radv/meta: simplify calling depth/stencil resolve helpers

- radv/meta: remove useless assertion when choosing resolve method

- radv: pre-compute the number of rasterization samples

- radv: pre-compute the line rasterization mode

- radv: pre-compute vgt_outprim_type

- radv: remove redundant RADV_DYNAMIC_PRIMITIVE_TOPOLOGY

- radv: remove redundant RADV_DYNAMIC_LINE_RASTERIZATION_MODE

- radv: remove redundant RADV_DYNAMIC_POLYGON_MODE

- radv: remove redundant RADV_DYNAMIC_RASTERIZATION_SAMPLES

- radv: set DRLR mapping info from inheritance info when present

- radv: add a helper whether shader fp16 is enabled

- radv/ci: document recent unexpected failures on TAHITI

- Revert “radv/ci: document recent unexpected failures on TAHITI”

- radv: only expose AMD_device_coherent_memory if actually supported

- radv: reserve more CS space when executing DGC calls

- radv/ci: update expected list of failures for VEGA10/NAVI10

- radv: lower ycbcr tex instructions earlier

- radv: lower embedded/immutable samplers earlier

- radv: fix expected disk cache size for meta shaders

- nir: adjust nir_tex_instr_need_sampler() for AMD FMASK instructions

- radv: remove useless radeon_cmdbuf forwarded declaration

- ac/sqtt: use void pointers for start/stop CS

- ac/cmdbuf: introduce ac_cmdbuf

- radeonsi: replace radeon_cmdbuf_chunk by ac_cmdbuf

- radv: replace radeon_cmdbuf by ac_cmdbuf completely

- radv,radeonsi: use new ac_cmdbuf macros

- radv: do not initialize HiZ on transfer queue on RDNA4

- radv: use force_indirect_desc_sets when creating RT prologs

- radv: rename indirect_descriptor_sets to indirect_descriptors

- radv: rename shader arg descriptor_sets to descriptors

- radv: make radv_descriptor_get_va() a static function

- radv: rename radv_mark_descriptor_sets_dirty()

- ac/surface: fix host image copies with 96-bits formats

- ac/surface: fix host image copies with stencil-only

- radv: allow VK_FORMAT_S8_UINT with host image copy

- vulkan/runtime: fix memleak when creating ETC pipelines

- radv/rt: fix memory leak in lower_rt_instructions_monolithic()

- radv: fix shaders memleak when importing pipeline binaries with GPL

- radv/meta: pass image formats to radv_meta_resolve_{hardware,fragment}_image()

- radv/meta: re-use radv_meta_resolve_{fragment,hardware}_image() for subpass resolves

- radv/meta: pass iview formats for subpass resolves

- radv/meta: remove radv_cmd_buffer_resolve_rendering_{hw,cs,fs}

- radv: enable the global BO list by default

- radv: only return identicalMemoryLayout for linear images

- radv: always return optimalDeviceAccess=TRUE for block-compressed formats

- radv: declare a new user SGPR for dynamic descriptors

- radv: upload and emit dynamic descriptors separately from push constants

- radv: allow to inline all push constants even with dynamic descriptors

- radv: use COPY_DATA_DST_MEM when writing timestamps

- amd,radv: add ac_emit_cond_exec()

- amd,radv: add ac_emit_write_data_imm()

- amd,radv,radeonsi: add ac_emit_cp_wait_mem()

- amd,radv,radeonsi: add ac_emit_cp_acquire_mem_pws()

- amd,radv,radeonsi: add ac_emit_cp_release_mem_pws()

- radv: use ac_emit_cp_{acquire,release}_mem_pws() when syncing GE rings

- amd,radv,radeonsi: add ac_emit_cp_copy_data()

- amd,radv,radeonsi: add ac_emit_cp_pfp_sync_me()

- ci: uprev VKCTS main to db48c34bebaf3359453e44ab151a2ff9f9c58eb2

- radv/ci: bump timeout for radv-gfx1201-vkcts to 5 minutes more

- radv: dirty dynamic descriptors when required

- radv: ignore dual-source blending when blending isn’t enabled for MRT0

- radv: add a workaround for illegal depth/stencil descriptors with No Man’s Sky

- aco: fix reserving VGPRs for 64-bit attributes in VS prologs

- radv,aco: wait for all VMEM loads when the prolog loads large 64-bit attributes

- radv: add vk_wsi_disable_unordered_submits and enable for GTK

Serdar Kocdemir (2):

- gfxstream: fix warnings about unused parameters

- gfxstream: Enable VK_MVK_macos_surface for host dispatch

Sergi Blanch Torne (19):

- ci: fix gc2000 fails duplication

- ci,crnm: migrate colorama to rich

- Revert “ci: Temporarily hardcode S3 artifact path”

- Revert “ci: Fix for GitLab 18.2.2 upgrade”

- ci: disable Collabora’s farm due to maintenance

- ci: fix requirements file

- Revert “ci: disable Collabora’s farm due to maintenance”

- ci,marge_queue: encapsulate monitor loop

- ci,marge_queue: enhance script interruption

- ci,marge_queue: objects to represent the queue

- ci,marge_queue: refactor the get queue method

- ci,marge_queue: protect form transient errors

- ci,marge_queue: encapsulate GitLab module queries

- ci,marge_queue: queue element formatting

- docs,marge_queue: document the tool usage

- ci,marge_queue: handle GitLab auth exception

- ci,marge_queue: use rich module

- ci,marge_queue: introduce testing

- ci: Add missing aiohttp Python dependecy

Sergi Blanch-Torne (3):

- ci: disable Collabora’s farm due to maintenance

- Revert “ci: disable Collabora’s farm due to maintenance”

- ci: disable Collabora’s farm due to maintenance

Sergii Ushakov (1):

- android: moving HMI symbol to separate file

Sergio Lopez (1):

- hk: fix instance reference in vk_free

Seán de Búrca (14):

- rusticl: move debug logging to the end of the build step

- rusticl: disentangle `ProgramBuild` state from kernel compilation

- rusticl: clarify naming of program-related structs and fields

- rusticl: release borrow on device build before linking

- rusticl: consolidate linking code

- rusticl: add abstraction for `util_queue`

- rusticl: introduce intermediate header object

- rusticl: restructure program build to prepare for parallelization

- rusticl: execute program builds as jobs on a worker thread

- rusticl: adjust naming and assert usage for clarity

- rusticl/kernel: delay calculation of CSO info until kernel creation

- nak: remove boxing of instructions

- rusticl/kernel: add Kernel::mut_ref_from_raw()

- rusticl/kernel: remove mutexes from kernel structure

Sid Pranjale (1):

- docs: mark VK_KHR_depth_clamp_zero_one as done for NVK

Sil Vilerino (16):

- mediafoundation: Fix recon pic two pass VPBlit target

- mediafoundation: Do GPU-GPU encoder sync for two-pass input vpblit

- d3d12: Fix two pass flag setting and rate control dirty flag check

- d3d12: Fix double video encode resource barrier for DPB/recon pic resources

- d3d12: Implement d3d12_context_queue_priority_manager

- mediafoundation: Implement d3d12_context_queue_priority_manager and related ICodecAPI

- mediafoundation: Check driver caps for intra-refresh CodecAPI advertisement

- d3d12: Check slice support for PIPE_VIDEO_CAP_ENC_INTRA_REFRESH support

- d3d12: Fix leak d3d12_context::priority_manager_lock

- mediafoundation: Fix leak mft_context_queue_priority_manager::m_lock

- ci: Bump DirectX-Headers and Agility SDK dependencies to 1.618.1

- pipe: Add video encode spatial adaptive quantization interface

- d3d12: Implement video encode spatial adaptive quantization interface

- d3d12: Remove Agility v717 guards for features now available in v618

- mediafoundation: Remove Agility v717 guards for features now available in v618

- mediafoundation: Implement video encode spatial adaptive quantization interface

Silvio Vilerino (8):

- d3d12: Fix typo in cast when reading pipe_h265_enc_picture_desc::gpu_stats_psnr

- mediafoundation: Use lower size estimations for compressed output bitstream sizes

- d3d12: Use lower size estimations for compressed output bitstream sizes

- d3d12: Allow frontends to set_video_encoder_max_async_queue_depth() to manage encoder memory overhead

- d3d12: Fix video encoder async depth fence wait off by one bug

- mediafoundation: Use d3d12 extension set_video_encoder_max_async_queue_depth to save memory in low latency (no async/in flight frames)

- d3d12: Video encode - Check driver caps to determine which output stats are supported

- mediafoundation: mftransform async slices parsing, avoid heap allocation inside loop

Simon McVittie (2):

- vulkan: Consistently form driver library names as prefix + name + suffix

- vulkan: Compute path to write into JSON manifests once, use it everywhere

Simon Perretta (251):

- wsi/display: make HDR_OUTPUT_METADATA, Colorspace properties optional

- nir/nir_lower_calls_to_builtins: trivially handle IA64 mangled functions

- pvr: start moving over to using the vulkan runtime vertex input state

- pco: handle replicated components when translating nir alu srcs

- pvr: default varyings interpolation to smooth when not set

- pco: amend index register mapping

- pco: enable all expected types for vertex i/o

- pvr: amend incorrect format assertions

- pvr: support getting device info from public name

- pco: pygen: support passing custom refs to enc_ops

- pco, pygen: support more comparison ops and types

- pco: support shift ops

- pco, pygen: support integer add/mul/mad ops

- pco, pygen: support gradient/derivative ops

- pco: commonize and improve iteration helpers

- pco: support re-indexing loops and ifs

- pco: amend cf printing indentation

- pco: pygen: amend op mod print strings

- pco: fix idx reg print colors and sq brackets

- pco: control-flow epilogue/interlogue/prologue boilerplate

- pco: switch to glsl/list, add control flow boilerplate

- pco: skip over empty blocks when iterating instructions

- pco, pygen: differentiate between int and float ref mods

- pco: add virtual register support

- pco: primitive bool support

- pco: pygen: propagate selected source for ops with multiple source selections

- pco: pygen: support applying modifiers to OpRefs

- pco: pygen: add control-flow and branch ops

- pvr, pco: initial ssbo and atomics support

- pco, pygen: support test predicate setting

- pco: initial control-flow support

- pco, pygen: expose enhanced logical ops with optional mask

- pco: add support for various selection, complex, trig ops

- pco: add support for more bitwise and bitfield ops

- pvr, pco: add base compute support

- pco: experimental regalloc changes

- pvr: pack image/texture array size unconditionally

- pvr: preliminary support for combined image samplers

- pco: add uadd64_32 op

- pco: add basic pass to shrink vecs with unused components

- pco: initial texture/sampler compiler support

- pvr: initial texture/sampler driver support

- pco: add support for using index(ed) registers

- pco, pvr: push constants support

- pco: basic arrayed image/sampler descriptor support

- pvr: storage image descriptor support

- pco: add boilerplate code for legalizing pseudo-ops

- pco: add helpers for phase iteration, print more igrp offset info

- pvr, pco: add support for buffer size intrinsic

- pco: rework nir processing and passes

- pvr, pco: usc program (pre-)generation boilerplate

- pco: add support for loops and ifs using predicated execution

- pco: update virtual register support for bools and nir reg translation

- pco: support integer abs/neg

- pvr: temporarily tweak support required for query programs

- pco, pygen: add mutex op

- pco: add intrinsic for loading instance num in slot

- pvr, pco: improve indexed reg support, add shared memory support

- pvr, pco: temporarily add supporting code for VK_KHR_zero_initialize_workgroup_memory

- pco: add initial support for shared atomics

- pco: experimentally propagate olchk mod for fwd prop opt

- pco: temporarily prevent shared mem (coeffs) and vregs from being copy proped

- pco: basic support for undefs

- pvr, pco: initial support for blend constants

- pco: suppress uses_sample_shading changes from nir_lower_blend

- pvr: enable logicOp feature

- pvr, pco: point sampler support

- pco: initial image support

- pvr, pco: per frag/vertex input/output rework

- pco: skip lowering fs outputs that aren’t present

- pco: add support for sscaled8* formats

- pvr: add descriptor copy support

- pco: lower {insert,extract}_[ui]{8,16} to bitfield ops

- pvr, pco: temporarily add legacy tq shader gen code

- pco: initial image write support

- pvr: initial texel buffer support

- pvr, pco: basic depth feedback/discard/terminate support

- pvr, pco: add input attachment sampler and initial support

- pvr: use mrt_resource output size for fs outputs and input attachments

- pvr: skip setting up unused fragment shader outputs

- pvr, pco: temporarily add legacy loadop shader gen code

- pvr: check for unused attachments

- pco, pvr: account for early frag testing

- pvr: sampler and sampled image descriptor support

- pco, pvr: sample mask out support

- pco: support combined depth/discard isp feedback

- pvr, pco: initial texture gather support with gather sampler

- pco: fully switch over to common smp emission code

- pco: basic image array support

- pco: branching fence support, simple ditr insertion logic

- pvr, pco: simple end-of-tile/render nir shader gen

- pvr, pco: switch to new nop shader

- pvr: drop legacy rogue compiler

- pco: support dce for vregs

- pco: further commonize iteration instruction emission

- pco: support indirect function temp refs

- pvr: initial sample rate shading support

- pco: add pass to split shader in/out struct/array vars across more slots

- pco: enable shrink vec opt

- pco: support shader i/o arrays of structs

- pco: temporarily treat already overridden refs as comps during regalloc

- pvr: remove vertex position output assertion

- pco: force image/texture array coordinate f2i32 conversions to be rtne

- pco: add pass to expand out vecs only used by comps

- pvr, pco: add support for gl_FrontFacing

- pvr: dynamically handle shademodel for flat shaded varyings

- pvr, pco: z-replicate support

- pvr, pco: image size query support

- pvr, pco: improved image write (with format) support, handle 111110

- pco: support render target/layer id intrinsic

- pco: add render target awareness to input attachments

- pco: temporarily make vecs interfere with their components during regalloc

- pco: restrict regalloc debug printing

- pco: add helpers for finding non-empty blocks, apply

- pco: skip comp-only opt on collated vecs

- pvr, pco: clip/cull distance support

- pco: temporarily prevent vectorization of vertex outputs

- pvr, pco: add support for robust buffer access

- pvr: texture swizzle depth/stencil fix

- pco: experimentally pre-propagate vectors during regalloc

- pco: remap buffer samplers to be 2d

- pco: basic image/texture cube support

- pco: add remaining texture buffer support

- pvr, pco: dynamic buffer and immutable sampler support

- pco: handle vector ra via parallel copy

- pvr: temporarily dword align *all* descriptors

- pco: temporarily aggressively prevent isp feedback reordering by opt passes

- pvr, pco: fragment shader metadata boilerplate code

- pvr, pco: additional multisample support

- pvr, pco: tile buffer support

- pco: experimentally transfer olchk to ops with refs requiring it

- pvr, pco: add dummy stores for tilebuffer-only loadops

- pvr: dynamic depth bias support

- pco: remove modifiers from instructions with variable src/dests

- pvr, pco: alpha to coverage support

- pco: full shared atomics support

- pco: improve image write using pck.prog

- pvr: fix multi-type varying allocations

- pco: fix split-type vertex attrib allocations/nir vars

- pco: lower vertex attrib vars first

- pco: add lower_io_array_vars_to_elements_no_indirects to preprocessing

- pco: legalize between movs1/mbyp without emitting additional ops

- pco: temporarily switch to basic lowering for [iu]mulextended

- pco: add ops needed to support fquantize2f16

- pco: support accessing shareds/coeffs >= 256

- pco: lower nir phi undefs to zero

- pco: handle offset calculation for empty blocks

- pco: support break/continue in loop body/outside if/else

- pvr: handle num workgroups in indirect compute

- pco: uncoalesce vecs that can’t be propagated

- pvr, pco: handle stencil input attachments

- pvr, pco: full support for tile buffer eot handling

- pco: temporarily don’t propagate pixout accesses in opt

- nir, asahi: commonize interleave_agx

- pco: image atomics support

- pco: scalarize push constant accesses

- pco: add write memory check before processing nir

- pco: add early nir opt pass

- pvr: select SPM EOT state words from render index

- pco: rematerialize load consts to reduce register pressure

- pco: amend early frag test/depthf logic for isp feedback

- pco: support skipping overlap check emission, enable for eot shader

- pvr: fix valgrind warnings for 64-bit unaligned access

- pco: ensure srcs/dests interfere for instructions with repeat > 1

- pvr: spilling enablement - allow empty uploads

- pco: spilling enablement - track barrier usage

- pvr, pco: experimental temp spilling

- pco: temporary spilling workarounds

- pvr, pco: temporary initial scratch memory support

- pvr, pco: implement VK_EXT_image_2d_view_of_3d

- pvr, pco: add VK_EXT_image_2d_view_of_3d sampled image support

- pvr: add support for VK_EXT_provoking_vertex

- pvr, pco: implement VK_EXT_depth_clamp_zero_one

- pvr, pco: implement alphaToOne feature

- pvr, pco: implement VK_EXT_color_write_enable

- pvr, pco: basic write without format support

- pco: support 1010102 snorm, [us]scaled formats

- pco: replace {un,}packing alu ops with intrinsics

- pvr: add a2b10g10r10 formats

- pvr: enable VK_EXT_extended_dynamic_state

- pco: handle remaining loadop depth formats

- pvr: width-based tq depth format selection

- pco: lower nir_b2b* ops

- pco: use nir_cf_{extract,reinsert} instead of inlining compute instance check

- pco: fix missing csbgen dependency

- pvr: fix missing types in x86 builds

- pco/opt: disable back-propagation of indexed registers

- pco/ra: properly handle non-dced instrs with unused defs

- vulkan: setup max_subgroup_size for drivers without varying/max/min size support

- nir: print loop unroll info if present

- pco: store additional metadata for precompiled shaders

- pvr, pco: enable pre-generated header string functions to work with clc

- pvr/csbgen: use stdint macro for unsigned 64-bit constants

- pco/usclib: switch to common defs

- pco: move uses_usclib flag into shader data

- pvr, pco: switch to clc state update shader

- pvr, pco: switch to clc nop shader

- pco/usclib: add some preprocessor helper macros

- pvr, pco: switch to clc vertex passthrough shaders

- pvr, pco: switch to clc query shaders

- pvr, pco: switch to usc generated clear attachment shaders

- pvr, pco: switch to usc generated zero-init workgroup memory shaders

- pvr: switch to usc generated spm load shaders

- pco/usclib: disable predicate control-flow in generated shaders

- pvr, pco: switch to clc load/store sr and idfwdf shaders

- pco: switch to using csbgen and clc helpers for tex/smp state {un,}packing

- pvr: merge legacy uscgen code into pvr_usc

- pvr/wsi: don’t advertise supports_modifiers

- docs/pvr: drop GX6250 from the active development hardware list

- vulkan/runtime: only set shader subgroup info if non-zero

- pco: add usclib build dependency on generated files

- mesa/st, nir: commonize unlower_io_to_vars pass

- pvr, pco: implement prerequisites for sampleRateShading

- pco: use interpolated input intrinsics for shader io

- pco: use nir_unlower_io_to_vars

- pvr, pco: track and implement workaround for brn74056

- pvr: add debug for missing sysvals

- pvr: enable sampleRateShading feature

- pvr, pco: allow fs sample rate to be dynamically set

- pco: discard invalid instances depending on the sample & valid masks

- pvr: enable independentBlend feature

- pvr: enable VK_FORMAT_D32_SFLOAT_S8_UINT

- pvr, pco: add multiview compiler support, advertise extension

- pco: treat all load_consts as 32-bit

- pvr, pco: support imageCubeArray feature

- pco: fully support Vulkan 1.2 image atomics

- pvr, pco: add minimal support required for Vulkan 1.2 subgroups

- pco: set lower_device_index_to_zero

- pvr: add support for VK_KHR_shader_draw_parameters, drawIndirectFirstInstance

- pvr, pco: add remaining support for eds2 & 3

- nir/lower_alpha: extend to support dynamic a2c

- pvr, pco: add primitive support for VK_KHR_robustness2.nullDescriptor

- pvr, pco: add primitive support for terminate,demote_to_helper}_invocation

- nir/unlower_io_to_vars: keep io bases intact when keeping intrinsics

- pco: apply rounding mode to relevant conversion ops

- pco: tidy and commonize conversion ops

- pco: improve early and late algebraic pass ordering

- pvr: amend tile buffer size calculation for eot

- pvr: amend num temps calculation when wg_size is not provided

- pco: ensure a variable exists for the multiview index

- docs/pvr: update hardware list

- pvr: advertise VK_KHR_sampler_mirror_clamp_to_edge

- pvr: advertise VK_KHR_shader_non_semantic_info

- pvr: advertise VK_KHR_shader_relaxed_extended_instruction

- pvr: advertise VK_EXT_shader_replicated_composites

- pvr: advertise VK_KHR_device_group_creation

- pvr: support VK_KHR_map_memory2

- pvr: support VK_EXT_map_memory_placed

- pvr: support VK_EXT_map_memory_placed.memoryUnmapReserve

- pco: add support for global memory

- pco/ra: abort if spilling fails

SoroushIMG (5):

- pvr: fix transfer fast clear color for srgb formats

- pvr: remove unnecessary asserts

- pvr: fix color values and crash for soft bg load ops

- pvr: add more helper format function for tq pbe formats

- pvr: set nn coords in sampler state for tq shaders when needed

Surafel Assefa (1):

- wsi: Implements scaling controls for DRI3 presentation.

Sushma Venkatesh Reddy (6):

- intel/compiler: apply sqrt workaround for Horizon Forbidden West shader

- intel/compiler: generalize workaround script name for broader applicability

- intel/compiler: Initial bits for SRND instruction

- brw: Add assembler support for SRND

- intel/compiler: Validation for SRND instructions

- intel/executor: Add examples for srnd

Sviatoslav Peleshko (3):

- anv: Always disable Color Blending for unused Render Targets

- mesa,driconf: Add WA to initialize vertex program outputs to vec4(0,0,0,1)

- driconf: Add vertex_program_default_out option for Penumbra: Overture

Tapani Pälli (17):

- isl/blorp: handle failing 96bpp linear blit case

- compiler/types: handle BFLOAT16 when decoding blob

- iris: remove stage_from_pipe and pipe_from_stage helpers

- intel/genxml: update CACHE_MODE_0 register for gfx200

- intel/dev: provide a helper to detect bmg g31 device

- iris/anv: toggle on CACHE_MODE_0::MsaaFastClearEnabled on BMG G31

- anv: change some image qualifiers as coherent for Last Of Us

- egl: allocate device info lazily only when queried

- anv: remove assert, group can have 0 shaders in it

- iris: setup bits for ARB_texture_filter_minmax with gfx9+

- blorp: add missing pipecontrol after 3DSTATE_WM_HZ_OP for Xe2+

- intel/blorp: add restriction for gfx12

- iris: add a check if blorp can support blitter copy

- anv: add cs stall for any pipe control on compute

- anv/blorp: add missing cs stall on compute pipe control

- anv: bring back some lost game drirc workarounds for subgroups

- anv: fix issues found with indirect data stride

Taras Pisetskyi (1):

- drirc/anv: force_vk_vendor=-1 for Wuthering Waves

TellowKrinkle (2):

- hk: Enable caching on memory marked with HOST_CACHED_BIT

- hk: Add non-cached memory type

Thibault Payet (1):

- venus: Use SYS_thr_self on FreeBSD instead of SYS_gettid

Thomas H.P. Andersen (4):

- anti-lag: pass a proper dataSize

- zink: do not overwrite existing error for miptail on uncommit

- nvk: implement VK_AMD_buffer_marker

- nvk: allow host image copy on non host visible heaps

Tim Van Patten (2):

- intel/ds: Skip expensive timestamp query until necessary

- intel: Convert getenv() to os_get_option()

Timothy Arceri (33):

- util: add workaround for Interstellar Rift

- glsl: move mark_array_elements_referenced() with ubo code

- glsl: add mark_array_elements_referenced() fast path

- glsl: rename setup_uniform_remap_tables()

- util: remove recursion from bitset helpers

- st/glsl: encapsulate more in st_nir_state_variable_create()

- st/glsl: fix packed uniform handling in st_nir_lower_fog()

- st/glsl: fix nir_lower_position_invariant()

- nir: move nir_lower_drawpixels() to the state tracker

- st/glsl: set driver locations in nir_lower_drawpixels()

- nir: move nir_lower_alpha_test() to the st

- st/glsl: set driver location in nir_lower_alpha_test()

- nir: move nir_lower_point_size_mov() to st

- st/glsl: set driver location in nir_lower_point_size_mov()

- st/glsl: set driver loc after lowering clipplane

- st/glsl_to_nir: dont add duplicate state tokens

- util: add range remap util

- glsl: make use of u_range_remap for uniform remapping

- glsl: remove now unused NumUniformRemapTable

- nir: fix uniform cloning helper again

- util: add shortcut for range remap inserts

- util: rewrite remap util to avoid looping list

- Revert “ci/freedreno: Skip overly-slow trace”

- Reapply “ci/freedreno: Skip overly-slow trace”

- util/range_remap: dont overwrite entry if ptr is NULL

- glsl/util: update util_range_remap to use range_remap struct

- util/range_remap: split list node from range entry

- util/range_remap: use child memory context for list

- util/range_remap: add util_range_switch_to_sorted_array() helper

- util/range_remap: switch to using sorted array

- Revert “Reapply “ci/freedreno: Skip overly-slow trace””

- mesa: skip redundant uniform update optimisation if unsafe

- glsl: assign block indices in the order they appear

Timur Kristóf (41):

- radv/amdgpu: Fix crash with RADV_DEBUG=noibs

- radv/amdgpu: Use correct NOP packets when unchaining a CS

- radv/amdgpu: Don’t use IB2 on GFX6 (for now)

- radv: Don’t set SWITCH_ON_EOI without tessellation

- radv: Don’t use EVENT_WRITE_EOS on GFX7

- radv: Clean up use of RELEASE_MEM on GFX7 MEC

- radv: Don’t use V_370_PFP or V_028A90_PS_DONE on compute queues

- radeonsi: Flush L2 for render condition when CP can’t use L2

- radeonsi: Fix some comments to also include GFX11.5

- radv: Add comment to document CP DMA prefetch

- radv: Flush L2 before CP DMA copy/fill when CP DMA doesn’t use L2

- docs: Add more details about the contribution process

- spirv: Always mark FS layer and viewport index inpus as flat

- ac/nir/ngg: Remove dead code for 64-bit mesh shader variables

- ac/nir/ngg: Fix scalarized mesh primitive indices

- radv/amdgpu: Rename use_ib to chain_ib

- radv: Rename RADV_DEBUG=noibs to noibchaining

- radv/amdgpu: Don’t assert chaining match when copying secondary IB

- radv/amdgpu: Add a helper function to emit NOP packets

- radv/amdgpu: Emit a single 4 dword NOP in chainable CS buffers

- radv/amdgpu: Small cleanup of counting submitted IBs

- ac/gpu_info: Add can_chain_ib2 field to ac_gpu_info

- radv/amdgpu: Support IB2 without chaining, enable on GFX6

- radv/amdgpu: Allow IB2 when primary CS isn’t chained

- radv: Pass correct queue family to radv_cs_emit_write_event_eop

- radv: Pass correct queue family in radv_emit_cache_flush

- radv: Call transfer copy functions from API functions, not helpers

- radv: Clarify image and image/buffer copy helper functions

- radv: Add amd_ip_type to radv_cmd_stream

- radv: Remove qf argument from radv_cs_emit_write_event_eop

- radv: Remove qf argument from radv_cp_wait_mem

- radv: Remove qf argument from radv_cs_emit_cache_flush

- radv: Remove qf argument from radv_cs_write_data (and _head)

- radv: Remove unneeded forward declaration of qf from dgc header

- radv: Remove qf from radv_spm/sqtt/perfcounter where applicable

- radeonsi: Don’t use compute queue with regalloc hang bug

- radv: Disable compute queues when the regalloc bug is present

- radv: Mitigate GPU hang on Hawaii in Dota 2 and RotTR

- radv: Document SWITCH_ON_EOP and WD_SWITCH_ON_EOP

- ac/nir/ngg_mesh: Lower num_subgroups to constant

- ac/nir/ngg: Fix scratch space for NGG GS streamout

Tomeu Vizoso (29):

- teflon: Reformat with clang-format

- pipe-loader: Implement loading of /dev/accel devices

- teflon/tests: Increase tolerance

- teflon: Query drivers on what operations they support

- etnaviv/ml: Implement ml_operation_supported() callback

- rocket: Initial commit of a driver for Rockchip’s NPU

- pipe-loader: Load the rocket accel driver

- teflon: Link to the rocket driver

- teflon: Add support for Reshape operations

- etnaviv/ml: Add support for no-op Reshape operations

- teflon: Add support for non-fused Relu operations

- etnaviv/ml: Add support for non-fused ReLU

- teflon: Add support for Absolute

- etnaviv/ml: Add support for Absolute

- teflon: Add support for Logistic

- etnaviv/ml: Add support for Logistic

- teflon: Add support for Subtract

- etnaviv/ml: Add support for Subtract

- teflon: Add support for Transpose

- etnaviv/ml: Support Transpose operation

- etnaviv/ml: Remove some skips that pass now

- teflon/tests: Remove dependency on xtensor

- teflon/tests: Replace YOLOX model with that from TI

- teflon: Add support for the MaxPool operation

- teflon: Add support for the StridedSlice operation

- teflon: Add support for the ResizeNearestNeighbor operation

- ethos: Initial commit of a driver for the Arm Ethos-U65 NPU.

- pipe-loader: Load the ethos accel driver

- teflon: Link to the ethos driver

Torge Matthies (2):

- wsi/display: Factor drmModeObjectProperties retrieval out of find_properties.

- wsi/display: Fix vkGetRandROutputDisplayEXT when connector is not leased yet.

Trigger Huang (2):

- virtio/vdrm: add ENABLE_DRM_AMDGPU for c_args

- radeonsi: Fix u_log_ctx for aux_context recreation

Utku Iseri (1):

- panvk: override can_present_on_device

Val Packett (1):

- radv: detect platform:virtio-mmio devices for virtgpu native context

Valentine Burley (101):

- ci/lava: Use UART for non-Chromebooks

- freedreno/ci: Increase concurrency for a618 jobs

- turnip/ci: Increase coverage of a618-vk, reduce parallelism

- freedreno/ci: Re-enable a618-gl job

- zink/ci: Run full zink-tu-a618 job pre-merge

- freedreno,zink+tu/ci: Document Piglit bug

- ci: Disable Valve keywords farm

- ci: Always save the artifacts for performance traces

- ci/angle: Update gn arg to avoid warning message

- lavapipe/ci: Add Android Hardware Buffer test set

- freedreno/ci: Update a6xx kernel to msm-next

- freedreno/ci: Remove a630 jobs

- freedreno/ci: Streamline using common a6xx-skips

- zink/ci: Only enable VVL for deqp on RADV

- zink/ci: Fix enabling VVL for RADV jobs

- zink/ci: Enable more VVL on ANV

- radeonsi/ci: Convert Fluster job to deqp-runner suite

- radeonsi/ci: Remove Fluster flakes, document failures

- ci/lava: Only keep structured_logger in lava-trigger container

- ci/lava: Use init-stage1 from Mesa build instead of inlining it

- vulkan/wsi/wayland: Enable 4444 formats

- zink/ci: Add pre-merge EGL coverage on ANV

- zink/ci: Drop duplicate full ANV deqp-runner suites

- ci/lava: Add x86_64 ASan job templates

- ci: Build more drivers in debian-x86_64-asan

- radv/ci: Use same deqp-runner suite for all RADV jobs

- radv/ci: Add an ASan RADV job on Cezanne

- intel/ci: Fix acer-chromebox-cxi4-puff concurrency

- zink/ci: Add an ASan job on CML

- radeonsi/ci: Increase Fluster job concurrency

- ci: Drop obsolete EGL skips

- zink/ci: Use Weston’s Xwayland instead of Xvfb

- softpipe/ci: Use Weston’s Xwayland instead of Xvfb

- virgl/ci: Use Weston’s Xwayland instead of Xvfb

- ci: Remove xvfb from test-base container

- freedreno/ci: Move a660-gl-cl job to nightly

- zink/ci: Skip flaky tests on CML due to HW deficiency

- zink/ci: Document flakes on ANV

- zink/ci: Add a prefix for X11 dEQP-EGL on ANV

- zink/ci: Document more flakes on ANV

- ci: Separate build and test container tags

- zink/ci: Run full zink-lavapipe job pre-merge

- zink/ci: Add EGL coverage on lavapipe

- zink/ci: Document recent flakes on TGL

- ci/fluster: Uprev Fluster

- ci/lava: Make Fluster vectors an optional overlay

- ci: Temporarily hardcode S3 artifact path

- anv/ci: Lower concurrency for nightly jobs

- anv/ci: Update expectations from nightly jobs

- zink/ci: Switch to quick_gl profile for nightly ANV jobs

- zink/ci: Update expectations from nightly jobs

- anv/ci: Run full anv-adl-angle job pre-merge

- anv/ci: Add a job replaying traces with ANGLE

- iris/ci: Add a new iris deqp job on Alder Lake

- zink/ci: Add EGL coverage on Turnip

- zink/ci: Document recent flakes on a618 with Turnip

- radeonsi/ci: Fix radeonsi-vangogh-glcts job definition

- freedreno/ci: Add missing caching proxy for traces

- tu: Advertise VK_EXT_shader_atomic_float

- ci/crosvm: Retry all curl errors when downloading kernel

- zink/ci: Disable zink-anv-cml-asan

- tu: Enable robustBufferAccessUpdateAfterBind

- zink/ci: Enable VVL for Turnip on a618

- zink/ci: Document recent a618 EGL flakes

- zink/ci: Add a new Minecraft restricted trace

- ci/crosvm: Add log sections for crosvm

- zink/ci: Disable ASan leak detection and re-enable zink-anv-cml-asan

- llvmpipe: Initialize src array in generate_fs_twiddle

- r300/compiler: Silence array-bounds warning

- imgui: Mark imgui dependencies as system includes

- imgui: Silence build warnings for imgui

- util: Update BLAKE3 from 1.5.1 to 1.8.2

- util: Disable Werror for BLAKE3

- meson: Relax -Wmaybe-uninitialized errors

- lavapipe/ci: Disable stack-use-after-return detection for ASan

- ci/gfxreconstruct: Bump version for compatibility with Debian 13

- ci/skqp: Add missing include to fix compilation errors on Debian 13

- ci/vkd3d: Disable Werror for vkd3d-proton

- ci/mold: Bump version for compatibility with Debian 13

- ci/lava: Update `fire` for compatibility with Debian 13

- ci/va: Bump va-tools version for compatibility with Debian 13

- ci: Bump ci-kdl version for compatibility with Debian 13

- ci: Update to Debian 13 (trixie)

- ci/android: Use aapt from Debian packages again

- ci: Uprev ci-templates to pull in new helpers

- zink/ci: Document flakes on Cezanne

- zink/ci: Re-enable ASan leak detection and drop VVL filter on CML

- ci/lava: Use lava-job-submitter from gfx-ci repo

- ci: Remove lava-job-submitter, LAVA containers, and tests

- ci/android: Upload arm64 Mesa driver builds

- ci: Rename ANDROID_GPU_MODE to CUTTLEFISH_GPU_MODE

- ci/android: Make Vulkan driver replacement conditional

- ci: Disable broken MR check in sanity job

- ci/lava: Make fastboot commands customizable

- freedreno/ci: Update kernel to pull in updated dtb

- freedreno/ci: Update expectations for a306 and a530

- freedreno/ci: Move a306 and a530 jobs to LAVA

- freedreno/ci: Remove baremetal job templates

- docs: Update LAVA caching setup

- tu: Fix indexing with variable descriptor count

- tu: Fix maxVariableDescriptorCount with inline uniform blocks

Vasily Khoruzhick (1):

- lima: ppir: index SSA nodes the same way as we index registers

Vignesh Raman (7):

- ci/lava: default CI_JOB_TIMEOUT to 3600 if unset

- ci/lava: add main() function to fix entry point

- ci/lava: make rootfs shell prompt configurable

- ci/lava: Move lava_job_submitter tests to lava folder

- ci/lava: bump ALPINE_X86_64_LAVA_TRIGGER_TAG

- ci/init-stage1: avoid duplicate mounts

- ci/container: add comment to bump image tag

Vinson Lee (2):

- panfrost: Remove duplicate variable ret

- gfxstream: Fix build error

Vitaliy Triang3l Kuzmin (6):

- .gitignore: Add KDevelop *.kdev4

- radv,ac: GFX10 depth/stencil HTILE mipmap bug info variable

- radv,ac: Split has_tc_compat_zrange_bug into Z and ZS, document it

- radeonsi: Disable TC-compatible HTILE when bug workarounds conflict

- radeonsi: Use radeon_info bug flags in TILE_STENCIL_DISABLE setup

- ac: Enable HTILE TC Z clear value bug workaround on GFX1013

Vlad Schiller (6):

- pvr: Enable VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT flag

- pvr: Enable VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT flag

- pvr: implement dynamically set vertex buffer strides

- pvr: Enable KHR_swapchain_mutable_format

- pvr: Implement VK_KHR_imageless_framebuffer

- pvr: Implement EXT_separate_stencil_usage

Wenfeng Gao (2):

- mediafoundation: support CODECAPI_AVEncVideoSatdMapBlockSize and MFSampleExtension_VideoEncodeSatdMap for SATD map.

- mediafoundation: look into using texture pool for metadata retrieval, e.g SATD, Bitsused map, etc.

X512 (1):

- NVK: report `VK_KHR_unified_image_layouts` extenstion support

Xaver Hugl (2):

- vulkan/wsi: require extended target volume support for scRGB

- vulkan/wsi: remove support for VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT

Yinjie Yao (3):

- radeonsi/vcn: Enable preencode on VCN5.0

- ac,radeonsi/vcn: Use correct swizzle_mode for vcn4

- ac/parse_ib: Update vcn ib parser to include missing commands

Yiwei Zhang (152):

- doc: fix section and android instruction linking for install page

- venus/virtgpu: drop mappable if blob size is smaller than requested

- venus: drop force_unmappable hack

- venus: refactor ahb import interface to take whole alloc info

- venus/virtgpu: use size zero to request mapping the entire blob mem

- venus: requests whole blob mem size for non-dedicated import

- venus/ci: udpate expectations from venus-lavapipe-full runs

- vulkan/android: add vk_android_get_ahb_image_properties

- vulkan/android: add vk_android_get_ahb_buffer_properties

- venus: adopt vk_android_get_ahb_buffer_properties

- venus/wsi: move wsi image format info validation to vn_wsi

- venus: adopt vk_android_get_ahb_image_properties

- venus: clean up post vk_android_get_ahb_image_properties adoption

- turnip: adopt vk_android_get_ahb_image_properties

- turnip: amend AHB buffer support

- vulkan/android: make vk_ahb_probe_format private to android runtime

- v3dv: adopt vk_android_get_ahb_image_properties

- v3dv: amend AHB buffer support

- lvp: hook up AHB image and buffer properties queries

- vulkan/android: improve AHB image format check logging

- 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

- lavapipe: adopt common vk_device_memory

- lavapipe: do not early return for mem alloc size being zero

- lavapipe: use common vk_device_memory::ahardware_buffer

- lavapipe: drop redundant memory type index tracking

- lavapipe: use common host ptr info

- lavapipe: use common export and import info tracked

- lavapipe: use common tracked size and override if needed

- u_gralloc/mapper4: properly expose ChromaSiting types based on api level

- lavapipe: ensure to use zero memoryOffset for wsi image alias binding

- lavapipe: improve image memory binding

- lavapipe: fix a leak on a lvp_image_create exit path

- lavapipe: fix maint4 vkGetDeviceBufferMemoryRequirements

- lavapipe: fix maint4 vkGetDeviceImageMemoryRequirements

- venus: add code owners

- vulkan/android: improve memoryTypeBits reporting in AHB props query

- venus: adopt vk_common_GetAndroidHardwareBufferPropertiesANDROID

- venus: rework AHB memory import

- venus: drop cached ahb buffer memory types

- venus: drop is_wsi tracking and some asserts

- venus: set wsi alias binding memoryOffset to zero

- nvk: clean up existing nvk_android frontend

- nak: do not hide drm header on Android

- nvk: clean up direct u_gralloc dep

- Revert “android: moving HMI symbol to separate file”

- venus/android: clean up leftovers from common AHB helpers adoption

- docs/android: add docs for preparing offline compilers

- docs/android: fix meson setup for Android cross-compilation

- docs/android: update cross file and add nvk instructions

- docs/android: drop pkg-config workaround from cross-file

- util/perf: amend missing atrace_init

- venus: drop vn_trace_init

- vulkan/wsi/headless: allow explicit modifiers

- vulkan/wsi/headless: drop redundant chain struct members

- venus: fix a race condition in ring shmem reuse

- vulkan/wsi/headless: acquire the most likely idle image

- vulkan/wsi/headless: drop the wsi_create_null_image_mem override

- vulkan/wsi/headless: clean up headless wsi device and headers

- vulkan/util: add missing vulkan header

- vulkan/util: no need to hide ANB property itself behind Android

- vulkan/util: update common properties code gen to use platform guard

- venus: stop consuming wsi_memory_signal_submit_info

- venus: layer vkQueueSubmit2 over vkQueueSubmit w/o sync2

- meson/android: drop redundant libdisplay-info dep

- venus: use VK_USE_PLATFORM_ANDROID_KHR when applicable

- venus: hide swapchainMaintenance1 behind wsi guard

- venus: expose KHR_present_id(2)/wait(2) support

- hasvk: advertise present_id/wait behind ANV_USE_WSI_PLATFORM

- anv: advertise present_id/wait behind ANV_USE_WSI_PLATFORM

- nvk: advertise present_id/wait and the 2 version

- panvk: no need to set DRI_CONF_VK_KHR_PRESENT_WAIT

- turnip: advertise present_id/wait behind TU_USE_WSI_PLATFORM

- radv: advertise present_id/wait behind RADV_USE_WSI_PLATFORM

- hk: no need to set DRI_CONF_VK_KHR_PRESENT_WAIT

- vulkan/wsi: drop obsolete wsi_common_vk_instance_supports_present_wait

- driconf: drop obsolete DRI_CONF_VK_KHR_PRESENT_WAIT

- venus: misc sync2 emulation fixes

- panvk: stub out Android ANB and AHB image handling

- panvk: resolve ANB (pre spec v8)

- panvk: implement deferred image creation

- panvk: ensure wsi memory is bound at offset 0

- panvk: add panvk_android_get_wsi_memory for AHB spec v8+

- panvk: add shared image support and advertise VK_ANDROID_native_buffer

- panvk: implement AHB image deferred init and memory alloc

- panvk: support VK_ANDROID_external_memory_android_hardware_buffer

- vulkan/android: amend a missing case for IMPLEMENTATION_DEFINED AHB

- anv: drop obsolete anv_create_ahw_memory

- anv: avoid setting image format twice for AHB image

- anv: adopt vk_android_get_ahb_image_properties

- anv: drop anv_ahb_format_for_vk_format

- anv: adopt common GetAndroidHardwareBufferPropertiesANDROID

- vulkan/android: support AHARDWAREBUFFER_FORMAT_YCbCr_P010 format mapping

- vulkan/android: refactor to retrieve AHB format properties once

- vulkan/android: support AHB query for VK_ANDROID_external_format_resolve

- panvk: drop an obsolete assert of explicit mod plane count

- docs/android: default to use -Dandroid-libbacktrace=disabled

- meson/android: amend the condition for libbacktrace

- nvk: refactor nvk_CreateImage error path

- vulkan/android: add an early return when there’s no wait semaphores

- vulkan/android: switch to vkQueueSubmit2

- vulkan/runtime: silence a -Wsometimes-uninitialized warning

- vulkan/android: skip queue submit with copy_sync_payloads

- vulkan/android: improve stage masks for semaphore ops

- mailmap: add Yiwei Zhang

- v3dv: use stack image for v3dv_GetDeviceImageSubresourceLayout

- vulkan: handle wsi private data properly

- anv: fix broken utrace

- radv: bind aliased wsi image at memory offset zero

- nvk: bind aliased wsi image at memory offset zero

- tu: drop redundant Android headers

- tu: simplify AHB image view format resolving for external format

- vulkan/util: drop unused vk_select_android_external_format

- tu: bind aliased wsi image at memory offset zero

- tu: properly implement VkBindMemoryStatus from maint6

- panvk: fix broken clock sync after using CLOCK_MONOTONIC_RAW

- intel/ds: VulkanApiEvent doesn’t rely on interning data

- intel/ds: simplify clock sync emit

- intel/ds: minor code clean up

- intel/ds: update GPU clock to be sequence-scoped when applicable

- panvk: fix blackhole bo error path to use MODE_IMMEDIATE for unmap

- panvk: fix image/buffer destroy to use MODE_IMMEDIATE for unmap

- vulkan/util: drop workaround for ANB struct

- panvk: use os_get_option instead of getenv

- pan/genxml: improve pandecode_dump_file_open logging

- pan/genxml: fall back to stderr when unable to create CS dump file

- pan/genxml: use process name to distinguish CS dumps

- panvk: add PANVK_DEBUG(category) to simplify debug control

- panvk: adopt PANVK_DEBUG(category)

- ci/panfrost: udpate panfrost-g610-fails to reflect latest stats

- panvk: fix to clear FPK with incompatible blend modes

- calendar: fix 25.3 branch names

- panvk: use mesa_logi for startup info logs

- panvk: log device and driver info for startup

- panvk: allow panvk_pool_alloc_mem to use full slab_size

- panvk: improve big_bo_pool bo utilization

- panvk: drop panvk_pool_upload helper

- panvk: improve error propagation in panvk_pool_upload_aligned

- panvk: fix to advance vs driver_set properly

- panvk: fix to advance vs res_table properly

- panvk: fix sample shading of internal blend shader for MSAA

- llvmpipe: zero is also a valid fd

- llvmpipe: fix udmabuf mmap error check

- llvmpipe: add a missing alloc error handling in fd import

- llvmpipe: misc fixes for sparse binding

- glcpp/meson: fix libglcpp generated header dependency

- panvk: fix mem alloc size for VkBuffer backed by imported blob AHB

Yonggang Luo (82):

- radv: Move the amdgpu.h defines for Win32 to ac_linux_drm.h

- addrlib: __debugbreak only present on Windows and from intrin.h

- util: Refactoring util_dl_get_path_from_proc out of clc/clc_helpers.cpp

- util: Add namespace over float16_t in half_float.h

- util: Upgrade xxhash.h to v0.8.3

- renderdoc: Upgrade to v1.5

- util: Remove usage of WIN32 macro for DETECT_OS_WINDOWS

- broadcom: gl_shader_stage_to_broadcom => mesa_shader_stage_to_broadcom

- gallium: Remove unused TRACE_FLAG_USER_BUFFER

- gallium/mesa: Change type of tgsi_shader_info::processor st_init_limits::sh to mesa_shader_stage

- microsoft/clc: {} for struct initialize to avoid warning

- microsoft/clc: Improve clc_compiler_test.cpp to use defined expect value

- microsoft/compiler: Fixes dxcapi.h compiling warning with mingw64-clang

- util: Remove dbghelp.h that already comes with winsdk and mingw for fix warning with mingw

- virgl: Fixes warning: cast to smaller integer type ‘unsigned long’ from ‘void *’ [-Wvoid-pointer-to-int-cast]

- virgl: Fixes differs in parameter lists

- ci/windows: Enable virgl for MSVC

- aco: Fixes warning note: ambiguity is between a regular call to this operator and a call with the argument order reversed

- lavapipe: Revise HAVE_LIBDRM to guard on drm only variables

- util: Update DETECT_ARCH_X86_64 to exclude _M_ARM64EC

- util: Add DETECT_ARCH_ARM64EC for defined(_M_ARM64EC) equivalent

- util: Now DETECT_ARCH_X86_64 can be safely used in rounding.h

- d3d10umd: Fixes building with mingw/gcc and windows sdk/ddk 10.0.26100.0

- va: Remove unused variable pscreen

- va: Use { 0 } initialize struct

- amdcommon: Use { 0 } initialize struct for .c files

- radv: Fixes warning implicit conversion from enum type

- radv: Fixes warning C5287: operands are different enum types ‘VkShaderStageFlagBits’ and ‘<unnamed-enum-RADV_GRAPHICS_STAGE_BITS>’; use an explicit cast

- radv: Fixes warning C5287: operands are different enum types ‘rgp_sqtt_marker_event_type’ and ‘rgp_sqtt_marker_general_api_type’;

- mesa: Remove unused assyntax.h and update related files

- ci: remove non-existent files in ci watch list

- meson: Remove redundant TODO:

- util: Add DETECT_ARCH_SPARC64 for sparc

- mesa: Remove usage of USE_*ASM in mesa/main/debug.c

- util: Remove usage of USE_**_ASM macros

- vc4: Remove the usage of USE_ARM_ASM

- mesa: refactor the glapi/tls includes into a single, reused header

- mesa: Remove duplicated deceleration of _mesa_glapi_tls_Dispatch _mesa_glapi_tls_Context

- meson: Remove unused with_asm_arch and USE_*_ASM macros

- microsoft/clc: Fixes gcc 14 compile warning about sign-compare

- microsoft/clc: Fixes gcc 14 compile warning about narrowing conversion

- d3d12: Fixes warning: enumeration value ‘PIPE_FORMAT_NONE’ not handled in switch

- d3d12: Fixes warning: comparison of integer expressions of different signedness

- d3d12: Fixes warnings: format ‘%x’ expects argument of type ‘unsigned int’, but argument 2 has type ‘HRESULT’

- d3d12: Fixes warning: format ‘%d’ expects argument of type ‘int’, but argument 3 has type ‘LONG’

- meson: Use build_always_stale instead of build_always

- util/format: u_format_gen.h are using UTIL_ARCH_LITTLE_ENDIAN, include util/u_endian.h for it

- util: Always generate u_format_gen.h as docs need it

- Revert “glsl: Work around MSVC arm64 optimizer bug”

- Revert “nir: Temporarily disable optimizations for MSVC ARM64”

- docs: Update requirement for MSVC

- util: Remove the __declspec(dllexport) on win32 for PUBLIC export macro

- util: Implement p_atomic_read for C++ properly.

- d3d10umd: Fixes gcc warning: enumeration value ‘D3D11_SB_OPERAND_TYPE_FUNCTION_BODY’ not handled in switch [-Wswitch]

- dzn: -DVK_USE_PLATFORM_WIN32_KHR is already comes from idep_vulkan_wsi_defines that depends by idep_vulkan_wsi

- tgsi: Fixes ntt_should_vectorize_io parameters

- tgsi/nir: Handling TGSI_OPCODE_RET in tgsi_to_nir

- clang-format: Update the .clang-format files to conformance clang-format json-schema

- clang-format: Move ForEachMacros into src/.clang-format for freedreno

- meson: mingw do not need _USE_MATH_DEFINES, only MSVC need it

- meson: Remove unused predefined macros for windows msvc/gcc

- meson: Remove redundant ‘/wd4996’ option for MSVC

- meson: For windows, the with_ld_version_script won’t take effect

- aco: Fixes warning: function get_branch_target/to_clrx_device_name defined but not used

- glsl: Fixes warning: deprecated directive: ‘%pure-parser’, ‘%error-verbose’

- meson: Remove non-unused inc_d3d9

- util: Fixes gcc warning: declaration of ‘strndup’ shadows a built-in function [-Wshadow]

- meson: Getting symbols-check.py works for mingw

- etnaviv: The relative path to build dir is not always valid, fix it

- lavapipe: fixes warning C5286: implicit conversion from enum ‘type1’ to ‘type2’; use an explicit cast to silence this warning

- ci/window: Fixes LLVM error Lexer.cpp(1578): error C2065: ‘C11AllowedIDCharRanges’: undeclared identifier

- ci/windows: Strip misleading release/15.x

- ci/windows: Building gallium-d3d10umd with MSVC

- ci/windows: Improve ci scripts

- ci/windows: Rename to mesa_deps_packages.ps1

- ci/windows: Now building the deps with MSVC 2019

- ci/windows: Use winget to install packages and install Microsoft.WindowsWDK.10.0.26100

- ci/windows: Bump llvm and SPIRV-LLVM-Translator version tag

- ci/windows: Bump image tag for enable d3d10umd building

- ci/windows: Update documents to use winget

- meson: Update comment to be clear

- meson/util: Define _GNU_SOURCE for mingw

Yurii Kolesnykov (2):

- Guard double include of libdrm.h by defining LIBDRM_H

- Guard call to free_zombie_glx_drawable with condition from its definition

Zach Battleman (1):

- brw: Initial bits of BFN support

Zan Dobersek (7):

- tu: disable LRZ writes also for alpha-to-coverage, FS sample coverage output

- tu: prevent tu_bo unmapping during destruction while being dumped

- tu/drm: avoid has_set_iova-specific util_vma_heap freeing in tu_bo_init

- tu/drm: msm backend shouldn’t use util_vma_heap in the !has_set_iova codepaths

- tu/drm: msm’s has_set_iova codepath should avoid freeing zombified tu_sparse_vma

- tu: limit query pool types logged into RMV

- fd: allow limiting RD dumps to specific frames and submits

Zhao, Jiali (2):

- amd/vpelib: Extend TMZ value to 8 bit

- amd/vpelib: Create Function to Check for Blending Feature

Zhou Qiankang (2):

- anv: Use os_get_page_size for mmap offset alignment to work with page size other than 4K

- meson: use pointer size for 64-bit detection instead of architecture names

abdelhadi (2):

- aco, radv: remove line duplicate

- aco: fix debug info offset

bbhtt (1):

- meson: Clearly print error when distutils or packaging is missing

fossdd (1):

- bin/symbols-check: add __(de)register_frame_info_bases to platform symbols

jglrxavpok (1):

- radv: Avoid calls to strlen when parsing umr output to speed up hang progressing

leonperianu (2):

- pvr: Advertise KHR_separate_depth_stencil_layouts

- pvr: add support for VK_KHR_depth_stencil_resolve

llyyr (2):

- radv: don’t set HOST_IMAGE_TRANSFER_BIT if host_image_copy not enabled

- vulkan: Update enum_to_str conversion to handle AMDX enum names

nihui (2):

- aco: gfx940 has no mad f32 instruction

- aco: set program->dev.fused_mad_mix=true for GFX940

no92 (1):

- gallivm: support LLVM 21

norablackcat (2):

- rusticl: fix unit tests

- rusticl: add Test targets

sarbes (4):

- lima: move RSW packing/unpacking to genxml

- lima: clean up unused PP struct

- lima: implement logicops

- lima: wire up anisotropic filtering

sergiuferentz (1):

- gfxstream: VirtGpuDevice can be null for Goldfish.

serguei (1):

- Revert “ci: disable Collabora’s farm due to maintenance”

sjfricke (1):

- nir: Fix gnu-empty-initializer warning

stefan11111 (1):

- glx: Fix segfault when Nvidia PRIME render offload is enabled, but not used

swscm, z1 (1):

- amd/vpelib: Ensures type-safe comparison for callback assignment