Mesa 23.2.1 Release Notes / 2023-09-28 — The Mesa 3D Graphics Library latest documentation

# Mesa 23.2.1 Release Notes / 2023-09-28

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

Mesa 23.2.1 is an unusual first stable release due to the accidentl tagging of 23.2.0 durring the rc cycle.

Mesa 23.2.1 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 23.2.1 implements the Vulkan 1.3 API, but the version reported by the apiVersion property of the VkPhysicalDeviceProperties struct depends on the particular driver being used.

## SHA256 checksum

    64de0616fc2d801f929ab1ac2a4f16b3e2783c4309a724c8a259b20df8bbc1cc  mesa-23.2.1.tar.xz

## New features

- VK_EXT_attachment_feedback_loop_dynamic_state on RADV

- extendedDynamicState3SampleLocationsEnable on RADV

- VK_EXT_dynamic_rendering_unused_attachments on RADV

- VK_EXT_mesh_shader on lavapipe

- OpenGL 3.1 on Asahi

- OpenGL ES 3.0 on Asahi

- VK_KHR_fragment_shader_barycentric on RADV/GFX10.3+

- VK_KHR_ray_tracing_pipeline on RADV/GFX10.3+

- VK_EXT_depth_bias_control on RADV

- VK_EXT_fragment_shader_interlock on RADV/GFX9+

- VK_EXT_pipeline_robustness on RADV

## Bug fixes

- intel: State cache invalidation after BLORP binding table setup ought to be unnecessary on ICL.

- RadeonSI: glClear() causes clear texture for some frames on RX580

- shader_test causing a crash in compiler

- Crash in st_ReadPixels

- [ANV] [DG2/A770] The Spirit and The Mouse, miscellaneous issues with Mesa Git

- Penumbra: Overture hangs on new game loading screen

- radv: Regression from 266b2cfe5bf3feda16747c50c1638fb5a0426958

- h264 encoding picture showed randomly repeated frames.

- [Google][Rex][anv] GLES dEQP test fails in anv when run via ANGLE-on-Venus on ChromeOS ARCVM.

- VAAPI on VCN: bad stream may crash whole gfx system

- aco: Assertion when compiling CP2077 shader

- [RADV] Dead by Daylight memory leak (shader-related?) on 23.1.6

- gpu hang on DG2 when running KHR-GLES31.core.texture_cube_map_array.image_op_tess*

- KHR-GLES31.core.texture_cube_map_array.image_op_tessellation_evaluation_sh fail on GFX12+

- wsi: deadlocks when DISPLAY is changed

- VAAPI: AMDGPU crash on RX 6900 XT on corrupted video

- [RADV] red and pink tinted shadows in Overwatch 2 on 7900 XTX

- blorp regression on dg2

- radv: commit 81641b01555faa4dd1dfc7de2513ad8d63e77ab7 leaded to artifacts in Quake II RTX

- [radv] Colors are distorted in Cyberpunk 2077 with ray tracing enabled

- Forza Horizon 5 stuttering since mesa 23.1.4 / 9b008673 revert as a FIX

- glCopyTexSubImage2D is very slow on Intel

- NVE4 (GeForce 710) fails to get vdpau in mesa git

- nouveau prevents hardware acceleration with Chromium (Wayland)

- Corrupt text rendering in Blender

- DRI2 gallium frontend is using bad format type

- Incorrect vlVaCreateBuffer/vlVaMapBuffer behavior for buffer type VAEncCodedBufferType in Gallium

- ci: do not download perfetto on-fly in build jobs

- Shared Memory Leak With Qt OpenGL Applications

- OpenGL, SIGSEGV when program pipeline objects has separated vertex shader progam and separated fragment shader progam with in/out

- 975a8ecc881873744d851ab0ef45ad7698eaa0ef “frontends/va: use resources instead of views” cause radeonsi can’t play video.

- Rusticl,radeonsi: ac_rtld error(2): too much LDS

- aco, radv Rage 2 menu corruption - bisected

- radv, aco: World War Z character texture regression on 7900xtx

- lavapipe/llvmpipe: regressions since descriptor rewrite

- Building llvmpipe with LP_USE_TEXTURE_CACHE set fails since 23.2.0-rc1: error C2039: dynamic_state is not member of lp_build_sampler_soa in lp_tex_sample.c

- [anv] Death Stranding crashes

- Can no longer build Clover without llvmspirvlib

- Baldurs Gate 3 (DX11) - Graphical corruption on RDNA3 (ACO regression)

- intel: Deathloop and other DX12 games fail assert(validated) with invalid SEL instruction

- gpu hangs on dg2 with mesh shading enabled on vkcts

- GTF-GL46.gtf21.GL.build.CorrectFull_vert regressed on intel platforms

- radeonsi: Deadlock when creating a new GL context in parallel with linking a shader on another GL context

- robustness2 raygen tests intermittently fail in Intel Mesa CI

- glthread: huge performance regression

- DirectX games do not launch on Intel HD Graphics 4000 (IVB GT2) [bisected]

- [Vega 64] Newer Mesa-git revisions past 283be8ac3b8610a77b28ebe9e44b946b979f0381 crash the system when accessing hardware accelerated apps

- Docs: Imagination driver not have documentation in https://docs.mesa3d.org/

- Unigine Heaven broken on Navi 21 since https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846

- [bisected] amdgpu graphics acceleration causing system crashes on 22f3bcfb5a33 or later

- anv: GPU hangs on MSAA tests with Angle

- AMD OpenGL texture corruption and crashing regression in java app

- The filenumber part of the #line preprocessor directive is ignored for multiline error messages

- r300: channel merging missed case for mad + mov

- radv: incorrect RTE rounding in corner cases

- Confidential issue #4103

- r600 regression

- clc: compiler_test gets built even if unit tests are disabled via -Dbuild-tests=false

- x11 swapchain fails to check for DRI3 PixmapFromBuffers error

- msys2: build fails with error: conflicting types for ‘_glapi_add_dispatch’

- [bisected][anv] newly enabled test (dEQP-VK.api.info.format_properties.g8_b8r8_2plane_420_unorm) failing

- deqp gles3.1 gpu hangs on DG2 A380 when running zink

- [amd/drm-shim] build issue on ppc64

- radeonsi: bogus advertisement for encode/decode support for 10 bit h264 video

- radeon: Basphemous graphical glitch

- aztec ruins gl benchmark slow to compile shaders on intel

- anv: false cacheline flushing or insufficient buffer alignment on at least ADL

- macOS build error timespec

- intel: Borderlands 2 misrendering with ZINK with OpTerminateInvocation instruction

- gallium: Error path in st_create_context_priv leads to segfault

- [Vulkan][TGL] vkCmdCopyQueryPoolResults failed to write buffer after compute shader write with overlap

- r600: GPU hang on The Long Dark on R600/R700

- Add iris and crocus to features.txt

- r600: Segfault on glxgears and almost every OpenGL applications on RV770 (regression)

- R9 280 - Broken font rendering in Godot Engine (GLES2) - Radeonsi

- radeonsi gcn1 regression

- ANV crashes on init on 32 bit builds

- eglCreateImageKHR should throw a error when called with anything but EGL_NO_CONTEXT

- virgl: Stack overflow in virgl_bind_sampler_states on hosts with more than 32 samplers

- [TGL] regression with r11_g11_b10 formats when running through virgl

- anv: incorrect vkGetPhysicalDeviceImageFormatProperties2KHR success

- r300: reconstruct ARR in shaders from wined3d

- ci: enable pre-merge testing for Zink/RADV

- rusticl: segmentation fault when enabling for llvmpipe and zink with the driver set to zink

- unify load_ubo_dxil and load_ubo_vec4

- Move `lower_loads_and_stores_to_dxil` bit-size lowering logic to `nir_lower_mem_access_bit_sizes`

- Intel drivers fail to link with -Dxmlconfig=disabled

- mesa: Remove dynamic dispatch stubs

- radv: regression UE5.2 nanite d3d12 vertex explosion

- [ANV/DG2] nvpro-samples/vk_raytracing_tutorial_KHR/ray_tracing_reflections crash

- validate_intrinsic_instr: Assertion `dst’ failed.

- anv: fails to build on aarch64

- radv: crash/freeze/assert with raytracing and Elden Ring 1.09

- Elden Ring freeze when summoning cooperator with Raytracing

- gc_alloc_size returns unaligned allocations

- Rusticl OpenCL: panicked at ‘called `Option::unwrap()` on a `None` value’ && void SPIRVKernelParser::applyDecoration(uint32_t, const spv_parsed_instruction_t*): Assertion `c.first == id’ failed.

- Using a `NULL` pointer as `bitmap` in `glBitmap` leads to `GL_OUT_OF_MEMORY` while creating display-list (“glNewList -> glBitmap”)

- Bitwise and with constant 31 removed on width argument to BitFieldSExtract, causing incorrect result on RADV ACO

- Rusticl OpenCL: Simple SYCL / DPC++ program hangs indefinitely at rusticl::api::event::wait_for_events()

- radeonsi: Metro Last Light Redux graphical glitches

- radv: VK_KHR_fragment_shader_barycentric support

- freedreno/a6xx: assert(state->view_rsc_seqno[i] == seqno) failed with sway

- radv: Trackmania 2020 crashing on mesa-git

- radv crashes when using vertex format VK_FORMAT_B10G11R11_UFLOAT_PACK32

- changes in commit e4b6a0a82457b3ef40c5857412e20bc344ff302c leads to GPU hang

- radv,aco: In the game Rise of the Tomb Raider on RDNA 3 GPUs appeared artifacts after commit 290c3d360e5a6f5226c062d6a9267629adb1060e

- CI: Linux CI jobs naming

- docs.mesa3d.org contrast is bad in dark mode

- iris now requires Linux v5.3

- Wolfenstein II: The New Colossus vsync off crash

- Surfaceless mode ES2.0 number of vertices limitation

- freedreno: firefox crashes on video playback

- radv: unaligned vertex input regression

- rusticl build error: error[E0308]: mismatched types on some archs

- GetInternalformativ with GL_TEXTURE_2D and GL_CLEAR_TEXTURE incrrectly returns GL_INVALID_ENUM

- radeonsi: texturing is broken on R9.270x since eaf98b14220d8cbc186d67a929254acc3e7de41a

- aco: KHR-GL46.shader_image_load_store.basic-allTargets-atomic asserts on Bonaire

- Firefox / VA-API / H.264 decoding artifacts on AMD RX 6600 / Fedora 37

- AMD/RX 6600 - VA-API video output is corrupted if decoded surfaces are exported by vaExportSurfaceHandle and then quickly returned to ffmpeg/va-api decoder and reused

- Pixel Game Maker MV - Elfin Force

- Anvil - Vulkan CTS tests fail if has_context_isolation set to false

- anv: binding table pool leak or overly cached

- [regression/bisected] Bone wireframes are no longer rendered correctly in Blender with RadeonSi/Vega

- [nine, radeonsi] Texture missing in Heroes of Might and Magic 5

- [REGRESSION] Crash in `loader_dri3_wait_gl()` due to `dri3_front_buffer(draw) == NULL`

- r600: Visual glitches on The Long Dark with the NIR backend

- some piglit tests seg-fault if -Dgles1=disabled is set

- anv: Tom Clancy’s Rainbow Six Siege [DX11: Image Corruption(FIXED)/Vulkan: crash on lauch]

- glSpecializeShaderARB works on SPIR-V compiled with shader compilers ca. 2021, but fails for SPIR-V generated with current compilers

- ANV: Vulkan driver regression in clearing Depth/Stencil

- radv: Sample rate shading broken in AC:Valhalla

- FTBFS: gallivm: src/gallium/auxiliary/gallivm/lp_bld_init.c:45:10: fatal error: llvm-c/Transforms/Scalar.h: No such file or directory (Legacy Pass Manager removed in LLVM 17)

- intel: workaround mechanism initialized before device revision (stepping) is available

- radv/rt: crash compiling Unity Enemies Demo RT pipelines

- gfxbench4/5 crashing on android

- mesa 23.0.3 build failure

- gallium-aux msan failure on Debian bookworm

- radv: Battlefield {1,5} hangs on RX 7900 XTX

- radv: graphical artifacts in MSFS running via DXVK on RX7900XT

- vulkancts regressions on bdw

- [BDW] intel/blorp: MCS partial resolve produces unexpected result

- Compile failure v23.0.0 - error: implicit declaration of function

- ci/radv: Stop setting MESA_SPIRV_LOG_LEVEL

- “frontends/va: report min width and min height values if available” broke VA-API tests on amd-raven

- [radeonsi] flickering debug chunk border lines in Minecraft

- nine: Lower alpha test in shader key? or require PIPE_CAP_ALPHA_TEST?

- radv, radeonsi: Rogue Legacy 2 alpha-to-coverage rendering issues

- [r600, TURKS] R600: Unsupported instruction: vec1 32 ssa_1 = intrinsic image_samples (ssa_0) on spec@arb_shader_texture_image_samples@compiler@fs-image-samples.frag (23.1.0-rc4)

- anv: Overwatch 2 hangs GPU with GPL enabled

- Penumbra: Overture ingame enviroment not displaying on Proton version

- Penumbra: Overture ingame enviroment not displaying on Proton version

- nir: ‘base’ may be used uninitialized

- vulkan/device_select: no way to select between GPUs of the same model due to bugs

- radv: 7900 XTX hair flickering/rendering issues in VaM

- radv: cache crashing

- nouveau: Regression in arb_transform_feedback_overflow_query-basic from multithreading patches

- regression in aco,ac/llvm,radv,radeonsi: handle ps bc optimization in nir for radv

- radeonsi: vaapi: `width >2880 && width % 64 != 0` results in wrong width in h265 stream

- [regression] iris: unable to use driver as secondary GPU (primary AMD GPU)

- iris: steam doesn’t render on dg2

- [llvm 16+] [microsoft-clc] opencl-c-base.h does not exist

- Vulkancts clipping / tesselation tests trigger gpu hang on DG2

- Swaped fields in picture in vlc and mythtv if hw accel is on

- radeonsi: glGetGraphicsResetStatusEXT keeps returning GL_INNOCENT_CONTEXT_RESET after a GPU reset

- WGL: Assert assigns dwThreadId variable

- Intel/anv: Modifier problems running gamescope embedded

- R600: drop TGSI code path

- r600_shader.c:193 r600_pipe_shader_create - translation from TGSI failed !

- nine regression with r600 (bisected)

- [ACO] [RADV] Flickering squares in some areas in The Last of Us Part 1 (with workaround)

- radv: Jedi Fallen Order flickering & blocky plants

- qemu 7.2.0-rc4 with sdl output crashes with assert

- nouveau: NV50 (NVAC) broken in latest master

- [dozen]: [vkcube] force closing on WSL2

- rusticl failed to build with rust-bindgen 0.65.0

- nine: strange color or transparency of trees when called DrawIndexedPrimitive?

- Regression, Bisected: glsl: Delete the lower_tess_level pass breaks r600 tesselation

- vkcts-navi21-valve failing often with GCVM_L2_PROTECTION_FAULT_STATUS:0x00X00830

- ci/radv: Remove vkctx-navi21-llvm-valve job?

- Deep Rock Galactic GPU freeze (AMD, DX11 DXVK Proton)

- radv: Resident Evil 4 Chainsaw Demo GPU hang with Navi 24

- radv: Gotham Knights GPU hang with Navi 24

- SPIR-V error “Invalid back or cross-edge in the CFG”

- SPIR-V parsing FAILED: Loop breaks can only break out of the inner most nested loop level

- ci: a618 traces performance broken

- aco: s_load_dword with negative soffset cause GPU hang

- d3d12: Attempting to display a framebuffer through GDI with low bpc produces on-screen corruption

- piglit.spec.ext_image_dma_buf_import.ext_image_dma_buf_import crash shutting down

- overlay layer: unable to launch titles on steam

- radv/zink: spec@ext_texture_integer@multisample-fast-clear gl_ext_texture_integer

- ci: a530-gl with 6.3 kernel

- a530: hangs with newer firmware version on db820c (apq8096)

- tu: debug marker support

- VAAPI: Wrong H.264 playback on RX 6900 XT and RX 6700 XT (all Sienna?)

- radv: possibly not setting state dirty bits correctly

- RADV: VRS attachment not working in specific scenario

- VAAPI/AMD: videos less than 64 pixels in width or height are decoded to black

- d3d12: DirectX doesn’t support seperate stencil functions for front and back face

## Changes

Adam Jackson (1):

- egl: Clear EGL_WINDOW_BIT for non-double-buffered EGLConfigs

Alan Previn (2):

- drm-uapi: bump headers (except AMD)

- iris: Add GET_PARAM for protected context capability support

Alejandro Piñeiro (12):

- v3dv/pipeline: don’t prepack up early-z configuration

- v3d: use more an auxiliar devinfo

- v3d: remove v3d_create_texture_shader_state_bo

- v3d: remove v3d_tfu_supports_tex_format

- v3d: remove v3d_get_internal_type_bpp_for_output_format

- broadcom/compiler: return NULL if we fail to register allocate

- v3d: assert if v3d_compile returns NULL

- broadcom/compiler: disable tmu pipelining when needed

- broadcom/compiler: clarify use of QFILE_VPM

- v3dv: refactor copy_image_to_buffer_blit

- v3dv: add a linear images to buffer copy codepath

- v3dv/device: update conformanceVersion

Aleksey Komarov (2):

- pan/va: Fix MUX.v2i16 and MUX.v4i8 description

- pan/va: fix typo in IADD_IMM.i32 description

Alex Denes (1):

- virgl: link VA driver with build-id

Alexander von Gluck IV (1):

- egl/haiku: Fix potential crash if double buffering is disabled

Alyssa Rosenzweig (289):

- gallium: Add u_default_get_sample_position

- zink: Use u_default_get_sample_position

- panfrost: Use u_default_get_sample_position

- freedreno: Use u_default_get_sample_position

- d3d12: Use u_default_get_sample_position

- nir: Add more system values for lowering XFB

- pan/bi: Don’t set has_fsub

- asahi: Fix disk cache disable with AGX_MESA_DEBUG

- asahi: Minify width/height in create_surface

- asahi: Don’t use depth/stencil staging blits

- asahi: Identify XML for barycentric coordinates

- asahi: Track write to separate stencil

- agx: Handle splits of uniforms

- agx: Fix abs/neg propagation into fcmpsel

- agx/lower_zs_emit: Fix progress returning

- agx: Handle linear 2D array textureSize()

- asahi: Explicitly ban MSAA, compression with linear

- asahi: Use 2D array staging resources for cube/3D

- asahi: Compress more texture targets

- agx: Remove bogus assert

- asahi: Use u_default_get_sample_position

- agx: Defeature fsub

- asahi: Use device_load shift for VBO loads

- agx: Fix packing for iadd with shift

- asahi: Rename no colour output to tag write disable

- asahi: Copy resources if needed to shadow

- agx: Don’t wait at the end of the shader

- asahi: Bind staging resources as RENDER_TARGET

- agx/lower_address: Add helper to match multiplies

- agx/lower_address: Match multiplies, not only shifts

- agx: Ensure load_frag_coord has the right sizes

- agx: Rework z/s emit

- agx: Validate that collect sources are the same size

- agx: Lower I/O to scalar later

- asahi: Shrink disk cache size of push ranges

- asahi: Bump MAX_PUSH_RANGES to the worst-case

- asahi: Implement transform feedback

- asahi: Fix depth load/store flags

- nir: Add nir_alu_src_as_uint helper

- pan/bi: Use nir_alu_src_as_uint

- agx: Use nir_alu_src_as_uint

- nir: Model AGX-specific multiply-shift-add

- agx: Handle imadshl_agx, imsubshl_agx

- agx: Fix packing of imsub instructions

- agx: Optimize multiplies

- zink: Always set a blend state for shader-db

- ail: Handle larger block sizes

- nir: Allow adding descriptions to ALU opcodes

- nir: Make ALU descriptions machine-readable

- docs: Include ALU opcode descriptions

- nir: Add nir_foreach_phi(_safe) macro

- nir: Use nir_foreach_phi(_safe)

- dxil: Use nir_foreach_phi_safe

- ac/llvm: Use nir_foreach_phi

- nir: Use nir_block_last_phi_instr more

- nir: Add unified atomics

- nir: Add pass to lower atomics to unified

- agx: Use unified atomics

- pan/bi: Use unified atomics

- pan/mdg: Fix icky formatting

- pan/mdg: Use unified atomics

- gallivm: Use unified atomics

- ntt: Use unified atomics

- ac/llvm: Don’t handle atomic derefs

- ac/llvm: Use unified atomics

- aco,radv: Use unified atomics

- zink: Use unified atomics

- ir3: Use unified atomics

- nir: Handle unified atomics in simple cases

- nir/lower_task_shader: Handle unified atomics

- nir/lower_io: Handle unified atomics

- nir/lower_ssbo: Handle unified atomics

- nir/opt_uniform_atomics: Handle unified atomics

- nir/validate: Handle unified atomics

- radv: Constify radv_device_supports_etc

- radv: Use common GetPhysicalDeviceFeatures2

- r600: Use unified atomics

- lvp: Use common GetPhysicalDeviceFeatures2

- tu: Use common GetPhysicalDeviceFeatures2

- agx: Lower legacy atomics sooner

- pan/mdg: Lower legacy atomics earlier

- panvk: Lower legacy atomics earlier

- tu: Lower legacy atomics earlier

- v3dv: Lower legacy atomics earlier

- lavapipe: Lower legacy atomics sooner

- glsl/nir: Produce unified atomics

- nir/lower_atomics_to_ssbo: Produce unified atomics

- nir/lower_printf: Produce unified atomic

- mesa/st: Produce unified atomics

- vtn: Produce unified atomics

- intel: Produce unified atomics

- ac: Produce unified atomic

- treewide: Stop lowering legacy atomics

- nir: Drop nir_lower_legacy_atomics

- ntt: Stop handling legacy atomics

- nir: Drop legacy atomics in simple cases

- nir/lower_io: Drop legacy atomics

- nir/lower_task_shader: Drop legacy atomics

- nir/validate: Drop legacy atomics

- nir/opt_load_store_vectorize: Reclaim ATOMIC

- nir/opt_uniform_atomics: Drop legacy atomics

- nir: Remove legacy atomics

- nir: Drop unused name from nir_ssa_dest_init

- nir: Drop unused argument from nir_ssa_dest_init_for_type

- nir: Remove stale TODOs

- nir: Fix incorrect comment

- util: Add common hex dump utility

- asahi: Use common hexdump utility

- pan/decode: Use common hexdump

- CODEOWNERS: Update panfrost

- gallium: Drop Asahi-as-a-swrast hack

- asahi: Drop Asahi-as-a-swrast hack

- nir: Document extra image source

- nir: Add image_texel_address intrinsics

- nir: Add pass to lower image atomics

- pan/bi: Fix atomic exchange on Valhall

- pan/bi: Use nir_lower_image_atomics_to_global

- pan/mdg: Use nir_lower_image_atomics_to_global

- gallium: Add pipe_image_view::single_layer_view

- mesa/st: Set pipe_shader_image::single_layer_view

- dxil: Rely on scoped_barrier

- treewide: Avoid nir_lower_regs_to_ssa calls

- nir/opt_barriers: Add a default callback

- agx: Use common combine_all_barriers callback

- nir: Drop stale comments

- zink: Switch to scoped barriers

- panfrost/ci: Skip Piglit tests known to crash

- panfrost/ci: Skip hanging test

- nir: Add intrinsics for multisampling on AGX

- nir/builder: Add nir_replicate helper

- treewide: Use nir_replicate

- pan/lower_framebuffer: Use nir_replicate

- radv/query: Use nir_trim_vector

- intel/blorp: Use nir_trim_vector

- nir/print: Print locations for geometry shader inputs

- gallium: Add util_image_to_sampler_view helper

- panfrost: Use util_pipe_image_to_sampler_view

- nir: Add and use nir_tex_src_ssa

- treewide: Use nir_tex_src_for_ssa

- treewide: Use nir_trim_vector more

- agx: Set support_16bit_alu

- agx: Constant fold when optimizing int64

- agx: Use textures_used, not num_textures

- asahi: Add passes to lower MSAA

- asahi: Add passes to lower sample intrinsics

- asahi: Add alpha-to-coverage (and alpha-to-one) lowering

- agx: Assert that sample shading is lowered

- asahi: Set uses_sample_shading for background program

- asahi: Plumb API sample mask into shaders

- asahi: Plumb ppp_multisamplectl into shaders

- agx: Model both sources of sample_mask

- agx: Plumb in nir_intrinsic_load_sample_mask_in

- agx: Handle sample_mask_agx

- agx: Enable tag writes when sample mask written

- agx: Lower discard in NIR

- asahi,agx: Call lower_discard_zs_emit in the driver

- agx: Split iter and iterproj instructions

- agx: Model interpolation for iter instructions

- agx: Handle centroid and sample interpolation

- asahi: Lower MSAA

- asahi: Use nonempty tib for MSAA

- agx: Emit shader info late

- asahi: Advertise GL 3.1

- agx: Stop bit-inexact conversion propagation

- asahi: Add ASAHI_MESA_DEBUG=nowc flag

- asahi: Extract transition_resource helper

- asahi: Decompress writable images

- asahi: Decompress with format reinterpretation

- asahi: Remove stale comments

- pan/mdg: Drop lower_locals_to_regs call

- lima: Drop lower_locals_to_regs call

- ir2: Drop lower_locals_to_regs call

- nir: Add AGX atomic intrinsics

- agx: Refactor expressions in agx_nir_lower_address

- agx: Fold addressing math into atomics

- nir/builder: Add steal_tex_src helper

- nir/lower_tex: Use nir_steal_tex_src

- agx: Use common nir_steal_tex_src

- nir: Add interleave_agx instruction

- vtn: Handle atomic counter semantics

- ir3: Drop reference to unsupported intrinsic

- ttn: Emit scoped barriers when needed

- ntt: Use scoped barriers

- ac/llvm: Drop memory_barrier_buffer impl

- glsl: Assume use_scoped_barrier

- vtn: Assume use_scoped_barrier

- nir: Assume use_scoped_barrier

- ttn: Assume use_scoped_barrier

- treewide: Remove use_scoped_barrier

- nir/tests: Use scoped barriers internally

- nir: Remove handling for non-scoped barriers

- radeonsi: Scan for scoped barriers

- nir: Remove non-scoped barriers

- iris: Don’t use STREAMING_LOAD without SSE

- nir/builder: Add ubitfield_extract_imm helper

- agx: Implement bitfieldExtract natively

- asahi: Use bitfield_extract for texture lowering

- nir: Remove integer and 64-bit modifiers

- aco: Drop NIR parallel copy handling

- nir: Add discard_agx intrinsic

- agx: Update explanation of sample_mask behaviour

- agx: Fix discards

- agx: Extract coordinate register size calculation

- agx: Recollect stored vectors at their use

- agx: Add loop header? flag

- agx: Validate predecessor information

- agx/lower_parallel_copy: Lower 64-bit copies

- agx: Implement vector live range splitting

- nir/lower_bool_to_int32: Fix progress reporting

- nir/lower_locals_to_regs: Add bool bitsize knob

- gallivm: Use NIR_PASS macros

- nir: Add pixel_coord, frag_coord_zw intrinsics

- nir: Add lower_frag_coord_to_pixel_coord pass

- pan/bi: Use lower_frag_coord_to_pixel_coord

- agx: Use nir_lower_frag_coord_to_pixel_coord

- asahi: Use txf for background program

- nir/lower_blend: Optimize masked out RTs

- nir: Add nir_builder_create returning nir_builder

- nir: Use nir_builder_create

- treewide: Use nir_builder_create more

- treewide: Remove unused builders

- nir: Add nir_foreach_function_impl helper

- nir: Convert to nir_foreach_function_impl

- nir/validate: Assert txf(_ms) matches dimension

- nir: Add nir_lower_robust_access pass

- broadcom/compiler: Use nir_lower_robust_access

- broadcom/compiler: Remove v3d_nir_lower_robust_access

- broadcom/compiler: Remove unused #define

- broadcom/compiler: Use nir_steal_tex_src

- nir: Add b32fcsel_mdg opcode for Midgard

- pan/mdg: Optimize b32csel(inot) in NIR

- pan/mdg: Type CSEL with a NIR pass

- pan/mdg: Lower isub in common code

- pan/mdg: Constant fold after algebraic_late

- pan/mdg: Add is_ssa helper

- pan/mdg: Fix IR from scheduling conditions

- pan/mdg: Fix 2-const CSEL at block beginning

- pan/mdg: Fix temp count calculation

- pan/mdg: Lower special reads better

- pan/mdg: Reset predicate.exclude while scheduling

- pan/mdg: Copy-prop even with swizzle restrictions

- pan/mdg: Propagate modifiers in the backend

- nir: Rename load/store_reg -> load/store_register

- nir: Rename nir_reg_{src,dest} -> nir_register_{src,dest}

- agx: Add algebraic opt to help with discard lowering

- agx: Smarten discard_agx -> sample_mask lowering

- asahi: Strip ? in GenXML

- asahi: Rename ‘Render Target’ to ‘PBE’

- asahi: Identify PBE::sRGB flag

- asahi: Remove ; in perf_debug_ctx

- agx: Use nir_opt_shrink_stores

- agx: Use nir_opt_shrink_vectors

- agx: Assert that barriers are not used in the preamble

- asahi: Assert we don’t transition shared resources

- asahi: Fix scissor_culls_everything check

- asahi: Use ralloc harder

- asahi: Take ownership of compute shader NIR

- agx: Don’t leak ssa_to_reg_out

- asahi: Use txf_ms for MSAA background programs

- nir: Fix breaking in nir_foreach_phi(_safe)

- vulkan: Add vk_index_type_to_bytes helper

- lavapipe: Use vk_index_type_to_bytes

- v3dv: Use vk_index_type_to_bytes

- rogue: Remove commented convert_from_ssa call

- nir: Add intrinsics for register access

- nir: Add helpers for walking register uses

- nir: Add pass for trivializing register access

- nir: Add legacy data structures & helpers

- nir: Add new version of lower_regs_to_ssa

- nir: Produce intrinsics in lower_{phis,ssa_defs}_to_regs

- nir: Add intrinsics version of locals_to_regs

- nir: Add lower_vec_to_regs pass

- gallium: Return SSA values from TTN ALU helpers

- gallium: Convert TTN to register intrinsics

- mesa: Simplify ptn_log() a bit

- mesa: Return SSA defs from PTN ALU helpers

- mesa: Convert PTN to register intrinsics

- nir/lower_shader_calls: Convert to register intrinsics

- nir: Remove nir_lower_regs_to_ssa

- nir: Remove nir_register-based unit tests

- gallivm: Switch to reg intrinsics

- pan/mdg: Ingest new-style registers

- panfrost: Fix transform feedback on v9

- panfrost: Lower vertex_id for XFB

- panfrost: Fix transform feedback on v9 harder

- nir/trivialize: Handle more RaW hazards

- nir/lower_blend: Fix 32-bit logicops

- nir/lower_helper_writes: Consider bindless images

- nir/passthrough_gs: Fix array size

Amber (3):

- turnip: fix buffer markers using wrong addresses

- ir3, freedreno: implement GL_ARB_shader_draw_parameters

- freedreno: implement GL_ARB_indirect_parameters

Andres Calderon Jaramillo (1):

- r600: Report multi-plane formats as unsupported

Andres Gomez (3):

- .mailmap: add an alias for Miguel Casas-Sanchez

- .mailmap: add an alias for Clayton Craft

- .mailmap: add an alias for Christian Gmeiner

André Almeida (2):

- radv: debug: Update decode ring umr command

- radv: Search for guilty contexts at radv_check_status

Antonio Gomes (3):

- rusticl: Move nir compilation to Program

- rusticl: Drop some Kernel data and have a NirKernelBuild ref instead

- rusticl: Drop Program::kernel_count

Asahi Lina (33):

- asahi: Identify ZS resolve bits (tentative)

- asahi: Broadcast Z for all components on texture fetch

- asahi: Enable 2xMSAA (for deqp)

- asahi: Add batch state debugging

- asahi: Fix batch writer tracking for null batches

- asahi: Clear batch->resolve on agx_batch_init

- asahi: Assert that freed BOs have no pending writers

- asahi: Fix batch writer_syncobj cleanup

- asahi: Implement memory_barrier

- asahi: Implement create_fence_fd and fence_server_sync

- asahi: Make framebuffer texture barriers a no-op

- asahi: Disable tilebuffer write masking optimization

- asahi: Add missing stdbool include to lib/hexdump.h

- asahi: Fix check for sprite coord mode in agx_bind_rasterizer_state

- asahi: Add some more system registers

- asahi: Partially identify some missing index list stuff

- asahi: Lazily initialize batch state on first draw

- asahi: Make bo->writer_syncobj atomic

- ail: Implement multisampling for compression meta calculation

- asahi: Use ail_can_compress() in agx_compression_allowed()

- ail: Add MSAA tests

- asahi: Use os_dupfd_cloexec() instead of dup()

- asahi: Fix memory leak in agx_nir_lower_sysvals()

- asahi: Do not leak meta shader NIR

- asahi: Revert “Advertise ARB_texture_barrier”

- asahi: Disable PIPE_CAP_SURFACE_SAMPLE_COUNT

- asahi: Pass through surface sample count

- asahi: match_soa: Treat offsets as signed

- asahi: Identify the separate varying count fields

- asahi: Gather flat/linear shaded input info from uncompiled FS

- asahi: Fix type confusion for fragment shader keys

- asahi: Add flat/linear shaded varyings mask to the VS shader key

- asahi: Arrange VS varyings in the correct order

Axel Davy (17):

- frontend/nine: Fix missing clamping of pointsize for ff

- frontend/nine: Apply writemask to pointsize

- frontend/nine: fix fog key overflow

- frontend/nine: fix wfog

- frontend/nine: Fix num_textures count

- frontend/nine: Drop max_ps_const_f

- frontend/nine: Implement alpha test backup support

- frontend/nine: Implement backup support for pointsize

- frontend/nine: Improve VS_WINDOW_SPACE_POSITION fallback

- frontend/nine: Print warning incomplete position_t support

- frontend/nine: Enforce legacy pow behaviour

- frontend/nine: Get rid of INTERPOLATE_COLOR

- frontend/nine: initialize force_color_in_centroid

- docs/gallium: Clarify PIPE_CAP_CLIP_PLANES

- frontend/nine: Implement backup support for clip planes

- frontend/nine: Fix shader cap test for POSITIONT

- frontend/nine: Add debug driconf var force_features_emulation

Bas Nieuwenhuizen (11):

- radv: Reserve space for indirect descriptor set address writes.

- radv: Reserve space in the ACE pre/postambles.

- radv: Add stricter space checks.

- radv: Add asserts in radeon_emit{,_array}.

- radv: Move all the dirty flags from TES binding to TCS binding.

- amd/drm-shim: Add vangogh entry.

- amd/drm-shim: Add raphael&mendocino, polaris12 and gfx1100.

- amd/drm-shim: Update docs for more devices.

- aco: fix nir_op_vec8/16 with 16-bit elements.

- aco: Fix some constant patterns in 16-bit vec4 construction with s_pack.

- nir: Fix 16-component nir_replicate.

Benjamin Cheng (1):

- radv/video: use app provided hevc scaling list order

Benjamin Lee (1):

- intel: Fix stack overflow in intel_dump_gpu

Billy Laws (1):

- wgl: Fix depth/stencil image support when using zink kopper

Blisto (1):

- driconf: set vk_x11_strict_image_count for Wolfenstein II

Boris Brezillon (4):

- panfrost: Check blend enabled state in pan_allow_forward_pixel_to_kill()

- renderonly: Fix potential NULL deref in the error path

- renderonly: Make sure we reset scanout on error in create_kms_dumb_buffer_for_resource()

- winsys/panfrost: Make sure we reset scanout on error in create_kms_dumb_buffer_for_resource()

Boyuan Zhang (2):

- frontends/va: add default intra idr period

- radeonsi: disable H264HIGH10 profile

Brian Paul (5):

- llvmpipe: remove lp_setup_alloc_triangle()’s unneeded tri_size param

- llvmpipe: code clean-ups in llvmpipe_get_query_result_resource()

- lavapipe: clean-ups in lvp_GetQueryPoolResults()

- lavapipe: clean-ups in lvp_physical_device_get_format_properties()

