diff options
Diffstat (limited to 'docs/relnotes')
-rw-r--r-- | docs/relnotes/23.3.0.rst | 6334 | ||||
-rw-r--r-- | docs/relnotes/new_features.txt | 21 |
2 files changed, 6334 insertions, 21 deletions
diff --git a/docs/relnotes/23.3.0.rst b/docs/relnotes/23.3.0.rst new file mode 100644 index 00000000000..cca59fdae70 --- /dev/null +++ b/docs/relnotes/23.3.0.rst @@ -0,0 +1,6334 @@ +Mesa 23.3.0 Release Notes / 2023-11-29 +====================================== + +Mesa 23.3.0 is a new development release. People who are concerned +with stability and reliability should stick with a previous release or +wait for Mesa 23.3.1. + +Mesa 23.3.0 implements the OpenGL 4.6 API, but the version reported by +glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / +glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. +Some drivers don't support all the features required in OpenGL 4.6. OpenGL +4.6 is **only** available if requested at context creation. +Compatibility contexts may report a lower version depending on each driver. + +Mesa 23.3.0 implements the Vulkan 1.3 API, but the version reported by +the apiVersion property of the VkPhysicalDeviceProperties struct +depends on the particular driver being used. + +SHA256 checksum +--------------- + +:: + + TBD. + + +New drivers +----------- +- NVK: A Vulkan driver for Nvidia hardware + +New features +------------ +- VK_EXT_pipeline_robustness on ANV +- VK_KHR_maintenance5 on RADV +- OpenGL ES 3.1 on Asahi +- GL_ARB_compute_shader on Asahi +- GL_ARB_shader_atomic_counters on Asahi +- GL_ARB_shader_image_load_store on Asahi +- GL_ARB_shader_image_size on Asahi +- GL_ARB_shader_storage_buffer_object on Asahi +- GL_ARB_sample_shading on Asahi +- GL_OES_sample_variables on Asahi +- GL_OES_shader_multisample_interpolation on Asahi +- GL_OES_gpu_shader5 on Asahi +- EGL_ANDROID_blob_cache works when disk caching is disabled +- VK_KHR_cooperative_matrix on RADV/GFX11+ + + +Bug fixes +--------- + +- crash in si_update_tess_io_layout_state during _mesa_ReadPixels (radeonsi_dri, mesa 23.2.1) +- mesa: vertex attrib regression +- [RADV] War Thunder has some grass flickering. +- radv: satisfactory broken shader +- RADV problem with R7 M440 in some games +- gpu driver crashes when opening ingame map playing dead space 2023 +- [anv] Valheim water misrendering +- EGL/v3d: EGL applications under a X compositor doesn't work +- RADV: trunc_coord breaks ambient occlusion in Dirt Rally and other games +- radv: Mass Effect Legendary Edition: a line going across the screen is visible in some areas with Ambient Occlusion enabled +- anv: DIRT5 gfx11_generated_draws_spv_source triggers "assert(!copy_value_is_divergent(src) || copy_value_is_divergent(dest));" +- panfrost: gbm_bo_get_offset() wrongly returns 0 for second plane of NV12 buffers +- [RADV][TONGA] - BeamNG.drive (284160) - Artifacts are present when looking at the skybox. +- LEGO Star Wars: The Skywalker Saga graphical glitches (DXVK) on R9 380 +- [radv] Crypt not rendering properly +- Leaks of DescriptorSet debug names +- [Tracing flake] Missing geometry in trace\@freedreno-a630\@freedoom\@freedoom-phase2-gl-high.trace +- Unreal Engine 5.2 virtual shadow maps have glitchy/lazy tile updates +- RADV: Visual glitches in Unreal Engine 5.2.1 when using material with anisotropy and light channel 2 +- radv: Regression with UE5 test +- SIGSEGV with MESA_VK_TRACE=rgp and compute only queue +- [ANV] Corruptions in Battlefield 4 +- anv regression w/ commit e488773b29d97 ("anv: Fast clear depth/stencil surface in vkCmdClearAttachments") +- ir3: dEQP-GLES31.functional.synchronization.inter_invocation.image_atomic_read_write crash on a6xx gen4 +- Zink + Venus: driver can't handle INVALID<->LINEAR! +- Anv: Particles have black square artifacts on Counter Strike 2 on Skylake +- Lords of the Fallen 2023 Red Eye mode crashing game and desktop +- [radeonsi] [vulkan] [23.3-rc1 regression] Video output corrupted in QMplay2 with Vulkan renderer +- [BISECTED] ac/radeon commit somehow breaks nv12 surface from HEVC decode +- Parsec displays completely green screen with hardware decoder selected while using Mesa 23.3 and Mesa 24 +- H264 to H264 transcode output corruption with gst-vaapi +- opencl-jpeg-encoder does not work with nouveau/rusticl, works with nouveau/clover +- [R600] X-plane 11 demo (Linux Native) crashes upon launch on HD5870 and HD6970 +- Ubuntu 23.10 build error with rusticl_opencl_bindings.rs +- Rusticl fails to build +- ANV not handling VkMutableDescriptorTypeCreateInfoEXT::pMutableDescriptorTypeLists[i] being out of range +- tu: Wolfenstein: The New Order misrenders on a740 +- DRI_PRIME fails with ACO only radeonsi +- nir_to_tgsi: Incorrect handling of indirect array access +- ANV gen9 32 bit vulkan asserts on many cts tests +- GPU hang observed while launching 3DMark Wildlife Unlimited on MTL +- ac/gpu_info: Query maximum submitted IBs from the kernel +- RADV: regression in 23.2.1 causing GPU hang with RDNA1 in various UE5 games +- GPU page faults reported while playing Talos Principle 2 (demo) +- No CCS_E scanout on tgl+ with ANV +- anv: Modifier tests assert-fail on TGL+ +- ci: zink-tu jobs no longer included in manual pipelines +- [ANV][A770] GravityMark segfaults and buffer allocation errors +- etnaviv: gc2000 gles2 regression +- ci_run_n_monitor: pipeline finding unreliable +- nvk: Implement VK_EXT_dynamic_rendering_unused_attachments +- anv: jsl timeline semaphores flaky +- anv: OOB access in vkDestroyDevice? +- nvk: Implement VK_EXT_primitive_topology_list_restart +- nvk: Implement VK_EXT_image_sliced_view_of_3d +- nvk: Implement VK_KHR_workgroup_memory_explicit_layout +- util/macros: BITFIELD64_RANGE raises an error with mesa-clang if we try to set last bit +- r300/r400 regression; can't compile \`if/then` in shaders +- iris: gbm_bo_get_offset() wrongly returns 0 for second plane of NV12/P010 buffers +- nvk: Implement VK_EXT_depth_bias_control +- ICL/zink: gpu hang on 'piglit.object namespace pollution.framebuffer with gldrawpixels' +- [R600] Wolfenstein: The New Order text glitch on menu +- need extension to request image/texture not use data dependent compression +- rusticl: segfault in clCreateKernel on AMD Instinct MI100 +- !25587 broke xserver +- GPU Hang in Deep Rock Galactic on DG2 +- intel: Wrong length for 3DSTATE_3D_MODE on gfx125 +- [radeonsi] Wargame: Red Dragon /w OpenGL stopped working with ACO +- traces job reference images missing again sometimes +- Vulkan Texture/Polygon Glitches in Games +- freedreno: dmabuf modify query ignores format +- virgl: removing PIPE_CAP_CLEAR_TEXTURE completely breaks virglrenderer +- Turnip build error on termux +- failiure in amd llvm helper +- failiure in amd llvm helper +- radv_amdgpu_cs_submit: Assertion \`chunk_data[request->number_of_ibs - 1].ib_data.ip_type == request->ip_type' failed. +- hasvk: subgroups regression +- radeonsi: broken hardware decoding (vaapi/vulkan) on RDNA2 gpu (bisected) +- aco: SwizzleInvocationsMaskedAMD behavior is not correct for reads from inactive lanes +- anv: dEQP-VK.ssbo.phys.layout.random.16bit.scalar.13 slow +- [RDNA3] CS:GO - excessive power consumption and lower performance in Vulkan while MSAA is set to 4x or 8x +- [ICL] piglit.spec.arb_gl_spirv.execution.ssbo.unsized-array regression +- radv: Counter Strike 2 has multiple bugs while rendering smoke grenade effect +- Doom Eternal freezing on NAVI31 with current git +- iris CTS blend test fail with MSAA config on DG2 +- anv: 32bit mesa asserts +- RADV: Randomly dissapearing objects in Starfield with RX 5xx and Vega graphics +- anv: missing barrier handling on video engines +- radv: Star Wars The Old Republic hang when DCC is enabled +- radv: Resident Evil 6 hangs 7900XTX GPU when DCC is enabled if in Options go to Display settings +- radv: Resident Evil 6 Benchmark Tool hangs 7900 XTX GPU when DCC is enabled immediately after splash screen +- ANV: fp64 shader leaked +- v3d: noop drm-shim raises some warnings +- freedreno: crashdec/etc chip_id support +- intel: compute dispatches with variable workgroup size have ralloc_asprintf CPU overhead +- ci build issues with builtin types +- freedreno: running angle perf traces with GALLIUM_THREAD=0 crashes +- RadeonSI: glClear() causes clear texture for some frames on RX580 +- radeonsi: corruption when seeking video decoded with vaapi in mpv +- Zink/HasVK regression bisected to "gallium: move vertex stride to CSO" +- [radv] [Path Of Exile] - one setting in the workaround file breaks shadows/lighting rendering. Other workaround settings seems obsolete. +- radv: images don't always have extents in RGP +- shader_test causing a crash in compiler +- D3D12: Video decoding requirements are too restrictive. ID3D12VideoDevice3 should not be required. +- Crash in st_ReadPixels +- [regression] intel build issue on i386 +- [ANV] [DG2/A770] The Spirit and The Mouse, miscellaneous issues with Mesa Git +- zink on hasvk regression: Assertion \`(dyn)->vi_binding_strides[first_binding + i] == (strides[i])' failed. +- Penumbra: Overture hangs on new game loading screen +- [r300, RV516] Some deqp-gles2\@performance\@shader\@control_statement vertex tests cause hard lockup & reboot in mesa 22.3.1 (regression over 22.1.7) on a Radeon X1550 +- v3dv: Add a feature that implicitly copies the linear image to the tiled image prior to sampling from it +- radv: Regression from 266b2cfe5bf3feda16747c50c1638fb5a0426958 +- h264 encoding picture showed randomly repeated frames. +- Mesa CI: NAVI10 hangs when running VKCTS on Linux 6.1 +- zink: no uniform buffer objects support for v3dv? +- v3dv: Request for VkImageDrmFormatModifierExplicitCreateInfoEXT::pPlaneLayouts support +- [ANV] [DG2/A770] The Spirit and The Mouse, occasional flickering geometry +- [Google][Rex][anv] GLES dEQP test fails in anv when run via ANGLE-on-Venus on ChromeOS ARCVM. +- VAAPI on VCN: bad stream may crash whole gfx system +- Crash after GPU reset +- Bifrost PanVK should not be in CI +- [Intel][Vulkan][Gen12] vkCmdCopyImage() generates garbage data when the destination texture is bound to a piece of used device memory +- mesa: new glcts fails +- tu: GPL support is broken +- lavapipe: ycbcr regression +- aco: Assertion when compiling CP2077 shader +- anv: flakiness on tgl+ with samplemask handling +- [RADV] Dead by Daylight memory leak (shader-related?) on 23.1.6 +- r300: optionally convert MULs into output modifier for the following MUL or DOT instructions +- r300: better 1-x presubtract pattern matching +- gpu hang on DG2 when running KHR-GLES31.core.texture_cube_map_array.image_op_tess* +- KHR-GLES31.core.texture_cube_map_array.image_op_tessellation_evaluation_sh fail on GFX12+ +- wsi: deadlocks when DISPLAY is changed +- hasvk: Incompatible with minigbm/gralloc4 on Android +- VAAPI: AMDGPU crash on RX 6900 XT on corrupted video +- lavapipe/llvmpipe: shader unregister crash +- [ANV] [DG2/A380] Corruption in Borderlands 3 +- blorp regression on dg2 +- decouple -Dshader-cache= from EGL_ANDROID_blob_cache +- radv: commit 81641b01555faa4dd1dfc7de2513ad8d63e77ab7 leaded to artifacts in Quake II RTX +- [radv] Colors are distorted in Cyberpunk 2077 with ray tracing enabled +- Forza Horizon 5 stuttering since mesa 23.1.4 / 9b008673 revert as a FIX +- ubsan + gtest build fails +- glCopyTexSubImage2D is very slow on Intel +- NVE4 (GeForce 710) fails to get vdpau in mesa git +- [RADV] red and pink tinted shadows in Overwatch 2 on 7900 XTX +- nouveau prevents hardware acceleration with Chromium (Wayland) +- Corrupt text rendering in Blender +- DRI2 gallium frontend is using bad format type +- regression - MR 23089 - Hellblade RT crashing +- Incorrect vlVaCreateBuffer/vlVaMapBuffer behavior for buffer type VAEncCodedBufferType in Gallium +- Issue with clang-format +- Follow-up from "Draft: intel: Disable color fast-clears for blorp_copy" +- nightly VA-API build: new timeout +- r600: retire the SB optimizer +- ci: do not download perfetto on-fly in build jobs +- Shared Memory Leak With Qt OpenGL Applications +- OpenGL, SIGSEGV when program pipeline objects has separated vertex shader progam and separated fragment shader progam with in/out +- vaDeriveImage returns VA_STATUS_ERROR_OPERATION_FAILED +- 975a8ecc881873744d851ab0ef45ad7698eaa0ef "frontends/va: use resources instead of views" cause radeonsi can't play video. +- zink: reduce pipeline hash size +- Rusticl,radeonsi: ac_rtld error(2): too much LDS +- aco, radv Rage 2 menu corruption - bisected +- radv, aco: World War Z character texture regression on 7900xtx +- android: De-stage drm_gralloc support from mesa3d +- Cyberpunk screen goes black at game launch on integrated Gfx +- lavapipe/llvmpipe: regressions since descriptor rewrite +- intel: State cache invalidation after BLORP binding table setup ought to be unnecessary on ICL. +- ci: HW job logs have spam at the end +- kernel crash seen on AMD Raven device +- crocus: regression crashing in doubles/ubo tests +- turnip: object management CTS crashes +- a618: multiple assertions with different kernel config on u_vector_add +- [anv] Death Stranding crashes +- Can no longer build Clover without llvmspirvlib +- [radeonsi][vaapi] segfault in vl_video_buffer_sampler_view_components() when using vaapisink receiving I420 format +- Baldurs Gate 3 (DX11) - Graphical corruption on RDNA3 (ACO regression) +- [AMDGPU] Compiling large Blender Eevee shader node trees is unusably slow +- Building llvmpipe with LP_USE_TEXTURE_CACHE set fails since 23.2.0-rc1: error C2039: dynamic_state is not member of lp_build_sampler_soa in lp_tex_sample.c +- r300: calculate some cycles estimate for shader-db +- intel: Deathloop and other DX12 games fail assert(validated) with invalid SEL instruction +- GTF-GL46.gtf21.GL.build.CorrectFull_vert regressed on intel platforms +- error message when encoding via VAAPI AMD +- gpu hangs on dg2 with mesh shading enabled on vkcts +- radeonsi: Deadlock when creating a new GL context in parallel with linking a shader on another GL context +- robustness2 raygen tests intermittently fail in Intel Mesa CI +- ci/ci_run_n_monitor.py: KeyError: 'clang-format' +- glthread: huge performance regression +- DirectX games do not launch on Intel HD Graphics 4000 (IVB GT2) [bisected] +- rusticl: fails to build for iris + radeonsi + + +Changes +------- + +Adam Jackson (3): + +- egl: Implement EGL_EXT_explicit_device +- mesa: Implement and advertise GL_MESA_sampler_objects +- docs: Mention 'meson devenv' in the pre-install test instructions + +Aditya Swarup (6): + +- isl: enable Tile64 for 3D images +- intel/isl: Unittest for linear to Ytile conversion +- intel/isl: Convert linear texture to Tile4 format +- intel/isl: Convert Tile4 texture to linear format +- intel/isl: Linear to Tile-4 conversion unittest +- Revert "iris: Disable tiled memcpy for Tile4" + +Alba Mendez (1): + +- meson: support installation tags + +Alejandro Piñeiro (61): + +- v3dv: re-enable sync_fd import/export on the simulator +- broadcom(cle,clif,common,simulator): add 7.1 version on the list of versions to build +- broadcom/cle: update the packet definitions for new generation v71 +- broadcom/common: add some common v71 helpers +- broadcom/qpu: add comments on waddr not used on V3D 7.x +- broadcom/qpu: set V3D 7.x names for some waddr aliasing +- broadcom/compiler: rename small_imm to small_imm_b +- broadcom/compiler: add small_imm a/c/d on v3d_qpu_sig +- broadcom/qpu: add v71 signal map +- broadcom/qpu: define v3d_qpu_input, use on v3d_qpu_alu_instr +- broadcom/qpu: add raddr on v3d_qpu_input +- broadcom/qpu: defining shift/mask for raddr_c/d +- broadcom/commmon: add has_accumulators field on v3d_device_info +- broadcom/qpu: add qpu_writes_rf0_implicitly helper +- broadcom/qpu: add pack/unpack support for v71 +- broadcom/compiler: phys index depends on hw version +- broadcom/compiler: don't favor/select accum registers for hw not supporting it +- broadcom/vir: implement is_no_op_mov for v71 +- broadcom/compiler: update vir_to_qpu::set_src for v71 +- broadcom/qpu_schedule: add process_raddr_deps +- broadcom/qpu: update disasm_raddr for v71 +- broadcom/qpu: return false on qpu_writes_accumulatorXX helpers for v71 +- broadcom/compiler: add support for varyings on nir to vir generation for v71 +- broadcom/compiler: payload_w is loaded on rf3 for v71 +- broadcom/qpu_schedule: update write deps for v71 +- broadcom/compiler: update register classes to not include accumulators on v71 +- broadcom/qpu: implement switch rules for fmin/fmax fadd/faddnf for v71 +- broadcom/compiler: update one TMUWT restriction for v71 +- broadcom/compiler: update ldunif/ldvary comment for v71 +- broadcom/compiler: update payload registers handling when computing live intervals +- broadcom/qpu: new packing/conversion v71 instructions +- v3dv/meson: add v71 hw generation +- v3dv: emit TILE_BINNING_MODE_CFG and TILE_RENDERING_MODE_CFG_COMMON for v71 +- v3dv/cmd_buffer: emit TILE_RENDERING_MODE_CFG_RENDER_TARGET_PART1 for v71 +- v3dvx/cmd_buffer: emit CLEAR_RENDER_TARGETS for v71 +- v3dv/cmd_buffer: emit CLIPPER_XY_SCALING for v71 +- v3dv/uniforms: update VIEWPORT_X/Y_SCALE uniforms for v71 +- v3dv/cmd_buffer: just don't fill up early-z fields for CFG_BITS for v71 +- v3dv: default vertex attribute values are gen dependant +- v3dv/pipeline: default vertex attributes values are not needed for v71 +- v3dv/pipeline: handle GL_SHADER_STATE_RECORD changed size on v71 +- v3dv: no specific separate_segments flag for V3D 7.1 +- v3dv: add support for TFU jobs in v71 +- v3d: add v71 hw generation +- v3d: emit TILE_BINNING_MODE_CFG and TILE_RENDERING_MODE_CFG_COMMON for v71 +- v3d: TILE_RENDERING_MODE_CFG_RENDER_TARGET_PART1 +- v3d: emit CLEAR_RENDER_TARGETS for v71 +- v3d: just don't fill up early-z fields for CFG_BITS for v71 +- v3d: emit CLIPPER_XY_SCALING for v71 +- v3d: no specific separate_segments flag for V3D 7.1 +- v3d: default vertex attributes values are not needed for v71 +- v3d/uniforms: update VIEWPORT_X/Y_SCALE uniforms for v71 +- v3d: handle new texture state transfer functions in v71 +- v3d: handle new TEXTURE_SHADER_STATE v71 YCbCr fields +- v3d: setup render pass color clears for any format bpp in v71 +- v3d: GFX-1461 does not affect V3D 7.x +- v3d: don't convert floating point border colors in v71 +- v3d: handle Z clipping in v71 +- v3d: add support for TFU blit in v71 +- v3dv: implement depthBounds support for v71 +- doc/features: update after last v3d changes + +Alex Denes (1): + +- virgl: link VA driver with build-id + +Alexander Orzechowski (1): + +- radeonsi: Set PIPE_CONTEXT_LOSE_CONTEXT_ON_RESET for auxiliary contexts + +Alyssa Rosenzweig (431): + +- zink: Switch to register intrinsics +- gallium/trace: Collect enums from multiple files +- gallium,util: Move blend enums to util/ +- gallium,util: Move util_blend_dst_alpha_to_one +- util/blend: Add helpers for normalizing inverts +- vulkan: Add helpers for blend enum translation +- lvp: Use common blend/logicop translation +- nir/lower_blend: Use util enums +- panfrost: Convert to PIPE_BLEND enums internally +- gallium: Remove pipe->compiler BLEND enum translation +- compiler: Remove blend enums duplicating util +- nir/legacy: Fix fneg(load_reg) case +- nir/legacy: Fix handling of fsat(fabs) +- ntt: Switch to new-style registers and modifiers +- ir3: Convert to register intrinsics +- nir: Add fence_{pbe,mem}_to_tex(_pixel)_agx intrinsics +- nir: Devendor load_sample_mask +- nir: Promote tess_coord_r600 to tess_coord_xy +- nir: Add nir_lower_tess_coord_z pass +- r600: Use nir_lower_tess_coord_xy +- ir3: Use nir_lower_tess_coord_z +- nir: Initialize workgroup_size in builder_init_simple_shader +- v3dv: Rely on nir_builder setting workgroup size +- radv: Rely on workgroup_size initialization +- panfrost: Fix transform feedback on v9 +- r600/sfn: Remove nir_register unit tests +- panfrost: Lower vertex_id for XFB +- panfrost: Fix transform feedback on v9 harder +- asahi: Augment fake drm_asahi_params_global +- asahi: Use nir_builder_at more +- asahi: Remove unused #define +- asahi: Refactor PBE upload routine +- asahi: Extract shader_initialize helper +- asahi: Serialize NIR in memory +- asahi: Identify background/EOT counts +- asahi,agx: Set coherency bit for clustered targets +- ail: Page-align layers for writable images +- asahi: Mark writeable images as such +- asahi: Reallocate to set the writeable image flag +- asahi: Add agx_batch_track_image helper +- asahi: Add texture/image indexing lowering pass +- asahi: Upload at most the max texture state registers +- asahi: Upload image descriptors +- asahi: Make clear the non-sRGBness of EOT images +- asahi: Don't restrict sampler views +- asahi: Forbid 2D Linear with images +- agx: Add try_coalesce_with helper +- agx: Try to allocate phis compatibly with sources +- agx: Try to allocate phi sources with phis +- agx: Try to allocate phi sources with loop phis +- agx: Vectorize 16-bit parallel copies +- agx: Reduce un/packs with mem access lowering +- agx: Fix bogus assert +- asahi: Augment PBE descriptor for software access +- asahi: Extend PBE packing for image support +- asahi: Use nir_lower_robust_access +- agx: Legalize image LODs to be 16-bit +- agx: Lower image size to txs +- agx: Generalize texture/PBE packing +- agx: Add image write instruction +- agx: Model texture bindless base +- agx: Handle bindless properly for txs lowering +- agx: Pack bindless textures +- agx: Translate texture bindless handles +- agx: Translate image_store from NIR +- agx: Handle frag side effects without render targets +- agx: Wait for outstanding stores before barriers +- agx: Implement image barriers +- agx: Handle early_fragment_tests +- agx: Add interleave opcode +- agx: Extract coords_for_buffer_texture helper +- agx: Extract texture_descriptor_ptr_for_* helpers +- agx: Lower image atomics +- agx: Lower buffer images +- asahi,agx: Fix txf sampler +- agx: Add image_load opcode +- agx: Extract texture write mask handling +- agx: Implement image_load +- agx: Emit global memory barriers for images +- agx: Don't emit silly barriers +- agx: Implement fence_*_to_tex_agx intrinsics +- agx: Add simple image fencing pass +- agx: Require tag writes with side effects +- agx: Plumb in coverage mask +- asahi: Extract sampler_view_for_surface +- asahi: Introduce concept of spilled render targets +- asahi: Add agx_tilebuffer_spills query +- asahi: Do not support masking with spilled RTs +- asahi: Ignore spilled render targets in EOT shaders +- asahi: Ignore spilled render targets with partial renders +- asahi: Extract some tilebuffer lowering code +- asahi: Lower tilebuffer access for spilled RTs +- asahi: Lower multisample image stores +- asahi: Permit meta shaders to use preambles +- asahi: Ignore spilled render targets for background load +- asahi: Offset clear colour uniform by 4 +- asahi: Execute preambles for background programs +- asahi: Advertise Z16_UNORM +- ir2: Switch to nir_legacy +- intel/fs: Don't read reg.base_offset +- panfrost: Remove unused helpers +- nir: Remove nir_lower_locals_to_regs +- nir: Rename lower_locals_to_reg_intrinsics back +- nir: Remove register arrays +- asahi: Don't depend on glibc to decode +- pan/bi: Remove leftover include +- nir/trivialize: Handle more RaW hazards +- panfrost: Disable blending for no-op logic ops +- nir/lower_blend: Fix 32-bit logicops +- nir/lower_blend: Optimize out PIPE_LOGICOP_NOOP +- clang-format: Ignore original panfrost commit +- nir/schedule: Assume no old-style registers +- gallium/u_simple_shaders: Optimize out ffloors +- gallium/u_transfer_helper: Remove dead forward decl +- nir/loop_analyze: Drop unused inverse_comparison +- nir/passthrough_gs: Drop unused array_size_for_prim +- panfrost: Add missing static inline annotation +- pan/decode: Drop unused debug function +- pan/mdg: Add missing static inline annotation +- panfrost: Drop unused decode_position for samples +- panfrost: Only define pan_blitter_get_blend_shaders for midgard +- panfrost: Add missing inline +- panfrost: Gate overdraw_alpha on Bifrost+ +- nir: Rename scoped_barrier -> barrier +- nir: Remove lower_to_source_mods +- nir: Remove lower_vec_to_movs +- nir: Remove reg_intrinsics parameter to convert_from_ssa +- nir: Remove register load/store builders +- r600/sfn: Stop referencing legacy functionality +- r600/sfn: Ignore instruction write masks +- nouveau/codegen: Drop writemask check +- vc4,broadcom/compiler: Drop write_mask handling +- zink: Collapse is_ssa check +- nir: Add {...} before case +- nir/from_ssa: Drop legacy reg support +- nir/schedule: Drop nir_schedule_dest_pressure +- nir: Drop NIR reg create/destroy +- nir: Remove nir_index_local_regs and callers +- nir/schedule: Drop more nir_register handling +- nir: Remove nir_foreach_register +- nir: remove nir_{src,dest}_for_reg +- ntt: Drop nir_register reference +- nir/print: Assume SSA +- nir/clone: Assume SSA +- nir/serialize: Drop legacy NIR +- nir/validate: Assume SSA +- nir: Remove impl->{registers,reg_alloc} +- nir: Remove nir_alu_dest::saturate +- treewide: Drop is_ssa asserts +- nir: Collapse some SSA checks +- treewide: Remove more is_ssa asserts +- nir: Remove reg-only dest manipulation +- nir: Remove stale todo +- nir/print: Drop legacy NIR +- nir: Drop nir_alu_src::{negate,abs} +- treewide: sed out more is_ssa +- pan/mdg: Assume SSA +- treewide: Drop some is_ssa if's +- nir: Drop trivial reg handling +- aco: Remove is_ssa check +- intel: Collapse is_ssa checks +- llvmpipe: Assume SSA +- ir3: Collapse is_ssa checks +- lima: Collapse is_ssa checks +- radeonsi: Collapse SSA check +- nir/gather_ssa_types: Collapse SSA checks +- nir/worklist: Assume SSA +- nir/range_analysis: Assume SSA +- treewide: Collapse more SSA checks +- nir/instr_set: Assume SSA +- nir: Collapse more SSA checks +- nir: Remove def_is_register +- nir: Do not init dests +- nir: Initialize source as a NULL SSA def +- nir: Collapse more SSA checks +- nir: Remove nir_{src,dest}::is_ssa +- nir: Drop nir_register +- nir/from_ssa: Remove pointless union +- ir3: Drop write_mask handling +- rogue: Stop reading write masks +- etnaviv: Don't use alu->dest.write_mask +- etnaviv: What if we just didn't have a compiler? +- intel/vec4: Don't use legacy write mask +- ntt: Evaluate write_mask check +- nir: Remove nir_alu_dest::write_mask +- nir: Remove nir_foreach_def +- lima: Clean up after deleting asserts +- nir: Remove no-op remove_def_cb +- nir: Drop no-op all_srcs_are_ssa +- nir: Simplify alu_instr_is_copy +- nir: Add load_coefficients_agx intrinsic +- agx: Implement nir_intrinsic_load_coefficients_agx +- agx: Allow more varying slots +- agx: Set lower_fisnormal +- agx: Forcibly vectorize pointcoord coeffs +- agx: Add interpolateAtOffset lowering pass +- agx: Lower flat shading in NIR +- asahi: Stub num_dies +- asahi: Move a bunch of helpers to common +- agx: Lower 8-bit ALU +- agx: Handle 8-bit vecs +- asahi,agx: Respect no16 even for I/O +- agx: Don't lower load_local_invocation_index +- agx/dce: Use the helper +- agx: Fix atomics with no destination +- agx: Fix shader info with sample mask writes +- agx: Do not move bindless handles +- agx: Put else instructions in the right block +- agx: Use unconditional else instruction +- agx: Optimize out pointless else instructions +- agx: Fix length bit confusion +- agx: Require an immediate for \`nest` +- agx: Use compressed fadd/fmul encodings +- agx: Optimize swaps of 2x16 channels +- agx: Optimize logical_end removal +- agx: Fix AGX_MESA_DEBUG=demand +- agx: Maintain ctx->max_reg while assigning regs +- agx: Allow 64-bit memory regs +- agx: Fix accounting for phis +- agx: Set phi sources in predecessors +- agx: Stop setting registers after the shader +- agx: Use agx_replace_src +- agx: Assert invariant stated in the comment +- agx: Don't use ssa_to_reg across blocks +- agx: Don't reuse ssa_to_reg across blocks +- agx: Remove unused allocation +- agx: Stop setting forwarding bit +- agx: Handle blocks with no predecessors +- agx: Lower f2u8/f2i8 +- agx: Handle conversions to 8-bit +- agx: Fix uadd_sat packing +- agx: Fix 64-bit immediate moves +- agx: Lower f2f16_rtz +- agx: Handle f2f16_rtne like f2f16 +- agx: Handle <32-bit local memory access +- agx: Do not allow creating vec8 +- asahi: Legalize compression before blitting +- nir: Drop "SSA" from NIR language +- agx: Stop passing nir_dest around +- agx: Remove agx_nir_ssa_index +- pan/mdg: Don't reference nir_dest +- pan/bi: Don't reference nir_dest +- asahi: Do not reference nir_dest +- panfrost: Do not reference nir_dest +- zink: Do not reference nir_dest +- ir3: Do not reference nir_dest +- dxil: Do not reference nir_dest +- nir: Drop nir_dest_init +- panfrost: Pack stride at CSO create time on v9 +- lvp,nir/lower_input_attachments: Use nir_trim_vector +- broadcom/compiler: Use nir_trim_vector explicitly +- nir: Assert that nir_ssa_for_src components matches +- nir: Add nir_shader_intrinsics_pass +- nir: Lower fquantize2f16 +- agx: Lower fquantize2f16 +- nir/lower_helper_writes: Consider bindless images +- nir/passthrough_gs: Correctly set vertices_in +- nir/passthrough_gs: Fix array size +- nir/print: Print access qualifiers for intrinsics +- nir/lower_gs_intrinsics: Remove end primitive for points +- panfrost/ci: Disable T720 +- nir: Add load_sysval_agx intrinsic +- agx: Fix extraneous bits with b2b32 +- agx: Use more barriers +- asahi: Copy CSO stride +- agx: Assert vertex_id, instance_id are VS-only +- asahi: Keep drawoverhead from OOMing itself +- agx: Don't blow up when lowering textures twice +- agx/lower_vbo: Handle nonzero component +- agx: Allow loop headers without later preds +- agx: Handle b2i8 +- agx: Convert 8-bit comparisons +- agx: Implement imul_high +- asahi: Advertise OpenGL ES 3.1! +- asahi/decode: Turn assert into error +- asahi: Report local_size from compiler +- asahi: Use local_size from compiler directly +- asahi: Pass layer stride in pixels, not elements +- agx: Clear sample count after lowering MSAA +- agx: Clear image_array after lowering +- asahi: Preserve atomic ops when rewriting image to bindless +- agx: Use 16-bit reg for pixel_coord +- asahi: Generalize query logic +- asahi: Simplify occlusion query batch tracking +- asahi: Refactor agx_get_query_result +- asahi: Only touch batch->occlusion_queries for occlusion +- asahi: Sync when beginning a query +- asahi: Add non-occlusion query tracking +- asahi: Add get_query_address helper +- agx/fence_images: Use intrinsics_pass +- agx: Do not fence write-only images +- asahi: Add missing LOD source for agx_meta's txfs +- agx: Do some texture lowering early +- agx: Add helper returning if a descriptor crawl is needed +- nir,asahi: Remove texture_base_agx +- asahi: Move UBO lowering into GL driver +- asahi: Add sysval tables for each shader stage +- asahi: Split out per-stage sysvals +- asahi: Collapse grid_info +- asahi: Extract agx_upload_textures +- asahi: Upload a single draw_uniforms per draw +- asahi: Add real per-stage dirty flags +- asahi: Extract sampler upload +- asahi: Put unuploaded uniforms on the batch +- asahi: Decouple sysval lowering from uniform assignment +- asahi: Use finer dirty tracking for blend constant +- asahi: Use proper dirty tracking for VBOs +- asahi: Dirty track VBOs + blend const separately +- asahi: Dirty the shader stage when the shader changes +- asahi: Fix shader stage dirtying +- treewide: Use nir_shader_intrinsic_pass sometimes +- treewide: Also handle struct nir_builder form +- nir/lower_shader_calls: Fix warning with clang +- nir: Add nir_before/after_impl cursors +- treewide: Use nir_before/after_impl in easy cases +- treewide: Use nir_before/after_impl for more elaborate cases +- radv: Use before/after_cf_list for entrypoints +- ci: Disable known broken Bifrost Vulkan job +- ci: Disable WHL jobs +- nir/opt_if: Simplify if's with general conditions +- asahi: Fixes for clang-warnings +- agx: Fix jmp_exec_none encoding +- agx/validate: Print to stderr +- agx: Annotate opcodes with a scheduling class +- agx: Add schedule-specialized get_sr variants +- agx: Include schedule class in the opcode info +- agx: Schedule for register pressure +- agx: Lower pack_32_4x8_split +- asahi: Force translucency for ignored render targets +- agx: Remove logical_end instructions +- agx: Lower pseudo-ops later +- agx: Expand nest +- agx: Lower nest later +- agx: Split nest instruction into begin_cf + break +- agx: Add break_if_*cmp instructions +- agx: Add agx_first/last_instr helpers +- agx: Use agx_first_instr +- agx: Detect conditional breaks +- agx: Omit push_exec at top level +- agx: Omit while_icmp without continue +- agx: Add helper to determine if a NIR loop uses continue +- agx: Only use nest by 1 for loops w/o continue +- agx: Add pseudo-instructions for icmp/fcmp +- agx: Generate unfused comparison pseudo ops +- agx: Fuse conditions into if's +- agx: Fuse compares into selects +- agx: Add unit test for if_cmp fusing +- agx: Add unit test for cmp+sel fusing +- asahi: Translate cube array dimension +- ail: Force page-alignment for layered attachments +- agx: Handle cube arrays when clamping arrays +- agx: Lower coordinates for cube map array images +- agx: Run opt_idiv_const after lowering texture +- asahi: Forbid linear 1D Array images +- asahi: Handle linear 1D Arrays +- asahi: Conditionally expose cube arrays +- gallium,mesa/st: Add PIPE_CONTEXT_NO_LOD_BIAS flag +- asahi: Skip LOD bias lowering for GLES +- nir: Add nir_function_instructions_pass helper +- nir: Add NIR_OP_IS_DERIVATIVE property +- nir: Hoist nir_op_is_derivative +- nir/opt_preamble: Use nir_op_is_derivative +- nir/opt_gcm: Use nir_op_is_derivative more +- nir/gather_info: Use nir_op_is_derivative +- nir/opt_sink: Sink load_constant_agx +- nir/opt_sink: Sink load_local_pixel_agx +- nir/opt_sink: Sink frag coord instructions +- nir/opt_sink: Do not move derivatives +- nir/opt_sink: Move ALU with constant sources +- nir/opt_sink: Also consider load_preamble as const +- agx: Enable sinking ALU +- treewide: Drop nir_ssa_for_src users +- treewide: Remove remaining nir_ssa_for_src +- nir: Remove nir_ssa_for_src +- asahi: Clamp index buffer extent to what's read +- agx: Align the reg file for 256-bit vectors +- agx: Hoist sample_mask/zs_emit +- agx: Set PIPE_SHADER_CAP_CONT_SUPPORTED +- agx: Augment if/else/while_cmp with a target +- agx: Add jumps to block ends +- agx: Add agx_prev_block helper +- agx: Insert jmp_exec_none instructions +- nir: Add layer_id_written_agx sysval +- nir: Support arrays in block_image_store_agx +- agx/nir_lower_texture: Allow disabling layer clamping +- agx: Pack block image store dim correctly +- agx: Handle layered block image stores +- agx: Add pass to lower layer ID writes +- asahi: Add helper to get layer id in internal program +- asahi,agx: Select layered rendering outputs +- agx: Support packed layered rendering writes +- agx/tilebuffer: Support layered layouts +- agx/lower_tilebuffer: Support spilled layered RTs +- asahi: Use layered layouts +- asahi: Expose VS_LAYER_VIEWPORT behind a flag +- asahi: Account for layering for attachment views +- asahi: Assume LAYER is flat-shaded +- asahi: Add pass to predicate layer ID reads +- asahi: Predicate layer ID reads +- asahi: Write to cubes/etc attachments as 2D array +- asahi: Use a 2D Array texture for array render targets +- asahi: Generate layered EOT programs +- asahi: Handle layered background programs +- lima/pp: Do not use union undefined behaviour +- nir: Add trivial nir_src_* getters +- nir: Use set_parent_instr internally +- nir: Use getters for nir_src::parent_* +- nir: Assert the nir_src union is used safely +- nir: Use a tagged pointer for nir_src parents +- nir: Add ACCESS_CAN_SPECULATE +- ir3: Set CAN_SPECULATE before opt_preamble +- ir3: Model cost of phi nodes for opt_preamble +- nir/opt_preamble: Walk cf_list manually +- nir/opt_preamble: Preserve IR when replacing phis +- nir/opt_preamble: Unify foreach_use logic +- nir/opt_preamble: Move phis for movable if's +- nir/opt_preamble: Respect ACCESS_CAN_SPECULATE +- freedreno/ci: Minetest +- r600/sfn: Handle load_global_constant +- nir/opt_phi_precision: Work with libraries +- nir/legalize_16bit_sampler_srcs: Use instr_pass +- nir/print: Handle KERNEL +- nir/lower_io: Use load_global_constant for OpenCL +- nir/opt_algebraic: Reduce int64 +- nir/opt_algebraic: Optimize LLVM booleans +- nir/trivialize_registers: Handle obscure load hazard +- hasvk: Support builiding on non-Intel +- crocus: Support building on non-Intel +- meson: Add vulkan-drivers=all option +- meson: Add gallium-drivers=all option +- agx: Fix fragment side effects scheduling + +Amber (7): + +- ir3: make wave_granularity configurable +- turnip: Add support for devices not supporting double thread size. +- turnip: make sampler_minmax support configurable. +- freedreno, turnip: set correct reg_size_vec4 for a6xx_gen1_low +- ir3: handle non-uniform case for atomic image/ssbo intrinsics +- freedreno: Add support for devices not supporting double thread size. +- turnip: Add debug option to allow non-conforming features. + +Andrew Randrianasulu (1): + +- nv50/ir: Remove few nvc0 specific defines from nv50-specific header. + +Antonio Gomes (9): + +- rusticl/kernel: Removing unnecessary clone in kernel launch +- rusticl/kernel: Add CsoWrapper +- rusticl/compiler: Add NirPrintfInfo +- rusticl: Move Cso to Program +- rusticl/compiler: Remove unnecessary functions +- rusticl: Move NirKernelBuild to ProgramDevBuild +- rusticl/program: New helper functions to NirKernelBuild +- rusticl/core: Delete KernelDevState and KernelDevStateInner +- rusticl/core: Make convert_spirv_to_nir output pair (KernelInfo, NirShader) + +Asahi Lina (29): + +- docs/tgsi: Specify that depth texture fetches are replicated +- asahi: Add synctvb debug flag +- asahi: Add smalltile debug option +- asahi: Add nomsaa debug flag +- asahi: decode: Add a params argument to pass through +- asahi: Add extra CDM header block for G14X +- asahi: wrap: Handle freeing shmems +- asahi: decode: Refactor to always copy GPU mem to local buffers +- asahi: decode: Add a function to construct decode_params from a chip_id +- asahi: Add a shared library interface for decode +- asahi: Add a noshadow debug flag +- asahi: Do not overallocate BOs by more than 2x +- asahi: Fix race in BO stats accounting +- asahi: Always use resource size, not BO size +- asahi: Print info about shadowed resources +- asahi: Impose limits on resource shadowing +- asahi: Force linear for SHARED buffers with no/implicit modifier +- asahi: Enable explicit coherency for G14D (multi-die) +- asahi: Handle non-written RTs correctly +- asahi: Fix incorrect BO bitmap reallocations +- asahi: Allocate staging resources as staging +- asahi: cmdbuf: Identify call/ret bits +- asahi: decode: Implement VDM call/ret +- asahi: decode: Do not assert on buffer overruns +- asahi: Fix VDM pipeline field width +- asahi: Add scaffolding for supporting driconf options +- asahi: Add and support the no_fp16 driconf flag +- driconf: Disable fp16 for browsers +- asahi: Allow no16 flag for disk cache + +Bas Nieuwenhuizen (16): + +- aco: fix nir_op_vec8/16 with 16-bit elements. +- aco: Fix some constant patterns in 16-bit vec4 construction with s_pack. +- nir: Fix 16-component nir_replicate. +- radv: Expose VK_EXT_external_memory_acquire_unmodified. +- util/perf: Add gpuvis integration. +- egl,venus,vulkan,turnip,freedreno: Update CPU trace init to init more than perfetto. +- vulkan: Add CPU tracing for vkWaitForFences. +- docs: Add documentation for gpuvis. +- vulkan: Add trace points for more Vulkan waiting functions. +- radv: Use a double jump to limit nops in DGC for dynamic sequence count. +- nir: Add AMD cooperative matrix intrinsics. +- aco: Add WMMA instructions. +- aco: Make RA understand WMMA instructions. +- radv: Don't transparently use wave32 with cooperative matrices. +- radv: Add cooperative matrix lowering. +- radv: Expose VK_KHR_cooperative_matrix. + +Benjamin Cheng (10): + +- radv/video: use app provided hevc scaling list order +- radv/video: copy from correct H264 scaling lists +- anv/video: copy from correct H264 scaling lists +- vulkan/video: add helper to derive H264 scaling lists +- radv/video: use vk_video_derive_h264_scaling_list +- anv/video: use vk_video_derive_h264_scaling_list +- util/vl: extract gallium vl scanning data to shared code +- radv/video: send h264 scaling list in raster order +- anv/video: send h264 scaling list in raster order +- radv/video: find SPS with pps_seq_parameter_set_id + +Benjamin Lee (1): + +- nvk: Fix segfault when opening DRI device file returns error + +Biswapriyo Nath (1): + +- radv/video: Match function definitions to declarations + +Boris Brezillon (1): + +- panfrost: Flag the right shader when updating images + +Boyuan Zhang (3): + +- virgl: Add vp9 picture desc +- virgl: Implement vp9 hardware decode +- radeonsi/vcn: disable tmz ctx buffer for VCN_2_2_0 + +Caio Oliveira (134): + +- nir: Use instructions_pass() for nir_fixup_deref_modes() +- meson: Ensure that LLVMSPIRVLib is not required for Clover +- nir: Let nir_fixup_deref_modes() fix deref_casts when possible +- nir: Add nir_opt_reuse_constants() +- radv: Use nir_opt_reuse_constants() +- compiler/types: Use ralloc for the key in array_types +- compiler/types: Use smaller keys for array_types table +- compiler/types: Extract get_explicit_matrix_instance() function +- compiler/types: Use smaller keys for explicit_matrix_types table +- anv/tests: Refactor state_pool_test_helper to not use macros for parametrization +- anv/tests: Link a single anv_tests binary using gtest +- anv/tests: Propagate failures to gtest +- hasvk/tests: Refactor state_pool_test_helper to not use macros for parametrization +- hasvk/tests: Link a single hasvk_tests binary using gtest +- hasvk/tests: Propagate failures to gtest +- util: Add convenience macros for linear allocator +- compiler/types: Use right hash for function types +- compiler/types: Don't duplicate empty string +- compiler/types: Constify a couple of pointers in glsl_type +- compiler/types: Remove unused GLSL_TYPE_FUNCTION and related functions +- compiler/types: Move GLSL specific builtin structs into glsl/ +- glsl: Add missing glsl_types initialization to test_optpass +- glsl: Don't create struct type builtins +- compiler/types: Add extra level of macro to builtin_macros +- compiler/types: Use designated initializer syntax to specify builtins +- compiler/types: Move local cache details to implementation file +- compiler/types: Add a mem_ctx for the glsl_type_cache +- compiler/types: Use type cache mem_ctx for hash tables +- compiler/types: Don't store a mem_ctx per type +- compiler/types: Simplify clearing the glsl_type_cache +- compiler/types: Move static asserts about glsl_type to a central place +- compiler/types: Store builtin types directly as data +- compiler/types: Use a linear (arena) allocator for glsl_types +- compiler/types: Make struct glsl_type visible to C code +- compiler/types: Add workaround to use builtin_type_macros.h in C +- compiler/types: Move builtin type initialization to C +- glsl: Annotate _mesa_glsl_error() with PRINTFLIKE +- compiler/types: Fix array name dimension flipping for unsized arrays +- compiler/types: Use Python to generate code for builtin types +- compiler/types: Use glsl_get_type_name() to access the type name +- compiler/types: Change glsl_type::name to be an uintptr_t +- compiler/types: Use a string table for builtin type names +- intel/compiler/xe2: Account for reg_unit() in TCS intrinsics +- intel/compiler/xe2: Account for reg_unit() in TES intrinsics +- intel/fs/xe2+: Update BS payload setup for Xe2 reg size. +- intel/fs/xe2+: Update TASK/MESH payload setup for Xe2 reg size. +- compiler: Use a meson dependency for libcompiler +- meson: Remove unnecessary inc_compiler mentions +- rusticl: Ensure NIR generated headers will be available +- clover: Hide SPIR-V related code behind HAVE_CLOVER_SPIRV +- clover: Only compile/depend libclspirv and libclnir when using SPIR-V support +- compiler: Only enable mesaclc helper if we have OpenCL SPIR-V support +- intel/compiler: Don't allocate memory for SIMD select error handling +- microsoft/compiler: Fix printf formatting string issues +- util: Add more PRINTFLIKE and MALLOCLIKE annotations +- util: Remove ralloc_parent from linear_header +- util: Use linear parent to (r)allocated extra nodes +- util: Remove size from linear_parent creation +- util: Make DECLARE_LINEAR_ALLOC_* macros assume no destructors +- util: Use an opaque type for linear context +- util: Remove usages of linear_realloc() +- util: Remove linear_realloc() +- util: Remove size information from child allocations +- util: Remove per-buffer header in linear alloc for release mode +- util: Add a few basic tests for linear_alloc +- util: Fix bookkeeping of linear node sizes +- intel/compiler: Don't store stage name and abbrev +- intel/compiler/xe2: URB fence uses LSC now +- intel/compiler/xe2: Fix URB writes in TCS +- intel/compiler/xe2: Update TCS ICP handle code to support SIMD16 +- compiler/types: Add support for Cooperative Matrix types +- nir: Add new intrinsics for Cooperative Matrix +- nir: Handle cooperative matrix in various passes +- spirv: Expose some memory related functions in vtn_private.h +- spirv: Let vtn_ssa_value hold references to variables +- spirv: Implement SPV_KHR_cooperative_matrix +- compiler/types: Remove private related declarations +- compiler/types: Remove use of new/delete +- compiler/types: Remove use of references +- compiler/types: Remove use of auto +- compiler/types: Use C compatible cast syntax +- compiler/types: Spell struct and enum in type names +- compiler/types: Add void parameter to ensure these are valid C prototypes +- intel/fs: Tweak default case of fs_inst::size_read() +- compiler/types: Move the C++ inline functions in glsl_type out of the struct body +- compiler/types: Move C declarations into glsl_types.h +- compiler/types: Flip wrapping of base_type checks +- compiler/types: Flip wrapping of various type identification checks +- compiler/types: Flip wrapping of convenience accessors for vector types +- compiler/types: Flip wrapping of basic "get type" functions +- rusticl: Add Rust bindings for inline glsl_types functions +- util: Add size to ralloc_header in debug mode +- util: Add a canary to identify gc_ctx in debug mode +- util: Add function print information about a ralloc tree +- util: Avoid waste space when linear alloc'ing large sizes +- spirv: Expose stage enum conversion in vtn_private.h +- spirv: Change spirv2nir to use the shorter shader name abbreviations +- spirv: List entry-points in spirv2nir when unsure what to use +- spirv: Let spirv2nir find out the shader to use +- intel/compiler: Don't emit calls to validate() in release build +- compiler/types: Flip wrapping of "type contains?" predicate functions +- compiler/types: Flip wrapping of array related functions +- compiler/types: Flip wrapping of cmat related functions +- compiler/types: Flip wrapping of CL related functions +- compiler/types: Flip wrapping of size related functions +- compiler/types: Flip wrapping of struct related functions +- compiler/types: Flip wrapping of interface related functions +- compiler/types: Flip wrapping of layout related functions +- compiler/types: Flip wrapping of record_compare +- compiler/types: Flip wrapping of get_instance() +- compiler/types: Flip wrapping of texture/sampler/image get instance functions +- compiler/types: Flip wrapping of various get instance functions +- compiler/types: Flip wrapping of get row/column type helpers +- compiler/types: Flip wrapping of remaining non-trivial type getters +- compiler/types: Flip wrapping of remaining small data getters +- compiler/types: Flip wrapping of numeric type conversion functions +- compiler/types: Move remaining code from nir_types to glsl_types +- rusticl: Add bindings for glsl_vector_type() +- compiler/types: Add more glsl_contains_*() functions and use them in C++ +- compiler/types: Add glsl_get_mul_type() and use it in C++ +- compiler/types: Add glsl_type_compare_no_precision() and use it in C++ +- compiler/types: Add glsl_type_uniform_locations() and use it in C++ +- compiler/types: Add glsl_get_std430_array_stride() and use it in C++ +- compiler/types: Add glsl_get_explicit_*() functions and use them in C++ +- compiler/types: Implement glsl_type::field_type() in terms of existing functions +- compiler/types: Add glsl_simple_explicit_type() and simplify glsl_simple_type() +- compiler/types: Add remaining type extraction functions and use them in C++ +- compiler/types: Use C instead of C++ constants for builtin types +- compiler/types: Remove usages of C++ members in glsl_types.cpp +- compiler/types: Annotate extern "C" only once in glsl_types.cpp +- compiler/types: Rename glsl_types.cpp to glsl_types.c +- compiler/types: Remove warnings about potential fallthrough +- compiler/types: Move comments and reorganize declarations +- anv: Fix leak when compiling internal kernels + +Carsten Haitzler (2): + +- kmsro: Add hdlcd DPU +- panfrost: Add GPU variant of G57 to the set of known ids + +Charles Giessen (1): + +- panvk: Use 1.0 in ICD Manifest json + +Charmaine Lee (8): + +- svga: set clear_texture to NULL for vgpu9 +- svga: fix stride used in vertex declaration +- svga: fix persistent mapped surface update to constant buffer +- svga: restrict use of rawbuf for constant buffer access to GL43 device +- svga: fix immediates used in rawbuf for constant buffer +- svga: use srv raw buffer for accessing readonly shader buffer +- svga: sync resource content from backing resource before image upload +- svga: ignore sampler view resource if not used by shaders + +Chia-I Wu (38): + +- radv: fix separate depth/stencil layouts in fb state +- radv: fix separate depth/stencil layouts in resolve meta +- radv: refactor depth clear in clear meta +- radv: fix separate depth/stencil layouts in clear meta +- amd/ci: update radv-stoney-aco-fails.txt for depth/stencil clear +- radv: disable tc-compat htile for layered images on gfx8 +- amd/ci: update radv-stoney-aco-fails.txt for depth/stencil resolve +- winsys/amdgpu: fix a race between import and destroy +- ac/surface: limit RADEON_SURF_NO_TEXTURE to color surfaces +- winsys/radeon: fix a race between bo import and destroy +- vulkan/runtime: add a helper for ETC2 emulation +- radv: use vk_tecompress_etc2 from the runtime +- vulkan/runtime: fix image type check for ETC2 emulation +- vulkan/runtime: fix a harmless typo for ETC2 emulation +- vulkan/runtime, radv: remove 1D support from ETC2 emulation +- radv: add radv_is_format_emulated +- radv: simplify view format override for emulated formats +- radv: hard code format features for emulated formats +- mesa: make astc_decoder.glsl vk-compatible +- radv, drirc: rename radv_require_{etc2,astc} +- anv: remove unused field from anv_image_view +- anv: add anv_image_view_{init,finish} +- anv: support image views with surface state stream +- anv: add anv_push_descriptor_set_{init,finish} +- anv: support alternative push descriptor sets +- anv: add anv_descriptor_set_write +- anv: add anv_cmd_buffer_{save,restore}_state +- anv: add anv_is_format_emulated +- anv: add a hidden plane for emulated formats +- anv: decompress on upload for emulated formats +- anv: fix up image views for emulated formats +- anv: fix up blit src for emulated formats +- anv: advertise emulated formats +- anv: add support for vk_require_astc driconf +- util: improve BITFIELD_MASK and BITFIELD64_MASK on clang +- anv: prep for gen9 astc workaround +- anv: add gen9 astc workaround +- radv: fix image view extent override for astc + +Chris Spencer (9): + +- radv: initialize result when pipeline cache creation fails +- anv/android: Fix importing hardware buffers with planar formats +- anv/android: Add support for AHARDWAREBUFFER_FORMAT_YV12 +- anv: Advertise Vulkan 1.3 on Android 13 +- anv: Don't reject Android image format if external props not supplied +- android: Add explanatory comment to u_gralloc +- anv/android: Enable shared presentable image support +- anv/video: use correct enum value for max level IDC +- radv/video: use correct enum value for max level IDC + +Christian Gmeiner (41): + +- nir/print: print instr pass_flags +- etnaviv: move nir texture lowerings into one pass +- nir: add enta specific intrinsic used for txs lowering +- etnaviv: nir: support intrinsic used for txs lowering +- etnaviv: nir: lower nir_texop_txs +- ci/etnaviv: update ci expectations +- etnaviv: make use of BITFIELD_BIT(..) macro +- etnaviv: name the enum used for pass_flags +- etnaviv: add is_dead_instruction(..) helper +- etnaviv: extend etna_pass_flags with source modifiers +- etnaviv: do not clear all pass_flags before RA +- etnaviv: nir: look at parent instr in lower_alu(..) +- etnaviv: nir: add etna_nir_lower_to_source_mods(..) +- etnaviv: nir: switch to etna_nir_lower_to_source_mods(..) +- etnaviv: nir: convert to new-style NIR registers +- freedreno/regs: remove double assignment of self.current_domain +- freedreno/regs: remove not used variable +- freedreno/regs: remove dead code +- freedreno/regs: python does not need ';' +- etnaviv: switch to log2f(..) +- etnaviv: switch to U_FIXED(..) macro +- etnaviv: switch to S_FIXED(..) macro +- etnaviv: fix null pointer dereference +- etnaviv: switch to float_to_ubyte(..) +- ci/etnaviv: update ci expectation +- etnaviv: unbreak cmdline compiler +- agx/lower_address: Use intrinsics_pass +- agx/lower_address: Remove not used has_offset +- isaspec: python does not need ';' +- docs: Move isaspec out of drivers/freedreno +- isaspec: Add support for templates +- isaspec: encode: Correct used regex +- isaspec: Add method to get all instrustions +- isaspec: Add support for custom meta information +- isaspec: Add BitSetEnumValue object +- spirv: Don't use libclc for rotate +- docs: update etnaviv extensions +- etnaviv: drm: Be able to mark end of context init +- etnaviv: Skip 'empty' cmd streams +- ci: Bump PyYAML to 6.0.1 +- etnaviv: Don't leak disk_cache + +Collabora's Gfx CI Team (2): + +- Uprev Piglit to ed58dfbd12be34fa3dab97a7a2987b890e0637f1 +- Uprev Piglit to f7db20b03de6896d013826c0a731bc4417c1a5a0 + +Cong Liu (2): + +- r300: Fix out-of-bounds access in ntr_emit_store_output() +- virgl:Fix ITEM_CPY macro pointer copy bug + +Connor Abbott (83): + +- afuc: Rework and significantly expand README.rst +- tu: Fix vk2tu_*_stage flag type +- tu: Fix and simplify execution dependency handling +- tu, freedreno/a6xx: Remove has_ccu_flush_bug +- ir3: Handle GS stream "mixing" with non-point output primitives +- tu: Disable transformFeedbackPreservesProvokingVertex +- isaspec: Add "displayname" for altering {NAME} when decoding +- isaspec: Add support for "absolute" branches +- isaspec: Add support for function and entrypoint labels +- isaspec: Add "custom" field type +- isaspec: Add callback after decoding an instruction +- isaspec: Rename isa_decode() to isa_disasm() +- isaspec: Add initial decoding support +- afuc: Fix xmov lexer typo +- afuc: Convert to isaspec +- afuc: Add setbit/clrbit +- afuc: Fix writing $00 +- freedreno/afuc: Initial a7xx support +- ir3: Parse (eq) flag +- ir3, freedreno, tu: Plumb through SP_FS_PREFETCH_CNTL::ENDOFQUAD +- tu: Add missing last_baryf statistic +- freedreno, tu, ir3: Add last_helper statistic +- ir3: Gather pixlod status earlier +- ir3: Implement helper invocation optimization +- vk/graphic_state, tu: Use dynamic blend count from subpass +- freedreno/a7xx: Add CP_RESET_CONTEXT_STATE +- vk/graphics_state: Fix copying MS locations pipeline state +- tu: Remove MSAA draw state +- tu: Merge SAMPLE_LOCATIONS and SAMPLE_LOCATIONS_ENABLE draw states +- tu: Merge PC_RASTER_CNTL into RAST draw state +- tu: Stop reusing base Vulkan dynamic state enums +- tu: Merge depth/stencil draw states +- tu: Rename PrimID-related registers +- tu, freedreno/a6xx: Don't use VS for PrimID passthru state +- tu: Pull entangled shader state into program config +- ir3: Add ir3_find_input_loc() helper +- tu: Split up tu6_emit_vpc() +- freedreno, ir3, tu: Constify various uses of ir3_shader_variant +- ir3: Add helper to determine when variant exceeds safe constlen +- tu: Split program draw state into per-shader states +- tu: Fix per-view viewport state propagation +- tu: Fix tu6_emit_*_fdm size call +- tu: Fix assert in FDM state emission +- tu: Actually emit patchpoint for viewports with FDM +- nir/lower_subgroups: Don't do multiple lowerings at once +- nir/spirv: Add inverse_ballot intrinsic +- amd: Use inverse ballot intrinsic if available +- tu: Create singleton "empty" shaders +- tu: Start tracking shaders independently of pipeline +- tu: Move FS-specific pipeline information to the shader +- tu: Use shader directly for VS/TCS output size and patch size +- tu: Rewrite tessellation modes handling +- tu: Rework passing shared consts +- tu: Decouple program state from the pipeline +- tu: Use pipeline feedback loop flag indirectly +- tu: Rewrite remaining pipeline LRZ handling +- tu: Don't reference pipeline for some draw states +- tu: Make compute dispatch use the shader +- tu: Don't use pipeline for dynamic draw states +- tu: Don't use pipeline for bandwidth validity +- tu: Don't use pipeline for per_view_viewport +- tu: Don't use pipeline for active stages +- tu: Remove pipeline from state +- zink: Rework color clamping and conversion +- freedreno/fdl: Use A8_UNORM HW format for sampling +- tu: Support clearing A8_UNORM +- freedreno/fdl: Support PIPE_FORMAT_R5G5B5A1_UNORM on a6xx +- tu/clear_blit: Fix staging image view layer count +- tu/clear_blit: Allow VK_REMAINING_ARRAY_LAYERS as layerCount +- tu: Allow VK_WHOLE_SIZE in tu_CmdBindVertexBuffers2EXT pSizes +- tu: Implement vkCmdBindIndexBuffer2KHR +- tu: Implement vkGetImageSubresourceLayout2KHR and vkGetDeviceImageSubresourceLayoutKHR +- tu: Implement vkGetRenderingAreaGranularityKHR +- tu: Use new buffer usage flags +- tu: Support VkPipelineCreateFlags2CreateInfoKHR +- tu: Check for DEVICE_LOST in vkGetEventStatus() +- tu: Add maintenance5 properties +- freedreno/ci: Skip dEQP-VK.info.device_extensions +- tu: Expose VK_KHR_maintenance5 +- freedreno/ci: Remove minetest trace +- v3d/ci: Remove minetest trace +- ir3/ra: Don't swap killed sources for early-clobber destination +- tu: Fix re-emitting VS param state after it is re-enabled + +Corentin Noël (16): + +- ci: Add locked flag to bindgen-cli installation +- virgl: Do not expose EXT_texture_mirror_clamp when using a GLES host +- ci: disable Collabora's LAVA lab for maintenance +- llvmpipe: make sure to initialize the lp_setup_context slots with the default values +- virgl: Cover all the formats defined in the virgl definition +- mesa: Ensure that the baselevel will never exceed the maximal supported number +- ci: Uprev virglrenderer +- freedreno/drm/virtio: Use MESA_TRACE_SCOPE instead of _BEGIN/_END +- tu: Use MESA_TRACE_SCOPE instead of _BEGIN/_END +- aux/tc: Use MESA_TRACE_SCOPE instead of _BEGIN/_END +- venus: Change the only occurrence of VN_TRACE_BEGIN/END to VN_TRACE_SCOPE +- util: Avoid the use of MESA_TRACE_BEGIN/END +- util/perf: Remove the tracing categories +- util: Remove MESA_TRACE_BEGIN/END +- mesa/bufferobj: ensure that very large width+offset are always rejected +- frontends/va: Remove wrong use of ProfileToPipe + +Daniel Schürmann (9): + +- nir/opt_move: fix handling of if-condition +- aco: append p_logical_end after monolithic RT shaders +- aco/insert_exec_mask: set Exact mode after p_discard_if when necessary +- aco: don't optimize cross-lane instructions across p_wqm +- aco: make p_wqm a marker instruction without Operands/Definitions +- aco: don't insert a copy when emitting p_wqm +- aco: insert a single p_end_wqm after the last derivative calculation +- aco/insert_exec_mask: Simplify WQM handling (1/2) +- aco/insert_exec_mask: Simplify WQM handling (2/2) + +Daniel Stone (23): + +- dri: Support 1555/4444 formats +- egl/dri2: Don't look up image extension twice +- egl/wayland: Always initialise fd_display_gpu +- egl/wayland: Add image loader extension for swrast +- egl/wayland: Never use DRI2_LOADER extension +- egl/wayland: Assume modern DRI interface versions +- egl/drm: Use IMAGE_DRIVER instead of DRI2_LOADER +- egl/drm: Assume modern DRI interface versions +- ci: Disable nouveau CI +- panfrost/vk: Use correct sampler dimensions for MSAA +- ci: Declare stages before jobs +- ci/radeonsi: Add new flake +- ci/d3d12: Add new flake +- ci/intel: Add new skqp flake +- ci/zink: Add new zink-lvp flakes +- ci/radeonsi: Skip more really slow tests +- ci/zink: Add another conversion fail on a618 +- ci: Move farm-disable rules before anything else +- ci: Always set user container jobs to manual +- ci: Use container rules for containers +- ci: Only look at file changes for MRs +- ci: Fix pre-merge pipelines with no code changes +- ci: Try really hard to print final result string + +Daniel van Vugt (1): + +- glx: Increment dpy->request before issuing an error that had no request + +Danylo Piliaiev (71): + +- freedreno/cffdec: Decode CP_DRAW_AUTO +- freedreno, turnip: Clarify some RB_CCU_CNTL fields +- freedreno,turnip: Make number of VSC pipes configurable +- freedreno,turnip: Make CS shared memory size configurable +- freedreno,turnip: Make VS input attr/binding count configurable +- freedreno: Add A605, A608, A610, A612 GPUs definition +- turnip: Make multiview support configurable per generation +- ir3: Make FS tex prefetch optimization optional +- ir3: Use NIR info to enable per sample shading +- freedreno/regs: Rename SP_FS_CTRL_REG0.DIFF_FINE into LODPIXMASK +- ir3: Fix FS quad ops returning wrong values from helper invocations +- tu,freedreno: Forbid blit event for R8G8_SRGB due to gpu faults +- radv: fix unused non-xfb shader outputs not being removed +- vulkan/nir: Add common helper to check if output is XFB +- radv: Use common nir_vk_is_not_xfb_output +- turnip: Use common nir_vk_is_not_xfb_output +- freedreno/regs: Define unknown SP_FS_PREFETCH_CNTL fields +- freedreno/registers: Refactor gen_header.py to allow more options +- freedreno/registers: Generate python files with reg offsets +- freedreno: Add a list of raw magic regs +- freedreno: Fully define a730 and a740 device properties +- ir3/tests: Use fd_dev_info to infer GPU generation +- freedreno/computerator: Fix remaining issues with A7XX +- isaspec: Make possible to obtain gpu_id in <expr> blocks +- ir3/a7xx: cat5 mode1 has swapped tex/samp ids +- ir3/a7xx: Don't multiply global mem instruction's offset by 4 +- ir3/a7xx: insert lock/unlock at the end of every compute shader +- ir3/a7xx: Add ccinv instruction +- ir3/a7xx: Use ccinv for data synchronization +- ir3/a7xx: Disable shared consts for a7xx +- tu/common: Generalize TU_GENX macro +- tu: Basic a7xx support +- freedreno/fdl: Set LOSSLESSCOMPEN for image when ubwc is enabled on a7xx +- tu/a7xx: Fix geometry shaders +- tu/a7xx: Fix tesselation shaders +- tu/a7xx: Fix multiview +- tu/a7xx: Fix flat shading +- tu/a7xx: Fix occlusion query +- tu/a7xx: Fix 3d blits after multiview usage +- tu/a7xx: Fix CmdDrawIndirectByteCountEXT +- tu/a7xx: Disable LRZ +- ir3/lower_tex_prefetch: Fix crash with lowered load_barycentric_at_offset +- tu: Exclude SP_UNKNOWN_AE73 from reg stomping +- tu: Call tu_cs_dbg_stomp_regs with appropriate GPU gen +- freedreno/replay: Add limited support for KGSL +- freedreno/rddecompiler: Update to handle a7xx +- freedreno/replay: Add "print" instr to ir3 asm to be used in replay +- freedreno/replay: Add "gpu_print" function for command streams +- tu/perfetto: Remove now unnecessary tu_perfetto_util +- tu/perfetto: Allow gpu time to be passed into tu_perfetto_submit +- tu/kgsl: Fix memory leak of tmp allocations during submissions +- tu/kgsl: Support u_trace and perfetto +- tu/a7xx: Correctly record timestamps for u_trace +- tu/virtio: Fix incorrect call to tu_perfetto_submit +- ci: Compile Turnip's virtio kmd in debian-arm64 +- freedreno/registers: Refine a7xx push consts registers +- ir3,tu: Refactor push consts info plumbing +- freedreno: Make possible to specify A7XX feature flags +- turnip,ir3: Implement A7XX push consts load via preamble +- tu: Add push_consts_per_stage debug option +- tu: Fix VK_FORMAT_A8_UNORM_KHR using UBWC when !has_8bpp_ubwc +- tu/kgsl: Fix field order in kgsl_command_object init +- tu: Fix stale tu_render_pass_attachment::store_stencil with dyn rendering +- tu: Zero init tu_render_pass and tu_subpass for dynamic rendering +- tu: Disable preamble push consts when they are not used +- ir3: Fix values of #wrmask not being compatible with ir3 parser +- tu: Count a whole push consts range in constlen for PREAMBLE push consts +- freedreno/rddecompiler: Use fd_dev_gen to pass gpu_id to ir3 disasm +- freedreno/rddecompiler: Decompile repeated IBs +- freedreno: Fix field size of A6XX_TEX_CONST[3].ARRAY_PITCH +- tu: Fix reading of stale (V)PC_PRIMITIVE_CNTL_0 + +Dave Airlie (163): + +- ci: remove binding model from the asan skips for lavapipe. +- gallivm: fix atomic global temporary storage. +- llvmpipe: fix fragdata/lastfragdata heuristic a bit more. +- nvk: add missing finish calls +- nvk: add some initial wsi framework. +- nvk: fix header guards to be less generic. +- nvk: add bind buffer memory +- nvk: Add initial queue +- nvk: add cmd buffer framework +- nvk: Reset pushbufs on command buffer reset +- nvk: reindent descriptor sets to mesa std. +- nvk: add initial descriptor pool framework. +- nvk: some boilerplate for descriptor sets +- nvk: add descriptor set bo allocation. +- nvk: implement buffer address. +- nvk: descriptor set freeing fix +- nvk: move to new command stream generator. +- nvk: port the blit and copy code to new command submission. +- nouveau/ws: drop the old push generators. +- nvk: link in codegen without gallium bits. +- nvk: Initial wiring in of the compiler +- nvk: Basic descriptor binding +- nouveau/vk: add support for compute classes to generator. +- nvk: retrieve gpc/mp counts from kernel. +- nvk: add support for preamble and tls allocation. +- nvk: add record result to cmd_buffer. +- nvk: add command stream upload buffer. +- nouveau/winsys: Add m2mf/compute objects +- nvk: add some basic format wrapping framework +- nvk: add some compute limits +- nvk: add basic nve4+ compute support. +- nvk: fix empty cmd submission. +- nouveau/ws: add a push reset just for references. +- nouveau/classes: add 906f header support. +- nvk: add initial 8/16 byte clears. +- nvk: fix pipeline pushbuf sizing +- nvk: increase graphics cpu push buffer +- nvk: fix depth emission ordering. +- nvk: add some limits/features from binary driver. +- nvk: add indexed draw support. +- nvk: assign vertex locations according to input attrib index +- nvk: lower io to temps to avoid output reads in vertex shaders +- nvk: handle NULL to destroy descriptor pool +- nvk: add basic primitive restart +- nvk: fix copy lower address extraction +- nvk: fix multiple pipelines failure allocation case. +- nvk: init dev->physical_device earlier. +- nvk/winsys: store device ptr into bo instead of ptr +- nvk: set the device fd +- nil: Fix image align and size constraints +- nvk: Report image alignments from NIL +- nouveau/winsys: allocate unique object handles across channels. +- nvk/nil: don't ask for compressed image kind +- nvk/barrier: handle host bit. +- nvk: add compute support for ampere +- nvk: add min_lod to spirv caps. +- nvk: fix r32_sint format support +- nvk: expose EXT_sampler_filter_minmax +- nvk: fix transform feedback crash when optimiser removes things. +- nvk: merge tess info between tcs/tes. +- nvk: introduce an optimisation loop. +- nvk: add support for D32_SFLOAT_S8_UINT +- nvk/query: fix push buffer size for copy pool results. +- nvk: init image fields for requirements +- nvk: handle alignments in device memory +- nvk/tess: don't emit patch control points in pipeline +- nvk: align geometry clip setting with nvc0 +- nvk: fix independent color write masks. +- nvk: enable rgb32 texel buffer support +- nvk: enable EXT_depth_clip_control +- nvk: enable EXT_depth_clip_enable +- nvk: always sync internal cmd bufs for vma lifetimes. +- nouveau/winsys: add support for the vma bind interfaces +- nvk: Add support for sparse buffers +- nvk: Add support for sparse images +- nvk/queue: add support for syncobjs and sparse binds +- nvk: Handle pre-turing indirect buffers with sparse +- nvk: enable sparse features +- nvk: enable a bunch of external fence/semaphore bits +- nvk: enable sparse residency buffer on maxwell+ +- nvk: add new internal bo allocation flag. +- docs: add two nvk exts to features.txt +- zink: use fprintf instead of printf to align the requirements warnings +- nvk: align sampler allocation counts with nvidia. +- zink: turn off threaded cpu access if not visible. +- nvk: add gart forced cmd pool side buffer. +- nvk: add cond render upload buffer. +- nvk: enable KHR_shader_clock. +- nvk: NOUVEAU_WS_BO_LOCAL is a trap. +- gallivm: drop unused info parameter +- llvmpipe/fs: drop cbuf 0 since it's lowered now. +- gallivm/nir: avoid using params->info +- llvmpipe/fs: move some tgsi checks in nir path to nir code. +- llvmpipe/cs: convert to using tgsi->nir +- llvmpipe/cs: drop tgsi for compute/mesh/task shader internals. +- lavapipe: use vk_buffer common code. +- lavapipe: use vk_buffer_range common code. +- llvmpipe/fs: switch to using tgsi->nir instead of handling tgsi +- llvmpipe/analyse: drop TGSI path. +- llvmpipe/fs: start using nir info in some places. +- llvmpipe/fs: drop the simple shader logic +- llvmpipe/fs: rewrite output finding using nir. +- nvk: add build_id linker argument. +- nir/gather: add support for fbfetch and bindless image loads. +- llvmpipe/cs: further cleanups after tgsi removal. +- llvmpipe: move to nir lowering for fquantize2f16 +- rusticl: don't store ptrs to nir_variables across opt passes. +- llvmpipe: enable f16 paths on aarch64. +- clover/llvm: move to modern pass manager. +- nir: use a _clone so users calling their variable clone don't get a warning +- nir: rename nir_inline_functions.c to nir_functions.c +- nir: use nir_function_instructions_pass in the inliner. +- nir: move the libclc lowering over to functions file. +- nir/functions: use helper to get function for a name. +- nir/functions: put link state into a struct +- nir/functions: move linker pass to new helper +- nir: add nir function clone +- nir: don't inline linked functions +- gallivm/nir: split prepasses out to make per-function work easier. +- gallivm: rework translator to allow per-impl work. +- spirv/nir: parse function control and store in nir. +- nir: add driver_functions option to avoid inlining. +- nir: add a function usage tracker +- rusticl: use cleanup funcs +- gallivm: add support for function calling +- llvmpipe/cs: add support for function calls. +- llvmpipe: enable driver functions. +- radv: don't emit event code on video queues. +- spirv: use a pointer sized int type for opencl event_t +- clover: fix parameter arguments since recent translator changes. +- radv/video: take db alignment into account when allocating images. +- ac,radeonsi: move vcn enc structs to common +- ac,radeonsi: move vcn enc av1 default cdf file to common +- nir: add a deref slot counter that handles compact +- llvmpipe/linear: drop tgsi path. +- gallivm: drop tgsi aos paths. +- llvmpipe/nir: call gather info to update inputs read properly +- llvmpipe/fs: start converting interp/input paths to nir. +- llvmpipe/fs: start converting dervied state to nir based. +- llvmpipe/linear: convert to using nir for output. +- llvmpipe/linear: move to nir inputs +- draw/mesh: reset some user state values on mesh draws. +- llvmpipe/fs: fix regression in sample mask handling from tgsi removal. +- llvmpipe: reset viewport_index_slot in fb bind +- llvmpipe/cs: migrate to generic jit texture from pipe code. +- llvmpipe/cs: migrate cs image handle to common jit code. +- lavapipe: fix some whitespace in advance of other changes. +- lavapipe: fix subresource layers asserts +- lavapipe: support host image copying on compressed texture formats +- llvmpipe: don't create texture functions for planar textures. +- lavapipe: don't emit blit src/dst for subsampled formats. +- llvmpipe: don't support planar formats for buffers. +- lavapipe: convert sampler to use vk base class. +- lavapipe: cleanup copy code to use a local region variable. +- lavapipe: start introducing planes structure. +- lavapipe: allocate image and image view planes. +- lavapipe: handle planes in copies +- lavapipe: handle planes in get image sub resource +- lavapipe: add descriptor sets bindings for planar images +- lavapipe: handle planes in texture lowering. +- lavapipe: expose planar ycbcr formats and new ycbcr features +- lavapipe + docs: update ycbcr extension enables. +- intel-clc: avoid using spirv-linker. + +David Heidelberg (82): + +- ci/freedreno: update a530 flakes +- ci: build kernel in gfx-ci/linux and just use binaries in Mesa3D CI +- ci: update kernel to 6.3.13 +- ci/freedreno: add fails introduced by upreving to 6.3.13 +- Revert "lima/ci: temporarily disable deqp-egl tests due to timeouts" +- ci/radeonsi: stoney arb_timer_query got fixed between kernel 6.3.1..13 +- ci/lima: EGL testing was disabled when fp16 fail was removed +- ci/freedreno: fix unexpectedpass flake on a630 +- ci/freedreno: add another a530 flakes +- ci: add quirk for GitLab assuming changes is always true for scheduled runs +- ci/microsoft: when re-enabling Windows Farm, always run the container +- ci/freedreno: add a530 flakes, remove one fail which recently started passing +- ci/panfrost: introduce OpenGL testing with Mali-G57 MP5 on Asurada chromebook +- ci/freedreno: cover all texture gather flakes +- ci/freedreno: add a530 flake vs-lessthanequal-uvec4-uvec4 +- ci/farms: always compare the code against main repository +- Revert "ci/farms: always compare the code against main repository" +- ci/kernel: add amd patch to prevent crashes when starting X +- ci/kdl: remove extra-verbose ls command +- ci/nouveau: add 20 minutes timeout to gk20a and align gm20b +- ci/freedreno: document another mapbuffer flake on a530 +- ci/amd: fix timeouting radeonsi-raven-va-full job +- docs/ci: default to port 80 for the caching proxy +- docs/ci: update to systemd and used version of the trace for testing +- docs/ci: remove default nginx config, which we don't need for proxy +- bin/ci: handle errors more gracefully in update_traces_checksum script +- ci/freedreno: document another flakes on Adreno 530 +- ci: add perfetto into mesa git-cache +- ci/panfrost: re-enable t760 and t860 traces as a nightly job +- CI: Re-enable G52 Vulkan testing +- ci/panfrost: t760-gles is nightly job, test also GLES 3 and 3.1 +- ci/zink: Add flake seen in the wild +- ci/build: limit debian-build-testing to 30 minutes +- ci/amd: add glx\@glx-visuals-depth flake to raven +- ci/freedreno: document vs-nested-return-sibling-loop2 flake on Adreno 530 +- ci/farms: enabled Microsoft job only when conditions are met +- ci/deqp: really remove the uncompressed results.csv file +- ci/baremetal: do not install curl, it's already there +- ci/baremetal: shorten BM_KERNEL to filename and BM_DTB to name only +- ci/freedreno: document another a530 flake batch +- ci: remove LAVA prefix from variables which can be used also elsewhere +- ci/zink: drop a630, which we currently have very low amount available +- ci/freedreno: the tag belongs to the apq8016 only +- ci/freedreno: switch references, the farm-rules takes care about this +- ci/freedreno: handle disabling farm properly for each FD/Collabora farm +- ci/freedreno: another batch of Adreno 530 flakes +- gtest: backport ansi color fix +- ci: disable Material Testers.x86_64_2020.04.08_13.38_frame799.rdc trace +- panfrost/ci: revert Disable T720 +- ci/piglit: add extra space on top to prevent single quote getting into URL +- ci/freedreno: There is only one King of Town. +- ci: switch to 6.4 kernel, improving Adreno 660 reliability +- ci/iris: add GL46.arrays_of_arrays_gl.SizedDeclarationsPrimitive timeout +- ci/panfrost: add G52 flakes +- ci/panfrost: we have enough device, parallelize Vulkan tests +- ci/virgl: flakes in functional.draw_buffers_indexed group +- ci/freedreno: add another a530 flake +- ci/panfrost: add G52 simple_tests.partial_image_pot_same_format_noclear flake +- panvk: architecture isn't invalid, just unsupported +- panvk: catch unsupported arch in the panvk_physical_device_init +- Revert "ci: disable a660 jobs" +- docs: add LAVA farm informations +- ci: disable Google Freedreno farm, currently timeouting on all jobs +- Revert "ci: disable Google Freedreno farm, currently timeouting on all jobs" +- ci/farms: no need to check RUNNER_TAG for Collabora farm +- ci/traces: extend no-output timeout by 5 minutes +- ci/venus: add fragment.32B_in_memory_with_vec4_s32 flake +- iris: do not mention specifically clover for OpenCL support +- ci/freedreno: disable broke cheza (Adreno 630) runners +- ci/bare-metal: correct workaround for R8152 issue while retrieving TFTP data +- ci/bare-metal: drop unused imports, sort, use SPDX license +- ci/lima: farm is down, disable for now +- ci: do not report failed job when flakes reporting fails +- ci/freedreno: re-enable Cheza (Adreno 630) runners +- ci/traces: upload only missing trace images +- ci/traces: keep images for every job except the performance testing +- ci/traces: rename upload function to reflect it works with S3 +- ci/traces: always export piglit EXTRA_ARGS +- ci: ci_marge_queue.py +- ci/freedreno: fix copy paste causing a618_gl being run only in manual pipeline +- ci/freedreno: disable Adreno 660 Vulkan pre-merge +- ci/traces: drop the freedoom-phase2-gl-high.trace + +David Rosca (70): + +- radeonsi: Use DIV_ROUND_UP instead of ALIGN_POT +- frontends/va: Skip processing buffers already converted with EFC +- frontends/va: Don't use EFC with scaling or filtering enabled +- radeonsi/vcn: Don't use chroma in AV1 encode with RGB input +- frontends/va: Parse H264 SPS for video signal parameters +- frontends/va: Parse HEVC SPS for video signal parameters +- frontends/va: Add postproc support for converting to full range +- radeonsi/vcn: Set H264 video signal parameters in bitstream +- radeonsi/vcn: Set HEVC video signal parameters in bitstream +- radeonsi/vcn: Enable full/limited range support for H264/HEVC/AV1 +- radeonsi/vcn: Fix setting color range in AV1 bitstream +- gallium/auxiliary/vl: Fix RGB->YCbCr full range matrix +- gallium/auxiliary/vl: Handle UV subsampling in compute_shader_yuv +- gallium/auxiliary/vl: Fix blurry output of compute_shader_yuv +- frontends/va: Add YUV420 to NV12 postproc conversion +- gallium/auxiliary/vl: Fix chroma and blurry output of cs video_buffer +- gallium/auxiliary/vl: Fix chroma offset of compute_shader_weave +- frontends/va: Also map VAImageBufferType for reading +- frontends/va: Alloc interlaced surface for interlaced pics +- frontends/vdpau: Alloc interlaced surface for interlaced pics +- radeonsi: Don't prefer interlaced for video decode +- ci/amd: Skip VAAPI CreateSurfacesWithConfigAttribs/1121 test +- frontends/va: Don't allow multi-plane derive without driver support +- frontends/va: Init view_resources array in vlVaPut/GetImage +- radeonsi: Copy all planes with multi-plane staging textures +- radeonsi: Enable PIPE_VIDEO_CAP_SUPPORTS_CONTIGUOUS_PLANES_MAP +- ci/amd: Skip all VAAPI tests that creates too many huge surfaces +- radeonsi/vcn: Update rate control when framerate changes with HEVC +- frontends/va: Ignore requested size when creating VAEncCodedBufferType +- gallium/auxiliary/vl: Set correct csc matrix in set_buffer_layer +- radeonsi/vcn: Fix leaking fences in decode +- gallium/auxiliary/vl: Add BT.709 full csc matrix +- frontends/va: Set csc matrix in postproc +- gallium/auxiliary/vl: Don't set csc matrix in video_buffer/rgb_to_yuv_layer +- frontends/va: Add BT.709 as supported postproc color standard +- Revert "radeonsi/vcn: add an exception of field case for h264 decoding" +- gallium/auxiliary/vl: Set vertex element src_stride in vl_deint_filter +- gallium/auxiliary: Fix util_compute_blit half texel offset with scaling +- gallium/auxiliary/vl: Map range when updating constants +- gallium/auxiliary/vl: Clamp coordinates in compute shaders +- gallium/auxiliary/vl: Support chroma sample location in compute shaders +- frontends/va: Support chroma sample location in postproc +- frontends/va: Flush after unmapping VAImageBufferType +- frontends/va: Parse chroma sample location in H264/HEVC SPS +- radeonsi/vcn: Set H264/HEVC chroma sample location in bitstream +- radeonsi/vcn: Don't hang GPU when using DCC surface as encoder input +- frontends/va: Track surfaces in context +- frontends/va: Destroy fences when destroying surface or context +- radeonsi/vcn: Implement destroy_fence vfunc +- frontends/va: Process VAEncSequenceParameterBufferType first in vaRenderPicture +- frontends/va: Set default rate control values once when creating encoder +- gallium/auxiliary/vl: Add RGB to YUV compute shader +- gallium/auxiliary/vl: Use chroma offset in YUV to RGB weave compute shader +- gallium/auxiliary/vl: Fix YUV to RGB bob compute shader deinterlacing +- gallium/auxiliary/vl: Only map the shader constants buffer in render +- frontends/va: Add High Quality preset mode +- radeonsi/vcn: Add High Quality encoding preset for AV1 +- radeonsi: Fix plane size in si_copy_multi_plane_texture +- frontends/va: Implement vaMapBuffer2 +- frontends/va: Fix locking in vlVaBeginPicture +- frontends/va: Parse H264 SPS for max_num_reorder_frames +- util/vl: Fix vl_rbsp parser with bitstreams without emulation bytes +- frontends/va: Fix parsing packed headers without emulation bytes +- radeonsi/vcn: Add encode support for H264 B-frames +- frontends/va: Map decoder and postproc surfaces for reading +- radeonsi: Fix offset for linear surfaces on GFX < 9 +- gallium/auxiliary/vl: Fix coordinates clamp in compute shaders +- gallium/auxiliary: Fix coordinates clamp in util_compute_blit +- gallium/auxiliary/vl: Scale dst_rect x0/y0 when rendering chroma plane +- util/rbsp: Fill bits twice if reading more than 16 bits + +Derek Foreman (2): + +- vulkan/wsi: Allow binding presentation_timing when software rendering +- vulkan/wsi: warn about unset present_mode in PresentModeCompatibilityExt + +Dmitry Baryshkov (3): + +- gallium: move kmsro definition to the bottom of the file +- gallium: unbreak kmsro/freedreno case +- tu: Pass real size of prime buffers to allocator + +Dmitry Osipenko (3): + +- util/cache_test: Re-add test for disabled cache +- util/cache_test: Fix disabled cache test using SHADER_CACHE_DISABLE_BY_DEFAULT +- util/cache_test: Add test for get/put() with disabled cache + +Dor Askayo (1): + +- nouveau: add exported GEM handles to the global list + +Dr. David Alan Gilbert (6): + +- rusticl/core: Add profiling time storage (queued) to event +- rusticl: Wire the 'queued' profiling time up +- rusticl: Wire the 'submit' profiling time up +- rusticl: Wrap pipe queries +- rusticl: Wrap pipe query reads +- rusticl: Wire the 'start' and 'end' profilng times up + +Dylan Baker (4): + +- VERSION: bump to 23.3.0-devel +- docs: Update release calendar for 23.2.0-rc1 +- docs: truncate feature list for 23.3-devel +- meson: use a single dependency call for lua + +Echo J (5): + +- nvk: Fix some cast defines +- nvk: Add A8B8G8R8_*_PACK32 format support +- nvk: Add bufferImageGranularity limit +- nvk: Reset offset value in ResetDescriptorPool +- nil: Add A4B4G4R4_UNORM format support + +Emma Anholt (111): + +- ci/radv: Clarify when the ANGLE GS failures started happening. +- ci: Uprev ANGLE to 0518a3ff4d4e ("Android: Simplify power metrics collection") +- ci/tgl: Improve the info for ANGLE's MSAA regression on TGL. +- ci/tu: Add more crash cases for the multithreading bugs caught on a630. +- ci/tu: Mark descriptor_buffer.basic.limits as failing in gmem too. +- ci/tu: Drop some xfails for !24086 +- tu: Fix data race in userspace VMA management. +- ci/a5xx: Add another GPU hanging piglit test to the skips. +- Revert "ci: Disable nouveau CI" +- nvk: Avoid strict aliasing warning in the pushbuffer encoding. +- nvk: Fix uninitialized result usage in NVK_DEBUG_ZERO_MEMORY. +- nvk: Fix unused result warnings in pushbuf resets. +- nvk: Remove duplicate (disabled) point sprite setup. +- nvk: Fix missing init of the stages to sync against. +- nvk: Use depth_clamp_enable to select PIXEL_*_Z_CLAMP. +- nouveau/winsys: Fix an undefined use in the error path. +- nvk: Quiet a compiler warning. +- nvk: Clean up redundant vendor checking for physical device creation. +- nvk: Add support for probing as a platform device. +- nvk: Disable shaderStorageImageReadWithoutFormat pre-Maxwell. +- freedreno/a5xx: Fix border color structure size. +- freedreno/a5xx: Skip emitting unused texture descriptors for images. +- freedreno/ir3: Move pvtmem per-fiber size alignment to the compiler. +- ci/freedreno: Drop a bunch of stale a530 xfails. +- ci/freedreno: Sort another a530 xfail with its friends. +- ci/freedreno: Update comments for some a530 xfails. +- ci/freedreno: Add some more db820c xfails. +- freedreno/devices: Move fibers_per_sp to the common info struct. +- freedreno/devices: Set num_sp_cores explicitly for pre-gen6. +- freedreno/a6xx: Move pvtmem allocation to ir3_gallium. +- freedreno/a3xx: Add the shift for MEMSIZEPERITEM according to db410c docs. +- freedreno/a5xx: Refactor SHADER_OBJ emit to a helper function. +- freedreno/a5xx: Set num_sp_cores and set PC/VFD_POWER_CNTL accordingly. +- freedreno/a5xx: Add private mem support. +- freedreno/cffdec: Fix decode on pixel 2 blob's COMPUTE_CHECKPOINT +- ci/freedreno: Add a regression test for decoding a540 blob's compute shaders. +- freedreno: Fix crashdec pre-a6xx. +- freedreno/a5xx: Skip SSBO emit when none are enabled. +- vulkan/util: Make multialloc succeed with 0 allocations. +- turnip: Track the first/last subpass an attachment is used in. +- turnip: Skip emitting empty CP_COND_REG_EXEC. +- turnip: Save the renderpass's clear values in the cmdbuf state. +- turnip: Move gmem clears and loads to the first subpass that uses them. +- turnip: Move sysmem clears to the first subpass that uses them. +- ci/freedreno: Skip some tests on a5xx that destabilize other tests. +- freedreno/a3-5xx: Don't try to emit ISAM for SSBO loads. +- ci/turnip: Add a660 VK coverage. +- disk_cache: Disable the "List" test for RO disk cache. +- blorp: Disable unaligned partial HIZ fast clears for HIZ_CCS too. +- intel/fs: Move defin/defout setup to the start of the loop. +- intel/fs: Move the defin[]/defout[] screening up to livein[]/liveout[] setup. +- intel/fs: Simplify compute_start_end(). +- ci/freedreno: Add another excessive-constlen UBO skip. +- ci/anv: Drop DEQP_VER:vk setting. +- ci/anv: Drop "-vk" from the job name. +- ci/anv: Add a manual full VK run for TGL. +- ci/anv: Add testing on JSL. +- freedreno: Build drm subdir before perfcntrs, which uses it. +- ci/intel: Add various updates from our nightly runs. +- ci/virgl: Disable virgl-iris-traces. +- ci/zink: Add a few updates for anv/tgl from the nightly runs. +- ci/fastboot: Use a case insensitive match for a fastboot line. +- ci/etnaviv: Skip some tests that hang the GPU and knock out other tests. +- ci/etnaviv: Drop some gc2k flakes that I think are resolved. +- ci/anv: Drop incorrect xfail addition for TGL +- ci/anv: Drop the 16bit.scalar.13 skip. +- ci/etnaviv: Minor xfail/flake polishing. +- ci/etnaviv: Skip a GLES2 test that times out the asan job. +- ci/zink: Skip more doubles tests on anv that flake at 3 minute timeouts. +- ci/docker: Clear the results file before starting a new deqp test run. +- ci/crocus: Add a related flake to a known one. +- ci/etnaviv: return gl-1.4-tex1d-2dborder as a known flake +- ci/crocus: Add known piglit flakes +- ci/hasvk: Add a bunch of new CTS border color fails. +- i915: Re-clang-format and enforce it in CI. +- i915: Print the relevant counts vs limits when throwing errors. +- i915: Don't log I915_DEBUG=fs output for blit shaders. +- i915: Save fragment program compile error messages in the fragment shader. +- i915: Do a test compile at glLinkShader() time. +- i915: Make exceeding tex indirect count fatal. +- i915: Use nir_group_loads() to reduce texture indirection phases. +- ci/crocus: Generalize the drawarrays-vertex-count flakes. +- ci/zink: Skip 3-minute-long glx-visuals timeouts. +- ci/zink: Skip dmat[34] op tests in general, as well +- ci/crocus: Disable flaky unvanquished-ultra trace +- nir/print: Decode system values in the variable declarations. +- ci/zink: Add a TGL flake that's showed up in nightlies recently. +- ci/radeonsi: Drop an xfail for vangogh. +- i915: Make I915_DEBUG=fs log shaders that fail to link due to CF. +- nir: Flatten ifs with discards in nir_opt_peephole_select for HW without CF. +- glsl: Remove lower_discard(). +- ci/zink: Only test half of piglit pre-merge on anv. +- ci: Stop doing internal retries in bare-metal. +- ci/bare-metal: Drop the 2 vs 1 exit code from poe_run. +- ci/bare-metal: Default our boards to a 20-minute timeout for the whole job. +- ci/iris: Drop parallel on kbl piglit to 2. +- ci/freedreno: Fold a630_egl into a630_gl. +- ci/freedreno: Move skqp testing to a618. +- ci/zink: Cut zink-lvp coverage in half. +- ci/freedreno: Generalize the implicit_unmap timeouts. +- ci_run_n_monitor: Poll mesa/mesa and user/mesa for pipelines at the same time. +- glx: Delete support for GLX_OML_swap_method. +- ci: drop skip for glx-swap-copy. +- dri: Drop a duplicate mesa vs pipe format table. +- docs/ci: Drop old instructions for farm disabling +- docs/ci: Add some links in the CI docs to how to track job flakes +- glsl: Remove int64 div/mod lowering. +- llvmpipe: Set nir_lower_dround_even. +- nir: Add nir_lower_dsign as 64-bit fsign lowering. +- glsl: Retire dround lowering. +- ci_run_n_monitor: Always resolve --rev arguments for looking up pipelines. + +Eric Engestrom (194): + +- ci: avoid running hardware jobs if lint fails - now on LAVA too! +- ci: avoid running hardware jobs if lint fails - now on Windows too! +- ci: replace copy of nouveau rules with reference +- ci: drop leftover kernel configs +- ci: use !reference for scheduled_pipeline retry rule +- ci: add .llvmpipe-manual-rules and use it +- ci: add .gallium-core-rules and use it instead of gallium_core_file_list anchor +- ci: replace llvmpipe_file_list anchor with reference +- ci: replace softpipe_file_list anchor with reference +- ci: replace lavapipe_file_list anchor with reference +- ci: replace iris_file_list anchor with reference +- ci: replace radv_file_list anchor with reference +- ci: replace radeonsi_file_list anchor with reference +- ci: replace virgl_file_list anchor with reference +- ci: move etnaviv files rules to src/etnaviv/ci/gitlab-ci.yml +- ci: move freedreno files rules to src/freedreno/ci/gitlab-ci.yml +- ci: move nouveau files rules to src/gallium/drivers/nouveau/ci/gitlab-ci.yml +- ci: move panfrost files rules to src/panfrost/ci/gitlab-ci.yml +- ci: move broadcom files rules to src/broadcom/ci/gitlab-ci.yml +- ci: move lima files rules to src/gallium/drivers/lima/ci/gitlab-ci.yml +- ci: move amd files rules to src/amd/ci/gitlab-ci.yml +- ci: move microsoft files rules to src/microsoft/ci/gitlab-ci.yml +- ci: move zink files rules to src/gallium/drivers/zink/ci/gitlab-ci.yml +- ci: move virtio files rules to src/virtio/ci/gitlab-ci.yml +- ci: move intel files rules to src/intel/ci/gitlab-ci.yml +- ci: move virgl files rules to src/gallium/drivers/virgl/ci/gitlab-ci.yml +- ci: move llvmpipe files rules to src/gallium/drivers/llvmpipe/ci/gitlab-ci.yml +- ci: move softpipe files rules to src/gallium/drivers/softpipe/ci/gitlab-ci.yml +- ci: move lavapipe files rules to src/gallium/drivers/lavapipe/ci/gitlab-ci.yml +- ci: delete install.tar after extracting it to avoid re-uploading it +- docs: add release notes for 23.1.4 +- docs: add sha256sum for 23.1.4 +- docs: update calendar for 23.1.4 +- asahi: drop unused include paths +- ci/lint: deduplicate formatting check jobs +- ci/lint: also print a diff for rust format issues +- ci: allow hw jobs even if lint jobs fail for non-Marge pipelines +- ci: print rustfmt's version +- ci: print clang-format's version +- bin/ci_run_n_monitor: get git sha from pipeline if specified, instead of requiring --rev to match +- lavapipe/ci: use tighter changes: rules +- ci: add a 10min job timeout to formatting checks +- ci: reduce bare-metal retries of poe_run to only 3 attempts +- broadcom/ci: reduce vc4-rpi3-gl timeout to 30min (instead of 1h) +- broadcom/ci: reduce v3d-rpi4-gl timeout to 30min (instead of 1h) +- broadcom/ci: reduce v3d-rpi4-traces timeout to 30min (instead of 1h) +- broadcom/ci: reduce v3dv-rpi4-vk timeout to 30min (instead of 1h) +- ci: add .core-rules to .gallium-core-rules +- ci: drop rule for non-existent src/include/ +- docs: add release notes for 23.1.5 +- docs: add sha256sum for 23.1.5 +- docs: update calendar for 23.1.5 +- ci: include some timing information in the git cache download script +- docs/ci: stop trying to enumerate drivers that are tested using VK-GL-CTS +- docs/ci: in paragraph about the CI being overwhelmed, mention our tool to help with that +- docs/ci: drop mention of build systems variants in the CI +- docs/ci: expand the description of test suites +- bin: add wrapper to run scripts in a python venv +- bin/ci/ci_run_n_monitor: use venv wrapper +- bin/ci/gitlab_gql: use venv wrapper +- bin/ci/update_traces_checksum: use venv wrapper +- bin/pick-ui: use venv wrapper +- ci: include mold in x86_64_test-base & rootfs images +- ci: use mold to build deqp +- zink/ci: set the default timeout for zink jobs to 30min instead of 1h +- egl: make _eglFilterConfigArray static +- egl: fixup _eglFilterConfigArray() params and drop _eglFallbackMatch() wrapper +- ci: build nvk +- ci: document max image tag length +- docs/radv: mark VK_EXT_tooling_info as implemented +- docs/radv: mark VK_INTEL_shader_integer_functions2 as implemented +- git-blame-ignore-revs: repeat instruction on how to enable to avoid having to look for it +- git-blame-ignore-revs: add radv formatting commit +- git-blame-ignore-revs: add pvr formatting commit +- meson: fix indentation +- docs/v3dv: mark direct display extensions as implemented +- ci: reorder vk drivers alphabetically in debian-vulkan job +- ci: build hasvk in debian-vulkan job +- ci/zink+radv: set a timeout of 2x the normal runtime +- amd/ci: drop duplicate test expectations +- panfrost: upcast uint8/uint16 before shifting them beyond their range +- ci/a530: document piglit flake +- docs: add release notes for 23.1.6 +- docs: add sha256sum for 23.1.6 +- docs: update calendar for 23.1.6 +- docs: add one more 23.1.x release +- ci: rename \*.log to \*.txt to work around gitlab bug +- ci/freedreno: reuse freedreno_gl_file_list instead of re-definining it +- egl: bump extension string length +- vc4: drop duplicate .lower_ldexp +- zink: fix format in zink_make_{image,texture}_handle_resident() +- v3dv: fix VK_PIPELINE_ROBUSTNESS_{BUFFER,IMAGE}_BEHAVIOR_DEVICE_DEFAULT_EXT copy/paste typo +- v3dv: fix copy/pasted type of \`sample` +- v3dv: fix shader stage name in error message +- v3d/qpu: fix type of function argument +- ci/deqp: backport fix for dEQP-EGL.functional.wide_color.*_888_colorspace_* +- ci/farm-rules: fix missing valve-infra jobs in scheduled pipelines +- bin/ci_run_n_monitor: error out if both --project and --pipeline-url are passed +- ci: document farm rules +- ci/b2c: skip install.tar extraction if the tarball is not present +- ci/b2c: don't allow failures in test script preparation +- ci/b2c: assert that install folder is present whether or not the tarball was extracted +- ci/amd: split the polaris10 rules into one for each farm +- ci: skip containers & build jobs when disabling a farm +- docs: add release notes for 23.1.7 +- docs: add sha256sum for 23.1.7 +- docs: update calendar for 23.1.7 +- docs: add one more 23.1.x release +- ci: taking igalia farm offline +- ci/b2c: drop logic to remove install.tar +- ci: drop clover leftover +- Revert "ci: taking igalia farm offline" +- bin/ci_run_n_monitor: print in which repo we're looking for the pipeline +- bin/ci_run_n_monitor: automatically pick MR pipelines when they exist +- ci: remove duplicate fork pipeline in MRs +- ci_run_n_monitor: add comment to explain "MR > fork" logic +- ci: don't run everything just because a farm gets re-enabled +- ci/windows: centralize definition of windows runners tags +- ci/windows: add windows docker runner tags to .windows-docker-vs2019 +- ci/windows: drop build rules from test jobs +- ci: document which image tags need to be bumped when updating piglit +- ci: document which image tags need to be bumped when updating {alpine,debian,fedora}/x86_64 +- ci/farm-rules: rename .disable-farm-mr-rules to make it clear it's only about MRs +- ci/farm-rules: re-add "run every container and build job when a farm gets re-enabled" +- ci/zink: drop redundant \`MESA_LOADER_DRIVER_OVERRIDE: zink` +- docs: add release notes for 23.1.8 +- docs: add sha256sum for 23.1.8 +- docs: update calendar for 23.1.8 +- docs: add another 23.1.x +- ci: limit build jobs to 30min so that they can retry when they go wrong +- docs: drop outdated and redundant note about the minimum meson version +- ci/zink+radv: specify that zink-radv-navi10-valve should run in the mupuf farm +- ci/zink+radv: bump the timeout of zink-radv-navi10-valve by 10 minutes +- docs: add calendar for 23.3 +- ci: unify container and build jobs rules +- docs/meson: drop mention that our meson is ready +- ci/docs: drop extra overwritten rules +- ci/zink+radv: document flake +- docs: document the merging process and what is allowed or not +- ci: drop unused shader-db clone + build from alpine image +- ci: drop unused shader-db clone + build from fedora image +- ci: move shader-db clone/build into its own script +- ci/deqp-runner: fix indentation +- ci/deqp-runner: restore exit-on-error after getting deqp-runner's exit code +- ci: fix shebang in build-deqp-runner.sh +- docs: add release notes for 23.1.9 +- docs: add sha256sum for 23.1.9 +- docs: update calendar for 23.1.9 +- ci: drop unused ephemeral packages in alpine image +- docs/ci: rewrite the "farm maintenance ^ other change" rule to mean what we actually meant +- ci: skip dEQP-VK.api.driver_properties.conformance_version for everyone +- pick-ui: use assignment expressions +- pick-ui: use more expressive variable names +- pick-ui: add \`Backport-to: XX.Y` nomination +- v3d/ci: move traces job to wayland +- ci: print deqp version in the job log +- ci/b2c: move to the shiny new \`gfx-ci/ci-tron` repo +- ci/b2c: use latest mesa-trigger image +- include/dri_interface.h: restore define mistakenly removed in !25587 +- ci_run_n_monitor: dependency jobs must always be started +- util/xmlconfig: drop driInjectDataDir() now that DRIRC_CONFIGDIR is always supported +- util/xmlconfig: inline datadir +- ci/b2c: change artifacts path to match baremetal and LAVA +- VERSION: bump for rc1 +- .pick_status.json: Update to e64a97694ac9dc97f65e1a8e91a5c9789109fd2c +- .pick_status.json: Update to 4cdd094ae1e97d857a6b9dbc291d7bbe6ea266ac +- .pick_status.json: Update to e4a1bc70dd739ca8addddc940af08312b038e288 +- .pick_status.json: Update to faed5d647f2416bb0ce3a9d33a3955169c70dc52 +- VERSION: bump for 23.3.0-rc2 +- .pick_status.json: Update to 1f1ec1c6bcc2a32a3c1df8c2cc7a2f4e7139b7ec +- .pick_status.json: Mark 8dda860f83ac30d042dc6beb4438cc925d1fd130 as denominated +- .pick_status.json: Update to 7d6f9ccfbeab050c26775d5e03578a01526cbfcb +- .pick_status.json: Update to aa33ca0a52591961f8ae01dc253354462ed17c18 +- .pick_status.json: Update to a77ea9555aa00cc12f3d1c440252e940ff552500 +- .pick_status.json: Mark 227300345ed38377190b0eaf08694d5c42ee7e60 as denominated +- VERSION: bump for 23.3.0-rc3 +- .pick_status.json: Update to 56451ce773c11094a8c08fdc6b500bb8bdcf37e1 +- .pick_status.json: Mark fa7ec4226bdf48bf63438e303af83ecd58ec95f2 as denominated +- .pick_status.json: Update to 08f851f4361cfbdb211dc70d03cf3ebff331c3ee +- .pick_status.json: Update to 03a7cb261828b350dd9b56bd74850197ca9eba33 +- .pick_status.json: Mark fcfa68a632e5711cc657b103c9a0384928e9bf49 as denominated +- VERSION: bump for 23.3.0-rc4 +- .pick_status.json: Update to f05688aa3299a27430119b27e45181a6f415bff8 +- egl/dri2: increase NUM_ATTRIBS to fit all the attributes +- .pick_status.json: Update to f39ed0063b4cd3e5a71efad2d43ce31f574c698d +- .pick_status.json: Update to b07a58157d0b110dbc09a42cffe7046c3200dd3b +- VERSION: bump for 23.3.0-rc5 +- .pick_status.json: Update to f843b14c171299e1696ca6d971ccaa496f60c3ab +- intel/perf: fix regex escaping +- intel/ci: fix .hasvk-manual-rules +- VERSION: bump for 23.3.0 +- Revert "VERSION: bump for 23.3.0" +- docs: add release notes for 23.3.0 +- Revert "docs: add release notes for 23.3.0" + +Erico Nunes (10): + +- lima/ppir: don't optimize loads with different block successors +- lima/ppir: convert to nir_legacy +- lima/gpir: switch to register intrinsics +- egl/drm: fix EGL_EXT_buffer_age with gbm contexts +- lima: fix plbu block stride calculation +- ci: disable lima LAVA lab for maintance +- Revert "ci: disable lima LAVA lab for maintance" +- v3dv: allow headless device without display device +- Revert "ci/lima: farm is down, disable for now" +- v3dv: Rework to remove drm authentication for wsi + +Erik Faye-Lund (30): + +- meson: report with_glvnd in summary +- docs: upgrade bootstrap to 5.3.1 +- docs: expand mobile-menu without js +- panfrost: delete stale editorconfig file +- docs/panfrost: link to lima +- docs/panfrost: use code-blocks with wrapping for long blocks +- docs/panfrost: use math-role to denote powers of two +- docs: fix linkcheck +- docs: update a few links to https +- docs: update anchor for link +- docs: update link to git-wiki +- docs: link to upstream etnaviv +- docs: apply some trivial redirects +- docs: use doc-role when linking to lists article +- docs: keep up with intels ever-moving documentation +- docs: mark some redirects as allowed +- docs: only link to old docs from html +- docs: use html_static_path for static files +- ci/etnaviv: update ci expectation +- ci/etnaviv: allow failure on failing test +- zink: fix wording of warning +- ci/etnaviv: move failure to flake +- meson: add wayland-protocols from meson wrapdb +- util/xmlconfig: add an env-var for overriding drirc search dir +- meson: add src/util to the drirc search path +- docs/relnotes: remove cruft from end of lines +- docs/ci: escape at-symbols +- docs/relnotes: escape some at-symbols +- bin/gen_release_notes: escape at-symbols +- panfrost: use perf_debug instead of open-coding + +Faith Ekstrand (809): + +- nv50/ir: Convert to new-style NIR registers +- nv50/ir: Support vector movs +- intel/fs: Add support for new-style registers +- intel/vec4: Assume get_nir_dest() provides a sane write-mask +- intel/vec4: Add support for new-style registers +- intel: Switch to intrinsic-based registers +- intel/fs: Drop support for nir_register +- intel/vec4: Drop support for nir_register +- anv,hasvk,iris: sampler_prog_key::swizzles is only used on crocus +- nir: Properly handle divergence for load_reg +- nir/trivialize: Maintain divergence information +- nir/trivialize: Trivialize cross-block loads +- vc4: Convert to new-style NIR registers +- nir/schedule: Support load/store_reg +- broadcom/compiler: Convert to new-style NIR registers +- intel/fs: Use write masks from store_reg intrinsics +- intel/fs: Rework the overlapping mov/vec case +- intel/fs: Assume NIR is in SSA form +- nir: Add a backend_flags field to nir_tex_instr +- intel/fs: Add a parameter to speed up register spilling +- nir/builder: Allow tex helpers on image types +- nir/builder: Add a nir_txs_deref() helper +- vulkan: Add a core vk_buffer_view struct +- vulkan: Add a more direct way to use a NIR shader +- vulkan: Add a vk_query_pool base object +- vulkan: Add common vkCmdBegin/EndQuery wrappers +- vulkan/format: Add the remaining 1-plane YCbCr formats +- vulkan: Add a core vk_sampler struct +- nv50/nir: Lower to scratch AFTER optimization +- nouveau: Allow GLSL_SAMPLER_DIM_SUBPASS* +- nouveau/nir: Implement support for compact arrays +- nouveau/codegen: Handle/indirect goes before sample index +- nouveau/codegen: Use a NULL format for PIPE_FORMAT_NONE for images +- nouveau/codegen: Don't convertSurfaceFormat for unknown formats +- nv50/ir: Run nir_divergence_analysis before out-of-SSA +- anv: Use vk_sampler +- anv: Use vk_buffer_view +- vulkan: Add init/finish helpers for vk_query_pool +- anv: Use vk_query_pool +- anv: Use the common versions of vkBegin/EndQuery() +- nir/builder: Don't assume we have compiler options +- Revert "mesa, compiler: Move gl_texture_index to glsl_types.h" +- Revert "compiler: Combine duplicated implementation of is_gl_identifier into glsl_types.h" +- vulkan: Use VkBufferUsageFlags2 in vk_buffer +- clang-format: Set ColumnLimit to 78 +- nvk: Implement EnumerateInstanceVersion +- nvk: Add stub implementations of VkImage and VkImageView +- nvk: Add stub implementation of VkSampler +- nvk: Add a stub implementation of VkBuffer +- nvk: Implement VkDescriptorSetLayout +- nvk: Implement VkPipelineLayout +- nvk: Add initial descriptor set lowering +- nvk: Implement vkUpdateDescriptorSets +- nvk: Expose nvk_descriptor_stride_align_for_type +- nvk: Re-format descriptor set layouts +- nvk: Re-format pipeline layouts +- nvk: Re-format descriptor sets some more +- nvk/buffer: Take an offset in nvk_buffer_address +- nvk/buffer: Add a push_buffer_ref helper +- nvk/copy: Use nvk_buffer_address in CmdCopyBuffer +- nvk/image: Add image address helpers +- nvk/copy: Use nvk_image_base_address() +- nvk: Add an nvk_device_physical helper +- nvk: Add a skeleton for pipelines +- nvk: Re-arrange nvk_descriptor_set.h a bit +- nvk: Reformat nvk_nir_lower_descriptors +- nvk: Add a couple descriptor set address helpers +- nvk: Move nvk_cmd_pool cast definitions +- nvk: Rework whitespace in nvk_cmd_buffer.c +- nvk: Add a root descriptor table +- nvk: Fetch descriptor set addresses from the root table +- nvk: Re-arrange nir_lower_explicit_io a bit +- nvk: Lower load_global_constant_offset +- nvk: Drop image_view_init +- nvk: Stop returning VK_ERROR_FORMAT_NOT_SUPPORTED for non-blitable +- nvk: Allow R32_UINT +- nvk: Mark nvk_push_descriptor_set_ref() inline +- nvk: Add a descriptor table data structure +- nvk: Copy in the nouveau TIC format table +- nvk/image_view: Reformat and fix Create/DestroyImageView +- nvk: Add an image descriptor table to the device +- nvk: Fill out TIC table entries for image views +- nvk: Set b->cursor when lowering image intrinsics +- nvk: Unify descriptor loading in lower_descriptors +- nvk: Re-format nvk_image_view.h a bit +- nvk: Re-format nvk_buffer.c a bit +- nvk: Add a stub implementation of buffer views +- nvk: Make texture descriptors a bit more acceptable to codegen +- nvk: GART os host-cache-coherent +- nvk: Reserve a null image descriptor +- nvk: Rework descriptor writes +- nouveau: Add stubs for an image layout library called NIL +- nil: Create images +- nil: Add the TIC format table from nouveau +- nil: Add a nil_view and code to fill out TIC entries +- nvk: Add an nvk_get_format helper +- nvk: Use helpers for push_ref +- nvk: Align arguments consistently in copy/blit code +- nvk: Move Fill/UpdateBuffer to nvk_cmd_copy +- Revert "nvk: Stop returning VK_ERROR_FORMAT_NOT_SUPPORTED for non-blitable" +- nvk: Manually offset for array layers in copy/blit +- nvk: Convert to using NIL for image layout +- nvk: Re-indent image entrypoints +- nvk: Implement VkGetImageSubresourceLyout +- nvk: Reset and properly clean up command buffer upload areas +- nvk: Rework format features queries +- nvk: Add a more competent GetPhysicalDeviceImageFormatProperties +- nvk: Support compressed images in copy commands +- nvk: Drop vk_sync BO refs after push_submit +- nil: Drop miptail support for now +- nil: Don't minify image dimensions when setting up TIC +- nil: Refactor TIC image extent setup +- nil: Fix image array layer alignments +- nvk: Teture pool sizes are maximums not sizes +- nvk: Re-format nvk_sampler.c +- nvk: Implement samplers +- nil: Add a helper for filling out buffer TIC entries +- nvk: Move is_storage_image_format to nvk_format.c +- nvk: Implement buffer views +- nvk: Advertise KHR_dedicated_allocation +- nvk: Use the correct root descriptor table size for CmdDispatch +- nvk: Add support for dynamic buffers +- nvk: Better advertise image format features +- nvk: Advertise descriptor array indexing +- nvk: Advertise non-zero descriptor set limits +- nvk: Use a descriptor type instead of a hand-rolled thing +- nvk: Handle cube storage images properly +- nvk: Load the requested descriptor size +- nvk: Implement push constants +- nvk: Properly indent a comment +- nvk: Fix descriptor offset alignment +- nvk: Use a switch for descriptor types in load_descriptor +- nvk: Support inline uniform blocks +- nvk: Delete the storage TIC in nvk_image_view_destroy +- nvk: Assert that we don't double-free descriptors +- nvk: Initial vkCmdClearImage support +- nvk: Unconditionally zero image format properties +- nvk: No-op sparse image format properties +- nvk: Advertise minUniformBufferOffsetAlignment +- nvk: Rework OOM handling for descriptor pools +- nvk: Bind immutable samplers on descriptor set creation +- nvk: Padd shader BOs by 4K to avoid I-cache overflow +- nvk: Include nvk_private.h in everything +- nvk: Make image/buffer address helpers const +- nouveau/push: Add a P_INLINE_FLOAT helper +- nvk: Init WSI after setting up supported_sync_types +- nouveau/parser: Fix an integer overflow and a typo +- nouveau/parser: Properly dump most arrays used by 3D +- nouveau/parser: Better dump float data +- nouveau/parser: Handle arrays properly in P_IMMD() +- nouveau/push: Make P_IMMD more versatile +- nouveau: Null terminate the debug flag list +- nouveau: Generate 3D headers +- nvk: Add graphics state to command buffers +- nvk: Split pipeline binding into helpers +- nvk: Switch to vk_pipeline_shader_stage_to_nir +- nvk: Don't free the NIR in nvk_compile_nir +- nvk: Add an nvk_shader_address helper +- nvk: Free pipeline shader BOs +- nvk: Expose pipeline alloc/free functions +- nvk: Make shader_upload take an nvk_device +- nvk/shader: Assign I/O locations and gather info +- nvk/shader: Populate headers for vertex and fragment shaders +- nvk: Add a nvk_cmd_buffer_device() helper +- nvk: Import 3D context init code from nouveau +- nil/format: Add helpers for render formats +- nvk: Add boilerplate for Begin/EndRendering +- nvk: Misc. additional state setup +- nvk: Emit dynamic graphics state +- nvk: Implement push constants and descriptors for graphics +- nouveau: Add CPU push buffers +- nvk: Graphics pipelines +- nvk: Implement vkCmdDraw() +- nvk: Color attachments clears via image clears +- vulkan/meta: Add the start of a meta framework +- vulkan/meta: Add an object tracking list +- vulkan/meta: Add a concept of rect pipelines +- vulkan/meta: Implement attachment clears +- vulkan/meta: Implement start-of-rendering clears +- vulkan/meta: Add implementations of Clear*Image +- nvk: Add an attachment format even for secondaries +- nvk: Add an addr field to nvk_buffer +- nvk: Expose a bind_vertex_buffer helper +- nvk: Use vk_meta for CmdClearAttachments +- nvk: Stop using vk_cmd_set_dynamic_graphics_state in meta_end() +- nvk: Enable all the dynamic state features +- nouveau: Fix pushbuf ref reset for user command buffers +- nvk: add linear image creation support. +- nvk: Use max alignment for descriptor pool sizes +- nil: Switch to using the new headers for TIC entries +- nvk: Use meta for CmdClear*Image +- nvk: Zero client memory objects +- nvk: Bind texture and sampler header pools for 3D +- nvk: Use the new headers for samplers +- nvk: Implement nir_intrinsic_load_frag_coord +- vulkan/meta_clear: Populate VkRenderingInfo::renderArea +- nvk: Don't assert when there are no attachments +- nvk: Track and reference all device memory objects +- vulkan: Allow scissors or viewports to be set without counts +- nvk/copy: Mape bpp part of nouveau_copy_buffer +- nvk: Implement copies for D24_UNORM_S8_UINT images +- nvk: Drop sample locations structs +- nvk/meta: Save and restore VI state +- nvk: Re-initialize dynamic_graphics_state.vi when recycling +- nvk: Move the vertex format table into nvk_format.h +- nvk: Advertise vertex buffer format featues +- nvk: Clean up try_create_physical_device error handling +- nouveau/parser: Dump more fields as float +- nvk: Depth bounds need fui() +- nouveau: Add class information to nouveau_ws_device +- nil: Properly depend on nouveau winsys and nvidia-headers +- nil: Use nvidia headers for texture format enums +- nil: Use the nvidia headers for render target format enums +- nil: Use nvidia headers for ZS format enums +- nil: Rename rt to czt in the format info struct +- nil: Rename rendering to color_target +- nil: Re-introduce the format capabilities +- nil: Add more format support helpers +- nvk: Advertise more format features +- nvk: Clear dynamic state dirty after flushing it all +- vulkan/meta: Make stencil reference dynamic for clears +- nvk: Depth buffers don't allow Z-tiling +- nvk: Disable sparse Z on Maxwell+ +- nil: Compute PTE kinds and tile modes for images +- nouveau: Add a function to allocate a tiled buffer +- nvk: Add internal helpers for device memory allocation +- nvk: Do internal dedicated allocations for ZS images +- nvk: Fix depth/stencil render pass clears +- nvk: Fix viewport Z scale +- nvk: Enable two-sided stencil +- nvk: Flip the front-face setting +- nvk: Advertise depth/stencil support +- nvk: Don't destroy NULL descriptor pool BOs +- nvk: Call nir_lower_input_attachments +- nvk: Set GEOMETRY_SHADER_SELECTS_LAYER properly +- nvk: Return OUT_OF_DEVICE_MEMORY if bo_new fails +- nil: Add a PTE kind for Z32_FLOAT +- nvk: Add nvk_queue_init/finish() helpers +- nvk: Align descriptor buffers to NVK_MIN_UBO_ALIGNMENT +- nvk: Re-flow a couple function prototypes +- nvk: Assert samples == 1 +- nvk: Allocate descriptors for input attachments +- nvk: Wire up early z and post depth coverage +- nvk: Save/restore push constants around meta ops +- nouveau/parser: Add array and float tags for clear values +- nvk: Use hardware clears for attachment clears +- nvk: Add image_view_init/finish functions +- nvk: Implement vkCmdClear*Image directly +- nvk: Use a UINT format to clear non-renderable images +- nvk: Don't advertise tiling on non-power-of-two formats +- nvk: Fix max anisotropy +- nvk: Assert on CmdExecuteCommands +- nvk: VkSamplerCreateInfo::mipLodBias is signed +- nvk: Fix border color alpha +- nil/format: Depth/stencil formats appear as red +- nil: Fix max mip level +- nil: Fix nonnormalized coordinates +- nvk: Set up clip and cull distances +- nvk: Fix dynamic buffer descriptor copies +- nvk: Inline nouveau_copy_linear +- nvk/copy: Rename push to p +- nvk/blit: Rename push to p +- nvk/dispatch: Rename push to p +- nvk: Drop most buffer tracking +- nvk: Rework TLS/SLM and image/sampler table handling +- nvk: Invalidate texture header and sampler caches each submit +- nvk/sampler: Free descriptor table entries +- nvk: Rework nvk_descriptor_table_add/remove +- nvk: Implement descriptor table growing +- nvk: Zero unused descriptors +- nvk: Add some asserts for nv50 compiler image restrictions +- nvk: Update to the new command buffer infrastructure +- nvk: Split nvk_queue into its own file +- nvk: Start every command buffer with a nop +- nvk: Initialize fixed draw/default state once +- nouveau/parser: Convert to mako +- nouveau/parser: Use more idiomatic python +- nouveau/parser: Put the dump helpers in C files +- nvk: Use f for extension features +- nvk: Drop a TODO +- nvk: Use VK_IMAGE_USAGE_*_ATTACHMENT_BIT for image clears +- nvk: Increase the graphics pipeline push space +- nil: Don't claim texture support for 2-bit SNORM +- nouveau/push: Fix a void pointer arithmetic bug +- nouveau/parser: Add more arrays +- nouveau/mme: Add basic structures for the Turing+ MME +- nouveau/mme: Add isaspec XML for the Turing+ MME +- nouveau/mme: Add an assembler and disassembler for the Turring+ MME +- nouveau/mme: Add a builder for the Turing+ MME +- nouveau/mme: Add a tiny simulator for the Turing+ MME +- nouveau/mme: Add an isaspec-based dumper +- nouveau/mme: Make the winsys headers C++ safe +- nouveau/mme: Add unit tests for the Turing+ MME simulator +- nvk: Add MME infrastructure +- nvk: Use MME for clears +- nouveau/mme: Add helper macros for setting fields +- nvk: Use MME for vkCmdDraw[Indexed]() +- nvk: Implement vkCmdDraw[Indexed]Indirect() +- nvk: Use p for the nouveau_ws_push_buffer in zero_vram +- nouveau: Add an nv_push struct +- nouveau: Rename the fields of vk_push +- nouveau: Move nv_push and helpers to their own header +- nouveau/parser: Take a FILE* in DUMP_*_MTHD_DATA +- nouveau: Move push validate to nv_push.c +- nouveau: Move push dumping to nv_push.c +- nvk: Use nv_push directly for graphics pipelines +- nouveau: Add a nouveau_ws_bo_new_mapped helper +- nvk: Use bo_new_mapped for the zero page +- nvk: Always allocate empty_push +- nvk: Move queue_sumbit to nvk_queue_drm_nouveau.c +- nvk: Submit pushbufs directly +- nvk: Use a regular BO for the empty push +- nvk: Use a regular BO for the queue state push +- nvk: Add an nvk_queue_submit_simple helper +- nvk: Initialize the queue later in device setup +- nvk: Use submit_simple for draw state init +- nvk: Use queue_submit_simple for zero_vram +- nvk: Break nvk_cmd_pool into its own file +- nvk: Use cmd instead of cmd_buffer +- nvk: Add BO recycling to the command pool +- nvk: Return VkResult from nvk_cmd_buffer_upload_alloc +- nvk: memcpy root descriptors for compute instead of doing a DMA +- nvk: Fully populate QMDs before uploading +- nvk: Constant buffer alignment is actually 64B +- nvk: Rework side-band data upload +- nvk: Add an nvk_cmd_buffer_push helper +- nvk: Add an nvk_cmd_buffer_ref_bo helper +- nvk: Allocate upload buffers from the command pool +- nvk: Use nvk_cmd_bo for push bufs +- nvk: Implement vkCmdExecuteCommands() +- nvk: Remove remaining references to nouveau_push.h +- nouveau: Use DRM interfaces directly in MME tests +- nouveau: Drop nouveau_ws_push +- nvk: Re-indent vk_instance.c +- nvk: Use vk_object_zalloc/free for descriptor pools/sets +- nvk: Fix up whitespace in nvk_descriptor_set.c +- nvk: Implement VK_KHR_push_descriptor +- nvk: Reference descriptor set layouts in the sets themselves +- nvk: Embed a nv_device_info in nvk_physical_device +- nvk: Add an nvk_queue_submit wrapper +- nvk: Also store the push BO map in nvk_queue_state +- nvk: Bring back push sync and dumping +- nvk: drop nvk_nir.h +- nvk: Add lowering for load_global_constant_bounded +- nvk: Properly implement robustBufferAccess +- vulkan/meta: Add key types +- vulkan/meta: Add a helper for image view types +- vulkan/meta: Add a create_sampler helper +- vulkan/meta: Fixes for clear +- vulkan/meta: Implement vkCmdBlitImage() +- nvk: Support load_layer_id +- nvk/meta: Save/restore descriptor set 0 +- nvk: Use meta for doing blits with the 3D hardware +- nvk: WFI in pipeline barriers +- util/vma: Allow initializing zero-size heaps +- nvk: Rework nvk_queue_submit_simple() +- nvk: Add a heap data structure +- nvk: Return a VkResult from nvk_shader_upload() +- nvk: Add a shader heap to nvk_device +- nvk: Allocate shaders from a heap +- nvk: Rework whitespace in nvk_device_memory.c +- nvk: Style fixes in nvk_physical_device.c +- nvk: Reset semaphore syncs on wait +- nvk/wsi: Style fixes +- nvk/wsi: Use the common present implementation +- nouveau/parser: Parse all fields in each method +- nvk: Add a query pool object +- nvk: Implement timestamp queries +- nvk: Implement pipeline statistics and occlusion queries +- nouveau/mme: Allow ZERO as the destinatio nof mme_load_to +- nouveau/mme: Assert on OOB registers +- nouveau/mme: Add support for freeing registers +- nouveau/mme: Add a couple helpers for working 64-bit addresses +- nouveau/mme: Add a helper for MME_DMA_READ_FIFOED +- nvk: Use mme_tu104_read_fifoed() +- nvk: Implement vkCmdCopyQueryPoolResults() +- nvk: Handle large command buffer uploads better +- nvk: Use a normal DMA for CmdUpdateBuffer +- nouveau/parser: Handle 6F methods +- nvk: Use mme_load_addr64() +- nvk: Use poll for BO waits +- nvk: Events +- nvk: Don't crash if we fail to allocate a push BO +- nvk: Stop leaking command pool BOs +- nvk: Enable VK_KHR_create_renderpass2 +- nvk: Advertise VK_KHR_imageless_framebuffer +- nvk: Flush the current pushbuf before allocating a new one +- nvk: Advertise VK_KHR_separate_depth_stencil_layout +- nvk: Tell WSI we don't support legacy scanout +- nouveau: Add PCI information to nv_device_info +- nvk: Implement VK_EXT_pci_bus_info +- nvk: Bind 3D images as 3D for clears +- nvk: Support copies between 3D and 2D images +- nil: Add a helper for getting 2D views of 3D images +- nvk: Support 2D views of 3D images +- nvk: Advertise VK_KHR_maintenance1 +- nvk: Use 2D array views for 3D storage images +- nil: Fix include guards in nil_image.h +- nvk: Advertise custom border color features +- vulkan: Add a helper for swizzling color values +- nvk: Implement VK_EXT_border_color_swizzle +- nvk: Advertise VK_EXT_extended_dynamic_state3 +- nvk: Move more states to dynamic +- nvk: Advertise VK_KHR_storage_buffer_storage_class +- nvk: Add a helper for pushing descriptors +- nouveau/headers: Add generated headers to dependencies +- nvk: Implement VK_EXT/KHR_buffer_device_address +- nvk: Break the guts of CmdDispatch into a helper +- nvk: Implement DispatchIndirect +- nouveau/mme: Add a mul64 helper +- nvk: Implement CS invocations statistics queries +- nil: Use ONE for the anixotropic coarse spread function +- nil: Properly support MSAA +- nil: Add an offset4d struct and some helpers +- nouveau/parser: Sort METHOD_ARRAY_SIZES +- nouveau/parser: Handle SET_ANTI_ALIAS_SAMPLE_POSITIONS +- nvk: Stop asserting on MSAA +- nvk: Handle zero color attachments better +- nvk: Handle multisampled render targets properly +- nvk: Support copies of MSAA images +- nvk: Use the right view format for stencil texturing +- nvk: Pass through a shader key for fragment shaders and MSAA +- nvk: Set correct multisample regs for graphics pipelines +- nvk: Stop creating a new upload BO every time +- nvk: Fill out sample locations on Maxwell B+ +- vulkan/meta: Bind whole LODs of 3D blit destinations +- vulkan/meta: Add a helper for building texture ops +- vulkan/meta: Break the guts of blit into a helper +- vulkan/meta: Support writing stencil as iterative discard +- vulkan/meta: Rename vk_meta_blit.c to vk_meta_blit_resolve.c +- vulkan/meta: Add support for MSAA resolves +- nvk/meta: Fix restore for descriptor set 0 +- nvk: Use meta for MSAA resolves +- nvk: Replace gl_SamplePosition with fract(gl_FragCoord.xy) +- nvk: Stop advertising higher framebufferNoAttachmentsSampleCounts +- nvk: Advertise MSAA via image format properties +- nvk: Advertise VK_KHR_depth_stencil_resolve +- nvk: Assert that descriptor buffer access stays in-bounds +- nvk: Add a bo size to nvk_descriptor_set +- nvk/format: Style fix for VkFormatProperties3KHR +- nvk: Support VK_FORMAT_B10G11R11_UFLOAT_PACK32 for vertex buffers +- nvk: Add a devenv ICD json file +- nvk: Advertise EXT_vertex_attribute_divisor +- nvk: Lower image_size to txs +- nvk: Fix a comment +- nvk: Add an nvk_buffer_addr_range helper +- nvk: Use nvk_buffer_addr_range for buffer descriptors +- nvk: Re-order Vulkan 1.0 feature bits +- nvk: Enable inheritedQueries +- nvk: Enable VK_EXT_provoking_vertex +- nvk: Advertise samplerMirrorClampToEdge via 1.2 features +- nvk: Advertise VK_KHR_bind_memory2 +- nvk: Enable KHR_dynamic_rendering +- nvk: Advertise KHR_uniform_buffer_standard_layout +- nvk: Advertise EXT_index_type_uint8 +- nvk: Advertise VK_EXT_separate_stencil_usage +- nvk: Capitalize NVK in user exposed strings +- nvk: Rename grid_size to group_count +- nvk: Lower load_num_workgroups ourselves +- nvk: Drop block_size from the root descriptor table +- nvk: Add a helper for loading resource_index-based descriptors +- nvk: Set maxMemoryAllocationCount +- nouveau/winsys: Take a drmDevicePtr in nouveau_ws_device_new() +- nouveau/winsys: Add an info to nouveau_ws_device +- nouveau/winsys: Move device type into nv_device_info +- nouveau/nil: Take an nv_device_info for image functions +- nouveau/nil: Use nv_device_info for format queries +- nouveau/mme: Invoke SET_OBJECT in the tests +- nouveau/mme: Make alu_op_to_str static +- nouveau/mme: Move mme_value into its own header +- nouveau/mme: Add a mme_reg_alloc struct +- nouveau/mme: Add an intermediate MME_ALU_OP enum +- nouveau/mme: Add an intermediate MME_CMP_OP enum +- nouveau/mme: Use mme_mov() for temp copies of register IMM32 sources +- nouveau/mme: Make helpers less Turing specific +- nouveau/mme: Break the Turing builder guts into a separate header +- nouveau/mme: Move the guts of mme_merge_to() into mme_tu104_builder.c +- nouveau/mme: Move the guts of mme_state_arr_to() into mme_tu104_builder.c +- nouveau/mme: Drop the implicit_imm parameter from mme_alu_to() +- nouveau/mme: Move the cf_stack struct to mme_builder.h +- nouveau/mme: Prepare the builder for multiple GPU generations +- nouveau/mme: Take an nv_device_info in mme_builder_init +- Support immediates in MERGE +- Add add immediate optimizations +- nvk: Add support for contiguous heaps to nvk_heap +- nvk: Use a contiguous shader heap pre-Volta +- nvk: Disable indirect draw/dispatch and query copy MMEs for now +- nvk: Free a couple regs in nvk_mme_build_draw_*() +- nvk: Properly align root descriptor tables for pre-Pascal +- nvk: Compile all NIR before running codegen +- vulkan/meta: Insert a geometry shader when needed +- nvk: Use a GS for layerered rendering pre-MaxwellB +- nvk: Handle zero-size index and vertex buffers pre-Turing +- nvk: Cosmetic clean-ups to Create/DestroyDevice +- nil: Only choose a PTE kind for tiled images +- nouveau/mme: Fix is_int18 for negative numbers +- nouveau/mme: Don't swap x and y in mme_fermi_merge_to() +- nouveau/mme: Take a const nv_device_info in mme_builder_init +- nouveau/mme: Unify some of the test framework +- nouveau/mme: Add some generic builder tests +- nouveau/mme: Add builder tests for SUB +- nouveau/mme: Use a uint32_t for size in mme_fermi_bfe() +- nouveau/mme: nouveau/mme: Add builder tests for SLL and SRL +- nvk/drm: Take a byte offset/range in push_add_push +- nvk: Rework nvk_cmd_push a bit +- nvk: Add a helper for pushing indirect data +- nvk: Make some MME builder names more consistent +- nouveau/mme: Don't allow WaW dependencies in the same Turing instruction +- nvk: Reduce register pressure in nvk_mme_build_draw*() +- nouveau/push: Add an NV_PUSH_MAX_COUNT #define +- nvk: Implement Draw*Indirect on pre-Turing +- vulkan/meta: Use the new NIR texture helpers +- nvk: Add a build test for MMEs +- nvk: Don't over-size push descriptor sets +- nvk: Return VK_ERROR_INCOMPATIBLE_DRIVER if the PCI vendor isn't NVIDIA +- nvk: Bump init context batch size +- nouveau/mme: Fix nested while instructions on Turing+ +- nouveau/mme: Add a helper to dump instructions +- nvk: Rework extension enables +- nvk: Rework features enables +- nvk: Advertise shaderImageGatherExtended +- nouveau/mme: Add a bfe helper +- nouveau/mme: Ensure that zero-initizlied mme_value is ZERO +- nvk: De-duplicate MME code for setting draw params +- nvk: Clamp viewport clip to max range +- nvk: Use the same lock for the submit and the memory objects list +- nvk: Advertise ICD/loader interface version 4 +- nvk: Add instace WSI entrypoints +- nouveau/mme: Use ADD for ine with an immediate +- nouveau/mme: Fix while loops pre-Turing +- nvk: Add begin to mme_scratch +- nvk: Use the new load/store_scratch helpers for DRAW_PAD_DW +- nouveau/mme: Add a helper for re-allocating registers +- nvk: Rework spill helpers and DRAW_COUNT spilling +- nvk: Spill DRAW_IDX pre-Turing +- nvk: Break the inner MME draw loop into a helper +- nvk: Increase the push runout to 512 dwords +- nil: Add a nil_image_for_level helper +- nil: Add an image_level_as_uncompressed helper +- nvk: Implement uncompressed views of compressed images +- nvk: Set pointClippingBehavior +- nvk: Expose VK_KHR_maintenance2 +- nvk: Add a separate #define for SSBO alignment +- nvk: Set spirv_to_nir_options::min_*_alignment +- nvk: Use vk_device_memory +- nvk: Implement VK_KHR_map_memory2 +- nvk: Sort SPIR-V caps +- nvk: Advertise EXT_shader_viewport_index_layer on MaxwellB+ +- nvk: Only use view_id for layer in multiview +- nvk/heap: Set the right pitch for heap resize copies +- nvk: Advertise shaderStorageImageReadWithoutFormat +- nvk: Fix the NO_PREFETCH assert for CmdDrawIndirect +- nvk: Advertise KHR_spirv_1_4 +- nvk: s/device/dev in nvk_image.c +- nvk: Add helpers for binding image planes +- nvk: Take an nvk_image_plane in nouveau_copy_rect_image +- nvk: Use the max descriptor alignemtn in GetDescriptorSetLayoutSupport +- nvk: Use NVIDIA_VENDOR_ID in pdev try_create() +- nvk: Use abbreviated names in nvk_device_memory.c +- nvk: Add device and driver UUIDs +- nvk: Add external memory queries +- nvk: Dedicated allocations override internal +- nvk: Require dedicated allocations for external images +- nouveau/winsys: Add dma-buf import support +- nvk: Support dma-buf import +- nvk: Support dma-buf export +- nvk: Enable external memory extensions +- nvk: Reformat nvk_buffer.c +- nvk: Add a buffer alignment helper +- nvk: Add an addr field to nvk_image_plane +- nvk: Use canonical variable names in nvk_physical_device.c +- nvk: Use canonical variable names in nvk_shader.c +- nvk: Use canonical variable names in nvk_bo_sync.c +- nvk: Use canonical variable names in nvk_sampler.c +- nvk: Drop nvk_physical_device::instance +- nvk: Only advertise EXT_pci_bus_info on discrete GPUs +- nouveau: Put PCI info in a pci substruct in nv_device_info +- nouveau: Stop using hex for SM numbers +- nvk: Set deviceType based on nv_device_info::type +- nouveau: Move more stuff into nv_device_info +- nouveau: Move gart_size to nv_device_info +- nvk: Use nv_device_info for class checks +- nvk: Rename nvk_device::ctx to ws_ctx +- nvk: Add a ws_dev to nvk_device and use it +- nvk: Move the winsys device to nvk_device +- nvk: Don't enumerate pre-Kepler GPUs +- nvk: Implement VK_EXT_physical_device_drm +- nvk: Require an environment variable for poorly tested hardware +- nvk: Use the new core vk_sampler struct +- Revert "vulkan: Allow scissors or viewports to be set without counts" +- vulkan/meta: Add a get_pipeline_layout helper +- vulkan/meta: Use vk_meta_get_pipeline_layout in blit/resolve +- nvk: Bind 3D depth/stencil images as 2D arrays +- nvk: Flush more state on VI_BINDINGS_VALID dirty +- nvk: Don't skip zero-size bindings in GetDescriptorSetLayoutSupport +- docs: Add a docs page for NVK +- docs: Add NVK to features.txt +- docs/relnotes: Stick something about NVK in new_features.txt +- nouveau: Drop GART size from nv_device_info +- nil: Add a nil_image_level_extent_px() helper +- nvk: Use the new NIL helper for image level extents for copies +- nvk: Improve image format properties and limits +- nvk: Rework multi-plane format features a bit +- nvk: Use nvk_root_descriptor_offset for drawInfoBase +- nvk: Add a root_desc_addr to the root descriptor table +- nvk: Add support for variable pointers +- nvk: Enable the SPIR-V DeviceGroup capability +- nvk: Separate the MME query copy code out a bit +- nvk: Implement CopyQueryPoolResults with a compute shader +- nvk: Misc. style nits +- nvk: Rework memory requirements to handle aspects correctly +- nvk: Implement the maintenance5 image layout queries +- nvk: Use VkBufferUsageFlags2 +- nvk: Implement CmdBindIndexBuffer2KHR +- nvk: Implement GetRenderingAreaGranularityKHR +- nvk: Decorate CmdBegin/EndRendering entrypoints +- nouveau: Move shader topology info to nv_device_info +- drm-uapi: Import nouveau_drm.h +- nouveau/winsys: Use the imported nouveau_drm.h headers +- nvk: Use the imported nouveau_drm.h headers +- nouveau/shim: Use the imported nouveau_drm.h headers +- nouveau/mme: Support the new UAPI +- nvk: Use an empty EXEC for the empty submit case +- nouveau/winsys: Allow nouveau_ws_device_new() without VM_BIND +- nvk: Print an error message if VM_BIND support is missing +- nvk: Enable the new UAPI +- nvk: Use more consistent device variable names +- nvk: Call nir_lower_int64 +- nir/gl: Move glsl_type::sampler_target() into a helper in its one caller +- nvk: Remove plane sources from tex instructions +- nvk: Use common physical device properties +- nv50/ir: Rework conversions for texture array indices +- clang-format: Add nir_foreach_reg_* +- clang-format: nir_foreach_src is not a foreach macro +- clang-format: Set the default ColumnLimit to 0 +- nir: Re-align a couple enums and add clang-format comments +- nir: Don't clang-format const_value helpers +- nir: Don't clang-format a couple typedefs +- nir: Don't clang-format debug print setup +- nir: More manual formatting +- nir: Pretty format type mapping helpers +- nir: Wrap pass macros in braces +- nir: Add a do to the do/while in nir_const_value_t_array() +- nir: Add a .clang-format file +- nir: clang-format src/compiler/nir/\*.[ch] +- nvk: Don't use nir_ssa_for_src() +- nir: Drop most instances of nir_ssa_dest_init() +- nir: Drop more instances of nir_ssa_dest_init() +- nir/clone: Clone nir_def nor nir_dest +- nir/serialize: [De]serialize nir_def nor nir_dest +- nir: Drop nir_ssa_dest_init() +- nir: Drop nir_ssa_dest_init_for_type() +- nir: nir_foreach_ssa_def() -> nir_foreach_def() +- st,zink,sfn: Use nir_foreach_def instead of nir_foreach_dest +- dxil: Use nir_foreach_def() instead of nir_foreach_dest() +- nir/from_ssa: Use nir_foreach_def() instead of nir_foreach_dest() +- nir: Drop nir_foreach_dest() +- intel/vec4: Stop passing around nir_dest +- intel/fs: Stop passing around nir_dest and nir_alu_dest +- broadcom: Stop using nir_dest directly +- vc4: Stop passing around nir_dest +- nir,ntt,a2xx,lima: Stop using nir_dest directly +- lima: Stop using nir_dest directly +- etnaviv: Stop passing around nir_dest +- r600/sfn: Stop passing around nir_dest and nir_alu_dest +- nv50/ir: Stop passing around nir_dest and nir_alu_dest +- nir/gather_types: Stop passing around nir_dest +- nir/dce: Stop passing around nir_dest +- nir/propagate_invariant: Stop passing around nir_dest +- nir/validate: Replace all dest validation with validate_def +- nir/print: Replace all dest printing with print_def +- nir: Get rid of nir_dest_bit_size() +- nir: Get rid of nir_dest_num_components() +- nir: Get rid of nir_dest_is_divergent() +- nir: Drop nir_alu_dest +- nir: Drop nir_dest +- util/format: 8-bit interleaved YUV formats are UNORM +- gallivm: Support G8B8_G8R8_422_UNORM and B8G8_R8G8_422_UNORM +- blorp: Use R8G8_UINT for YCRCB_* formats with CCS +- anv: Disable CCS_E for ISL_FORMAT_YCRCB_* +- vulkan/format: Use correct swizzle for 1-plane YCbCr formats +- gallivm: Drop the Vulkan YUV format hacks +- nir: Rename nir_instr_type_ssa_undef to nir_instr_type_undef +- nir s/nir_get_ssa_scalar/nir_get_scalar/ +- nir: s/live_ssa_def/live_def/ +- nir: s/nir_instr_ssa_def/nir_instr_def/ +- nir: Rework nir_scalar_chase_movs a bit +- nir: Fix nir_op_mov handling in nir_collect_src_uniforms +- nir: Handle nir_op_mov properly in opt_shrink_vectors +- nir: Don't handle nir_op_mov in get_undef_mask in opt_undef +- nir: Clean up nir_op_is_vec() and its callers +- nir/large_constants: Use nir_component_mask_t +- nir/large_constants: Add read/write_const_values helpers +- nir/opt_large_constants: Add Small constant handling +- spirv: Re-emit constants at their uses +- nir: Take a nir_def * in nir_tex_instr_add_src() +- nir: Take a nir_def * in nir_phi_instr_add_src() +- nir/opt_undef: Don't rewrite a bcsel to mov +- nir: Add a nir_instr_clear_src() helper and use it +- nir: Add and use a nir_instr_init_src() helper +- nir: Drop nir_if_rewrite_condition() +- nir: Drop most uses of nir_instr_rewrite_src_ssa() +- nir: Drop nir_instr_rewrite_src_ssa() +- nir: Drop most uses if nir_instr_rewrite_src() +- nir: Drop nir_instr_rewrite_src() +- nir: Drop nir_push_if_src() +- nir: Fix metadata in nir_lower_is_helper_invocation +- nir: Use nir_shader_intrinsic_pass() a few places +- drm-uapi: Sync nouveau_drm.h +- nvk: Plumb no_prefetch through to the DRM back-end +- nouveau/mme: Fix a compile warning +- intel/isl: Rename ISL_TILING_Yf/s to ISL_TILING_SKL_Yf/s +- intel/isl: Add ICL variants of Yf and Ys tiling +- intel/isl: Implement correct tile size calculations for Ys/Yf +- intel/isl: Use the depth field of phys_level0_sa for GFX4_2D 3D surfaces +- intel/isl: Fill out the correct phys_total_extent for Ys/Yf/Tile64 +- intel/isl: Indent uncompressed surface code +- intel/isl: Support Ys, Yf & Tile64 in isl_surf_get_uncompressed_surf +- intel/isl: Support Yf/Ys tiling in surf_fill_state +- intel/isl: Support Yf/Ys tiling in emit_depth_stencil_hiz +- intel/isl: Add initial data-structure support for miptails +- intel/isl: Add support for computing offsets with miptails +- intel/isl: Support miptails in isl_surf_get_uncompressed_surf +- intel/isl: Start using miptails +- intel/isl: Disallow CCS on 3D surfaces with miptails +- intel/isl: Allow Ys tiling +- anv: Align memory VA to support for Ys, Tile64 tiled images +- nvk: Clean up includes +- nvk: Add include guards to nvk_bo_sync.h +- nvk: SPDX everything +- nouveau/nil: SPDX everything +- nouveau/mme: SPDX everything +- nvk: Don't add a dummy attachment when gl_SampleMask is written +- nvk: Set the discard bit for Z/S self-deps +- nvk: Invalidate the texture cache in PipelineBarrier +- nvk: Lower interp_at_sample to interp_at_offset +- nvk: Disable statistics around meta ops +- nvk: Clean up viewport math +- nvk: Fix depth clipping parameters +- nvk: Enable dynamic clip/clamp enable +- nvk: Set GUARDBAND_Z_SCALE_1 when Z-clipping +- r600: Use more auto-generated nir_builder helpers +- r600: Use nir_builder helpers for load/store_shared_r600 +- nvk: Re-order physical device limits +- nvk: Advertise maxMemoryAllocationCount = 4096 +- nvk: Advertise discreteQueuePriorities = 2 +- nvk: Rip out old UAPI support +- nvk/drm: Drop the push_add_push_bo() helper +- nvk/drm: Drop the push_add_bo() helper +- nvk: Drop command buffer BO tracking +- nvk: Drop memory object tracking +- nvk: Drop the device-level mutex +- nvk: Get rid of the tiled memory allocation helpers +- nvk/drm: Restructure nvk_queue_submit_drm_nouveau() +- nvk/drm: Split exec as needed for large command buffers +- nvk: Don't store the descriptor pool BO in the set +- nvk: Store a 20-bit driver_build_sha in nvk_instance +- nvk: Hook up the disk cache +- nvk: Re-structure early shader compilation a bit +- nvk: Add a default pipeline cache +- nvk: Cache NIR shaders +- nvk: Init pipelineCacheUUID +- drm-uapi: Sync nouveau_drm.h +- nvk: Take GETPARAM_EXEC_PUSH_MAX into account +- nvk: Handle zero-sized sparse buffers +- nvk: Use align() and align64() instead of ALIGN_POT +- nouveau: Generate headers for Maxwell B compute +- nvk: Add a nvk_cmd_buffer_compute_cls() helper +- nvk: Invalidate sampler/texture header caches in BeginCommandBuffer() +- nvk: Invalidate SKED caches at the top of command buffers +- nvk: Advertise more inline uniform block limits +- nvk: Emit MME_DMA_SYSMEMBAR before indirect draw/dispatch +- nvk: Set max descriptors to 2^20 for most descriptor types +- nvk: Reset descriptor pool allocator when all sets are destroyed +- nil/format: Use A for alpha blend +- nil/format: Advertise R10G10B10A2_UINT texture buffer support +- nvk: Disable depth or stencil tests when unbound +- nvk: Always emit at least one color attachment +- nvk: Improve address space and buffer size limits +- nvk: Always set pixel_min/max_Z to CLAMP +- nvk: Use nouveau_ws_bo_unmap() instead of munmap() +- nvk: Free the disk cache +- nvk: Add an nvk_shader_finish() helper +- nvk: Handle unbinding images and buffers +- nvk: Clean up the disk cache on physical device create fail path +- vulkan/wsi: Allow for larger linear images +- nvk: Add a nvk_cmd_buffer_dirty_render_pass() helper +- nvk: Re-sort device features +- nvk: Implement VK_EXT_depth_bias_control +- nvk: Advertise VK_KHR_workgroup_memory_explicit_layout +- nvk: Implement VK_EXT_image_sliced_view_of_3d +- nvk: Advertise VK_EXT_primitive_topology_list_restart +- nvk: Advertise VK_EXT_attachment_feedback_loop_layout +- features: Mark VK_EXT_attachment_feedback_loop_layout done for NVK +- nvk: Re-arrange Vulkan 1.2 features to match the header +- nvk: Advertise shaderOutputLayer and shaderOutputViewportIndex +- nvk: Enable descriptorIndexing +- nvk: Implement VK_EXT_dynamic_rendering_unused_attachments +- nir: Add a nir_ssa_def_all_uses_are_fsat() helper +- nir: Add convert_alu_types to divergence analysis +- nir/lower_tex: Add a lower_txd_clamp option +- nir: Add a load_sysval_nv intrinsic +- nir: Add NV-specific texture opcodes +- nir: Add an load_barycentric_at_offset_nv intrinsic +- nir: Add a range to most I/O intrinsics +- nir: Add NVIDIA-specific I/O intrinsics +- nir/lower_bit_size: Fix subgroup lowering for floats +- nir: add deref follower builder for casts. +- nir: Handle wildcards with casts in copy_prop_vars + +Felix DeGrood (12): + +- anv: save a shader source uint32_t hash in gfx/compute pipelines +- anv: Add Source hash field to VkPipelineExecutableStatisticKHR +- iris: save shader source sha1 in ish +- mesa: propagate shader source sha1 from gl_shader to nir_shader +- intel: use shader source hash in INTEL_MEASURE +- intel/compiler: use shader source hash in shader dump code +- anv: add fake sparse support +- anv: enable fake sparse for Elden Ring +- anv: debug messaging for sparse texture usage +- anv: fix frame count reporting in INTEL_MEASURE +- anv: set ComputeMode.PixelAsyncComputeThreadLimit = 4 +- anv: remove CS_FLUSH from query regression + +Feng Jiang (9): + +- virgl: Only PIPE_BUFFER with VIRGL_BIND_CUSTOM flag is considered busy during creation +- meson: Export winsys function symbols for target va +- frontends/va: Add slice_count to AV1 slice_parameter +- virgl/video: Add definition of virgl_av1_picture_desc +- virgl/video: Add support for AV1 decoding +- virgl/video: Enable AV1 decoding +- meson: Rename dri-vdpau.dyn to dri.dyn +- CODEOWNERS: Add \@flynnjiang for VirGL video +- meson: Move video to separate section in meson configuration summary + +Filip Gawin (1): + +- crocus: Avoid fast-clear with incompatible view + +Flora Cui (1): + +- radeonsi: limit CP DMA to skip holes in sparse bo + +Francisco Jerez (29): + +- intel/fs/ra: Define REG_CLASS_COUNT constant specifying the number of register classes. +- intel/vec4/ra: Define REG_CLASS_COUNT constant specifying the number of register classes. +- intel/compiler: Make MAX_VGRF_SIZE macro depend on devinfo and update it for Xe2. +- intel/fs/ra/xe2: Scale up register allocation granularity by 2x on Xe2+ platforms. +- intel/eu/xe2+: Fix encoding of various message descriptors for change in register size. +- intel/fs: Fix signedness of payload_node_count argument of calculate_payload_ranges(). +- intel/fs/xe2+: Fix payload node live range calculations for change in register size. +- intel/fs/xe2+: Fix grf_count in post-RA scheduling for updated register file size. +- intel/fs/xe2+: Fixes for increased accumulator register width. +- intel/fs/xe2+: Scale MAX_SAMPLER_MESSAGE_SIZE by native register size. +- intel/eu/xe2+: Update validation of GRF region size to account for Xe2 reg size +- intel/fs/xe2+: Allow increased SIMD width for various get_fpu_lowered_simd_width() restrictions. +- intel/compiler/xe2+: Represent dispatch_grf_start_reg in native GRF units. +- intel/fs/xe2+: Update encoding of FB write message payload. +- intel/fs/xe2+: Round up fs_builder::vgrf() size calculation to HW register unit. +- intel/fs/xe2+: Scale BRW_MAX_MSG_LENGTH by native register size. +- intel/fs/xe2+: Fix payload layout of sampler messages for Xe2 reg size +- intel/fs/xe2+: Update GS payload setup for Xe2 reg size. +- intel/fs/xe2+: Update TCS payload setup for Xe2 reg size. +- intel/fs/xe2+: Update TES payload setup for Xe2 reg size. +- intel/fs: Lower unsupported regioning with non-trivial 2D regions on FIXED_GRFs. +- intel/fs/xe2+: Update regioning lowering offset alignment checks for Xe2 regs. +- intel/fs/xe2+: Fix execution width of SHADER_OPCODE_GET_BUFFER_SIZE for SIMD16 EU. +- intel/fs/xe2+: Fix calculation of spill message width for Xe2 regs. +- intel/xe2+: Round up size to reg_unit() in fs_reg_alloc::alloc_spill_reg(). +- intel/fs/xe2+: Fix URB writes with 0 data components. +- intel/fs: Specify number of data components of logical URB writes via control immediate. +- intel/fs: Delete manual 'inst->mlen' calculations from all uses of logical URB writes. +- intel/fs: Delete manual 'inst->mlen' calculations from all uses of logical URB reads. + +Frank Binns (10): + +- pvr: clang-format fixes +- pvr: skip setting up SPM consts buffer when no const shared regs are used +- pvr: cleanup SPM EOT dynarray after upload +- pvr: treat VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT as not supported +- pvr: remove pvr_pbe_get_src_pos() +- pvr: fix attachments segfault in pvr_is_stencil_store_load_needed() +- pvr: fix allocation size of clear colour consts shared regs buffer +- pvr: change a few places to use PVR_DW_TO_BYTES() +- pvr: fix setup of load op unresolved msaa mask +- pvr: emit PPP state when vis_test dirty bit is set + +Friedrich Vock (19): + +- radv/ci: Set DRIVER_NAME in LAVA raven vkcts jobs +- radv: Handle VK_SUBOPTIMAL_KHR in trace layers +- ac/msgpack: make fixstrs a const char +- ac/sqtt,radv: Split internal and API hash in PSO correlations +- ac/rgp: Write lds_size metadata +- ac/rgp: Add metadata for separate-compiled RT stages +- radv/sqtt: Move record filling to helper function +- radv/sqtt: Unregister records based on hash +- radv/sqtt: Write LDS size metadata in code objects +- radv/sqtt: Handle separately-compiled RT pipelines +- ac/sqtt,radv/sqtt: Add and use marker for separate RT compilation +- nir/load_store_vectorize: Handle intrinsics with constant base +- radv/rt: Pre-initialize instance address +- radv: Initialize shader freelist on allocation +- radv: Fix check in insert_block +- radv/rt: Reject hits within 10ULP of previous hits in emulated RT +- radv/rra: Recognize LPDDR memory +- radv/rmv: Recognize LPDDR memory +- vulkan: Don't use set_foreach_remove when destroying pipeline caches + +Ganesh Belgur Ramachandra (5): + +- radeonsi: stores bottom_edge_rule option in the rasterizer state +- radeonsi: sets OPTIMAL_BIN_SELECTION to 0 if using bottom_edge_rule +- radeonsi: "clear_render_target" shader in nir +- radeonsi: "clear_render_target_1d_array" shader in nir +- radeonsi: "clear_12bytes_buffer" shader in nir + +Georg Lehmann (39): + +- aco/gfx11: fix get_gfx11_true16_mask with v_cmp_class_f16 +- aco: improve get_gfx11_true16_mask description +- aco: combine a & ~b to bfi(b, 0, a) +- aco/gfx11: use v_cmp_class_f16 with opsel for bitnz/bitz +- aco: fix non constant 16bit bitnz/bitz +- ac/nir: handle more special cases in ac_nir_unpack_arg +- aco: use s_bitreplicate_b64_b32 to set exec to 0xffff0000ffff0000 +- nir/opt_intrinsics: optimize (exclusive_scan(op, a) op a) to inclusive scan +- aco: always use rtne for fquantize2f16 +- nir/opt_if: also rewrite uniform uses for read_invocation +- nir: unify lower_bitfield_insert with has_{bfm,bfi,bitfield_select} +- nir: unify lower_bitfield_extract with has_bfe +- nir: unify lower_find_msb with has_{find_msb_rev,uclz} +- aco: fix u2f16 with 32bit input +- aco: combine a | ~b to bfi(b, a, -1) +- aco: use v_cvt_f32_ubyte for signed casts too +- nir: add nir_scalar intrinsic helpers +- nir: add nir_scalar_equal +- aco: implement some exclusive scans with inclusive scans +- aco/gfx11: don't use bfe for local_invocation_id if the others are always 0 +- nir/opt_algebraic: remove broken fddx/fddy patterns +- aco: simplify masked swizzle dpp selection by removing or_mask first +- aco: fix p_extract with v1 dst and s1 operand +- aco: implement 64bit div find_lsb +- nir: scalarize masked_swizzle_amd created from shuffle_xor +- aco/optimizer: check if we can use omod before labeling it +- aco/optimizer: copy propagate to output modifier instructions +- aco: remove -0.0 for 32 bit fsign with mul_legacy/omod when denorms are flushed +- nir: make quad intrinsic dst bit size match src0 +- nir/lower_subgroups: use intrinsic builder more +- aco: assume new generations are unsupported by clrx +- aco: assume newer generation will use GFX11 wait_imm packing +- aco: print final ir instead if printing asm is unsupported +- aco/gfx11: optimize dual source export +- aco/gfx11: apply clamp/omod to vinterp +- aco: support v_fma_f32_dpp as fma_mix +- aco/gfx11: support vinterp as fma_mix +- aco: add missing scc def for SALU quad broadcast +- aco/sched: treat p_dual_src_export_gfx11 like export + +George Ouzounoudis (38): + +- nouveau/codegen: Support compact clip distances with arrayed_io +- nouveau/codegen: Handle nir op amul +- nouveau/codegen: Fix compact patch varyings in case of NIR +- nouveau/codegen: Add capability to pre-specify tessellation domain +- nvk: Do not increment instance id across draws +- nvk: Add a macro for root descriptor table byte offsets +- nvk: Set base vertex state in sequential mme draw +- nvk: Support base instance in instanced draw calls +- nvk: Switch point rasterization to point sprites +- nvk: Support large points +- nvk: Compile geometry shaders +- nouveau/mme: Keep device info in mme_builder +- nvk: Simplify mme build function argument +- nvk: Support VK_KHR_shader_draw_parameters +- nvk: Support for vertex shader transform feedback +- nvk: Support transform feedback indirect draws +- nvk: Support transform feedback geometry streams +- nvk: Support transform feedback queries +- nvk: Support vertex shader transform feedback on Fermi +- nvk: Disable PRIMITIVE_RESTART_VERTEX_ARRAY by default +- nvk: Fix geometry shader active stream mask +- nvk: Support geometry shaders +- nvk: Basic tessellation shader support +- nvk: Assign locations correctly for arrayed IO +- nvk: Enable multiview with tessellation shader +- nvk: Fix cases where execution mode is specified in the tesc shader. +- nvk: Respect tessellation domain origin state +- nvk: Lower io to temporaries for tessellation evaluation nir +- nvk: Support VkDescriptorSetVariableDescriptorCountLayoutSupport +- nvk: Handle cases of descriptor bindings with variable counts +- nvk: Add nir non-uniform optimization pass +- nvk: Enable descriptor indexing +- nvk: Do not keep redundant info for tessellation domain +- nouveau/codegen: Do not keep redundant info for tessellation domain +- nvk: Enable dynamic line rasterization mode state +- nvk: Fix support for VK_EXT_sample_locations +- nvk: Support dynamic state for enabling sample locations +- nouveau/codegen: Add a 4th optimization level for MemoryOpts + +Gert Wollny (63): + +- r600/sfn: Switch to register intrinsics +- r600/sfn/tests: add simple copy-prop test with register source +- r600/sfn: Allow for larger ALU CF's +- r600/sfn: Handle indirect array load/store dependencies better +- r600/sfn: Increase LDS fetch schedule priority +- r600/sfn: Add peephole optimization to move a dest to the previous op +- r600/sfn: reorder the value factory class member declaration a bit +- r600/sfn: Add some tests for proper register access +- r600/sfn: Print more info if scheduling fails +- r600/sfn: remove debug output leftovers +- r600/sfn: Fix use of multiple IDX with kcache +- r600/sfn: Always check arrays writes before allowing copy propagation +- r600/sfn: set block sizes based on chip class +- r600/sfn: Fix typo with block type +- r600/sfn: override slot count for IfInstr +- r600/sfn: Add method to convert to AluGroup directly +- r600/sfn: Add flags to check whether a group starts CF and can do that +- r600/sfn: make remaining slots a signed value +- r600/sfn: on Cayman loading an index register needs only one slot +- r600/sfn: Splizt ALU blocks in scheduler to fit into 128 slots +- r600/sfn: rework checks for ALU CF emission +- r600/sfn: Schedule AR uses befor possible groups +- r600: Explicitly force new CF in gs copy shader +- r600: Assert when backend wants to create a new ALU CF +- r600: don't check possible size of ALU CF +- r600: don't use sb disasm to disassamble copy shader +- r600: Force CF when emitting a NOP on R600 in gs copy shader +- r600/sfn: Don't try to propagate to vec4 with more than one use +- r600/sfn: Only switch to other CF if no AR uses are pending +- r600/sfn: AR loads should depend on all previous non ALU instructions +- r600/sfn: Renumber shader blocks in scheduler +- r600/sfn: Track whether a register is ALU clause local +- r600/sfn: Use clause local registers in RA +- r600/sfn: Take source uses into account when switching channels +- r600/sfn: take number of dest values into account +- r600: retire SB optimizer +- r600/sfn: work around injecting extra CF's to handle hardware bugs +- r600: use correct cso pointer for fetch shader +- r600/sfn: Make use of four clause local registers +- r600/sfn: drop unused ControlFlowInstr type enum +- r600/sfn: factor out resource as extra class +- r600/sfn: Simplify dependency chain for index loads on EG +- r600: print texture resource index mode separately +- r600/sfn: Make address split pass obligatory +- r600/sfn: rename method resource_base to resource_id +- r600/sfn: Add old address to update_indirect_addr +- r600/sfn: Sepeate resource and sampler in texture instructions +- r600/sfn: get rid of the method to get the index mode +- r600/sfn: sort the uniforms of the right shader +- r600/sfn: Fix use of scheduled_shader vs shader +- virgl: report MIRROR_CLAMP features better +- ci: Upref virglrenderer +- copyimage: check requested slice early when cube maps are involved +- mesa: check numlevels and numlayers when creating a texture view +- virgl: Use common clear_texture if host doesn't support the feature +- r600/sfn: don't remove texture sources by using the enum value +- r600: drop egcm_load_index_reg +- r600/sfn: Don't override a chgr pinning during copy propagation +- r600/sfn: When simplifying src vec4 pinnings, also check all uses +- virgl: Fix logic for reporting PIPE_MIRROR_CLAMP +- r600: Add callbacks for get_driver_uuid and get_device_uuid +- r600: Link with libgalliumvl, when enabling rusticl this is needed +- r600/sfn: Fixup component count only if intrinsic has it + +Guilherme Gallo (5): + +- bin/ci: Ensure that all jobs have nodes in DAG +- ci/radeonsi: Update flake list +- ci/freedreno: Add a new flake +- ci/zink: Found some flakes +- ci/anv: Catch some flakes + +Hannes Mann (1): + +- vulkan/wsi/wayland: Fix detection of tearing control protocol + +Hans-Kristian Arntzen (2): + +- wsi/x11: Fix potential deadlock in present ID. +- wsi/x11: Don't allow signal_present_id to rewind. + +Helen Koike (21): + +- ci: re-add EXTRA_LOCAL_PACKAGES to rootfs +- ci: add EXTRA_LOCAL_PACKAGES to apt-get install +- docs/ci: Add docs for EXTRA_LOCAL_PACKAGES +- ci: disable duplicated pipelines triggered by marge +- ci: add --project option to ci_run_n_monitor.py +- ci/android: remove strace output from cuttlefish-runner.sh +- ci: add locked flag to bindgen-cli on x86_64_build.sh +- ci: separate hiden jobs to -inc.yml files +- ci/ci_run_n_monitor: add docs for multiple targets +- ci/ci_run_n_monitor: print stress test results per job +- ci/ci_run_n_monitor: simplify with defaultdict +- ci/ci_run_n_monitor: merge print_job_status_change with print_job_status +- ci/ci_run_n_monitor: make --target mandatory +- ci/ci_run_n_monitor: merge enable_job with retry_job +- ci/ci_run_n_monitor: simplify enable/cancel logic in monitor_pipeline() +- ci/ci_run_n_monitor: allow <user>/<project> in --project +- ci/ci_run_n_monitor: limit repetitions on --stress +- ci/marge_queue: add missing python-dateutils to requirements.txt +- ci/ci_run_n_monitor: keep monitoring if a job is still running +- ci/marge_queue: add pretty_dutation() +- ci/ci_run_n_monitor: print job duration time + +Honglei Huang (7): + +- virgl/video: Add support for mpeg12 decoding +- virgl/video: Add support for vc1 decoding +- virgl/video: Add support for jpeg decoding +- virgl/video: Add support for hevc10bit decoding. +- virgl/video: Add more pipe type in virgl formats convert table +- virgl/video: Add jpeg buf start code check +- virgl: Enable vp9 hardware decode + +Hyunjun Ko (3): + +- anv: use ycbcr_info for P010 format +- anv: don't use cmd_buffer after destroyed. +- anv: don't flush_llc on gen9 + +Iago Toral Quiroga (100): + +- nir/trivialize: Move decl_reg to the start of the block +- v3dv: stop incrementing UBO indices by one +- nir/lower_robustness: drop skip_ubo_0 option +- v3dv: fix incorrect key setup +- broadcom/compiler: stop asserting on Vulkan environment +- broadcom/compiler: use NIR's lowering for dispatch base +- broadcom/compiler: move uniform offset lowering from compiler to GL driver +- broadcom/compiler: move vulkan's point coord lowering to the driver +- v3dv: don't set lower_wpos_pntc for Vulkan +- broadcom/compiler: always clamp results from logic ops +- broadcom/compiler: drop execution environment from the shader key +- v3dv: drop cpu path for buffer to image copies +- v3dv: remove unused code +- nir/lower_tex: copy backend_flags field when copying a tex instruction +- nir/lower_tex: use a callback to check sampler return size packing +- squash! v3dv,broadcom/compiler: don't abuse sampler index +- v3dv: assert that only tex instructions with sampler state have a sampler src +- v3d: fix texture packing lowering +- v3d,v3dv: use fquantize2f16 lowering in NIR +- v3dv: be more precise in vkGetImageSubresourceLayout +- v3dv: handle pPlaneLayouts in VkImageDrmFormatModifierExplicitCreateInfoEXT +- v3dv: bump up MAX_UNIFORM_BUFFERS to 16 +- v3dv: add support for sampling simple 2D linear textures +- v3dv: expand sampling from linear image hack to support multi-planar images +- v3dv: don't assume that bound descriptors have been written +- v3dv: only handle Android Hardware Buffer on Android +- v3dv: we can sample from 1D array too +- broadcom/compiler: add a couple of shader key helpers +- v3d: compute nir sha1 for uncompiled shader state +- v3d: use pre-computed shader sha1 for disk cache +- v3d: fix RAM shader cache +- v3d: get rid of shader_state pointer in v3d_key +- broadcom/simulator: reset CFG7 for compute dispatch in v71 +- broadcom/common: retrieve V3D revision number +- broadcom/compiler: update node/temp translation for v71 +- broadcom/compiler: implement "reads/writes too soon" checks for v71 +- broadcom/compiler: implement read stall check for v71 +- broadcom/compiler: add a v3d71_qpu_writes_waddr_explicitly helper +- broadcom/compiler: prevent rf2-3 usage in thread end delay slots for v71 +- broadcom/qpu: add new ADD opcodes for FMOV/MOV in v71 +- broadcom/qpu: fix packing/unpacking of fmov variants for v71 +- broadcom/compiler: make vir_write_rX return false on platforms without accums +- broadcom/compiler: rename vir_writes_rX to vir_writes_rX_implicitly +- broadcom/compiler: only handle accumulator classes if present +- broadcom/compiler: don't assign rf0 to temps across implicit rf0 writes +- broadcom/compiler: CS payload registers have changed in v71 +- broadcom/compiler: don't schedule rf0 writes right after ldvary +- broadcom/compiler: allow instruction merges in v71 +- broadcom/qpu: add MOV integer packing/unpacking variants +- broadcom/qpu: fail packing on unhandled mul pack/unpack +- broadcom/compiler: generalize check for shaders using pixel center W +- broadcom/compiler: v71 isn't affected by double-rounding of viewport X,Y coords +- broadcom/compiler: update peripheral access restrictions for v71 +- broadcom/qpu: add packing for fmov on ADD alu +- broadcom/compiler: handle rf0 flops storage restriction in v71 +- broadcom/compiler: enable ldvary pipelining on v71 +- broadcom/compiler: try to use ldunif(a) instead of ldunif(a)rf in v71 +- broadcom/compiler: don't assign rf0 to temps that conflict with ldvary +- broadcom/compiler: convert mul to add when needed to allow merge +- broadcom/compiler: implement small immediates for v71 +- broadcom/compiler: update thread end restrictions for v7.x +- broadcom/compiler: update ldvary thread switch delay slot restriction for v7.x +- broadcom/compiler: lift restriction for branch + msfign after setmsf for v7.x +- broadcom/compiler: start allocating from RF 4 in V7.x +- broadcom/compiler: validate restrictions after TLB Z write +- broadcom/compiler: lift restriction on vpmwt in last instruction for V3D 7.x +- broadcom/compiler: fix up copy propagation for v71 +- broadcom/compiler: don't allocate spill base to rf0 in V3D 7.x +- broadcom/compiler: improve allocation for final program instructions +- broadcom/compiler: don't assign registers to unused nodes/temps +- broadcom/compiler: only assign rf0 as last resort in V3D 7.x +- v3dv: expose V3D revision number in device name +- v3dv/device: handle new rpi5 device (bcm2712) +- v3dv: setup render pass color clears for any format bpp in v71 +- v3dv: setup TLB clear color for meta operations in v71 +- v3dv: fix up texture shader state for v71 +- v3dv: handle new texture state transfer functions in v71 +- v3dv: implement noop job for v71 +- v3dv: handle render pass global clear for v71 +- v3dv: GFX-1461 does not affect V3D 7.x +- broadcom/compiler: update thread end restrictions validation for v71 +- v3dv: handle early Z/S clears for v71 +- v3dv: handle RTs with no color targets in v71 +- v3dv: don't convert floating point border colors in v71 +- v3dv: handle Z clipping in v71 +- v3dv: make v3dv_viewport_compute_xform depend on the V3D version +- v3dv: fix depth clipping then Z scale is too small in V3D 7.x +- v3d/v3dv: fix texture state array stride packing for V3D 7.1.5 +- v3d,v3dv: support up to 8 render targets in v7.1+ +- v3d,v3dv: don't use max internal bpp for tile sizing in V3D 7.x +- v3d,v3dv: propagate NaNs bits in shader state records are reserved in v7.x +- v3dv: use new texture shader state rb_swap and reverse fields in v3d 7.x +- v3dv: fix color write mask for v3d 7.x +- v3d,v3dv: fix depth bias for v3d 7.x +- v3d,v3dv: fix compute for V3D 7.1.6+ +- v3dv: expose fullDrawIndexUint32 in V3D 7.x +- v3dv: expose depthClamp in V3D 7.x +- v3dv: expose scalarBlockLayout on V3D 7.x +- v3dv: fix confusing nomenclature about DRM nodes +- v3d,v3dv: fix MMU error from hardware prefetch after ldunifa + +Ian Douglas Scott (1): + +- egl/wayland: Don't segfault if \`create_wl_buffer` returns \`NULL` + +Ian Romanick (38): + +- intel/fs: Always do opt_algebraic after opt_copy_propagation makes progress +- intel/fs: Constant fold SHL +- intel/fs: Constant fold OR and AND +- util/rb-tree: Return the actual first node from rb_tree_search +- util/rb-tree: Fix typo in comment +- nir/builder: Add nir_extract_i8_imm and nir_extract_u8_imm helpers +- nir/algebraic: Remove redundant pack / unpack lowering patterns +- intel/fs: Completely re-write the combine constants pass +- intel/fs: Combine constants for SEL instructions too +- intel/fs: Combine constants for integer instructions too +- intel/fs: New VGRF packing scheme for constant combining +- intel/compiler: Combine control barriers with identical memory semantics +- intel/compiler: Don't evict for workgroup-scope fences +- glsl/list: Clean up an inappropriate comment +- util/rb-tree: Work around C++'s dislike of offsetof +- util/rb-tree: Inline rb_tree_init +- intel/fs: Don't continue fixed point iteration just because liveout changes +- intel/fs: Don't try to copy propagate into a source again after progress is made +- intel/fs: Make try_constant_propagate and try_copy_propagate file private +- intel/fs: Move src.file checks out of try_constant_propagate and try_copy_propagate +- intel/fs: Don't loop in try_constant_propagate +- intel/fs: Simplify check in can_propagate_from +- intel/fs: Make opt_copy_propagation_local file private +- intel/fs: Encapsulate per-block ACP in a structure +- intel/fs: Use rb_tree to store ACP entries by source +- intel/fs: Use rb_tree to store ACP entries by destination +- intel/fs: Use rb_tree for copy prop dataflow +- intel/fs: Merge copy prop dataflow loops +- intel/compiler/xe2: Update fs_visitor::setup_vs_payload to account for Xe2 reg size +- intel/compiler/xe2: Use SIMD16 for nir_intrinsic_image_size +- intel/compiler/xe2: TXD is lowered to SIMD16 in SIMD32 mode +- nir/rematerialize: Rematerialize ALUs used only by compares with zero +- intel/compiler/xe2: Handle new URB read messages +- intel/compiler/xe2: Handle new URB write messages +- intel/compiler/xe2: Update fs_visitor::emit_urb_writes to not assume SIMD8 +- spirv: Track when a shader has a cooperative matrix +- intel/fs: Add DP4A to get_lowered_simd_width +- nir/split_vars: Don't split arrays of cooperative matrix types + +Igor Torrente (4): + +- zink: Fix enumerate devices when running compositor +- zink: Removes \`disable_xcb_surface` +- zink: Fix one addicional case when running a compositor +- zink: fix for startup crash of weston running on top of zink + venus + +Illia Abernikhin (2): + +- state_tracker: moving initialisation of whandle out from if statement whandle initialization inside if statement but used also outside +- i915: change format in dbg string Actually, uintptr_t is of type unsigned long, but the debug line uses the %d format specifier, which expects an int. + +Illia Polishchuk (7): + +- iris: remove NULL check for already dereferenced pointer earlier +- s/Intel: fix/anv: fix: potentially overflowing expression in genX +- glx: fix dead code when gc var cannot be null due to earlier check +- state_tracker: fix dereference before null check +- anv, drirc: Add workaround to speed up Cyberpunk 2077 reg allocation +- zink: move find_sampler_var from zink to nir core +- nir: fix invalid sampler search by texture id + +Italo Nicola (24): + +- mesa/main: account for RTT samples when updating framebuffer +- mesa/main: allow readpix/teximage to read from implicitly multisampled fbos +- panfrost/genxml: fix Surface With Stride descriptor alignment +- panfrost/genxml: add Multiplanar Surface descriptor +- panfrost: refactor (un)packing of surface descriptors +- pan/decode: decode Multiplanar Surface descriptors +- panfrost: prepare pan_image_view for multiplanar formats +- panfrost: prepare the driver to support YUYV and variants +- panfrost: advertise support for YUYV and variants +- panfrost: mandate proper alignment requirement depending format and arch +- panfrost: add PAN_MESA_DEBUG=yuv for debugging yuv sampler +- gallium/st: add non-CSC lowering of I420 as PIPE_FORMAT_R8_G8_B8_420 +- gallium/st: add non-CSC lowering of YV12 as PIPE_FORMAT_R8_B8_G8_420 +- pan/bi: add support for I420 and YV12 sampling +- gallium/st: lower NV21 to R8_B8G8 instead of G8_B8R8 +- panfrost: fix invalid memory access in get_equation_str() +- pan/decode: handle more than one panfrost_device +- panfrost/ci: updated CI expectations +- egl: reenable partial redraw with a warning when using gallium hud +- pan/genxml: add Width/Height fields to v9+ Plane descriptor +- panfrost: rename _needs_multiplanar_descriptor to _is_yuv +- panfrost: prepare v9+ to support YUV sampling +- panfrost: use centered YUV chroma siting +- panfrost: advertise YUV formats for valhall + +Iván Briano (23): + +- anv: ensure CFE_STATE is emitted for ray tracing pipelines +- iris: ensure mesh is disabled on context init +- anv: ensure mesh is disabled on context init +- anv: implement Wa_14019750404 +- intel/compiler: call brw_nir_adjust_payload from brw_postprocess_nir +- anv,hasvk: respect provoking vertex setting on geometry shaders +- anv: fix missing 3DSTATE_SBE_CLIP emission +- anv: ensure pipelines have all state +- anv: tell blorp to do mesh stuff only if it's enabled +- blorp: fix hangs with mesh enabled +- anv: use a simpler MUE layout for fast linked libraries +- anv: track what kind of pipeline a fragment shader may be used with +- intel/fs: read viewport and layer from the FS payload +- intel/fs: handle URB setup for fast linked mesh pipelines +- anv: enable VK_EXT_mesh_shader where supported +- intel/fs: use ffsll so we don't explode on 32 bits +- vulkan/runtime: add internal parameter to vk_spirv_to_nir +- nir/lower_int64: respect rounding mode when casting to float +- intel/compiler: round f2f16 correctly for RTNE case +- util: add double_to_float16 helpers +- nir: round f2f16{_rtne/_rtz} correctly for constant expressions +- anv: advertise VK_KHR_global_priority_queue +- anv: use the right vertexOffset on CmdDrawMultiIndexed + +Jani Nikula (1): + +- docs/vulkan: fixup some typos + +Janne Grunau (4): + +- asahi: toggle more barrier bits after transform feedback +- asahi,agx: Fix stack buffer overflow in agx_link_varyings_vs_fs +- asahi,agx: Upload constant buffers immediately +- asahi: decode: Fix uint64_t format modifiers in agxdecode_stateful() + +Jesse Natalie (2): + +- nir_lower_mem_access_bit_sizes: Fix write-mask-constrained 3-byte stores as atomics +- d3d12: Fix multidimensional array ordering + +Jianxun Zhang (1): + +- intel/common: Only set op mask on instructions in decoder + +Jonathan Marek (2): + +- freedreno: move redump.h to common code + cleanup +- tu: add a TU_DEBUG=rd option for cmdstream dumping + +Jordan Justen (73): + +- isl: Add ISL_SURF_USAGE_STREAM_OUT_BIT +- anv,iris,hasvk: Use ISL_SURF_USAGE_STREAM_OUT_BIT for setting stream-out MOCS +- genxml/hsw: Add additional MOCS field enumerations +- genxml/chv: Add MEMORY_OBJECT_CONTROL_STATE_CHV to document compared to BDW +- isl/dev: Add uncached MOCS value +- isl: Set MOCS to uncached for MTL stream-out +- intel/isl: Use intel_needs_workaround() for MTL CCS WA +- intel/compiler: Use nir SUBGROUP_INVOCATION for RT TOPOLOGY_ID +- intel/dev: Add LNL platform enum +- intel/dev: Support xe2 device init (for intel_device_info_test) +- intel/tools: Use 'env bash' to find bash executable +- intel/decoder: Fix xml filename when verx10 % 10 is not 0 +- intel/decoder: Add intel_spec_load_common() +- intel/decoder: Make intel_spec_load_filename() have separate dir and name strings +- intel/genxml: Align "Texture Coordinate Mode" naming +- intel/genxml: Split some genxml sorting code into a intel_genxml module +- intel/genxml: Convert gen_bits_header to use ElementTree +- intel/genxml: Convert gen_pack_header to use ElementTree +- intel/genxml: Add GenXml class into intel_genxml module +- intel/genxml: Add filter_engines() to GenXml class +- intel/genxml: Move sorting & writing into GenXml class +- intel/genxml: Don't rewrite sorted xml if the contents didn't change +- intel/genxml: Add final newline to output when saving xml +- intel/genxml: Update xml with gen_sort_tags.py output +- intel/dev: Use RPL-U name on RPL-U devices +- intel/dev: Add more RPL PCI IDs +- anvil,hasvk: Rename need_clflush to need_flush +- intel/common: Move intel_clflush.h to intel_mem.h/intel_mem.c +- anvil,hasvk: Replace intel_clflush_range with intel_flush_range +- intel/common: Add intel_flush_range_no_fence +- anvil,hasvk: Use intel_flush_range_no_fence to flush command buffers +- util/u_cpu_detect: Drop unused has_tsc +- util/u_cpu_detect: Detect clflushopt support +- meson: Check for the __builtin_ia32_clflushopt function +- intel/clflush: Add support for clflushopt instruction +- intel/dev/xe: Move placeholder subslice info into XEHP_FEATURES +- intel/genxml: Ignore tail leading/trailing whitespace in node_validator() +- intel/genxml: Fix comparing xml when node counts differ +- intel/dev: Update device string for MTL PCI ID 0x7d55 +- intel/genxml: Support importing from another genxml file +- intel/genxml: Add support for excluding items when importing +- intel/genxml: Add all xml files as pack dependencies +- intel/genxml: Add GenXml.optimize_xml_import() +- intel/genxml: Drop assertion to allow for importing +- intel/genxml: Add GenXml.add_xml_imports method +- intel/genxml: Add GenXml.flatten_xml() method +- intel/genxml: Add genxml_import.py script +- intel/decoder: ralloc_steal() values from spec context for fields and enums +- intel/decoder: Implement support for importing genxml +- intel/genxml: Start Xe2 support +- intel/genxml: Auto-import genxml files using genxml_import.py +- intel/common: Add sse2_args for 32-bit build when -Dsse2=false was set +- intel/compiler/fs: Support Xe2 reg size in assign_curb_setup +- intel/compiler: Update opt_split_sends() for Xe2 reg size +- intel/compiler: Update emit_rt_lsc_fence() for Xe2 +- intel/compiler: Update lower_trace_ray_logical_send() for Xe2 +- intel/compiler: Update ray-tracing intrinsic lowering for Xe2 +- intel/compiler: Update RT stack_id access for Xe2 +- intel/fs: Update SSBO & shared uniform block loads for Xe2 +- intel/genxml: Build with gen20.xml +- intel/isl: Build for Xe2 +- iris: Build for Xe2 +- anv/blorp: Use anv_genX to set device->blorp.exec +- anv: Disable Ray Tracing on xe2 until our compiler supports Xe2 RT +- anv: Build for Xe2 +- anv: Print warning that Xe2 is not supported rather than failing +- intel/compiler: Add enum xe2_lsc_cache_store +- intel/compiler: Use enum xe2_lsc_cache_store on xe2 +- intel/compiler: Add enum xe2_lsc_cache_load +- intel/compiler: Use enum xe2_lsc_cache_load on xe2 +- anv/batch: Check if batch already has an error in anv_queue_submit_simple_batch() +- anv/batch: Assert that extend_cb is non-NULL if the batch is out of space +- intel/dev: Add 0x56ba-0x56bd DG2 PCI IDs + +Jose Maria Casanova Crespo (2): + +- vc4: mark buffers as initialized at vc4_texture_subdata +- vc4: Fix mask RGBA validation at YUV blit + +José Expósito (3): + +- zink: Fix crash on zink_create_screen error path +- zink: fix dereference before NULL check +- zink: allow software rendering only if selected + +José Roberto de Souza (51): + +- anv: Use workaround framework to Wa_14016118574 +- intel/aux_map: Nuke format_enum +- intel/aux_map: Use get_aux_entry() in remove_mapping() +- intel/aux_map: Replace magic number by INTEL_AUX_MAP_ENTRY_VALID_BIT +- intel/aux_map: Rename some variables to improve readability +- intel/aux_map: Mask out bits above index 47 in intel_aux_get_meta_address_mask() +- intel/aux_map: Convert l1_entry_addr_out to canonical +- intel/aux_map: Drop magic sub table size number +- intel/aux_map: Add function and macro to return l2 and l1 table masks +- anv: Add gem_create_userptr() to KMD backend +- anv: Replace handle by anv_bo in the gem_close() +- anv: Add support for userptr in Xe KMD +- intel: Sync xe_drm.h +- intel/dev/xe: Add support for small-bar setups +- anv: Request Xe KMD to place BOs to CPU visible VRAM when required +- iris: Request Xe KMD to place BOs to CPU visible VRAM when required +- iris/xe: Call iris_lost_context_state() when batch engine is replaced +- intel/dev: Port intel_dev_info tool to Xe KMD +- iris: Replace I915_EXEC_FENCE_SIGNAL by IRIS_BATCH_FENCE_SIGNAL in common code +- intel: Move i915_drm.h specific code from common/intel_gem.h to common/i915/intel_gem.h +- intel/common: Move functions inside of C++ ifdef +- intel: Rename intel_gem_add_ext() to intel_i915_gem_add_ext() +- iris: Move i915_gem_set_domain() call to i915 backend +- iris: Move iris_bufmgr_bo_close() to kmd backend +- iris: Add gem_create_userptr() to KMD backend +- iris: Add support for userptr in Xe KMD +- intel/genxml/gen125: Add missing fields in MI_MATH +- iris: Set MI_MATH MOCS field +- anv: Set MI_MATH MOCS field +- intel/tests/mi_builder: Set MI_MATH MOCS field +- intel/genxml/gen125: Set MI_MATH MOCS field as non-zero +- anv: Nuke unused READ_ONCE() from anv_batch_chain.c +- anv: Remove VkAllocationCallbacks parameter from reloc functions +- anv: Return earlier in anv_reloc_list functions +- intel: Sync xe_drm.h and rename engine to exec_queue +- anv: Override vendorID for Hogwarts Legacy +- intel/isl: Remove unknown workaround +- intel/isl: Remove Wa_22011186057 +- anv: Update Wa_16014390852 for MTL +- intel: Sync xe_drm.h +- anv: Move i915 specific gem_set_caching to backend +- anv: Move i915 specific code from common anv_gem.c +- anv: Move bo_alloc_flags_to_bo_flags() to backend +- anv: Move i915 handling of imported bos bo_flags +- anv: Remove i915_drm.h include from common code +- iris: Lock bufmgr->lock before call vma_free() in error path +- iris: Nuke useless flags from iris_fine_fence_new() +- intel: Prepare implementation of Wa_18019816803 and Wa_16013994831 for future platforms +- intel: Sync xe_drm.h +- anv: Switch Xe KMD vm bind to sync +- anv: Add missing ANV_BO_ALLOC_EXTERNAL flags when calling anv_device_import_bo() + +Juan A. Suarez Romero (7): + +- broadcom/ci: update expected results +- vc4/ci: update expected results +- v3d/shim: include new ioctl parameters +- v3dv/ci: update expected list +- broadcom: add performance counters for V3D 7.x +- broadcom/simulator: add per-hw version calls +- v3d/vc4/ci: add new fails/timeout + +Julia Tatz (10): + +- gallium/dri: fix dri2_from_names +- aux/trace: skip multi-line comments in enums2names +- aux/trace: deduplicate enum dump macro work +- aux/trace: move trace_sample_view logic +- aux/trace: fix set_hw_atomic_buffers method name +- aux/trace: add screen video methods +- aux/trace: add context video methods +- aux/trace: wrap video_codec & video_buffer +- aux/trace: unwrap refrence frames in picture_desc +- aux/trace: trace video_buffer method return vals + +Julia Zhang (1): + +- radeonsi: modify algorithm of skipping holes of sparse bo + +Julian Hagemeister (1): + +- Gallium: Fix shared memory segment leak + +Juston Li (10): + +- zink: remove venus from renderpass optimizations +- venus: sync protocol for VK_EXT_vertex_input_dynamic_state +- venus: implement VK_EXT_vertex_input_dynamic_state +- venus: set lvp queries as saturate on overflow +- venus: add helper function to get cmd handle +- venus: refactor out common cmd feedback functions +- venus: support deferred query feedback recording +- venus: track/recycle appended query feedback cmds +- venus: append query feedback at submission time +- venus: switch to unconditionally deferred query feedback + +Kai Wasserbäch (3): + +- fix: clover: LLVM 18 renamed/moved CGFT_*, update compat layer +- fix: clover: LLVM 18: s/CodeGenOpt::/CodeGenOptLevel::/ +- fix: clover: warning: ignoring return value of ‘int posix_memalign(…)’ [-Wunused-result] + +Karmjit Mahil (29): + +- pvr: Remove mrt setup from SPM EOT +- pvr: Compile SPM EOT shader +- pvr: Use the SPM EOT on barrier stores +- pvr: Remove some magic numbers and increments from km stream +- pvr: Restructure \`rogue_kmd_stream.xml` +- pvr: Submit PR commands +- pvr: Use the correct size for the unified store allocation +- pvr: Allow query stage for barrier sub cmds +- pvr: Fix occlusion query unaccounted for user fences +- pvr: Fix writing query availability write out +- pvr: Fix packing issue with max_{x,y}_clip +- pvr: Fix csb relocation status assert on \`pvr_csb_finish()` +- pvr: Fix \`for` loop itarator usage +- pvr: Fix dynamic desc offset storage +- pvr: Fix cubemap layer stride +- pvr: Use the render passes' attachments array to setup ISP state +- pvr: Adjust EOT PBE state to account for the iview's base array layer +- pvr: Fix MRT index in PBE state +- pvr: Fix pbe_emit assert +- pvr: Fix OOB access of pbe_{cs,reg}_words +- pvr: Order tile buffer EOT emits to be last +- pvr: Fix subpass sample count on ds attachment only +- pvr: Refactor subpass ds and sample count setup +- pvr: Fix SPM load shader sample rate +- pvr: Fix PPP_SCREEN sizes +- vulkan: Add \`vk_subpass_dependency_is_fb_local()` helper +- tu: Use common \`vk_subpass_dependency_is_fb_local()` +- pvr: Don't merge subpasses on framebuffer-global dependancy +- pvr: Only setup the bgobj to load if we have a load_op + +Karol Herbst (213): + +- nvc0: initial Ada enablement +- rusticl/mesa: make svm_migrate optional +- llvmpipe: enable system SVM +- nvc0: fix num_gprs for Volta+ +- rusticl: fix warnings with newer rustc +- gm107/ir: fix SULDP for loads without a known format +- nv50/ir/nir: fix txq emission on MS textures +- nv50/ir/nir: Fix zero source handling of tex instructions. +- rusticl/kernel: only handle function_temp memory before lowering printf +- meson,ci: bump meson req for rusticl to 1.2 +- rusticl/nir: add helper functions we need for a NIR_PASS macro +- rusticl/nir: add a nir_pass macro +- rusticl/nir: use the new nir_pass macro +- rusticl/kernel: rename res to internal_args inside lower_and_optimize_nir_late +- rusticl/kernel: merge lower_and_optimize_nir_pre_inputs and lower_and_optimize_nir_late +- rusticl/kernel: move things around in lower_and_optimize_nir +- rusticl/kernel: get rid of initial function_temp type lowering +- rusticl/kernel: mark can_remove_var as unsafe and document it +- n50/compute: submit initial compute state in nv50_screen_create +- nvk: add vulkan skeleton +- nouveau/winsys: add the new winsys implementation +- nvk: use winsys lib +- nvk: fix nvk_buffer include guards +- nouveau/headers: add script to sync in-tree headers with open-gpu-doc +- nouveau/headers: initial sync of headers +- nvk: implement GetPhysicalDeviceQueueFamilyProperties2 to make the CTS happy +- nvk: advertize memory heaps and types +- nouveau/ws: reorganize a little +- nouveau/ws: dup the fd +- nouveau/ws: add a field for the SM version +- nvk: set nonCoherentAtomSize as the CTS divides with this value +- nouveau/ws: add bo API +- nvk: add basic device memory support +- nouveau/headers: add nvtypes.h +- nouveau/headers: typedef Nv void types +- nouveau/headers: add host classes +- nouveau/ws: add context support +- nouveau/ws: add a cmd buffer +- novueau/bo: refcount it +- novueau/bo: add nouveau_ws_bo_wait +- nvk: allocate a GPU context for each VkDevice +- nvk: add nvk_bo_sync +- nvk: add nvk_CmdPipelineBarrier2 stub +- nvk: impl nvk_CmdCopyBuffer +- nouveau/ws: fix setting push bo domains +- nouveau/ws: PUSH_IMMD only works with 16 bit values +- nouveau/ws: set GPU object class +- nouveau/ws: bind 2D class +- nvk: use fermi class definitions +- nvk: add basic support for images +- nvk: simple format table +- nvk: add support for blits +- nvk: report maxMipLevels as 1 +- nvk: optimize blit command buffer gen +- nvk: implement CmdFillBuffer +- nvk: implement CmdUpdateBuffer +- nvk: implement CmdCopyBuffer2 +- nvk: advertise VK_KHR_copy_commands2 +- nvk: implicitly reset the command buffer +- nouveau/ws: handle 0inc inside nvk_push_val as well +- nvk: reduce pitch even further in CmdFillBuffer +- nvk: support multiple miplevels +- nvk: support array blits over multiple layers +- nvk: tiling prep work for VK_EXT_image_2d_view_of_3d +- nouveau/ws: make sure we don't submit nonsense +- nouveau/ws: assert on broken channel +- nvk/blit: assert that formats are supported +- nouveau/headers: Generate parser functions +- nouveau/ws: initial debugging options for command submissions +- nouveau/ws: depend on generated class header files +- nouveau/ws: get rid of libdrm +- nouveau/ws: use new NVIF interface to query oclasses +- nvk: set deviceName +- nouveau/headers: add path for 3D headers +- nouveau/headers: initial 3D headers import +- nouveau/ws: allocate 3D subchan +- nouveau/ws: allocate copy subchan as well +- nouveau/ws: add API to query if the context was killed +- nouveau/ws: add a bo unmap helper function +- nvk: clean up bo mappings +- nouveau/ws: bound check nouveau_ws_push_append +- nouveau/ws: rework refing push buffer bos +- nouveau/ws: push chaining +- nvk: fix OOB read inside nvk_get_va_format +- nvk: alloc a zero page and use it for vertex runouts +- nvk: fix zero page refing +- nvk: support exporting buffers +- nvk: fix some class version checks +- nvk: properly align shaders pre Turing +- nvk: rework QMD handling to support pre Turing +- nvk: align desc root table +- nvk: Use SET_PIPELINE_PROGRAM pre-Volta +- nvk: properly align slm size +- nvk: use remaps for image copies +- nvk: reduce pitch for FillBuffer +- nvk: bind more subchans in init_context_state +- nvk: support pre Maxwell Texture Headers +- nvk/device: fix order of error handling +- nvk: allocate VAB memory area +- nvk: wire up M2MF for Fermi +- nouveau/mme: add test for BEQ with magic exit offset +- nouveau/mme: add a macro exit helper +- nvk: Add a macro to set MMIO registers via falcons +- nouveau/winsys: fix SM value for Ada +- nvk: fix num_gprs for Volta+ +- nvk: replace mp with tpc +- nvk: properly calculate SLM region by taking per arch limits into account +- nouveau: fix max_warps_per_mp_for_sm for builds with asserts disabled +- nvk: enable fp helper invocations loads on more gens +- nv50/ir: use own info struct for sys vals +- nv50/ir: convert system values to gl_system_value +- nouveau/mme: fix OOB access inside while_ine builder test +- nouveau/mme: fix OOB inside tu104 simulator +- clc: use CLANG_RESOURCE_DIR for clang's resource path +- nv50: fix code uploads bigger than 0x10000 bytes +- nouveau: take glsl_type ref unconditionally +- rusticl/kernel: optimize nir between lowering io and explicit types +- nv50: limit max code uploads to 0x8000 +- zink: fix source type in load/store scratch +- zink: fix global stores +- zink: update some compute caps +- rusticl: add debug option to sync every event +- rusticl/device: _MAX_CONST_BUFFER0_SIZE is unsigned +- ci: disable a660 jobs +- nir: make workgroup_id 32 bit only +- nir: make num_workgroups 32 bit only +- ac: drop 64 bit handling for cl workgroup intrinsics +- gallivm/nir: drop 64 bit handling for cl workgroup intrinsics +- intel/compiler: drop 64 bit handling for cl workgroup intrinsics +- panfrost: drop 64 bit handling for cl workgroup intrinsics +- rusticl: reduce global_invocation_id_zero_base to 32 bit +- panfrost: drop pan_nir_lower_64bit_intrin +- rusticl/disk_cache: fix stack corruption +- rusticl/query: fix use-after-free, but also fix incorrect usage of unsafe +- rusticl/event: disable profiling for devices without timestamps +- rusticl/queue: properly implement clCreateCommandQueueWithProperties +- rusticl/memory: do not verify pitch for IMAGE1D_BUFFER +- rusticl/memory: only specify PIPE_BIND_SHADER_IMAGE where supported +- asahi: fetch available system memory +- asahi: lower hadd +- asahi: handle kernels +- asahi: handle load_workgroup_size +- asahi: handle load_global_invocation_id_zero_base +- asahi: implement get_compute_state_info +- asahi: implement set_global_binding +- asahi: implement clear_buffer +- asahi: gracefully handle allocating linear images +- asahi: handle images in is_format_supported +- rusticl/memory: fallback if allocating linear images fails +- rusticl: enable asahi +- rusticl/mesa: create contexts with PIPE_CONTEXT_NO_LOD_BIAS +- docs/features: cl_khr_3d_image_writes needs driver support +- rusticl/mesa: fix \`set_constant_buffer` when passing an empty buffer +- rusticl/kernel: skip adding global id offsets if not used +- meson/rusticl: add sha1_h +- rusticl/mesa/context: fix clear_sampler_views +- nir: add nir_lower_alu_vec8_16_srcs pass +- zink: lower vec8/16 +- rusticl/mesa: create COMPUTE_ONLY contexts +- rusticl: fix clippys bool_to_int_with_if +- rusticl/memory: fix potential use-after-free in clEnqueueSVMMemFill +- nir/load_libclc: fix libclc memory leak +- rusticl/kernel: Fix creation from programs not built for every device +- ci: add half-life 2 freedreno flake +- zink: implement get_compute_state_info +- zink: copy has_variable_shared_mem cs property +- zink: pass entire pipe_grid_info into zink_program_update_compute_pipeline_state +- zink: refactor spec constant handling +- zink: variable shared mem support +- zink: support more nir opcodes +- zink: make spirv_builder_emit_*op compatible with spec constants +- zink: support samplers with unnormalized_coords +- zink: implement remaining pack ops via bitcast +- zink: fix RA textures +- zink: fix load/store scratch offsets +- rusticl/mesa/screen,device: add driver_name +- rusticl: enable zink +- pipe-loader: allow to load multiple zink devices +- rusticl: bump rustc version to 1.66 +- rusticl/mesa/nir: mark more methods as mut +- rusticl/mesa/nir: Mark NirShader and NirPrintfInfo as Send and Sync +- rusticl/mesa: mark PipeResource as Send and Sync +- rusticl/mesa: mark PipeTransfer as Send +- rusticl/cl: mark _cl_image_desc as Send and Sync +- rusticl/queue: get rid of pointless Option around our worker thread handle +- rusticl/queue: make it Sync +- rusticl/kernel: get rid of Arcs in KernelDevStateVariant +- rusticl/memory: use get_mut instead of lock in drop +- zink: implement PIPE_COMPUTE_CAP_MAX_COMPUTE_UNITS +- rusticl/api: remove cl_closure macro +- zink: implement load_global_constant +- zink: properly emit PhysicalStorageBufferAddresses cap +- nir/lower_mem_access_bit_sizes: fix invalid shift bit_size +- rusticl/device: restrict 1Dbuffer images for RGB and RGBx +- rusticl/memory: use PIPE_BUFFER for IMAGE1D_BUFFER images +- rusticl/format: disable all sRGB formats +- asahi: flush denorms on exact fmin/fmax +- zink: wrap shared memory blocks in a struct +- zink: properly alias shared memory +- zink: fix zink_destroy_screen for early screen creation fails +- docs/features: remove empty lines confusing mesamatrix +- rusticl/device: restrict image_buffer_size +- rusticl/device: restrict param_max_size further +- rusticl/mem: properly set pipe_image_view::access +- zink: lower fisnormal as it requires the Kernel Cap +- radv: fix buffers in vkGetDescriptorEXT with size not aligned to 4 +- rusticl/queue: Only take a weak ref to the last Event +- rusticl/mesa: pass PIPE_BIND_LINEAR in resource_create_texture_from_user +- zink: deallocate global_bindings array +- rusticl/mesa/screen: do not derefence the entire pipe_screen struct +- nvc0: implement PIPE_CAP_TIMER_RESOLUTION +- rusticl/queue: do not send empty lists of event to worker queue +- rusticl/queue: fix implicit flushing of queue dependencies + +Kenneth Graunke (21): + +- iris: Re-emit 3DSTATE_DS for each primitive (workaround 14019750404) +- intel/compiler: Fix sparse cube map array coordinate lowering +- intel/compiler: Respect NIR_DEBUG_PRINT_INTERNAL for DEBUG_OPTIMIZER +- intel/fs: Account for payload GRFs when calculating register pressure +- intel/compiler: Move SCHEDULE_NONE handling into schedule_instructions() +- intel/fs: Index scheduler mode string table by mode enum +- intel/fs: Make helpers for saving/restoring instruction order +- intel/fs: Pick the lowest register pressure schedule when spilling +- intel/fs: Dump IR for pre-RA scheduler modes in DEBUG_OPTIMIZER +- iris: Check prog[] instead of uncompiled[] for BLORP state skipping +- nir: Fix function parameter indentation in nir_opt_barriers.c +- nir: Add an optimization pass to reduce barrier modes +- nir: Reduce the scope of shared memory barriers +- lavapipe: Don't delete control barriers +- virgl, nir_to_tgsi: Add a hack for promoting partial memory barriers +- dxil: Set UAV_FENCE_THREAD_GROUP any time global isn't required +- glsl: Use nir_opt_barrier_modes() to drop unnecessary barriers +- anv: Use nir_opt_barrier_modes() to drop unnecessary barriers +- mesa: Fix zeroing of new ParameterValues array entries when growing +- intel/fs: Fix Xe2 URB read/lowering with per-slot offsets +- anv: Add support for a transfer queue on Alchemist + +Kevron Rees (1): + +- Force vk vendor for spider-man remastered + +Konrad Dybcio (5): + +- freedreno: Set magic writes per-GPU, using existing data +- freedreno: Include speedbin fallback in 740 chipid to fix probing +- freedreno: Include speedbin fallback in 730 chipid to fix probing +- freedreno: Include speedbin fallback in 690 chipid to fix probing +- freedreno: Add Adreno 643 + +Konstantin Seurer (95): + +- radv: Stop using the misleading round_up_u* functions +- radv/meta_buffer: Stop setting RADV_META_SAVE_DESCRIPTORS +- radv/meta_buffer: Rename size_minus16 to max_offset +- llvmpipe: Fix compiling with LP_USE_TEXTURE_CACHE +- nir/tests: Refactor boilerplate into a common header +- nir/tests: Use a single binary +- draw: Do not restart the primitive_id at 0 +- gallivm: Fix subsampled format sampling under Vulkan +- gallivm: Ignore nir_tex_src_plane +- lavapipe: Remove dummy sampler ycbcr conversion +- lavapipe: Store immutable_samplers as lvp_sampler array +- lavapipe: Fix binding immutable samplers with desc buffers +- lavapipe: Implement samplerYcbcrConversion +- lavapipe: Advertise samplerYcbcrConversion +- llvmpipe: Zero extend vectors in widen_to_simd_width +- vulkan: Add a generated vk_properties struct +- radv: Use common physical device properties +- clang-format: Disable formatting by default +- lavapipe: Use common physical device properties +- nir/from_ssa: Don't insert store_reg instructions before phis +- gallivm: Run nir_convert_to_lcssa before nir_convert_from_ssa +- lavapipe/ci: Remove descriptor_indexing fails +- radv/rt: Rename shader_pc and next_shader +- radv/rt: Rename traversal_shader to traversal_shader_addr +- nir/opt_large_constants: Handle small float arrays +- bin: Update spirv sources +- vulkan: Allow beta extensions for physical device features +- vulkan: Allow beta extensions for physical device properties +- vulkan Add enqueue entrypoint for CmdDispatchGraphAMDX +- nir: Add shader enqueue data structures and handling +- spirv: Update headers and grammer JSON +- spirv: Implement SPV_AMDX_shader_enqueue +- lavapipe: Add lvp_pipeline_type +- lavapipe: Implement exec graph pipelines +- lavapipe: Implement AMDX_shader_enqueue commands +- lavapipe: Advertise AMDX_shader_enqueue +- radv: Add internal_nodes_offset to scratch_layout +- radv: Remove leaf_args::dst_offset +- radv/rt: Remove some dead code +- radv/rt: Do not apply stack_ptr for non-recursive stages +- radv/rt: Add and use radv_build_traversal +- radv/rt: Insert rt_return_amd before lowering shader calls +- radv/rt: Split stage initialization and hashing +- aco: Do not fixup registers if there are no shader calls +- radv: Stop updating the stack_size in insert_rt_case +- lavapipe: Lock around CSO destroys +- vulkan/wsi/x11: Implement capture hotkey using the keymap +- venus: Use the common GetPhysicalDeviceFeatures2 implementation +- nir/lower_shader_calls: Limit the remat chain length +- lavapipe: Avoid lowering shaders twice +- lavapipe: Fix the locking around cso destruction +- aco/validate: Handle p_wqm like p_parallelcopy +- aco: Use bytes() instead of size() in emit_wqm +- aco: Unify demote and demote_if selection +- radv: Only generate debug info if required +- aco/lower_to_cssa: Fix typo +- radv: Don't use the depth image view for depth bias emission +- radv/rt: Store NIR shaders separately +- radv/rt: Add monolithic raygen lowering +- radv/rt: Enable monolithic pipelines +- radv/ci: Document new flake +- vulkan/properties: Handle unsized arrays properly +- radv: Remove dead radix_sort_vk_get_memory_requirements call +- radv/radix_sort: Vendor the radix sort dispatch code +- radv: Perform multiple sorts in parallel +- radv/ci: Improve ray tracing skips +- ac/llvm: Fix typed loads with 16bit formats +- ac/llvm: Use the correct return type for uadd_carry and usub_borrow +- ac/llvm: Use float types for float atomics +- radv: Don't advertise features requiring PS epilogs with LLVM +- radv: Update navi21 llvm fails +- radv/rt: Handle stages without nir properly +- radv: Remove ray tracing shader module identifier skips +- radv/bvh: Treat instances with mask == 0 as inactive +- radv/ray_queries: Skip cull_mask handling if it is FF +- radv/rt: Skip cull_mask handling if it is FF +- aco/spill: Make sure that offset stays in bounds +- nir: Add nir_cf_node_cf_tree_prev +- nir: Add nir_foreach_block_in_cf_node_reverse +- nir: Add nir_rematerialize_deref_in_use_blocks +- nir/lcssa: Fix rematerializing derefs +- nir/deref: Layer rematerialization helpers +- lavapipe/ci: Fix asan expectations +- hasvk: Use the common GetPhysicalDeviceFeatures2 implementation +- vulkan: Remove vk_get_physical_device_core_1_*_feature_ext +- radv/bvh/ploc: Load child bounds from LDS +- radv: Merge the sync_data and header initialization +- radv: Do not sync after radv_update_buffer_cp +- zink: Initialize primitive types to an invalid value +- nir/passthrough_gs: Support edge flags with points +- zink: Enable edge flags with points +- mesa: Fix glBegin/End when LINE_LOOP is not supported +- llvmpipe: Compile a nop texture function for unsupported configurations +- radv/rt: Use nir_shader_instructions_pass for lower_rt_instructions +- radv/sqtt: Fix tracing acceleration structure commands + +Lang Yu (5): + +- amd/common: add AMD_CODE_PROPERTY_ENABLE_WAVEFRONT_SIZE32 property +- radeonsi: use AMD_CODE_PROPERTY_ENABLE_WAVEFRONT_SIZE32 to determine wave size +- radeonsi: use wave size to determine index stride +- amd/common: add missing stuff for gfx11.5 +- amd/radeonsi: add missing stuff for gfx11.5 + +Leandro Ribeiro (13): + +- egl: rewrite outdated comment in _eglFindDevice() +- egl: remove unused parameter from _eglAddDRMDevice() +- egl: simplify _eglAddDRMDevice() +- egl: make explicit that we don't support render nodes for software EGLDevice +- egl: move is_render_node flag to platform_wayland +- loader: rename loader_open_render_node() to loader_open_render_node_platform_device() +- loader: add driver list as parameter in loader_open_render_node_platform_device() +- pipe-loader: add pipe_loader_get_compatible_render_capable_device_fd() +- dri: add queryCompatibleRenderOnlyDeviceFd() to __DRI_MESA extension +- kmsro: try to use only compatible render-capable devices +- loader: add loader_is_device_render_capable() +- egl/drm: get compatible render-only device fd for kms-only device +- egl: error out if we can't find an EGLDevice in _eglFindDevice() + +Leo Liu (4): + +- radeonsi: add AV1 profile to supported profile +- radeonsi/vcn: fix the incorrect dt_size +- Revert "frontends/va: Also map VAImageBufferType for reading" +- ac/gpu_info: override ib_size_alignment for VCN_DEC and JPEG + +Lina Versace (14): + +- docs: Add row for VK_KHR_maintenance5 +- intel/pci_ids: Consistently use lowercase +- venus: Sync protocol for VK_EXT_graphics_pipeline_library +- venus: Erase pViewports and pScissors in fewer cases +- venus: Fix crash when VkGraphicsPipelineCreateInfo::layout is missing +- venus: Fix subpass attachments +- venus: Drop incorrectly-used always-true pipeline vars +- venus: Use VkImageAspectFlags in vn_subpass +- venus: Add enum vn_pipeline_type +- venus: Renames for VkGraphicsPipelineCreateInfo fixes +- venus: Refactor pipeline fixup into two stages +- venus: Do pipeline fixes for VK_EXT_graphics_pipeline_library +- venus: Enable VK_EXT_graphics_pipeline_library behind debug flag +- venus: Fix -Wmaybe-uninitialized + +LingMan (22): + +- rusticl/memory: fix potential use-after-free in clEnqueueSVMFree +- rusticl: Rename XyzCB aliases to FuncXyzCB +- rusticl: add structs to hold the C callbacks +- rusticl: use CreateContextCB +- rusticl: use DeleteContextCB +- rusticl: use EventCB +- rusticl: use MemCB +- rusticl: use ProgramCB +- rusticl: use SVMFreeCb +- rusticl: Make EventSig take ownership of its environment +- rusticl: add a safe abstraction to execute a DeleteContextCB +- rusticl: add a safe abstraction to execute an EventCB +- rusticl: add a safe abstraction to execute a MemCB +- rusticl: add a safe abstraction to execute an SVMFreeCb +- rusticl: add a safe abstraction to execute a CreateContextCB +- rusticl: add a safe abstraction to execute a ProgramCB +- rusticl/api: drop a few include paths +- rusticl: mark the fields of callback structs private +- rusticl: drop an \`#[allow(dead_code)]` marker +- rusticl/core: don't take a lock while dropping \`Context` +- rusticl: Show an error message if the build is attempted with an outdated bindgen version +- rusticl: Show an error message if the version of bindgen can't be detected + +Lionel Landwerlin (169): + +- anv: hide exec_flags selection inside the i915 backend +- isl: add a tool to query surface parameters +- intel/fs: fix missing predicate on SEL instruction +- intel/compiler: rework input parameters +- ci/a530: switch a few tests to flakes to unblock CI +- vulkan: bump header register to 1.3.258 +- intel/fs: don't try to rebuild sequences of non ssa values +- intel/vec4: fix log_data pointer +- intel/fs: consider UNDEF as non-partial write +- intel/fs: add more UNDEFs around SEND messages +- isl: add ability to store buffer size in unused RENDER_SURFACE_STATE fields +- anv: simplify buffer address+size loads from descriptor buffer +- intel/fs: add support for sparse accesses +- intel/nir: handle image_sparse_load in storage format lowering +- intel/nir: add lower for sparse images & textures +- anv: wire image sparse loads +- blorp: switch blorp_update_clear_color to early return +- blorp: update and move fast clear PIPE_CONTROLs to drivers +- anv: fix 3DSTATE_RASTER::APIMode field setting +- anv: enable EDS3 ConservativeRasterizationMode +- vulkan: skip non required extension structures +- vulkan/runtime: add a layered implementation of vkCmdBindIndexBuffer +- anv: enable INTEL_DEBUG=nofc +- anv: fake non intel vendorID for Death Stranding +- hasvk: fix null descriptor handling with A64 messages +- anv: remove descriptor array bounds checking +- hasvk: remove descriptor array bounds checking +- anv/hasvk: track robustness per pipeline stage +- anv: implement VK_EXT_pipeline_robustness +- intel/fs: track more steps with INTEL_DEBUG=optimizer +- intel/fs: add variable for output of debug backend optimizer +- intel/decoder: constify some input parameters +- blorp: drop programming of 3DSTATE_(MESH|TASK)_SHADER +- anv: emit 3DSTATE_GS only once per pipeline +- intel/decoder: add options to decode surfaces/samplers +- anv: get rid of genX(emit_multisample) +- anv: move genX(rasterization_mode) to gfx8_cmd_buffer.c +- anv: don't try to access dynamic buffers from surface states +- iris: ensure stalling pipe control before fast clear +- intel/compiler: disable per-sample interpolation modes with non-per-sample dispatch +- intel/compiler: fix dynamic alpha-to-coverage handling +- intel/fs: implement dynamic interpolation mode for dynamic persample shaders +- intel/fs: move lower of non-uniform at_sample barycentric to NIR +- zink+anv: add regression testing with pipeline libraries +- anv: implement vkCmdBindIndexBuffer2KHR +- anv: handle new VkBufferViewUsageCreateInfoKHR +- anv: add vkGetRenderingAreaGranularityKHR() +- anv: implement GetDeviceImageSubresourceLayoutKHR/GetImageSubresourceLayout2KHR +- anv: add maintenance5 A8_UNORM/A1B5G5R5_UNORM support +- anv: deal with new pipeline flags +- anv: enable KHR_maintenance5 +- anv: add missing ISL storage usage +- genxml/gfx11: remove Tiled Resource Mode field from HIER_DEPTH_BUFFER +- genxml/gfx12: rename Tiled Resource Mode +- isl: program 3DSTATE_HIER_DEPTH_BUFFER_BODY::TiledMode as documented +- intel/isl: Disallow Yf, Ys and Tile64 for 3D depth/stencil surfaces +- isl: disable Yf/Ys/Tile64 tilings for 1D images +- isl: add a usage flag to request 2D/3D compatible views +- isl: disallow TileYs/Yf on 3D storage images on Gfx9/11 +- intel/isl: Add a max_miptail_levels field to isl_tile_info +- isl: make isl_surf_get_uncompressed_surf robust to argument accesses +- isl: add Gfx12/12.5 restriction on 3D surfaces & compression +- isl: disallow miptails on planar formats +- isl: disable miptails on gfx12 with yuv formats +- isl: disable CCS on Ys/Yf +- blorp: allow 3D blits/copies on Ys/Yf/Tile64 tiling +- intel/aux_map: correctly program tiling mode for Ys +- isl: reorder tiling selection +- anv: enable standard Y tiles +- isl/tilememcpy_test: add multiple tile testing +- anv: rename total_batch_size +- anv: reuse cmd_buffer::total_batch_size +- intel/measure: track batch buffer sizes +- intel/nir: rerun lower_tex if it lowers something +- intel/fs: limit register flag interaction of FIND_*LIVE_CHANNEL +- hasvk: add state cache invalidation back before fast clears +- blorp: remove unused variable +- anv: remove ReorderMode from pipeline 3DSTATE_GS emission +- anv: change anv_batch_emit_merge to also do packing +- intel/anv: batch stats util +- intel/decoder: implement accumulated prints +- anv: move all dynamic state emission to cmd_buffer_flush_dynamic_state +- anv: rename files to represent their usage +- anv: categorize partial/final pipeline instruction +- anv: split 3DSTATE_TE packing between static & dynamic parts +- anv: split 3DSTATE_VFG emission +- anv: add a flag tracking occlusion query count change +- anv: split pipeline programming into instructions +- vulkan/runtime: add helper to name dirty states +- anv: add new low level emission & dirty state tracking +- anv: remove unused state emission +- anv: split BLEND_STATE packing from BLEND_STATE_POINTERS emit +- docs: update Anv documentation about dynamic state emission +- anv: create individual logical engines on i915 when possible +- anv: Copy/Clear MSAA images over companion RCS while we are on compute +- pps-producer: add ability to select device with DRI_PRIME +- anv: remove aux checking asserts +- anv: bound image usages to the associated queue family +- anv: fix 3DSTATE_VFG emission +- anv: emit 3DSTATE_URB_ALLOC_(MESH|TASK) only when mesh shaders are enabled +- anv: ensure mesh pipeline have all pre-rasterization stages disabled +- anv: ensure partially packed instructions are emitted in the pipeline +- anv: fix missing 3DSTATE_SBE_MESH emission +- anv: fix utrace timestamp buffer copies +- anv: add a memcpy compute internal kernel +- anv: add simple shader support without a command buffer +- anv: move simple shaders code to its own object +- anv: move utrace flush out of backends +- anv: enable utrace timestamp buffer copies on compute engine +- intel: don't assume Linux minor dev node +- intel/ds: lock submissions to u_trace_context +- util/u_trace: count number of tracepoints +- intel/ds: track number of tracepoint timestamp copies +- anv/utrace: trace CPU on timestamp buffer readiness +- intel/ds: avoid dropping traces when running out of shared memory +- anv/iris: widen Wa_14015946265 to Gfx11+ +- anv: add missing workaround for 3DSTATE_LINE_STIPPLE +- iris: add missing workaround for 3DSTATE_LINE_STIPPLE +- intel/fs: handle ishl in surface/sampler rematerialization +- intel/fs: handle add3 in surface/sampler rematerialization +- intel/fs: switch from SIMD 1 to 8 instructions surface/sampler rematerialization +- anv: fix internal compute copy shader build +- anv: reduce working temporary memory for BVH builds +- anv: move bo_pool allocation flags to init caller +- anv: use buffer pools for BVH build buffers +- intel/ds: track acceleration RT commands +- anv: fix index buffer size programming +- anv: implement INTEL_DEBUG=reemit +- anv: add missing workaround handling in simple shader +- anv: fix a couple of missing input for 3DSTATE_RASTER programming +- anv: flag 3DSTATE_RASTER as dirty after simple shader primitive +- vulkan: bump headers/registry to 1.3.267 +- anv: rename primary in container in ExecuteCommands() +- anv: add support for VK_EXT_nested_command_buffer +- anv: simplify push descriptors +- anv: fixup spirv cap for ImageReadWithoutFormat on Gfx12.5 +- Revert "intel/fs: limit register flag interaction of FIND_*LIVE_CHANNEL" +- anv: update batch chaining to Gfx9 commands +- anv: workaround Gfx11 with optimized state emission +- u_trace: generate tracepoint index parameter in perfetto callbacks +- u_trace: generate tracepoint name array in perfetto header +- intel/ds: provide names for different events of a timeline's row +- anv: reuse local variable for gfx state +- anv: track render targets & render area changes separately +- anv: don't uninitialize bvh_bo_pool is not initialized +- anv: uninitialize queues before utrace +- anv: move generation shader return instruction to last draw lane +- anv: fix generated draws gl_DrawID with more than 8192 indirect draws +- anv: extract out draw call generation +- anv: identify internal shader in NIR +- anv: avoid MI commands to copy draw indirect count +- anv: move generation batch fields to a sub-struct +- util/glsl2spirv: add ability to pass defines +- anv: factor out host/gpu internal shaders interfaces +- anv: index indirect data buffer with absolute offset +- anv: add ring buffer mode to generated draw optimization +- anv: merge gfx9/11 indirect draw generation shaders +- anv: document the draw indirect optimization ring mode +- anv: fixup 32bit build of internal shaders +- anv: fix uninitialized use of compute initialization batch +- intel/fs: fix dynamic interpolation mode selection +- anv/meson: add missing dependency on the interface header +- anv: fix corner case of mutable descriptor pool creation +- isl: disable MCS compression on R9G9B9E5 +- intel/fs: rerun divergence analysis prior to convert_from_ssa +- intel/nir/rt: fix reportIntersection() hitT handling +- anv: fix CC_VIEWPORT pointer dirty after blorp/simple-shaders +- anv: fix dirty state tracking for 3DSTATE_PUSH_CONSTANT_ALLOC +- intel/perf: fix querying of configurations + +Louis-Francis Ratté-Boulianne (15): + +- panfrost: Fix error in comment +- panfrost: Add methods to determine slice and body alignment +- panfrost: Add method to get size of AFBC subblocks +- panfrost: Precalculate stride and nr of blocks for AFBC layouts +- panfrost: Add panfrost_batch_write_bo +- panfrost: Make panfrost_resource_create_with_modifier public +- panfrost: Split out internal of \`panfrost_launch_grid` +- panfrost: Add infrastructure for internal AFBC compute shaders +- panfrost: Add method to get size of AFBC superblocks valid data +- panfrost: Add support for AFBC packing +- panfrost: Legalize resource when attaching to a batch +- panfrost: Don't force constant modifier after converting +- panfrost: Add debug flag to force packing of AFBC textures on upload +- panfrost: Add some debug utility methods for resources +- panfrost: Add env variable for max AFBC packing ratio + +Lucas Stach (33): + +- ci/etnaviv: update ci expectation +- etnaviv: move resource seqnos to level +- etnaviv: flush destination before executing blit +- etnaviv: optimize resource copies by skipping clean levels +- etnaviv: add helper to mark resource level as flushed +- etnaviv: add helper to mark resource level as changed +- etnaviv: add helper to transfer resource level age to another +- etnaviv: add helper to get TS validity +- etnaviv: add helper to set TS validity +- etnaviv: move TS meta into etna_resource_level +- etnaviv: add tile status buffer status into TS metadata +- etnaviv: optimize sampler source update +- etnaviv: allow sampler TS even if the resource is flushed +- etnaviv: keep blit destination tile status valid if possible +- etnaviv: optimize render resource update +- etnaviv: optimize transfers when whole resource level is discarded +- etnaviv: split etna_copy_resource_box levels parameter in src/dst +- etnaviv: don't allocate full resource as transfer staging +- etnaviv: check for valid TS as condition to create the staging resource +- etnaviv: reword comment about staging resource usage +- etnaviv: remove huge outdated comment +- etnaviv: move buffer range tracking into the PIPE_MAP_WRITE clause +- etnaviv: remove superfluous braces +- etnaviv: remove always true assert in etna_transfer_unmap +- etnaviv: remove bogus comment about replacing resource storage +- etnaviv: initialize VIVS_GL_BUG_FIXES +- etnaviv: fix read staging buffer leak +- Revert "ci/etnaviv: allow failure on failing test" +- mesa: enable NV_texture_barrier in GLES2+ (again) +- etnaviv: use correct blit box sizes when copying resource +- etnaviv: zero shared TS metadata block +- Revert "etnaviv: use correct blit box sizes when copying resource" +- mesa: add GL_APPLE_sync support + +Luigi Santivetti (1): + +- pvr: do not claim support for ASTC texture compression + +M Henning (31): + +- nv50/ir: Drop nir_jump_return handling +- nv50/ir: Remove ArgumentMovesPass +- nv50/ir: Remove Function.stackPtr +- nv50/ir: Remove dead loop from assignSlot +- nv50/ir: Remove SpillSlot +- nvc0: Keep nir directly in nvc0_program +- nv50: Keep nir directly in nv50_program +- nouveau: Delete nv50_ir_from_tgsi.cpp +- nouveau: Drop tgsi support from nv50_ir_prog_info +- nouveau: Drop ConverterCommon::Subroutine +- nouveau: Drop BuildUtil::DataArray +- nouveau: Drop BuildUtil::Location +- nouveau: Delete the nouveau_compiler tool +- nv/codegen: Call nir_shader_gather_info +- nv/codegen: Implement nir_op_fquantize2f16 +- nvk: Remove reference to genUserClip +- nv/codegen: Use nir_lower_clip +- nv50_ir_from_nir: Use nir's lower_fpow +- nv/codegen: Delete OP_POW +- nv/codegen: Fix an uninitialized variable warning +- nv/codegen: Delete OP_WRSV +- nv/codegen: Delete OP_EXP, OP_LOG +- nv/codegen: Remove fragCoord variable. +- nv/codegen: Merge from_common into from_nir +- nv/codegen: Remove unused clipVertexOutput var +- nv50_ir_ra: Delete unused functions +- nv/codegen: Delete unused OP_CONSTRAINT +- nv/codegen: Delete periodicMask32 +- nv/codegen: Remove Function::buildDefSets +- nv/codegen: Change copy-constructor call to assign +- nv/codegen: Delete copy and assign + +Maaz Mombasawala (2): + +- svga: Make surfaces shareable at creation. +- svga: Unify gmr and mob surface pool managers + +Marcin Ślusarz (16): + +- iris: avoid duplicating validation entries +- hasvk: remove dead code & comments related to mesh shading +- anv: drop support for VK_NV_mesh_shader +- intel/compiler: remove NV_mesh_shader support +- intel/compiler: remove redundant code +- anv: drop unused function +- anv: merge cases leading to the same code +- intel/compiler/mesh: compactify MUE layout +- intel/compiler,anv: put some vertex and primitive data in headers +- intel/compiler: load debug mesh compaction options once +- intel/compiler/test: fix crashes when TEST_DEBUG is set +- intel/compiler: add lsc_msg_desc_wcmask +- intel/compiler: add initial support for URB_LOGICAL_SRC_CHANNEL_MASK to lower_urb_write_logical_send_xe2 +- intel/compiler/mesh: fix position of output URB handle for xe2 +- intel/compiler/mesh: implement IO for xe2 +- intel/compiler: mask GS URB handles at thread payload construction + +Marek Olšák (125): + +- Revert "ac/nir/ngg: Follow intrinsic sources when analyzing before culling." +- glthread: determine global locking once every 64 batches to fix get_time perf +- mesa: fix 38% decrease in display list performance of Viewperf2020/NX8_StudioAA +- freedreno,lima,zink: update CI fixes and flakes +- util/u_queue: fix util_queue_finish deadlock by merging lock and finish_lock +- util/u_queue: always enable UTIL_QUEUE_INIT_SCALE_THREADS, remove the flag +- radeonsi: fix a CDNA regression breaking compute +- glthread: sync for VDPAU sync functions +- radeonsi: turn sh_base[PIPE_SHADER_VERTEX] into a constant in emit_draw_packets +- radeonsi: restructure the loop for non-indexed multi draws +- radeonsi: cosmetic changes to radeon_opt_* macros +- radeonsi: handle draw user SGPRs as tracked registers +- radeonsi: update obsolete comments about compiler queues +- radeonsi: remove si_compute.h, move the contents into si_pipe.h +- radeonsi: move si_update/emit_tess_io_layout_state into si_state_shaders.cpp +- radeonsi: move si_emit_spi_map into si_state_shaders.cpp +- radeonsi: move si_emit_rasterizer_prim_state out of si_emit_all_states +- radeonsi: remove splitting IBs that use too much memory +- radeonsi: add padding to si_resource to fix Viewperf2020/catiav5test1 perf +- radeonsi: remove unused check_mem parameter from si_sampler_view_add_buffer +- radeonsi: remove the draw counter with primitive restart from the HUD +- radeonsi: always inline si_prefetch_shaders +- radeonsi: specialize si_draw_rectangle using a C++ template +- radeonsi: add index parameter into si_atom::emit +- radeonsi: split direct pm4 emission from si_pm4_emit +- radeonsi: move code around si_pm4_emit_state into si_pm4_emit_state +- radeonsi: merge pm4 state and atom emit loops into one +- radeonsi: add a simple version of si_pm4_emit_state for non-shader states +- radeonsi: handle deferred cache flushes as a state (si_atom) +- radeonsi: remove render condition logic from si_draw by reordering atoms +- radeonsi: abort when failing to upload descriptors instead of skipping draws +- radeonsi: rename shader_pointers state -> gfx_shader_pointers +- radeonsi: merge si_upload_*_descriptors into si_emit_*_shader_pointers +- radeonsi: convert si_gfx_resources_add_all_to_bo_list to a state atom +- radeonsi/ci: update gfx11 failures +- radeonsi: move GE_CNTL emission from si_draw into si_emit_vgt_pipeline_state +- radeonsi: use num_patches_per_workgroup directly in si_get_ia_multi_vgt_param +- radeonsi: enable shader culling by default because it helps Viewperf +- radeonsi: rewrite how occlusion query precision is determined for performance +- radeonsi: set PIPE_CONTEXT_LOSE_CONTEXT_ON_RESET on aux_context explicitly +- radeon_winsys: move allow_context_lost from cs_create to ctx_create +- winsys/amdgpu: rework how SW reset status is generated and reported +- radeon_winsys: add a ctx_set_sw_reset_status callback +- radeonsi: don't abort for descriptor failures, let the winsys handle it +- radeonsi: don't use threadID.yz/blockID.yz for copy_image if those are always 0 +- radeonsi: don't use threadID.yz/blockID.yz for compute_blit if they're always 0 +- nir: fix constant evaluation of fddx/fddy sourcing Inf & NaN constant +- nir/algebraic: collapse ALU opcodes sourcing NaN +- ac/gpu_info: add the /dev/dri/ filename into radeon_info +- Revert "ac: don't call ac_query_pci_bus_info from ac_query_gpu_info" +- ac: implement AMD_FORCE_FAMILY properly, remove SI_FORCE_FAMILY +- ac: document ac_shader_args::gs_vtx_offset +- ac: minor updates to packet documentation and definitions +- ac: change offsets of DMA_DATA dwords to prevent reg offset conflicts +- ac: improve the IB parser +- ac: update gfx11 shadowed register tables +- ac: add a standalone IB parser program +- ac/surface: trivial non-functional changes +- ac/surface: add radeon_surf::u::gfx9::uses_custom_pitch +- radeonsi: allow setting any index in radeon_set_sh_reg_idx +- radeonsi: rename uses_subgroup_info to uses_tg_size +- radeonsi: improve the heuristic when to use Wave32 for compute shaders +- radeonsi: simplify/merge emit_shader_ngg functions +- radeonsi: don't pass gl_Layer to PS for blit shaders +- radeonsi/gfx11: pass attribute ring addr via SGPR instead of memory for blits +- radeonsi: fix templated si_draw_rectangle callback for Navi14 +- nir: replace undef only used by ALU opcodes with 0 or NaN +- nir: remove nir_op_unpack_64 handling from nir_opt_undef +- ac/llvm: don't convert undef to 0 because nir_opt_undef does it now +- meson: use llvm-config instead of cmake to fix linking errors with meson 1.2.1 +- gallivm: fix build with LLVM 18 +- amd/llvm: fix build with LLVM 18 +- radeonsi: fix compute-only contexts +- ac/llvm: replace removed amdgcn.ldexp for LLVM 18 +- ac/perfcounter: remove a bogus assert to fix an assertion failure on gfx11 +- ac/llvm: set !fpmath 3.0 for llvm.sqrt +- ac/gpu_info: don't align IBs to the GL2 cache line size +- ac/llvm: fix flat PS input corruption +- amd: rename GFX110x to NAVI31-33 +- ac/gpu_info: replace ib_alignment with per-IP IB base and size alignments +- ac/gpu_info: pad IBs according to ib_size_alignment +- winsys/amdgpu: pad gfx and compute IBs with a single NOP packet +- Revert "radeonsi: specialize si_draw_rectangle using a C++ template" +- radeonsi/ci: update navi10 results +- gallium/util: fix GALLIUM_TESTS=1 by using cso_set_vertex_buffers_and_elements +- gallium/util: add more tests for compute-only contexts +- radeonsi: add another aux context for uploading shaders +- radeonsi: upload shaders via a staging buffer so as not to map VRAM directly +- ac/surface: don't require exact pitch for gfx6-8 tiled imports +- Revert "ac/gpu_info: override ib_size_alignment for VCN_DEC and JPEG" +- Revert "radv/amdgpu: fix alignment of command buffers" +- Revert "radv: fix alignment of DGC command buffers" +- Revert "winsys/amdgpu: pad gfx and compute IBs with a single NOP packet" +- Revert "ac/gpu_info: pad IBs according to ib_size_alignment" +- Revert "ac/gpu_info: replace ib_alignment with per-IP IB base and size alignments" +- nir: sort variables by location in nir_lower_io_passes to work around a bug +- nir: recompute IO bases after DCE in nir_lower_io_passes +- nir: add dual-slot input information into load_input intrinsics +- nir: take dual slot input info into account when computing IO driver locations +- nir: gather dual slot input information +- nir: expose reusable linking helpers for cloning uniform loads +- nir: handle nir_var_mem_ubo in nir_clone_uniform_variable +- ac/gpu_info: split ib_alignment as ip[type].ib_alignment +- ac/gpu_info: move ib_pad_dw_mask into ip[] +- ac/gpu_info: drop the hack unifying all IB alignments +- ac/gpu_info: conservatively decrease IB alignment and padding to 256B +- ac/gpu_info: set gfx and compute IB padding to only 8 dwords +- winsys/amdgpu: properly pad the IB in amdgpu_submit_gfx_nop +- winsys/amdgpu: correctly pad noop IBs for RADEON_NOOP=1 +- winsys/amdgpu: pad gfx and compute IBs with only 1 NOP +- ac/gpu_info: don't allow register shadowing with SR-IOV due to bad performance +- radeonsi: disable register shadowing without SR-IOV to fix bad performance +- winsys/amdgpu: don't send CP_GFX_SHADOW chunk if shadow address is not set +- radeonsi/ci: update gfx1100 results +- nir: split FLOAT_CONTROLS_SIGNED_ZERO_INF_NAN_PRESERVE_FP* flags +- nir/algebraic: use only signed_zero_preserve_* for addition by 0 patterns, etc. +- mesa: don't pass Infs to the shader via gl_Fog.scale +- radeonsi/ci: update the runner for new build scripts +- radeonsi/ci: enable GTF tests in the runner +- radeonsi/ci: enable GLES CTS in the runner +- radeonsi/ci: update failures and flakes +- amd/common: update DCC for gfx11.5 +- radeonsi: initialize perfetto in the right place +- radeonsi/gfx11: don't set OREO_MODE to fix rare corruption +- nir: fix gathering TESS_LEVEL_INNER/OUTER usage with lowered IO + +Marek Vasut (1): + +- etnaviv: Fully replicate back stencil config + +Mark Collins (10): + +- tu/a7xx: Adapt r3d blits for A7xx +- freedreno/rnn: Remove %n usage in fprintf +- freedreno: Only add drm/computerator when system_has_kms_drm +- freedreno/decode: Support building replay for multiple KMDs +- freedreno+meson: Add lua+libarchive+libxml from Meson WrapDB +- meson: Warn about side-effects from DRM for FD KMDs +- meson: Update libarchive to v3.7.2-2 +- freedreno/common: Add max_sets property to A6xxGPUInfo +- tu: Support higher descriptor set count for A7XX +- tu,util/driconf: Add option to not reserve descriptor set + +Mark Janes (1): + +- intel: allow reduced memory usage for INTEL_MEASURE + +Martin Roukala (né Peres) (22): + +- radv/ci: drop the auto-reboot-on-hang for vkcts-navi10 +- radv/ci: use the default kernel on vkcts-navi10 +- zink/ci: automatically reboot when hitting a kernel BUG on vangogh +- zink/ci: document more flakes seen on vangogh +- radv/ci: move vkcts-navi10 testing to KWS +- radv/ci: add more tests to the navi10 vkcts flake list +- radv/ci: increase the parallelism of the vkcts-navi21 job +- radv/ci: add more tests to the navi21 vkcts flake list +- radv/ci/vkcts-navi21: catch all the line_stipple_(enable|params) flakes +- radv/ci/vkcts-navi21: document more flakes +- radv/ci/vkcts-navi10: catch all the line-related flakes +- radv/ci: update the vkcts gfx1100 flake/fail lists +- radv/ci: add a manual job to run vkcts on navi31 +- radv/ci: add a manual job for vkd3d-proton on navi31 +- ci/vkcts-vangogh: mark dEQP-VK.dynamic_rendering.primary_cmd_buff.basic.* as flake +- ci/vkcts-navi21: mark more of the RT handles checks as flakes +- ci: make B2C_JOB_VOLUME_EXCLUSIONS to all .b2c-test jobs +- zink/ci: remove 19 tests from the zink-radv-polaris10-fails list +- ci/b2c: switch containers to a back-up ahead of valve-infra renaming +- zink/ci: remove 42 tests from the zink-radv-polaris10-fails list +- radv/ci: tighten the vkcts-navi21 timeouts +- zink/ci: tighten the zink-radv-vangogh timeouts + +Martin Stransky (1): + +- llvmpipe: fix UAF in lp_scene_is_resource_referenced. + +Mary (6): + +- nouveau/mme: Add initial Fermi definition +- nouveau/mme: Add Fermi builder +- nouveau/mme: Add Fermi simulator +- nouveau/mme: Add Fermi hardware tests +- agx: Move nir_lower_fragcolor out of agx_preprocess_nir +- agx: Ensure to lower 1D image load/store to 2D + +Mary Guillemard (4): + +- nir: Add NVIDIA-specific geometry shader opcodes +- venus: skip bind sparse info when checking for feedback query +- zink: Check for VK_EXT_extended_dynamic_state3 before setting A2C +- venus: Do not submit batch manually when no feedback is required + +Matt Coster (21): + +- pvr: Pad rogue_regarray_cache_key union members to avoid UB +- pvr: Clean up extension tables +- pvr: Refactor pvr_GetPhysicalDeviceProperties2() +- docs: Fixup imagination/pvr extension support +- pvr: Add VK_KHR_get_display_properties2 +- pvr: Add VK_KHR_get_memory_requirements2 +- pvr: Add VK_KHR_get_surface_capabilities2 +- pvr: Print VkStructureType name on pvr_debug_ignored_stype() +- pvr: Add VK_KHR_copy_commands2 +- pvr: Don't override commands copied to new buffer when extending cs +- pvr: Do not require TA_STATE_HEADER.pres_ispctl_dbsc for {db,sc}enable +- pvr: Zero tail of cs buffers after linking when dumping cs +- pvr: Cleanup comments in pvr_physical_device_get_supported_*() +- pvr: Don't rely on GNU void pointer arithmetic +- pvr: Force compile error on GNU void pointer arithmetic +- pvr: Switch to common pipeline cache implementation +- pvr: Use vk_sampler base +- pvr: Clean up & fix sampler border color support +- pvr: Don't pass pvr_physical_device when only device info is needed +- pvr: Minor refactor of pvr_device.c +- pvr: Use common physical device properties + +Matt Turner (10): + +- Revert "intel/fs: only avoid SIMD32 if strictly inferior in throughput" +- intel: Rearrange for next commit +- intel: Consider with_intel_clc in with_any_intel +- intel: Only build blorp if drivers are enabled +- intel: Only build ds if drivers are enabled +- intel: Only build perf if drivers or tools are enabled +- intel: Allow using intel_clc from the system +- intel: Limit Intel Vulkan RT to x86_64 +- r600: Add missing dep on git_sha1.h +- util: Include stdint.h in libdrm.h + +Mauro Rossi (7): + +- nouveau/ws: fix building error in nouveau_ws_push_dump() +- vulkan/meta: fix gnu-empty-initializer build error +- nouveau/mme: fix print inst for case MME_FERMI_OP_MERGE +- anv/android: remove numFds check +- hasvk/android: remove numFds check +- Android.mk: filter out cflags to build with Android 14 bundled clang +- Android.mk: disable android-libbacktrace to build with Android 14 + +Mike Blumenkrantz (293): + +- ci: bump VVL to 1.3.257 +- zink: set pipeline dynamic state count after all dynamic states are set +- zink: set feedback attachments on batch init +- zink: be even dumber about buffer refs when replacing storage +- zink: emit SpvCapabilitySampleMaskPostDepthCoverage with SpvExecutionModePostDepthCoverage +- zink: fix the fix for separate shader program refcounting +- kopper: handle pixmap creation failure more gracefully +- glxsw: check geometry of drawables on creation +- kopper: move pixmap param for drawable creation to info struct +- glx/dri3: split out modifier check +- glx/sw: check for modifier support in the kopper path +- kopper: pass modifier availability to drawable creation +- kopper: determine modifier support per-drawable +- zink: don't clobber descriptor mode on multiple screen creation +- nir: fix slot calculations for compact variables with location_frac +- lavapipe: use the component offset directly for xfb +- nir: add a helper for calculating variable slots +- radv: bump max xfb output to 128 +- ir3: bump max xfb output to 128 +- gallium: bump PIPE_MAX_SO_OUTPUTS to 128 +- zink: add feedback loop exts to optimal profile +- glsl: only explicitly check GS components in PSIZ injection with output variables +- lavapipe: statically allocate fb attachment array +- lavapipe: zero fb attachment array at rp start +- lavapipe: don't check geometry for fb attachments +- lavapipe: be slightly more permissive for bad apps (and cts) with dynrender +- lavapipe: VK_EXT_host_image_copy +- zink: better handle separate shader dsl creation when no bindings exist +- zink: force image barriers after dmabuf import +- ci: bump VVL to 1.3.261 +- zink: use VK_WHOLE_SIZE when binding null db buffer descriptors +- zink: unset line stipple ds3 state flags when stipple not available +- nir/lower_io_to_scalar: fix 64bit io splitting +- nir/linking_helpers: force type matching in does_varying_match +- nir/print: print location names for (some) tess slots +- nir/print: always group variables by type when printing +- zink: add batch refs for transient images +- zink: fix zs resolve attachment indexing +- zink: don't add VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT for transient images +- zink: don't append msrtss to dynamic render if not supported +- zink: set msrtss depth resolve mode when enabled +- zink: hook up VK_KHR_workgroup_memory_explicit_layout +- zink: propagate have_workgroup_memory_explicit_layout to ntv +- zink: use SPV_KHR_workgroup_memory_explicit_layout when available +- zink: add more locking for pipeline cache +- zink: add VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT +- aux/trace: fix winsys handle dumping +- zink: generated tcs is on the tes, not the vs +- zink: apply ZINK_DEBUG=noopt to linked separate shaders +- gallivm: handle A8_UNORM image stores +- llvmpipe: enable A8_UNORM for shader images +- llvmpipe: export PIPE_CAP_IMAGE_LOAD_FORMATTED +- lavapipe: GetRenderingAreaGranularityKHR +- llvmpipe: block weird uses of subsampled formats in buffers +- llvmpipe: fix early depth + alpha2coverage + occlusion query interaction +- lavapipe: fix BindVertexBuffers2 buffer size handling +- lavapipe: fix resolves where src image has a layer offset +- lavapipe: block yuv formats from getting blit feature flags +- lavapipe: BindIndexBuffer2 +- lavapipe: GetDeviceImageSubresourceLayoutKHR +- lavapipe: VK_REMAINING_ARRAY_LAYERS for copy ops +- lavapipe: maintenance5 +- zink: fix xfb buffer array sizing to use buffer limit, not output +- zink: move ZINK_DEBUG=nir printing to just before compile +- draw: fix so debug offset printing +- zink: reindex ssa defs before dumping debug shaders +- lavapipe: zero-init pipe_sampler_state +- zink: explicitly set non-optimal last_vertex_stage shader key on ctx create +- zink: fix big tcs output io +- zink: don't try to replace separate shader prog in noopt mode +- zink: pre-convert mode in fixup_io_locations +- zink: add a special separate shader i/o mode for legacy variables +- nir: minor fixes for io_to_scalar +- nir/lower_io: add a new doubles-only 64bit lowering option +- nir: add a filter cb to lower_io_to_scalar +- d3d10umd: use cso_context to set vertex buffers and elements +- virgl: move virgl_vertex_elements_state to header +- virgl: fix some indentation +- nouveau: calloc vertex csos +- gallium: move vertex stride to CSO +- zink: fix null config screen creation +- zink: fix crash in lower_pv_mode_gs_store +- u/draw: skip zero-sized indirect draws +- lavapipe: handle VkPipelineCreateFlagBits2KHR +- lavapipe: handle VkBufferUsageFlags2KHR +- zink: ci updates +- zink: track start/stop of a couple query types +- zink: require EDS1 for CWE usage +- zink: unset primgen suspended flag when ending a primgen query +- zink: rework rast-discard for primgen queries +- zink: rip out some awkward parts of the old non-cwe path +- zink: drop CWE requirement for renderpass tracking with primgen queries +- nir/zink: fix gs emulation xfb_info sizing +- zink: move fragcolor lowering further along the compile process +- zink: add a mode param to find_var_with_location_frac +- zink: use lowered io (kinda) for i/o vars +- zink: stop lowering indirect derefs +- ntt: handle interp intrinsics as derefs +- zink: delete split_blocks pass +- zink: delete lower_64bit_vertex_attribs pass +- zink: fix clip/cull dist xfb inlining +- zink: delete all the extra gross xfb handling +- zink: stop using pipe_stream_output +- zink: remove pipe_stream_output from function params +- zink: ci updates +- aux/trace: print bindless handles as pointers +- zink: remove unused param from create_ici +- zink: split create_ici to init and eval +- zink: add maintenance extensions to profile +- zink: use maintenance5 +- zink: use real A8_UNORM when possible +- vk/graphics: fix CWE handling with DS3 +- Revert "vk/wsi/x11: handle geometry updating more asynchronously" +- r600: store the mask of buffers used by a vertex state +- r600: better tracking for vertex buffer emission +- zink: wait on async fence during ctx program removal +- zink: handle patch variable locations for separate shaders better +- zink: don't start multiple cache jobs for the same program +- zink: use the "set" optimal key for prog last_variant_hash for consistency +- zink: sanitize optimal keys +- zink: copy some cs shader properties to the program struct +- zink: handle global atomic intrinsics +- zink: use Aligned with global load/store ops +- zink: fix rewrite_read_as_0 filtering +- rusticl: fixes for zink shader images +- zink: pass KERNEL shaders through successfully +- zink: add a618 flake +- zink: break out ds3 state resetting +- zink: be consistent with ds3 state resetting for blits +- zink: fix optimal_keys warning message +- zink: force-reset unordered flags for buffer barriers on non-matching batch access +- zink: reset unordered flags for image barriers on non-matching batch access +- zink: make image barrier init functions void return +- zink: simplify some image barrier conditionals +- zink: remove sync TODO +- zink: add lavapipe flake +- ci: disable nouveau shaderdb +- egl/dri3: only set driver_name if not already set +- egl: call dri3_x11_connect() for zink +- egl: bind dri2_set_WL_bind_wayland_display for zink when necessary +- zink: be more precise about flagging rp changes around unordered u_blitter +- zink: don't block reordering during ref updates in unordered blits +- lavapipe: update vbo indices before propagating stride +- lavapipe: fix pipeline stride propagation +- zink: fix linear modifier dmabuf imports +- zink: polaris ci updates +- aux/tc: handle stride mismatch during rp-optimized subdata +- zink: always add a per-prog ref for gpl libs +- zink: use a pointer to simplify submit struct mechanics +- zink: make zink_resource_image_barrier2_init public +- zink: add a third submitinfo (unused for now) +- zink: make submitinfo handling easier to manage with enum +- zink: add another submitinfo for fd semaphore waits +- zink: add a screen cache for fd semaphores +- zink: add a util for getting cached fd semaphores +- zink: hook up cached fd semaphore usage for batch signal/waits +- zink: handle implicit sync for dmabufs +- zink: handle multi-plane implicit sync +- zink: ci updates +- zink: set is_xfb=false for all i/o variables +- zink: reorder bindless io lowering +- zink: fix typing on bindless io lowering +- zink: delete some bindless io lowering code +- zink: use nir_io_semantics::num_slots for indirect var creation +- zink: simplify an arrayed io check during variable creation +- zink: use explicit stride from types instead of copying old_var stride +- zink: use MAX_PATCH_VERTICES directly for arrayed io var sizing +- zink: use explicit sizing for builtins when creating variables +- zink: create new vars without copying existing ones +- zink: add a new linker pass to handle mismatched i/o components +- zink: use right function to get src_type in eliminate_io_wrmasks +- zink: re-rework i/o variable handling to make having variables entirely optional +- ci: bump VVL to 1.3.263 +- zink: simplify redundant is_buffer check +- zink: use VkFormatProperties3 +- lavapipe: handle VkHostImageCopyDevicePerformanceQueryEXT +- lavapipe: don't advertise UNDEFINED layout for HIC +- zink: hook up VK_EXT_host_image_copy +- zink: move mem type detection up in file +- zink: disable HIC without resizable BAR +- zink: add a fixup method for extra driver props +- zink: fix some off-by-one indentation +- zink: use some return codes for check_ici errors +- zink: check/use suboptimal HIC during ici init +- zink: use HIC for image subdata when possible +- zink: slightly refactor psiz deletion during linking +- zink: delete all psiz=1.0 stores if maintenance5 is present +- nir/inline_uniforms: fix oob access with nir_find_inlinable_uniforms +- zink: add ZINK_DEBUG=quiet +- zink: imply ZINK_DEBUG=quiet if ZINK_DEBUG=optimal_keys is set on turnip +- zink: set optimal_keys for turnip jobs +- aux/tc: fix staging buffer sizing for texture_subdata +- aux/tc: fix address calc for segmented texture subdata +- zink: ci updates +- lavapipe: KHR_map_memory2 +- zink: slightly refactor pipeline compile selection +- zink: add a flag for combined pipeline compile for doing FAIL_ON_PIPELINE_COMPILE_REQUIRED +- zink: remove an intermediate variable in pipeline compile selection +- zink: use FAIL_ON_PIPELINE_COMPILE_REQUIRED for GPL path +- zink: pass a stage mask to pipeline create functions +- glsl: check for xfb setting xfb info +- zink: don't warn about missing scalarBlockLayout on v3dv +- aux/tc: fix renderpass tracking fb state clobber scenario +- vk/enum2str: add more max enum vendors +- aux/tc: fix rp info handling around tc_sync calls +- aux/tc: don't use pipe_buffer_create_with_data() for rp-optimized subdata +- zink: flag db maps as unsynchronized +- lavapipe: clamp cache uuid size +- lavapipe: EXT_load_store_op_none +- tu: handle unused color attachments without crashing +- zink: use much bigger dummy surfaces +- zink: propagate rp_tc_info_updated across unordered blits +- zink: use null attachments for null attachments with dynamic render +- egl/swrast: expose EXT_swap_buffers_with_damage and EXT_present_opaque +- egl/wayland: split out wl drm extension init +- egl/wayland: use more registry listeners to better handle device init +- egl/wayland: enable WL_bind_wayland_display for zink +- zink: delete injected pointsize during shader creation +- zink: require maintenance5 for shobj +- zink: delete a non-maintenance5 workaround for shobj use +- lavapipe: set separate_shaders for shader objects +- zink: set workgroup_memory_explicit_layout for shader validation +- zink: add a ZINK_DEBUG=validation alias +- zink: fix semaphore signal ordering +- zink: move swapchain fence to swapchain object +- zink: avoid UAF on wayland async present with to-be-retired swapchain +- zink: always trace_screen_unwrap in acquire +- lavapipe: fix variable descriptor count support handling +- lavapipe: always set independent blend +- lavapipe: more vertex stride fixups +- lavapipe: set default viewport and scissor count for cmdbufs +- lavapipe: set default min sample shading to 1 +- glx: XFree visual info +- radv: fix external handle type queries for dmabuf/fd +- zink: fix crashing in image rebinds +- zink: move push descriptor disable to driver workarounds +- zink: move v3dv scalarBlockLayout workaround +- zink: fix end-of-batch barrier pipeline stages +- zink: guarantee egl syncobj lifetime +- aux/trace: dump enum names for map usage +- gallium: add PIPE_MAP_NONE +- Revert "egl/wayland: Add image loader extension for swrast" +- egl/wayland: don't block in swrast when updating buffers for zink +- egl/wayland: return sooner from swrast_update_buffers() if zink +- zink: don't check submit count for unflushed usage +- egl: don't set ForceSoftware for all zink loading +- zink: error at handle export on missing EXT_image_drm_format_modifier +- gbm: delete some zink handling +- zink: apply ZINK_DEBUG=quiet to all missing feature warnings +- zink: set ZINK_DEBUG=quiet for polaris jobs +- lavapipe: don't block begin/end cmdbuf pipeline barriers +- ci: add a630 trace flakes +- zink: shrink vectors during optimization +- zink: always clamp shader stage in descriptor handling +- zink: add set_global_binding +- zink: eliminate samplers from no-sampler CL texops +- zink: add some checks to determine whether queue is init on screen destroy +- zink: don't destroy any simple_mtx_t objects during screen destroy +- zink: don't destroy uninitialized disk cache thread +- zink: reorder glsl_type_singleton_init_or_ref call +- zink: use screen destructor for creation fails +- zink: fix readback_present locking +- zink: add automatic swapchain readback using heuristics +- lavapipe: VK_EXT_nested_command_buffer +- zink: ignore unacquired swapchain images during end-of-frame flush +- nir/lower_fragcolor: preserve location_frac +- zink: update pointer for GPL pipeline cache entry formats +- zink: fix legacy depth texture rewriting for single component reads +- egl: unify dri2_egl_display creation +- egl: init dri3 version info during screen creation +- egl/glx: don't load non-sw zink without dri3 support +- egl: add automatic zink fallback loading between hw and sw drivers +- glx: add automatic zink fallback loading between hw and sw drivers +- ci: don't set GALLIUM_DRIVER for zink +- egl/wayland: only add more registry listeners for hardware devices +- zink: only increment image_rebind_counter on image export if binds exist +- zink: check for sampler view existence during zink_rebind_all_images() +- zink: use weston for anv ci +- zink: blow up broken xservers more reliably +- zink: delete some dead modifier handling +- ci: skip implicit modifier piglits for zink +- zink: don't block large vram allocations +- zink: add copy box locking +- zink: emit SpvCapabilitySampleRateShading with SampleId +- zink: always set VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT for usermem +- zink: clamp resolve extents to src/dst geometry +- zink: only emit xfb execution mode for last vertex stage +- aux/u_transfer_helper: set rendertarget bind for msaa staging resource +- zink: unset explicit_xfb_buffer for non-xfb shaders +- mesa/st/texture: match width+height for texture downloads of cube textures +- zink: add more locking for compute pipelines +- radv: correctly return oom from the device when failing to create a cs +- zink: check for cbuf0 writes before setting A2C + +Mohamed Ahmed (19): + +- vulkan/util: Support 10-bit and 12-bit color formats in ycbcr_info in vk_format.c +- vulkan/util: Support VK_EXT_ycbcr_2plane_444_formats color formats in vk_format.c +- vulkan/util: Use ycbcr_info for multiplane helpers in vk_format.c +- nvk: implement vkGetDeviceImageMemoryRequirementsKHR() +- nvk: add stub for vkGetDeviceImageSparseMemoryRequirementsKHR() +- nvk: implement vkGetDeviceBufferMemoryRequirementsKHR() +- nvk: advertise VK_KHR_maintenance4 +- nvk: advertise DemoteToHelperInvocation +- nvk: Enable multiplane images and image views +- nouveau/nvk: Add YCbCr sampler NIR lowering pass +- nouveau/nvk: Support multi-plane descriptors in nvk_nir_lower_descriptors.c +- nouveau/nvk: Create helper function for sampler creation +- nouveau/nvk: Add multiple sampler planes for CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT +- nouveau/nvk: Enable VK_KHR_sampler_ycbcr +- util/format: Add G8B8_G8R8_422_UNORM and B8G8_R8G8_422_UNORM formats +- vulkan/format: Translate G8B8G8R8_422_UNORM and B8G8R8G8_422_UNORM properly +- nvk: Enable SEPARATE_RECONSTRUCTION_FILTER_BIT for multi-planar formats only +- nvk: Enable MIDPOINT_CHROMA_SAMPLES_BIT for multi-planar formats only +- nil: Add support for G8B8_G8R8_UNORM and B8G8_R8G8_UNORM + +Nanley Chery (33): + +- iris: Remap DRM_FORMAT_MOD_INVALID more often during import +- anv: Don't support ASTC images with modifiers +- intel: Add and use isl_drm_modifier_get_plane_count +- anv: Handle explicit surface layout of DG2_RC_CCS +- anv: Reduce accesses of isl_mod_info->aux_usage +- iris: Reduce accesses of mod_info->aux_usage +- crocus: Delete modifier with aux code +- hasvk: Delete modifier with aux code +- iris: Swap stencil and modifier aux assignment order +- intel: Describe modifier compression with booleans +- intel/isl: Move the Tile4 modifier score case down +- intel/isl: Add a score for DG2_RC_CCS +- intel/blorp: Ambiguate after CCS resolves on gfx7-8 +- iris: Reorder render_aux_usage parameters +- iris: Pass the render format to prepare_render +- iris: Create BLORP surfaces after resource preparation +- iris: Handle clear color compatibility in prepare_render +- iris: Sample more texture view fast-clears on gfx11+ +- iris: Fix aux usage tracking in prepare_render +- iris: Fix iris_copy_region calls involving FCV_CCS_E +- iris: Drop get_copy_region_aux_settings +- iris: Inline iris_can_sample_mcs_with_clear +- anv: Initialize the clear color more often for FCV +- intel: Return a bool from intel_aux_map_add_mapping +- anv: Move scope of CCS binding determination +- anv: Allocate space for aux-map CCS in image bindings +- anv: Wrap aux surface image binding queries +- anv: Refactor CCS disabling at image bind time +- anv: Place images into the aux-map when safe to do so +- anv: Loosen anv_bo_allows_aux_map +- anv: Meet CCS alignment reqs with dedicated allocs +- anv: Delete implicit CCS code +- intel/isl: Add scores for GEN12_RC_CCS and MTL_RC_CCS + +Neal Gompa (1): + +- asahi: Fix 32-bit x86 build with correct data type for overflow error message + +Neha Bhende (1): + +- ntt: lower indirect tesslevels in ntt + +Paul Gofman (2): + +- driconf: add a workaround for Captain Lycop: Invasion of the Heters +- driconf: add a workaround for Rainbow Six Extraction + +Paulo Zanoni (15): + +- anv: rename the vm_bind vfuncs +- anv: add a new vm_bind vfunc +- anv/xe: make vm_binds async +- anv/xe: return failure in case waiting for the vm_bind syncobj fails +- anv: remove misleading comment about batch_len +- iris: assert bufmgr->bo_deps_lock is held +- iris: avoid stack overflow in iris_bo_wait_syncobj() +- iris: assert(bo->deps) after realloc() +- intel/isl: add ISL_SURF_USAGE_SPARSE_BIT +- intel/isl: simplify the check for maximum surface size +- anv/sparse: add the initial code for Sparse Resources +- anv/sparse: get ready to issue a single vm_bind ioctl per non-opaque bind +- anv/sparse: add INTEL_DEBUG=sparse +- anv: enable sparse resources by default +- vulkan: fix potential memory leak in create_rect_list_pipeline() + +Pavel Ondračka (44): + +- r300: update RV370 failures +- r300: check for index overflow when translating from TGSI +- r300: source register index is always unsigned +- r300: bump the RC_MAX_INDEX_BITS +- r300: normal instruction can't have presubtract op +- r300: add a helper for checking number of temporary sources +- r300: cycles estimate for shader-db +- r300: fix cycles calculation +- r300: don't abort on flow control when using draw for vs +- r300: add dEQP baseline for RV370 with forced swtcl +- r300: copy ntt to r300 compiler +- r300: add lower_sqrt to nir option +- r300: remove unused intrinsics in ntr +- r300: remove irrelevant opcodes in ntr +- r300: remove unused integer support in ntr +- r300: remove ntr_tgsi_usage_mask +- r300: remove more unused 64-bit pieces from ntr +- r300: simplify vectorization rules +- r300: remove more ntr unused helpers +- r300: remove the unneeded ntr_lower_vec_to_reg callback +- r300: remove unneeded 64bit and atomic lowering passes +- r300: remove unused ntr default settings +- r300: remove ntr default options +- r300: simplify ntr_emit_load_ubo +- r300: simplify ntr_emit_load_input +- r300: remove some virglrenderer specifics from ntr +- r300: simplify ntr_setup_uniforms +- r300: simplify ntr_output_decl +- r300: simplify ntr_try_store_in_tgsi_output +- r300: remove some unsupported texture opcodes +- r300: remove unused barrier code from ntr +- r300: simplify ntr_get_gl_varying_semantic +- r300: remove the nrt main optimization loop +- r300: reorder for easier presubtract 1-x pattern recognition +- r300: exit early in presubtract is not supported +- r300: implement bias presubtract +- r300: convert x * 2 into x + x for presubtract +- r300: move power of two multipliers down +- r300: there is no limitation on presubtract source file +- r300: use w channel for scalar opcodes if possible +- r300: reduce number of iterations for vertex shader loops +- r300: enable nir_move_vec_src_uses_to_dest +- nir/move_vec_src_uses_to_dest: skip reuse if vec is used only once in store_output +- nir/move_vec_src_uses_to_dest: allow to skip reuse of constant sources + +Philipp Zabel (1): + +- etnaviv: fix segfault after compile failure + +Pierre-Eric Pelloux-Prayer (18): + +- radeonsi/sdma: use multiple commands if required +- radv/sdma: use multiple commands if required +- radv/sdma: use correct limits for gfx10.3 +- glx: drop the 'libGL' log prefix +- loader: refactor DRI_PRIME handling code +- loader: extend DRI_PRIME to support =N +- loader: add DRI_PRIME_DEBUG env var +- device_select_layer: support DRI_PRIME=n +- docs: update DRI_PRIME documentation +- device_select: add shortcut for MESA_VK_DEVICE_SELECT_FORCE_DEFAULT_DEVICE +- st/mesa: check renderbuffer before using it +- radeonsi: emit framebuffer state after allocating cmask +- amd/common: update addrlib for gfx11.5 +- amd/common: add registers for gfx11.5 +- ac/nir: extract must_wait_attr_ring helper +- amd, radeonsi: Add code to enable gfx11.5 +- mesa: restore call to _mesa_set_varying_vp_inputs from set_vertex_processing_mode +- radeonsi: check sctx->tess_rings is valid before using it + +Piotr Kocia (2): + +- nir: Remove dead nir_const_value variables +- glsl: ir_function_param_visitor::visit_enter always true condition + +Qiang Yu (77): + +- aco,radv: replace tess_input_vertices shader info param +- radeonsi: aco does not pass LS outputs to HS by arg +- radeonsi: extract si_get_prev_stage_nir_shader to be shared with aco +- radeonsi: init aco shader info for merged LS/HS +- radeonsi: simplify si_build_wrapper_function +- radeonsi: move vertex shader vb desc input sgpr args to last +- radeonsi: remove param type check in wrapper function +- radeonsi: refine si_llvm_ls_build_end +- radeonsi: refine si_llvm_es_build_end +- radeonsi: aco compile support merged mono shader +- radeonsi: calculate lds size for merged shaders +- radeonsi: enable aco compile for mono merged LS/HS +- radeonsi: enable aco compile for mono merged ES/GS +- aco: extract aco_compile_shader_part from aco_compile_ps_epilog +- aco: add p_end_with_regs pseudo instruction +- aco: move jump to epilog out of ic_merged_wave_info +- aco: add tcs end regs for epilog usage +- aco: allow tcs with epilog to keep nir store output instruction +- aco: add pending_lds_access option for insert waitcnt +- aco: add tcs epilog generation for radeonsi +- aco: don't emit s_endpgm for tcs with epilog +- aco: skip scratch init when no scratch arg provide +- aco,radeonsi: save const addr to symbol +- ac/nir/tess: move tess factor output out of control flow +- aco: use semantic location as io temp index +- radeonsi: add exec_size to shader binary +- radeonsi: support upload multi part shader binary +- radeonsi: share si_get_tcs_out_patch_stride with aco +- radeonsi: fill part mode tcs aco shader info +- radeonsi: extract si_llvm_build_shader_part +- radeonsi: remove separate_prolog arg from prolog/epilog build +- radeonsi: add si_get_tcs_epilog_args +- radeonsi: change si_fill_aco_options args +- radeonsi: add si_aco_build_shader_part +- radeonsi: part mode standalone tcs support aco compile +- radeonsi: remove unused arg of get_tcs_tes_buffer_address +- aco: simplify setup_tcs_info +- aco: pass sw_stage when setup_isel_context +- aco: prepare fix_ls_vgpr_init_bug to be used by gl vs prolog +- aco: add vs prolog instruction selection for radeonsi +- aco: add aco compile interface for radeonsi vs prolog +- aco: do not fix_exports when program is prolog +- radeonsi: fill aco_shader_info->is_monolithic +- radeonsi: remove is_monolithic from vs prolog key +- radeonsi: extract si_get_vs_prolog_args to be shared with aco +- radeonsi: fix aco options has_ls_vgpr_init_bug setup +- radeonsi: add vs prolog aco build +- radeonsi: set vs has prolog aco shader info +- radeonsi: enable aco compile for part mode standalone vs +- aco,radv,radeonsi: rename is_monolithic to merged_shader_compiled_separately +- ac,radeonsi: move ps arg pos_fixed_pt to ac_shader_args +- aco: do not eliminate final exec write when p_end_with_regs block +- aco: remove p_end_with_regs from needs_exact() +- aco: add ps prolog generation for radeonsi +- aco: handle ps outputs from radeonsi +- aco: add create_fs_end_for_epilog for radeonsi +- aco,radv: remove unused ps epilog info fields +- aco,radv: rename ps epilog info inputs to colors +- aco: simplify export_fs_mrt_color +- aco,radv: add radeonsi spec ps epilog code +- aco: compact ps expilog color export for radeonsi +- aco,radv,radeonsi: pass spi ps input ena and addr +- aco: do not fix_exports when program has epilog +- aco: fix assertion fail when program contains empty block +- aco: create exit block for p_end_with_regs to branch to +- aco: wait memory ops done before go to next shader part +- radeonsi: reduce sgpr count for scratch_offset when aco +- radeonsi: init spi_ps_input_addr for part mode ps +- radeonsi: extract si_prolog_get_internal_binding_slot +- radeonsi: extract si_get_ps_prolog_args to be shared with aco +- ac,radeonsi: remove unused ps prolog key fields +- radeonsi: add ps prolog shader part build +- radeonsi: extract si_get_ps_epilog_args to be shared with aco +- radeonsi: fill aco shader info for ps part +- radeonsi: add ps epilog shader part build +- radeonsi: enable aco compile for part mode ps +- radeonsi: disable disk cache when use aco + +Rebecca Mckeever (32): + +- vulkan/runtime: Add helper functions for VK_EXT_host_image_copy +- nouveau/codegen: Support nir_intrinsic_load_workgroup_id_zero_base +- nouveau/codegen: Set lower_device_index_to_zero +- nvk: Convert system values for gl_PointCoord and PointCoord into inputs +- nvk: Add base_group to root descriptor table +- nvk: Lower base_workgroup_id +- nvk: Implement nvk_CmdDispatchBase and delete nvk_CmdDispatch +- nvk: Advertise KHR_device_group +- nvk: Add VK_FORMAT_B4G4R4A4_UNORM_PACK16 format to nil_format_info table +- nvk: Add A4B4G4R4 formats to nil_format_info table +- nvk: Advertise EXT_4444_formats +- nvk: Enable shadow sampling +- nvk: Implement VK_EXT_non_seamless_cube_map +- nouveau/nil: Add macros for ufixed +- nvk: Implement VK_EXT_image_view_min_lod +- nvk: Update mutable descriptor struct type +- nvk: Replace asserts with conditional that sets type_list = NULL +- nvk: Implement nvk_GetDescriptorSetLayoutSupport +- nvk: Enable VK_KHR_maintenance3 +- nvk: Advertise VK_EXT_mutable_descriptor_type +- nvk: Set image index to zero for NULL nvk_buffer_view +- nvk: Advertise VK_EXT_image_robustness +- nvk: Advertise VK_EXT_robustness2 +- nvk: Add view_index to root descriptor table +- nvk: Lower nir_intrinsic_load_view_index +- nvk: Add draw support for multiview +- nvk: Add query support for multiview +- nvk: Add input attachments support for multiview +- nvk: Advertise VK_KHR_multiview +- nvk: Load view_mask to shadow scratch in nvk_CmdBeginRendering +- nvk: Combine CLEAR_VIEWS and CLEAR_LAYERS MME macros +- nvk: Move code inside view mask loops to a helper function + +Rhys Perry (89): + +- ac/llvm: fix AC_TM_CHECK_IR +- radv: fix radv_get_ballot_bit_size with CS +- ac/llvm: fix wave32 ac_build_mbcnt_add with 64-bit mask +- ac/llvm: skip ballot zext for 32-bit dest with wave32-as-wave64 +- radv: add conformant_trunc_coord to cache UUID +- radv: don't unset TRUNC_COORD if conformant_trunc_coord=true +- ac/nir: always round cube array layers +- nir/unsigned_upper_bound: fix phi(bcsel) +- nir/tests: add test for unsigned_upper_bound with loop header phis +- nir/opt_dead_cf: remove nodes after a jump earlier +- nir/tests: add nir_opt_dead_cf_test.jump_before_constant_if +- aco: insert s_nop before VGPR deallocation +- nir/lower_shader_calls: vectorize stack access for all shaders +- radv: workaround WWZ exporting index=1 through location=1 +- radv: correctly skip MRT output NaN fixup for meta shaders +- radv: don't set vertex_attribute_strides on GFX8+ +- radv/ci: skip some mesh shader tests on GFX1100 +- aco: summarize register demand after handling branches +- aco: don't create sendmsg(dealloc_vgprs) if scratch is used +- radv: disable 64-bit color attachments +- radv: fix 128bpp comp-to-single clears +- radv: support 128bpp comp-to-single with all colors +- radv/gfx11: re-enable 0001/1110 clear values +- nir/lower_shader_calls: fix align_offset +- nir/opt_load_store_vectorize: support scratch access +- radv: vectorize RT stack access +- radv: vectorize scratch access +- aco: fix p_bpermute_gfx6 with input at non-zero byte +- aco: fix p_bpermute_gfx6's exec save/restore with wave32 +- aco: clarify bpermute pseudo opcode names +- aco: add adjust_bpermute_dst helper +- aco/spill: skip p_branch in process_block +- aco/spill: add all live-in to merge block spill candidates +- nir/lower_system_values change num_workgroups to uint32_t +- radv: optimize mesh workgroup ID using ts_mesh_dispatch_dimensions +- radv: use shortcut_1d_workgroup_id +- aco: remove fast path in insert_exec_mask's process_instructions +- aco/optimizer_postRA: check overwritten_subdword in is_overwritten_since() +- aco: check logical_phi_info at p_logical_end when eliminating exec writes +- aco: remove unused p_logical_end check when optimizing branching sequence +- radv: disable mesh dispatch XYZ_DIM when possible +- nir/deref: remove rematerialize_deref_in_block cache +- aco: reset prefetch in the correct block after removing the exit +- aco/waitcnt: replace wait_cnt::\*_cnt with booleans +- aco/waitcnt: add print helpers +- nir/lower_int64: fix find_lsb(0) +- nir/algebraic: optimize u2u32(a >> 32) +- aco/optimizer_postRA: don't combine DPP across exec on GFX8/9 +- aco: don't combine DPP into v_cmpx +- aco: disable zero offset optimization for strict WQM coords +- nir/constant_folding: remove zero texel offset +- aco: remove zero offset optimization +- aco: shrink DPP8_instruction +- aco: add fetch_inactive field to DPP instructions +- nir: add fetch inactive index to quad_swizzle_amd/masked_swizzle_amd +- aco: disable FI for quad/masked swizzle +- aco: fix LdsDirectVMEMHazard WaW with the wrong waitcnt +- aco: only mitigate VcmpxExecWARHazard when necessary +- aco: fix s_setreg hazards +- aco: consider exec_hi in reads_exec() +- aco: resolve all possible hazards at the end of shader parts +- aco/tests: test that hazards are resolved at the end of shader parts +- radv: skip zero-sized memcpy +- ac/nir: fix out-of-bounds access in ac_nir_export_position +- radv: fix signed integer overflow +- Revert "radv: pre-init surface info" +- nir: improve ms_cross_invocation_output_access with local_invocation_id +- aco,nir: add export_row_amd intrinsic +- ac/nir: add row parameter to helpers +- ac/nir: remove dead code +- ac/nir: refactor mesh vertex/primitive export +- ac/nir: implement mesh shader gs_fast_launch=2 +- ac/nir: optimize mesh shader local_invocation_index +- radv: implement mesh shader gs_fast_launch=2 +- ac/nir: add emit_ms_outputs helper +- ac/nir,radv: pass workgroup size to ac_nir_lower_ngg_ms +- ac/nir: implement mesh shader multi-row export +- radv: implement mesh shader multi-row export +- radv: enable mesh shader gs_fast_launch=2 and multi-row export +- nir/serialize: fix signed integer overflow +- nir/lower_shader_calls: skip zero-sized qsort +- util: skip zero-sized SHA1Update +- radv: call lower_array_deref_of_vec before lower_io_arrays_to_elements +- radv: skip radv_remove_varyings for mesh shaders +- radv: disable gs_fast_launch=2 by default +- docs: fix RADV_THREAD_TRACE_CACHE_COUNTERS default +- radv: add radv_disable_trunc_coord option +- radv: enable radv_disable_trunc_coord for vkd3d-proton/DXVK +- ac/nir: fix partial mesh shader output writes on GFX11 + +Rob Clark (60): + +- freedreno: move virtgpu msm_proto.h to common +- freedreno/drm/virtio: Remove unused header +- tu/msm: staticify a couple things +- tu/knl: Remove some random const'ness +- drm-uapi: Update virtgpu header +- freedreno: Update virtgpu proto +- freedreno/drm/virtio: Use global_faults +- tu: close submitqueues before device_finish() +- tu/drm: Factor out shared helpers +- tu/drm: Add missing error path cleanup +- tu/drm: Split out helper for iova alloc +- tu: Add virtgpu support +- util: Decouple disk cache from EGL_ANDROID_blob_cache +- docs: Followup to !24636 +- tu: Workaround bionic _SC_LEVEL1_DCACHE_LINESIZE +- ir3+tu: Simplify ir3_find_sysval_regid callers +- freedreno/a6xx: Drop unused screen args +- freedreno/a6xx: Re-work fd6_emit_shader +- freedreno/a6xx: Re-write the function-of-doom +- freedreno: Implement ATI_meminfo +- freedreno/a6xx: ARB_post_depth_coverage +- freedreno/a6xx: ARB_sample_locations +- freedreno/a6xx: ARB_texture_filter_minmax +- freedreno/a6xx: EXT_demote_to_helper_invocation +- freedreno/a6xx: EXT_shader_image_load_formatted +- freedreno/a6xx: EXT_depth_bounds_test +- freedreno/a6xx: Use pipe_blit_info::sample0_only +- freedreno/a6xx: Handle PIPE_BIND_BLENDABLE +- freedreno/a6xx: ARB_shader_viewport_layer_array +- tu: Fix heap size +- freedreno: Fix crash with debug msgs enabled +- freedreno/layout: Handle 565/etc MSAA special case +- freedreno/decode: Fix printing chip-id +- freedreno/a6xx: Add L8_SRGB +- freedreno: Add reformatting commits to .git-blame-ignore-revs +- freedreno/fence: Hold a strong ref to batch +- freedreno/decode: Lookup device info +- freedreno/decode: Use info->chip to decode +- freedreno/decode: Remove gpu_id +- freedreno: Indentation fix +- freedreno: Use explicit QCOM_TILED3 modifier +- freedreno/a6xx: Remove dummy packet for globals +- freedreno: Fix streamout offset_buf dirtiness +- freedreno: Fix user const buffer dirtiness +- freedreno/batch: Move query_buf allocation +- freedreno: Add private-BO tracking +- freedreno: Add missing indirect_draw_count tracking +- freedreno: Move/add some attach_bo() +- freedreno: Add attach-bo debugging +- freedreno: Rework supported-modifiers handling +- mesa: Introduce MESA_texture_const_bandwidth +- mesa: Implement MESA_texture_const_bandwidth +- freedreno: Add PIPE_CAP_HAS_CONST_BW support +- panfrost: Add PIPE_CAP_HAS_CONST_BW support +- iris: Add PIPE_CAP_HAS_CONST_BW support +- radeonsi: Add PIPE_CAP_HAS_CONST_BW support +- tu/msm: Fix timeline semaphore support +- tu/virtio: Fix timeline semaphore support +- freedreno/drm: Fix race in zombie import +- freedreno: Always attach bo to submit + +Robert Foss (9): + +- egl: Expose access to DeviceList +- egl: Rename _eglRefreshDeviceList() to _eglDeviceRefreshList() +- egl: Refresh DeviceList during eglInitialize() +- egl/surfaceless: Use EGL DeviceList instead of drmGetDevices2() +- egl/android: Use EGL DeviceList instead drmGetDevices2() +- egl: Rename _eglAddDevice() to _eglFindDevice() +- egl: Rename _eglAddDevice() to _eglFindDevice() +- egl: Fix attrib_list[0] == EGL_NONE check +- egl: Always set _EGLDisplay->Device during eglGetPlatformDisplay() + +Robert Mader (6): + +- egl/wayland: wait for compositor to release shm buffers +- iris: Support parameter queries for main planes +- util: Add new helpers for pipe resources +- panfrost: Support parameter queries for main planes +- vc4/resource: Support offset query for multi-planar planes +- v3d/resource: Support offset query for multi-planar planes + +Rohan Garg (33): + +- iris: migrate WA 14013910100 to use the WA framework +- iris: migrate WA 14016118574 to use the WA framework +- iris: fix iris for WA 16013000631 +- intel/perf: add perf query support for Intel Raptorlake +- intel/genxml: set a default value for "Pixel Position Offset Enable" in genxml +- anv: use the WA infrastructure where possible when generating state +- anv: use the correct GFX_VERx10 macro for WA +- anv,iris: program the maximum number of threads on compute queue init +- anv: drop CFE state validation checks +- iris: track reset signalling instead of replacing the context +- iris: allow for a unsynchronized device reset query +- anv: partially revert 2e8b1f6d +- anv: emitting 3DSTATE_PRIMITIVE_REPLICATION is required on Gen12+ +- anv: use the pre defined _3DPRIMITIVE_DIRECT macro +- anv: drop dead ifdef +- iris: use the correct WA macros and lineage numbers +- anv: use the lineage number for WA +- crocus: add a __gen_get_batch_address declaration +- crocus: fix GFX_VERx10 macro +- blorp: drop undefined macro +- iris: migrate preemption streamwout wa to WA infra +- intel/genxml: update PIPE_CONTROL instruction for dg2 +- anv: define clear color localy within can_fast_clear_color_att +- intel/compiler: Adjust CS payload registers for new register width on Xe2+ +- intel/compiler: Adjust fence message lengths for new register width on Xe2+ +- intel/compiler: Adjust barrier emission for Xe2+ +- intel/genxml: fix 3DSTATE_3D_MODE length to align with BSpec +- anv: ensure that FCV_CCS_E fast clears are properly tracked +- anv: enable FCV for Gen12.5 +- anv: fix debug string for PC flush +- anv: cleanup includes +- anv: turn off non zero fast clears for CCS_E +- anv: selectively enable FCV optimization for DG2 + +Roland Scheidegger (1): + +- lavapipe: further limit accurate_a0 hack + +Roman Stratiienko (22): + +- egl: android: Remove legacy name-based shared buffers support +- util: Add NONNULL macro +- android: Introduce the Android buffer info abstraction +- android: Fix num_planes assignment in u_gralloc_fallback +- v3dv/android: Use u_gralloc code +- v3dv/android: Enable shared presentable image support +- v3dv: Migrate to vk_device_memory +- v3dv/android: Skip swapchain binding +- v3dv: Rely on the internal tiled flag instead of the common vk structure +- v3dv/android: Add a helper function to support explicit layouts +- v3dv/android: Rework Android native buffer importing logic +- v3dv: Use format stored in vk_image and vk_image_view after init +- v3dv: Split v3dv_image_init to use layout setting logic separately +- v3dv/android: Add AHardwareBuffer support +- v3dv: Enable VK API v1.2 for Android +- panvk: Add Android ICD loader entry point +- u_gralloc: Remove inline modifiers from the functions +- u_gralloc: Remove usage of NONNULL macro +- Revert "util: Add NONNULL macro" +- u_gralloc: Add a function that returns gralloc type +- dri: Remove __driDriverExtensions leftovers +- v3d: Don't implicitly clear the content of the imported buffer + +Ruijing Dong (2): + +- frontends/va: checking va version for av1enc support +- radeonsi/vcn: change max_poc to fixed value for hevc encoder. + +Ryan Neph (1): + +- vulkan/android: add missed STACK_ARRAY_FINISH() + +Sagar Ghuge (34): + +- intel/compiler: Look at 2 register worth of data instead of 4 +- isl: Disable MCS compression just on ACM platform +- intel: Add env variable to add break point on/before draw +- anv: Add GPU breakpoint before/after specific draw call +- iris: Add GPU breakpoint before/after draw call +- blorp: Implement blorp hooks to emit breakpoint +- docs: Add INTEL_DEBUG_BKP_BEFORE/AFTER_DRAW_COUNT +- intel/isl: Enable INTEL_DEBUG=noccs/nohiz in ISL helpers +- anv,hasvk: drop unnecessary DEBUG_NO_CCS/NO_HIZ checks +- iris,crocus: drop unnecessary DEBUG_NO_CCS/NO_HIZ checks +- blorp: Drop unnecessary assertions in blorp_can_hiz_clear_depth +- anv: Add helper to create companion RCS command buffer +- anv: Split out End/Destroy/Reset cmd buffer code into helper +- anv: Handle companion RCS in end/destory/reset code path +- intel: Add helper to create/destroy i915 VM +- intel: Pass virtual memory address space ID while creating context +- anv: Create companion RCS engine +- anv: Move compute specfic bits under compute queue init +- anv: Execute RCS init batch on companion RCS context/engine +- anv: Setup companion RCS command buffer submission +- anv: Execute an empty batch to sync main and companion RCS batch +- anv: Add secondary companion RCS cmd buffer to primary +- anv: Skip layout transition on the compute queue +- anv: Extract batch print code to anv_print_batch helper +- iris: Enable always flush cache with DEBUG_STALL option +- intel/genxml: Add STATE_COMPUTE_MODE instruction +- anv: Program and emit STATE_COMPUTE_MODE +- anv: Enable barrier handling on video engines +- isl: Use 16-bit instead of 8-bits for surface format info fields +- anv: Handle end of pipe with MI_FLUSH_DW on transfer queue +- anv: Enable transfer queue only on ACM+ platforms +- blorp: Use the correct miptail start LOD for surfaces +- anv: Write timestamp using MI_FLUSH_DW on blitter +- anv: Flush data cache while clearing depth using HIZ_CCS_WT + +Saleemkhan Jamadar (1): + +- radeonsi/vcn: set jpeg reg version for gfx 1150 + +Samuel Holland (3): + +- Android.mk: Allow building only Vulkan drivers +- Android.mk: Explicitly enable/disable LLVM support +- Android.mk: Only link LLVM for radeonsi, not amd_vk + +Samuel Pitoiset (299): + +- radv: remove support for VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV +- radv: make radv_get_pa_su_sc_mode_cntl() static +- zink/ci: update list of expected failures for NAVI10 +- radv: stop using a pipeline for emitting VGT_VERTEX_REUSE_BLOCK_CNTL +- radv: remove unused param in radv_pipeline_emit_vgt_gs_out() +- radv: pass a shaders array for computing ia_multi_vgt_param +- radv: bind the pre-compiled PS epilog to the cmdbuf state +- radv: stop using an array of binaries when compiling a compute shader +- radv: add radv_compile_cs() to compile a compute shader +- radv: remove the pipeline dependency for creating a GS copy shader +- radv: add a helper to compute the ESGS itemsize +- radv: use the number of GS linked inputs to compute the ESGS itemsize +- radv: determine ES info for VS/TES with GS earlier +- radv: determine as_ls earlier by using the next stage +- radv: simplify getting next VS stage for VS prologs +- radv: use next_stage for determining the stage to lower NGG +- radv/amdgpu: fix dumping CS with the chained IBs path +- radv/amdgpu: rename old_ib to ib in radv_amdgpu_winsys_cs_dump() +- radv: pass submit info to radv_check_gpu_hangs() +- radv: initialize stage/next_stage earlier +- radv: set next_stage to MESA_SHADER_NONE if there is no FS +- radv: rework considering force VRS without relying on graphics pipeline +- radv: stop passing radv_graphics_pipeline to radv_fill_shader_info() +- radv: move removing all varyings when the FS is a noop +- radv: rename graphics pipeline linking helpers +- radv: simplify lowering NGG GS intrinsics +- radv: rework determining the NGG stage without a graphics pipeline +- radv: cleanup pipeline compute emit helpers +- radv: rename radv_pipeline_stage to radv_shader_stage +- radv: rename NGG query state to be more generic +- radv: declare the shader query user SGPR for emulating GS counters +- radv: enable pipelinestat query emulation for legacy GS +- radv: simplify the NGG vs legacy pipelinestat query path +- radv: rename RADV_SHADER_QUERY_PIPELINE_STAT_OFFSET +- radv: implement nir_intrinsic_atomic_add_gs_invocation_count_amd +- radv: emulate GEOMETRY_SHADER_INVOCATIONS query on RDNA1-2 +- radv: track whether inputs/outputs are linked per shader stage +- radv: add support for VS/TES as ES without shaders IO linking +- radv: use next_stage to determine if the layer should be exported +- radv: use next stage to determine if primID/clip dist should be exported +- radv: compute the legacy GS info earlier +- radv: stop copying some NIR info fields from TES to TCS +- radv: stop lowering patch vertices for TES +- radv: do not always copy the number of tess patches to TES +- radv: initialize tcs.tes_{patch}_inputs_read to a default value +- radv: prevent linking TCS<->TES when TES is NULL +- radv: use a packed user SGPR for the TES state +- radv: stop checking if patch control points is dynamic everywhere +- radv: copy the number of TCS vertices out to TES shader info +- radv: add support for dynamic TCS vertices out for TES +- radv: remove radv_shader_info::tes::num_linked_patch_inputs +- amd,radeonsi: move si_shader_io_get_unique_index_patch() to common code +- radv: allow to use fixed IO locations for VS<->TCS<->TES without linking +- aco: add aco_shader_info::tcs::has_epilog +- aco: add infra for compiling TCS epilogs +- radv,aco: move has_epilog to radv_shader_info +- radv: assume a TCS needs an epilog unless it's linked with a TES +- radv: do not write tess factors in main TCS when it has an epilog +- radv: track if TES reads tess factors differently +- radv: declare new argument for the TCS epilog PC +- radv: add radv_tcs_epilog_key +- radv: add infra for creating TCS epilogs +- radv: add support for a TCS epilogs cache in the device +- radv: add support for emitting TCS epilogs in cmdbuf +- radv: remove unnecessary check in radv_pipeline_nir_to_asm() +- radv: stop passing a graphics pipeline to radv_pipeline_nir_to_asm() +- radv: inline radv_pipeline_get_nir() in radv_graphics_pipeline_compile() +- radv: add a struct for the retained shaders and GPL +- radv: add radv_graphics_shaders_compile() to compile graphics shaders +- radv: remove redundant check in radv_cmd_buffer_after_draw() +- radv: track if patch control points is dynamic from the cmdbuf state +- radv: re-emit binning state if the framebuffer is dirty +- radv: track if vertex binding stride is dynamic from the cmdbuf state +- vulkan: bump header register to 1.3.261 +- vulkan/runtime: add common implementation for GetImageSubresourceLayout() +- vulkan/format: add VK_FORMAT_{A8_UNORM,A1B5G5R5_UNORM_PACK16}_KHR +- radv: use the RT prolog scratch size directly for tracing rays +- radv: add a helper to get the maximum number of scratch waves per shader +- radv: update the number of scratch waves for RT prolog at bind time +- radv: update cmdbuf scratch size info when shaders are bound +- vulkan: add init/finish helpers for vk_buffer_view +- radv: use vk_buffer_view +- radv: use vk_sampler +- radv: use common vkCmdBegin/EndQuery wrappers +- radv: use vk_query +- zink: fix setting VkShaderCreateInfoEXT::nextStage +- radv/rt: fix capture/replay support +- vulkan/render_pass: add common vkGetRenderingAreaGranularityKHR() +- radv: implement vkCmdBindIndexBuffer2KHR() +- radv: allow VK_WHOLE_SIZE for pSizes in vkCmdBindVertexBuffers2() +- radv/rmv: remove unused pipeline create flags when logging pipelines +- radv: store pipeline create flags to radv_pipeline::create_flags +- radv: add support for VkPipelineCreateFlags2CreateInfoKHR +- radv: add support for VkBufferUsageFlags2CreateInfoKHR +- radv: allow VK_REMAINING_ARRAY_LAYERS with VkImageSubresourceLayers +- radv: implement radv_Get{Device}ImageSubresourceLayout2KHR() +- radv: advertise VK_KHR_maintenance5 +- radv: remove useless NULL for pipeline layout during shader info pass +- radv: introduce radv_shader_layout for per-stage descriptor layout +- radv: stop passing redundant stage to radv_shader_stage_init() +- radv: re-introduce radv_pipeline_stage_init() +- radv: add support for loading the LSHS vertex stride from a SGPR +- radv: use the number of VS outputs for computing the tessellation info +- vulkan: ignore VkPipelineColorWriteCreateInfoEXT if the state is dynamic +- radv: reduce TCS_OFFCHIP_LAYOUT_NUM_PATCHES to 6-bits +- radv: add missing comment about TCS_OFFCHIP_LAYOUT_LSHS_VERTEX_STRIDE +- radv: fix emitting TCS epilogs for GFX6-9 +- radv: remove radv_cmd_buffer::cached_vertex_formats +- radv: remove unused param from radv_pipeline_init_multisample_state() +- radv: simplify declaring VS specific input SGPRs +- radv: stop copying if VS or TES uses the InvocationID built-in +- Revert "radv/amdgpu: workaround a kernel bug when replacing sparse mappings" +- Revert "radv/amdgpu: skip adding per VM BOs for sparse during CS BO list build" +- radv/amdgpu: allow to execute external IBs on the compute queue +- radv/amdgpu: add support for submitting external IBs with the chained path +- zink/ci: update list of expected failures for NAVI10 +- radv: use the maximum possible workgroup size for TCS epilogs +- radv: stop declaring the scratch offset argument for TCS epilogs +- radv: declare shader arguments for TCS epilogs +- radv: add tcs_out_patch_fits_subgroup to radv_tcs_epilog_key +- aco: fix jumping from main TCS to epilog on GFX9+ +- aco: adjust TCS epilogs for RADV +- aco: allow SGPRs operands with p_jump_to_epilog +- aco: implement create_tcs_jump_to_epilog() +- radv: track the pipeline bind point for indirect commands layout +- radv: prepare radv_get_sequence_size() for DGC compute +- radv: prepare radv_prepare_dgc() for DGC compute +- radv: implement NV_device_generated_commands_compute +- radv: allow DGC on the compute queue +- radv: advertise NV_device_generated_commands_compute +- aco: rework printing shader stages +- radv: fix the per-patch data offset when TES isn't linked with TCS +- radv: stop declaring unused SGPR arguments for PS epilogs +- radv: add radv_shader_info::is_monolithic +- radv: use info->uses_view_index directly when declaring shader arguments +- radv: do not inline push constants for non-monolithic shaders +- radv: force indirect descriptor sets for non-monolithic shaders +- radv: always declare some arguments for non-monolithic VS/TCS shaders +- radv: add a new shader argument for non-monolithic shaders PC +- ac: allow to mark shader arguments as preserved +- radv: preserve shader arguments for non-monolithic VS/TCS on GFX9+ +- aco: disable shared VGPRs for non-monolithic shaders on GFX9+ +- aco: ensure to initialize exec manually for VS as LS on GFX9+ +- aco: add support for compiling VS+TCS separately on GFX9+ +- radv: always declare some arguments for non-monolithic {VS,TES}/GS shaders +- radv: preserve shader arguments for non-monolithic {VS,TES}/GS on GFX9+ +- aco: ensure to initialize exec manually for non-monolithic {VS,TES}/GS on GFX9+ +- aco: add support for compiling {VS,TES}+GS separately on GFX9+ +- radv,aco: remove unused clip/cull distances variables +- radv: rename tcs_shader to tcs in radv_emit_tcs_epilog_state() +- radv: small cleanups in radv_emit_patch_control_points() +- radv: fix emitting TCS epilogs if TES and GS are linked on GFX9+ +- radv: remove the pipeline dependency for emitting VGT_GS_MODE +- aco: fix emitting TCS epilogs end on GFX9+ +- radv: re-order IO slot layout for stages that aren't linked +- amd/ci: update list of failures/flakes for glcts-vangogh-valve +- ci: uprev vkd3d-proton +- ci: uprev Fossilize +- ci: add comment explaining which image tags to update for Fossilize +- radv: preserve shader argument for separate compilation of NGG shaders +- aco: flag blocks with long-jump as export_end for separate compilation +- aco: adjust fix_exports() for VS/TES as NGG and non-monolithic shaders +- aco: allow separate compilation of NGG shaders +- zink/ci: add zink-radv-polaris10-valve +- radv/ci: re-enable vkcts-polaris10-valve +- radv: fix capturing indirect dispatches with SQTT +- radv/ci: re-enable vkd3d-polaris10-valve +- ci: do not fail vkd3d-proton job when the expectations match +- radv/amdgpu: fix executing secondaries without IB2 +- radv/amdgpu: do not copy the original chain link for IBs +- radv: avoid emitting SQTT markers for DGC calls +- radv: add support for DGC with SQTT +- zink/ci: merge GLCTS testing with GLESx for RADV +- zink/ci: merge piglit testing with deqp-runner for RADV +- radv: fix interactions with primitives generated queries and pipeline stats +- radv: skip DGC calls when the indirect sequence count is zero with a predicate +- radv: avoid emitting THREAD_TRACE_MARKER for predicated draws/dispatches +- radv: adjust next stage for VS prologs and merged shaders compiled separately +- radv: adjust emitted prolog regs for merged shaders compiled separately +- radv: do not use pre-compiled prologs when VS is compiled separately +- radv: remove useless PIPELINE_CREATE_2_LIBRARY_BIT check for retained shaders +- radv: fix enabling DGCC +- radv: fix emitting SQTT userdata when CAM is needed +- radv: fix capturing RGP on RDNA3 with more than one Shader Engine +- zink/ci: update list of expected failures for POLARIS10/NAVI10 +- radv: set THREAD_TRACE_TOKEN_MASK.BOP_EVENTS_TOKEN_INCLUDE on GFX10.3+ +- radv: disable unsupported hw shader stages for RGP on GFX11+ +- radv: fix instruction timing on GFX11 +- ac/rgp: use correct API stage string for mesh/task shaders +- radv: set THREAD_TRACE_MARKER_ENABLE for mesh/task draws +- radv: emit relocation for mesh/task shaders +- issue_templates/Bug Report: fix outdated URL for GFXReconstruct +- ac,radv,radeonsi: rework SPM counters configuration and share it +- ac/perfcounter: add new SQ_WGP block for GFX11+ +- ac/spm: add SPM counters configuration for GFX11 +- radv: enable the PKT3 CAM bit for some SPM register writes +- radv,radeonsi: use AC_SPM_SEGMENT_TYPE_xxx instead of magic values +- ac/spm: remove useless SPM block setting for GFX9 and older GPUs +- ac/spm: add SPM block definition for GFX10-GFX10.3 +- ac/gpu_info: init num_cu_per_sh from the kernel +- ac/perfcounter: set the number of instances of GL1C to 4 +- ac/perfcounter: compute the number of global instances of TCP,SQ,GL1C and GL2C +- ac/spm: fix checking if the counter instance is valid +- ac/spm: rework how segment muxsel RAM are filled +- ac/spm: initialize and set instance mapping for counters +- radv: reserve more CS space in SQTT/SPM paths +- ac/spm: use block flags to initialize instance mapping +- ac/spm: select correct segment type for per-SE blocks +- radv,radeonsi: make sure to emit GRBM_GFX_INDEX before SQ select registers +- ac/spm: fix number of instances of GL2C +- ac,radv,radeonsi: prepare support for multi-instance SPM SQ counters +- ac,radv,radeonsi: prepare support for multi-instance SPM generic counters +- ac/spm: move the counter instance to ac_spm_counter_create_info +- ac/spm: enable support for multi-instance counters +- radv: fix checking if RGP is enabled with others tracing tools +- radv: fix missing ISA with RGP and GPL +- ac/perfcounter: add SG_WQP group for GFX11 +- ac/perfcounter: add GFX11 groups +- drirc: remove Path of Exile workarounds +- radv: remove drirc workarounds for Path Of Exile +- radv: remove absolute_depth_bias workaround +- ac/gpu_info: define AMD_MAX_WGP +- ac/spm: add new segment types for GFX11 +- ac/spm: add support for GFX11 +- radv: add SPM support for GFX11 +- radv: enable cache counters for RGP on GFX11 +- ci: update to vulkan-cts-1.3.6.3 +- radv/ci: skip dEQP-VK.robustness.* on Vangogh due to weird GPU hangs +- nir: rename atomic_add_gs_invocation_count_amd to make it more generic +- ac/nir: add lowering for mesh shader queries +- ac/nir: add lowering for task shader queries +- radv: add GDS counters offset for mesh/task queries +- radv: adjust lowering of intrinsic queries for mesh/task shaders +- radv: enable lowering of mesh/task shader queries when enabled +- radv: declare shader_query_state for mesh/task shaders +- radv: stop skip emitting CB states when there is no color attachment +- radv: re-enable DCC with mipmaps on GFX11 +- radv: fix COMPUTE_SHADER_INVOCATIONS query on compute queue +- radv: emit missing PA_{SC,SU}_LINE_STIPPLE_xxx regs in gfx preamble +- radv: fix alignment of DGC command buffers +- radv/ci: update list of expected failures on PITCAIRN +- radv/ci: update list of flakes for NAVI10/VEGA10 +- radv/amdgpu: fix alignment of command buffers +- radv: enable DCC for MSAA images on GFX11 +- zink/ci: update list of expectations for zink-anv-tgl +- zink/ci: bump zink-anv-tgl-full timeout to 1h45m +- radv/ci: rename GFX1100 lists to NAVI31 +- radv: fix emulated geometry shader primitives/invocations queries +- radv/ci: remove duplicate skipped tests for RAVEN/STONEY +- radv/ci: exclude dEQP-VK.texture.explicit_lod.2d.sizes.128x128_* for all jobs +- radv: fix synchronization with emulated GS primitives/invocations queries +- radv/ci: remove no longer existing test for VANGOGH +- radv/ci: cleanup list of expected failures for NAVI10/NAVI21/VEGA10 +- radv: always write the sample positions when a new descriptor BO is created +- radv: fill the scratch BO in radv_fill_shader_rings() +- radv: fix gang submissions with chaining +- radv: fix re-emitting streamout descriptors for NGG streamout +- radv: fix IB alignment +- zink: use warn_missing_feature for missing modifier support +- radv: fix destroying GDS/OA BOs +- radv: allocate only 1 GDS OA counter for gfx10 NGG streamout +- ac/nir: only consider overflow for valid feedback buffers +- radv/ci: update list of expected failures on RAVEN +- radv/ci: update list of flakes for VANGOGH +- radv/ci: update list of flakes for STONEY +- radv: disable primitive restart for non-indexed draws on GFX11 +- radv: enable radv_disable_aniso_single_level=true for Zink too +- amd/llvm,aco,radv: implement NGG streamout with GDS_STRMOUT registers on GFX11 +- radv: mark GDS as needed for XFB queries with NGG streamout on GFX11 +- radv: skip GDS allocation for NGG streamout on GFX11 +- zink/ci: remove expected failures that are skipped for RADV +- ci: update CTS to vulkan-cts-1.3.7.0 +- ci: bump the number of tests per group from 500 to 5000 for Vulkan drivers +- ci: bump DEQP_FRACTION for some jobs +- radv: set ENABLE_PING_PONG_BIN_ORDER for GFX11.5 +- radv: initialize video decoder for GFX11.5 +- ac/gpu_info: query the maximum number of IBs per submit from the kernel +- Revert "radv: fix finding shaders by PC" +- radv: fix missing predicate bit for WRITE_DATA helper +- ac/gpu_info: fix querying the maximum number of IBs per ring +- radv: remove outdated RADV_DEBUG=vmfaults support +- amd: update amdgpu_drm.h +- amd: add has_gpuvm_fault_query +- radv/amdgpu: add support quering the last GPUVM fault +- radv: query and report the last GPUVM fault with RADV_DEBUG=hang +- radv: report the last GPUVM fault when a device lost is detected +- ac/gpu_info: remove bogus assertion about number of COMPUTE/SDMA queues +- radv: fix a synchronization issue with primitives generated query on RDNA1-2 +- radv: bind the non-dynamic graphics state from the pipeline unconditionally +- radv: fix compute shader invocations query on compute queue on GFX6 +- radv: emit COMPUTE_PIPELINESTAT_ENABLE for CS invocations on ACE +- nir: fix inserting the break instruction for partial loop unrolling +- radv: fix registering queues for RGP with compute only +- radv: set radv_zero_vram=true for Unreal Engine 4/5 +- radv: fix a descriptor leak with debug names and host base descriptor set +- radv: add a missing async compute workaround for Tonga/Iceland +- radv: disable TC-compatible HTILE on Tonga and Iceland +- radv: set radv_invariant_geom=true for War Thunder +- radv: do not set OREO_MODE to fix rare corruption on GFX11 + +Saroj Kumar (4): + +- radeonsi: Add perfetto support in radeonsi +- radeonsi: Add u_trace init code in radeonsi +- radeonsi: Add tracepoints in radeonsi driver +- radeonsi: fixes compilaton error when perfetto is disabled + +Sathishkumar S (2): + +- radeonsi/vcn: support variable number of bs_bufs +- radeonsi/vcn: num bs_bufs must be proportional to num jpeg engines + +Semjon Kravtsenko (1): + +- glx: Assign unique serial number to GLXBadFBConfig error + +Seppo Yli-Olli (1): + +- zink: Fix SyntaxWarning in zink_extensions script + +Sergi Blanch Torne (7): + +- Introduce ci-kdl builder and launcher. +- Integrate ci-kdl in the building process and launch process. +- ci: disable Collabora's LAVA lab for maintance +- Revert "ci: disable Collabora's LAVA lab for maintance" +- Revert "ci: disable Collabora's LAVA lab for maintance" +- ci: disable Collabora's LAVA lab for maintance +- Revert "ci: disable Collabora's LAVA lab for maintance" + +Sid Pranjale (1): + +- nvk: Enable VK_EXT_load_store_op_none + +Sil Vilerino (20): + +- util: Blake3 - Identify arm64ec as aarch64 instead of x64 +- d3d12: Fix Map/Unmap of YUV resources +- d3d12: Fix H264 interlaced decode +- d3d12: Video Decode - Remove unnecessary copy for texture array case +- util/vl_vlc: Use UINT64_MAX instead of ~0UL with MSVC compiler +- d3d12: Extend video screen AV1 encode tile support checking +- aux/tc: Add ASSERTED to unreferenced release build variable +- d3d12: Video - Relax ID3D12VideoDevice QI version for decode, process +- frontends/va: Add profile param when querying PIPE_VIDEO_CAP_ENC_QUALITY_LEVEL +- d3d12: Upgrade to D3D12 Agility SDK 1.611 Video interface +- d3d12: Fixes AV1 tx_mode_support reporting and unsupported tx_mode overriding +- d3d12: Video Decode - Wait for GPU completion before destroying decoder in-flight objects +- d3d12: Do not destroy codec when destroying video buffer +- d3d12: AV1 encode - Add lower resolution fallback check for uniform tile support +- d3d12: AV1 encode - add fallback for app passing unsupported pic_params.InterpolationFilter +- d3d12: AV1 Encode - Fix VAConfigAttribEncMaxRefFrames reporting +- frontend/va: Add support for VAConfigAttribEncMaxTileRows/Cols +- d3d12: Add support for PIPE_VIDEO_CAP_ENC_MAX_TILE_ROWS/COLS +- d3d12: Allocate d3d12_video_buffer with higher alignment for compatibility +- d3d12: d3d12_video_buffer_create_impl - Fix resource importing + +Simon Ser (7): + +- wayland: enable use of wayland-protocols as a subproject +- vulkan/wsi/wayland: add support for IMMEDIATE +- vulkan/wsi/wayland: fix unset present_mode +- radv/winsys: check amdgpu_create_bo_from_user_mem() for EINVAL +- egl: extract EGLDevice setup in dedicated function +- egl: move dri2_setup_device() after dri2_setup_extensions() +- egl: ensure a render node is passed to _eglFindDevice() + +Simon Zeni (1): + +- nouveau/winsys: use mmap instead of mmap64 in nouveau_bo + +SoroushIMG (1): + +- pvr: fix mipmap size calculation for bc formats + +Sviatoslav Peleshko (9): + +- dri: Use RGB internal formats for RGBX formats +- intel/isl: Don't over-allocate CLEAR_COLOR size to use whole cache line +- anv: Do fast clear color initialization more delicately +- zink: Change zink_vertex_elements_hw_state::b.strides to VkDeviceSize +- intel/fs: Check if the whole ubo load range is in the push const range +- zink: Store zink_vertex_elements_hw_state::b.strides by binding id +- intel/fs: Fix "packed word exception" condition for register regioning +- intel/eu/validate: Validate "packed word exception" stricter +- nir/loop_analyze: Fix inverted condition handling in iterations calculation + +Sylvain Munaut (9): + +- egl/dri2: Add a couple of missing mutex release in error path +- mesa: Enable ARB_texture_border_clamp in GL Core +- include: Fix the PFN declarations to be pointers as they should +- glx: Add missing MesaGLInteropGLXFlushObjects +- glx: Export the MESA GL Interop functions through glXGetProcAddress +- egl: Export the MESA GL Interop functions through eglGetProcAddress +- glx: Remove MESA_depth_float_bit from enum +- glx: Advertise GLX_MESA_gl_interop extension if support present +- egl: Advertise EGL_MESA_gl_interop extension if support present + +Tapani Pälli (34): + +- intel/blorp: add a new flag to communicate PSS sync need +- anv: implement required PSS sync for Wa_18019816803 +- iris: implement required PSS sync for Wa_18019816803 +- vulkan/runtime: change assert to match specification needs +- anv: remove assert, size is asserted in the runtime +- anv: refactor batch_set_preemption to use batch_emit_pipe_control +- anv: implement a dummy depth flush for Wa_14016712196 +- iris: implement a dummy depth flush for Wa_14016712196 +- mesa: fix some TexParameter and SamplerParameter cases +- mesa: remove GL_UNSIGNED_BYTE as supported for snorm reads +- ci: add a fix for KHR-GLES3.packed_pixels.*snorm tests +- anv: implement Wa_14018912822 +- iris: implement Wa_14018912822 +- driconf: use lower_depth_range_rate for The Spirit and The Mouse +- mesa: disable snorm readpix clamping with EXT_render_snorm +- iris: modify Wa_14014414195 to use intel_needs_workaround +- mesa: some cleanups for texparam extension checks +- iris: avoid issues with undefined clip distance +- crocus: avoid issues with undefined clip distance +- anv: refactor to fix pipe control debugging +- anv: fix a leak of fp64_nir shader +- iris: use intel_needs_workaround for Wa_14014414195 part 2 +- iris: correct dst alpha blend factor in Wa_14018912822 +- iris/anv: move Wa_14018912822 as a drirc workaround +- iris: flush data cache when flushing HDC on GFX < 12 +- anv: HDC flush is available only for GFX_VER 12+ +- iris: HDC flush is available only for GFX_VER 12+ +- intel/genxml: remove HDC from gen11.xml, it is not available +- mesa/st: ignore StencilSampling if stencil not part of the format +- intel/dev: expand existing fix for all gfx12 with small EU count +- egl: fix leaking drmDevicePtr in _eglFindDevice +- iris: add data cache flush for pre hiz op +- anv/drirc: add option to disable FCV optimization +- drirc: Set limit_trig_input_range option for Valheim + +Tatsuyuki Ishi (8): + +- radv/amdgpu: Remove unused bo_list variable from cs_submit. +- radv/winsys: Remove unused struct radv_winsys_bo_list. +- radv/amdgpu: Do not pass in a BO handle when clearing PRT VA region. +- radv: Fix IB size for RADV_DEBUG=hang. +- radv: Fix dumping vertex descriptors with RADV_DEBUG=hang. +- radv/amdgpu: Use rwlock to protect access to virtual BOs. +- zink: Fix missing sparse buffer bind synchronization. +- zink: Fix waiting for texture commit semaphores. + +Thomas H.P. Andersen (65): + +- tgsi: remove unused tgsi_shader_info.num_tokens +- tgsi: remove unused tgsi_shader_info.array_max +- tgsi: remove unused tgsi_shader_info.num_memory_instructions +- tgsi: remove unused tgsi_shader_info.colors_read +- tgsi: remove unused tgsi_shader_info.colors_written +- tgsi: remove unused tgsi_shader_info.reads_position +- tgsi: remove unused tgsi_shader_info.reads_samplemask +- svga: remove unused struct field +- tgsi: remove unused tgsi_shader_info.reads_tess_factors +- tgsi: remove unused tgsi_shader_info fields +- tgsi: remove unused tgsi_shader_info fields +- tgsi: remove unused tgsi_shader_info.uses_drawid +- tgsi: remove unused tgsi_shader_info fields +- tgsi: remove unused tgsi_shader_info.uses_subgroup_info +- tgsi: remove unused tgsi_shader_info.writes_primid +- tgsi: remove unused tgsi_shader_info.uses_doubles +- tgsi: remove unused tgsi_shader_info.uses_derivatives +- tgsi: remove unused tgsi_shader_info.uses_bindless_samplers +- tgsi: remove unused tgsi_shader_info.uses_bindless_images +- tgsi: remove unused tgsi_shader_info.clipdist_writemask +- tgsi: remove unused tgsi_shader_info.culldist_writemask +- tgsi: remove unused tgsi_shader_info.images_load +- tgsi: remove unused tgsi_shader_info.images_store +- tgsi: remove unused tgsi_shader_info.images_atomic +- tgsi: remove unused tgsi_shader_info.uses_bindless_buffer_load +- tgsi: remove unused tgsi_shader_info.uses_bindless_buffer_store +- tgsi: remove unused tgsi_shader_info.uses_bindless_buffer_atomic +- tgsi: remove unused tgsi_shader_info.uses_bindless_image_load +- tgsi: remove unused tgsi_shader_info.uses_bindless_image_store +- tgsi: remove unused tgsi_shader_info.uses_bindless_image_atomic +- tgsi: remove unused tgsi_shader_info.indirect_files_read +- tgsi: remove unused tgsi_shader_info.indirect_files_written +- tgsi: remove unused tgsi_shader_info.const_buffers_indirect +- tgsi: remove unused tgsi_shader_info.max_depth +- tgsi: drop two unused functions +- nvk: use common physical device enumeration +- nvk: fix implicit-fallthrough warnings with clang +- nvk: delete commented code +- nvk: fix mem leaks +- nvk: use common descriptor set layout code +- nvk: use common pipeline layout code +- nvk: advertise KHR_shader_non_semantic_info +- nvk: advertise KHR_image_format_list +- nvk: advertise EXT_private_data +- nvk: advertise KHR_sampler_mirror_clamp_to_edge +- nvk: KHR_descriptor_update_template +- nvk: CmdPushDescriptorSetWithTemplateKHR +- nvk: drop dead assignment +- nvk: drop dead assignment +- nvk: fix initialization override +- nvk: sort extensions +- nvk: advertize KHR_relaxed_block_layout +- nvk: add check for VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT +- nvk: advertise EXT_image_2d_view_of_3d +- nvk: fix maxPushDescriptors +- nvk: call correct macro to clear views +- nouveau/mme: use fermi enum in fermi builder +- nvk: add warning on non-nouveau drm driver +- nvk: Implement VK_KHR_draw_indirect_count on Turing+ +- nvk: set device info before use in nvk_get_device_extensions +- nvk: simplify code by using new helpers +- nvk: remove duplicated device features +- nvk: EXT_conditional_rendering +- nvk: advertise VK_EXT_tooling_info +- nvk: set optimization level to 3 + +Thong Thai (3): + +- radeonsi: enable vcn encoder rgb input support +- Update radeon_vcn_enc.c +- frontends/va/config: report max width and height for encoding/decoding + +Timothy Arceri (27): + +- glsl: fix validation of ES vertex attribs +- nir/opt_copy_prop_vars: don't clone copies if branch empty +- nir/opt_copy_prop_vars: speedup cloning of copy tables +- nir/opt_copy_prop_vars: remove var hash entry on kill alias +- nir/opt_copy_prop_vars: skip cloning of copies arrays until needed +- nir/opt_copy_prop_vars: drop reuse of dynamic arrays +- glsl: fix spirv sso validation +- glsl: mark structs containing images as bindless +- util: add radeonsi workaround for Nowhere Patrol +- glsl: fix out params in glsl to nir +- glsl_to_nir: add more unhandled function types +- nir: replace use of nir_src_copy() +- nir: remove unused nir_src_copy() +- nir: remove unused param from nir_alu_src_copy() +- glsl: remove field from gl_shader_program +- glsl: move get_varying_type() declaration earlier +- glsl: add nir version of validate_first_and_last_interface_explicit_locations() +- glsl: switch to nir validate_first_and_last_interface_explicit_locations() +- glsl: remove unused validate_first_and_last_interface_explicit_locations() +- nir: fix typo in comment +- nir: copy explicit_invariant flag to nir vars +- glsl: move interpolation_string() to linker_util +- glsl: move is_gl_identifier() to linker_util +- nir: add used field to nir variables +- glsl: implement cross_validate_outputs_to_inputs() in nir linker +- glsl: switch to nir linkers cross_validate_outputs_to_inputs() +- glsl: remove now unused varying linker code + +Timur Kristóf (39): + +- aco: Fix subgroup_id intrinsic on GFX10.3+. +- ac/nir: Simplify arg unpacking when shift is zero. +- ac/nir: Add new pass to lower intrinsics to shader args. +- radv: Move radv_select_hw_stage to radv_shader_info. +- radv: Use ac_nir_lower_intrinsics_to_args. +- radeonsi: Move si_select_hw_stage to si_shader_info. +- radeonsi: Use ac_nir_lower_intrinsics_to_args. +- aco: Remove subgroup_id and num_subgroups intrinsics. +- ac/llvm: Remove subgroup_id and num_subgroups intrinsics. +- aco: Refactor select_program to smaller functions. +- nir/opt_dead_cf: Remove if branches with undef condition. +- ac/nir: Add done arg to ac_nir_export_position. +- ac/nir: Slightly refactor how pos0 exports are added when missing. +- ac/nir/ngg: Wait for attribute stores before VS/TES/GS pos0 export. +- ac/nir/ngg: Refactor mesh shader primitive export. +- ac/nir/ngg: Wait for attribute ring stores in mesh shaders. +- ac/nir/ngg: Extract nogs_export_vertex_params function. +- ac/gpu_info: Add some SDMA related information. +- ac: Clarify SDMA opcode defines. +- ac: Add amd_ip_type argument to ac_parse_ib and ac_parse_ib_chunk. +- ac: Rename ac_do_parse_ib to parse_pkt3_ib. +- ac: Print IP type for IBs. +- ac: Add rudimentary implementation of printing SDMA IBs. +- radv: Rename SDMA file to radv_sdma.c +- radv: Use const device argument in radv_sdma_copy_buffer. +- radv: Use const on vi_alpha_is_on_msb arguments. +- radv: Only call si_cp_dma_wait_for_idle on GFX and ACE queues. +- radv: Move radv_cp_wait_mem to radv_cs.h and add queue family argument. +- radv: Refactor WRITE_DATA helper function. +- radv: Use new WRITE_DATA helper in more places. +- radv: Add queue family argument to some functions. +- radv: Wait for bottom of pipe in ACE gang wait postamble. +- radv: Simplify gang CS and semaphore initialization. +- radv: Allow gang submit use cases other than task shaders. +- radv: Slightly refactor gang semaphore functions. +- radv: Add gang follower semaphore functions. +- radv: Support SDMA in radv_cs_write_data_head. +- radv: Support SDMA in radv_cp_wait_mem. +- radv: Support SDMA in si_cs_emit_write_event_eop. + +Vignesh Raman (4): + +- ci: add Vignesh Raman into restricted traces access list +- Do explicit cast to suppress clang warnings +- ci: enforce -Wimplicit-const-int-float-conversion for clang +- ci: Uprev crosvm + +Vinson Lee (8): + +- nvk: Fix assert +- lavapipe: Fix struct initialization +- intel/decoder: Fix memory leak on error path +- nv50: Remove unused value +- vk/wsi/x11: Remove dead code +- freedreno/replay: Fix implicit-function-declaration error +- anv: Fix transfer type assert +- broadcom/qpu: Remove duplicate variable opcode + +Vitaliy Triang3l Kuzmin (3): + +- r600/asm: Fix AR force_add_cf setting if a clause is not open +- r600/asm: Make sure MOVA and SET_CF_IDX are in the same clause +- r600: Replace R600_BIG_ENDIAN with UTIL_ARCH_BIG_ENDIAN + +Vlad Schiller (15): + +- pvr: Implement VK_EXT_tooling_info +- pvr: Add 'info' PVR_DEBUG flag +- pvr: Implement VK_KHR_format_feature_flags2 +- pvr: Remove PVR_WINSYS_BO_FLAG_ZERO_ON_ALLOC flag +- pvr: Add VK_KHR_driver_properties +- pvr: Use correct index when writing query availability data +- pvr: Enable VK_EXT_scalar_block_layout +- pvr: Enable KHR_image_format_list +- pvr: Enable VK_KHR_uniform_buffer_standard_layout +- pvr: Implement VK_KHR_external_fence +- pvr: Implement VK_KHR_external_semaphore +- pvr: Enable VK_KHR_bind_memory2 extension +- pvr: Implement VK_EXT_texel_buffer_alignment +- pvr: Implement VK_EXT_host_query_reset +- pvr: Fix VK_EXT_texel_buffer_alignment + +WinLinux1028 (1): + +- radeonsi: prefix function with si\_ to prevent name collision + +Xaver Hugl (1): + +- vulkan wsi: add support for PresentOptionAsyncMayTear + +Yiwei Zhang (46): + +- venus: handle query feedback creation failure +- venus: ensure consistency of query overflow behavior +- venus: add a missing barrier before copying query feedback +- venus: refactor query feedback cmd record +- venus: reduce to use 4K mem suballoc align on platforms known to fit +- turnip: flush cache for dstBuffer in vkCmdCopyQueryPoolResults +- lvp: avoid reading immutable sampler from desc write info +- ci/venus: update venus-lavapipe expectations +- venus: fix a cmd builder render_pass state leak across reset +- venus: fix cmd state leak across implicit reset +- venus: log and doc the broken query feedback in suspended render pass +- venus: move transient storage from cmd to pool +- venus: remove redundant fb tracking from cmd builder +- venus: use tracked queue_family_index from the cmd pool +- venus: cleanup vn_cmd_begin_render_pass usage +- venus: add helpers to track subpass view mask +- venus: avoid redundant tracking of render pass +- venus: refactor more cmd states into cmd builder +- venus: use in_render_pass to skip present_src counting +- ci/venus: remove fixed tests that no longer run +- ci/venus: reenable pipeline cts +- venus: suppress a false logging +- venus: add no_sparse debug option to disable sparse resource support +- venus: set deviceMemoryReport feature +- venus: expose at least one cached memory type +- venus: expose KHR_external_fence/sempahore_fd extensions +- venus: fix a device memory report leak +- vulkan: remove a dup entry from vk_image_usage_to_ahb_usage +- vulkan/android: improve vkQueueSignalReleaseImageANDROID +- vulkan/android: add missing AHARDWAREBUFFER_USAGE_GPU_DATA_BUFFER usage +- vulkan/android: drop vk_buffer dependency from common AHB impl +- venus: use common vk_queue object +- venus: use common ANB implementation +- venus: use more common vk_queue related implementations +- venus: drop device, family, index, flags tracking from vn_queue +- venus: fix re-export of imported classic 3d resources +- venus: remove redundant bo roundtrip and add more docs +- venus: track VkPhysicalDeviceMemoryProperties instead +- venus: refactor vn_device_memory to prepare for async alloc +- venus: make device memory alloc async +- venus: enable Vulkan 1.3 for Android 13 and above +- zink: sync queue access for vkQueueWaitIdle +- venus: properly expose KHR_external_fence/sempahore_fd +- ci/venus: mark more flaky tests after recent cts uprev +- venus: fix query feedback batch leak and race upon submission +- zink: apply can_do_invalid_linear_modifier to Venus + +Yogesh Mohan Marimuthu (12): + +- gallium: remove start_slot parameter from pipe_context::set_vertex_buffers +- ac/surface: add astc block size to bpe_to_format() function +- util: move ASTCLutHolder from mesa/main to util +- vulkan/formats,zink: move vk_format_from_pipe_format() function +- vulkan/runtime: add compute astc decoder helper functions +- vulkan add 3D texture support for compute astc decoder +- radv: integrate meta astc compute decoder to radv +- radeonsi: add more documentation for dpbb debug env variable +- docs: remove document for unused variable dfsm from AMD_DEBUG +- radeonsi: correct old comment in si_emit_framebuffer_state() +- radeonsi: In gfx6_init_gfx_preamble_state() use gfx_level only from sctx +- radeonsi: add radeonsi to GL_RENDERER string + +Yonggang Luo (43): + +- lima: Convert to use nir_foreach_function_impl when possible +- freedreno: Switch to use nir_foreach_function_impl in tu_shader.cc +- zink: Convert to use nir_foreach_function_impl when possible +- lavapipe: Convert to use nir_foreach_function_impl +- lavapipe: fixes indent of function lvp_inline_uniforms +- microsoft/compiler: convert to use nir_foreach_function_with_impl in function emit_module +- microsoft/clc/compiler: Convert to use nir_foreach_function_impl when possible +- radeonsi: Convert to use nir_foreach_function_impl +- ac: Switch to use nir_foreach_function_impl in function analyze_shader_before_culling +- util: Move pipe_swizzle from p_defines.h to u_formats.h +- util: Move PIPE_MASK_* from p_defines.h to u_formats.h +- util: Move pipe_color_union from p_defines.h into u_formats.h +- util: Move u_pack_color.h and dbughelp.h into src/util from/src/gallium/auxiliary/util/ +- util: Remove include "pipe/\*.h" in src/util/* files +- util:Move only gallium used u_debug_refcnt.* and u_debug_describe.* into src/gallium/auxiliary/util/ +- util/meson: Getting mesa util core to be self contained +- pvr: decouple vulkan driver and compiler from gallium +- freedreno: decouple compiler and vulkan driver from gallium +- glx: decouple from gallium +- meson: Remove arm_neon_workaround +- nouveau/drm-shim: Decouple from gallium +- ac/radv: decouple radv vulkan driver and compiler from gallium +- etnaviv: decouple drm from gallium +- asahi: decouple layout from gallium +- compiler: Move WRITEMASK_* from prog_instruction.h into shader_enums.h +- intel/blorp: Use float directly to avoid #include "mesa/main/format_utils.h" +- intel/blorp: brw_sampler_prog_key_data::swizzles is only and should only accessed in crocus +- intel/brw: Define and use BRW_SWIZZLE_* instead of SWIZZLE_* +- crocus: #include "program/prog_instruction.h" for SWIZZLE_* +- intel/compiler,intel/blorp,intel/vulkan: decouple vulkan driver and compiler from gallium +- util/treewide: Use alignas(x) instead __attribute__((aligned(x))) +- v3dv: Use alignas(8) over 64 bit atomic value +- svga: use alignas over struct MKSGuestStatInfoEntry +- radv: Fixes mingw linkage error undefined reference to \`radv_GetCalibratedTimestampsEXT' +- v3d: Use DIV_ROUND_UP instead div_round_up +- freedreno: Use shared DIV_ROUND_UP instead div_round_up +- sfn: Use 4 instead of ATOMIC_COUNTER_SIZE +- intel/brw: use 4 instead of MAX_VERTEX_STREAMS to avoid #include "mesa/main/config.h" +- d3d12: replace use of MAX_VERTEX_STREAMS with PIPE_MAX_VERTEX_STREAMS +- compiler: use 4 instead ATOMIC_COUNTER_SIZE in glsl_types.h to avoid #include "mesa/main/config.h" +- compiler/glsl: Move glsl_print_type from glsl_types.* to ir_print_visitor.cpp +- util: Deduplicate macros between u_math.h and macros.h +- nvk: Should use alignment instead of align + +Yusuf Khan (4): + +- nouveau/ws: remove the drm.h header +- nvk: implement GetDeviceMemoryCommitment +- nvk: support GetImageSparseMemoryRequirements2 +- nvk: expose KHR_driver_properties + +Zhang Ning (1): + +- Revert "intel/ci: disable iris-jsl-deqp because it always fails for an AMD MR" + +antonino (14): + +- virgl: add ci flake +- freedreno: add ci flake +- zink: remove unused indices from \`nir_load_push_constant` calls +- zink/nir: add a zink specific intrinsic for push constants +- vulkan/wsi: add \`vk_wsi_force_swapchain_to_current_extent` driconf +- drirc: enable \`vk_wsi_force_swapchain_to_current_extent` for "The Talos Principle" +- drirc: enable \`vk_wsi_force_swapchain_to_current_extent` for "Serious Sam Fusion" +- vulkan: Extend vkGet/SetPrivateDataEXT handling to all platforms +- vulkan: Extend vkGet/SetPrivateDataEXT handling to VkSurface +- vulkan: Handle vkSetDebugUtilsObjectNameEXT on WSI objects +- zink: store bindless var when creating it to avoid creating it again +- nir: fix several crashes in \`nir_lower_tex` +- nir: don't take the derivative of the array index in \`nir_lower_tex` +- vulkan: use instance allocator for \`object_name` in some objects + +cheyang (1): + +- isaspec : fix isaspec build error in aosp + +georgeouzou (1): + +- nvk: Support VK_EXT_line_rasterization + +jazzfool (1): + +- zink: Hash only first 32 bits of zink_gfx_pipeline_state with full DS3 + +lorn10 (1): + +- docs: Update Clover's env variable documentation + +norablackcat (2): + +- spirv/nir_to_spirv: add expect assume op codes +- rusticl: add cl_khr_expect_assume + +timmac-qmc (1): + +- glsl: fix potential crash with DisableUniformArrayResize + +twisted89 (1): + +- util/driconf: add workarounds for the Chronicles of Riddick + +wangra (1): + +- tu/kgsl: Fix bitfield of DITHER_MODE_MRT6 + +xurui (1): + +- glx: There is no need to psc++ diff --git a/docs/relnotes/new_features.txt b/docs/relnotes/new_features.txt deleted file mode 100644 index ca79cf2a745..00000000000 --- a/docs/relnotes/new_features.txt +++ /dev/null @@ -1,21 +0,0 @@ -New drivers ------------ - -- NVK: A Vulkan driver for Nvidia hardware - -New features ------------- -VK_EXT_pipeline_robustness on ANV -VK_KHR_maintenance5 on RADV -OpenGL ES 3.1 on Asahi -GL_ARB_compute_shader on Asahi -GL_ARB_shader_atomic_counters on Asahi -GL_ARB_shader_image_load_store on Asahi -GL_ARB_shader_image_size on Asahi -GL_ARB_shader_storage_buffer_object on Asahi -GL_ARB_sample_shading on Asahi -GL_OES_sample_variables on Asahi -GL_OES_shader_multisample_interpolation on Asahi -GL_OES_gpu_shader5 on Asahi -EGL_ANDROID_blob_cache works when disk caching is disabled -VK_KHR_cooperative_matrix on RADV/GFX11+ |