diff --git a/docs/relnotes/22.3.0.rst b/docs/relnotes/22.3.0.rst new file mode 100644 index 00000000000..532ccb5ee84 --- /dev/null +++ b/docs/relnotes/22.3.0.rst @@ -0,0 +1,5724 @@ +Mesa 22.3.0 Release Notes / 2022-12-02 +====================================== + +Mesa 22.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 22.3.1. + +Mesa 22.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 22.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 +--------------- + +:: + + 644bf936584548c2b88762111ad58b4aa3e4688874200e5a4eb74e53ce301746 mesa-22.3.0.tar.xz + + +New features +------------ + +- GL_ARB_shader_clock on llvmpipe +- VK_KHR_shader_clock on lavapipe +- Mesa-DB, the new single file cache type +- VK_EXT_attachment_feedback_loop_layout on RADV, lavapipe +- VK_KHR_global_priority on RADV +- GL_KHR_blend_equation_advanced_coherent on zink +- VK_EXT_load_store_op_none on RADV +- VK_EXT_mutable_descriptor_type on RADV +- VK_EXT_shader_atomic_float on lvp +- VK_EXT_shader_atomic_float2 on lvp +- GL_NV_shader_atomic_float on llvmpipe +- VK_EXT_image_robustness on v3dv +- VK_EXT_extended_dynamic_state3 on lavapipe +- VK_EXT_extended_dynamic_state3 on RADV +- VK_EXT_pipeline_robustness on v3dv +- Mali T620 on panfrost +- Shader disk cache on Panfrost +- support for R8G8B8, B8G8R8, R16G16B16 and 64-bit vertex buffer formats on RADV +- initial GFX11/RDNA3 support on RADV +- various ray tracing optimizations on RADV +- extendedDynamicState2PatchControlPoints on RADV (VK_EXT_extended_dynamic_state2 feature) +- Radeon Raytracing Analyzer integration (using RADV_RRA_* environment variables) +- None + + +Bug fixes +--------- + +- r600,regression: Wrong color on a Minecraft shaderpack on Cayman +- [iris/crocus] Native CS:GO OpenGL: fire produces black rendering artifacts +- VDPAU GL interop is broken, causing Black and White video +- panfrost: application crashes with 22.2.4/22.3.0-rc3 +- etnaviv: compiler assertion fail in glmark2 terrain +- anv: dEQP-VK.pipeline.monolithic.multisample.variable_rate.8_1_fb_1 failure +- DG2: Age of Empire IV incorrect rendering +- r600: Sky not rendered correctly with the NIR backend on Transport Fever 2 +- "intel/compiler: Signed integer range analysis for imul_32x16 generation" regresses several OpenCL tests +- aco: Missing 8-bit uadd_carry +- !16168 broke Xephyr -glamor fallback to swrast +- panfrost/rk3399: performance drop in emulationstation and in RetroArch menu [mesa >= 21.3.8, batocera.linux, bisected] +- d3d12/VA-API: [-wmissing-prototypes] with MSYS2 MinGW-W64 UCRT64 GCC +- clover: windows: library filename has \`-1` suffix and a \`lib` prefix when built with mingw +- freedreno: !19236 broke anitchamber trace +- radv, dxvk: Rendering errors in World of Tanks after "Switch to dynamic rendering only" +- gen9 gt3e/gt4e skus fail dEQP-VK.pipeline.multisample.sample_locations_ext.* +- Intel - GPU Hang when starting new game in Hellblade: Senua's Sacrifice +- v3d: Wrong colors (pink) in videos in Firefox (likely YUV->RGB shader issue) +- anv/zink: cts failures on ICL +- panfrost t860 glmark-es2 regression +- panfrost_drm.h build error +- radv: Artifacts in multiple games with yuzu (regression, bisected) +- Doom (1993) Ray-Traced has render glitches. +- radv: Flickering in Spider-Man Remastered (Regression) (Bisected) +- radv: Hitman 2 using Direct3D 12 has discolored squares on RDNA2 with DCC enabled +- panfrost/midgard - on Duckstation PSX emulator: segfault on GLES 3.0 and bad shader compilations on 3.3 +- nouveau: Updating to Mesa*22.2.0 makes videos have corrupted colors in Firefox +- [radeonsi] OpenGL rendering issue with Unreal Tournament 99 & OldUnreal 4.69 rc4 +- Replace the functionals in util/debug.h with util/u_debug.h +- gallium: nir_opt_access desynchronizes image access modifiers in NIR with Program->sh.ImageAccess +- [radv/navi21] No sprites being rendered in Quake 2 RTX +- Hacknet does not render on Panfrost +- !19259 broke some piglit arb_tessellation_shader tests with radeonsi if TCS passthrough shader is cached +- panfrost g52 issue +- [Intel] Doom Eternal crashes shortly after launching +- GravityMark segfault when using ray tracing ANV +- nir: Incorrect idiv lowering +- intel-clc fails with "Unsupported SPIR-V capability" and SEGFAULT. +- Navi 14 hangs running "rendercheck -t cacomposite -f a8r8g8b8" since !18170 +- glx=xlib can not be built under ubuntu 22.04 +- radv: incorrect query result for VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT +- crocus: EGL_ANDROID_native_fence_sync extension is missing +- freedreno/a6xx: spec@arb_tessellation_shader@execution@tess-instance-id fail +- r300: wrong primitive positions in CXBX-R emulator with nine and RADEON_DEBUG=notcl +- EGL re-initialization can fail silently +- Rusticl: fails to create program if source size is stated, but last char is a null terminator +- r300: register allocation sometimes generate invalid swizzles +- Mesa git Upgrade causes cursor detection issues in Wayland, issue was not in 22.3.0-git.20220920.8d66c45.fc36 +- Proposal: Remove rbug, graw, graw tests, xa, xvmc +- intrinsics.h:112:21: error: use of undeclared identifier 'intel_sub_group_shuffle' +- tu: broken since dynamic pcp +- radv: Crash in dEQP-VK.ray_query.misc.dynamic_indexing +- t860: mediapipe application failed +- glthread: radeonsi: offset textures in game starsector with glthread enabled +- Crashing on Windows VM +- zink: descriptor-handling regression +- hasvk: noperspective is broken on Haswell hardware (Intel(R) HD Graphics 4400) +- util/u_atomic.h can not be included in util/u_debug.h +- radv: dynamic patch control points broken +- Exanima renders with the wrong colors. +- Missing tile cache flushes causing corruptions +- turnip: compute shader hang in the Monster Hunter World +- anv_private.h:118:10: fatal error: anv_entrypoints.h: No such file or directory +- freedreno: mis-rendering on gardensofkadesh/homeworld +- piglit.spec.egl 1_4.egl-ext_egl_image_storage times out +- nouveau: tegra124: GL_OUT_OF_MEMORY error +- r600: Shadows incorrecly rendered on Counter-Strike: Global Offensive with the NIR backend +- r300: regalloc doesn't handle brk correctly +- Recent WSI commit breaks every Vulkan application on RDNA 2 GPUs +- 8775f08bf11 makes warcraft 3 crash with free(): double free detected in tcache 2 +- anv: probable ccs issue on icl +- iris: remap_tess_levels assertion failure in shader-db runs +- RADV: Mafia & Mafia III :Definitive Edition graphical issues with certain effects +- Cyberpunk 2077 ground reflectiveness issues using RADV +- [RADV] Grand Theft Auto V: Shadow rendering bug on Steam Deck +- rusticl: fails to build on non-Linux: cannot find value \`stderr` in this scope +- llvmpipe-piglit-rusticl fail at api/clenqueuefillimage +- Broken build with Clang-16 due to: aco_register_allocation.cpp:382:7: error: no matching function for call to 'printf' +- src/gallium/drivers/r600/sfn/sfn_instr.cpp:92:33: error: expected primary-expression before 'int' +- r600: Make NIR the default backend +- undefined reference to \`intel_ds_begin_xfb' +- data-race leads to crash in u_trace_context_init() +- radeonsi/radv: Discrepancy in handling wd_switch_on_eop +- Shadows rendering issue in Deathloop +- RADV: Regression with RPCS3 where nothing renders +- [RADV][bisected] commit 3714c89d0ebf0c541d8f7a7a807ce7c1bfe3cfea at least lead to GPU hang when I run the game "Quake II RTX" +- eglCreateContext doesn't generate EGL_BAD_MATCH when share_context is on a different EGLDisplay +- Intel - Homerun Clash misrendering issue +- r300: dEQP-GLES2.functional.shaders.indexing.tmp_array.float_dynamic_write_dynamic_loop_read_fragment regression +- turnip/a660: dEQP-VK.spirv_assembly.instruction.terminate_invocation.terminate.subgroup_ballot failure due to "movmsk" reordered with "kill" +- WSI reports 11 RGB bits is unsupported in X11, using zink/swrast +- [radeonsi] Graphical corruption in Valve Source-based games +- RADV: VK_EXT_load_store_op_none support? +- radv: extendedDynamicState2PatchControlPoints +- Vega 8 rendering GDM grey blank login screen after recent change +- r300: possibility of merging ADD and MUL into MAD when effectively only 2 sources are used +- MESA_DEBUG=incomplete_tex shows unnecessary validation during glClear +- anv: Performance drop with Vulkan on Wayland +- lima: crash during dEQP-EGL execution +- Regression from https://gitlab.freedesktop.org/mesa/mesa/-/commit/8fcb4aa0ebd7b9d0d8f80986fb817afea2fc4a87 +- radv: Enable instruction timing with RGP for RT +- Updates to 22.2 RCs cause artifacts on nouveau and blank screen on VirtIO +- nouveau: corruption on NVAC after switching to the NIR backend +- egl: Remove big-display-lock +- DG2: vulkancts tests spin forever +- [regression][bisected] v3dv: dEQP-VK.api.object_management.alloc_callback_fail_multiple.graphics_pipeline fails +- v3dv: evaluating reducing current value of DEFAULT_MAX_BO_CACHE_SIZE +- venus-lavapipe flakes +- amd: LPDDR4 and LPDDR5 hits an assertion failure in ac_memory_ops_per_clock +- zink: GL_TEXTURE_LOD_BIAS vs mipLodBias, and GTF-GL46.gtf21.GL3Tests.texture_lod_bias.texture_lod_bias_all failure on Turnip +- ci: radeonsi-raven-skqp also tests RADV but only runs on radeonsi changes +- Gallium OpenGL megadriver fails to build if LLVM is enabled but not required by any component built +- panfrost: crash in dEQP test +- bitpack_helpers.h:34:10: fatal error: valgrind.h: No such file or directory +- [gen9_iris] piglit causes crash on 4GB-memory machine when running spec/!opengl 1.1/max-texture-size +- Abort due to "Unknown intrinsic: intrinsic store_deref" (firefox, radeonsi) +- radv: missing support for some 3-component vertex formats in RDNA2 +- radv: radv_translate_buffer_dataformat overhead +- nir: Replacing GC with manual memory management +- turnip: dEQP-VK.subgroups.vote.graphics.subgroupallequal_*int regression on a635 +- regression from !17949 +- r600/sfn: xonotic shows a big performance regression when using the NIR backend with sb disabled +- r600/sfn: register allocation fails for a number of piglits and deqp tests +- DG2 corruption in gnome desktop from F36 +- d3d12: Delete custom OpenGLOn12 target, add option to override libgallium_wgl.dll name +- radeonsi: error allocating sparse buffers.. bug? +- RADV: vulkaninfo fails to report extended VkShaderStageFlagBits for VK_KHR_ray_tracing_pipeline +- [radeonsi] Transform feedback with array outputs fails +- [BISECTED/radeonsi] Flickering triangles with wayfire cube +- re-evaluate the linker for CI +- [RADV] (Vega/Navi) Halo: The Master Chief Collection: Texture issue on Halo 3 and Reach +- ../src/util/u_queue.c:218: util_queue_fence_destroy: Assertion \`fence->signalled' failed for iris when disabled UTIL_FUTEX_SUPPORTED +- Freedreno turnip mesa cause emulation close after 15-20min gameplay +- glsl: textureGatherOffset param broken +- turnip: broken after switching to userspace vma +- turnip: gfxbench aztec ruins crashes on zink +- !16863 disabled all meson tests in CI +- intel unittests failed a lot because recents commits Job Failed #27063524 +- Microsoft CLC runtime crash (at least on 32-bit) since !12510 +- Job Failed #26465985 +- v3dv: android: VTS big regression after 316728a55bc8fe398be1ac2796a22f8c91fb886c +- radeonsi: driver crashes with kwin-effects-cube +- [Turnip] Final Fantasy X: Incorrect hair rendering +- iris: Suboptimal usage of HiZ + CCS for mipmapped buffers +- Document state of Dozen Vulkan support in features.txt for MesaMatrix site.. +- turnip: gfxbench car chase crash on zink +- [r300] - osu! - Shader optimizations cause black and glitchy rendering +- [Bisected] Microsoft CLC: build failure with MSVC and Dshared-llvm=disabled with AMDGPU target available +- Android.mk: meson enables flags based on the libraries installed on the host system +- anv: invalid returns from vkCreateDescriptorPool +- [Bisected][RadeonSI] Blender crashes on startup +- lavapipe CI times out +- turnip: depth/stencil regressions +- radv regression: Hitman 2 rendering issue +- llvmpipe: assert in KHR-Single-GL45.enhanced_layouts.xfb_all_stages +- android: vulkan: Disable blocked KHR_performance_query extension (v3dv, turnip, anv) +- Poor performance/utilization with Splitgate +- [Bisected][RADV] Rendering issues and performance drop with GFX10 on RPCS3 +- freedreno_gmem.c crashes Firefox Nightly in Khronos +- freedreno / mesa 22.1.3 crashes Firefox Nightly +- !17693 broke piglit oes_egl_image_external_essl3 +- VK_PRESENT_MODE_IMMEDIATE_KHR rendering artifacts +- dzn: Build failure when it's the only driver built - 22.2-devel regression +- d3d12: Unresolved external symbols from Version.lib +- a618 vk_full timing out at 60 minutes instead of 120 + + +Changes +------- + +Adam Jackson (25): + +- egl: Remove some can't-happen supported API checks +- egl: Move an error check earlier in EGL_BUFFER_AGE_EXT query +- wsi/x11: Defer clearing image busy flag for non-shm upload +- egl/kopper: Don't add EGL_SWAP_BEHAVIOR_PRESERVED_BIT configs +- glx: Use XSaveContext, delete glxhash.c +- Revert "glx: Use XSaveContext, delete glxhash.c" +- wsi/x11: Fix the is-visual-supported check +- nouveau: const cleanup +- egl/dri2: Respect the arguments to dri2_set_blob_cache_funcs +- egl/dri2: Fix a typo in a comment +- egl/dri2: Fix some thinkos in old context release +- glx/dri*: Unify glx_context subclassing +- glx/dri: Avoid a weird indirection in driFetchDrawable +- glx: Remove some excess work from the GLX_FBCONFIG_ID fallback +- egl: Fix a bunch of maybe-uninitialized warnings +- egl: Promote _eglLock/UnlockDisplay to internal API +- egl: Untangle some spaghetti around _eglLookupDisplay +- egl: Factor out the eglTerminate write-lock pattern +- egl: Rewrite eglSetBlobCacheFuncsANDROID to use the standard macros +- mesa/fbo: Don't force both read/draw bindings to zero +- egl: Formatting fix +- egl: Factor some common terminate cleanup up to common code +- egl/dri2: Fix a weird conditional in dri2_make_current +- egl: Remove a bogus restriction from eglMakeCurrent +- rusticl: meson devenv support + +Adrián Larumbe (5): + +- panfrost: Handle Job VA cycles when decoding a dump file +- panfrost: Remove documentation reference to deprecated parameter +- panfrost: Add compiler args option for building usermode tools +- panfrost: Sync panfrost_drm.h from drm-misc-next +- panfrost: Add userspace crash dump decoder and analyser + +Alejandro Piñeiro (11): + +- v3dv/bo: reduce DEFAULT_MAX_BO_CACHE_SIZE to 64 +- v3dv/pipeline: use a array instead of individual pointer to stages +- v3dv/pipeline: keep qpu_insts around if we expect them to be used later +- v3d: replace all TODO around for FIXME +- broadcom/compiler: don't call nir_opt_load_store_vectorize on all v3d_optimize_nir calls +- broadcom/compiler: update how we compute return_words_of_texture_data on non-ssa +- broadcom/compiler: add more lowerings/optimizations on v3d_optimize_nir +- v3dv/pipeline: use v3d_optimize_nir +- broadcom/compiler: pass a strategy struct to vir_compile_init +- broadcom/compiler: call nir_opt_gcm with a custom strategy +- v3dv/bo: reset bo and then call gem close + +Alejandro Tafalla (1): + +- freedreno: Fix graphic glitches on a4xx and a5xx + +Alessandro Astone (3): + +- Android.mk: Disable lmsensors +- Android.mk: Filter out --build-id=md5 linker flag +- Android.mk: Provide a custom entry name to ensure meson checks succeed + +Alex Brachet (1): + +- nir: Fix qsort comparator function + +Alyssa Rosenzweig (414): + +- docs/asahi: Document varying interpolation +- agx: Fix packing of samplers in texture instrs +- agx: Fix ld_var cf packing +- asahi: Plumb through lower_clip_fs +- asahi: Extend counts in BIND packets +- asahi: Allow large uniform records +- asahi: Dump all textures&samplers +- asahi: Fix using multiple textures/samplers +- asahi: Use a single bind texture/sampler per pipeline +- asahi: Split vertex/fragment pipeline binds +- asahi: Correct bind fragment pipeline size +- asahi: Encode known bits of Linkage in the XML +- asahi: Fix varying XML +- asahi: Decode Interpolation packets +- asahi,agx: Rewrite varying linking +- agx: Add AGX_MESA_DEBUG=noopt option +- agx: Model perspective coefficient reg in the IR +- agx: Rename varying load instructions +- agx: Use split instead of extract for ldcf +- agx: Implement noperspective interpolation +- agx: Lower more ALU operations +- agx: Align 64-bit register pairs +- agx: Assert that registers are naturally aligned +- agx: Extract umul_high implementation +- agx: Implement nir_op_umul_high +- agx: Stop using broken idiv lowering +- agx: Handle type-changing splits +- agx: Remove p_extract +- agx: Only emit the used components of gl_FragCoord +- asahi: Don't advertise ARB_clip_control yet +- asahi: Identify depth clip mode bit +- pan/decode: Don't pass around memory handles +- pan/decode: Remove pandecode_msg +- pan/decode: Stop passing job index around +- pan/decode: Stop passing suffixes around +- pan/decode: Simplify pandecode_fbd +- pan/decode: Reorder MFBD decoding +- pan/decode: Unify SFBD/MFBD decoding +- pan/decode: Defeature disassembler stats +- pan/decode: Centrally declare pandecode entrypoints +- pan/decode: Clean up _bifrost_ decode routines +- pan/mdg: Remove disassembler stats +- panfrost: Don't segfault on unknown models +- pan/bi: Implement some extracts and inserts +- pan/bi: Fuse [US][8|16]_TO_F32 ops +- pan/bi: Test int8/16 -> float32 opts +- pan/bi: Optimize bitwise arithmetic of booleans +- pan/bi: Optimize pattern from nir_lower_idiv +- pan/bi: Don't use the broken idiv lowering +- pan/bi: Use nir_opt_idiv_const +- asahi: Fix warning building for macOS 12.0 +- pan/bi: Don't reorder image loads across stores +- pan/bi: Don't allow ATEST to take a temporary +- pan/bi: Handle info.fs.untyped_color_outputs on Valhall +- panfrost: Handle untyped_color_outputs on Bifrost +- panfrost: Set blit output variable types correctly +- panfrost: Don't saturate in Bifrost blend shaders +- panfrost: Promote blend shader outputs 8->16-bit +- panfrost: Avoid blend shader when not blending +- panfrost: Don't compile empty blend shaders +- panfrost: Invert no_colour to enabled +- panfrost: Simplify blitter blend shader creation +- panfrost: Include mask in replace blend shader name +- panfrost: Assert that blend shaders are nontrivial +- r600/sfn: Don't use broken idiv lowering +- gallium: Inline away util_make_fragment_tex_shader_writemask +- gallium: Inline away util_make_fragment_tex_shader interp_mode +- gallium: Remove util_make_fragment_tex_shader_xrbias +- pan/mdg: Replicate swizzles for scalar sources +- pan/mdg: Reexpress umul_high packing +- pan/mdg: Use correct idiv lowering +- pan/mdg: Always write return address to r1.w +- pan/mdg: Print 3 sources for CSEL +- panfrost/ci: Update G72 xflakes list +- gallium: Add u_default_set_debug_callback +- v3d: Use u_default_set_debug_callback +- vc4: Use u_default_set_debug_callback +- softpipe: Use u_default_set_debug_callback +- lima: Use u_default_set_debug_callback +- etnaviv: Use u_default_set_debug_callback +- r300: Use u_default_set_debug_callback +- panfrost: Route shader-db to debug, not stderr +- pan/bi: Implement general 8-bit vector construction +- pan/va: Handle 8-bit lane when lowering constants +- pan/bi: Implement nir_op_vec8 and nir_op_vec16 +- pan/bi: Assert that vectors are sufficiently small +- docs/asahi: Document image layouts +- asahi: Identify compressed render target fields +- asahi: Rename 'tiled 64x64' to 'twiddled' +- asahi: Add XML for multisampled textures +- asahi: Fix bind sizes +- asahi: Fix ASTC enums +- ail: Introduce image layout module +- ail: Rewrite tiled memcpy for correctness +- asahi: Handle 2-channel sRGB textures +- asahi: Fix is_format_supported returns +- asahi: Advertise ETC1 +- asahi: Advertise ASTC formats +- asahi: Rename our fake twiddled DRM modifier +- ail: Add unit tests for miptree layouts +- pan/bi: Fix dual texturing with uniforms +- pan/bi: Fix out-of-bounds write in va_lower_split_64bit +- pan/bi: Consider all dests in helper_block_update +- pan/bi: Model [IF]CMP_{OR,AND,MULTI} ops +- pan/va: Split out compare instructions +- pan/bi: Set I->nr_dests, I->nr_srcs +- pan/bi: Model 3rd source for ATEST +- pan/bi: Consider nr_srcs/dests in CSE +- pan/bi: Use nr_{srcs,dests} in bi_foreach_{src,dest} +- pan/bi: Add validation for nr_srcs/nr_dests +- pan/bi: Remove trivial dest[0] = bi_null() +- pan/bi: Clean up destination printing +- pan/bi: Improve register printing +- pan/bi: Register allocate BLEND dest on Valhall +- pan/bi: Don't remove dests in DCE +- pan/bi: Use bi_emit_split_i32 for trimming vecs +- pan/bi: Introduce TEXC_DUAL psuedoinstruction +- pan/bi: Assert destinations are non-NULL +- pan/bi: Assume destinations are non-NULL +- pan/bi: Don't read nonexistant destinations +- pan/bi: Don't read nonexistant sources +- pan/bi: Add variable dest/src support to builder +- pan/bi: Use variable src/dest for collect/split +- pan/bi: Use safe helpers to remove srcs/dests +- pan/bi: Rebuild some instructions when lowering +- pan/bi: Rebuild DISCARD when optimizing +- pan/va: Use builder in va_lower_isel +- pan/bi: Use builder for MUX -> CSEL opt +- pan/bi: Use builder for IADD -> IADDC opt +- pan/bi: Use builder for atomic lowering in scheduler +- pan/bi: Reduce memory of scheduler access array +- pan/bi: Dynamically allocate source/dests +- pan/bi: Don't write registers in optimizer tests +- pan/bi: Add bi_after_block_logical helper +- pan/bi: Lift bi_predecessor_index helper +- pan/bi: Add phi nodes +- pan/bi: Validate phi ordering +- pan/bi: Don't lower FAU for phis +- pan/bi: Remove bogus assert lowering branches +- pan/bi: Don't optimize if without else +- pan/bi: Don't reorder phis in pre-RA scheduling +- pan/bi: Validate before&after pre-RA sched +- pan/bi: Inline DCE into bi_lower_vector +- pan/bi: Translate phis from NIR +- pan/bi: Add SSA-based liveness pass +- pan/bi: Add brainless out-of-SSA pass +- pan/bi: Reduce some moves when going out-of-SSA +- pan/bi: Preserve SSA form from NIR +- pan/bi: Clean up after converting to SSA +- pan/bi: Clear reg in squeeze_index +- pan/bi: Don't use bi_temp_reg +- pan/bi: Assume SSA in copyprop +- pan/bi: Assume SSA in mod prop +- pan/bi: Assume SSA in CSE +- pan/bi: Assume non-null sources in constant folding +- pan/bi: Assume SSA in minor passes +- pan/bi: Assume SSA when scheduling for pressure +- pan/bi: Assume SSA when translating NIR +- pan/bi: Assume SSA for helper invocation analysis +- pan/bi: Move non-SSA liveness into RA +- pan/bi: Remove NIR registers from the IR +- pan/bi: Get rid of bi_get_node +- pan/bi: Inline node_to_index +- pan/bi: Remove bi_max_temp +- pan/bi: Simplify bi_get_index prototype +- pan/bi: Add and use bi_foreach_ssa_src macro +- pan/bi: Strengenth assert in the validator +- pan/bi: Remove assert(bi_is_ssa(dest)) +- pan/bi: Add and use bi_replace_src helper +- pan/bi: Add and use bi_num_successors helper +- agx: Fix tib access in internal shaders +- agx: Fix float copyprop of neg(neg) case +- agx: Add more unit tests for float copyprop +- agx: Don't hardcode uniform enums +- agx: Defeature indirect vbufs +- agx: Plumb through nir_op_txf +- asahi: Fix Indexed Draw command +- asahi: Split up unk 2b +- asahi: Note some more unknowns in the XML +- asahi: Make ctx->zs a pointer +- asahi: Export agx_blitter_save +- asahi: Handle empty fragment shaders +- asahi: Use util_blitter_clear +- asahi: Trim garbage at end of set shader +- asahi: Relax assert in decoder +- asahi: Label batch flush reasons +- asahi: Fix depth for cube maps +- asahi: Fix nonmipmapped array textures +- asahi: Fix "stride" for tiled textures +- asahi: Identify and use first level field of texture +- asahi: Correct SET_SHADER_EXTENDED disambig bit +- asahi: Add 1D and 1D Array enums +- asahi: Handle out-of-bounds clear_stencil +- asahi: Fix depth/stencil buffers +- asahi: Identify stencil test enable +- asahi: Split RASTERIZER into constituent words +- asahi: Identify object type field via PowerVR +- asahi: Don't use lower_wpos_pntc +- asahi: Match PPP data structures with PowerVR +- asahi: Hoist constant PPP state to start of batch +- asahi: Dirty track everything +- asahi: Make BO list growable +- asahi: Annotate VDM/CDM commands as per PVR +- asahi: Express VDM commands according to PowerVR +- asahi: Handle Stream Link VDM commands +- asahi: Allocate new cmdbufs if out of space +- docs/envvars: Document Asahi variables +- pan/decode: Fix job cycle detection +- nir/lower_blend: Avoid emitting unnecessary fsats +- panfrost: Respect buffer offset for OpenCL +- panfrost: Honour cso->req_local_mem +- nir: Add nir_intrinsic_texture_base_agx sysval +- agx,asahi: Implement nir_intrinsic_load_texture_base_agx +- agx: Make p_combine take a dynamic src count +- agx: Implement texture offsets and comparators +- agx: Implement txd +- agx: Implement load_global(_constant) +- agx: Lower txs to a descriptor crawl +- agx: Don't use nir_find_variable_with_driver_location +- asahi: Don't crash on <4 channel render targets +- asahi: Handle blending with MRT +- u_transfer_helper: Handle Z24X8 for drivers that don't use the interleaved transfer_map +- u_transfer_helper: Pack Z24S8 to Z24-in-Z32F and S8 +- asahi: Assert cache line alignment on Z/S buffers +- asahi: Identify ZLS Control word from PowerVR +- asahi: Identify CDM block types +- asahi: Decode CDM commands separate from VDM +- asahi: Shuffle IOGPU structs +- asahi: Identify IOGPU compute header +- asahi: Decode IOGPU compute header +- asahi: Assert that u_transfer_helper is well-behaved +- asahi: Use the internal format internally +- asahi: Identify spill buffer histogram +- asahi: Simplify IOGPU attachment packing +- asahi: Identify shared memory fields +- asahi: Consolidate magic numbers for USC controls +- asahi/genxml: Overflow up to words when packing +- asahi: Overhaul USC control packing +- asahi: Identify pixel stride +- asahi: Identify shared memory layouts +- panfrost: Evict the BO cache when allocation fails +- rusticl: Build Panfrost +- panfrost: Adapt emit_shared_memory for indirect dispatch +- agx: Convert and clamp array indices in NIR +- panfrost: Default pipe->clear_texture impl +- panfrost: Allow compiling MESA_SHADER_KERNEL +- panfrost: Upload default sampler for txf +- panfrost: Bump PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERS +- panfrost: Advertise PIPE_CAP_INT64 +- panfrost: Honour flush-to-zero controls on Valhall +- panfrost: Assume launch_grid parameters always change +- pan/va: Fix missing swizzle on CLZ.v2u16 +- pan/bi: Unit test swizzle lowering +- pan/bi: Lower some 8-bit swizzles +- pan/bi: Test some 8-bit swizzle lowering +- pan/bi: Lower swizzles for 8-bit shifts +- pan/bi: Strip negate when lowering swizzles +- pan/va: Pack IADD.sat bit +- pan/va: Fix v4s8 form of R2 opcodes +- pan/bi: Handle uhadd, urhadd opcodes +- pan/va: Pack .rhadd bit +- pan/bi: Add HADD.v4s8.rhadd packing test cases +- pan/va: Add 8-bit integer max assembler case +- pan/bi: Lower 8-bit min/max to bcsel+comparison +- pan/bi: Lower f2i8, f2u8 +- pan/bi: Remove bogus assert for pack_32_2x16 +- pan/bi: Allow selecting from an 8-bit vec8 +- pan/bi: Handle swizzles in unpack_64_2x32_split_{x,y} +- pan/bi: Lower <32-bit bit_count +- pan/bi: Lower fisnormal +- pan/bi: Scalarize phis before the opt loop +- pan/bi: Call nir_lower_64bit_phis +- pan/bi: Use .auto for image stores +- pan/bi: Fix 1D array indexing on Valhall +- pan/bi: Stub out scoped_barrier +- pan/bi: Implement unpack_64_2x32 +- agx: Fix bfi_mask packing +- agx: Emit fewer combines for intrinsics +- agx: Use 16-bit immediates +- agx: Validate immediates +- agx: Test fsat+f2f16 together +- agx: Ensure that the optimizer sees legitimate SSA +- agx: Pass mask into ld/st_tile instructions +- agx: Account for mask when writing registers +- agx: Remove load_kernel_input path +- panfrost: Remove load_kernel_input path +- nir/lower_system_values: Fix cs_local_index_to_id with variable workgroups +- asahi: Eliminate "Pixel Format" type from GenXML +- asahi/genxml: Defeature uint/float +- panfrost,asahi: Remove unused prepare macro +- panfrost,asahi: Remove unused function +- asahi,panfrost: Remove exact attribute +- asahi: Use a header more like Intel's GenXML +- asahi: Remove no-direct-packing +- agx: Add iterators for phi/non-phi instructions +- agx: Set PIPE_SHADER_CAP_INDIRECT_CONST_ADDR +- agx: Emit smaller combines for nir_op_vec2/3 +- agx: Don't prefix pseudo-ops +- agx: Improve printing of immediate sources +- agx: Switch to dynamic allocation of srcs/dests +- agx: Dynamically size split instruction +- agx: Rename "combine" to "collect" +- agx: Emit trap at pack-time, not during isel +- agx: Print instructions as "dest = src" +- agx: Print agx_dim appropriately +- agx: Preload vertex/instance ID only at start +- agx: Write to r0l with a "nesting" instruction +- agx: Introduce ra_ctx data structure +- agx: Pass in max regs as a paramter to RA +- agx: Reserve live-in regs at the start of block +- panfrost/ci: Disable t720 jobs +- nir: Be smarter fusing ffma +- mesa,gallium: Revert "Make point coord origin a CAP" +- panfrost/ci: Remove stale fail +- pan/mdg: Lower PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK on Midgard +- pan/mdg: Limit work registers for large workgroups +- pan/mdg: Fix 16-bit alignment with spiller +- nir: Fix nir_fmax_abs_vec_comp +- nir: Usher nir_normalize_cubemap_coords into 2022 +- mesa: Fix multiple matrix pops in a row +- nir/lower_io: Set interpolated_input dest_type +- u_transfer_helper: Handle Z24S8 with z24_in_z32f but no interleaving +- asahi: Lower point sprites in driver +- gallium: Default to PIPE_CAP_MIXED_COLORBUFFER_FORMATS +- panfrost: Remove NIR_SERIALIZED support +- asahi: Hold a reference to BOs in a batch +- nir/opt_preamble: Move load_texture_base_agx +- agx: Remove command line compiler +- asahi: Remove AGX_FAKE_DEVICE environment variable +- asahi: Precompile for shader-db +- asahi: Route shader-db stats to debug callback +- asahi: Identify "Uniform high" USC word +- asahi: Identify more shader-related fields +- asahi: Remove "padding" field +- asahi: Make agx_varyings a union +- asahi: Use USC_UNIFORM_HIGH +- asahi: Rename LOD clamps tests to fit other packing +- asahi: Don't use unnecessary test fixture +- asahi: Add group tests +- asahi: Support preamble shaders +- agx: Be less sloppy about high uniforms +- agx: Check that we don't push too much +- agx: Make push_count public +- agx: Handle multiple functions +- agx: Align preamble shaders +- agx: Add uniform_store instruction +- agx: Allow larger indices for ld/st +- agx: Strengthen assert for packing ld/st instructions +- agx: Implement scalar load/store_preamble +- agx: Handle uniforms passed to COLLECT +- agx: Restrict copyprop of uniforms +- agx: Handle 64-bit moves +- agx: Avoid reading high uniforms from device_load +- agx: Report GPRs to the driver +- asahi: Set uniform counts accurately +- asahi: Set GPR count accurately +- agx: Add agx_nir_opt_preamble pass +- agx: Use agx_nir_opt_preamble +- panfrost: Don't use lower_wpos_pntc on Midgard +- panfrost: Use proper formats for pntc varying +- etnaviv: Use correct idiv lowering +- nir/lower_idiv: Remove imprecise_32bit_lowering +- nir/lower_idiv: Inline convert_instr_precise +- panfrost: Zero polygon list for fragment-only +- panfrost: Don't allow VS side effects on midgard +- pan/bi: Clean up sysval handling a bit +- pan/mdg: Fix 64-bit address arithmetic +- panfrost: Use compute-based XFB on Midgard +- panfrost: Avoid a XFB special case +- panfrost: Lower MAX_BLOCK_SIZE on Midgard +- pan/mdg: Don't schedule across memory barrier +- panfrost,asahi: Support ARB_buffer_storage +- gallium: Stub support for Asahi + DRM +- gallium: Only use Asahi's software path on macOS +- panfrost/ci: Disable trace-based testing +- panfrost: Enable rendering to 16-bit and 32-bit +- panfrost: Add lots of perf_debug annotations +- asahi: Identify counts for compute kernels +- softpipe: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT +- i915g: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT +- etnaviv: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT +- gallium: Default to PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT +- nir/opt_algebraic: Fuse c - a * b to FMA +- pan/bi: Don't lower outputs for compute +- panfrost: Don't use nir_variable in the compilers +- pan/mdg: Disassemble the .a32 bit +- pan/mdg: Don't pair ST_VARY.a32 with other instrs +- pan/mdg: Use .u32 for flat shading +- pan/mdg: Use bifrost_nir_lower_store_component +- panfrost: Don't allocate space for empty varyings +- panfrost: Don't use nir_variable to link varyings +- panfrost: Delete set_global_resources +- panfrost: Move small compute functions to pan_context.c +- panfrost: Remove bogus assert +- panfrost: Consolidate all shader compiling code +- panfrost: Merge pan_assemble.c into pan_shader.c +- panfrost: Remove unused req_input_mem copy +- panfrost: Rename structs to panfrost_(un)compiled_shader +- panfrost: Remove uncompiled_shader->active_variant +- panfrost: Use u_dynarray for variants +- panfrost: Make fixed_varying_mask a fragment-only key +- panfrost: Precompile transform feedback program +- panfrost: Precompile shaders +- panfrost: Implement a disk cache +- docs/new_features: Add Panfrost disk cache +- panfrost: Don't copy resources if replaced +- panfrost: Replace resource shadowing flush +- panfrost: Fix build with Perfetto (again) +- panfrost: Copy resources when necessary +- panfrost: Require 64-byte alignment on imports +- panfrost: Fix reference counting with batch->resources +- panfrost: Use PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY +- pan/mdg: Fix out-of-order execution +- panfrost: Revert "Require 64-byte alignment on imports" + +Andri Yngvason (1): + +- gallium/vl: Add opaque rgb pixel formats + +Anton Bambura (1): + +- panfrost: Enable Mali-T620 + +António Monteiro (2): + +- freedreno: get timestamp from os_time_get_nano instead of os_time_get +- gallium/util: remove network class + +Axel Davy (6): + +- frontend/nine: Skip invalid swvp calls +- frontend/nine: Fix buffer tracking out of bounds +- frontend/nine: Fix ATOC handling +- frontend/nine: Fix cso restore bug +- frontend/nine: Fix shader multi-use crash +- frontend/nine: Fix ff position_t fallback when w = 0 + +Bas Nieuwenhuizen (56): + +- vulkan/wsi: Take max extent into consideration for modifier selection. +- radv: Remove redundant radv_QueuePresentKHR. +- radv: Add binding code for 3d sparse images. +- radv: Add 3d tile shapes for sparse binding. +- radv: Expose 3d sparse images. +- amd/common: Don't rely on DCN support checks with modifiers. +- amd/common: Disable DCC retile modifiers on RDNA1 +- radv: Don't flatten bottom AS exit if statement. +- radv: Store top of stack in a register. +- Revert "radv/rt: use derefs for the traversal stack" +- radv: Use constant for ray traversal exit condition. +- radv: Use nested ifs for pushing child nodes in traversal loop. +- radv: Add scratch stack to reduce LDS stack in RT traversal. +- ac/surface: Fix some warnings. +- radv: Hardcode root node id. +- radv: Translate the BVH copy shader to glsl from nir_builder. +- radv: Remove aabb bounds from instance nodes. +- radv: Use proper matrices for instance nodes. +- radv: Use GLSL matrices for instance transforms in BVH. +- radv: Use deterministic order for dumping acceleration stuctures. +- radv: Properly initialize all memory in RRA dumps. +- radv: Do an early check of distance in triangle culling. +- vulkan/wsi/x11: Fix double free of modifiers. +- radv: Clean up unused fields in BVH IR. +- radv: Add a field for the offset of the bvh in the blas. +- radv: Simplify buffer copy address generation. +- radv: Start the BVH after the header. +- radv: Generate parent links in BVH. +- radv: Only emit parents from parents that actually end up in the tree. +- radv: Split global & local bvh node variable. +- radv: Add traversal backtracking with a short stack. +- radv: Properly annotate all the invalid node usage. +- radv: Implement pipeline-wide skiptriangles/skipaabbs. +- radv: Consider inactive internal nodes never in the tree. +- radv: Constify entry_size. +- radv: Use a VkPipelineCache handle for meta shaders. +- radv: Rework modification detection of the meta cache. +- radv: Mark dEQP-VK.ray_query.misc.dynamic_indexing as crashing in CI. +- aco: Pre-split result of bvh64_intersect_ray_amd. +- radv: Improve gfx11 clear colors for DCC. +- radv: Use correct primgrp size for gfx11. +- radv: Add BVH IR header. +- radv: Make the number of internal nodes be written on the GPU. +- radv: Add PLOC shader +- radv: Use PLOC for BVH building +- radv: Speculatively tune RT pipelines for GFX11. +- radv: Use correct types for loading the rings with LLVM. +- radv: Handle GSVS ring intrinsic correctly with LLVM. +- radv: Handle attribute ring intrinsic correctly with LLVM. +- radv: Fix compute scratch buffer emission. +- radv: Make the compute scratch waves per SE as well. +- radv: Fix custom build id with C90 compilation. +- radv: Use correct init order for ETC2 image views +- radv: Fix sampler types in ETC2 decode. +- vulkan: Remove asserts that weren't valid for RADV ETC2 emulation. +- radv: reserve space for the scissor in vkCmdBeginRendering. + +Benjamin Tissoires (1): + +- CI: convert to use the new S3 server instead of the legacy minio + +Boris Brezillon (1): + +- ci/panvk: Skip dEQP-VK.api.object_management.max_concurrent.query_pool + +Brian Paul (113): + +- st_pbo/compute: fix memset() warning +- lavapipe: s/u_foreach_bit/u_foreach_bit64/ in handle_pipeline_access() +- llvmpipe: further bump LP_MAX_TGSI_SHADER_IMAGES to 64 +- llvmpipe: always pass non-zero writemask to assign_reg() +- util: allow GALLIUM_LOG_FILE=stdout +- gallivm: move lp_build_nir_aos_context declaration, etc +- gallivm: change texture/sampler_index params to unsigned +- llvmpipe: asst. formatting, clean-ups in lp_state_fs.c +- gallivm: asst. clean-ups in lp_bld_sample_soa.c +- gallivm: fix nir AOS swizzling issues +- lavapipe: remove continue statements in emit_state() to be more consistent +- lavapipe: zero-init sampler objects +- cso: asst. clean-ups in cso_hash.[ch] +- cso: use util_bitcount +- cso: asst. clean-ups in cso_cache.[ch] +- cso: asst. clean-ups in cso_context.[ch] +- draw: asst. clean-ups in draw_context.[ch] +- draw: asst. clean-ups in draw_vs_llvm.c +- draw: asst. clean-ups in draw_vs_variant.c +- draw: asst. clean-ups in draw_vs.[ch] +- draw: remove goto in llvm_pipeline_generic() +- draw: remove unused draw_has_llvm() +- draw: asst. clean-ups in draw_pipe.h +- draw: asst. clean-ups in draw_pt_fetch.c +- draw: asst. clean-ups in draw_pt_post_vs.c +- draw: asst. clean-ups in draw_pipe_cull.c +- draw: asst. clean-ups in draw_pipe_clip.c +- draw: asst. clean-ups in draw_pipe_flatshade.c +- draw: asst. clean-ups in draw_pipe_offset.c +- draw: asst. clean-ups in draw_pipe_pstipple.c +- draw: asst. clean-ups in draw_pipe_twoside.c +- draw: asst. clean-ups in draw_pipe_unfilled.c +- draw: asst. clean-ups in draw_pipe_user_cull.c +- draw: asst. clean-ups in draw_pipe_util.c +- draw: asst. clean-ups in draw_pipe_wide_line.c +- draw: asst. clean-ups in draw_pipe_wide_point.c +- draw: asst. clean-ups in draw_vertex.[ch] +- draw: asst. clean-ups in draw_pt_so_emit.c +- draw: asst. clean-ups in draw_pipe_aapoint.c +- draw: asst. clean-ups in draw_llvm.c +- draw: asst. clean-ups in draw_cliptest_tmp.h +- draw: asst. clean-ups in draw_gs.[ch] +- draw: asst. clean-ups in draw_prim_assembler.[ch] +- draw: asst. clean-ups in draw_pipe.c +- draw: asst. clean-ups in draw_pt_vsplit_tmp.h +- draw: asst. clean-ups in draw_split_tmp.h +- draw: asst. clean-ups in draw_pt.c +- draw: clean-up count assignment in draw_pt_arrays() +- draw: asst. clean-ups in draw_private.h +- draw: asst. clean-ups in draw_pt_fetch_shade_pipeline_llvm.c +- draw: replace double conditional expression with if/else +- draw: make draw_geometry_shader_run() return void +- draw: fix some const-correctness in draw_vbo() +- draw: move vs_slot var in tgsi/llvm_fetch_gs_input() +- draw: s/start_or_maxelt/start/ in llvm VS code +- draw: fix vertex id offset bug +- draw: fix base vertex bug +- llvmpipe: asst. clean-ups in lp_rast.h +- llvmpipe: asst. clean-ups in lp_rast_debug.c +- llvmpipe: asst. clean-ups in lp_rast_priv.h +- llvmpipe: asst. clean-ups in lp_rast_rect.c +- llvmpipe: asst. clean-ups in lp_rast.c +- llvmpipe: asst. clean-ups in lp_rast_linear.c +- llvmpipe: asst. clean-ups in lp_rast_linear_fallback.c +- gallium: whitespace fixes in p_context.h, p_screen.h +- llvmpipe: asst. clean-ups in lp_context.[ch] +- llvmpipe: asst. clean-ups in lp_surface.c +- llvmpipe: asst. clean-ups in lp_screen.[ch] +- llvmpipe: asst. clean-ups in lp_query.c +- llvmpipe: asst. clean-ups in lp_setup.c +- llvmpipe: asst. clean-ups in lp_setup_rect.c +- llvmpipe: asst. clean-ups in lp_setup_vbuf.c +- llvmpipe: asst. clean-ups in lp_setup_line.c +- llvmpipe: asst. clean-ups in lp_setup_point.c +- llvmpipe: remove gotos in do_rect_ccw() +- llvmpipe: asst. clean-ups in lp_setup_tri.c +- llvmpipe: asst. clean-ups in lp_bld_alpha.c +- llvmpipe: asst. clean-ups in lp_bld_blend_aos.c +- llvmpipe: asst. clean-ups in lp_bld_depth.c +- llvmpipe: asst. clean-ups in lp_bld_interp.c +- llvmpipe: asst. clean-ups in lp_debug.h +- llvmpipe: asst. clean-ups in lp_draw_arrays.c +- llvmpipe: asst. clean-ups in lp_fence.c +- llvmpipe: asst. clean-ups in lp_flush.[ch] +- llvmpipe: asst. clean-ups in lp_linear_interp.c +- llvmpipe: asst. clean-ups in lp_linear_sampler.c +- llvmpipe: asst. clean-ups in lp_scene.c +- llvmpipe: asst. clean-ups in lp_scene.h +- llvmpipe: asst. clean-ups in lp_state_sampler.c +- llvmpipe: asst. clean-ups in lp_state_derived.c +- llvmpipe: asst. clean-ups in lp_state_clip.c +- llvmpipe: asst. clean-ups in lp_state_cs.c +- llvmpipe: asst. clean-ups in lp_state_gs.c +- llvmpipe: asst. clean-ups in lp_state_rasterizer.c +- llvmpipe: asst. clean-ups in lp_state_so.c +- llvmpipe: asst. clean-ups in lp_state_surface.c +- llvmpipe: asst. clean-ups in lp_state_tess.c +- llvmpipe: asst. clean-ups in lp_state_vertex.c +- llvmpipe: asst. clean-ups in lp_test_blend.c +- llvmpipe: asst. clean-ups in lp_test_conv.c +- llvmpipe: asst. clean-ups in lp_test_format.c +- llvmpipe: asst. clean-ups in lp_test_main.c +- llvmpipe: asst. clean-ups in lp_tex_sample.c +- llvmpipe: asst. clean-ups in lp_texture.[ch] +- llvmpipe: improve some if/switch code in llvmpipe_get_shader_param() +- frontend/dri: assorted clean-ups in dri-screen.c +- frontends/dri: clean-ups in dri_util.c +- glx: clean-ups in create_context.c +- glx: clean-ups in drisw_glx.c +- llvmpipe: s/uint/enum pipe_prim_type/ in lp_setup_context.h +- llvmpipe: fix comment typo +- llvmpipe: asst. clean-ups in lp_state_fs.c +- llvmpipe: check rectangle vertices have equal W components + +Caio Oliveira (38): + +- intel/compiler: Print more details when fs_visitor::validate() fails +- intel/compiler: Call get_mesh_urb_handle one level up in call-stack +- intel/compiler: Get URB handle in emit_task/mesh_intrinsic functions +- intel/compiler: Make component() work for FIXED_GRF/ARF +- intel/compiler: Remove INTEL_DEBUG=tcs8 +- intel/compiler: Rename 8_PATCH to MULTI_PATCH +- intel/compiler: Use fs_reg helpers for TCS icp_handle selection +- intel/compiler: Use fs_reg helpers for GS icp_handle selection +- intel/compiler: Create fs_visitor::emit_tcs_barrier() +- intel/compiler: Add helper for barrier message payload setup for gfx >= 125 +- intel/compiler: Use builder to allocate fs regs for TCS store output +- intel/compiler: Make a type for Thread Payload and FS variant +- intel/compiler: Use FS thread payload only for FS +- intel/compiler: Create struct for TCS thread payload +- intel/compiler: Store Patch URB output in TCS thread payload struct +- intel/compiler: Store Primitive ID in TCS thread payload struct +- intel/compiler: Store start of ICP handles in TCS thread payload struct +- intel/compiler: Create and use struct for TES thread payload +- intel/compiler: Create and use struct for VS thread payload +- intel/compiler: Create and use struct for TASK and MESH thread payloads +- intel/compiler: Create and use struct for GS thread payload +- intel/compiler: Store start of ICP handles in GS thread payload struct +- intel/compiler: Create and use struct for Bindless thread payload +- intel/compiler: Export brw_get_subgroup_id_param_index() +- intel/compiler: Create and use struct for CS thread payload +- intel/compiler: Make thread_payload struct abstract +- intel/compiler: Add a few more brw_ud* helpers +- intel/compiler: Use brw_ud* helpers in thread payload code +- nir/lower_task_shader: Don't fail adding a launch when last instruction is a jump +- spirv: Pass vtn_block into vtn_emit_branch() +- spirv: Add workaround to ignore OpReturn after OpEmitMeshTasksEXT +- spirv: Call vtn_emit_ret_store() only when handling return branch +- spirv: Make a helper function to check glslang/shaderc +- spirv: Enable OpEmitMeshTasksEXT workaround for Clay Shader Compiler +- intel/compiler: Explicitly include build-id when linking intel_clc +- nir: Don't reorder volatile intrinsics +- intel/compiler: Fix dynarray usage in intel_clc +- intel/compiler: Fix missing tie-breaker in brw_nir_analyze_ubo_ranges() ordering code + +Caleb Cornett (3): + +- wgl: Homogenize read framebuffer reference counting logic +- wgl: Always release local references in stw_make_current_by_handles +- wgl: Release the context before deleting it in wglDeleteContext + +Chad Versace (43): + +- venus: Remove cryptic pointer arithmetic on present attachments +- venus: Drop vn_present_src_attachment::acquire +- venus: Track subpass properties +- venus/pipeline: Refactor vn_fix_graphics_pipeline_create_info +- venus/pipeline: Add pipeline state bools for ignore rules +- venus/pipeline: Split ignore rules for pViewportState, pMultisampleState +- venus/pipeline: Fix ignore rule for pDepthStencilState +- venus/pipeline: Fix ignore rule for pColorBlendState +- venus/pipeline: Ignore pViewportState::pViewports +- venus/pipeline: Ignore pViewportState::pScissors +- venus/pipeline: Ignore basePipelineHandle +- venus/pipeline: Fix ignore rules for VK_KHR_dynamic_rendering +- venus/pipeline: Fix ignore rules for VK_EXT_extended_dynamic_state +- venus: Dedupe pipeline handle creation +- venus: Fix failure path on pipeline creation +- venus: Enable VK_EXT_pipeline_creation_cache_control +- venus: Sort passthrough extensions +- vulkan: Make vk_copy_struct_guts() public +- venus: Simplify vn_GetPhysicalDeviceFeatures2 +- venus: Simplify vn_GetPhysicalDeviceProperties2 +- venus: Enable VK_KHR_shader_integer_dot_product +- venus: Enable VK_KHR_shader_non_semantic_info +- venus: Enable VK_KHR_shader_terminate_invocation +- venus: Enable VK_KHR_zero_initialize_workgroup_memory +- venus: Enable VK_EXT_subgroup_size_control +- venus: Enable VK_EXT_texel_buffer_alignment +- venus: Enable VK_EXT_ycbcr_2plane_444_formats +- venus: Enable VK_KHR_format_feature_flags2 +- venus: Enable VK_EXT_private_data +- venus: Enable VK_EXT_tooling_info +- venus: Document VK_EXT_texture_compression_astc_hdr support +- venus: Enable VK_EXT_pipeline_creation_feedback +- venus: Rename some feature/property structs +- venus: Refactor VN_ADD_TO_PNEXT +- venus: Add macros VN_SET_CORE_* +- venus: Fix features/properties for unavailable extensions +- venus: Use VkPhysicalDeviceVulkan13{Features,Properties} +- venus/queue: Rename some local vars +- venus: Change signature of vn_get_fence_feedback_cmd +- venus: Add vn_queue_wait_idle_before_present() +- venus: Refactor vn_command_buffer_builder temp storage +- venus: Enable VK_KHR_synchronization2 +- venus: Enable Vulkan 1.3 + +Charmaine Lee (6): + +- svga: fix mksstats build +- svga: fix SetConstantBufferOffset command opcode +- svga: compare graphics shader stages against COMPUTE +- mesa/st: fix reference to nir->info after nir_to_tgsi +- svga: support TGSI_SEMANTIC_TEXCOORD in swtnl draw context +- svga: fix invalid component access of domain location + +Chia-I Wu (83): + +- vulkan: sort ALLOWED_ANDROID_VERSION by api levels +- vulkan: fix ALLOWED_ANDROID_VERSION for api level 26 +- vulkan: fix ALLOWED_ANDROID_VERSION up to api level 29 +- vulkan: extend ALLOWED_ANDROID_VERSION up to api level 31 +- turnip: add tu_common.h as the common header +- turnip: remove includes that are already in tu_common.h +- turnip: add tu_drm.h +- turnip: add tu_suballoc.h +- turnip: update tu_cs.h +- turnip: add tu_query.h +- turnip: add tu_image.h +- turnip: add tu_formats.h +- turnip: update tu_descriptor_set.h +- turnip: add tu_shader.h +- turnip: add tu_pipeline.h +- turnip: add tu_clear_blit.h +- turnip: add tu_dynamic_rendering.h +- turnip: add tu_lrz.h +- turnip: add tu_pass.h +- turnip: add tu_wsi.h +- turnip: update tu_autotune.h +- turnip: add tu_device.h +- turnip: add tu_cmd_buffer.h +- turnip: add tu_android.h +- turnip: update tu_util.h +- turnip: move away from tu_private.h +- turnip: remove tu_private.h +- turnip: remove headers from libtu_files +- turnip: use SPDX-License-Identifier +- vulkan: disallow VK_KHR_performance_query on android +- turnip: fix a use-after-free in autotune +- turnip: remove unused member in tu_submission_data +- turnip: handle fence wrapping in autotune +- freedreno/pps: improve interaction with turnip +- turnip: lower the queue priority to 1 +- turnip: pCreateInfo->pPoolSizes[i] is wordy +- turnip: trim down host size of tu_descriptor_pool +- turnip: trim down bo size of tu_descriptor_pool +- turnip: improve perfetto sync_timestamp +- turnip: fix a missing trace_end_gmem_clear +- turnip: move trace_start_gmem_store before cond exec +- turnip: fix gem_store tracepoint +- turnip: tidy up tracepoint header includes +- util/u_trace: include the generated header first +- util/u_trace: add PERFETTO HeaderScope +- turnip: add tu_clone_trace_range helper +- turnip: convert tu_perfetto_state to a stack +- turnip: clean up tu_perfetto.h +- turnip: rename some tracing stages +- turnip: add cmd_buffer tracepoint +- turnip: improve tracing of secondary cmd buffers +- ir3: fix predicate splitting in scheduler +- util/perf: move u_perfetto to here +- util/perf: add cpu_trace.h +- util/perf: fix multiple tracepoints in a scope +- util/perfetto: add a simple C wrapper for track events +- util/perf: support and prefer perfetto for cpu trace +- venus: use MESA_TRACE_* +- pps: enable track_event in system.cfg +- docs: update perfetto with the latest status +- vulkan/wsi: add cpu tracepoints to swapchain functions +- vulkan/wsi: add cpu tracepoints for internal waits +- turnip: add some cpu tracepionts +- freedreno: get cpu timestamp again after FD_TIMESTAMP +- util/perf: ignore ut->enabled for iterators +- util/perf: remove u_trace::enabled +- util/perf: add u_trace_instrument +- util/perf: simplify u_trace_instrument +- util/perf: use ALWAYS_INLINE for tracepoints +- turnip: reduce MAX_STORAGE_BUFFER_RANGE +- vulkan: update ALLOWED_ANDROID_VERSION for api level 33 +- subprojects: uprev perfetto to v29.0 +- turnip: fix error handling for tu_queue_init +- turnip: add tu_physical_device::submitqueue_priority_count +- turnip: add support for VK_KHR_global_priority +- turnip: use vk_buffer +- turnip: use vk_descriptor_set_layout +- vulkan: update comments to device enumeration callbacks +- turnip: fix kgsl tu_enumerate_devices return code +- turnip: advertise VkExternalFenceProperties correctly +- venus: fix VkImageFormatListCreateInfo for AHB +- freedreno/pps: use 64-bit reads when possible +- freedreno/pps: loop countables by references + +Christian Gmeiner (18): + +- lima/ci: There is no need to redefine HWCI_TEST_SCRIPT +- lima/ci: Make use of .lava-piglit +- isaspec: Move isa_decode(..) declaration +- ci: include etnaviv support in ARM64 container +- ci: switch to mkbootimg.py +- ci/bare-metal: introduce BM_MKBOOT_PARAMS +- ci/etnaviv: add GC7000 support +- etnaviv: Remove possibility to force MSAA +- etnaviv: rs: Color resolve works +- etnaviv: rs: Directly call etna_try_rs_blit(..) +- etnaviv: rs: msaa: Set cache mode for SMALL_MSAA +- etnaviv: Update headers from rnndb +- etnaviv: blt: Add color resolve support +- etnaviv: blt: Directly call etna_try_blt_blit(..) +- Revert "etnaviv: completely turn off MSAA" +- etnaviv: Support negative float inline immediates +- etnaviv: nir: lower extract byte/word +- etnaviv: Hide MSAA support behind debug flag + +Christophe (2): + +- zink: add profile documentation +- Zink: add Zink profiles file + +Connor Abbott (49): + +- tu: Decouple vertex input state from shader +- tu: Implement VK_EXT_vertex_input_dynamic_state +- tu: Fix sysmem depth attachment clear flushing +- ir3/spill: Fix extracting from a vector at the end of a block +- nir: Free instructions more often +- tu/lrz: Fix multiple subpass case with secondaries +- tu/lrz: Fix multiple depth attachment case with secondaries +- tu: Fix descriptor set size bounds +- tu: Don't preload variable-count descriptors +- tu: Initial implementation of VK_EXT_inline_uniform_block +- tu: Also set SP_FS_MRT_REG for unused attachments +- tu: Fix case where vertex input is set but not vertex buffers +- tu: Remove unused need_indirect_descriptor_sets +- tu: Group pipeline state based on VkPipeline*StateCreateInfo +- tu: Rename RB_MSAA_CNTL to RB_BLIT_GMEM_MSAA_CNTL +- tu: Always set RB_BLIT_GMEM_MSAA_CNTL when clearing GMEM +- tu: Make MSAA emission always dynamic +- tu: Split out primtype calculation for tess +- ir3: Don't use msaa key for a6xx+ +- tu: Nuke tu_pipeline_cache +- tu: Don't use layer_zero/view_zero in shader key +- tu, ir3: Move multi_pos_output to ir3_shader_variant +- tu: Don't use output state to compute render components +- tu, ir3: Determine dual-src blend from shader for FS outputs +- tu: Emit \*_OUTPUT_CNTL1 as part of blend state +- tu: Move no_earlyz computation to blend/msaa state +- tu: Split up prim order computation +- tu: Use vk_pipeline_shader_stage_to_nir +- tu: Abstract driver-specific const state +- tu: Initial implementation of VK_EXT_graphics_pipeline_library +- tu: Fix maxPerStageDescriptorUpdateAfterBindInputAttachments +- tu: Set textures_used for input attachments correctly +- ir3/analyze_ubo_ranges: Account for reserved consts +- Revert "freedreno,ir3: rename Z_CLAMP_ENABLE to Z_CLIP_DISABLE" +- freedreno/a6xx, tu: GRAS_CL_CNTL::UNK5 is Z_CLAMP_ENABLE +- tu: Fix setting RB_DEPTH_CNTL::Z_CLAMP_ENABLE +- ir3: Delete outputs from fixup_regfootprint() +- ir3: Move fixup_regfootprint() to ir3_collect_info() +- ir3/analyze_ubo_ranges: Account for reserved consts better +- ir3: Add missing cat5 encoding to asm parser +- tu: Fix param_stride placement +- tu: DS primitive stride does not use patch control points +- tu: Implement extendedDynamicState2PatchControlPoints +- freedreno: Add LABEL flush +- tu: Add compute shader instrlen workaround +- tu: tu: Clear patchControlPoints dirty state with static patchControlPoints +- tu: Use right enum for compute active_shader_stages +- tu: Fix binding NULL descriptor sets +- ir3: Don't save/restore disasm string pointer + +Constantine Shablya (3): + +- nir: add a pass to remove non-uniform access qualifier when the operands are uniform +- radv: use nir_opt_uniform_access +- anv: use nir_opt_uniform_access + +Corentin Noël (9): + +- virgl/ci: Update virglrenderer +- ci: disable the freedreno farm. +- virgl/ci: Update virglrenderer +- gallivm: avoid the use of an uninitialized value +- virgl: Add TEXTURE_SHADOW_LOD capability support +- virgl: Add nir_lower_tex pass +- mesa/main: do not copy the exact size of the string +- gallium/hud: use snprintf(..., "%s", ...) instead of strncpy +- ci: Remove Wno-error=stringop-truncation from debian-arm64-asan + +Damian Korczowski (1): + +- d3d12: Fix placed footprint of subresources + +Daniel Schürmann (20): + +- nir/opt_algebraic: a & ~a -> 0 +- aco: use std::vector::reserve() more often +- aco/live_var_analysis: implement faster merging of live_out sets for some cases +- aco/optimizer: disallow can_eliminate_and_exec() with s_not +- aco/optimizer: do can_eliminate_and_exec() optimization later +- aco/optimizer: optimize s_and(exec, s_and(x, y)) more aggressively +- aco/optimizer: change inverse_comparison in-place +- radv/rt: create separate radv_rt_pipeline struct +- radv/rt: inline radv_rt_pipeline_create_() helper into radv_rt_pipeline_create() +- aco: simplify operands_offset calculation in create_instruction() +- aco: implement custom memory resource +- aco: use monotonic_buffer_resource for instructions +- aco: implement allocator_traits for monotonic_allocator +- aco/opt_value_numbering: use monotonic_allocator for unordered_map +- aco/spill: Fix spilling of Phi operands +- aco/ra: only rename fixed Operands if the copy-location matches +- aco: change thread_local memory resource to pointer +- nir: add AMD RT traversal intrinsics +- radv/rt: create traversal shader independent from main shader +- radv/rt: overwrite hit args with undef in case of a miss + +Daniel Stone (4): + +- ci: Use mold for x86-64 and AArch64 builds +- CI: Collabora farm down for maintenance +- CI: Re-enable Collabora devices +- Revert "panfrost/ci: Disable t720 jobs" + +Danilo Krummrich (10): + +- nv50/ir/nir: add conversion ops for bit width < 32 +- nv50/ir/nir: convert to 32 bit for all OP_SET opcodes +- nv50/ir/nir: avoid 8/16 bit dest regs for OP_MOV +- nv50/ir: add isUnsignedIntType() and isIntType() helpers +- nv50/ir/nir: convert 8/16 bit src to 32 bit for {i,u}2f64 +- nv50/ir/nir: always round towards zero for f2i/f2u +- nv50/ir: add intermediate conversion for f2{i,u}{8,16} +- nv50/ir: split and cvt 64bit integers for {i,u}2{i,u}{8,16} +- nv50/ir: handle S8/S16 integers converting to S64 +- nv50/ir: handle U8/U16 integers converting to U64 + +Danylo Piliaiev (26): + +- tu: Flush depth on depth img transition from undef layout +- tu: Disable LRZ write when alpha-to-coverage is enabled +- freedreno: Disable LRZ write when alpha-to-coverage is enabled +- tu: Assert that if draw state is enabled it has valid iova +- tu: Switch to userspace iova allocations if kernel supports it +- tu: Enable bufferDeviceAddressCaptureReplay +- tu: Disable userspace iova allocations +- tu: Implement VK_EXT_attachment_feedback_loop_layout +- freedreno: PC_SO_STREAM_CNTL_STREAM_ENABLE has per-stream enable bits +- tu: Fix streamout with tess_use_shared +- tu: Update HS_WAVE_INPUT_SIZE formula +- util/u_trace: Add locking for ctx_list +- freedreno: Name more \*_DBG_ECO_CNTL regs +- freedreno: Add all variable magic regs to device-info tables +- tu: Use newly obtained magic reg values +- tu: Trivially expose VK_EXT_rasterization_order_attachment_access +- ir3: Prevent reordering movmsk with kill +- turnip: implement VK_EXT_multi_draw +- turnip: Implement VK_EXT_mutable_descriptor_type +- tu: Expose Vulkan 1.3 +- tu: Do not DCE unused output vars used for transform feedback +- tu: Lazily init VSC to fix dynamic rendering in secondary cmdbufs +- tu: Reset whether there is DS resolve for dynamic subpass +- tu: Fix the size of patch control points state +- freedreno: Add 'replay' tool which allows to replay cmdstreams +- freedreno/fdl: Increase alignment for UBWC images + +Dave Airlie (85): + +- gallivm: fix printf hook for cached shaders. +- llvmpipe: add shader clock support +- lavapipe: enable shader clock +- draw: fix up jit type creation for gs/tcs/tes +- llvmpipe/gallivm/draw: introduce a buffer type. +- zink: add defines for the shader stage templates. +- virgl: abstract virgl shader stages from pipe shader stages. +- svga: compare shader type against compute not tess eval. +- gallium/tgsi: reorder pipe shader type defines. +- gallium/iris/crocus: collapse a bunch of conversion functions. +- gallium: fixup some inconsistent uses of enum pipe_shader_type. +- gallium: use gl shader types as the basis for the gallium ones +- gallivm/nir/st: lower image derefs in advance. +- lavapipe: lower images to non-derefs in vulkan side +- lavapipe: scan shader for info before lowering images. +- llvmpipe/ci: update ci results for clover. +- draw: don't touch info values that aren't valid. +- nir_to_tgsi_info: drop const_buffers_declared +- crocus: sync performance monitor code with iris. +- vulkan: update rest of the headers to v1.3.225 +- gallivm: drop unused parameter to lp_build_sample_aos +- gallivm/sample: remove unused base parameter from dynamic callbacks. +- gallivm: don't indirect image/sampler destroy. +- llvmpipe: finish rendering before flushing frontbuffer resources. +- radv: move to using common record_result. +- turnip: use common command record result. +- panvk: use common command buffer record result. +- dozen: move to use common command buffer result code. +- lavapipe: fix 3d depth stencil image clearing. +- gallivm: add atomic 32-bit float support +- llvmpipe: export GL_NV_shader_atomic_float +- lavapipe: export VK_KHR_shader_atomic_float +- docs: add new llvmpipe/lavapipe atomic float extensions +- lavapipe: use slow clear path if conditional rendering. +- llvmpipe: handle different blocksizes for sampler/image views +- lavapipe: take layers into account around render surface creation. +- lavapipe: handle view mask layer count properly for begin rendering. +- llvmpipe: memset empty images in the key +- llvmpipe: bind sampler views/images properly. +- gallivm: handle llvm coroutines for llvm > 15 +- gallivm: fix buffer_type for LLVM 15 +- lavapipe: add fmin/fmax to image lowering. +- gallivm/nir: fix fmin/fmax translation +- gallivm/nir: bitcast when non-float ptr type. +- llvmpipe/fs: start passing explicit context pointer type. +- llvmpipe/fs: convert thread data ptr to opaque ptr friendly apis +- llvmpipe/fs: convert linear context to opaque pointers friendly +- llvmpipe/cs: convert cs context to opaque friendly api +- llvmpipe/cs: convert cs thread data to opaque friendly api +- llvmpipe/fs: fix invocations access for opaque ptrs. +- llvmpipe/setup: move setup code to explicit pointers. +- llvmpipe/cs: move compute code to explicit pointer types +- gallivm/struct: add opaque ptr friendly pointer accessors. +- llvmpipe/fs: add mask_type for mask_store accesses. +- llvmpipe/fs: pass explicit mask_type into interp code. +- llvmpipe/fs: port depth code to opaque pointer api +- llvmpipe/fs: add sample position type to the interp interface +- llvmpipe/fs: pass mask type to alpha to coverage handler +- llvmpipe/fs: use explicit api in viewport code. +- llvmpipe/fs: handle explicit types around blending and c/zs bufs calcs +- llvmpipe/fs: cleanup some remaining mask handling and reuse types +- llvmpipe/fs: convert outputs handling to explicit api +- gallivm/nir: move to explicit pointer interfaces. +- gallivm/nir: fixup atomic path for explicit pointers. +- gallivm/sample: move border color load to explicit pointers +- gallivm/llvmpipe: hand sample position type in for loading. +- llvmpipe/fs/linear: port to explicit pointers. +- draw: fix gs/tes explicit pointer handling +- draw: handle primid for tess being a different pointer type +- gallivm/tgsi: port tgsi to explicit types. +- gallium/tgsi: handle temps/outputs array. +- vulkan: update beta and video headers to 1.3.230 +- llvmpipe/tests: port to new pointer interfaces. +- gallivm/llvmpipe: add opaque pointers support to sampler +- draw/llvmpipe: move texture/sampler/image member load to opaque. +- draw/llvmpipe: add way to return pointer types to generic code. +- gallivm/sample: use retrieved types to do opaque pointer loads. +- gallivm: remove legacy pointer_get apis +- gallivm/sample: move some first_level/last_level calcs out +- gallivm/nir: drop some unused struct members. +- gallivm/sample: refactor multisample offset calcs code. +- glsl/types: fix dword slots calc for float16 matricies. +- clover/llvm: add kernel arg info for opaque pointers +- nir/lower_bool_to_int32: add support for lowering functions. +- gallivm: add coro malloc hooks earlier and always. + +David Heidelberg (71): + +- ci: compress LAVA rootfs with zstd instead of gzip +- ci: replace gzip usage with zstd where posible +- ci/bin: ignore Gitlab GQL cache +- ci: Turn off the entire Lima farm (devices report out-of-space) +- ci: move DXVK instalation outside of x86_test-vk +- ci: make shellcheck happy on dxvk script +- ci: separate wine setup into own script +- ci: Windows runner is experiencing DNS issues; disable Microsoft farm +- ci: prepare piglit-traces for WINE and DXVK +- ci/lavapipe: implement traces +- docs/ci: show how to run traces locally +- ci/lavapipe: wine flakes, switch to manual for now +- ci: use apt-get in x86_test-vk instead of apt +- ci: do not install i386 sub-architecture in VK images +- ci: traces: update freedreno and broadcom to brotli compressed traces +- ci: GraphQL was already implemented in ci_run_n_monitor.py +- ci: implement stress testing jobs in ci_run_n_monitor.py +- ci: fix leftover tag in image-tags.yml +- ci: rename debian-gallium to debian-build-testing +- ci: move lava-test into debian-build-testing +- ci: make shellcheck happy about .gitlab-ci/container/ directory +- ci: use shellcheck for .gitlab-ci/container/ directory +- ci: drop last bits of wine32 +- ci: bump cross compilation to LLVM 13 where possible +- ci: uprev piglit 2022-08-30 +- ci: set venus on lavapipe to manual due to flakes +- ci: print env as other setups do +- ci/lava: print set-job-env-vars.sh as other setups do +- ci/traces: do not keep a cache, which will be wiped a few steps later +- ci/test: collapse printing env +- ci/lava: collapse printing env +- ci/freedreno: convert traces to new YAML format +- ci/virgl: convert traces to new YAML format +- ci/llvmpipe: convert traces to new YAML format +- ci/lavapipe: convert traces to new YAML format +- ci/broadcom: convert traces to new YAML format +- ci/panfrost: convert traces to new YAML format +- ci/radeonsi: convert traces to new YAML format +- ci/intel: convert traces to new YAML format +- ci/i915: convert traces to new YAML format +- ci/crocus: convert traces to new YAML format +- ci: check traces.yml files with yamllint +- ci: performance traces: make use of no-perf label +- ci: export whole results/ directory for all traces jobs +- ci: split ci_run_n_monitor into script and shared parts +- ci: introduce update_traces_checksum.py +- ci: uprev piglit 2022-09-08 +- ci: use xargs instead of find -exec +- ci: add jq utility +- ci/traces: remove first line with YAML version to prevent failure +- ci/radeonsi: drop glmark2 terrain trace +- ci/panfrost: drop glmark2 terrain trace +- ci/intel: drop glmark2 terrain trace +- ci/lava: add wine and apitrace into amd64 rootfs container +- ci/lava: prepare wineprefix for GL and DXVK +- ci/dxvk: fix DXVK 64-bit only wine setup +- ci: also handle default wine rootfs (for testing) +- ci/traces: prevent showing wine instalation dialog +- ci/radeonsi: add traces for radeonsi Zork +- ci/amd: move radeonsi in amd directory +- ci: uprev DXVK to 1.10.3 +- ci/traces: Blender demo (Cube Diorama) flakes on Intel APL +- ci/freedreno: add Guilherme Gallo into restricted traces access list +- ci/panfrost: deduplicate gitlab-ci.yml +- ci/panfrost: enable piglit-gl on g52 again and deparalelize +- ci/panfrost: Humus Portal trace got fixed, update checksum +- ci/panfrost: re-enable traces on t760 +- ci/linker: update mold to 1.6 and enable on s390x +- ci/zink: rename zink job to zink-lvp to better describe it +- ci/freedreno: disable antichambers trace +- ci/update_traces_checksum.py: check if checksum is in the array, not it's value + +David Riley (1): + +- drm-shim: Allow drm-shim to work with glibc fortify. + +Dawn Han (11): + +- Update venus-protocol to add extension \`VK_VALVE_mutable_descriptor_type` +- Increase enum type in vn_descriptor_set. +- Update bitset when init descriptor layout. +- Track bitset when create descriptor pool +- Enable .VALVE_mutable_descriptor_type in physical_device +- venus: support the promoted VK_EXT_mutable_descriptor_type +- venus: Update mutable descriptor struct type +- venus: extend lifetime of push descriptor set layout +- venus: extend VkPipelineLayout lifetime for batched VkCmdPushConstants() +- venus: implement vkCmdPushDescriptorSetWithTemplateKHR +- venus: enable VK_KHR_push_descriptor + +Diogo Ivo (1): + +- nouveau: treat DRM_FORMAT_INVALID as implicit modifier + +Dmitry Baryshkov (1): + +- freedreno/registers: update hdmi registers to add more 8x74 regs + +Dmitry Osipenko (11): + +- util/disk_cache: Add option to disable compression +- util/disk_cache: Enable testing of uncompressed caches +- util/disk_cache: Append to disk_cache_load_cache_index() with _foz +- util/disk_cache: Move struct cache_entry_file_data to the disk_cache_os.h +- util/disk_cache: Make disk_cache_os.h usable by C++ code +- util/disk_cache: Add new mesa-db cache type +- virgl: Fix unmapping of blob resources +- llvmpipe: Align persistent mappings to page size +- ci: Bump crosvm version +- ci: Update virgl-iris-traces checksums +- ci/virgl: Enable virgl-iris-traces + +Dylan Baker (47): + +- docs: reset new features +- docs: add release notes for 22.1.5 +- docs: Add sha256 sum for 22.1.5 +- docs: add release notes for 22.1.4 +- docs: Add sha256 sum for 22.1.4 +- docs: update calendar and link releases notes for 22.1.4 +- docs: update calendar and link releases notes for 22.1.5 +- docs: update calendar for 22.2.0-rc1 +- docs: add release notes for 22.2.0 +- docs: Add sha256 sum for 22.2.0 +- docs: update calendar and link releases notes for 22.2.0 +- docs: Add calendar entries for 22.2 release. +- intel/genxml: use a single pattern for res +- intel/genxml: use a set for lookups +- intel/genxml: don't use parens with python assert statement +- intel/genxml: add type annotations to gen_sort_tags.py +- intel/genxml: use \`a not in {x, y}` instead of \`a != x or a != y` +- intel/genxml: remove unused variable in gen_sort_tags.py +- intel/genxml: don't overwrite the input of gen_sort_tags in place +- intel/genxml: add 'nonzero' to gen_sort_tags +- intel/genxml: add a validation mode to gen_sort_tags +- intel/genxml: run gen_sort_tags on all of the xml +- meson: run genxml sort tests +- docs: add release notes for 22.2.1 +- docs: Add sha256 sum for 22.2.1 +- docs: update calendar and link releases notes for 22.2.1 +- intel/genxml: write a space before the '/>` closing tag +- intel/genxml: re-process with space before \`/>` +- intel/genxml: remove newlines between xml islands +- intel/genxml: re-process with extra whitespace removed +- intel/genxml: use ElementTree.write and .indent +- intel/genxml: reprocess xml with elementree output +- intel/genxml: split the processing code up +- intel/genxml: use a main() function +- intel/genxml: use Path.replace instead of unlink and rename +- docs: add release notes for 22.2.2 +- docs: Add sha256 sum for 22.2.2 +- docs: update calendar and link releases notes for 22.2.2 +- docs: Extend calendar entries for 22.2 by 2 releases. +- util/indicies: move common static functions to private header +- util/indicies: use itertools.product instead of deeply nested loops +- util/indicies: write a file with u_indicies_gen.py +- util/indicies: simplify some of u_indicies_gen.py +- util/indicies: use itertools.product in u_unfilled_gen.py +- util/indicies: convert u_unfilled_gen.py to write a file +- util/glsl2spirv: fix type error in argument handling +- util/glsl2spirv: fix appending extra flags + +Ella Stanforth (2): + +- util: fix missing fcntl.h on musl +- vulkan: wsi: fix musl build + +Emma Anholt (108): + +- ci/bare-metal: Re-open serial and everything after test phase timeout. +- zink: Take the tiling path for resources with modifiers. +- zink: Replace the "optimal_tiling" flag with a "linear" flag instead. +- ci/zink: Re-enable a630 zink-on-turnip traces job using gbm as the backend. +- ci/swrast: Add some flakes I've noticed in the IRC channel. +- ci: Add testing of the khr-single tests. +- ci: Upgrade deqp-runner to 0.15.0. +- zink: Make sure that we keep the existing ici pNext chain on inserts. +- tu: Move the vkCreateImage format list checks to helper functions. +- tu: Treat viewFormatCount==0 as no format list. +- tu: Use the format list to decide whether we can do UBWC with MUTABLE. +- ci/tu+zink: Re-enable the traces that were asserting about UBWC compatibility. +- ir3: Suppress disasm of internal shaders unless IR3_SHADER_DEBUG=internal. +- tu: Only emit as many bindless regs as we have seen descriptor sets. +- tu: Only emit as many VPC interp/repl regs as will be referenced. +- tu: Only emit FS output regs for as many MRTs as we have (but at least 1). +- tu: Emit only as many VBs as we've ever seen bound on the command buffer. +- ci/tu: Add another cwe_after_bind fail that appeared in the reshuffle. +- ci: Move 'never' rules includes above "on_success" rules includes. +- ci: disable the freedreno farm. +- freedreno/regs: Add a bit of documentation of what SKIP_IB2 does. +- turnip: Fix enabling of IB2 skipping. +- nir/lower_mediump: Lower FS outputs to 16-bit when the value was upconverted. +- nir_to_tgsi: Add support for TG4 with explicit offsets. +- nir_to_tgsi: Add support for 64-bit fsign/isign. +- nir_to_tgsi: Add support for demote, is_helper_invocation, and subgroup ops. +- nir: Make nir_lower_discard_if() handle demotes and terminates, too. +- nir_to_tgsi: Use nir_lower_discard_if for demote_if. +- nir_to_tgsi: Add support for bindless textures and images. +- turnip: Make sure bandwidth config per pixel starts from 0. +- freedreno/ir3: Move chip-specific nir compiler options to C code. +- freedreno/ir3: Switch to NIR for a3xx/a4xx's vertex id lowering. +- gallium,glsl: Delete PIPE_CAP_VERTEXID_NOBASE and lower_vertex_id. +- nir: Add a pass to lower mediump temps and shared mem. +- spirv: Mark phis as mediump instead of directly lowering them to 16 bit. +- turnip: Enable lowering of mediump temps/CS shared to 16-bit. +- turnip: Treating non-d/s-write pipelines as not having d/s feedback loops. +- mesa: Remove PIPE_CAP_CS_DERIVED_SYSTEM_VALUES_SUPPORTED/lower_cs_derived. +- zink: Don't upload shader immediate arrays through UBO 0. +- zink: Don't lower indirect derefs of temp arrays. +- Revert "ci: disable the freedreno farm." +- ci: Add support for Jetson TK1. +- nouveau: Fix compiler warnings about silly address checks in ir_print. +- ci/turnip: Add missing a618 full-run bypass fails. +- turnip: Only emit descriptor loads for active stages in the pipeline. +- freedreno/ir3: Consistently lower mediump inputs to 16-bit (when we can). +- nir/lower_mediump_vars: Don't lower mediump shared vars with atomic access. +- mesa: Lower mediump temps and CS shared when the driver supports FP16+INT16. +- turnip: Add some missing LRZ disable debug. +- turnip: Ignore dynamic color write enables past our number of attachments. +- turnip: Don't look at RB.Z_READ_ENABLE for setting LRZ.Z_TEST_ENABLE. +- turnip: Skip rather than invalidate LRZ on gl_FragDepth writes. +- turnip: Ignore pDescriptorCounts[] for non-variable-count layouts. +- turnip: Keep a host copy of push descriptor sets. +- ci/turnip: Use all 9 a618 runners at once for VK testing. +- ci/turnip: Bump the full-run a618 runner count to 3. +- ci/turnip: Re-enable the compressed cubemap tests. +- ci/turnip: Allow running spirv_ids_abuse in full VK runs. +- ci/turnip: Drop a couple of spillall skips. +- ci/turnip: Move some 15-second-ish test skips to pre-merge skips. +- ci/nouveau: Drop BM_POE_TIMEOUT. +- ci/nouveau: Rearrange job setup variables. +- ci/nouveau: fix up Jetson Nano +- ci/nouveau: Update gm20b xfails. +- ci: Update kernel to drm-next-2022-08-12-1 +- turnip: Fix leak of autotune fence BOs. +- turnip: Add TU_DEBUG=bos to print stats of BOs live at submit time. +- turnip: Fix the "written stencil is unmodified" check. +- turnip: Use the simplified stencil write flags for the LRZ-allowed check. +- ci/zink+turnip: Add a manual full run of the dEQP CTS. +- turnip: Fix busy-waiting on syncobjs with OS_TIMEOUT_INFINITE. +- util/dag: Move the callback function pointer to the state. +- util/dag: Add a validation function. +- freedreno/ir3: Validate our scheduling DAGs after construction. +- nir/nir_opt_copy_prop_vars: Don't leak dynarray memory during the pass. +- nir/vars_to_ssa: Always do OOB load/store removal. +- glsl: Remove lower_output_reads. +- glsl: Remove do_set_program_inouts. +- glsl: Remove opt_array_splitting. +- glsl: remove opt_structure_splitting. +- glsl: Remove lower_vec_index_to_swizzle. +- ci/iris: Update iris traces checksums. +- turnip: Don't use the dynamic color write enable during non-dynamic. +- ci/zink: Clear stale xfails for turnip. +- zink: Skip border color clamping for compressed formats. +- zink: Enable ASTC texture format translation. +- zink: Map ETC1 to ETC2 to avoid uncompressing in the frontend. +- ci/zink: Add some more flakes for turnip. +- zink: Fix RelaxedPrecision decoration of texture samples. +- zink: Decorate mediump outputs as RelaxedPrecision. +- turnip: Add a perf_debug for feedback-related performance traps. +- turnip: Move the ubwc_possible check before mutable formats. +- turnip: Add perf_debug for UBWC being disabled due to mutable formats. +- turnip: Add perf debug for more UBWC-disable cases that we could support. +- zink: Fix dummy CB path decision for VK_EXT_cwe presence. +- turnip: Be sure we blit depth, not stencil, for Z32FS8 -> Z32F resolves. +- nir/opt_phi_precision: Fix missing swizzles when narrowing phi srcs. +- turnip: Enable LRZ testing (not writing) in the presence of discards. +- ci/freedreno: Update CivV trace expectation. +- ci/freedreno: Update known flakes/timeouts. +- turnip: Fix reservation for indirect compute's IR3_DP_SUBGROUP_ID_SHIFT. +- zink: No need to use a 2-sample dummy image for bindless without null descs. +- zink: Lazily allocate the dummy surfaces. +- zink: Enable mesa/st frontend shader caching. +- rusticl: Fix the invalid memory migration flags check. +- iris: Disable GLSL lower_const_arrays_to_uniforms. +- gallium: update docs about PIPE_CAP_PREFER_IMM_ARRAYS_AS_CONSTBUF. +- ir3/ra: Make sure we don't pick a preferred reg overflowing the file. + +Eric Engestrom (56): + +- bin/gen_release_notes.py: bump advertised vulkan version to 1.3 +- pvr: fix memleak in error paths +- vk/device-select-layer: fix .sType of VkPhysicalDeviceGroupProperties +- docs/features: add missing extensions supported by anv +- docs/features: add missing extensions supported by lavapipe +- docs/features: add missing extensions supported by radv +- docs/features: add missing extensions supported by turnip +- docs/features: add missing extensions supported by venus +- docs/features: start tracking extensions supported by dozen +- docs/features: start tracking extensions supported by panvk +- docs/features: start tracking extensions supported by powervr +- docs/features: drop unsupported VK_KHR_display & VK_KHR_get_display_properties2 for lavapipe +- ci: rename GitHub CI workflow from \`ci` to \`macos` to be a bit more explicit about what it covers +- meson: drop duplicate \`lib` in lib name +- wsi/x11: fix memleak in wsi_x11_connection_create() +- aco: drop unused variable +- anv: convert assert into unreachable to avoid fallthrough error +- meson: replace manual compiler flags with meson arguments +- vc4: introduce VC4_DBG() macro to make VC4_DEBUG checks consistent +- v3d: introduce V3D_DBG() macro to make V3D_DEBUG checks consistent +- wayland: avoid writing interface names as free-form strings +- vc4: drop dead qir_POW() helper +- v3dv: implement VK_EXT_shader_module_identifier +- docs: move rusticl readme into docs/ +- broadcom: fix dependencies in static_library() calls +- docs: add release notes for 22.1.6 +- docs: update calendar and link releases notes for 22.1.6 +- docs: add release notes for 22.1.7 +- docs: update calendar and link releases notes for 22.1.7 +- ci: unexport local variable (and fix formatting) +- ci: bump mold to 1.5 +- docs/release-calendar: add 22.3 schedule +- v3dv: drop error overwrite +- vc4: don't lower uadd_carry +- vc4: don't use imprecise_32bit_lowering for idiv lowering +- vc4: pre-compile shaders to make up for the lack of draw calls in shader-db +- vc4: use PIPE_MASK_RGBA name instead of its value 0xf +- vc4: send shaderdb output through KHR_debug +- vc4: mark piglit copypixels-(draw-)sync as flaky +- VERSION: bump to 22.3.0-rc1 +- .pick_status.json: Update to 1174f376096ed6ceebb0fb2810456f1501a68df7 +- zink: add missing build_id linker args +- vk/runtime: drop incorrect UNUSED annotation +- v3dv: avoid freeing already-freed memory +- VERSION: bump for 22.3.0-rc2 +- .pick_status.json: Update to 9bd11f65238ce101bf846f5528f9088630e983f7 +- ci: avoid triggering vc4 & v3d tests on v3dv-only MRs +- VERSION: bump for 22.3.0-rc3 +- .pick_status.json: Update to f2e535e4fed5bdc13e11a443316a4b77cd5eb81a +- v3d(v): account for debug flags when using the cache +- .pick_status.json: Mark 56bd81ee21cb42e4a5afa2939514b570a1283754 as denominated +- VERSION: bump for 22.3.0-rc4 +- .pick_status.json: Update to 22be0d09a005b4b955a46b65a919cfd786d6814f +- .pick_status.json: Mark 470fbb35efe1935242b346427ec0fa22b40fff2b as denominated +- commit_in_branch.py: add support for checking staging branches +- docs: add release notes for 22.3.0 + +Erico Nunes (1): + +- ci: enable lima farm + +Erik Faye-Lund (226): + +- docs: fixup link to virgl docs +- zink: add have_D32_SFLOAT_S8_UINT boolean +- zink: do not use VK_FORMAT_D32_SFLOAT_S8_UINT without checking +- zink: remove needless check +- glsl/tests: do not perform eol-conversion on windows +- zink: type_main -> type_void_func +- zink: add spirv_builder_function_call +- zink: wrap discard in a function +- zink: fix conditions for draw-parameters +- zink: fixup indent in caps-check +- mesa/main: simplify implmementation of _mesa_is_format_etc2 +- mesa/main: simplify implementation of _mesa_is_format_astc_2d +- mesa/st: simplify st_compressed_format_fallback +- mesa/st: avoid double-mapping if both images are the same +- mesa/st: do not use memcpy when using compressed fallback +- mesa/st: add context-flag for bptc-support +- mesa: add format-helper for bptc +- mesa: add _mesa_unpack_bptc-function +- mesa/st: implement fallback for bptc +- mesa/st: enable bptc extension with fallback +- zink: allow X32 -> A32 +- mesa/main: remove always-true define +- mesa/main: add fp16-versions of bptc decompression functions +- mesa: fall-back to fp16 for bptc-textures +- gallium/u_transfer_helper: clean up boolean flags +- gallium/u_transfer_helper: add in-place interleave flag +- zink: use full transfer-helper api +- gallium/u_transfer_helper: hide deinterleave helpers +- mesa/st: also override mip filter for integer textures +- mesa/st: always force integer filtering to nearest +- mesa/st: force nearest-filtering for fp32 textures +- zink: request forcing of fp32-samplers to nearest when needed +- mesa/st: do not blit when using compressed fallback +- zink: clamp miplodbias when creating sampler +- zink: add ntv support for demote +- zink: add spirv_builder support for is_helper_invocation +- zink: add ntv support for is_helper_invocation +- zink: expose demote when supported +- zink: lower discard/demote depending on derivatives +- Revert "Revert "ci: set venus on lavapipe to manual due to flakes"" +- mesa/st: use _mesa_generate_mipmap for fallback-formats +- mesa/st: do not fallback to srgba formats for dxt +- util: allow unpacking less than a block from dxt +- mesa/st: add context-flags for s3tc +- mesa: add format-helpers for s3tc +- mesa/main: add _mesa_unpack_s3tc +- mesa/st: implement fallback for s3tc +- mesa/st: enable s3tc extensions with fallback +- v3d: do not pretend to fake rgtc-support +- vc4: respect z-offset in tiled blits +- vc4: do not attempt to do deep tiled blits +- docs/zink: remove bptc from required formats for gl4.2 +- docs/zink: document rgtc requirement +- mesa/st: add context-flag for rgtc +- mesa: add format-helper for rgtc +- util/format: fix broken indentation +- util/format: allow unpacking less than a block from rgtc +- util/format: implement rgtc -> r8 / r8g8 unpack +- mesa/main: add _mesa_unpack_rgtc +- mesa/st: implement fallback for rgtc +- mesa/st: do not fall back to uncompressed for rgtc +- mesa/st: enable rgtc extension with fallback +- panfrost: do not fake rgtc-support +- docs: update staus of mark GL_ARB_texture_compression_bptc +- lima: don't store width in resource-level +- lima: do not align width/height for non-shared resources +- mesa/st: add context-flag for latc +- mesa: add format-helper for latc +- mesa/main: add support for latc in _mesa_unpack_rgtc +- mesa/st: implement fallback for latc +- mesa/st: do not fall back to uncompressed for latc +- mesa/st: enable latc extensions with fallback +- freedreno: do not fake rgtc-support +- u_transfer_helper: rip out fake_rgtc code +- mesa/st: always use normalized coords for samplers +- mesa/st: always use normalized coords for samplers +- mesa/st: always use normalized coords for samplers +- zink: assert on unnormalized texcoords +- docs: add an amber article +- zink: emulate latc formats with rgtc +- zink: fix luminance clears +- zink: fixup indent +- zink: refactor swizzle-clamping code +- zink: fix luminance/luminance-alpha emulation +- zink: correct emulation of luminance-alpha formats +- ci/crocus: update ci results +- mesa/main: fix broken indent +- mesa/main: don't copy signed rgtc via float +- docs: fixup broken rst syntax +- gallium/u_threaded_context: remove stale comment +- gallium: normalized_coords -> unnormalized_coords +- zink: fix broken pool-alloc consolidation +- zink: fixup dynarray-type +- zink: use util_dynarray_clear +- mesa/st: rip out point-sprite cap +- mesa/main: remove driver-cap for ARB_point_sprite +- mesa/st: move static asserts out of translate_prim +- mesa/st: remove translate_mode +- docs: correct spelling of "implemented" +- docs: correct spelling of "attempts" +- docs: correct spelling of "bug fixes" +- docs: correct spelling of "specified" +- docs: correct spelling of "hierarchical" +- docs: correct spelling of "implementation" +- docs: correct spelling of "to" +- docs: correct spelling of "Khronos" +- docs: correct spelling of "choosing" +- docs: correct spelling of "subtly" +- docs: correct spelling of "Raspbian" +- docs: correct spelling of "shareable" +- docs: correct spelling of "simplification" +- docs: correct spelling of "synced" +- docs: correct spelling of "maximum" +- docs: correct spelling of "hierarchy" +- docs: correct spelling of "commutativity" +- docs: correct spelling of "compression" +- docs: correct spelling of "laid" +- docs: correct spelling of "average" +- docs: correct spelling of "addition" +- docs: correct spelling of "explicitly" +- docs: correct spelling of "rasterizer" +- docs: fractionary -> fractional +- docs: ie. -> i.e. +- docs: correct spelling of "correctly" +- docs: correct spelling of "traveling" +- docs: correct spelling of "freedreno" +- zink: rework primitive rasterization type logic +- zink: reuse rast_prim for line-rasterization check +- docs: correct spelling of "addition" +- docs: correct spelling of "passes" +- docs: correct spelling of "irrespective" +- docs: correct spelling of "semantic" +- docs: correct spelling of "specifies" +- docs: correct spelling of "Gouraud" +- docs: correct spelling of "Copr" +- docs: spell out "build directory" +- docs: spell out "SHA256 checksum" +- docs: spell out "environment variable" +- docs: spell out "distribution" +- docs: use the official spelling of SHA-1 +- docs: eg. -> e.g. +- docs: XOR'd -> XORed +- docs: consistently upper-case VC4, V3D etc +- docs: consistently spell DRI in all-caps +- docs: consistently spell ANV in allcaps +- docs: consistently spell URL in allcaps +- docs: consistently spell OK in allcaps +- docs: consistently use CMake +- docs: consistently spell API all-caps +- docs: consistently spell VirGL in camel-case +- docs: consistently spell Haswell in camel-case +- docs: use consistent casing for dEQP +- docs: ip -> IP +- docs: irc -> IRC +- docs: xorg -> X.Org +- docs: pci -> PCI +- docs: cpu -> CPU +- docs: gpu -> GPU +- docs: rgb -> RGB +- docs: perfetto -> Perfetto +- docs: lavapipe -> Lavapipe +- docs: freedreno -> Freedreno +- docs: adreno -> Adreno +- docs: radeon -> Radeon +- docs: nouveau -> Nouveau +- docs: llvmpipe -> LLVMpipe +- docs: vulkan -> Vulkan +- docs: lima -> Lima +- docs: ppir -> PPIR +- docs: autotools -> Autotools +- docs: ArchLinux -> Arch Linux +- docs: meson -> Meson +- docs: Gitlab -> GitLab +- docs: xyzw -> XYZW +- docs: hw -> HW +- docs: lava -> LAVA +- docs: skqp -> SkQP +- docs: servo -> Servo +- docs: Linux fbdev -> Linux Framebuffer +- docs: virtualisation -> virtualization +- docs: dependant -> dependent +- docs: healthcheck -> health check +- docs: vmware -> VMware +- docs: spell out "distribution" +- docs: spell out "transform and lighting" +- docs: de-duplicated -> deduplicated +- docs: de-nominate -> denominate +- docs: freedreno -> Freedreno +- docs: llvmpipe -> LLVMpipe +- docs: softpipe -> Softpipe +- docs: panfrost -> Panfrost +- docs: piglit -> Piglit +- docs: ini -> INI +- docs: swr -> OpenSWR +- docs: yml -> YAML +- docs: xml -> XML +- docs: Adreno aXXX -> Adreno XXX +- docs: remove non-existent directory +- docs: do not mention classic swrast +- docs: name correct driver +- docs: clean up labels +- docs: add missing link to mesa3d.org +- docs: add links to usenet groups +- docs: link to replacement forum +- docs: Android.mk -> ndk-build +- docs: gitlab -> GitLab +- docs: nVidia -> NVIDIA +- docs: spell ATI codenames in allcaps +- docs: nfs -> NFS +- docs: fixup rebase mistake +- zink: correct depth-bias enable condition +- zink: only set line-width if drawing lines +- zink: consider polygon-mode for rast_prim +- zink: do not read is_generated unless in tcs shader +- zink: put union fields into structs named by the shader-stages +- docs/zink: fix and cleanup rst syntax +- docs: fixup broken link syntax +- docs: do not mention EGL_MESA_drm_display +- docs: remove stale envvar-reference +- zink: fix json-errors in profile-file +- zink: remove needless requirements +- zink: fix incorrect requirements +- zink: update textureCompressionBC requirement +- docs/zink: add missing required device-feature +- mesa: treat unsupported queries as dummies +- d3d12: fix max-array-layers + +Fabian Vogt (1): + +- gallivm: Fix LLVM optimization with the new pass manager + +Feng Jiang (5): + +- virgl/vtest: fix memory overwrite problem in virgl_vtest_send_get_caps() +- gallium: add key size to the structure pipe_picture_desc +- vl: change vl_video_buffer_destroy() to non-static +- gallium/util: add a new helper function pipe_buffer_size() +- virgl: add support for hardware video acceleration + +Filip Gawin (5): + +- r300: add list of deqp gles2 r400 failures +- r300: add khr r400 failures +- gallium: avoid using float based conditions in loops +- r300: don't use smooth line if not requested +- r300: update r400 tests + +Francisco Jerez (4): + +- intel/fs: Fix horiz_offset() to handle FIXED_GRFs with non-trivial 2D regions. +- nir/lower_int64: Enable lowering of 64-bit float to 64-bit integer conversions. +- nir/lower_int64: Implement lowering of 64-bit integer to 64-bit float conversions. +- nir/lower_int64: Fix float16 to int64 conversions. + +Frank Binns (13): + +- pvr: get free list min size from the runtime info +- pvr: reset all command buffer state in pvr_cmd_buffer_reset() +- pvr: Implement vkResetCommandBuffer +- pvr: remove redundant TODO +- pvr: remove image pointer from image view struct +- pvr: set samplerAnisotropy to false +- pvr: cube map tex state packing fixes +- pvr: don't setup attachment tex state for images with input attachment bit unset +- pvr: finish render job sample count setup +- pvr: add required pixel formats +- pvr: remove implicit sync support +- pvr: setup buffer and image format feature bits +- CODEOWNERS: remove rajnesh-kanwal as an Imagination maintainer + +Friedrich Vock (28): + +- amd/common: move ac_memory_ops_per_clock into ac_gpu_info.h +- amd/common: Remove redundant code for determining memory ops per clock +- radv/winsys: Return VK_ERROR_INVALID_EXTERNAL_HANDLE if buffer imports fail +- radv: Generalize instance count in BVH states to leaf node count +- radv: Add metadata to acceleration structures +- radv: Add Radeon Raytracing Analyzer trace dumping utilities +- radv: Add Radeon Raytracing Analyzer capturing layer +- radv: Enable Radeon Raytracing Analyzer traces +- docs: Add documentation about RADV RRA tracing +- radv: Use radv_CmdUpdateBuffer instead of radv_update_buffer_cp for geometry info writes +- radv: Free geometry infos in radv_CmdBuildAccelerationStructuresKHR +- radv: Correct accel struct header size +- radv: Rename internal node shader to lbvh_internal +- radv: Split CmdBuildAccelerationStructuresKHR into different functions +- radv: Add BVH IR types +- radv: Add conversion shader for internal nodes +- radv: Add conversion shader for leaf nodes +- radv: Create pipelines for conversion meta shaders +- radv: Build acceleration structures using BVH IR +- radv: Rename emulated float helpers +- radv: Use a struct for AABBs +- radv: Add radv_indirect_unaligned_dispatch +- radv/rt: Fix internal converter synchronization +- radv/rt: Dispatch internal converter indirectly +- radv/rt: Track number of inactive leaf nodes +- radv: Add global sync utilities +- radv: Add REF as a typename macro to .clang-format +- radv: Use spirv1.5 instead of vulkan1.2 + +Georg Lehmann (40): + +- aco: Check that we don't override exec_val operands during branching sequence optimization. +- aco/assembler: Fix v_cmpx with SDWA. +- aco: Fix optimizing branching sequence with s_and_saveexec. +- aco/assembler: Fix v_cmpx pre GFX10. +- aco: Use v_cmpx pre GFX10. +- aco: Force tex operand to have the correct sub dword size before packing. +- nir: Add nir_ssa_scalar_is_undef. +- nir/fold_16bit_tex_image: Add an option to fold image sources. +- aco: Implement storage image A16. +- aco: Combine 16bit undef and constants instead of using s_pack. +- radv: Fold 16bit image sources. +- nir: Print selection control for nir_if. +- nir/opt_algebraic: Optimize check for single bit. +- nir/opt_algebraic: Optimize d3d9 pow with fmulz. +- aco: Fix image instructions with lod when 2d_view_of_3d is enabled on GFX9. +- ac/llvm: Fix image instructions with lod for 2d on GFX9. +- aco: Use plain VOPC for vcmpx when possible. +- nir/opt_algebraic: Optimize unpacking of upcasts to 64bit integers. +- radv: Enable VK_EXT_load_store_op_none. +- aco: Use v_fmaak/v_fmamk if two operands are the same literal. +- aco: Unswizzle v_pk_fma_f16 literals to produce more v_pk_fmac_f16. +- radv: Fix GLSL BDA struct alignment and use pointer arithmetic SIZEOF. +- nir/opt_algebraic: Optimize more (a cmp b ? a : b) to min/max. +- aco: Use s_pack_ll for s_bfe operand on GFX9+. +- nir: Print nir_selection_control_divergent_always_taken. +- nir/opt_algebraic: Mirror optimizations for find_msb_rev. +- aco: Implement [ui]find_msb_rev. +- ac/llvm: Implement [ui]find_msb_rev. +- nir/opt_algebraic: Add an option to lower uclz. +- radv,aco: Lower uclz in NIR. +- nir/opt_algebraic: Optimize various find_msb_rev patterns. +- nir: Fix ifind_msb_rev constant folding. +- aco: fmaak/fmamk can't use SDWA. +- aco: Don't use opsel for p_insert. +- ac/llvm: Implement signed idot on GFX11. +- aco: Implement signed idot instructions on GFX11. +- radv: Use available dot product instructions on gfx11. +- radeonsi: Use available dot product instructions on gfx11. +- aco: Use opsel for the third operand. +- aco: Use s_pack_ll_b32_b16 for scalar zero extend. + +Gert Wollny (95): + +- radeonsi-raven/ci: Move spec@arb_timer_query@timestamp-get to flakes +- llvmpipe: Double number of SSBOs +- r600/sfn: Schedule shift instruction on R600 in t-slot +- r600/sfn: Add GS thread fix just like the TGSI code path +- r600/sfn: Sort FS inputs to make interpolated values come first +- r600/sfn: Fix color outputs when color0 writes all +- r600/sfn: Initialize out buffer when printing op +- r600: Force NOPs when loading AR on R600 class hardware +- r600/sfn: Handle R600 scratch read +- r600: Don't use SB with R600 style scratch reads +- r600: Fix SCRATCH OP de-assembly +- nir_lower_atomics_to_ssbo: Initialize deref struct +- r600/sfn: Handle color0 writes all on R700 like on EG +- r600/sfn: Don't tag mem-ring and stream instructions as exports +- r600/sfn: Don't schedule GDS instructions early +- r600/sfn: Don't scan the whole block for ready instructions +- r600/sfn: Use a heuristic to keep SSBO setup and store close +- r600: Fix reporting TGSI IR support +- r600/sfn: Use a low number for unused target register +- virgl: Fix buffer overflow warning: +- virgl: Fix ubsan warnings: +- virgl: when reading back wait first, then do the transfer +- virgl/ci: remove some flakes +- r600/sfn: override register ID when it doesn't matter +- r600/sfn: ACK all image stores, also at end of loop +- r600/sfn: more peephole optimization with conditionals +- r600/sfn: Override VPM if access in helpers is requested +- r600/sfn: Don't scalarize fdd instructions +- virgl: Add some formats that the CTS uses +- mesa/glsl: Add support for NV_shader_noperspective_interpolation +- r600: set nir option lower_cs_local_index_to_id +- virgl: Report CONSTANT_BUFFER_SIZE according to GL_MAX_UNIFORM_BLOCK_SIZE +- r600/sfn: Lower tex,txl,txb and txf to backend +- r600/sfn: lower txd to backend in nir +- r600/sfn: lower txf_ms in nir +- r600/sfn: copy-propagate single source texture values +- r600/sfn: print tex prepare instructions +- r600/sfn: Don't allocate un-used components in texture ops +- r600/sfn: Add an easy access to get an instruction as ALU +- r600/sfn: Don't assert when setting one value +- r600/sfn: Copy propagate into TEX source +- r600/sfn: drop some unused code +- r600/sfn: copy propagate register load chains +- r600/sfn: VS inputs are effectively SSA +- r600/sfn: Add a free-channel mask when testing whether a register can switch channel +- r600/sfn: fix some channel pinning +- r600/sfn: Handle shifts on Cayman +- r600/sfn: only use 3 channels on Cayman for trans ops +- r600/sfn: Make sure texture lowering is done in the right order +- r600/sfn: lower tg4 to backend in NIR +- r600: Add slot to ALU disassambly +- r600: Make NIR the default shader IR +- nir_lower_to_source_mods: Don't sneek in an abs modifier from parent +- r600/sfn: Only run 64 bit ops lowering passes when really needed +- r600/sfn: Always start a new CF after a KILL instruction +- r600/sfn: don't propagate registers into conditional test +- r600/sfn: Add peephole optimization for kill instructions +- r600/sfn: Delete final lowered nir shader early +- r600/sfn: Fix typo +- r600/sfn: Use the correct allocator for loop lists +- r600/sfn:explicitly initialize the memory pool +- r600/sfn: assert on use of abs modifier in op3 +- r600/sfn: Unroll loops after doing some optimizations +- r600/sfn: Always enforce LDS operation order +- r600/sfn: Make sure all components are usable when lowering TF inputs +- r600/sfn: run cleanup passes after late algebraic opt +- nir: move fusing csel and comparisons to opt_late_algebraic +- r600/sfn: Unify the handling of resource IDs in instruction +- r600/sfn: Handle nir_op_seq and nir_op_sne +- r600: Fix printing t-channel in diss-assambly +- r600/sfn: Add test for channel changes in TEX source from opt +- r600/sfn: Allow copy-prop of group dest into origin +- r600/sfn: Trigger TEX CF based on max TEX CF size +- r600/sfn: improve scheduling of tex sources +- r600/sfn: Increase scheduling priority on uniform reads and non-ssa writes +- r600/sfn: elimiate dead registers too +- r600: Account for color and clipvertex when evaluating LDS space +- r600/sfn: evaluate LDS location for color and clip-vertex too +- r600/sfn: Add .clang-format file and apply style +- r600: declare for counter locally and fix signed/unsigned warning +- r600: Only count ALU registers that are not clause local +- r600: Print MOVA_INT dest on Cayman +- r600/sfn: Handle load_workgroup_size +- r600/sfn: lower uniforms to UBOs +- r600/sfn: remove load_uniform handling +- etnaviv: Create MSAA surfaces with PE compatible tiling +- nir/algeraic_opt: use double options too for lowering ftrunc@64 +- r600/sfn: Fix source modifiers for ffract64 +- r600/sfn: Fix f2u32 and remove backend lowring of f2u64 and f2i64 +- r600/sfn: Honor shader key w.r.t. atomic counter layout +- r600/sfn: Fix location for reading cube array image dimensions +- r600/sfn: sort FS color outputs before all other outputs +- virgl: don't a use staging when a resources created with the shared flag +- virgl: Fix injection of double from const mov instruction +- r600/sfn: always use four slots for Cayman trans ops + +Giancarlo Devich (4): + +- mesa: Fix stack corruption for PIPE_QUERY_TIMESTAMP +- d3d12: Add cache managers for separate buffer usage cases +- gallium/pipe: Align allocation size in \`pb_cache_manager_create_buffer` +- d3d12: Don't align already-aligned size in \`d3d12_bufmgr_create_buffer` + +Glenn Kennard (1): + +- nv30: Fix non-scissored clears after a scissor has been set + +Guilherme Gallo (29): + +- ci/lava: Customise sections timeouts via envvars +- ci/lava: Add timeout header info for LAVA GL Sections +- ci/bin: Add utility to find jobs dependencies +- ci/bin: Sort imports from ci_run_n_monitor.py +- ci/bin: Make ci_run_n_monitor finds dependencies automatically +- ci/bin: Add script to expand jobs manifest +- ci/bin: Cache GQL queries +- ci/bin: Print job needs DAG in ci_run_n_monitor +- ci/skqp: Add an option to run all tests +- ci/skqp: Show reports on crashes +- ci/skqp: Fix paths in skqp-runner +- ci/skqp: Fix Nima-Cpp fetching error +- ci/skqp: Build list_gpu_unit_tests and list_gms +- ci/skqp: Add support for commenting tests files +- ci/skqp: Use SKQP_BIN_DIR instead of hardcoded /skqp dir +- ci/skqp: Put generated tests files in artifacts +- ci/skqp: Supress irrelevant shellcheck warnings +- ci/skqp: Remove .baremetal-skqp-test in favor of .skqp-test +- ci/skqp: Add gitlab sections for uncluttering +- ci/freedreno: skqp: run with new tests files +- ci/radeonsi: skqp: Add fail test files for raven +- ci/radeonsi: Add zork jobs and rules +- ci/bin: Fix requirements.txt +- ci/bin: Remove whitespace from token files +- ci: Fix kernel+rootfs.* jobs +- ci: Update piglit with s3 support +- ci: Update piglit-traces tests expectations +- ci: Update ci-fairy in CI, rootfs and containers +- freedreno/ci: Skip civilization-v/CivilizationV-trim trace + +Hans-Kristian Arntzen (3): + +- vulkan: Update to 1.3.228 headers. +- radv: Implement VK_EXT_mutable_descriptor_type. +- vk/runtime: Fix narrowing of timeline signal and wait value to u32. + +Iago Toral Quiroga (87): + +- broadcom/compiler: don't use imprecise_32bit_lowering for idiv lowering +- broadcom/compiler: use nir_opt_idiv_const +- broadcom/compiler: simplify code emitted for centroid coordinates +- nir/lower_alu: drop unnecessary iand on uadd_carry result +- broadcom/compiler: track number of TMU operations in prog data +- v3dv: move check_needs_load/store helpers to unversioned code +- v3dv: track if a job is compatible with double-buffer mode +- v3dv: fix tile state allocation +- v3dv: add a v3dv_job_allocate_tile_state helper +- v3dv: postpone tile state allocation for render pass jobs +- v3dv: tell job_compute_frame_tiling whether we want to use double-buffer mode +- v3dv: add a heuristic for double-buffer mode +- v3dv: vkCmdClearAttachments no longer generates its own RCL +- v3d,v3dv: lower texel buffer aligment requirements +- v3dv: implement VK_EXT_texel_buffer_alignment +- v3dv: add a helper to destoy pipeline layouts +- v3dv: ref/unref pipeline layout objects +- v3dv: set maxBufferSize property +- v3dv: add a v3dv_image_init helper +- v3dv: add a get_image_memory_requirements helper +- v3dv: implement vkGetDeviceImageMemoryRequirementsKHR +- v3dv: add a get_buffer_memory_requirements helper +- v3dv: add a buffer_init helper +- v3dv: implement vkGetDeviceBufferMemoryRequirementsKHR +- v3dv: implement vkGetDeviceImageSparseMemoryRequirementsKHR +- v3dv: expose VK_KHR_maintenance4 +- nir/lower_variable_initializers: implement non-scoped barrier path +- v3dv: implement VK_KHR_zero_initialize_workgroup_memory +- v3dv: also check GS stage on image access for binning barriers +- v3dv: implement vkCmdPipelineBarrier2 +- v3dv: port remaining entry points to KHR_synchronization2 +- v3dv: use VkPipelineStageFlagBits2 when checking semaphore wait stage +- v3dv: expose VK_KHR_synchronization2 +- v3dv: implement VK_KHR_workgroup_memory_explicit_layout +- v3dv: switch to common code for command buffer lifecycles +- v3dv: expose VK_EXT_tooling_info +- v3dv: fix swap_rb and channel_reverse flags in image views +- v3dv: expose VK_EXT_border_color_swizzle +- v3dv: ref pipeline layout earlier during pipeline init +- v3dv: implement VK_EXT_depth_clip_control +- v3dv: expose VK_EXT_attachment_feeback_loop_layout +- v3dv: fix variable type +- v3dv: limit heap size to 4GB +- broadcom/simulator: add a helper to get the amount of free heap memory +- v3dv: implement VK_EXT_memory_budget +- v3dv: expose VK_EXT_primitive_topology_list_restart +- v3dv: don't load an attachment for unaligned render area if we are not storing +- v3dv: expose VK_EXT_load_store_op_none +- v3dv: don't return incompatible driver if GPU is not present +- v3dv: fix program id for binning shaders +- broadcom/compiler: detect unifa write from signal +- broadcom/compiler: check signal writes to magic regs when updating scoreboard +- v3dv: optimize ldunif load into unifa write +- v3dv: fix VK_EXT_texel_buffer_alignment +- broadcom/compiler: increase V3D_MAX_BUFFE_RANGE to 2^30 bytes +- broadcom/compiler: fix robust buffer access +- broadcom/compiler: handle shared stores with robust buffer access +- broadcom/compiler: don't apply robust buffer access to shared variables +- broadcom/compiler: rename v3d_nir_lower_robust_buffer_access.c +- broadcom/compiler: rename static helpers involved with robust buffer access +- broadcom/compiler: add a lowering for robust image access +- v3dv: expose VK_EXT_image_robustness +- v3dv: use NIR_PASS with v3d_nir_lower_robust_image_access +- v3dv: use enabled features from vk_device +- broadcom/compiler: trivial code clean-up +- vulkan/runtime: include robustness info when hashing a shader stage +- v3dv: implement VK_EXT_pipeline_robustness +- v3dv: drop layout refs for all allocated sets from a pool on destroy / reset +- broadcom/compiler: handle vec2 load/store index +- v3dv: refactor events +- v3dv: re-enable sync_fd import/export +- v3dv: return out of host memory if we fail to create event pipelines +- v3dv: split event implementation to a separate file +- v3dv: remove unnecessary check for NULL +- v3dv: do a better job at cleaning up the device on init failure +- v3dv: fix incorrect return type +- v3dv: handle allocation failure during pipeline initialization +- v3dv: do better cleanup on failure during pipeline cache operation +- v3dv: increase limit for active event objects +- v3dv: always check VK_ACCESS_2_MEMORY_READ_BIT for read accesses +- v3dv: make the helper to emit pipeline barriers public to other files +- v3dv: fix event synchronization +- v3dv: vkCmdWaitEvents2 takes an array of VkDependencyInfo +- v3dv: use vk_alloc instead of malloc +- broadcom/compiler: avoid using ldvary sequence to hide latency of branching +- v3dv: fix debug dump on BO free +- v3dv: ignore imported BOs when tracking BO memory usage + +Ian Romanick (8): + +- nir: spirv: Allow 32-bit version of nir_intrinsic_is_sparse_texels_resident +- radeonsi: r600: d3d12: st: Use NIR lowering for tg4 offset arrays instead of GLSL lowering +- glsl: Remove lower_offset_arrays pass +- nir/comparison_pre: See through an inot to apply the optimization +- intel/fs: Fix constant propagation into 32x16 integer multiplication +- nir/range_analysis: Set higher default maximum for max_workgroup_count +- nir/loop_analyze: Fix get_iteration for nir_op_ine +- nir/loop_analyze: Fix get_iteration for nir_op_fneu + +Igor Torrente (3): + +- vulkan: Add vk_clock_gettime and vk_time_max_deviation +- radv: anv: Use the new vk_clock_gettime and vk_time_max_deviation functions +- venus: Fix dEQP-VK.pipeline.timestamp.calibrated.host_domain_test failure + +Ikshwaku Chauhan (1): + +- Revert "radeon: add EFC support to only VCN2.0 devices" + +Illia Abernikhin (2): + +- utils: Move functions from debug.* to u_debug.* +- utils: Merge util/debug.* into util/u_debug.* and remove util/debug.* + +Illia Polishchuk (2): + +- mesa: skip extra state updates for clear calls +- driconf/Intel: Add lower_depth_range_rate option workaround for Homerun Clash misrendering issue + +Isaac Bosompem (1): + +- virgl: Set use_staging in resource_from_handle + +Italo Nicola (6): + +- etnaviv: skip disk cache initialization on standalone compiler +- etnaviv: fix standalone compiler to work without a tgsi backend +- clc: add 32-bit target +- rusticl: use 32-bit address format for 32-bit devices +- rusticl: correctly check global argument size +- rusticl: fix MemConstant invalid arg size check + +Iván Briano (13): + +- anv: emit scissors when the pipeline changes +- anv: pipelineStageCreationFeedbackCount is allowed to be 0 +- anv: populate rt shader groups if they were found in the cache +- anv: Set meshShaderQueries for mesh shader ext features +- intel/utrace: create the callback events for xfb trace points +- anv/grl: Add a GRL file parser +- anv: set READ/WRITE_WITHOUT_FORMAT for buffer views +- vulkan_hasvk: set READ/WRITE_WITHOUT_FORMAT for buffer views +- anv: compile_upload_rt_shader expects a valid pointer +- anv: use DX rules for point rasterization +- hasvk: use DX rules for point rasterization +- anv: support VK_PIPELINE_CREATE_RAY_TRACING_SKIP_* +- anv: enable rayTraversalPrimitiveCulling feature + +James Park (2): + +- vulkan: Augment _WIN32 stub comparison +- meson,amd: Remove Windows libelf wrap + +James Zhu (4): + +- amd/common: some ASICs with gfx9 use compute rings for render +- util/format: add util format y8_400_unorm +- frontends/va: add support for yuv400 and yuv444 +- radeonsi/vcn: enable jpeg decode of yuv444 and yuv400 + +Jami Kettunen (1): + +- freedreno/ir3: Switch to NIR for a5xx's vertex id lowering. + +Jan Beich (1): + +- util: unify FreeBSD futex_wait signature with Linux/OpenBSD/Windows + +Jason Ekstrand (115): + +- nir: Clean up and improve nir_dedup_inline_samplers +- intel/fs_reg_allocate: Improve compressed instruction self-interference +- intel/rt: Handle halts in any-hit shaders properly +- intel/rt: Handle multiple exits in lower_shader_returns +- genxml: Add BVH data structures +- anv: Don't require 32-bit addresses for scratch on Gen12.5+ +- vulkan,anv,dozen: Use VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT +- radv: Use both aspects for depth/stencil blit destinations +- radv: Use VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT for render loops +- radv/meta: Respect render area for MSAA resolves +- radv/meta: Fix a stack use-after-free with sample locations +- radv/meta: Drop subpass_att from radv_fast_clear_color +- radv/meta: Use Begin/EndRendering for resolves +- radv/meta: s/dest/dst/ in a few functions +- radv/meta: Use Begin/EndRendering for clears +- radv: Drop set/restore_subpass +- radv/meta: Drop redundant depth_view_can_fast_clear +- radv: Add a image_transition helper for separate depth/stencil layouts +- radv: Don't assume layout == stencilLayout for stencil-only +- util,intel: Pull the bit packing helpers from genxml to a common header +- broadcom: Use util/bitpack_helpers.h +- util: Add util_bitpack_[su]fixed_clamp helpers +- asahi: Use util/bitpack_helpers.h +- panfrost: Use util/bitpack_helpers.h +- anv: Use nir_intrinsic_load_layer_id for ViewId in fragment shaders +- anv: Decouple primitive replication check from the fragment shader +- anv: Stop looking at the pipeline in multiview lowering +- nir: Track per-view outputs in shader_info +- intel/compiler: Store the number of position slots in the VUE map +- anv: Drop anv_pipeline::use_primitive_replication +- pvr: Only destroy the physcial device if it exists +- vulkan/cmd_buffer: add record_state to the common command buffer. +- vulkan/cmd_queue: Drop vk_cmd_queue::error +- vulkan: Add a concept of recycling an object +- vulkan: Re-order arguments to vk_command_pool_init +- vulkan: Re-order arguments to vk_command_buffer_init +- vulkan: Add a vk_command_buffer_ops struct +- vulkan: Add a common vkResetCommandBuffer() implementation +- vulkan: Add a common vkAllocateCommandBuffers() implementation +- vulkan: Recycle command buffers in vk_command_pool +- radv: Move to the common command pool framework +- tu: Move to the common command pool framework +- lvp: Move to the common command pool framework +- vulkan,docs: Add documentation Vulkan command pools +- vulkan: Dirty VP_VIEWPORTS/SCISSORS when copying viewports/scissors +- radv: Set the window scissor to the render area, not framebuffer +- radv: Only copy the render area from VRS to HTILE +- radv: Leave image layouts alone when doing HW MSAA resolves +- radv: Switch to dynamic rendering only +- rusticl: Call nir_scale_fdiv +- vulkan/runtime: Add a comon vk_descriptor_update_template +- anv: Switch to the common descriptor update template struct +- vulkan/runtime: Compact descriptor update templates +- panvk: Fix buffer views +- spirv: Don't use libclc for wait_group_events +- nir: Add a helper for finding a function by name +- nir/load_libclc: Don't add generic variants that already exist +- vulkan: Record more enabled robustness features +- vulkan: Add a helper for gathering pipeline robustness +- iris: Use a larger alignment for buffer allocations +- iris: Fix more BO alignments +- iris: Handle resource offsets in buffer copies +- iris: Stop looking at textures_used for samplers +- iris: Split max #defines for textures/samplers/images +- iris: Support up to 64 images +- iris: Support up to 128 textures +- intel/fs: Always use integer types for indirect MOVs +- intel/fs: SEL_EXEC uses the integer pipe for 64-bit stuff +- intel/mi_builder: add a way to reserve a register +- intel/mi_builder: Add a helper for incrementing reference counts +- anv/formats: Advertise ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT +- anv: Add an anv_address_map helper +- anv: Implement VK_KHR_pipeline_library +- anv: Set up the memory-backed FIFO buffer +- anv: Add extern "C" guards +- anv: Add support for compiling OpenCL-style kernels +- anv: Add support for OpenCL-style kernel dispatch +- anv: Import GRL +- anv/grl: Build OpenCL kernels +- anv/grl: Add a helper for dispatching our pre-built kernels +- intel/grl: Parse GRL files and generate C +- anv: Build BVHs on the GPU with GRL +- anv: Advertise ray-tracing on DG2 +- intel/devinfo: DG2 supports ray-tracing +- vulkan/wsi: Support configuring swapchain images as part of swapchain init +- vulkan/wsi/x11: Configure images via params passed to wsi_swapchain_init() +- vulkan/wsi/wayland: Configure images via params passed to wsi_swapchain_init() +- vulkan/wsi/display: Configure images via params passed to wsi_swapchain_init() +- vulkan/wsi/win32: Configure images via params passed to wsi_swapchain_init() +- vulkan/wsi: Always configure images in wsi_swapchain_init() +- vulkan/wsi: Don't expose as many image configure helpers +- vulkan/wsi: Add a typedef for memory type select callbacks +- vulkan/wsi: Add a supports_scanout flag +- vulkan: Use altlen when available for array lengths +- vulkan: Rename viewport_state::negative_one_to_one +- vulkan: Add a dynamic state for vp.depth_clip_negative_one_to_one +- vulkan: Add more dynamic rasterizer state +- vulkan: Add dynamic state for tessellation domain origin +- vulkan: Add more dynamic multisample states +- vulkan: Add more dynamic color blend states +- vulkan,lavapipe: Use a tri-state enum for depth clip enable +- iris: Set SamplerCount in shader packets +- nir: Reformat a comment +- nir: Use nir_shader_instructions_pass in nir_lower_readonly_images_to_tex +- nir: Misc. style fixes to nir_lower_readonly_images_to_tex +- nir: Unconditionally call nir_trim_vector in nir_lower_readonly_images_to_tex +- nir/types: Add some asserts to glsl_get_struct_field() +- nouveau/codegen: Support bindless texture queries +- intel/lower_mem_access_bit_sizes: Compute alignments automatically +- intel: Don't cross DWORD boundaries with byte scratch load/store +- vulkan: Handle VK_SUBPASS_EXTERNAL at the end of a subpass +- vulkan: Unconditionally add barriers for missing external subpass deps +- vulkan: Add state for extraPrimitiveOverestimationSize +- vulkan: Add a common implementation of CmdSetSampleLocationsEnableEXT +- vulkan: Add a dummy vk_common_CmdSetColorBlendAdvancedEXT() + +Jeremy Rand (1): + +- llvmpipe: bump LP_MAX_THREADS to 32 + +Jesse Natalie (82): + +- ci/windows: Re-enable Windows runners +- dzn: Disable extensions that require multi-view +- dzn: Use D3D12 constants instead of naked numbers for device limits +- ci/windows: Disable Windows builds while the runner is offline again +- ci/windows: Windows runner is back online +- ci/windows: Install Graphics-Tools package on the base image +- egl/wgl: Don't require a native display to support window surfaces +- egl/wgl: Implement QuerySurface +- wgl: Split pbuffer creation into two functions +- egl/wgl: Implement PBuffer surfaces +- egl/wgl: Set YInvert attribute to always true +- egl/wgl: Implement bind/release texture buffer +- wgl: Allow per-framebuffer swap interval overrides +- egl/wgl: Support eglSwapInterval +- egl/wgl: Support eglWaitClient +- egl/wgl: Support eglWaitNative +- egl,wgl: Support eglCreateImageKHR +- wgl: Pass smapi explicitly to context creation +- wgl: Pass smapi explicitly to framebuffer creation +- egl/wgl: Use a per-display st_manager +- egl/wgl: Hook up image validate/get in smapi +- egl/wgl: Support EGL_MESA_query_driver +- egl/wgl: Support sync objects +- wgl: Use pfi instead of iPixelFormat more often +- egl/wgl: Delete unused variables/code +- egl/wgl: Fix some awkward sizeof formatting +- meson: Don't include glsl compiler if flex/bison aren't found +- microsoft/compiler: Discard shouldn't be marked readnone +- dxil_nir_lower_int_cubemaps: When not lowering samplers, don't touch sampler types +- microsoft/compiler: Fix PSV struct when numthreads is 0 +- microsoft/clc: Handle a null clc logger +- gallium/windows: Delete OpenGLOn12.dll target +- meson: Add an option to specify the WGL gallium megadriver filename +- mesa: Expose GL_NV_ES1_1_compatibility +- microsoft/compiler: Always emit a shader at the max-supported shader model +- microsoft/compiler: Support up to shader model 6.5 +- microsoft/compiler: Add struct and function defs for SM6.6 handle funcs +- microsoft/compiler: Add dynamic create handle helper +- microsoft/compiler: Add getters for res bind/props structs +- microsoft/compiler: Delete double-assignment of sampler metadata field +- microsoft/compiler: Pass lower_bound, upper_bound, space to createhandle +- microsoft/compiler: Handle SM6.6 handles +- microsoft/compiler: SM6.6 is supported +- microsoft/compiler: Support SM6.7 +- d3d12: Get max supported shader model +- dzn: Get max supported shader model +- u_atomic: Add a helper for pointer compare-exchange +- d3d12: Change displayable format logic +- ci/windows: Update build container image with all deps so wraps can be disabled +- deps: Update DirectX-Headers req to 1.606.4 +- d3d12: Move some things from screen late-init to early-init +- d3d12: Store the d3d12 module reference on the screen +- d3d12: Support device factories in addition to global device creation +- d3d12: Attempt to use the Agility SDK +- d3d12: Use ID3D12DeviceConfiguration for root signature serialization +- d3d12: Release sharing contract in flush_frontbuffer +- dzn: Store the d3d12 module reference on the instance +- dzn: Support device factories in addition to global device creation +- dzn: Use architecture props to return correct device type +- dzn: Attempt to use the Agility SDK +- dzn: Use ID3D12DeviceConfiguration for root signature serialization +- ci/windows: Update vk-gl-cts to pick up new zlib dependency +- d3d12: Don't put permanently-resident resources in the residency bo list +- d3d12: Don't multiply cube array sizes by 6 +- d3d12: Set PIPE_CAP_MAX_TEXTURE_UPLOAD_MEMORY_BUDGET +- dzn: Set factory flags before creating device +- d3d12: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT +- include: Add WGL version of GL interop extensions +- mesa, dri2: Move interop helpers from dri2 to state tracker +- include: Add a flush interop method +- mesa: Make fence_sync not static +- mesa/st: Split interop object lookup from export +- mesa/st: Implement the new flush method +- dri: Implement the new flush method +- glx: Implement the new flush method +- egl/dri2: Implement the new flush method +- wgl: Implement interop methods +- egl/wgl: Implement interop methods +- include: Add driver data to v2 of mesa_glinterop_device_info +- gallium: Add screen methods for driver-private data on interop interface +- mesa/st: Query driver for interop data +- d3d12: Hook up driver-private interop data + +Jessica Clarke (1): + +- panfrost/blend: Fix invalid const values leading to NIR validation errors + +Joan Bruguera (1): + +- nv50/ir/nir: ignore sampler for TXF/TXQ ops. + +John Brooks (5): + +- radv: Add get_addrlib function to radv_radeon_winsys +- vulkan: Introduce vk_format_is_block_compressed function +- radv: Only apply mipmap view adjustments to block compressed images +- radv: Fix corrupted mipmap copies on GFX9+ +- radv: Fix mipmap views on GFX10+ + +Jonathan (3): + +- gallium/u_threaded: buffer subdata merging (v2) +- gallium/u_threaded: Prepare for buffer sharedness tracking +- gallium/u_threaded: buffer sharedness tracking + +Jonathan Gray (2): + +- iris: check i915 features after hw gen +- util: include sys/time.h for timespec functions + +Jordan Justen (15): + +- iris: Drop extra file-descriptor dup in iris_drm_screen_create() +- intel/pci_ids: Update ADL-S strings +- intel/pci_ids: Add 0x468b ADL-S PCI-id +- intel/pci_ids: Update ATS-M device names +- intel/pci_ids: Update DG2 device names +- intel/pci_ids: Add dg2 0x5698 pci-id +- intel/pci_ids: Drop non-upstream dg2 pci-ids +- intel/compiler: Use builder to allocate fs regs for gs control data bits +- intel/devinfo: Add MTL platforms enums and intel_device_info_is_mtl() +- intel/l3: Use L3 full-way allocation setting for gfx12.5 (DG2, MTL) +- anv/meson: Use anv_flags and anv_cpp_flags in genX compiles +- meson: Deprecate vulkan-rt-drivers intel +- meson: Define with_intel_vk_rt based on with_intel_clc +- intel/compiler: Broadcast lower code should check 64-bit int support +- ci/d3d12: Update quick_shader results with 24 fixes from !19128 + +Jose Maria Casanova Crespo (4): + +- CI: Igalia farm is down +- Revert "CI: Igalia farm is down" +- vc4: consolidate shader-db output +- v3d: Minor fixes on sand8 blit based on sand30 modifications + +Joshua Ashton (2): + +- radv: Remove workarounds for D3D9 feedback loops +- freedreno: Disable 8bpp_ubwc on a6xx gen2 + +José Fonseca (1): + +- util: Add macro util_get_cpu_caps in u_cpu_detect.c for avoid accidentally call it in u_cpu_detect.c + +José Roberto de Souza (34): + +- intel: Simply intel_gem_create_context_engines() +- anv: Remove duplicated memset() in physical device creation +- anv: Remove anv_app_info +- anv: Free vmas in case device creation fails in pthread_mutex_init(&device->mutex +- anv: Do not duplicate intel_device_info memory in each logical device +- anv: Only wait for queue sync if execbuf was properly executed +- anv: Do not copy garbage to batch_bo +- anv: Nuke anv_execbuf_init() +- anv: Group all context operations during device creation +- anv: Nuke dead code +- anv: Return earlier in anv_gem_get_tiling() when not supported +- intel/compiler/fs: Fix compilation of shaders with SHADER_OPCODE_SHUFFLE of float64 type +- intel/compiler/fs: Use DF to load constants when has_64bit_int is not supported +- vulkan_hasvk: Nuke dead code around I915_ENGINE_CLASS_COMPUTE +- anv: Nuke cmd_parser_version +- intel/dev: Adjust prefetch_size values for MTL engines +- intel: Share code to read render timestamp +- intel: Make engine related functions and types not i915 dependent +- intel/dev: Split i915 specific parts of intel_get_device_info_from_fd() +- anv: Move fetch of i915 physical device parameters +- anv: Split i915 specific parts of anv_queue_submit_simple_batch() +- anv: Use Vulkan types for priority as much as possible +- anv: Split the debug part of anv_queue_exec_locked() +- intel: Convert missing i915 engine types to intel +- intel: Convert i915 engine type to intel in tools/ common/ and ds/ +- intel: Add and use intel_engines_class_to_string() +- hasvk: Nuke code around local memory +- hasvk: Fix build around intel_measure_state_changed() call +- iris: Fix enablement of protected contexts +- intel/perf: Use intel_device_info functions to compute subslice and eu totals +- iris: Nuke pci_id from iris_screen +- iris: Drop duplicated errno handling in iris_bo_wait() +- iris: Do not export iris_bo_wait() +- iris: Set priority for replaced engine context + +Juan A. Suarez Romero (3): + +- vc4/simulator: use i915/amd ioctls for BO +- vc4: properly restore vc4 debug option +- vc4: store tex sampler in proper register + +Julia Tatz (1): + +- zink: Advertise PIPE_CAP_NATIVE_FENCE_FD + +Juston Li (6): + +- venus: Enable VK_EXT_texture_compression_astc_hdr +- venus: sync venus protocol headers for VK_EXT_primitive_topology_list_restart +- venus: add support for VK_EXT_primitive_topology_list_restart +- venus: sync to latest venus protocol headers +- venus: add support for VK_EXT_multi_draw +- venus: use buffer cache for vkGetDeviceBufferMemoryRequirements + +Kai Wasserbäch (22): + +- chore(deps): clover: raise the minimum LLVM version to 11.0.0 +- fix(FTBFS): meson: raise C++ standard to C++17 +- chore(docs): rusticl: improve list of build dependencies +- fix: util/format: unused variable ‘desc’ [-Wunused-variable] +- fix: nir: unused variable ‘else_block’ [-Wunused-variable] +- fix: ac/llvm: unused variable ‘offset’ [-Wunused-variable] +- fix: mesa: unused variable ‘ret’ [-Wunused-variable] +- fix: mesa/st: variable ‘texobj’ set but not used [-Wunused-but-set-variable] +- fix: mesa/st: unused variable ‘src’ [-Wunused-variable] +- fix: gallivm: variable ‘type_kind’ set but not used [-Wunused-but-set-variable] +- fix: r600/sb: unused variable ‘repdep2’ [-Wunused-variable] +- fix: r600/sb: unused variable ‘fop’ [-Wunused-variable] +- fix: r600/sb: unused variable ‘r’ [-Wunused-variable] +- fix: r600/sfn: variable ‘opinfo’ set but not used [-Wunused-but-set-variable] +- fix: r600/sb: warning: unused variable ‘{b,nl}’ [-Wunused-variable] +- fix: r600/sfn: unused variable ‘splitpos’ [-Wunused-variable] +- fix: r600/sfn: unused variable ‘{splitpos,param}’ [-Wunused-variable] +- fix: r600/sfn: variable ‘fail’ set but not used [-Wunused-but-set-variable] +- fix: r600/sfn: unused variable ‘spi_sid’ [-Wunused-variable] +- fix: iris: unused variable ‘devinfo’ [-Wunused-variable] +- fix: zink: unused variable ‘intr’ [-Wunused-variable] +- fix: frontends/va: unused variable ‘max_pipe_hevc_slices’ [-Wunused-variable] + +Karmjit Mahil (30): + +- pvr: Fix bo mapping on alloc with PVR_BO_ALLOC_FLAG_CPU_ACCESS. +- pvr: Compete pvr_calc_fscommon_size_and_tiles_in_flight(). +- pvr: Fix calculation in rogue_max_compute_shared_registers(). +- pvr: Change indentation from tab to spaces for xml files. +- pvr: Set descriptor dirty flag based on other flags. +- pvr: Finish setting up job resolve info. +- pvr: Remove unimplemented push descriptor code. +- pvr: Add depth_bias_array handling on dbenable. +- pvr: Add clear program in pvr_device. +- pvr: Add static clear control stream templates in pvr_device. +- pvr: Add static clear VDM state in pvr_device. +- pvr: Add graphics pipeline barrier handling. +- Revert "pvr: Make pvr_cmd_pack() macro clearly internal" +- pvr: Implement clear ppp state emission from template. +- pvr: Add mid fragment pipeline barrier if needed. +- pvr: Handle VK_CULL_MODE_FRONT_AND_BACK. +- pvr: Emit cs words for load op on vkCmdBeginRenderPass(). +- pvr: Add basic skeleton for event sub cmd. +- pvr: Remove struct pvr_emit_state and emit header directly. +- pvr: Add csb helpers macros to write into raw buffer. +- pvr: Make control stream word writing stricter. +- pvr: Complete pvr_emit_ppp_state(). +- pvr: Add assert for texturestate being 0 in when emitting ppp state. +- pvr: Add EMIT_MASK in pvr_emit_ppp_state(). +- pvr: Fix possible seg fault on csb copy. +- pvr: Fix overflow before widen warning for rgn headers size calculation. +- pvr: Handle pipeline barrier vk_sync. +- pvr: Remove outdated comments. +- pvr: Add PBE accum format size in bytes. +- pvr: Change pvr_get_hw_clear_color() to pack based on accum formats. + +Karol Herbst (189): + +- printf: extract clovers printf impl +- printf: add some unit tests +- nir: serialize printf metadata for CL kernels +- nir/lower_images: extract from clover +- nir: extract the clc inline sampler dedup pass from clc +- microsoft/clc: drop inline sampler reordering +- clc: undefine spirv defs to work around LLVMs headers +- vtn: silence warning about linkage +- gallium: mark the input data as const in pipe_grid_info +- util/memstream: insert null terminator on windows +- ci: update fails list +- ci: bumping all tags to make sure we don't have hidden fails +- nvc0: limit max global and alloc size +- ci: update CI to reflect clovers LLVM version bump +- nv50: fix code heap after pipe_shader_enum change +- nouveau: use the contexts pushbuf and client where possible +- nouveau/mm: make code thread safe +- nouveau/buffer: simplify uses of nouveau_fence_work +- nouveau/fence: rework nouveau_fence_emit so we can call it on emitted fences +- nouveau: move nouveau_context initialization to common code +- nouveau: wrap nouveau_bo_map +- nouveau: wrap nouveau_bo_wait +- nouveau: wrap all nouveau_pushbuf_space calls +- nouveau: wrap nouveau_pushbuf_validate +- nouveau: wrap nouveau_pushbuf_refn +- nouveau: use PUSH_KICK instead of nouveau_pushbuf_kick +- nouveau/fence: make the fence struct part of the fence API +- nv50: remove nouveau_fence_signalled prior nouveau_fence_wait +- nv50: remove nv50_bufctx_fence call in vbo_kick_notify +- nouveau/fence: per context fence +- nouveau: per context client and pushbuf +- nouveau: make fencing race free +- nvc0: make state handling race free +- nv50: race free state tracking +- nv50/ir: fix OP_UNION resolving when used for vector values +- nv50: properly flush the TSC cache on 3D +- rusticl: added +- rusticl: finish implementing clBuildProgram +- rusticl/util: add static_assert macro +- rusticl: implement clFinish and clFlush +- rusticl: implement clEnqueueReadBuffer +- rusticl/mem: support ops on subbuffers +- rusticl/kernel: basic implementation +- rusticl: nir bindings +- rusticl: translate spirv to nir and first steps to kernel arg handling +- rusticl/kernel: more clGetKernelWorkGroupInfo props +- rusticl/kernel: clGetKernelWorkGroupInfo allows a NULL device +- rusticl/mem: use helper context for COPY_HOST_PTR buffers +- rusticl/event: wrong but non crashing impl of clWaitForEvents +- rusticl: hack for CL 3.0 +- rusticl/mesa: add fencing support +- rusticl/event: proper eventing support +- rusticl/kernel: implement clCreateKernelsInProgram +- rusticl/kernel: implement clEnqueueTask +- rusticl/program: undefine __IMAGE_SUPPORT__ if images are unsupported +- rusticl/queue: fix clReleaseCommandQueue +- rusticl/mem: implement clCopyBuffer +- rusticl/mem: implement clFillBuffer +- rusticl/event: implement marker and barrier +- rusticl/mem: add clEnqueueMigrateMemObjects stub +- rusticl/program: support compiling libraries +- rusticl: implement clUnloadPlatformCompiler +- rusticl/api: add param to query which contains application provided values +- rusticl/program: implement clCreateProgramWithBinary +- rusticl/event: add fake impl of clGetEventProfilingInfo +- rusticl/kernel: implement CL_KERNEL_COMPILE_WORK_GROUP_SIZE +- rusticl/mem: finish clEnqueueMigrateMemObjects +- rusticl/kernel: run driver requested lowering passes +- rusticl/kernel: add support for offsets +- rusticl/kernel: add missing preprocessor definitions +- rusticl: advertize CL 1.1 and CL 1.2 extensions +- rusticl/context: implement clSetContextDestructorCallback +- rusticl/kernel: implement clCloneKernel +- rusticl/device: set required double fp config values +- rusticl/device: advertize atomic caps +- rusticl: claim support for generic pointers +- rusticl/program: add il stubs +- rusticl: add svm func stubs +- rusticl/icd: add more func pointers +- rusticl/kernel: report SIMD width as work group sizes +- rusticl/kernel: sweep nir to reduce peak memory usage +- rusticl/device: expose cles_khr_int64 for compatible embedded devices +- rusticl/mem implement the memory \*WithProperties API +- rusticl/pipe: add clGetPipeInfo stub end return CL_INVALID_MEM_OBJECT +- rusticl/program: add stubs for program ctors and dtors +- rusticl/kernel: add stub for clGetKernelSubGroupInfo +- rusticl/event: timeout wait on condvar to abort on reaped worker threads +- rusticl: add support for printf +- rusticl/spirv: add print method +- rusticl/mesa: support mapping textures +- rusticl/mem: support read/write/copy ops for images +- rusticl/memory: rework mapping tracking +- rusticl/mem: implement maping images +- rusticl/mem: implement fill image +- rusticl/mem: implement copy image +- rusticl/mem: implement clCreateImage2D and 3D +- rusticl/mem: implement copies between buffers and images +- rusticl/mesa/context: un Arc the PipeContext +- rusticl/mem: implement clCreateSamplerWithProperties +- rusticl/kernel: support for images +- rusticl/kernel: inline samplers +- rusticl/kernel: lower memcpy +- rusticl/device: add retain/release callbacks for luxmark v4 +- rusticl/device: implement cl_khr_3d_image_writes +- rusticl/kernel: set CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE +- rusticl/kernel: run some more opt passes +- rusticl: get rid of a few clones +- rusticl/memory: don't map more than necessary for copy operations +- rusticl/device: fix api consistency_device_and_host_timer test +- rusticl/queue: implement missing CL 3.0 bits +- rusticl/device: fix compiler features_macro +- rusticl/mem: add user_ptr fallback shadow buffer +- rusticl/mesa: make resource_from_user_memory an optinal feature +- rusticl/kernel: implement image_format and image_order +- rusticl/mem: fix IMAGE1D_BUFFER +- rusticl/mem: only write pitch when required +- rusticl: port to Rust 2018 +- rusticl: kernel caching +- rusticl/kernel: prepare for nir caching +- rusticl/kernel: cache the nir as well +- rusticl: fix compiler features_macro +- rusticl/kernel: optimize local size +- rusticl: the CTS is a piece of shit +- rusticl/kernel: implement CL_KERNEL_ATTRIBUTES +- rusticl/program: some boilerplate code for SPIR-V support +- rusticl/memory: kernel read_write images prep work +- rusticl: disable fp64 support +- rusticl/device: allow overwriting the device_type via env +- rusticl/program: parse quoted paths in args +- rusticl/kernel: fix local buffers +- rusticl/device: report mesas version for CL_DRIVER_VERSION +- rusticl/icd: implement clGetExtensionFunctionAddressForPlatform +- rusticl/icd: add some way of debugging CL function calls +- rusticl/kernel: use real references for arguments +- rusticl: proper PIPE_MAP flags for internal maps +- rusticl: call glsl_type_singleton_init_or_ref +- rusticl/program: some more API validation +- ci: rusticl with llvmpipe +- rusticl: add README file +- rusticl/device: print error when libclc fails to load +- rusticl/mem: return errors for OOB accesses +- rusticl/device: fix custom device detection +- rusticl/mem: fix image OOB checks +- rusticl/mem: align fill pattern buffer to 4 bytes +- rusticl: limit global mem to 2GB +- rusticl/kernel: assign locations before passing the nir to drivers +- ac/llvm: support non 32 bit sized workgroup ids +- ac/llvm: fix load_const for vectors with more than 4 elements +- ac/llvm: fix load/store_shared for vectors with more than 4 elements +- ac/llvm: fix load_ubo for vectors with more than 4 elements +- radeonsi: stop vectorizing unpack_32_2x16_split +- iris: use images_used instead of num_images +- iris: speed up walking global bindings +- iris: bump IRIS_MAX_GLOBAL_BINDINGS to 128 +- rusticl/kernel: preserve fp16 denorms to fix vload/vstore_half +- rusticl: add support for coherent resources +- rusticl/mesa: add bx() method to PipeTransfer +- rusticl: rework resource mappings a little +- rusticl: add helper ctx wrapper for coherent and direct mapping +- rusticl/mem: rewrite the (un)mapping code +- lp: claim being UMA +- rusticl/mem: propper CL_MEM_ALLOC_HOST_PTR support +- radeonsi: fail creating textures from user memory +- nir/lower_cl_images: set binding +- radeonsi: lower hadd and fisnormal +- rusticl: remove blit code +- rusticl: add RUSTICL_ENABLE to have a global way of enabling devices +- docs: Add documentation for Rusticl's env variables +- ci/llvmpipe: update to new RUSTICL_ENABLE var +- zink: handle more opcodes for CL +- zink: handle f2f16_rtz +- zink: fix spirv_builder_spec_const_uint +- aux/trace: add set_global_binding +- rusticl: force BIND_LINEAR on staging resources +- rusticl/mem: can only map staging textures directly +- rusticl: add small bitset impl +- rusticl/nir: add reads_sysval wrapper +- rusticl/kernel: lower system values before gathering info +- rusticl/kernel: add work_dim lowering +- zink: remove leftover work_dim lowering code +- rusticl/kernel: fix more 32 bit problems +- nir/algebraic: add 8 and 64 bit urol and uror lowering +- nir/algebraic: support CL vector accessors +- nir/algebraic: generalize vector_cmp lowering +- nir/algebraic: add vec8/16 cmp lowering +- iris: invalidate sysvals if grid dimension changes +- glsl: fix buffer texture type +- rusticl/device: put space at the end of CL_DEVICE_VERSION +- nir/lower_int64: fix shift lowering + +Kenneth Graunke (53): + +- intel/compiler: Use named NIR intrinsic const index accessors +- iris: Pass devinfo to iris_resource_level_has_hiz() +- iris: Enable HiZ for non-8x4 aligned miplevels on Icelake and later +- iris: Always retain ISL_AUX_USAGE_HIZ_CCS_WT in texture aux usage +- iris: Clean up iris_sample_with_depth_aux() +- intel/compiler: Drop variable group size lowering +- iris: Fix PIPE_CAP_UMA +- iris: Use linear for exported resources if we can't convey tiling +- intel/compiler: Change dg2_plus check to devinfo->verx10 >= 125 +- iris: Delete unused iris_screen::aperture_bytes field +- iris: Don't print out XXX messages if resource creation fails +- iris: Fall back if iris_map_copy_region can't create a staging resource +- iris: don't create staging resources larger than half the aperture +- crocus: Don't print out XXX messages if resource creation fails +- crocus: Fall back if iris_map_copy_region can't create a staging resource +- crocus: Fix memory leaks on iris_resource_create failure paths +- anv: Fail to create a device on ver < 9 +- anv: Drop checks for version 8 or 9 +- anv: Delete image param support. +- anv: Delete batch buffer growing code. +- anv: Delete shader constants UBO from descriptor sets +- anv/tests: Don't use relocations in a test case +- anv: Delete "back" allocation from state pool +- anv: Delete relocation support from anv_block_pool +- anv: Delete "back" allocation from anv_block_pool +- anv: Drop state pool relocation munging +- anv: Delete use_relocations flag +- anv: Delete softpin checks +- anv: Delete anv_reloc_list_add() +- anv: Delete wrapper BOs for relocations +- anv: Delete relocation support from batch submission +- anv: Delete has_a64_buffer_access flag +- anv: Delete has_bindless_images and has_bindless_samples flags +- anv: Make a helper function for pinning a state pool's BOs +- anv: Drop offset from anv_reloc_list_append +- anv: Inline write_reloc into the only remaining caller +- anv: Remove anv_batch_emit_reloc and just open-code it +- intel/compiler: Use subgroup invocation for ICP handle loads +- iris: Ignore aux for copy_region source if there's no unresolved color +- intel/compiler: Use an existing URB write to end TCS threads when viable +- st/mesa: Optionally call nir_vectorize_tess_levels() +- intel/compiler: Vectorize gl_TessLevelInner/Outer[] writes +- intel/genxml: Add XY_FAST_COLOR_BLT +- blorp: Make blitter_supports_aux accessible from multiple files. +- blorp: Implement blitter clears via XY_FAST_COLOR_BLT +- blorp: Fix typo in blorp_xy_block_copy_blt +- Revert "intel/compiler: Vectorize gl_TessLevelInner/Outer[] writes" +- iris: Add miplevel parameters to iris_resource_texture_aux_usage +- intel/compiler: Vectorize gl_TessLevelInner/Outer[] writes [v2] +- iris: Use nir_intrinsic_load_global_constant for large constants +- intel/compiler: Run nir_opt_large_constants before scalarizing consts +- st/mesa: Let nir_opt_access() infer non-readable +- nir: Drop infer_non_readable option for nir_opt_access() + +Konrad Kleine (1): + +- Update docs/drivers/llvmpipe.rst + +Konstantin Kharlamov (5): + +- loader/dri3: simplify check for reply +- loader/dri3: remove a no-op free call +- meson: remove source_root() call in nir compiler path +- meson: remove source_root() call in main meson.build +- .mailmap: change spelling for Constantine Kharlamov + +Konstantin Seurer (63): + +- radv/nir_lower_abi: Use instructions_pass +- radv: Move accel struct structs to bvh/bvh.h +- radv: Move radv_acceleration_structure +- radv: Remove acceleration structure host builds +- radv: Always emulate fmin/fmax +- radv: Remove accel_struct_build +- radv: Remove unused push constant structs +- radv: Add create_build_pipeline_spv helper +- radv: Add the basics for GLSL bvh kerrnels +- radv: Add a GLSL morton kernel implementation +- radv: Switch to the GLSL morton implementation +- radv: Add a GLSL internal kernel implementation +- radv: Switch to the GLSL internal implementation +- radv: Add a GLSL leaf kernel implementation +- radv: Switch to the GLSL leaf implementation +- lavapipe: Remove st_shader_stage_to_ptarget +- radv: Fix stack size calculation with stage ids +- radv: Inline bvh build headers +- radv/ci: Remove host build related fails +- lavapipe: Set ss_dirty in emit_state +- radv: Advertise subgroup ops for rt stages +- vulkan: Add common physical device management +- radv: Use the common physical device enumeration +- anv: Use the common physical device enumeration +- turnip: Use the common physical device enumeration +- lvp: Use the common physical device enumeration +- panvk: Use the common physical device enumeration +- v3dv: Use the common physical device enumeration +- radv: Proper handling for inactive instance nodes +- radv: Deduplicate push constant structs +- radv/rra: Map accel struct VAs to handles +- radv/rra: Remove redundant bounds validation +- radv: Make the radv_buffer_get_va parameter const +- radv/rra: Replace aliasing assert with a warning +- radv: Explicitly store the VA of accel structs +- radv: Cleanup radv_GetInstanceProcAddr +- radv: Add a common traversal build helper +- radv/rq: Use the common traversal helper +- radv/rtpso: Use the common traversal helper +- radv: Use scalar layout for BDA references +- radv: Add and use AS and scratch layout structs +- radv: Fix incorrect build info indexing +- radv: Use cache_uuid for accel struct compatibility +- radv: Remove main_loop_case_visited +- radv/rra: Transcode nodes recursively +- radv: Rename node_internal to node_box32 +- radv: Add radv_bvh_node_box16 +- radv: Use half floats for box16 coords +- radv/rra: Handle box16 nodes +- radv/rra: Calculate bvh size requirements recursively +- radv: Remove create_accel_build_shader +- radv/rra: Fix dumps in the case of aliasing +- radv/rra: Validate before gathering bvh info +- radv/rra: Add basic header validation +- radv/rra: Continue dumping accel structs if validation fails +- radv/rra: Use the accel struct type for header validation +- radv/rt: Fix setting tmax for opaque AABBs +- radv/rt: Load instance id and custom index on demand +- radv/rt: Set vars.arg in the traversal shader +- radv/rt: Restore prev barycentrics when rejecting hits +- radv/rra: Fix copying accel structs that were not built yet +- radv/ray_queries: Fix AABB handling +- radv/rt: Check space before emitting descriptors + +Kostiantyn Lazukin (1): + +- vulkan/cmd_queue: Do not generate unreachable vk_free_* calls. + +Kuixi Ren (1): + +- radeonsi/vcn: Add ability to encode with ltr + +Laurent Bigonville (1): + +- Try to fix FTBFS on kfreebsd architecture + +Leandro Ribeiro (9): + +- vulkan/wsi/wayland: move some structs to beginning of code +- vulkan/wsi/wayland: remove unnecessary spaces in struct fields +- vulkan/wsi/wayland: introduce struct wsi_wl_surface +- vulkan/wsi/wayland: take ownership of wsi_wl_surface when creating chain +- vulkan/wsi/wayland: move wl_surface and wl_display from chain to struct wsi_wl_surface +- vulkan/wsi/wayland: remove refcount from struct wsi_wl_display +- vulkan/wsi/wayland: add default dma-buf feedback support +- vulkan/wsi/wayland: add per-surface dma-buf feedback support +- vulkan/wsi/wayland: avoid useless re-allocations when receiving per-surface dma-buf feedback + +Leo Liu (2): + +- meson: add with_gallium_virgl to allow it as VA backend driver +- frontends/va: fix build error for vaSyncBuffer with older VA + +LingMan (10): + +- rusticl: Fix compilation if stdout and/or stderr aren't symbols +- rusticl/bindgen: Use \`allowlist-\*\` instead of \`whitelist-\*\` switches +- docs/rusticl: Document minimum required bindgen version +- rusticl/api: Use iterators in create_program_with_source +- rusticl/api: Drop UTF-8 conversion of input source +- rusticl/api: Fix creating a program if a nul byte is within the specified string length +- rusticl/api: Factor pushing to the Vec out of the if +- rusticl/api: Shrink unsafe block +- rusticl/api: Don't check the program source for nul bytes needlessly +- rusticl/api: Interpret \`lengths\` as a slice of Option + +Lionel Landwerlin (152): + +- anv: fixup PIPE_CONTROL restriction on gfx8 +- intel/ds: track untyped dataport flushes +- intel/fs: store num of resume shaders in prog_data +- intel/fs: fixup simd selection with shader calls +- intel/compiler: document units of brw_ubo_range fields +- intel/nir: specify synchronous value for tracing op +- anv: don't return incorrect error code for vkCreateDescriptorPool +- intel/drm-shim: update shim to support DG2 +- anv: fix GetPipelineExecutableStatistics for ray tracing pipelines +- anv: fixup assertions on lowered storage formats +- anv: fix assert in memory budget code when extension is not supported +- anv: prevent trying to mmap non host visible memory +- anv: remove the LOCAL_MEM allocation bit +- intel/fs: fix load_scratch intrinsic +- intel/fs: fixup scratch load/store handling on Gfx12.5+ +- intel/fs: switch compute push constant loads to LSC +- intel/fs: remove unused opcode +- intel/fs: fixup SEND validation check on overlapping src0/src1 +- intel/fs: switch register allocation spilling to use LSC on Gfx12.5+ +- intel/fs: port block a64/surface messages to use LSC +- intel/fs: bump max SIMD size for A64 atomics with LSC +- intel: add a hasvk vulkan driver +- hasvk: remove entrypoints for gfx9+ +- hasvk: stop advertising Vk 1.3 on non-softpin +- hasvk: remove acceleration structure code +- hasvk: remove ray tracing code +- hasvk: remove mesh code +- anv: silence fedora build warning +- anv: remove support for gfx7/8 +- anv: remove unused gfx7 code +- anv/tests: remove back allocation tests +- anv/hasvk: tweak loading failure messages +- anv: remove non present field in upstream spec +- vulkan: fixup 1.3.226 update +- anv: enable EXT_depth_clamp_zero_one +- hasvk: expose VK_EXT_depth_clamp_zero_one +- anv: add a new NO_LOCAL_MEM allocation flag +- anv: don't export flush_compute_state +- anv: don't export gfx state flushing helper +- anv: combine flushes in Draw/DrawIndexed/DrawIndirectByteCountEXT +- anv: add missing tracepoint +- blorp: defined operations for debug purposes +- intel/utrace: make blorp tracepoints more readable +- anv: trace xfb queries +- anv: clear descriptorsets if AllocateDescriptorSets fails +- anv: add support for EXT_mutable_descriptor_type +- anv: add missing wokraround for texture cache invalidate +- intel/nir/rt: fixup generate hit +- intel/nir/rt: spill/fill the entire ray query data +- intel/nir/rt: remove ray query mem hit writes at initialization +- intel/nir/rt: fix ray query proceed level +- intel/nir/rt: change scratch check validation +- intel/nir/rt: store ray query state in scratch +- intel/fs: fixup a64 messages +- intel/nir/rt: fixup alignment of memcpy iterations +- ci: add python3-ply to debian/fedora images +- ci: disable intel-clc on fedora +- ci: build our own version of the LLVM SPIRV translator +- ci/debian: don't use libclc from the system +- ci: bump llvm to 13 for some builders +- ci: disable intel-clc on debian-vulkan +- anv: remove HDC flush from invalidate bits +- meson: bump required llvm-spirv version with intel-clc +- intel/devinfo: Rename & implement num_dual_subslices +- intel/rt: fix procedural primitive ID access +- intel/nir: reuse rt helper +- intel/fs: take a builder arg for resolve_source_modifiers() +- intel/nir: fixup preserved metadata in rayquery lowering +- intel/nir: fix potential invalid function impl ptr usage +- intel/nir: disable assert on async stack id +- intel/fs: disable split_array_vars on opencl kernels +- genxml: add missing no duplicate anyhit flag +- intel/mi_builder: allow half GP registers for dereferencing +- anv: disable SIMD16 for RT shaders +- anv: add new command buffer space allocation +- anv: setup scratch space correctly for RT shaders +- anv: bump client visible address heap to 32GiB +- anv: use the right dispatch size for tracing shaders +- anv: flag BO for write combine when CPU visible and potentially in lmem +- iris: better error message with GuC loading failures +- intel: add INTEL_DEBUG=capture-all to capture everything upon hang +- pps: enable track_event in intel.cfg +- anv: add grl build dependency on entrypoints +- nir: fix NIR_DEBUG=validate_ssa_dominance +- vulkan/runtime: don't lookup the pipeline disk cache if disabled +- anv: remove unused code +- anv: comment out the Gfx8/9 VB cache key workaround for newer Gens +- anv: limit calls into cmd_buffer_flush_dynamic_state +- anv: optimize 3DSTATE_VF emission +- anv: remove multiple push descriptors +- isl: avoid gfx version switch cases on the hot path +- anv: limit push constant reemission +- anv: track descriptor set layout flags +- anv: initialization pipeline layout to 0s +- anv: add analysis for push descriptor uses and store it in shader cache +- anv: reduce BT emissions & surface state writes with push descriptors +- anv: add a layer for hitman3 +- nir/lower_shader_calls: rematerialize more trivial values +- nir/lower_shader_calls: lower scratch access to format internally +- nir/lower_shader_calls: avoid respilling values +- nir/lower_shader_calls: rematerialize values in more complex cases +- nir/lower_shader_calls: add NIR_PASS_V internally +- nir/lower_shader_calls: cleanup shaders a bit more post split +- nir/lower_shader_calls: add an option structure for future optimizations +- nir/lower_shader_calls: add a pass to trim scratch values +- nir/lower_shader_calls: add a pass to sort/pack values on the stack +- nir/lower_shader_calls: move scratch loads closer to where they're needed +- nir/lower_shader_calls: run opt_cse after lower stack intrinsics +- radv: tweak lower_shader_calls parameters +- anv: enable localized loads for lower_shader_calls +- anv: disable mesh in memcpy +- anv: init major/minor before WSI +- vulkan/wsi/wl: correctly find whether the compositor uses the same GPU +- nir/divergence_analysis: add some missing RT intrinsics +- nir/divergence_analysis: add missing desc_set_address_intel +- intel/clc: assert when libclc shader is not found +- drm-uapi: bump headers +- isl: add new MOCS field for protected buffers +- intel/common: add detection of protected context support +- dri: rename PROTECTED_CONTENT in PROTECTED_SURFACE +- gallium: rename PROTECTED_CONTENT cap into PROTECTED_SURFACE +- egl: Add EGL_EXT_protected_content support +- st/gallium: plumb protected context creation +- iris: handle protected BO creation +- iris: Emit protection & session ID on protected command buffers +- iris: enable protected contexts +- intel/fs: require UNDEFs register offsets to be aligned to REG_SIZE +- intel/fs: make split_virtual_grfs deal with partial undefs +- intel/fs: reduce liveness of variables in lowering passes +- intel/fs: use fs implementation of dump_instructions +- intel/compiler: don't allocate compaction arrays on the stack +- anv: remove shader fp64 inspection after parsing +- anv: Reduce RHWO optimization (Wa_1508744258) +- anv: fix missing VkPhysicalDeviceExtendedDynamicState3PropertiesEXT handling +- anv: fixup invalid enum for nir environment +- anv: split internal surface states from descriptors +- anv: bump pool bucket max allocation size +- anv: get rid of ilog2_round_up +- intel/perf: allocate cleared counter infos +- intel/perf: fix B/C counters accumulation in non query mode +- nir/lower_explicit_io: fix metadata preserve +- nir/lower_shader_calls: update metadata before validation +- nir/lower_shader_calls: wrap only jumps rather than entire code blocks +- Revert "nir/lower_shader_calls: put inserted instructions into a dummy block" +- intel/fs: put scratch surface in the surface state heap +- anv: fix 3d state initialization +- anv: ensure CPS is initialized when KHR_fragment_shading_rate is disabled +- anv: fixup context initialization on DG2 +- intel/fs: improve Wa_22013689345 workaround +- blorp: support negative offsets in addresses +- anv: generate correct addresses for state pool offsets +- nir/divergence: add missing btd_shader_type_intel + +Liviu Prodea (5): + +- d3d12/dzn/spirv2dxil: Require version library +- Microsoft clc: strip lib prefix Otherwise OpenCLon12 ICD can't load it +- meson: Microsoft / maybe Intel CLC need the all-targets workaround just like clover +- meson: Only draw with llvm depends on native directly Tests, softpipe or AMD drivers don't depend on it directly +- clc/clover: Link clang statically when shared-llvm is disabled + +Lucas Stach (38): + +- etnaviv: properly check number of layers in surface creation +- etnaviv: fix TS buffer allocation for 3D textures +- etnaviv: allow 3D textures with TS in transfer +- etnaviv: don't expose array and 3D texture support on pre-halti GPUs +- etnaviv: expose ARB_draw_instanced +- etnaviv: mark instanced draw extensions as supported in docs/features.txt +- etnaviv: move checking for MC2.0 for TS into screen init +- etnaviv: use linear PE rendering only on properly aligned surfaces +- etnaviv: add debug option to disable linear PE feature +- etnaviv: fill alpha channel for DXT1_RGB textures +- etnaviv: don't use TS with multi-layer resources +- etnaviv: texture-desc: sample 1D textures using 2D mode +- etnaviv: texture-desc: drop superfluous condition +- etnaviv: rewrite sampler TS check +- etnaviv: slim down etna_shader_key +- etnaviv: pass shader key by reference +- etnaviv: properly reference flush_resources +- etnaviv: move etna_layout_multiple into etnaviv_resource.c +- etnaviv: assert valid layout in etna_layout_multiple +- etnaviv: compute linear resource Y alignment in etna_layout_multiple +- etnaviv: handle compressed texture formats in etna_layout_multiple +- etnaviv: increase alignment for MSAA resources +- etnaviv: rs: fix MSAA alignment adjustment +- etnaviv: rs: try to find exact format match first +- etnaviv: properly size TS buffer for MSAA resources +- etnaviv: set LOGIC_OP_UNK24 for MSAA rendering on SMALL_MSAA GPUs +- etnaviv: disable PE_COLOR_FORMAT_OVERWRITE with MSAA +- etnaviv: blt: scale operations by MSAA mode +- etnaviv: blt: try to find exact format match first +- etnaviv: update headers from rnndb +- etnaviv: fix late Z with MSAA active +- etnaviv: fix shader register control with MSAA +- etnaviv: switch to late Z when linear PE is used +- etnaviv: fix tile status interaction with write mappings +- etnaviv: always use RS align when GPU has TEXTURE_HALIGN feature +- etnaviv: rs: fix blits with insufficient alignment for dual pipe operation +- etnaviv: blt: use correct TS offset in clear operations +- etnaviv: fix wrong surface TS clear size + +Luis Felipe Strano Moraes (8): + +- anv: fix FTBFS on grl due to changes in clang 15 +- anv: reword info flag in intel_clc's getopt to avoid clash +- anv: add missing separator to help for intel_clc +- anv: fixing typo on description of output flag for intel_clc +- anv: added proper handling for input argument in intel_clc +- anv: adding parsetab.py to the .gitignore for grl +- meson: simplified meson for enabling ray-tracing on Intel +- meson: only enable intel-clc for x86_64 builds + +M Henning (1): + +- nv/nir: Set ssbo CacheMode from intrinsic access + +Marcin Ślusarz (53): + +- intel/compiler: fix mesh urb write regression +- nir/lower_task_shader: print shader after each step +- intel/compiler: add support for non-zero base in [load|store]_shared intrins +- Revert "nir/lower_task_shader: don't use base index for shared memory intrinsics" +- anv: disable task redistribution +- spirv, compiler: add "bool nv" to shader_info.mesh +- intel/compiler: implement EXT_mesh_shader +- anv: check EXT_mesh_shader whenever NV_mesh_shader is checked +- anv: replace VK_SHADER_STAGE_[TASK|MESH]_BIT_NV with VK_SHADER_STAGE_[TASK|MESH]_BIT_EXT +- anv: implement EXT_mesh_shader +- anv: implement draw calls for EXT_mesh_shader +- anv: enable EXT_mesh_shader +- anv: fix emission of primitive replication packet for mesh stage +- nir: add uses_wide_subgroup_intrinsics to task/mesh shader_info +- anv: add support for anv_assume_full_subgroups to task & mesh stages +- anv: small cleanup of anv_graphics_pipeline_compile +- nir, anv, hasvk, radv: pull uses_wide_subgroup_intrinsics into shader_info +- intel/compiler: remove second shading rate lowering for mesh +- intel/compiler: print shader after successful brw_nir_lower_shading_rate_output +- intel/compiler: use nir_lower_task_shader pass +- nir/lower_task_shader: lower small stores & loads to shared when requested +- intel/compiler/task: use shared memory for small task payload loads & stores +- intel/compiler: refactor brw_nir_lower_mem_access_bit_sizes +- intel/compiler: add support for 8/16 bits task payload loads +- radv: use nir_shader_instructions_pass in radv_nir_lower_ycbcr_textures +- iris: remove invalid nir_metadata_preserve from iris_fix_edge_flags +- crocus: remove invalid nir_metadata_preserve from crocus_fix_edge_flags +- glsl: use nir_shader_instructions_pass in gl_nir_lower_atomics +- glsl: use nir_shader_instructions_pass in gl_nir_lower_images +- glsl: use nir_shader_instructions_pass in gl_nir_lower_samplers_as_deref +- nir: use nir_shader_instructions_pass in nir_lower_alu +- nir: use nir_shader_instructions_pass in nir_lower_bool_to_bitsize +- nir: use nir_shader_instructions_pass in nir_lower_bool_to_float +- nir: use nir_shader_instructions_pass in nir_lower_bool_to_int32 +- nir: use nir_shader_instructions_pass in nir_lower_64bit_phis +- nir: use nir_shader_instructions_pass in nir_lower_clamp_color_outputs +- nir: use nir_shader_instructions_pass in nir_lower_clip_disable +- nir: use nir_shader_instructions_pass in nir_lower_clip_halfz +- nir: use nir_shader_instructions_pass in nir_lower_drawpixels +- nir: use nir_shader_instructions_pass in nir_lower_fb_read +- nir: use nir_shader_instructions_pass in nir_lower_frexp +- nir: use nir_metadata_none instead of its value +- nir: use nir_shader_instructions_pass in nir_lower_interpolation +- nir: use nir_shader_instructions_pass in nir_lower_samplers +- nir: use nir_shader_instructions_pass in nir_split_var_copies +- nir: use nir_shader_instructions_pass in nir_split_per_member_structs +- intel/compiler: fix loading of draw_id from task & mesh payload +- anv: add support for mesh shading in INTEL_MEASURE +- intel/ds: add new category/stage for draw mesh events +- anv: add mesh shading tracepoints +- intel/genxml: fix width of 3DSTATE_TASK_CONTROL.MaximumNumberofThreadGroups +- anv: set 3DSTATE_[MESH|TASK]_CONTROL.MaximumNumberofThreadGroups +- anv: program 3DSTATE_MESH_DISTRIB with the recommended values + +Marek Olšák (135): + +- nir: add nir_intrinsic_image_samples_identical +- nir: add nir_intrinsic_image_descriptor_amd +- nir: add nir_texop_descriptor_amd +- nir: add shader_info::uses_resource_info_query for txs, levels, samples, etc. +- ac/llvm: implement nir_intrinsic_image_deref_samples_identical +- ac/llvm: implement nir_intrinsic_image_deref_descriptor_amd +- ac/llvm: implement nir_texop_descriptor_amd +- ac/nir: add ac_nir_lower_resinfo +- radeonsi,radv: run ac_nir_lower_resinfo +- ac/llvm: remove all resinfo code now that it's lowered +- radeonsi: implement a non-scaled compute blit+resolve and use it on gfx11 +- radeonsi: don't assume that TC_ACTION_ENA invalidates L1 cache on gfx9 +- radeonsi/ci: update failing tests on navi21 +- radeonsi: fix a regression due to reordering PIPE_SHADER_* +- ac/llvm: handle external textures in ac_nir_lower_resinfo +- radeonsi: merge both fail paths in si_set_vb_descriptor +- radeonsi: add vertex buffers into the BO list in set_vertex_buffers +- radeonsi: remove vb_descriptors_gpu_list only used for debugging +- radeonsi: remove temporary si_context::vb_descriptor_user_sgprs +- radeonsi: use si_cp_dma_prefetch_inline for prefetching VBO descriptors +- radeonsi: use do..while loops and other cosmetic changes in display list path +- ttn: set the correct sampler declaration type in the presense of txs and lod +- gallivm: fix TXQ crash with MSAA samplers +- gallivm: initialize texture_unit_offset in emit_size_query +- gallium/u_blitter: remove unused code for integer MSAA resolve +- gallium/u_blitter: fix the has_txf support condition +- gallium/u_blitter: treat Z scaling as scaled blits +- gallium/u_blitter: clean up IMMs in util_make_fs_blit_msaa_gen +- gallium/u_blitter: make nearest filtering emulation using TXF conformant +- gallium/u_blitter: make the bilinear filter for MSAA resolving conformant +- glthread: unbind framebuffers in glDeleteFramebuffers +- glthread: call _mesa_glthread_DeleteBuffers unconditionally +- glthread: track GL_READ_FRAMEBUFFER bindings too +- glthread: track glBindFramebufferEXT, not just glBindFramebuffer +- glthread: add missing code for GL_ARB_sparse_texture +- util/xmlconfig: allow drivers to override option values +- radeonsi: rename stop_exec_on_failure -> allow_context_lost +- radeonsi: allow lost context with aux_contexts +- winsys/amdgpu: terminate process on CS rejection when unrobust context is lost +- winsys/amdgpu: flatten huge if and reorder code in amdgpu_cs_submit_ib +- winsys/amdgpu: change num_rejected_cs to a bool flag +- radeonsi/ci: make the running script easy to use +- Revert "mesa: implement a display list / glBitmap texture atlas" +- mesa: create glBitmap textures while creating display lists +- st/mesa: fix potential use-after-free in draw_bitmap_quad +- ci: update pass/fail results for spec@!opengl 1.0@gl-1.0-dlist-bitmap +- winsys/amdgpu: use cached GTT for command buffers and don't set the 32BIT flag +- ci: disable the freedreno farm. +- radeonsi/ci: add skips of tests not built on Linux +- radeonsi: don't pass num_patches via derived_tess_state, pass it via si_context +- radeonsi: make the primitive type constant with tessellation +- radeonsi: move \*rs to its only use in si_draw +- radeonsi: remove the prim_restart_tri_strips_only option +- radeonsi: move fixing ngg_culling into si_update_shaders +- radeonsi: unify the logic that sets rast_prim +- radeonsi: precompute GS_OUT_PRIM in advance +- radeonsi: set GS_STATE_OUTPRIM and PROVOKING_VTX_INDEX only when they change +- radeonsi: cosmetic changes in si_emit_rasterizer_prim_state +- radeonsi: remove 1 draw packet order codepath, keep the first one +- radeonsi: move patch_vertices-related tessellation updates out of si_draw +- radeonsi: move set_patch_vertices into si_state_shaders.cpp +- ac/gpu_info: handle LPDDR4 and 5 in ac_memory_ops_per_clock +- ac/surface: disallow 256KB swizzle modes on gfx11 APUs +- radeonsi: set VS_OUT_MISC_SIDE_BUS_ENA=1 for clip distance exports on gfx10.3 +- mesa: fix glDrawRangeElementsBaseVertex should be compiled into display list +- glthread: fix draws not compiled into a display list should generate an error +- glthread: generate errors for glGet functions between glBegin/End +- glthread: always sync for glShaderSource because invalid params can crash +- glthread: fix glGetIntegerv(GL_CLIENT_ACTIVE_TEXTURE) +- glthread: work around GL_INVALID_OPERATION with OpenGL ES 1.x draws +- frontend/dri: make the backgroundCallable extension optional +- frontend/dri: sync glthread when calling from the app side +- radeonsi: simplify radeonsi_zerovram implementation +- driconf: disable glthread for DeusEx:MD and F1 2015 due to a perf drop +- radeonsi/ci: add glx@glx-swap-event_async to CI failures for glthread +- radeonsi: don't flush asynchronously for fence_server_signal +- glthread: execute glSignalSemaphoreEXT synchronously +- radeonsi: enable glthread by default +- gallium/u_threaded: add an option for unsychronized create_fence_fd +- mesa: replace ALLOC_PRIMS with persistently-allocated context arrays +- mesa: remove _mesa_draw_gallium_fallback by adapting st_feedback_draw_vbo +- mesa: remove unused code using _mesa_prim +- mesa: clean up st_indirect_draw_vbo interface and callers +- mesa: trivial simplifications in _mesa_reference_buffer_object_ +- mesa: inline _mesa_reference_buffer_object +- mesa: inline _mesa_handle_bind_buffer_gen and correct things +- mesa: restructure bind_buffer_object for better performance +- mesa: remove unused gl_buffer_object::Data and Written +- mesa: reorder and pack gl_buffer_object +- vbo: don't call _glapi_set_dispatch for GL_COMPILE_AND_EXECUTE loopback +- mesa: don't restore the dispatch at the end of glCallList +- mesa: remove unused function _mesa_get_dispatch +- mesa: initialize OutsideBeginEnd directly instead of through Exec +- glapi: rename 'vtxfmt' to 'beginend' to make it clear +- api_hw_select_init_h.py: simplify the code +- mesa: remove deprecated comments +- mesa: rename GL dispatch initialization functions to make the intent clear +- glthread: use GLenum16 for enums, but clamp it to 0xffff to get correct errors +- glthread: use 8-bit GLenum for prim modes where it results in better packing +- glthread,hud: draw per-frame values and expose the number of batches per frame +- glthread: skip glMultMatrixf if it's identity +- mesa: use memcmp instead of floating-point comparisons in glMultMatrixf +- mesa: make glPopMatrix a no-op if the matrix hasn't changed +- radeonsi: rename si_create_multi_fence -> si_alloc_fence +- winsys/amdgpu: fix (enable) preemption for chained IBs +- radeonsi: fix max_dw computation for CS preambles +- gl_marshal.py: remove/simplify parameters +- gl_marshal.py: move the unmarshal table into a separately generated file +- gl_marshal.py: rework how the marshal dispatch table is initialized +- gl_marshal.py: remove the -O1 hack and manual SET_* inlining +- gl_marshal.py: inline functions for readability +- gl_marshal.py: simplify print_sync_call and rename to print_call +- glthread: use a constant expression instead of cmd_size in custom functions +- glthread: add more DrawArrays/Elements variants with fewer fields +- glapi: remove EXT and ARB suffixes from Draw functions +- glthread: demystify Draw function names +- glthread: rewrite CallList merging and do it in the app thread +- gallium/u_threaded: don't call simplify_draw_info redundantly +- gl_marshal.py: C style fixups +- glthread: merge and collapse glBindBuffer calls that unbind and then bind +- glthread remove the unused \*last pointer from unmarshal functions +- glthread: don't sync for glIsEnabled(GL_BLEND, GL_LIGHTING, GL_POLYGON_STIPPLE) +- cso: start without u_vbuf by default if it's not always used +- cso: constify some parameters to remove typecasts +- cso: fix broken optimization for sampler state lookups +- cso: don't destroy CSOs that are saved +- cso: inline more functions because some parameters like key_size are literals +- cso: make memcmp and hash computation use a literal key size for blend state +- driconf: add a workaround for a cursor issue with kwin_wayland +- driconf: add a workaround for Cossacks 3 +- nir: add nir_intrinsic_optimization_barrier_vgpr_amd for LLVM +- radeonsi: force the MSAA resolve shader to use 1 clause for MSAA loads +- radeonsi/gfx11: fix compute scratch buffer - WAVES is always per SE +- st/mesa: suppress async glthread flushing for GLX_EXT_texture_from_pixmap +- st/vdpau: fix interop with GL + +Marek Vasut (1): + +- etnaviv: Use old set of state registers for PE configuration on GC880 + +Mario Kleiner (1): + +- vulkan/wsi/display: Reset connector state in vkReleaseDisplay(). + +Mark Collins (8): + +- tu: Implement VK_EXT_non_seamless_cube_map +- tu: Allocate private memory per-device instead of per-pipeline +- tu: Clamp priority in DRM submitqueue creation +- tu: Expose VK_EXT_tooling_info using common implementation +- tu: Retain allocated CSes in tu_autotune_on_submit +- tu: Optimize hash_renderpass_instance by removing XXH64_update +- tu: Only write \`A6XX_PC_PRIMITIVE_CNTL_0` if changed +- tu: Clean up variable usage in \`tu6_draw_common` + +Mark Janes (6): + +- Revert "anv: Do not copy garbage to batch_bo" +- anv: Track BOs that need a write-combined mapping +- anv: Use WC mapped local memory for block pool BO +- anv: Allocate buffers with write-combined local memory +- anv: compile anv_acceleration_structure.c +- anv: work around improper buffer usage in hitman3 + +Martin Krastev (1): + +- meson: add svga gallium driver to 'auto' group on arm/aarch64 + +Martin Roukala (né Peres) (20): + +- radv/ci: document a recent regression +- radv/ci: move some tests from the vega10 fail to its flake list +- radv/ci: add more tests to the flake list of vega10 +- radv/ci: skip host_write_transfer_src.1048576 on renoir +- radv/ci: bump the console activity timeout of VanGogh to 3 minutes +- radv/ci: uprev boot2container +- radv/ci: disable the POLARIS10 jobs +- radv/ci: disable kabini's vkd3d job +- radv/ci: run vkcts on the two steam decks in parallel +- radv/ci: document an unstable test +- radv/ci: move some tests from the renoir fail to its flake list +- ci/b2c: add support for the new format of CI_RUNNER_TAGS +- radv/ci: bump the job count on navi21 +- radv/ci: run two jobs in parallel to reduce the execution time +- zink: update the RADV expectations +- zink: mark a test as a flake in RADV expectations +- zink/ci: mark another test as fixed after the frontend caching series +- zink/ci: add another subtest to the list of known failures for radv +- Revert "glx: Fix drawable refcounting for naked Windows" +- Revert "glx/dri: Fix DRI drawable release at MakeCurrent time" + +Matt Coster (3): + +- util: Include stddef.h in util/macros.h +- pvr: Add pvr_csb_unpack(). +- pvr: Fix assignment to ISP back_a.sref + +Matt Turner (4): + +- intel/tools: Also look for 'batch' tag +- freedreno/ir3: Don't use the broken idiv lowering +- freedreno/ir3: Use nir_opt_idiv_const +- intel/dev: Set display_ver = 13 on all ADL/RPL/DG2 + +Mauro Rossi (5): + +- util: glsl2spirv.py: ensure '#endif' is printed in new line +- hasvk: fix android build and reported API version +- Android.mk: Fix gnu++14 related build failures +- r600/sfn: allow building with clang 6 (Android 9) +- AOSP: Add intel_hasvk vulkan library suffix + +Max Kellermann (2): + +- gallium/u_threaded: add missing reference counts for draw_multi slots +- gallium/u_threaded: fix offset calculation for draw_multi slots + +Michael Skorokhodov (1): + +- egl: Return EGL_BAD_MATCH for invalid share_list + +Michael Tang (3): + +- microsoft/compiler: Add dxil_logger type and parameter to nir_to_dxil +- nir: add nir_instr_as_str +- microsoft/compiler: Change calls to NIR_INSTR_UNSUPPORTED to log to dxil_logger instead + +Michel Dänzer (6): + +- gallivm: Fix LLVMAtomicRMWBinOpFMax spelling +- lavapipe: Fix float32_atomic_min_max spelling +- winsys/amdgpu: Set RADEON_FLAG_32BIT again +- radeonsi/ci: Test piglit quick_shader profile as well +- Revert "egl/glx: add fallback for zink loading" +- vulkan/wsi/wayland: Set num_modifier_lists = 0 if num_drm_modifiers == 0 + +Mihai Preda (21): + +- gallivm: LLVM-15 opaque pointers: disable LLVMGetElementType(ptr_type) +- gallivm: drop unused "emit_load" in lp_llvm_buffer_member() +- gallium: drop unused macros in draw_llvm.h +- gallivm: fixes for LLVM-15 opaque pointers in lp_bld_nir_aos.c +- gallivm: fixes for LLVM-15 opaque pointers in lp_bld_nir_soa.c +- gallivm: fixes for LLVM-15 opaque pointers in lp_bld_jit_types.c +- gallivm: fixes for LLVM-15 opaque pointers in lp_bld_format_s3tc.c +- gallivm: fixes for LLVM-15 opaque pointers in lp_bld_struct.c +- gallivm: fixes for LLVM-15 opaque pointers in lp_bld_format_soa.c +- gallium/draw: fix LLVM opaque pointer warnings in store_clip() +- gallium/draw: fix LLVM opaque pointer warnings in generate_clipmask() +- gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_fetch_input() +- gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_end_primitive() +- gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_epilogue() +- gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_fetch_input() +- gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_fetch_output() +- gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_store_output() +- gallium/draw: fix LLVM opaque pointer warnings in store_aos() +- gallivm: LLVM opaque pointer fixes in lp_bld_sample.c +- gallivm: LLVM opaque pointers: add lp_build_array_get[_ptr]2 in lp_bld_struct.c +- gallivm: LLVM opaque pointers: use lp_build_array_get_ptr2() in lp_bld_nir_soa.c + +Mike Blumenkrantz (443): + +- zink: handle mutable swapchain images with dmabuf +- zink: store VkFormatFeatureFlags on creation +- zink: use stored format features for blit functionality +- zink: use modifier feature flags during surface creation when necessary +- zink: init cache_put program fence on program creation +- zink: always set vertex dynamic states +- zink: hook up pipeline_library extensions +- zink: change zink_create_gfx_program signature +- zink: break out program primtype->idx conversion function +- zink: reorganize zink_gfx_pipeline_state a little +- zink: set program pipeline array idx earlier in zink_get_gfx_pipeline +- zink: add a graphics pipeline library implementation +- tgsi_to_nir: fix clipdistance store writemask +- tgsi_to_nir: handle compact arrays for clipdistance +- zink: force flush clears on fb change if fb geometry changes +- zink: force a new framebuffer for clear_depth_stencil if the clear region is big +- zink: use maintenance4 +- zink: allow sw loading with D3D_ALWAYS_SOFTWARE for nine +- zink: drop mode_changed check from linewidth/depthbias draw updates +- zink: handle unscaled depth bias from nine +- zink: handle !half_pixel_center +- zink: fix return for PIPE_CAP_DEPTH_CLIP_DISABLE +- zink: explicitly set nir cursor in rewrite_and_discard_read +- zink: handle invalid gl_TexCoord reads +- zink: rewrite all undefined shader reads as 0001 instead of undef +- zink: export PIPE_CAP_MULTISAMPLE_Z_RESOLVE +- zink: support PIPE_QUERY_TIMESTAMP_DISJOINT +- nine: check return on resource_get_handle +- zink: add u_queue.h to kopper header +- zink: demote dmabuf tiling to linear if modifiers aren't supported +- zink: use modifier_aspect to check for modifier plane in zink_resource_get_param +- zink: don't add modifiers if EXT_image_drm_format_modifier isn't present +- zink: add all format modifiers when adding for dmabuf export +- zink: don't fixup sparse texops +- zink: remove an old RGBA4 nvidia workaround +- vulkan: Update the XML and headers to 1.3.224 +- radv: fix return type for meta resolve shaders +- nir/validate: clamp unsized tex dests to 32bit +- nir/validate: add some (light) validation for sampler type matching +- radv: remove stupid conditional from draw path +- radv: force inlining on another draw function +- mesa: fix blending when using luminance/intensity emulation +- mesa: require render target bind for A/L/I in format selection +- mesa/st: add ignore_srgb_decode param to st_convert_sampler +- mesa/st: plumb glsl130_or_later through sampler creation +- mesa/st: use plumbed value for srgb_skip_decode in sampler conversion +- gallium: convert PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE to enum +- gallium: add PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_ALPHA_NOT_W +- util/format: handle SRGB in util_format_luminance_to_red() +- zink: stop modifying samplerview swizzle on base struct +- zink: add some format functions for emulating alpha formats +- zink: reject native blits for emulated alpha formats +- zink: handle emulated alpha format clears +- zink: support emulating alpha formats using new border color quirk +- zink: add a driver workaround for broken L4A4 on nvidia +- mesa: track format swizzles on teximage objects +- mesa/st: use pre-calculated format swizzle for samplerviews +- mesa: track gl_texture_object swizzle internally +- mesa/st: use tracked samplerview swizzle values +- mesa/st: simplify sampler border color swizzling +- zink: remove cached descriptor mode +- zink: remove checks for lazy descriptor mode + templates ext +- zink: remove descriptor vtable +- zink: delete a lot of descriptor code +- zink: move lazy descriptor functions into zink_descriptors.c +- zink: delete unused struct types +- zink: move all types/enums into zink_types.h +- zink: move lazy descriptor data types into zink_types.h +- zink: delete some unused descriptor struct members +- zink: remove descriptor dummy_set +- zink: merge context descriptor data structs +- zink: merge batch descriptor data structs +- zink: merge context descriptor data onto context struct +- zink: merge program descriptor data onto program struct +- zink: merge batch descriptor data onto batch state +- zink: reorder some descriptor structs +- zink: rename _lazy descriptor stuff +- zink: use statically sized array for descriptor allocation +- zink: ZINK_SHADER_COUNT -> ZINK_GFX_SHADER_COUNT +- zink: explicitly define ZINK_GFX_SHADER_COUNT +- zink: PIPE_SHADER_TYPES -> MESA_SHADER_STAGES +- zink: remove all pipe_shader_type usage +- zink: delete zink_shader_stage() +- zink: fix program cache comparisons +- zink: require EXT_non_seamless_cube_map for GPL support +- zink: (correctly) require extendedDynamicState2PatchControlPoints for GPL +- zink: use a maybe more accurate wild guess for pcp-less gpl +- zink: require VK_KHR_descriptor_update_template +- zink: add an id member for zink_descriptor_pool_key +- zink: use a dynarray instead of hash table for tracking pools +- zink: use a single allocation for zink_descriptor_layout_key +- zink: rework descriptor pool overflow +- nir: add uses_bindless flag for shader_info +- zink: bail out of dmabuf resource creation when srgb explosion is expected +- zink: iterate over all modifiers and nuke the ones that aren't supported +- zink: try to reuse swapchain modifier for dmabuf export +- ci: remove broken device-select-layer from build +- vk/render_pass: don't deref null resolve attachments +- Revert "zink: try to reuse swapchain modifier for dmabuf export" +- Revert "zink: add all format modifiers when adding for dmabuf export" +- zink: deduplicate some program creation code +- zink: deduplicate some program destroy code +- zink: move gfx program update/creation into zink_program.c +- zink: remove cpu conditional render hack +- zink: add c++ guards to zink_pipeline.h +- zink: move pipeline cache structs to zink_program.h +- zink: move gfx pipeline recalc to c++ +- zink: move pipeline state comparison to c++ template +- zink: use template to eliminate more instructions in pipeline state comparison +- zink: remove some gfx pipeline state members +- zink: fix shader key struct packing +- zink: rework bit iteration in update_gfx_shader_modules to use for loop +- zink: simplify shader key comparison by splitting out non-generated tcs +- zink: plumb some screen info through gfx shader creation +- zink: plumb screen info through shader key comparison +- zink: split out nonseamless/inline shader module info calculation +- zink: split out gfx shader module creation from cache searching +- zink: split out first-time shader module creation +- zink: use a list for free batch states +- zink: add templates for pipeline stage comparison +- zink: use stage comparison template to ignore vertices_per_patch +- zink: cache dynamic render vs renderpass pipelines separately +- zink: make program cache values more intelligible +- zink: change u_foreach_bit to regular for loop in zink_gfx_program_update +- zink: use dynarray instead of list for internal shader cache +- zink: pass shader stage as param for gfx module update +- zink: constify shader module variable +- zink: make zink_bo.h compile in c++ +- zink: add more c++ guards to headers +- zink: remove c++ guard from zink_resource.h +- zink: move zink_batch_resource_usage_set to be static inline +- zink: add is_buffer param to zink_batch_resource_usage_set +- zink: use PIPE_CAP_RGB_OVERRIDE_DST_ALPHA_BLEND +- zink: merge all the batch state sets onto the struct +- zink: make batch internal api static again +- zink: split resource tracking into two sets for buffer/texture +- zink: track which stages in gfx programs are using inlined uniforms +- zink: add gfx pipeline lookup shortcut +- st_pbo/compute: handle download failures with fallback +- st_pbo/compute: fix 1D_ARRAY offsets +- st_pbo/compute: fix 1D coord dimension by pre-trimming vectors +- st_pbo/compute: pre-clamp shader geometry to 16bit +- st_pbo/compute: pre-clamp loaded geometry based on coord components +- zink: handle nir_intrinsic_sparse_residency_code_and mechanics +- zink: ignore nir_texop_lod for tex dest matching +- vulkan: Update the XML and headers to 1.3.225 +- zink: support PIPE_CAP_FBFETCH_COHERENT +- tu: fix invalid free on alloc failure +- lavapipe: stop tracking descriptor image layout +- lavapipe: use cso for compute samplers too +- lavapipe: remove lvp_sampler::state +- lavapipe: replace lvp_sampler internals with pipe_sampler_state +- lavapipe: use pipe_sampler_state directly in descriptor info +- lavapipe: delete lvp_buffer::offset +- lavapipe: use gallium buffer descriptor types directly +- lavapipe: apply VK_WHOLE_SIZE to bufferviews at creation +- lavapipe: create gallium descriptor image/sampler view types for views +- lavapipe: delete some code +- zink: use screen param for zink_descriptor_program_deinit +- zink: allow programs to solely manage descriptor deinit +- zink: create compute programs from compute shaders directly +- zink: initialize cache_get_thread unconditionally +- zink: add use_local_size flag to compute programs +- zink: don't call util_queue_fence_init in zink_screen_get_pipeline_cache() +- zink: add param to allow cache_get jobs to run directly +- zink: add a pipeline shortcut for basic compute programs +- zink: merge compute program hash table onto program struct +- zink: don't add compute base pipeline to hash table +- zink: remove use_local_size from compute pipeline state +- zink: stop zeroing local size if current compute doesn't use it +- zink: use different key comparison for local_size-using compute pipelines +- zink: track whether shader has cube samplers +- zink: move compute pipeline cache update to caller +- zink: add a param to allow zink_screen_update_pipeline_cache to run directly +- zink: move compute descriptor binds down in execution +- zink: add precompilation for compute shaders +- zink: add partial async shader compile support +- zink: add locking for descriptor layout caches +- zink: add a context pointer to zink_program struct +- zink: init fbfetch/bindless ctx stuff on shader create +- zink: generate sha1 for compute programs +- zink: add function to check whether a shader has cube samplers +- zink: defer all compute shader creation +- zink: don't emit entrypoints for function temp variables +- zink: check the variable mode before taking samplemask path in ntv +- zink: explicitly use unsigned types for bit shifts +- zink: store VkImageViewUsageCreateInfo for surface creation +- zink: only add srgb mutable for images with modifiers +- zink: avoid needing mutable for z/s sampling +- zink: don't set MUTABLE by default +- zink: don't emit illegal interpolation +- vulkan: initialize a variable +- llvmpipe: don't assume pipe_context is always available in flush_frontbuffer +- mesa: add GLSL_SOURCE +- zink: add spirv builder function for demote +- zink: hook up demote extension +- zink: fix sharedmem ops with bit_size!=32 +- zink: flag all assigned output slots as mapped +- zink: add a ci skip for anv +- mesa/st: split out builtin shader finish +- st_pbo/compute: use split shader finish funcs +- mesa/st: move compute pbo shutdown to compute pbo file +- gallium: add pipe_screen::driver_thread_add_job +- st_pbo/compute: use new shader interface to perform async shader creation +- mesa/st: add specialized pbo download shaders +- mesa/st: add MESA_COMPUTE_PBO env var +- zink: implement async nir creation +- lavapipe: VK_EXT_attachment_feedback_loop_layout +- lavapipe: ARM/EXT_rasterization_order_attachment_access +- docs: add more features +- radv: avoid bottlenecking on sequential sparse buffer binds +- zink: handle split acquire/present +- zink: uncap ssbo size +- zink: remove special-casing for 64bit runtime array emission +- zink: always set var used by get_ssbo_size to the 32bit var +- zink: simplify ntv shader descriptor emission +- zink: emit Aliased decoration for aliased bo descriptors +- zink: fix atomic ssbo indexing with non-32bit values +- zink: handle 64bit float atomics +- zink: export PIPE_CAP_IMAGE_ATOMIC_FLOAT_ADD +- zink: export PIPE_CAP_SHADER_ATOMIC_INT64 +- zink: don't add void clears if a full clear already exists +- zink: split up get_clear_data() +- zink: make void clears more robust +- zink: rewrite clears on fb bind if only the format has changed +- zink: add have_vulkan13 to device info +- zink: add functions for using '2' variants of pipeline barriers +- zink: add screen interfaces for pipeline barriers +- zink: use screen interfaces for pipeline barriers +- zink: fix/relax resolve geometry check +- zink: defer acquire semaphore destruction +- zink: fix atomic ssbo fadd offsets +- st/bitmap: use normalized coords in samplers with lowered rects +- st/drawpixels: use normalized coords in samplers with lowered rects +- zink: disable GPL when sample shading is in use +- anv: force inline more pipe flush functions +- ci: add a panfrost flake +- ci: add nouveau flakes +- egl/glx: add fallback for zink loading +- zink: don't call CmdBindVertexBuffers2EXT with no attributes +- zink: don't always set VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT with gpl +- zink: clamp z/s formats to aspected format for border colors +- zink: move color channel clamping to zink_format.c +- zink: add border color clamping when customBorderColorWithoutFormat isn't supported +- zink: add srgb border color clamping +- zink: add stencil border color clamping +- zink: check format compatibility up front when creating framebuffer surface +- zink: rework flush_frontbuffer to always flush +- zink: defer more semaphore destruction +- zink: rework batch tracking for resources +- zink bump batch state limit a bit +- zink: split out bind_sampler_states hook for drivers without EXT_non_seamless_cube_map +- zink: remove batch tracking/usage from view types +- zink: remove batch usage from sampler states +- zink: delete more sw conditional render handling +- zink: delete some descriptor caching cruft +- glsl: fix gl_CullDistance xfb linking +- zink: handle culldistance xfb outputs like clipdistance +- zink: track a mask of gfx stages remaining in gfx programs +- zink: track the owner context for gfx programs +- zink: use screen params for program reference functions +- zink: don't try to delete programs from the cache if stages have been modified +- zink: add locking for program caches +- zink: use program's context for cache deletion +- zink: use screen param for zink_shader_free() +- zink: PIPE_CAP_SHAREABLE_SHADERS +- radv: ALWAYS_INLINE radv_after_draw +- radv: ALWAYS_INLINE radv_flush_descriptors +- radv: ALWAYS_INLINE radv_is_streamout_enabled() +- radv: store pointer to sgprs for last vertex stage +- radv: use direct access to last_vgt_api_stage_locs for sgpr emission +- zink: add a bool flag for decomposed vertex elements +- zink: check on init whether decomposed attrs are needed +- zink: wrap zink_shader_key_base access for nonseamless cubemap use +- zink: remove a bunch of casts from shader key inlines +- zink: handle inline uniforms during first-time shader generation +- zink: copy the non-dirty shader stages when updating gfx program +- zink: move to AoS for gfx program shader modules +- zink: ALWAYS_INLINE bind_gfx_stage +- zink: add some padding to small shader keys for byte-alignment +- zink: add 'optimal_keys' handling for shader keys +- zink: use optimal_keys to massively reduce size of pipeline cache comparisons +- zink: split dirty_shader_stages for gfx and compute +- zink: simplify bit tracking in zink_gfx_program_update() +- zink: be even more granular with optimal_key program updates +- zink: unspaghettify some program update code +- lavapipe: set writemask for compute shader buffers +- lavapipe: propagate shader access info across libraries +- zink: copy optimal key always +- zink: add asserts to verify optimal key state +- zink: fix some batch tracking leaks +- zink: free vertex_state_cache on shutdown +- zink: always unset var->data.explicit_xfb_buffer +- zink: fix sparse queue creation +- zink: fix handling for ssbos that are just runtime arrays +- zink: name bo variables using bitsize +- zink: avoid overflow when clamping bufferviews +- zink: allow reordered clear_buffer calls +- zink: remove color_write_missing driver workaround +- zink: only emit runtime array for ssbos if present +- mesa: set normalized_coords for bindless texture buffer samplers +- zink: enable VK_ATTACHMENT_LOAD_OP_DONT_CARE for zs in renderpasses +- zink: remove zink_context::new_swapchain +- zink: rename fb_binds -> fb_bind_count +- zink: reorder zink_resource a little +- zink: add a mask of fb attachment idx for resources +- zink: use feedback loop layout to correctly handle implicit feedback loops +- zink: always set VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT sometimes +- nir/opt_undef: add a pass to clean up 64bit undefs +- zink: don't flatten 64bit arrays during rewrite +- zink: always run optimize_nir after lower_64bit_vars +- zink: split up lower_64bit_vars pass +- zink: also lower 64bit function temps +- aux/trace: dump line_rectangular member of rasterizer state +- aux/trace: dump depth_clamp for rasterizer state +- zink: always unflag unordered_write when binding image descriptors +- zink: set layouts before possibly reordering image copies +- zink: move zink_screen_get_pipeline_cache() calls out to callers +- zink: rework ZINK_PIPELINE_LIBRARY_FORCE into ZINK_DEBUG flag +- zink: move create_pipeline_lib to zink_program.c +- zink: hook up VK_EXT_depth_clamp_zero_one +- zink: pass actual screen->threaded to zink_tc_context_unwrap() +- vulkan: Update the XML and headers to 1.3.230 +- lavapipe: dynamic state3 +- zink: add a draw barrier when unbinding a sampler-bound fb surface +- zink: replace mixed_zs with zs feedback loops +- glthread: use signed vertex buffer offsets when available, don't require them +- glthread: handle DeleteBuffers(n=-1) gracefully +- zink: fix/improve handling for multi-component bitfield ops +- zink: export PIPE_CAP_ALLOW_MAPPED_BUFFERS_DURING_EXECUTION +- zink: export PIPE_CAP_MAP_UNSYNCHRONIZED_THREAD_SAFE +- pipe-loader: fix zink driinfo header path +- zink: enable glthread by default +- zink: call flush_resource when presenting garbage +- lavapipe: improve blend handling on pipeline binds +- zink: use dynamic state3 rasterization states when available +- zink: use more dynamic state3 when available +- zink: add tgl ci skip +- zink: don't access prog->shaders array during pipeline compile +- zink: compress zink_gfx_output_key members +- zink: further compress zink_gfx_output_key lookups +- zink: set VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT +- zink: require optimal_keys for GPL +- zink: add param to disable optimization when combining pipeline libraries +- zink: move binding_map to hw_state part of vertex state +- zink: reorder zink_destroy_gfx_program() +- zink: don't deref prog->shaders during pipeline construction +- zink: use an extra pipeline state bit to track coherent fbfetch usage for gpl outputs +- zink: reenable GPL +- zink: define zink_pipeline_dynamic_state3 as zink_rasterizer_hw_state +- zink: set depth clamp +- remove xvmc +- delete rbug +- delete graw tests +- vk/graphics_state: don't set default sample locations if rast samples is dynamic +- zink: allow creating full pipelines unoptimized +- zink: gfx_pipeline_cache_entry -> zink_gfx_pipeline_cache_entry +- zink: change zink_gfx_program::last_pipeline -> struct zink_gfx_pipeline_cache_entry +- zink: implement async gfx precompile +- zink: add ZINK_DEBUG=shaderdb +- zink: move descriptor layout/pool stuff to screen object +- zink: add a safety assert in descriptor updates +- zink: add some bda handling +- zink: handle global and scratch vars +- zink: move descriptor function up in file +- zink: handle oom better during descriptor updating +- zink: fix pool overflow handling on batch reset +- zink: rework/improve descriptor pool overflow handling on batch reset +- zink: delete view objects when unsetting resource usage in batch reset +- zink: prevent ballooning of view object memory +- lavapipe: store compiler options to physical device +- zink: check core feature for pipeline cache control +- zink: don't add other usage bits for transient images +- zink: clamp line_stipple_factor to 1 if stipple is disabled +- zink: unset rp_changed after initializing renderpass attachments +- zink: disable fbfetch when flushing clears +- glthread: fix buffer allocation size with non-signed buffer offset path +- zink: enable tc cpu storage on some buffers +- zink: clamp feedback loop layout to GENERAL if the ext isn't supported +- zink: delete some big struct members from zink_context +- zink: reorder context init to handle COMPUTE_ONLY +- zink: clamp shader bindings for compute descriptors +- zink: add ci flake +- zink: move spec constant emission to the types/consts block +- zink: set default spec constant value to 1 +- zink: add docs for zink_batch.c +- zink: delete/cleanup some descriptor #defines +- zink: delete unused descriptor struct field +- zink: start on some type docs +- zink: fix duplicate VK_DYNAMIC_STATE_LINE_STIPPLE_EXT setting +- zink: fix ds3 line stipple enable handling +- driconf: add mesa_glthread=false for gfxbench +- lavapipe: store binding offset for buffers +- lavapipe: fix BufferDeviceAddress usage +- zink: fix gpl compile optimization +- zink: decrement ZINK_FBFETCH_BINDING +- zink: don't flag ubo0 as used in shaders with indirect ubo access +- zink: allow direct memory mapping for any COHERENT+CACHED buffer +- zink: allocate/place memory using memoryTypeIndex directly +- zink: support multiple heaps per memory type +- zink: delete unused zink descriptor mode +- zink: rename some variables in descriptor code +- zink: ZINK_DESCRIPTOR_TYPES -> ZINK_DESCRIPTOR_BASE_TYPES +- zink: add more zink_descriptor_type enum values to improve readability +- zink: delete unused descriptor function +- zink: stop passing pointer to changed_sets to populate_sets() +- zink: add some descriptor docs +- zink: add some docs for c++ pipeline state functions +- zink: simplify some program descriptor helpers +- zink: split out uniform decriptor bindings in shader data +- zink: flag push state changed in batch changed conditional +- zink: rescope/simplify some push descriptor code +- zink: elide a buffer samplerview update conditional +- zink: handle broken resource mapping deadlocks +- zink: simplify swapchain imageview handling +- zink: delete stale comment for zink_surface +- zink: simplify conditional for surface rebind no-ops +- zink: use zink_resource_object::views to defer deferred storage view deletion +- zink: delete unused zink_surface member +- zink: add some breadcrumbs for VK_EXT_multisampled_render_to_single_sampled +- zink: add docs for zink_surface +- zink: match bitsizes in bo rewriting +- zink: pass KERNEL shaders through successfully +- zink: rework sampler emission +- zink: pass image type to image emission +- zink: add a nir pass for CL image typing and sampler tracking +- zink: simplify image deref handling +- zink: add some spirv builder handling for sampled image ops +- zink: emit explicit samplers in ntv based on sampler_mask +- zink: always take the compact descriptor size path with kernel shaders +- zink: add handling on the vk side for discrete sampler descriptors +- zink: add handling for CL-style discrete shader samplers +- zink: rip out unused kernel push constant +- zink: fix weird formatting +- zink: don't force attachment usage for images when unsupported +- zink: always add MUTABLE with EXTENDED_USAGE for image creation +- zink: don't double-deref bindless texture arrays in shaders +- util/tc: split out flush and deferred flush calls +- util/tc: split out dsa and fs state cso handling +- util/tc: implement renderpass tracking +- zink: add a context flag to indicate when blitter is running +- zink: use tc renderpass tracking to optimize renderpasses +- zink: enable renderpass optimizing for turnip jobs + +Ming Li (1): + +- docs: Add d3d10umd and lavapipe to the doc for the gallium frontends. + +Mykhailo Skorokhodov (8): + +- util: Add glsl2spirv.py script +- nir: Make lower_double_ops recognize SPIR-V mangling +- nir: Add assert in nir_lower_doubles +- glsl/meson: Add variable to export float64.glsl +- anv/meson: Add float64_spv_h custom target +- anv: Add softtp64 workaround +- drirc: Add fp64_workaround_enabled option +- drirc: Apply fp64_workaround_enabled to DOOM Eternal + +Nanley Chery (8): + +- mesa/st: Set PIPE_MAP_DISCARD_RANGE in fallback_copy_image +- mesa/st: Add and use st_texture_image_insert_transfer +- mesa/st: Add and use st_texture_image_transfer::box +- mesa/st: Don't map compressed texture fallbacks for reads +- mesa/st: Fix indentation in st_MapTextureImage +- mesa/st: Drop st_texture_image_transfer::map +- iris: Enable INTEL_MEASURE for compute dispatches on XeHP +- iris: Reduce use of RHWO optimization (Wa_1508744258) + +Nicholas Bishop (2): + +- crocus: Advertise PIPE_CAP_NATIVE_FENCE_FD +- crocus: fix off-by-one error when clearing stale syncobjs + +Oleksii Bozhenko (2): + +- vulkan/wsi: Pass wsi_image_create_info into anv_GetPhysicalDeviceImageFormatProperties2 +- anv: Allow aliasing with modifiers for WSI images + +Omar Akkila (5): + +- ci: Merge common builds in debian test jobs +- ci: Move crosvm to the base test image +- ci: Build crosvm with opaque fd mapping support +- ci: Enable virtio-experimental in testing +- ci: Add vulkan dEQP tests for venus + +Paul Gofman (1): + +- vbo/dlist: keep buffers used in loopback_vertex_list() mapped. + +Pavel Ondračka (22): + +- r300: fix variables detection for paired ALU and TEX instructions in different branches +- r300: allow constant swizzles with inline constant +- r300: fix negate mask computation when merging movs +- r300: check for identical saturate mode when merging MOVs +- r300: run dataflow optimizations in separate loops +- r300: generalize the merge_movs pass +- r300: don't merge w channel in fragment shaders +- r300: merge MOVs into ADD using the 0 swizzle +- r300: merge MOVs with MULs or ADDs in merge channels +- r300: Set more shadow sampler lowering in precompiles. +- r300: allow presubtract when both ADD sources are negative +- r300: run copy propagate once more after merging channels +- r300: merge together MOV and MAD instructions +- r300: add special path for merging movs with the same source +- r300: add some synchronization for KIL +- r300: fix register rewrite when converting rbg instructions to alpha +- r300: reduce CPU overhead in IF transformation pass +- Revert "r300: be less agresive with copy propagate in loops" +- r300: fix reader detection with breaks +- r300: be more careful when pair merging with presubtract +- r300: fix generation of invalid swizzles in regalloc +- r300: respect buffer offset in r300_set_constant_buffer + +Pedro J. Estébanez (5): + +- nir2dxil: Lower texture projections +- nir2dxil: Use native helper lane intrinsic on SM >= 6.6 +- microsoft/spirv2dxil: Refactor to make SM and validator versions public +- microsoft/spirv2dxil: Change \`spirv_to_dxil()` to receive SM and validator versions +- microsoft/spirv2dxil: Support pack_32_2x16 and pack_32_4x8 + +Pierre Moreau (11): + +- nv50,nvc0: Do not resize global residents if unnecessary +- nv50: Rename fixups to relocs +- nv50: Rename interps to fixups +- nv50: Report actual VRAM size +- nv50: Disallow allocating more than VRAM size +- nv50: Mark RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLY as unsupported +- nv50/ir: Handle non-32-bit values when cst folding SPLIT +- nv50/peephole: Disallow combining sub 4-byte ld/st for now +- nv50/ra: Fix the offset computation for compounds +- nv50/ir: Avoid generating splits of splits +- nv50/nir: A group barrier is CTA-level not global-level + +Pierre-Eric Pelloux-Prayer (72): + +- loader: don't return empty string in loader_get_dri_config_device_id +- loader: allow DRI_PRIME=vendor_id:device_id syntax +- vulkan/device_select: print the dri_prime warning only if needed +- vulkan/device_select: allow DRI_PRIME=vendor_id:device_id +- docs: document DRI_PRIME +- gallium/dri2: make protected buffer checks opt-in +- amdgpu/bo: update uses_secure_bos when importing buffers +- radeonsi: allocate BIND_RENDER_TARGET as tmz instead of SCANOUT +- radeonsi: print radeon_bo_flag when AMD_DEBUG=vm is used +- nir: add a nir_opt_if_options enum +- radeonsi/tests: remove left-over debug print +- radeonsi/tests: add testing of the khr-single tests +- radeonsi/tests: update raven expected results +- radeonsi/tests: update navi21 expected results +- radeonsi/tests: cosmetic changes +- radeonsi: prevent u_blitter recursion in si_update_ps_colorbuf0_slot +- radeonsi: use LOAD_CONTEXT_REG_INDEX for VGT_STRMOUT_DRAW_OPAQUE +- ac/llvm: add a return value to ac_nir_translate +- radeonsi: deal with ac_nir_translate failures +- radv: deal with ac_nir_translate failures +- radeonsi: use nir_opt_large_constants earlier +- radeonsi/sqtt: set stable pstate if possible +- mesa: avoid reading back textures from VRAM +- mesa: simplify _mesa_texstore_z24_s8 and s8_z24 +- mesa: remove fallback for GL_DEPTH_STENCIL +- radeonsi: invalidate L2 when using dcc stores +- egl/wayland: fix glthread crashes +- winsys/amdgpu: init 'r' before using it +- radeonsi/gfx11: don't set VERTS_PER_SUBGRP to 0 +- tc: do a GPU->CPU copy to initialize cpu_storage +- tc: don't use CPU storage for glBufferData +- ac/llvm: remove unused vars hash table +- radeonsi: remove USE_LDS_SYMBOLS +- radeonsi: use nir_lower_explicit_io to get rid of mem_shared deref +- ac/llvm: drop visit_deref +- ac/llvm: simplify get_memory_ptr +- ac/llvm: add helpers to get pointer types of ac_arg +- ac/llvm: remove LLVMBuildGEP usages +- ac/llvm: add a ac_llvm_pointer type +- ac/llvm: port functions to use ac_llvm_pointer +- ac/llvm: switch ac_build_gep_ptr to LLVMBuildGEP2 +- ac/llvm: switch ac_build_pointer_add to LLVMBuildGEP2 +- ac/llvm: add type param to ac_build_load_invariant +- ac/llvm: add xxxx2 functions to iteratively port to opaque pointers +- ac/llvm: store lds as ac_llvm_pointer +- ac/llvm: store constant_data and scratch as ac_llvm_pointer +- ac/llvm: remove unneeded casts +- radv/llvm: use ac_build_gep0_type to get args types +- radeonsi: use ac_get_arg_pointee_type to get the right type +- radeonsi: use LLVMBuildGEP2 in si_build_gep_i8_var +- radeonsi: make ngg_gs_get_vertex_storage return a ac_llvm_pointer +- radeonsi: port the remaining code to opaque pointers +- ac/llvm: remove gep_2 and others temporary functions +- radv/llvm: replace LLVMBuildLoad by LLVMBuildLoad2 +- ac/llvm: add ac_get_ptr_arg +- ac/llvm: pass ac_llvm_ptr instead of separate type/ptr +- Revert "ac: use LLVMContextSetOpaquePointers if available" +- radeonsi: zero init using the correct components count +- radeonsi/sqtt: notify sqtt when we skip a flush +- radeonsi/sqtt: re-export shaders in a single bo +- radeonsi/sqtt: allow to disable spm counters +- radeonsi/tests: handle flakes file for all test suite +- radeonsi/tests: simplify the script +- radeonsi/tests: update expected results for navi21 +- radeonsi/tests: update expected results for navi10 +- radeonsi/tests: update expected results for polaris11 +- radeonsi: simplify si_prefetch_shaders +- radeonsi/sqtt: simplify condition to determine if sqtt is on +- radeonsi: store the shader gpu adress in si_shader +- radeonsi: handle sqtt pipeline in shader prefetch +- radeonsi/gfx11: enable sdma copy DRI_PRIME +- radeonsi: update db_eqaa even if msaa is disabled + +PixelyIon (1): + +- tu: Make KGSL wait IOCTLs interrupt-safe + +Qiang Yu (62): + +- nir/lower_gs_intrinsics: fix primitive count for points +- radeonsi: fix tcs_out_lds_offsets arg alignment +- winsys/amdgpu: fix non-page-aligned sparse buffer creation +- nir,ac/llvm: add nir_intrinsic_load_half_line_width_amd +- nir,ac/llvm: add nir_intrinsic_load_viewport_xy_scale_and_offset +- ac/nir/ngg,radv: use nir_load_viewport_xy_scale_and_offset +- ac/nir/cull: support caller react when primitive is rejected +- ac/nir/ngg: support line culling +- ac/nir/ngg: fix and simplify gs store output lower +- ac/nir/ngg: use same driver location for gs output +- ac/nir/ngg: save and restore output bit size for gs +- ac/nir/ngg: save and restore position output base for nogs +- ac/nir/ngg: add gs culling +- ac/nir/ngg: support component position store +- ac/nir/ngg: support clipdist culling +- ac/llvm: cast tes_u/v_replaced to float +- radeonsi: implement nir_intrinsic_load_half_line_width_amd +- radeonsi: implement nir_intrinsic_load_viewport_xy_scale_and_offset +- radeonsi: implement cull nir intrinsics +- ac/llvm: move culling replaced registers to abi +- radeonsi: use replaced values when present +- radeonsi: vs load input re-calculate vertex index after culling +- radeonsi: add and implement load_user_clip_plane abi +- nir: fix nir_xfb_info buffer_to_stream length +- nir: add nir_intrinsic_load_num_vertices_per_primitive_amd +- nir: add nir_intrinsic_load_streamout_buffer_amd +- nir,ac/llvm: add nir_intrinsic_load_ordered_id_amd +- nir: add nir_intrinsic_ordered_xfb_counter_add_amd +- ac/llvm: implement nir_intrinsic_ordered_xfb_counter_add_amd +- ac/nir/ngg: cleanup prim id to prepare for streamout +- ac/nir/ngg: nogs support streamout +- ac/nir/ngg: ngg_gs_load_out_vtx_primflag support stream +- ac/nir/ngg: support multi stream per output slot for gs +- ac/nir/ngg: support gs streamout +- radeonsi: implement nir_intrinsic_load_num_vertices_per_primitive_amd +- radeonsi: implement nir_intrinsic_load_streamout_buffer_amd +- radeonsi: print out remove_streamout shader key +- nir,ac/llvm,radv: add nir_intrinsic_load_provoking_vtx_in_prim_amd +- ac/nir/ngg: use nir_load_provoking_vtx_in_prim_amd in ngg lower +- radv: count gen_prims_queries_enabled +- radv: split active_pipeline_gds_queries +- nir,ac/nir/ngg,radv: split shader_query_enabled_amd +- ac/nir/ngg,radv: use different counters for shader queries +- nir,ac,radv: add primitive count add intrinsics +- nir: add nir_load_prim_xfb_query_enabled_amd +- ac/nir/ngg: add query param to ac_nir_lower_ngg_gs +- ac/nir/ngg: add streamout emitted primitive query +- radeonsi: implement llvm abi atomic_add_prim_count +- radeonsi: implement nir shader query enabled intrinsics +- ac/llvm: get back intrinsics used by NGG +- ac/nir/ngg: support user edge flags for ngg lower +- ac/nir/ngg: pass primitive_id_location as param for nogs lower +- nir: add two amd ngg lds base load intrinsics +- ac/nir/ngg,radv: move LDS layout calculation out of nir ngg lowering +- ac/nir/ngg: allow passthrough with vs primitive id output +- ac/nir/ngg: save and restore no_varying/no_sysval_output +- ac/nir/ngg,ac/llvm,aco: save nogs ngg culling one lds dword +- ac/nir/ngg: add one odd dword to nogs culling pervertex lds +- ac/nir/ngg: fix nogs culling with nuw add +- ac/nir/ngg: remove nuw for negative value add +- ac/llvm: fix gfx11 fs input load for 16bit varying +- ac/llvm: fix 16bit varying llvm compile error + +Rajnesh Kanwal (48): + +- pvr: Implement vkResetDescriptorPool API. +- pvr: Fix clang-format issue. +- pvr: Implement vkGetPhysicalDeviceImageFormatProperties2 API. +- pvr: Implement vkCmdDrawIndirect API. +- pvr: Implement vkCmdDrawIndexedIndirect API. +- pvr: Fix multiple file descriptor leaks. +- pvr: Implement vkCreateEvent and vkDestroyEvent APIs. +- pvr: Implement vkCmdSetEvent2 API. +- pvr: Implement vkCmdResetEvent2 API. +- pvr: Implement vkCmdWaitEvents2 API. +- pvr: Implement vkSetEvent API. +- pvr: Implement vkResetEvent API. +- pvr: General reformatting and renaming some fields. +- pvr: Replace pvr_renderpass_surface_initop with VkAttachmentLoadOp. +- pvr: Add support for generating render pass hw setup data. +- pvr: Use ~0 for masks instead of ~0U. +- pvr: Add missing output register write in pvr_CreateRenderPass2. +- pvr: Rename userpass_spawn to isp_userpass. +- pvr: Add const to structs that are not supposed to be modified. +- pvr: Add attachment resolve support. +- pvr: Add support to create subpass load ops. +- pvr: Pass load-op struct instead of idx to support subpass load-ops. +- pvr: Implement vkCmdNextSubpass API. +- pvr: implement vkcmddispatchindirect api. +- pvr: Handle indirect buffer address in pvr_setup_descriptor_mappings. +- pvr: Convert attachment indexes to unsigned. +- pvr: Remove redundant instruction buffer check. +- pvr: Remove redundant assignment error.instruction. +- pvr: Remove framebuffer NULL check from pvr_CmdBeginRenderPass2. +- pvr: Remove dead code from pvr_perform_start_of_render_clears. +- pvr: Zero init pbe_cs_words to avoid passing on garbage. +- pvr: Fix Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) errors. +- pvr: Call VALGRIND_FREELIKE_BLOCK before unmapping to avoid use after free. +- pvr: Add assert to check for non-NULL binding_desc. +- pvr: Implement vkGetEventStatus API. +- pvr: Add pvr_csb_emit_link function to support secondary buffer links. +- pvr: Fix check in pvr_cmd_uses_deferred_cs_cmds. +- pvr: Add support for PVR_CMD_STREAM_TYPE_GRAPHICS_DEFERRED stream. +- pvr: Create deferred control stream for secondary command buffers. +- pvr: Reserve space for vdm state for deferred secondary buffer. +- pvr: Add support to copy a control stream to another control stream. +- pvr: Implement vkCmdExecuteCommands API. +- pvr: Update buffer type macro names for consistency. +- pvr: Fix heap type of availability_buffer allocation. +- pvr: Fix allocation size passed in pvr_cmd_buffer_alloc_mem. +- pvr: Remove double error reporting. +- pvr: Split pds compute shader create and upload code for reuse. +- pvr: Add vulkan shader factory headers for Query and clear APIs. + +Renato Pereyra (1): + +- venus: Increase vn_relax sleep time + +Rhys Perry (117): + +- aco: fix LdsBranchVmemWARHazard with 2+ branch chains +- aco: set has_VMEM,has_DS=false after a branch +- aco: only add vscnt wait when visiting VMEM/DS +- aco: improve VcmpxPermlaneHazard workaround +- aco: fix hash statistic +- docs/radv: advertise VK_KHR_global_priority +- aco: fix consecutive exec writes when finding exec_copy instruction +- aco: rename is_cmp to is_fp_cmp +- aco: fix assembly of vopc_sdwa writing exec +- aco: fix re-write of uses of exec_val's lo/hi half +- aco: test branch opcode if removing it in try_optimize_branching_sequence +- aco: remove val_and_copy_adjacent +- aco: improve vcc check for instructions between exec_val and exec_copy +- aco: test for one and_savexec opcode in try_optimize_branching_sequence +- aco: fix long-jump version of discard early exit +- radv: remove claimed support for sRGB vertex buffer formats +- radv: fix 16-bit support in radv_lower_vs_input +- aco: fix 16-bit VS inputs +- radv/llvm: fix packed VS inputs on GFX6/GFX10+ +- aco: don't expand vec3 VS input load to vec4 on GFX6 +- aco: allow direct_fetch=true for vec4 VS input loads +- nir/print: support nir_texop_descriptor_amd +- aco: add SCC clobber in build_cube_select +- nir/lower_tex: ignore width of cube textures +- radv: enable ac_nir_lower_resinfo for ACO +- aco: remove dead code for querying image size/samples/levels +- util/ralloc: add HEADER_ALIGN macro +- util: add freelist allocator with mark/sweep +- nir/serialize: remove unused parameter from read_src() +- Revert "nir: Drop the unused instr arg for src/dest copy functions." +- nir: adjust nir_src_copy signature to take a nir_instr * +- nir: use a GC context for instructions +- util/format,vulkan/format: update p_format for Vulkan vertex buffers +- ac: add ac_vtx_format_info +- radv: add radv_is_vertex_buffer_format_supported +- radv,aco: use pipe_format for static vertex input state +- radv,aco: use pipe_format for dynamic vertex input state +- radv: remove radv_translate_vertex_format +- radv: enable R8G8B8, B8G8R8 and R16G16B16 vertex formats +- radv,aco: implement 64-bit vertex inputs +- radv: enable 64-bit vertex formats +- aco/ra: handle empty def_reg interval in get_regs_for_copies +- aco/ra: remove bounds parameter from get_regs_for_copies() +- aco/ra: rework fixed operands +- nir/algebraic: optimize bits=umin(bits, 32-(offset&0x1f)) +- nir/algebraic: optimize fabs(bcsel(b, fneg(a), a)) +- radv: disable EXT_vertex_input_dynamic_state when using DGC +- radv: shrink zero-initialization in vkCmdSetVertexInputEXT +- radv: use nir_ubfe_imm +- radv: remove unnecessary .align_mul=4 +- radv: fix dynamic RT stack size with VGPR spilling +- aco: DCE ra_ctx::defs_done +- aco: rename Interp_instruction to VINTRP_instruction +- aco: add reg() helper to assembler +- aco: fix assembly of MUBUF-to-LDS loads +- aco: add GFX11 opcode numbers +- aco/gfx11: don't use more than 1 NSA dword +- aco: update assembler for GFX11 +- aco: limit GFX11 to 128 VGPRs for now +- aco: add LDSDIR instruction format +- aco: add VINTERP instruction format +- aco: omit read-only memory_sync_info when printing +- aco/tests: add GFX11 assembly tests +- aco: mostly implement FS input loads on GFX11 +- aco: fix VMEMtoScalarWriteHazard s_waitcnt mitigation +- aco: improve VMEMtoScalarWriteHazard s_waitcnt mitigation +- aco: use some helpers in GFX10 hazard workarounds +- aco: improve printing of sgpr_null +- aco: improve printing of s_waitcnt_depctr +- aco: add VMEMtoScalarWriteHazard tests +- aco/gfx11: swap ds_cmpst_* data operands +- aco: improve wait_imm unpack +- aco/gfx11: fix s_waitcnt printing +- aco: update sendmsg enum from LLVM +- aco/gfx11: deallocate VGPRs at the end of the shader +- aco/gfx11: update form_hard_clauses +- aco: limit hard clauses to 63 instructions +- aco: fix assembler.gfx11.vinterp test +- aco: add search_backwards helper +- aco/gfx11: workaround VcmpxPermlaneHazard +- aco/gfx11: workaround LdsDirectVALUHazard +- aco/gfx11: workaround LdsDirectVMEMHazard +- aco/gfx11: workaround VALUTransUseHazard +- aco/gfx11: workaround VALUPartialForwardingHazard +- aco/gfx11: workaround VALUMaskWriteHazard +- aco: add ACO_DEBUG=force-waitdeps +- nir/algebraic: optimize b< nr_priorities +- freedreno: Remap high/norm/low priorities +- freedreno/virtio: Don't upload if we have valid range +- freedreno/drm/virtio: Don't prefer upload for mapped buffers +- freedreno/drm/virtio: Handle read after upload +- freedreno: We really don't need aligned vbo's +- freedreno: Update github wiki links +- freedreno/ir3: GC unused macro +- freedreno/drm: Inline fd_bo_get_iova() +- freedreno/drm: Add fd_ringbuffer_attach_bo() +- freedreno/a6xx: Drop "hardpin" support +- freedreno/drm: Simplify emit_reloc_common +- freedreno/a6xx: Skip IBO state when unused +- freedreno/a6xx: Pre-calculate user const state size +- freedreno: Drop unused arg +- freedreno/a6xx: Move user const upload to bind +- freedreno/a6xx: Simplify fd6_build_user_consts() +- freedreno: Handle xfb invalidation +- freedreno: Use TC cpu-storage to shadow buffers +- freedreno/drm: Don't call kernel with no ops +- freedreno: Add perf-debug trace +- isaspec: Fix out of date comment +- gallium/u_threaded: Add some atrace/perfetto +- gallium/u_threaded: Add optional call-id tracing +- freedreno: Fix fence unref race +- docs: Update freedreno features +- mesa/st: ARB_vertex_attrib_64bit depend on glsl>=410 +- freedreno/a6xx: Remove unused param +- freedreno/ir3: Fix clipvertex with GS+tess +- freedreno/ir3: Lower all the 64b +- freedreno/a6xx: Fix MAX_GEOMETRY_OUTPUT_VERTICES cap +- freedreno/a6xx: Fix primitives-generated query +- freedreno/a6xx: Update caps +- freedreno/a6xx: Drop max_scissor tracking +- Revert "egl: Factor some common terminate cleanup up to common code" +- nir: Add helper to create passthrough TCS shader +- radeonsi: Use nir passthrough TCS helper +- freedreno: Dirty the TCS state if patch_vertices change +- freedreno/ir3: Passthrough TCS support +- freedreno: Add tess_state support +- freedreno: Passthrough TCS support +- v3d/ci: Add a flake +- Revert "mesa/st: ARB_vertex_attrib_64bit depend on glsl>=410" +- freedreno: Don't advertise TGSI support for GS/tess +- freedreno/a6xx: Move layer_zero handling to interp state +- freedreno/ir3: Drop unused view_zero/layer_zero lowering +- freedreno/a6xx: Fix buffer size clamping +- freedreno/a6xx: Support AMD_vertex_shader_layer +- freedreno: support multiple viewports +- freedreno: Massage scissor state at bind time +- freedreno: Move guardband calc to bind time +- freedreno/a6xx: Support GL_ARB_viewport_array + gl43 +- freedreno/a6xx: Enable GL_ARB_texture_mirror_clamp_to_edge +- freedreno: Enable GL_ARB_enhanced_layouts +- freedreno/ci: Small bit of xfails cleanup +- docs: Update features.txt +- nir: Add way to create passthrough TCS without VS nir +- freedreno: Add ARB_gl_spirv support +- freedreno/a6xx: Use box to pass 2d clear params +- freedreno/a6xx: Implement ARB_clear_texture +- freedreno/a3xx+: Enable ARB_shader_texture_image_samples +- freedreno/a3xx+: Enable ARB_derivative_control +- freedreno/ir3: Unconditionally lower subgroup ops +- freedreno/a6xx: Enable ARB_shader_group_vote +- freedreno/a6xx: Fix occlusion queries +- freedreno/a6xx: Remove unused field +- freedreno/a5xx+a6xx: Add base class for query samples +- freedreno/batch: Add a global epilogue +- freedreno: Core ARB_query_buffer_object support +- freedreno/a6xx: ARB_query_buffer_object support +- freedreno/a6xx: Mark gl45 supported + +Rohan Garg (3): + +- anv, iris: Disable pre fetching the binding table entries on DG2 +- intel/compiler: Support 16 bit float ops +- anv: Enable 16 bit float ops on devices that have a LSC + +Roland Scheidegger (4): + +- lavapipe: initialize index_bias to zero for non-indexed draws +- gallivm: always do per-pixel LOD for cube maps +- llvmpipe: fix front/back face system value in the fs +- gallivm: remove dead cube map lod calculation code + +Roman Gilg (2): + +- loader/dri3: Simplify buffer age query +- loader/dri3: Add DRI performance option to wait for next buffer on swap + +Roman Stratiienko (6): + +- v3dv: Enable sync_fd importing/exporting on Android +- v3dv: Limit API version to v1.0 for Android +- v3dv: Avoid swapchain_info handling on Android +- lima: Ensure jobs initialized before calling lima_job_fini() +- Android: Use libgbm_mesa name for SDK30+ +- meson: Enable system_has_kms_drm for android + +Ruijing Dong (30): + +- frontends/va: improve enc quality interface change +- radeonsi/vcn: add enc quality bits interface +- radeonsi/vcn: dpb change for supporting pre-encoding +- radeonsi/vcn: support encoding preset modes +- radeonsi/vcn: support VBAQ modes +- radeonsi/vcn: remove rate control double begin IBs +- radeonsi/vcn: add AUD syntax to h264 encoding +- frontend/va: remove some unnecessary code +- frontends/va: change getEncParamPreset location +- frontends/va: add max_frame_size into rate control +- frontends/va: add HRD, filler data enable and etc +- frontends/va: enable sao in hevc encoding +- radeon/vcn: process invalid frame rate in encoding +- radeonsi/vcn: support async +- radeonsi/vce: using fixed value for vce 52 +- gallium/pipe/video: group avc encoder seq structure +- radeonsi/vce: apply avc seq parameters +- frontends/omx: apply avc seq parameters +- frontends/va: apply avc seq parameters +- radeonsi/vcn: use avc seq paramters +- frontends/va: add aspect ratio and vui timing info +- radeonsi/vcn: support aspect ratio and vui timing info +- d3d12: Updating refactored fields in pipe_h264_enc_picture_desc +- frontends/va: fix av1 decoding image distortion issue +- gallium/pipe/video: add data struct for dbk in avc encoding. +- frontends/va: add h264 dbk enc parameters +- radeonsi/vcn: enable dbk in avc encoding +- radeonsi/vcn: enable multi-slice encoding +- frontends/va: fixed an av1 decoding image corruption issue. +- frontends/va: fixed an av1 dec image corruption. + +Ryan Houdek (1): + +- vulkan/wsi: Add dep_libudev to idep dependencies + +Sagar Ghuge (5): + +- intel/isl: Setting L1 caching policy to Write-back mode +- anv: Specify Untyped L1 cache policy for stateless accesses +- iris: Specify Untyped L1 cache policy for stateless accesses +- anv: Handle bits to flush data-port's Untyped L1 data cache +- iris: Handle new untyped dataport cache flush PIPE_CONTROL field + +Sajeesh Sidharthan (1): + +- radeonsi/vcn: set current pic index correctly + +Sami Kyöstilä (1): + +- intel/ds: Update to Perfetto API v28.0 + +Samuel Pitoiset (329): + +- vulkan: add support for VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT +- radv: implement VK_EXT_attachment_feedback_loop_layout +- radv: ignore out-of-order rasterization if stencil write mask is dynamic +- radv: rework shaders ref counting +- radv: use ref counting for VS prologs and PS epilogs +- radv: remove RADV_META_SAVE_SAMPLE_LOCATIONS +- radv: simplify saving/restoring all dynamic states +- radv: remove unused states parameter from some radv_emit_XXX() helpers +- radv: simplify radv_bind_dynamic_state() slightly +- radv: fix gathering XFB info if there is dead outputs +- radv: respect the render area for depth/stencil resolves +- radv: fix cleaning the meta query state if an error occured +- radv: properly ignore PSO states that are dynamic +- radv: remove one useless check about line width and dynamic state +- radv: simplify dynamic states uses when determining NGG culling settings +- radv: do not set registers for PSO states that are dynamic +- radv: remove radv_invariant_geom workarounds for DX games +- radv: explain why radv_invariant_geom is still needed for SotTR DX +- radv: remove unecessary radv_pipeline::uses_dynamic_stride +- radv: copy line stipple factor/pattern only if the state isn't dynamic +- radv: copy the sample locations only if the state isn't dynamic +- zink: stop skipping bunch of GLESx tests +- vulkan: initialize discardRectangleCount even if the state is dynamic +- vulkan: fix initializing the primitive topology when it's dynamic +- vulkan: add attachment sample count info AMD support +- radv: store the provoking vertex mode in the graphics pipeline info +- radv: simplify the depth clip enable/disable logic +- radv: do not translate polygon mode during gfx info initialization +- radv: do not translate logic op during gfx info initialization +- radv: do not translate blend op/factor during gfx info initialization +- radv: do not translate primitive topology during gfx info initialization +- radv: slightly change the color write enable mask +- radv: call vk_graphics_pipeline_state_fill() when initializing gfx pipelines +- radv: convert radv_tessellation_info to vk_tessellation_state +- radv: convert radv_viewport_info to vk_viewpoert_state +- radv: convert radv_discard_rectangle_info to vk_discard_rectangles_state +- radv: convert radv_rasterization_info to vk_rasterization_state +- radv: convert radv_depth_stencil_info to vk_depth_stencil_state +- radv: convert radv_fragment_shading_rate_info to vk_fragment_shading_rate_state +- radv: convert radv_input_assembly_info to vk_input_assembly_state +- radv: convert radv_multisample_info to vk_multisample_state +- radv: convert radv_color_blend_info to vk_color_blend_state +- radv: convert radv_rendering_info to vk_render_pass_state +- radv: convert radv_vertex_input_info to vk_vertex_input_state +- radv: remove radv_graphics_pipeline_info completely +- radv: advertise VK_KHR_global_priority +- radv: remove unused pCreateInfo from radv_pipeline_init_blend_state() +- radv: add radv_graphics_pipeline_import_info() helper +- radv: introduce a new pipeline type for graphics libs +- radv: store vk_graphics_pipeline_state to radv_graphics_pipeline +- radv: prevent accessing rasterization state when it's NULL +- radv: add a very initial implementation of VK_EXT_graphics_pipeline_library +- radv: do not compress DCC in presence of render loops on GFX10+ +- radv: remove useless check when creating the noop FS +- radv: copy linked I/O info for merged stages in radv_fill_shader_info +- radv: copy the whole radv_shader_info struct for merged stages +- radv: add a radv_postprocess_nir() helper +- radv: move lowering FS intrinsics to radv_postprocess_nir() +- radv: move dumping NIR shaders to the previous similar loop +- radv: remove unused parameter in radv_lower_io_to_mem() +- radv: use NIR_PASS with radv_export_implicit_primitive_id +- radv: remove useless parameter from radv_link_shaders() +- radv: add radv_remove_point_size() linking helper +- radv: rework linking shaders in NIR +- radv: move assigning driver locations to the new linking helpers +- radv: move lowering patch vertices to radv_pipeline_link_tcs() +- radv: move lowering the view index to radv_pipeline_link_shaders() +- radv: remove redundant assignment of tcs.tcs_vertices_out +- radv: remove unused tcs_vertices_out assignment for VS +- radv: remove unused num_tess_patches assignment for VS +- radv: merge gather_tess_info() with radv_fill_shader_info() +- radv: stop setting CB_COLOR_CONTROL.ROP3 from the pipeline +- radv: stop clearing bitfields for registers that are emitted dynamically +- radv: cleanup dynamic states in radv_emit_graphics_pipeline() +- radv: stop emitting RMW context registers for updating sample locations +- radv: re-emit viewports if negative one to one or depth clamp mode changed +- radv: remove bogus assertion about independent set layouts with GPL +- radv: fix missing initialization of the pipeline layout when creating a lib +- radv: destroy the pipeline layout if creating a library failed +- aco: fix wrong size for 1D images and A16 on GFX9 +- ac: constify ac_compute_cs_workgroup_size() +- radv: stop duplicating radv_es_output_info +- radv: use esgs_itemsize when calling ac_nir_lower_es_outputs_to_mem +- radv: compute the ESGS itemsize outside of radv_nir_shader_info_pass() +- radv: remove dead code about task ring when binding a compute pipeline +- radv: replace cs.uses_task_rings by ms.has_task +- radv/llvm: remove unused parameter in handle_vs_outputs_post() +- radv: stop duplicating radv_vs_output_info +- radv: fill radv_vs_output_info unconditionally for vertex related stages +- radv: remove redundant VS output parameter assignments +- radv: add a helper that links shader info between stages +- radv: link primitive ID/clip distance shader info from the new helper +- radv: stop gathering info for FS before other stages +- radv: move filling cs.block_size +- radv: add gather_shader_info_fs() helper +- radv: add gather_shader_info_mesh() helper +- radv: add gather_shader_info_gs() helper +- radv: add gather_shader_info_tes() helper +- radv: add gather_shader_info_tcs() helper +- radv: add gather_shader_info_vs() helper +- radv: add gather_shader_info_cs() helper +- radv: add gather_shader_info_task() helper +- radv: move more CS info to gather_shader_info_cs() +- radv: move more MS info to gather_shader_info_ms() +- radv: move determining NGG shader info to radv_fill_shader_info() +- radv: store binning settings into the physical device +- radv: make sure to emit BREAK_BATCH when color write enable is dynamic +- radv: remove useless parameter in si_write_scissors() +- radv: split emitting guardband into a separate helper +- radv: rework dirtying scissors when the line width changes +- radv: emit the guardband state separately from the scissor state +- radv: allow null descriptor set layouts in pipeline layouts +- radv: determine if the topology uses adjacency from the shaders on GFX9+ +- radv: fix bogus assertion with RADV_FORCE_VRS +- aco: remove unused isel_context::tcs_num_patches +- radv: stop setting as_ls for the TCS stage +- radv: stop setting as_es for the GS stage +- radv: stop setting num_tess_patches for the GS stage +- radv: stop setting esgs_itemsize to the GS stage +- radv: cleanup helpers that compute NGG info and GS info on GFX9+ +- radv: move computing wave_size/ballot_bit_size to the shader info pass +- radv: move computing NGG info and GS info to radv_nir_shader_info_link() +- radv: refactor radv_nir_shader_info_link() +- radv: move determining other NGG settings in radv_link_shaders_info() +- radv: simplify determining if NGG passthrough can be enabled +- radv: cleanup computing the workgroup size for all stages +- radv: add and use a helper that merges shader info for merged stages on GFX9+ +- radv: remove unused parameters in radv_fill_shader_info() +- radv: determine as_ls/as_es in radv_link_shaders_info() +- radv: constify radv_shader_info where it's missing +- radeonsi/ci: trigger radeonsi-raven-skqp for any RADV changes +- radv: gather MRTs that are written by the fragment shader +- radv: compact MRTs to save PS export memory space +- radv: only expose sparseResidencyImage3D on GFX9+ +- radv: emit SQTT markers for RT related commands +- radv: capture RT pipelines from the SQTT layer +- radv: fix reporting RT shaders in RGP +- radv: do not lower color exports for FS that need an epilog +- radv: add radv_remove_color_exports() helper +- radv: do not try to remove color exports for FS that need an epilog +- radv: keep track of the code size for VS prologs and PS epilogs +- radv: create a PS epilog from a library without the main FS +- radv: add support for emitting and prefetching PS epilogs +- radv: import PS epilog from libraries if present +- radv: fix hw remapping of MRT holes with color attachments without export +- radv: fix pipelineStageCreationFeedbackCount when it's 0 +- radv: add a pointer to radv_shader_binary in radv_shader +- radv/ci: re-enable dEQP-VK.renderpass2.depth_stencil_resolve.*_samplemask +- radv: store the VS prologs/PS epilogs VA at upload time +- radv: split upload_shader_part() in two parts +- radv: store the binary to radv_shader_part +- radv: upload the PS epilog in the existing pipeline BO +- radv: reword a comment about dynamic states when rasterization is disabled +- radv: emit the LDS size for TCS directly from the pipeline on GFX9+ +- radv: add radv_pipeline_key::dynamic_patch_control_points +- radv: skip computing some tess info when patch control points is dynamic +- radv: set workgroup_size to 256 when patch control points is dynamic +- aco: prevent a division by zero when patch control points is dynamic +- radv: add shader arguments for dynamic patch control points +- radv: add ABI lowering support for dynamic patch control points +- radv: pass the number of patch control points to si_get_ia_multi_vgt_param() +- radv: move emitting PRIMGROUP_SIZE for <= GFX9 from the cmdbuf +- radv: move emitting GE_CNTL for non-NGG pipelines from the cmdbuf +- radv: implement dynamic patch control points +- radv: advertise extendedDynamicState2PatchControlPoints +- radv: stop setting redundant viewport/scissor for internal operations +- radv: do not bind NULL graphics pipeline when restoring the meta state +- radv: reset the compute pipeline when the saved one was NULL +- radv: stop dirtying the graphics pipeline when restoring it +- radv: stop checking for NULL pipelines in radv_CmdBindPipeline() +- radv/ci: cleanup lists of failures/flakes +- radv: disable VK_EXT_graphics_pipeline_library with LLVM +- radv: rename radv_pipeline_key::vs::dynamic_vs_input to has_prolog +- radv: prepare the VS input state for prologs created with GPL +- radv: bind the VS input state for prologs created with GPL +- radv: enable the VS prologs cache if graphicsPipelineLibrary is enabled +- radv: do not remove PSIZ for VS when the topology is unknown +- Revert "radv: upload the PS epilog in the existing pipeline BO" +- nir: add nir_intrinsic_load_sample_positions_amd +- radv: add nir_intrinsic_load_sample_positions_amd in the ABI +- radv: run nir_opt_cse before lowering FS intrinsics +- radv,aco: lower barycentric_at_sample in NIR +- radv: do not link shaders when the next stage is unknown +- radv: allow to build the main FS in a graphics pipeline library +- radv,aco: do not compact MRTs if the pipeline uses a PS epilog +- radv: rename radv_thread_trace_set_pstate() to radv_device_set_pstate() +- radv: acquire pstate on-demand when capturing with RGP +- radv: constify radv_lookup_user_sgpr() +- radv: add radv_pipeline_key::dynamic_rasterization_samples +- radv: declare shader arguments for the number of samples for FS +- nir: add nir_load_rasterization_samples_amd +- radv: lower nir_load_rasterization_samples_amd in ABI +- nir,radv: pass the number of samples to load_sample_positions_amd +- radv: add barycentric_at_sample lowering when the number of samples is dynamic +- radv: emit the rasterization samples through an user SGPR if needed +- radv: make sure to initialize wd_switch_on_eop before checking its value +- radv: pass a VkSampler to write_sampler_descriptor() +- radv: remove unnecessary radv_buffer_view::vk_format +- radv: rework and rename radv_make_buffer_descriptor() +- zink/ci: skip ext_external_objects from Piglit with RADV +- zink/ci: skip arb_shader_clock with RADV +- zink/ci: skip GLX tests with RADV +- zink/ci: update list of expected failures with RADV on NAVI10 +- zink/ci: update list of flakes for Piglit with RADV on NAVI10 +- radv/ci: add piglit testing with Zink on NAVI10 +- radv: do not free the GS copy shader binary if created from a library +- radv: import the GS copy shader from a library if present +- radv: determine the last VGT api stage from the active_stages bitfield +- radv: allow to build the pre-rasterization stages in a library +- radv: remove useless gfx10_ngg_info::enable_vertex_grouping +- radv: determine the last VGT api stage also for GPL +- radv: use the maximum number of vertices per primitives for NGG with GPL +- radv: enable NGG culling unconditionally for GPL but disable it dynamically +- radv: rework multiview lowering in NIR slightly +- radv: fix handling ViewportIndex with GPL +- radv: fix handling primitive ID and clip/cull distances with GPL +- radv: fix handling multiview with GPL +- radv: fix emitting RBPLUS state when MRTs are compacted +- radv: remove NULL checks when binding a graphics pipeline +- radv: fix initializing the attribute mask for VS input state and GPL +- radv: fix initializing the blend state for NULL render pass with GPL +- radv: ignore shader stages that don't need to be imported with GPL +- radv: add a new drirc option to enable a unified heap on APUs +- radv: enable the unified heap on APUs for Red Dead Redemption 2 +- radv: fix and rework shaders upload with GPL +- radv: always re-emit patch control points when a pipeline with tess is bound +- radv: move the disk cache to the vk_physical_device struct +- radv: use SHA1_DIGEST_LENGTH in the pipeline cache +- radv: do not create a noop FS when the FS is imported from a library +- radv: discard the PS epilog when the pipeline doesn't use a fragment shader +- ac/llvm: add missing nir_intrinsic_bindless_image_atomic_{fmin,fmax} +- radv: set SAMPLE_MASK_TRACKER_WATERMARK to 15 on GFX11 +- radv: use correct VGT_TESS_DISTRIBUTION settings on GFX11 +- radv: do not use memory for waiting for cache flushes on GFX11 +- radv: drop the ES vertex count requirement on GFX11 +- radv: add RADEON_FLAG_DISCARDABLE +- radv: create and configure the ring BO for attributes +- radv: declare shader arguments for attributes via memory +- nir: add nir_intrinsic_load_ring_attr_{offset}_amd +- radv: add lowering for nir_intrinsic_load_ring_attr_{offset}_amd +- radv: allocate more space for pipeline statistics query on GFX11 +- ac: add radeon_info::has_vrs_ds_export_bug +- radv: advertise fragmentShadingRateWithShaderDepthStencilWrites on NAVI23+ +- aco: fix tcs_wave_id unpacking on GFX11 +- radv: declare new dynamic states +- radv: add support for dynamic polygon mode +- radv: add support for dynamic tessellation domain origin +- radv: add support for dynamic logic op enable +- radv: add support for dynamic line stipple enable +- radv: add support for dynamic alpha to coverage enable +- radv: add support for dynamic sample mask +- radv: add support for dynamic depth clip enable +- radv: add support for dynamic conservative rasterization mode +- radv: add support for dynamic depth clip negative one to one +- radv: add support for dynamic provoking vertex mode +- radv: add support for dynamic depth clamp enable +- radv: advertise VK_EXT_extended_dynamic_state3 +- radv: disable VK_AMD_texture_gather_bias_lod on GFX11 +- radv: disable AMD_shader_explicit_vertex_parameter on GFX11 +- radv/llvm: do not set COMPR for exports on GFX11 +- ac/nir,radv/llvm: add support for the attribute ring +- aco,radv/llvm: do not export parameters on GFX11 +- ac: fix has_vrs_ds_export_bug for VanGogh +- radv: disable {shader,sparse}ImageFloat32AtomicMinMax on GFX11 +- radv: disable shaderBufferFloat64AtomicMinMax on GFX11 +- radv: disable dual source blending in more situations +- ac/llvm: add support for device clock on GFX11 +- aco: add support for s_sendmsg_rtn_b{32,64} +- aco: split the sendmsg enumeration into sendmsg_rtn +- aco: add support for device clock on GFX11 +- ac/nir/ngg: fix emitting streamout output by using packed location +- radv: fix suspending/resuming pipeline statistics queries with GDS +- radv: fix VRS limit when attachmentFragmentShadingRate is disabled +- radv/llvm: fix dual source blending on GFX11 +- radv: move nir_opt_idiv_const/nir_lower_idiv after NGG lowering +- ac/nir/ngg: fix emitting streamout output by using packed location +- radv: implement transform feedback queries with NGG streamout +- Revert "radv: add a pointer to radv_shader_binary in radv_shader" +- aco: create a new builder variant for ds_add_rtn +- aco: implement NIR intrinsics for NGG streamout +- aco: remove invalid assertions for NGG streamout +- radv/llvm: prevent emitting streamout outputs for NGG +- radv: call nir_io_add_intrinsic_xfb_info() after IO lowering +- radv: lower NIR intrinsics for NGG streamout +- radv: do not unconditionally disable NGG streamout lowering in NIR +- radv: reword an incorrect comment about primitives generated query +- radv: use 32-bit GDS counters for primitives generated query with NGG +- radv: suspend/resume primitives generated query separately for legacy/NGG +- radv: fix primitives generated query with NGG only +- radv: set the correct buffer size for NGG streamout +- radv: enable all possible features with NGG streamout +- radv: allow to enable NGG streamout with RADV_PERFTEST=ngg_streamout +- radv: enable VK_EXT_transform_feedback with NGG streamout on GFX11 +- ac/nir: stop using nir_gather_xfb_info_from_intrinsics +- radv: assign IO var locations for VS/TES with NGG streamout +- radv/amdgpu: add a kernel GDS management workaround for -ENOMEM +- radv: use defines instead of magic values for GDS counters offset +- radv: move GDS counters after reserved GDS offsets for streamout +- radv: fix fallback for extreme geometry with tessellation on GFX11 +- radv: fix setting MIN_LOD for texture descriptors on GFX11 +- radv: make the GDS/GDS OA buffer objects resident +- radv: invalidate L2 instead of only writeback L2 when using DCC stores +- radv: re-emit the guardband state when restoring meta operations +- ac/nir,radv: rework and fix NGG queries enables for VS/TES +- ac/nir: do not convert GS outputs to the expected variable size on GFX11 +- radv: re-emit NGG culling settings when conservative rast mode is dynamic +- radv: enable lowering of subgroup shuffle in NIR on GFX11+ +- aco: fix p_interp_gfx11 to not overwrite SCC +- aco: fix missing SCC for p_interp_gfx11 in emit_interp_mov_instr() +- aco: add p_dual_src_export_gfx11 for dual source blending on GFX11 +- aco: fix dual source blending on GFX11 +- aco: fix FS inputs loads in WQM with 16-bit +- radv: suspend/resume XFB queries with NGG for meta operations +- zink: require extendedDynamicState3ColorBlendEquation for full ds3 +- radv: stop overallocating LDS for VS/TES when NGG streamout is enabled +- radv: fix computing the pervertex LDS size with NGG streamout +- radv: enable NGG XFB queries only if streamout is enabled +- radv: re-mit streamout buffers to unbind them when NGG streamout is disabled +- radv: fix NGG streamout when it's never enabled in runtime +- radv: fix possible hangs with NGG streamout and secondary cmdbuf +- aco: fix emitting DEALLOC_VGPRS in the discard block +- radv: re-emit dynamic depth clamp enable if depth clip enable changed +- radv: make sure to mark DCC as compressed on GFX11 +- radv: introduce RADV_DEBUG=nofmask +- radv: set missing SPI_SHADER_PGM_xxx registers on GFX11 +- radv: set INTERPOLATE_COMP_Z to 0 on GFX11 +- radv: do not enable DCC for MSAA images without FMASK +- radv: do not enable NGG culling on GFX11 +- radv: disable VRS entirely on GFX11 + +Sarah Walker (3): + +- pvr: Update FWIF compute register structure +- pvr: Remove STRIP_RENDERING members from FWIF +- pvr: Update FWIF 3d and compute register structures + +Sathishkumar S (2): + +- frontends/va: support yuv 400/444 rt_formats in vaconfig +- frontends/va: reallocate surface for yuv400/yuv444 picture + +Sergei Chernyadyev (1): + +- radv: fix setting results for initialization failures in thread trace and trap handler + +Shuicheng Lin (1): + +- iris: return failure if iris_resource_configure_main fail + +Sil Vilerino (76): + +- gallium/va: vaDeriveImage to check PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP +- d3d12: Implement cap PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP +- frontends/va: Add HEVC decode slice descriptors +- frontends/va: Add HEVC decode args: IntraPicFlag, no_pic_reordering_flag, no_bipred_flag +- frontends/vdpau: Fill HEVC Decode param IntraPicFlag +- frontends/omx: Fill HEVC Decode param IntraPicFlag +- frontends/va: Mark IsLongTerm in HEVC decode args +- frontends/va: Add HEVC Encode support multi slice and extend pipe args +- frontends/va: Extend single to multiple L0-L1 references for HEVC Encode +- frontends/va: Support HEVC caps regarding features, block sizes, prediction direction +- d3d12/va: Name convention rename PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP to PIPE_VIDEO_CAP_SUPPORTS_CONTIGUOUS_PLANES_MAP +- gallium/vl: Allow vl_zscan.h to be included from C++ +- gallium/vl: Rename s_addr variable in vl_idct.c as it conflicts with windows existing inaddr.h keyword definition +- d3d12: Add HEVC Decode/Encode +- d3d12: Avoid extra allocation, copies when generating DXVA_Slice_Hxxx_Short arrays +- d3d12: Avoid local allocations for D3D12_RESOURCE_BARRIER on hot paths +- d3d12: Avoid heap allocations on hot path d3d12_video_decoder_dxva_picparams_from_pipe_picparams_hevc +- d3d12: Fill feedback in d3d12_video_encoder_encode_bitstream so vaSyncSurface properly populates buf->coded_size +- d3d12: Fix leak in d3d12_video_proc when re-creating ID3D12VideoProcessor +- d3d12: Fix winsys displaytarget leak in d3d12_resource +- d3d12: Fix leak in d3d12_resource_from_resource and usage in d3d12 video dec, enc +- d3d12: Add support for importing d3d12_video_buffer from handle +- d3d12: Allow formats other than NV12 in d3d12_video_buffer +- d3d12: Allow video processing for formats other than NV12 +- d3d12: Add VPBlit processor check for D3D12_FEATURE_VIDEO_PROCESS_MAX_INPUT_STREAMS +- d3d12: d3d12_video_buffer_create_impl make resident after checking for resource creation +- frontends/va: Implement vaSyncBuffer +- d3d12: Update HEVC Encode GOP on I frames too +- d3d12: Video process - Remove unnecessary batches flush +- d3d12: Add initialization values for d3d12_video_encoder +- d3d12: Report PIPE_VIDEO_CAP_REQUIRES_FLUSH_ON_END_FRAME +- d3d12: Add support for PIPE_VIDEO_CAP_ENC_SUPPORTS_ASYNC_OPERATION +- d3d12: Change type of m_FenceValue to uint64_t in d3d12_video_encoder +- d3d12: Export some util functions from d3d12_fence for d3d12 video +- d3d12: Keep track of feedbacks from previous encode executions +- d3d12: Change d3d12_video_encoder to not automatically flush +- d3d12: Move encode configuration and capabilities into separate structs +- d3d12: Encoder to use independent command allocators per in flight resource set +- d3d12: d3d12_video_encoder add reset() to prevent leaks on re-allocation +- d3d12: Have d3d12_video_encoder keep separate references for enc, heap and dpb allocations for in flight resources +- d3d12: Make d3d12 encode operations async and do not block waiting +- d3d12: Add output buffer to inflight resourceset +- d3d12: Fix redundant/inconsistent initializations for d3d12_video_encoder +- d3d12: Enhance get_feedback not enough buffers message +- d3d12: Extract into common variable for metadata slot calculation +- d3d12: Make get_feedback return correctly on error when writing \*size=0 +- d3d12: Relax slice caps requirements for video encode +- d3d12: Fix out of bounds index check for texture array DPB +- d3d12: Add debug verbosity for output reconstructed picture +- d3d12: Fix texture array DPB encode path +- d3d12: Fix usage of %ld with PRIu64 instead for cross-platform build +- d3d12: Replace size_t with uint64_t in d3d12_video_encoder definitions for cross-plat compatibility +- frontends/va: Add more params from VADecPictureParameterBufferAV1 and VASliceParameterBufferAV1 to pipe_av1_picture_desc +- frontends/va: Support AV1 Decode with multiple tiles (num_elements > 1) in a single VASliceParameterBufferAV1 buffer +- frontends/va: Use is_video_format_supported in vlVaVidEngineBlit instead of format list +- frontends/va: Fix AV1 decode qm_* parameters reading from VADecPictureParameterBufferAV1 +- d3d12: Add support for AV1 Video Decode +- d3d12: Support more video formats +- d3d12: Fix aliased usage of m_SliceControlBuffer in d3d12_video_decoder_prepare_dxva_slices_control_XXXX +- d3d12: Style variable fix in d3d12_video_decoder_prepare_dxva_slices_control_av1 +- frontends/va: Add VP9 decode multi slice information +- frontends/va: Add VP9 decode ref/mode_deltas information +- d3d12: Add VP9 Decode support +- d3d12: Fix get_index7bits - Reuse previously freed indices +- d3d12: HEVC Encode workaround for edge case in caps reporting not contemplated by upper layer interface +- d3d12: Fix HEVC wrong caps detection due to bad parenthesis in condition +- d3d12: HEVC Set D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_USE_ASYMETRIC_MOTION_PARTITION when required by caps +- gallium/vl: Add vl_winsys_win32 support +- frontends/va: Add windows VA frontend support via vl_winsys_win32 and libva-win32 +- d3d12: resource_from_handle to validate importing resource ptr from same d3d12 device +- CI: Add gallium-va and video-codecs in windows-vs2019 and debian-mingw32-x86_64 +- d3d12: Create d3d12_resource objects for video usage keeping their DXGI\_..._UNORM formats +- d3d12: HEVC Decode - Fix slice size and offsets translation from VA to DXVA +- frontend/va: Fix WIN32 VA_DRIVER_INIT_FUNC declaration. Remove declspec as it uses .def file +- ci: Add va frontend to windows-build-rules +- d3d12: Video Screen - Do not crash if HEVC not supported, return no support instead + +Simon Fels (1): + +- venus: drop duplicated YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT + +Simon Ser (2): + +- vulkan/wsi/x11: detect Xwayland via the XWAYLAND extension +- egl: fix error string for dri2_create_image_dma_buf() + +Simon Zeni (10): + +- mesa: fix EXT_EGL_image_storage target validation +- gallium: track if st_egl_image was created by a dmabuf +- mesa: simplify st_egl_image binding process for texture storage +- mesa/st: check egl image and texture target match before binding +- mesa: fix GL_INVALID_OPERATION in glEGLImageTargetTexStorageEXT +- mesa: unlock texture on error path in glEGLImageTargetTexStorageEXT +- egl: fix Xlib include in egldisplay.h +- egl: set API symbols public +- EGL: sync headers with Khronos +- meson: remove unused EGL_NO_X11 definition + +Sonny Jiang (1): + +- radeonsi/vcn: add decode support for gfx1101 and gfx1103 + +SoroushIMG (22): + +- zink: Fix incorrect emission of SPIR-V shift ops +- zink: track min_samples state for per sample shading +- zink: lower 64bit vars for drivers without float64 +- zink: optimise lower_64bit_vars for when int64 is supported +- zink: lower 64bit pack when float64 not supported +- zink: fix nir_op_unpack_64_2x32 emission +- zink: fix spirv temp func variable class emission +- nir: track whether a loop contains soft fp64 ops +- nir: allow to fine tune unrolling for loops with soft fp64 ops +- zink: enable loop unrolling for loops that have soft fp64 +- zink: enable native ETC2 if vk driver supports it +- zink: fix invalid Offset set for variables which do not need an offset +- zink: stop enabling minmax filtering when not supported +- zink: fix isNan mismatch between NIR and SPIR-V +- lavapipe: stop allocating 0 size const buffer +- zink: cleanup pushconst interface between driver/compiler +- zink: use unified pushconst layour for passthorugh tcs +- zink: cleanup zink_pipeline_layout_create +- zink: add pushconst only pipeline layout +- zink: add new framebuffer_is_layered state +- zink: clamp gl_Layer output to 0, if framebuffer is not layered +- zink: limit gl_Layer clamping to drivers that need it + +Sunil Khatri (1): + +- winsys/amdgpu: clamp up the alignment if zero + +Sviatoslav Peleshko (2): + +- iris: Always initialize shader compilation queue ready fence +- driconf/intel: Use fake vendor to WA bad detection in Source engine games + +Tapani Pälli (40): + +- glsl: allow image*Shadow keywords on ES and GLSL >= 420 +- glsl: add check for too large atomic counter buffer offset +- iris: implement Wa_14015946265 for DG2 +- anv: implement Wa_14015946265 for DG2 +- intel/compiler: implement Wa_14014595444 for DG2 +- intel/compiler: fix assert from ver to verx10 +- intel/genxml: add VFG_PREEMPTION_CHICKEN_BITS register +- anv: disable preemption on VFG, Wa_14015207028 for DG2 +- iris: disable preemption on VFG, Wa_14015207028 for DG2 +- anv: remove vk_sample_locations_state from emit_multisample +- intel/common: clamp sample location coordinate range +- anv: remove primitive_topology from 3DPRIMITIVE calls +- mesa/st: fix a set_sampler_views call parameter order +- anv: implement Wa_14016118574 +- iris: implement Wa_14016118574 +- anv: limit to default fast clear color when image used for transfer +- intel: revert preemption disable via VFG changes +- intel/fs: mark debug variables with ASSERTED +- anv: mark debug variables with ASSERTED +- mesa: mark debug variables with ASSERTED +- anv: dynamic state for polygon mode +- anv: dynamic state for tessellation domain origin +- anv: dynamic rasterization stream +- anv: dynamic line stipple enable +- anv: dynamic line rasterization mode +- anv: dynamic state for logic op enable +- anv: dynamic alpha to one enable +- anv: dynamic states for depth clip and clamp +- anv: dynamic provoking vertex mode +- anv: dynamic color write mask +- anv: dynamic color blend equation +- anv: dynamic multisample sample mask +- anv: toggle on EXT_extended_dynamic_state3 +- anv: move emit_shading_rate to gfx8_cmd_buffer +- anv: fill AlphaToCoverageEnable lazily from state +- intel/compiler: run nir_opt_idiv_const before nir_lower_idiv +- anv: remove some unused functions +- hasvk: remove some unused functions +- iris: setup stage bitmask for Wa_22011440098 +- anv: setup stage bitmask for Wa_22011440098 + +Tatsuyuki Ishi (4): + +- radv: Implement radv_flush_before_query_copy to workaround UE Vulkan bugs. +- radv: Remove unused functions. +- radv: Remove unused radv_deferred_queue_submission. +- radv,lvp,anv: Delete pre-common dispatch leftover. + +Thomas Debesse (7): + +- r600: set clear_buffer = u_default_clear_buffer +- r600: info.stage MESA_SHADER_KERNEL as MESA_SHADER_COMPUTE +- nv50: call nir_lower_flrp +- clover: implement CLOVER_DEVICE_TYPE like RUSTICL_DEVICE_TYPE +- Revert "gallium/clover: pass -no-opaque-pointers to Clang", opaque pointers are now implemented +- gallium/clover: pass -opaque-pointers to Clang on LLVM 15 and 16 +- crocus: set clear_buffer = u_default_clear_buffer + +Thomas H.P. Andersen (15): + +- nvc0: fix a warning -Wconstant-conversion +- radeonsi: avoid a use-after-free +- d3d12: fix warnings for missing-braces on clang +- r600: fix warnings for missing-braces on clang +- ci: remove missing-braces from no-error +- util: avoid deprecated builtin has_trivial_destructor +- spirv: avoid allocating memory twice +- hasvk: Switch to the common descriptor update template struct +- panvk: Implement VK_KHR_descriptor_update_template +- spirv: mark function unused +- llvmpipe: mark function unused +- llvmpipe: drop unused function +- panfrost: avoid warning about unused function +- vulkan: avoid warning about unused function +- vulkan: drop const for descriptor set + +Timothy Arceri (24): + +- Revert "nir: Preserve offsets in lower_io_to_scalar_early" +- glsl: dont lower precision for textureGatherOffsets +- glsl: make packed varying helper needs_lowering() external +- glsl: fix location for array subscript +- nir: update nir_is_supported_terminator_condition() +- nir: support loop unrolling with inot conditions +- glsl: remove GLSL IR inverse comparison optimisations +- nir/loop_analyze: delay instruction cost calculation +- nir/loop_analyze: remove cost of redundant selects +- util/conf: enable init to zero workaround for Exanima +- util/radeonsi: enable zerovram workaround for Exanima +- radv: add radv_zero_vram workarounds for OpenGL games +- glthread: fix matrix stack depth tracking +- mesa: add EXT_debug_label support +- glthread: leave dlist dispatch in place for Begin/End +- glsl/glsl_to_nir: remove unreachable code +- glsl: move rule inside lower_packing_builtins() +- glsl: drop sub to add neg lowering in GLSL IR +- glsl: always do {CARRY,BORROW}_TO_ARITH lowering +- glsl: move lower instructions logic inside that pass +- st/glsl_to_ir: remove stale comment +- st/glsl_to_ir: remove stale include +- mesa: fix typo from adding glGetObjectLabelEXT +- nir: fix typo in lower_double options handling + +Timur Kristóf (64): + +- ac/nir/cull: Move some code from cull_bbox into helper functions. +- ac/nir/cull: Move the contents of cull_bbox into ac_nir_cull_triangle. +- ac/nir/cull: Change if condition for bounding box culling. +- ac/nir/ngg: Move LDS store of accepted flag into the inner branch. +- ac/nir/cull: Make cull functions more consistent. +- aco: Optimize branching sequence during SSA elimination. +- aco: Remove branch instruction when exec is constant non-zero. +- ac/nir/cull: Tweak phi for cull_small_primitive branch. +- ac/nir/cull: Fix typo in bounding box culling. +- aco: Add faster code path to store_lds for consecutive write mask. +- aco: Fix invalidated reference in branching sequence optimization. +- aco: Check for instructions that inhibit the branching sequence optimization. +- aco/optimizer_postRA: Don't try to optimize dead instructions. +- aco: Support s_cselect_b64 in SCC no-compare optimization. +- aco: Improve SCC nocompare optimization when SCC is clobbered. +- aco: Fix p_init_scratch for task shaders. +- vulkan, spirv: Update to Vulkan 1.3.226 and latest SPIR-V headers. +- spirv: Support EXT_mesh_shader indices and mark them per-primitive. +- spirv: Add mesh_shading capability for EXT_mesh_shader. +- spirv: Support EXT_mesh_shader mesh/task stages. +- spirv: Support EXT_mesh_shader SetMeshOutputsEXT. +- spirv: Support the CullPrimitiveEXT mesh shader built-in. +- spirv: Support TaskPayloadWorkgroupEXT storage class. +- spirv, nir: Handle EmitMeshTasksEXT opcode. +- ac/nir/ngg: Add EXT_mesh_shader primitive indices. +- ac/nir/ngg: Add EXT_mesh_shader CullPrimitiveEXT output. +- ac/nir/ngg: Add EXT_mesh_shader vertex/primitive count. +- radv: Implement EXT_mesh_shader draw calls. +- radv: Enable EXT_mesh_shader on RDNA2 with RADV_PERFTEST=ext_ms +- nir/lower_system_values: Add shortcut for 1D workgroups. +- nir/gather_info: Clear cross-invocation output mask. +- radv: Replace NV_mesh_shader macros with EXT. +- radv: Enable subgroup feature bits for mesh and task shaders. +- radv: Change max preferred task workgroup invocations to 64. +- radv: Remove dead shader temps after linking. +- ac/nir/ngg: Don't use LDS for same-invocation indices and cull outputs. +- ac/nir/ngg: Don't initialize same-invocation mesh shader outputs. +- aco/tests: Add post-RA optimizer testcase for partially overwritten VCC. +- aco/tests: Add post-RA DPP test cases with control flow. +- aco/tests: Add post-RA SCC no-compare tests cases with control flow. +- aco/optimizer_postRA: Mark a register overwritten when predecessors disagree. +- aco/optimizer_postRA: Don't assume all operand registers were written by same instr. +- aco/optimizer_postRA: Fix logical control flow handling. +- aco/optimizer_postRA: Clarify terminology. +- aco: Change inverse-comparison optimization to work with s_not +- spirv: Treat EmitMeshTasksEXT as a terminating instruction. +- radv: Use a fallback for marketing name when libdrm doesn't know it. +- ac/nir/ngg: Fix cross-invocation indices and cull outputs. +- aco: Fix build error with std::max on GCC 12 +- nir: Document the flatten/dont_flatten selection control options. +- nir: Add selection control enum for always taken divergent branches. +- aco: Allow explicitly removing jumps on GFX10+ when beneficial. +- ac/nir/ngg: Remove jumps from some branches where we know LGKMCNT==0. +- ac/nir/tess: Remove jump from tess factor writes. +- nir, ac, aco: Add ACCESS intrinsic index to load/store_buffer_amd. +- aco: Cleanup load_vmem_mubuf and store_vmem_mubuf functions. +- nir, ac, aco: Add index src to load_buffer_amd/store_buffer_amd. +- aco: Optimize MUBUF 0 offset when idxen is also being used. +- aco/optimizer_postRA: Use unique_ptr + array for instruction indices. +- aco/optimizer_postRA: Speed up reset_block() with predecessors. +- aco/optimizer_postRA: Properly handle vccz/execz/scc in reset_block. +- aco/optimizer_postRA: Delete dead instructions more efficiently. +- aco: Move is_dead to aco_ir.h to allow it to get inlined. +- aco: Add ACO_DEBUG=novalidateir option. + +Tomeu Vizoso (16): + +- radeonsi/ci: Move libva and piglit jobs to Raven Ridge boards +- radv/ci: Put one more board to run the CTS on Stoney Ridge +- iris/ci: Test on Jasper Lake Chromebooks +- iris/ci: Set FDO_CI_CONCURRENT for all Chromebook jobs +- ci: Report failures to GitLab for LAVA jobs +- ci: Make sure that the Crosvm control socket has been removed +- Revert "ci: set venus on lavapipe to manual due to flakes" +- ci: Crosvm won't remove the control socket file on stop +- Revert "Revert "Revert "ci: set venus on lavapipe to manual due to flakes""" +- ci: Uprev ci-templates +- ci: Use --no-install-recommends to avoid problems with --no-remove +- ci: Install sysvinit-core without --no-remove +- ci: Stop explicitly passing env vars to FDO_DISTRIBUTION_EXEC command +- gallium: Add PIPE_CAP_QUERY_TIMESTAMP_BITS +- ci: Run RadeonSI jobs on changes to src/amd/ci +- radeonsi,radv/ci: Increase coverage + +Victor Hermann Chiletto (1): + +- radv: refactor descriptor set layout tracking + +Vinson Lee (10): + +- bin/perf-annotate-jit.py: Update to Python 3. +- zink: Remove duplicate variable zero. +- pan/bi: Fix memory leaks. +- egl/dri2: Fix missing return with dri2_egl_error_unlock. +- radv: Use count_tes_user_sgprs return value. +- d3d12: Initialize d3d12_video_encoder_references_manager_hevc::m_current_frame_idx. +- radv: Fix file descriptor leak. +- zink: Remove duplicate variable zm. +- r600/sfn: Initialize TestInstrFromString member m_instr_factory. +- v3d: Fix initializer-overrides warning. + +Väinö Mäkelä (1): + +- hasvk: Correctly set NonPerspectiveBarycentricEnable on gfx7 + +Xin LI (1): + +- meson: Improve detection of qsort_r(). + +Yiwei Zhang (52): + +- venus: increase busy wait order in vn_relax +- venus: double the abort timeout to allow long shader compiles +- venus: fix external memory ext filtering +- venus: require necessary extensions for common wsi support +- venus: avoid feedback for external fence +- venus: use a separate sync fence for Android wsi +- venus: lazily create queue wait fence and make it non-external +- venus: avoid pre-allocating the feedback pool +- venus: sync to latest venus protocol headers for syncFdFencing +- venus: stub out renderer sync_fd fencing features +- venus: put android wsi on the sub-optimal path +- venus: fix vn_GetFenceFdKHR +- venus: fix vn_GetSemaphoreFdKHR +- venus: query renderer sync_fd props to fill the feature stubs +- venus: re-implement sync_fd external fence +- venus: re-implement sync_fd external sempahore +- venus: avoid scrubing wsi/external sempahores +- venus: allow no external memory handle when renderers lacks support +- venus/ci: mark a test as flake +- venus: some clang format fixes +- venus: enable zink required extensions on Android +- venus: enable KHR_driver_properties on Android +- venus: double the abort timeout +- loader: use os_get_option for driver override +- zink: fix core support on Android +- zink: fix zink_create_fence_fd to properly import +- zink: fix in-fence lifecycle +- zink: implement fence_get_fd required by EGL android platform +- venus: clean up vn_QueueSubmit +- venus: force synchronous submission for external signal semaphore +- venus: fix an oob in descriptor pool state restoration +- venus: vn_ResetDescriptorPool to reset mutable type states +- venus: zero out the pipeline handles +- venus: avoid fixing pipeline if not derivative +- venus: ignore pInheritanceInfo if not secondary command buffer +- venus: ensure to clear VkPipelineCreationFeedback::flags if needed +- mesa/st: emit string marker based on PIPE_CAP_STRING_MARKER +- meson: libelf is optional +- venus/ci: remove redundant crosvm patch +- venus: move vendor ext to bottom and sort the ext list +- docs: update venus extension support +- docs: move VK_EXT_extended_dynamic_state3 out from 1.3 +- ci/venus: enable render server for venus testing +- venus: avoid accessing local var in VN_ADD_EXT_TO_PNEXT_OF +- venus: remove redundant codes +- venus: handle VkAndroidHardwareBufferFormatProperties2ANDROID +- venus: sync to latest venus protocol headers +- venus: add VK_EXT_primitives_generated_query support +- venus: add VK_EXT_depth_clip_control support +- docs: update to latest venus driver support +- venus: handle VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT +- venus: fix android wsi with global fencing disabled + +Yonggang Luo (218): + +- meson: Place all pre_args about HAVE_DRI* into single place +- meson: Cleanup usage dri_drivers as it's a dead option +- d3d12: Fixes compile error with mingw/gcc-x64 when static linkage to runtime library +- meson: clc compiler test only works on win32 +- microsoft/clc: Fixes compiling errors with clang/mingw64 in clc/clc_compiler_test.cpp +- util: open_memstream also support on MacOS +- c11: Fixes the declaration of timespec_get in time.h for macOS +- egl: Remove eglextchromium.h and import eglext_angle.h +- egl: wire up ANGLE_sync_control_rate +- egl/x11: Split declaration of dri2_format_for_depth into header platform_x11.h +- egl/x11: implement ANGLE_sync_control_rate +- ci/windows: Setup proper MESA_IMAGE_TAG for Windows build/test image +- c11: It's should detect PTHREAD_DESTRUCTOR_ITERATIONS when define TSS_DTOR_ITERATIONS +- c11: call impl_tss_dtor_invoke with tls callback for win32 +- c11: Implement and use of thrd_current properly on win32 +- util: Implement util_thread_get_time_nano on win32 +- util: Fixes typo in function os_get_total_physical_memory +- util: Implement os_get_available_system_memory on Win32 +- util: Use \`DETECT_OS_WINDOWS` instead \`WIN32` in u_process.c +- util: Enable tests that disabled for msvc/mingw +- zink: Use DETECT_OS_WINDOWS instead of 'WIN32' +- meson: Enable graw tests on mingw +- util: Add os_create_anonymous_file support on win32 +- nine: Fixes compile of nine_pipe.h with clang ../../src/gallium/frontends/nine/nine_pipe.h:377:9: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough] default: ^ ../../src/gallium/frontends/nine/nine_pipe.h:377:9: note: insert 'break;' to avoid fall-through default: +- panfrost: Do no use designated initializer for union +- intel: Fixes compile error of aubinator_viewer.cpp with gcc +- util: Fixes memory leak in create_cache_item_header_and_blob +- util: Fixes memory leak in u_printf_test.cpp +- util: Fixes invalid assumption that return non null by function util_format_fetch_rgba_func +- util: Disable usage of __attribute__((__const__)) when the compiler is clang +- ci: Improve MacOS github ci +- ci: Enable llvmpipe on MacOS +- c11: Remove mtx_try from mtx enums as it's not a part of c11 standard +- c11: #include when the os/platform provide it +- anv: Fixes struct anv_device::info is not initialized with struct anv_physical_device +- meson: Use different STRACEDIR folder for intel_devinfo_override_test +- meson: add enable-glcpp-tests option +- ci: disable glcpp tests for now +- Revert "ci: disable unit tests" +- util: Use literal instead call to list_inithead in u_queue.c +- mapi: Remove unused ENTRY_CURRENT_TABLE_GET +- mapi: Remove usage of _glapi_check_multithread and _glapi_destroy_multithread +- mapi: Remove reference to unused _gl_DispatchTSD +- mapi: Move shared _glapi_set_context and _glapi_set_dispatch into u_current.c +- mapi: Move shared stub into u_current.c +- mapi: Access _glapi_tls_Dispatch directly without need of macro +- docs: Remove document about USE_ELF_TLS +- mapi: Improve comment about _glapi_tls_Dispatch and _glapi_tls_Context +- aco: Use unreachable instead assert(false) +- amd/compiler: Fixes warning [-Wunused-variable] in test_to_hw_instr.cpp +- amd/compiler: Fixes warning [-Wunused-variable] in test_optimizer_postRA.cpp +- nir: Fixes [-Wdeprecated-declarations] in serialize_tests.cpp +- util: Fix [-Wdeprecated-declarations] in mesa-sha1_test.cpp +- glsl: Fixes [-Wdeprecated-declarations] in list_iterators.cpp +- intel/compiler: Fixes [-Wdeprecated-declarations] in test_eu_compact.cpp +- intel/compiler: Fixes [-Wdeprecated-declarations] in test_eu_validate.cpp +- virgl: Fixes [-Wdeprecated-declarations] in virgl_staging_mgr_test.cpp +- osmesa: Fixes [-Wdeprecated-declarations] in test-render.cpp +- ci: Remove -Wno-error=deprecated-declarations cpp option from debian-clang +- util: Remove unused rtasm_cpu_has_sse2 +- util: Rename util_cpu_detect to _util_cpu_detect_local +- util: Improve has_sse has_sse2 has_sse3 has_sse4_1 has_avx disable handling +- util: Handling GALLIUM_NOSSE in u_cpu_detect.c +- util: Handling LP_FORCE_SSE2 in u_cpu_detect.c +- llvmpipe: Remove the hack for LLVM4 in lp_bld_init.c +- gallium: Fixes memory leak of translate_test.c +- util: Use environment variable GALLIUM_OVERRIDE_CPU_CAPS to remove usage of util_cpu_caps in translate_test.c +- util: Move detect_done out of struct util_cpu_caps_t +- util: Add api util_call_once_with_context +- util: Add extern "C" guard in simple_mtx.h +- util: Remove the need of _MTX_INITIALIZER_NP in simple_mtx.h +- meson/panfrost: Add dep_valgrind for libpanfrost_pixel_format to fixes the compiling error: +- llvmpipe: Fixes warning [-Wimplicit-fallthrough] in lp_bld_swizzle.c +- llvmpipe: Fixes warning [-Wimplicit-fallthrough] in lp_bld_sample_soa.c +- radeonsi: Fixes warning [-Wimplicit-fallthrough] in si_descriptors.c +- freedreno: Fixes warning [-Wimplicit-fallthrough] in freedreno_util.h +- freedreno: Fixes warning [-Wimplicit-fallthrough] in fd4_texture.h +- freedreno: Fixes warning [-Wimplicit-fallthrough] in fd2_texture.c +- freedreno: Fixes warning [-Wimplicit-fallthrough] in fd3_texture.c +- freedreno: Fixes warning [-Wimplicit-fallthrough] in fd5_texture.h +- freedreno: Fixes warning [-Wimplicit-fallthrough] in fd5_emit.c +- freedreno: Fixes warning [-Wimplicit-fallthrough] in fd6_emit.c +- vdpau: Fixes warning [-Wimplicit-fallthrough] in vdpau_private.h +- v3dv: Fixes warning [-Wimplicit-fallthrough] in v3dvx_pipeline.c +- v3dv: Remove redundant unreachable in v3dvx_pipeline.c +- st: Fixes warning [-Wimplicit-fallthrough] in st_texture.c +- llvmpipe: Remove llvm version guard LLVM_VERSION_MAJOR <=> 4 +- meson: bump the minimal required llvm version to 5.0.0 +- util: Refactoring check_cpu_caps_override out +- util: Add ssse3 and avx cpu caps override option +- util: Move the detect of max_vector_bits into u_cpu_detect.c +- util: add support for detecting avx512 vector bit size +- llvmpipe: Always using util_get_cpu_caps to get cpu caps for llvm on x86 +- llvmpipe: Enable avx512 support in llvm +- docs: document LP_NATIVE_VECTOR_WIDTH GALLIUM_OVERRIDE_CPU_CAPS GALLIUM_NOSSE LP_FORCE_SSE2 +- ci: EXTRA_OPTIONS -> EXTRA_OPTION for debian-clang +- ci: Enable GALLIUM_DUMP_CPU=true only in the clang job +- ci: Enable all possible meson build options for clang +- ci: Add debian-clang-release build pipeline +- ci/fedora: Re-enable vulkan-layers=device-select,overlay +- gallium/hud: Fixes compile error in hud/hud_context.c: +- util: Fixes comment about debug_get_option +- mesa: direct use of mtx_recursive is not c11 conformance +- radeonsi: direct use of mtx_recursive is not c11 conformance +- svga: direct use of mtx_recursive is not c11 conformance +- c11: Update the values of enum mtx_plain, mtx_recursive, mtx_timed to make sure mtx_recursive != mtx_plain | mtx_recursive +- drm-shim: drop gnu99 override +- clover: Fixes use of designated initializers requires in c++ that doesn't support by MSVC +- radv: Remove the redundant #include and #include in ac_binary.c +- aco: Convert to use u8 literal for Unicode character to fixes msvc warning +- util: Add util_call_once for optimize call to util_call_once_with_context out for hot path +- util: getting get_tracefile in u_trace.c to be thread safe +- util: Remove the macro DEBUG_GET_ONCE_FILE_OPTION +- radv/r600/clover: Getting libelf to be optional +- radv: Getting radeon_icd to be generated properly on win32 +- dzn: rename module_dir to icd_lib_path for consistence +- lavapipe/meson: rename module_dir to icd_lib_path and swap two lines for consistence +- Update 22.2.0.rst +- ci: debian-clang: drop -Wno-error=unused-function +- r600/sfn: Fixes 'numeric_limits' is not a member of 'std' error in sfn/sfn_instr.cpp +- aco: Fixes compiling error about char8_t with c++20 +- ci/docs: Stick to specific version of python packages +- util: Remove the include of windows.h when compiling with MSVC +- util: Implement atomic operations consistently across compilers and testing for it +- util/mesa/wide: Rename _SIMPLE_MTX_INITIALIZER_NP to SIMPLE_MTX_INITIALIZER +- util: Turn -DWINDOWS_NO_FUTEX to be pre_args +- ci/windows: Enable gles1 for msvc +- ci/windows: Remove -Dlibelf:warning_level=1 as libelf subproject are already removed +- ci/windows: Getting the default supported windows version to be 7 when using mingw +- gallium: delete graw +- nir: No need redefine snprintf anymore in nir.h +- d3d10ump: No need define snprintf anymore in InputAssembly.cpp +- util: Move the implementation of futex_wake and futex_wait from futex.h to futex.c +- docs: Remove graw related words +- docs: Remove rbug related documents +- nouveau: Remove XVMC_VL environment variable usage +- docs: Remove document about XvMC +- meson: add dep_valgrind dependency for 'dxil_compiler' +- util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_stack.c +- util: Call function mtx_init on exit_mutex to replace the usage of _MTX_INITIALIZER_NP in u_queue.c +- util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_symbol.c +- util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_stack_android.cpp +- util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_memory.c +- util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_M in u_debug_refcnt.c +- mapi: Use util_call_once to init exec_mem and mutex instead _MTX_INITIALIZER_NP +- mapi: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in stub.c +- gallium/auxiliary: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER +- egl/wgl: Use util_call_once_data to replace usage of mtx_t glFlushMutex +- egl/dri2: Use util_call_once_data to replace usage of mtx_t glFlushMutex +- mesa: Use util_call_once_data instead of mtx_t init_once_lock +- util: #include "c11/threads.h" when necessary in simple_mtx.h +- util: #include "util/macros.h" in u_cpu_detect.h for ATTRIBUTE_CONST +- c11: Remove the code for Windows XP +- meson/mesa/wide: define WIN32_LEAN_AND_MEAN with pre_args +- util: Remove the guard WIN32_WINNT >= 0x0600 in u_thread.h +- c11: Getting the macro guard of HAVE_PTHREAD in c11/threads.h to be consistence with util/u_uthread.h +- util: #include in disk_cache_os.c +- llvmpipe: #include in lp_rast.c +- util: Remove include of windows.h in memstream.h +- util: Remove include of windows.h in rwlock.h +- util: Move the function implementation from u_thread.h to u_thread.c +- glx: Guard usage of infer_zink && !explicit_zink in glxext.c +- glx: Trim trailing spaces in in glx/glxext.c +- glx: Remove redundant #ifndef GLX_USE_APPLEGL in glx/glxext.c +- glx: Adopt guard of glx_direct and glx_accel in #if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL) +- glx: Adot #ifdef GLX_USE_WINDOWSGL in #if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL) +- st: Remove st_api_type because ST_API_OPENVG is not an option anymore +- ci: libxvmc-dev is not a dependence anymore +- meson: upgrade zlib wrap +- ci: upgrade zlib to 1.2.13 in mesa_deps_build.ps1 +- ci: Add Get-Date in each package build in mesa_deps_build.ps1 +- ci: Move building libva before clone llvm-project in mesa_deps_build.ps1 +- ci: Install the clang-cl compiler within mesa_deps_vs2019.ps1 +- ci: Trigger building visual studio docker image +- meson: with_glx never assigned to 'gallium-xlib', so need add with_glx == 'xlib' for dep_glproto +- meson: with_glx never assigned to 'gallium-xlib', remove 'gallium-xlib' +- xlib: Remove macro guard with GLX_INDIRECT_RENDERING in xlib.c +- ci/macos: Building both dri and xlib version of glx +- hgl: Remove non-nused hgl_create_st_api +- st: move function st_visual_have_buffers into st_manager.c +- st: OpenVG are removed, remove st_api::profile_mask as it's constant +- st: OpenVG are removed, remove st_api::feature_mask as it's constant +- st: Remove st_api::destroy +- st: Turn st_api::destroy_drawable to be direct accessed function st_api_destroy_drawable +- st: Turn st_api::get_current to be direct accessed function st_api_get_current +- st: Turn st_api::make_current to be direct accessed function st_api_make_current +- st: Turn st_api::create_context to be direct accessed function st_api_create_context +- st: Turn st_api::query_versions to be direct accessed function st_api_query_versions +- xlib: Implement xmesa_get_name by return literal "Mesa " PACKAGE_VERSION directly +- st: Remove struct st_api, st_gl_api_create and st_gl_api.h +- aco: Do not define NOMINMAX as it's already defined in pre_args now +- util: Remove non used UTIL_MAX_L3_CACHES in u_thread.h +- util: Merge duplicated function prototype in u_thread.h that named with util_barrier* +- util: Move UTIL_MAX_CPUS from u_thread.h to u_cpu_detect.h +- util: #include "c11/threads.h" instead of #include "util/u_cpu_detect.h" u_format.c +- xlib: Fixes compiling on linux +- xlib: Remove the linkage hack in lib.c by use meson link_whole option +- gallium: Remove mgl* prefix in linker script osmesa.sym and libgl-xlib.sym +- xlib: Indent with space and trim trailing spaces of xlib files +- ci/macOS: Getting the installed binary to be artifacts +- ci: Getting debian-clang-release to building with glx=xlib +- xlib: Getting xmesa_strict_invalidate to be function +- xlib: Remove the usage of global constructor in xlib.c, so the xm_public.h are removed +- docs: -Ddri-drivers= option is deprecated, do not use it anymore +- docs: There is only glx=xlib option now +- docs: There is no more swrast driver +- android: -Ddri-drivers= is not needed anymore +- glx: Fixes apple/apple_visual.c that include non-exist util/debug.h +- ci: Fixes macos.yml +- radv: Fixes prototypes +- meson: Refactoring shared gen_vs_module_defs_normal_command out +- meson: fixes mingw-clang32 building +- clover: Rename \*OpenCL.def to \*OpenCL.def.in +- clover: Fixes building with mingw-x86 +- meson: Fixes name_prefix for clover on mingw +- clover: empty soversion when on win32 +- util: Test __PPC64__ for getting PIPE_ARCH_PPC_64 respond to __PPC64__ take effect +- gallivm: use valid LLVM_VERSION_MAJOR instead of LLVM_VERSION + +Yusuf Khan (7): + +- nouveau: implement and enable PIPE_CAP_QUERY_MEMORY_INFO +- tu: remove tu_syncobj_to_fd +- nouveau: get timestamp from os_time_get_nano instead of os_time_get +- nouveau: put nv04 push macros in nouveau_winsys +- nv50/ir: nir_op_b2i8 and nir_op_b2i16 +- gallium/util: add a helper for get_timestamp +- nouveau: enable PIPE_CAP_UMA when appropriate + +jenneron (1): + +- docs/panfrost: Document Mali-T620 support + +noasakurajin (1): + +- disable zinks shader cache when the needed functions do not exist + +nyanmisaka (2): + +- gallium: Do not include offscreen winsys if glx is disabled +- radeonsi: Inherit the old modifier when reallocating the texture. + +semjon00 (4): + +- hasvk: don't export flush_compute_state +- hasvk: don't export gfx state flushing helper +- hasvk: combine flushes in Draw/DrawIndexed/DrawIndirectByteCountEXT +- hasvk: force inline more pipe flush functions + +sjfricke (2): + +- isl: fix bug where sb.MOCS is not being set +- anv: fix assert to build with shader cache disabled