- lavapipe: asst. clean-ups in lvp_execute.c

Caio Oliveira (56):

- spirv/tests: Add test for single-block loop

- spirv: Output spirv2nir tool result to stdout

- spirv: Add –optimize flag to spirv2nir tool

- spirv: Rework structured control flow handling

- spirv: Do more on spirv2nir –optimize

- spirv: Use NIR_PASS for spirv2nir –optimize

- spirv: Extract vtn_handle_debug_text() helper

- spirv: Fix gl_spirv_validation when OpLine with strings is present

- spirv: Improve the ‘ID is the wrong kind of value’ error messages

- mesa/spirv: Provide more specific error message for glSpecializeShader()

- spirv: Validate Dim of OpTypeSampledImage and OpSampledImage

- spirv: Assert sampler_dim is valid when building nir_tex_instr

- nir/print: Print 0 when mem_modes or resource_intel have no values

- nir/print: Do not print raw values

- spirv: Add workaround for OpImageQueryLevels with Multi-sampled images

- compiler/types: Make key in subroutine_name more effective

- r600/sfn: Fix warning about overloads hiding virtual functions

- spirv: Refactor and rename scope translation helper

- spirv: Use vtn_translate_scope for OpReadClockKHR

- intel/compiler: Refactor dump_instruction(s)

- intel/compiler: Remove unused functions and declarations

- compiler/types: Be consistent when naming array element/size

- compiler/types: Tidy up the asserts in get_*_instance functions

- compiler/types: Use hash table pre-hashed functions for type caching

- microsoft/clc: Add unreachable() to fix ‘may be unitialized’ warning

- compiler: Move from nir_scope to mesa_scope

- compiler: Add mesa_scope_name() function

- nir/print: Use mesa_scope_name() function to print scopes

- intel/compiler: Move brw_kernel.c to the intel_clc target

- compiler/clc: Rename the internal library from libclc to libmesaclc

- compiler/clc: Move related NIR passes to the common mesa clc

- compiler: Move spirv into a module of its own

- nir/print: Print whether the shader is internal or not

- intel/compiler: Respect NIR_DEBUG_PRINT_INTERNAL flag

- meson: Explicitly add “check : false” to a couple instances of run_command

- vulkan: Add NV suffix to VK_NV_cooperative_matrix feature names

- vulkan: Update XML and headers to 1.3.255

- nir: Allow nir_gather_ssa_types() to ignore regs instead of assert

- nir/print: Improve NIR_PRINT=print_consts by using nir_gather_ssa_types()

- nir/print: Make NIR_DEBUG=print_consts behavior the default

- nir: Make a const-friendly way to get the offset_src and arrayed_io_src from intrinsic

- nir: Extract logic to get dest and srcs types from intrinsic

- nir/print: Use src_type when printing consts in SSA uses

- nir/print: Print more representations in load_const

- nir/print: Use symbols % for SSA and @ for intrinsic

- nir/print: Use `bN` instead of `block_N` for identifying basic blocks

- nir/print: Use BITSIZExELEMENTS for SSA sizes

- nir/print: Align instructions around `=`

- nir/print: Rename print_tabs() to print_indentation() and use it more

- nir/print: Don’t use comment syntax for deref_cast properties

- nir/print: Use `//` for comments

- nir/print: Use 4-space indentation

- nir/print: Print div/con annotation first

- nir/print: Reformat the preds/succs block information

- meson: Ensure that LLVMSPIRVLib is not required for Clover

- compiler/types: Use right hash for function types

Caleb Cornett (3):

- d3d12: Fix Xbox GDK build errors

- wgl: Add BITMAPV5HEADER to stw_gdishim.h

- d3d12: Fix Xbox frame scheduling for interval != 1

Charmaine Lee (7):

- translate: do not clamp element index in generic_run

- svga: set PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY for VGPU10 device

- mesa/main: fix distance attenuation calculation in ffvertex

- svga: fix shader type after ntt

- svga: fix compute shader type after ntt

- svga: lower images before ntt

- svga: set clear_texture to NULL for vgpu9

Chia-I Wu (24):

- drm-shim: apply file overrides for open

- amd/drm-shim: add amdgpu drm-shim

- hasvk: Refactor Android externalFormat handling in CreateYcbcrConversion

- hasvk/android: Use VkFormat for externalFormat

- hasvk: Use the common vk_ycbcr_conversion object

- vulkan: make sure vk_image::format is never UNDEFINED

- vulkan: make sure vk_image_view::format is never UNDEFINED

- vulkan: rename vk_image::ahardware_buffer_format

- vulkan: define inline stubs when android api level < 26

- vulkan: add vk_ahb_format_to_image_format

- anv,hasvk,radv: do not fall back to AHARDWAREBUFFER_FORMAT_BLOB

- vulkan: add vk_image_format_to_ahb_format

- anv,hasvk: android ahb is not always exportable

- radv: improve externalMemoryFeatures for android ahb

- amd/drm-shim: add raven2

- ac/surface: print tile_swizzle as well

- radv: do not use a pipe offset for aliased images

- aco: fix alignment check in emit_load

- ac, radeonsi: add and use ac_get_ps_iter_mask

- radv: fix gl_SampleMaskIn for sample shading

- radv: fix msaa feedback loop without tc-compat cmask

- radv: fix non-square compressed image copy on gfx9

- radv: disable calibrated timestamps on raven/raven2

- ac/surface: limit RADEON_SURF_NO_TEXTURE to color surfaces

Christian Gmeiner (31):

- etnaviv: Add util_blitter_save_so_targets(..) call

- etnaviv: nir: improve uniform usage for ALU opc

- etnaviv: correct number of instructions in dump_shader_info(..)

- etnaviv: move printing of final shader out of etna_link_shaders(..)

- etnaviv: nir: do not call nir_lower_idiv(..) unconditionally

- etnaviv: make wider use of DBG_ENABLED(..)

- ci: add debian-arm32-asan

- ci/etnaviv: add asan run

- etnaviv: Add support for conditional rendering

- etnaviv: add support for performance warnings

- mesa/arbprog: fix compile errors

- etnaviv: remove tgsi remains

- etnaviv: drop usage of tgsi_swizzle_names

- etnaviv: remove not used tgsi includes

- ci/etnaviv: update ci expectation

- ir3/analyze_ubo_ranges: Move IR3_DBG_NOUBOOPT check

- etnaviv: nir: call nir_remove_dead_variables(..) before linking setup

- etnaviv: linker: add fallback lookup to VARYING_SLOT_BFC[n]

- nir: add helper to clear all pass_flags

- nir/lower_amul: make use nir_shader_clear_pass_flags(..)

- etnaviv: make use nir_shader_clear_pass_flags(..)

- etnaviv: nir: do a late nir_opt_cse run

- docs: mark OES_texture_half_float done on etnaviv

- etnaviv: support OES_texture_half_float_linear

- ci/etnaviv: update ci expectation

- docs: update etnaviv extensions

- etnaviv: linker: handle scenario where there are FS inputs without matching VS output

- etnaviv: linker: clean up etna_link_shader(..)

- nir: rename intrinsic to have a more generic nameing

- nir: rename has_txs to has_texture_scaling

- nir/lower_tex: optimize offset lowering for has_texture_scaling

Christopher Snowhill (2):

- Corrects log print to produce hexadecimal base output

- intel: Sync xe_drm.h

Collabora’s Gfx CI Team (4):

- Uprev Piglit to 79a084c56b6dd79f7c3a97b57a72963121ebb1e6

- Uprev Piglit to 536975d94a40cf76a69fcfa786c2513eccd0c989 https://gitlab.freedesktop.org/mesa/piglit/-/compare/79a084c56b6dd79f7c3a97b57a72963121ebb1e6…536975d94a40cf76a69fcfa786c2513eccd0c989

- Uprev Piglit to d8c08d123fadb986e9a8a7887b922ff63fcff52e https://gitlab.freedesktop.org/mesa/piglit/-/compare/536975d94a40cf76a69fcfa786c2513eccd0c989…d8c08d123fadb986e9a8a7887b922ff63fcff52e

- Uprev Piglit to 5036601c43fff63f7be5cd8ad7b319a5c1f6652c

Connor Abbott (42):

- tu: Don’t override depth for GMEM

- tu: Don’t pre-shift depth and stencil pitch

- freedreno/fdl: Don’t pre-shift image view pitch

- freedreno/fdl: Expose view offset

- tu: Add 3D GMEM load path

- tu: Use dirty bit for scissor state

- tu: Precompute maximum views across all subpasses

- tu: Merge RB_DEPTH_CNTL and RB_STENCIL_CONTROL drawstates

- tu: Make dynamic viewport and scissor count more accurate

- freedreno/a6xx: Document per-view viewport in GRAS_SU_CNTL

- tu: Parse fragment density map attachment info

- tu: Implement sampling the fragment density map

- tu/cs: Add support for CS patching

- tu: Add core FDM patchpoint infrastructure

- ir3: Record whether a shader writes gl_ViewportIndex

- tu: Implement FDM viewport patching

- tu: Implement FDM scaled loads/stores

- nir, ir3: Add option to use unscaled FragCoord for input attachments

- tu, ir3: Handle FDM shader builtins

- tu/autotune: Always prefer GMEM with fragment density maps

- tu: Don’t allow importing/exporting subsampled images with modifiers

- tu: Expose VK_EXT_fragment_density_map

- util/bitset: Add some extra functions

- vk/graphics_state: Remove vk_subpass_info

- vk/graphics_state: Add feedback_loop_input_only

- vk/graphics_state: Add VI_BINDINGS_VALID state

- vk/graphics_state: Fix some assertions when copying state

- vk/graphics_state: Add helpers for pre-baking state

- radv: Fix radv_pipeline_is_blend_enabled

- vk/graphics_state: Track attachment count as state

- vulkan: Fix renderpass flags with driver-specific renderpass

- vk/graphics_state: Don’t track each vertex input field

- tu: Don’t use A6XX_PC_PRIMITIVE_CNTL_0::TESS_UPPER_LEFT_DOMAIN_ORIGIN

- freedreno/a6xx: Fix name of A6XX_PC_PRIMITIVE_CNTL_0::TESS_UPPER_LEFT_DOMAIN_ORIGIN

- tu: Split pipeline struct into different types

- tu: Rewrite to use common Vulkan dynamic state

- tu: Use common dirty tracking for PC_PRIMITIVE_CNTL_0

- freedreno/regs: Document a7xx CP_FIXED_STRIDE_DRAW_TABLE

- tu: Fix vk2tu_*_stage flag type

- vk/graphics_state: Fix copying MS locations pipeline state

- tu: Fix per-view viewport state propagation

- tu: Fix assert in FDM state emission

Constantine Shablia (3):

- anv: move get_features after get_device_extensions (ugly diff)

- panvk: use common vkGetPhysicalDeviceFeatures2

- v3dv: use common vkGetPhysicalDeviceFeatures2

Constantine Shablya (7):

- vulkan: add common implementation of vkGetPhysicalDeviceFeatures2

- vulkan: introduce supported_features parameter to vk_physical_device_init

- anv: switch to using the common vkGetPhysicalDeviceFeatures2

- vulkan: inline vk_get_physical_device_features into vk_common_GetPhysicalDeviceFeatures2

- vulkan: put interesting code before boring code

- vulkan: put TEMPLATE_H before TEMPLATE_C

- vulkan: rename vk_physical_device_features.py to vk_physical_device_features_gen.py

Corentin Noël (18):

- ci: Uprev crosvm and virglrenderer

- nir: Propagate the type sampler type change to the used variable.

- build-crosvm: Use the pkg-config crate 0.3.27

- util: Use the gcc_struct attribute for packed structures in mingw

- ci: Bump base tag to rebuild piglit

- ci: uprev virglrenderer and crosvm

- gallium: Incorporate the device release in dri_destroy_screen_helper

- gallium: Rename dri_destroy_screen_helper into dri_release_screen

- pipe-loader: Document the behavior regarding screen creating failures

- pipe-loader: Do not destroy the winsys on screen creation failure

- gallium: Only call dri_init_options when the screen is actually created

- gallium: Use the common destroy function on screen initialization failure

- gallium: Rename dri_init_screen_helper into dri_init_screen

- compiler: Allow the explicit_stride of aoa types to be zero

- nir/split_64bit_vec3_and_vec4: Use the right number of components

- ci: Uprev virglrenderer

- ci: Add locked flag to bindgen-cli installation

- virgl: Do not expose EXT_texture_mirror_clamp when using a GLES host

Daniel Schürmann (60):

- radv/rt: fix total stack size computation

- radv/rt: properly destroy radv_ray_tracing_lib_pipeline on error

- radv/rt: rename radv_ray_tracing_module -> radv_ray_tracing_group

- radv/rt: add shader stage indices to radv_ray_tracing_group

- radv/rt: replace uses of pGroups with radv_ray_tracing_group

- radv/rt: remove merged VkRayTracingShaderGroupCreateInfoKHR

- vulkan/pipeline_cache: replace raw data objects on cache insertion of real objects

- vulkan/pipeline_cache: use vk_pipeline_cache_insert_object() to replace raw data objects

- radv: add padding to radv_shader_binary_legacy

- vulkan/pipeline_cache: expose vk_raw_data_cache_object

- radv/pipeline_cache: add NIR caching capabilities

- radv/rt: expose radv_parse_rt_stage()

- radv/rt: introduce struct radv_ray_tracing_stage

- radv/rt: retain parsed NIR shaders in radv_ray_tracing_lib_pipeline

- radv/rt: use precompiled stages to create RT shader

- radv/rt: refactor compute_rt_stack_size() to use radv_ray_tracing_stage information

- radv/rt: remove merged VkPipelineShaderStageCreateInfo

- radv/rt: Fix and improve VkPipelineCreationFeedback

- radv/rt: change base of radv_ray_tracing_lib_pipeline to radv_compute_pipeline

- radv/rt: unify radv_ray_tracing_lib_pipeline and radv_ray_tracing_pipeline

- radv/rt: unify radv_rt_pipeline_create() and radv_rt_pipeline_library_create()

- radv/rt: refactor radv_rt_pipeline_compile()

- radv/rt: use vk_multialloc for radv_ray_tracing_pipeline

- radv/rt: store stack_sizes per stage instead of per group

- vulkan/pipeline_cache: don’t log warnings for internal caches

- vulkan/pipeline_cache: don’t log warnings for client-invisible caches

- radv: add remaining RT shader args for separate compilation

- nir,amd: add nir_intrinsic_store_[scalar|vector]_arg_amd to overwrite inputs

- nir: add nir_intrinsic_resume_shader_address_amd

- aco: implement nir_intrinsic_load_resume_shader_address_amd

- aco: implement select_program_rt()

- radv/rt: adjust shared_size when lowering hit_attribs

- radv/rt: extend radv_pipeline_group_handle with shader VAs

- radv/shader_info: add RT stages to radv_get_user_data_0()

- radv/rt: implement radv_nir_lower_rt_abi to lower RT shaders for separate compilation

- radv/rt: implement radv_rt_nir_to_asm()

- radv/rt: change RT main shader to MESA_SHADER_INTERSECTION

- radv/rt: replace pCreateInfo with VkPipelineCreateFlags in rt_variables

- radv/rt: pass radv_ray_tracing_pipeline to RT shader creation

- radv/rt: add and use specialized cache search/insert functions

- radv/rt: reference library shaders during radv_rt_fill_stage_info()

- radv/rt: don’t write cache hit feedback per stage.

- radv/rt: create compile_rt_prolog() function

- radv/rt: set up RT shader args for separate compilation

- radv/rt: adjust lower_rt_instructions() for shader functions [disables RT]

- aco: adjust RT prolog for shader functions [disables RT]

- radv/rt: separate shader compilation

- radv/debug: dump ray tracing shaders in case of a hang

- radv/rt: use priorities to select the next shader

- radv/rt: remove now dead code

- radv: reference pipeline cache object in radv_pipeline

- aco/assembler: align resume shaders with cache lines

- aco/assembler: align loops if it reduces the number of cache lines

- aco/assembler: change prefetch mode on GFX10.3+ during loops if beneficial

- vulkan/pipeline_cache: add ‘skip_disk_cache’ option

- radv/meta: disable disk cache for meta shaders

- radv: migrate radv_shader hash to BLAKE3

- amd: move end-of-code marker padding to ACO.

- amd: Do shader binary alignment for prefetch at memory allocation time.

- aco/insert_exec_mask: set Exact mode after p_discard_if when necessary

Daniel Stone (10):

- wsi/wayland: Support VK_KHR_present_wait

- ci/zink: Disable Freedoom trace on ANV

- ci: Respect $HTTP_PROXY for ci_run_n_monitor

- ci: Elaborate causes for job retries

- ci: Don’t retry manual or scheduled jobs

- ci: Extend a618_vk_full runtime

- CI: Re-enable freedreno CI

- ci/fdno: Pause a660 testing

- Revert “ci/fdno: Pause a660 testing”

- egl/wayland: Always initialise fd_display_gpu

Danylo Piliaiev (42):

- freedreno: Early exit in device matching if id doesn’t have chip_id

- ir3/a7xx: NOPs may have some no-op bits set

- ir3/a7xx: Add new lock/unlock CS instructions

- ir3/a7xx: Add new form of stg.a/ldg.a addressing

- ir3/a7xx: Add STSC definition

- ir3: Document that stc has higher DST upper bound than we defined

- ir3/a7xx: Document “alias” instruction

- ir3: documents (ss) flag for cat7 instructions

- tu: Create drm fd per logical device

- tu: Move VMA heap to the logical device

- tu: Re-enable bufferDeviceAddressCaptureReplay

- freedreno/perfcntrs: Link with libfreedreno_common

- freedreno: Decouple GPU gen from gpu_id/chip_id

- freedreno,ir3: Don’t call fd_dev_64b more than necessary

- freedreno/decode: Correctly handle chip_id

- tu: Add missing dbg reg stomping to tu_CmdBeginRendering

- tu: Fix zombie VMAs array not initialized when first BOs may be freed

- freedreno/regs: Print xml validation error if validation fails

- freedreno/rnn: Fix addvariant being set effectively once

- freedreno/rnn: Make addvariant work for fields in the same reg

- freedreno/rnn: Take into account array’s variant for regs

- freedreno/regs: Change a7xx regs to have open range for generation

- freedreno/regs: More CP commands are the same on a7xx as on a6xx

- freedreno/regs: Document CP_MEM_TO_SCRATCH_MEM

- freedreno/regs: Document a7xx CP_MODIFY_TIMESTAMP

- freedreno/regs: Clarify polling on a7xx for CP_WAIT_REG_MEM/CP_COND_WRITE5

- freedreno/regs: Add a7xx pseudo-regs to CP_SET_PSEUDO_REG

- freedreno/regs: a7xx has a new source type CP_REG_TEST

- freedreno/regs: Add 2 new a7xx modes to CP_COND_REG_EXEC

- freedreno/regs: Add some new a7xx events

- freedreno/regs: Add more a7xx regs and reg fields

- freedreno/regs: Fix a7xx SP_FS_PREFETCH definition

- freedreno/regs: Generate per-gen reg usage tables

- freedreno/regs: Define usage for all a6xx/a7xx regs

- tu: Allow reg stomping of compute related registers

- tu: Use reg usage tables for stale reg dbg option

- freedreno/regs: Properly document a7xx CP_EVENT_WRITE, CP_WAIT_TIMESTAMP

- freedreno/regs: Document a7xx CP_BV_BR_COUNT_OPS

- freedreno/regs: Rename SP_FS_CTRL_REG0.DIFF_FINE into LODPIXMASK

- ir3: Fix FS quad ops returning wrong values from helper invocations

- tu,freedreno: Forbid blit event for R8G8_SRGB due to gpu faults

- radv: fix unused non-xfb shader outputs not being removed

Dave Airlie (134):

- radeonsi/ac: move some vcn defines to common

- radv/video: add missing gfx family

- radv: set a video decode ip block in physical device.

- radv/winsys: handle encoder queue padding/submits.

- radv/video: add a video addr gfx mode

- radv/video: fix dpb surface programming

- radv/video: start adding gfx11 vcn decoder

- lp_jit: use pipe max for the lp_jit texture levels.

- gallivm: consolidate draw/lp texture type.

- gallivm: consolidate llvmpipe/draw sampler types.

- gallium: consolidate jit image types between draw/llvmpipe

- gallivm: reorder some texture/image members.

- vulkan/cmd_queue: handle beta extensions.

- vulkan: write beta extensions into generator scripts.

- draw: align common members in jit context structs.

- llvmpipe: refactor fs/cs jit structure members.

- gallivm: refactor common resources out of contexts

- gallivm/draw/llvmpipe: consolidate the sampler/image dynamic state fns

- gallivm: add common code for sample/image tracking.

- llvmpipe: move to common sampler/image binding code

- draw: move to use common sampler/image binding code

- llvmpipe/cs: refactor cs generator args to use an enum

- gallivm/draw: refactor vertex header jit type out

- llvmpipe: convert a bunch of shader_type ifs to switches.

- llvmpipe/cs: start making variant generator less compute specific

- llvmpipe/cs: support passing a csctx instead of using implicit one

- lavapipe: add lavapipe specific shader stages define.

- lvp: explictly skip compute shader stage.

- gallivm: fix whitespace in get_deref_offset

- gallivm/nir: refactor the local invocation index calc.

- lvp: use stage mask

- lvp: use stage iterator macros instead of explicit loops

- ci: reenable lavapipe

- radv/video: add missing space checks for video.

- radv/video: use correct h264 levels

- radv/video: fix h264/265 dpb usage.

- radv/video: add missing offset to the dpb binding.

- radv/video: rework stream handle generation.

- radv/video: fix some whitespace.

- radv/video: add debug flag to enable dpb image array on newer GPUs.

- radv/video: fix physical device format property count.

- vk/video: add a common function to get block alignments for profiles

- radv: align video images internal width/height inside the driver.

- anv/video: move format properties to outarray.

- radv/meta: fix uninitialised stack memory usage.

- gallium: add task/mesh shader query types to stats interface.

- gallium: expand pipe_grid_info to handle task/mesh.

- gallium: add a new PIPE_SHADER_MESH_TYPES

- freedreno: don’t report task/mesh.

- gallium: add task/mesh shader entrypoints in context

- iris: don’t return shader params for task/mesh.

- crocus: don’t report mesh/task limits

- radeonsi: don’t report shader params for task/mesh

- svga: don’t report mesh/task shader limits

- d3d12: don’t report mesh/task limits

- gallium/cso: add task/mesh shaders to the cso cache

- gallium/nir/tgsi: add various support for task/mesh bits

- lavapipe: when in doubt, swizzle the swizzle

- lavapipe: fix pipeline sanitizing.

- lavapipe: fix indentation whitespace

- draw: add mesh shader infrastructure

- draw: move draw_vertex_info and draw_prim_info to public header.

- draw: add a mesh primitive assembler.

- draw: add mesh pipeline middle end.

- draw: add support for per primitive aos emission

- gallivm: add support for payload access

- gallivm/nir: add launch mesh workgroups

- gallivm/nir: add a mesh interface and vert/prim count setting.

- gallivm/nir: call task shader lowering.

- gallivm/nir: add support for mesh shader outputs.

- llvmpipe: resize arrays to handle mesh shaders.

- llvmpipe: start adding task/mesh support.

- llvmpipe: bump dirty tracker to 64-bits.

- llvmpipe: add dirty bits for mesh and task shaders.

- llvmpipe: add debug bit for mesh shaders

- llvmpipe: add query support for task/mesh shaders

- llvmpipe: bind task/mesh resources and dirty bits

- gallivm/cs: add payload ptr to the cs thread data.

- llvmpipe/cs: add task/mesh shader support to compute shader builder.

- llvmpipe/cs: add multiple stride indirect to fill_grid_info.

- llvmpipe: add mesh shader drawing.

- llvmpipe: enable task/mesh shader support.

- lavapipe: handle some mesh shader stage differences.

- lavapipe: add mesh query support

- lavapipe: add support for task/mesh shader stages in various places

- lavapipe: add execution backends for mesh shader draw apis

- lavapipe: enable task/mesh shaders.

- docs: update docs for lavapipe mesh shading

- llvmpipe: emit fences for barrier.

- lavapipe: don’t remove queue family barriers.

- gallivm/nir: fix shuffleup tests.

- draw: rename jit to vs_jit in lots of places.

- draw/tess: drop unused tgsi bits.

- gallium/tgsi/draw/softpipe: remodel shader const/buffer bindings.

- draw: refactor resources to use arrays instead of explicit structs.

- draw: add a max stage define and use it in a few places

- draw: repack some members of context.

- radv/video: convert video format properties to an outarray

- radv/video: convert session memory requirements to outarray.

- radv/video: don’t supply an 8-bit format for a 10-bit dpb.

- radv/video: rework h265 reference frame bindings.

- radv/video: fix hevc st rps programming

- radv/video: fix hevc scaling lists.

- lavapipe: ignore another yuv format.

- radv/video: report bad profile operation if h264 profile isn’t supported.

- radv/video: fix hevc scaling list order.

- radv/video: program frame number correctly.

- radv/video: program hevc max dec pic buffering correctly

- radv/video: restrict the number of IBs on video related queues.

- ac/radeonsi: add av1 defaults header file from radeonsi

- radv/video: drop incorrect defines for uapi ones.

- lavapipe: check sampler pointer before deref

- draw/gs: handle extra shader outputs in geometry.

- lavapipe: expose subgroups in mesh/task shaders.

- gallivm: store thread id in separate values.

- gallivm: convert block_id to discrete values.

- gallivm: convert grid_size to discrete values.

- gallivm: make block_size use discrete values.

- clc: llvm 17 requires opaque pointers.

- gallium/va: fix superres av1 decoding.

- llvmpipe/linear: don’t allow linear path for shader output with location frac

- llvmpipe/linear: refactor linear samplers into templated code.

- llvmpipe/linear/tgsi: calculate num_texs properly for nir.

- llvmpipe/linear: add sample routines for swapping r/b channels

- llvmpipe/linear: add support for sampling when cbuf order is different.

- llvmpipe/linear: add support for rgba color buffers.

- ci: update fails for fixed tests due to llvmpipe linear changes.

- gallivm: fix atomic global temporary storage.

- llvmpipe: fix fragdata/lastfragdata heuristic a bit more.

- zink: turn off threaded cpu access if not visible.

- llvmpipe: enable f16 paths on aarch64.

- radv: don’t emit event code on video queues.

- spirv: use a pointer sized int type for opencl event_t

- radv/video: take db alignment into account when allocating images.

David (Ming Qiang) Wu (1):

- radeonsi/vcn: add an exception of field case for h264 decoding

David Heidelberg (129):

- ci/amd: 4/5 runners TPad-C13 runners are online, restore most of the tests

- ci/dxvk: uprev to 2.1

- ci/amd: update checksums after DXVK 2.1 update

- ci: bump kernel to the 6.3, support HDK 888 based on sm8350

- ci/freedreno: do not restrict to 2 cpus on a530

- ci: drop overriding new a530 firmware due to preemption issues with older kernel

- ci/freedreno: a530 behaves stable in 6.3

- ci/freedreno: update a530 flakes, fails and skips

- ci/freedreno: fix the a530_piglit job and switch to Weston

- ci: polish deqp-runner a bit

- ci: uninstall libdrm from the GL and VK containers

- ci: do not retry on forks to get the upstream kernel and rootfs

- ci/mold: bump to 1.11.0

- ci: add Adreno 660 on sm8350 chipset (HDK 888)

- ci/lava: implement fastboot support

- ci/lava: add support for HDK 888 firmware

- ci: add a660 firmware into rootfs

- pvr: drop unused variable

- ci/dzn: add flaking test

- ci/skqp: replace license with SPDX and extract the used branch

- ci/skqp: update to the Android CTS 12.1_r5 version

- mesa/main: drop unused variable

- nir/lower_io_to_vector: initialize base

- panvk: clear dangling pointers

- ci: uprev kernel to 6.3.1 with fixed patch for Adreno SMMU

- util/tests: adjust for new gtest

- gtest: Update to 1.13.0

- ci/skqp: handle all warnings printed with clang >= 14

- panvk: drop path from panvk_physical_device struct

- venus: drop unused sem_feedback_count from vn_queue_bind_sparse_submit_batch

- ci/broadcom: skip timeouting ssbo.layout.3_level_array.std430.mat4 on RPi4

- ci/venus: add recent flakes

- ci/freedreno: add recent a630 flake

- ci/v3d: add flaking opengl 1.1@depthstencil-default_fb-drawpixels-float-and-ushort

- ci/amd: re-enable VA-API testing

- ci/rules: radeonsi VAAPI rules should include also VA-API targets

- ci: update libva to 2.18.1

- ci/gtest: improve the runner script

- ci/amd: update VA-API expectations

- ci/amd: add radeonsi-raven-va-full job to cover all VA-API tests

- ci/gtest-runner: fix results reporting

- ci/venus: add missing flakes

- ci/crosvm: update cmdline options

- docs: update crosvm networking options

- ci/radv: add another raven flake dEQP-VK.draw.dynamic_rendering.primary_cmd_buff.linear_interpolation

- ci/v3dv: add often timeouting ssbo.layout.3_level_array.std140.column_major_mat4

- r300: workaround GCC 12+ warning, declare NULL value as unreachable

- docs: use meson instead invoking ninja directly

- ci/freedreno: disable 3 jobs to match our farm 3 devices down

- ci/freedreno: rename piglit job to respresent the real testing it does

- ci: move from pkg-config to pkgconf

- ci: use meson setup and meson install instead of meson and invoking ninja directly

- ci: bump libdrm from 2.4.110 to 2.4.114 present in Debian 12

- ci: install stock android-libext4-utils (available in 12, bookworm)

- ci: bump gfxreconstruct revision up to compatible version with Debian 12

- ci: libwayland from 1.18 to 1.21 and wayland protocols from 1.24 to 1.31

- ci: VVL uprev (temporary until new release will be published)

- ci: bump from Debian 11 (bullseye) to 12 (bookworm)

- ci/apitrace: install win64 apitrace only on x86_64

- ci/crosvm: install libelogind0 and sysvinit-core for poweroff functionality

- ci: add clang-15 and clang++-15 wrapper script

- ci/skqp: skqp can’t live with compiler named clang-15, provide symlink

- ci: drop gallium-aux test on msan builds, renable freedreno

- ci/mingw: disable as it’s broken

- ci/venus: add fail after CI uprev to the Debian 12

- ci/virpipe: add flakes introduced with CI uprev to Debian 12

- ci/zink: disable flaking anv traces

- ci: enable shellcheck on whole .gitlab-ci

- ci: disable bogus GCC warning with -Warray-bounds

- ci: do not fail when SHA1 impl. produce stringop-overreads warning

- ci/lavapipe: document subgroups.shuffle.compute.subgroupshuffleup_double_constant crash

- ci/lavapipe: zink failures

- ci/llvmpipe: document intel_shader_atomic_float_minmax@execution@ssbo-atomic*

- bin/ci: mention requirements.txt

- gitlab: add template for merge requests

- ci/zink: add KHR-GL46.limits.max_fragment_interpolation_offset flake

- ci/amd: previously missed raven flake

- ci/panfrost: add largest possible eglcreatepbuffersurface and then glclear flake

- gitlab: prefill MR template with first multiline commit message

- ci: bump Alpine to 3.18

- ci/ccache: recent ccache changed a output a bit, adapt script

- ci: rename x86 and amd64 to x86_64, armhf to arm32, and i386 to x86_32

- ci: use bash arrays in Fedora script + shebang change

- ci/fedora: re-enable ccache

- traces: update sir-f720 trace expectations for zink on anv and freedreno

- ci: missed variable inside the big rename and split ARCH and DEBIAN_ARCH

- ci: fix KVM module modprobe code

- ci: explicitely state BUILDTYPE

- ci: rename S3 artifacts according to scheme mesa-$arch-$config-$buildtype

- ci: rename MINIO to S3

- ci: rename MINIO_HOST variable to S3_HOST

- ci: replace MINIO_RESULTS_UPLOAD with S3_RESULTS_UPLOAD

- ci: remove BUILD_PATH, always use S3_ARTIFACT_NAME

- ci/lava: rename rest local MINIO_ variables to S3_

- ci/android: remove the artifact file just as we unpack it

- ci: valve and freedreno farm is down

- ci/windows: move microsoft farm rules

- ci/etnaviv: if farm is down, we expect no manual jobs can be triggered

- ci/amd: hide vaapi job dependent on Collabora farm when it’s down

- ci/crocus: depend on state of the Anholt farm

- ci: implement farms handling trough files inside .ci-farms

- ci/docs: fixup incorrect spacing around console block

- ci/panfrost: switch panfrost-g52-piglit-gles2 from X to XWayland

- ci/fastboot: use gzipped Image to avoid compressing on the runner

- ci/microsoft: uploading artifacts gets stuck currently (retried)

- ci/microsoft: rename manual rules according to rest introduced rules

- ci: create manual farm rules

- ci/traces: guard DXVK and VK behind VK_DRIVER

- ci/apitrace: include version with LTO enabled

- ci/traces: print version of apps used for replaying traces

- ci: when touching farms, never run manual jobs

- ci/microsoft: partly revert rename from container-rules to manual-rules

- ci/x86: Build ANGLE for testing layering on VK drivers.

- ci/amd: switch all possible jobs from X11 to Wayland

- ci/freedreno: switch a630_{piglit,skqp} and a618_gl to Weston

- ci/freedreno: re-enable a530 as it’s now stable with multiple skips

- ci/freedreno: document number of a630 devices available

- ci/freedreno: add KHR-GL46.buffer_storage flakes

- ci/freedreno: add execution@varying-struct-copy-return-vs flake

- ci/container: add weston into Vulkan container

- ci/container: we need to keep the wine inside

- ci/traces: switch from xvfb to Weston XWayland

- ci/freedreno: another batch of a530 flakes

- ci: add quirk for GitLab assuming changes is always true for scheduled runs

- ci/microsoft: when re-enabling Windows Farm, always run the container

- ci: disable Material Testers.x86_64_2020.04.08_13.38_frame799.rdc trace

- ci/amd: fix timeouting radeonsi-raven-va-full job

- ci: add perfetto into mesa git-cache

- ci/deqp: really remove the uncompressed results.csv file

David Redondo (1):

- egl/wayland: fix oob buffer access during buffer_fds clean up

David Rosca (7):

- radeonsi: Use DIV_ROUND_UP instead of ALIGN_POT

- frontends/va: Init view_resources array in vlVaPut/GetImage

- frontends/va: Ignore requested size when creating VAEncCodedBufferType

- Revert “radeonsi/vcn: add an exception of field case for h264 decoding”

- frontends/va: Flush after unmapping VAImageBufferType

- frontends/va: Process VAEncSequenceParameterBufferType first in vaRenderPicture

- frontends/va: Set default rate control values once when creating encoder

Derek Foreman (1):

- vulkan/wsi: Allow binding presentation_timing when software rendering

Diederik de Haas (1):

- treewide: spelling fixes

Dmitry Baryshkov (3):

- freedreno/registers: updte HDMI registers to include CEC details

- freedreno/registers: add bitfield for DSI wide bus enablement

- tu: Pass real size of prime buffers to allocator

Dmitry Osipenko (4):

- iris/bufmgr: Use intel_ioctl() helper for GEM_SET_TILING

- intel/dev: Use intel_ioctl() helper for GEM_SET_TILING

- anv: Use intel_ioctl() helper for GEM_SET_TILING

- hasvk: Use intel_ioctl() helper for GEM_SET_TILING

Dmitry Rogozhkin (1):

- meson/vaon12: fix driver file name for mingw build

Donald Robson (2):

- pvr: Move heap initialisation out of pvr_winsys_helper.

- pvr: Rename rogue_fw.xml -> rogue_kmd_stream.xml.

Dor Askayo (3):

- meson: add feature option for use of system Clang headers at runtime

- ci: Disable “opencl-external-clang-headers” when “microsoft-clc” is enabled

- nouveau: add exported GEM handles to the global list

Dr. David Alan Gilbert (4):

- rusticl/screen: Wrap get_timestamp

- rusticl/device: Stash timestamp availability

- rusticl/api: Implement get_{device_and_}host_timer

- rusticl/api: Wire up CL_DEVICE_PROFILING_TIMER_RESOLUTION

Dylan Baker (57):

- docs: add release notes for 23.0.1

