summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--docs/relnotes/21.1.0.rst5564
-rw-r--r--docs/relnotes/new_features.txt11
2 files changed, 5564 insertions, 11 deletions
diff --git a/docs/relnotes/21.1.0.rst b/docs/relnotes/21.1.0.rst
new file mode 100644
index 00000000000..053aed09508
--- /dev/null
+++ b/docs/relnotes/21.1.0.rst
@@ -0,0 +1,5564 @@
+Mesa 21.1.0 Release Notes / 2021-05-05
+======================================
+
+Mesa 21.1.0 is a new development release. People who are concerned
+with stability and reliability should stick with a previous release or
+wait for Mesa 21.1.1.
+
+Mesa 21.1.0 implements the OpenGL 4.6 API, but the version reported by
+glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
+glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
+Some drivers don't support all the features required in OpenGL 4.6. OpenGL
+4.6 is **only** available if requested at context creation.
+Compatibility contexts may report a lower version depending on each driver.
+
+Mesa 21.1.0 implements the Vulkan 1.2 API, but the version reported by
+the apiVersion property of the VkPhysicalDeviceProperties struct
+depends on the particular driver being used.
+
+SHA256 checksum
+---------------
+
+::
+
+ TBD.
+
+
+New features
+------------
+
+- VK_KHR_workgroup_memory_explicit_layout on Intel, RADV
+
+- DRM format modifiers for AMD.
+
+- VK_KHR_zero_initialize_workgroup_memory on Intel, RADV
+
+- Zink exposes GL 4.6 and ES 3.1
+
+- GL_EXT_depth_bounds_test on softpipe, zink
+
+- GL_EXT_texture_filter_minmax on nvc0 (gm200+)
+
+- GL_ARB_texture_filter_minmax on nvc0 (gm200+)
+
+- GL_ARB_post_depth_coverage on zink
+
+- VK_KHR_copy_commands2 on lavapipe
+
+- lavapipe exposes Vulkan 1.1
+
+- VRS attachment on RADV
+
+- None
+
+
+Bug fixes
+---------
+
+- No sRGB capable visuals/fbconfigs reported in glx
+- Graphics corruption and GPU hang with RADV/LLVM
+- old kernels (4.19) support in radv
+- Elite Dangerous: Odyssey alpha crashes GPU on launch
+- CSGO: Some default variables can cause problems with trust mode
+- mesa git started to break wine + UnrealTournament.exe (old dx6 game)
+- SuperTuxKart artifacting on RK3399
+- [amdgpu]: Golf With Your Friends (431240): ERROR Waiting for fences timed out
+- Strange results when trying to read from VK_FORMAT_R64_SFLOAT in compute shader
+- anv: dEQP-VK.binding_model.buffer_device_address.set3.depth3.basessbo.convertcheck* slow
+- Iris doesn't support INTEL_performance_query anymore
+- RADV: TRUNC_COORD breaks gather operations
+- [RADV] corruption in avatar after dying in Heroes of the Storm
+- Metro Exodus crashing due to memory overflow
+- Sauerbraten shader rendering broken on RV530 (r300g)
+- texture glitches on CS:GO on Tiger Lake
+- Build fail due to "parameter name omitted" on Gallium Nine
+- Non-DRI builds broken by recent cleanups in Mesa core
+- Cinnamon core dump after installing latest oibaf mesa build (165a69d2)
+- yuv sampler lowering regression
+- anv: anv_descriptor_set_binding_layout::array_size overflows u16
+- RADV - Vertex explosion in DIRT 5 on RDNA2
+- ci: Use renderdoc from debian
+- ci: Use debian apitrace in x86 images
+- SIGSEV in v3d_emit_gl_shader_state
+- Xorg crash due to assertion failure after GPU soft reset
+- AMD hevc_vaapi ffmpeg encoding = wrong image width (48px black bar on the right)
+- panfrost: Page fault in glamor when running GIMP with X11 on Mali T860
+- gallium: python trace scripts need updating
+- EGL context creation fails when EGL_KHR_create_context_no_error is mentioned for OpenGL ES 1.1.
+- [spirv-fuzz] NIR validation failed after spirv_to_nir: error: nir_block_dominates
+- [bisected][regression][i965,iris] dEQP-VK.clipping.user_defined.clip_cull_distance.* failing on multiple platforms
+- No Mans Sky GPU hang on Radeon ACO
+- radeonsi: prusa-slicer crashes on mesa 21
+- anv: dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_i8vec3_requiredsubgroupsize16 fails on ICL, TGL
+- [radeonsi] Rendering of Firefox UI and website content corrupts randomly and after window geometry changes
+- max_binding inconsistency in vulkan descriptor set drivers
+- anv: conservative rasterization ext question mark
+- Unigine Tropics MSAA failure
+- warning: xnack 'Off' was requested for a processor that does not support it! [AMD VEGAM with LLVM 12.0.0]
+- Compiling some ARB assembly shaders leads to memory corruption
+- Specifying an explicit location for an array output messes up transform feedback
+- Request for VK_EXT_conservative_rasterization support on Anvil Intel driver for newest DXVK..
+- radv: dEQP regressions after addrlib update
+- Up to 30% performance drop (GLBenchmark, GfxBench)
+- DOTA 2 don't no longer starts since commit ad241b15a9e517dd4c4e8d7b1d5dab7c3a74b37c
+- Clover doesn't work for kmsro drivers
+- aco_tests isel.sparse.clause fails with llvm-12
+- util cpu detection breaks on 128-core AMD machines
+- util cpu detection breaks on 128-core AMD machines
+- Default GL_MAX_TEXTURE_BUFFER_SIZE very small
+- intel_nullhw.c:41:38: error: field ‘vtable’ has incomplete type
+- ACO error with GCN 1 GPU
+- kmsro advertises EGL_MESA_device_software
+- d3d12: Use ID3D12Device9::CreateCommandQueue1 when available
+- [RADV] Halo: The Master Chief Collection: Crash in Halo Reach Firefight
+- freedreno: use SAMPLE_COUNT to autotune sysmem vs gmem
+- freedreno: draw_vbo optimizations
+- [Bisected][RadeonSI] Mesa crashes when rendering with Eevee in Blender
+- subgroupBallotFindMSB() broken in RADV/ACO 20.3.4
+- nir_print: util_cpu_detect() is not called prior to _mesa_half_to_float()
+- turnip: buffer overflow read on dEQP-VK.ycbcr.query.levels.tess_eval.r8g8b8a8_unorm
+- RuneScape crashes GLOn12
+- d3d12: Surfaces need to use shareable descriptors
+- [RADV][RDNA2] Red Dead Redemption 2 image glitches during menu/overlay menu transitions
+- "unknown intrinsic" assertion triggered by multiview shader in non-multiview renderpass in Vulkan on intel
+- [i965][g965,ilk,g33,g45][bisected] dEQP-GLES2.functional.fbo.completeness.attachment_combinations.* failures
+- radv: VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT exposed for VK_FORMAT_R64_SFLOAT
+- anv: android building error after commit 4fb6c05
+- Compiling mesa with -Dtools=all throws deprecation warnings for intel tools
+- DXVK is broken in latest master
+- OpenCLOn12: Affinity Photo CL kernels produce invalid DXIL phis
+- nir -> tgsi conversion problem
+- [i965][g965,ilk,g33][bisected] fp16 enablement causes deqp test failures
+- mesa/st: Uniforms are not updated after lowering alpha test
+- [i965][bisected][regression] piglit failing primitive-restart-vbo_combined_vertex_and_index on multiple platforms
+- [RADV] Nioh 2 - The Complete Edition: "Bloom" on lights
+- [RADV] Oblivion: Poor Performance while MSAA Is Enabled
+- lima context state bugs with shader compile
+- [RADV][BISECTED] The Surge 2 (644830) - In-game assets do not render correctly since 20.3.4.
+- amd clang cannot convert ‘llvm::AtomicOrdering’ to ‘llvm::MaybeAlign’ build failure
+- [iris][icl,tgl][bisected][regression] failure on piglit.spec.arb_separate_shader_objects.programuniform coverage
+- opencl build fail
+- anv: dEQP-VK.glsl.builtin_var.fragcoord_msaa.* fails
+- Request - depth format feature SAMPLED_IMAGE_FILTER_LINEAR
+- "radeonsi: Check pitch and offset for validity." is a bad commit
+- Add OpenCL information to docs/features.txt
+- [regression] [bisected] piglit.spec.arb_framebuffer_object.fbo-drawbuffers-none gldrawpixels fails
+- RADV: robustBufferAccessUpdateAfterBind is not exposed
+- debug build compilation failed: inlining failed in call to ‘always_inline’ ‘_nir_visit_dest_indirect’: indirect function call with a yet undetermined callee
+- [RADV/DXVK] Shadow artifacts with different games
+- glxgears segfaults with classic i915
+- mesa_glthread=true Black Mesa
+- freedreno: rendering corruption in dead cells
+- ac/rgp: Android building error after commit 12515d6
+- d3d12: Assert failures & crashes on latest master
+- RADV/ACO - DCC causing garbled output on RX570
+- draw.c:121: _mesa_set_draw_vao: Assertion \`vao->_EnabledWithMapMode == _mesa_vao_enable_to_vp_inputs(vao->_AttributeMapMode, vao->Enabled)' failed.
+- ANV: Weird jitter in Witcher 1
+- RADV - Path of Exile: Shimmering outlines where water and other objects meet
+- ANV: Weird jitter in Witcher 1
+- ANV: Weird jitter in Witcher 1
+- meson: meson-built libraries have inconsistent compatability / current versions compared to older autotools-built libraries
+- device select layer breaks other layers
+- RADV: Extreme overhead in vkQueueSubmit
+- Graphical glitch of popupping missing texture on Mesa version >18.0.5 (Padoka Stable + Unstable/Oibaf/ubuntu-x-swat PPAs)
+- [regression] [bisected] dEQP-GLES2.functional.fbo.render.stencil_clear.rbo_rgb5_a1_stencil_index8 fails
+- occasional corruption issue with RADV in multiple games, disappears after using amdvlk
+- panfrost T860 regression
+- OpenGL on GMA4500MHD
+- piglit-replay: JUnit file contains wrong links to the tracie dashboard
+- R8 texture upload / corruption bug on Radeon RX 5700 XT
+- Ambient Occlusion in Two Point Hospital shows black spot artifacts
+- freedreno: async background shader compile
+- AMD VAAPI encoding has ceased to work
+- Rage 2: Visual corruption on in-game menu with ACO.
+- ACO doesn't correctly render map in Borderlands 3 vs. LLVM on 5700 XT
+- Invalid shader under panfrost/wayland
+- Strange Brigade refuses to load correctly since some recent commits
+- GLonD3D12: Crashes and suboptimal fallback
+- GLonD3D12: Crashes and suboptimal fallback
+- GLonD3D12: Crashes and suboptimal fallback
+- [RADV][REGRESSION][BISECTED] radv_GetMemoryFdPropertiesKHR returns no valid memory types for vaapi drmbuf
+- anv: vkQueueSubmit with waitSemaphore value of 0 hangs CPU
+- ttn: invalid base/range triggering nir_validate assertion
+- Sampling with mipmapped HiZ behaves unexpectedly on Gen9
+- zink: ARB_map_buffers issues on CI
+- u_upload_mgr: assert failure for large uploads
+- [RADV][ACO] Overwatch game crash: amd/compiler/aco_insert_exec_mask.cpp: Failed Assertion
+- PRIME render offloading broken
+- Use out encoding for float immediates
+- [RADV] Severe performance drop when exceeding VRAM compared to AMDVLK
+- LIBGL_ALWAYS_SOFTWARE=1 picks zink over actual software rasterizers
+- crash/assert in fd_set_viewport_states
+- RADV: Occlusion query hangs Big Navi GPU
+- "mesa: don't allocate matrices with malloc" cause eglCreateContext problem on android 7.
+- Metal Gear Solid V: The Phantom Pain: texture issues and vertex stretches
+- [iris and Navi 10] piglit.spec.arb_multi_draw_indirect.arb_draw_elements_base_vertex-multidrawelements -indirect regression
+- miscompiled compute shader loop on llvmpipe (and Iris)
+- ci: minio caching of arm64 artifacts for bare-metal
+- Graphics glitches after upgrade to mesa 20.3 on Khadas VIM3 Pro (Mali G52 GPU)
+- glthread crash in _mesa_glthread_upload
+- freedreno piglit flakes
+- RADV: NonUniform OpArrayLength on SSBO ignores NonUniform.
+- Iris driver causing graphics glitch in QEMU spice egl DMA-BUF
+- [RADV/ACO] Death Stranding cause a GPU hung (\*ERROR* Waiting for fences timed out!)
+- [TGL] Elder Scrolls Online misrenders
+- [ANV] System hang with GRVK demos
+- ci: Fractional deqp runs with valgrind enabled.
+- Regression: Segfault in cso_destroy_context() regression in 20.2
+- Rendering artifacts in Barn Finders specifically on Radeon Vega
+- Graphics regression in Assassins Creed Odyssey
+- [ANV] Compilation warnings
+- regression in !8152
+- [bdw][icl][iris] fails new test \`clearbuffer-depth-cs-probe`
+- ci: new traces runner needs dashboard links in the job log and junit
+- zink: car model corruption with game TORCS
+- glGetInternalformati64v(GL_TEXTURE_2D, GL_SR8_EXT, GL_COLOR_ENCODING) returns GL_NONE
+- Windows: 32-bit build is broken hard
+- ANV: Not handling separate stencil layouts properly
+- [Regression][Intel][OpenGL][Bisected] Copying whole 2D array texture failed on latest driver
+- turnip: dEQP-VK.tessellation.invariance.outer_triangle_set.quads_fractional_odd_spacing failure
+- i915 regressions bisected to "vbo/dlist: use a shared index buffer"
+- intel: Chrome OS "hatch" (cometlake) fails on dEQP-GLES31.functional.geometry_shading.layered.render_with_default_layer_cubemap
+- radv: dEQP-VK.sparse_resources.* failures on GFX9
+- freedreno: rendering corruption in War Robots
+- radv: dEQP-VK.sparse_resources.* failures on GFX9
+- Mesa 20.3.x crashes pidgin on AMD RX480
+- timespec_get used unconditionally / build fails when targeting macOS 10.14 or earlier
+- libunwind not located / used on macOS
+- libunwind not located / used on macOS
+- meson fails to locate libexpat on macOS
+- CarX Drift Racing 2 fails to start
+- Some games using FNA framework show blank screen
+- Intel Vulkan regression of angle_end2end_tests
+- Defer lavapipe warning to queue / command / swapchain buffer creation
+
+
+Changes
+-------
+
+Aaron Watry (2):
+
+- clover: implement CL_IMAGE_ELEMENT_SIZE
+- clover: implement CL_IMAGE_NUM_MIP_LEVELS and CL_IMAGE_NUM_SAMPLES
+
+Abhishek Kumar (2):
+
+- intel: change urb max shader geometry for CML GT1
+- intel: change urb max shader geometry for KBL GT1
+
+Adam Jackson (66):
+
+- docs: Mark some non-core zink extensions complete
+- docs: Mark some ES3 zink features complete
+- egl: Fix error string returned by eglQueryDeviceAttribEXT
+- zink: Factor out instance setup a bit more
+- osmesa: Pacify MSVC in the test code
+- glx: Fix GLX_SGI_video_sync for the no-current-drawable case
+- nir: Silence a warning at -Og
+- softfloat: Silence a warning at -Og
+- glsl: Silence a warning at -Og
+- glsl: Silence some warnings at -Og
+- glsl: Silence a warning at -Og
+- loader: Silence a warning at -Og
+- gallivm: Silence a warning at -Og
+- nir/ttn: Silence some warnings at -Og
+- vl: Silence a warning at -Og
+- gallivm: Silence a warning at -Og
+- nouveau: Silence some warnings at -Og
+- nouveau: Silence a warning at -Og
+- xlib: Fix build regression since 99e25d183d9
+- gallium/xlib: Partial fix for glXCopySubBufferMESA
+- mesa: Store depth bounds test bounds as GLclampd
+- softpipe: Fix depth comparison with float Z formats
+- softpipe: Implement GL_EXT_depth_bounds_test
+- docs: Document GL_EXT_depth_bounds_test
+- zink: Enable GL_EXT_depth_bounds_test
+- zink: more and better debug printfs
+- zink: Fix a thinko in instance setup
+- zink: Wire up ARB_post_depth_coverage
+- glx: Pull use_x_font out of the context vtable
+- glx: Pull get_proc_address out of the context vtable
+- glx: Remove windows' stub {bind,release}_text_image context hooks
+- glx/drisw: Implement WaitX and WaitGL
+- dri: Explicitly handle all the config attributes
+- dri: Fold attribMap into the code
+- mesa: Remove misc pbuffer attributes from struct gl_config
+- mesa: Remove the texture-from-pixmap state from struct gl_config
+- mesa: Remove transparency state from struct gl_config
+- mesa: Remove unused gl_config::level
+- mesa: Remove the pretense of aux buffer support
+- mesa: Stop tracking visual rating in gl_config
+- mesa: Remove redundant gl_config::sampleBuffers
+- ci: Bump the llvmpipe test timeout to 240 seconds
+- mesa/st: Remove unused ST_ATTACHMENT_SAMPLE
+- mesa/st: Check for successful framebuffer allocation in st_api_make_current
+- gallium: Remove curious st_visual::no_config
+- radeon: Exchange one curious idiom for another in radeonMakeCurrent
+- mesa: Remove unused _mesa_create_framebuffer
+- mesa: Make _mesa_initialize_visual return void
+- mesa: Remove unused gl_config::mutableRenderBuffer
+- mesa: gl_config::rgbBits should count alphaBits too
+- dri: Don't tie the accum buffer's alpha-ness to the color buffer's
+- glx: Stop pretending to validate the pbuffer fbconfig attributes
+- glx: Don't downgrade the visual caveat from the server
+- glx: Downgrade aux-buffer-ful fbconfigs
+- glx: Downgrade tfp mipmap-capable fbconfigs
+- glx: Downgrade sRGB-ful fbconfigs
+- dri: Use __DRI_BUFFER_COUNT consistently internally
+- glx: Default sRGBCapable in the same place as the other config attribs
+- glx: Clean up fbconfig attribute handling
+- glx: Remove some #if 0'd DRI config attribute fetch
+- glx: Don't pointlesly add -D_REENTRANT to libGL's cflags
+- glx: Move {Bind,Release}TexImage from context to screen vtable
+- glx: Be more robust against null fbconfigs
+- glx: Lift sending the MakeCurrent request to top-level code
+- Revert "glx: Lift sending the MakeCurrent request to top-level code"
+- gallium/xlib: Fix for recent gl_config changes
+
+Adrian Ratiu (1):
+
+- docs: docker: minor stale documentation fix
+
+Alejandro Piñeiro (36):
+
+- v3dv/pipeline: enable lower_add_sat NIR option
+- v3d/compiler: enable lower_add_sat NIR option
+- v3dv/descriptor: assert CrateDescriptorPool receives valid count values
+- v3dv: drop v3dv_resource definition
+- v3dv: properly handle two different binding points for cmd_buffers
+- v3dv: move to subclassing instance/physical device
+- v3dv: remove reference to v3dv_instance on v3dv_physical_device
+- v3dv: port to using common dispatch code.
+- v3dv: support for depthBiasClamp
+- v3dv/device: clarify that we can't expose textureCompressionBC
+- v3dv/formats: expose support for BC1-3 compressed formats
+- v3dv/meta_copy: get tlb compatible BC compressed formats for copies
+- v3dv/descriptor_set: don't free individual set if not allowed
+- v3dv: avoid some maybe-uninitialized warnings
+- v3dv/pipeline_cache: add more details when dumping debug info
+- v3dv/pipeline: remove pregenerate_variant
+- v3dv/pipeline: remove pipeline->use_push_constants
+- broadcom/compiler: add local_size in v3d_compute_prog_data
+- broadcom/compiler: add driver_location_map at vs prog data
+- v3dv/pipeline: use driver_location_map instead of nir utilities
+- v3dv/pipeline: move topology to pipeline
+- v3dv/pipeline: remove compiled_variant_count field
+- v3dv/pipeline: remove v3d_key from shader_variant and pipeline stage
+- v3dv: define broadcom shader stages
+- v3dv/pipeline: use broadcom_shader_stage as pipeline/variant stage type
+- v3dv/pipeline: try to get the shader variant directly from the cache
+- v3dv/pipeline: don't create a variant if compilation failed
+- v3dv/pipeline: compute sha1 for no-op fragment shaders correctly
+- v3dv/device: avoid unused-result warning with asprintf
+- v3dv: Add support for the on-disk shader cache
+- v3dv/cmd_buffer: return early for draw commands if there is nothing to draw
+- v3dv: define a default attribute values with float type
+- vulkan: track number of bindings instead of max binding for CreateDescriptorSetLayout
+- v3dv/device: do not compute per-pipeline limits multiplying per-stage
+- v3dv/device: fix and cleanup v3dv limits
+- v3dv/pipeline: reduce descriptor_map size
+
+Alexander Kapshuk (1):
+
+- frontends/va/image: Eliminate repetitive code on error paths
+
+Alexander Shi (1):
+
+- mesa: texparam: Add a clamping macro to handle out-of-range floats returned as integers.
+
+Alexander von Gluck IV (1):
+
+- egl/haiku: Fix ConfigID naming inline with mesa
+
+Alyssa Rosenzweig (345):
+
+- pan/bi: Fix assertion
+- pan/bi: Pipe scratch_size in from NIR
+- pan/bi: Fix 64-bit SSBO addresses
+- pan/bi: Fix RA of node 0
+- pan/bi: Fix printing of node 0
+- panfrost: Fix TLS sizing if cores are missing
+- panfrost: Allow waiting on slots 6/7 during preload
+- pan/bi: Add internal debug flag
+- pan/bi: Validate format 12 tuple count in disasm
+- pan/bi: Print FAU index in verbose mode
+- pan/bi: Refactor PC-relative printing
+- pan/bi: Lint for infinite loops
+- pan/bi: Print disasm/stats with DEBUG=internal
+- pan/bi: Fix IDLE register mode packing
+- pan/bi: Fix staging register packing
+- pan/bi: Fix dependency wait calculation
+- pan/bi: Fix M1/M2 decoding in disassembler
+- pan/bi: Pull out bi_count_read_registers helper
+- pan/bi: Move bi_next_clause to bir.c
+- pan/bi: Pass through wait_{6, 7} flags
+- pan/bi: Add dead branch elimination pass
+- pan/bi: Add "soft" mode to DCE
+- pan/bi: Add bi_{before,after}_clause cursors
+- pan/bi: Add bi_foreach_clause_in_block_rev
+- pan/bi: Add bi_foreach_instr_in_tuple helper
+- pan/bi: Add bi_foreach_instr_in_clause iterators
+- pan/bi: Add destination iterator macro
+- pan/bi: Don't open code bi_foreach_dest
+- pan/bi: Permit multiple destinations in RA
+- pan/bi: Add interference per clause
+- pan/bi: Implement spilling at the clause-level
+- pan/bi: Don't fill garbage
+- pan/bi: Add CUBEFACE pseudoinstruction
+- pan/bi: Print multiple destinations if needed
+- pan/bi: Move init_builder to common code
+- pan/bi: Add "word equivalence" relation for index
+- pan/bi: Stub out scheduler unit test
+- pan/bi: Factor nir_function_impl out of the context
+- pan/bi: Add bi_can_{fma, add} predicates
+- pan/bi: Annotate ISA.xml with 'last' parameter
+- pan/bi: Pipe last flag into opcode tables
+- pan/bi: Add bi_must_last predicate
+- pan/bi: Add bi_must_message predicate
+- pan/bi: Label table instructions
+- pan/bi: Emit branch and table bits in opcode table
+- pan/bi: Add various read predicates
+- pan/bi: Unit test bi_can_{fma, add}
+- pan/bi: Test bi_must_last
+- pan/bi: Test bi_must_message
+- pan/bi: Test read predicates
+- pan/bi: Move bi_constants to bifrost.h
+- pan/bi: Use canonical terminology for tuple
+- pan/bi: Use enum bifrost_message_type
+- pan/bi: Clarify tuple comment
+- pan/bi: Amend misleading comment
+- pan/bi: Pack multiple tuples in-memory
+- pan/bi: Add clause encodings as a table
+- pan/bi: Move bi_packed_tuple to compiler.h
+- pan/bi: Add bi_pack_literal
+- pan/bi: Add bi_pack_upper
+- pan/bi: Add bi_pack_tuple_bits
+- pan/bi: Add bi_pack_sync
+- pan/bi: Add tuple/embedded constant pack
+- pan/bi: Add subword 5/6 pack
+- pan/bi: Add subword 4 or 7 pack
+- pan/bi: Add pack_format helper
+- pan/bi: Calculate pos for constant packing
+- pan/bi: Pack multiple tuples per clause
+- pan/bi: Add packing unit test group
+- pan/bi: Test pack_literal
+- pan/bi: Test pack_upper
+- pan/bi: Test pack_tuple_bits
+- pan/bi: Test pack_sync
+- pan/bi: Add packing format tests
+- pan/decode: Be explicit when printing invocations
+- pan/decode: Remove tiler size checks
+- pan/decode: Remove dependency of decoder on the encoder
+- pan/decode: Deduplicate SFBD blend printing
+- pan/decode: Deduplicate shader property printing
+- pan/decode: Remove unused MEMORY_PROP macro
+- pan/decode: Simplify tiler printing
+- pan/decode: Remove pandecode_prop
+- pan/decode: Remove unused disasm stats
+- pan/decode: Remove mesa header dependencies
+- pan/mdg: Drop unused stage parameter to disassembler
+- pan/decode: Remove tile range validation
+- pan/decode: Prefer sizeof to ARRAY_SIZE for char
+- nir/lower_io: Fix grammar errors
+- pan/bi: Fix NULL deref with empty shader
+- pan/bi: Add side_effects helper
+- pan/bi: Respect side effects in DCE
+- pan/bi: Implement AXCHG
+- pan/bi: Implement ACMPXCHG
+- pan/bi: Add bi_fmul_f32 convenience method
+- pan/bi: Fix FLOG_TABLE modifier handling
+- pan/bi: Lower frcp to Newton-Raphson
+- pan/bi: Lower frsq to Newton-Raphson
+- pan/bi: Lower FEXP2 with a table
+- pan/bi: Lower flog2 to a table and polynomial
+- pan/bi: Rename NO_FP32_TRANSCENDENTALS quirk
+- pan/bi: Fix bi quirks detection
+- pan/bi: Lower FP32 transcendentals where required
+- pan/bi: Lower transcendentals on G71
+- pan/bi: Print program size in shader-db
+- pan/bi: Cleanup terminal block check
+- pan/bi: Dead code eliminate per-channel
+- pan/bi: Include ATEST datum in the instruction
+- pan/bi: Add scheduler data structures
+- pan/bi: Add cubeface lowering
+- pan/bi: Flatten block lists
+- pan/bi: Stub worklist routines
+- pan/bi: Add constant count estimates to scheduler
+- pan/bi: Add FAU update helper
+- pan/bi: Add bi_tuple_is_new_src
+- pan/bi: Add bi_count_succ_reads helper
+- pan/bi: Validate reads_t
+- pan/bi: Add T0/T1 constraint check
+- pan/bi: Add writes_reg predicate
+- pan/bi: Add bi_instr_schedulable predicate
+- pan/bi: Choose instructions to schedule
+- pan/bi: Destructively schedule a single instruction
+- pan/bi: Add passthrough register rewriting helper
+- pan/bi: Extract bi_ec0_packed helper
+- pan/bi: Add bi_foreach_instr_and_src_in_tuple
+- pan/bi: Move bi_constant_field to bifrost.h
+- pan/bi: Add pcrel_idx to bi_clause
+- pan/bi: Derive M0 from pcrel_idx while packing
+- pan/bi: Add trivial rewrite helpers
+- pan/bi: Add constant to passthrough rewrite
+- pan/bi: Add constant state constructor
+- pan/bi: Add constant merging routines
+- pan/bi: Add constant modifier handling
+- pan/bi: Schedule blocks
+- pan/bi: Switch to new scheduler
+- pan/bi: Remove old FAU assignment code
+- pan/bi: Remove older cube map lowering
+- pan/bi: Add nosched debug option
+- pan/bi: Fix 'last tuple' for terminal-NOP clauses
+- pan/bi: Fix 2-write pseudo op scheduling
+- pan/mdg: Fix multithreaded shader-db
+- pan/mdg: Add MIDGARD_MESA_DEBUG=inorder option
+- pan/mdg: Optimize UBO offset calculations
+- pan/mdg: Set lower_uniforms_to_ubo
+- panfrost: Fix race condition in UBO mapping to CPU
+- panfrost: Respect buffer_offset when mapping to CPU
+- panfrost: Move sysvals to dedicated UBO
+- panfrost: Don't truncate uniform_count
+- panfrost: Add UBO push data structure
+- panfrost: Push uniforms required by the program
+- panfrost: Set FAU count based on program->push
+- panfrost: Don't store uniform_count on Midgard
+- pan/mdg: Update UBO promotion comment
+- pan/mdg: Push uniforms based on UBO analysis
+- pan/bi: Fix multithreaded shader-db
+- pan/bi: Add bi_replace_index helper
+- pan/bi: Add bi_is_ssa helper
+- pan/bi: Print FAU uniforms in IR
+- pan/bi: Generalize bi_update_fau with fast zero
+- pan/bi: Handle modifiers in rewrite_fau_to_pass
+- pan/bi: Rework FAU lowering
+- pan/bi: Simplify derivative lowering
+- pan/bi: Add SSA-based scalar copy propagation
+- pan/bi: Push UBOs on Bifrost
+- panfrost: Enable ES3 conformant floating-point
+- compiler, nir: Add and set barrier metadata
+- panfrost: Set barriers flag for compute shaders
+- panfrost: Pass is_blit flag around
+- pan/bi: Skip ATEST for colour blit shaders
+- panfrost: Fake shader images for bifrost+deqp
+- pan/bi: Fix jumps to terminal block again
+- pan/bi: Fix empty shader handling
+- nir: Add sample_positions_pan intrinsic
+- pan/decode: Cleanup sample locations decode
+- pan/decode: Only print local storage for vertex jobs
+- panfrost: Preload sample mask if needed
+- panfrost: Add sample positions sysval
+- panfrost: Push sample positions sysval for Midgard
+- panfrost: Refactor sample shading state
+- panfrost: Respect info.fs.uses_sample_shading
+- panfrost: Add panfrost_sample_pattern helper
+- panfrost: Set tiler descriptor sampler pattern
+- panfrost: Generalize MSAA handling
+- panfrost: Don't set REQ_MSAA in pan_mfbd
+- panfrost: Don't use PAN_REQ_MSAA in SFBD
+- panfrost: Remove PAN_REQ_MSAA
+- panfrost: Remove PAN_REQ_DEPTH_WRITE
+- panfrost: Remove batch_is_scanout
+- panfrost: Set sample count/pattern for tiler FBD
+- panfrost: Upload sample positions on device init
+- panfrost: Use sample location LUT
+- panfrost: Ensure open_device has pandecode initialized
+- panfrost: Advertise MSAA 8x and 16x
+- panfrost: Implement get_sample_position
+- panfrost: Overhaul sysval handling
+- panfrost: Add MULTISAMPLED sysval
+- pan/mdg: Assert on bad 64-bit swizzle in disassembly
+- pan/mdg: Remove unused pack_unorm_4x8 lowering
+- pan/mdg: Lower bitfield instructions
+- pan/mdg: Rename bitcount8 to popcnt, fixing the unit
+- pan/mdg: Implement uclz
+- pan/mdg: Lower ufind_msb, poorly
+- pan/mdg: Stub load_barycentric_sample
+- pan/mdg: Lower stores from helpers
+- pan/bi: Remove redundant TEXC opcode check
+- pan/bi: Implement texture gathers
+- pan/bi: Lower bitfield inserts/extracts
+- pan/bi: Implement bitfield_reverse
+- pan/bi: Implement ufind_msb
+- pan/bi: Lower ifind_msb
+- pan/bi: Fix gl_SampleID read
+- pan/bi: Implement load_sample_mask_in
+- pan/bi: Implement nir_intrinsic_load_sample_positions_pan
+- pan/bi: Decouple sysval loading from NIR
+- pan/bi: Implement coverage mask updates
+- pan/{mdg, bi}: Lower load_helper_invocation
+- pan/{mdg, bi}: Lower load_sample_pos
+- panfrost: Simplify bind_compute_state
+- panfrost: Remove stale TODOs
+- panfrost: Assert on indirect compute shaders
+- panfrost: Advertise SAMPLE_SHADING
+- panfrost: Bump max SSBO count
+- panfrost: Bump advertised ESSL feature level
+- panfrost: Advertise OES_standard_derivatives
+- docs/features: Mark more TBO exts done on panfrost
+- docs/features: Mark some ES3.1 done on Panfrost
+- docs/features: Mark sample shading done on Panfrost
+- docs/features: gl_HelperInvocation on Panfrost
+- nir: Fix grammar error
+- panfrost: Fix uniform_count on Midgard
+- pan/bi: Stub scoreboarding
+- pan/bi: Implement barriers
+- pan/decode: Fix tiler printing on Bifrost
+- pan/decode: Pretty print 22-bit pixel formats
+- pan/decode: Disambiguate border colours
+- panfrost: Label groups in GenXML
+- panfrost: Track coverage, early fragment tests
+- panfrost: Flesh out pixel kill / zs update
+- panfrost: Handle PIPE_FORMAT_NONE as 'constant'
+- panfrost: Flesh out allow_forward_pixel_to_kill check
+- panfrost: Export bifrost_get_blend_desc with type size
+- panfrost: Add RT conversion sysval
+- panfrost: Fix NULL deref for an empty frag shader
+- panfrost: Spell fix
+- panfrost: Take panfrost_dev for AFBC selection
+- panfrost: Set border colour on Bifrost sampler
+- panfrost: Remove useless check
+- pan/bi: Fix RA of node 0 again
+- pan/bi: Don't inline 64-bit constants
+- pan/bi: Fix LD_GCLK staging count
+- pan/bi: Don't read alpha out of bounds
+- pan/bi: Allow @rNULL with tied operands
+- pan/bi: Add SEG_ADD.i64 pseudoinstruction
+- pan/bi: Add 32-bit atomic pseudoinstruction
+- pan/bi: Lower atomic pseudo-instructions
+- pan/bi: Extract bi_atom_opc from NIR intrinsic
+- pan/bi: Add ATOM_C1 promotion check
+- pan/bi: Handle computational atomics
+- pan/bi: Materialize \*DTSEL_IMM in the scheduler
+- pan/bi: Implement image_atomic_exchange
+- pan/bi: Implement image_atomic_comp_swap
+- pan/bi: Implement shader_clock intrinsic
+- pan/bi: Fix blend shaders using LD_TILE with MRT
+- pan/bi: Flesh out LD_TILE emit
+- pan/bi: Elucidate slot 6/7 operation
+- pan/bi: Preload sample ID for sample shading
+- pan/bi: Implement interpolateAtSample
+- pan/bi: Add imm_f16 helper
+- pan/bi: Implement interpolateAtOffset
+- pan/bi: Allow dynamically uniform tex indices
+- pan/bi: Use explicit move even for RT#0 of MRT
+- panfrost: Comment on state of ARB_shader_clock
+- panfrost: Advertise FRAMEBUFFER_NO_ATTACHMENTS
+- docs/features: Mark atomics/images done on Bifrost
+- panfrost/ci: Mark flaky test
+- gallium/tessellator: Remove XBOX 360 code
+- gallium/tessellator: Remove unused includes
+- gallium/tessellator: Rename D3D11 defines
+- pan/bi: Fix more jumps to terminal blocks
+- pan/bi: Optimize out redundant jumps to #0x0
+- pan/bi: Fix elimination of repeated branches
+- panfrost: Fix infinite loop spilling
+- panfrost: Fix NULL dereference adding cbuf to batch
+- panfrost: Remove redundant NULL check
+- panfrost: Fix NULL deref in pan_mfbd.c
+- panfrost: Fix NULL derefs in pan_cmdstream.c
+- panfrost: Fix NULL deref in pan_sfbd
+- panfrost: Raise TEXTURE_BUFFER_OFFSET_ALIGNMENT
+- panfrost: Hide MSAA 8x/16x support
+- panfrost: Fix UNORM 16 rendering
+- panfrost: Reinterpret format for reload blits
+- panfrost: Fix typo in midgard.xml
+- panfrost: Don't advertise OES_copy_image
+- pan/bi: Use nir_opt_sink/move for constants
+- pan/bi: Reduce liveness calculations in DCE
+- pan/bi: Inline \`bytemask of read components`
+- pan/bi: Mark branches as having side effects
+- pan/bi: Mark DISCARD as having side effects
+- pan/bi: Make bi_writemask take a destination
+- pan/bi: Allow spilling with multiple destinations
+- pan/bi: Annotate instructions by destination count
+- pan/bi: Adapt builder to dest count
+- pan/bi: Remove unused definitions
+- pan/bi: Do copyprop in linear-time
+- panfrost/lcra: Fix constraint counting
+- pan/bi: Use replace_index in more places
+- pan/bi: Allow negating constants
+- pan/bi: Implement fsin/fcos
+- pan/bi: Mark message-passing sources/dests live
+- pan/bi: Set clause_state.message conservatively
+- pan/bi: Treat +DISCARD.f32 as message-passing
+- nir/lower_viewport_transform: Allow geom/tess
+- pan/bi: Implement u{add, sub}_sat
+- nir: Unify memory atomics
+- meson: Remove kmsro from gallium-drivers
+- pan/bi: Document register conventions
+- pan/bi: Add bi_foreach_block_rev
+- pan/bi: Handle 16-bit blend sr_count
+- pan/bi: Only run copyprop once
+- pan/bi: Only run DCE once
+- pan/bi: Remove TODO: RA warnings
+- pan/bi: Remove stale todo/assert
+- panfrost: Deduplicate UBO count assignment
+- panfrost: Deduplicate Bifrost fau_count
+- panfrost: Only check blend work count on midgard
+- vulkan: Deduplicate mesa stage conversion
+- pan/bi: Enable all nir_opt_move/sink optimizations
+- pan/bi: Split writemasks for memory stores
+- pan/bi: Lower large arrays to scratch
+- pan/bi: Add bi_swz_16 helper
+- pan/bi: Optimize MKVEC.v2i16 generation
+- pan/bi: Lower swizzles
+- pan/bi: Fill in some more conversions
+- pan/bi: Generalize f2i16, f2u16
+- pan/bi: Remove conversion lowering
+- nir: Add nir_type_convert
+- nir: Add {i2f, u2f, f2i, f2u} helpers
+- nir/lower_idiv: Convert to lower_instructions
+- nir/lower_idiv: Factor out numer/denom load
+- nir/lower_idiv: Add 8-bit and 16-bit lowering path
+- pan/bi: Determine block successors correctly
+- panfrost: Fix AFBC body_size for shared resources
+- panfrost: Enable AFBC buffer sharing
+- nir: Add varying precision linking helper (v2)
+- docs: Add some notes on building for macOS
+- panfrost: Fix formats converting uninit from AFBC
+
+Andreas Bergmeier (1):
+
+- v3dv: Output a message if file open fails in physical_device_init
+
+Andres Gomez (29):
+
+- ci: recover tracie dashboard URLs for failing traces
+- ci: correct the trace image URLs in the piglit summary
+- ci: make piglit runner less noisy and show a better failure message
+- ci: clean paths used in the piglit runner
+- ci: correct piglit's HTML summary location for artifacts upload
+- ci: make sure piglit's artifacts are not overwritten
+- ci: correct artifacts location for piglit's runner messages
+- ci: tracie dashboard URLs only in the failure after the testcase
+- ci: piglit runner colors diff output on failures
+- ci: remove pytest since we don't need it any more
+- ci: only install piglit dependencies when installing piglit
+- ci: build gfxreconstruct v0.9.5
+- ci: add libdrm to the x86_test-vk container
+- .mailmap: colapse duplicates for Timothy Arceri
+- .mailmap: resolve duplicates for Icecream95
+- .mailmap: resolve duplicates for Christopher Li
+- .mailmap: resolve duplicates for Emmanuel Vadot
+- .mailmap: resolve duplicates for Indrajit Das
+- .mailmap: resolve duplicates for James Xiong
+- .mailmap: resolve duplicates for Jan Zielinski
+- .mailmap: resolve duplicates for Lin Johnson
+- .mailmap: resolve duplicates for Mark Menzynski
+- .mailmap: resolve duplicates for Matthias Hopf
+- .mailmap: resolve duplicates for Matthias Lorenz
+- .mailmap: resolve duplicates for Maya Rashish
+- .mailmap: resolve duplicates for Mun Gwan-gyeong
+- .mailmap: resolve duplicates for Satyeshwar Singh
+- .mailmap: resolve duplicates for Yogesh Mohan Marimuthu
+- .mailmap: add an alias for Eleni Maria Stea
+
+Andrew McMahon (1):
+
+- util: add mesa_glthread for Half Life 2 and Black Mesa.
+
+Andrii Simiklit (7):
+
+- st/mesa: fix pbo upload/download for arrays of textures with only 1 layer
+- iris: don't emit IRIS_DIRTY_VF depending on trash in restart_index
+- mesa: ensure parameter list capacity before associating uniform storage
+- glsl/linker: Fix xfb stride alignment for buffers containing 64bit types
+- gitlab-ci: remove fixed tests
+- spirv: repair ssa defs for switchs with only default case
+- nir/spirv: remove unused fields from \`vtn_builder`
+
+Antonio Caggiano (4):
+
+- zink: check shader stencil output
+- zink: support stencil-export
+- zink: fix destroy batch
+- ci: Use lock file to build deqp-runner
+
+Anuj Phogat (32):
+
+- intel/anv: Fix condition to set MipModeFilter for YUV surface
+- intel/anv: Fix condition for planar yuv surface
+- intel: Rename files with gen\_ prefix in common code to intel\_
+- intel: Rename "gen\_" prefix used in common code to "intel\_"
+- intel: Fix broken alignment due to gen\_ prefix renaming
+- intel: Rename "GEN\_" prefix used in common code to "INTEL\_"
+- i965: Remove blank line at EOF
+- i965: Rename files with "intel\_" prefix to "brw\_"
+- intel/isl: Drop intel\_ prefix in function names
+- anv: Remove redundant #if checks
+- intel: Remove GEN_IS_HASWELL macro
+- intel: Simplify version checks involving haswell
+- intel: Remove GEN_IS_G4X macro
+- intel: Simplify few version checks involving G4X
+- intel: Rename GEN_VERSIONx10 macro to GFX_VERx10
+- intel: Rename GEN_GEN macro to GFX_VER
+- intel: Rename ISL_DEV_GEN to ISL_GFX_VER
+- intel: Rename genx10 field in gen_device_info struct to verx10
+- intel: Rename gen field in gen_device_info struct to ver
+- intel: Rename genx keyword in filenames to gfxx
+- intel: Rename GENx prefix in macros to GFXx in build files
+- intel: Rename GENx prefix in macros to GFXx in source files
+- intel: Rename genx keyword to gfxx in build files
+- intel: Rename genx keyword to gfxx in source files
+- intel: Rename Genx keyword to Gfxx
+- intel: Rename GENx keyword to GFXx
+- intel: Rename IS_GEN* macros to IS_GFX_VER*
+- intel: Make line wrapping changes due to IS_GFX_VER_BETWEEN
+- intel: Remove unused MAKE_GEN macro
+- intel: Rename GEN_{ALL, LT, ..} macros to GFX_{ALL, LT, ..}
+- intel: Rename GEN:BUG:### to Wa_###
+- intel: Rename WA_### to Wa_###
+
+Arcady Goldmints-Orlov (14):
+
+- v3dv: Fix uninitialized variable warnings
+- nir: add more intrinsics to divergence analysis
+- nir: handle v3d intrinsics in divergence analysis
+- nir: store the results of divergence analysis on loops
+- broadcom/compiler: Use ANYA for branches in uniform ifs
+- broadcom/compiler: Emit uniform loops using uniform control flow
+- broadcom/compiler: Enable PER_QUAD TMU access only in uniform control flow
+- v3dv: Only lower local arrays of size up to 2 to if-chains
+- broadcom/compiler: improve generation of if conditions
+- Revert "broadcom/compiler: improve generation of if conditions"
+- v3dv: initialize render_fd at the top of physical_device_init
+- broadcom/compiler: Add a v3d_compile argument to vir_set_[pu]f
+- broadcom/compiler: Skip bool_to_cond where possible
+- broadcom/compiler: Merge instructions more efficiently
+
+Arno Messiaen (1):
+
+- lima/ppir: increase usage of pipeline regs
+
+Axel Davy (76):
+
+- st/nine: Reduce system memory allocated by D3DUSAGE_AUTOGENMIPMAP
+- st/nine: Do not allow depth buffer render targets
+- st/nine: Clamp GetAvailableTextureMem
+- st/nine: Unmap buffers after full unlock
+- st/nine: Track formats compatible with FETCH4
+- st/nine: Implement experimental FETCH4
+- st/nine: Enable DF24 support
+- st/nine: Add new debug and error checks
+- st/nine: Refactor ht_guid_delete
+- st/nine: Protect \*PrivateData also for Volumes
+- st/nine: Fix leak at device destruction
+- driconf: Rename csmt_int back to csmt_force
+- st/nine: Simplify checks for driconf options
+- st/nine: Add new function to know if we are the worker
+- st/nine: Add RAM memory manager for textures
+- st/nine: Use the texture memory helper
+- st/nine: Control the memfd virtual limit
+- st/nine: Add driconf option to limit texture memory
+- st/nine: Set default dynamic_texture_workaround to true
+- st/nine: Check memfd_create support
+- st/nine: Fix compilation issue in nine_debug
+- st/nine: Optimize EndScene
+- st/nine: Implement SYSTEMMEM buffers same as MANAGED
+- st/nine: Refactor DrawPrimitiveUp
+- st/nine: Optimize DrawPrimitiveUp
+- st/nine: Use correct bind flag at buffer creation
+- gallium/util: Add new u_box helpers
+- st/nine: Track pending MANAGED buffer uploads
+- st/nine: Optimize dynamic systemmem buffers
+- st/nine: Force DYNAMIC SYSTEMMEM for sw vertex processing
+- st/nine: Always use DYNAMIC with SYSTEMMEM
+- st/nine: Use stream_uploader for bad cases of systemmem
+- st/nine: detect worker threads syncs for systemmem
+- radeonsi: Limit the size of the in-memory shader cache
+- radeonsi: fix leak when the in-memory cache is full
+- st/nine: Disable fpu exceptions during init
+- st/nine: Fix crash on texture creation failure
+- st/nine: Fix cubetexture early destruction
+- st/nine: Add missing breaks
+- st/nine: Fix invalid NULL check
+- st/nine: Prevent use after free on dtor
+- st/nine: Fix reading invalid pointer
+- st/nine: Fix compilation warnings
+- st/nine: Fix read outside bounds for some textures
+- st/nine: Fix value of pipe_draw_info's max_index vertex
+- st/nine: Prevent negative reference count
+- st/nine: Improve Surface GetContainer
+- st/nine: Fix alpha to coverage states
+- st/nine: Enable multisampling also without depth buffer
+- st/nine: Handle D3DFMT_NULL multisampling
+- st/nine: Remove errors on unsupported lock flags
+- st/nine: Increase number of constants of vs1_sw
+- st/nine: Ignore swizzle on samplers
+- st/nine: Clamp max_anisotropy
+- st/nine: Refuse depth buffers as rendertargets
+- st/nine: Fix ps ff BLENDTEXTUREALPHA
+- st/nine: Fix ff has_aNrm computation
+- st/nine: Catch redundant scissor and viewport settings
+- st/nine: Pseudo implement set/getClipstatus
+- st/nine: Improve Reset on Ex devices
+- st/nine: Pseudo implement Create*Ex functions
+- st/nine: Complete \*Ex stubs
+- st/nine: Add logging to Ex function
+- st/nine: Have NOOVERWRITE win over DISCARD
+- st/nine: Do not memset buffers twice
+- st/nine: Add fallback for YUV formats
+- st/nine: Use PIPE_MAP_ONCE for persistent buffers
+- st/nine: Disable buffer_upload when csmt is off
+- st/nine: Allow to override the vram size
+- st/nine: Make it optional to use a sw renderer
+- st/nine: Lower texture_memory_limit default
+- st/nine: Bump num of backbuffers for tearfree thread_submit
+- st/nine: Improve performance with thread_submit
+- st/nine: Default thread_submit to true
+- st/nine: Default tearfree_discard to true
+- st/nine: Fix compilation error on non-x86 platforms
+
+Bas Nieuwenhuizen (87):
+
+- ac/surface: Fix GFX9 sparse mip info.
+- radv: Do not use a pipe offset for aliased sparse images.
+- radv: Add a trivial implementation of VK_KHR_deferred_host_operation
+- radv: Use stricter HW resolve swizzle compat check.
+- radv: Expose VK_KHR_workgroup_memory_explicit_layout.
+- radv: Do not hash vk_object_base in descriptor set layout.
+- amd/common: Add modifier size helper.
+- radv: Extract DCC format support handling.
+- radv: Use the surface offset from ac_surface instead of a plane offset.
+- radv: Don't relayout images with modifiers.
+- radv: Add format modifier format queries.
+- radv: Add drm format modifier queries.
+- radv: Add image layout with drm format modifiers.
+- radv: Enable DRM format modifiers on GFX9+.
+- radv: Enable modifiers with the WSI.
+- radv: Add modifier fails for CTS bug.
+- radv: Fix assert.
+- radv: Implement VK_KHR_zero_initialize_workgroup_memory.
+- radv: Improve spilling on discrete GPUs.
+- radv: Fix vram override with fully visible VRAM.
+- radv: Remove custom icd json generation.
+- radv: Define supported extensions in C.
+- radv: Ignore WC flags for VRAM.
+- radv: Determine swizzles correctly.
+- radv: Add plane width/height helpers.
+- radv: Use u_format helpers when possible.
+- radv: Remove VK_SWIZZLE_*.
+- radv: Do no use vk_format for getting divisors.
+- radv: Do not use generated table for plane formats.
+- radv: Stop checking for MULTIPLANE layout.
+- radv: Stop using plane_count.
+- radv: Only support format with a PIPE_FORMAT.
+- radv: Start using util_format_description for everything.
+- radv: Remove the format table.
+- radv: Remove vk_format_has_stencil/depth helpers.
+- radv: Properly handle modifier import failure.
+- radv: Do pipe misalignment check per plane.
+- radv: Don't use dedicated memory info to indicate sharing.
+- vulkan/device_select: Stop using device properties 2.
+- amd/common: constify ac_surface_set_umd_metata.
+- radv: Handle UMD metadata on import.
+- radv: Use shared code for setting opaque metadata.
+- amd/common: Add retile map size helper.
+- radv: Implement initialization of displayable DCC.
+- radv: Implement displayable DCC retiling.
+- radv: Add DCC info to the metadata.
+- radv: Use ac_surface DCC settings for shareable images.
+- radv: Enable displayable DCC.
+- radv: Disable displayable DCC for GFX8 properly.
+- ac/rgp: Only report double the prims per clock on GFX10.
+- radv: Expose robustBufferAccessUpdateAfterBind correctly.
+- frontends/va: Use correct size for secondary planes.
+- radv: Enable linear sampling for depth textures.
+- radv: Add sam option.
+- radv: Add nodisplaydcc option.
+- radv: Use correct DCC compressed block size for sampling.
+- radv: Dedupe winsyses per device.
+- radv: Allow extra planes for DCC.
+- radv: Enable sharing with DCC with modifiers.
+- radv: Ensure we never decompress or FCE read-only textures.
+- radv: Allow DCC for images with modifiers that are read-only.
+- radv: Use 8x8 meta compute workgroups.
+- radv: Enable DCC for image stores on GFX10.
+- radv: Only set WRITE_COMPRESS_ENABLE on supported HW.
+- vulkan: Fix descriptor set creation with zero bindings.
+- lavapipe: Free sorted descriptor array.
+- zink: Remove initialization of some arrays
+- zink: Only set the needed number of scissors.
+- radv: Flush caches for shader read operations.
+- nir: Fix shader calls with nir_opt_dead_write_vars.
+- nir: Extract shader_info->cs.shared_size out of union.
+- nir: Remove nir_shader->shared_size.
+- nir: Do not reset shared_size in nir_lower_io.
+- radv: Support DCC without a fast clear value.
+- radv: Support DCC without DCC/FCE predicates.
+- radv: Add retiling for foreign queues.
+- radv: Support DCC modifiers fully.
+- radv: Add clang-format for AMD code.
+- radv: Format.
+- radv: Update editorconfig.
+- radv: Re-enable retiling.
+- radv: Refactor cs_domain to be a winsys function.
+- radv: Use VRAM cmdbuffers in more situations.
+- radv/winsys: Remove use_local_bos
+- radv: Fix memory leak on descriptor pool reset with layout_size=0.
+- amd/common: Use cap to test kernel modifier support.
+- radv: Only require DRM 3.23.
+
+Bastian Beranek (1):
+
+- glx: Assign unique serial number to GLXBadFBConfig error
+
+Ben Niu (1):
+
+- util: When building 'ARM64EC', don't use x64 intrinsics which need to be emulated
+
+Benjamin Tissoires (3):
+
+- CI: windows: augment the timeout of building the windows container
+- CI: windows: split the layers to meet new registry requirements
+- CI: windows: Force using LLVM 12
+
+BillKristiansen (1):
+
+- d3d12: fix for upside-down multisample stencil blit
+
+Boris Brezillon (91):
+
+- panfrost: Don't skip the test with a 4k shader
+- panfrost: Fix tiler job injection (again)
+- panfrost: Get rid of IS_BIFROST
+- panfrost: Don't memset the last attribute buffer entry twice
+- panfrost: Only allocate the extra attribute buffer entry on Bifrost
+- panfrost: Set attribs and attrib_bufs to NULL when attrib_count = 0
+- panfrost: Rename and move pan_render_condition_check()
+- panfrost: Use dev->arch where appropriate
+- panfrost: Add a panfrost_compile_shader() helper
+- panfrost: Update ctx->batch when a fresh batch is requested
+- panfrost: Fix a polygon list corruption in the multi-context case
+- panfrost: Don't add the tiler BO when it's not accessed
+- pan/bi: Add an is_terminal_block() helper
+- pan/bi: Make sure we never branch to an non-existing clause
+- pan/bi: Add uclz() support
+- pan/bi: Support bit_count()
+- panfrost: Use panfrost_get_shader_options() in panfrost_build_blit_shader()
+- panfrost: Hide backend compiler internals
+- panfrost: Prefix shader related helpers with pan_shader\_
+- panfrost: Move sysval_to_id out of panfrost_sysvals
+- panfrost: Keep the compiler inputs in the context
+- panfrost: Move the shader compilation logic out of the gallium driver
+- panfrost: Provide a helper to prepare the shader related parts of an RSD
+- panfrost: Use the pan_shader_prepare_rsd() helper
+- panfrost: Rename pan_blend.h into pan_blend_cso.h
+- panfrost: Move the blend lowering code out of the gallium driver
+- panfrost: Move the blend logic out of the gallium driver
+- Revert "pan/bi: Optimize out redundant jumps to #0x0"
+- pan/bi: Move int64 lowering before idiv lowering
+- panfrost: Split the direct and indirect draw logic
+- panfrost: Add a parameter to suppress next job prefetching
+- panfrost: Allow passing an explicit global dependency when queuing a job
+- panfrost: Add a pan_section_offset() helper
+- panfrost: Move pan_special_varying definition to pan_encoder.h
+- pan/bi: Extend the bi_builder to support type variants correctly
+- panfrost: Add a knob to disable the UBO -> push constants optimization
+- panfrost: Allow passing an explicit UBO index for the sysval UBO
+- panfrost: Print the correct UBO size when dumping UBO information
+- panfrost: Don't count the special vertex/instance ID attributes on Bifrost
+- panfrost: Split the sampler and texture count
+- panfrost: Expose panfrost_modifier_to_layout()
+- pan/gen_pack: Parse alignment requirements
+- panfrost: Specify descriptor alignment requirements
+- panfrost: Provide various helpers to simplify descriptor allocation
+- panfrost: Define the Surface and Surface-with-stride descriptors
+- panfrost: Emit surface descriptors with pan_pack()
+- panfrost: Use the descriptor allocators where appropriate
+- panfrost: Get rid of panfrost_pool_alloc()
+- panfrost: Move the blend shader cache at the device level
+- panfrost: Use the blend shader cache attached to the device
+- panfrost: Don't reserve space in the color buffer for disabled RTs
+- panfrost: Skip disabled RTs when selecting a RT for transaction elimination
+- panfrost: Stop including pan_device.h from pan_bo.h
+- panfrost: Add helpers to support indirect draws
+- panfrost: Prepare things for indirect draws
+- panfrost: Hook up indirect draw support
+- panfrost: s/panfrost_slice/pan_image_slice_layout/
+- panfrost: Move image states out of pan_image_layout
+- panfrost: Add a format field to pan_image_layout
+- panfrost: Stop passing a depth > 1 when creating 2D textures
+- panfrost: Add extra info to the pan_image_layout struct
+- panfrost: Split pan_image in two
+- panfrost: Add an offset field so we can attach a sub-buffer to an image
+- panfrost: Move out-of-band CRC info to pan_image
+- panfrost: Move special Z32_S8X24 case out of panfrost_setup_layout()
+- panfrost: Add a pan_image_layout_init() helper
+- panfrost: Patch the gallium driver to use pan_image_layout_init()
+- panfrost: Pass an image view to panfrost_new_texture()
+- panfrost: Provide a helper to calculate the polygon list size
+- panfrost: Provide a helper to retrieve image surface pointers
+- panfrost: Pass a const device to panfrost_sample_positions()
+- pan/midg: Use the sampler index passed to the texture instruction
+- panfrost: Add various helpers to simplify FB desc emission
+- panfrost: Add an helper to emit fragment jobs
+- panfrost: Add align info to the draw and draw padding definitions
+- panfrost: Add the early ZS pre frame mode
+- panfrost: s/pandecode_vertex_tiler_postfix_pre/pandecode_dcd/
+- panfrost: Decode pre/post frame DCDs
+- panfrost: Extend pan_fb_info to allow passing a tile enable map
+- panfrost: Extend pan_fb_info to allow passing pre/post frame DCDs
+- panfrost: Always pass a non-NULL screen to set_damage_region()
+- panfrost: Create a blitter library to replace the existing preload helpers
+- panfrost: Fix partial update
+- panfrost: Use the generic preload and FB helpers in the gallium driver
+- panfrost: Kill the old tile-buffer preload logic
+- panfrost: Pass a tile enable map to avoid reloading untouched tiles
+- panfrost: Fix pan_blitter_get_blit_shader()
+- panfrost: Don't advertise AFBC mods when the format is not supported
+- panfrost: Reserve thread storage descriptor in panfrost_launch_grid()
+- panfrost: Fix indirect draws
+- panfrost: Fix ZS reloading on Bifrost v6
+
+Boyuan Zhang (2):
+
+- frontend/va/image: add pipe flush for vlVaPutImage
+- frontends/omx/h265: search entire dpb list
+
+Caio Marcelo de Oliveira Filho (43):
+
+- intel/fs: Separate SLM size calculation from encoding
+- nir: Add a data pointer to the callback in nir_remove_dead_variables
+- spirv: Don't remove variables used by resource indexing intrinsics
+- nir/linking: Remove system_value handling from helper
+- compiler: Use util/bitset.h for system_values_read
+- ci: Add nouveau chipset 162 to shader-db runs
+- vulkan: Update XML and headers to 1.2.168
+- spirv: Update headers and metadata from latest Khronos commit
+- nir: Two shared memory \*blocks* may alias each other
+- spirv: Implement SPV_KHR_workgroup_memory_explicit_layout
+- anv: Implement VK_KHR_workgroup_memory_explicit_layout
+- spirv: Don't bother counting num_images/num_textures
+- spirv: Don't remove dead variables in \`create_library` mode
+- spirv: Store SPIR-V version of the module
+- spirv: Refactor variable initializer code
+- spirv: Recognize zero initializers in Workgroup variables
+- nir: Add nir_zero_initialize_shared_memory
+- anv: Implement VK_KHR_zero_initialize_workgroup_memory
+- spirv: Fail when parsing invalid Initializers
+- spirv: Use OpEntryPoint to identify valid I/O variables
+- spirv: Count variables \*after* unused ones are removed
+- spirv: Skip creating unused variables in SPIR-V >= 1.4
+- spirv: Allow variable pointers pointing to an array of blocks
+- intel/compiler: Use gl_varying_slot_name_for_stage()
+- freedreno/ir3: Use gl_varying_slot_name_for_stage()
+- etnaviv: Use gl_varying_slot_name_for_stage()
+- st/atifs: Use gl_varying_slot_name_for_stage()
+- compiler: Drop now unused gl_varying_slot_name()
+- spirv: Reuse nir_is_per_vertex_io()
+- spirv: Explicitly break when finished handling SpvDecorationBuiltIn
+- spirv: Update a couple of comments in variable handling
+- anv: Lower ViewIndex to zero when multiview is disabled
+- spirv: Update headers and metadata from latest Khronos commit
+- nir: Handle deref_atomic_fadd in a couple of passes
+- intel/compiler: Make vue_map parameter const for brw_compile_fs
+- intel/compiler: Use a struct for brw_compile_fs parameters
+- intel/compiler: Use a struct for brw_compile_vs parameters
+- intel/compiler: Refactor the shader INTEL_DEBUG checks
+- intel/compiler: Make brw_postprocess_nir take debug_enabled as a parameter
+- intel/compiler: Make vec4 generator take debug_enabled as a parameter
+- intel/compiler: Make visitors take debug_enabled as a parameter
+- intel/compiler: Use INTEL_DEBUG=blorp to dump blorp shaders
+- intel/compiler: Use a struct for brw_compile_cs parameters
+
+Chad Versace (30):
+
+- anv/image: Replace bo_is_owned with from_gralloc (v2)
+- anv/image: Rename anv_image_plane::surface -> primary_surface
+- anv/image: Move vkGetImageMemoryRequirements
+- anv/image: Drop duplicate 'format' in anv_image_create()
+- anv/image: Fix interpretation of 'disjoint'
+- anv/android: Fix size check for imported gralloc bo
+- anv: Add anv_surface_is_valid()
+- anv/image: Clean up anv_GetImageMemoryRequirements2
+- anv: Refactor anv_image_get_compression_state_addr
+- anv/image: Add anv_image_address()
+- blorp/gen12: Don't use aux address if implicit CCS
+- anv/image: Make memory layout more explicit
+- vulkan: Track dependencies of Python imports
+- anv/image: Simplify assertions in anv_image_from_swapchain()
+- anv/image: Fix tiling if VkImageSwapchainCreateInfoKHR
+- anv/image: In vkCreateDmaBufImageINTEL use modifiers
+- anv/image: Check that anv_image is compatible with its modifier
+- anv/image: Refactor check_memory_bindings()
+- anv/image: Fix cleanup of failed image creation
+- anv/image: Add ANV_IMAGE_MEMORY_BINDING_PRIVATE
+- anv/image: Fix Vk*ImagePlaneMemory*Info for modifier images
+- anv: Move assert in vkGetImageSubresourceLayout
+- anv/image: Fix vkGetImageSubresourceLayout for modifier images
+- anv: Implement image acquire/release of modifier images
+- anv: Declare anv_layout_to_* as pure functions
+- anv/image: Add 'offset' param to add_surface()
+- anv/image: Support VkImageDrmFormatModifierExplicitCreateInfoEXT
+- anv: Enable VK_EXT_image_drm_format_modifier
+- anv: Remove vkCreateDmaBufINTEL (v4)
+- anv: Drop unused anv_image_create_info::stride
+
+Charmaine Lee (1):
+
+- gallivm: increase size of texture target enum bitfield
+
+Chia-I Wu (38):
+
+- virgl: update headers
+- virgl: add support for VIRGL_CAP_V2_UNTYPED_RESOURCE
+- targets/libgl-xlib: add support for virgl
+- virgl: update headers from virglrenderer
+- venus: add driver skeleton
+- venus: add generated venus-protocol headers
+- venus: add experimental renderers
+- venus: add a CS encoder/decoder
+- venus: add a ring buffer
+- venus: initial support for vkCreateInstance
+- venus: initial support for VkPhysicalDevice commands
+- venus: initial support for VkDevice commands
+- venus: initial support for queue/fence/semaphore
+- venus: initial support for VkDeviceMemory commands
+- venus: initial support for buffers/images/samplers
+- venus: initial support for descriptor sets
+- venus: initial support for render pass and fb
+- venus: initial support for events and queries
+- venus: initial support for module and pipelines
+- venus: initial support for command buffers
+- venus: advertise extensions promoted to 1.1
+- venus: advertise extensions promoted to 1.2
+- venus: initial support for transform feedback
+- venus: initial support for WSI
+- venus: update venus-protocol headers
+- venus: prepare for splitting vn_device.[ch]
+- venus: split out vn_command_buffer.[ch]
+- venus: split out vn_pipeline.[ch]
+- venus: split out vn_query_pool.[ch]
+- venus: split out vn_render_pass.[ch]
+- venus: split out vn_descriptor_set.[ch]
+- venus: split out vn_buffer.[ch]
+- venus: split out vn_image.[ch]
+- venus: split out vn_device_memory.[ch]
+- venus: split out vn_queue.[ch]
+- venus: include individual venus-protcol headers
+- ci: enable venus in some meson build jobs
+- venus: check vn_renderer_info::vk_xml_version
+
+Christian Gmeiner (26):
+
+- etnaviv: handle NULL views in set_sampler_views
+- vc4: add drm-shim
+- ci: Update baremetal kernel to 5.11 plus patches
+- nir: add load_texture_rect_scaling
+- nir: add has_txs flag
+- nir/lower_tex: 'txs free' tex_rect lowering
+- nir/lower_tex: wider usage of nir_tex_instr_src_index(..)
+- gallium: add PIPE_CAP_TEXRECT
+- gallium/st: lower rectangle textures if not supported
+- ttn: lower rectangle textures if not supported
+- etnaviv: nir: support nir_intrinsic_load_texture_rect_scaling
+- etnaviv: let st lower rect tex
+- vc4: let st lower rect tex
+- etnaviv: nir: add ubo lowering pass
+- etnaviv: use nir_lower_uniforms_to_ubo(..)
+- etnaviv: fix etna_nir_lower_ubo_to_uniform pass
+- etnaviv: extend lower ubo tests
+- gallium: call util_cpu_detect()
+- etnaviv: use nir_lower_idiv(..) before opt loop
+- ci/bare-metal: fix fastboot
+- etnaviv: etnaviv: put sampler limit determination into own function
+- etnaviv: factor out TS state emitting
+- etnaviv: add support for NTE
+- etnaviv: rename struct members
+- ci/bare-metal: no need to use tee
+- etnaviv: tell the truth if alpha-test is supported
+
+Connor Abbott (61):
+
+- nir/lower_tex: Handle sized tex destination types
+- freedreno/ir3: Handle sized tex destination types
+- ntt: Handle sized tex destination types
+- nir/lower_bool: Rewrite dest_type for boolean destinations
+- brw/vec4: Don't convert tex dest type to glsl_type
+- radv/meta: Use sized types for nir_tex_instr::dest_type
+- v3dv/meta: Use sized types for nir_tex_instr::dest_type
+- intel/blorp: Use sized types for nir_tex_instr::dest_type
+- anv: Use sized types for nir_tex_instr::dest_type
+- dxil: Use sized types for nir_tex_instr::dest_type
+- panfrost/blit: Use sized types for nir_tex_instr::dest_type
+- d3d12/blit: Use sized types for nir_tex_instr::dest_type
+- nir: Use sized types for nir_tex_instr::dest_type
+- st/mesa: Use sized types for nir_tex_instr::dest_type
+- gallium/nir: Use sized types for nir_tex_instr::dest_type
+- ttn: Use sized types for nir_tex_instr::dest_type
+- st/atifs: Use sized types for nir_tex_instr::dest_type
+- glsl/nir: Use sized types for nir_tex_instr::dest_type
+- vtn: Use sized types for nir_tex_instr::dest_type
+- ptn: Use sized types for nir_tex_instr::dest_type
+- nir: Validate nir_tex_instr::dest_type bitsize
+- nir/lower_tex: Assume that nir_tex_instr::dest_type is sized
+- panfrost: Assume that nir_tex_instr::dest_type is sized
+- ir3: Assume that nir_tex_instr::dest_type is sized
+- ntt: Assume that nir_tex_instr::dest_type is sized
+- freedreno/a6xx: Document threadsize-related fields
+- freedreno/cffdec: Use rb trees for tracking buffers
+- ir3/parser: Fix parsing of "0.0" in @const line
+- freedreno/computerator: Fix example assembly
+- ir3/parser: Support labels
+- ir3/parser: Add ability to specify branchstack
+- freedreno/computerator: Add branching example
+- freedreno/computerator: Fix thrsz type
+- freedreno/a6xx: Fix compute threadsize type
+- freedreno/registers: Handle typed registers with fields
+- freedreno/a6xx: Cleanup SP_XS_CTRL_REG0 definitions
+- freedreno: Add local_size to ir3_shader_variant
+- ir3: Calcuate max_waves and threadsize
+- turnip: Use threadsize calculated by ir3
+- freedreno: Use threadsize calculated by ir3
+- freedreno/computerator: Use threadsize calculated by ir3
+- freedreno: Report max_waves in shaderdb output
+- freedreno/computerator: Add script for finding reg file size
+- util/bitset: Avoid out-of-bounds reads
+- freedreno/a3xx: Fix SP_FS_CTRL_REG1_INITIALOUTSTANDING
+- ir3/legalize: Fix last input (ss) insertion
+- ir3: Fix valid flags for STIB
+- ir3/cp_postsched: Set address of uses for relative mov's
+- ir3: Don't copy propagate arrays in ir3_cp
+- ir3/postsched: Make sure to schedule inputs before kill
+- vtn: Handle ZeroExtend/SignExtend image operands
+- tu: Expose VK_KHR_spirv_1_4 and VK_EXT_scalar_block_layout
+- tu: Expose VK_KHR_relaxed_block_layout
+- ir3/sched: Don't penalize uses of already-waited tex/SFU
+- ir3/sched: Don't schedule too many tex/SFU instructions
+- ir3: Fix list corruption in legalize_block()
+- tu: Correctly preserve old push descriptor contents
+- ir3: Prevent oob writes to inputs/outputs array
+- nir/lower_clip_disable: Fix store writemask
+- tu: Fix SP_GS_PRIM_SIZE for large sizes
+- ir3/postsched: Fix dependencies for a0.x/p0.x
+
+Corentin Noël (1):
+
+- ci: Use lavacli from master
+
+Daniel Schürmann (67):
+
+- aco: fix VOP3P assembly, VN and validation
+- aco/RA: fix subdword operands on VOP3P instructions
+- aco: allow constants/literals on every src position for VOP3P
+- aco: allow SGPRs on every src position for VOP3P
+- aco: change usesModifiers() considering opsel_hi on packed instructions
+- aco: create helpers to emit vop3p instructions
+- aco: emit packed 16bit instructions
+- radv: vectorize 16bit instructions
+- aco: simplify multiply-add combining
+- aco: optimize packed mul+add to v_pk_fma_f16
+- aco: optimize packed clamp
+- aco: optimize packed fneg
+- aco: optimize v_pk_fma_f16 -> v_pk_fmac_f16 on GFX10
+- aco: propagate swizzles when optimizing packed clamp & fma
+- aco: remove divergent branches which only jump over very few instructions
+- aco/optimizer: don't copy-prop logical phis
+- aco/optimizer: don't propagate subdword temps of different size
+- aco: generalize subdword constant copy lowering
+- aco/validate: validate that p_create_vector operands are aligned unless they are subdword operands
+- aco/validate: ensure that Operand and Definition size matches for parallelcopies
+- aco/validate: relax subdword restrictions
+- aco: propagate temporaries into PSEUDO instructions if it can take it
+- aco/optimizer: expand subdword vectors with SGPRs on all generations
+- aco/optimizer: convert extract_vector with index 0 into parallelcopies if possible
+- radv: don't vectorize shift operations
+- aco: fix VCC hint on boolean subgroup operations
+- aco: fix nir_intrinsic_ballot with wave32
+- aco: fix shared VGPR allocation on RDNA2
+- aco: change gpr_alloc_granule to full alignment
+- aco: refactor GPR limit calculation
+- aco: don't decrease the vgpr_limit when encountering bpermute
+- aco: also consider VCC in get_reg_specified()
+- aco: check get_reg_specified() on register hints
+- aco: don't abort() if disassembly fails
+- aco: use VCC as regular SGPR pair on GFX10
+- aco: don't create unnecessary exec phi on merge blocks
+- aco: handle non-temp phi definitions and operands
+- aco: make all exec accesses non-temporaries
+- aco: remove dead code for the handling of exec temporaries
+- aco: fix assertion in insert_exec_mask pass
+- nir: lower load_helper to is_helper if the shader uses demote()
+- nir: lower is/load_helper to zero if no helper lanes are needed
+- aco: remove special handling of load_helper_invocation
+- aco: don't rematerialize exec
+- aco: value number VOPC instructions with different exec masks
+- aco/value_numbering: use can_eliminate() function to avoid unnecessary hashmap lookups
+- aco/optimizer: set VCC hint on new v_cmp_* definitions
+- aco/ra: allow VCC on SMEM sbase operand on GFX10+
+- .mailmap: fix email for Daniel Schürmann
+- aco/ra: split affinity creation into separate function
+- aco/ra: split register_file initialization into separate function
+- aco/ra: refactor SSA repairing during register allocation
+- aco/ra: iterate backwards when coalescing phis
+- aco/ra: allow m0 in get_reg_specified()
+- aco/ra: remove exec handling for phis
+- aco/spill: refactor spill decision taking
+- aco/spill: reload spilled exec masks directly to exec
+- aco/spill: spill phi constants and exec directly to VGPR
+- aco/spill: don't count phis as variable access
+- aco/spill: refactor some more spill decision taking
+- aco/spill: refactor live-in registerDemand calculation
+- aco/spill: use correct next_use_distances at loop header
+- aco: lower p_spill with constants correctly
+- aco: fix kill flags on phi operands
+- aco: add new reindex_ssa() pass
+- aco/cssa: rewrite lower_to_cssa pass
+- aco/cssa: don't create parallelcopies for constants and exec
+
+Daniel Stone (3):
+
+- CI: Try really hard to get updated Windows TLS certs
+- CI: Trigger Windows builds for llvmpipe & Vulkan changes
+- CI: Change LAVA job visibility
+
+Danylo Piliaiev (50):
+
+- turnip/ir3: handle image load/stores produced by AtomicLoad/Store
+- turnip: make GS use correct varyings size from previous stage
+- ir3: add debug option to override shader assembly
+- freedreno/ir3/parser: add cat7 support
+- turnip: don't emit tess consts if they are not used
+- freedreno: clamp scissor bounds
+- freedreno/a2xx: fix scissors clamp bounds
+- turnip: enable inheritedQueries
+- turnip: consider HW limit on number of views when apply multipos opt
+- turnip: consider tile_max_h when calculating tiling config
+- turnip,freedreno/a6xx: tell hw the size of shared mem used by CS
+- turnip/ir3: check for bindless IBOs in atomic dests fixup
+- turnip: fix leak of tu_shader object during compute pipeline creation
+- ir3: prevent duplication of instruction's dependencies
+- ir3: make mark_kill_path exit early if instr is already seen
+- ir3: disallow moving memory writes over discard
+- freedreno/hw: fix populating branch targets in isa_decode pre-pass
+- turnip: fix SP_HS_WAVE_INPUT_SIZE value
+- freedreno/a5xx: port handling of PIPE_BUFFER textures from a6xx
+- ir3: use OPC_GETBUF to get size of sampler buffers
+- turnip: lower device index to zero
+- turnip: fill VkMemoryDedicatedRequirements
+- turnip: set zmode to A6XX_EARLY_Z if FS forces early fragment test
+- turnip: implement intrinsic_vulkan_resource_reindex
+- ci/freedreno: run freedreno jobs on any change in src/freedreno/
+- ir3: fix oob access to regs array for getbuf,getinfo,rgetinfo
+- ir3/isa,parser: fix encoding and parsing of bindless s2en SAM
+- ir3: match mova1 mnemonic when writing to A1
+- freedreno/isa: assert if field's range is out of bitset's range
+- ir3: disallow .sat on SEL instructions
+- ir3: update info about applicability of saturation modifier
+- turnip: expose several already implemented extensions
+- nir: add nir_shader_as_str function
+- turnip: implement VK_KHR_pipeline_executable_properties
+- turnip: clamp to zero negative upper left corner of viewport
+- turnip,ir3: account for dispatch group offsets
+- freedreno/a6xx: copy full 64bit of primitive counter
+- freedreno/a6xx: fix primitive counters debug output
+- ir3/isa: account for randomly set by blob lowest bit of ibo atomics
+- glsl/linker: Fix attempts to split up 64bit varyings between slots
+- glsl/linker: Fix xfb with explicit locations and 64bit types
+- ir3: nir_op_f2f16 should round to even
+- ir3: convert shift amount to 16b for 16b shifts
+- turnip: enable infinities for f16 math and document the register
+- turnip: enable VK_KHR_16bit_storage on A650
+- turnip: handle format list for compressed formats
+- docs: mark float_controls,float16_int8,16bit_storage as done on Turnip
+- turnip: fix alignment of non-32b types in workgroup memory
+- turnip: implement variableMultisampleRate
+- turnip: support copying both aspects of D32_SFLOAT_S8_UINT
+
+Dave Airlie (163):
+
+- device-select-layer: update for vulkan 1.2
+- lavapipe: fix missing piece of VK_KHR_get_physical_device_properties2
+- vk-device-select: add device group support
+- lavapipe: refactor image surface creation
+- lavapipe: rewrite attachment clearing for conditional rendering.
+- gallium: add a cond rendering hook for vulkan.
+- llvmpipe: handle vulkan conditional rendering
+- lavapipe: add VK_EXT_conditional_rendering support.
+- CI: add lavapipe to llvmpipe rules.
+- lavapipe: add support for external memory/fd/sempahore extensions
+- llvmpipe: handle firstvertex for vulkan draw parameters
+- lavapipe: handle shader draw parameters
+- lavapipe: add missing loader interface negoitation
+- lavapipe: move to subclassing instance/physical device.
+- lavapipe: add missing wsi entrypoint.
+- lavapipe: sort extensions in proper order.
+- lavapipe: use common dispatch layer.
+- radv: move queue object to a common base object
+- radv: remove all entrypoint enabled debug option
+- radv: move to subclassed instance/physical_device structs
+- radv: port to using common dispatch code.
+- zink: don't pick a cpu device ever.
+- llvmpipe: add a mutex around debug resource tracking
+- llvmpipe: fix use after free with fs variant cleanup
+- lavapipe: reset shader constant buffers after execution
+- glsl: fix leak in gl_nir_link_uniform_blocks
+- llvmpipe: enable GL spir-v support
+- util/format: add helper to check if a format is scaled.
+- llvmpipe: don't support scaled formats outside vertex buffers
+- lavapipe: add support for 2/10/10/10 scaled formats.
+- lavapipe: add support for missing 10/10/10/2 formats.
+- lavapipe: add reference counting to descriptor set layout
+- lavapipe: avoid pointer to pipeline layout in execution
+- lavapipe: set viewport state dirty on first execute
+- lavapipe: implement physical device group enumeration
+- lavapipe/meson: drop megadrivers build req
+- lavapipe: fix some void ptr arithmetic
+- lavapipe: use msvc compatible 0 init
+- lavepipe: some misc msvc fixes
+- lavapipe: make OPT macro MSVC compatible
+- lavapipe: use os_time for timing related things
+- vulkan/util: add api to reset object magic + private data.
+- radv: reset object base on recycled command buffers
+- tu: reset object base on recycled command buffers
+- lavapipe: reset object base on recycled command buffers
+- util: add optimised memset64
+- u_surface: use optimised memset64
+- llvmpipe: zs clear use 64-bit memset
+- lavapipe: use clear interface for renderpass clears
+- glx: proposed fix for setSwapInterval
+- zink: use extensioned draw indirect functions.
+- zink/ci: update results now that we are testing zink/lavapipe
+- lavapipe: add calibrated timestamp support
+- zink/ci: update results for GL 3.3 testing enables
+- zink/ci: disable arb_timer_query tests
+- lavapipe: use the common icd generator
+- lavapipe: fix msvc initialiser
+- lavapipe: add dll definition file instead of using PUBLIC
+- lavapipe: fix icd generation for windows
+- meson/llvm: add native for gallium swrast
+- lavapipe: handle tessellation domain winding
+- lavapipe: enable KHR_maintenance2
+- lavapipe: enable KHR_maintenace3
+- lavapipe: fix descriptor set layout freeing.
+- lavapipe: fix depth texturing swizzle
+- lavapipe: use null probe path on win32
+- ci: try building lavapipe on windows
+- zink/instance: work with vulkan 1.0 and later loader.
+- lavapipe: expose a 1.0 vulkan API for now.
+- lavapipe: Define supported extensions in C
+- lavapipe: VK_EXT_extended_dynamic_state support
+- lavapipe: reorder descriptor set stages to get correct binding
+- lavapipe: sort bindings before creating descriptor set
+- clover: fix array images view creation
+- lavapipe: fix pipeline vp/scissor mixup.
+- lavapipe: fix dynamic viewport/scissor pipeline emission
+- draw: fix uses viewport index for tess eval shader
+- draw/prim_assembler: write correct decomposed primitive lengths
+- llvmpipe: add support for shader viewport layer
+- lavapipe: enable EXT_shader_viewport_index_layer
+- zink/ci: update results after layer extensions enabled in lavapipe
+- util/panfrost/glsl: rename BITSET_LAST_BIT to BITSET_LAST_BIT_SIZED
+- util/bitset: add a new last bit api
+- shader_info: convert textures_used to a bitset.
+- gallium: add a sampler reduction cap + settings
+- gallium: add a view mask to the draw command
+- gallivm: mark subpass input attachments as 2d arrays
+- gallivm: add support for load_view_index intrinsic
+- draw: add interface to notify renderer of the current view index
+- draw: refactor out the instances drawing code
+- draw: add view_mask rendering support
+- draw: pass the view index to the render driver
+- draw/vs: pass the view index to the vertex shader
+- draw: add tess/gs support for multiview index
+- llvmpipe: add the view index callback from draw
+- llvmpipe: add view index support to rasterizer
+- lavapipe: add clear support for multiview
+- lavapipe: add draw support for multiview
+- lavapipe: add input attachment support for multiview
+- lavapipe: add render pass support for multiview
+- lavapipe: enable KHR_multiview
+- llvmpipe: add reduction mode support
+- lavapipe: add EXT_sampler_filter_minmax support
+- lavapipe: add support for VK_KHR_create_renderpass2
+- lavapipe: move queue to base object
+- lavapipe: move to the common casting interfaces
+- lavapipe: move to common create render pass code
+- lavapipe: add single ssbo variable pointer support.
+- docs: update lavapipe features.txt
+- lavapipe: enable KHR_uniform_buffer_standard_layout
+- lavapipe: enable EXT_scalar_block_layout
+- lavapipe: add missing break
+- lavapipe: fix writing availability for queries.
+- lavapipe: add host query reset
+- gallivm: convert packing to uint64 not double
+- lavapipe: only init immutable samplers for correct types.
+- lavapipe: add support for KHR_buffer_device_address.
+- lavapipe: bump maxMemoryAllocationCount
+- lavapipe: fix image format properties
+- lavapipe: add missing sampler minmax properties
+- lavapipe: add missing device group api
+- lavapipe: drop unused vk_format in image struct
+- lavapipe: fix templated descriptor updates
+- gallivm: fix non-32bit ubo loads
+- gallivm/nir: handle bool registers.
+- nir: port fp16 casting code from dxil
+- nir: lower 64-bit floats to 32-bit first.
+- gallivm: use fp16 casts lowering
+- lavapipe: enable 8/16-bit storage extensions
+- llvmpipe: fix cube image size query
+- st/glthread: allow for invalid L3 cache id.
+- util: rework AMD cpu L3 cache affinity code.
+- gallivm: add 64-bit atomic support for ssbo/shared.
+- gallivm: add 64-bit atomic global support
+- lavapipe: enable KHR_shader_atomic_int64
+- lavapipe: only reference pCounterBuffers if non-NULL
+- lavapipe: fail out if spirv->nir fails
+- lavapipe: fix only clearing depth or stencil paths.
+- zink/ci: update results after lavapipe clear fixes
+- lavapipe: add support for KHR_imageless_framebuffer
+- drisw: move zink down the list below the sw drivers.
+- zink/ci: handle getting correct drisw driver.
+- llvmpipe: when depth clamp is disable clamp to 0.0/1.0
+- llvmpipe: always take depth clamping from state tracker
+- ci: update zink/virgl results for depth clamping fixes
+- lavapipe: add vulkan 1.1 properties/features apis
+- lavapipe: fix missing protected memory properties
+- gallivm: add subgroup vote 64-bit and feq support.
+- gallivm: move get_flt_bld to header.
+- gallivm: add subgroup system values support
+- gallivm: add subgroup elect intrinsic support.
+- gallivm: add subgroup reduction + in/ex scan support
+- gallivm: add subgroup ballot support
+- gallivm: add subgroup read invocation support
+- gallivm: add subgroup lowering support
+- gallivm: add compute shader subgroup system values support
+- lavapipe: enable subgroups features
+- lavapipe: enable correct workgroup sizing
+- lavapipe: enable Vulkan 1.1 support
+- docs: update lavapipe bits for 1.1
+- lavapipe: add vk1.1 image swapchain support
+- lavapipe: add dummy sampler ycbcr conversion
+- lavapipe: fix mipmapped resolves.
+
+David McFarland (1):
+
+- radv: fix divide by zero with no tesselation params
+
+Douglas Anderson (1):
+
+- gallium/indices: Use "__restrict" to help the compiler
+
+Drew Davenport (1):
+
+- radeonsi: Report multi-plane formats as unsupported
+
+Dylan Baker (33):
+
+- VERSION: bump for 21.1.0 cycle
+- docs: add release notes for 20.3.3
+- docs: Add sha256sum for 20.3.3
+- docs: update calendar and link releases notes for 20.3.3
+- docs: update calendar for 21.0.0-rc1
+- bin/post_version: convert the csv.reader into a concrete list
+- docs: add release notes for 20.3.4
+- docs: Add sha256sum for 20.3.4
+- docs: update calendar and link releases notes for 20.3.4
+- docs: update calendar for 21.0.0-rc2
+- docs: update calendar for 21.0.0-rc3
+- Scons: check for timespec_get on windows as well as unices
+- docs: Remove 21.0 features from features_new.txt
+- docs: add release notes for 21.0.0
+- docs: update calendar and link releases notes for 21.0.0
+- docs: Add calendar entries for 21.0 release.
+- docs: Extend calendar entries for 21.0 by 1 releases.
+- docs: Add calendar entries for 21.1 release candidates.
+- docs: add release notes for 20.3.5
+- docs: Add hashes for 20.3.5
+- docs: update calendar and link releases notes for 20.3.5
+- docs: add release notes for 21.0.1
+- docs: Add 21.0.1 hashes
+- docs: update calendar and link releases notes for 21.0.1
+- docs: add release notes for 21.0.2
+- relnotes: Add sha256sum for 21.0.2
+- docs: update calendar and link releases notes for 21.0.2
+- meson: OpenMP is supposed to be optional
+- .pick_status.json: Update to ee9b744cb5d1466960e78b1de44ad345590e348c
+- VERSION: bump for 21.1.0-rc3
+- .pick_status.json: Update to cbd6e5f2e592a9834a03004a473537f25aea4336
+- .pick_status.json: Update to ede0b3c643279f4126fb10552a2f1d00be27f16d
+- .pick_status.json: Update to b80720acb13e1014aea89e6bd25f22d43df85356
+
+Edward O'Callaghan (1):
+
+- clover: Implement CL_MEM_OBJECT_IMAGE1D
+
+Eleni Maria Stea (7):
+
+- anv: Added the VK_EXT_sample_locations extension to the anv_extensions list
+- anv: Implement physical device properties for VK_EXT_sample_locations
+- anv/state: Take explicit sample locations in emit helpers
+- anv: Add support for sample locations
+- anv: Removed unused header file
+- anv: Enabled the VK_EXT_sample_locations extension
+- iris: fix in fences backend for ext_external_objects edge case
+
+Ella-0 (1):
+
+- glsl: build without bison
+
+Enrico Galli (2):
+
+- microsoft/spirv_to_dxil: Add support for load_vulkan_descriptor
+- microsoft/spirv_to_dxil: Use non-zero exit code on failed compilations
+
+Eric Anholt (207):
+
+- gallium/ttn: Add support for TGSI_OPCODE_I64NEG/ABS.
+- gallium/ntt: Stop lowering integer source mods.
+- gallium/tgsi: Assert that we don't see integer abs modifiers.
+- gallium/tgsi: Remove support for f64 src modifiers.
+- gallium/tgsi: Rewrite the docs on source modifiers.
+- gallium/tgsi: garbage collect unused TGSI_UTIL_SIGN_MODE.
+- mesa/st: Make a single helper for the NIR-to-TGSI transfer.
+- mesa/st: Lower shader images before handing off to NIR-to-TGSI.
+- mesa/st: Dump nir-to-tgsi output when ST_DEBUG=tgsi or nir is set.
+- gallium/ntt: Don't vectorize IBFE/UBFE/BFI.
+- gallium/ntt: Add support for store_per_vertex_output.
+- gallium/ntt: Avoid referencing undefined channels of system values.
+- ci/freedreno: Mark some a5xx separate_shader tests as xfails.
+- ci/freedreno: Fix up the xfail/flake handling of a3xx texture functions.
+- ci/freedreno: Remove a bunch of stale flakes from a3xx.
+- ci/freedreno: Drop some long-unseen a5xx flakes.
+- ci/freedreno: Drop skip list stuff from a5xx flakes.
+- ci/freedreno: Remove some long-unseen a6xx known flakes.
+- util/format: Fix pack/unpack of A1R5G5B5_UINT.
+- mesa: Add some little unit tests showing format unpack behavior.
+- mesa: Drop incorrect statement about Z unpack behavior.
+- mesa: Replace the float[4] unpack code with util/format's.
+- mesa: Make _mesa_unpack_rgba_block() use the u_format pack/unpack.
+- util: Move most of src/mesa/main/format_utils.h to util/format/
+- util: Fix UBSan failure on _mesa_unorm_to_unorm.
+- util: Fix rounding of unpack_unorm8 from small unorm formats.
+- mesa: Reuse util_format's unpack_8unorm.
+- mesa: Reuse util_format's unpack functions for pure integer formats.
+- util: Give a reasonable answer when unpacking z32unorm from floats.
+- mesa: Use a bunch of util functions for Z/S unpacking.
+- mesa: Move the rest of format_unpack.py out of code generation.
+- util/format: Simplify the generated unpack code.
+- swrast: Use util_format_write_4/4ub for the scattered pixel writes.
+- mesa/main: Replace float pack function with util_format_pack_rgba().
+- mesa/main: Replace the uint format packing code with util/format's.
+- ci/piglit: Upgrade to a newer piglit in our containers.
+- ci/freedreno: Fix xfail setup for sampler3d_float_vertex.
+- nir_to_tgsi: Store directly to TGSI outputs when possible.
+- r300,i915g: Report no shader buffers or images on non-TCL HW.
+- nir_to_tgsi: Fix buffer overflow in atomic image compswap.
+- swr: Don't report support for shader images.
+- panfrost: Stub out set_shader_images().
+- gallium: Fix leak of shader images on context destruction.
+- util/bitset: Avoid dereferencing the bitset for size == 0.
+- ci: Add a fractional deqp run of softpipe with asan enabled.
+- freedreno/a6xx: Skip the body of emit_state if we're clean.
+- freedreno: Move blend gmem checks to a blend dirty state check.
+- freedreno: Move framebuffer state checks under a ctx->dirty flag.
+- freedreno: Skip some batch dependency tracking if !ctx->dirty.
+- ci/freedreno: Detect cheza HFI errors and restart the run.
+- ci/freedreno: Ban vs-clip-vertex-enables which flakes in CI.
+- ci/freedreno: Ban more flaky clip-enables tests.
+- ci/freedreno: Make a630 piglit_shader run a manual run, too.
+- freedreno: Use a real type instead of void * for the fd_batch->key.
+- freedreno: Early-out from the resource write path when we're the writer.
+- freedreno: Remove duplicate bc invalidate on flush_write_batch().
+- ci: Update baremetal kernel to 5.11-rc5 plus patches.
+- mesa/st: Allocate the gl_context with 16-byte alignment.
+- ci/freedreno: Drop pointless GIT_STRATEGY setting for a630.
+- ci/freedreno: Use the new nginx cache for trace downloads.
+- ci/freedreno: Use the http cache for artifacts downloads, too.
+- ci/docs: Update CI farm requirements suggestions.
+- docs/ci: Document setting up the http cache for traces.
+- ci/lava+baremetal: Add an xserver to the root fs.
+- ci/freedreno: Do our piglit runs against Xorg.
+- ci/freedreno: Add Valve games and other traces now that we have GLX.
+- freedreno: Make sure that queries are disabled during shadow blits.
+- freedreno: rename batch->active_providers to query_providers_used.
+- freedreno: Backport a5xx/a6xx fix for active query handling.
+- freedreno: Drop pointless clear of used providers.
+- freedreno/a6xx: Skip guessing VSC size with indirect TF draw counts.
+- docs: Document PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME.
+- freedreno/a6xx: Add support for glDrawTransformFeedback().
+- ci/deqp: Bump runner to 0.5.1 for recent runtime perf improvements.
+- ci/freedreno: bump VK coverage to 1/4 of the CTS.
+- ci/freedreno: Run a3xx gles3 in parallel and increase coverage.
+- ci/virgl: Fix GLES31 testing on desktop GL.
+- freedreno: Force updating active queries on batch reordering.
+- freedreno: Remove FD_STAGE_* in favor of a "disable_all" flag.
+- freedreno/a5xx: Don't forget to count our custom blits against queries.
+- mesa/st: Always precompile the first shader variant.
+- mesa/st: Assume that the default variant is always first in the list.
+- vc4: Remove vestiges of alpha test lowering.
+- vc4: Stop advertising support for PIPE_CAP_TWO_SIDED_COLOR.
+- vc4: Stop advertising support for VS color clamping.
+- v3d: Clean up vestiges of alpha test lowering.
+- v3d: Stop advertising support for PIPE_CAP_TWO_SIDED_COLOR.
+- v3d: Stop advertising support for PIPE_CAP_*_COLOR_CLAMPED.
+- v3d: Stop advertising support for flat shading.
+- gallium: Document behavior of more lowering pipe caps.
+- freedreno: Add missing dep on freedreno tracepoints.
+- gallium: Flip the default value of PIPE_CAP_SHAREABLE_SHADERS.
+- virgl: Drop a context dependency from part of the shader compile path.
+- v3d/qpu: Avoid leaking memory in the QPU disasm test.
+- mesa/st: Make sure to unbind cb0 on transition away from gs/tess shaders.
+- ci: Allow better customization of the name of the artifacts for minio.
+- ci/freedreno: Add a fractional gles31 run with asan enabled.
+- ci/freedreno: Drop the "arm64" in front of job names.
+- ci: Move specific driver testing to separate files in separate dirs.
+- ci/freedreno: Fix a5xx piglit runs.
+- ci/freedreno: Remove stray BM_DTB definition.
+- ci/bare-metal: Use an upstream kernel for db820c.
+- ci/a5xx: Update the piglit expectations.
+- ci/a5xx: Increase our dEQP GLES3 fraction by 4x.
+- ci: Move the dEQP and traces expectations to the per-driver CI dirs.
+- ci: Move the piglit expectations lists to the per-driver CI dirs.
+- ci/zink: Add tests of gles2, gles3, and gl33 on lavapipe.
+- zink: Use mesa_loge() for should-never-be-reached initialization errors.
+- zink: Remove NULL checks after GET_PROC_ADDR_INSTANCE().
+- softpipe: Fix the const buffer overflow check.
+- mesa: Get the FXT1 compressor/decompressor off of GL types.
+- mesa: Move the FXT1 compressor/decompressor to util/
+- llvmpipe: Enable FXT1 texture decompression.
+- v3d: Replace driver lowering of GL_CLAMP with mesa/st's.
+- ci/piglit: Stop including the test counts at the end of expectations.
+- ci/iris: Move the traces yml file to the driver-specific dir.
+- mesa: Always make sure uniform storage doesn't get reallocated.
+- freedreno: Remove uniform variables after finalizing NIR.
+- freedreno: Drop custom driver lowering of two-sided color.
+- freedreno: Drop custom driver lowering of GL's color clamping.
+- freedreno: Use the mesa/st frontend lowering of GL_CLAMP.
+- freedreno/a5xx+: Stop recompiling on texture samples changes.
+- freedreno/a5xx+: Drop the unused no_decode_srgb flag.
+- freedreno/a5xx: Fix cube image load/stores.
+- nir: Add a nir_src_is_undef() helper, like nir_src_is_const().
+- nir/vec_to_movs: Don't generate MOVs for undef channels.
+- ci: Move deqp-default-skips.txt back to .gitlab-ci/
+- ci/lava: Move the per-driver gitlab-ci.yml to each driver.
+- ci/lava: Move the driver expectation files to the per-driver CI dir.
+- tgsi_exec: Roll the loops for condmask handling.
+- tgsi_exec: Jump over entirely non-taken THEN or ELSE branches.
+- ci/freedreno: Also retest when only CI configuration changes.
+- ci/freedreno: Switch the fastboot boards to using nfsroot.
+- ci/a5xx: Run all of gles2 in one job.
+- ci/a3xx: Run all of GLES3 dEQP.
+- ci/a5xx: Increase the gles3/31 coverage.
+- ci/a5xx: Update piglit expectations.
+- ci/zink: Add another primitive restart flake.
+- ci/turnip: Mark a flaky WSI test.
+- lima: stop encoding the texture format in the shader key
+- lima: don't look at dirty bits for setup of FS key
+- lima: upload the shader to a BO at shader creation
+- lima: avoid stomping over bound shader state when creating new shaders
+- nir-to-tgsi: Fix handling of partial writemasks on SSA/REG decls.
+- docs: Add some documentation of game GL buffer object mapping behavior.
+- freedreno/a5xx: Introduce an event write helper like a6xx has.
+- freedreno/a5xx: Flush depth at the end of sysmem, like a6xx does.
+- ci/freedreno: Mark another a5xx TF flake.
+- u_format: Mark the generated pack/unpack src/dst args as restrict.
+- mesa/st: Unify st_get_vp_variant() and st_get_common_variant().
+- mesa/st: Add perf debug for draw-time variant compiles.
+- mesa/st: Fix precompile misses on compat GL VSes writing to color outputs.
+- virgl: Update GLES expectations.
+- ci/freedreno: Add three more a5xx flakes from the last day.
+- freedreno/a5xx: Fix the texel buffer alignment requirement.
+- freedreno/a5xx: Fix the max texture buffer size.
+- ci/panfrost: Disable t860/radeonsi testing while the runners are struggling.
+- ci: Bump deqp-runner to v0.6.3.
+- ci/freedreno: Switch the piglit testing to the new piglit runner.
+- ci/bare-metal: Restart a run on intermittent kernel lockups.
+- ci/freedreno: Mark an a630 piglit flake from async shader compiling.
+- ci/freedreno: Mark the rest of the glx_arb_sync_control@timing as flakes.
+- nir_to_tgsi: Respect PIPE_SHADER_CAP_TGSI_SQRT_SUPPORTED.
+- freedreno/a5xx: Fix stream-output binning handling.
+- freedreno/ir3: Demote centroid usage to pixel on non-msaa.
+- ci/freedreno: Mark all of dEQP TF as flaky.
+- ci/bare-metal: Move the db820c lockup detect to the right boot script.
+- ci/freedreno: Mark glx-swap-copy as a flake on a630.
+- freedreno/a6xx: Rename the RB_BLIT_INFO.INTEGER field to SAMPLE_0.
+- freedreno/a6xx: Disable sample averaging on depth/stencil resolves.
+- freedreno: Move the ir3 linked shader cache to the context.
+- freedreno/a3xx: Switch to using ir3_cache for looking up our VS/FS.
+- freedreno/a4xx: Switch to using ir3_cache for looking up our VS/FS
+- freedreno/a5xx: Switch to using ir3_cache for looking up our VS/FS
+- turnip: Fix KGSL build since common dispatch rework.
+- broadcom: Disbale CLIF dumping when libexpat isn't available.
+- ci/android: Make sure we don't detect system libexpat.
+- ci/android: Build the v3dv driver.
+- iris: Flag for resolves when stencil enable changes, too.
+- freedreno: Assert that TF prims generated can ignore active_queries.
+- freedreno/ir3: Move max-tf-vtx calculation to a .c file
+- freedreno: Move max-tf-vtx calculation to just the HW that needs it.
+- freedreno: Move the primitives generated/written updates after the draw.
+- freedreno: Don't count SW TF queries on a6xx.
+- freedreno: Clamp TF prims written to buffer size pre-a6xx.
+- ci/freedreno: Mark a630 as flaky on arb_draw_indirect-transform-feedback
+- nir: Update clip_distance_array_size in clip lowering.
+- freedreno/a6xx: Use the frontend userclip lowering.
+- freedreno/a5xx: Add support for clip distances and use them for userclip.
+- freedreno/a5xx: Use VALIDREG/CONDREG like a6xx do.
+- ci/freedreno: Demote a630-asan to a manual test for now.
+- ci: Drop the custom db820c kernel/dtb from the kernel+rootfs.
+- ci/freedreno: Add more new traces for a630 (minetest, TDM, pioneer, glyphy).
+- ci/freedreno: Rename a306-test and a530-test to drop "arm64" from the name.
+- ci/freedreno: Add trace testing on a3xx, a5xx.
+- freedreno/a5xx: Fix alpha test vs early Z bugs.
+- freedreno/a6xx: Fix alpha tests.
+- ci/freedreno: Switch to the trimmed glxgears trace.
+- ci/freedreno: Fix up the a5xx border color flake annotation.
+- ci: Uprev deqp runner to 0.6.5.
+- ci: Uprev piglit to 6a4be9e9946d ("piglit: NOTE! Default branch is now main")
+- ci: bump bare-metal kernel to bring in an a530 stability fix
+- freedreno: Fix YUV sampler regression.
+- nir_to_tgsi: Use ARL instead of UARL in the !native_integers case.
+- nir: Generate load_ubo_vec4 directly for !PIPE_CAP_NATIVE_INTEGERS
+- freedreno/a6xx: Don't try to do Z-as-RGBA blits for mismatched formats.
+- ci/virgl: Mark a couple of new Crash tests as flakes.
+
+Eric Engestrom (12):
+
+- VERSION: bump to 21.1.0-rc1
+- .pick_status.json: Update to c74d93cf0187e07cdfacc448a947a8cae485eb41
+- .pick_status.json: Update to 95d9d811c91076d50385b2fbd330335b68688c69
+- .pick_status.json: Update to fcb5ba58165cd407408f8dd9a102f0c5e16a9956
+- VERSION: bump for 21.1.0-rc2
+- .pick_status.json: Mark 8acf361db4190aa5f7c788019d1e42d1df031b81 as denominated
+- .pick_status.json: Update to 35a28e038107410bb6a733c51cbd267aa79a4b20
+- .pick_status.json: Update to 7e905bd00f32b4fa48689a8e6266b145662cfc48
+- .pick_status.json: Update to 72eca47c660b6c6051be5a5a80660ae765ecbaa5
+- .pick_status.json: Update to f3d2fade82c168a7ffffa4bd7bf22585c45c711b
+- .pick_status.json: Update to f5d6a1b916fb163ee72e6a6f356937b1fbac53e0
+- .pick_status.json: Update to 1d418e79b8a0f4270775277b7115b88ac4c77113
+
+Erico Nunes (15):
+
+- lima: introduce fs and vs shader cache
+- lima/ppir: fix creation of mov node for non-ssa tex dest
+- lima: set yuv formats as external_only
+- lima: enable r and rg pixel formats again
+- lima: always set stride in texture descriptor
+- lima: implement GL_EXT_texture_swizzle
+- docs/features: add lima features
+- lima: fix max sampler views
+- lima: run nir dce after nir_lower_vec_to_movs
+- lima/ppir: remove liveness info from blocks
+- lima/ppir: remove use of live_out
+- lima/ppir: rework liveness data structures to bitset
+- lima: fix half float render
+- lima: enable rg formats for fp16 render
+- lima: increase epsilon for depthrange near == far
+
+Erik Faye-Lund (158):
+
+- zink: handle NULL views in zink_set_sampler_views
+- zink: fix vertex-stride wrangling
+- docs: fix sphinx-warnings due to lacking escaping
+- docs: fix broken link
+- docs: turn non-code into comment
+- docs/features: add missing features for zink
+- docs/features: remove a few redundant zink mentions
+- zink: always expose linear float textures
+- zink: respect feature-cap for robust buffer access
+- zink: respect feature-cap for independent blending
+- zink: respect feature-cap for sample-shading
+- zink: respect feature-cap for multi-draw indirect
+- zink: check for extension instead of function
+- zink: require vulkan memory model for tesselation
+- zink: make all xfb caps depend on extension
+- zink: respect fragment-shader depth-layout
+- zink: clone shader before lowering clip_halfz
+- docs/zink: add missing colon
+- docs/zink: add two missing required features
+- docs/zink: document the independentBlend requirement for GL3
+- docs/zink: fix phrasing of GL 3.3 requirements
+- docs/zink: add GL 4.0 requirements
+- docs/zink: add GL 4.1 requirements
+- docs/zink: add GL 4.2 requirements
+- docs/features: mark off two more extensions for zink
+- docs/zink: correct vk version for GL 4.2
+- mesa/main: remove leftover bumpmap code
+- compiler/nir: add texcoord replace lowering pass
+- gallium/st: lower point-sprites if not supported
+- zink: request texcoord replace lowering
+- docs/features: mark ssbos as done for zink
+- zink: remove stale TODO
+- zink: be more careful about limits when unsupported
+- zink: correct return-type for function
+- zink: only emit SpvCapabilityDerivativeControl when needed
+- zink: only emit cap when needed
+- zik: correct spir-v caps for textures and images
+- zink: do not insist shaders come from glsl
+- zink: add a get_primitive_mode-helper
+- zink: add a get_spacing-helper
+- zink: refactor vertex-order emitting
+- zink: wrap some long lines
+- docs: fix invalid rst syntax
+- zink: check for error when calling vkEnumeratePhysicalDevices
+- zink: explicitly check for VK_NULL_HANDLE
+- zink: support using lavapipe
+- CI: always expose docs artifacts
+- ci: make sure all lava-builders have libvulkan
+- ci: run piglit on zink with lavapipe
+- lavapipe: report correct value for minMemoryMapAlignment
+- ci: document arm oddity in build-rules
+- zink: correctly handle 64 valid timestamp bits
+- zink: enable excluded test
+- ci: enable max texture size tests for zink
+- lavapipe: handle null-buffers for xfb
+- ci: disable sporadically failing test
+- zink: drop extra set of parens
+- zink: do not use extra staging resource unless needed
+- zink: don't always require linear display-targets
+- zink: limit host-visible bind-flags
+- zink: ignore irrelevant bind-flags
+- zink: use gallium api to copy to display-target
+- zink: add X32_S8X24 format
+- zink: correct inaccurate comment
+- lavapipe: fix primitive-restart for uint8 indices
+- zink: fix emulation of no mipfilter
+- zink: fix free of ralloced pointer
+- gallium/st: fix shader_has_one_variant
+- gallium/st: fix shader_has_one_variant
+- gallium/st: reserve space in default uniform block for lowered constants
+- docs: remove stray newline
+- docs: remove excessive wrapping
+- docs: remove excessive quoting
+- docs: document zink GL 4.3 requirements
+- docs: document zink GL 4.4 requirements
+- docs: document zink GL 4.5 requirements
+- docs: document zink GL 4.6 requirements
+- docs: simplify format requirements
+- zink: factor out interpolation to helper
+- zink: emit all interpolation modes
+- zink: check for pipeline statistics feature
+- zink: check for depth-bias-clamp feature
+- zink: check for stores and atomics features
+- zink: add missing required feature
+- zink: check for mirror-clamp extension
+- zink: fix vector comparison
+- zink: drop bool attempt in float vector compares
+- zink: do not open-code vector-compares
+- zink: follow spir-v 1.0 spec
+- docs: Add 21.0.0 hashes
+- zink: tighten emitted image spir-v caps
+- zink: remove no-longer-needed clipdist1 patching
+- frontends/va: correct check for invalid format
+- zink: handle errors in nir_to_spirv
+- zink: pre-populate locations in variables
+- zink: do not depend on shader_slots_reserved for xfb
+- zink: use pre-populated shader-locations
+- lavapipe: report correct value for maxTexelBufferElements
+- docs: do not try to copy missing file
+- compiler/glsl: avoid null-pointer deref
+- docs: remove bogus zink-requirement
+- docs: remove zink incorrect requirement
+- zink: do not enable unused extension
+- docs: clarify VK_KHR_external_memory requirement
+- zink: check base-requirements
+- zink: assert that pstage is within range
+- zink: simplify shader-removal
+- zink: document why we're calling pipe_shader_type_from_mesa
+- docs: appling -> applying
+- docs: sytem -> system
+- docs: ie. -> i.e.
+- docs: vulkan -> Vulkan
+- zink: do not request scoped memory barriers
+- docs: optimisation -> optimization
+- docs: opencl -> OpenCL
+- docs: Xorg -> X.Org
+- docs: nops -> NOPs
+- docs: lod -> LOD
+- docs: lex / yacc -> Lex / Yacc
+- docs: dfsm -> DFSM
+- docs: fix incorrect possessive form
+- docs: fix invalid rst
+- docs: fix rst-quoting issues in release-notes
+- docs: spell out full name of gitlab instance
+- docs: spell out development
+- docs: spell out environment
+- docs: spell out freedesktop.org
+- docs: no-op'd -> disabled
+- docs: fix release notes for 20.3.5
+- ci: turn sphinx-build warnings into errors
+- bin/gen_release_notes.py: more robust rST escaping
+- compiler/glsl: correct the number of string-arguments
+- compiler/glsl: fix volatile string
+- compiler/glsl: clean up output
+- glsl: fix is_integer_16_32
+- glsl: fix int16 type
+- glsl: tolerate int16 loop counters
+- gallium/st: correct range for float16
+- gallium/st: correct range for int16
+- zink: document scalarBlockLayout requirement
+- zink: fix typo in function name
+- compiler/glsl: drop rogue argument to _mesa_glsl_error
+- compiler/glsl: do not cast struct to string
+- lavapipe: do not subtract 8 from enum
+- lavapipe: check all vertex-stages
+- lavapipe: check all graphics stages
+- lavapipe: ask pipe-driver for int16 support
+- zink: do not clear on cpu
+- zink: fall back from cached to non-cached memory
+- zink: do not dereference NULL pointer
+- zink: verify that src/dst support blitting
+- zink: verify that source-format support linear-filter
+- zink: fix stencil-export cap emission
+- gallivm: handle 16-bit input in i2b32
+- zink: do not read outside of array
+- zink: do not require vulkan memory model for shader-images
+- zink: correct image cap checks
+- zink: fix shader-image requirements
+
+Fan Yugang (1):
+
+- intel/tools: Show unknown instructions in decoded state.
+
+Francisco Jerez (9):
+
+- intel/gen12: Fix memory corruption issues in fused Gen12 parts.
+- intel/genxml: Fix pixel hashing 3DSTATE_3D_MODE field definitions for Gen12 and Gen12.5.
+- intel/genxml: Define 3DSTATE_SUBSLICE_HASH_TABLE command for Gen12 and Gen12.5.
+- intel/dev: Implement pixel pipe subslice counting for Gen12+.
+- iris/gen11+: Calculate pixel hashing tables instead of hardcoding.
+- iris/gen12: Implement programming of pixel pipe hashing tables.
+- anv/gen11+: Calculate pixel hashing tables instead of hardcoding.
+- anv/gen12: Implement programming of pixel pipe hashing tables.
+- iris/gen12: Work around push constant corruption on context switch.
+
+Georg Lehmann (1):
+
+- vulkan/device_select: Only call vkGetPhysicalDeviceProperties2 if the device supports it.
+
+Gert Wollny (89):
+
+- r600/nir: clone shader before first query to shader key
+- r600/sfn: fix use of b32all/and
+- r600: Add flags to INTERP_X and INTERP_Z two-slot ops
+- r600/sb: Add support for INTERP_X and INTERP_Z ops
+- r600/nir: pass array info to r600_shader for sb
+- r600/sfn: update shader array info
+- r600/sfn: Keep array registers alive for the whole shader
+- r600/sb: fix boundary assert for mem-instruction decoding
+- r600/sb: fall back to un-optimized byte code when ra_init fails
+- r600: Enable sb also for NIR
+- compiler/nir: Add support for lowering stores with nir_lower_instruction
+- r600/sfn: Fix use of cnde_int for bcsel
+- r600/sfn: Set unnormalized flag for z-coordinate when fetching from array
+- r600/sfn: Add the position input as varying
+- r600/sfn: Fix FS inputs when reading from the same position
+- r600/sfn: Fix dual source blend lowered to FRAG_DATA
+- r600/sfn: Use the constant buffer ID when given
+- gallium/tgsi_to_nir: Handle SAMPLE_MASK output in FS
+- gallium/tgsi-to-nir: Take property NUM_CLIPDIST_ENABLED into account
+- r600/sfn: Handle memory_barrier_atomic_counters
+- r600/sfn: Fix indirect_file flag for IMAGES
+- r600/sfn: remove duplicate barriers
+- r600/sfn: Base instr lowering class on nir_lower_instruction code
+- nir: Add flag to tex instruction to indicate lowering cube to array
+- nir: Add r600 specific CUBE opcode to evaluate cube texture coords and face
+- r600/sfn: Add support for cube_r600 instruction
+- r600/sfn: add lowering pass for cube textures
+- r600/sfn: fix gather with cube lowering
+- r600/sfn: use lower bool to int32 and lower int_tg4 only on shader clone
+- r600/sfn: use lowering pass for cube textures
+- r600/sfn: remove old cube texturing code
+- r600/sfn: Lower FS inputs to temps late and, and lower interpolate at
+- r600/sfn: set info about using helper_invocation to skip sb
+- r600/sfn: lower isign and iabs in nir
+- r600/sfn: Allow any channel for the helper invocation evaluation
+- r600: unify nir shader options evaluation
+- r600/sfn: remove code for nir_op_fsign since it is lowered
+- r600/sfn: remove unused emit_alu_op2_split_src_mods
+- r600/sfn: remove some old debug output
+- r600/sfn: encode component in address for local IO
+- nir: disaallow reordering for r600 shared load and remove component field
+- r600/sfn: handle querying the number of layers in cube arrays
+- r600/sfn: Fix loading TES gl_PatchVerticesIn
+- r600: Don't optimize using source modifiers on literals
+- r600: Enable GLSL 450 for nir shaders.
+- r600/sfn: Update status
+- nir: Add r600 specific intrinsic for loading the tesselation coords
+- r600/sfn: lower intrinsic_load_tess_coord to driver version
+- r600/sfn: eliminate loading unused component loads from shared memory
+- virgl: implement support for PIPE_CAP_STRING_MARKER
+- r600/sfn: sort alu opcodes in switch statememt
+- r600/sfn: remove unused code
+- r600/sfn: fix buffer offset for ssbo writes
+- r600/sfn: Fix including/not including c++ parts of header
+- r600/sfn: lower bitfield_extract and bitfield_insert in NIR
+- r600/sfn: lower idiv, imod, etc in nir
+- r600/sfn remove some leftover debug output
+- nir: add opcodes for \*find_msb_rev and lowering
+- nir: Add opcodes for fused comp + csel and optimizations
+- nir: Add r600 specific sin and cos variants
+- r600/sfn: Add algebraic lowering for fsin and fcos
+- r600/sfn: optimize comp+csel using fused ops
+- r600/sfn: lower find_msb variants to find_msb_rev
+- r60/sfn: don't lower scomp
+- r600: Handle negate of second operator in TGSI_OPCODE_UADD
+- r600/sfn: Make some value pool functions private
+- r600/sfn: Add skelton for visitor pattern
+- r600/sfn: remove extra parameter from alu assemebly emission
+- r600/sfn: fix some formatting
+- r600/sfn: switch assembler creation to use visitor
+- r600/sfn: drop the local register mep
+- r600/sfn: lower VS IO and drop old deref code
+- r600/sfn: lowered FS output IO
+- r600/sfn: remove old deref code
+- r600/sfn: force dual source blend output handling in some cases
+- r600/sfn: remove find_msb lowering in driver
+- r600/sfn: clean up multi-sample texture load
+- r600/sfn: clean up value pool interface usage in emit_stream
+- r600/sfn: use get_temp_vec4 directly when fetching
+- r600/sfn: make allocate_temp_register private to valuepool
+- r600: Fix texture buffer offset alignment
+- r600: don't set an index_bias for indirect draw calls
+- r600: Don't advertise support for scaled int16 vertex formats
+- r600/sfn: allocate number of VS outputs based on max driver_location
+- r600/sfn: Only fetch the constants that are needed in fdd*
+- r600: Enable sb for nir only on specific request
+- Revert "r600: don't set an index_bias for indirect draw calls"
+- Revert "r600: Don't advertise support for scaled int16 vertex formats"
+- r600: don't set an index_bias for indirect draw calls
+
+Giovanni Mascellani (2):
+
+- disk_cache: Fail creation when cannot inizialize queue.
+- anv: Allow null handle in DestroyDescriptorUpdateTemplate.
+
+Greg V (1):
+
+- meson: Add missing lavapipe dep
+
+Gustavo Padovan (4):
+
+- gitlab-ci: extend x86_64 kernel config to suport Intel devices
+- gitlab-ci: build the iris gallium driver as well
+- gitlab-ci: add intel APL and GLK devices with manual triggers
+- traces-iris: fix expectation for Intel GLK
+
+Hans-Kristian Arntzen (2):
+
+- radv: Take image alignment into account when allocating MUTABLE pool.
+- radv: Allocate buffer list for MUTABLE descriptor types as well.
+
+Hoe Hao Cheng (19):
+
+- zink/codegen: add some new attributes to Extension
+- zink/codegen: make 'struct' optional in Version
+- zink/codegen: enable instance extension unconditionally if promoted
+- zink/codegen: codegen-ize load_instance_extensions()
+- zink/codegen: adding/fixing comments and copyright notice
+- zink/codegen: find promotion version using vulkan registry
+- zink: remove excessive checks for loader version
+- zink: expose PIPE_CAP_ANISOTROPIC_FILTER
+- zink: VK_KHR_draw_indirect_count is a device extension
+- zink/codegen: introduce ExtensionRegistry
+- zink/codegen: more validation in zink_instance
+- zink/codegen: introduce notion of non-standard extensions
+- zink/codegen: make zink_device_info accept vk.xml
+- zink/codegen: perform basic validation in zink_device_info
+- zink/codegen: validate has_properties and has_features
+- zink/codegen: fix type annotations
+- zink/codegen: do not enable extensions that are now core
+- zink: enable KHR_shader_draw_parameters on Vulkan <1.2
+- zink: fix detection of KHR_maintenance1/2
+
+Hyunjun Ko (5):
+
+- turnip: Return correct value of tu6_load_state_size
+- nir: Set access at lower_ubo_vec4
+- ir3: fix has_src() to return correctly in ir3_nir_lower_tex_prefetch
+- ir3: Add nonuniform encodings to ir3 encoder and parser
+- turnip: Enable nonuniform descriptor indexing
+
+Iago Toral Quiroga (93):
+
+- v3dv: only update uniforms for dirty descriptors if stage has descriptors
+- v3dv: disable early Z writes if Z writes are disabled
+- v3dv: don't wait for idle on occlusion query pool resets
+- v3dv: use PIPE_TIMEOUT_INFINITE
+- v3dv: refactor checks for subpass attachment clears
+- v3dv: refactor checks for subpass attachment loading
+- v3dv: refactor checks for subpass attachment stores
+- v3dv: do not emit full tile buffers clears to handle Z/S clears
+- v3dv: enable early Z/S clears
+- v3dv: fix disabling Early Z for the whole frame
+- broadcom/compiler: fix indentation with TABs
+- broadcom/compiler: prepare TMU spilling code to account for TMU pipelining
+- broadcom/compiler: implement pipelining for general TMU operations
+- broadcom/compiler: support pipelining of tex instructions
+- broadcom/compiler: refactor image load/store TMU emission code
+- broadcom/compiler: support pipelining of image load/store instructions
+- broadcom/compiler: disable TMU pipelining if we fail to register allocate
+- broadcom/compiler: disallow spilling if TMU pipelining was enabled
+- broadcom/compiler: log spilling shaders to perf output
+- broadcom/compiler: let QPUs stall on TMU input/config overflows
+- v3dv: handle D/S buffer to image copies with the texel buffer path
+- v3dv: batch copies in the copy_buffer_to_image_blit path
+- v3dv: allow a component swizzle in copy_buffer_to_image_shader
+- v3d/common: use spaces instead of TABs
+- v3dv: serialize pipeline compilation when debugging shaders
+- v3dv: add a perf trace when a device is created with robust buffer access
+- v3d/compiler: fix QPU scheduler TMU sequence shuffling
+- broadcom/compiler: add V3D_QPU_WADDR_UNIFA
+- broadcom/compiler: pass a devinfo to check if an instruction writes to TMU
+- broadcom/compiler: name registers correctly based on V3D version
+- broadcom/compiler: don't check for GFXH-1633 on V3D 4.2.x
+- broadcom/compiler: add a helper to check if an instruction writes unifa
+- broadcom/compiler: disallow unifa overlap with thread switch/end
+- broadcom/compiler: preserve ordering of unifa/ldunifa sequences
+- broadcom/compiler: ensure 3-slot delay between unifa and ldunifa
+- broadcom/compiler: disallow reading two uniforms in the same instruction
+- broadcom/compiler: do not DCE ldunifa
+- broadcom/compiler: emit ldunifarf when needed
+- broadcom/compiler: use unifa for UBO loads from uniform addresses
+- broadcom/compiler: don't emit redundant ldunif
+- broadcom/compiler: use a helper function to decide on TMU spilling
+- broadcom/compiler: don't dump shader-db stats for failed shaders
+- broadcom/compiler: fix ldunif optimization
+- broadcom/compiler: allow dead code elimination of unused trailing ldunifa
+- broadcom/compiler: remove unused leading ldunifa
+- broadcom/compiler: add a constant alu optimization pass
+- broadcom/compiler: skip unnecessary unifa writes
+- broadcom/compiler: use nir_opt_sink
+- v3dv: fix branching to large secondaries with more than one BCL buffer.
+- broadcom/compiler: fix DAG pre-remove for merged instructions
+- broadcom/compiler: fix indentation style
+- broadcom/compiler: track pipelineable ldvary sequences
+- broadcom/compiler: pipeline smooth ldvary sequences
+- broadcom/compiler: allow pipelining of flat and noperspective varyings
+- broadcom/compiler: ldvary pipelining tracking and documentation clean-ups
+- broadcom/compiler: drop the destination for unused ldunifa
+- broadcom/compiler: be more aggressive skipping unifa writes
+- broadcom/compiler: always restart ldvary pipelining when scheduling ldvary
+- broadcom/compiler: ldvary doesn't implicitly write to r3 since V3D 4.1
+- broadcom/compiler: fix flags check for ldvary merge
+- broadcom/compiler: add an additional sanity check assert to the ldvary fixup
+- broadcom/compiler: move code block around
+- broadcom/compiler: simplify ldvary pipelining
+- broadcom/compiler: disallow ldunif during ldvary sequences if possible
+- v3dv: call util_cpu_detect() when initializing the instance
+- broadcom/compiler: flag wrtmuc with a read dependency on last_tmu_config
+- broadcom/compiler: be more flexible scheduling TMU writes
+- vulkan/util: call glsl_type_singleton_init_or_ref from vk_instance_init
+- compiler/glsl: call util_cpu_detect from glsl_type_singleton_init_or_ref
+- broadcom/compiler: fix end of tmu sequence detection
+- broadcom/compiler: use nir_opt_load_store_vectorize
+- broadcom/compiler: use nir_lower_wrmasks to simplify TMU general stores
+- broadcom/compiler: handle implicit uniform loads when optimizing constant alu
+- broadcom/compiler: optimize constant vfpack
+- broadcom/compiler: use nir_lower_undef_to_zero
+- v3dv/pipeline_cache: fix assert
+- broadcom/compiler: convert add to mul when possible to allow merge
+- broadcom/compiler: add a v3d_qpu_writes_accum helper
+- broadcom/compiler: try to fill up delay slots after a thrsw
+- broadcom/compiler: flag TMU read dependencies against last TMU config
+- broadcom/compiler: flag TMU reads with a read dependency on last TMU config
+- broadcom/compiler: dump instruction index when failing to pack instructions
+- broadcom/compiler: add a NOP count stat to shader-db
+- broadcom/compiler: try to fill up delay slots after a branch instruction
+- broadcom/compiler: try to fill up delay slots after unconditional branch
+- broadcom/compiler: implement restriction for branch after setmsf
+- broadcom/compiler: optimize branch emission for uniform break/continue
+- v3dv: fix index buffer binding
+- broadcom/compiler: add a definition for the unifa skip distance
+- broadcom/compiler: allow compilation strategies to limit minimum thread count
+- broadcom/compiler: sort constant UBO loads by index and offset
+- broadcom/compiler: rename unifa tracking fields
+- v3dv: fix descriptor set limits
+
+Ian Romanick (33):
+
+- i965: Don't advertise OpenGL 3.3+ if driconf disables GL_ARB_blend_func_extended
+- i965: Use allow_higher_compat_version option during screen initialization
+- i965: Don't parse driconf again
+- nir/algebraic: Fix a >> #b << #b for sizes other than 32-bit
+- nir/algebraic: add patterns for a >> #b << #b and a << #b >> #b
+- nir/algebraic: Partially revert 3f782cdd2591
+- intel/eu/validate: Add some checks for CMP and CMPN
+- intel/compiler: Enable the ability to emit CMPN instructions
+- intel/compiler: Make the CMPN builder work like the CMP builder
+- intel/compiler: Use CMPN for min / max on Gen4 and Gen5
+- nir/algebraic: Fix some min/max of b2f replacements
+- nir/algebraic: Remove some redundant b2f logic-op reduction patterns
+- nir/algebraic: Add some max/min optimizations with 3 variables
+- nir/range-analysis: C++ linkage
+- nir/range_analysis: Handle vectors better in ssa_def_bits_used
+- intel/compiler: Silence unused parameter warnings in files that include brw_eu.h
+- intel: Silence unused parameter warnings in files that include gen_device_info.h
+- intel: Silence unused parameter warnings in files that include genX_pack.h
+- intel/compiler: Relax some conditions in try_copy_propagate
+- gallium/dri: Remove dri2_format_mapping::cpp
+- nir/search: Constify instruction parameter to search helpers
+- nir/algebraic: Apply addition property of equality more conservatively
+- nir/algebraic: Apply addition property of equality to the other ordering too
+- nir/range_analysis: Refactor fsat handling
+- nir/range_analysis: Add "is finite" range analysis tracking
+- nir/range_analysis: Add "is a number" range analysis tracking
+- nir/range_analysis: Fix analysis of fmin, fmax, or fsat with NaN source
+- nir/search: Use range analysis for is_finite
+- nir/range_analysis: Simplify analysis of bcsel
+- mesa: Add anything dynamically indexed before any non-dynamically indexed
+- mesa: Clean up _mesa_layout_parameters after previous commit
+- tgsi_exec: Fix NaN behavior of saturate
+- tgsi_exec: Fix NaN behavior of min and max
+
+Icecream95 (60):
+
+- pan/bi: Lower 64-bit integers
+- pan/bi: Handle 64-bit pack and unpack operations
+- pan/bi: Add some compute intrinsic loads
+- pan/bi: Set compute lowering options
+- pan/bi: Improve interoperability of the command-line disassembler
+- pan/bi: Implement load/store intrinsics
+- pan/bi: Implement load_kernel_input
+- panfrost: Set bifrost_props for compute shaders
+- pan/bi: Improve unknown intrinsic error
+- panfrost: Use the correct NIR options for OpenCL on Bifrost
+- pan/bi: Use pan_nir_lower_64bit_intrin
+- panfrost: Add a sysval for local_group_size
+- panfrost: Add a sysval for local_work_dim
+- panfrost: Assert on sysval overflow
+- pan/mdg: Limit int64 vectorization
+- pan/mdg: Don't reorder loads/stores past each other
+- pan/mdg: Allow 64-bit src_bitsize for comparison operations
+- pan/bi: Add w0 to the 'h01' swizzle bucket
+- pan/bi: Lower umul_high
+- panfrost: Set TLS for compute jobs
+- pan/bi: Implement saturated add/sub operations
+- pan/bi: Implement ihadd/irhadd operations
+- pan/bi: Implement packing ops between 32-bit vec1 and 16-bit vec2
+- pan/mdg: Fix spilling when scratch memory is used
+- pan/bi: Iterate from zero when setting RA interference
+- panfrost: Add a function to determine if a resource is 2D
+- panfrost: Only checksum resources when it makes sense to
+- panfrost: Add a debug flag to disable checksumming
+- panfrost: Transaction elimination support
+- panfrost: Fix the tile size assertion
+- pan/decode: Free mapped memory objects on BO unreference
+- panfrost: Add support for INTEL_blackhole_render
+- panfrost: Use normal malloc/free instead of ralloc for surfaces
+- panfrost: Add the tiler heap to fragment jobs
+- pan/bi: Return the size of the last clause from bi_pack
+- pan/bi: Fix shader prefetch size
+- panfrost: Fix clear color packing for 12-byte formats
+- pan/bi: Don't check liveness unless the index is valid
+- pan/bi: Use the correct size for UBO loads
+- pan/bi: Remove check for first_ubo_is_default_ubo
+- pan/bi: Implement image load/store
+- pan/bi: nir_intrinsic_image_size support
+- st/mesa: Update constants on alpha test change if it's lowered
+- panfrost: Disable early-z when alpha test is used
+- pan/mdg: Rename load/store operations
+- pan/mdg: Use appropriate sizes for global loads/stores
+- pipe-loader,gallium/drm: Fix the kmsro pipe_loader target
+- pipe-loader: Stop trying to use kmsro for vgem
+- panfrost: Implement panfrost_set_global_binding
+- panfrost: Flush output after disassembling shaders
+- panfrost: Only do point coord replacement for PIPE_PRIM_POINTS
+- panfrost: Only add resource checksum BOs to the batch once
+- panfrost: Align BO size to 4096 bytes
+- panfrost: Add fast path for graphics work group computation
+- panfrost: Unset shared/scanout binding flags for staging resources
+- pan/bi: Skip nir_opt_move/sink for blend shaders
+- panfrost: Fix shader texture count
+- pan/decode: Allow frame shader DCDs to be in another BO than the FBD
+- pan/mdg: Fix calculation of available work registers
+- panfrost: Fix viewport scissor for preload draws
+
+Ilia Mirkin (55):
+
+- nv50/ir: ignore FS_BLEND_EQUATION_ADVANCED
+- nv50,nvc0: explicitly list recently-added caps
+- st/mesa: fix broken moves for u2i64 and related ops
+- nv50/ir: clear dnz flag when converting mul/mad to simpler ops
+- glsl: only expose int64 atomics when extension is enabled
+- cso: set index_bounds_valid = true for arrays draws
+- nvc0: index_bias is now only set for indexed draws
+- nvc0/ir: add fixup to deal with interpolateAtSample with non-MSAA
+- nv50,nvc0: clear internal vbo masks based on the trailing slots
+- ci: remove nouveau from shader-db runs
+- nouveau: reinstate fencing on screen destroy
+- nv50: add PIPE_CAP_NIR_IMAGES_AS_DEREF to unsupported list
+- nv50,nvc0: add scissored clear support
+- st/mesa: do scissored clears on depth/stencil as well when supported
+- i965: support GL_EXT_color_buffer_half_float
+- mesa: fix conditions for fp16 render format eligibility
+- mesa: fix fbo attachment size check for RBs, make it trigger in ES2
+- mesa: add tracking of reduction mode
+- st/mesa: add EXT_texture_filter_minmax support
+- nvc0: enable minmax reductions on gm200+
+- docs: add notes about nvc0 support of ARB/EXT_texture_filter_minmax
+- mesa: only report INCOMPLETE_FORMATS for GLES1 / desktop
+- gallium,st: add missing viewport swizzles
+- nv50: initialize target for blit source surfaces
+- nv50,nvc0: remove explicit target argument from view creation
+- nv50: add appropriate space check before adding new pushbuffer
+- nvc0: ensure sufficient push space for indirect data
+- nvc0: fix reported driver queries for Pascal and later GPUs
+- mesa: fix restoring of texture attributes for msaa binding points
+- nv50: adapt texture and constbuf paths for compute shaders
+- nv50: add resource tracking for shader images and buffers
+- nv50: implement memory barrier handling
+- nv50: add texture, constbuf, image, buffer validation
+- nv50: pass in third axis via user param
+- nv50/ir: retrieve (n)ctaid.z from first user param
+- nv50/ir: force shared memory indirect to be an address
+- nv50/ir: do not use inline offsets for global, ensure indirect access
+- nv50/ir: fix emission of RED
+- nv50/ir: lower buffer to global
+- nv50/ir: fix emitting movs from imm to short registers
+- nv50/ir: fix emission of cvt with half-reg destinations
+- nv50/ir: fix emission of logic ops on half-regs
+- nv50/ir: fix emission of shifts on half-regs
+- nv50/ir: logic ops on half-regs can't take an immediate
+- nv50/ir: add support for 16-bit immediates
+- nv50/ir: fix emission of 16-bit add
+- nv50/ir: fix emission of cas without a destination
+- nv50: fix expression for ucp offset
+- nv50/ir: avoid inlining results of a locked load
+- nv50/ir: fix emission of ld/st lock/unlock
+- st/mesa: adapt for the case where buffers are not supported in frag
+- nv50/ir: fix texture size for msaa textures
+- nv50: emulate indirect draws
+- nv50/ir: fake SV_THREAD_KILL support
+- nv50: enable ARB_framebuffer_no_attachments
+
+Italo Nicola (15):
+
+- panfrost: fix attribute continuation decoding
+- panfrost: add 3d attribute buffer continuation to XML
+- panfrost: decode 3d attribute continuation
+- panfrost: add resource modifier conversion
+- panfrost: implement gallium->set_shader_images
+- panfrost: emit shader image attribute descriptors
+- panfrost: implement image_size sysval
+- pan/mdg: create nir pass to lower image coord bitsize
+- pan/mdg: enable image bitsize lowering pass
+- pan/mdg: add ld_image opcodes
+- pan/mdg: rename st_image opcodes and add float16 versions
+- pan/mdg: implement shader image instructions
+- pan/mdg: implement nir_intrinsic_image_size
+- panfrost: advertise images for midgard
+- pan/mdg: prevent csel_v from being scheduled alongside writeout
+
+Iván Briano (4):
+
+- anv: don't advertise mipmaps for linear 3D surfaces on BDW
+- anv: move buffer size alignment into helper function
+- anv: use helper function to get the buffer size
+- intel, anv: propagate robustness setting to nir_opt_load_store_vectorize
+
+James Jones (4):
+
+- nouveau: Stash supported sector layout in screen
+- nouveau: Use DRM_FORMAT_MOD_NVIDIA_BLOCK_LINEAR_2D
+- nouveau: no modifier != the invalid modifier
+- nouveau: Use format modifiers in buffer allocation
+
+James Park (22):
+
+- radv: Use linker pragma to simulate weak functions
+- radv: Remove unnecessary headers
+- radv: Stub sections that don't have _WIN32 support
+- radv: Modify radv_descriptor_set for MSVC legality
+- radv: Pointer arithmetic on char/uint8_t, not void
+- radv: Disable calibrated timestamps on Windows
+- radv: Use typed outarray API
+- radv: Fix struct initialization for MSVC
+- gallium/tessellator: Fix warning suppression
+- microsoft: Fix comma in variadic macro for MSVC
+- ac: Remove unnecessary header
+- radv: Use typed outarray API
+- amd: Disable surface modifier test on Windows
+- radv: Pointer arithmetic without void*
+- radv: Update JSON generator if Windows
+- vulkan: Use typed outarray API
+- vulkan: Fix source list for vulkan_wsi on Windows
+- vulkan: Update dispatch table gen for Windows
+- vulkan/util: Use util_bitcount
+- ac/rgp: BSD elf library compatibility
+- amd: Hide amdgpu_drm.h on Windows
+- amd: Hide drm_fourcc.h on Windows
+
+James Zhu (1):
+
+- amd: add Aldebaran chip enum
+
+Jan Beich (2):
+
+- ac: prefer system EM_AMDGPU definition
+- ac/rgp: define EM_AMDGPU if missing for compatibility
+
+Jason Ekstrand (195):
+
+- intel/tools: Decode COMPUTE_WALKER
+- intel/fs: Allow compute dispatch without a pushed subgroup ID on Gen12-HP
+- anv: Add a general state pool
+- intel/fs: Emit code for Gen12-HP indirect compute data
+- anv: Enable push constants on gen12-hp
+- intel/genxml,anv,iris: Drop the legacy compute path from gen125.xml
+- anv: Add a trivial implementation of VK_KHR_deferred_host_operation
+- anv: Exit early from cmd_buffer_apply_pipe_flushes
+- anv: Take the set of stages to flush in flush_descriptor_sets
+- anv: Only flush descriptors used by the pipeline
+- anv: Early-exit from cmd_buffer_flush_state
+- nir/lower_int64: Add a level of wrapper functions
+- nir/lower_int64: Fix lowering of f2[ui]64 for 16-bit float
+- nir/lower_int64: Add lowering for some 64-bit subgroup ops
+- nir/lower_int64: Add lowering for 64-bit iadd shuffle/reduce
+- nir/lower_int64: Lower 64-bit vote_ieq
+- intel/compiler: Return 1 for immediates in regs_read
+- intel/compiler: Move brw_reg_type_for_bit_size to brw_reg_type.h
+- intel/reg,fs: Handle immediates properly in subscript()
+- intel/fs: QUAD_SWIZZLE requires packed data
+- intel/fs: Support 64-bit SEL_EXEC on Gen11+
+- intel/fs: Support 64-bit SHUFFLE on Gen11+
+- intel/fs: Support 64-bit CLUSTER_BROADCAST on Gen11+
+- intel/fs: Properly lower 64-bit MUL on 64-bit-incapable platforms
+- intel/fs: Refactor our shuffle emit code
+- intel/fs: Implement umin/umax shuffle
+- anv: Advertise shaderInt64 on Gen11+
+- anv: Break SAMPLE_PATTERN and MULTISAMPLE emit into helpers
+- intel/fs: Add an ex_desc field to fs_inst for SHADER_OPCODE_SEND
+- anv: Drop anv_dump
+- anv: Fix an old parameter name in GetDeviceQueue
+- anv: Refactor anv_queue_finish()
+- anv: Add an anv_queue_family struct
+- nir/from_ssa: Respect and populate divergence information
+- vulkan/meson: Add missing dependencise on vk_extensions_gen.py
+- anv: Clean up the vk_device on the CreateDevice error path
+- radv: Properly clean up vk_device
+- turnip: Properly clean up vk_device
+- v3dv: Properly clean up vk_device
+- lavapipe: Properly clean up vk_device
+- vulkan: Move vk_device to its own file
+- vulkan: Add a return code to vk_device_init
+- vulkan: Add common extension tables
+- anv: Use the common extension table struct
+- vulkan: Add common dispatch table generation
+- vulkan: Add dispatch table loading helpers
+- vulkan-overlay-layer: Use the new dispatch tables
+- vulkan: Add dispatch table lookup helpers
+- vulkan: Add common instance and physical device structs
+- vulkan: Add generators for instance trampoline functions
+- vulkan: Add entrypoint tables and related helpers
+- vulkan: Add common Get*ProcAddr implementations
+- vulkan: Add a common entrypoint table generator
+- anv: Add a single anv_genX switch macro
+- anv: Use the common dispatch framework
+- vulkan: Add framework for common entrypoints
+- vulkan,anv: Move GetDeviceProcAddr to common code
+- vulkan,anv: Add common entrypoints for VK_EXT_private_data
+- anv: Make Get*MemoryRequirements a wrapper
+- vulkan,anv: Move a bunch of trivial wrappers to common code
+- vulkan,anv: Move VK_KHR_copy_commands2 wrappers to common code
+- vulkan: Add a truly common VK_EXT_debug_report implementation
+- anv: Switch to the common VK_EXT_debug_report
+- turnip: Use the common dispatch framework
+- turnip: Use common entrypoints for VK_EXT_private_data
+- turnip: Drop some legacy wrappers in favor of common code
+- turnip: Switch to the common VK_EXT_debug_report
+- lavapipe: Drop some wrappers in favor of common code
+- v3dv: Drop v3dv_instance::app_info
+- v3dv: Use common entrypoints for VK_EXT_private_data
+- v3dv: Switch to the common VK_EXT_debug_report
+- radv: Use common entrypoints for VK_EXT_private_data
+- radv: Switch to the common VK_EXT_debug_report
+- vulkan: Make vk_debug_report_callback derive from vk_object_base
+- anv: Use vk_object_base::type for debug_report
+- vulkan: Use vk_object_base::type for debug_report
+- vulkan: Make the debug_report implementation internal
+- anv,radv: Use common entrypoints for VK_KHR_deferred_operation
+- vulkan: Rework vk_device_init and friends
+- vulkan: Drop the type_prefix parameter from gen_extensions
+- nir: Add some ssa-only fast-paths for nir_src rewrite
+- nir: Drop the lower_mem_constant_vars declaration
+- vulkan: Add a common helper for enumerating instance extension properties
+- vulkan: Rework extension disabling on Android
+- anv: Pull the patch version from the XML
+- anv: Make anv_icd.py more generic and independent
+- anv,vulkan: Move anv_icd.py to a common location
+- anv: Move extension tables to anv_device.c
+- anv: Add fake graphics-only and compute-only queue families
+- nir: Add a couple helpers for phis and cursors
+- nir/lower_bit_size: Support phi instructions
+- intel/nir: Lower 8-bit phis on Gen11+
+- nir: Add some range analysis for used bits
+- nir/algebraic: Clean up up-cast of down-cast when we can
+- nir/algebraic: Covert up-cast of down-cast to extract on Intel
+- spirv: Store the nir_function in vtn_function
+- spirv: Delete the impl for prototype-only functions
+- nir: Don't optimize bcsel-of-shuffle across blocks
+- nir: Fix parameter order in the bcsel-of-shuffle optimization
+- nir/opt_large_constants: Handle generic pointers
+- intel/fs: Shuffle can't handle source modifiers
+- anv/formats: Advertise linear sampling on depth formats
+- anv/android: Re-implement AcquireImageANDROID
+- intel/mi_builder: Create a context in the tests
+- intel/mi_builder: Delete a bogus comment
+- intel/mi_builder: Fix a misleading comment
+- intel/mi_builder: Short-circuit shifts in more cases
+- intel/mi_builder: Add constant folding
+- intel/mi_builder: Rewrite unit tests in terms of constant folding
+- intel/mi_builder: Add tests for gen_mi_z and gen_mi_nz
+- intel: Rename gen_mi_builder.h to mi_builder.h
+- intel/mi_builder: Drop the gen\_ prefix
+- intel/mi_builder: Use AddCSMMIOStartOffset for LRI
+- intel/mi_builder: Add ieq/ine helpers
+- intel/mi_builder: Support inverted values in mi_store
+- intel/mi_builder: Add load/store_offest on GFX 12.5+
+- genxml: Clean up MI_SET_PREDICATE
+- intel/batch_decoder: Don't follow predicated MI_BATCH_BUFFER_START
+- intel/mi_builder: Use softpin for tests on gen8+
+- intel/mi_builder: Return an address from __gen_get_batch_address
+- intel/mi_builder: Add control-flow support
+- nir: Add and use a new nir_ssa_def_rewrite_uses_src helper
+- nir: Make nir_ssa_def_rewrite_uses take an SSA value
+- nir: Make nir_ssa_def_rewrite_uses_after take an SSA value
+- intel/mi_builder: Fix some indentation
+- intel/mi_builder: Fix a couple of #ifs
+- anv: Drop anv_extensions.py
+- turnip: Move the CreateRenderPass wrapper to common code
+- anv: Move multialloc to common code
+- vulkan: Use VK_MULTIALLOC in CreateRenderPass
+- anv: Move vk_format helpers to common code
+- vulkan: Use correct aspectMask in CreateRenderPass
+- vulkan: Add some asserts and checks for multiview in CreateRenderPass
+- vulkan: Preserve preserve attachments in CreateRenderPass
+- anv: Drop CreateRenderPass
+- radv/meta: Use CreateRenderPass2
+- radv: Drop CreateRenderPass
+- intel/fs: Use INTEL_MASK for pushish constant address masking
+- intel/fs: Handle payload node interference in destinations
+- vulkan: Use ALWAYS_INLINE for multialloc
+- vk/alloc: Handle zero sizes better in vk_multialloc_add
+- vulkan/alloc: Add VK_MULTIALLOC_DECL macros
+- vulkan/util: Add a type parameter to vk_multialloc_add
+- vulkan/alloc: Use char * for pointer arithmetic
+- anv,genxml: Handle L3SQCREG1_SQGHPCI in GenXML
+- anv: Add an anv_batch_write_reg macro
+- iris: Add an iris_write_reg macro
+- genxml: Make 1-bit L3$ config register fields bool on Gen7
+- intel/fs,rt: Add a predicate to load_global_const_block
+- anv: Use load_global_constant for shader constants
+- anv: Use nir_shader_instructions_pass in apply_pipeline_layout
+- anv/apply_pipeline_layout: Refactor descriptor chasing code
+- anv/apply_pipeline_layout: Rework the early pass index/offset helpers
+- anv/apply_pipeline_layout: Lower UBO loads in the early pass
+- anv/apply_pipeline_layout: Run DCE between the early and late passes
+- anv/apply_pipeline_layout: Move bounds checking later for index/offset
+- anv/apply_pipeline_layout: Plumb through a UBO address format
+- anv/apply_pipeline_layout: Add some switch statements
+- nir: Add a new 64+32-bit address format
+- anv: Use 64bit_global_32bit_offset for SSBOs
+- anv: Rework the 64bit_bounded_global resource index format
+- anv: Zero out the last dword of UBO/SSBO descriptors in the shader
+- anv/apply_pipeline_layout: Apply dynamic offsets in load_ssbo_descriptor
+- anv/apply_pipeline_layout: Refactor all our descriptor address builders
+- anv/apply_pipeline_layout: Rework the desc_addr_format helper
+- anv/apply_pipeline_layout: Use the new helpers for early lowering
+- anv/apply_pipeline_layout: Use the new helpers for images
+- nir/lower_io: Support global addresses for UBOs in nir_lower_explicit_io
+- anv: Add a pass for lowering A64 UBO access
+- anv: Do UBO loads with global addresses for bindless
+- anv/apply_pipeline_layout: Add support for A64 descriptor access
+- nir: Add image atomic_fmin/fmax intrinsics
+- spirv: Add support for SPV_EXT_shader_atomic_float_min_max
+- intel/fs: Add support for 16-bit A64 float and integer atomics
+- intel/genxml: Binding table pointers are 15 bits on GFX version 12.5+
+- intel/tools: Handle milti-LRI in the batch decoder
+- intel/tools: Handle GT_MODE in the batch decoder
+- intel/genxml: Make BindingTablePoolEnable a bool
+- intel/tools: Handle BINDING_TABLE_POOL_ALLOC in batch decoding
+- anv: Align inline uniform data to ANV_UBO_ALIGNMENT
+- anv: Implement VK_EXT_conservative_rasterization
+- anv: Fix coverage masks for VK_EXT_conservative_rasterization
+- intel: Drop gen_device_info::has_resource_streamer
+- anv: Clean up anv_device_memory::base on failure
+- anv: Refactor framebuffer creation
+- anv: Clean up anv_descriptor_pool::base on the error path
+- anv: Clean up anv_semaphore::base on the error path
+- vulkan: Add a vk_object_multialloc helper
+- anv: Use vk_object_alloc/free
+- anv: Make memory type and queue family pointers const
+- intel: fix querying mip levels on null surfaces on SKL and prior
+- intel/compiler: Don't insert barriers for NULL sources
+- anv: Use the same re-order mode for streamout as for GS
+- intel/isl: Fix isl_color_value_unpack to match the prototype
+- intel/nir: Set lower txs with non-zero LOD
+
+Jeremy Huddleston (5):
+
+- darwin: Use the system libexpat
+- util: Fix pointer to integer conversion error when using libunwind
+- darwin: Use the system libunwind
+- Fall back on clock_gettime when timespec_get() is unavailable
+- Adjust dylib compatibility versions to match what was set by mesa-18.3's autotools-based builds
+
+Jesse Natalie (76):
+
+- nir: Work around MSVC x86 internal compiler error
+- main: Undefine MemoryBarrier for Windows
+- glapi: Undefine MemoryBarrier
+- mapi: Undefine MemoryBarrier
+- drisw: Disable automatic use of layered drivers with LIBGL_ALWAYS_SOFTWARE
+- wgl: Refactor screen creation to a function
+- wgl: Add a loop for screen creation with an ordered list of fallbacks
+- d3d12: Fail screen creation if a shader validator is needed and can't be created
+- wgl: Disable automatic use of layered drivers with LIBGL_ALWAYS_SOFTWARE
+- CI: Use a sha for the Windows SPIRV-LLVM-Translator dependency
+- microsoft/clc: Add -fgnu89-inline to clang args
+- microsoft/clc: Add test with inline function
+- clover: Add -fgnu89-inline to Clang command line
+- microsoft/clc: Only apply float scaling to 32bit fdiv
+- microsoft/clc: Let lower_vars_to_explicit_types fill kernel input driver_location
+- microsoft/clc: Fix wrap modes for inline samplers for integer textures
+- microsoft/clc: Move inline samplers to the end of the variable list
+- microsoft/clc: Use driver_location for metadata instead of re-computing offsets
+- microsoft/clc: Re-order dead variable removal after uniform vars_to_explicit_types
+- microsoft/clc: Add a test with an unused kernel arg
+- glapi: Support "ELF" TLS on Windows
+- docs: Document USE_ELF_TLS can work on Windows too
+- meson/gallium: Add an option to not use LLVM for gallium draw module
+- d3d12: Handle null constant buffers
+- nir: Add a nir_after_instr_and_phis helper
+- microsoft/compiler: Don't separate phis while inserting upcasts
+- d3d12: Move descriptor pools to screen, and add lock
+- d3d12: Handle is_new_style_shadow comparison filtering
+- d3d12: Really handle null constant buffers
+- u_format: Add restrict to fn pointer and manual format pack/unpack/fetch
+- panfrost: Add a Meson dependency on bi_opcodes.h for bifrost_compiler
+- meson, util: Make zlib optional again
+- nir: Temporarily disable optimizations for MSVC ARM64
+- wgl: Fix wglCreatePbufferARB pixel format lookup
+- d3d12: Use ID3D12Device9::CreateCommandQueue1 when available
+- d3d12: Use CreateDXGIFactory2 and use the debug flag when appropriate
+- wgl: Add unit test infrastructure for OpenGL32.dll on Windows
+- wgl: Add a context to framebuffer destruction
+- d3d12: Add a constant for num_buffers
+- d3d12: Clean up swapchains on framebuffer destruction
+- wgl, d3d12: Add a d3d12-specific test for swapchain leaks
+- microsoft/compiler: Move blob_init earlier to prevent crash on failure
+- microsoft/compiler: Add copy_prop_vars to optimization loop
+- microsoft/compiler: Add a lowering pass to split clip/cull distance compact arrays
+- microsoft/compiler: Enable dxil_nir.h to be included from C++
+- microsoft/compiler: Support compact arrays for clip/cull in nir_to_dxil
+- d3d12: Use compact arrays for clip/cull distance
+- microsoft/spirv_to_dxil: Implement TODO for removing dead functions
+- spirv_to_dxil: Handle clip/cull distance
+- microsoft/compiler: Fix barrier flag for shared memory
+- microsoft/spirv_to_dxil: Lower globals to function_temp
+- microsoft/spirv_to_dxil: Lower io arrays
+- microsoft/compiler: Support fp16 i/o vars
+- nir: Add a new opcode for [un]packing doubles
+- microsoft/compiler: Add a lowering pass to emit double [un]pack instructions
+- microsoft/compiler: Implement new double pack/unpack alu ops
+- microsoft/spirv_to_dxil: Support doubles
+- microsoft/compiler: Add some more float16 support
+- meson: Refuse to build lavapipe without llvmpipe
+- vtn: Don't warn about linkage capability if we're creating a NIR library
+- vtn: Add a cap for CL drivers to support read-write images
+- microsoft/clc: Update unit test to always use COMMON state for buffers
+- meson: For MSVC, suppress warnings generated by useless delayloads
+- driconf: Remove default values from string driconf entries
+- CI: Enable -werror for Windows
+- vtn: Support scoped control barriers for OpenCL too
+- nir_opt_deref: ptr_as_array(deref_cast<T*>(x))[0] isn't the same as x[0] if the cast has alignment
+- nir: Fix MSVC warning C4334 (32bit shift cast to 64bit)
+- d3d12: Fix MSVC warning C4334 (32bit shift cast to 64bit)
+- microsoft/clc: Fix MSVC unreferenced variable warnings
+- microsoft/clc: Fix undeclared function warning
+- microsoft/compiler: Fix MSVC warning C4334 (32bit shift cast to 64bit)
+- shader_enums: Fix MSVC warning C4334 (32bit shift cast to 64bit)
+- gallium/aux: Fix MSVC warning C4334 (32bit shift cast to 64bit)
+- llvmpipe: Fix MSVC warning C4334 (32bit shift cast to 64bit)
+- xmlconfig: Fix MSVC warning C4334 (32bit shift cast to 64bit)
+
+Jesse Schwartzentruber (1):
+
+- glcpp: Fix undefined behaviour in glcpp
+
+Joel Linn (2):
+
+- freedreno/a2xx: fix/add RBBM perfcounter
+- freedreno/a2xx: add RB perfcounter 1-3
+
+Jonathan Marek (13):
+
+- turnip: fix logicOp
+- turnip: delete unused vk_format_parse.py file
+- turnip: use vk_format_is_int to disable COLOR_ATTACHMENT_BLEND_BIT
+- turnip: IMAGE_FILTER_{LINEAR,CUBIC}_BIT only for non-integer formats
+- turnip: don't always use 3d ops for blit_image
+- turnip: add missing register write to disable dithering
+- freedreno/registers: use macro instead of inline function for array regs
+- freedreno/a6xx: update perfcntr registers (declare as arrays)
+- freedreno/a6xx: always use reg64 for address registers (no LO/HI)
+- freedreno/a6xx: update some registers
+- freedreno/a6xx: set SP_PERFCTR_ENABLE in computerator
+- turnip: implement VK_KHR_shader_float_controls
+- turnip: enable VK_KHR_shader_float16_int8
+
+Jordan Justen (28):
+
+- intel/genxml/gen125: Add CFE_STATE and COMPUTE_WALKER
+- intel/compiler: Disable push constants on gen12-hp
+- anv: Emit CFE_STATE for gen12-hp
+- anv: Don't use MEDIA_INTERFACE_DESCRIPTOR_LOAD for gen12-hp
+- anv: Use COMPUTE_WALKER for gen12-hp
+- iris: Add support for COMPUTE_WALKER
+- iris: Fix android build due to missing link to libmesa_iris_gen125
+- anv: Add exec_flags to anv_queue
+- anv: Turn device->queue into an array
+- anv: Print queue number with INTEL_DEBUG=bat
+- anv: Support i915 query (DRM_IOCTL_I915_QUERY) from Linux v4.17
+- anv: Gather engine info from i915 if available
+- anv: Add anv_gem_count_engines
+- anv: Support multiple engines with DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT
+- anv: Add ANV_QUEUE_OVERRIDE env-var to override advertised queues
+- i965: Call util_cpu_detect() early in screen creation
+- intel: Use GEN_VERSIONx10 in more places
+- intel/dev: Add devinfo genx10 field
+- intel: Use devinfo genx10 field
+- anv: Restructure mem heap/type init code
+- anv: Put cache memory type first on non-llc platforms
+- anv: Add mem heap/type support for local-mem
+- anv: Drop has_slm in emit_l3_config for gen11+
+- anv: Use fallback paths if DRM_I915_QUERY_ENGINE_INFO fails
+- i965/gen11: Fix must-be-ones bit positions in 3D_MODE
+- genxml/gen12: 3D_MODE bits 31:16 are no longer must-be-one
+- Revert "intel/compiler: Silence unused parameter warning in update_inst_scoreboard"
+- intel/compiler: Fix INTEL_DEBUG=hex
+
+Jose Maria Casanova Crespo (4):
+
+- v3d: Enables DRM_FORMAT_MOD_BROADCOM_SAND128 support
+- v3d: YUV formats at is_dmabuf_modifier_supported are external_only
+- v3d: YUV formats at query_dmabuf_modifiers are external_only
+- v3d: DRM_FORMAT_MOD_BROADCOM_SAND128 only available for NV12 format.
+
+Joshua Ashton (3):
+
+- lavapipe: handle NULL pStrides in CmdBindVertexBuffers2EXT
+- lavapipe: implement CmdBindVertexBuffers with CmdBindVertexBuffers2EXT
+- lavapipe: enable KHR_image_format_list
+
+José Fonseca (6):
+
+- scons: Add u_format_pack.h include path.
+- wgl: Match opengl32.dll export ordinals.
+- util: Always use timespec_get on Windows.
+- appveyor: Remove integration.
+- scons: Remove.
+- gitlab-ci: Build meson-mingw32-x86_64 w/o zlib.
+
+Juan A. Suarez Romero (40):
+
+- v3d: fix dest offset in TFU setup
+- v3d: use a compatible supported format for TFU-based blit
+- vc4/ci: Replace expect script by python script
+- ci/vc4: allow custom timeout values for activity
+- ci/vc4: rename stage to Broadcom
+- ci/vc4: Add piglit job
+- ci: Bump deqp to current vulkan-cts-1.2.5.1
+- ci: add option to overwrite CPU arch
+- ci/v3d: Add V3D and V3DV testing
+- ci/v3d: Update expected resuls for piglit
+- ci/piglit: allow parallel piglit jobs
+- ci/vc4/v3d: Parallelize piglit jobs
+- ci/piglit: fix parallel piglit results
+- ci/baremetal: highlight message errors
+- ci/broadcom: retry always when serial log timeout
+- ci: Bump deqp to vk-gl-cts 1.2.5.2
+- ci/broadcom: allow custom kernels
+- vc4: destroy renderonly object if present
+- ci/armXX: add libgl1-mesa-dev dependency
+- ci/v3dv: add flaky test in the skip list
+- ci/vc4/v3d: run piglit testsuite against Xorg
+- ci/broadcom: use new piglit runner
+- ci/broadcom: update piglit expected results
+- ci/v3d: run full GLES3 and GLES31 testsuite
+- broadcom/compiler: fix unused value
+- v3dv: fix unused value
+- ci/v3dv: update flaky tests
+- broadcom/cle: do not leak spec
+- ci/broadcom: update expected list
+- v3d: use uint type in _gen_unpack_uint
+- broadcom/compiler: fix first_component assertion
+- broadcom/compiler: use signed pointers for packed condition
+- ci/broadcom: use SNMP to turn on/off devices
+- broadcom/compiler: use VPM offsets in GS load_per_vertex input
+- v3d: use GS_BIN inputs as VS_BIN outputs
+- v3dv: fix assertion
+- ci: Update VK-GL-CTS to 1.2.6.0
+- v3d: do not emit attribute if has no resource
+- ci/v3dv: skip Vulkan waiver tests
+- util/hash_table: do not leak u64 struct key
+
+Jérôme Glisse (3):
+
+- gallium: add support for SVM (Share Virtual Memory) migrate
+- clover: implement clEnqueueSVMMigrateMem
+- nouveau: add support for SVM migrate
+
+Karol Herbst (9):
+
+- clover: track allocated svm pointers
+- clover/api: make use of validate_mem_migration_flags in clEnqueueMigrateMemObjects
+- nouveau: print warning about unhandled cap only once
+- clover: simplify image arguments
+- clover: rework quering image max sizes
+- clover: Fix build with llvm-12.
+- clover: Add missing include for llvm-12 build fix
+- tegra/context: fix regression in tegra_draw_vbo
+- tegra/context: unwrap indirect_draw_count as well
+
+Keith Packard (2):
+
+- glx: Provide glvnd wrapper for glXSwapIntervalEXT
+- wsi/x11: Fix type of target_msc argument to x11_present_to_x11_dri3
+
+Kenneth Graunke (62):
+
+- vbo: Don't set node->min_index = max_index = indices_offset when merging
+- vbo: Only mark merged line strips as lines when actually converting them
+- tnl: Try not to botch index buffer munging when start > 0.
+- tnl: Respect \`start` when converting indices to GLuint
+- tnl: Reset nr_bos to 0 between map/unmap cycles.
+- Revert "mesa: allow half float textures based on ARB_half_float_pixel"
+- iris: Consider resolves after changing a resource's aux state
+- iris: Drop find_existing_assembly optimization from program cache
+- iris: Drop iris_print_program_cache().
+- iris: Refactor iris_debug_recompile interface to take a shader.
+- intel: Produce a "constrained" output from gen_get_urb_config()
+- iris: Reconfigure the URB only if it's necessary or possibly useful
+- iris: Move the URB size checks into iris_update_compiled_xs
+- iris: Properly handle new unbind_num_trailing_slots parameters
+- iris: Use shader_info rather than vs_prog_data for draw parameter checks
+- iris: Minor code restyling in iris_bind_vs_state
+- iris: Move VS draw parameter dirty flagging to iris_bind_vs_state
+- iris: Refcount shader variants
+- iris: Store a list of shader variants in the shader itself
+- iris: Enable PIPE_CAP_SHAREABLE_SHADERS.
+- iris: add hooks to call INTEL_MEASURE
+- iris: Fill out scratch base address dynamically
+- iris: Remove context from iris_debug_recompile
+- iris: Remove context from iris_upload_shader()
+- iris: Remove context from iris_compile_vs and friends
+- iris: Remove context from iris_create_uncompiled_shader
+- iris: Remove context from iris_disk_cache_retrieve
+- iris: Make a pin_scratch_space() helper
+- iris: Reference the shader variant for last_vue_map as well
+- iris: Pin surface state buffers after possibly updating the clear color
+- i965: Rename use_intel_mipree_map_blit to use_blitter_to_map
+- i965: Rename intel_batchbuffer_* to brw_batch_*.
+- i965: Rename intel_screen to brw_screen
+- i965: Rename intel_texture_{object,image} to brw_texture_{object,image}
+- i965: Rename intel_renderbuffer to brw_renderbuffer
+- i965: Rename intel_mip* to brw_mip*.
+- i965: Use __func__ in blorp perf_debug macros
+- i965: Rename intel_buffer_object to brw_buffer_object
+- i965: Rename intel_image_format and intel_buffer to brw_*
+- i965: Rename the rest of intel_* functions to brw_*
+- i965: Rename intelInit and brwInit camel-case functions to brw_*
+- i965: Rename some camel-case local variables
+- i965: Rename more camel-case functions to brw and underscore style
+- i965: Rename DRI extension structs to be "brw" instead of "intel"
+- i965: Eliminate all tabs except in brw_defines.h
+- tnl: Call _mesa_matrix_analyse to make sure the inverse MVP is updated
+- glsl/float64: Bump #version to 400
+- iris: Defer uploading of surface states
+- iris: Defer stream output target space allocation until set time
+- iris: Rework zeroing of stream output buffer offsets
+- iris: Support rebinding of stream output targets
+- iris: Use different shader uploaders for precompile vs. draw time
+- iris: Make various classes inherit from u_threaded_context base classes
+- iris: Use thread safe slab allocators in transfer_map handling
+- iris: Enable u_threaded_context
+- vbo: Fix vbo_sw_primitive_restart for start > 0
+- intel/genxml: Add a partial GT_MODE definition for Gen11+.
+- iris: Delete stale comment in iris_lost_context_state
+- intel: Fix release build breakage
+- Half-revert "gallium/dri2: Pass the resource that corresponds to the plane"
+- intel: Mark an otherwise unused variable in intel_dump_gpu as ASSERTED
+- ci: Enable iris testing in meson-release
+
+Kristian Høgsberg (1):
+
+- macros: Add thread-safety annotation macros
+
+Leo Liu (12):
+
+- radeon/vcn: clean the message buffers and their indexes logic
+- radeon/vcn: add dynamic dpb interface
+- radeon/vcn: add dynamic dpb buffer Tier1 support
+- radeon/vcn: enable dynamic dpb Tier1 support
+- radeon/vcn: add dynamic dpb Tier2 message buffer interface
+- radeon/vcn: implement dynamic dpb Tier2 support
+- radeon/vcn: enable dynamic dpb Tier2 support
+- meson: bump drm amdgpu version to 2.4.105
+- ci: Fix meson-i386 build failed after libdrm bump version
+- include/drm-uapi: bump AMDGPU headers
+- ac: add function for querying video capabilities
+- radeonsi: replace the hard coded video decode and encode caps
+
+Lepton Wu (3):
+
+- virgl: Don't destroy resource while it's in use.
+- virgl: Use atomic operation directly.
+- virgl: move new added field to the end.
+
+Lionel Landwerlin (96):
+
+- anv: add transfer usage for color/depth/stencil attachments
+- anv: don't disable KHR_performance_query in debug mode
+- intel/mi_builder: optimize 64bit immediate register loads & memory stores
+- intel/mi_builder: fix self modifying batches
+- intel/perf: restructure i915 perf version checks
+- intel/perf: add definition for generic perf counters
+- intel/perf: link queries back to the gen_perf_config object
+- intel/perf: move gt_frequency to results
+- anv: Fix stencil layout in render passes
+- intel: silence unused var warnings in release builds
+- anv: fix invalid programming of BLEND_STATE
+- intel/common: store sample position in plain arrays
+- anv: pass context to reset stats helper
+- anv: store queue creation flags on anv_queue
+- genxml: PERFCNT registers are available since HSW
+- intel/perf: prep work to enable new perf counters
+- intel/perf: query register descriptions
+- intel/perf: add performance query layout using MI_SRM
+- intel/perf: switch query code to use query layout
+- anv: fix layout comment
+- anv: remove unused query pool field
+- intel/perf: rename lkf into ehl
+- intel/perf: add reorder script
+- intel/perf: reorder xml files
+- intel/perf: remove reordering script
+- intel/perf: update files from IGT
+- intel/perf: small ICL equation refactor
+- intel/perf: add async compute metrics
+- intel/dev: identify tigerlake
+- intel/perf: break TGL perf configs in GT1/2
+- intel/dev: identify rocketlake
+- intel/perf: add RKL support
+- intel/perf: add DG1 support
+- intel/perf: drop the special READ_REG operator
+- anv: compute commands required to implement perf queries
+- anv: switch khr perf query code to use query layout
+- anv: switch intel perf queries to query layout
+- anv: add a comment describing has_relocs field
+- anv: break up internal queueing function
+- anv: only signal wsi fence BO on last command buffer
+- drm-shim: report support for timeline semaphores
+- intel/stub: plug some gaps in our ioctl faking
+- anv: print out perf permission warning only once
+- anv: discard all timeline wait/signal value=0
+- vulkan: document flags choice for vkGetDeviceQueue
+- genxml: add MI_SET_APPID on Gen12+
+- genxml: Add PIPE_CONTROL protected memory bits
+- isl: add external parameter to isl_mocs()
+- anv: track command buffer pool flags
+- anv: track buffer creation flags
+- intel/dev: identify alderlake
+- intel/perf: Add Alderlake metrics
+- intel/perf: fix roll over PERF_CNT counter accumulation
+- anv: reset binary syncobj to be signaled before submission
+- anv: don't wait for completion of work on vkQueuePresent()
+- anv: Fix wait_count missing increment
+- anv: make use of new helper function directly in anv_QueueSubmit()
+- anv: track the end of the command buffers
+- anv: end command buffer with a potential jump
+- anv: allow multiple command buffers in anv_queue_submit
+- anv: group as many command buffers into a single execbuf
+- anv: fix missing general state pool in validation list
+- anv: implement INTEL_DEBUG=submit
+- anv: fix MI_PREDICATE_RESULT write
+- intel/tools: fix meson warning
+- intel/dev: add helpers to compute subslice/eu total
+- intel/dev: add warning on missing kernel uAPI for Gen8+
+- iris: use gen_device_info helper to get subslice total
+- i965: stop using get_param for things queried by gen_device_info
+- anv: stop using get_param for things queried by gen_device_info
+- intel/dev: switch over to mesa log infrastructure
+- anv: move L3 config emission to genX_state.c
+- anv: move L3 initialization to device init on Gen11+
+- intel: install intel_device_info
+- intel/fs/vec4: add missing dependency in write-on-write fixed GRFs
+- intel/dev: store size of CS prefetch
+- intel/mi_builder: use device info to use the right CS prefetch size
+- anv: use the device size of CS prefetch to pad secondary buffer calls
+- meson: switch vulkan layer to list of choices
+- intel: Add null hw layer
+- gitlab-ci: fix vulkan build layer enabling
+- intel/nullhw: fix build
+- etnaviv/drm: only print out fence error on non timeout
+- intel/fs/copy_prop: check stride constraints with actual final type
+- intel/fs: implement another copy propagation restriction
+- intel/compiler: lower bit sizes in NIR postprocessing
+- anv: put correct number of BT prefetch for compute on XeHP+
+- intel/fs: limit OW reads to 8 owords on XeHP+
+- microsoft: fixup clc_log() define
+- anv: bump internal descriptor index fields to 32bits
+- anv: fix 3DSTATE_MULTISAMPLE emission on gen8+
+- anv: disable baked in pipeline bits from dynamic emission path
+- spirv: fix uToAccelerationStructure handling
+- spirv: fixup pointer_to/from_ssa with acceleration structures
+- vulkan/wsi/display: don't report support if there is no drm fd
+- i965/bufmgr: fix invalid assertion
+
+Lucas Stach (5):
+
+- renderonly: remove layering violations
+- renderonly: close the gpu fd when destroying renderonly
+- etnaviv: don't try to copy PIPE_BUFFER with the 3D engine
+- etnaviv: remove stale comment in etna_resource_copy_region
+- Revert remaining half of "gallium/dri2: Pass the resource that corresponds to the plane"
+
+Lukas Feller (2):
+
+- v3dv: fix assertion in job_compute_frame_tiling
+- v3dv: fix stride in buffer copy
+
+Marcin Ślusarz (20):
+
+- intel/perf: export information about units of performance counters
+- intel/compiler: cache computed register pressure benefit
+- intel/tools/aub: print better error message when mmap fails
+- intel/tools/aub: handle truncated input file
+- intel/tools/aub: remove superfluous new line from error messages
+- intel/dump_gpu: mark bo as unmapped if its address changes
+- anv: fix memory allocation error handling
+- iris: fix decode_get_bo
+- i965: fix decode_get_bo
+- intel/batch_decoder: catch invalid sampler state pointer
+- intel/batch_decoder: drop bogus check
+- intel/batch_decoder: fix decoding of sampler states
+- intel/batch_decoder: assert on invalid sampler pointer
+- intel/aub_viewer: catch invalid sampler state pointer
+- intel/aub_viewer: drop bogus check
+- intel/aub_viewer: fix decoding of sampler states
+- gallium: add PIPE_CAP_ALLOW_DYNAMIC_VAO_FASTPATH
+- iris: disable dynamic VAO fastpath on GFX version 9
+- gallium/u_threaded: implement INTEL_performance_query hooks
+- gallium/u_threaded: offload begin/end_intel_perf_query
+
+Marek Olšák (406):
+
+- mesa: always set valid index bounds for non-indexed draws for classic drivers
+- st/nine: stop using cso_set_sampler_views
+- st/xa: stop using cso_set_sampler_views
+- gallium/tests: stop using cso_set_sampler_views
+- gallium/api: add state invalidate interface as alternative to cso_save/restore
+- gallium/hud: don't use cso_context to restore VBs, constbuf 0 and sampler views
+- gallium/pp: don't use cso_context to restore VBs, constbuf 0 and sampler views
+- st/mesa: don't use cso_context to restore VBs, sampler views for glBitmap
+- st/mesa: don't use cso_context to restore VBs for glClear
+- st/mesa: don't use cso_context to restore VBs, sampler views for glDrawPixels
+- st/mesa: don't use cso_context to restore VBs, sampler views for glDrawTex*OES
+- st/mesa: don't use cso_context to restore VBs, etc. for PBO glReadPixels
+- st/mesa: don't use cso_context to restore VBs, etc. for PBO glTexSubImage
+- st/mesa: don't use cso_context to set const bufs, sampler views and images
+- st/mesa: replace st->pipe with pipe in a few places
+- cso_context: remove ability to restore VBs, const bufs, sampler views, images
+- st/mesa: unbind sampler views, images, and vertex buffers after meta ops
+- st/mesa: optimize binding and unbinding shader images
+- radeonsi: constant buffer cleanups
+- radeonsi: don't clear unaligned bits when unbinding vertex buffers
+- radeonsi: move emit_cache_flush functions into si_gfx_cs.c
+- radeonsi: don't pass pipe_draw_info into si_emit_vs_state
+- radeonsi: don't pass pipe_draw_info into si_emit_ia_multi_vgt_param
+- radeonsi: translate pipe_prim_type only when it changes
+- radeonsi: don't pass pipe_draw_info into si_emit_derived_tess_state
+- radeonsi: don't compute average vertex count in si_draw_vbo
+- radeonsi: fix si_num_prims_for_vertices for PIPE_PRIM_POLYGON
+- radeonsi: make cik_emit_prefetch_L2 templated and move it to si_state_draw.cpp
+- radeonsi: add a specialized function for CP DMA L2 prefetch
+- radeonsi: make sctx->vertex_elements always non-NULL
+- radeonsi: remove MRT-draw-calls, spill-draw-calls, spill-compute-calls
+- radeonsi: get out of si_emit_vs_state early for blit vertex shaders
+- radeonsi: rearrange condition for streamout workaround on gfx7 and gfx8
+- radeonsi: don't use si_get_vs_state in most places
+- radeonsi: trim the size of si_vgt_param_key and si_vgt_stages_key
+- mesa: fix alpha channel of ETC2_SRGB8 decompression for !bgra
+- radeonsi: unify uploaders on APUs too
+- radeonsi: don't pass pipe_draw_info into si_emit_draw_registers
+- radeonsi: don't set context_roll for non-gfx9 in templated functions
+- radeonsi: add si_get_user_data_base selecting user data registers
+- radeonsi: evaluate sh_base in si_emit_vs_state at compile time
+- radeonsi: inline the last use of si_get_vs_state
+- radeonsi: evaluate si_get_vs in si_draw_vbo at compile time
+- radeonsi: enable the GS tri strip adj workaround with primitive_restart
+- radeonsi: clear dirty_atoms and dirty_states only if we entered the emit loop
+- radeonsi: move variables closer to their use in most draw state functions
+- radeonsi: don't validate inlinable uniforms at draw time
+- radeonsi: allow instance_count == 0 on chips that handle it correctly
+- glthread: remove marshal="draw" because it doesn't do much
+- glthread: don't sync with NV_half_float vertex attrib functions
+- glthread: add specialized versions of unmarshal_Draw funcs without user buffers
+- glthread: track all matrix stack depths
+- glthread: implement glGetIntegerv for states that glthread tracks
+- glthread: rename inside_dlist to ListMode for future use
+- glthread: remove if (COMPAT) conditions from functions that are GL-compat-only
+- mesa: add _mesa_get_list helper
+- glthread: add display list support to fix state tracking with display lists
+- mesa: remove _mesa_initialize_exec_dispatch from draw.c by autogenerating it
+- mesa: remove redundant glRect functions for display lists
+- mesa: optimize glCallLists by using loops inside a switch
+- mesa: simplify handling OPCODE_CONTINUE for display lists
+- mesa: simplify terminating display list loops
+- mesa: remove STATE_INTERNAL
+- mesa: combine STATE_ENV, STATE_LOCAL enums with STATE_xxx_PROGRAM
+- mesa: flatten STATE_MATERIAL and STATE_LIGHTPROD tokens
+- mesa: eliminate the switch statement for STATE_TEXGEN
+- glsl: remove unused internal builtin gl_CurrentAttribVertMESA
+- glsl: split gl_CurrentAttribFragMESA into elements
+- mesa: skip memmove in optimize_state_parameters if it's no-op
+- mesa: rename STATE_LIGHT_ATTRIBS -> STATE_LIGHT_ARRAY for consistency
+- mesa: optimize get_local_param_pointer and program_local_parameters4fv
+- mesa: don't allocate local parameters in fetch_state
+- mesa: merge local and env program parameters for faster uploads
+- mesa: sort state vars with constant indexing for ARB programs
+- mesa: add upper bound to limit program state var iterations
+- mesa: compute gl_program_parameter_list::UniformBytes accurately
+- mesa: don't handle STATE_* enums in fetch_state that don't do anything
+- mesa: sort and tightly pack STATE_* enums to generate better switch code
+- mesa: merge equivalent switch cases in prog_statevars.c
+- st/mesa: enable state var merging to improve fetch_state performance
+- radeonsi: add new possibly faster command submission helpers
+- radeonsi: clear dirty_states if si_pm4_bind_state is unbinding or no-op
+- radeonsi: don't mark NULL states as dirty in si_pm4_reset_emitted
+- radeonsi: optimize translating index_size to index_type
+- radeonsi: don't use rasterizer_discard to validate draws, only check ps_shader
+- radeonsi: add internal blitter_running flag
+- radeonsi: simplify determining whether render condition is enabled at draw time
+- radeonsi: inline si_blend_color and si_clip_state structures
+- radeonsi: move y_inverted out of si_viewports
+- radeonsi: don't set vertex buffer dirty flags when they don't do anything
+- radeonsi: move if (sctx->vertex_buffers_dirty) into the upload function
+- radeonsi: rename SI_SGPR_RW_BUFFERS to SI_SGPR_INTERNAL_BINDINGS
+- radeonsi: skip some code for ALLOW_PRIM_DISCARD_CS if tess or GS is enabled
+- radeonsi: enable accidentally disabled fast launch with non-indexed tri strips
+- radeonsi: iterate from draw 1 for total/min_direct_count computation
+- st/mesa: don't enable smoothing if multisampling is enabled
+- Revert "gallium/u_upload_mgr: allow use of FLUSH_EXPLICIT with persistent mappings"
+- gallium: add take_ownership param into set_constant_buffer to eliminate atomics
+- gallium: add unbind_num_trailing_slots to set_vertex_buffers
+- gallium: add unbind_num_trailing_slots to set_shader_images
+- gallium: add unbind_num_trailing_slots to set_sampler_views
+- gallium: add take_ownership param into set_vertex_buffers to eliminate atomics
+- cso_context,u_vbuf: add take_ownership param into set_vertex_buffers
+- st/mesa: eliminate all atomic ops when setting vertex buffers
+- st/mesa: skip atomics when binding UBOs
+- gallium/u_upload_mgr: eliminate all atomics for the upload buffer
+- gallium/u_threaded: add a null constant buffer codepath
+- gallium/u_threaded: unify user and non-user codepaths in set_constant_buffer
+- gallium/util: optimize pipe_vertex_buffer_reference binding the same buffer
+- gallium,u_threaded: add pipe_draw_info::take_index_buffer_ownership
+- st/mesa: set take_index_buffer_ownership to skip an atomic in u_threaded
+- gallium/u_vbuf: skip draws with 0 vertices
+- radeonsi: fix centroid with VRS coarse shading
+- glthread: fix interpreting vertex size == GL_BGRA for vertex attribs
+- glthread: fix glVertexAttribDivisor calls not being tracked by non-VBO uploads
+- glapi: guard against invalid XML definitions for glthread
+- ac,radeonsi: track memory usage in KB to reduce types from uint64 to uint32
+- radeonsi: optimize no-op cases in si_upload_shader_descriptors
+- radeonsi: mark shader_pointers dirty once outside the upload descriptors loop
+- radeonsi: move si_pm4_delete_state logic into si_pm4_free_state
+- radeonsi: delete si_pm4_delete_state
+- radeonsi: don't check for redundant and NULL states in si_emit_all_states
+- radeonsi: optimize si_emit_prefetch_L2 when it's split
+- radeonsi: reorganize si_draw_vbo for lower register pressure (part 1)
+- radeonsi: reorganize si_draw_vbo for lower register pressure (part 2)
+- radeonsi: set VB user SGPRs in si_upload_vertex_buffer_descriptors
+- radeonsi: prefetch VB descriptors right after uploading
+- radeonsi: precompute NGG cull flags in si_create_rs_state
+- mesa: remove/replace FLUSH_VERTICES when it doesn't do anything
+- mesa: optimize most _mesa_ActiveTexture calls in glPopAttrib
+- mesa: optimize glPopAttrib(GL_VIEWPORT_BIT)
+- mesa: don't push/pop gl_texture_object::Target
+- mesa: fix glPopAttrib for many texture fields
+- mesa: flush glBegin/End before changing GL_DEPTH_STENCIL_TEXTURE_MODE
+- mesa: for every state change, remember states we changed for glPopAttrib
+- mesa: fix trivial bugs in glPopAttrib
+- mesa: optimize out _NEW_ALL in glPopAttrib(GL_ENABLE_BIT)
+- mesa: only pop states in glPopAttrib that have been changed since glPushAttrib
+- mesa: partially skip glPush/PopAttrib for MSAA textures and texture buffers
+- mesa: don't save gl_shared_state in glPushAttrib
+- mesa: don't push/pop default texture attributes redundantly
+- mesa: pop all textures up to NumCurrentTexUsed, not just MaxTextureUnits
+- mesa: don't count buffer references for the context that created them
+- radeonsi: set current_rast_prim at bind time for tess and GS
+- radeonsi: simplify the NGG culling condition in si_draw_vbo
+- radeonsi: tune NGG shader culling vertex threshold for each chip
+- radeon: decrease the size of radeon_cmdbuf by switching prev fields to uint16
+- Revert "gallium/u_vbuf: skip draws with 0 vertices"
+- gallium/u_vbuf: skip non-indirect draws with 0 vertices
+- winsys/amdgpu,radeonsi: add HUD counters for how much memory is wasted by slabs
+- winsys/amdgpu: clean up slab alignment code, handle small buffers better
+- winsys/amdgpu,pb_slab: add slabs with 3/4 of power of two sizes to save memory
+- winsys/amdgpu: expand the slab allocation range to [256 B, 1 MB]
+- winsys/amdgpu: optimize out conditionals in amdgpu_lookup_buffer
+- winsys/amdgpu: remove amdgpu_winsys_bo::num_cs_references to remove atomics
+- winsys/amdgpu: pack amdgpu_winsys_bo::is_shared and protect it by a mutex
+- winsys/amdgpu: move amdgpu_winsys_bo::cpu_ptr into the u.real union
+- winsys/amdgpu: move amdgpu_winsys_bo::is_shared to the u.real union
+- winsys/amdgpu: move amdgpu_winsys_bo::is_user_ptr to the u.real union
+- winsys/amdgpu: move amdgpu_winsys_bo::use_reusable_pool to the u.real union
+- winsys/amdgpu: don't inc/dec num_active_ioctls for backing BOs of sparse BOs
+- winsys/amdgpu: don't set unused usage for backing BOs of sparse BOs
+- winsys/amdgpu: try not to skip any code with RADEON_NOOP=1 to test CPU perf
+- tgsi_to_nir: translate SAMPLEID
+- tgsi_to_nir: translate FBFETCH
+- gallium/u_tests: test no-op fragment shader instead of NULL fragment shader
+- winsys/amdgpu: disallow pb_cache for backing buffers of sparse buffers
+- ac/gpu_info: print use_late_alloc
+- ac/gpu_info: rename num_tcc_blocks -> max_tcc_blocks
+- ac/gpu_info: add radeon_info::num_tcc_blocks
+- ac/gpu_info: remove redundant radeon_info::num_sdp_interfaces
+- ac/gpu_info: inline get_l2_cache_size and set cache sizes farther down
+- ac/gpu_info: conceal L2 cache sizes
+- amd: sort chip enums based on hw revision
+- radeonsi: skip s_sendmsg(gs_alloc_req) for NGG passthrough on new chips
+- radeonsi: add debug options nodisplaytiling and nodisplaydcc
+- amd: update addrlib
+- mesa: optimize draw index type checking
+- mesa: precompute all valid primitive types at context creation
+- mesa: precompute draw time prim validation during state changes
+- mesa: move check_valid_to_render call into _mesa_valid_prim_mode
+- mesa: fold most of check_valid_to_render into _mesa_update_valid_to_render_state
+- mesa: inline check_valid_to_render
+- mesa: add skeleton code for DrawPixels/CopyPixels/Bitmap precomputed validation
+- mesa: don't report 1 for GL_VALIDATE_STATUS if user didn't validate pipeline
+- mesa: move shader pipeline validation from draws to state changes
+- mesa: move sampler uniform validation from draws to state changes
+- mesa: move some uniform debug code from draws to state changes
+- mesa: move FBO completeness checking from draws to state changes
+- mesa: move ARB program and integer FBO validation from draws to state changes
+- mesa: move GL_FILL_RECTANGLE validation from draws to state changes
+- mesa: move blending validation from draws to state changes
+- mesa: inline _mesa_valid_to_render now that it doesn't do validation
+- mesa: optimize the dual source blend error checking using a bitmask
+- mesa: remove VERBOSE_DRAW
+- mesa: remove optional draw validation code to increase performance
+- mesa: call _mesa_update_state() before validation
+- mesa: remove an optional GL error about mapped buffers during execution
+- mesa: skip MultiDrawArrays with primcount == 0
+- mesa: don't skip draws with count == 0 or numInstances == 0
+- mesa: add a separate valid primitive mask just for glDrawElements
+- mesa: move disallowed TFB in DrawElements on GLES from draws to state changes
+- mesa: validate numInstances in common functions to unify code
+- mesa: optimize set_varying_vp_inputs by precomputing the conditions
+- mesa: move gl_context::varying_vp_inputs into ctx->VertexProgram._VaryingInputs
+- mesa: set _DrawVAOEnabledAttribs only when it changes
+- mesa: precompute _mesa_get_vao_vp_inputs
+- mesa: precompute draw time determination of enabled vertex arrays
+- mesa: gather errors and call _mesa_error only once in validate_Draw
+- mesa: inline _mesa_set_draw_vao and set_varying_vp_inputs for draw calls
+- mesa: inline draw validate functions
+- mesa: add debug code to catch missing _mesa_update_valid_to_render_state calls
+- ac/surface: use family_id so as not to crash with SI_FORCE_FAMILY in addrlib
+- radeonsi: for tess, determine the minimum num_patches before optimizing tg size
+- radeonsi: improve comments in si_emit_derived_tess_state
+- radeonsi: allocate filled_size for streamout targets in set_streamout_buffers
+- radeonsi: do late NIR optimizations after uniform inlining
+- radeonsi: fix the value of uses_bindless_samplers
+- radeonsi: gather info about bindless images and memory stores with strstr(intr)
+- radeonsi: gather shader info about indirect UBO/SSBO/samplers/images
+- radeonsi: gather shader info about VMEM usage for MEM_ORDERED
+- radeonsi: set MEM_ORDERED optimally
+- glthread: assume all parameters are fixed if marshal_sync is present
+- glthread: don't declare pointers with const in unmarshal functions
+- glthread: don't sync when using pixel buffer objects
+- glthread: ignore the return value of glUnmapBuffer, don't sync, and return true
+- i915: use align_calloc for the context to fix m32 crashes
+- radeon,r200: use align_calloc for the context to fix m32 crashes
+- nouveau_vieux: use align_calloc for the context to fix m32 crashes
+- mesa: remove unnecessary NewState flagging for glPopAttrib(GL_ENABLE_BIT)
+- mesa: move fixed-func-related _mesa_update_state code closer together
+- mesa: split _NEW_LIGHT into 3 flags: _NEW_LIGHT_(FF_PROGRAM|CONSTANTS|STATE)
+- mesa: rework _MESA_NEW_NEED_EYE_COORDS to reduce fixed-func program updates
+- mesa: don't compute the inverted projection matrix if not used
+- mesa: don't compute the ModelView * Projection matrix if not used
+- mesa: add _NEW_MATERIAL to reduce the weight of _NEW_LIGHT_CONSTANTS
+- mesa: don't update derived material values in _mesa_update_state and elsewhere
+- mesa: remove _NEW_VARYING_VP_INPUTS in favor of _NEW_FF_(VERT|FRAG)_PROGRAM
+- mesa: remove _NEW_LIGHT_FF_PROGRAM in favor of _NEW_FF_(VERT|FRAG)_PROGRAM
+- mesa: don't push/pop ctx->Texture._* derived states
+- mesa: remove the fixed-func vert prog dependency on all texture states
+- mesa: sort state parameters for ffvp to enable better parameter merging
+- mesa: merge STATE_LIGHTPROD parameters
+- mesa: merge STATE_LIGHT_ATTENUATION and STATE_LIGHT_POSITION_* parameters
+- vbo: optimize copy_to_current functions
+- vbo: don't call update_color_material in copy_to_current if it's a no-op
+- mesa: be precise about when to set _NEW_CURRENT_ATTRIB and _NEW_MATERIAL
+- mesa: move _mesa_update_pixel out of _mesa_update_state
+- mesa: only update fixed-func programs on texture matrix enablement changes
+- mesa: don't update fixed-func vert prog on irrelevant _NEW_TRANSFORM changes
+- mesa: don't update fixed-func programs on irrelevant _NEW_POINT changes
+- mesa: don't update fixed-func programs on irrelevant _NEW_FOG changes
+- mesa: don't update fixed-func programs on irrelevant _NEW_RENDER_MODE changes
+- mesa: don't update the fixed-func frag prog on irrelevant _NEW_COLOR changes
+- mesa: don't update tnl spaces on irrelevant _NEW_POINT/TEXTURE_STATE changes
+- mesa: skip a subset of _mesa_update_state if no relevant flags are set
+- radeonsi: don't index si_context::shaders with enum gl_shader_stage
+- ac/llvm: fix ac_build_atomic_rmw with LLVM 13
+- radeonsi: don't crash on NULL images in si_check_needs_implicit_sync
+- ac/llvm: add support for 16-bit source operands for samplers
+- ac/llvm: implement 16-bit and 64-bit fpow correctly
+- ac/llvm: fix visit_load_ubo_buffer to use SMEM for 16 bits instead of VMEM
+- ac/llvm: add type parameter into ac_build_buffer_load to fix 16-bit TES inputs
+- ac/llvm: open code fpow on LLVM 12 using fmul.legacy
+- driconf: add performance tweaks for viewperf
+- ac/surface: select best swizzle mode for 3D sampler performance
+- ac,radeonsi: add sampler changes for Aldebaran
+- ac: set the TCC line size for Aldebaran
+- ac/llvm: unpack thread IDs on Aldebaran
+- ac: handle bigger instruction prefetch for Aldebaran
+- ac,radeonsi: use correct VGPR granularity on Aldebaran
+- ac: remove switch cases for pc_lines for compute-only chips
+- radeonsi: enable RGP on gfx10.3
+- gallium/u_threaded: don't sync in create_stream_output_target
+- gallium: add pipe_screen::num_contexts for skipping mutex locking in util_range
+- radeonsi: update pipe_screen::num_contexts
+- ac/llvm: handle demote in LLVM 13 that just added support for it
+- ac/gpu_info: fix more non-coherent RB and GL2 combinations
+- radeonsi: use pipe_sampler_state::border_color_is_integer to simplify stuff
+- mesa: fix Blender crash due to optimizations in buffer reference counting
+- mesa: add assertions for buffer reference counts
+- mesa: fix a oldNum typo in reallocation in _mesa_reserve_parameter_storage
+- mesa: don't overallocate ParameterValues 4 times (v2)
+- mesa: clear reserved parameter storage because it's stored in the shader cache
+- mesa: fix parameter reservation size
+- st/mesa: add a driconf option to transcode ETC2 to DXTC
+- util: add most missing formats with reversed RGB channel order
+- util: fail assertion in util_format_linear if it can't translate SRGB format
+- util: add new helper util_format_rgb_to_bgr
+- radeonsi: select the optimal micro tile mode at clear regardless of fast clear
+- radeonsi: add a fast path for MSAA resolving with RGB -> BGR swizzling
+- amd/addrlib: add back the incorrect original DCC checking
+- amd/addrlib: prevent defining regparm differently
+- amd/addrlib: define endianess differently
+- amd: update addrlib
+- ac/llvm: don't set unsupported xnack options to fix LLVM crashes on gfx6-8
+- radeonsi: disable sparse buffers on gfx7-8
+- radeonsi: set the clear/copy cache policy based on L2 cache size
+- radeonsi: don't insert start/stop pipeline stat events if it has no effect
+- radeonsi: never set DISABLE_WR_CONFIRM for CP DMA clears and copies
+- radeonsi: rename internal compute sync flags
+- radeonsi: remove unused SI_CP_DMA_SKIP_* definitions
+- radeonsi: merge CP DMA flags with internal compute flags
+- radeonsi: inline clear_buffer in si_screen_clear_buffer
+- radeonsi: set compute/cpdma sync flags in the outermost caller
+- radeonsi: reduce syncing in si_dcc_decompress
+- radeonsi: reduce syncing for initializing new buffers
+- radeonsi: reduce syncing in si_compute_expand_fmask when it's already idle
+- radeonsi: don't do an L2 flush in compute_do_clear_or_copy if we're not syncing
+- radeonsi: rename and apply SI_OP_CPDMA_SKIP_CACHE_FLUSH to compute as well
+- radeonsi: use the optimal packet order before draw packets for VS flushes too
+- radeonsi: add SI_CONTEXT_PFP_SYNC_ME to skip syncing PFP for image operations
+- radeonsi: return false from si_is_format_supported instead of NULL
+- radeonsi: don't use constbuf and set cache policy for 12-byte clear shader
+- radeonsi: don't use a constant buffer for the copy_image compute shader
+- radeonsi: decrease the maximum variable block size
+- radeonsi: pack the variable block size in one SGPR, 10 bits per component
+- amd: fix parsing the last dword of DMA_DATA packets
+- ac/surface: add CMASK info for level 0
+- radeonsi: determine accurately whether the framebuffer state has DCC MSAA
+- radeonsi: remove si_screen::dcc_msaa_allowed
+- radeonsi: parallelize CMASK and DCC clears
+- radeonsi: return success/failure from si_alloc_separate_cmask
+- radeonsi: add num_layers variable into si_do_fast_color_clear
+- radeonsi: group and parallelize all clears in si_texture_create_object
+- radeonsi: set better default depth clear value
+- radeonsi: enable HTILE with mipmapping on gfx9+
+- radeonsi: unset PIPE_CLEAR_* flags for non-existent buffers
+- radeonsi: turn the loops over color buffers into while loops in si_clear
+- radeonsi: don't use CP DMA for clears/copies except for very small ones
+- ac/surface/tests: move shareable code into ac_surface_test_common.h
+- radeonsi: fix si_compute_copy_image if DCC decompression happens before a copy
+- gallium/pb: pass an optional winsys pointer to the buffer destroy function
+- winsys/radeon: rename radeon_bo_reference -> radeon_ws_bo_reference
+- radeon_winsys.h: add a new function radeon_bo_reference that takes a winsys
+- radeon_winsys.h: add a winsys parameter to most winsys buffer functions
+- winsys/amdgpu: remove amdgpu_winsys_bo::ws
+- winsys/amdgpu: add amdgpu_cs::ws to reduce dereferences
+- gallium/pb: change pb_buffer::alignment to alignment_log2
+- gallium/pb: remove 8 bytes from pb_buffer by packing variables
+- winsys/amdgpu: remove another 8 bytes from amdgpu_winsys_bo by packing better
+- ac/surface: split dcc level info from surface_info to save space
+- ac/surface: overlap color and Z/S fields using a union in legacy_surf_layout
+- ac/surface: change legacy_surf_level::offset to 32-bit offset_256B shifted by 8
+- ac/surface: inline and reorder gfx9_surf_flags for better packing
+- ac/surface: pack gfx9_surf_meta_flags better
+- ac/surface: pack gfx9_surf_layout:resource_type better to save 8 bytes
+- ac/surface: pack radeon_surf::num_htile_levels better
+- ac/surface: pack alignments by storing log2 in radeon_surf
+- ac/surface: overlap color and Z/S fields using a union in gfx9_surf_layout
+- ac/surface: pack radeon_surf better
+- ac/surface: unify htile_levels and dcc_levels as meta_levels
+- ac/surface: unify htile_* and dcc_* fields as meta_* fields
+- ac/surface: use named "color and "zs" structures in unions
+- radeonsi: don't cache FMASK transactions from CB in L2
+- radeonsi: restructure DCC disablement into a switch
+- radeonsi: allow trivial DCC clears for shared textures with DCC constant encode
+- radeonsi: implement per-level DCC and CMASK fast clears for gfx10+
+- radeonsi: implement Z/S fast clear for non-zero mipmap levels
+- radeonsi: parallelize Z/S conversion into TC-compatible with fast color clears
+- radeonsi: clean up some mess around htile_stencil_disabled
+- radeonsi: add si_can_fast_clear_depth/stencil helpers
+- radeonsi: indent the code for TC-compatibility HTILE transition
+- radeonsi: implement fast Z/S clears using clear_buffer on HTILE
+- radeonsi: enable DCC fast clears for non-zero mipmap levels and 0/1 clear values
+- radeonsi: when transitioning to TC-compat HTILE, try to do a proper clear
+- radeonsi: do Z-only or S-only HTILE clear using a compute shader doing RMW
+- radeonsi: refine fast clears for small buffers, always use them for large HTILE
+- radeonsi: try to fix DCC coherency issues with DCC decompression
+- radeonsi: allow DCC_DECOMPRESS via CB with MSAA textures
+- ac/surface: only apply the 3D swizzle mode tuning to gfx10+
+- ac/surface/tests: test Sienna Cichlid and Navy Flounder
+- ac/surface/tests: fix a random segfault in the modifier test
+- amd/addrlib: expose DCC address equations to drivers
+- meson: add an optional OpenMP dependency for AMD tests
+- ac/surface: add a test of DccAddrFromCoord prototype outside of addrlib
+- ac/surface: limit the number of swizzle modes that can have displayable DCC
+- ac,radeonsi: rewrite DCC retiling without the DCC retile map
+- radeonsi: fix and enable full DCC with MSAA 2x on gfx9
+- radeonsi: implement DCC MSAA 4x/8x fast clear using DCC equations on gfx9
+- radeonsi: enable DCC for MSAA 4x and 8x on gfx9
+- radeonsi: move binding the internal compute shader into si_launch_grid_internal
+- radeonsi: unify internal compute with SSBOs in si_launch_grid_internal_ssbos
+- compiler: move TEXTURE_COORD/VERTEX_GENERIC_ATTRIB limits into shader_enums.h
+- nir: add src and dest types to all IO loads and stores for mediump
+- nir: add new VARYING_SLOTs and shader info for packed 16-bit varyings
+- nir: add many passes that lower and optimize 16-bit input/outputs and samplers
+- glsl: pack 16-bit uniforms in the NIR linker
+- mesa: implement glUniform for packed FP16 uniforms
+- mesa: implement glGetUniform for FP16 uniforms
+- mesa: implement glGetActiveUniform for FP16 uniforms
+- glsl: lower mediump uniforms to FP16 based on an option
+- gallium: add PIPE_SHADER_CAP_FP16_CONST_BUFFERS for FP16 uniforms
+- st/mesa: fix nir_lower_io if it's done right after IO vectorization
+- ac/llvm: implement 16-bit packed VS outputs and FS inputs
+- radeonsi: implement 16-bit VS->PS varyings
+- radeonsi: implement 16-bit VS inputs
+- radeonsi: optimize and legalize 16-bit samplers
+- radeonsi: kill 16-bit VS outputs if PS doesn't use them or doing Z-only draw
+- radeonsi: enable FP16 for mediump on gfx9+ if radeonsi_fp16=true
+- nir: handle mediump varyings in varying compaction helpers
+- radeonsi: don't decompress DCC for float formats in si_compute_copy_image
+- radeonsi: fix automatic DCC retiling after DCC clear and DCC decompression
+- radeonsi: fix automatic DCC retiling after compute image stores
+- radeonsi: make the gfx9 DCC MSAA clear shader depend on the number of samples
+- util: fix (re-enable) L3 cache pinning
+
+Marek Vasut (2):
+
+- compiler/nir: Increment shader input count and mark as used when adding new gl_PointCoord
+- etnaviv: Fix point sprite Z,W coordinate replacement
+
+Mark Janes (12):
+
+- intel: Print GPU timing data based on INTEL_MEASURE
+- anv: enable timestamp for INTEL_MEASURE
+- anv: implement anv layer of INTEL_MEASURE
+- blorp: add hook for INTEL_MEASURE
+- anv: add hooks to call INTEL_MEASURE
+- iris: implement iris layer of INTEL_MEASURE
+- iris: add a iris_context reference to iris_batch
+- intel: stop tracking submission state in INTEL_MEASURE
+- intel: support secondary command buffers in INTEL_MEASURE
+- intel: combine common gather routines in INTEL_MEASURE
+- intel: check setuid before writing output file in INTEL_MEASURE
+- Revert "blorp/gen12: Don't use aux address if implicit CCS"
+
+Matt Turner (8):
+
+- docs/freedreno: Fix a few typos
+- turnip: Remove unused TU_DEBUG_IR3 flag
+- docs: Mark VK_KHR_maintenance1 as done on turnip
+- ci: Use CI_PROJECT_ROOT_NAMESPACE
+- tu: Skip tu_tiling_config_update_tile_layout() if not using gmem
+- ci: Disable panfrost g52
+- Remove Scons leftovers
+- ir3: Don't count (nopX) towards the wrong category
+
+Matti Hamalainen (2):
+
+- gallium: Fix broken trace XML output
+- gallium/tools: update trace scripts to Python 3
+
+Mauro Rossi (29):
+
+- android: r600/sfn: add sfn_nir_lower_64bit.cpp to Makefile.sources
+- android: freedreno/hw/isa: Add description of ir3 ISA
+- android: freedreno/ir3: Switch over to new encoder/decoder
+- android: pan/mdg: create nir pass to lower image coord bitsize
+- android: intel: Print GPU timing data based on INTEL_MEASURE
+- android: anv: implement anv layer of INTEL_MEASURE
+- android: iris: implement iris layer of INTEL_MEASURE
+- android: radv: port to using common dispatch code.
+- android: radv: fix building error in radv_android.c
+- android: util/fossilize_db: add missing sources to Makefile.sources
+- android: ac/rgp: fix building error
+- android: mesa: Move the FXT1 compressor/decompressor to util/
+- android: pan/bi: reorder static dependencies in gallium/dri
+- driconf: avoid Non-ASCII character error in driconf_static.py
+- android: driconf: Generate a static table when no xmlconfig
+- android: i965: Rename files with "intel\_" prefix to "brw\_"
+- android: util: create some standalone compression helpers
+- android: anv: add libcutils shared dependency
+- android: r600/sfn: fix sfn_nir_algebraic.c gen rules
+- android: vulkan/util: add vk_descriptors.{c,h} to Makefile.sources
+- android: amd/addrlib: define endianess to build
+- android: panfrost: Use the blend shader cache attached to the device
+- vulkan/util: Fix implicit declaration of ffs for Android build
+- android: anv: Remove anv_intel.c from Makefile.sources
+- android: anv: fix build error in anv_android.c
+- compiler/glsl: fix include for Android build
+- android: panfrost/lib: add pan_cs.c to Makefile.sources
+- android: gallium/radeonsi: add nir include path
+- android: amd/common: add nir include path
+
+Michael Tang (5):
+
+- microsoft/compiler: Make resource_state_manager only build with_gallium_d3d12
+- util: Make os_read_file use O_BINARY on Windows
+- microsoft/spirv_to_dxil: Fix spirv2dxil I/O to use binary mode
+- microsoft/spirv_to_dxil: Add lowering pass to handle gl_PerVertex
+- microsoft/spirv_to_dxil: Add extra lowering functions according to the docs on nir_inline_functions
+
+Michel Dänzer (53):
+
+- ci: Remove .gitlab-ci/meson-build.bat
+- ci: Use meson test directly instead of ninja test
+- wsi/x11: Use get_screen_resources_current in wsi_x11_detect_xwayland
+- ci: Enable process isolation for softpipe & freedreno piglit jobs
+- ci: Use GNU time as meson test wrapper
+- ci: Run 'time' in the background and propagate signals to test process
+- ci: Fix MESA_TEMPLATES_COMMIT value
+- ci: Update to newer ci-fairy
+- ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_shader
+- ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_gl
+- ci: Set GALLIVM_PERF=nopt,no_filter_hacks for llvmpipe-gles2
+- ci: Use MESA\_ namespace for image variables in Windows jobs
+- ci: Use MESA_IMAGE_TAG everywhere
+- ci: Move FDO_DISTRIBUTION_TAG assignment to template
+- ci: Add and use .set-image template to construct docker image name
+- ci: Incorporate base image tag into dependent image tags
+- ci: Append build image tag to LAVA tag used for minio path
+- ci: Add trailing slash to path for documentation preview
+- ci: Restrict meson-gallium job to gstreamer runners
+- ci: Disable scons-win64 job
+- ci: Move meson-build.sh to meson/build.sh
+- ci: Drop SIGINT handling from meson test wrapper script
+- ci: Move /usr/bin/time check from meson test wrapper to build script
+- aco/tests: Use _exit in child process
+- ci: Add strace to the x86_build docker image
+- ci: Run meson tests in strace if it's available and can be used
+- ci: Don't run meson tests in strace for meson-mingw32-x86_64 job
+- intel/tools: Use subprocess.Popen to read output directly from a pipe
+- Revert "ci: Restrict meson-gallium job to gstreamer runners"
+- glcpp: Fully initialize struct gl_context
+- ci: Disable valgrind in some build jobs
+- glsl/tests: Bump glcpp valgrind test timeout to 240 seconds
+- glsl/tests: Don't use tempfiles
+- glsl/tests: Use exit code 126 to detect valgrind errors
+- Revert "ci: disable glcpp tests for now"
+- Revert "meson: add enable-glcpp-tests option"
+- Revert "glsl/test: Don't run whitespace tests in parallel"
+- ci: Remove INCLUDE_PIGLIT
+- ci: Build ARM baremetal rootfs in native container
+- ci: Merge ARM testing docker images to a single arm_test one
+- wsi/x11: Wait for fences with IMMEDIATE on Xwayland
+- ci: Fix HTML summary path for piglit OpenCL job artifacts
+- intel/blorp: Initialize texture_data[0]
+- ci: Do not install armhf LLVM packages
+- ci: Bump LLVM/clang from 10 to 11
+- ci: Move docker images from Debian buster to bullseye
+- ci: Install librenderdoc from Debian bullseye
+- ci: Install spirv-tools from Debian bullseye
+- ci: Install llvm-spirv from Debian bullseye
+- ci: Install GLVND from Debian bullseye
+- ci: Install Rust & cargo from Debian for x86_test* images
+- ci: Do not append ci-templates commit hash to Windows docker image tag
+- ci: Update to latest ci-templates
+
+Michel Zou (25):
+
+- vulkan/lavapipe: add missing VKAPI_ATTR/CALL
+- vulkan: Fix windows api conflict
+- zink: Fix win32 build
+- vulkan: Fix windows api conflict
+- meson: invalid keyword argument dependencies
+- zink: fix win32 build
+- util: fix gcc vsnprintf overflow
+- glapi: keep declspec(thread) msvc-specific
+- vulkan: implement wsi_win32 backend
+- lavapipe: add mingw32 def file
+- lavapipe: set empty dll prefix
+- gallium: remove DROP_PIPE_LOADER_MISC
+- meson/xmlconfig: win32 regex fallback
+- meson: detect winflex/bison only on native win32
+- turnip: update features.txt
+- lavapipe: update features.txt
+- vulkan: fix CreateRenderPass prototype
+- swr: extern declaration for win32 intrinsics
+- swr: fix win32 intrinsics
+- swr: Fix SWR_CONTEXT pre-declaration
+- swr: fix unused SplitString warning
+- swr: fix deprecated llvm 11 declaration warning
+- swr: fix array-bounds warning
+- lavapipe: Fix type narrowing
+- docs: missing lvp win32surface ext in features.txt
+
+Mike Blumenkrantz (775):
+
+- zink: clamp sampler+samplerview limits
+- util/hash_table: optimize rehash for empty table and no-func clears
+- util/set: optimize rehash for empty table and no-func clears
+- util/set: add the found param to search_or_add
+- util/set: split off create() into an init() function
+- zink: optimize renderpass hash table
+- nir/lower_uniforms_to_ubo: set explicit_binding on uniform_0
+- zink: add spirv builder function for runtime array type
+- zink: add util function for emitting ntv atomic ops
+- zink: add set_shader_buffers pipe_context method
+- zink: hook up ssbo shader bindings
+- zink: emit ssbo variables in ntv
+- zink: modify ubo loading in ntv to work for ssbos
+- zink: start supporting atomic shader ops
+- zink: split UBOs and samplers into 'read' batch references during draw
+- zink: flag ssbo buffer resources as having pending writes on batch
+- zink: add more usage bits for buffer types
+- zink: partially enable SSBO pipe cap
+- zink: only emit streamout targets during draw if we have them
+- zink: rework framebuffer state
+- zink: add batch flag for checking renderpass state
+- zink: remove renderpass refcounting
+- zink: ralloc zink_framebuffer structs
+- zink: rename param in zink_create_framebuffer
+- zink: use 'fb' variable name for zink_framebuffer objects in zink_framebuffer.c
+- zink: decouple renderpass from framebuffer state
+- zink: move zink_clear to zink_clear.c
+- zink: start to refactor clearing
+- zink: handle clears with scissor regions
+- zink: break out scissor region testing for clear functions
+- zink: break out color/zs no_rp clear into separate functions
+- zink: break out some of the u_blitter setup into util function
+- zink: add a pipe_context::clear_texture hook
+- zink: enable PIPE_CAP_CLEAR_TEXTURE
+- zink: reduce blendfactor when alpha_to_one is set
+- zink: tweak xfb slot mapping in ntv
+- zink: process ubos with location values set as long as they're actually ubos
+- zink: add VK_KHR_driver_properties
+- zink: enable WSI-faking for RADV too
+- zink: rename zink_context::\*image_views -> sampler_views
+- zink: add ntv util function for getting image type
+- zink: rewrite image/sampler glsl -> vk type functions for robustness
+- zink: add spirv_builder function for hexops
+- zink: add spirv builder functions for image ops
+- zink: add ntv function for emitting variable access decorations
+- zink: verify format caps and add storage image usage when possible in creation
+- zink: add 'has_draw' flag to batch struct
+- zink: add a pipe_context::memory_barrier hook
+- zink: add shader image support to zink_binding()
+- zink: add new 'sampler_types' variable to ntv_context struct
+- zink: handle image variable types in ntv
+- zink: handle more atomic ops in ntv
+- zink: handle nir_intrinsic_memory_barrier in ntv
+- zink: add nir_var_uniform case to get_storage_class()
+- zink: expand ntv array derefs to track image derefs
+- zink: add handling for all basic image ops in ntv
+- zink: enable early frag test execution in ntv when necessary
+- zink: enable image caps in ntv when a shader has images
+- zink: handle image descriptors during zink_shader creation
+- zink: break out bufferview creation into separate function
+- zink: add a pipe_context::set_shader_images hook
+- zink: handle shader image descriptor updates during draw
+- zink: check if multisample support exists for shader image formats
+- zink: export shader image caps using features
+- zink: GLSL 420
+- docs/features: mark off GL 4.2 for zink
+- zink: set PIPE_CAP_COPY_BETWEEN_COMPRESSED_AND_PLAIN_FORMATS
+- zink: force per-sample interpolation
+- zink: set PIPE_CAP_FRAMEBUFFER_NO_ATTACHMENT
+- zink: set PIPE_CAP_ROBUST_BUFFER_ACCESS_BEHAVIOR
+- zink: support VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL usage
+- zink: add layout member to barrier setup in draw
+- zink: support PIPE_FORMAT_X24S8_UINT
+- zink: check correct caps for PIPE_CAP_IMAGE_LOAD_FORMATTED
+- zink: enable PIPE_CAP_SAMPLER_VIEW_TARGET
+- gallium/u_inlines: add helper for simplifying pipe_context::resource_copy_region
+- zink: add function for waiting on a specific batch's fence
+- zink: don't force a renderpass start when setting framebuffer state
+- spirv: handle NoContraction in GLSL450 alu ops
+- zink: fix streamout for clipdistance
+- zink: add a VkExternalMemoryImageCreateInfo for PIPE_BIND_SHARED images
+- zink: set lower_mul_2x32_64 when 64bit int support is available
+- zink: enable PIPE_CAP_TEXTURE_MIRROR_CLAMP_TO_EDGE
+- zink: flag gfx pipeline dirty using newer mechanism
+- zink: guarantee surface lifetimes for shader images
+- st/bitmap: use GL_CLAMP_TO_EDGE for bitmap samplers
+- st/drawpixels: use GL_CLAMP_TO_EDGE instead of GL_CLAMP for samplers
+- zink: don't export PIPE_CAP_MAX_COMBINED_SHADER_BUFFERS value
+- zink: add spirv builder function for OpAtomicStore
+- zink: flag ssbo buffer resources as having pending writes per stage
+- zink: handle null ssbo attachments without crashing
+- zink: handle more ssbo ops in ntv
+- zink: rework ssbo indexing and binding
+- zink: support nir_intrinsic_store_ssbo
+- zink: implement get_ssbo_size nir intrinsic
+- zink: flatten out ssbo/ubo variable decls in ntv
+- zink: export ssbo caps
+- Revert "glcpp: disable 'windows' tests"
+- meson: add enable-glcpp-tests option
+- ci: disable glcpp tests for now
+- zink: add barrier helper for buffer resources
+- zink: add a stage param for buffer resource barriers
+- zink: add helper function for checking if access flags include write access
+- zink: improve barrier helper for buffer resources and add check for barrier need
+- zink: flag previous vertex stages as dirty when toggling a later stage
+- zink: add shader key for vs shaders
+- zink: flag shaders as needing update when clip_halfz changes
+- zink: move tess/geom shader info to vs shader key
+- glsl: support 64bit integer loop iterators
+- radv: print image array size in debug mode
+- zink: move maintenance2 extension to right file
+- zink: unify shader image unbind codepath
+- zink: be a little more precise about query types in one conditional
+- radv: null bo list pointer for null descriptors on update
+- radv: zero the bo descriptor array when allocating a new set
+- zink: force 4 component formats for samplerview/render textures
+- zink: support nir_intrinsic_memory_barrier_buffer
+- zink: add defines for compute batch and gfx batch count
+- zink: bump resource usage flags to allow 5 batches
+- zink: make get_resource_usage() public
+- zink: make zink_batch_reference_resource_rw return usage info
+- zink: wait on compute batch when necessary during transfer map
+- zink: add spirv_builder function for emitting a 3word literal exec mode
+- zink: handle COMPUTE bindings in compiler/ntv
+- zink: handle COMPUTE setup in ntv
+- zink: handle COMPUTE glsl variables
+- zink: implement shared load/store nir ops in ntv
+- zink: add handling for shared atomic ops in ntv
+- zink: handle nir_intrinsic_memory_barrier_shared in ntv
+- zink: ignore compute batch when starting/ending batches
+- zink: take a pipe_reference param in zink_batch_reference_program
+- zink: refactor batch creation
+- zink: make allocate_descriptor_set() take more params instead of a gfx_program
+- zink: explicitly get shader stage from shader during binding setup in draw
+- zink: rename pipeline_cache_entry -> gfx_pipeline_cache_entry
+- zink: add compute programs and pipelines
+- zink: break out descriptor updating into separate function
+- zink: setup compute batch and add handling
+- zink: handle memory barriers for compute batch
+- zink: handle descriptor set updates for compute operations
+- zink: flush gfx/compute batches when the other pipeline needs resource sync
+- zink: add launch_grid pipe_context hook for compute handling
+- zink: export compute-specific shader/compute caps
+- zink: enable compute
+- zink: GLSL 430
+- features: mark off GL 4.3 for zink
+- zink: add spirv_builder wrapper for vote intrinsics
+- zink: handle vote intrinsics in ntv
+- zink: rework viewport handling
+- zink: handle nir_texop_texture_samples
+- zink: add a texture barrier hook
+- zink: use = and not \|= for VkMemoryPropertyFlags during resource creation
+- zink: set HOST_COHERENT bit for coherent resource creation
+- zink: track persistent, non-coherent, writable transfer map count for resources
+- zink: slightly refactor batch resource referencing in update_descriptors()
+- zink: flush all resources with persistent maps on work batch before draw/compute
+- zink: enable PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
+- zink: rename zink_context::dummy_buffer -> dummy_vertex_buffer
+- zink: create dummy xfb buffer
+- zink: handle null xfb buffers
+- zink: use better mapping for PIPE_FORMAT_X24S8_UINT
+- zink: handle nir_intrinsic_load_helper_invocation
+- zink: fix xfb buffer refcounting
+- zink: add PIPE_BIND_QUERY_BUFFER to the all-purpose resource creation path
+- zink: add a get_query_result_resource hook
+- zink: enable PIPE_CAP_TGSI_ARRAY_COMPONENTS
+- zink: enable PIPE_CAP_QUERY_BUFFER_OBJECT
+- zink: GLSL 440
+- zink: enable PIPE_CAP_CONDITIONAL_RENDER_INVERTED
+- zink: enable PIPE_CAP_CLIP_HALFZ
+- zink: enable PIPE_CAP_TGSI_TXQS
+- zink: enable PIPE_CAP_TEXTURE_BARRIER
+- zink: GLSL 450
+- features: mark off GL 4.5 for zink
+- zink: add spirv interfaces for bo and image/sampler/push variables
+- zink: lower flrp64 and ffma64 when in softfp64 mode
+- zink: always use query->type for starting/stopping xfb queries
+- zink: make the xfb_query_pool into an array
+- zink: break out cpu query reading for qbos into separate function
+- zink: put SO_OVERFLOW queries on the primgen list
+- zink: support SO_OVERFLOW pipe query types
+- zink: fix streamout for tess stage
+- zink: flag exact alu op results in ntv with NoContraction
+- zink: unset generated TCS if its parent TESS is unset
+- zink: hook up cs invocation queries to the compute batch
+- zink: add support for pipeline statistics queries
+- zink: fix slot mapping for legacy gl io with tess stages
+- zink: handle 1bit undef values in ntv
+- zink: add handling for ARB_shader_draw_parameters variables in ntv
+- zink: create a struct for tracking push constant layout
+- zink: rework tcs injection to be more compatible with new push const struct
+- zink: add push constant value to indicate whether the current draw is indexed
+- zink: wrap shader gl_BaseVertex access with a bcsel based on push constant state
+- zink: add a draw_id param to vs push constants
+- zink: add a vs shader key for rewriting gl_DrawID
+- zink: break out push constant creation in compiler and add drawid value
+- zink: rewrite drawid based on shader key value
+- zink: add util function for submitting the compute batch
+- zink: enable PIPE_CAP_TGSI_VOTE
+- zink: enable PIPE_CAP_DRAW_PARAMETERS
+- zink: enable PIPE_CAP_POLYGON_OFFSET_CLAMP
+- zink: enable PIPE_CAP_QUERY_SO_OVERFLOW
+- zink: enable pipeline statistics cap
+- zink: PIPE_CAP_GL_SPIRV
+- zink: GLSL 460
+- features: mark off GL 4.6 and ES 3.1 for zink
+- zink: support nir_intrinsic_group_memory_barrier
+- zink: fix device codegen extension detection
+- zink: add nir_intrinsic_memory_barrier_image handling
+- zink: use nir_shader_instructions_pass for draw params pass
+- zink: add flag for no-oping fence finish
+- zink: hook up valid_buffer_range for buffer resources using util_range
+- zink: create a VkPipelineCache object on the screen and use it
+- zink: add a disk cache for pipeline objects
+- gallium/trace: add a pipe_screen::get_compiler_options method
+- zink: handle dual blending override from driconf
+- zink: move command pool to the batch
+- nir/lower_tex: rewrite tex/txb -> txd/txl before saturating srcs
+- mesa/st: add pipe_sampler_state::border_color_is_integer
+- mesa/st: add PIPE_CAP_GL_CLAMP
+- zink: enable GL_CLAMP cap
+- gallium/trace: remove transfer_map assert
+- zink: add helper function for getting pipeline stage from shader stage
+- zink: set buffer resource barriers for descriptor resources in update_descriptors()
+- zink: rework xfb counter resource barriers
+- zink: rework xfb barrier transitions when reusing as vertex inputs
+- zink: remove aspect param from zink_resource_barrier
+- zink: add a VkPipelineStageFlags param to zink_resource_barrier()
+- zink: add helper for image resource barriers and avoid unnecessary barriers
+- zink: use define for max descriptor array size
+- zink: add generic wrapper for checking whether a resource needs a barrier
+- zink: avoid emitting unnecessary pipeline barriers during update_descriptors
+- zink: break out barrier transitioning in update_descriptors
+- zink: combine resource barriers where possible during update_descriptors
+- zink: take struct zink_batch param instead of direct cmdbuf in barrier helpers
+- zink: assert batch is not in a renderpass when emitting pipeline barrier
+- zink: add barriers for index and draw param buffers
+- zink: add access param for image resource barriers
+- zink: add access info for update_descriptor image barriers
+- zink: add batch references for resources in clear functions
+- zink: improve barrier usage for clear functions
+- zink: zink_resource_barrier -> zink_resource_image_barrier
+- zink: add general zink_resource_barrier() wrapper
+- zink: be more explicit with image barriers for copy operations
+- zink: fix surface creation for cube slices
+- zink: tag some missing ES features
+- zink: update relnotes
+- zink: just call context destructor on creation fail
+- zink: add buffer barriers for resource_copy_region
+- zink: break out buffer copying into util function with batch param
+- zink: just end the current renderpass in zink_batch_no_rp()
+- zink: break out even more of zink_blit state saving
+- zink: use vkGetFenceStatus when we're obviously checking for status
+- zink: fix buffer resource usage flags
+- zink: break out query result buffer copying into util function
+- zink: simplify some of the qbo direct buffer write code
+- zink: better handling for availability queries on qbos when query/resource is busy
+- zink: improve batch flushing for queries when compute batches are involved
+- zink: always use 64bit flag for query results
+- zink: handle scissor+viewport states dynamically if extension is available
+- zink: remove 'scissors' member of viewport state
+- zink: always set VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT for non-staging resources
+- zink: add available|visible masks to all barriers in ntv
+- zink: set conformant ubo/ssbo size limits
+- zink: destroy renderpass objects on context destroy
+- zink: rename 'has_draw' flag on batches and set it when the batch is used
+- zink: move gfx pipeline creation closer to the bind point
+- zink: only reset pipeline hash conditionally when updating fb state
+- zink: simplify barrier usage
+- zink: beef up zink_transfer_flush_region
+- zink: only wait on last write-batch for resources during transfer_map
+- zink: change some transfer_map cases of waiting on cs batch to flushing cs
+- zink: handle PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE in transfer_map for buffers
+- zink: update ci results
+- zink: disable some builtin-gl-sample-mask sample shading tests on ci
+- zink: actually disable sample mask tests on ci
+- lavapipe: fix color-only renderpass clears
+- zink: ralloc the main context
+- zink: create framebuffer and renderpass objects just before vkCmdBeginRenderPass()
+- zink: defer pipe_context::clear calls when not currently in a renderpass
+- zink: also defer fb clears when conditional render is active
+- zink: break out region overlap testing function into helper
+- zink: add helper for converting pipe_box -> u_rect
+- zink: add another helper for checking whether one rect covers another
+- zink: break out fb clear apply into helper function
+- zink: add helper for applying/discarding clears based on a rect
+- zink: discard pending clears during blit/copy if we'll overwrite the data
+- zink: add yet another clear helper, this time for applying overlap regions
+- zink: optimize the remaining read cases of applying pending clear calls
+- zink: move all the clear stuff to zink_clear.h
+- zink: always do full-fb clears in renderpass begin when possible
+- zink: ci changes
+- zink: improve descriptor set oom handling
+- zink: ci updates
+- zink: set PIPE_CAP_TEXTURE_BORDER_COLOR_QUIRK
+- zink: force 128 fs input components on intel drivers
+- zink: add some spirv builder functions for spec constants
+- zink: support gl_LocalGroupSize
+- zink: add more ci flakes
+- util/bitscan: add u_foreach_bit macros
+- v3dv: remove for_each_bit() macro
+- radv: for_each_bit -> foreach_bit
+- freedreno/vulkan: for_each_bit -> foreach_bit
+- anv: for_each_bit -> foreach_bit
+- zink: use 0 as default for spec constants
+- zink: no-op descriptor updating for draws without descriptors
+- nir/texcoord_replace: add a yinvert param
+- zink: store prim mode to context during draw
+- zink: handle point sprite
+- zink: ci updates
+- zink: avoid memset during update_descriptors() for resources refs
+- zink: move samplerview referencing around in update_descriptors()
+- zink: reorder zink_bind_vertex_buffers()
+- zink: create a single fence per batch on startup and then reuse
+- zink: only flush batches in pipe_context::flush if they actually have work
+- zink: add a define for compute batch count
+- zink: add util function for returning previous batch
+- zink: handle PIPE_FLUSH_DEFERRED
+- zink: handle VK_IMAGE_LAYOUT_PRESENT_SRC_KHR barriers
+- zink: set VK_IMAGE_LAYOUT_PRESENT_SRC_KHR on fb resources at eof flush
+- zink: setup CmdBindVertexBuffers2EXT member in screen for dynamic state
+- zink: make dynamic state usage in pipeline creation more explicit/flexible
+- zink: use dynamic vertex buffer strides
+- zink: rename zink_context::buffers -> vertex_buffers (and usage mask)
+- zink: add zink_program struct as a base class for compute/gfx structs
+- zink: use zink_program in zink_batch_reference_program()
+- zink: ralloc zink program structs
+- zink: unref programs last in batch reset
+- zink: properly size descriptorset layout binding stack array
+- zink: increment batch->descs_used during update_descriptors flushing
+- zink: do batch-program tracking after possibly cycling batch in update_descriptors()
+- zink: add spirv builder methods for OpImageQueryLevels
+- zink: hook up nir_texop_query_levels
+- zink: relax tessellation shader reqs
+- zink: ci updates
+- zink: fix dynamic bo lowering for ssbo stores
+- zink: pre-fetch all format properties during screen init
+- zink: use pre-fetched format properties everywhere
+- zink: don't start renderpasses during descriptor update
+- zink: add more usage bits for buffer resource creation
+- zink: handle null src for fb refs
+- zink: track all framebuffers per batch
+- zink: store total memory size on zink_screen
+- zink: track resource mem usage per batch
+- zink: force batch flush if batches are using more than 1/10 total system memory
+- mesa/st: clamp scissored clear regions to fb size
+- mesa/st: no-op scissored clear calls with size zero
+- zink: handle GLSL_SAMPLER_DIM_EXTERNAL in ntv
+- zink: ci updates
+- mesa/st: even better no-oping for clears
+- zink: apply only the pending zs clear bits during deferred clears
+- zink: enable PIPE_CAP_CLEAR_SCISSORED
+- zink: export PIPE_CAP_TGSI_VS_LAYER_VIEWPORT
+- zink: use staging resource for write transfer_map in order to not stall
+- zink: ci updates
+- zink: rewrite macro for getting KHR device functions
+- zink: add vk/spirv caps/extension for shader LAYER variable
+- zink: remove ntv streamout assert
+- zink: fix streamout emission for super-enhanced layouts
+- zink: fix slot mapping for fat io variables
+- zink: fix location usage for explicit xfb outputs
+- zink: run more nir passes for tess shaders
+- zink: stop allocating xfb slot map
+- zink: handle direct xfb output from output variables
+- zink: evaluate existing slot map during program init and force new map as needed
+- zink: rename variable in update_so_info()
+- zink: use info.has_transform_feedback_varyings to determine xfb enablement
+- zink: pass so_info directly to update_so_info()
+- zink: use slightly stricter check for update_so_info() callsite
+- zink: only export necessary xfb outputs to ntv
+- zink: don't pass so_info to ntv at all unless it's necessary
+- zink: unref ctx->framebuffer on context destroy
+- zink: fix instance/device versioning (for real this time)
+- zink: simplify some update_descriptor code
+- zink: move descriptor sets/pools from batches to programs
+- zink: store and reuse descriptorsets after batch completion
+- zink: move descriptor set alloc function to zink_program.c
+- zink: use more precise sizing for descriptor pools
+- zink: add helper function for cycling a batch
+- zink: even better handling for descriptor oom
+- zink: remove flushes for batch descriptor use
+- zink: add bucket allocating for descriptor sets
+- zink: add scaling factor for descriptor set bucket allocations
+- zink: add caching for descriptor sets
+- zink: add second level cache for descriptor sets
+- zink: move streamout to draw_vbo
+- zink: reorder descriptor barrier applying during updating
+- zink: move surface refs to the end of descriptor updating
+- zink: split descriptor sets based on usage
+- zink: use dynamic offsets for first ubo
+- zink: introduce descriptor states
+- zink: add a null sampler view descriptor hash to the screen
+- zink: pre-hash sampler views and states
+- zink: store last-used descriptor set for each type of set for quick reuse
+- zink: actually flag all used resources as used during update_descriptors
+- zink: add program pointer to desc set struct
+- zink: move descriptor set allocation near the top of update_descriptors
+- zink: only batch-reference the program in use once per descriptor update
+- zink: improve descriptor cache invalidation
+- zink: add flag for recycled descriptor sets
+- zink: don't double iterate all the per-batch sets on reset
+- zink: add VkPipelineLayout to zink_program meta struct
+- zink: split out ubo descriptor updating
+- zink: break out ssbo descriptor updating
+- zink: break out sampler descriptor updating
+- zink: break out image descriptor updating
+- zink: deduplicate VkWriteDescriptorSet setup
+- zink: break out descriptor stuff into new files
+- zink: break out all the descriptor pool/layout stuff into a new struct
+- zink: change program pointer on struct zink_descriptor_set to pool pointer
+- zink: track number of sets currently allocated per descriptor pool
+- zink: move descriptor type to pool object from set
+- zink: allow reuse of zink_descriptor_pools between programs
+- zink: remove intermediate func for descriptor set getting
+- zink: simplify check for knowing whether descriptor updating is needed
+- zink: pre-size descriptor transition hash table
+- zink: move descriptor binding out of the update codepath
+- zink: reuse descriptor barriers across draws
+- zink: track resource count on descriptor pool object
+- zink: directly use resource count from pool instead of accumulating every time
+- zink: remove struct zink_descriptor_resource from descriptor updating
+- zink: don't create descriptor barrier hash tables for cached descriptor set
+- zink: always use VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL for sampler bindings
+- zink: remove image layouts from descriptor states
+- zink: avoid hashing states without descriptors
+- zink: fix arrays of texel buffer descriptors
+- zink: ci updates
+- zink: move vertex_buffers_enabled_mask to non-hashed part of pipeline state
+- zink: optimize pipeline hashing
+- zink: implement an extremely dumb resource memory cache
+- zink: ci updates
+- zink: remove debug printf
+- lavapipe: fix push descriptor set indexing
+- lavapipe: set more resource bind flags using image/buffer usage bits
+- zink: move buffer<->image copying to pipe_context::resource_copy_region hook
+- zink: remove extraneous flush in transfer_map_region_flush
+- zink: ci updates
+- zink: optimize resource usage tracking
+- zink: use _mesa_set_search_and_add() for set management
+- zink: ralloc screen objects
+- zink: implement a surface cache
+- zink: use a safer iteration for fb surfaces during rp init
+- zink: determine whether the vulkan driver requires mesa flush wsi
+- zink: force mesa flush implicit fencing on ANV
+- zink: force explicit fence only on first frame flush
+- zink: use internal api for first-frame fence
+- zink: return true from program ref functions upon free
+- zink: unset ctx->program pointers when an unref destroys the object
+- zink: stop leaking programs
+- vk/util: add unified shader module struct/functions
+- vk/util: add a util macro for initializing stack vk_shader_module structs
+- lavapipe: use common interfaces for shader modules
+- radv: use common interfaces for shader modules
+- v3dv: use common interfaces for shader modules
+- tu: use common interfaces for shader modules
+- anv: use common interfaces for shader modules
+- zink: add batch usage flags for sampler views/states and desc sets
+- zink: avoid looping for non-ubo descriptor updates based on set usage
+- zink: break out batch id finding for resource usage into util function
+- zink: move resource internals to a separate struct
+- zink: split out backing resource object create/destroy
+- zink: track resource_object usage instead of resource usage
+- zink: handle cached descriptor set punting
+- zink: add some asserts for pipeline barriers to check renderpass state
+- zink: add util function for checking whether a shader descriptor is a buffer
+- zink: add util function for checking whether shader descriptor is buffer from program
+- zink: use an explicit zink_buffer_view struct
+- zink: explicitly use zink_surface objects for sampler/image view objects
+- zink: store bufferview hash to bufferview struct
+- zink: simplify bufferview and imageview descriptor state hashing
+- zink: add extra batch tracking for sampler views
+- zink: massively beef up batch tracking for shader images
+- zink: add helper function for getting a resource for a descriptor
+- zink: update null descriptor hashes to reflect current descriptor states
+- zink: improve debug asserts for samplers/images during descriptor updates
+- zink: properly handle null bufferview descriptor states
+- zink: cache bufferviews
+- zink: add missing null check
+- zink: unset last_vertex_stage_dirty after applying it
+- zink: run nir_convert_from_ssa last during compile
+- zink: use intermediate var for glsl non-array type during shader create
+- zink: break out bo array type construction into ntv util function
+- zink: also break out whole ntv bo struct pointer construction
+- zink: add unsized array type to get_glsl_type_element() handling
+- zink: add debug info about missing atomic ops
+- zink: add ntv util function for checking if a glsl type is an atomic counter
+- zink: break out sized uint array construction into util function
+- zink: flatten binding numbers a bit
+- zink: directly set nir variable bindings for reuse during ntv
+- zink: move zink_binding() to compiler.c
+- zink: apply Delete All The Code methodology to the ubo/ssbo variables
+- zink: set ntv variable descriptor sets during compile phase
+- zink: ci updates
+- ci/panfrost: disable the rest of these jobs temporarily
+- zink: hook up resource bind history
+- zink: remove direct samplerview batch-tracking
+- zink: add a pipe_context::invalidate_resource hook
+- zink: set valid region for streamout buffers on bind
+- zink: handle streamout buffer rebinds
+- zink: invalidate resources on map when discarding range
+- zink: enable PIPE_CAP_INVALIDATE_BUFFER
+- zink: switch to deqp-runner for piglit jobs
+- zink: always use requested format for sampler view creation
+- zink: ci updates
+- zink: more consolidation for null sampler/image view hashing
+- zink: add a pipe_context::fence_server_sync hook
+- zink: add enum for different queues
+- zink: refactor resource_sync_writes_from_batch_usage() to manage batch id internally
+- zink: convert ZINK_RESOURCE_ACCESS defines to enum
+- zink: abstract zink_get_resource_usage() and move it to be internal
+- zink: return enum zink_queue from zink_batch_reference_resource_rw()
+- zink: split out batch resource-set clearing into separate function
+- zink: move active query pruning to batch reset
+- zink: move batch init into zink_batch.c
+- zink: also move batch destructor into zink_batch.c
+- zink: move other batch-tracking implementations to unified codepath
+- zink: use macro to streamline batch struct member init
+- zink: remove query batch-tracking init from begin_query()
+- zink: move fence reset to zink_fence_init()
+- zink: clear framebuffer state on context destroy
+- zink: enable spirv extension for post depth coverage
+- compiler/spirv: fix image sample queries
+- zink: handle nir_intrinsic_image_deref_samples
+- zink: flatten 2d_array surfaces when necessary
+- lavapipe: support VK_KHR_copy_commands2
+- lavapipe: rewrite cmdbufs to always do descriptor binds/pushes first
+- lavapipe: force state updates when beginning queries
+- llvmpipe/setup: force fs constant updating upon beginning queries
+- zink: break out surface viewtype clamping into util function
+- zink: improve surface viewtype clamping
+- zink: correctly clamp samplerview surface types
+- ci/lavapipe: split out lavapipe ci into lavapipe dir
+- llvmpipe/setup: use bigger hammer to force fs constant updating correctly
+- zink: split off a bunch of batch struct members to new batch state struct
+- zink: rewrite queue dispatch to use monotonic batch ids instead of hardcoded ones
+- zink: more accurately check samplecount caps for shader images
+- zink: make fb ref func return bool on free
+- zink: add explicit surface/bufferview batch-tracking functions
+- zink: use surface references for fb attachments
+- zink: break out surface destroy function into a screen function
+- zink: use a custom surface referencing function whenever unrefing a surface
+- zink: implement a global framebuffer cache
+- vk: consolidate dynamic descriptor binding sorting
+- ci: update xfails for ppc64le and s390x
+- zink: break out buffer mapping part of zink_transfer_map
+- zink: cache transfer maps
+- zink: unify clear color conversion code
+- nir: add nir_lower_indirect_builtin_uniform_derefs()
+- st/glsl_to_nir: lower indirect derefs of builtins in non-packed uniform case
+- softpipe: ci updates
+- zink: move 'batch_id' and 'is_compute' members to fence
+- zink: make batch usage unsetting function public
+- zink: always reset batch states when finding a new one
+- zink: move batch-tracked resources to fence object
+- zink: fix spirv image operand ordering
+- zink: fix multisampled shader image load/store
+- zink: force PIPE_SWIZZLE_1 for X channels in samplerviews
+- zink: handle blitting of color formats with ignored alpha channels
+- zink: emulate PIPE_FORMAT_R8G8B8X8_UNORM
+- zink: ci updates
+- zink: relax unreachable() to debug_printf when waiting on batch
+- zink: rework public batch flush function to be useful again
+- zink: move zink_flush_compute() users to zink_flush_queue()
+- zink: always flag xfb barrier on gfx flush when appropriate
+- zink: simplify some queue-related query code
+- zink: refactor clears a little to track a bitfield of enabled clears on the context
+- zink: trigger pending clears during flush
+- zink: ci updates
+- zink: add wrapper to reset batch state structs
+- zink: call clear() instead of reset() for batch states on context destroy
+- zink: unify gfx and compute batches
+- zink: isolate gfx stage bits when updating shader modules
+- zink: store conditional render predicate to query and split out start/stop
+- zink: only update conditional render buffer when it needs to be updated
+- zink: toggle conditional render when beginning/ending a renderpass
+- zink: ci updates
+- zink: handle gallium multi draws more effectively
+- zink: create separate upload mgr for constants
+- zink: explicitly use stream uploader for staging buffers
+- zink: add buffer_subdata hook
+- zink: avoid unnecessary resource refs during descriptor update
+- zink: remove handling for resource flushing between compute/gfx batches
+- zink: remove unnecessary flush during image maps
+- zink: add more rp cache asserts
+- compiler/spirv: use undefs when extending image coords
+- zink: don't generate sampled image type for non-sampled images
+- util/set: stop leaking u32 key sets which pass a mem ctx
+- lavapipe: fix CmdCopyQueryPoolResults for partial pipeline statistics queries
+- lavapipe: use the passed offset for CmdCopyQueryPoolResults
+- lavapipe: stop tracking draw start/count on rendering state
+- zink: ci updates
+- lavapipe: ignore templateType when descriptor template isn't for push descriptors
+- lavapipe: remove lvp_descriptor_update_template::descriptor_set_layout
+- zink: fix handling for image types in resource_copy_region hook
+- zink: also fix image buffer layer copying
+- lavapipe: fix array texture region copies
+- zink: only do shader updates when relevant stages are dirty
+- zink: use correct surface ref function for context destroy
+- zink: stall when we start getting a lot of uncompleted batches
+- zink: reset all fences when waiting on batch state
+- zink: fix format support detection for storage texel buffers and shader images
+- zink: break out image/buffer create info structs into helper funcs
+- zink: make descriptor state invalidate public
+- zink: reorder barrier util functions to set up barrier struct before batch
+- zink: break out barrier struct initializing into helper funcs
+- zink: create separate vk image/buffer objects for shader image use
+- zink: incrementally add image usage flags based on device caps
+- zink: add color output bit and/or use linear tiling for sampled images
+- zink: check image format props before creating image
+- zink: toggle between linear/optimal tiling during image creation
+- zink: flatten out buffer creation usage flags codepath
+- zink: ralloc shader cache and keys
+- zink: rework border color handling
+- zink: clean up query creation failure paths
+- zink: create result buffers for all query streams
+- zink: remove flush from query buffer copy
+- zink: manually handle more bool query types for copying
+- zink: remove special casing for occlusion qbos
+- zink: rewrite query internals
+- zink: bump pools up to 5k queries each
+- zink: don't use PARTIAL bit for query results with time queries
+- zink: reorder availability handling for (user) qbos
+- zink: remove explicit fencing for query results
+- zink: ci updates
+- lavapipe: refactor base draw dispatch to handle multidraws
+- lavapipe: refactor indexed draw dispatch to handle multidraws
+- aux/draw: stop copying draw params unnecessarily
+- aux/draw: rewrite PRIM_RESTART_LOOP macro as a function
+- aux/draw: pass the full draw params through to draw_instances()
+- aux/draw: pass the full draw params through to draw_pt_arrays_restart()
+- aux/draw: move draw param sanitization to end of function
+- aux/draw: track increment_draw_id value from draw info
+- aux/draw: pass full draw params to draw_pt_arrays()
+- llvmpipe: stop flattening multidraws
+- lavapipe: ignore unused clearvalues when beginning renderpass
+- zink: rework texture_barrier hook
+- zink: move update_descriptors & related funcs to zink_descriptors.c
+- zink: move descriptor barrier handling to main update function
+- zink: simplify some descriptor update function parameters
+- zink: use GENERAL layout for sampler images that are also bound as shader images
+- zink: rework some includes
+- zink: rework memory_barrier hook
+- zink: add locking for descriptor pools
+- zink: add locking for resource maps
+- zink: manually invoke cpu detection during screen init
+- zink: add locking for batch states
+- zink: add function for checking whether a batch is done
+- zink: split fence finish func
+- zink: add locking for fence resources
+- zink: explicitly reset a couple more batch state members
+- zink: assume fence has already completed if a batch state isn't found
+- zink: rename init_batch_state to get_batch_state
+- zink: store context to batch state
+- zink: make a local screen pointer in zink_flush
+- zink: remove zink_fence_init()
+- zink: move VkQueue to batch object
+- zink: break out queue submit into separate functions
+- zink: also check for device lost reset on flush
+- zink: remove zink_create_fence()
+- zink: track coherent resource objects
+- zink: use cached memory for all resources when possible
+- radv: stop zeroing radv_draw_info during draw
+- radv: refactor draw dispatch
+- radv: track whether gl_BaseInstance is used
+- radv: simplify vs draw param counting during setup
+- radv: set gfx pipeline vtx_emit_num to the number of sgprs
+- radv: track whether drawid is used on the pipeline struct
+- radv: track whether baseinstance is used on the pipeline struct
+- radv: break out vertex shader param emission into separate function
+- radv: make vertex param sgpr count more explicit
+- radv: reorder vertex shader params
+- radv: don't emit baseinstance and drawid if neither is used
+- radv: don't reset vertex state params on pipeline bind if reg layout matches
+- zink: implement threaded context
+- zink: ci updates
+- zink: handle PIPE_MAP_DONTBLOCK for buffer read maps
+- zink: add set_context_param hook
+- zink: add batch tracking id for program struct
+- zink: track last completed batch id to optimize checking states
+- zink: handle expired deferred fences more reasonably
+- zink: hook up timeline semaphore signalling during batch submission
+- zink: add timeline semaphore fastpath for checking/triggering batch completion
+- zink: optimize batch states for timeline use
+- zink: enforce device lost status
+- zink: be more explicit about blit layer/depth usage
+- zink: use VkSubresourceLayout::depthPitch as layer_stride when mapping 3D imgs
+- zink: zink_push_constant -> zink_gfx_push_constant
+- zink: use max_rt to determine number of blend state attachments
+- zink: emit ImageCubeArray cap when accessing arrayed cube dimension images
+- zink: fix layercount for array texture blits
+- zink: add some asserts to avoid zero-sized blit regions
+- features: mark off ARB_compute_variable_group_size for zink
+- features: mark off GL_OES_viewport_array for zink
+- zink: store shader_info to ntv_context struct
+- zink: only emit SpvCapabilitySampleMaskPostDepthCoverage if the mode is set
+- zink: enable PIPE_CAP_TGSI_TES_LAYER_VIEWPORT
+- features: mark off ARB_shader_viewport_layer_array for zink
+- zink: avoid cached memory allocations when not requested
+- util/threaded_context: support pipe_context::set_sample_locations
+- zink: hook up cs push constant for nir_intrinsic_load_work_dim
+- zink: use better usage flags for staging resources
+- zink: use vkGetPhysicalDeviceFormatProperties2 when available
+- zink: use 2 variant to check image format props during create
+- zink: only use host mem for staging resources with linear tiling
+- zink: move cmdpool reset to batch state reset
+- zink: split total_mem off to total_video_mem, use total_mem for tc
+- zink: relax maybe_flush mem threshold
+- zink: relax maybe_flush batch count threshold
+- zink: check last_finished first in fence_finish early out case
+- zink: defer timestamp query pool resets to end_query
+- zink: reset queries when suspending if >50% of total pool is used
+- zink: don't use cached mem for staging resources
+- zink: flag DYNAMIC resources as coherent
+- zink: drop VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT from compute path
+- aux/trace: add a set_inlinable_constants hook
+- intel: avoid dumping null cs sampler/binding states
+- zink: emit WorkgroupSize when not using ExecutionModeLocalSize
+- lavapipe: add some asserts for blit region extents
+- zink: export PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER
+- aux/trace: add screen deduplication for zink+lavapipe tracing
+- aux/trace: add a bunch of methods for lavapipe
+- util/set: add macro for destructively iterating set entries
+- util/hash_table: add macro for destructively iterating entries
+- aux/trace: add GALLIUM_TRACE_TRIGGER mode
+- zink: add a pipe_screen::finalize_nir hook
+- zink: implement uniform inlining
+- zink: add env var to force uniform inlining
+- zink: remove atomic usage from batch tracking comparisons
+- zink: bypass separate stencil path in resource_reference_rw when not a zs image
+- zink: fix conditional when assigning tess variable io
+- zink: stop unmapping resources
+- zink: simplify clear-apply on fb state change
+- zink: use set_foreach_remove()
+- zink: use explicit subpass deps
+- zink: hook up EXT_fragment_shader_interlock
+- zink: support ARB_fragment_shader_interlock
+- aux/trace: dump all the blend state members
+- features: mark off ARB_fragment_shader_interlock for zink
+- gallium/threaded_context: add another rule for buffer mapping
+- zink: fix CI flakiness in glx-multithread-clearbuffer
+- zink: make timeline semaphores per-screen
+- zink: handle checking batch completion from other contexts without timelines
+- zink: only unmap PIPE_MAP_ONCE in synchronous mode
+- zink: don't lose existing pNext when using wsi_image_create_info in image creation
+- anv: fix debugoptimized build compile
+- zink: move descriptor state management to descriptors.c
+- zink: make a bunch of descriptor functions static
+- zink: create separate linear tiling image for scanout
+- zink: flag anv for mesa image create wsi
+- zink: disable mutable formats for zs formats and scanout images
+- aux/trace: enhance trigger mode to dump context states during bind
+- aux/trace: dump current fb state on trigger-mode draw if it hasn't been seen yet
+- aux/trace: do deep dumps of fb state for triggered traces
+- aux/trace: use ralloc_free for ralloc()ed state pointers
+- zink: compare against screen batch id when determining which semaphore to use
+- zink: always copy the nir shader before compiling
+- zink: fix tcs slot map eval for user vars
+- zink: fix tcs input reservation for user vars
+- zink: merge copy-to-scanout path into non-deferred flush path
+- zink: force scanout sync when mapping scanout resource
+- zink: use undefined layout for first scanout obj transition
+- zink: move scanout sync to end of batch
+- zink: add a flag indicating whether scanout object needs updating
+- zink: move wsi flush info conditional to queue submission
+- zink: directly set batch->state->flush_res from flush_resource hook
+- zink: add clear-on-flush mechanic deeper into flush codepath
+- Revert "zink: force scanout sync when mapping scanout resource"
+- softpipe: fix render condition checking
+- softpipe: fix streamout queries
+- softpipe: ci updates
+- zink: track persistent resource objects, not resources
+- zink: restore previous semaphore (prev_sem) handling
+- zink: use cached memory for staging resources
+- zink: only reset query on suspend if the query has previously been stopped
+- zink: when performing an implicit reset, sync qbos
+
+Nanley Chery (22):
+
+- gallium: Map _DRI_IMAGE_FORMAT_NONE to NULL
+- gallium: Flush GL API resources in eglCreateImage
+- iris: Disable aux as needed in iris_flush_resource
+- blorp: Assert 8x4 alignment for a HiZ op on Gen8-9
+- i965,iris: Delete misleading HiZ sampling comments
+- iris: Drop an XXX comment about sampling HiZ arrays
+- iris: Drop a stale comment about HiZ sampling
+- iris: Delete redundant assertion in iris_hiz_exec
+- iris: Drop batch param from iris_resource_prepare_render
+- iris: Fix the depth aspect aux usage in iris_blit
+- iris: Keep aux_usage in iris_blorp_surf_for_resource
+- iris: Fix aux usage of depth buffer prepare/finish
+- iris: Loosen aux state getter/setter assert on HiZ
+- iris: Don't avoid aux state getter/setter with HiZ
+- iris: Drop iris_resource::aux::has_hiz
+- iris: Call iris_sample_with_depth_aux earlier
+- iris: Set BO maps to NULL in bo_free
+- drm-uapi: Update drm_fourcc.h for new TGL modifier
+- isl: Describe I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC
+- iris: Support clear color plane imports for RC_CCS_CC
+- iris: Support RC_CCS_CC modifier in plane queries
+- iris: Support I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC
+
+Neha Bhende (3):
+
+- mesa: set states in fast path for restoring light attributes
+- gallium/u_vbuf: use updated pipe_draw_start_count while using draw_vbo
+- nir_to_tgsi: Fix indices for CMP in nir_to_tgsi for nir_op_fcsel
+
+Philipp Zabel (1):
+
+- meson: Fix missing xcb-xrandr dependency for Vulkan X11 WSI
+
+Pierre Moreau (4):
+
+- docs/features: Add OpenCL status
+- spirv: Ignore WorkgroupSize in non-compute stages
+- nv50: Replace hardcoded texture/constbuf count with define
+- nv50: Update texture indices to match stage indices
+
+Pierre-Eric Pelloux-Prayer (55):
+
+- ac: add ifdef __cplusplus guard to header
+- radeonsi: invalidate compute sgprs in si_rebind_buffer
+- radeonsi: inhibit clockgating when using SQTT
+- ci: split src/mesa/\**/* matching rule
+- radeonsi/sqtt: use more event identifier
+- radeonsi/sqtt: fix SQTT bo size overflow
+- radeonsi/sqtt: allow AMD_THREAD_TRACE_TRIGGER to be a frame number
+- radeonsi/sqtt: forward string markers to sqtt
+- radeonsi: don't use cp_dma prefetch on GFX6
+- gallium/u_upload_mgr: lower risk of hitting an assert
+- radeonsi: fix indentation issue in si_texture.c
+- radeonsi: store si_context::xxx_shader members in union
+- radeonsi: fix read from compute / write from draw sync
+- radeonsi: fix si_check_render_feedback
+- radeonsi: replace force_cp_dma arg of si_clear_buffer by enum
+- radeonsi: enable dcc image stores on gfx10+
+- radeonsi: force dcc clear to use compute clear
+- mesa: update vao _EnabledWithMapMode in copy_array_object
+- radeonsi: properly set SPI_SHADER_PGM_HI_ES
+- ac/rgp: make the max gap between shader code a warning
+- ac/rtld: make ac_rtld_upload returns the code size
+- ac/rgp: move radv/sqtt functions to ac
+- radeonsi/sqtt: keep a copy of the uploaded shader code
+- radeonsi/sqtt: remove duplicate token
+- radeonsi/sqtt: don't always use WGP 0
+- radeonsi/sqtt: export shader code to RGP
+- radeonsi/sqtt: fix user event max size
+- frontends/va: fix protected slice data buffer read size
+- mesa/st: fix lower_tex_src_plane in multiple samplers scenario
+- dlist: remove ListExt feature
+- mesa: remove 2 recursive lock usages of _mesa_HashTable
+- mesa/hash: make the mtx non-recursive
+- mesa/hash: switch to simple_mtx
+- mesa: make _mesa_HashTable InDeleteAll debug only
+- vbo/dlist: use DrawGallium(Complex)
+- nir/lower_tex: ignore texture_index if tex_instr has deref src
+- mesa/st: fix st_nir_lower_tex_src_plane arguments
+- mesa/st: ignore texture_index if tex_instr has deref src
+- gallium/u_threaded: split draws that don't fit in a batch
+- st/draw: remove st_draw_vbo
+- vbo: inline vbo_primitive_restart in brw_primitive_restart
+- radeonsi/rgp: export barriers
+- radeonsi/rgp: export compute shader programs
+- gallium/u_threaded: skip refcounting only once
+- driconf: add workarounds for Teardown
+- amdgpu,radeon: add needs_reset param to ctx_query_reset_status
+- radeonsi: submit cs to failed context instead of skipping them
+- radeonsi: use SI_CONTEXT_FLAG_AUX when recreating the aux context
+- radeonsi: do not recreate the aux context from the aux context
+- radeonsi: only recreate the aux_context when soft recovery failed
+- radeonsi: re-create the aux context in si_create_context
+- amdgpu,radeon: add full_reset_only param to ctx_query_reset_status
+- radeonsi: avoid querying gpu state if possible
+- r600/sb: Use assignments for resetting struct r600_sb::literal
+- driconf: add workaround for Golf With Friends
+
+Qiang Yu (1):
+
+- lima: fix xserver page flip fail for full screen client
+
+Rhys Perry (141):
+
+- nir/loop_unroll: unroll more aggressively if it can improve load scheduling
+- aco: fix convert_to_SDWA() check in add_subdword_definition()
+- aco: add test for incorrect convert_to_SDWA() check
+- radv: fix max_waves estimation on GFX10.3
+- aco: fix num_waves on GFX10+
+- aco: have emit_wqm() take Builder instead of isel_context
+- aco: add emit_mimg() helper
+- aco: move VADDR to the end of the operand list
+- aco: use non-sequential addressing
+- aco: only require texture coordinates to be in WQM if NSA is used
+- aco: add affinity for non-sequential MIMG operands
+- radv,aco: don't use MUBUF for multi-channel loads on GFX8 with robustness2
+- nir/lower_io: fix array_length lowering if buffer is smaller than offset
+- radv,aco: use deref_buffer_array_length
+- radv: use nir_opt_access
+- nir/sink,nir/move: sink/move reorderable load_ssbo
+- radv: sink load_ssbo
+- aco: don't consider a phi trivial if same's register doesn't match the def
+- aco: remove Format::{VOP3A,VOP3B}
+- aco: add instruction cast and format-check methods
+- aco: use instruction cast methods
+- aco: use format-check methods
+- aco: return references in instruction cast methods
+- aco: fix WQM for texture instructions with args before the coordinates
+- nir/opt_uniform_atomics: recognize more complicated invocation comparisons
+- nir/opt_uniform_atomics: fix elect detection
+- aco: disable a*1.0 optimization if the instruction is precise
+- nir/algebraic: optimize out exact a*1.0 if it's used only as a float
+- aco: optimize a*0.0
+- aco: optimize out a*1.0 if it's used as a float
+- nir/algebraic: optimize out exact a+0.0 if it's used only as a float
+- nir/algebraic: eliminate exact a*0.0 if float execution mode allow it
+- aco: don't affect isPrecise() after applying output modifiers
+- nir,spirv: allow non-uniform OpArrayLength
+- radv,ac/nir: implement non-uniform get_ssbo_size
+- aco: implement non-uniform get_ssbo_size
+- radv: round-up num_records division in radv_flush_vertex_descriptors
+- radv: correctly enable WGP_MODE for NGG and GS
+- radv: correctly enable WGP_MODE for tessellation control
+- aco: add fallback algorithm in get_reg()
+- aco: always set exec_live=false
+- aco: optimize AC_FETCH_FORMAT_SNORM alpha adjust
+- aco: do not flag all blocks WQM to ensure we enter all nested loops in WQM
+- aco: rewrite setting of Exact_Branch
+- aco: remove loop to flag loop blocks as WQM
+- aco: fix adjust_vertex_fetch_alpha
+- radv: use a more relaxed alignment for upload buffer allocations
+- radv: fix max_lds_per_simd on GFX10
+- radv: switch MaxWaves statistic to wave32 waves
+- ac: split lds_granularity into encode and allocation granularities
+- radv: use lds_{encode,alloc}_granularity
+- radv: round up max_lds_per_simd / lds_per_wave
+- aco: fix waves calculation for wave32
+- aco: add Program::wgp_mode
+- radv,aco: add radv_nir_compiler_options::wgp_mode
+- aco: consider that GFX10.3 allocates LDS in 1024 byte blocks
+- aco: add DeviceInfo
+- aco: fix transition_to_{WQM,Exact} if exec.back() is not in exec
+- radv: relax shared alignment requirements in mem_vectorize_callback
+- radv,aco: allow unaligned LDS access on GFX9+
+- aco/lower_phis: fix all_preds_uniform with continue_or_break
+- nir/dce: replace instruction worklist with ssa def bitset
+- nir: inline nir_foreach_{src,dest}
+- nir/dce: perform DCE for unlooped instructions in a single pass
+- aco: calculate all p_as_uniform and v_readfirstlane_b32 sources in WQM
+- aco: use p_as_uniform for get_sampler_desc and convert_pointer_to_64_bit
+- nir: fix build at -O1
+- nir: add nir_ssa_def_is_unused()
+- nir/copy_prop: remove unused copies
+- nir/copy_prop: visit copies instead of sources
+- nir/copy_prop: use nir_{instr,if}_rewrite_{src,condition}_ssa
+- Revert "radv,aco: allow unaligned LDS access on GFX9+"
+- aco: add missing usable_read2 check
+- nir/opt_shrink_vectors: add option to skip shrinking image stores
+- radv: don't shrink image stores for The Surge 2
+- radv: don't set sx_blend_opt_epsilon for V_028C70_COLOR_10_11_11
+- radv,aco: remove aco_compiler_statistics
+- radv: cache pipeline statistics
+- aco: set compr for fp16 exports
+- radv/llvm: fix enabled_channels for compressed exports
+- aco: simplify loop_nest_depth tracking in isel
+- aco: track divergent and uniform branch depth
+- aco: move wait_imm to aco_ir.h
+- aco: lower p_constaddr into separate instructions earlier
+- aco: add instruction classes
+- aco: add latency and inverse throughput statistics
+- aco: add print option to print program without temporary IDs
+- aco: add ACO_DEBUG=perfinfo
+- aco: remove vmem/smem score statistics
+- aco: fix NSA MIMG followed by MUBUF/MTBUF
+- aco/tests: add test for NSAToVMEMBug
+- aco: fix NSA following writelane
+- aco/tests: add test for waNsaCannotFollowWritelane
+- nir: Don't update base in vectorize_loads()
+- aco: implement 64-bit VGPR {u,i}find_msb
+- aco: use uadd32_sat() helper for nir_op_uadd_sat
+- aco: use a single instruction for uadd32_sat() on GFX8
+- aco: implement image_deref_samples
+- aco: add aco_print_program() flag to print kill flags
+- aco: add aco_print_program() flags to print live_out and register demand
+- docs: document ACO_DEBUG=perfinfo
+- aco: add ACO_DEBUG=liveinfo
+- radv: lower variables to ssa before nir_propagate_invariant
+- radv: lower view_index to zero if multiview is disabled
+- ci: add expected fail for RADV
+- aco: don't optimize min(a*1.0, ...) to min(a, ...) on GFX8
+- aco: use -1.0*x and 1.0*|x| for fneg/fabs
+- aco/tests: add tests for denormal-aware propagation
+- ac: invalidate metadata after hs_emit_write_tess_factors()
+- aco/tests: fix isel.sparse.clause for LLVM 12+
+- lavapipe: fix initialization of pipe_stream_output with unwritten outputs
+- nir/gather_info: implement partial masking of struct and compact I/O
+- nir/lower_tex: handle deref casts
+- nir_to_tgsi: run constant folding after nir_opt_algebraic
+- aco: fix integer tg4 workaround with unnormalized coordinates
+- draw: fix pstipple, aaline and aapoint without LLVM
+- aco: ensure loops nested in a WQM loop are in WQM
+- nir/gather_info: fix partial masking of compact I/O with location_frac!=0
+- radv: remove second nir_lower_idiv
+- nir/lower_idiv: add options to use fp32 for 8-bit division lowering
+- nir/lower_idiv: make lowered divisions exact
+- aco: fix 16-bit u2f32
+- aco: fix 16-bit f2{u8,i8} on GFX6/7
+- radv: don't use fp16 for 8-bit division lowering before GFX9
+- nir: add nir_block_get_predecessors_sorted() helper
+- nir/lcssa: fix nondeterminism in predecessor iteration
+- nir/loop_unroll: fix is_indirect_load() with load_global
+- radv: fix conditions for running nir_opt_vectorize
+- aco/ra: use original names when renaming loop carried phi operands
+- aco/ra: remove live-in temporary from live_out_per_block when moving it
+- radv: fix barrier in radv_decompress_dcc_compute shader
+- radv: fix clearing DCC-compressed e5b9g9r9 images
+- aco: set TRUNC_COORD=0 for nir_texop_tg4
+- ac/nir: set TRUNC_COORD=0 for nir_texop_tg4
+- Revert "radeonsi: set TRUNC_COORD=0 for Total War: WARHAMMER to fix it"
+- aco: don't update register demand during RA validation
+- aco: allow SDWA sels smaller than the operand size
+- radv: disable VK_FORMAT_R64_SFLOAT
+- vulkan: fix use-after-free in vk_common_DestroyDebugReportCallbackEXT
+- radv: fix use-after-free upon GS copy shader cache hits
+- radv,ac/llvm: use a dword alignment for descriptor loads
+
+Rob Clark (143):
+
+- freedreno/ir3: Fix ldg decoding/parsing
+- freedreno/ir3: Decouple ir3_info collection from assembler
+- freedreno/ir3: Add some new "logical" opcodes
+- freedreno/hw: Add isaspec mechanism for documenting/defining an ISA
+- freedreno/hw/isa: Add description of ir3 ISA
+- freedreno/hw/isa: Add expression caching
+- freedreno/ir3/tests: Switch disasm test over to new decoder
+- freedreno/ir3: Switch over to new encoder/decoder
+- freedreno/ir3: Small resinfo disasm tweak
+- freedreno/ir3: Better sstall estimation
+- freedreno/ir3: Realign disasm shader stats
+- freedreno/ir3/decode: Switch over to new disasm
+- freedreno/ir3: Remove legacy packed-struct encoding
+- frontend/dri: Expose RGB[AX]_SRGB as well
+- freedreno/isa: Fix branch/jump offset encoding
+- freedreno/a6xx: Add r2d support for GMEM resolves
+- gallium/util: Add helpers to determine if z/s is written
+- freedreno/a6xx: Don't early-z if there are stencil writes
+- r300: Use util_writes_depth_stencil() helper
+- radeonsi: Use util_writes_stencil() helper
+- freedreno: Add perf_warn() trace helper
+- freedreno: Add fmt/args macros for pipe_resource
+- freedreno/a6xx: Add helper to check if UBWC is supported
+- freedreno: Add perf_warn() for missed UBWC opportunities
+- ci/freedreno/a6xx: Skip vs-output-array-vec2-index-wr-before-gs
+- freedreno/a6xx: Fix 3dmark misrendering with unwritten MRTs
+- mesa: Remove _mesa_destroy_context()
+- freedreno/decode: Fix overflow
+- freedreno: Put an upper limit on VSC size
+- freedreno: Misc cleanup
+- freedreno/a5xx: Drop fd5_compute_stateobj
+- freedreno/a6xx: Drop fd6_compute_stateobj
+- freedreno/ir3+a5xx+a6xx: De-duplicate create_compute_state()
+- freedreno/ir3: Add ir3_shader_state
+- freedreno/ir3: Move ir3_compiler_create()
+- freedreno/ir3: Add ir3_screen_fini()
+- freedreno/ir3: Reshuffle ir3_shader_create()
+- freedreno/ir3: Reshuffle compute state creation
+- freedreno/ir3: Async shader compile
+- freedreno/ir3: Add missing shader prog cache invalidation
+- freedreno: Quiet fallthrough warnings
+- freedreno: Split batch_flush_reset_dependencies()
+- freedreno: driver-thread annotations
+- freedreno/ir3/print: More sane ssa src/dst display
+- freedreno/ir3/print: Improve branch printing
+- util/fossilize_db: Fix compile error with clang
+- freedreno: Handle InvalidateBufferData() case
+- freedreno: Add perf_debug logging for bo stalls
+- freedreno: Workaround for UNSYNC+DISCARD_RANGE
+- driconf: Generate a static table when no xmlconfig
+- xmlconfig: Reshuffle to keep attr processing
+- xmlconfig: Add static driconfig support
+- freedreno/ir3: Drop foreach_bit() macro
+- freedreno: Drop foreach_bit() macro
+- etnaviv: Drop foreach_bit() macro
+- v3d: Drop foreach_bit() macro
+- freedreno: Fix think-o in fd_resource_wait()
+- freedreno/ir3: Fix initial_variants_synchronous() condition
+- freedreno: Add FD_DBG() macro
+- freedreno: Slight perf_debug rework
+- freedreno: Add macro for duration based warns
+- util/u_queue: Ensure num_cpu_mask_bits is valid
+- util: Add accessor for util_cpu_caps
+- freedreno/a6xx: Always pass ctx to fd6_emit_textures()
+- freedreno/a6xx: Fix uncompressed resource vs stale CSO
+- freedreno/ir3: Add comments about shader key/gen
+- freedreno: Deduplicate fixup_shader_state()
+- freedreno/a6xx: Fix compile warning
+- driconf: Add ignore_map_unsynchronized option
+- freedreno: Remove dead-cells MBR workaround
+- util: Extract thread-id helpers from u_current
+- gallium/u_threaded: Add helper to assert driver thread
+- gallium/u_threaded: use mesa_log for debug msgs
+- freedreno: Fix u_blitter constant-buffer leak
+- freedreno: Factor out common fd_resource init
+- freedreno: Split out batch/resource tracking
+- freedreno: Restructure transfer_map()
+- freedreno: Extend threaded_resource
+- freedreno: Extend threaded_transfer
+- freedreno: Extract out helper for transfer-map flag munging
+- freedreno: Add fd_replace_buffer_storage()
+- freedreno: Add transfer_pool_unsync
+- freedreno/a6xx: Move UBWC demotion to first sampler view bind
+- freedreno: Check cb0 in rebind_resource()
+- freedreno: threaded_context support
+- freedreno: threaded_context async flush support
+- freedreno: Fix fd_fence_finish()
+- freedreno/drm: Avoid unitialized timestamp in submit fail
+- freedreno/drm: Split softpin "reloc" functions
+- freedreno/drm: Split 64b vs 32b paths
+- freedreno/drm: Move emit_reloc_tail to head
+- freedreno/drm: Inline iova calculation
+- freedreno/ir3: Precompute whether we need driver-params
+- freedreno: Add helpers to mark dirty state
+- freedreno: Add mapping to generation specific dirty state
+- freedreno/a6xx: Convert to dirty_groups
+- freedreno: Small dirty flag re-org
+- freedreno: Add dirty bit for state that needs rsc tracking
+- freedreno: Don't ignore geom/tess stage resources
+- freedreno: Split out helper for updating sw stats
+- freedreno: Only collect sw stats when required
+- freedreno/a6xx/vsc: Be more tolerate of degenerate prims
+- freedreno: Drop u_trim_pipe_prim() from fast-paths
+- u_draw: Add helper to emultate multi-draw
+- freedreno: Use multi-draw helper
+- freedreno: Handle multi-draw edge cases
+- freedreno: Push multi-draw closer to backend
+- freedreno/a6xx: Emit streamout state on every draw
+- freedreno: Add draw cost estimation
+- freedreno/batch: Export key/hash fxns
+- freedreno/batch: Add a way to clone a batch key
+- freedreno: Add gmem_reason_mask
+- freedreno/a6xx: Fix sRGB/snorm vs sysmem clear path
+- freedreno: Autotune bypass vs GMEM rendering decision
+- freedreno/a6xx: Fix typo
+- freedreno: Make headers C++ happy
+- freedreno/fdperf: Use os_read_file()
+- freedreno: Split out devicetree helpers
+- ci: Disable panfrost t760
+- freedreno/a6xx: Fix indirect+patches draws
+- freedreno/a6xx: Fix obsolete comment
+- d3d12: Use util_draw_multi() helper
+- etnaviv: Use util_draw_multi() helper
+- i915: Use util_draw_multi() helper
+- iris: Use util_draw_multi() helper
+- lima: Use util_draw_multi() helper
+- llvmpipe: Use util_draw_multi() helper
+- nouveau: Use util_draw_multi() helper
+- r300: Use util_draw_multi() helper
+- r600: Use util_draw_multi() helper
+- softpipe: Use util_draw_multi() helper
+- svga: Use util_draw_multi() helper
+- tegra: Use util_draw_multi() helper
+- vc4: Use util_draw_multi() helper
+- v3d: Use util_draw_multi() helper
+- virgl: Use util_draw_multi() helper
+- freedreno: Don't handle multi-draw in indirect case
+- util/primconvert: Handle indirect and multi-draw
+- freedreno: Add .clang-format
+- freedreno: Some manual reformatting
+- freedreno: Re-indent
+- freedreno: Manual fixups
+- freedreno: Add missing foreach macros and update indentation
+
+Rohan Garg (8):
+
+- virgl: Cache depth and stencil buffers
+- ci: Ensure that jobs inherting the ci-deqp jobs artifact meson logs
+- intel/genxml: Free resource before exiting
+- intel/compiler: Free resources on test teardown
+- virgl: update headers
+- virgl: Return total video memory if available
+- virgl: Add support for querying detailed memory info
+- virgl: Support the ETC1_RGB8 format as virglrenderer supports it
+
+Roman Stratiienko (1):
+
+- egl: android: use num_planes param in createImageFromDmaBufs()
+
+Ruijing Dong (1):
+
+- radeon/vcn: release si buffer for encoding at the end.
+
+Ryan Neph (1):
+
+- Revert "virgl: fix BGRA emulation artifacts during window resize"
+
+Sagar Ghuge (7):
+
+- anv: Invalidate the correct AUX-TT entry
+- anv: Skip CCS ambiguate which preceed fast-clears
+- intel/mi_builder: Added support for command streamer shift operations
+- anv: Add anv_memregion structure
+- Revert "Revert "blorp/gen12: Don't use aux address if implicit CCS""
+- intel/blorp: Fix condition to figure out aux_address
+- anv: Set correct binding table entry count
+
+Samuel Iglesias Gonsálvez (9):
+
+- turnip: disable UBWC on Z24_S8 MSAA images on A630
+- turnip: set sparseAddressSpaceSize to zero
+- turnip: fix UINT64_MAX size wrapping in tu_GetBufferMemoryRequirements()
+- turnip: fix resolve MSAA D24_UNORM_S8_UINT image to S8_UINT
+- turnip: fix resolve MSAA D32_SFLOAT_S8_UINT image to S8_UINT
+- util: fix parsing of /proc/meminfo MemAvailable value
+- turnip: keep track of memory heap usage, size and flags
+- turnip: VK_EXT_memory_budget implementation
+- turnip: set depth plane control zmode to A6XX_LATE_Z when sample mask is written
+
+Samuel Pitoiset (218):
+
+- radv: do not invalidate the L2 metadata cache on compute queues
+- ci: mark some sparse CTS as expected failures on RAVEN
+- radv: flush L2 metadata as part of CB/DB flush instead of CS_DONE on GFX9
+- radv: add a comment explaining the micro tile mode resolve
+- radv: enable TC-compat HTILE with D32S8 and MSAA on GFX9+
+- radv: enable TC-compat HTILE for D16S8 on GFX9+
+- radv: restore invalidating the vector cache for internal meta operations
+- radv: flush L2 for images affected by the pipe misaligned issue on GFX10+
+- ci: exclude one CTS test that timeout most of the time for RADV CI
+- radv: remove redundant check in radv_process_depth_stencil()
+- radv: remove unnecessary radv_image::tc_compatible_htile
+- radv: remove redundant check in depth_view_can_fast_clear()
+- radv: fix a sync issue with geometry shader primitives query on GFX10+
+- radv: fix overflow when computing the SQTT buffer size
+- radv: inhibit clock gating when tracing with SQTT
+- ac/rgp: add support for GFX10.3
+- ac,radv: add SQTT support on GFX10.3
+- radv: enable SQTT support on GFX10.3
+- radv: fix separate depth/stencil layout in render pass
+- radv: add multi-layer support to FMASK color expand
+- radv: use the range aspect mask in FMASK color expand
+- radv: use a workgroup size of 8x8 for FMASK color expand
+- radv: only decompress the depth/stencil aspect that needs to be resolved
+- radv: enable sparseImageInt64Atomics/sparseImageFloat32Atomics
+- radv,aco: fix shifting input VGPRs for the LS VGPR init bug on GFX9
+- radv: synchronize Cmd{Set,Write}Event() using PS_DONE/CS_DONE events
+- radv: add support for emitting PS_DONE/CS_DONE on GFX6-8
+- radv: remove radv_util.h
+- radv: remove stub() macros
+- radv: remove unused EMPTY constant in radv_descript_set.c
+- nir/algebraic: mark more optimization with fsat(NaN) as inexact
+- ac/surface: store HTILE mip info into the surface
+- radv: use the image view range when fast clearing depth
+- radv: check if HTILE is enabled per-level instead of the entire image
+- radv: do not decompress/resummarize levels without HTILE
+- radv: remove mipmaps related assertions when initializing HTILE
+- radv: add support for fast clearing levels of the HTILE buffer
+- radv: teach radv_htile_enabled() about the number of HTILE levels
+- radv: enable TC-compat HTILE for mipmaps on GFX10+
+- radv: re-disable TC-compat HTILE for D32S8 on all generations
+- radv: fix centroid with VRS coarse shading
+- radv/winsys: move the initial BO domain to radeon_winsys_bo
+- radv: prefer CP DMA for GTT buffer copies/clears on dGPUs due to slow PCIe
+- radv: fix waiting on the last enabled RB for occlusion queries
+- radv/winsys: use an array for the global BO list instead of a list
+- radv/winsys: remove the radv_amdgpu_winsys_bo::ws indirection
+- radv/winsys: remove useless continue preamble CS for IBs path
+- radv/winsys: remove useless is_local check in radv_amdgpu_cs_add_buffer()
+- radv/winsys: remove unused radeon_bo_usage enum
+- radv/winsys: simplify the user fence logic for submission
+- radv/winsys: remove unused fields in radv_amdgpu_cs_request
+- radv/winsys: stop zeroing radv_amdgpu_cs_request
+- radv: use less AMDGPU contexts by creating only one per queue priority
+- radv: add radeon_winsys_bo::use_global_list
+- radv: stop using VM_ALWAYS_VALID on APUs
+- radv/winsys: move the debug_all_bos check outside of the add/del helpers
+- radv/winsys: set use_global_list to avoid adding a BO twice
+- radv/winsys: add buffer_make_resident() to the API
+- radv/winsys: add the resident BOs to the list of BOs at submit time
+- radv/winsys: enable the global BO list unconditionally
+- radv: use the global BO list from the winsys
+- radv: fix printing the debug option names
+- radv: fix double free when creating a fence failed
+- radv: stop allocating useless ESGS scratch BO on GFX10+
+- radv: fix memory leaks if a submission fails
+- radv: do not overallocate the SQTT buffer
+- radv: adjust an error message related to the SQTT buffer size
+- radv: add support for resizing the SQTT buffer automatically
+- ac/rgp: append the number of seconds to the generated RGP file
+- radv: emit pipeline bind markers for SQTT
+- radv: only make the WSI images resident if the global BO list is used
+- radv/winsys: set use_global_list inside the critical section
+- radv: only apply the MRT output NaN fixup to non-meta shaders
+- radv: create the start/stop CS for SQTT dynamically
+- radv: move SQTT parameters initialization to radv_thread_trace_init()
+- radv: remove an outdated TODO about SQTT cache flushes
+- radv: make sure to allocate enough space when emitting SQTT userdata
+- radv: stop emitting pipeline bind markers
+- radv: do not allow to capture SQTT on the compute queue
+- radv: add support for user event markers with SQTT
+- radv: only emit pipeline bind markers for application pipelines
+- radv: use the pipeline key as hash for pipeline bind markers
+- radv: set correct value for OFFCHIP_BUFFERING on GFX10+
+- radv: make the border color BO a resident buffer
+- radv: make the trace BO a resident buffer
+- radv: make the TMA/TBA BOs resident buffers
+- radv: emit the trap handler registers earlier
+- radv: rework radv_cmd_buffer_resolve_subpass() a bit
+- radv: emit missing subpass resolve marker for SQTT
+- ac/rgp: fill CPU info by parsing /proc/cpuinfo
+- radv: store a pointer to the code in radv_shader_variant
+- radv: add support for exporting pipelines with RGP
+- radv: add support for instruction timing with RGP
+- radv: do not scale the depth bias for D16_UNORM depth surfaces
+- include/drm-uapi: bump AMDGPU headers
+- ac/rgp: recognize more memory types
+- ac/rgp: report LDS size in CU mode on GFX10+
+- ac/rgp: report the number of memory operations per clock
+- ac/rgp: report the number of primitives per clock
+- radv: remove duplicate REG_INCLUDE_CONTEXT setting for SQTT
+- radv: always select the first active CU when profiling with SQTT
+- radv: fix exporting SQTT pipelines with LLVM
+- radv: exclude perf counters for SQTT also on GFX10.3
+- Revert "radv: do not overallocate the SQTT buffer"
+- radeonsi,radv: do not overallocate the SQTT buffer size
+- radv: remove useless decompression of the DS resolve attachment
+- radv: do not trace inactive shader engines with SQTT
+- ac/sqtt: fix determining if the trace is complete on GFX10+
+- radv: double the SQTT buffer size when it is resized
+- radv: trigger a new SQTT capture automatically after resizing the buffer
+- radv: bump the initial SQTT buffer size to 32MB per SE
+- radv: fix RGP barrier layout transition for TC-compatible CMASK images
+- Revert "radv: stop using VM_ALWAYS_VALID on APUs"
+- radv: cleanup enabling TC-compat HTILE for depth surfaces
+- radv: remove useless check about mips+layers for TC-compat HTILE images
+- radv: skip useless FCE when fast-clearing MSAA images with DCC enabled
+- radv: re-enable TC-compat HTILE for MSAA D32S8 images on GFX9+
+- radv: do not declare push constants for DCC decompress on compute
+- radv: check if dynamic VRS state changed
+- radv: check if dynamic line stipple state changed
+- radv: disable sampling with VK_FORMAT_R64_SFLOAT
+- radv: fix meta save/restore state with non renderable images
+- radv: fix potential clears with non renderable images on GFX9+
+- radv: fix initialization of disable_compression when clearing color image
+- radv: add missing SQTT events for copy_commands2/create_renderpass2
+- radv: remove useless DCC disable check for 3D images on GFX10+
+- radv: rework radv_use_dcc_for_image() a bit
+- vulkan: add missing vk_shader_module.c/h includes to Makefile
+- radv: use common entrypoints for VK_KHR_copy_commands2
+- radv: do not enable TC-compat CMASK if the image isn't readable by a shader
+- radv: remove redundant check when enabling TC-compat CMASK
+- radv: make sure FMASK is enabled for TC-compat CMASK
+- radv: only configure the CMASK tiling for TC-compat on GFX8
+- radv: initialize TC-compat CMASK images with the DCC clear code
+- radv: enable TC-compat CMASK on GFX10+
+- radv: add notccompatcmask debug option
+- radv: extend the dirty bits to 64-bit
+- ac/surface: init CMASK slice size on GFX9+
+- radv: fix clearing CMASK layers on GFX9+
+- radv: initialize CMASK with correct clear codes
+- radv: restore previous MRT CB_SHADER_MASK logic
+- radv: gather if the FS uses perspective or linear interpolations
+- radv: determine if a pipeline is candidate for flat shading
+- radv: enable VRS 2x2 coarse shading for flat shading on GFX10.3+
+- radv: add RADV_DEBUG=novrsflatshading option
+- ci: update list of expected CTS failures for RADV
+- vulkan: add common entrypoints for VK_KHR_create_renderpass2
+- radv: use common entrypoints for VK_KHR_create_renderpass2
+- turnip: use common entrypoints for VK_KHR_create_renderpass2
+- lavapipe: use common entrypoints for VK_KHR_create_renderpass2
+- anv: use common entrypoints for VK_KHR_create_renderpass2
+- radv: report that degenerated triangles are not culled
+- radv: require DRM 3.35+
+- ac/surface: do not allocate FMASK or CMASK for stencil-only surfaces on GFX9+
+- radv: do not fixup DCC after compute color resolves if DCC stores enabled
+- radv: only set WRITE_COMPRESS_ENABLE for storage image descriptors
+- radv: use a sampled image descriptor for reads for the MSAA color decompress
+- radv: compress FMASK for all layouts except GENERAL
+- radv: cleanup FMASK expand transitions
+- radv: do not force enable FMASK during MSAA blits
+- radv: use COLOR_ATTACHMENT_OPTIMAL for fast clear/hw resolve operations
+- ac: add ac_get_family_name() helper
+- radv: change RADV_FORCE_FAMILY to use family name instead of LLVM processor name
+- radv: try to keep HTILE compressed with DEPTH_STENCIL_READ_ONLY_OPTIMAL
+- radv: clean up fence syncobj code
+- ac: add ac_gpu_info::has_image_load_dcc_bug
+- aco: fix get_sampler_desc() for image loads
+- aco: implement a workaround for the image load DCC hw bug on GFX10.3
+- radv: allow DCC for storage images on GFX10.3 with RADV_PERFTEST=dccstores
+- radv: handle implicit subpass dependencies per attachment
+- radv: init CMASK/FMASK/DCC in parallel
+- radv: perform MSAA color decompression for storage images with DCC
+- radv: enable DCC stores with MSAA 4x/8x on GFX10+
+- radv: simplify a check when enabling DCC for concurrent images
+- radv: enable DCC for concurrent images on GFX10
+- radv: make sure FMASK decompress and FCE are performed on gfx queue
+- radv: add MSAA support to ClearColorImage() on compute queue
+- radv: do not clamp framebuffer dimensions to the minimum dimension
+- radv: add MSAA support to CopyImage() on compute queue
+- radv: use explicit VRS mode when configuring PA_CL_VRS_CNTL
+- radv: allow to force VRS rates on GFX10.3 with RADV_FORCE_VRS
+- radv: fix needed dynamic state for VRS
+- amd/addrlib: expose HTILE address equations to drivers on GFX10+
+- ac/surface: rename ac_surface_dcc_address_test.c
+- ac/surface: add a test of HtileAddrFromCoord prototype outside of addrlib
+- ac/surface: rename gfx9_dcc_equation to gfx9_meta_equation
+- ac/surface: increase gfx9_meta_equation::gfx10_bits by 4 elements
+- ac/surface: copy the HTILE equations to the surface
+- ac/surface: implement HtileAddrFromCoord in NIR
+- ac/surface: store the HTILE pitch to the surface
+- radv: expose R8_UINT as the only supported format for VRS attachments
+- radv: do not allow MSAA with fragment shading rate attachments
+- radv: do not enable DCC for fragment shading rate attachments
+- radv: determine if attachment VRS is enabled
+- radv: configure the VRS HTILE encoding size
+- radv: do not use the whole HTILE buffer for depth when VRS is used
+- radv: update the HTILE clear word when VRS is used
+- radv: allow HTILE for very small images if VRS attachment is used
+- radv: create an image for VRS if no depth/stencil attachment is bound
+- radv: handle the VRS attachment subpass
+- radv: bind our internal depth buffer when not provided by the app
+- radv: add support for copying VRS rates into HTILE
+- radv: copy VRS rates to HTILE when beginning a subpass
+- radv: configure the VRS combiners when an attachment is used
+- radv: advertise attachmentFragmentShadingRate on GFX10.3
+- ac: add missing BUF_DATA_FORMAT_10_11_11 vertex format on GFX10+
+- radv: keep DCC compressed for clears on compute with image stores
+- aco: fix opquantize2f16 on GFX6-7
+- radv: fix fast clearing depth-only or stencil-only aspects with HTILE
+- radv: fix emitting depth bias when beginning a command buffer
+- radv: fix emitting default depth bounds state on GFX6
+- radv/winsys: fix allocating the number of CS in the sysmem path
+- radv/winsys: fix resetting the number of padded IB words
+- radv: make sure CP DMA is idle before executing secondary command buffers
+- radv: fix various CMASK regressions on GFX9
+- radv: fix computation of the number of user SGPRS for NGG GS state
+- radv: check if DCC is enabled when resolving different levels
+- radv/winsys: fix executing huge secondary command buffers on GFX6
+
+Serge Martin (1):
+
+- clover: return CL_INVALID_VALUE when origin or region are NULL
+
+Simon Ser (15):
+
+- nouveau/nvc0: fix linear buffer alignment for scan-out/cursors
+- nouveau/nv50: fix linear buffer alignment for scan-out/cursors
+- frontends/va: extract pipe format to DRM format mapping
+- frontends/va: add support for VA_EXPORT_SURFACE_COMPOSED_LAYERS
+- frontends/va: add pipe to DRM format mapping for NV12 and P010
+- radeonsi/uvd: make format modifiers-aware
+- egl: use render node for wl_drm if available
+- gbm: fail early when modifier list only contains INVALID
+- gbm: remove fprintf calls in gbm_dri_bo_create
+- egl/wayland: avoid unnecessary roundtrip when authenticated
+- gbm: add gbm_bo_get_fd_for_plane
+- egl: fix software flag in _eglAddDevice call on DRM
+- egl: only take render nodes into account when listing DRM devices
+- Revert "egl: Don't add hardware device if there is no render node v2."
+- radv: fix format feature reporting for modifiers
+
+Simon Zeni (1):
+
+- egl/dri2: enable EGL_WL_bind_wayland_display in EGL device platform
+
+Stéphane Marchesin (1):
+
+- virgl: Add simple disk cache
+
+SureshGuttula (3):
+
+- va/picture : Added failure check for stability
+- frontends/va: Update conditional checks for code stability.
+- frontends/va : Fix memory leaks incase of error returns
+
+Tamara Schmitz (1):
+
+- util: add mesa_glthread for Valheim in OpenGL mode.
+
+Tapani Pälli (17):
+
+- mesa: add GL_SR8_EXT, GL_SRG8_EXT for color/srgb format queries
+- intel/perf: cleanup, remove duplicate function declaration
+- intel/perf: introduce additional ralloc context parameter
+- i965: use aligned malloc for context instead of ralloc
+- mesa: add check that non base level attachment is mipmap complete
+- gitlab-ci: bump piglit commit for windows
+- anv: toggle on sample shading if it is set in the shader
+- anv/android: fix compilation failure
+- anv: fix compilation due to missing vk_format_from_android
+- mesa: check cube completeness for cube fbo attachments
+- anv/android: fix image creation with external format
+- android: add some more stub functions for cross compilation
+- intel/common: disable batch decoder on Android platform
+- loader: prefer iris on Android
+- iris: clamp PointWidth in 3DSTATE_SF like i965 does
+- egl: support no error attribute set to false with ES 1.1
+- glx: revert "Downgrade sRGB-ful fbconfigs"
+
+Thong Thai (2):
+
+- frontends/va/config: Fix check for packed header config
+- radeon: Add cropping to encoded H.265 when padding is used
+
+Timothee Chabat (1):
+
+- llvmpipe: increase PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE value
+
+Timothy Arceri (23):
+
+- util/disk_cache: do crc32 check on compressed data for ZSTD
+- util/disk_cache: move cache path strdup call back into disk_cache.c
+- util/disk_cache: use a new cache dir for the single file cache feature
+- util/mesa_sha1: add helper to reconvert sha1 hex strings
+- util/fossilize_db: add basic fossilize db util to read/write shader caches
+- util/disk_cache: make use of single file cache when env var set
+- nir: handle negatives in ffma reassociation optimisation
+- util/disk_cache: fix crash in fossilize_db
+- util/disk_cache: move cache tests to the util directory
+- util/disk_cache: make MESA_DISK_CACHE_READ_ONLY_FOZ_DBS a relative path
+- Revert "glsl: default to compat shaders in compat profile"
+- glsl: fix declarations of gl_MaxVaryingFloats
+- util: create some standalone compression helpers
+- util/disk_cache: make use of the new compression helpers
+- util/fossilize_db: remove compression from foz db helper
+- util/compress: make compression function inputs const
+- util/disk_cache: separate file reads from cache item validation
+- util/disk_cache: detangle cache item creation from disk writing
+- util/disk_cache: add cache item headers to single file cache entries
+- glsl: add compilation errors for attribute and varying qualifiers
+- glsl: enforce restrictions on builtin functions moved to compat
+- mesa: fix incomplete GL_NV_half_float implementation
+- util: disable glthread in CSGO
+
+Timur Kristóf (55):
+
+- radv: Only enable sparse features on Polaris and newer.
+- tgsi_to_nir: Fix uniform ranges.
+- aco: Fix LDS statistics of tess control shaders.
+- radv/llvm: Fix reporting LDS stats of tess control shaders.
+- aco: Disallow LSHS temp-only I/O when VS output is written indirectly.
+- pan/bi: Use correct enum type for NIR intrinsics.
+- aco: Use ASSERTED to avoid unused variable warning.
+- intel/compiler: Use assume() instead of assert() for array bounds.
+- intel/compiler: Make room for maximum dest size in nir_emit_texture.
+- anv: Use unreachable() in anv_genX.
+- anv: Use ASSERTED for results that are only used in asserts.
+- nir: Add new nir_builder helpers for iadd with no_unsigned_wrap.
+- nir: Add nir_builder helper for I/O address offset calculations.
+- nir: Add a few more algebraic optimizations to help address calculation.
+- nir: Fix unsigned upper bound of local_invocation_index for non-CS stages.
+- nir: Shrink vectors for load_shared.
+- nir: Add unsigned upper bound for TCS load_invocation_id.
+- nir: Add default unsigned upper bound configuration.
+- nir: Add AMD-specific buffer load/store intrinsics.
+- nir: Add nir_opt_offsets to fold const adds into load/store offsets.
+- nir: Add tessellation related AMD-specific intrinsics.
+- nir: Add AMD-specific Geometry Shader related intrinsics.
+- aco: Implement new buffer load/store intrinsics.
+- aco: Implement the new tessellation I/O related NIR intrinsics.
+- aco: Implement new Geometry Shader intrinsics.
+- ac/llvm: Implement AMD-specific buffer load/store intrinsics.
+- ac/llvm: Implement the new tessellation intrinsics.
+- ac/llvm: Implement new Geometry Shader intrinsics.
+- ac/llvm: Make shared loads/stores work correctly for non-CS stages.
+- ac/llvm: Make sure to always emit integer comparison for nir_op_ieq.
+- ac/llvm: Add constant offset to load/store_shared.
+- ac/llvm: Emit more efficient code for load_shared.
+- ac: Add NIR passes to lower VS->TCS->TES I/O to memory accesses.
+- ac: Add NIR passes to lower ES->GS I/O to memory accesses.
+- radv: Lower IO and set driver locations earlier.
+- radv: Save I/O usage data to both shader infos for merged stages.
+- radv: Calculate tess patches and LDS use outside the backend compilers.
+- radv: Determine tcs_in_out_eq in radv_pipeline instead of the compiler.
+- radv: Fill some tess shader info earlier.
+- radv: Reorder some NIR optimizations in preparation for the I/O changes.
+- radv: Use new, NIR-based I/O lowering.
+- radv/llvm: Only store TCS outputs where they are really needed.
+- radv/llvm: Delete superfluous tess and ESGS I/O code.
+- aco: Delete superfluous tess and ESGS I/O code.
+- aco: Fix constant address offset calculation for ds_read2 instructions.
+- ac/llvm: Fix alignment of shared load intrinsics.
+- aco: Optimize workgroup exclusive scan to better avoid bank conflicts.
+- aco: Align NGG scratch size to 16 so a single ds_read can always read it.
+- aco: Remove useless s_setprio near gs_alloc_req.
+- aco: Use s_setprio 3 at the beginning of every VS and TES.
+- aco: Extract ngg_nogs_export_prim_id to a separate function.
+- aco: Set block_kind_export_end in create_vs/fs_exports.
+- aco: Emit fewer branches for NGG VS/TES with late primitive export.
+- aco: Add a simple heuristic to decide early or late primitive export.
+- aco: Mark VCC clobbered for iadd8 and iadd16 reductions on GFX6-7.
+
+Tomeu Vizoso (17):
+
+- ci: Fix selection of linker in Android builds
+- ci: Move container files into their own dir
+- ci: Move out expect files from .gitlab-ci
+- ci: Disable two radeonsi jobs
+- Revert "ci/panfrost: disable the rest of these jobs temporarily"
+- Revert "ci/panfrost: Disable t860/radeonsi testing while the runners are struggling."
+- Revert "CI: Disable Panfrost T760"
+- ci: Fix visibility property of LAVA jobs
+- ci/fdo: Use trimmed traces for Valve games
+- gallium/dri2: Pass the resource that corresponds to the plane
+- ci: Use a single template for LAVA jobs
+- ci: Set more reasonable timeouts for LAVA jobs
+- ci: Don't retry failed test runs
+- ci: Disable t720 LAVA jobs
+- Revert "ci: Disable t720 LAVA jobs"
+- Revert "ci: Disable panfrost g52"
+- Revert "ci: Disable panfrost t760"
+
+Tony Wasserka (34):
+
+- aco/ra: Update register use bounds before recursing in get_regs_for_copies
+- aco/ra: Introduce PhysRegInterval helper class
+- aco/ra: Conservatively refactor existing code to use PhysRegInterval
+- aco/ra: Remove always-false conditions
+- aco/ra: Add iterator interface for PhysRegInterval
+- aco/ra: Use std::find_if(_not) to clean up get_reg_simple
+- aco/ra: Use std::all_of to simplify a loop
+- aco/ra: Conservatively refactor get_reg_specified to use PhysRegInterval
+- aco/ra: Move commonly repeated code to a helper function
+- aco/ra: Add helpers to test for intersection/containment of reg intervals
+- aco/ra: Use std::all_of to simplify a loop
+- aco/ra: Remove unused function parameter
+- aco/ra: Use PhysReg for member functions of PhysRegInterval
+- aco/ra: Use PhysReg when indexing into RegisterFile's containers
+- aco/ra: Use PhysRegInterval for collect_vars parameters
+- aco/ra: Use PhysRegInterval for count_zero
+- aco/ra: Fix print_regs using the wrong constant to check for blocked slots
+- aco/ra: Fix build with print_regs enabled
+- aco/ra: Remove preprocessor guards for print_regs
+- aco/ra: Add helper to get a PhysRegInterval for the register demand
+- aco: Fix vector::reserve() being called with the wrong size
+- radv: Fix improper max_index_count argument for indexed draws
+- ac: Add has_zero_index_buffer_bug to ac_gpu_info
+- radv: Skip 0-sized index buffers only when necessary
+- aco/ra: Avoid unnecessary copying of std::vectors
+- aco/isel: Don't emit unsupported i16<->f16 conversion opcodes on GFX6/7
+- aco/isel: Fix i64/u64->float32 conversion for large inputs
+- aco/isel: Don't request sign extension when truncating signed integers
+- aco/isel: Add documentation and asserts for convert_int
+- aco/isel: Fix large inputs being truncated in int32->f16 conversions
+- aco/isel: Add documentation for (u)int64->f16 conversion
+- ci: skip pipeline_barrier tests that currently crash on RADV
+- gitlab: rename RADV bug report template
+- aco/spill: Fix improper handling of exec phis
+
+Vasily Khoruzhick (10):
+
+- lima: add precompile debug flag
+- lima/ppir: don't use list_length() in loop in regalloc and liveness analysis
+- lima: update dEQP fails and skips lists
+- lima: relax checks of imported BO
+- lima: rename \*_shader_state to \*_compiled_shader
+- lima: rename lima_{fs,vs}_bind_state to lima_{fs,vs}_uncompiled_shader
+- lima: implement shader disk cache
+- lima: compute nir_sha1 for shader key even if disk cache is disabled
+- lima: use passed surface to get mipmap level for reload, not cbuf
+- lima: limit number of draws per job
+
+Vinson Lee (31):
+
+- panfrost: Fix typos.
+- nouveau: Fix typos.
+- nv50/ir: Initialize DataArray members in constructor.
+- r600/sfn: Remove StoreMerger unused member b.
+- nv50/ir: Add InsertConstraintsPass constructor.
+- nv50/ir: Initialize CodeEmitter members in constructor.
+- nv50/ir: Initialize RegAlloc member func in constructor.
+- clover: Add constructor for global_argument.
+- lima: Fix typos.
+- v3dv: Fix assert.
+- nvc0/ir: Initialize NVC0LoweringPass member gpEmitAddress.
+- nvc0/ir: Initialize SchedDataCalculator members in constructor.
+- nv50/ir: Initialize BindArgumentsPass member sub in constructor.
+- virgl: Convert errno to string.
+- r600/sfn: Initialize FragmentShaderFromNir member m_pos_input.
+- etnaviv: Fix memory leak in etna_vertex_elements_state_create.
+- nv50/ir: Initialize ValueDef member origin in constructors.
+- nv50/ir: Initialize Instruction members.
+- aco: Initialize ds_state.front.writeMask.
+- r600: Fix typos.
+- llvmpipe: Fix typos.
+- nir/lower_tex: Change coord type to int.
+- gv100/ir: Initialize CodeEmitterGV100 members in constructor.
+- zink: Remove leftover dead code.
+- nv50/ir: Add constructor for NV50LegalizePostRA.
+- iris: Fix typos.
+- clover: Add constructor for sampler_argument.
+- ac: Fix emit_split_buffer_store modulus operation.
+- freedreno: Fix file descriptor leak.
+- glsl: Initialize parcel_out_uniform_storage members.
+- Remove leftover dead code.
+
+Víctor Manuel Jáquez Leal (1):
+
+- frontends/va/context: don't set max_references with num_render_targets
+
+Witold Baryluk (3):
+
+- lavapipe: Defer lavapipe warning to CreateDevice
+- util: Use explicit relaxed reads for u_queue
+- radv: memset the alignment hole in cache_entry to 0
+
+Xin He (1):
+
+- virgl: use atomic operations when increase sub_ctx_id
+
+Yannik Marek (1):
+
+- turnip: fix alpha to coverage in no color and unused attachment cases
+
+Yevhenii Kharchenko (2):
+
+- st/mesa: fix PBO download for TEXTURE_1D_ARRAY textures
+- intel/compiler: remove unused member 'input_vue_map'
+
+Yevhenii Kolesnikov (3):
+
+- iris: only set point sprite overrides if actually using points
+- nir/from_ssa: consider defs in sibling blocks
+- nir/from_ssa: don't check for interference within the same set
+
+Yiwei Zhang (3):
+
+- venus: properly enable WSI for different platforms
+- venus: bring up Android support
+- venus: implement vn_debug_init_once with os_get_option
+
+Yogesh Mohan Marimuthu (7):
+
+- ac/rgp: add ac_msgpack.h/c
+- ac/rgp: add rgp co, col, pso data structures
+- ac/rgp: add helper function to write rgp elf oject
+- ac/rgp: expose data structure to populate co, col, pso database
+- ac/rgp,radeonsi,radv: pass struct thread_trace_data to ac_sqtt_dump_data()
+- ac/rgp: dump co, col, pso database to rgp profile file
+- ac/rgp: set gfxip in elf_hdr.e_flags
+
+chenli (1):
+
+- mesa: update oudated members for debug and check
+
+cheyang (3):
+
+- frontend/dri: fix doesn't support RGBA ordering still expose RGBA in config
+- glsl: redeclare built-in variable with separate shader
+- virgl: add astc 2d compressed formats
diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt
deleted file mode 100644
index 680ae66df8a..00000000000
--- a/docs/relnotes/new_features.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-VK_KHR_workgroup_memory_explicit_layout on Intel, RADV
-DRM format modifiers for AMD.
-VK_KHR_zero_initialize_workgroup_memory on Intel, RADV
-Zink exposes GL 4.6 and ES 3.1
-GL_EXT_depth_bounds_test on softpipe, zink
-GL_EXT_texture_filter_minmax on nvc0 (gm200+)
-GL_ARB_texture_filter_minmax on nvc0 (gm200+)
-GL_ARB_post_depth_coverage on zink
-VK_KHR_copy_commands2 on lavapipe
-lavapipe exposes Vulkan 1.1
-VRS attachment on RADV