- docs: Add sha256 sum for 23.0.1

- docs: add release notes for 23.0.2

- docs: Add sha256 sum for 23.0.2

- docs: add release notes for 23.0.3

- docs: Add sha256 sum for 23.0.3

- docs: update calendar for 23.0.1

- docs: update calendar for 23.0.2

- docs: update calendar for 23.0.3

- docs: add release notes for 23.0.4

- docs: Add sha256 sum for 23.0.4

- docs: update calendar for 23.0.4

- intel/tools/error2aub: Fix potential out of bounds read

- meson: Key whether to build batch decoder on expat

- bin/pick: fix issue where None for nomination_type could fail

- bin/pick: use lineboxes to make the UI clearer

- bin/pick: Add support for adding notes on patches

- bin/pick-ui: use asyncio.new_event_loop

- meson: Add back execmem option as a deprecated option

- VERSION: update to 23.2.0-rc1

- docs: Update release calendar for 23.2.0-rc1

- .pick_status.json: Update to 6e87b277bde71e30c98ab9dda7bd2f2017b77ed5

- .pick_status.json: Update to 27d30fe3c0e71efd90fcfe209d8515b195b0075f

- .pick_status.json: Update to 3a8aae9e6aa526367523c58dfe5046909776be74

- .pick_status.json: Update to 59087003c4b7a4f5a6bf207f214a4c3443b9759f

- ci: mark passing zink and lima tests as expected

- docs: truncate new_features.txt

- docs: add release notes for 23.2.0

- VERSION: update to 23.2.0

- docs: Update release calendar for 23.2.0

- docs: Add sha256 sum for 23.2.0

- Revert incorrect 23.2.0 release

- VERSION: update to 23.2.0-rc2

- docs: Update release calendar for 23.2.0-rc2

- .pick_status.json: Update to e88c0770969f6ae0bfa5bea0f9d99687d257fea1

- .pick_status.json: Mark d3f26cbbe1a957b76804da44bbf5e30de2bac941 as denominated

- .pick_status.json: Update to c5a6e88c4e816ded6105b74f101528eb004e0581

- .pick_status.json: Update to 088c2bbd51a48eb0de1e9fd23c529759585bad59

- .pick_status.json: Update to 088c2bbd51a48eb0de1e9fd23c529759585bad59

- VERSION: update to 23.2.0-rc3

- docs: Extend calendar entries for 23.2 by 2 releases.

- docs: update calendar for 23.2.0-rc3

- .pick_status.json: Update to 10e75aae1bddee9795b1ff04ffd656b0da79b5b5

- .pick_status.json: Updates notes for aebe58458611e0bb585a5bce8e16c1175783f3cc

- .pick_status.json: Updates notes for f8cb0d8a44afb9c70f38e359ffe0ad57416e66a4

- Revert “Revert “intel/ci: disable iris-jsl-deqp because it always fails for an AMD MR””

- .pick_status.json: Updates notes for 93b4f200dead198e680991a1e95bf3d3b58f87bd

- .pick_status.json: Updates notes for 7e246f7f2bde0c859269c4b81505bd0887045e7b

- .pick_status.json: Updates notes for 9865e5dff49395543da4331a943ba5a03ce6a413

- .pick_status.json: Update to 1cdc4be14b66108ae0e8069686ac3efe52bef3cb

- .pick_status.json: Updates notes for b8ea9724fa5ca38620bc0cdc01b7addd05574954

- .pick_status.json: Updates notes for 68027bd38e134f45d1fe8612c0c31e5379ed7435

- VERSION: update to 23.2.0-rc4

- docs: Update release calendar for 23.2.0-rc4

- .pick_status.json: Mark fa6562b239f00f9f72c988459e252bdee072fd73 as denominated

- .pick_status.json: Update to f4fecdad724edf8187d22928ed844af7fd84654d

- zink/ci: mark unexpcted pass as expected

Emma Anholt (124):

- zink: Avoid infinite loop finding no var in update_so_info.

- ci/crocus: Update checksum for STK.

- symbol_table: Store the symbol name in the same allocation as the symbol entry.

- symbol_table: Don’t maintain the HT as we’re destroying the table.

- symbol_table: Don’t bother resetting the key on popping scope.

- symbol_table: Prehash the key on insert, and reuse the entry on shadowing.

- tu/perfetto: Refactor code out of the macro, to stage_end.

- tu/perfetto: Clean up an extra token paste to just use the arg being passed.

- tu/perfetto: Use tu_CmdBeginDebugUtilsLabelEXT as a stage event in perfetto.

- tu/perfetto: Drop unused arg to send_descriptors().

- tu/perfetto: s/MRTs/attachment_count/ in traces.

- anv: Only enable GPL if ANV_GPL=true, or if zink or DXVK are the engine.

- anv: Refactor repeated pipeline creation feedback output code.

- ci/lvp: Update sanctuary trace hash.

- ci/radv: Demote navi21 to manual until recent flakiness resolves.

- ci/zink+tu: Drop some intermittently failing a630 traces.

- ci/freedreno: Drop portal-2-v2 trace.

- ci/radv: Add known flakes for #8817

- ci: Crank up the yamllint line length limit.

- ci/freedreno: Demote a530 to manual again.

- ci: Make a variable for the repeated rootfs directory name.

- ci: Add the Vulkan validation layer to amd64 rootfs builds.

- ci/zink: Re-enable traces now that !20319 has landed.

- ci: Move zink’s validation layer setup to deqp-runner.sh.

- ci/zink: Enable the validation layer on the TGL GL46 run.

- blob: Don’t valgrind assert for defined memory if we aren’t writing.

- util/log: Fix log messages over 1024 characters.

- ci: Move some timeout xfails to skips.

- ci/deqp: Update to 1.3.5.1 and pull in additional bugfixes from main.

- ci/zink: Drop anv/lvp validation exceptions that should be fixed in the CTS.

- ci/valve: Add a workaround for finding libdrm on navi21s.

- ci/panfrost: Drop tex3d-maxsize on g52.

- ci/lima: Skip ppgtt_memory_alignment that flaked a job with the oomkiller.

- ci/crocus: Note a recent regression.

- ci/zink: Try to update TGL results for new MSAA behavior.

- vulkan: Handle alignment failure in the pipeline cache.

- vulkan: Actually increment the count of objects in GetPipelineCacheData.

- Revert “ci/zink: Try to update TGL results for new MSAA behavior.”

- ci/zink: Update more xfails for tgl piglit.

- ci/zink+anv: Test piglit quick_gl pre-merge, dropping a few KHR-GL46 tests.

- ci/radeonsi: Mark glx-make-current as flaky.

- ci/radv: Disable flaky heaven d3d9 trace.

- ci/turnip: Drop an xfail from the full run for a recent fix.

- ci/turnip: Drop the IUB bug fallout flakes.

- mesa: Fix debug logging of fp compile compare func.

- mesa: Fix precompile of GLSL programs with shadow samplers.

- zink: Explain some of the current pathway for shadow sampling.

- zink: Fix silly void * type in rewrite_tex_dest.

- zink: Don’t flag legacy_shadow_mask for RED-only reads in the shader.

- ci: Re-enable some piglit tests that should be fast enough post-uprev.

- ci/zink+anv: Skip a couple more long tests pre-merge.

- compiler: Update reference to name_for_stage func.

- nir: Add helpers for lazy var creation.

- drm-shim: Avoid assertion fail if someone does close(-1).

- glsl: Allow invariant flags on sysvals, such as gl_PointCoord.

- nir/lower_texcoord_replace: Flag SYSTEM_VALUE_POINT_COORD read when we load it.

- zink: Use PIPE_CAP_FS_POINT_IS_SYSVAL.

- mesa: Use find_state_var in lower_builtin.

- nir: Use find_state_var in lower_atomics_to_ssbo.

- nir,mesa: Add helpers for creating uniform state variables.

- mesa: Move ATI_fragment_shader fog code emit to a NIR lowering pass.

- mesa/ARB_fp: Drop an extra enum for fog mode.

- mesa/ARB_fp: Use the NIR pass for adding fog code instead of ARB instrs.

- mesa: Move ARB_vp position invariant option handling to NIR.

- mesa: Drop ARB program helper functions that are no longer used.

- mesa: Drop unused control flow instructions for ARB programs.

- mesa: Drop remaining unused ARB program instructions.

- mesa: Move st_prog_to_nir_postprocess out of prog_to_nir.

- mesa/ati_fs: Move sampler dim adjustment to a separate NIR pass.

- mesa/ati_fs: Move NIR translation to ATI_fs compile time.

- mesa/ati_fs: Move prog->SamplersUsed/TexturesUsed setup to EndFragmentShader.

- mesa: Use the NIR pass for fixed function fog.

- mesa/ffvs: Fix mvp_with_dp4 position transformation.

- mesa: Use shared NIR code for ARB_vp and FF VS position transformation.

- ci/freedreno: Update minetest hash.

- Revert “ci: disable anholt’s farm”

- crocus: Fix regression from !20153

- ci/crocus: Add a missing xfail.

- ci/turnip: Update full-run xfails.

- tu: Ignore unused shader stages in pipeline library creation.

- anv: Drop unused ALL_GRAPHICS_LIB_FLAGS.

- ci/crocus: Update trace hash for the neverball regression.

- ci/etnaviv: Update some xfails common between the last 3 nightly runs.

- v3d: Respect nir_intrinsic_store_output’s write_mask.

- mesa: Emit full output write in st_pbo_create_vs().

- mesa: Port the pbo.use_gs path to NIR and let it get used on NIR drivers.

- softpipe: Drop the use_tgsi debug flag.

- llvmpipe: Drop the LP_DEBUG=tgsi_ir debug option.

- virgl: Drop the VIRGL_DEBUG=use_tgsi debug var.

- r600: Drop docs for use_tgsi debug var.

- r300: Drop RADEON_DEBUG=use_tgsi.

- nouveau: Delete the NV50_PROG_USE_TGSI env var.

- svga: Switch to preferring NIR by default.

- nine: Drop the nir_vs/nir_ps env vars.

- gallium: Drop PIPE_SHADER_CAP_PREFERRED_IR.

- mesa/drawtex: Cut out the TGSI semantic translation.

- svga: Stop asserting that compute params are queried against TGSI.

- mesa: Always query our compute params against IR_NIR.

- mesa: Drop TGSI token handling

- mesa: Simplify st_get_nir_compiler_options().

- mesa: Drop dead TGSI serialization prototypes.

- mesa/atifs: Rename the header guard.

- mapi: clang-format _glapi_add_dispatch().

- mapi: Delete dynamic stub generation.

- mesa: Drop the function parameter spec from the remap table.

- mapi: Clean up mapi_stub struct.

- mesa: Drop the aliases from the remap table.

- mapi: Drop the unused_functions table.

- mapi: Delete execmem support code.

- intel: Count reads_remaining across all blocks.

- intel: Allocate the last_grf_write once per scheduler.

- intel: Reduce cost of resetting last_grf_write.

- ci/zink: Update current xfails on tgl.

- ci: Update to vulkan-cts-1.3.5.2 (and pull in some more fixes).

- ci: Drop skips for some previously-invalid CTS tests.

- ci: Drop some skips of GL CTS ArraysOfArrays tests.

- ci/anv: Make anv-manual-rules actually manual on anv-only changes.

- ci: Clean up .intel-rules definition.

- ci/amd: Report flakes to #amd-ci on OFTC.

- ci/anv: Add testing of the GLES CTS using ANGLE on TGL.

- ci/radv+radeonsi: Fix the combo rules to include core vulkan changes.

- ci/radv: Add testing of the GLES CTS using ANGLE on stoney.

- ci/tu: Drop some xfails for !24086

- disk_cache: Disable the “List” test for RO disk cache.

Eric Engestrom (134):

- VERSION: bump to 23.2

- docs: reset new_features.txt

- v3d: add flake spec@ext_framebuffer_blit@fbo-sys-sub-blit

- ci: stop removing -x11 suffix for x11 build of deqp-egl

- ci: add -android suffix for android build of deqp-egl

- ci: move deqp-egl instead of copying it

- ci: start documenting which image tags need to be bumped

- ci: bump tags

- ci: update shebang to make it more portable

- broadcom/ci: deduplicate script definition

- v3dv/ci: drop fixed failure from fails.txt

- amd: fix buggy usage of unreachable()

- compiler: fix buggy usage of unreachable()

- pvr: fix buggy usage of unreachable()

- vk/util: fix buggy usage of unreachable()

- util: enforce unreachable()’s argument being a literal string

- egl: inline driver.GetProcAddress() as it’s always _glapi_get_proc_address()

- ci: rework vulkan validation layer build script

- v3d: document that `V3D_DEBUG=shaderdb` is *not* for shader-db

- v3d: fix tfu_supports_tex_format() param type, and document why

- v3d: fix various minor issues in gen_pack_header.py

- dzn: fix pointer type mismatch

- ci: bump bin/ci/ deps to support python 3.11

- ci: drop GENERATE_ENV_SCRIPT

- ci: stop marking environment variable list as executable

- ci: replace write + cat with tee

- ci: disable anholt’s farm

- ci: only execute capture-devcoredump.sh when it’s present

- util/bitset: ensure the sets compared have the same size at compile time

- docs: add release notes for 23.1.0

- docs: update calendar for 23.1.0

- ci/b2c: increase timeout to 5 minutes

- ci/amd: don’t override the b2c timeout in the steamdeck config

- ci/zink: add new zink-radv-navi10-valve flakes

- mailmap: update @mupuf’s name

- docs: fix release date of 23.1.0

- ci/zink: document new zink-radv-navi10-valve failures

- v3dv: fix align() computation for pixel formats with non-POT block sizes

- docs: update calendar for 23.1.1

- docs: add release notes for 23.1.1

- docs/relnotes: add sha256sum for 23.1.1

- ci_run_n_monitor: add ability to specify the pipeline to use, instead of auto-detecting it

- ci/amd: move AMD-specific LD_PRELOAD to AMD config

- ci/amd: only define AMDGPU_GPU_ID for the duration of the call

- bin/ci: fix mistakenly hardcoded repo name in get_gitlab_project()

- ci/intel: reuse iris_file_list instead of copying its definition

- meson: simplify another “any of” check

- wsi/display: drop unused parameters from local functions

- ci: split clang-format list of folders for easier maintenance

- ci: show diff when clang-format check fails

- panfrost: fix formatting of a couple of files that were missed

- panfrost: rename *.cc files to *.cpp

- ci/zink+radv: fix flakes definition

- ci/zink+radv: mark all spec@arb_copy_image@arb_copy_image-targets* as flaky after getting a bunch more of them

- ci/zink+radv: document recent regressions

- ci: color the diff for clang-format

- meson: enable the clang-format target

- ci: use meson to run clang-format

- docs: document clang-format and how to use it

- docs/calendar: add 23.2 branchpoint and release candidates

- ci/zink+radv: mark flakes as such

- ci/radv: fix flakes definition

- ci/crocus: fix flakes definition

- ci/zink+anv: fix flakes definition

- ci/b2c: also detect non-soft GPU hangs with AMDGPU

- amd/ci: run gl(es) cts & piglit on radeonsi on vangogh

- ci/radv: update expectations

- ci/zink+radv: update expectations

- docs/relnotes/23.1.1: clear “new features”

- docs: add release notes for 23.1.2

- docs/relnotes: add sha256sum for 23.1.2

- docs: update calendar for 23.1.2

- egl: return correct error for EGL_KHR_image_pixmap

- clang-format: add explanation for anyone reading .clang-format-include

- radv,aco: tweaks to get clang-format to print nicer code

- radv: reformat according to its .clang-format

- aco: reformat according to its .clang-format

- ci: enforce formatting for RADV & ACO

- radv: fix formatting

- Revert “ci: remove clang-format testing”

- asahi: drop unnecessary DRM_FORMAT_MOD_{LINEAR,INVALID} fallbacks

- ci: mark the valve farm as down

- docs/ci: fix command to disable/re-enable farms

- docs: add release notes for 23.1.3

- docs/relnotes: add sha256sum for 23.1.3

- docs: update calendar for 23.1.3

- docs/coding-style: add example vim config for clang-format

- docs/coding-style: add example emacs config for clang-format

- docs/coding-style: add pre-commit hook fallback for clang-format

- v3dv: replace boolean and uint with bool and size_t

- amd/ci: add another dEQP-VK.multiview.renderpass2.multisample.* flake

- amd/ci: add another dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.* flake

- ci: split valve farm in two

- util/disk_cache: fix ~/.cache/ permissions

- panfrost/ci: drop invalid skips that are already marked as known flakes

- intel/ci: fix skips definitions

- etnaviv/ci: fix skips definition

- zink/ci: fix skips & flakes for zink+radv on vangogh & navi10

- docs/codingstyle: fix clang-format command

- vc4/ci: fix skipping of gles3 piglit tests

- v3dv/ci: fix skipping of vk tests

- v3dv/ci: skip more tests that are timing out

- virgl/ci: fix skips definition

- clang-format: add egl foreach macro

- clang-format: add wayland foreach macros

- egl: change a couple of clang-format settings

- egl: add a few trailing commas

- egl: protect the formatting in a couple of places

- egl: prevent clang-format from reordering some headers

- egl: re-format using clang-format

- clang-format: enforce formatting of egl

- add initial .git-blame-ignore-revs

- ci/zink+radv: document another flake

- ci/zink+radv: fix flake definition

- ci: document workflow rules

- ci: set priority:low tag only on non-Marge pipelines

- ci: fix .valve-farm-manual-rules

- ci: split farm rules out of test-source-dep.yml

- etnaviv/ci: drop duplicate line in etnaviv files list

- broadcom/ci: add the renderonly folder to things that can affect v3d & vc4

- meson: clarify description of `opengl` option

- meson: clarify what “off-screen rendering” means

- ci: avoid running hardware jobs if there are already trivial issues

- ci: avoid running hardware jobs if lint fails - now on LAVA too!

- ci: avoid running hardware jobs if lint fails - now on Windows too!

- bin/ci_run_n_monitor: get git sha from pipeline if specified, instead of requiring –rev to match

- panfrost: upcast uint8/uint16 before shifting them beyond their range

- vc4: drop duplicate .lower_ldexp

- zink: fix format in zink_make_{image,texture}_handle_resident()

- v3dv: fix VK_PIPELINE_ROBUSTNESS_{BUFFER,IMAGE}_BEHAVIOR_DEVICE_DEFAULT_EXT copy/paste typo

- v3dv: fix copy/pasted type of `sample`

- v3dv: fix shader stage name in error message

- v3d/qpu: fix type of function argument

- ci/farm-rules: fix missing valve-infra jobs in scheduled pipelines

Erico Nunes (6):

- Revert “ci: disable lima farm, currently out-of-space, needs to be fixed”

- lima: fix stringop-overflow warning

- lima/ci: temporarily disable deqp-egl tests due to timeouts

- ci: temporarily disable lima farm

- ci: restore lima farm

- lima: fix plbu block stride calculation

Erik Faye-Lund (144):

- nir: remove nir_state_slot::swizzle

- glsl: remove ir_state_slot::swizzle

- docs: renderpass -> render pass

- docs: statechanges -> state changes

- docs: backfacing -> back-facing

- docs: codepath -> code-path

- docs: did’t -> didn’t

- docs: cma -> CMA

- docs: Anv -> ANV

- docs: perfetto -> Perfetto

- docs: use correct tick for “doesn’t”

- docs: vlan -> VLAN

- docs: toplevel -> top-level

- docs: correct spelling of “source”

- docs: correct spelling of “tagged”

- docs: correct spelling of “frame”

- docs: sort extensions

- docs: add custom html theme

- docs: add bootstrap extension

- docs: translate admonitions into bootstrap alerts

- docs: remove support for old sphinx-versions

- docs: use custom html theme

- nir: clean up white-space in deref-printing

- mesa/main: clean up white-space in ffvertex_prog.c

- mesa/main: drop disasm-code from ffvertex_prog.c

- mesa/main: allow passing nir-shaders to st_program_string_notify

- mesa/main: make ffvertex output nir

- nir: fix constant-folding of 64-bit fpow

- docs: fix edit-links

- mesa/main: drop use_legacy_math_rules

- llvmpipe: fixup refactor copypasta

- docs: fixup About Mesa3D.org link

- docs/tgsi: fix up indent

- docs/tgsi: fix bad latex

- docs/tgsi: fixup bad latex

- docs/tgsi: wrap overly long lines

- docs/tgsi: use math-notations for conditionals

- docs/tgsi: do not use math-block for non-latex

- docs/tgsi: fixup latex for TEX and TEX2

- docs/tgsi: use \ll and \gg for left and right shift

- aux/draw: check for lines when setting clipping-mode

- zink: fix bad indent

- zink: clean up tcs_vertices_out_word handling

- zink: do not open-code memcpy

- aco: use c++17

- meson: remove needless c++17-overrides

- mesa/main: clean up white-space in ff_fragment_shader.cpp

- mesa/st: refactor st_translate_fragment_program

- mesa/st: allow using nir for ff-fragment shaders

- compiler/nir: move find_state_var to common code

- mesa/main: ff-fragshader to nir

- mesa/main: compile ff_fragment_shader as c-code

- mesa/program_cache: remove unused shader-cache functions

- panfrost: expose PIPE_CAP_POLYGON_OFFSET_CLAMP

- util: mark externally-unused functions as static

- nir: use more nir_fmul_imm

- nir: use more nir_fadd_imm

- nir: fsub -> fadd_imm

- nir: use more nir_ffma_imm variants

- nir: add nir_fsub_imm

- nir: use nir_fsub_imm

- radeonsi,radv: use nir_format_linear_to_srgb

- docs: explicitly mark extensions as obsolete

- docs: mark MESA_multithread_makecurrent as obsolete

- docs: mark MESA_shader_debug as obsolete

- docs: mark MESA_swap_frame_usage as obsolete

- docs: mark MESA_texture_array as obsolete

- docs: move obsolete extensions to their own list

- zink: update profiles schema

- zink: keep gl46_optimal extensions/features sorted

- zink: compute correct location for line-smooth gs

- zink: do not lower line-smooth for non-lines

- docs: increase contrast in dark-theme

- zink: update profiles schema

- d3d12, dozen: make sure we pass float to fge

- nir: use nir_i{ne,eq}_imm helpers

- nir: generate nir_{cmp}_imm variants

- nir: use generated immediate comparison helpers

- nir: add nir_[fui]gt_imm and nir_[fui]le_imm helpers

- nir: use new immediate comparison helpers

- mesa/st: use nir_imm_vec4

- nir: use more imm-helpers

- nir: isub -> iadd_imm

- nir: use nir_imm_{true,false}

- nir: add and use nir_fdiv_imm

- nir: add and use nir_imod_imm

- nir: add missed nir_cmp_imm-helpers

- docs: upgrade bootstrap to 5.3.0

- cso: use enum for render-conditions

- draw: use enum for tgsi-semantic

- draw: use uint32_t instead of uint

- draw: use enum for primitive-type

- draw: track vertices and vertex_ptr as byte-pointers

- draw: use stdint.h types

- cso: use unsigned instead of uint

- draw: match type of pipe_draw_start_count_bias::count

- draw: use unsigned instead of uint

- aux/indices: use stdint.h types

- draw/i915: move hwfmt array to i915 specific struct

- microsoft/compiler: use nir_imm_zero

- mesa/st: use nir_ineg

- vulkan: avoid needless constant-folding

- broadcom/compiler: use imm-helpers

- v3dv: use imm-helpers

- pan: use imm-helpers

- freedreno: use imm-helpers

- r600/sfn: use imm-helpers

- d3d12: use imm-helpers

- radeonsi: use imm-helpers

- vc4: use imm-helpers

- intel: use imm-helpers

- anv: use imm-helpers

- hasvk: use imm-helpers

- mesa/st: use imm-helpers

- amd: use imm-helpers

- etnaviv: use imm-helpers

- gallium: use imm-helpers

- nir: use imm-helpers

- math: fix indentation in m_matrix.[ch]

- math: remove unused defines

- math: drop MAT_[ST][XYZ] defines

- aux/trace: use stdint.h types

- pipebuffer: use unsigned instead of uint

- gallivm: use unsigned instead of uint

- aux/pp: use unsigned instead of uint

- aux/util: use enum for render-condition

- aux/util: match type of pipe_draw_start_count_bias::start/count

- aux/util: use enum for primitive-type

- aux/util: use unsigned instead of uint

- aux/util: use stdint.h types

- aux/util: uint -> unsigned

- tgsi: use enum instead of defines

- tgsi: use stdint.h types

- tgsi: use enum for tgsi-file type

- tgsi: use enum for property-name

- tgsi: use enum for shader-type

- tgsi: use enum for interpolate-mode

- tgsi: uint -> uint32_t

- tgsi: uint -> unsigned

- nir: constify intrin

- nir: use nir_intrinsic_get_var

- radv: do not rely on constant-folding

- nir: do not needlessly rely on optimizations

- panfrost: delete stale editorconfig file

Faith Ekstrand (16):

- nouveau/nir: image_samples/size don’t have coordinates

- vulkan: Document vk_physical_device::supported_features

- nir/opt_if: Use block_ends_in_jump

- nir: Add a reg_intrinsics flag to nir_convert_from_ssa

- nir/from_ssa: Make additional assumptions in coalescing

- nir/from_ssa: Support register intrinsics

- freedreno/ci: Update pixmark piano checksums

- nv50/ir: Support vector movs

- nir: Properly handle divergence for load_reg

- nir/trivialize: Maintain divergence information

- nir/trivialize: Trivialize cross-block loads

- Revert “mesa, compiler: Move gl_texture_index to glsl_types.h”

- Revert “compiler: Combine duplicated implementation of is_gl_identifier into glsl_types.h”

- nir: Handle nir_op_mov properly in opt_shrink_vectors

- nir: Don’t handle nir_op_mov in get_undef_mask in opt_undef

- nir: Fix metadata in nir_lower_is_helper_invocation

Felix DeGrood (19):

- anv: disable reset query pools using blorp opt on MTL

- anv: Add END_OF_PIPE_SYNC reporting to INTEL_DEBUG=pc

- anv: Add flush reasons to raytracing flushes

- anv: Add flush reason to NEEDS_END_OF_PIPE_SYNC

- anv: split INTEL_MEASURE multi events

- intel: INTEL_MEASURE cpu mode

- anv: Enable INTEL_MEASURE=cpu

- iris: Enable INTEL_MEASURE=cpu

- docs: add INTEL_MEASURE=cpu

- intel/debug: Control start/stop frame of batch debug

- anv: Enable INTEL_DEBUG_BATCH_FRAME_START/_STOP

- iris: Enable INTEL_DEBUG_BATCH_FRAME_START/_STOP

- docs: Add INTEL_DEBUG_BATCH_FRAME_START/_STOP

- anv: fix INTEL_MEASURE on MTL

- anv: re-enable RT data in INTEL_MEASURE

- intel: refactor INTEL_MEASURE pointer dumping

- intel: batch consecutive dispatches into implicit renderpasses

- intel: Secondary CB print primary CB’s renderpass

- anv: override vendorID for Cyberpunk 2077

Feng Jiang (3):

- frontends/va: Fix memory leak of decrypt_key

- radeonsi/vcn: Remove unnecessary type conversion

- virgl/video: Fix out-of-bounds access in fill_mpeg4_picture_desc()

Filip Gawin (5):

- nine: add fallback for D3DFMT_D16 in d3d9_to_pipe_format_checked

- glx: fix build with APPLEGL

- ac/nir: fix slots in clamping legacy colors

- anv: allow intel_clflush_range only on igpu

- crocus: Avoid fast-clear with incompatible view

Francisco Jerez (3):

- anv: Fix calculation of guardband clipping region.

- intel/gfx12.5: Enable L3 partial write merging for compressible surfaces among other cases.

- anv: Swap ordering of memory types on non-LLC platforms to work around application bugs.

Frank Binns (7):

- pvr: add missing explicit check against VK_SUCCESS

- pvr: use util_dynarray_begin() in more places

- pvr: replace transfer EOT binary shaders with run-time compiled shaders

- pvr: fix typo in pvr_rt_get_region_headers_stride_size()

- pvr: fix array overflow in pvr_device_tile_buffer_ensure_cap()

- pvr: fix invalid read reported by valgrind

- pvr: skip setting up SPM consts buffer when no const shared regs are used

Friedrich Vock (41):

- radv/rmv: Fix creating RT pipelines

- radv/rmv: Fix import memory

- radv/rt: Plug some memory leaks during shader creation

- radv: Don’t leak the RT prolog binary

- radv: Hash pipeline libraries separately

- radv: Always call si_emit_cache_flush before writing timestamps

- radv: Add driconf to always drain waves before writing timestamps

- nir: Rematerialize derefs in use blocks before repairing SSA

- nir: Remove unnecessary assert in nir_before_src

- radv: Disable capture/replay handles

- aco: Lower divergent bool phis iteratively

- radv: Always flush before writing acceleration structure properties

- aco: Reset scratch_rsrc on blocks without predecessors

- aco: Fix live_var_analysis assert

- aco: Fix assert in insert_exec_mask

- radv: Add driconf to force wave64 for RT

- radv: Add RADV_DEBUG=nort

- radv: Enable ray tracing pipelines by default

- radv: Add the BOs of all shaders in a RT pipeline

- radv: Add radv_shader_free_list

- radv: Move shader arena allocation to a separate function

- radv: Add option to allocate shaders in replayable VA range

- radv: Add utilities to serialize and deserialize shader allocation info

- radv: Add radv_shader_reupload

- radv: Break up radv_shader_nir_to_asm

- radv: Split up implementation of radv_shader_create

- radv: Add support for creating capture/replay shaders

- radv: Add radv_rt_capture_replay_handle

- radv/rt: Only compare the non-recursive capture/replay handle

- radv/rt: Associate capture/replay handles with stages

- radv/rt: Replay shader allocations according to capture/replay handle

- radv/rt: Rework radv_GetRayTracingCaptureReplayShaderGroupHandlesKHR

- radv: Re-enable RT pipeline capture/replay handles

- meson: Prefix Vulkan “Ray Tracing” summary with “Intel”

- radv/ci: Skip ray tracing tests on vangogh

- Revert “radv/rt: Enable RT pipelines on GFX10_3+ excluding vangogh”

- Revert “Revert “radv: Enable ray tracing pipelines by default””

- radv/rt: Enable exact on software intersection functions

- radv/rt: Miss rays that hit the triangle’s v edge

- radv: Handle VK_SUBOPTIMAL_KHR in trace layers

- nir/load_store_vectorize: Handle intrinsics with constant base

Ganesh Belgur Ramachandra (5):

- gallium/pipe: Add get_resources() to pipe_video_buffer

- gallium/vl: implementation for get_resources()

- nouveau: implementation for get_resources()

- d3d12: implementation for get_resources()

- frontends/va: use resources instead of views

Georg Lehmann (51):

- nir: lower ballot_bit_count_exclusive/inclusive to mbcnt_amd

- radv: use lower_ballot_bit_count_to_mbcnt_amd

- aco: Assert that operands have the same byte offset when reassigning split vectors

- aco: also reassign p_extract_vector post ra

- aco/vn: compare all valu modifers

- aco/optimizer: don’t use pass_flags for mad idx

- aco/optimizer: copy pass flags for newly created valu instructions

- aco/assembler: support VOP3P with DPP

- aco/builder: support VOP3(P) with dpp

- aco: add assembler tests for VOP3(P) with DPP

- aco/ra: convert VOPC_DPP instructions without vcc to VOP3

- aco: use VOP3+DPP

- aco: don’t apply dpp if the alu instr uses the operand twice

- aco: emit_wqm on MIMG dst, not operands

- aco: introduce helper to swap valu operands with modifiers

- aco/gfx11: use fmamk/fmaak with opsel

- aco: add withoutVOP3 helper

- aco/ra: use smaller operand stride for VOP3P with DPP

- aco/ra: use fmac with DPP/opsel on GFX11

- aco: add helper function for can_use_input_modifiers

- aco: use get_operand_size for dpp opt

- aco: use can_use_input_modifiers helper

- aco/optimizer: allow DPP to use VOP3 on GFX11

- util: fix stack dynarray used by multiple tus

- nir/opt_if: use nir_alu_instr_is_comparison directly

- aco: cleanup v_cmp_class usage

- aco: p_start_linear_vgpr doesn’t always need exec mask

- aco/ir: return true in hasRegClass for Operand(reg, rc)

- aco/statistics: improve v_fma_mix dual issuing detection

- aco: use v_add_f{16,32} with clamp for fsat

- aco: use v_fma_mix for f2f32 and f2f16 on gfx11 if wave64

- aco: make validation work without SSA temps

- aco: move cfg validation to its own function

- aco: don’t validate p_constaddr_addlo/p_resumeaddr_addlo operands

- aco: validate ir for prologs and after lower_to_hw_instr

- aco/opcodes: move v_cndmask_b32 back to the VOP2 list

- aco: remove v_cvt_pkrtz_f16_f32_e64 when it’s actually VOP2

- aco/opcodes: delete wrong comment copy pasted from NIR

- aco: use uses helpers for pk_fma opt

- aco: combine scalar mul+pk_add to pk_fma

- aco/gfx10+: use v_cndmask with literal for reduction identity

- nir: add single bit test opcodes

- nir/lower_bit_size: mask bitz/bitnz src1 like shifts

- aco: implement nir_op_bitz/bitnz

- nir/opt_algebraic: combine bitz/bitnz

- radv: set has_bit_test for aco

- aco/optimizer: delete s_bitcmp optimization

- aco/gfx11: fix get_gfx11_true16_mask with v_cmp_class_f16

- aco: fix non constant 16bit bitnz/bitz

- aco: fix u2f16 with 32bit input

- nir/opt_algebraic: remove broken fddx/fddy patterns

George Ouzounoudis (1):

- radv: small fix for VkDescriptorSetVariableDescriptorCountLayoutSupport

Gert Wollny (98):

- r600/sfn: Lower tess levels to vectors in TCS

- r600/sfn: make sure f2u32 is lowered late and correctly for 64 bit floats

- r600: remove TGSI code path

- r600/sfn: Add a type for address registers

- r600/sfn: don’t track address registers in live ranges

- r600/sfn: Handle MOVA_INT in sfn assembler

- r600/sfn/tests: Cleanup and move some code around

- r600/sfn: Add address and index registers creation to ValueFactory

- r600/sfn: Rework query for indirect access in alu instr and opt

- r600/sfn: don’t allow more than one AR per instruction

- r600: Allow both index registers for all CF types

- r600/sfn: Prepare uniforms and local arrays for better address handling

- r600/sfn: handle AR and IDX register in shader from string

- r600/sfn: add method to update indirect address to all instrution types

- r600/sfn: Add function to insert op in block

- r600/sfn: Update resource based instruction index mode check

- r600/sfn: Be able to track expected AR uses

- r600/sfn: AR and IDX don’t need the write flag, but haev a parent

- r600/sfn: Add a RW get function of IF predicate access

- r600/sfn: Add interface to count AR uses in ALU op

- r600/sfn: Add pass to split addess and index register loads

- r600/sfn: Add function to check whether a group loads a index register

- r600/sfn: take address loads into account when scheduling

- r600/sfn: Add more tests and update to use address splits

- r600/sfn: Don’t copy-propagate indirect access into LDS instr

- r600/sfn: Add test for multiple index load

- r600/sfn: set CF force flag always when starting a new block

- r600/sfn: Start a new ALU CF on index use, not on index emission

- r600/sfn: Add chip family to shader class

- r600/sfn: Add handling for R600 indirect access alias handling

- r600/sfn: Override Array access handling in backend assembler

- r600/sfn: Fix copy-prop with array access

- r600/sfn: scheduled instructions are always ready

- r600/sfn: Add more tests and update to use address splits

- r600/sfn: print failing block when scheduling fails

- r600/sfn: Can’t use an indirect array access as source to AR load

- r600/sfn: factor out index loading for non-alu instructions

- r600/sfn: prepare for emitting AR loads

- r600/sfn: Tie in address load splitting

- r600+sfn: Assign ps_conservative_z and switch to NIR defines

- r600/sfn: assign window_space_position in shader state

- r600/sfn: Ass support for image_samples

- r600/sfn: fix cube to array lowering for LOD

- r600/sfn: Fix iterator use

- r600/sfn: move kill instruction test to alu instruction

- r600/sfn: add dependencies for kill instructions

- r600/sfn: move kill handling fully to scheduling

- r600/sfn: use correct FS output location if not all outputs are used

- virgl: Make query result resource as dirty before requesting result

- virgl: Add support for ARB_pipeline_statistics

- virgl/ci: uprev virglrenderer

- docs/features: fix empty line error

- virgl: Fix IB upload when a start >0 is given

- virgl: Submit drawid_offset if is not zero

- virgl: signal support for group vote and draw parameters

- virgl: enable ARB_gl_spirv

- features: Update virgl features

- ci: uprev virglrenderer to include changes needed for GL 4.6 support

- r600/sfn: assert that group barrier is not emitted in divergent code flow

- r600/sfn: Switch to scoped barriers

- util/driconf: pin minImageCount to three for “Path of Exile”

- r600/sfn: add read instruction for unused but required LDS op results

- r600/sfn: Don’t rewrite TESS_EVAL inner tess level outputs

- r600/sfn: Add experimental support for load/store_global

- r600/sfn: Handle store_global when lowering 64 bit ops to vec2

- r600/sfn: Handle load_global in 64 to vec2 lowering

- rusticl: compile r600 driver

- r600: fix handling of use_sb flag

- r600/sfn: move kill handling to fully scheduling

- 600/sfn: Trigger use of ACK for some barriers

- r600: Disable SB if we use the ariable length DOT

- r600/sfn: Silence warnings “overloaded-virtual”

- r600/sfn: Downgrade some error message to warning

- r600: Split tex CF only if written component is read

- r600/sfn: Don’t deref unused group slots

- r600/sfn: on R600/R700 write a dummy pixel output if there is a gap

- r600/sfn: Clean up FS member initialization

- virgl: don’t allow vertex input arrays on GLES hosts

- r600/sfn: Fix typo

- r600/sfn: drop use of nir source mods

- r600/sfn: allow source mods for per source with multi-slot ops

- r600/sfn: add source and dest mod info to opcode table

- r600/sfn: Implement source mod optimization in backend

- r600/sfn: Implement fsat for 64 bit ops

- r600/sfn: Add source mod propagation also to fp64 ops

- r600/sfn: Don’t clear clear group flag on vec4 that comes from TEX or FETCH

- virgl/ci: Drop duplicate runs

- ci: Upref virglrenderer

- r600/sfn: Fix filling FS output gaps

- r600: Pre-EG - Set wrap texture modes to repeat when seemless cube is used

- r600/sfn: Be more conservative with AR re-use

- r600/sfn: Shorten array elements live range

- r600/sfn: remove debug output leftovers

- r600/sfn: Fix use of multiple IDX with kcache

- r600/sfn: Don’t try to propagate to vec4 with more than one use

- r600/sfn: Only switch to other CF if no AR uses are pending

- r600/sfn: AR loads should depend on all previous non ALU instructions

- r600/sfn: Take source uses into account when switching channels

Giancarlo Devich (5):

- d3d12: Update and require DirectX-Headers 1.610.0

- d3d12: Query device for D3D12_FEATURE_D3D12_OPTIONS14

- d3d12: Update PSO creation to use CreatePipelineState

- d3d12: Add ID3D12GraphicsCommandList8 to the context

- d3d12: Support separate front/back stencils

Gregory Mitrano (2):

- ac/sqtt: Add RGP Definitions for Mesh Shaders

- radv/sqtt: Add RGP Markers for Mesh Shaders

Guilherme Gallo (29):

- ci/lava: Move job definition stuff to another file

- ci/lava: Extract LAVA proxy and LAVAJob abstractions

- ci/lava: Use python-fire in job submitter

- ci/lava: Update LogFollower for better section handling and history

- ci/lava: Add a simple Structural Logger into submitter

- bin/ci: Add StructuredLogger to improve log handling

- ci/lava: Integrate StructuralLogger with AutoSaveDict

- ci/lava: Force use of UTC timezones

- ci/lava: Refactor LAVAJobSubmitter and add tests

- ci/lava: Use f-strings in job definition

- ci/lava: Skip regression test if LAVA log file is not present

- ci/freedreno: Fix a618-traces-performance rules

- ci/lava: Bypass arg list to print_log function

- ci/lava: Fix last section in job submitter

- ci: Use absolute paths in init-stage2.sh

- ci/lava: Add SSH support in rootfs

- ci/lava: Add SSH job definition

- ci/lava: Add bridge function for job definition

- ci/lava: Distinguish test suites in DUT vs Docker

- ci/lava: Only check for the first section marker

- ci/lava: Hide JWT block during YAML dump

- ci/lava: Tweak http-download timeout in SSH based jobs

- ci/lava: Raise the post test metadata gathering retry count

- ci/lava: Force LAVA panfrost jobs to use UART

- dzn: Skip a few deqp tests which are prone to timeout

- ci/lava: Renable SSH sessions for panfrost jobs

- ci/lava: Increase Docker action failure_retry counter

- ci/lava: Add LAVA SSH client container

- ci/lava: Use an alpine image for SSH client container

Hans-Kristian Arntzen (6):

- wsi/x11: Fix present ID signal when IDLE comes before COMPLETE.

- wsi/wayland: Simplify wait logic for present wait.

- wsi/wayland: Do not assert that all present IDs have been waited on.

- radv/amdgpu: Report 48-bit VAs in bo logs.

- Fix DGC bug where indirect count > maxSequencesCount.

- wsi/x11: Fix potential deadlock in present ID.

Harri Nieminen (11):

- amd: fix typos

- amd: fix typos in code

- r300: fix typos

- radeonsi: fix typos

- r600: fix typos

- r600/sb: fix typo

- r600/sfn: fix typos

- r600/sfn: fix typos in code

- broadcom: fix typos

- egl: fix typos

- glx: fix typos

Helen Koike (3):

- ci: move .microsoft-farm-container-rules to test-source-dep.yml

- ci: remove unused tag DEBIAN_X86_64_TEST_IMAGE_PATH

- ci/android: remove strace output from cuttlefish-runner.sh

Hyunjun Ko (27):

- intel/genxml: fix num bits of some MOCS fields

- intel/genxml: conform some fields to each other gen.

- intel/genxml: align some fields on gen9/11/12/125 with media driver.

- intel/genxml: add a command VD_CONTROL_STATE to gen12/125

- util/vl: initialize data/end pointers.

- vulkan/video: add to parse h265 slice.

- vulkan/video: add h265 reference structures and relevant util functions.

- anv/image: Add a surface usage bit for video decoding

- anv/image: allocate mv storage buffers for h265

- anv/image: allow VK_IMAGE_CREATE_ALIAS_BIT with a private binding.

- anv: add initial video decode support for h265

- anv: support P010 format for video 10-bit hevc decoding

- anv/image: get width/height for each plane of a surface for video decoding.

- anv: support HEVC 10-bit decoding

- anv: enable the video h265 decode extension.

- anv/ci: Add tests for video formats to the failing tests.

- anv/video: move video requirements to outarray.

- vulkan/video: adds more conditions for setting loop_filter_across_slices_enable in h265 slice parsing.

- vulkan/video: move parsing longterm rps in h265 slice parsing.

- util/rbsp: keep track of removed bits for the emulation prevention three bytes.

- vulkan/video: consider removed bits when calculating the size of comsumed data.

- anv/video: fix to set U/V offset correctly.

- vulkan/video: keep delta weight and offsets of predicted weight tables in h265 slice parsing

- intel/genxml: changes the type for predicted weight to unsigned.

- anv: fix to set predicted weight tables correctly.

- anv/video: fix to support HEVC 10bit on some of 9th gens.

- anv: Adds a workaround for HEVC decoding on some old platforms.

Iago Toral Quiroga (34):

- broadcom/compiler: fix v3d_qpu_uses_sfu

- broadcom/compiler: add a v3d_qpu_instr_is_legacy_sfu helper

- broadcom/compiler: fix incorrect check for SFU op

- broadcom/compiler: fix incorrect ALU checks

- broadcom/compiler: return early for SFU op latency calculation

- broadcom/compiler: try harder to merge thread switch earlier

- broadcom/compiler: don’t allocate undef to rf0

- broadcom/compiler: move buffer loads to lower register pressure

- broadcom/compiler: increase peephole limit to 24 instructions

- broadcom/compiler: use unified atomics

- broadcom/compiler: skip jumps in non-uniform if/then when block cost is small

- v3dv: simplify too small Z viewport scale workaround

- v3dv: store slice dimensions in pixels

- v3dv: allow TFU transfers for mip levels other than 0

- v3dv: align compressed image regions to block size

- broadcom/compiler: flag use of control barriers

- broadcom/compiler: use scoped barriers

- v3d: only warn about bining sync for indirect draw once

- v3dv: remove bogus viewport code

- v3dv: simplify scissor setup for negative viewport height

- broadcom/cle: fix up viewport offset packet definition for V3D 4.1+

- v3d,v3dv: fix viewport offset for negative viewport center

- broadcom/compiler: only use last thread switch flag to detect final section

- nir/lower_tex: copy missing fields when creating copy of tex instruction

- nir/lower_tex: handle lower_tg4_offsets with lower_tg4_broadcom_swizzle

- broadcom/compiler: handle textureGatherOffsets

- v3dv: expose shaderImageGatherExtended

- v3dv: fix slice size for miplevels >= 2

- v3dv: don’t use the TLB path if we might be copying partial tiles

- v3dv: use div_round_up for division by block size

- v3dv: fix blit path for compressed image to buffer copies

- broadcom: use nir info to keep track of implicit sample shading

- broadcom/compiler: free defin and defout arrays if they already exist

- broadcom/compiler: don’t leak v3d_compile when finding a new best strategy

Ian Romanick (20):

- intel/fs: Don’t munge source order of 3-src instructions in opt_algebraic

- intel/fs: Fix handling of W, UW, and HF constants in combine_constants

- intel/fs: Allow HF const in MAD on Gfx12.5 if all sources are HF

- nir/algebraic: Fixup iadd3 related patterns

- intel/fs: Add constant propagation for ADD3

- intel/eu/validate: Use a single macro define half_float_conversion cases

- intel/eu/validate: Add Gfx12.5

- intel/eu/validate: Add some validation of ADD3

- nir: Add optimization pass to reassociate some bfi instructions

- intel/fs: Use nir_opt_reassociate_bfi

- nir/algebraic: Lower some bfi with two constant sources

- intel/fs: Emit better code for bfi(…, 0)

- nir/algebraic: Optimize some u2f of bfi

- nir/algebraic: Simplify various trivial bfi

- intel/stub_gpu: Don’t run program again after using GDB

- intel/fs: Constant propagate into SHADER_OPCODE_SHUFFLE

- intel/fs: Add missing newline

- intel/fs: Always do opt_algebraic after opt_copy_propagation makes progress

- intel/fs: Constant fold SHL

- intel/fs: Constant fold OR and AND

Ikshwaku Chauhan (2):

- radeonsi/gfx11: updated si_is_format_supported

- radeonsi/gfx11: updated vertex format changes

Illia Abernikhin (3):

- docs: add iris features to docs/features.txt

- docs: add crocus features to docs/features.txt

- docs: remove i965 features from docs/features.txt

Illia Polishchuk (6):

- glx: add fail check for current context in another thread

- drirc: add allow_sampled_tex_copy option

- nir: switch to a normal sampler for ARB program with not depth textures

- zink, drirc: Add Borderlands 2 workaround to fix spir-v 1.6 translated discard

- zink: move find_sampler_var from zink to nir core

- nir: fix invalid sampler search by texture id

Italo Nicola (22):

- egl: disable partial redraw when gallium hud is active

- egl: fix comments alignment

- freedreno: implement clear_render_target and clear_depth_stencil

- v3d: implement clear_render_target and clear_depth_stencil

- vc4: implement clear_render_target and clear_depth_stencil

- d3d12: fix clear_depth_stencil texture deref

- gallium: implement u_default_clear_texture

- gallium: use u_default_clear_texture where applicable

- gallium: rename util_clear_texture to util_clear_texture_sw

- mesa/st: use fallback path when pipe->clear_texture is not available

- rusticl: use fallback path when pipe->clear_texture is not available

- clover: use fallback path when pipe->clear_texture is not available

- gallium: cleanup util_blitter_clear_render_target

- gallium: remove PIPE_CAP_CLEAR_TEXTURE

- lima/ci: add some ARB_clear_texture piglit tests to lima-fails.txt

- d3d12/ci: add piglit arb_clear_texture-integer fail to CI expectations

- nir: add options to lower y_vu, yv_yu, yx_xvxu and xy_vxux

- gallium/st: add support for PIPE_FORMAT_NV21 and PIPE_FORMAT_G8_B8R8_420

- mesa/main: add PIPE_FORMAT_YVYU and PIPE_FORMAT_R8B8_R8G8

- mesa/main: add PIPE_FORMAT_VYUY and PIPE_FORMAT_B8R8_G8R8

- freedreno/ci: add KHR-GL46.buffer_storage.map_persistent_flush to flakes

- egl: reenable partial redraw with a warning when using gallium hud

Iván Briano (24):

- anv: Remove dead parameters from copy_fast_clear_dwords

- anv: make anv_can_fast_clear_color_view more generally available

- anv: factor out code for ccs_op and mcs_op

- anv: expose some helper functions

- anv: support fast color clears on vkCmdClearAttachments

- anv: put EXT_mesh_shader behind an environment variable

- anv: enable graphics pipeline libraries by default

- hasvk: avoid assert due to unsupported format

- anv: enable the GPL feature based on whether the extension is supported

- vulkan/wsi: fix double free on error condition

- anv: do not explode on 32 bit builds

- anv: update conformanceVersion

- anv: flush data cache before emitting availability

- anv: ensure CFE_STATE is emitted for ray tracing pipelines

- iris: ensure mesh is disabled on context init

- anv: ensure mesh is disabled on context init

- anv: implement Wa_14019750404

- blorp: fix hangs with mesh enabled

- anv: use a simpler MUE layout for fast linked libraries

- anv: track what kind of pipeline a fragment shader may be used with

- intel/fs: read viewport and layer from the FS payload

- intel/fs: handle URB setup for fast linked mesh pipelines

- anv: enable VK_EXT_mesh_shader where supported

- intel/fs: use ffsll so we don’t explode on 32 bits

James Glanville (7):

- pvr: Improve support for image clears

- pvr: Fix vtxin special var allocation count

- pvr: Fix image to buffer copies

- pvr: Fix incorrect PBE packmode for S8_UINT

- pvr: Adjust clear’s region clip words

- pvr: Fix seg fault on unused ds attachment

- pvr: Fix deferred_control_stream_flags

James Knight (1):

- meson: ensure i915 Gallium driver includes Intel sources

Janne Grunau (4):

- asahi: Fix typo in debug/error message helper macro

- asahi: Free low VA BOs correctly

- st/mesa: Set gl_config.floatMode based on color_format

- asahi,agx: Fix stack buffer overflow in agx_link_varyings_vs_fs

Jarred Davies (3):

- pvr: Don’t ralloc build context from compiler

- pvr: Use vk_device’s enabled features struct

- pvr: Reduce free list initial size when multiple devices are created

Jesse Natalie (133):

- d3d12: Remove #if D3D12_SDK_VERSION blocks now that 610 is required

- microsoft/clc: Remove #if D3D12_SDK_VERSION blocks now that 610 is required

- dzn: Remove #if D3D12_SDK_VERSION blocks now that 610 is required

- util: Delete Offset() macro from u_memory.h

- d3d12: Respect buffer offsets for sampler views

- d3d12: Support blit texture uploads

- spirv2dxil: Lower quad ops in non-fragment/compute stages

- dzn: Remove driconf for quad ops in vertex stages

- dzn: Add physical device arg to format lookup

- dzn: Support dynamic depth bias via command list instead of PSO

- dzn: Use narrow quadrilateral lines when supported

- dzn: Support aniso-with-point-mip samplers

- dzn: Align-up heap sizes when allocating memory

- ci/windows: Update Agility SDK to 1.610.2

- dzn: Use unrestricted copy alignments when available

- dzn: Handle opaque BC1

- dzn: Handle depth bias for point fill mode emulation

- dzn: Re-design custom buffer descriptors

- ci/dzn: Run almost the full CTS

- dzn: Expose core VK1.1 extensions that aren’t optional

- dzn: Expose core VK1.2 extensions that aren’t optional

- meson: Don’t use masm with VS backend

- spirv2dxil: Mark SSBO reads for bindless as CAN_REORDER

- microsoft/compiler: Unroll loops in opt passes

- dzn: Fix UBO descriptors pointing to the end of the buffer

- dzn: Hook up subgroup size to compute shader compilation

- dzn: Ensure sample-rate shading is factored into nir hash

- dzn: Use the nir hash as an input to the dxil hash

- dzn: Ensure subgroup size control is factored into pipeline hash

- dzn: Ensure bindless is factored into pipeline/nir hash

- dzn: Augment blit resolve to support min/max/sample-zero modes

- dzn: Support all available depth/stencil resolve modes

- dzn: Support separate depth/stencil resolves via blits

- dzn: Delete queue-level event waits

- ci/windows: Pick up WARP 1.0.6 NuGet with lots of dzn fixes

- dzn: Use A4B4G4R4 instead of B4G4R4A4 when available

- spirv2dxil: Lower large temps to scratch

- microsoft/compiler: Avoid integer divides by 0

- dzn: Run nir_opt_remove_phis before nir_lower_returns

- dzn/ci: Remove ‘exclude’ for graphicsfuzz cases

- microsoft/compiler: Allocate space for I/O and viewID dependency tables before instruction processing

- microsoft/compiler: Do basic I/O analysis for dependency tables

- spirv2dxil: Support int64 and doubles

- d3d12: Convert from D3D shader model to Mesa shader model earlier

- dzn: Enable 64-bit ints and floats

- microsoft/compiler: Take inputs from callers before providing nir options

- microsoft/compiler: Enable packed dot product intrinsics for SM6.4+

- dzn: Enable KHR_shader_integer_dot_product

- nir_lower_system_values: Add ASSERTED to assert-only variable

- nir: Load/store atomic op indices when lowering image intrinsics

- microsoft/compiler: Remove alu type info from store_dest()

- microsoft/compiler: Duplicate some SSA values to simplify SSA typing

- microsoft/compiler: Back-propagate type requirement information

- dxil: Use unified atomics

- vulkan: Win32 sync import/export support

- dzn: Don’t zero an output struct that can have pNext

- dzn: Finish implementing KHR_synchronization2

- dzn: Dedicated resource cleanup

- dzn: External Win32 memory extension

- dzn: External Fd memory extension

- dzn: Hook up win32 semaphore import/export

- dzn: Hook up fd semaphore import/export

- docs: Update list of extensions implemented by dzn

- glsl: Delete dead intrinsics

- microsoft/compiler: Better and simpler bitcast reduction

- dzn: Add a no-bindless debug flag

- dzn: Fix inverted assert

- dzn: Partial revert of 8887852d

- dzn: Don’t expose copy queues

- dzn: Fix src/dest confusion for some non-bindless descriptor copies

- wsi/win32: Handle acquiring an image while one is already acquired

- nir_lower_returns: Optimize phis before beginning the pass

- nir: Add undef phi srcs when adding successors

- radv: Don’t run opt_remove_phis before lower_returns

- dxil: Don’t run opt_remove_phis before lower_returns

- ci/windows: Update WARP to 1.0.7

- microsoft/compiler: Enable emitting type info for textures with <4 comps

- microsoft/compiler: Add a pass to assign image formats based on number of components

- spirv2dxil: Assign formats to image vars before lowering to bindless

- microsoft/compiler: Use image formats to determine texture types

- ci/windows: Update WARP to 1.0.7.1

- nir_opt_algebraic: Don’t shrink 64-bit bitwise ops if pack_split is going to be lowered

- nir: Add preserve_mediump as a shader compiler option

- microsoft/compiler: Always set support_16bit_alu

- microsoft/compiler: Handle mediump

- spirv2dxil: Enable mediump

- dzn: Don’t lower away mediump

- microsoft/compiler: Fix the int->uint pass for arrayed I/O

- microsoft/compiler: Fix usage of type var in semantic asserts

- microsoft/compiler: Viewport/layer as input to GS/HS needs to set feature bit

- d3d12: Support PIPE_CAP_VS_LAYER_VIEWPORT

- dzn: Don’t create D3D objects for secondary command buffers

- dzn: Fix incremental binding of VBs

- d3d12: Fully initialize UAV desc for null SSBOs

- dzn: Don’t support VK R4G4B4A4_UNORM_PACK16 unless we have B4G4R4A4

- nir_opt_constant_folding: Fix nir_deref_path leak

- nir: Add is_null_constant to nir_constant

- vtn: Set is_null_constant

- nir_split_struct_vars: Support more modes and constant initializers

- nir: Allow atomics as non-complex uses for var-splitting passes

- nir_lower_ubo_vec4: Delete an invalid assert

- nir_lower_mem_access_bit_sizes: Add a bit_size input to the callback

- nir_lower_mem_access_bit_sizes: Move options into a struct

- nir_lower_mem_access_bit_sizes: Support unaligned stores via a pair of atomics

- nir: Fix constant expression for unpack_64_4x16

- nir: Optimize unpacking 16 bit values that were originally packed

- microsoft/clc: Try harder to optimize memcpys before lowering them

- microsoft/clc: Fix progress reporting for some lowering

- microsoft/compiler: Support vec/struct const vals

- microsoft/compiler: Improvements to constant -> shader_temp pass used for CL

- microsoft/compiler: Add some more lowering passes for derefs

- microsoft/compiler: Emit const accesses as load_deref

- microsoft/compiler: Use mem_constant instead of shader_temp for consts

- microsoft/compiler: Un-lower shared/scratch to derefs

- spirv2dxil: Don’t lower shared/temp to explicit I/O

- microsoft/compiler: Support load_ubo_vec4

- dxil: Don’t generate load_ubo_dxil directly

- dxil: Delete load_ubo_dxil intrinsic

- microsoft/compiler: Don’t lower bit sizes for movs

- microsoft/compiler: Don’t over-align raw buffer load/store intrinsics

- dxil: Remove custom SSBO lowering

- nir_lower_returns: Mark assert-only var as ASSERTED

- dzn: Ignore export access parameters

- dzn: Inline D3D12 device creation in physical device creation

- dzn: Use common GetPhysicalDeviceFeatures2

- dzn: Remove dynamic check for block-compressed support

- dzn: Fix multisample counts in device limits

- dzn: Align placed footprints used when copying linear <-> optimal for BC formats

- dzn: VK_EXT_external_memory_host

- radv: Fix label name

- microsoft/clc: Fix usage of nir_builder_at

- ci/windows: Re-enable Windows builds

- d3d12: Fix indexing of local_reference_state

Jiadong Zhu (1):

- ac: enable SHADOW_GLOBAL_CONFIG for preemptible ib

Jianxun Zhang (8):

- iris: Fix memory alignment when importing dmabuf (GFX12.5)

- include/uapi: Update drm_fourcc.h from drm kernel

- intel/isl: Add MTL RC CCS modifier into modifier info

- iris: Support I915_FORMAT_MOD_4_TILED_MTL_RC_CCS modifier

- intel/isl: Add MTL RC CCS CC modifier into modifier info

- iris: Support I915_FORMAT_MOD_4_TILED_MTL_RC_CCS_CC modifier

- intel/isl: Add MTL MC CCS modifier into modifier info

- iris: Support MTL modifier MC_CCS

Jonathan Gray (1):

- intel/dev: remove dg2 0x5698 pci id

Jordan Justen (26):

- intel/compiler/gfx12.5+: Lower 64-bit cluster_broadcast with 32-bit ops

- mesa/main: Exit early when trying to create an unsupported context API

- iris: Flush untyped dataport cache when HDC flush is requested on compute

- iris: Flush untyped dataport cache DC flush is requested on compute

- anv: Clear untyped dataport cache flush bit if not in GPGPU mode

- anv: Flush untyped dataport cache when HDC flush is requested on compute

- anv: Flush untyped dataport cache DC flush is requested on compute

- intel/devinfo: Add has_set_pat_uapi

- intel/devinfo: Define PAT indices used on MTL

- iris/bufmgr: Add iris_pat_index_for_bo_flags()

- iris/bufmgr: Skip bucket allocation if not using writeback cache PAT index

- iris: Map aux-map with WC on MTL+ (has_set_pat_uapi)

- drm-uapi/i915_drm.h: Update from drm-next (2023-06-09)

- iris: Use set PAT extension on BO creation for MTL

- anv: Use set PAT extension on BO creation for MTL

- intel/devinfo/i915: Set has_set_pat_uapi for MTL+

- intel/genxml: Add COMPCS0 aux-table registers

- anv: Program compute aux-map base address during queue init

- anv: Use correct CCS0 aux-map register offset in pipe flush

- isl: Add ISL_SURF_USAGE_STREAM_OUT_BIT

- anv,iris,hasvk: Use ISL_SURF_USAGE_STREAM_OUT_BIT for setting stream-out MOCS

- isl/dev: Add uncached MOCS value

- isl: Set MOCS to uncached for MTL stream-out

- intel/dev: Use RPL-U name on RPL-U devices

- intel/dev: Add more RPL PCI IDs

- intel/dev: Update device string for MTL PCI ID 0x7d55

Joshua Ashton (8):

- radv: Do not enable robustness for push constants with robustBufferAccess2

- radv: Refactor buffer robustness to an enum

- radv: Rename radv_nir_compiler_options::robust_buffer_access to robust_buffer_access_llvm

- radv: Split and move buffer robustness to shader key

- radv: Rename radv_required_subgroup_info to radv_shader_stage_key

- radv: Implement VK_EXT_pipeline_robustness

- radv: Advertise VK_EXT_pipeline_robustness

- radv: Remove unused pipeline param from radv_generate_pipeline_key

Joshua Watt (2):

- drm-shim: Set file type in readdir()

- drm-shim: Use anonymous file for file override

José Fonseca (2):

- wgl: Fix unintentional assignment on assert.

- wgl: Remove needless `if (1) { … }`.

José Roberto de Souza (29):

- iris: Move i915 batch destroy logic to iris_i915_destroy_batch()

- iris: Initialize batch screen in iris_init_batch()

- iris: Move iris_batch i915 specific variables to union

- iris: Create, destroy and replace Xe engines

- iris: Implement batch_check_for_reset() in Xe kmd backend

- iris: Set priority to Xe engines

- iris: Fix close of exported bos

- intel/common: Add gt_id to intel_engine_class

- iris: Implement batch_submit() in Xe kmd backend

- iris: Fix vm bind of imported bos from other GPUs

- build: Add Iris and ANV to ARM’s auto-generated drivers

- anv: Take into consideration physical device max heap size to set maxStorageBufferRange

- iris: Allow shared scanout buffer to be placed in smem as well

- iris: Add a function to return allocated bo mmap mode

- iris: Add function to return mmap mode for userptr bos

- iris: Add function to return mmap mode for aux map

- anv: Set memory types supported by Xe KMD

- anv: Fix ANV_BO_ALLOC_NO_LOCAL_MEM flag

- anv: Nuke ANV_BO_ALLOC_WRITE_COMBINE

- iris: Fix return of xe_batch_submit() when exec fails

- iris: Replace aperture_bytes by sram size in iris_resource_create_for_image() for PIPE_USAGE_STAGING

- intel: Fix support of kernel versions without DRM_I915_QUERY_ENGINE_INFO

- iris: Attach a dma-buf to bo flink

- iris: Implement external object implicit syncronization for Xe kmd

- anv: Fix compute maximum number of threads value

- anv: Fix some mismatches of canonical and regular addresses around anv_bo_vma_alloc_or_close()

- anv: Drop unnecessary intel_canonical_address() call around anv_address_physical()

- anv: Drop unnecessary intel_canonical_address() calls around bo->offset

- iris: Convert slab address to canonical

Juan A. Suarez Romero (34):

- v3d: set depth compare function correctly

- v3d: use primitive type to get stream output offset

- v3d/ci: annotate failure

- v3dv/ci: rename waiver test

- v3d: add support for ARB_texture_cube_map_array

- v3d/ci: enable glsl 1.30 and 1.40 piglit tests

- v3d: apply 1D texture miplevel alignment in arrays

- v3d/ci: update neverball-v2 trace reference

- vc4/ci: skip unsupported test versions

- vc4/ci: disable VC4 jobs

- v3d: add per hw-version caller macro

- v3d: upgrade V3D 4.1 to 4.2 version

- v3d: apply proper clamping when setting up RT

- v3d/ci: annotate failures

- vc4/ci: re-enable VC4 testing

- v3d: delay offset/counter values with primitive restart

- v3d/ci: run GPU piglit profile

- v3d/ci: make traces test mandatory

- v3d: enable NIR compact arrays

- vc4: set blit mask correctly

- vc4: call blit paths in chain

- vc4: allow tile-based blit for Z/S

- vc4: add specific stencil blit path

- v3d/v3dv/ci: adjust job fractions

- v3dv/vc4/ci: update expected results

- v3d/ci: update traces

- v3d: Z/S blit require Z/S formats

- broadcom/ci: update expected results

- v3d: handle samplerExternalOES

- broadcom/ci: update expected results

- gallium/util: fix color clamp for alpha-only formats

- v3d: clear alpha-only as red-only

- vc4/v3d/ci: update expected results

- v3d/ci: add new flake

Julia Tatz (7):

- zink: Implement PIPE_CAP_OPENCL_INTEGER_FUNCTIONS and PIPE_CAP_INTEGER_MULTIPLY_32X16.

- zink: Implement PIPE_CAP_RESOURCE_FROM_USER_MEMORY

- zink: fix layout(local_size_variable) for vk1.3+

- zink/ci: update expected results

- aux/trace: fix (u)int dump

- gallium/dri: fix dri2_from_names

- aux/trace: fix set_hw_atomic_buffers method name

Julia Zhang (1):

- virgl: remove check of VIRGL_CAP_V2_UNTYPED_RESOURCE

Julian Hagemeister (1):

- Gallium: Fix shared memory segment leak

Juston Li (24):

- venus: use pipelineCacheUUID for shader cache id

- venus: filter out queue familes with exclusive sparse binding support

- venus: add helper function support for VkBindSparseInfo

- venus: add back sparse binding support

- venus: enable sparse binding features

- venus: enable sparse binding properties

- venus: sync to latest protocol header from v1.3.252

- venus: sync protocol for multiple extensions for zink

- venus: enable VK_EXT_non_seamless_cube_map

- venus: enable VK_EXT_dynamic_rendering_unused_attachments

- venus: enable VK_KHR_shader_clock

- venus: enable VK_EXT_border_color_swizzle

- venus: enable VK_EXT_fragment_shader_interlock

- venus: enable VK_EXT_shader_subgroup_ballot

- venus: enable VK_EXT_color_write_enable

- docs: venus: update extension support

- radv: fix incorrect size for primitives generated query

- venus: factor out flush barrier cmd

- venus: expose vn_feedback_buffer_create()

- venus: add query pool feedback cmds

- venus: track viewMask

- venus: track render pass

- venus: batch query feedback and defer until after render pass

- venus: use feedback for vkGetQueryPoolResults

Karmjit Mahil (44):

- pvr: Add missing includes in pvr_common.h

- pvr: Implement vkCmdUpdateBuffer().

- pvr: Implement simple internal format v2 transfer paths.

- pvr: Add deferred RTA clears for cores without gs_rta_support.

- pvr: Finish pvr_perform_start_of_render_attachment_clear().

- pvr: Collect vertex input data and fill info struct.

- pvr: Fix a comment in the PDS code

- pvr: Fix typo in PDS function name

- pvr: Add handling for missing entries in pvr_setup_vertex_buffers()

- pvr: Handle special built-in variable loading in vertex shader

- pvr: Add PVR_DW_TO_BYTES()

- pvr: Fix pvr_csb_bake() list return.

- pvr: Change push_constants_shader_stages to type pvr_stage_allocation

- pvr: Fix static assert check

- pvr: Fix unaligned VDMCTRL_PDS_STATE1 data address

- pvr: Don’t advertise S8_UINT support

- pvr: Fix cs corruption in pvr_pack_clear_vdm_state()

- pvr: Add missing NULL checks in some vkDestroy…() functions

- pvr: Use original binding numbers instead of reassigning

- pvr: Remove custom status in command buffer

- pvr: Fix missing invalidation of the command buffer

- pvr: Fix possible allocation of 0 size

- pvr: Fix vk_free() in vkCreateRenderPass2() error path

- pvr: Use the suballocator for queries

- pvr: Add pvrsrvkm sync prim set bridge call

- pvr: Move pvrsrv sync prim code into new pvr_srv_sync_prim.{c,h}

- pvr: Use idalloc as the allocator for sync prims

- pvr: Handle barrier load and store flags.

- pvr: Fix typo causing seg faults copying immutable samplers

- pvr: Fix draw indirect page faults due to missing index list buffer

- pvr: Rename temps_count to pds_temps_count

- pvr: Fix PDS temps allocation on fragment stage

- pvr: HWRT creation simplifications.

- pvr: Dedup a check with pvr_is_render_area_tile_aligned()

- pvr: Remove outdated finishme

- pvr: Fix seg fault on empty descriptor set

- pvr: Fix dynamic offset patching

- pvr: Fix csb control stream extension

- pvr: Fix missing BITFIELD_BIT for winsys frag job flag

- pvr: Change winsys flag defines to bitfields

- pvr: Setup ZLS depth and stencil load/store separately

- docs: Add inital PowerVR driver documentation

- pvr: Fix `for` loop itarator usage

- pvr: Fix dynamic desc offset storage

Karol Herbst (140):

- rusticl: rework CLVec helper function to calculate bounds

- rusticl/mem: fix Mem::copy_rect

- rusticl/mem: replace buffer_offset_size with CLVec::calc_offset_size

- gallium: correctly name the flags of svm_migrate

- rusticl/context: add helper to get the max mem alloc size for all devices

- rusticl/memory: Rework mapping of memory located in system RAM

- rusticl/mem: add get_parent helper

- rusticl: add support for fine-grained system SVM

- nv50/ir: ignore CL system values

- nouveau: allow to enable SVM without having to enable CL

- nouveau: nouveau_copy_buffer can deal with user_ptrs just fine

- rusticl/event: drop work item before updating status

- rusticl: add create_pipe_box to better deal with pipe_box restrictions

- rusticl/mem: more region and origin validation

- radeonsi: lower mul_high

- ac/llvm: support shifts on 16 bit vec2

- rusticl: don’t set size_t-is-usize for >=bindgen-0.65

- rusticl/device: improve advertisement of fp64 support

- rusticl/platform: make the initialization more explicit

- rusticl/platform: extract env variable parsing from Platform::init

- rusticl/platform: add RUSTICL_FEATURES boilerplate

- rusticl/device: allow enablement of fp64 via RUSTICL_FEATURES

- rusticl/program: rework dynamic Program state

- rusticl/program: use if let to get rid of an unwrap in build

- clc: free kernel args in clc_free_kernels_info

- rusticl/nir: finish blob after serializing

- nvc0: do not randomly emit fences.

- nv50/ir: Use unified atomics

- Reviewed-by: Nora Allen <blackcatgames@protonmail.com>rusticl/platform: make the extension array a static

- rusticl/device: use PLATFORM_EXTENSIONS as a template for filling extensions

- rusticl/platform: advertise byte_addressable_store

- rusticl/device: split add_ext in fill_extensions

- rusticl: explicitly state supported SPIR-V extensions

- rusticl/platform: generate extension constants via macro

- rusticl/spirv: skip printing info messages

- rusticl/device: limit MAX_PARAMETER_SIZE to 32k

- rusticl/device: set preferred vector size of doubles if fp64 is enabled

- nv50/ir: convert to scoped_barrier

- doc/rusticl: add Rust Update Policy

- rusticl: bump rust req to 1.60

- rusticl/event: flush queues from dependencies

- ci: add and use clippy for rusticl

- rusticl: fix clippy errors on image_slice_pitch change to usize

- clc: relax spec constant validation

- rusticl: add proc macro module for generating API stubs

- rusticl/icd: make release return nothing

- rusticl/icd: use new proc macros

- ac/llvm: support vec2 on b2i16

- ac/llvm: replace MESA_SHADER_COMPUTE checks with gl_shader_stage_is_compute

- ac/llvm: set +cumode for radeonsi

- lp: align memory for long16 CL types

- rusticl/icd: fix ReferenceCountedAPIPointer::from_ptr for NULL pointers

- rusticl/api: remove some repr(C)

- rusticl/event: ensure even status is updated in order

- docs: improve OpenCL features

- rusticl/queue: overhaul of the queue+event handling

- rusticl: enforce using unsafe blocks in unsafe functions

- nv50/ir: use override

- nv50/ir: resolve -Woverloaded-virtual=1 warnings

- clc: add commment to clc_optional_features to ensure no padding exists

- rusticl/spirv: Key optional clc features when caching.

- clc: static assert that clc_optional_features has no padding

- nouveau: eliminate busy waiting on fences

- rusticl/device: add intel usm queries DPCPP cares about

- rusticl/device: sort cl_device_info queries

- rusticl/version: use cl_version instead of cl_uint and provide a From impl

- rusticl: advertize cl_khr_extended_versioning

- docs/cl: fix whitespace issues and add missing entries

- rusticl: advertize cl_khr_spirv_no_integer_wrap_decoration

- docs/cl: improve reporting of image features

- rusticl/mem: cache the pipe_format

- rusticl/mem: fix validation of packed image formats

- rusticl/format: pass order and type to rusticl_image_format directly

- rusticl/format: extract CL format to pipe format mapping into const function

- rusticl/format: extract required format checks into const functions

- rusticl/format: drop req_for_3d_image_write_ext

- rusticl/format: add required format table for CL2.0

- rusticl/format: document cl to pipe format mapping

- rusticl/format: move format table generation into a macro

- rusticl/format: enable all trivial to support optional image formats

- clc: fix SPIRVMessageConsumer for NULL src

- clc: allow passing custom validator options

- rusticl/program: pass our max param size along to the spirv validator

- compiler/types: fix size of padded OpenCL Structs

- rusticl/device: rename doubles to fp64 and long to int64

- rusticl: experimental support for cl_khr_fp16

- rusticl: add ld_args_gc_sections

- rusticl: specify which symbols to export

- rusticl: stop linking with libgalliumvl

- rusticl/device: create helper context before loading libclc

- nir/load_libclc: run some opt passes for everybody

- docs: document CLC_DEBUG

- rusticl/program: add debugging for OpenCL C compilation

- rusticl/program: add debugging option to disable SPIR-V validation

- nvc0: fix printing shaders

- nv50/ir/nir: set numBarriers if we emit an OP_BAR

- rusticl: structurize and reorder mesa binding args

- rusticl: generate bindings for build-id stuff

- rusticl/meson: extract common bindgen rust args

- rusticl/mesa: create proper build-id hash for the disk cache

- rusticl: bump bindgen requirement

- rusticl/program: skip linking compiled binaries

- docs/rusticl: mark building section as such

- docs/rusticl: add Enabling section

- docs/cl: remove cl_khr_byte_addressable_store from extension list.

- docs/cl: move vec3 support under OpenCL C 1.1

- docs/cl: timer sync is implemented

- docs: add missing get_compute_state_info documentation

- vtn: more CL subgroups

- clc: rework optional subgroup feature

- llvmpipe: report the proper subgroup size

- gallium: add simd_sizes to pipe_compute_state_object_info

- gallium: add get_compute_state_subgroup_size

- gallium: add PIPE_COMPUTE_CAP_MAX_SUBGROUPS

- iris: implement get_compute_state_subgroup_size

- rusticl/util: add an Iterator to iterate over set bits in an integer

- rusticl/util: add div_round_up

- rusticl/device: rework subgroups to subgroup_sizes

- gallium: change PIPE_COMPUTE_CAP_SUBGROUP_SIZE to a bitfield of sizes

- rusticl: deal with compute_param returning 0

- rusticl: support subgroups

- nvc0: backport fp helper invocation fix to 2nd gen Maxwell+

- rusticl/kernel: silence newer clippy warning

- rusticl: Replace &Arc<Device> with &Device

- rusticl/device: make it &’static

- api/icd: drop static lifetime from `get_ref` return type

- nvc0: initial Ada enablement

- rusticl: fix warnings with newer rustc

- nv50/ir/nir: fix txq emission on MS textures

- nv50/ir/nir: Fix zero source handling of tex instructions.

- rusticl/kernel: only handle function_temp memory before lowering printf

- n50/compute: submit initial compute state in nv50_screen_create

- nv50: fix code uploads bigger than 0x10000 bytes

- nouveau: take glsl_type ref unconditionally

- nv50: limit max code uploads to 0x8000

- clc: use CLANG_RESOURCE_DIR for clang’s resource path

- zink: fix source type in load/store scratch

- zink: fix global stores

- rusticl/disk_cache: fix stack corruption

- rusticl/memory: do not verify pitch for IMAGE1D_BUFFER

Kenneth Graunke (17):

- intel/compiler: UNDEF comparisons with smaller than 32-bit

- intel/compiler: UNDEF SubgroupInvocation’s register

- intel/compiler: Fold constants after distributing source modifiers

- nir: Add a variant of nir_lower_int64 for float conversions only

- intel/compiler: Postpone most int64 lowering to brw_postprocess_nir

- nir: Add find_lsb lowering to nir_lower_int64.

- intel/compiler: Fix 64-bit ufind_msb, find_lsb, and bit_count

- nir: Assert that we don’t shrink bit-sizes in nir_lower_bit_size()

- intel/compiler: Fix a fallthrough in components_read() for atomics

- intel/genxml: Drop Tiled Resource Mode fields

- intel: Initialize FF_MODE2 on all Gfx12 platforms

- iris: Allocate coherent buffers for resources flagged as persistent/coherent

- isl: Don’t set “Enable Unorm Path in Color Pipe” on Alchemist

- intel/genxml: Fix gen_sort_tags.py to handle mbz/mbo

- intel/genxml: Update RENDER_SURFACE_STATE Fields

- iris: Re-emit 3DSTATE_DS for each primitive (workaround 14019750404)

- iris: Check prog[] instead of uncompiled[] for BLORP state skipping

Kiskae (1):

- vulkan/wsi: check for dri3 buffer initialization failure

Konrad Dybcio (2):

- freedreno: Add some A6/7xx registers

- freedreno: Partially decode CP_PROTECT_CNTL

Konstantin Kharlamov (1):

- loader/dri3: temporarily work around a crash when front is NULL

Konstantin Seurer (133):

- nir/lower_fp16_casts: Fix SSA dominance

- nir/lower_io: Emit less iadd(x, 0)

- nir: Make rq_load committed src an index

- radv: Stop running constant folding during ray query lowering

- radv/ci: Test ray tracing pipelines

- gallium/nir: Handle unified atomics in nir_to_tgsi_info

- nir/inline_uniforms: Handle num_components > 1

- nir/lower_shader_calls: Remat derefs earlier

- radv: Stop using radv_get_int_debug_option

- treewide: Add a .clang-format file

- amd: Use the Mesa base style

- asahi: Use the Mesa base style

- freedreno: Use the Mesa base style

- d3d12: Use the Mesa base style

- i915: Use the Mesa base style

- r600/sfn: Use the Mesa base style

- panfrost: Use the Mesa base style

- util/perf: Use the Mesa base style

- venus: Use the Mesa base style

- asahi: Reformat using the new style

- panfrost: Reformat using the new style

- gallivm: Fix gather/scatter types for newer llvm

- radv/rt: Fix pipeline libraries

- gallivm: Fix anisotropic sampling with num_mips=1

- gallivm: Cast read_first_invocation source to an int

- llvmpipe: refactor out the pipe->lp_jit structure fillers.

- llvmpipe: Add lp_storage_image_format_supported

- llvmpipe: Add lp_storage_render_image_format_supported

- gallivm: Add lp_build_nir_sample_key

- gallivm: Add lp_img_op_from_intrinsic

- gallivm: Handle invalid image format/op combinations

- gallivm: Zero initialize param structs

- radv/rt: Do not guard the raygen shader

- radv/rt: Clear NIR metadata after lowering the ABI

- aco/rt: Do not initialize the next shader addr

- radv/ci: Test ray tracing on vkd3d-proton

- radv/rt: Stop forcing wave32 by setting compute_subgroup_size

- Revert “radv: Enable ray tracing pipelines by default”

- radv/rt: Enable RT pipelines on GFX10_3+ excluding vangogh

- radv: Move the shader type to radv_shader_info

- radv: Adjust the traversal shader description

- radv: Use get_shader_from_executable_index for executable properties

- radv: Implement executable properties for ray tracing stages

- radv: Use _mesa_shader_stage_to_string for executable name

- radv/rt: Store the prolog outside the shaders array

- radv: Call radv_pipeline_init_scratch per shader

- meson: Add a xcb-keysyms dependency

- vulkan: Common trace capturing infrastructure

- radv: Add radv_trace_mode

- vulkan/wsi/x11: Capture traces using a hotkey

- radv/rra: Use common trace trigger

- radv/rgp: Use common trace trigger

- vulkan/rmv,radv: Use common trace trigger

- docs: Update envvars used for tracing

- amd: Use nir_ instead of nir_build_ helpers

- microsoft: Use nir_ instead of nir_build_ helpers

- intel: Use nir_ instead of nir_build_ helpers

- freedreno: Use nir_ instead of nir_build_ helpers

- vtn: Use nir_ instead of nir_build_ helpers

- nir: Use nir_ instead of nir_build_ helpers

- nir/builder_opcodes: Remove nir_build_ prefixed helpers

- util: Do not include immintrin.h in half_float.h

- radv/rt: Fix caching non-recursive stages

- radv/rt: Hash stages using radv_hash_shaders

- llvmpipe: Add BDA jit type helpers

- gallivm: Add missing includes

- gallivm: Add lp_descriptor struct

- gallivm: Expose lp_build_sample_soa_code

- llvmpipe: Add lp_build_sampler_soa_dynamic_state

- llvmpipe: Add lp_build_image_soa_dynamic_state

- gallivm: Add LP_IMG_OP_COUNT

- gallivm: Expose LP_MAX_TEX_FUNC_ARGS

- llvmpipe: Add LP_TOTAL_IMAGE_OP_COUNT

- gallivm: Expose lp_build_texel_type

- gallivm: Propagate vulkan resources

- gallivm: Clamp the texel buffer size

- llvmpipe: Pre compile sample functions

- gallivm: Add a function for loading vulkan descriptors

- gallivm: Implement vulkan UBOs

- gallivm: Implement vulkan SSBOs

- gallivm: Implement vulkan textures

- gallivm: Implement vulkan images

- llvmpipe: Disable the linear path when running vulkan

- lavapipe: Include llvmpipe

- lavapipe: Lower more texture OPs

- lavapipe: Make pipeline_lock generic for accessing the queue

- lavapipe: Rework descriptor handling

- lavapipe: Lower non uniform access

- lavapipe: EXT_descriptor_indexing

- llvmpipe: Use lp_jit_buffer_from_pipe_const in setup

- lavapipe: Make shader compilation thread safe

- zink: Increase ZINK_FBFETCH_DESCRIPTOR_SIZE to 280

- zink/ci: Update lavapipe expectations

- venus/ci: Update fails

- lavapipe/ci: Update CI expectations for new extensions

- llvmpipe/ci: Update expectations

- nir: Add nir_builder_at

- radv: Use nir_builder_at

- asahi: Use nir_builder_at

- v3d: Use nir_builder_at

- glsl: Use nir_builder_at

- nir: Use nir_builder_at

- spirv: Use nir_builder_at

- freedreno: Use nir_builder_at

- gallium,st: Use nir_builder_at

- crocus: Use nir_builder_at

- etnaviv: Use nir_builder_at

- r600: Use nir_builder_at

- radeonsi: Use nir_builder_at

- vc4: Use nir_builder_at

- zink: Use nir_builder_at

- lavapipe: Use nir_builder_at

- microsoft: Use nir_builder_at

- panfrost: Use nir_builder_at

- intel: Use nir_builder_at

- nir/opt_dead_cf: Handle if statements ending in a jump correctly

- nir/builder_opcodes: Do not generate empty intrinsic indices

- amd: Move ac_hw_stage to its own file

- gallivm: Fix atomic_global types

- lavapipe: Set the descriptor count to what vkd3d-proton requires

- llvmpipe: Allow comparison sampling for float formats

- llvmpipe: Allocate more dummy sample functions for FORMAT_NONE

- llvmpipe,lavapipe: Relayout lp_descriptor

- lavapipe: Always advertise formatless storage image OPs

- nir/lower_shader_calls: Remat derefs after shader calls

- nir/opt_dead_cf: Run dead_cf_block while it makes progress

- nir/opt_dead_cf: Clarify comment

- draw: Do not restart the primitive_id at 0

- llvmpipe: Fix compiling with LP_USE_TEXTURE_CACHE

- llvmpipe: Zero extend vectors in widen_to_simd_width

- vulkan/wsi/x11: Implement capture hotkey using the keymap

- radv: Don’t use the depth image view for depth bias emission

- aco/spill: Make sure that offset stays in bounds

Kurt Kartaltepe (1):

- drirc: Set limit_trig_input_range option for Nier games

Leo Liu (6):

- radeonsi: create a new context for transcode with multiple video engines

- radeonsi/vcn: AV1 skip the redundant bs resize

- radeonsi: Remove redundant vcn_decode from info

- amd: Add vcn ip version info

- radeonsi: Use vcn version instead of CHIP family for VCNs

- radeonsi/vcn: fix the incorrect dt_size

Lina Versace (2):

- venus: Advertise 1.3 in ICD file

- venus: Fix detection of push descriptor set

LingMan (4):

- rusticl: core: stop using cl_prop from the api module

- rusticl: drop CLProp implementation for String

- rusticl: drop cl_prop_for_type macro

- rusticl: fix UB in CLProp machinery

Lionel Landwerlin (185):

- docs: add missing MESA_VK_WSI_HEADLESS_SWAPCHAIN variable

- vulkan/runtime: discard unused graphics stages in libraries

- intel/vec4: force exec_all on float control instruction

- anv: enable blorp query reset for performance queries

- vulkan/overlay: deal with unknown pNext structures

- isl: don’t set inconsistent fields for depth when using stencil only

- anv: introduce a base graphics pipeline object

- anv: move force shading rate writes checks

- anv: make input attachments available through bindless

- anv: move preprocessing of NIR right before compilation

- anv: add dynamic buffer offsets support with independent sets

- anv: implement VK_EXT_graphics_pipeline_library

- anv: Work around the spec question about pipeline feedback vs GPL.

- isl: fix a number of errors on storage format support on Gfx9/12.5

- intel/nir: add options to storage image lowering

- anv: drop lowered storage images code

- anv: enable shaderStorageImageReadWithoutFormat on Gfx12.5+

- anv: rework Wa_14017076903 to only apply with occlusion queries

- intel/tools: add ability to dump out raw kernels data

- nir/divergence: add missing load_global_constant_* intrinsics

- anv: fix anv_nir_lower_ubo_loads pass

- anv: enable shaderUniformBufferArrayNonUniformIndexing

- intel/fs: fix per vertex input clamping

- nir/lower_non_uniform_access: add get_ssbo_size handling

- intel/compiler: make uses_pos_offset a tri-state

- vulkan: bump headers to 1.3.249

- spirv: update to latest headers

- spirv/nir: wire ray interection triangle position fetch

- intel/nir/rt: use a single load for instance leaf loading

- intel/nir/rt: wire position fetch intrinsic

- anv: implement VK_KHR_ray_tracing_position_fetch

- intel/fs: fix scheduling of HALT instructions

- anv: remove 48bit address space checks

- anv: avoid hardcoding instruction VA constant in shaders

- anv: link anv_bo to its VMA heap

- anv: make internal address space allocation more dynamic

- anv: increase instruction heap to 2Gb

- intel/fs: reduce register usage for relocated constants

- intel: enable protected context creation along with engines

- Revert “intel/compiler: make uses_pos_offset a tri-state”

- anv: fixup workaround 16011411144

- intel/mi_builder: fixup tests for newer kernel uAPI

- intel: switch over to unified atomics

- spirv: fix argument to ray query intrinsic

- intel/devinfo: printout on stdout

- intel/devinfo: allow -p to take a pci-id in hexa

- intel/devinfo: call intel_device_info_init_was only once

- anv: put private binding BOs into execlists

- anv: mark images compressed for untracked layout/access

- gitlab-ci: add capture for i915 error state

- anv: defer binding table block allocation to when necessary

- anv: assume context isolation support

- anv: fix push descriptor deferred surface state packing

- intel/fs: fix size_read() for LOAD_PAYLOAD

- anv: move timestamp vfunc initialization to genX code

- anv: use COMPUTE_WALKER post sync field to track compute work

- iris: use COMPUTE_WALKER post sync field to track compute work

- intel/fs: make tcs input_vertices dynamic

- anv: implement EDS2.extendedDynamicState2PatchControlPoints

- iris: rework Wa_14017076903 to only apply with occlusion queries

- intel: add alignment helper for aux map

- iris: add a comment about aux-tt alignment requirements

- anv: update aux-tt alignment requirements for MTL

- intel: reduce minimum memory alignment on Gfx12.5

- anv: further reduce pool alignments

- anv: opportunistically align VMA to 2Mb

- anv: update internal address space to have 4Gb of dynamic state

- anv: fix push range for descriptor offsets

- intel/fs: reuse descriptor helper

- intel/fs: lower get_buffer_size like other logical sends

- nir/lower_shader_calls: add ability to force remat of instructions

- nir: add a new intrinsic to describe resources accessed on intel

- nir: teach nir_chase_binding about resource_intel

- nir/opt_gcm: allow resource_intel to be moved anywhere

- intel/fs: add a pass to move resource_intel closer to user

- intel/fs: teach ubo range analysis pass about resource_intel

- intel/fs: keep track of new resource_intel information

- intel/fs: enable SSBO accesses through the bindless heap

- intel/fs: enable UBO accesses through bindless heap

- intel/fs: enable get_buffer_size on bindless heap

- intel/fs: enable extended bindless surface offset

- intel/fs: enable bindless sampler state offsets

- intel/fs: enable uniform block accesses through bindless heap

- intel/fs: try to rematerialize surface computation code

- anv: remove unused define

- anv: fix null descriptor handling with A64 messages

- anv: remove incorrect ifdef

- anv: bail flush_gfx_state when not gfx push constant is dirty

- anv: track pipeline in anv_cmd_pipeline_state

- anv: move pipeline active_stages to common structure

- anv: increase workaround BO so that we can hold a full 4Kb page of 0s

- anv: toggle extended bindless surface state on Gfx12.5+

- docs/anv: some binding table explanations

- anv: add an option for using indirect descriptors

- anv: introduce a new descriptor set layout type

- anv: create a pool for indirect descriptors

- anv: reduce push constant size for descriptor sets

- anv: new structure to hold surface states

- anv: add a pass to partially lower resource_intel

- nir: expose a couple of address format add helpers

- anv: bound load descriptor mem better

- anv: prepare image/buffer views for non indirect descriptors

- anv: add support for direct descriptor in allocation/writes

- anv: add helpers to build pipeline bindings

- anv: handle null surface in the binding table with direct descriptors

- anv: factor out dynamic buffer bti emission

- anv: implement binding table emission for direct descriptors

- anv: simplify ycbcr bti computations

- anv: track descriptor data size

- anv: add direct descriptor support to apply_layout

- anv: bring back the max number of sets to 8

- anv: descriptor binding for direct descriptors

- anv: ensure descriptor addresses are used with bindless stages

- anv: enable direct descriptors on platforms with extended bindless offset

- anv: add support for VK_EXT_dynamic_rendering_unused_attachments

- anv: remove unused functions

- intel/fs: fix a couple of descriptor mistakes

- intel/stub_gpu: add an option to launch valgrind

- intel/fs: fix pull-constant-load prior to gfx7

- anv: allow binding tables allocations on compute only queues

- intel/nir: switch ray query state tracking to local variables uint16_t

- anv: add query tracepoints

- anv: deal with unsupported VkImageFormatListCreateInfo::pViewFormats

- anv: report max simd width only once for fragment shaders

- anv: always report all pipeline stats regardless of stages

- anv: only disable mesh when enabled at the VkDevice level

- anv: disable mesh/task for generated draws

- anv: fix incorrect batch for 3DSTATE_CONSTANT_ALL emission

- anv: limit ANV_PIPE_RENDER_TARGET_BUFFER_WRITES to blorp operations using 3D

- anv: factor out generation kernel dispatch into helper

- anv: add support for simple internal compute shaders

- anv: generalize internal kernel concept

- anv: add shaders for copying query results

- intel/ds: add query count in query tracepoints

- anv: enable CmdCopyQueryPoolResults to use shader for copies

- intel/fs: fix bindless/shared surface mistake

- intel/fs: print identation for control flow

- intel/fs: avoid reusing the VGRF for uniform load_ubo

- nir: add a new ubo uniform loading intrinsic for intel

- intel/fs: make use of load_ubo_uniform_block_intel

- nir: add a load_global_constant uniform intel variant

- intel/fs: handle load_global_constant_uniform_block_intel

- anv: avoid private buffer allocations in vkGetDeviceImageMemoryRequirementsKHR

- anv: add missing query clear flush for acceleration structure queries

- anv: track buffer writes from shaders for query results writes

- anv: change the way we clear pending query bits

- anv: fix pending query bits for compute only command buffers

- anv: tracking query buffer writes & query clears separately

- anv: switch copy query results with shaders from semaphore waits to flushes

- vulkan: registry/headers bump to 1.3.254

- vulkan/runtime: add support for EXT_depth_bias_control

- anv: add VK_EXT_depth_bias_control support

- isl: assert on gfx6 condition that should not be met

- isl: assert on gfx7 condition that should not be met

- isl: assert on gfx8 condition that should not be met

- isl: add surface creation reporting mechanism

- anv: align buffers to a cache line

- anv: fix utrace batch allocation

- genxml: enable decoding on compute engine

- intel/aubinator_error_decode: add ccs support

- anv: look into batch bo reloc list looking for BOs to decode

- anv: implement storage image depth query using descriptor buffer read

- Revert “isl: Set Depth to array len for 3D storage images”

- docs/features: update anv entries

- intel/fs: disable coarse pixel shader with interpolater messages at sample

- nir/opt_shrink_vectors: enable sparse intrinsics shrinking

- docs/features: add more missing extensions

- docs/features: add hasvk entries

- zink: update profile vulkan version requirements

- zink: drop linear D32_SFLOAT_S8_UINT requirement

- anv: fix utrace signaling with Xe

- intel/fs: fix missing predicate on SEL instruction

- intel/fs: don’t try to rebuild sequences of non ssa values

- anv: fix 3DSTATE_RASTER::APIMode field setting

- hasvk: fix null descriptor handling with A64 messages

- anv: don’t try to access dynamic buffers from surface states

- intel/compiler: disable per-sample interpolation modes with non-per-sample dispatch

- anv: add missing ISL storage usage

- intel/nir: rerun lower_tex if it lowers something

- hasvk: add state cache invalidation back before fast clears

- anv: fix utrace timestamp buffer copies

- intel: don’t assume Linux minor dev node

- blorp: switch blorp_update_clear_color to early return

- blorp: update and move fast clear PIPE_CONTROLs to drivers

- iris: ensure stalling pipe control before fast clear

Liviu Prodea (1):

- microsoft/clc: Don’t build compiler test if build-tests is false

Lone_Wolf (3):

- compiler/clc: Fix embedded clang headers (microsoft-clc) for LLVM 16+

- clc: Add clangASTMatchers to fix static llvm build of microsoft-clc with LLVM 16+

- clc: Add clang frontendhlsl module to fix build of microsoft-clc with llvm 16+

Luc Ma (1):

- meson: keep Mako version checking in accord with build msg

Luca Bacci (1):

- Add checks for NULL dxil_validator

Luca Weiss (1):

- freedreno: Enable A506

Lucas Fryzek (6):

- broadcom: Add support for VK_FORMAT_A2R10G10B10_UNORM_PACK32

- broadcom: Fix slice memory allocation logic for compressed textures

- v3d: Add support for ASTC texture compression

- v3dv: Update texture padding logic to match v3d changes

- mailmap: Add Lucas Fryzek to mailmap

- gallium: Remove `PIPE_CAP_RGB_OVERRIDE_DST_ALPHA_BLEND`

Lucas Stach (16):

- etnaviv: update derived state after forced commandstream flush

- etnaviv: don’t flush implicit flush resources when forced

- etnaviv: rs: flush TS cache before making configuration changes

- etnaviv: rs: unconditionally flush color and depth cache before using RS

- etnaviv: optimize transfer flushes

- etnaviv: query: move sample counter manipulation into query providers

- etnaviv: query: reset sample count on begin_query

- etnaviv: query: remove incorrect comment

- etnaviv: query: correct max number of perfmon samples

- etnaviv: query: correct max number of occlusion query samples

- etnaviv: query: optimize context flushes

- mesa/st: discard whole resource when mapping drawpixels texture

- etnaviv: only emit sampler config for changed samplers

- etnaviv: move resource level dimension members to make comments line up

- etnaviv: rs: fix multisampled blits

- etnaviv: blt: fix multisampled blits

Luigi Santivetti (13):

- pvr: use PVR_DW_TO_BYTES for stream_link_space calculation

- pvr: add GUARD_SIZE_DEFAULT for CDM and VDM control stream links 1 and 2

- pvr: fixup stack overflow in {start,end}_sub_cmd

- pvr: introduce suballocator for internal allocations

- pvr: switch pvr_gpu_upload_* to use pvr_bo_suballoc

- pvr: switch pvr_cmd_buffer_alloc_mem to use pvr_bo_suballoc

- pvr: switch pvr_descriptor_set_create to use pvr_bo_suballoc

- pvr: switch pvr_clear to use pvr_bo_suballoc

- pvr: switch pvr_spm to use pvr_bo_suballoc

- pvr: fixup assert in pvr_cmd_buffer_alloc_mem

- pvr: fix division by block size in blit

- pvr: fixup transfer primary sub-command list

- pvr: do not claim support for ASTC texture compression

Luna Nova (5):

- device_select_layer: fix inverted strcmp in device_select_find_dri_prime_tag_default (v1)

- device_select_layer: apply DRI_PRIME even if default device is > 1 to match opengl behavior

- device_select_layer: pick a default device before applying DRI_PRIME

- device_select_layer: add MESA_VK_DEVICE_SELECT_DEBUG which logs why default selection was made

- device_select_layer: log selectable devices if MESA_VK_DEVICE_SELECT_DEBUG or DRI_PRIME_DEBUG are set

Lynne (4):

- radv/video: reject general unsupported video formats

- radv/video: reject non-8bit H264

- radv/video: reject unsupported hevc profiles and bit depths

- anv_video: reject decoding of unsupported profiles and formats

M Henning (12):

- nvc0: Use nir in nvc0_program_init_tcp_empty

- nvc0: Use nir in nvc0_blitter_make_vp

- nv50,nvc0: Use nir in nv50_blitter_make_fp

- nv50,nvc0: Stop advertising TGSI by default

- nv50,nvc0: Use ttn for tgsi shaders by default

- gallium: Add pipe_shader_state_from_nir

- nouveau/codegen: Check nir_dest_num_components

- nv50/codegen: Set lower_uniforms_to_ubo

- nouveau/nir: Set isSigned on all atomic_imax/imin

- nv50,nvc0: Free nir from blitter fp shader

- nvc0: Free blitter->vp

- nv50: Fix return type of nv50_blit_is_array

Marcin Ślusarz (17):

- intel: split URB space between task and mesh proportionally to entry sizes

- anv: move nir_shader_gather_info to anv_pipeline_nir_preprocess

- intel/tools: decode ACTHD printed by newer kernels

- nir: extract try_lower_id_to_index_1d

- nir: use wg id to wg idx shortcut if two dims of num_workgroups are 1

- nir: use constant components of num_workgroups in wg id to wg idx lowering

- nir: lower num_workgroups to constants

- intel/compiler: pass num_workgroups from task to mesh shaders

- nir: add cheap shortcut for wg id to wg idx lowering

- anv,intel/compiler: enable shortcut in wg id to wg idx lowering on >= gfx12.5

- intel/compiler: simplify reading of gl_NumWorkGroups in task/mesh

- anv: fix how NULL buffer_view is handled in anv_descriptor_set_write_buffer_view

- anv: pass anv_surface_state using a pointer

- anv: limit stack usage for anv_surface_state

- intel/compiler/mesh: compactify MUE layout

- intel/compiler,anv: put some vertex and primitive data in headers

- intel/compiler: load debug mesh compaction options once

Marek Olšák (169):

- nir: fix 2 bugs in nir_create_passthrough_tcs

- nir: lower load_barycentric_at_offset in lower_wpos_ytransform

- nir: assign IO bases in nir_lower_io_passes

- nir: skip nir_lower_io_passes for compute shaders

- nir: extend nir_opt_fragdepth to handle lowered IO

- nir: handle more opcodes in nir_lower_io_to_scalar

- nir: handle all varying slots in gl_varying_slot_name_for_stage

- nir: don’t remove dead IO variables in nir_lower_io_passes for st_link_nir

- nir: rework nir_lower_color_inputs to work with lowered IO intrinsics

- nir: return a status from nir_remove_varying whether it removed the instruction

- nir: remove an obsolete comment from nir_gather_xfb_info_from_intrinsics

- nir: add next_stage parameter to nir_slot_is_sysval_output to return better info

- nir: add next_stage parameter to nir_remove_varying

- nir: set uses_wide_subgroup_intrinsics for all shader stages

- venus: fix the RHEL8 build by using syscall for gettid

- nir: rename ACCESS_STREAM_CACHE_POLICY -> ACCESS_NON_TEMPORAL and document

- nir: add/update comments for gl_access_qualifier

- ac/surface: don’t expose modifiers with DCC retiling if radeon_info forbids it

- ac/gpu_info: disable display DCC on Raphael and Mendocino to improve power usage

- radeon: add radeon_info parameter into radeon_winsys::surface_init

- radeonsi: do AMD_DEBUG=nodisplaydcc differently to also remove modifiers

- aco: don’t treat ACCESS_NON_READABLE as ACCESS_COHERENT

- ac/llvm: don’t treat ACCESS_NON_READABLE as ACCESS_COHERENT

- ac/llvm: rewrite and unify how GLC, DLC, SLC are set

- nir/lower_io: don’t renumber VS inputs when not called from a linker

- ac/surface: fix address calculation for large images by using uint64_t

- radv: fix sparse image address calculation for large images by using uint64_t

- radv: fix SDMA image address calculation for large images by using uint64_t

- radeonsi: fix SDMA image address calculation for large images by using uint64_t

- radeonsi: fix image address calculation for large images by using uint64_t

- radeonsi: fix sparse image address calculation for large images by using uint64_t

- radeonsi: fix image size calculation in fast clear

- ac/surface: clean up and move the PIPE_CONFIG helper to ac_surface.c

- ac/surface: define LINEAR_PITCH_ALIGNMENT

- ac/surface: validate overridden pitch for all chips

- ac/surface: fix overridden linear pitch for CPU access

- ac/surface: add ac_surf_config::is_array

- amd/registers: update pitch definitions in descriptors

- mesa: fix a VBO buffer reference leak in _mesa_bind_vertex_buffer

- ac,radeonsi,winsyses: switch to SPDX-License-Identifier: MIT

- winsys/radeon: set has_image_opcodes to unbreak gfx6-7

- winsys/radeon: fix the scratch buffer on gfx6-7

- winsys/radeon: set more radeon_info fields

- ac/gpu_info: give has_msaa_sample_loc_bug a more accurate name

- ac/surface: move CB format translation helpers here

- ac/surface: move determing ADDR_FMT_* into a helper function

- ac/llvm: clean up translation of nir_intrinsic_load_invocation_id

- ac/llvm: clean up visit_load_local_invocation_index and visit_load_subgroup_id

- ac/llvm: use LLVM 0/1 constants from ac_llvm_context instead of LLVMConstInt

- radeonsi/gfx11: fix alpha-to-coverage with blending

- radeonsi: reorder code in si_texture_create_object as preparation for the future

- radeonsi: cosmetic changes in si_shader.h

- radeonsi: remove the gl_SampleMask FS output if MSAA is disabled

- radeonsi: don’t enable WGP_MODE because of high cost of workgroup mem coherency

- radeonsi: move emitting draws states out of si_emit_all_states

- radeonsi/gfx11: use DISABLE_FOR_AUTO_INDEX to disable non-indexed prim restart

- radeonsi: reduce the supported compute grid size

- radeonsi: update test results and flakes

- radeonsi: re-enable fp16_rtz for compute blits to fix PBO tests on gfx11

- amd/addrlib: switch the license to the SPDX identifier MIT

- amd/addrlib: add ADDR_FMT_BG_RG_16_16_16_16

- ac/surface: fix is_linear for stencil-only surfaces

- ac/nir: handle DEPTH as PITCH in ac_nir_lower_resinfo

- radeonsi: implement setting a custom pitch to any multiple of 256B on gfx10.3+

- radv: implement setting a custom pitch to any multiple of 256B on gfx10.3+

- ac/surface: relax custom pitch requirements to any multiple of 256B on gfx10.3+

- ac/surface: fix R32G3B32 image format regression for gfx6-8

- ac/nir/ngg: always use load_initial_edgeflags_amd, choose the value in drivers

- amd: add radeon_info* into ac_llvm_context and radv_nir_compiler_options

- radeonsi: define si_shader_io_get_unique_index() values as SI_UNIQUE_SLOT_*

- radeonsi: remove gl_BackColor VS outputs on demand if color_two_side is disabled

- radeonsi: export non-zero edgeflags for GS and tess

- radeonsi/gfx11: extend DB_Z_INFO.NUM_SAMPLES programming to > GFX11

- radeonsi: print shader-db stats with AMD_DEBUG=vs,ps,stats

- radeonsi: use nir_lower_alu_to_scalar correctly

- radeonsi: remove a useless depth texture function call in a fast color clear

- radeonsi: add a gfx11 version of si_decompress_textures, add assertions < GFX11

- radeonsi: remove RADEON_FLAG_MALL_NOALLOC due to no use

- radeonsi: completely rewrite how VGT_SHADER_STAGES_EN is set

- radeonsi: unduplicate si_translate_format_to_hw

- radeonsi: decompress DCC for SDMA if we’re really going to use SDMA

- radeonsi: increase SDMA gfx9+ limits

- radeonsi: split tracked_regs masks into context registers and other registers

- radeonsi: reorder and comment tracked registers

- radeonsi: move PA_CL_NGG_CNTL emission into rasterizer state

- radeonsi: always set sample locations even for 1x MSAA for simplicity

- radeonsi: adjust 16x EQAA sample locs to make PA_SU_PRIM_FILTER_CNTL immutable

- radeonsi: move PA_SU_SMALL_PRIM_FILTER_CNTL to the preamble when possible

- radeonsi: merge si_emit_msaa_sample_locs with si_emit_sample_locations

- radeonsi: rename the msaa_sample_locs state to sample locations

- radeonsi: optimize no-op primitive restart index changes thanks to index masking

- radeonsi: don’t program COMPUTE_MAX_WAVE_ID (GDS register) on gfx6

- radeonsi: add helpers to create and clone a sized pm4 state

- radeonsi: add a separate gfx10_init_gfx_preamble_state function

- radeonsi: don’t set registers set by CLEAR_STATE in the preamble for gfx10-11

- radeonsi: add a separate cdna_init_compute_preamble_state function

- radeonsi/ci: add gfx6 failures

- radeonsi: re-indent gfx10_create_sh_query_result_cs

- radeonsi: don’t use SET_SH_REG_INDEX on gfx7-9

- radeonsi: don’t use SET_SH_REG_INDEX if the kernel doesn’t use CU reservation

- amd: remove unused PKT0 definitions

- treewide: use uint64_t / (u)intptr_t in image address calculations

- amd: drop support for LLVM 11

- amd: drop support for LLVM 12

- amd: drop support for LLVM 13

- amd: drop support for LLVM 14

- mesa: fix glBitmap in display lists when width <= 0 || height <= 0

- gallium/hud: append results to files instead of overwriting them

- radeonsi: don’t convert L8A8 to R8A8 when blitting via compute to fix gfx7

- amd: update SET_*_REG_PAIRS* documentation and remove radeon_info options

- amd: improve the IB parser, parse more packets

- amd: rename mid_command_buffer_preemption_enabled -> register_shadowing_required

- amd: increase the attribute ring size on gfx1103_r1

- amd: don’t set PA_RATE_CNTL because it has no effect

- amd: fix GPU cache sizes retrieved from the kernel

- amd: remove non-shadowed register tables

- amd: remove ac_check_shadowed_regs

- amd: add a new helper that prints all non-shadowed regs

- amd: update shadowed register tables for gfx11

- amd: skip redundant PKT3_NUM_INSTANCES even with register shadowing

- amd: skip redundant INDEX_TYPE even with register shadowing

- radeonsi: set register_shadowing_enabled if AMD_DEBUG=shadowregs is set

- radeonsi/ci: add glx@glx-visuals-stencil to skips because it gets stuck often

- radeonsi: fix RB+ and gfx11 issues with framebuffer state

- radeonsi: change si_emit_derived_tess_state into a state atom

- radeonsi: shrink the last field of tcs_offchip_layout due to LDS limit

- radeonsi: don’t do PFP_SYNC_ME before CP DMA and compute blits

- radeonsi: don’t needlessly invalidate L0/L1 caches at the beginning of IBs

- radeonsi: add more variables into si_pm4_state and rework how it’s created

- radeonsi: remove sscreen parameter from si_pm4_set_reg_idx3

- radeonsi: set non-graphics uconfig registers first in the preamble

- radeonsi: handle demoted si_pm4_set_reg_idx3 as si_pm4_set_reg

- radeonsi: eliminate redundant compute SH register changes

- radeonsi: handle VGT_GS_OUT_PRIM_TYPE like a tracked register

- radeonsi: handle VGT_LS_HS_CONFIG like a tracker register

- radeonsi: handle GE_CNTL and IA_MULTI_VGT_PARAM as a tracked register

- radeonsi: remove gfx10 NGG streamout

- ci: remove clang-format testing

- intel/ci: disable iris-jsl-deqp because it always fails for an AMD MR

- radeonsi: move TCS.gl_PatchVerticesIn into the tcs_offchip_layout SGPR

- radeonsi: replace tcs_out_lds_layout with nearly identical tes_offchip_addr

- radeonsi: move the only tcs_out_lds_offsets field to vs_state_bits

- radeonsi: eliminate redundant TCS user data and RSRC2 register changes

- radeonsi/gfx11: use SET_*_REG_PAIRS_PACKED packets for pm4 states

- radeonsi: determine si_pm4_state::reg_va_low_idx automatically

- radeonsi: keep pipeline statistics disabled when they are not used

- radeonsi: don’t do BREAK_BATCH for context regs with only 1 context per batch

- radeonsi: use si_pm4_create_sized for the shadowing preamble

- radeonsi: remove radeon_winsys::cs_set_preamble

- radeonsi: remove uses_reg_shadowing parameter from si_init_gfx_preamble_state

- radeonsi/gfx11: fix GLCTS with register shadowing by keeping the CS preamble

- radeonsi/gfx11: enable register shadowing by default

- radeonsi: reorder compute code to prepare for packed SET_SH_REG packets

- radeonsi/gfx11: use SET_SH_REG_PAIRS_PACKED for gfx by buffering reg writes

- radeonsi/gfx11: use SET_SH_REG_PAIRS_PACKED for compute by buffering reg writes

- radeonsi: clean up query functions, make them static, remove forward decls

- radeonsi: declare compiler[] and nir_options as pointers to reduce #includes

- radeonsi: clean up #includes

- Revert “egl: return correct error for EGL_KHR_image_pixmap”

- vbo: correctly restore _VaryingInputs for display list fast path

- radeonsi/gfx11: only use SET_*_PAIRS* packets on dGPUs

- radeonsi: fix gfx9 regression causing GPU hangs

- radeonsi/gfx11: fix a regression with PAIRS packets due to shader changes

- Revert “ac/nir/ngg: Follow intrinsic sources when analyzing before culling.”

- glthread: determine global locking once every 64 batches to fix get_time perf

- mesa: fix 38% decrease in display list performance of Viewperf2020/NX8_StudioAA

- util/u_queue: fix util_queue_finish deadlock by merging lock and finish_lock

- radeonsi: fix a CDNA regression breaking compute

- Revert “ac: don’t call ac_query_pci_bus_info from ac_query_gpu_info”

Mark Collins (1):

- ir3/a7xx: Add definitions for (last) src GPR attribute

Mark Janes (8):

- intel/dev: update mesa_defs.json from defect database

- intel/dev: report stepping for TGL systems

- intel/dev: switch defect identifiers to use lineage numbers

- isl: use generated workaround helpers for Wa_1806565034

- iris: convert Wa_14010455700 to use workaround mechanism

- anv: convert Wa_14010455700 to use workaround mechanism

- intel: use generated helpers for Wa_1508744258

- intel/dev: update mesa_defs.json from defect database

Martin Roukala (né Peres) (26):

- radv/ci: disable the vkcts-navi21-llvm-valve job

- radv/ci: document all the flakes we hit while I was away

- ci/b2c: allow not specifying a reboot condition

- radv/ci: only reboot on hangs for vkcts-navi10-valve

- zink/ci: document that some tests no longer fail

- zink/ci: mark 77 multisample-related tests as fixed

- radv/ci: document another vkcts flake on vega10

- radv/ci: document a series of recent regressions

- zink/ci: document recent fixes on RADV

- zink/ci: document new flakes on RADV

- radv/ci: document more flakes for navi21

- radv/ci: switch to b2c v0.9.10

- ci/b2c: update to mesa-trigger:2023-03-08.1

- zink/ci: add more QBO-related fails on RADV

- amd/ci: add another test to the vkcts-vega10 flake list

- zink/ci: remove spec@nv_shader_atomic_int64@* from the fail lists

- ci: bring back the valve farm

- ci/b2c: select the DUT to run on by name

- radv/ci: use the low-priority runners for vangogh jobs

- ci/b2c: change the default first-console-activity timeout to 2 minutes

- zink/ci: add more tests to the flake list of vangogh

- zink/ci: enable zink-radv-vangogh-valve for pre-merge testing

- Revert “ci: mark the valve farm as down”

- amd/ci: temporarily disable some manual jobs that take a long time to run

- zink/ci: remove 3 tests from the fails list

- Revert “amd/ci: temporarily disable some manual jobs that take a long time to run”

Martin Stransky (1):

- llvmpipe: fix UAF in lp_scene_is_resource_referenced.

Matt Coster (57):

- pvr: Complete pvr_isp_ctrl_stream()

- pvr: Fully declare support for VK_EXT_private_data

- pvr: Remove false assumption from pvr_write_draw_indirect_vdm_stream()

- pvr: Fixup format features

- pvr: Unmap mapped memory on free

- pvr: Correctly validate PBE accum format

- pvr: Actually check for depth load when setting up load op constants

- pvr: Initialize aspect_mask when creating buffer views

- pvr: Correctly compile graphics pipelines without a fragment shader

- pvr: Fix off-by-one in pvr_cmd_buffer_upload_desc_set_table() assert

- pvr: Remove unneeded assert in pvr_get_hw_clear_color()

- pvr: Set output_offset correctly in pvr_clear_color_attachment_static()

- pvr: Return correct pbe_accum_format size for A2B10G10R10_UINT_PACK32

- pvr: Remove bad assert in pvr_clear_attachments()

- pvr: Add PVR_DEBUG=vk_desc option to dump descriptor set layouts

- pvr: Simplify descriptor set layout dump separators

- pvr: Return VkResult from pvr_winsys_create()

- pvr: Propagate errors as VkResults from ioctls through winsys

- pvr: Fix incorrect error return in pvr_ctx_sr_programs_setup()

- pvr: Fix incorrect error handling in pvr_render_ctx_switch_init()

- pvr: Squeeze fd handling into winsys layer

- pvr: Drop pdevice from pvr_physical_device_get_supported_extensions()

- pvr: Rename primary_{device,fd,path} to display_*

- pvr: Use common physical device enumeration

- pvr: Assorted cleanup

- pvr: Return VkResult from winsys buffer_map operation

- pvr: Fix allocation scopes in vkCreateRenderPass2() code path

- pvr: Fix memory leaks on realloc failure in pvr_pipeline.c

- pvr: Correct error flow in pvr_graphics_pipeline_compile()

- pvr: Correct error flow in pvr_compute_pipeline_compile()

- pvr: Use correct surface for deferred RTA clear

- pvr: Rename shadowing loop variable in pvr_add_deferred_rta_clear()

- pvr: Do not free deferred pvr_transfer_cmd instances

- pvr: Fix out of range stream errors for geometry-only jobs on pvrsrvkm

- pvr: Reorder execution in pvr_cmd_buffer_end_sub_cmd()

- pvr: Fix page faults in occlusion query tests

- pvr: Fix rect splitting logic in pvr_unwind_rects()

- pvr: Use correct pbe format for VK_FORMAT_A8B8G8R8_UNORM_PACK32

- pvr: Use common vkGetPhysicalDeviceFeatures2() implementation

- pvr: Fix segfault in pvr_physical_device_init()

- pvr: Move pvr_get_isp_num_tiles_xy() to rogue_hw_utils.h

- pvr: Use pvr_sub_cmd_event union members directly

- pvr: Add wait_on_previous_transfer flag to graphics subcommand

- pvr: Cleanup in pvr_process_cmd_buffer()

- pvr: Add pvr_image_view_get_image()

- pvr: Publicise some static functions from pvr_blit.c

- pvr: Rename ds_{image,iview} in pvr_gfx_sub_cmd_job_init()

- pvr: Implement ZLS subtile alignment

- pvr: Correct calculations in pvr_unwind_rects()

- pvr: Refactor pvr_unwind_rects()

- pvr: Allow S8_UINT to be used as a stencil attachment format

- pvr: Don’t overwrite PDS vertex input flags

- pvr: Declare dependency on idep_mesautil

- pvr: Add support for sampler border colors

- pvr: Correctly read dynamic state setup during blend constant setup

- pvr: Advance entry pointer in pvr_setup_vertex_buffers()

- pvr: Rename transfer 3D heap to transfer frag heap

Matt Turner (13):

- intel: Disable shader cache when executing intel_clc during the build

- u_format: Use memcpy to avoid unaligned accesses

- meson: Remove reference to removed SWR driver

- anv: Pipe anv_physical_device to anv_get_image_format_features2

- anv: Only expose video decode bits with KHR_video_decode_queue

- intel: Rearrange for next commit

- intel: Consider with_intel_clc in with_any_intel

- intel: Only build blorp if drivers are enabled

- intel: Only build ds if drivers are enabled

- intel: Only build perf if drivers or tools are enabled

- intel: Allow using intel_clc from the system

- intel: Limit Intel Vulkan RT to x86_64

- Revert “intel/fs: only avoid SIMD32 if strictly inferior in throughput”

Matthieu Bouron (1):

- lavapipe: honor dst base array layer when resolving color attachments

Michael Tretter (2):

- panfrost: remove BO from cache before closing GEM

- kmsro: assert that scanout refcount is larger than 0

Michel Dänzer (17):

- ci: Explicitly test for meson feature checks in compiler wrapper

- ci: Use set -e in frontend compiler wrapper scripts.

- ci: Remove shebang from backend compiler wrapper script

- ci: Drop executable permissions from backend compiler wrapper script

- tgsi: Make ureg_DECL_output_masked definition match its declaration

- llvmpipe: Make lp_build_interp_soa declaration match its definition

- mesa/st: Make st_convert_image(_from_unit) declaration match definition

- vulkan: Fix GetPhysicalDeviceSparseImageFormatProperties definition

- anv/format: Fix GetPhysicalDeviceSparseImageFormatProperties definition

- vulkan: Fix GetPhysicalDeviceSparseImageFormatProperties definitions

- svga: Make vmw_svga_winsys_buffer_map definition match declaration

- svga: Make declaration of emit_input_declaration match definition

- clover/llvm: Use llvm::DataLayout::getABITypeAlign with LLVM >= 16

- clover/llvm: Use std::nullopt already with LLVM 16

- ci: Drop -Wno-error=array-bounds from fedora-release job

- ci: Upgrade fedora-release job to Fedora 38

- ci: Enable rusticl in the fedora-release job

Michel Zou (4):

- vulkan/wsi: fix -Wnarrowing warning

- vk/entry_points:: fix mingw build

- mesa/draw: fix -Wformat warning

- util: reinstate ENUM_PACKED

Mihai Preda (1):

- nir: update nir->num_inputs, num_outputs in nir_recompute_io_bases()

Mike Blumenkrantz (364):

- mesa/st/program: don’t init xfb info if there are no outputs

- zink: remove atomics from zink_query

- zink: pass ctx through query destroy paths

- zink: always defer query pool deletion

- zink: remove screen param from zink_prune_query()

- util/cpu: add big.LITTLE cpu detection

- driconf: rework glthread enablement

- glthread: disable by default with fewer than 4 (big) CPUs

- zink: move memoryTypeIndex selection down in general bo allocation

- zink: slightly rework memoryTypeIndex selection to pre-determine heap

- zink: restore BAR allocation failure demotion

- zink: make general bo allocation more robust by iterating

- zink: avoid zero-sized memcmp for descriptor layouts

- iris: use util_framebuffer_get_num_samples when setting ps dispatch samples

- nir/lower_alpha_test: rzalloc state slots

- zink: fix non-db bindless texture buffers

- util/blitter: fix line wrapping on error to avoid giving wrong line number

- glthread: add newline to env override

- zink: emit demote cap when using demote

- zink: only print copy box warning once per resource

- zink: hook up debug callback

- zink: use a perf_debug() macro for debug message logging of copy box warning

- util/debug: move null checks out of debug message macro

- zink: manually re-set framebuffer after msrtss replicate blit

- zink: handle ‘blitting’ flag better in msrtss replication

- zink: skip msrtss replicate if the attachment will be full-cleared

- zink: avoid recursion during msrtss blits from flushing clears

- zink: don’t bitcast bool deref loads/stores

- zink: zink_shader_free -> zink_gfx_shader_free

- zink: split out generic shader destruction for reuse

- zink: always wait on precompile fence at start of zink_gfx_shader_free()

- zink: call zink_shader_free for compute shaders

- zink: add a util function for printing shaders

- zink: don’t create separate shader dsls if there are no bindings

- drisw: don’t leak the winsys

- zink: check for extendedDynamicState3DepthClipNegativeOneToOne for ds3 support

- mesa/st: try to block multisampled texsubimage from doing cpu writes

- mesa: fix ms fallback texture creation

- draw: fix viewmask iterating

- zink: use tes to generate tcs

- zink: hook up EXT_shader_object

- zink: wrap zink_shader_compile_separate() return

- zink: wrap return of compile_module()

- zink: make zink_shader_spirv_compile static

- zink: more zink_shader_object conversion

- zink: use zink_shader_object for precompiled separate shaders

- zink: minor whitespace cleanup

- zink: move separate shader dsl creation to compiler function

- zink: add a ‘separate’ flag to shader module compile to indicate separate shaders

- zink: run bo lowering passes for separate shader compile with uniform inlining

- zink: remove redundant compute program batch ref

- zink: use EXT_shader_object to (re)implement separate shaders

- zink: add validation exceptions for shader object extension enable

- zink: don’t pin flush queue threads if no threads exist

- zink: add z32s8 as mandatory GL3.0 profile attachment format

- zink: add a driver workaround to disable background compiles

- nir/gs: fix array type copying for passthrough gs

- zink: fix array copying in pv lowering

- gallivm: break out native vector width calc for reuse

- llvmpipe: do late init for llvm builder

- zink: print the type of shader when dumping

- zink: use intermediate variable for separate shader descriptor update loop

- zink: use intermediate variable for separate shader db resize check

- zink: simplify separate shader prog init a little

- zink: streamline separate shader descriptor update

- zink: switch to a regular loop to wait on precompile shader fences

- zink: move some shader CSO functions around

- zink: assign separate shader prog stages from ctx->shader_stages

- zink: use a more standardized loop for initing separate shader program descriptors

- zink: move separate shader creation to shader CSO creation

- zink: handle all stages in fixup_io_locations()

- zink: fix longstanding TODO for generated tcs

- zink: use EXT_shader_object to implement generic separate shader precompile

- bump VVL to 1.3.248

- zink: prune some validation errors from ci

- zink: break out VkImageViewUsageCreateInfo applying for reuse

- zink: reapply VkImageViewUsageCreateInfo when rebinding a surface

- zink: add a workaround for a nir_assign_io_var_locations bug

- zink: don’t run update_so_info if shader has no outputs

- zink: add ZINK_DEBUG=noshobj to disable EXT_shader_object

- zink: rename ‘separate’ param in shader compilation to ‘can_shobj’

- zink: explicitly block sample shading in the GPL precompile path

- zink: add zink_program::uses_shobj for managing shader object binds

- zink: use local screen var in zink_gfx_program_update_optimal()

- zink: deduplicate separable program replacement handling

- zink: delete redundant conditional

- zink: use zink_shader_object for zink_shader_module

- zink: use zink_destroy_shader_module() for compute to deduplicate code

- zink: store spirv onto zink_shader_object structs

- zink: allow zink_shader_module to be either a shobj or a mod using a bool

- zink: avoid accessing zink_gfx_program::modules during pipeline compile

- zink: add a union to zink_gfx_pipeline_cache_entry for gpl

- zink: use zink_shader_object for pipeline compiles from zink_gfx_program

- zink: make zink_shader_spirv_compile public

- zink: enable EXT_shader_object for generic precompiles

- draw: fix robust ubo size calc

- ci: disable all a306/a530/a630 jobs

- llvmpipe: fix native vector width init

- zink: update amdpro fails

- zink: add extendedDynamicState3DepthClipNegativeOneToOne to profile

- zink: only unset a generated tcs if the bound tcs is the generated one

- Revert “zink: don’t create separate shader dsls if there are no bindings”

- zink: disable a630 traces

- zink: set depth dynamic state values unconditionally

- zink: null some descriptor buffer pointers during destruction

- zink: sync queries at the end of cmdbufs

- cso: unbind fb state when unbinding the context

- i915: use util_copy_framebuffer_state to set fb state

- i915: use util_unreference_framebuffer_state to unref fb state

- iris: use util_unreference_framebuffer_state to unref fb state

- softpipe: use util_unreference_framebuffer_state to unref fb state

- v3d: use util_unreference_framebuffer_state to unref fb state

- vc4: use util_unreference_framebuffer_state to unref fb state

- llvmpipe: use util_unreference_framebuffer_state to unref fb state

- svga: use util_unreference_framebuffer_state to unref fb state

- zink: move EXT_shader_object check to another place

- zink: break out optimal key handling into separate function

- zink: disable EXT_shader_object if !optimal_keys

- zink: add ZINK_DEBUG=optimal_keys

- gallium: pipe_rasterizer_state::point_tri_clip -> point_line_tri_clip

- aux/draw: guard_band_points_xy -> guard_band_points_lines_xy

- aux/draw: add guardband clipping for lines

- zink: don’t init mutable resource bit for swapchain images

- zink: don’t init mutable for swapchain src during blit

- tgsi_to_nir: handle PIPE_CAP_NIR_COMPACT_ARRAYS for clipdistance

- zink: allow vk 1.2 timelineSemaphore feature if extension isn’t supported

- zink: stringify unsupported prim restart log error

- zink: delete persistent map tracking

- zink: add PERSISTENT for db buffer maps

- zink: delete unnecessary pipeline stage flags from inference

- zink: use an intermediate variable for binding ssbo slots

- zink: unbind the ssbo slot being iterated, not the index of the buffer

- zink: flush INDIRECT_BUFFER mem barrier for compute

- zink: disable batched unordered barries with ZINK_DEBUG=noreorder

- zink: block batching of unordered barriers if previous usage was write

- zink: fix uncached memory readback

- glsl/lower_samplers_as_deref: apply bindings for unused samplers

- vulkan/runtime: add VK_DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT

- zink: add ZINK_DEBUG=noopt

- zink: add ZINK_DEBUG=nobgc

- zink: make mesa_logw separate from perf_debug

- zink: add perf_debug for “interesting” shader compiles

- zink: set debug callback on context

- zink: bind bindless db set when updating separate shader db sets

- zink: compare desc set to detect bindless vars in separate shaders

- zink: adjust bindless texel buffer handle before indexing

- zink: block more flushes during unordered blits

- zink: also cache swapchain semaphores

- zink: disable always zs feedback loop on radv

- zink: add back some anv qbo flakes

- zink: disable have_EXT_vertex_input_dynamic_state without EDS2

- zink: disable dynamic state exts if the previous ones aren’t present

- zink: add some ci flakes

- zink: don’t leak swapchain readback semaphores

- zink: destroy current batch state after all other batch states

- zink: reorder some native blit code

- zink: reject blits where src/dst is 3D and dst/src z!=0

- zink: reorder some image copy code

- zink: ignore no-op image copies

- zink: only add feedback loop usage bit if extension is supported

- lavapipe: EXT_attachment_feedback_loop_layout_dynamic_state

- zink: slightly simplify bda allocation chaining

- zink: hook up some memory extensions

- zink: set higher prio on dedicated memory allocations

- zink: flag batch usage on swapchain images

- vulkan/wsi: add feedback loop usage to swapchain caps if supported

- zink: add feedback loop usage for swapchains

- vtn: add spirv index to type mismatch error for debugging

- vtn: print spirv id for type mismatch error

- vtn: print spirv ids for type mismatch in bcsel

- vtn: add more info to bitcast bit size error message

- zink: try update fb resource refs when starting new renderpass

- zink: add special-casing for (not) reordering certain image barriers

- zink: use batch usage function for a simple case

- zink: move zink_batch_state::submit_count to zink_batch_usage

- zink: move batch usage to substruct on zink_bo objects

- zink: track/check submit info on resource batch usage

- zink: disable unordered blits when swapchain images need aqcuire

- zink: explicitly disable reordering after restricted swapchain readback blits

- zink: explicitly disable promotion on images that are both unflushed and non-reorderable

- zink: flag ‘has_work’ on batch when promoting a cmd

- lavapipe: more correctly handle null pipeline states

- anv: more correctly handle null pipeline states

- vk/graphics_state: handle null pipeline state structs in creation

- zink: promote flushed clears to unordered cmdbuf when possible

- zink: also declare int size caps inline with signed int type usage

- zink: delete unnecessary bitcast in load_shared/scratch

- zink: use void return for store_dest

- zink: move get_alu_type() up in file

- zink: manually memcpy the spirv instruction buffer

- zink: write out register variables to a separate spirv buffer

- zink: dynamically emit non-bool register values using local_vars spirv buffer

- zink: store and use alu types for ntv defs

- zink: infer types from load_const instrs to avoid more bitcasts

- lavapipe: bump memory allocation heap to 3GiB

- lavapipe: report full memory in heap for 64bit processes

- lavapipe: EXT_memory_budget

- lavapipe: EXT_memory_priority

- lavapipe: store memory allocation size onto lvp_device_memory

- lavapipe: VK_EXT_pageable_device_local_memory

- zink: don’t wait on queue thread if disabled

- zink: use the per-context track_renderpasses flag in more places

- zink: don’t remove psiz from linked shaders if the consumer reads it

- zink: don’t propagate psiz in quads emulation gs

- lavapipe: VK_EXT_dynamic_rendering_unused_attachments

- zink: require EXT_dynamic_rendering_unused_attachments for dynamic rendering

- zink: explicitly avoid ci errors due to unrecognized extensions in VVL

- vulkan: reorder vk_cmd_queue_entry

- vulkan/cmd_queue: allocate cmds based on the size of the cmd

- vulkan/cmd_queue: expose cmd sizes

- vulkan: use cmd size array for queued cmd allocations

- ci: uprev VVL to 1.3.251

- lavapipe: fix DS3 min sample setting

- lavapipe: bump max push constant size

- lavapipe: stop setting patch vertices constantly

- lavapipe: don’t pass indirect info in streamout draws

- draw: add (disabled) vertex dumping for non-linear emit

- lavapipe: fix memory budget reporting

- zink: also disable bg compile for compute with nobgc

- zink: hook up VK_EXT_attachment_feedback_loop_dynamic_state

- zink: use dynamic state for feedback loops when available

- zink: enable EXT_shader_object globally with have_EXT_attachment_feedback_loop_dynamic_state

- zink: add a ci flake

- lavapipe: pass list to cmdbuf exec, not cmdbuf

- lavapipe: add a mapping for BDA

- lavapipe: add a zeroed buffer that can be bound in place of an index buffer

- lavapipe: handle index buffers with offsets for indirect draws

- lavapipe: NV_device_generated_commands

- zink: combine some rast state draw conditionals

- zink: don’t check prog->shaders when creating gfx pipeline

- zink: check for cached mem correctly when mapping buffer

- zink: remove assert for dt in zink_kopper_update

- zink: stop swizzling conditional render during batch flush

- zink: update some radv qbo fails

- radv: tweak gfx pipeline stage binding

- zink: only try to create srgb mutable images if the vk format is supported

- vk: make vk_format_map[] public

- radv: directly use vk_format_map for vertex input

- lavapipe: use PACKAGE_VERSION for cache uuid in release builds

- zink: massively shrink qbo size for timestamp queries

- zink: assert that ntv image creation isn’t clobbering existing images

- zink: add some ntv asserts for ms txf

- zink: add a dgc debug mode for testing

- lavapipe: add version uuid to shader binary validation

- egl/dri2: trigger drawable invalidation from surface queries for zink

- zink: add some ci flakes

- zink: break out vk flag unrolling into util function

- zink: add mem debugging

- zink: remove redundant conditional in set_sampler_views

- zink: wrap format mismatch checks for blit/surface

- zink: add srgb mutable for all resources by default

- zink: drop dt checks for mutable format init

- zink: strip format list when disabling mutable during image creation

- dri3: only invalidate drawables on geometry change if geometry has changed

- zink: more anv ci flakes

- aux/trace: add methods for mesh shaders

- lavapipe: more fixes for sample shading

- lavapipe: fix shader binary binding with mesh shaders

- lavapipe: correctly update shader object per-stage push constant sizes

- zink: add COHERENT requirement for CACHED memory

- zink: ZINK_HEAP_HOST_VISIBLE_CACHED -> ZINK_HEAP_HOST_VISIBLE_COHERENT_CACHED

- zink: fix anv ci flake wildcarding

- aux/pipebuffer: add a return to pb_slabs_reclaim()

- aux/pipebuffer: add a return to pb_cache_release_all_buffers()

- zink: only retry bo allocation after reclaim if reclaims actually happened

- zink: fix ubo array sizing in ntv

- zink: acquire persistently bound swapchain descriptors before setting usage

- zink: recache present semaphores

- zink: always clamp NUM_QUERIES to 500

- zink: radv vangogh ci updates

- radv: remove redundant intermediate variable in radv_is_mrt0_dual_src()

- radv: inline radv_can_enable_dual_src()

- zink: no-op redundant samplemask changes

- zink: force inlining for a bunch of functions

- zink: make invalidate_descriptor_state a ctx hook

- zink: specialize invalidate_descriptor_state hook for compact mode

- zink: clean up rp update tracking on dsa bind

- zink: use local screen var in blend state bind

- zink: track and apply ds3 states only on change

- zink: don’t update tc info directly from cso binds

- zink: check sampler views pointer before loop

- zink: add fastpaths for no-op sampler/view rebinds

- nir/lower_tex: ignore saturate for txf ops

- radv: pre-init surface info

- ci: add a test-dozen-deqp flake

- lavapipe: handle multiview queries

- zink: fix assert for inline uniform invalidation with generated gs bound

- zink: fix unbinding generated gs on real gs bind

- zink: get new bda when rebinding invalidated buffers

- lavapipe: create a desc set for immutable sampler layouts

- lavapipe: split out descriptor stage setting

- lavapipe: EXT_descriptor_buffer

- lavapipe: VK_EXT_mutable_descriptor_type

- llvmpipe: flush/reference fs ubos on bind

- zink: do initial program unref during program creation

- zink: fix separate shader program refcounting

- docs: update lavapipe extensions

- zink: don’t destroy swapchain on initial CreateSwapchainKHR fail

- aux/trace: fix bindless texture dumping

- vk/wsi/x11: move surface alpha check from get_caps to creation

- vk/wsi/x11: handle geometry updating more asynchronously

- vk/wsi/x11: stop roundtripping on presentation

- vk/wsi: unify dmabuf exporting

- vk/wsi: add error logging for syncfile import/export failures

- zink: fix anv ci flakes (for real this time)

- zink: fix batch disambiguation on first submit

- zink: set pipeline dynamic state count after all dynamic states are set

- zink: be even dumber about buffer refs when replacing storage

- zink: emit SpvCapabilitySampleMaskPostDepthCoverage with SpvExecutionModePostDepthCoverage

- zink: fix the fix for separate shader program refcounting

- kopper: handle pixmap creation failure more gracefully

- glxsw: check geometry of drawables on creation

- zink: don’t clobber descriptor mode on multiple screen creation

- nir: fix slot calculations for compact variables with location_frac

- lavapipe: use the component offset directly for xfb

- glsl: only explicitly check GS components in PSIZ injection with output variables

- lavapipe: don’t check geometry for fb attachments

- zink: better handle separate shader dsl creation when no bindings exist

- zink: force image barriers after dmabuf import

- zink: use VK_WHOLE_SIZE when binding null db buffer descriptors

- zink: unset line stipple ds3 state flags when stipple not available

- nir/lower_io_to_scalar: fix 64bit io splitting

- nir/linking_helpers: force type matching in does_varying_match

- zink: add batch refs for transient images

- zink: fix zs resolve attachment indexing

- zink: don’t add VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT for transient images

- zink: don’t append msrtss to dynamic render if not supported

- zink: set msrtss depth resolve mode when enabled

- zink: add more locking for pipeline cache

- aux/trace: fix winsys handle dumping

- zink: generated tcs is on the tes, not the vs

- llvmpipe: block weird uses of subsampled formats in buffers

- llvmpipe: fix early depth + alpha2coverage + occlusion query interaction

- lavapipe: fix resolves where src image has a layer offset

- lavapipe: block yuv formats from getting blit feature flags

- zink: explicitly set non-optimal last_vertex_stage shader key on ctx create

- zink: fix big tcs output io

- zink: fix crash in lower_pv_mode_gs_store

- u/draw: skip zero-sized indirect draws

- nir/zink: fix gs emulation xfb_info sizing

- vk/graphics: fix CWE handling with DS3

- Revert “vk/wsi/x11: handle geometry updating more asynchronously”

- zink: wait on async fence during ctx program removal

- zink: don’t start multiple cache jobs for the same program

- zink: disable validation

- zink: be more precise about flagging rp changes around unordered u_blitter

- zink: fix linear modifier dmabuf imports

- aux/tc: handle stride mismatch during rp-optimized subdata

- zink: always add a per-prog ref for gpl libs

- zink: set is_xfb=false for all i/o variables

- nir/inline_uniforms: fix oob access with nir_find_inlinable_uniforms

- aux/tc: fix staging buffer sizing for texture_subdata

- aux/tc: fix address calc for segmented texture subdata

- glsl: check for xfb setting xfb info

- aux/tc: fix renderpass tracking fb state clobber scenario

- aux/tc: fix rp info handling around tc_sync calls

- aux/tc: don’t use pipe_buffer_create_with_data() for rp-optimized subdata

- zink: flag db maps as unsynchronized

- lavapipe: clamp cache uuid size

- tu: handle unused color attachments without crashing

- zink: propagate rp_tc_info_updated across unordered blits

- zink: move swapchain fence to swapchain object

- zink: avoid UAF on wayland async present with to-be-retired swapchain

- zink: always trace_screen_unwrap in acquire

MouriNaruto (1):

- dzn: Fix segmentation fault when Direct3D 12 user mode driver from at least one of GPUs is not available.

MrRobbin (1):

- zink: Move the workaround before the EDS setting.

Mykhailo Skorokhodov (4):

- mesa: Implement GL_CLEAR_TEXTURE flag

- mesa: Fallthrough GL_SRB_DECODE_ARB pname

- iris: Fix memory size with disabled resizable bar

- nir: Rematerialize derefs after opt_dead_cf

Mykola Piatykop (1):

- mesa: Fix use after free.

Nanley Chery (28):

- iris: Allocate ZEROED BOs for shared resources

- iris/bufmgr: Add and use zero_bo

- iris/bufmgr: Handle flat_ccs for BO_ALLOC_ZEROED

- intel/isl: Bump the MCS halign value for BDW+

- iris: Add a barrier to iris_mcs_partial_resolve

- intel: Implement ISL_AUX_OP_AMBIGUATE for MCS

- iris: Enable MCS init with ISL_AUX_OP_AMBIGUATE

- anv: Drop the MCS initialization performance warning

- anv: Enable MCS init with ISL_AUX_OP_AMBIGUATE

- intel/blorp: Assert an 8bpp fast clear restriction

- iris: Init CCS_E to COMPRESSED_NO_CLEAR for XeHP

- intel/blorp: Use the depth copy format more on BDW+

- intel/blorp: Add depth usage check for copy format

- intel/blorp: Change condition for CCS_E copy formats

- intel/blorp: Add and use blorp_copy_get_formats

- iris: Use known formats for tex_cache_flush_hack

- iris: Drop a GFX12_CCS_E check in can_fast_clear_color

- intel: Rename the GFX12_CCS_E aux-usage to FCV_CCS_E

- iris: Avoid extra CCS_E flushes for aux mode changes

- iris: Avoid FCV_CCS_E for shader image accesses

- iris: Assert against FCV_CCS_E for blitter writes

- intel/blorp: Avoid 32bpc fast clear sampling issue

- Revert “iris: Add missed tile flush flag”

- iris: Drop the RT flush for PIPE_BARRIER_TEXTURE

- iris: Drop GPGPU Tex Invalidate restriction for TGL+

- isl: Add and use size and alignment calculators

- anv: Don’t support ASTC images with modifiers

- intel/blorp: Ambiguate after CCS resolves on gfx7-8

Oskar Rundgren (20):

- pvr: Allow block compressed source blit

- pvr: Transfer PBE source snorm format should be signed

- pvr: Transfer PBE gamma is unset

- pvr: Transfer fix blit with multiple emits

- pvr: Transfer multiple emits clip rectangle

- pvr: Add back S8_UINT support

- pvr: Add PBE packmode for depth stencil formats

- pvr: Transfer add depth merge support for X8_D24

- pvr: Transfer add s8_uint support

- pvr: PBE fix mesa pipe swizzle conversion

- pvr: Transfer ignore non zero stride for twiddled surface

- pvr: Transfer block compressed with 3d twiddled layout

- pvr: Transfer support flipped rectangle mapping

- pvr: Transfer remove byte unwind workaround

- pvr: fix texel unwind workaround mappings

- pvr: Transfer check valid source address mask

- pvr: Transfer optimisation remove unused features from API

- pvr: Transfer image to buffer dest rect

- pvr: Fix transfer image clearing PBE packmodes

- pvr: add block compressed formats blit support

Patrick Lerda (22):

- r600: fix refcnt imbalance related to r600_set_vertex_buffers()

- r600: fix refcnt imbalance related to evergreen_set_shader_images()

- lima: fix refcnt imbalance related to framebuffer

- r600/sfn: fix memory leak related to sh_info->arrays

- aux/draw: fix memory leak related to ureg_get_tokens()

- crocus: fix refcnt imbalance related to framebuffer

- crocus: fix refcnt imbalance related to crocus_create_surface()

- r600: fix refcnt imbalance related to atomic_buffer_state

- radeonsi: set proper drm_amdgpu_cs_chunk_fence alignment

- crocus: fix scratch_bos memory leak

- mesa: fix refcnt imbalance related to egl_image_target_texture()

- glthread: fix typo related to upload_vertices()

- mesa: fix refcnt imbalance related to _mesa_delete_semaphore_object()

- mesa/st: fix refcnt imbalance related to st_feedback_draw_vbo()

- mesa/st: fix buffer overflow related to set_program_string()

- r600: fix r600_draw_vbo() buffer overflow

- nouveau: fix nouveau_heap_destroy() memory leak

- r600: fix cayman_convert_border_color() swizzle behavior

- util/blitter: fix util_blitter_clear_buffer() refcnt imbalance

- util/blitter: revert util_blitter_clear_buffer()

- radeonsi: fix refcnt imbalance related to util_blitter_save_fragment_constant_buffer_slot()

- panfrost: fix refcnt imbalance related to blitter

Paul Gofman (2):

- driconf: add a workaround for Captain Lycop: Invasion of the Heters

- driconf: add a workaround for Rainbow Six Extraction

Paulo Zanoni (9):

- iris: Store prime fd of external bos for Xe KMD

- iris: Add functions to import and export implicit sync state

- iris: Extend iris_bo_wait_syncobj() to wait on external implicit syncobj

- iris: Add iris_implicit_sync struct and functions to do implicit synchronization for Xe kmd

- iris: also avoid isl_memcpy_linear_to_tiled for Tile64

- intel/isl: tile 64 calculations work with 1D surfaces

- iris: assert bufmgr->bo_deps_lock is held

- iris: avoid stack overflow in iris_bo_wait_syncobj()

- iris: assert(bo->deps) after realloc()

Pavel Ondračka (33):

- r300: fix unconditional KIL on R300/R400

- r300: add CI list of known rv370 dEQP failures

- r300: remove simple duplicate ARL instructions

- r300: fuse ROUND and ARL to ARR

- r300: remove nir round lowering

- r300: enable PIPE_CAP_TGSI_TEXCOORD

- r300: fail linking instead of using dummy shaders

- CODEOWNERS: add r300 driver

- r300: move nir stuff to r300_nir file

- r300: move the ARL merging pass up in the opt loop

- r300: move the ROUND+ARL->ARR fusing to main optimization loop

- r300: optimize the load A0 pattern from wined3d

- r300: remove duplicate ARRs

- r300: be more agressive when merging A0 loads

- r300: remove unused SIN/COS lowering

- r300: remove unused SSG lowering

- r300: move CEIL lowering to NIR

- r300: remove unused FLR lowering

- r300: remove unused POW lowering

- r300: remove unused DST lowering

- r300: remove unused ROUND lowering

- r300: remove unused LIT lowering

- r300: remove unused opcodes from r300_tgsi_to_rc

- nir_opt_algebraic: don’t use i32csel without native integer support

- r300: add partial CMP support on R5xx

- r300: properly count maximum used register index

- r300: lower undefs to zero

- r300: add some early safe bool lowering

- r300: remove most of backend contant folding

- r300: disable ntt regalloc for vertex shaders

- r300: assert that every writer has a reader

- r300: update RV370 failures

- r300: don’t abort on flow control when using draw for vs

Philipp Zabel (1):

- etnaviv: fix segfault after compile failure

Pierre-Eric Pelloux-Prayer (13):

- amd: update amdgpu_drm.h

- amd: determine info->has_fw_based_shadowing

- radeonsi: implement fw based mcbp

- amd: update amdgpu_drm.h

- radeonsi: stop reporting reset to app once gpu recovery is done

- winsys/amdgpu: add a helper function to submit a no-op job

- winsys/amdgpu: use the no-op helper to detect if reset completion

- mesa: don’t share reset status across contexts

- mesa: remove unused bools

- llvmpipe: only include old Transform includes when needed

- Revert “gallium/u_threaded: buffer sharedness tracking”

- st/mesa: check renderbuffer before using it

- radeonsi: emit framebuffer state after allocating cmask

Qiang Yu (119):

- nir: add nir_load_barycentric_optimize_amd intrinsic

- radeonsi: implement nir_load_barycentric_optimize_amd

- ac/nir/ps: lower barycentric load when bc_optimize

- ac/nir/ps: add force lower barycentric load options

- ac/nir/ps: lower sample mask input when needed

- ac/llvm,radeonsi: lower ps color load in nir

- radeonsi: add si_nir_lower_ps_color_input

- radeonsi: add si_nir_emit_polygon_stipple

- radeonsi: handle lowered ps in scan_io_usage

- radeonsi: monolithic ps emit prolog in nir directly

- radeonsi: restructure mono merged shader build

- radeonsi: remove separate_prolog parameter

- radeonsi: add si_mark_divergent_texture_non_uniform

- ac/llvm,radeonsi: use texture non-uniform flag as waterfall switch

- nir,ac/llvm,radeonsi: replace nir_load_smem_buffer_amd with nir_load_ubo

- ac/llvm,radeonsi: lower nir_load_point_coord_maybe_flipped in nir

- ac,radv: move ps arg compation to common place

- aco: support 32bit address in nir_load_smem_amd

- nir: add missing image atomic_inc/dec_wrap intrinsic

- aco: implement nir_bindless_image_atomic_inc/dec_wrap

- aco: skip scratch buffer init when its arg is not used

- aco: fix nir_f2u64 translation

- nir: add nir_export_dual_src_blend_amd intrinsic

- aco: move create_fs_dual_src_export_gfx11 above

- aco: implement nir_export_dual_src_blend_amd

- ac/nir/ps: use nir_export_dual_src_blend_amd when aco

- ac/nir/ps: add no_color_export option

- aco: support nir_export_amd with ps targets

- aco,radv: lower outputs to exports when nir for monolithic ps

- ac/llvm: remove output variable declaration for radv ps

- radv: implement nir_load_barycentric_optimize_amd

- ac/nir/ps: remove used nir_variable if created

- aco,ac/llvm,radv,radeonsi: handle ps bc optimization in nir for radv

- aco,radv: remove unused aco compile options

- aco,radv: support symbol relocation in aco

- aco: get scratch addr from symbol for radeonsi

- aco: allow no export instruction for gfx10+ fs

- ac/nir/cull: fix line position w culling

- meson: build radeonsi with aco

- radeonsi: add aco debug option

- radeonsi: add use_aco field for struct si_shader

- radeonsi: add shader info for frag coord and sample pos read

- radeonsi: add shader info uses_sampleid

- radeonsi: pack spi ps input fixup to a function

- radeonsi: init spi ps input shader config when aco

- radeonsi: add a raw shader binary type

- ac/binary: pack prefech align code to a function

- radeonsi: support raw shader binary upload

- radeonsi: support print raw shader binary

- radeonsi: remove ps vgpr index save when args init

- tgsi_to_nir: call nir_lower_int64 when required

- ac/llvm,radeonsi: lower idiv in nir

- ac/llvm,radeonsi: lower fsin/fcos in nir

- ac/llvm,radeonsi: lower txf offset in nir

- ac/llvm,radeonsi: lower ineg in nir

- ac/llvm,radeonsi: lower some pack/unpack ops not supported by aco

- ac/llvm,radeonsi: lower nir_fpow for aco and llvm

- radeonsi: lower some 64bit ops aco does not support

- radeonsi: lower vector const to scalar at last for aco

- radeonsi: add has_non_uniform_tex_access shader info

- radeonsi: lower non uniform texture access when aco

- radeonsi: add initial aco compile code

- radeonsi: add symbols to si_shader_binary

- radeonsi: resolve aco scratch addr symbols

- radeonsi: adjust ps args for aco

- radeonsi: pass use_aco to ac_nir_lower_ps

- radeonsi: clamp shadow texture reference in nir for aco

- ac/llvm,radeonsi: enable lower_array_layer_round_even

- radeonsi: fixup sampler desc for tg4 in nir

- radeonsi: be able to use aco compiler for mono ps

- ac/llvm: remove the double frcp special handling

- radeonsi: fix aco compile for atomic ops

- ac/llvm: remove redundant nir_lower_legacy_atomics

- radeonsi: fix uses_instanceid for merged mono shader stage

- aco: implement two load lds ngg intrininsic for radeonsi

- aco,radv: remove unused aco_shader_info fields

- ac/nir/ngg: don’t use 8bit alu ops

- aco: implement load buffer with ACCESS_USES_FORMAT_AMD

- aco/assembler: handle ds_(add|sub)_gs_reg_rtn encoding

- aco: use gds reg when ordered xfb counter add

- aco: implement nir_xfb_counter_sub_amd

- aco: implement nir_bindless_image_fragment_mask_load_amd

- aco: use ac_get_image_dim for array check when image intrinsic

- radeonsi: resolve lds ngg aco symbols

- radeonsi: add scratch offset vs args explicitly for aco

- ac/llvm,radeonsi: lower nir_load_gs_vertex_offset_amd in abi

- ac/llvm,radeonsi: lower nir_load_merged_wave_info_amd in abi

- ac/llvm,radeonsi: lower load_workgroup_num_input_(vertices|primitives) in abi

- ac/llvm,radeonsi: lower nir_load_initial_edgeflags_amd in abi

- ac/llvm,radeonsi: lower nir_load_packed_passthrough_primitive_amd in abi

- ac/llvm,radeonsi: lower nir_load_ordered_id_amd in abi

- ac/llvm,radeonsi: lower nir_load_ring_esgs_amd in abi

- nir,ac/llvm,radeonsi: replace nir_buffer_atomic_add_amd with ssbo atomic

- radeonsi: fill aco shader info for mono standalone vs

- radeonsi: calculate needed lds size when upload raw binary for vs

- radeonsi: use nir_umul_high for fast udiv

- radeonsi: always use scoped barrier

- ac/llvm: remove unused barrier implementation

- radeonsi: enable aco for mono standalone vs

- aco,radv: remove unused gs aco shader info

- ac/nir,radv: add 1 dword to LS/HS vertex stride

- ac/nir,radv: add 1 dword to ES/GS item size

- radeonsi: add scratch_offset arg for aco tcs

- radeonsi: lower nir_load_tess_rel_patch_id_amd in abi for aco

- ac/llvm,radeonsi: lower nir_load_ring_tess_offchip_amd in abi

- radeonsi: enable aco support for mono standalone tcs

- radeonsi: add scratch_offset arg for aco tes

- radeonsi: init tes aco shader info fields

- radeonsi: update lds size for tes

- radeonsi: enable aco support for standalone tes

- radeonsi: add scratch_offset arg for aco gs

- ac/llvm,radeonsi: lower nir_load_ring_gsvs_amd in abi

- radeonsi: enable aco for standalone gs

- radeonsi: enable aco support for gs copy shader

- radeonsi: add scratch_offset arg for aco cs

- ac/llvm,radeonsi: lower nir_load_user_data_amd in abi

- radeonsi: fix crash when AMD_DEBUG=cs,initnir

- radeonsi: enable aco support for compute shader

- ac/nir/ngg: fix ngg_gs_clear_primflags crash

QwertyChouskie (1):

- docs/features.txt(fix): mark VK_EXT_pipeline_robustness as supported on radv

Rajnesh Kanwal (9):

- pvr: Add support to process transfer and blit cmds

- pvr: Implement vkCmdCopyBufferToImage API.

- pvr: Implement vkCmdCopyImage2KHR API.

- pvr: Implement vkCmdBlitImage API.

- pvr: Implement vkCmdClearColorImage API.

- pvr: Implement vkCmdCopyImageToBuffer2 API.

- pvr: Implement vkCmdFillBuffer API.

- pvr: Implement vkCmdResolveImage2KHR API.

- pvr: Implement vkCmdClearDepthStencilImage API.

Rhys Perry (92):

- nir: add is_gather_implicit_lod

- vtn: set is_gather_implicit_lod

- aco: support implicit LOD for nir_texop_tg4

- ac/llvm: support implicit LOD for nir_texop_tg4

- aco: remove SMEM_instruction::prevent_overflow

- aco: use apply_nuw_to_ssa() with load_smem_amd

- ac/nir/ps: fix null export write mask miss set to 0xf

- aco: don’t move exec reads around exec writes

- aco: don’t move exec writes around exec writes

- radv: fix bc optimization with POS_W_FLOAT_ENA(1)

- aco/ra: create M0-affinities for s_sendmsg

- aco/gfx11: fix VMEM/DS->VALU WaW/RaW hazard

- amd/drm-shim: move device list to external file

- amd/drm-shim: add polaris10

- amd/drm-shim: add vega10

- amd/drm-shim: add navi10

- aco: add get_op_fixed_to_def() helper

- aco: consider how definitions fixed to operands can change register demand

- nir/fold_16bit_tex_image: skip tex instructions with backend1

- nir,vtn,aco,ac/llvm: make cube_face_coord_amd more direct

- ac/nir: add pass for lowering 1d/cube coordinates

- ac/nir: round layer in ac_nir_lower_tex

- radv,radeonsi: use ac_nir_lower_tex

- nir/lower_tex: remove lower_array_layer_round_even

- ac/nir: add fix_derivs_in_divergent_cf

- aco: remove unused RegType

- aco: let p_start_linear_vgpr take an operand

- aco: add MIMG_instruction::strict_wqm

- aco: implement strict_wqm_coord_amd

- aco: implement texture samples with strict WQM coordinates

- radv: use fix_derivs_in_divergent_cf

- aco/tests: improve performance of declaration parsing

- aco/tests: add fix_derivs_in_divergent_cf tests

- aco: fix update_alu(clear=true) for exports

- aco: use pass_flags to recover s_delay_alu cycles

- aco: insert s_delay_alu on the linear CFG

- aco: improve printing of s_delay_alu

- radv: allow wave32 for geometry shaders

- aco: fix has_color_exports=true for mrtz exports

- aco/tests: add discard export target tests

- aco: fix ds_sub_gs_reg_rtn validation

- radv: initialize aco_compiler_options::is_opengl

- radv: correctly skip vertex loads with packed formats

- aco: consider position/primitive exports around memory barriers

- ac/nir: use scoped barriers to finish stores before exports

- aco: remove memory_barrier_buffer implementation

- aco: mask bits source of s_bfe

- aco/tests: test that s_bfe bits is masked

- util: fix gc_alloc_size alignment

- util/tests: add gc_alloc_size alignment tests

- aco: run nir_lower_int64 after nir_opt_uniform_atomics

- ac: fix PIPE_FORMAT_R11G11B10_FLOAT DST_SEL_W

- radv: refactor CS subgroup size determination

- radv: use wave32 for small workgroups

- aco: don’t try to form load+store clauses

- aco/gfx11: use s_clause with stores

- aco/gfx11: schedule for VMEM store clauses

- aco: don’t set exec_hi for wave32 scan reductions

- amd/drm-shim: use fixed-width types

- nir/peephole_select: allow some invocation broadcast intrinsics

- aco: include helpers in emit_uniform_{reduce,scan}

- nir,aco: add INCLUDE_HELPERS index to reduce intrinsic

- nir/opt_intrinsic: optimize quad vote

- radv: use nir_opt_intrinsics

- aco,ac/llvm,ac/nir,vtn: unify cube opcodes

- nir: split nir_lower_mov64

- radv: use nir_lower_conv64

- radv: call nir_lower_int64 later

- radeonsi: use nir_lower_conv64

- aco: remove 64-bit integer conversion opcodes

- ac/llvm: fix AC_TM_CHECK_IR

- radv: fix radv_get_ballot_bit_size with CS

- ac/llvm: fix wave32 ac_build_mbcnt_add with 64-bit mask

- ac/llvm: skip ballot zext for 32-bit dest with wave32-as-wave64

- radv: add conformant_trunc_coord to cache UUID

- ac/nir: always round cube array layers

- nir/unsigned_upper_bound: fix phi(bcsel)

- nir/opt_dead_cf: remove nodes after a jump earlier

- aco: insert s_nop before VGPR deallocation

- radv: workaround WWZ exporting index=1 through location=1

- radv: correctly skip MRT output NaN fixup for meta shaders

- aco: summarize register demand after handling branches

- aco: don’t create sendmsg(dealloc_vgprs) if scratch is used

- radv: disable 64-bit color attachments

- aco: fix p_bpermute_gfx6 with input at non-zero byte

- radv: fix 128bpp comp-to-single clears

- aco/spill: skip p_branch in process_block

- aco/spill: add all live-in to merge block spill candidates

- aco/optimizer_postRA: check overwritten_subdword in is_overwritten_since()

- aco: check logical_phi_info at p_logical_end when eliminating exec writes

- aco: remove unused p_logical_end check when optimizing branching sequence

- aco: reset prefetch in the correct block after removing the exit

Rob Clark (58):

- freedreno/a6xx: Fix valid_format_cast logic for newer a6xx

- freedreno: Remove unused fd_batch_reset()

- freedreno: Inline single-caller helpers

- freedreno: Extra casting to make C++ happy

- freedreno/registers: C++ struct casting

- util/log: Add missing “const”

- freedreno/ir3: More perfetto tracing

- mesa/nir: Add some perfetto traces

- freedreno/perfetto: Add shader_id for compute stages

- freedreno: Add dirty state logging

- freedreno/a6xx: Pass ring to __ONE_REG()

- freedreno: Add more tracepoint fields

- freedreno: Fix resource tracking vs rebind/invalidate

- freedreno/a6xx: Change a618 tile_align_h back to 32

- dri/android: Fix MSAA resolve

- Revert “ci: disable all a306/a530/a630 jobs”

- freedreno/a6xx: Rework set_bin_size()

- freedreno/a6xx+: Use template to handle a6xx vs a7xx differences

- freedreno/batch: Add helper to set fb state

- freedreno/a6xx: Move LRZ clear to blitter

- freedreno/a6xx: Add ctx->emit_sysmem()

- freedreno/a6xx: Simplify per-tile conditional IBs

- freedreno/a6xx: Switch to batch->cleared

- freedreno/a6xx: Split tile loads and clears

- freedreno/a6xx: Introduce batch subpasses

- freedreno/a6xx: Per-subpass LRZ

- freedreno/a6xx: New subpass on mid-frame clears

- freedreno/a6xx: Move LRZ clears to gmem

- freedreno/a6xx: Actually use LRZ for ms

- freedreno/a5xx+a6xx: Don’t allocate LRZ for z32

- tu: Move queue deletion to last

- mesa: Skip update_gl_clamp() if samplers need clamp

- freedreno/a6xx: Template specialization for draw type

- freedreno/a6xx: Template specialization for pipeline type

- freedreno/a6xx: Optimize max_indices calculation

- freedreno/batch: Move submit bo tracking to batch

- freedreno/drm: Don’t try to export suballoc bo

- freedreno: Handle export error handling

- freedreno: Add aux-context support

- freedreno: Reallocate on unshared export

- freedreno/a6xx: Clean up open coded flushes

- freedreno/a6xx: Stop using fd_wfi()

- freedreno/a6xx: Add missing cap

- freedreno/a6xx: Fix xfb stream configuration

- freedreno/a6xx: Remove primitives_relocw()

- freedreno/a6xx: GL_ARB_transform_feedback_overflow_query

- freedreno/a6xx: Split primitives and pipeline-stats queries

- freedreno/a6xx: Handle nested pipeline stats queries

- freedreno: Handle compute queries

- freedreno/a6xx: GL_ARB_pipeline_statistics_query

- freedreno/a6xx: Enable gl46

- freedreno: Add extra assert

- freedreno/batch: Add driver-thread assert

- freedreno/a6xx: Directly invalidate on samp view update

- freedreno/a6xx: Use idalloc for samp/view seqno’s

- freedreno/fdperf: Use common device info helpers

- freedreno/drm/virtio: Trigger host side wait boost

- tu/drm: Add missing error path cleanup

Robert Beckett (1):

- winsys/panfrost: Fix a scanout resource leak

Robert Mader (1):

- egl/wayland: wait for compositor to release shm buffers

Rohan Garg (41):

- anv: use the workaround framework for WA 14013111325

- hasvk: drop dead code

- iris: use the workaround framework for WA 14013111325

- anv: use the common vulkan runtime to do the heavy lifting

- anv: drop duplicated nir_opt_dce passes

- intel: infer scalar’ness locally for brw_postprocess_nir

- intel: drop unused is_scalar function parameter in brw_nir_apply_key

- intel: update comments about non-existent function parameter

- intel: infer scalar’ness locally for brw_vectorize_lower_mem_access

- anv: drop duplicate checks when setting the compressed bit

- iris: correctly set alignment to next power of two for struct size

- ac/surface: make sure alignment is a POT

- freedreno: set alignment to next POT

- util: fix ROUND_DOWN_TO alignment type

- util: migrate alignment functions and macros to use ALIGN_POT

- util: revert back to ALIGN since it moved to util

- util: move pot functions to use existing macros

- anv: enable single texel alignment

- isl: add helper to check if aux usage is CCS_E

- anv: set aux usage to GFX12_CCS_E if a platform needs WA 14010672564

- anv: limit non zero fast clear check to GFX12_CCS_E

- anv: fix incorrect asserts when combining CPS and per sample interpolation

- hasvk: enable single texel alignment

- anv: split ANV_PIPE_RENDER_TARGET_BUFFER_WRITES for finer grained flushing

- anv: move WA 1607854226 to use the WA infrastructure

- intel/compiler: construct masks instead of using magic values

- intel/compiler: reuse previously computed bitsize

- anv: retry batchbuffer submission with i915

- iris: migrate WA 14013910100 to use the WA framework

- iris: migrate WA 14016118574 to use the WA framework

- iris: fix iris for WA 16013000631

- intel/perf: add perf query support for Intel Raptorlake

- anv: use the correct GFX_VERx10 macro for WA

- anv,iris: program the maximum number of threads on compute queue init

- anv: partially revert 2e8b1f6d

- anv: drop dead ifdef

- iris: use the correct WA macros and lineage numbers

- anv: use the lineage number for WA

- crocus: fix GFX_VERx10 macro

- blorp: drop undefined macro

- iris: migrate preemption streamwout wa to WA infra

Roland Scheidegger (2):

- llvmpipe: minor cleanups in line rendering code

- llvmpipe: fix some corner cases with line rendering

Romain Failliot (1):

- docs(fix): remove last ref to i965 in features.txt

Ruijing Dong (19):

- radeonsi/vcn: add macros used in av1 encoding

- radeonsi/vcn: enable 2 pass search center map

- radeonsi/vcn: enable swizzle mode in encoding ref frames.

- radeonsi/vcn: merge get_output_format_param function

- radeonsi/vcn: remove extra zero bytes from bitstream

- radeonsi/vcn: add av1 dpb variables and cdf table

- gallium/pipe: add av1 encoding data structure in pipe

- radeonsi/vcn: add av1 enc data structure

- radeonsi/vcn: add some av1 encoding function

- radeonsi/vcn: add av1 encoding ib packages and get_info

- frontends/va: adding va av1 encoding functions

- radeonsi/vcn: use PIPE_ENC_FEATURE enum

- frontends/va: define va av1 encoding caps

- radeonsi/vcn: correct cropping for hevc case

- radeonsi/vcn: fix decoding bs buffer alignement issue.

- gallium/pipe: add interface update_decoder_target

- radeonsi/vcn: apply update_decoder_target logic

- frontends/va: remove private member and update target buffer

- radeonsi/vcn: change max_poc to fixed value for hevc encoder.

Ryan Houdek (1):

- util: move check for AVX512

Ryan Neph (2):

- virgl: add debug flag to force synchronous GL shader compilation

- virgl: check a debug option again at context creation

Sagar Ghuge (20):

- anv: Factor out code from anv_image_hiz_clear

- anv: Move and make anv_can_hiz_clear_ds_view non-static

- anv: Fast clear depth/stencil surface in vkCmdClearAttachments

- anv: Set CS stall bit during HIZ_CCS_WT surface fast clear

- iris: Set CS stall bit during HIZ_CCS_WT surface fast clear

- intel/genxml: Add CCS cache flush field to PIPE_CONTROL

- intel/genxml: Add Compute/Blitter CCS aux invalidation register

- anv: Add CCS cache flush bits to anv_pipe_bits

- anv: Fix AUX-TT invalidation

- anv: implement recommended flush/wait of AUX-TT invalidation on compute

- iris: Add CCS cache flush bits

- iris: Fix AUX-TT invalidation

- iris: implement recommended flush/wait of AUX-TT invalidation

- intel/ds: Track CCS cache flush bit

- iris: Use correct CCS0 aux-map register offset

- intel/genxml: Fix typo in CCS cache flush enable

- intel/genxml: Drop incorrect compute aux-inv register entry

- anv: Drop depth cache flush requirement after depth clear/resolve

- iris: Drop depth cache flush requirement after depth clear/resolve

- blorp: Drop unnecessary assertions in blorp_can_hiz_clear_depth

Samuel Holland (3):

- Android.mk: Allow building only Vulkan drivers

- Android.mk: Explicitly enable/disable LLVM support

- Android.mk: Only link LLVM for radeonsi, not amd_vk

Samuel Pitoiset (203):

- radv: fix detecting FMASK_DECOMPRESS/DCC_DECOMPRESS meta pipelines

- vulkan: ignore rasterizationSamples when the state is dynamic

- radv: try to keep HTILE compressed for READ_ONLY_OPTIMAL layout

- radv: re-emit the guardband state when related PSO are bound

- radv: tidy up dirtying RBPLUS state in radv_bind_dynamic_state()

- radv: disable fast-clears with CMASK for 128-bit formats

- radv: require DRM 3.27

- radv/amdgpu: remove legacy code path for creating the BO list

- radv/amdgpu: remove legacy code for querying context status

- radv: do not allow 1D block-compressed images with (extended) storage on GFX6

- radv: fix usage flag for 3D compressed 128 bpp images on GFX9

- radv: wait for occlusion queries in the resolve query shader

- radv: delay enabling/disabling occlusion queries at draw time

- radv: track DB_COUNT_CONTROL changes to avoid context rolls

- radv: emit PIXEL_PIPE_STAT_CONTROL in the gfx preamble for GFX11

- radv: use gfx_level in radv_flush_occlusion_query_state()

- radv: update binning settings to work around GPU hangs

- radv/ci: remove one expected test failure on PITCAIRN

- radv/amdgpu: fix adding continue preambles and postambles BOs to the list

- Revert “ci/radv: Demote navi21 to manual until recent flakiness resolves.”

- radv: add the perf counters BO to the preambles BO list

- radv: do not overallocate the CS array during submissions

- ac/sqtt: add rgp_sqtt_marker_cb_id definition

- ac/sqtt: add a helper to get cmdbuf IDs per queue

- radv: reserve command buffer index for SQTT

- docs: rename ACO_DEBUG=noscheduling to ACO_DEBUG=nosched

- docs: add missing ACO_DEBUG=force-waitdeps

- radv: only enable extendedDynamicState3ConservativeRasterizationMode on GFX9+

- ac/spm: introduce ac_spm_trace and ac_spm_get_trace()

- ac/spm: rename ac_spm_trace_data to ac_spm

- ac/sqtt: add a helper for adding clock calibration records

- ac/sqtt: add helpers for initializing ac_thread_trace_data

- ac/sqtt: initialize clock calibration/queue info/queue event records

- radv/sqtt: sample CPU/GPU clocks before starting the trace

- radv/sqtt: add support for queue info

- ac/sqtt: add new bits to rgp_sqtt_marker_barrier_end

- ac/sqtt: add missing EventUnknown to rgp_sqtt_marker_event_type

- ac/rgp: update SQTT_FILE_CHUNK_TYPE_API_INFO to minor version 2

- ac/rgp: update SQTT_FILE_CHUNK_TYPE_ASIC_INFO to minor version 5

- ac/sqtt: add ac_sqtt_se_is_disabled() helper

- ac/sqtt: add ac_sqtt_get_trace() helper

- radv: do not abort when the SQTT buffer resize failed

- ac/rgp: remove ac_thread_trace_data from ac_thread_trace

- ac,radv,radeonsi: rename thread_trace to sqtt everywhere

- ac/nir: fix 8-bit/10-bit PS exports clamping

- radv: enable RADV_THREAD_TRACE_CACHE_COUNTERS by default

- radv: fix dynamic depth clamp enable support

- radv: fix invalid type for usage in radv_get_buffer_memory_requirements()

- radv: fix fast-clearing images with VK_REMAINING_{ARRAY_LAYERS,MIP_LEVELS}

- radv: replace radv_get_layerCount by vk_image_subresource_layer_count()

- radv: replace radv_get_levelCount() by vk_image_subresource_level_count()

- radv/meta: rename dest to dst

- radv: disable RB+ blend optimizations on GFX11 when a2c is enabled

- radv: use vk_image::mip_levels instead of radv_image::info::levels

- radv: use vk_image::array_layers instead of radv_image::info::array_size

- radv: use vk_image::samples instead of radv_image::info::storage_samples

- radv: use vk_image::samples instead of radv_image::info::samples

- radv: use vk_image::extent instead of radv_image::info::{width,height,depth}

- radv: remove ac_surf_info from radv_image

- ac/spm: switch to SPM version 2.0

- vulkan: Update XML and headers to 1.3.250

- radv: implement VK_EXT_attachment_feedback_loop_dynamic_state

- radv: advertise VK_EXT_attachment_feedback_loop_dynamic_state

- spirv: ignore SpvDecorationInvariant warning on struct members

- radv/ci: stop setting MESA_SPIRV_LOG_LEVEL

- radv: reset the emitted VS prolog when a new vertex shader is bound

- radv: dirty the dynamic vertex input state only when needed

- radv: re-emit fragment shading rate state when PA_CL_VRS_CNTL changes

- radv: configure PA_CL_VRS_CNTL entirely from the cmd buffer

- radv: implement dynamic sample locations enable

- radv: handle NULL fragment shaders when recording cmdbuf

- radv: handle NULL fragment shaders when creating graphics pipelines

- radv: rework the checks for implicit exports with GPL

- radv: allow to determine NGG settings with a NULL fragment shader

- radv: stop compiling a noop FS when the application doesn’t provide a FS

- radv: advertise VK_EXT_tooling_info

- radv: reset the emitted PS epilog when a new fragment shader is bound

- radv: remove unused pipeline param in radv_generate_ps_epilog_key()

- radv: stop using the pipeline for determining the null export workaround

- radv: fix emitting VRS state with a null fragment shader

- radv: fix resetting VRS if the graphics pipeline doesn’t enable it

- radv: fix a sync issue with primitives generated query and NGG/legacy

- amd/drm-shim: add navi21

- amd/drm-shim: add pitcairn

- amd/drm-shim: add bonaire

- amd/drm-shim: update README about which file to modify

- ci: build drm-shim in debian-testing

- ci,radv: use drm-shim instead of the null winsys for radv-fossils

- ci: stop using the hang-detection tool for vkd3d-proton

- ci: rework vkd3d-proton runner and fix detecting failures

- radv: reserve cmdbuf space in radv_flush_gfx2ace_semaphore()

- radv: bump the global VRS image size to maximum supported FB dimensions

- radv: disable IMAGE_USAGE_STORAGE with depth-only and stencil-only formats

- radv: remove useless check about USAGE_STORAGE for TC-compat HTILE

- nir: add nir_intrinsic_load_poly_line_smooth_enabled

- radeonsi: lower nir_intrinsic_load_poly_line_smooth_enabled_amd

- nir: lower smooth lines conditionally using the new intrinsic

- radv: track if the smoothLines features is enabled in the device

- radv: determine if smooth lines can be used in the pipeline key

- radv: declare a new user SGPR for the dynamic line rasterization mode

- radv: lower nir_intrinsic_load_poly_line_smooth_enabled_amd

- radv: add support for smooth lines

- radv: enable smoothLines

- radv: apply a bug workaround for smoothing on GFX6

- radv: do not enable VRS flat shading if the VRS builtin is read

- zink/ci: update VANGOGH expected list of failures

- vulkan/pipeline_cache: remove a bogus assert when inserting objects

- zink/ci: skip arb_texture_buffer_object@texture-buffer-size-clamp* with RADV

- radv: fix copying 2D to 3D images

- ci: uprev vkd3d-proton to 2.9

- amd: fix 64-bit integer color image clears

- radv: rework configuring VGT_SHADER_STAGES_EN

- radv/ci: update list of expected failures since Vulkan loader 1.3

- radv/ci: skip tests that timeout since Vulkan loader 1.3

- vulkan: Update XML and headers to 1.3.251

- radv: advertise VK_EXT_dynamic_rendering_unused_attachments

- aco: remove nir_intrinsic_load_barycentric_at_sample occurences

- radv/ci: removed expected failures that are skipped now

- radv/nir: use ac_nir_unpack_arg() for packed shader input user SGPRS

- radv: introduce SHIFT/MASK for unpacking shader input args

- radv: regroup fragment shader user SGPRs emission

- radv: merge all FS user SGPRs into one using packed arguments

- spirv: add support for SpvCapabilityFragmentBarycentricKHR

- spirv,nir: add support for BaryCoord{NoPersp}KHR builtins

- spirv,nir: add support for SpvDecorationPerVertexKHR

- nir/lower_io: add nir_intrinsic_load_input_vertex to is_input()

- nir: print locations for per-vertex fragment shader inputs

- zink/ci: remove useless RADV_PERFTEST=gpl

- radv: initialize the device cache UUID even if on-disk cache is disabled

- nir: add nir_intrinsic_load_provoking_vtx_amd

- radv: add support for nir_intrinsic_load_provoking_vtx_amd

- radv: track if the rasterization primitive is known at compile time

- nir: add nir_intrinsic_load_rasterization_primitive_amd

- radv: add support for nir_intrinsic_load_rasterization_primitive_amd

- radv: handle per_vertex variables when gathering FS inputs

- radv: set ROTATE_PC_PTR for custom interpolations

- radv: configure RSRC1.LOAD_PROVOKING_VTX for the fragment shader

- radv: add a NIR pass that lower fragment shader barycentric intrinsics

- radv: gather info about nir_intrinsic_load_sample_positions_amd

- radv: advertise VK_KHR_fragment_shader_barycentric on GFX10.3+

- radv: add a helper for emitting a null depth/stencil target

- radv: reset more DB registers when emitting a null ds target

- radv: emit DB_RENDER_CONTROL as part of the framebuffer

- radv: disable HTILE compression only when layouts are compressed

- radv/ci: update the list of expected failures on STONEY

- radv: gather info about load_poly_line_smooth_enabled

- radv: add a helper for forcing VRS 1x1 in some situations

- radv: do not force VRS 1x1 when smooth lines are enabled

- radv: fix smooth lines with graphics pipeline library

- radv: fix re-emitting some dynamic states when the previous FS is NULL

- radv: fix re-emitting early_z/late_z when the bound PS changes

- radv: reset some dynamic states when the fragment shader stage is unbound

- radv: remove unused radv_dgc_token struct

- radv: add dgc_emit_state() helper

- radv: add dgc_emit_push_constant() helper

- radv: add dgc_emit_vertex_buffer() helper

- radv: add dgc_emit_draw() helper

- radv: add dgc_emit_draw_indexed() helper

- radv: add dgc_emit_index_buffer()

- radv: do not use IB for the GFX preamble with RADV_DEBUG=noibs

- radv: use IB for the GFX preamble on GFX6

- radv: reserve space for shadowed regs

- radv/amdgpu: fix a buffer overflow for submissions with RADV_DEBUG=noibs

- radv/amdgpu: remove useless assert in radv_amdgpu_winsys_cs_submit_internal()

- radv/amdgpu: add cs_execute_ib() for executing IBs

- radv: use cs_execute_ib() for GFX, MBCP and DGC IBs

- vulkan/runtime: call CmdSetDepthBias2EXT() from CmdSetDepthBias()

- radv: implement VK_EXT_depth_bias_control

- radv: advertise VK_EXT_depth_bias_control

- radv: implement padding cmdbuffer for DGC on GFX6

- radv: enable NV_device_generated_commands on GFX6

- radv: reserve more space in CS for SQTT

- radv/amdgpu: fix dumping cs with RADV_DEBUG=noibs

- radv/amdgpu: dump all cs with RADV_DEBUG=noibs

- radv: only dirty the index type when necessary with DGC

- radv: only dirty the active push constant stages with DGC

- radv: adjust alignment of the preprocess buffer with DGC

- radv/amdgpu: use the correct IB size when growing a CS with RADV_DEBUG=noibs

- radv/amdgpu: rework growing a CS with the chained IB path slightly

- radv/amdgpu: do not set the IB size when ending a CS with RADV_DEBUG=noibs

- radv/amdgpu: use the array of IB buffers for the chained IB path

- radv/amdgpu: use cs_finalize() when growing a CS

- radv/amdgpu: rename old_ib_buffers to ib_buffers

- radv/amdgpu: add a helper to get a new IB

- radv/amdgpu: skip adding per VM BOs for sparse during CS BO list build

- radv/amdgpu: workaround a kernel bug when replacing sparse mappings

- radv/amdgpu: add more small helpers for managing CS

- radv/amdgpu: add support for executing DGC cmdbuf with RADV_DEBUG=noibs

- radv: allow NV_device_generated_commands with RADV_DEBUG=noibs

- radv: stop emitting TILE_SURFACE_ENABLE for the ZRANGE_PRECISION workaround

- radv: inline more values in radv_emit_fb_ds_state()

- radv: emit PA_SC_SCREEN_SCISSOR_BR with the actual fb extent

- zink/ci: update list of expected failures for NAVI10

- zink: fix setting VkShaderCreateInfoEXT::nextStage

- radv/rt: fix capture/replay support

- vulkan: ignore VkPipelineColorWriteCreateInfoEXT if the state is dynamic

- Revert “radv/amdgpu: workaround a kernel bug when replacing sparse mappings”

- Revert “radv/amdgpu: skip adding per VM BOs for sparse during CS BO list build”

- radv/amdgpu: fix executing secondaries without IB2

- radv/amdgpu: do not copy the original chain link for IBs

- radv: fix emitting SQTT userdata when CAM is needed

- radv: fix capturing RGP on RDNA3 with more than one Shader Engine

- radv: set THREAD_TRACE_MARKER_ENABLE for mesh/task draws

Sarah Walker (15):

- pvr: Support single core transfer queue commands on multicore GPUs

- pvr: Implement pvr_pbe_setup_modify_defaults()

- pvr: Complete pvr_modify_command()

- pvr: Complete pvr_unwind_rects()

- pvr: Complete pvr_double_stride()

- pvr: Implement pvr_isp_scan_direction()

- pvr: Implement pvr_reroute_to_clip()

- pvr: Support ipf_creq_pf in pvr_isp_ctrl_stream()

- pvr: Complete pvr_3d_validate_addr()

- pvr: Support multiple sources per pass in TQ job submission

- pvr: Complete pvr_generate_custom_mapping()

- pvr: Fragment register fb_cdc_zls is feature dependent

- pvr: use pvr_csb_pack() to setup CR_FB_CDC_ZLS

- pvr: Rename heap reserved area to static data carveout

- pvr: Merge main and extension command streams

Sathishkumar S (5):

- util/format: add planar3 r8_g8_b8_unorm pipe format

- frontends/va: add support for RGBP rt_format

- radeonsi/vcn: enable RGBP format on gfx940 jpeg

- radeonsi/vcn: engage all jpeg engines on gfx940 for mjpeg decode

- frontends/va: return matching drm format for yuyv pipe format

Semjon Kravtsenko (1):

- glx: Assign unique serial number to GLXBadFBConfig error

Sergi Blanch Torne (8):

- ci: Move Vulkan CTS patches to their own directory

- ci: disable Collabora’s LAVA lab for maintance

- Revert “ci: disable Collabora’s LAVA lab for maintance”

- ci: Allow zink-radv jobs to be manual when uprev piglit

- ci: disable Collabora’s LAVA lab for maintance

- Revert “ci: disable Collabora’s LAVA lab for maintance”

- ci: disable Collabora’s LAVA lab for maintance

- Revert “ci: disable Collabora’s LAVA lab for maintance”

Shan-Min Chao (1):

- tu/kgsl: Fix memory overwrite with vkFlushMappedMemoryRanges when more than 1 range

Sil Vilerino (30):

- d3d12: Do not fail d3d12_screen creation if D3D12_FEATURE_D3D12_OPTIONS14 not available

- frontend/va: Support QVBR rate control mode

- frontend/va: Allow distinction for HRD params sent from app and frontend defaults

- frontend/va: Allow distinction for Min/MaxQP params sent from app and frontend defaults

- d3d12: Support QVBR rate control mode

- d3d12: Support rate control HRD and MaxFrameSize app params

- d3d12: Support QPMin/QPMax app params

- d3d12: Support PIPE_VIDEO_CAP_MIN_WIDTH/HEIGHT caps

- d3d12: Support PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL

- frontend/va: Add VAProfileH264High10

- frontend/va: Add H264 decode slice data

- d3d12: Use frontend H264 decode slice offsets and sizes instead of parsing buffer

- d3d12: Clean unused code for parsing slices

- frontends/va: Extend AV1 Encode params

- d3d12: AV1 Encode

- CI/windows: Update headers and Agility redist to 1.711.3-preview

- d3d12: Correct tx_mode_support reporting as specified in libva spec

- d3d12: Only set reduced_tx_set when supported by D3D12 caps (no libva caps for reduced_tx_set to map to)

- d3d12: Fix usage of D3D12_VIDEO_ENCODER_RATE_CONTROL_FLAG, was using D3D12_VIDEO_ENCODER_SUPPORT_FLAG wrongly instead

- frontend/va: Pass surf->fence in PIPE_VIDEO_ENTRYPOINT_ENCODE contexts for driver to wait on input surface pending work

- frontend/va: Add video processing async fence support

- d3d12: Video Decode - Implement get_decoder_fence and async queing

- d3d12: Apply style format to d3d12_video_dec.cpp

- d3d12: Video Decode - Sync 3D context copy with decode work for texture array case

- d3d12: Video Encode - GPU wait on input surface fence

- d3d12: Video Process - Implement get_processor_fence and async queing

- d3d12: Video Decode - Refactor and style fixes

- frontend/va: Fix vaSyncSurface and vaQuerySurface status for drivers not implementing get_processor_fence

- frontend/va: Remove fence_server_sync for surface in vlVaHandleVAProcPipelineParameterBufferType

- aux/tc: Add ASSERTED to unreferenced release build variable

Simon Perretta (5):

- pvr: Amend validation when checking multiple supported types

- pvr: Use movc for reading special registers

- pvr: Add support for generating transfer fragment programs

- pvr: Add support for generating transfer EOT programs

- pvr: Use driver vertex input data in the compiler

Simon Ser (4):

- wayland: generalize wayland-protocols code generation

- radv: advertise LINEAR filter support for multiplanar/subsampled

- vulkan/wsi/wayland: add 16-bit formats

- Update OpenGL headers

SoroushIMG (8):

- zink: do not emit line stipple dynamic state when emulating

- zink: take location_frac into account in lower_line_smooth_gs

- zink: fix incorrect line mode check for bresenham

- zink: refcount the correct query pool

- pvr: fix sync waiting while using pvrsrvkm

- pvr: fix infinite recursion in pvr_cmd_buffer_{start,end}_sub_cmd

- pvr: add missing frag to geom dependency for jobs targetting same render target

- pvr: Fix barrier insertion on merged subpasses

SureshGuttula (2):

- va/surface : Add Nv12 support for PRIME_2 imports

- radeonsi/vcn: update luma and chroma size

Sviatoslav Peleshko (7):

- isl: Check all channels in isl_formats_have_same_bits_per_channel

- anv: Handle UNDEFINED format in image format list

- anv: Improve image/view usage bits verification

- nir/lower_shader_calls: Fix cursor if broken after nir_cf_extract() call

- glsl: Fix yylloc.source propagation in YYLLOC_DEFAULT

- dri: Use RGB internal formats for RGBX formats

- intel/fs: Check if the whole ubo load range is in the push const range

Sylvain Munaut (1):

- egl/dri2: Add a couple of missing mutex release in error path

Tapani Pälli (33):

- isl: disable mcs (and mcs+ccs) for color msaa on gfxver 125

- iris: implement state cache invalidate for Wa_16013063087

- anv: cleanup bitmask construction for PIPELINE_SELECT

- anv: implement state cache invalidate for Wa_16013063087

- isl: fix layout for comparing surf and view properties

- egl/loader: move crtc resource infrastructure as common helper

- anv: handle missing astc for gfx125 in CreateImageView

- mesa: set a type for depth fallback texture

- intel/dev: provide helper to check if devinfo is ATS-M

- anv: add required invalidate/flush for Wa_14014427904

- iris: add required invalidate/flush for Wa_14014427904

- mesa: validate shader binary format in _mesa_spirv_shader_binary

- iris: make Wa_16013994831 to use intel_needs_workaround

- anv: make Wa_16013994831 to use intel_needs_workaround

- anv: remove BDW specific WA for CS stall enable

- intel/dev: add parentheses around intel_needs_workaround macro

- iris: use workaround framework for 1408224581, 14014097488

- anv: use workaround framework for 1408224581, 14014097488

- anv: wrap pipe control emission to a set of helper functions

- anv: implement flush part of emit_apply_pipe_flushes with helper

- anv: implement invalidate part of emit_apply_pipe_flushes with helper

- anv: convert genX_query pipe controls to use pc helper

- anv: change pipe controls in genX_state to use pc helper

- anv: change pipe control in genX_pipeline to use pc helper

- anv: change pipe controls in genX_gpu_memcpy to use pc helper

- anv: change pipe control in indirect draw gen to use pc helper

- anv: change most pipe controls in gfx8_cmd_buffer to use pc helper

- anv: convert most pc in genX_cmd_buffer to use pc helper

- isl: handle DRM_FORMAT_MOD_INVALID in isl_drm_modifier_has_aux

- intel/compiler: add more validation for acc register usage

- mesa: fix some TexParameter and SamplerParameter cases

- iris: avoid issues with undefined clip distance

- crocus: avoid issues with undefined clip distance

Tatsuyuki Ishi (18):

- util: Add dedicated hex conversion functions and use it.

- util: Call mesa_bytes_to_hex directly instead of disk_cache_format_hex_id.

- util: Add a copy of BLAKE3 hash library.

- util/blake3: Patch with hidden visibility for asm symbols.

- util: Add mesa_blake3 wrappers.

- nir: Fix serializing pointer initializers.

- radv: Make shader related destruction happen before hw_ctx.

- radv: Add RGP barrier markers for render pass transition and copy.

- radv: Guard against misplaced RGP barrier markers.

- util/blake3: Add blake3_hash typedef.

- vulkan: Migrate shader module hash to BLAKE3.

- vulkan/pipeline_cache: Do not consume object passed into remove_object.

- vulkan/pipeline_cache: Move locking outside of remove_object.

- vulkan/pipeline_cache: Move cache_object_unref out of header.

- vulkan/pipeline_cache: Introduce weak reference mode.

- radv: Enable weak reference cache for device->mem_cache.

- zink/ci: Add ext_transform_feedback@api-errors to fail list.

- radv/amdgpu: Do not pass in a BO handle when clearing PRT VA region.

Teng, Jin Chung (1):

- d3d12: HEVC Encode - Fix num_subregions_per_scanline rounding

Thomas H.P. Andersen (30):

- nir/nir_lower_wpos_center: Use the nir_shader_instructions_pass() helper

- nir/nir_lower_wpos_ytransform: Use the nir_shader_instructions_pass() helper

- nir/nir_lower_viewport_transform: Use the nir_shader_instructions_pass() helper

- nir/nir_lower_var_copies: Use the nir_shader_instructions_pass() helper

- nir/nir_lower_uniforms_to_ubo: Use the nir_shader_instructions_pass() helper

- nir/nir_lower_two_sided_color: Use the nir_shader_instructions_pass() helper

- nir/nir_lower_to_source_mods: Use the nir_shader_instructions_pass() helper

- nir/nir_lower_vec3_to_vec4: Use the nir_shader_instructions_pass() helper

- r600: remove unused code

- tgsi: delete unused functions

- aux: remove unused tgsi includes

- d3d12: remove unused tgsi includes

- etnaviv: remove unused tgsi includes

- freedreno: remove unused tgsi includes

- i915: remove unused tgsi includes

- llvmpipe: remove unused tgsi includes

- nouveau: remove unused tgsi includes

- r300: remove unused tgsi includes

- r600: remove unused tgsi includes

- radeonsi: remove unused tgsi includes

- softpipe: remove unused tgsi includes

- svga: remove unused tgsi includes

- v3d: remove unused tgsi includes

- vc4: remove unused tgsi includes

- virgl: remove unused tgsi includes

- zink: remove unused tgsi includes

- lavapipe: remove unused tgsi includes

- st: remove unused tgsi includes

- r600: tgsi cleanup

- tgsi: remove unused functions and structs

Thong Thai (11):

- gallium/pipe: add min width and min height video cap enums

- radeonsi: return min width and min height video cap values

- frontends/va: report min width and min height values if available

- mesa/main: rework locale setup/teardown

- util: check and initialize locale before using it

- tgsi: use locale independent float and double parsing

- frontends/va/config: add disable packed headers as valid config

- frontends/va/context: check min supported resolution when creating

- frontends/va/config: check for QVBR support when creating

- frontends/va/context: return error if context_id == 0

- frontends/va: fix some coverity scan reported issues

Tim Pambor (1):

- virgl: Fix stack overflow in virgl_bind_sampler_states

Timothy Arceri (32):

- util: add Pixel Game Maker MV workaround

- util: add Jamestown+ workaround

- st/glsl: move linking code to the same st file

- glsl: call nir_opt_find_array_copies() when linking

- glsl: port lower_blend_equation_advanced() to nir

- glsl: call nir version of lower_blend_equation_advanced()

- glsl: remove old lower_blend_equation_advanced() code

- glsl: add some more c wrappers for string_to_uint_map

- mesa: add some new constants

- glsl: move some compiler code out of st

- glsl: move lowering linker code out of st

- glsl: port assign location code for VS inputs or FS outputs

- glsl: call assign_attribute_or_color_locations() in NIR linker

- glsl: remove unused buffer objects with packed layout

- glsl: remove unused system vars

- glsl: drop the dce of global vars from GLSL IR linker

- nir/glsl: add nir_var_declared_implicitly enum

- glsl: move disable_varying_optimizations_for_sso() to NIR linker

- glsl: remove the always_active_io flag from GLSL IR

- glsl: inline link_varyings()

- glsl: set last_vert_prog in the nir linker

- glsl: drop link_invalidate_variable_locations()

- glsl: move store_fragdepth_layout() to nir linker

- glsl: remove glsl ir optimisation loop from linker

- st/glsl: merge link_shader() into st_link_nir()

- st/glsl: merge st_link_glsl_to_nir() into st_link_nir()

- st/glsl: merge st_glsl_to_ir.cpp with st_glsl_to_nir.cpp

- glsl: remove dead varyings before assigning attr locations

- glsl: do vs attribute validation in NIR linker

- glsl: fix validation of ES vertex attribs

- glsl: fix spirv sso validation

- util: add radeonsi workaround for Nowhere Patrol

Timur Kristóf (61):

- radv/amdgpu: Remove unnecessary assertions from chaining.

- radv: Disallow IB2 on GFX6 when using draw_indirect_multi.

- radv: Use IB BOs (chaining) by default on GFX6.

- radv: Chain command buffers on GFX6 in radv_queue.

- amd: Rename INDIRECT_BUFFER_CIK to just INDIRECT_BUFFER.

- radv: Simplify IB2 workaround.

- radv: Remove IB2 workaround from mesh shader draws.

- radv: Enable IB2 workaround on all indirect draws.

- radv: Fix dword alignment in SDMA buffer copy.

- aco: Disallow constant propagation on SOPP and fixed operands.

- amd: Add and implement sendmsg_amd intrinsic.

- amd: Add and implement gs_wave_id sysval.

- amd: Move sendmsg defines to ac_shader_util.

- ac/llvm: Clarify arguments of ac_build_sendmsg.

- ac/nir: Use sendmsg in legacy GS lowering.

- ac/nir: Emit legacy GS DONE signal in NIR.

- ac/nir/ngg: Use sendmsg in NGG lowering.

- amd: Cleanup old GS intrinsics code.

- aco: Don’t allow any VALU instruction to write m0.

- aco: Initialize vcmpx field in get_cmp_info.

- radv/amdgpu: Remove unused extra BO array.

- radv/amdgpu: Split radv_amdgpu_get_bo_list to smaller functions.

- radv/amdgpu: Pass preambles to get_bo_list.

- radv/amdgpu: Use STACK_ARRAY for IB array to reduce stack usage.

- radv: Move perf counter CS creation to where it’s used.

- ac: Use const keyword for some function arguments.

- radv: Use const keyword more.

- radv: Emit primitive reset index with primitive restart enable.

- radv: Compute tess info when emitting patch control points.

- radv: Move ignore forced VRS code to more optimal place.

- radv: Set last_index_type in radv_before_draw.

- radv: Slight refactor to late_scissor_emission.

- radv: Move indirect check from index buffer emission to caller.

- radv: Move empty dynamic states check to caller.

- radv: Clear query dirty flags when flushing them.

- radv: Clarify gang submit terminology.

- radv: Use RESET_FILTER_CAM for some mesh shading draws.

- aco: Mark exec write used when it writes other registers.

- radv: Remove primitive reset index from late scissor workaround.

- radv: Leave primitive reset index at max on GFX8+.

- ac: Add ac_hw_stage enum.

- aco: Use ac_hw_stage instead of aco-specific HWStage.

- aco: Add hw_stage field to aco_shader_info.

- radeonsi: Set aco_shader_info::hw_stage

- radv: Set aco_shader_info::hw_stage

- aco: Use aco_shader_info::hw_stage instead of guessing.

- aco: Remove unneeded stage related info fields.

- ac/nir/ngg: Call nir_convert_to_lcssa before divergence analysis.

- ac/nir/ngg: Add upper limit to reusable uniforms.

- ac/nir/ngg: Follow intrinsic sources when analyzing before culling.

- ac/nir/ngg: Follow tex sources when analyzing before culling.

- radv: Refactor required subgroup size in pipeline key.

- radv: Use required subgroup info for graphics shaders.

- radv: Enable required subgroup size on mesh/task.

- aco: Add MESA_SHADER_KERNEL to instruction selection setup.

- aco: Fix subgroup_id intrinsic on GFX10.3+.

- ac/nir: Add done arg to ac_nir_export_position.

- ac/nir: Slightly refactor how pos0 exports are added when missing.

- ac/nir/ngg: Wait for attribute stores before VS/TES/GS pos0 export.

- ac/nir/ngg: Refactor mesh shader primitive export.

- ac/nir/ngg: Wait for attribute ring stores in mesh shaders.

Tony Wasserka (2):

- aco/spill: Use arena allocator for next use distances

- aco/spill: Use arena allocator for spills

Veerabadhran Gopalakrishnan (2):

- radeonsi: return kernel queried video capability for HEVC and JPEG

- radeonsi: return kernel queried video capability for HEVC and JPEG

Viktoriia Palianytsia (1):

- iris,crocus: Add proper way of assigning num_levels value

Vinson Lee (10):

- r600/sfn: Initialize BlockScheduler member m_chip_family.

- freedreno/a6xx: Fix memory leak on error path.

- nv50: Fix memory leak in error path

- pvr: Fix signed comparison

- dzn: Fix qpool->queries_lock double lock

- tu: Fix missing unlock

- vulkan/wsi: Remove duplicate NULL check

- frontends/va: Fix missing unlock

- r600/sfn: Remove duplicate assignment

- vk/wsi/x11: Remove dead code

Vitaliy Triang3l Kuzmin (27):

- lavapipe: Fix vk_instance_init vk_error instance use-after-free

- radv: Fix vk_instance_init vk_error instance use-after-free

- radv: Move most of DB_SHADER_CONTROL to PS, more precise GFX11 blend WA

- docs/amd: Document Primitive Ordered Pixel Shading

- ac/nir: Support Primitive Ordered Pixel Shading in lower_ps

- aco: Support pops_exiting_wave_id PhysReg usage

- ac: Define POPS collision wave ID argument SGPR

- aco: Add s_wait_event argument bit definitions

- aco: Add Primitive Ordered Pixel Shading pseudo-instructions

- aco: Skip waitcnt insertion in the discard early exit block

- aco: Add Primitive Ordered Pixel Shading scheduling rules

- aco: Send MSG_ORDERED_PS_DONE where necessary

- aco: Add Primitive Ordered Pixel Shading waitcnt rules

- aco: Implement fragment shader interlock intrinsics

- radeonsi: Remove unconditional POPS_DRAIN_PS_ON_OVERLAP setting

- radv: Remove unconditional POPS_DRAIN_PS_ON_OVERLAP setting

- radv: Detect the use of Primitive Ordered Pixel Shading

- radv: Ensure 1x1 shading rate on GFX10.3 with interlock execution mode

- radv: Declare POPS collision wave ID shader argument

- radv: Enable POPS collision wave ID shader argument

- radv: Enable the null export workaround with POPS

- radv: Handle Primitive Ordered Pixel Shading in DB_SHADER_CONTROL

- ac/gpu_info: Check whether the device has the POPS missed overlap bug

- radv: Apply the POPS missed overlap hardware bug workaround

- radv: Disable VRS forcing with Primitive Ordered Pixel Shading

- zink/ci: Add broken fragment shader interlock test to RADV flakes

- radv: Enable VK_EXT_fragment_shader_interlock

Víctor Manuel Jáquez Leal (1):

- vulkan: complete the usage flags for video layouts

Weibin Wu (1):

- winsys/gdi: GDI B5G6R5 display target support

Xaver Hugl (1):

- vulkan wsi: add support for PresentOptionAsyncMayTear

Xi Ruoyao (1):

- Revert “glx: Remove pointless GLX_INTEL_swap_event paranoia”

Yiwei Zhang (46):

- radv: respect VK_QUERY_RESULT_WAIT_BIT in GetQueryPoolResults

- venus: stop query experimental features

- venus: adopt venus protocol release

- meson/ci: promote virtio-experimental to virtio

- docs: update Virtio-GPU Venus driver page

- ci: carry venus-protocol 1.0 release patches in virglrenderer

- ci: uprev virglrenderer to drop venus release patches

- anv: apply ANV_BO_ALLOC_IMPLICIT_SYNC for external memory

- pipe-loader: avoid undefined memcpy behavior

- lvp: avoid accessing member of NULL ptr for global entries

- venus: bump ring space to 128K

- docs/venus: update vtest instructions

- radv: fix radv_emit_userdata_vertex for vertex offset -1

- venus: silence -Wuninitialized

- venus: sync to latest protocol from header v1.3.248

- venus: sync protocol for VK_EXT_image_2d_view_of_3d

- venus: enable VK_EXT_image_2d_view_of_3d

- docs/venus: advertise VK_EXT_image_2d_view_of_3d

- venus: temporarily disable VK_EXT_memory_budget

- venus: refactor vn_device_memory to track VkMemoryType

- venus: handle device memory report requests

- venus: emit device memory report for device memory events

- venus: enable VK_EXT_device_memory_report

- docs: update venus VK_EXT_device_memory_report support

- anv: avoid requiring ordered memory planes for explicit import

- venus: suballocate feedback slot with feedback buffer alignment

- venus: refactor ahb buffer mem type bits cache to be lazy

- venus: refactor buffer cache related bits

- venus: extend VkBuffer cache to cover concurrent sharing

- venus: fix a cmd tmp storage leak

- venus: fix leaks from tracked present src images

- venus: track pool in cmd and track device in pool

- venus: cmd to reuse alloc copy from cmd pool

- venus: refactor vn_cmd_add_query_feedback and miscs

- venus: cache query batches at cmd pool

- venus: refactor query batch handling

- venus: recheck valid bit after acquiring lock to init ahb mem type bits

- venus: handle query feedback creation failure

- venus: ensure consistency of query overflow behavior

- venus: add a missing barrier before copying query feedback

- turnip: flush cache for dstBuffer in vkCmdCopyQueryPoolResults

- lvp: avoid reading immutable sampler from desc write info

- venus: fix a cmd builder render_pass state leak across reset

- venus: fix cmd state leak across implicit reset

- venus: fix a device memory report leak

- vulkan/android: add missing AHARDWAREBUFFER_USAGE_GPU_DATA_BUFFER usage

Yogesh Mohan Marimuthu (2):

- ac/gpu_info: num_cu = 4 and gfx11 enable dcc with retile

- ac/gpu_info: rearrange if checks for dcc config

Yonggang Luo (121):

- loader: Replace usage of mtx_t with simple_mtx_t in loader/loader_dri3_helper.c

- v3d: Replace usage of mtx_t with simple_mtx_t in v3d_simulator.c

- vc4: Replace usage of mtx_t with simple_mtx_t in vc4/vc4_simulator.c

- drm-shim: Replace usage of mtx_t with simple_mtx_t in drm_shim.c

- drm: Replace usage of mtx_t with simple_mtx_t in virgl/drm/virgl_drm_winsys.c

- drm: Replace usage of mtx_t with simple_mtx_t in drm/radeon_drm_winsys.c

- drm: Replace usage of mtx_t with simple_mtx_t in nouveau_drm_winsys.c

- hud: Replace usage of mtx_t with simple_mtx_t in hud_cpufreq.c

- hud: Replace usage of mtx_t with simple_mtx_t in hud_diskstat.c

- hud: Replace usage of mtx_t with simple_mtx_t in hud_nic.c

- hud: Replace usage of mtx_t with simple_mtx_t in hud_sensors_temp.c

- xlib: Replace usage of mtx_t with simple_mtx_t in xm_api.c

- rtasm: Trim trailing spaces and replace tab with 3 space

- rtasm: Replace usage of mtx_t with simple_mtx_t in rtasm_execmem.c

- nine: Replace usage of mtx_t with simple_mtx_t in nine_lock.c

- omx: Replace usage of mtx_t with simple_mtx_t in vid_omx_common.c

- vdpau: Replace usage of mtx_t with simple_mtx_t in htab.c

- c11: Remove _MTX_INITIALIZER_NP as it’s not used anymore

- microsoft/compiler: Getting function impl to be consistence with decl in dxil_enums.*

- compiler: Getting shader_prim to be PACKED that consistence with pipe_prim_type

- compiler: Add SHADER_PRIM_COUNT to be SHADER_PRIM_MAX + 1

- compiler: Rename shader_prim to mesa_prim and replace all usage of pipe_prim_type with mesa_prim

- docs: Update document about pipe_prim_type with mesa_prim

- util: Replace all usage of PIPE_TIMEOUT_INFINITE with OS_TIMEOUT_INFINITE

- r300: Replace usage of os_get_process_name with util_get_process_name in r300_chipset.c

- virgl: Array cmdline on stack should initialized to 0

- virgl: Replace the usage of os_get_process_name with util_get_process_name

- compiler: Combine duplicated implementation of is_gl_identifier into glsl_types.h

- compiler: Move can_implicitly_convert_to helper to glsl module from glsl_types.h

- mesa, compiler: Move gl_texture_index to glsl_types.h

- compiler: Remove the need include “util/glheader.h” and “util/ralloc.h” in glsl_types.h

- compiler: Remove redundant struct glsl_type in nir_types.h

- vulkan: move nir_convert_ycbcr into vulkan runtime

- util: Remove redundant type cast in function align64

- util: use uint32_t as the parameter of align function

- util: Do not use align as variable name

- compiler: use align instead glsl_align and remove glsl_align

- panfrost: Replace the usage of PIPE_BIND_* with PAN_BIND_*

- ac: Replace the usage of pipe_compare_func with compare_func

- dri: Replace usage of boolean/TRUE/FALSE with bool/true/false

- freedreno: Fixes error: passing argument 1 of ‘pthread_mutex_unlock’ from incompatible pointer type in tu_pipeline.c

- wsi: Fixes passing argument 1 of ‘mtx_unlock’ from incompatible pointer type

- c11: Improve timespec_get to support TIME_MONOTONIC TIME_ACTIVE TIME_THREAD_ACTIVE TIME_MONOTONIC_RAW

- c11: Improve mtx_timedlock to use timespec_get instead of time(NULL)

- c11: Implement os_time_get_nano with timespec_get(&ts, TIME_MONOTONIC)

- zink: Replace the usage of os_get_process_name with util_get_process_name

- dd: Replace the usage of os_get_process_name with util_get_process_name in dd_draw.c

- gallium: Remove unused os_process.h in gallium/auxiliary

- util: Fixes prototype of threads_timespec_compare

- mapi: Fixes check_table.cpp for DrawArraysInstancedARB and DrawElementsInstancedARB

- meson: Use consistence disabled/enabled comment for shared-glapi option

- mapi: Fixes non-constant-expression cannot be narrowed from type ‘unsigned long’ to ‘unsigned int’ in initializer list with clang

- meson: Guard the glsl tests that only working when OpenGL ES2 is enabled

- draw: Replace usage of boolean/TRUE/FALSE with bool/true/false in draw_pt_vsplit*

- draw: Replace usage of ubyte/ushort/uint with uint8_t/uint16_t/uint32_t in draw_pt_vsplit.c

- draw: Update the comment and function name to match the type

- vtn: Do not assign main_entry_point->impl twice

- nir: Add function nir_function_set_impl

- hud: Use bool/true/false to replace boolean/TRUE/FALSE in hud/hud_context.c

- gallium/draw: Replace the usage of ushort to uint16_t in files that can not found by tools

- llvmpipe: altivec.h inclusion in -std=c++98..11 causes bool to be redefined

- treewide: replace usage of boolean to bool

- treewide: style fixes after replace usage of boolean to bool

- treewide: Replace the usage of TRUE/FALSE with true/false

- treewide: Replace the usage of ubyte/ushort with uint8_t/uint16_t

- treewide: style fixes after replace the usage of ubyte/ushort with uint8_t/uint16_t

- util: Merge p_compiler.h into src/util/compiler.h

- util: include “util/compiler.h” instead of “pipe/p_compiler.h”

- mapi: Fixes compile error with build option “-D shared-glapi=disabled”

- mapi: Now _glapi_get_dispatch_table_size always equal to sizeof(struct _glapi_table) / sizeof(void *)

- mapi: Hide OpenGL functions to be exported when shared-glapi is disabled

- ci: Testing -D shared-glapi=disabled with debian-clang-release

- d3d12: Fixes unused-variable compile error

- compiler: set alignment=1 by default for handling empty struct/interface in glsl_types.cpp

- util: Add function util_is_power_of_two_nonzero64 in bitscan.h

- util: use uint32_t instead of unsigned in bitscan.h

- util: Getting align and align64 consistence with ALIGN

- util: Replace the usage of redundant u_align_u32 with align and remove u_align_u32

- util: Do not use align64 over unsigned int in register_allocate.c

- util: sizeof bucket are always 32bit width, use align instead align64

- mapi: Style fixes in glapi/glapi_getproc.c

- mapi: Merge get_static_proc_address into _glapi_get_proc_address

- mapi: Remove dead struct _glapi_function in glapi/glapi_getproc.c

- nir: Split macro nir_foreach_function_with_impl out of nir_foreach_function_impl

- clang-format: Add nir_foreach_function_with_impl into src/.clang-format

- treewide: Switch to use nir_foreach_function_with_impl when possible

- clang-format: Add nir_foreach_function_impl into src/.clang-format

- gallium/auxiliary: Switch to use nir_foreach_function_impl

- asahi: Use nir_foreach_function_impl instead nir_foreach_function in function agx_nir_lower_zs_emit

- d3d12: Switch to use nir_foreach_function_impl

- glsl: Switch to use nir_foreach_function_impl from nir_foreach_function

- glsl: Remove the extra scope in gl_nir_link_uniforms.c

- crocus: Switch to use nir_foreach_function_impl

- intel/compiler: Switch to use nir_foreach_function_impl

- broadcom: replace redefined ALIGN() macro with common util functions

- util: Remove redundant defined(_WIN32) in u_string.h

- util: Remove redundant #if !defined(XF86_LIBC_H) in u_string.h

- nir: Strip the const modifier on nir_function * in nir_foreach_function_with_impl

- panfrost: Convert to use nir_foreach_function_with_impl in function midgard_compile_shader_nir

- panfrost: Convert to use nir_foreach_function_impl when possible

- mesa: Convert to use nir_foreach_function_impl

- llvmpipe: Convert to use nir_foreach_function_impl

- sfn: Convert to use nir_foreach_function_impl

- sfn: indent fixes after switch to use nir_foreach_function_impl

- compiler/clc: Switch to use nir_foreach_function_impl in function nir_lower_libclc

- dxil: Use nir_remove_non_entrypoints

- nir: Update the comment to call nir_remove_non_entrypoints directly

- glsl: Use nir_remove_non_entrypoints to simplify the code

- radv: Use nir_remove_non_entrypoints in radv_shader.c

- nir: Add nir_foreach_function_safe and use it

- pvr: Use alignas instead of ALIGN_ATTR and remove ALIGN_ATTR

- vc4: Convert to use nir_foreach_function_impl when possible

- v3d: Switch to use nir_foreach_function_impl

- broadcom: Switch to use nir_foreach_function_impl

- radeonsi: Use ALIGN_POT instead ALIGN_TO

- etnaviv: Convert to use nir_foreach_function_impl

- intel/vulkan: Convert to use nir_foreach_function_impl when possible

- iris: Convert to use nir_foreach_function_impl

- treewide: Remove all usage of nir_builder_init with nir_builder_create and nir_builder_at

- treewide: remove unused nir_builder

- nir: Remove nir_builder_init, it’s not used anymore

Zhang Ning (2):

- lima: use u_pipe_screen_lookup_or_create in the renderonly path too

- Revert “intel/ci: disable iris-jsl-deqp because it always fails for an AMD MR”

Zhang, Jianxun (3):

- intel/isl: Fix map between sRGB and linear formats

- anv: Support 1MB AUX mapping (MTL)

- anv: Remove alignment to aux ratio on size of main surface

antonino (29):

- zink: don’t emulate edgeflags for patches

- zink: use correct primitives for passthrough gs with tess

- zink: add `single_sample` to fs key

- zink: add to multisample field to `zink_gfx_pipeline_state`

- zink: don’t render with multisampling when it is disabled

- zink/ci: remove xt_framebuffer_multisample-interpolation fail

- zink: fix pv mode lowring index calculation

- zink: use ring buffer to preserve last element

- zink: fix exit condition on pv emulation loop

- zink: fix line strip offsets in pv mode emulation

- nir/zink: use sysvals in `nir_create_passthrough_gs`

- zink: fix store subsitution in `lower_pv_mode_gs_store`

- zink: set when pipeline dirty flag when multisample changes

- Revert “zink: set when pipeline dirty flag when multisample changes”

- Revert “zink/ci: remove xt_framebuffer_multisample-interpolation fail”

- Revert “zink: don’t render with multisampling when it is disabled”

- Revert “zink: add to multisample field to `zink_gfx_pipeline_state`”

- Revert “zink: add `single_sample` to fs key”

- zink: take location_frac into account in pv emulation

- nir: use `nir_variable_clone` in `nir_create_passthrough_gs`

- nir: don’t create invalid inputs in `nir_create_passthrough_gs`

- zink: don’t replace non generated gs

- nir: handle interface blocks in `copy_vars`

- zink: handle interface blocks in `copy_vars`

- nir: make var arrays large enough in `nir_create_passthrough_gs`

- zink: don’t create invalid inputs in `zink_create_quads_emulation_gs`

- vulkan/wsi: add `vk_wsi_force_swapchain_to_current_extent` driconf

- drirc: enable `vk_wsi_force_swapchain_to_current_extent` for “The Talos Principle”

- drirc: enable `vk_wsi_force_swapchain_to_current_extent` for “Serious Sam Fusion”

i509VCB (1):

- docs/asahi: Add hardware glossary

lorn10 (1):

- docs: Update Clover’s env variable documentation

nihui (1):

- panvk: port panvk_logi to vk_logi

norablackcat (24):

- rusticl: implement cl_khr_pci_bus_info

- docs/rusticl: add Contributing section

- rusticl/types add ::new for cl_dev_idp_accel_props

- rusticl/api: add integer_dot_product api

- rusticl/clc add integer_dot_prod feature macros

- rusticl/kernel: remove nir_lower_pack pass

- rusticl/device: add cl_khr_integer_dot_product ext

- rusticl/program: fix clippy cast to the same type

- rusticl/types: fix clippy new() not returning Self

- rusticl/screen: implement uuid wrapper funcs

- rusticl/device: implement cl_khr_device_uuid

- rusticl/screen: fix driver_uuid on non x86

- rusticl: add cl_khr_create_command_queue

- docs/features update opencl extensions add rusticl

- docs: rusticl envvars list supported drivers

- rusticl/memory: fix clippy errors

- gallium: add PIPE_CAP_TIMER_RESOLUTION

- llvmpipe/screen: add PIPE_CAP_TIMER_RESOLUTION

- sofpipe/screen: add PIPE_CAP_TIMER_RESOLUTION

- crocus/screen: add PIPE_CAP_TIMER_RESOLUTION

- iris/screen: add PIPE_CAP_TIMER_RESOLUTION

- r600/pipe: add PIPE_CAP_TIMER_RESOLUTION

- radeonsi/get: add PIPE_CAP_TIMER_RESOLUTION

- zink/screen: add PIPE_CAP_TIMER_RESOLUTION

timmac-qmc (1):

- glsl: fix potential crash with DisableUniformArrayResize

xurui (6):

- zink: Some return values of malloc should be checked

- zink: Use malloc instead of ralloc

- zink: Use malloc to allocate libs

- zink: Add some printfs when initialization fails

- zink: Free the cdt when an error occurs

- zink: The result should be assigned a value when returned