From 45770ac286b41b60a9eb165eea70bf1560917414 Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Wed, 9 Mar 2022 13:47:07 -0800 Subject: [PATCH] docs: add release notes for 22.0.0 Part-of: --- docs/relnotes/22.0.0.rst | 4381 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 4381 insertions(+) create mode 100644 docs/relnotes/22.0.0.rst diff --git a/docs/relnotes/22.0.0.rst b/docs/relnotes/22.0.0.rst new file mode 100644 index 00000000000..4fee33a7887 --- /dev/null +++ b/docs/relnotes/22.0.0.rst @@ -0,0 +1,4381 @@ +Mesa 22.0.0 Release Notes / 2022-03-09 +====================================== + +Mesa 22.0.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.0.1. + +Mesa 22.0.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.0.0 implements the Vulkan 1.2 API, but the version reported by +the apiVersion property of the VkPhysicalDeviceProperties struct +depends on the particular driver being used. + +SHA256 checksum +--------------- + +:: + + e6c41928b5b9917485bd67cec22d15e62cad7a358bf4c711a647979987601250 mesa-22.0.0.tar.xz + + +New features +------------ + +- lavapipe,radv,anv KHR_dynamic_rendering +- radv EXT_image_view_min_lod +- VK_KHR_synchronization2 on RADV. +- OpenSWR has been moved to the Amber branch +- radeonsi, zink ARB_sparse_texture +- d3d12 GLES3.1 (shader storage buffers, images, compute, indirect draw, draw params, ARB_framebuffer_no_attachments, ARB_sample_shading, and GLSL400) +- radeonsi, zink ARB_sparse_texture2 +- zink EXT_memory_object, EXT_memory_object_fd, EXT_semaphore, EXT_semaphore_fd +- anv VK_VALVE_mutable_descriptor_type +- Vulkan 1.3 on RADV,Anv. +- radeonsi, zink ARB_sparse_texture_clamp + + +Bug fixes +--------- + +- anv: Unable to import I915_FORMAT_MOD_Y_TILED surfaces produced by iHD vaapi driver +- anv doesn't always resolve aux buffers with private bindings on transition to external queue +- Redraw freeze after upgrade to Xwayland 21.1.3 +- [ANV] Rendering corruption in DOOM Eternal +- lavapipe: dEQP-VK.spirv_assembly.instruction.compute.float16.arithmetic_3.step fails +- radv: When using VS+PS only, primitive ID is mixed up after NGG culling +- [22.0.0_rc{1,2}] radeonsi: broken support for HD7850 (radeon 0000:0b:00.0: ring 0 stalled for more than...) +- RADV: Texture seams in The Evil Within 2 (regression) +- ANV: Bad output from TransformFeedback . Regression from Mesa 21. Something to do with VB+XFB -> VB+XFB dependency? +- radv: CullDistance fail +- Changing the buffer modifer via Wayland dmabuf-feedback apparently does not reliably reset the buffer age to 0 +- radv: causes hang untl gpu reset on navy_flounder +- Crocus related crashes when running QT apps +- Please add missing ray tracing Vulkan extensions to features.txt +- [anv][bisected][regression][tgl] dEQP-VK.dynamic_rendering.suballocation.multisample_resolve.* failures +- radv/aco: DXVKs strict float emulation causes black screen/graphical corruption on RDNA1 +- intel: env vars doc out of date +- [REGRESSION][BISECTED] iris: Qutebrowser/QtWebEngine sporadically flashes the window in white +- Flickering Intel Uhd 620 Graphics +- Vulkan Wayland WSI returns empty surface formats +- [radeon, rs690] piglit spec@glsl-1.10@execution@built-in-functions@fs-atan-float + 10 other 'atan' tests crash (mesa-22dev) +- [bisected] artifacts in vaapi h.264 playback +- [bisected] artifacts in vaapi h.264 playback +- radv: msaa regression +- [DG2] dEQP-GLES3.functional.shaders.derivate.fwidth* failures +- FIFO present mode doesn't wait +- Dota2 lockup wsi/x11: Avoid a class of deadlocks in the WSI queue thread +- [vulkan][intel] Implement VK_VALVE_mutable_descriptor_type +- Broken Terraria & Glitches in Forza Horizon 4 +- radv: Q2RTX with cswave32 crashes the GPU +- CopelliaSim crashes on adding vision sensor to a scene on Ubuntu 20+, runs fine on Ubuntu 18.04 +- radv: renderpass regression +- Dirt Rally: Flickering glitches on certain foliage going from Mesa 21.2.5 to 21.3.0 +- FrontFacing input is broken on Intel/Vulkan +- glGetActiveUniform failing with GL_INVALID_VALUE for no reason +- llvmpipe: Unimplemented get_driver_uuid/get_device_uuid causes segfaults in e.g. Wine +- All vulkan apps terminate with VK_ERROR_DEVICE_LOST +- Texture rendering broken on Vega 56, probably due to MR 14171 (tested on Battlefield 1 / vkd3d-proton) +- Major graphic distortions with RADV in DX11/DX12 with Mesa-git as of January 12th 2022 +- Setting mesa_glthread to true crashes Minecraft when Sodium optimisation mod is enabled. +- ANV: deviceUUID assumes a single device per system +- MESA Overlay Vulkan layer version +- [radeonsi, regression, bisected]: Rendering issues with Factorio +- Distorted graphics when running Battle.net app under Wine with Radeon hardware +- [r300g] Battle.net app window content rotated and stretched +- Freedreno reporting 10 MB of Video memory that's causing issues with WineD3D on Poco F1 +- Panfrost - RK3399 - FACTORIO - glitches everywhere +- Baldurs Gate 3 (Patch 6) - ribbon-like artifacts on textures +- mesa >= 21.x (with llvmpipe) will break the game JVGS +- Game Starsector crashes under certain circumstances with mesa 21.3.+ +- FreeSpace models incorrectly rendered on Polaris cards, causing system freeze +- ci: Test with Skqp +- ci: Test with Skqp +- Metro Exodus (native) fails to launch +- Poor performance on RX 580 (Polaris20) +- VAAPI H.264 encoding is slow on Polaris vs. HEVC and Windows AMF +- v3dv: Missing gem handle reference tracking logic +- Incomplete evaluation of nested DEFINE macros +- [r300g, bisected] piglit glsl-fs-discard-04 fails +- Panfrost G52 Firefox terrible glitches on youtube playback +- prim restart broken on crocus by prim restart fix for d3d12 +- RADV: Invalid fast clear triggered +- Assassin's Creed Syndicate crashes with Mesa 21.3.0+ ACO +- anv: dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store fails +- seg-fault with soft fp64 on iris after register allocation change +- Taking RGP traces on VANGOGH results in hangs +- Flickering and blackscreen on Mpv and Clapper (and also low performance on glxgears) +- intel/vec4: Rework texture handling to not use \`ir_texture_opcode` +- lavapipe leaks introduced in eb7eccc76f0a02b3a3291adaa39788b157979dc5 +- DXVK SIGBUS with Turnip on Poco F1 at loading to open world. +- RADV: IsHelperInvocationEXT query is not considered volatile in ACO +- [GraphicsFuzz] dEQP-VK.graphicsfuzz.stable-binarysearch-tree-nested-if-and-conditional +- [bisected] Mesa 21.3.x breaks GBM with NVIDIA closed source driver 495.44 +- [DG2] dEQP-GL[45|ES31].functional.shaders.builtin_functions.pack_unpack.packhalf2x16_compute fail +- Steam reports fatal error with missing OpenGL GLX extension not supported by display since December 6th +- SNK HEROINES Tag Team Frenzy stuck on white screen +- Run-time dependency dri found: NO +- Rise of the Tomb Raider segfault +- glsl/compiler: suspcious snippet of code (Unused variable) +- GPU Crash in Yuzu 6600xt 5.15 +- anv: gfxbench 5.0 vulkan fails on android +- [spirv-fuzz] lower_trivial_continues_block: Assertion \`!first_instr || instr_is_continue(first_instr)' failed. +- [RADV] Crash in Metro Exodus in Caspain chapter and Sam's Story +- [nir][radv] more undefined shifts caught by gcc's sanitizer +- NIR validation failed after nir_copy_prop +- lima: Corrupted Android-12 UI on Allwinner A64 +- RADV/ACO: Rendering glitches in Forza Horizon 5 windshields +- NV_pixel_buffer_object extension can be available in a GLES2 context but the associated glGet constants don't work +- ThreadSanitizer: data races inside libvulkan_radeon.so +- [radeonsi] Commit b1b491cdbbac1ccb785f5eb1802006f76ec253f5 leads to memory leak +- dEQP-GLES31.*imulextended* compiling fp64 glsl 4.00 shader +- anv: vkMapMemory fails "Memory object already mapped" with VA-API (mpv --gpu-api=vulkan --hwdec=vaapi) +- RADV: crash in radv_GetPhysicalDeviceImageFormatProperties2 +- RADV/ACO: Monster Hunter Rise Demo renders wrong results +- radv: Odd lack of implicit host memory invalidation +- Regression/Bisected: Crash in Godot games when steam overlay enabled +- RADV: IsHelperInvocationEXT query is not considered volatile in ACO +- ANV: error submitting with the same semaphore for wait and signal - regression? +- Vulkan does not work when 10-bit colors ( DefaultDepth 30) are enabled under Xorg on AMD/RADV +- [TGL+] anv: some dEQP-VK.drm_format_modifiers.* fails +- radv: SQTT generates trace with no data +- Mesa 21.3rc3 - compile failure +- iris: subslice assertion failure on some hardware during initialization +- Final Fantasy V (Old version): Random text characters are not displayed +- Diagonal rendering artifacts in Tomb Raider +- vkCmdSetViewport sometimes ignored on Ivy Bridge, Haswell +- dota2 black squares corruption +- [hsw][bisected][regression] dEQP-VK.reconvergence.*nesting* failures +- Piglit.spec.arb_shader_image_load_store.compiler.expression-allowed-1d_vert failed. +- anv: dEQP-VK.wsi.wayland. failures +- freedreno: Crash in fd_bo_cache_alloc() +- radv_android.c: build errors due to commit 49c3a88 +- dEQP-EGL.functional.sharing.gles2.multithread.* regression with Iris +- [Turnip] Forsaken Remastered rendering issue +- [radeonsi] Euro Truck Simulator 2: broken mimimap +- Old Linux Rocket League version failing to start on Poco F1. +- [regression][bisected] Launching Valheim OpenGL game leads to GPU Hang +- Android Meson build regression: hardware/system information apps crash on Raspberry Pi 4 +- radv: format properties are broken with modifiers +- anv: dEQP-VK.graphicsfuzz.cov-multiple-one-iteration-loops-global-counter-write-matrices fails + + +Changes +------- + +Aaron Watry (2): + +- clover: implement CL_IMAGE_BUFFER +- clover/image: add dimension property + +Adam Jackson (37): + +- mesa/x11: Remove the swrast-classic-based fake libGL +- mesa: Remove unused _mesa_all_buffers_are_unmapped +- mesa: Remove unused _mesa_get_render_format +- mesa: Remove unused _mesa_DrawTexx{,v} +- mesa: Remove unused _check_*TexGen*OES +- mesa: Remove unused _mesa_apply_ci_transfer_ops +- mesa: Remove unused _mesa_compressed_image_address +- mesa: Remove unused _es_color4ub +- mesa: Remove unused _es_RenderbufferStorageEXT +- mesa: Remove unused _es_{,Get}TexGenfv +- mesa: Remove unused _vbo_current_binding +- mesa/vbo: Always use buffer objects for storage +- mesa/program: Dead code cleanup +- mesa: Remove unused execmem code +- mesa: Make _mesa_generate_mipmap_level static +- glapi: Remove remnants of EXT_paletted_texture and the imaging subset +- docs: Remove no-longer-accurate text about the xlib driver +- mesa: Remove unused _mesa_initialize_visual +- dri: Remove unused driContextSetFlags +- dri: Remove unused driUpdateFramebufferSize +- dri: Remove unused driGetRendererString +- glx: Fix GLX_NV_float_buffer fbconfig handling +- mesa: Remove unused _mesa_allow_light_in_model +- mesa: Remove unused _mesa_AllocTextureStorage_sw +- mesa: Remove unused _mesa_bind_texture +- mesa: Remove unused _mesa_format_fallback_rgbx_to_rgba +- mesa: Remove unused _mesa_get_linear_format_srgb +- mesa: Remove unused _mesa_convert_colors +- mesa: Remove unused _mesa_all_varyings_in_vbos +- mesa: Remove unused _mesa_delete_nameless_texture +- mesa/math: Remove unused m_translate.c +- mesa: Remove unused _mesa_is_alpha_to_coverage_enabled +- mesa: Remove unused _mesa_is_front_buffer_{draw,read}ing +- mesa: Remove unused _mesa_set_sampler_{filters,srgb_decode,wrap} +- mesa: Remove unused src/mesa/x86-64 +- wsi/x11: Avoid a class of deadlocks in the WSI queue thread +- dri_interface: Remove the remaining DRI1 API definitions + +Alejandro Piñeiro (20): + +- v3dv/pipeline: don't clone the nir shader at pipeline_state_create_binning +- v3d/clif: add support for dumping GS shader state +- broadcom/compiler: remove unused macro and function definition +- v3d: remove unused include +- v3d: remove static v3d_start_binning +- gallium/u_blitter: clean up texcoords ZW when filling up just XY +- v3d,v3dv: move TFU register definition to a common header +- vulkan: move common format helpers to vk_format +- broadcom/compiler: make shaderdb debug output compatible with shaderdb's report tool +- meson: bump meson requirement to 0.53.0 +- v3d: support for texture buffer objects +- v3d: add support for no buffer object bound +- v3d: restrict formats supported for PIPE_BIND_SHADER_IMAGE +- v3d: enable ARB_texture_buffer_object and ARB_texture_buffer_range +- broadcom/compiler: avoid unneeded sint/unorm clamping when lowering stores +- v3dv: simplify v3dv_debug_ignored_stype +- vulkan: return default string for undefined enum +- v3dv: remove unused v3dv_descriptor_map_get_texture_format +- v3dv: check correct format when load/storing on a depth/stencil buffer +- vc4/nir_lower_blend: update write mask when we update num components + +Alex Xu (Hello71) (5): + +- Use initial-exec TLS for glibc only, enable TLS elsewhere +- Auto-enable TLSDESC support +- meson: check for lld split TLSDESC bug (fixes #5665) +- Fix TSD stubs for non-initial-exec case (fixes #5667). +- meson: tlsdesc: minor reformatting, add comments + +Alyssa Rosenzweig (179): + +- panfrost: Don't allow rendering/texturing 48-bit +- panfrost: Detect implementations support AFBC +- panfrost,panvk: Use dev->has_afbc instead of quirks +- panfrost: Remove unused MIDGARD_NO_AFBC quirk +- panfrost: Fix gl_FragColor lowering +- panfrost: Workaround ISSUE_TSIX_2033 +- panfrost: Add internal afbc_formats +- panfrost: Decompress for incompatible AFBC formats +- panfrost: Enable AFBC on v7 +- panfrost: Remove ancient TODO +- panfrost: Remove duplicated #if +- panfrost: Rename depth bias fields +- panfrost: Add alpha_zero_nop/one_store predicate +- panfrost: Test alpha_zero_nop/one_store predicates +- panfrost: Pass through alpha_zero_nop/one_store +- panvk: Pass through alpha_zero_nop/one_store flags +- nir/lower_blend: Use correct clamp for SNORM +- mesa: Require MRT support for GL3/ES3 +- nir/lower_pntc_ytransform: Support PointCoordIsSysval +- pan/bi: Fix typo in helper invocation analysis +- pan/bi: Make bi_index padding explicit +- pan/bi: Add secondary staging count +- pan/bi: Add second destination to TEXC +- pan/bi: Add bifrost_texture_operation_mode enum +- pan/bi: Add bifrost_dual_texture_operation struct +- pan/bi: Use BIFROST_TEXTURE_OPERATION_SINGLE enum +- pan/bi: Support dual texture scheduling +- pan/bi: Add bi_dual_tex_as_u32 helper +- pan/bi: Fix up dual texturing registers +- pan/bi: Add dual texture fusing pass +- pan/bi: Test dual texture fusing +- pan/bi: Enable dual texture fusing pass +- pan/mdg: Remove duplicate compiler option +- pan/bi: Annotate Valhall instructions with units +- pan/bi: Add full form of Valhall MUX instruction +- pan/bi: Add sqrt form of Valhall FREXPM +- pan/bi: Add Valhall's special FMA_RSCALE instructions +- pan/bi: Add XML for assembling Valhall image stores +- pan/bi: Forbid unaligned staging registers on Valhall +- pan/bi: Confirm IDP unit on Valhall +- pan/bi: Suppress uniform validation for LD_BUFFER +- pan/bi: Add XML for LD_BUFFER +- asahi: Rename PANDECODE->AGXDECODE +- asahi: Deflake addresses +- asahi: Allocate special scratch buffers +- asahi: Fix agx_map_* structures +- asahi: Remove silly magic numbers +- asahi: Remove obnoxious workaround +- asahi: Fix BIND_PIPELINE sizing and alignment +- panfrost: Collapse 0 parameters in drm-shim +- panfrost: Handle AFBC_FEATURES in drm-shim +- panfrost: Add empty tile flags to GenXML +- panfrost: Only build GPU indirect kernels for v7 +- pan/bi: Link with Valhall disassembler +- pan/va: Only hex dump when verbosely disassembling +- panfrost: Add "hex" type to GenXML +- panfrost: Add XML for Valhall data structures +- panfrost: Zero initialize disassembler stats +- panfrost: Don't shadow Mesa's fui() +- panfrost: Add Valhall support to pandecode +- pan/va: Improve assembler unit test output +- pan/va: Disambiguate sign of CSEL instructions +- pan/va: Add more assembler tests +- pan/va: Make LD_VAR index more fine-grained +- pan/va: Add sample/update modes to LD_VAR +- pan/va: Add table parameter to LD_ATTR_IMM +- pan/mdg: Fix definition of UBO unpack +- docs/macos: Update for recent Mesa changes +- pan/indirect_draw: Don't upload garbage UBO +- pan/indirect_draw: Split out update_dcd +- pan/indirect_draw: Support IDVS jobs +- panfrost: Track preloaded registers +- panfrost: Set preload descriptor more accurately +- panfrost: Remove unused shader info bits +- panfrost: Fix Secondary Shader field +- panfrost: Treat IDVS jobs as tiler for scoreboarding +- panfrost: Add IDVS fields to shader_info +- panfrost: Split out regalloc/preload helpers +- panfrost: Remove regalloc from v6.xml +- panfrost: Set secondary_* fields for IDVS +- panfrost: Extract panfrost_draw_emit_vertex_section +- panfrost: Emit IDVS jobs +- panfrost: Extract panfrost_batch_skip_rasterization +- panfrost: Skip rasterizer discard draws without side effects +- panfrost: Align instance size for IDVS +- panfrost: Add panfrost_compile_inputs->no_idvs option +- pan/bi: Extract bi_finalize_nir +- pan/bi: Allow UBO pushing to run multiple times +- pan/bi: Add IDVS mode to bi_context +- pan/bi: Remove the "wrong" stores in IDVS variants +- pan/bi: Split out varying store paths +- pan/bi: Use position shader ST_CVT path +- pan/bi: Add helper to decide if IDVS should be used +- pan/bi: Specialize shaders for IDVS +- pan/va: Remove extra LD_VAR_IMM_F32 source +- pan/va: Rename LEA_ATTR to LEA_VARY +- pan/va: Add .signed bit to right shift instructions +- pan/va: Generalize LD_VAR_IMM_* to support flat varyings +- pan/bi: Don't call useless NIR passes +- panfrost: Make pan_merge macro more robust +- pan/bi: Don't read base for combined stores +- pan/mdg: Don't read base for combined stores +- nir: Eliminate store_combined_output_pan BASE +- panfrost: Simplify blend lowering pass +- nir: Extend store_combined_output_pan +- panfrost: Combine dual source blends +- panfrost: Remove pan_nir_reorder_writeout +- pan/bi: Use is_staging_src helper +- pan/bi: Allow an extra staging source +- pan/bi: Use fused dual source blending +- pan/bi: Fix load_const of 1-bit booleans +- gallium/util: Add pixel->blocks box helper +- lima,panfrost: Correct pixel vs block mismatches +- v3d: Use u_box_pixels_to_blocks helper +- vc4: Use u_box_pixels_to_blocks helper +- pan/decode: Remove hierarchy mask check +- pan/decode: Include addresses for jobs +- pan/decode: Track mmaps with a red-black tree +- pan/decode: Add hexdump helper +- pan/decode: Add pandecode_dump_mappings +- pan/decode: Decode Valhall surface descriptor +- panfrost: Remove FBD pointer on Bifrost XML +- pan/decode: Don't print Preload twice +- pan/decode: Disassemble Bifrost quietly +- pan/bi: Schedule around blend shader register clobbering +- asahi: Fake more CAPs with dEQP hacks mode +- asahi: Warn when hacks mode is enabled +- asahi: Add XML for unknown 0x4a packet +- asahi: Break out Fragment Parameters word +- asahi: Rectify confusing XML comment +- asahi: Route sample mask from shader +- agx: Add sample_mask instruction +- agx: Handle discard intrinsics +- agx: Lower UBO loads to use per-element indexing +- panfrost: Use u_reduced_prim for primitive checks +- panfrost: Only cull polygons +- pan/bi: Pull BLEND precolouring out of per-dest loop +- pan/decode: Fix missing newlines in error messages +- panfrost: Remove HAS_SWIZZLES quirk +- panfrost: Remove MIDGARD_SFBD quirk +- panfrost: Remove MIDGARD_BROKEN_FP16 quirk +- panfrost: Remove NO_TILE_ENABLE_MAP quirk +- panfrost: Remove MIDGARD_{NO_TYPED_BLEND_STORES,MISSING_LOADS} +- panfrost: Don't set NO_BLEND_PACKS on Bifrost +- panfrost: Simplify format class selection +- panfrost: Remove NO_BLEND_PACKS quirk +- panfrost: Make primary_shader boolean +- panfrost: Fix v9 "Stencil from shader" bit +- panfrost: Don't pass quirks to pan_lower_framebuffer +- panfrost: Centralize our model list +- panfrost: Replace panfrost_model_name with model->name +- panfrost: Make the GPU allowlist implicit +- panfrost: Get performance counters from table +- pan/bi: Clean up quirks +- pan/bi: Assume future Valhall is 16-wide warps +- panfrost: Add Mali-G51 support +- docs/panfrost: Add new Midgard/Bifrost chips +- pan/va: Add .absolute bit to BRANCHZI +- pan/va: Add missing to V2F32_TO_V2F16 +- pan/va: Add missing fields to LD_TILE +- pan/va: Test LD_TILE assembly +- pan/va: Fix MKVEC.v2i16 lane select +- pan/va: Fix lane select for [US]_TO_[USF]32 +- pan/va: Vectorize 8->16-bit conversions +- pan/va: Add 2-channel 8-bit swizzles for conversions +- pan/va: Add lots of swizzle assembler tests +- pan/va: Handle shift lanes in assembler +- pan/va: Add ARM_shader_framebuffer_fetch asm test +- pan/bi: Avoid \*FADD.v2f16 hazard in optimizer +- pan/bi: Avoid \*FADD.v2f16 hazard in scheduler +- pan/bi: Lower swizzles on CSEL.i32/MUX.i32 +- panvk: Use more reliable assert for UBO pushing +- pan/bi: Specialize IDVS in NIR +- panfrost: Fix FD resource_get_handle +- panfrost: Fix set_sampler_views for big GL +- panfrost: Handle NULL sampler views +- panfrost: Handle NULL samplers +- panfrost: Flush resources when shadowing +- panfrost: Push twice as many uniforms + +Andreas Baierl (1): + +- lima: Fix drawing wide lines + +Antonio Caggiano (2): + +- gallium: add a link shader hook +- virgl: Link shader program + +Anuj Phogat (7): + +- genxml/gen125: Update 3DSTATE_TE fields +- iris: Enable geometry distribution +- anv: Enable geometry distribution +- iris: Enable tessellation redistribution +- anv: Enable tessellation redistribution +- anv, iris: Add Wa_16011773973 for DG2 +- anv, iris: Add Wa_22011440098 for DG2 + +Bas Nieuwenhuizen (73): + +- radv: Fix modifier property query. +- radv: Add bufferDeviceAddressMultiDevice support. +- amd/rgp: Use VGH clocks for RGP workaround. +- radv: Disable coherent L2 optimization on cards with noncoherent L2. +- ci: Bump libdrm for the android image. +- ci: Add libelf to the Android image. +- amd/addrlib: Use alternative ADDR_C_ASSERT definition. +- radv: Remove android build warning. +- radv: Always use linker script when possible. +- aco: Remove useless sub-expr. +- meson: Check arguments before adding. +- amd/addrlib: Ignore self-assign warnings. +- util: Add support for clang::fallthrough. +- ci: Add RADV to Android CI. +- radv: Fix memory corruption loading RT pipeline cache entries. +- radv: Add more checking of cache sizes. +- radv: Don't crash if VkExternalImageFormatProperties isn't provided. +- radv: Avoid using a new subpass for ds clears. +- radv: Stop using a subpass for color clears. +- radv: Remove the skipping of framebuffer emission if we don't have a framebuffer. +- radv: Set RB+ registers correctly without framebuffer. +- radv: Don't emit framebuffer state if there is no renderpass active. +- radv: Add named constants for max framebuffer width/height. +- radv: Do not use VK_FORMAT_UNDEFINED in meta passes. +- radv: Support VK_KHR_dynamic_rendering for pipeline creation. +- radv: Support Begin/EndRendering. +- radv: Support dynamic rendering inheritance info. +- radv: Expose the VK_KHR_dynamic_rendering extension. +- radv/amdgpu: Add a syncobj per queue. +- radv/winsys: Add queue family param to submit. +- radv/amdgpu: Add support for submitting 0 commandbuffers. +- radv: Use the winsys 0 cmdbuffer submission support. +- radv: Set up ETC2 emulation wiring. +- radv: Use the correct base format for reintepretation. +- radv: Add extra plane for decoding ETC images with emulation. +- radv: Add ETC2 decode shader. +- radv: Deal with border colors with emulated ETC2. +- radv: Expose the ETC2 emulation. +- radv/amdgpu: Only wait on queue_syncobj when needed. +- radv: Add safety check for RGP traces on VanGogh. +- radv: Use correct buffer size for query pool result copies. +- radv: Skip wait timeline ioctl with 0 handles. +- radv/amdgpu: Use VkResult for wait_timeline_syncobj. +- vulkan/runtime: Refactor queue submit to take an argument struct. +- vulkan/runtime: Add sparse bind support. +- radv: Use dispatch table for QueueWaitIdle in the SQTT layer. +- radv: Use dispatch table for wsi_display.c +- radv: Use vulkan runtime for device lost. +- meson: Bump libdrm_amdgpu version req to 2.4.109. +- radv: Initialize vk device drm fd. +- radv: Add function to allow WSI signalling fences/semaphores. +- radv: Set horizontal sync types. +- radv: Use vk_command_buffer for preambles. +- radv: Add new cs_submit2 winsys call. +- radv: Add new submission path for use by the common sync framework. +- radv: Delete lots of sync code. +- radv: Remove syncobj reset mechanism. +- radv: Rename submit2->submit. +- radv: Remove dependencies on vk_common entrypoints. +- radv: Set optimal copy alignment to 1. +- radv: Add common entrypoint dependency. +- radv: Use MAX_PUSH_CONSTANTS_SIZE for saved push constants. +- radv: Use 16-bits to store push constant indices. +- radv: 256 byte push constants. +- Revert "nir/algebraic: distribute fmul(fadd(a, b), c) when b and c are constants" +- util/fossilize_db: Fix double free in error handling. +- vulkan/wsi/display: Add common implementation of VK_EXT_display_control. +- anv: Remove VK_EXT_display_control support in favor of common impl. +- radv: Remove VK_EXT_display_control support in favor of common impl. +- radv/amdgpu: Fix handling of IB alignment > 4 words. +- radv/amdgpu: Use aligned sizing for IB buffers. +- radv: Handle SDMA for padding. +- radv: Fix preamble argument order. + +Biju Das (1): + +- kmsro: Add 'rcar-du' driver support + +Boris Brezillon (16): + +- vulkan: Fix weak symbol emulation when compiling with MSVC +- vulkan: Set unused entrypoints to vk_entrypoint_stub when compiling with MSVC +- vulkan: Fix entrypoint generation when compiling for x86 with MSVC +- microsoft/compiler: Fix dxil_nir_create_bare_samplers() +- gallium/d3d12: Don't use designated initializers +- d3d12: Fix "use of designated initializers requires at least '/std:c++20'" error +- microsoft/compiler: Fix sampler/texture array emission +- microsoft/compiler: Skip images in redirect_texture_derefs() +- microsoft/compiler: textureLoad() doesn't take a LOD on MS textures +- microsoft/spirv_to_dxil: Remove dead variables after the struct split pass +- microsoft/spirv_to_dxil: Allow dumping NIR +- microsoft/spirv_to_dxil: Support [un]conditional YZ-flip +- microsoft/spirv_to_dxil: Discard PSIZ accesses +- microsoft/spirv_to_dxil: Lower atomics to their dxil variants +- microsoft/spirv_to_dxil: Make sure the SampleMask is a uint +- microsoft/spirv_to_dxil: Define idep_libspirv_to_dxil + +Boyuan Zhang (5): + +- radeon/vcn: update vcn1 enc interface +- radeon/vcn: update vcn2 enc interface +- radeon/vcn: remove redundancy for vcn2 enc +- radeon/vcn: combine encode params func +- radeon/vcn: combine session init func + +Caio Oliveira (89): + +- nir/schedule: Handle nir_intrisic_scoped_barrier +- nir: Add nir_var_mem_image +- intel/fs: Consider nir_var_mem_image for TGM fences +- anv: Use nir_foreach_image_variable +- spirv: Use nir_var_mem_image +- intel/compiler: Rename vec4 test fixtures +- intel/compiler: Build all tests in a single binary +- spirv: Use a single binary for gtests +- nir: Use a single binary for gtests +- util: Consolidate existing gtests in a single binary +- util: Move tests in single file directories to tests/ +- util: Convert u_atomic_test to use gtest +- util: Convert blob_test to use gtest +- util: Convert mesa-sha1_test to use gtest +- util: Convert rb_tree_test to gtest +- util: Convert roundeven_test to use gtest +- util: Convert sparse array multithread test to use gtest +- util: Move test sources to tests/ directory +- intel/compiler: Add helpers to select SIMD for compute shaders +- intel/compiler: Use SIMD selection helpers for CS +- intel/compiler: Use SIMD selection helpers for variable workgroup size +- intel/compiler: Don't use SIMD larger than needed for workgroup +- anv: Get rid of "may be used initialized" warning in anv_QueueSubmit2KHR +- anv: Make shaders array in anv_graphics_pipeline fit Task/Mesh +- anv: Process FS last when compiling graphics pipeline +- intel/compiler: Make brw_nir_populate_wm_prog_data() static +- intel/compiler: Use gl_shader_stage_uses_workgroup() helpers +- .mailmap: Simplify my name +- intel/genxml: Add Mesh Shading structures +- intel/genxml: Inline the BODY structs into the instructions +- intel/dev: Add an intel_device_info::has_mesh_shading bit +- intel/blorp: Add option to emit packets that disable Mesh +- gtest: Add mesa-gtest-extras.h with array ASSERT/EXPECT macros +- util: Change blob_test to use macro from mesa-gtest-extras.h +- pan/bi: Make some headers compilable with C++ +- pan/bi: Use gtest for test-scheduler-predicates +- pan/bi: Use gtest for test-packing +- pan/bi: Use gtest for test-pack-formats +- pan/bi: Use gtest for test-optimizer +- pan/bi: Use gtest for test-constant-fold +- pan/bi: Drop unused test helpers +- util/ra: Add simple test for register set serialization +- util/ra: Fix deserialization of register sets +- gtest: Fix output of array ASSERT/EXPECT macros +- intel: Add INTEL_DEBUG=task,mesh +- intel/compiler: Properly lower WorkgroupId for Task/Mesh +- intel/compiler: Handle per-primitive inputs in FS +- intel/compiler: Don't stage Task/Mesh outputs in registers +- intel/compiler: Don't lower Mesh/Task I/O to temporaries +- intel/compiler: Add structs to hold TUE/MUE +- intel/compiler: Make MUE available when setting up FS URB access +- intel/compiler: Export brw_nir_lower_simd +- intel/compiler: Add backend compiler basics for Task/Mesh +- intel/compiler: Lower Task/Mesh local_invocation_{id,index} +- intel/compiler: Implement Task Output and Mesh Input +- intel/compiler: Implement Mesh Output +- util: Convert cache test to use gtest +- util: Use ralloc for strings in cache test +- intel/compiler: Use a struct for brw_compile_tcs parameters +- intel/compiler: Use a struct for brw_compile_tes parameters +- intel/compiler: Use a struct for brw_compile_gs parameters +- intel/compiler: Use a struct for brw_compile_bs parameters +- nir: Initialize nir_register::divergent +- meson: Bump version required for gtest protocol +- Revert "nir: disable a NIR test due to undebuggable & locally unreproducible CI failures" +- ci/windows: Remove line numbers of SPIR-V errors in spirv2dxil tests +- spirv: Update headers and metadata to SPIR-V 1.6, revision 1 +- nir: Handle volatile semantics for loading HelperInvocation builtin +- spirv: Identify non-temporal image operand added in SPIR-V 1.6 +- spirv: Use the incorporated names +- anv/blorp: Split blorp_exec into a render and compute +- anv: Refactor dirty masking in cmd_buffer_flush_state +- anv: Simplify assertions related to graphics stages +- anv: Add another case to INTEL_DEBUG=pc output +- anv: Use pending pipe control mechanism in flush_pipeline_select() +- anv/blorp: Apply pending pipe flushes after PIPELINE_SELECT +- intel/fs/xehp: Add unit test for handling of RaR deps across multiple pipelines. +- anv: SPIR-V 1.6 shaders imply ALLOW_VARYING_SUBGROUP_SIZE +- anv: Fix subgroupSupportedStages physical property +- intel: Only reserve space for Compute Engine out of URB in Gfx12LP +- intel/compiler: Have specific mesh handling in calculate_urb_setup() +- intel/compiler: Merge Per-Primitive attribute handling in Mesh case +- compiler, intel: Add gl_shader_stage_is_mesh() +- intel: Add INTEL_URB_DEREF_BLOCK_SIZE_MESH +- intel/common: Add helper for URB allocation in Mesh pipeline +- anv: Add boilerplate for VK_NV_mesh_shader +- anv: Implement Mesh Shading pipeline +- intel/dev: Enable Mesh Shading for DG2 +- anv: Add experimental support for VK_NV_mesh_shader + +Caleb Callaway (2): + +- vulkan/overlay: support Vulkan 1.2 +- vulkan/overlay: revise and reformat README + +Carsten Haitzler (3): + +- panfrost: Add GPU G76 to the set of known ids +- kmsro: Add komeda DPU +- panfrost: Don't double-free when handling error for unsupported GPU + +Charles Baker (5): + +- zink: Enable VK_KHR_image_format_list for VK_KHR_imageless_framebuffer +- zink: Output PackHalf2x16 to uint not float +- zink: Avoid redundant cast to uint on PackHalf2x16 result +- zink: Set vertex binding stride without dynamic state extensions +- Revert "zink: handle vertex buffer offset overflows" + +Charles Giessen (10): + +- radv: Update description of vk_icdNegotiateLoaderICDInterfaceVersion +- v3dv: Update LoaderICDInterfaceVersion to v4 +- panvk: Export vk_icdGetPhysicalDeviceProcAddr +- freedreno, tu: Export vk_icdGetPhysicalDeviceProcAddr +- radv: Update LoaderICDInterfaceVersion to v5 +- panvk: Update LoaderICDInterfaceVersion to v5 +- anv: Update LoaderICDInterfaceVersion to v5 +- lavapipe: Update LoaderICDInterfaceVersion to v5 +- freedreno, tu: Update LoaderICDInterfaceVersion to v5 +- v3dv: Update LoaderICDInterfaceVersion to v5 + +Charmaine Lee (1): + +- mesa: fix misaligned pointer returned by dlist_alloc + +Cherser-s (1): + +- radv: handle VK_DESCRIPTOR_TYPE_SAMPLER in VK_VALVE_mutable_descriptor_type extension + +Chia-I Wu (23): + +- venus: fix vn_instance_wait_roundtrip when seqno wraps +- venus: prefer VIRTGPU_BLOB_MEM_HOST3D for shmems +- venus: fix vn_buffer_get_max_buffer_size +- venus: add vn_renderer_util.[ch] +- venus: add vn_renderer_shmem_pool +- venus: use vn_renderer_shmem_pool for reply shmems +- venus: add vn_cs_encoder_storage_type +- venus: add VN_CS_ENCODER_STORAGE_SHMEM_POOL for VkCommandBuffer +- venus: cache shmems +- venus: add some trace points +- virgl: disable texture uploads with copy transfers +- vulkan/wsi: add wsi_common_get_image +- anv,lavapipe,v3dv: use wsi_common_get_image +- freedreno/drm, turnip: set DRM_RDWR for exported dma-bufs +- venus: fix VK_KHR_driver_properties +- venus: format with clang-format +- venus: remember the memory bound to a swapchain image +- venus: handle VkBindImageMemorySwapchainInfoKHR +- vulkan/wsi/x11: fix x11_image_init return value on errors +- venus: updates to the doc +- turnip: respect buf->bo_offset in transform feedback +- glthread: call _mesa_glthread_BindBuffer unconditionally +- venus: update venus-protocol to 1.3.204 + +Christian Gmeiner (25): + +- ci/etnaviv: add manual piglit testing +- ci/bare-metal: armhf: move BM_ROOTFS to generic place +- ci/etnaviv: armhf: switch to .baremetal-test-armhf +- ci/etnaviv: no need to force nir anymore +- ci/bare-metal: add .baremetal-test-arm64 +- ci/bare-metal: switch to common .baremetal-test-arm64 +- panfrost/ci: update piglit fails +- etnaviv/ci: update piglit fails +- i915g/ci: update piglit fails +- iris/ci: update piglit fails +- ci: Uprev piglit to af1785f31 +- mesa: always support occlusion queries +- broadcom/ci: use .test-manual-mr +- vc4: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY +- i915: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY +- lima: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY +- isaspec: Add support for special {:align=} field +- nir: make lower_sample_tex_compare a common pass +- nir/nir_lower_tex_shadow: support tex_instr without deref src +- etnaviv: make use of nir_lower_tex_shadow +- etnaviv: fix FRONT_AND_BACK culling +- etnaviv: add multiply_with_8 flag +- etnaviv: use bytes for read TX data +- etnaviv: add two new HI related perfmon counter +- etnaviv: add support for INTEL_blackhole_render + +Clayton Craft (1): + +- anv: don't advertise vk conformance on GPUs that aren't conformant + +Connor Abbott (65): + +- vk/format, v3dv: Add a vulkan -> pipe swizzle helper +- freedreno/fdl: Constify fdl6_get_ubwc_blockwidth() +- freedreno/fdl: Add mip_level to fdl_layout +- freedreno/fdl: Add fdl6_view +- tu: Use fdl6_view in tu_image_view and cross-check +- tu: Switch clear/blit to fdl6_view and cross-check +- tu: Remove cross-check scaffolding +- tu/clear_blit: Stop creating a franken-image for staging blits +- ir3/cse: Support mov instructions +- ir3: Use stp/ldp base offset for {load,store}_scratch +- tu/clear_blit: Move around copy_format()/tu6_plane_format() +- freedreno/a6xx: Rename GRAS_2D_BLIT_INFO +- tu: Emit GRAS_LRZ_MRT_BUF_INFO_0 +- tu: Always write GRAS_LRZ_MRT_BUF_INFO_0 +- freedreno/a6xx: Emit GRAS_LRZ_MRT_BUF_INFO_0 +- ir3: Emit barriers for images again +- ir3: Don't emit barriers for make_available/make_visible +- ir3/spill: Mark root as non-spillable after inserting +- ir3/spill: Initial implementation of rematerialization +- tu: Enable subgroupBroadcastDynamicId +- tu: Add VK_KHR_buffer_device_address stubs +- tu: Expose Vulkan 1.2 +- util/dag: Make edge data a uintptr_t +- util/dag: Add dag_add_edge_max_data +- ir3/sched: Rewrite delay handling +- ir3/postsched: Fix copy-paste mistake +- ir3/postsched: Handle sync dependencies better +- ir3/delay: Ignore earlier definitions to the same register +- ir3/postsched: Rewrite delay handling +- ir3/postsched: Only prefer tex/sfu if they are soft-ready +- ir3: Stop inserting nops during scheduling +- ir3/ra: Consider reg file size when swapping killed sources +- ir3/ra: Add missing asserts to ra_push_interval() +- ir3/spill: Support larger spill slot offset +- ir3/lower_pcopy: Fix shr.b illegal copy lowering +- ir3/lower_pcopy: Fix bug with "illegal" copies and swaps +- ir3/lower_subgroups: Fix potential infinite loop +- ir3/ra: Fix logic bug in compress_regs_left +- ir3: Bump type mismatch penalty to 3 +- ir3: Introduce systall metric and new helper functions +- ir3: Use new (sy)/(ss) stall helpers in the compiler +- ir3/sched: Rename tex/sfu to sy/ss +- ir3/postsched: Rename tex/sfu to sy/ss +- ir3: Use (ss) for instructions writing shared regs +- ir3, freedreno: Add options struct for ir3_shader_from_nir() +- ir3: Pass shader to ir3_nir_post_finalize() +- ir3: Add wavesize control +- tu, ir3: Support runtime gl_SubgroupSize in FS +- tu: Implement VK_EXT_subgroup_size_control +- freedreno/fdl: Fix reinterpreting "size-compatible" formats +- nir: Reorder ffma and fsub combining +- freedreno/a6xx: Name texture descriptor bit +- tu/blit: Don't set CLAMPENABLE in sampler for 3d path +- tu: Report code size in pipeline statistics +- tu: Initial link-time optimizations +- nir/lower_subgroups: Rename lower_shuffle to lower_relative_shuffle +- nir: Add support for lowering shuffle to a waterfall loop +- ir3: Fix copy-paste mistakes in ir3_block_remove_physical_predecessor() +- ir3: Rewrite (jp) insertion +- ir3/cp: ir3: Prevent propagating shared regs out of loops harder +- ir3,tu: Enable subgroup shuffles and relative shuffles +- ir3/spill: Fix simplify_phi_nodes with multiple loop nesting +- ir3: Use CAN_REORDER instead of NON_WRITEABLE +- ir3: Don't always set bindless_tex with readonly images +- ir3/nir: Fix 1d array readonly images + +Corentin Noël (1): + +- virgl: Disable cache for VIRGL_BIND_SAMPLER_VIEW + +Cristian Ciocaltea (12): + +- ci: Uprev deqp-runner to 0.11.0 +- ci: Support building and installing deqp-runner from source +- ci: Do not remove cmake +- ci: Create results folder before starting virgl_test_server +- virgl/ci: Force crosvm error when exit code file is missing +- virgl/ci: Prevent static link of virglrenderer inside crosvm +- virgl/ci: Do not hide crosvm output messages +- virgl/ci: Fix identification of dEQP binary paths +- iris/ci: Fix whl dEQP expectations +- iris/ci: Fix piglit tests expectations on amly +- panfrost/ci: Fix piglit tests expectations on G52 +- freedreno/ci: Fix dEQP tests expectations on A530 + +Daniel Schürmann (22): + +- nir/fold_16bit_sampler_conversions: skip sparse residency tex instructions +- aco: add more D16 load/store instructions to RA and validator +- aco: workaround GFX9 hardware bug for D16 image instructions +- aco: implement D16 texture loads +- radv: use nir_fold_16bit_sampler_conversions() +- aco/optimizer: fix fneg modifier propagation on VOP3P +- aco: change fneg for VOP3P to use fmul with +1.0 +- aco/optimizer: propagate and fold inline constants on VOP3P instructions +- nir/opt_algebraic: lower fneg_hi/lo to fmul +- aco/ra: fix get_reg_for_operand() in case of stride mismatches +- aco: don't allow SDWA on VOP3P instructions +- aco/optimizer: keep instr_mod_labels after applying extract +- aco/optimizer: apply extract from p_extract_vector +- aco/optimizer: optimize extract(extract()) +- aco/optimizer: apply extract from subdword p_split_vector +- aco: use explicit zero-padding for 64bit image loads in expand_vector() +- aco: use p_create_vector(v2b,v2b) in get_alu_src_vop3p() +- aco: don't split VOP3P definitions +- aco: validate VOP3P opsel correctly +- nir: refactor nir_opt_move +- nir/opt_if: merge two break statements from both branch legs +- nir/opt_if: also merge break statements with ones after the branch + +Daniel Stone (10): + +- CI: Disable Windows jobs +- Revert "CI: Disable Windows jobs" +- ci: Use common build script for libwayland +- ci: Consistently build Wayland and protocols +- ci: Upgrade to libdrm 2.4.109 +- zink/ci: Add GL4.6 tessellation flake +- CI: Don't stream wget directly into bash +- Revert "gitlab-ci: disable radv-fossils" +- Revert "ci: disable vs2019 windows build" +- egl/wayland: Reset buffer age when destroying buffers + +Danylo Piliaiev (54): + +- ir3/freedreno: account for component in build_tessfactor_base +- turnip: add support for dirconf +- driconf: add vk_dont_care_as_load workaround option +- turnip: implement vk_dont_care_as_load workaround +- drirc: Apply vk_dont_care_as_load workaround to Forsaken Remastered +- nir/lower_amul: do not lower 64bit amul to imul24 +- ir3/freedreno: add 64b undef lowering +- freedreno/ir3: disallow immediate addr/offset for ldg/ldg.a +- freedreno/ir3: set proper dst size for {store,load}_{global,shared}_ir3 +- freedreno/ir3: use stg.a/ldg.a only if offset is reg or doesn't fit +- isaspec: inherite parent's bitset gpu gen requirements +- nir/serialize: Make more space for intrinsic_op allowing 1024 ops +- ir3/ra: Check register file upper bound when updating preferred_reg +- tu: fix rast state allocation size on a6xx gen4 +- freedreno/computerator: Support A660 gpu +- vulkan/util: Handle depth-only formats in vk_att_ref_stencil_layout +- ir3: print half-dst/src for ldib.b/stib.b +- freedreno/ir3: add a6xx global atomics and separate atomic opcodes +- freedreno/ir3: handle global atomics +- turnip: implement VK_KHR_buffer_device_address +- ir3/cp: Prevent setting an address on subgroup macros +- freedreno,tu: Limit the amount of instructions preloaded into icache +- ir3: Add gen4 new subgroup instructions +- ir3: Use getfiberid for SubgroupInvocationID on gen4 +- ir3,turnip: Enable subgroup ops support in all stages on gen4 +- ir3,turnip: Add support for GL_KHR_shader_subgroup_quad +- turnip: Fix operator precedence in address calculation macros for queries +- ir3: Be able to reduce register limit for RA when CS has barriers +- ir3: Assert that we cannot have enough concurrent waves for CS with barrier +- tu: fix workaround for depth bounds test without depth test +- ir3: New cat3 instructions +- nir/algebraic: Separate has_dot_4x8 into has_sdot_4x8 and has_udot_4x8 +- ir3: Make nir compiler options a part of ir3_compiler +- tu,ir3: Implement VK_KHR_shader_integer_dot_product +- vulkan/wsi: create a common function to compare drm devices +- tu: implement wsi hook to decide if we can present directly on device +- tu: support VK_EXT_primitive_topology_list_restart +- tu: expose VK_KHR_copy_commands2 +- tu: add reference counting for descriptor set layouts +- turnip/perfetto: Optimize timestamp synchronization +- turnip/trace: refactor creation and usage of trace flush data +- turnip: rename tu_drm_get_timestamp into tu_device_get_gpu_timestamp +- turnip/trace: process u_trace chunks on queue submission +- turnip/perfetto: handle gpu timestamps being non-monotonic +- turnip/trace: Delete unused start/end_resolve tracepoints +- turnip: Drop references to layout of all sets on pool reset/destruction +- tu: implement sysmem vs gmem autotuner +- freedreno: Update gmem/sysmem debug options to be in line with turnip +- tu: add debug option to force gmem +- ci/freedreno: properly test sysmem and gmem paths +- ir3: opt_deref in opt loop to remove unnecessary tex casts +- turnip: Unconditionaly remove descriptor set from pool's list on free +- ir3: Limit the maximum imm offset in nir_opt_offset for shared vars +- turnip: Use LATE_Z when there might be depth/stencil feedback loop + +Dave Airlie (249): + +- brw/nir: remove unused function prototypes. +- crocus: Delete the MI_COPY_MEM_MEM resource_copy_region implementation. +- llvmpipe: fix userptr for texture resources. +- clover: use max shader sampler view/images queries for clover. +- llvmpipe: swizzle image stores for CL BGRA +- radv: fence->user_ptr and ctx->fence_map are now totally unused. +- lavapipe: drop EXT_acquire_xlib_display +- vulkan/wsi: set correct bits for host allocations/exports for images. +- vulkan/include: import the video codec headers. +- vulkan: add new image types undef beta define to switch statements. +- meson: allow building with vulkan beta extensions enabled. +- llvmpipe: disable 64-bit integer textures. +- llvmpipe: fix compressed image sizes. +- intel/genxml: cleanup video xml collisions. +- intel/genxml: fix some missing address from the 75 xml +- intel/genxml: align QM field names across gens. +- intel/genxml: fix Picure->Picture typo +- intel/genxml: fix gen6 LD->VLD typo. +- intel/genxml: generate video headers +- util/vl: move gallium vl_vlc.h and vl_rbsp.h to shared code. +- mtypes: drop some context pointers that are unused now +- mesa: drop unused sw extensions init +- mesa/dd: burn a bunch of legacy driver interfaces down +- mesa/dd: remove some fbo driver hooks. +- mesa/dd: remove NewSamplerObject +- mesa/light: make _mesa_light static do_light. +- iris/ci: comment out iris-cml-traces-performance due to hw unavailable +- mesa/query: remove all the mesa queryobj code. +- mesa/syncobj: drop unused syncobj code. +- mesa: remove unused buffer object code. +- mesa/transformfeedback: remove unused transform feedback code +- mesa/barrier: remove unused barrier functions +- mesa/externalobject: delete unused functions +- intel/compiler: drop glsl options from brw_compiler +- meson: make mesa/tests/glx depend on gallium +- mesa/dd/st: move get strings pointer out of dd.h +- mesa/dd/st: direct wire queries/timestamp/condrender. +- mesa/st: direct call sync object functions +- mesa/st: move barriers to direct call +- mesa/st: move transformfeedback to direct calls +- mesa/st: move external objects to direct calls +- mesa/crocus/iris/blorp: drop minify macro in favour of u_minify +- mesa: move _mesa_varying_slot_in_fs to shader_enums +- anv: include futex.h explicitly in allocator. +- brw/compiler: drop mtypes.h from compiler +- intel/compiler: drop shader_info.h from compiler header +- intel/crocus: push main/macros.h out to the users +- mesa/st: move rendermode to direct call +- mesa/st: move Enable to direct call +- mesa/st: move query memory info to direct call +- mesa/st: move perf query to direct call +- mesa/st: move perfomance monitor to direct call +- mesa/dd: drop purgeable interface +- mesa/st: move fbo code to direct calling +- mesa/st: move texture APIs to direct st calls +- mesa/st: move Clear to new direct call +- mesa/st: move pixel/bitmap functions to direct call +- mesa/st: move clear/flush/finish to direct call +- mesa/st: move some context functions to direct calls +- mesa/st: move viewport to direct call +- mesa/st: move copy image sub data to direct call +- mesa/st: move program calls to direct call +- mesa/st: replace most of buffer funcs with direct calls. +- mesa/st: move blit function to direct call +- mesa/st: convert the non-optional egl image to direct calls +- mesa/st: convert DrawTex to direct call +- mesa/st: move msaa functions to direct call +- mesa/st: move compute to direct call +- mesa/st: move draw indirect and xfb to direct calls. +- mesa/st: drop Draw from dd function table. +- treewide: drop mtypes/macros includes from main +- crocus: cleanup bo exports for external objects +- mesa/st: merge st buffer object into GL +- mesa/st: start moving bufferobject alloc/free/reference to main. +- mesa: add a pipe_context pointer to gl context +- mesa: add a pointer to st_config_options to gl_context +- mesa: add pointer to cso_context to gl_context +- mesa/st: migrate most of state tracker buffer objects into mesa +- mesa/st: make static the buffer object funcs that can be +- mesa/bufferobj: rename bufferobj functions to be more consistent. +- bufferobj: make sw clear buffer static, move it and rename it +- bufferobj: inline buffer clearing +- bufferobj: inline page commitment +- bufferobj: cleanup subdata copies +- mesa/st: rename access flag to transfer flag function +- mesa/bufferobj: move invalidate buffer to optional feature +- mesa/st: remove st_cb_bufferobjects* +- mesa: inline mesa_initialize_buffer_object. +- mesa/st: refactor compute dispatch to fill grid info earlier. +- mesa/st: migrate compute dispatch to mesa +- mesa/compute: refactor compute launch to look more like draw +- mesa/st: move get sample position code to static in mesa +- mesa/st: move msaa functionality into multisample.c +- mesa/st: migrate barrier code into mesa +- mesa/st: move st strings handling into mesa +- mesa: drop texformat code this isn't used. +- mesa/st: use has_stencil_export instead of querying screen cap. +- mesa: drop unused new renderbuffer code. +- mesa: drop unused _mesa_new_program. +- mesa/dd: drop unused InvalidateBufferSubData entry. +- intel/compiler: remove gfx6 gather wa from backend. +- intel/compiler: don't lower swizzles in backend. +- intel/compiler: drop unused decleration +- mesa: remove StripTextureBorder option. +- mesa/draw: drop the multi draw with indices fallback. +- mesa/st: move default enabled extensions into mesa. +- mesa: drop optional tex/tnl maintains mode. +- mesa/st: merge NewDepthClamp state flag +- mesa/st: drop the new array driver state bit +- mesa/st: drop the rasterizer driver flags +- mesa/st: remove the viewport driver state flags +- mesa/st: drop NewBlend driver state flags +- mesa/st: drop new depth/stencil state bits +- mesa/st: drop poly stipple driver state bit +- mesa/st: drop new tess state driver bit +- mesa/st: drop new uniform driver state bit +- mesa: drop unused transform feedback state driver flags +- mesa/st: drop ssbo, image and sampler driver state flags bits +- mesa/st: drop scissor/window rect driver state bits +- mesa/st: drop clip plane driver state bits +- mesa/st: drop new framebuffer srgb driver state bit +- mesa/st: drop multisample mask/locations state drivers bits +- mesa/st: remove conditionals for driver state bits that are always set. +- intel/genxml/gen4-5: fix more Raster Operation in BLT to be a uint +- crocus: fail resource allocation properly. +- crocus: don't create staging resources > half aperture +- gallium/mesa: enhance PIPE_CAP_CLIP_PLANES to support override number +- crocus: set max clip planes to 6 for gen4. +- mapi: generate correct dispatch for EXT_draw_instanced +- glsl/linker: cleanup passing gl_context unnecessarily +- glsl: don't pass gl_context to lower shared references. +- glsl/linker: don't pass gl_context just for constants in xfb code +- glsl/linker: move more ctx->Consts to consts. +- glsl/linker: remove direct gl_context usage in favour of consts/exts/api +- glsl/linker: get rid of gl_context from link varyings +- glsl/linker: get rid of gl_context from uniform assign paths +- glsl/linker: get rid of gl_context from atomic counters paths +- glsl/linker: remove gl_context from check image resources +- glsl/linker: remove gl_context usage from more places. +- glsl/nir/linker: avoid passing gl_context inside gl_nir linker +- glsl/linker/uniform_blocks: don't pass gl_context around. +- glsl/linker: drop unused gl_context. +- glsl/linker: remove a bunch more gl_context references. +- glsl/nir: don't pass gl_context to the convertor routine. +- mesa/program: don't use CALLOC_STRUCT for instructions. +- mesa: rebalance the CALLOC_STRUCT/FREE force. +- mesa/st/perfmon: rebalance CALLOC_STRUCT/FREE +- mesa/st: get rid of ST_CALLOC_STRUCT use CALLOC_STRUCT +- intel/compiler: add clamp_pointside to vs/tcs/tes keys. +- crocus: only clamp point size on last stage. +- amd: move vcn decoding regs + structs to a common file. +- amd: move uvd decode definitions to common place +- mesa/\*: use an internal enum for tessellation primitive types. +- mesa/\*: add a shader primitive type to get away from GL types. +- includes: add windows lean and mean guard. +- nir: remove gl.h include from nir headers. +- intel/brw: drop gl header from the brw backend. +- glsl/parser: extract consts/exts/api out of context at start. +- mesa: drop unused context parameter to shader program data reference. +- mtypes: split gl extensions and consts out into a separate header +- mesa/mtypes: move matrix enums to shader_enums.h +- glsl: remove some deps on mtypes.h. +- mesa: move some gl shader types to shader_types.h. +- glsl: avoid rebuilding builtin functions on mtypes.h changes. +- glsl: move ast_function.cpp off mtypes.h +- mesa: move ast_to_hir.cpp off mtypes.h +- mtypes: move gl_linked_shader and gl_shader_program to new shader_types.h +- mtypes: move gl_program to shader_types.h +- mtypes: more gl_active_atomic_buffer to shader_types.h +- mtypes: move transform feedback internal structs to shader_types.h +- mtypes: move uniform shader types to shader_types.h +- mtypes: move bindless image/sampler objects to shader_types.h +- mtypes: move gl_shader_variable to shader_types.h +- glsl: move off mtypes.h in lots of places. +- glsl/fp64: move context.h dependent checks into main. +- glsl: drop some more context.h/mtypes.h interactions +- vbo: drop unused mtypes.h +- docs: update docs for new extension header. +- mesa: more mtypes.h cleanups +- mesa: split struct gl_config into it's own header. +- glsl: drop glheader.h include. +- mesa/st: merge memoryobjects code from st into mesa +- mesa/st: merge semaphore objects from st into mesa +- mesa/st: merge the syncobj code from st into mesa +- mesa/st: merge queryobj code from st into mesa. +- mesa/st: merge condrender code from st into mesa. +- mesa/st: merge st transform feedback object into gl one. +- mesa/st: merge transform feedback code from st into mesa +- mesa/st: merge perfmon object from st into mesa +- mesa/st: merge perfmon counters/groups objects from st into mesa +- mesa/st: merge perfmon groups init/cleanup from st into mesa +- mesa/st: move perfmon code from st into mesa +- mesa/st: cleanup last bits of st perfmon code. +- mesa/st: merge texture object/image structs into mesa +- mesa/st: merge texture obj/image alloc/free into mesa +- intel/perf: use a function to do common allocations +- meson: start building intel earlier. +- mesa/st: move intel blackhole noop enable to frontend +- mesa/st: remove st_context from debug callback +- mesa/st: migrate debug callback code into mesa +- mesa/st: drop last user of st_Enable. +- mesa/st: directly call the uuid get funcs. +- mesa/st: drop emit string marker device table entry. +- mesa/st: move pin l3 cache to direct check/call. +- mesa/dd: drop GetProgramBinaryDriverSHA1 +- mesa/st: drop useless tex parameter calls. +- mesa/st: move st_TexParameter into mesa +- mesa/st: drop release all sampler views wrapper +- mesa/st/vdpau: direct call the vdpau functions. +- mesa/st: move evaluate depth values into mesa +- mesa/ctx: store screen pointer in ctx as well +- mesa/st: inline st_max_shader_compiler_threads +- mesa/st: move shader completion into mesa +- mesa/st: move memory query into mesa. +- mesa/st: drop some bindless wrappers +- mesa/st: drop lots of perfquery wrappers +- mesa/st: move perf query test to st_context, drop files. +- mesa/st: merge st_renderbuffer into gl_renderbuffer. +- mesa/st: move some renderbuffer code into mesa +- mesa/st: merge framebuffer objects from st to mesa +- mesa/st: move render/finish_render texture in to mesa. +- mesa/st: move validate/discard framebuffer into mesa +- mesa/st: move st_ReadBuffer functionality into mesa +- mesa/st: move DrawBufferAllocate into mesa. +- mesa/st: move st renderbuffer code into mesa renderbuffer +- mesa/st: move map/unmap renderbuffer code into mesa +- mesa/st: move st_new_renderbuffer_fb to manager +- mesa/st: move some fbo helpers around. +- mesa/st: fixup viewport drawable invalidation +- mesa/st: migrate blit code into mesa +- mesa/st: move last of renderbuffer functionality into mesa +- mesa/st: move renderbuffer format choosing wrapper into mesa. +- mesa/st: move manager colorbuffer interface to gl_context. +- mesa/st: move invalidate_on_gl_viewport to ctx +- mesa/st: move st_fb_orientation into a mesa function +- mesa: consolidate setting no error state and checking suid. +- mesa/st: collapse st_program into gl_program object. +- mesa/st: move new ati fragment shader to mesa +- mesa/st: move st_vertex_program to gl_vertex_program in mesa +- mesa/st: move program new/delete into mesa +- mesa/st: refactor program translation into one file. +- crocus: find correct relocation target for the bo. +- crocus: fix leak on gen4/5 stencil fallback blit path. +- draw/so: don't use pre clip pos if we have a tes either. +- lavapipe: fix sampler + sampler view leaks. +- lavapipe: reference gallium fences correctly. +- vulkan/wsi: handle queue families properly for non-concurrent sharing mode. +- crocus: change the line width workaround for gfx4/5 +- gallivm/nir: extract a valid texture index according to exec_mask. + +Derek Foreman (3): + +- egl/wayland: Properly clear stale buffers on resize +- panfrost: Support planar formats for scanout +- panfrost: support PIPE_RESOURCE_PARAM_NPLANES query + +Dylan Baker (54): + +- docs: add release notes for 21.2.4 +- docs: add sha256 sum for 21.2.4 release +- docs: update calendar and link releases notes for 21.2.4 +- meson: use gtest protocol for gtest based tests when possible +- docs: add release notes for 21.2.5 +- docs: add sha256 sums for 21.2.5 +- docs: update calendar and link releases notes for 21.2.5 +- turnip: don't use mesa/macros.h to get utils/rounding.h +- docs: add release notes for 21.2.6 +- docs: add sha256 sums for 21.2.6 relnotes +- docs: update calendar and link releases notes for 21.2.6 +- docs/release-calendar: remove additional 21.2 releases +- docs: Add calendar entries for 22.0 release candidates. +- mesa/tests: ensure that util_cpu_detect has been called +- classic/r100: Delete driver +- classic/r200: Delete driver +- classic/nouveau: Remove driver +- classic/i915: Remove driver +- classic/i965: Remove driver +- mesa/dri: remove mega driver stub +- include/pci_ids: Move PCI ids supported by both i965 and iris to iris +- mesa/main/tests: remove dispatch sanity +- mesa: Delete libmesa_classic +- mesa: Merge libmesa_gallium and libmesa_common +- mesa: move common/dri into gallium +- meson: restore dri.pc file +- CODEOWNERS: remove OpenSWR +- new_features: Add OpenSWR removal +- fixup! gallium/swr: Remove driver source +- docs: move the release for 22.0 out +- VERSION: bump for 22.0.0-rc1 release +- .pick_status.json: Update to 0447a2303fb06d6ad1f64e5f079a74bf2cf540da +- .pick_status.json: Update to 8335fdfeafbe1fd14cb65f9088bbba15d9eb00dc +- .pick_status.json: Update to 5e9df85b1a4504c5b4162e77e139056dc80accc6 +- VERSION: bump version for 22.0.0-rc2 +- .pick_status.json: Update to 7955df28a6660d8dff77c79c345aa28aa7fa859c +- .pick_status.json: Update to 22fc53493092a7507c1e2db47b0c8763158d7b2d +- .pick_status.json: Update to 108e6eaa83eed3eb356f3cce835c5f5e3a836b8e +- .pick_status.json: Mark b07372312d7053f2ef5c858ceb1fbf9ade5e7c52 as denominated +- .pick_status.json: Update to 3759a16d8a883355effa435f46867951ce712dbe +- .pick_status.json: Mark a8418abd748e8e761dda9c3594e29e560833d9ff as denominated +- .pick_status.json: Update to 22efeec399fb55dcb364dabd65afab137d6f3fc3 +- .pick_status.json: Update to f030b75b7d2c359b90c18ee4ed83fa05265c12e0 +- .pick_status.json: Update to fd3451babd6cded6794561d74c8919576ba1f97d +- llvmpipe: remove test that passes on 22.0 for some reason from the fail list +- .pick_status.json: Update to b21e7e1ef7ba2c2cf97f073a8a01d6bc43835622 +- d3d12: mark incorrectly passing tests as expected failures +- VERSION: bump for 22.0.0-rc3 +- .pick_status.json: Update to 48b3ef625e1909c1be31fbe10adb53734af38eb4 +- .pick_status.json: Update to 48b3ef625e1909c1be31fbe10adb53734af38eb4 +- ci/zink: mark tests fixed by previous commit as fixed +- ci/zink: mark more expected passes as such +- Revert "panfrost: Fix set_sampler_views for big GL" +- .pick_status.json: Update to 342e6f83321a91816358dee82178809b2a8aeeaa + +Edward O'Callaghan (4): + +- clover/images: Add array_size to implement CL_IMAGE_ARRAY_SIZE +- clover: Implement CL_MEM_OBJECT_IMAGE2D_ARRAY +- clover: Implement CL_MEM_OBJECT_IMAGE1D_BUFFER +- clover: Implement CL_MEM_OBJECT_IMAGE1D_ARRAY + +Eleni Maria Stea (1): + +- dri_drawable: missing header + +Ella Stanforth (2): + +- v3dv: Implement VK_KHR_create_renderpass2 +- vulkan: Allow RegisterDisplayEventEXT before first page flip + +Ella-0 (2): + +- v3dv: implement VK_EXT_host_query_reset +- v3dv: enable VK_KHR_swapchain_mutable_format + +Emma Anholt (204): + +- ci/lvp: Skip some slow tests under ASan. +- loader: Avoid enumerating drm devices just to get an fd's PCI ID. +- freedreno/afuc: Disable the disassembler on 32-bit builds. +- ci/deqp-runner: Drop SUMMARY_LIMIT env var. +- ci/deqp-runner: Simplify the --jobs argument setup. +- ci/deqp-runner: Use new deqp-runner's built-in renderer/version checks. +- ci/deqp-runner: Drop silly CSV env vars. +- ci/deqp-runner: Move remaining asan runs to --env LD_PRELOAD= +- ci/deqp-runner: Drop LD_LIBRARY_PATH=/usr/local for libkms workaround. +- ci/deqp-runner: Don't start GPU hang detection for making junit results. +- ci/deqp-runner: Move more non-suite logic under the non-suite 'if'. +- ci/piglit-runner: Fix funny indentation of the piglit-runner command. +- turnip: Switch tu6_format_texture() to a pipe_format. +- turnip: Switch tu6_format_color() to a pipe_format. +- turnip: Switch format_to_ifmt() to take a pipe_format. +- util: Move freedreno's snorm-to-unorm to util/, adding remaining cases. +- turnip: Make copy_format() and tu6_plane_format() return pipe_format +- gallium/u_blitter: Read MSAA z/s from sampler's .x instead of .y or .z. +- turnip: Drop the assertion about the temporary bit in sync fd imports. +- ci/radeonsi: Use a deqp-runner suite suite for stoney. +- ci/deqp-runner: Rename the deqp-drivername-\*.txt files to drivername-\*.txt +- ci/piglit-runner: Merge piglit-driver-\*.txt files into driver-\*.txt. +- ci: Enable testing radeonsi's libva using libva-util unit tests. +- ci/etnaviv: Fix the dependency for the build artifacts. +- ci/etnaviv: Add some more deqp flakes I've seen in recent runs. +- etnaviv: Switch to the NIR compiler by default. +- i915g: Check for negate/swizzle on TGSI_OPCODE_KILL_IF's src.yzw. +- i915g: Make sure we consider negates/swizzles on bias/shadow coords. +- i915g: Improve the explanation for the 1D Y swizzle. +- ci: Uprev VK-GL-CTS to 1.2.7.2, and pull in piglit while I'm here. +- freedreno: Fix gmem invalidating the depth or stencil of packed d/s. +- freedreno/a6xx: Emit a null descriptor for unoccupied IBO slots. +- freedreno/fdl6: Add an interface for setting up buffer descriptors. +- turnip: Use the new shared buffer-view descriptor creation function. +- turnip: Remove buffer-view cross-check code. +- freedreno/fdl6: Add support for texture swizzles of A/L/I/LA/RGBx. +- freedreno/a6xx: Use the fdl buffer view setup for img/ssbo descriptors. +- freedreno: Fix layered rendering to just Z/S and not color. +- freedreno/a6xx: Fix partial z/s clears with sysmem. +- freedreno/a5xx: Use the defined names for 2D_BLIT_CNTL regs. +- freedreno/a618: Mark a flaky test that triggers hangcheck. +- freedreno/a6xx: Don't try to generate mipmaps for SNORM with our blitter. +- freedreno/a5xx+: Fix missing LA formats. +- freedreno/a5xx: Diff reduction in fd5_layout to fd6_layout. +- freedreno/a6xx: Try to fix drawing to z/s miplevel/layer offsets. +- freedreno/a5xx: Remove bogus assertion about BO size. +- freedreno/a5xx: Try to fix drawing to z/s miplevel/layer offsets. +- freedreno/a5xx: Clean up a little bit of blitter array pitch setup. +- freedreno/ir3: Fix off-by-one in prefetch safety assert. +- turnip: Claim 1.2.7.1 CTS conformance. +- freedreno: Fix the uniform/nonuniform handling for cat5 bindful modes. +- freedreno: Fix constant-index assumptions in IBO loads. +- ci/etnaviv: Mark the rest of uniform_api.random as flaky. +- ci/etnaviv: Add more texturing flakes. +- ci/bare-metal: Close serial and join serial threads before exit. +- util: Rename PIPE_FORMAT_G8_B8_R8_420_UNORM. +- util/format: Add G8_B8R8_420_UNORM to match Vulkan. +- freedreno/fdl6: Skip redundant setting of TILE_ALL for NV12. +- freedreno: Set layer_first on (2D) resource imports. +- freedreno/a6xx: Create a fd6_view at sampler view update time. +- freedreno/a6xx: Switch to relying on fd6_view for our texture descriptors. +- freedreno/a6xx: Use fd6_view for non-buffer image descriptors, too. +- freedreno/a6xx: Clean up sysmem fb read patching using fd6_view. +- freedreno/a6xx: Drop an unused tile_mode arg. +- freedreno/a6xx: Inline remaining fd6_tex_const_0() call. +- mesa/st: Disable NV_copy_depth_to_color on non-doubles-capable HW. +- freedreno/a6xx: Add some notes about piglit failures. +- freedreno/ir3: Fix an off-by-one in so->outputs_count safety assert. +- ci/freedreno: Enable the tes-input/tcs-input tests. +- freedreno/a6xx: Do sparse setup of the TFB program. +- ci/freedreno: Add notes explaining the KHR-GL* failures. +- ci/freedreno: Add a link to the issue for color_depth_attachments. +- freedreno/fdl: Dump the generated layout when a layout test fails. +- freedreno: Fix the texturator unit test script. +- freedreno/cffdump: Fix 64-bit reg decode in script mode. +- freedreno/fdl: Add support for unit testing 3D texture array strides. +- freedreno/cffdump: Fix up formatting of texturator unit test script output. +- freedreno/cffdump: Handle the TILE_ALL flag in unit test generation. +- freedreno/a6xx: Fix a bunch of 3D texture layout to match blob behavior. +- freedreno: Stop exposing MSAA image load/store on desktop GL. +- freedreno/a6xx: Disable sample averaging on z/s or integer blits. +- freedreno/a6xx: Disable sample averaging on non-ubwc z24s8 MSAA blits. +- freedreno/a5xx: Define a5xx_2d_surf_info like a6xx has. +- freedreno/a5xx: Document the sRGB bit on RB_2D_SRC/DST info. +- freedreno/a5xx: Emit MSAA state for sysmem rendering, too. +- nir: Un-inline nir_builder_alu_instr_finish_and_insert() +- nir: Un-inline more of nir_builder.h. +- freedreno/ir3: Make a shared helper for the tess factor stride. +- turnip: Move CP_SET_SUBDRAW_SIZE to vkCmdBindPipeline() time. +- nir: Uninline a bunch of nir.h functions. +- nir: Make nir_build_alu() variants per 1-4 arg count. +- freedreno/a6xx: Allocate a fixed-size tess factor BO. +- freedreno/a6xx: Skip emitting tess BO pointers past the shader's constlen. +- freedreno/a6xx: Set the tess BO ptrs in the program stateobj. +- mesa/st: Remove GL_ARB_depth_clamp emulation support. +- r300: Add deqp expectations for RV515. +- r300: Turn a comment about presub into an assert. +- r300: Fix mis-optimization turning -1 - x into 1 - x. +- nouveau/nir: Use the address reg for indirect scratch access. +- nir/algebraic: Move some generated-code algebraic opt args into a struct. +- nir/algebraic: Drop the check for cache == None. +- nir/algebraic: Replace relocations for nir_search values with a table. +- nir/algebraic: Remove array-of-cond code +- nir/algebraic: Move relocations for expression conds to a table. +- nir/algebraic: Move relocations for variable conds to a table. +- nir/algebraic: Pack various bitfields in the nir_search_value_union. +- nir/algebraic: Mark the automaton's filter tables as const. +- nir/algebraic: Move all the individual transforms to a common table. +- r300: Move the instruction filter for r500_transform_IF() to the top. +- r300: Cache the var list in the peephole_mul_omod() loop. +- r300: Ensure that immediates have matching negate flags too. +- r300: Also consider ALU condition modifiers for loop DCE. +- r300: Remove the non_normalized_coords from the shader key. +- r300: Precompile the FS at shader creation time. +- r300: Route shader stats output to ARB_debug_output. +- r300/ci: Update loop expectations +- loader: Restore i915g support. +- r300/ci: Add some piglit expectations. +- nir/nir_to_tgsi: Add support for "if" statements with !native_integers +- nir_to_tgsi: Make !native_integers front face input match glsl_to_tgsi. +- r300: Disable loop unrolling on r500. +- r300: Request NIR shaders from mesa/st and use NIR-to-TGSI. +- nir_to_tgsi: Enable nir_opt_move. +- nir/nir_opt_move,sink: Include load_ubo_vec4 as a load_ubo instr. +- nir_to_tgsi: Set the TGSI Precise flag for exact ALU instructions. +- r300: Remove some dead compiler code. +- r300: Remove support for SCS. +- r300: Remove unused RC_OPCODE_ABS. +- r300: Remove unused RC_OPCODE_XPD. +- r300: Remove unused RC_OPCODE_SWZ. +- r300: Remove unused RC_OPCODE_CLAMP. +- r300: Remove unused RC_OPCODE_SFL +- r300: Remove unused RC_OPCODE_DPH +- ci/freedreno: Add known flakes from the last month. +- ci/crocus: Add support for manual CI runs on my G41. +- crocus: Clamp VS point sizes to the HW limits as required. +- glsl: Delete the vectorization opt pass. +- glsl: Delete the optimize_redundant_jumps pass. +- glsl: Remove dead prototype for old do_discard_simplification(). +- glsl: Remove comment about non-existing DFREXP_TO_ARITH +- glsl: Retire unused modes for lower_64bit_integer_instructions. +- ci/r300: Add another xfail on the main branch. +- r300/vs: Allocate temps we see a use as a source, too. +- r300/vs: Reuse rc_match_bgnloop(). +- r300/vs: Fix flow control processing just after an endloop. +- ci: Enable a build with MSan. +- glcpp: Disable the valgrind tests. +- softpipe: Drop the quad pstipple stage. +- softpipe: Use the draw module's poly stipple handling, like llvmpipe. +- softpipe: Drop duplicate decl of softpipe_find_fs_variant +- ci/crocus: Add manual CI for the new HSW box I have at home. +- ci: Enable reporting to the flakes IRC channel for i915g and crocus. +- ci/i915g: Add a couple more recent regressions. +- nir_to_tgsi: Use the same address reg mappings as GLSL-to-TGSI did. +- gallium: Delete PIPE_CAP_TGSI_ANY_REG_AS_ADDRESS +- tgsi/exec: Simplify indirects now that they always use the ADDR file. +- i915g: Turn off FP16 in the vertex shaders. +- r300: Use uif() instead of pointer aliasing in program printing. +- ci/r300: Update xfails from a full dEQP run. +- r300: Fix omod failing to increase the number of channels stored. +- nir_to_tgsi: Enable fdot_replicates flag. +- ci: Shrink container/rootfs sizes. +- nir_to_tgsi: Fix a bug in TXP detection after backend lowering. +- ci/llvmpipe: Sort the list of traces. +- ci/llvmpipe: Add a trace for the game JVGS, which got regressed recently. +- ci: Add paraview traces to several drivers. +- freedreno/ir3: Use nir_opt_offset for removing constant adds for shared vars. +- nir: Apply nir_opt_offsets to nir_intrinsic_load_uniform as well. +- r300: Drop unused r300_get_stats() call. +- r300: Add consts (uniforms) count to the shader-db output. +- nir/lower_dynamic_bo_access: Use copy_inst_indices for our cloned instrs. +- nir: Add a .base field to nir_load_ubo_vec4. +- nir/opt_offsets: Disable unsigned wrap checks on non-native-integers HW. +- nir/opt_offsets: Also apply the max offset to top-level constant folding. +- nir_to_tgsi: Use nir_opt_offsets for load_ubo_vec4. +- nir/opt_offsets: Use nir_ssa_scalar to chase offset additions. +- softpipe: respect !independent_blend_enable for color masks. +- softpipe: Request that st fix up DST_ALPHA blending for RGB render targets. +- ci/softpipe: Drop the GS sampling known-flakes. +- nir/lower_locals_to_regs: Do an ad-hoc copy propagate on our generated MOV. +- tgsi_exec: Fix shared var stores for >1 real invocation, and overflow checks. +- softpipe: Improve some local var naming in compute shaders. +- softpipe: Initialize the CS dispatch mask at machine setup time. +- softpipe: Dispatch 4 CS invocations per tgsi_exec thread. +- Revert "ci: freedreno: Update a530 dEQP fail expectation list" +- ci/llvmpipe: Drop the skip of piglit edgeflag test. +- ci/llvmpipe,softpipe: Switch piglit testing to piglit-runner. +- ci/traces: Rename the piglit/run.sh script to piglit-traces.sh. +- ci/traces: Drop the PIGLIT_PROFILES setting for traces replay. +- ci/traces: Clean up the failure report message. +- ci/traces: Drop the baseline file creation for trace results. +- ci/traces: Drop PIGLIT_REPLAY_UPLOAD_TO_MINIO. +- ci/traces: Always generate the junit XML. +- ci/freedreno: Update hashes for closed traces. +- vulkan: Fix leak of error messages +- ci: Use a dlclose-disabling preload library for leak checking in Vulkan. +- ci/freedreno: Switch 2 default a630 VK jobs to being GLES and VK ASan jobs. +- turnip: Store the computed iova in the tu_buffer. +- turnip: Store the computed iova in the tu_image. +- r300: Disable fp16 and int16 in swtcl vertex shaders. +- r300/r600: Add drm-shim support. +- freedreno/isaspec: Add missing dep of encode.py/decode.py calls on isa.py +- intel: Add missing dep of gen_*_header.py on utils.py. +- i915g: Initialize the rest of the "from_nir" temporary VS struct. + +Enrico Galli (3): + +- microsoft/compiler: Shadow tex instructions always use shadow samplers +- microsoft/spirv_to_dxil: Add DXIL validation to spirv2dxil +- ci/windows: Add validation tests for spriv_to_dxil + +Eric Engestrom (33): + +- VERSION: bump to 21.4 +- docs: reset new_features.txt +- VERSION: bump to 22.0 +- docs: update calendar for 21.3.0-rc1 +- docs: update calendar for 21.3.0-rc2 +- docs: update calendar for 21.3.0-rc3 +- docs: update calendar for 21.3.0-rc4 +- release-calendar: fix date for next 21.3 rc +- meson: drop duplicate addition of surfaceless & drm to the list of platforms +- meson: move \`egl_native_platform` definition inside the \`with_egl` block +- meson: drop impossible \`if no platform` branch +- meson: always define \`HAVE_{X11,XCB}_PLATFORM` when it's enabled +- meson: automatically define \`HAVE_{some}_PLATFORM` +- docs: update calendar for 21.3.0-rc5 +- docs/submittingpatches: add link to section describing how to make a backport MR +- docs/submittingpatches: add formatting around the release branches names +- docs/submittingpatches: mention use of the \`-x` flag of \`git cherry-pick` when backporting a commit +- docs: update branchpoint instructions +- docs: add release notes for 21.3.0 +- docs: update calendar and link releases notes for 21.3.0 +- docs: add 21.3.x release schedule +- docs: add 22.0 branchpoint date for perspective +- docs: add release notes for 21.3.1 +- docs: update calendar and link releases notes for 21.3.1 +- docs: add release notes for 21.3.2 +- docs: update calendar and link releases notes for 21.3.2 +- docs: add release notes for 21.3.3 +- docs: update calendar and link releases notes for 21.3.3 +- docs: add release notes for 21.3.4 +- docs: update calendar and link releases notes for 21.3.4 +- docs: add release notes for 21.3.5 +- docs: update calendar and link releases notes for 21.3.5 +- docs/release-calendar: add another 21.3.x since 22.0 has been delayed a bit + +Erico Nunes (5): + +- ci: temporarily disable lima CI +- mesa: fix GL_MAX_SAMPLES with GLES2 +- lima/gpir: avoid invalid write in regalloc +- lima/ppir: initialize slots array for dummy/undef +- lima/ppir: refactor bitcopy to use unsigned char + +Erik Faye-Lund (9): + +- docs: update trademark disclaimer +- CODEOWNERS: remove ownership of deleted code +- ci: remove testing of deleted code +- docs: remove mentions of deleted code +- docs: remove stale notice about deleted dir +- ensure csv-files are crlf on disk +- bin/gen_calendar_entries: fix newlines on windows +- docs: use http-redirect when possible +- docs: remove incorrect drivers from extension + +Felix DeGrood (2): + +- anv: increase binding table pool size to 64KB +- pps: increase intel.cfg buffer size + +Filip Gawin (8): + +- r300: improve precission of linear interpolation +- r300: stub derivatives on r300 and r400 hardware +- nir: assert that variables in optimize_atomic are initialized +- glsl: fix trivial strict aliasing warning +- radv: dont call calloc when BVH is empty +- iris: fix mapping compressed textures +- r300: fix handling swizzle in transform_source_conflicts +- r300: replace recursive calls with loops + +Francisco Jerez (28): + +- intel/fs/xehp: Teach SWSB pass about the exec pipeline of FS_OPCODE_PACK_HALF_2x16_SPLIT. +- intel/fs: Add physical fall-through CFG edge for unconditional BREAK instruction. +- intel/dev: Fix size of device info num_subslices array. +- intel/dev: Add support for pixel pipe subslice accounting on multi-slice GPUs. +- intel/dev: Implement DG2 restrictions requiring additional DSSes to be disabled. +- intel/xehp: Implement XeHP workaround Wa_14013910100. +- intel/xehp: Implement XeHP workaround Wa_14014148106. +- intel/xehp: Update 3DSTATE_PS maximum number of threads per PSD. +- intel/fs: Don't assume packed dispatch for fragment shaders on XeHP. +- intel/blorp/gfx12+: Drop unnecessary state cache invalidation from binding table setup. +- intel/genxml: Fix SLICE_HASH_TABLE struct on XeHP. +- iris: Merge gfx11\_ and gfx12_upload_pixel_hashing_tables() into the same function. +- intel: Move pixel hashing table computation into common header file. +- intel: Minimal calculation of pixel hash table for arbitrary number of pixel pipes. +- intel: Rename intel_compute_pixel_hash_table() to intel_compute_pixel_hash_table_3way(). +- iris: Program pixel hashing tables on XeHP. +- anv: Program pixel hashing tables on XeHP. +- intel/xehp: Switch to coarser cross-slice pixel hashing with table permutation. +- iris/xehp: Implement workaround for 3D texturing+anisotropic filtering. +- intel/fs/xehp: Merge repeated in-order read dependencies instead of replacement. +- intel/fs: Move legal exec type calculation into helper function in lower_regioning pass. +- intel/fs: Teach the lower_regioning pass how to split instructions of unsuported exec type. +- intel/fs: Take into account region strides during SIMD lowering decision of SHUFFLE. +- intel/fs: Fix destination suboffset calculations for non-trivial strides in SHUFFLE codegen. +- intel/fs: Perform 64-bit SHUFFLE lowering in the lower_regioning pass. +- intel/fs: Perform 64-bit SEL_EXEC lowering in the lower_regioning pass. +- intel/fs: Honor strided source regions specified by the IR for CLUSTER_BROADCAST. +- intel/fs: Perform 64-bit CLUSTER_BROADCAST lowering in the lower_regioning pass. + +Georg Lehmann (8): + +- meson: Use get_supported_arguments more often. +- meson: Remove some unnecessary loops. +- amd/addrlib: Use get_supported_arguments to get compiler args. +- radv: Increase maxFragmentCombinedOutputResources. +- vulkan/wsi/wayland: Fix add_wl_shm_format alpha/opaqueness. +- vulkan/wsi/wayland: Convert missing vulkan formats to shm formats. +- vulkan/wsi/wayland: Add modifiers for RGB formats. +- vulkan/wsi/wayland: Fix add_drm_format_modifier aplha/opaqueness. + +Gert Wollny (7): + +- virgl: Add driconf tweak to force-enable reading back R8_SRGB textures +- virgl: obtain supported number of shader sampler views from host +- ci: pin virglrenderer version +- virgl: Enable higher compatibility profiles if host supports it +- util/primconvert: map only index buffer part that is needed +- nir_lower_io: propagate the "invariant" flag to outputs +- ntt: Set the output invariant flag according to the semantics + +Greg V (2): + +- util: __getProgramName: remove check for ancient FreeBSD versions, simplify ifdefs +- util: make util_get_process_exec_path work on FreeBSD w/o procfs + +Guido Günther (6): + +- etnaviv/drm: Use etna_mesa_debug for debugging messages +- etnaviv/drm: Add some bo debug output +- etnaviv/drm: Print gpu model at debug verbosity +- etnaviv/drm: Use mesa_log* for debugging +- entaviv/drm: Use same log format as gallium bits +- etnaviv: Use mesa_log* + +Guilherme Gallo (14): + +- ci: Update linux kernel to v5.15 +- iris/ci: Fix traces for amly and deqp list for whl +- ci/freedreno: Add maxcpus=2 to the kernel cmdline on a530 +- panfrost/ci: update piglit tests expectations on G52 +- ci: Update ci-fairy to version with --token-file support +- ci: Uprev piglit +- ci: Use ci-fairy minio login via token file +- ci: Build skqp on ARM64 images +- ci: Add a630_skqp jobs +- ci: skqp: Add documentation on how to maintain skqp jobs +- ci: Uprev Kernel to v5.16 +- ci: freedreno: Update a530 dEQP fail expectation list +- ci: Add docs for Linux Kernel uprevs +- virgl/ci: make crosvm-runner pass variables in a secure way + +Hamish Arblaster (1): + +- zink: Fix building on macOS + +Henry Goffin (1): + +- intel/compiler/test: Fix build with GCC 7 + +Hoe Hao Cheng (3): + +- zink/codegen: support platform tags +- zink/codegen: remove core_since in constructor +- zink/codegen: remove bogus print statement + +Hyunjun Ko (10): + +- turnip: expose VK_KHR_driver_properties +- anv: Fix to honor the spec to get stencil layout. +- radv: Fix to honor the spec to get stencil layout. +- vulkan/util: Move helper functions for depth/stencil images to vk_iamge +- turnip: Enable VK_KHR_separate_depth_stencil_layouts +- turnip: Use the new common device lost tracking +- vulkan: fix typo +- turnip: Porting to common vulkan implementation for synchronization. +- turnip: Porting to common implementation for timeline semaphore +- turnip: fix leaks of submit requests. + +Iago Toral Quiroga (63): + +- v3dv: fix TLB buffer to image copy path for 3D images +- v3dv: enable Vulkan 1.1 +- broadcom/compiler: disallow tsy barrier in thrsw delay slots +- broadcom/compiler: fix assert that current instruction must be in current block +- v3dv: refactor TFU jobs +- broadcom/compiler: rework simultaneous peripheral access checks +- broadcom/compiler: fix condition encoding bug +- broadcom/compiler: padding fixes to QPU assembly dumps +- broadcom/compiler: make opt passes set current block +- broadcom/compiler: check that sig packing is valid when pipelining ldvary +- broadcom/compiler: copy packing when converting add to mul +- v3dv,v3d: don't store swizzle pointer in shader/pipeline keys +- v3d: use V3D_MAX_DRAW_BUFFERS instead of hardcoded constant +- v3dv: account for multisampling when computing subpass granularity +- v3dv: don't use a global constant for default pipeline dynamic state +- v3d,v3dv: move tile size calculation to a common helper +- v3dv: fix internal bpp of D/S formats +- broadcom/compiler: fix early fragment tests setup +- broadcom/compiler: don't allow RF writes from signals after thrend +- broadcom/compiler: fix scoreboard locking checks +- broadcom/compiler: don't move ldvary earlier if current instruction has ldunif +- broadcom/compiler: allow color TLB writes in last instruction +- broadcom/compiler: relax restriction on VPM inst in last thread end slot +- broadcom/compiler: emit passthrough Z write if shader reads Z +- broadcom/compiler: track passthrough Z writes +- v3d,v3dv: don't disable EZ for passthrough Z writes +- broadcom/compiler: improve documentation for Z writes +- broadcom/compiler: improve thrsw merge +- v3dv: add a refcount mechanism to BOs +- v3dv: add swizzle helpers to identify formats wit R/B swap and reverse flags +- v3dv: handle formats with reverse flag +- v3dv: implement VK_EXT_4444_formats +- v3dv: implement double-buffer mode +- v3d: implement double-buffer mode +- docs/features: flag VK_KHR_create_renderpass2 as implemented for v3dv +- broadcom/simulator: handle DRM_V3D_PARAM_SUPPORTS_MULTISYNC_EXT +- v3dv: implement VK_KHR_driver_properties +- broadcom/compiler: add lowering pass to scalarize non 32-bit general load/store +- broadcom/compiler: better document vectorization implications +- broadcom/compiler: implement TMU general 16-bit load/store +- broadcom/compiler: lower packing after vectorization +- broadcom/compiler: support ldunifa with some 16-bit loads +- broadcom/compiler: use ldunifa with unaligned constant offset +- broadcom/compiler: implement 32-bit/16-bit conversion opcodes +- broadcom/compiler: support f32 to f16 RTZ and RTE rounding modes +- v3dv: support VK_KHR_16_bit_storage +- broadcom/compiler: support 16-bit uniforms +- v3dv: expose storagePushConstant16 feature from VK_KHR_16bit_storage +- broadcom/compiler: support 8-bit general store access +- broadcom/compiler: handle to/from 8-bit integer conversions +- broadcom/compiler: support 8-bit loads via ldunifa +- broadcom/compiler: allow vectorization to larger scalar type +- broadcom/compiler: update comment on load_uniform fast-path +- v3dv: support VK_KHR_8bit_storage +- v3dv: drop signature of undefined function +- v3dv: implement VK_KHR_imageless_framebuffer +- v3dv: rework Vulkan 1.2 feature queries +- v3dv: document why we don't expose VK_EXT_scalar_block_layout +- v3dv: support resolving depth/stencil attachments +- v3dv: fallback to blit resolve if render area is not aligned to tile boundaries +- v3dv: expose VK_KHR_depth_stencil_resolve +- v3dv: don't submit noop job if there is nothing to wait on or signal +- broadcom/compiler: fix offset alignment for ldunifa when skipping + +Ian Romanick (35): + +- nir/loop_unroll: Always unroll loops that iterate at most once +- glsl/nir: Don't build soft float64 when it cannot be used +- nir/constant_folding: Optimize txb with bias of constant zero to tex +- intel/compiler: Don't predicate a WHILE if there is a CONT +- intel/compiler: Don't store "scalar stage" bits on Gfx8 or Gfx9 +- intel/stub: Suppress warnings about DRM_I915_QUERY_PERF_CONFIG +- intel/stub: Implement DRM_I915_QUERY_ENGINE_INFO +- intel/stub: Implement DRM_I915_QUERY_MEMORY_REGIONS +- intel/stub: Implement I915_PARAM_HAS_USERPTR_PROBE +- intel/fs: Use HF as destination type for F32TOF16 in fquantize2f16 +- mesa: OpenGL 1.3 feature GL_ARB_texture_border_clamp is not optional +- mesa: OpenGL 1.3 feature GL_ARB_texture_cube_map is not optional +- mesa: OpenGL 1.3 feature GL_ARB_texture_env_combine is not optional +- mesa: OpenGL 1.3 feature GL_ARB_texture_env_dot3 is not optional +- mesa: OpenGL 1.3 and OpenGL ES 1.0 are not optional +- intel/stub: Silence "initialized field overwritten" warning +- intel/stub: Implement shell versions of DRM_I915_GEM_GET_TILING and DRM_I915_SEM_GET_TILING +- intel/fs: Fix gl_FrontFacing optimization on Gfx12+ +- ntt: Extend ntt_compile::addr_declared and ntt_compile::addr_reg +- mesa: OpenGL 1.4 feature GL_ARB_depth_texture is not optional +- mesa: OpenGL 1.4 feature GL_ARB_texture_env_crossbar is not optional +- mesa: OpenGL 1.4 feature GL_EXT_blend_color is not optional +- mesa: OpenGL 1.4 feature GL_EXT_blend_func_separate is not optional +- mesa: OpenGL 1.4 feature GL_EXT_blend_minmax is not optional +- mesa: OpenGL 1.4 feature GL_EXT_point_parameters is not optional +- mesa: OpenGL ES 1.1 is not optional +- gallivm/nir: Call nir_lower_bool_to_int32 after nir_opt_algebraic_late +- nir: All set-on-comparison opcodes can take all float types +- intel/fs: Don't optimize out 1.0*x and -1.0*x +- spriv: Produce correct result for GLSLstd450Step with NaN +- spirv: Produce correct result for GLSLstd450Modf with Inf +- spirv: Produce correct result for GLSLstd450Tanh with NaN +- nir: Properly handle various exceptional values in frexp +- nir: Produce correct results for atan with NaN +- nir: Add missing dependency on nir_opcodes.py + +Icecream95 (9): + +- panfrost: Set PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION +- pan/bi: Add interference between destinations +- pan/bi: Check dependencies of both destinations of instructions +- panfrost: Set dirty state in set_shader_buffers +- panfrost: Re-emit descriptors after resource shadowing +- pan/bi: Make disassembler build reproducibly +- panfrost: Fix ubo_mask calculation +- pan/bi: Skip psuedo sources in ISA.xml +- pan/bi: Don't assign slots for the blend second source + +Ilia Mirkin (50): + +- freedreno: support lua54 +- meson: build freedreno tools when other parts of freedreno not enabled +- freedreno: check batch size after the fallback blitter clear +- freedreno/ir3: fix setting the max tf vertex when there are no outputs +- freedreno/a4xx: fix min/max/bias lod sampler settings +- mesa: add missing state to state string computation +- nv50,nvc0: expose R8/RG8_SRGB formats for texturing +- mesa: add just a tiny bit of debug info to some _mesa_problem calls +- freedreno: prefer float immediates when float values are involved +- freedreno/a[345]xx: add R8/RG8 SRGB formats +- a5xx: remove astc srgb workaround logic +- freedreno/ir3: fix image-to-tex flags, remove 3d -> array hack +- nir: remove double-validation of src component counts +- freedreno/a4xx: add proper buffer texture support +- freedreno/a5xx: re-express buffer textures more logically +- freedreno/a6xx: re-express buffer textures more logically +- freedreno/a4xx: fix stencil-textured border colors +- freedreno/a4xx: indicate whether outputs are uint/sint +- freedreno/a4xx: include guesses from a3xx for some of the constid's +- freedreno/a4xx: hook up sample mask/id, used to determine helper invocs +- freedreno/ir3: adjust condition for when to use ldib +- mesa: check target/format for Tex(ture)StorageMem* +- mesa: move around current texture object fetching +- freedreno/a4xx: add missing SNORM formats to help tests pass +- freedreno/a4xx: add some missing legacy formats to help TBOs +- freedreno/a5xx: add missing L8A8_UNORM format to support TBOs +- freedreno/a[345]xx: fix unorm/snorm blend factors when they're "over" +- nir: always keep the clip distance array size updated +- nir: apply interpolated input intrinsics setting when lowering clipdist +- freedreno/ir3: remove unused actual_in counting +- nir/lower_clip: replace bogus comment about gl_ClipDistance reading in GL +- nir/lower_clip: location offset goes into offset, not base +- nir/lower_clip: increment num_inputs/outputs by appropriate amount +- nir/lower_clip: support clipdist array + no vars +- freedreno/ir3: indicate that clipdist arrays are in use +- freedreno/ir3: get the post-lowering clip/cull mask +- ci: move windowoverlap exclusion to all-skips +- freedreno/ci: add piglit runs for a306 +- freedreno/ci/a306: add additional skip which hangchecks +- freedreno/a3xx: add some legacy formats +- freedreno/ci/a306: separate msaa fails +- freedreno/ci/a306: split off the f32 blend / texturing failures +- freedreno/ci/a306: split off snorm blending failures +- freedreno/a5xx: enable OES_gpu_shader5 +- gitlab-ci: serial close can leave an active read +- gitlab-ci: detect a3xx gpu hang recovery failure +- nv50,nvc0: add new caps to list +- nv50: don't claim support for format-less stores +- freedreno/ci/a306: add more skips +- freedreno/ci/a306: increase concurrency + +Italo Nicola (4): + +- virgl/vtest: use correct resource stride in flush_frontbuffer +- virgl/vtest: implement resource_create_front +- virgl: flush cmd buffer when flushing frontbuffer +- drisw: do an MSAA resolve when copying the backbuffer + +Iván Briano (15): + +- intel/nir: also allow unknown format for getting the size of a storage image +- anv: Remove unused struct member +- anv: add functions to set up fake render passes +- anv: allocate fake render pass on pipeline creation +- anv: Split out state attachments allocation +- anv: allocate fake render pass for continuation command buffers +- anv: Split attachment clearing code into their own functions +- anv: split end_subpass into more discrete components +- anv: implement the meat of VK_KHR_dynamic_rendering +- anv: Enable VK_KHR_dynamic_rendering +- anv: Handle resolveImageLayout on dynamic rendering +- anv: Report the right conformance version +- anv: make the pointer valid before we assign stuff into it +- anv: only advertise 64b atomic floats if 64b floats are supported +- intel/compiler: make CLUSTER_BROADCAST always deal with integers + +Jakob Bornecrantz (1): + +- vulkan-device-select: Don't leak drmDevicePtr + +James Jones (1): + +- gbm: Don't pass default usage flags on ABIs < 1 + +James Park (5): + +- vulkan, radv: Support backslash in ICD paths +- aco: Work around MSVC restrict in c99_compat.h +- ac: Align ADDR_FASTCALL with addrlib +- radv: Match function definitions to declarations +- meson: Update libelf wrap for Windows + +Jan Beich (1): + +- meson: disable -Werror=thread-safety on FreeBSD + +Jan Zielinski (3): + +- gallium/swr: Remove driver source +- gallium/swr: Remove common code and build options +- gallium/swr: clean up the documentation after SWR removal from main + +Jason Ekstrand (158): + +- vulkan/log: Tweak our handling of a couple error enums +- vulkan/log: Don't assert on non-client-visible objects +- vulkan/wsi/win32: Delete the wrapper entrypoints +- i965: Emit a NULL surface for buffer textures with no buffer +- nir: Add a nir_foreach_image_variable() iterator +- i965/uniforms: Handle images as a separate pass +- amd/llvm/nir: Add support for nir_var_mem_image +- aco: Add support for nir_var_mem_image +- glsl/nir_linker: nir_var_mem_image is also a GL uniform +- nir/gl_nir_lower_samplers_as_deref: Support nir_var_mem_image +- nir/gl_nir_lower_images: Support nir_var_mem_image +- st/nir: Assign uniform locations to nir_var_mem_image vars +- ntt: Separate image and sampler handling +- llvmpipe: Support image variables living in nir_var_mem_image +- nir/lower_readonly_images_to_tex: Also rewrite variable modes +- clover: Insert dummy uniform variables for images +- clover: Use nir_foreach_image_variable for images +- zink: Images can live in nir_var_mem_image now +- ir3: Check for nir_var_mem_image in shared_barrier handling +- spirv: Assert that OpTypeForwardPointer only points to structs +- glsl: Use nir_var_mem_image for images +- ttn: Use nir_var_mem_image +- st/pbo: Use nir_var_mem_image for images +- nir: Validate image variable modes +- aco: Split var_mem_image barrier handling from global/ssbo +- intel/fs: Stop emitting TGM fences for nir_var_mem_ssbo +- nir/gl_nir_lower_images: Require nir_var_mem_image +- ir3: Images are always nir_var_mem_image +- nir: Drop our attempt at typed-based image mode validation +- nir: s/nir_var_mem_image/nir_var_image/g +- nir: Re-arrange the variable modes +- nir/serialize: Pack deref modes better +- compiler/types: Combine image and sampler type serialization +- compiler/types: Unify the guts of get_sampler/image_count +- compiler/types: Add a texture type +- nir: Allow texture types +- nir/deref: Also optimize samplerND -> textureND casts +- lavapipe: Allow for texture types +- clover/nir: Don't remove texture variables +- spirv: Use texture types for sampled images +- compiler/types: Add a wrap_in_arrays helper +- anv: Implement VK_EXT_global_priority_query +- glsl/nir/linker: Also remove image variables +- vulkan/vk_extensions_gen: Drop support for extra includes +- vulkan/vk_extensions_gen: Stop including vk_object.h +- v3dv: Use vk_instance_get_proc_addr_unchecked for WSI +- lavapipe: Use vk_instance_get_proc_addr_unchecked for WSI +- vulkan: Rework mako error handling in python generators +- vulkan: Drop unnecessary [en]coding comments from python generators +- vulkan/dispatch_table: EntrypointBase doesn't need to derive from object +- vulkan: Break entrypoint parsing into its own file +- vulkan: Move trampoline code-gen to its own file +- vulkan: Move all the common object code to runtime/ +- lavapipe: Don't wrap errors returned from vk_device_init in vk_error +- intel: Add has_bit6_swizzle to devinfo +- anv,iris: Advertise a max 3D workgroup size of 1024^3 +- anv/allocator: Add a couple of helpers +- anv: Pull aperture size from devinfo +- anv/allocator: Use anv_device_release_bo in anv_block_pool_finish +- anv: Rename anv_bo::index to exec_obj_index +- anv: Add get/set_tiling helpers +- anv: Add a couple more checks in MapMemory +- anv: Fix FlushMappedMemoryRanges for odd mmap offsets +- anv: Add helpers in anv_allocator for mapping BOs +- anv: Always set bindless surface base on SKL+ +- anv: Int64 atomics don't need to depend on softpin +- anv: Add a anv_use_relocations helper and use it +- anv: Add a use_relocations physical device bit +- anv: Stop checking for HAS_EXEC_FENCE +- anv: Add an anv_bo_is_pinned helper +- anv: Also disallow CCS_E for multi-LOD images +- anv: Move device memory maps back to anv_device_memory +- vulkan: Pull the device lost framework from ANV +- anv: Use the new common device lost tracking +- vulkan/device: Add a check_status hook +- anv: Wire up the new status check +- vulkan: Add a vk_sync base class +- vulkan/meson: Re-arrange libvulkan_util deps a bit +- vulkan/util: Include stdlib.h +- vulkan/vk_device: Add a drm_fd field +- vulkan: Add a common vk_drm_syncobj struct +- c11/threads: Re-align return values for timed waits +- vulkan: Add an emulated timeline sync type +- vulkan: Add a common implementation of VkFence +- vulkan: Add a common implementation of VkSemaphore +- vulkan: Add common implementations of vkQueueSubmit and vkQueueWaitIdle +- vulkan/device: Log the timeline mode when lost +- vulkan/wsi: Drop wsi_common_get_current_time() +- wsi/display: Rework wsi_fence a bit +- vulkan/wsi/display: Wrap wsi_display_fence in a vk_sync +- anv: Delete ANV_SEMAPHORE_TYPE_DUMMY +- anv: Add a BO sync type +- anv: Remove the last remnants of in/out fences +- anv: Use helpers in util/os_time.h in the query code +- anv: Convert to the common sync and submit framework +- vulkan: Add an emulated binary vk_sync type +- anv: Remove unnecessary syncobj wrappers +- anv: Simplify submit_simple_batch() +- vulkan,anv: Auto-detect syncobj features +- vulkan: Add a dummy sync type +- vulkan/sync: Rework asserts a bit +- crocus: wm_prog_key::key_alpha_test uses GL enums +- intel/fs,vec4: Drop uniform compaction and pull constant support +- intel/fs,vec4: Drop support for shader time +- intel/blorp: Stop depending on prog_data binding tables +- intel/fs,vec4: Drop prog_data binding tables +- intel/compiler: Get rid of wm_prog_key::frag_coord_adds_sample_pos +- intel/fs: Drop high_quality_derivatives +- anv: Stop doing too much per-sample shading +- intel/dev: Add gtt_size to devinfo +- Revert "anv: Stop doing too much per-sample shading" +- vulkan/queue: Handle WSI memory signal information +- anv: Implement vk_device::create_sync_for_memory +- anv: Drop anv_sync_create_for_bo +- radeonsi/nir: Check for VARYING_SLOT_PRIMITIVE_ID not SYSTEM_VALUE +- nir: Add a new sample_pos_or_center system value +- intel/fs: Return fs_reg directly from builtin setup helpers +- intel/fs: Rework emit_samplepos_setup() +- intel/fs: Implement the sample_pos_or_center system value +- anv,nir: Use sample_pos_or_center in lower_wpos_center +- anv/pipeline: Get rid of sample_shading_enable +- intel/fs: Be more conservative in split_virtual_grfs +- intel/fs: Use OPT() for split_virtual_grfs +- intel/eu: Don't double-loop as often in brw_set_uip_jip +- Revert "intel/fs: Do cmod prop again after scheduling" +- intel/fs: Reset instruction order before re-scheduling +- intel/fs: Add a NONE scheduling mode +- vulkan/runtime: Validate instance version on 1.0 implementations +- anv,radv,v3dv: Move AcquireImageANDROID to common code +- radv: Move QueueSignalReleaseImageANDROID to common code +- anv: Use the common QueueSignalReleaseImageANDROID from RADV +- v3dv: Use the common QueueSignalReleaseImageANDROID from RADV +- turnip: Use vk_common_AcquireImageANDROID +- turnip: Use vk_common_QueueSignalReleaseImageANDROID for DRM +- intel/compiler: Stop using GLuint in brw_compiler.h +- intel/fs: Use compare_func for wm_prog_key::alpha_test_func +- spirv,radv: Fix some GL enum comments +- vulkan/runtime: Implement 1.3 features/properties +- anv/pass: Don't set first_subpass_layout for stencil-only attachments +- .mailmap: Switch Jason Ekstrand to @collabora.com +- anv: Implement 1.3 features/properties +- anv: Advertise Vulkan 1.3 +- vulkan/wsi: Set MUTABLE_FORMAT_BIT in the prime path +- vulkan/wsi/drm: Break create_native_image in pieces +- vulkan/wsi: Add a helper for the configure/create/bind pattern +- vulkan/wsi/drm: Break create_prime_image in pieces +- vulkan/wsi/x11: Split image creation +- vulkan/wsi/wayland: Split image creation +- vulkan/wsi/display: Split image creation +- vulkan/wsi/win32: Delete unnecessary copy+paste from DRM +- vulkan/wsi/win32: Break create_win32_image in pieces +- vulkan/wsi/drm: Drop wsi_create_native/prime_image +- wsi/common: Set VK_IMAGE_CREATE_ALIAS_BIT +- vulkan/wsi: Add image create and bind helpers +- anv/image: Add some asserts when binding swapchain images +- anv/image: Call into WSI to create swapchain images +- anv: Call vk_command_buffer_finish if create fails +- anv: Don't assume depth/stencil attachments have depth + +Jason2013 (1): + +- Fix typo + +Jesse Natalie (236): + +- microsoft/clc: Images use nir_var_mem_image +- util/hash_table: Clear special 0/1 entries for u64 hash table too +- microsoft/compiler: Use textures for SRVs +- u_prim_restart: Fix index scanning with start offset +- d3d12: Don't accumulate timestamp queries +- u_threaded_context: Support including from C++ +- d3d12: Inherit from threaded_query +- d3d12: Resources inherit from threaded_resource +- d3d12: Inherit from threaded_transfer +- d3d12: Use thread safe slab allocators in transfer_map handling +- d3d12: Pass explicit context to pre/post draw surface blits +- d3d12: Hook up threaded context +- d3d12: Fully init primconvert config +- d3d12: Fix Linux fence wait return value +- d3d12: Handle non-infinite wait timeouts > 49.7 days as infinite +- util/libsync: Fix timeout handling if poll() wakes up early +- d3d12: Don't wait for \*all* batches when synchronizing a resource +- d3d12: Don't wait for GPU reads to do CPU reads +- mesa/main: Fix use of alloca() without #include "c99_alloca.h" +- clc: Use kernel_arg_type_qual string to add const type qualifier to arg metadata +- microsoft/clc: Add a test for arg metadata +- d3d12: Fix incorrect hash table usage +- meson: Don't override built-in cpp_rtti option, error if it's invalid +- meson: Allow mismatching RTTI for MSVC +- android: Add a BOARD CFlags option so build can be customized +- mesa/main, android: Log errors to logcat +- android,d3d12: Support using DirectX-Headers dependency from AOSP +- android: Allow forcing softpipe +- d3d12: Support BGRA 555 and 565 formats +- d3d12: Support PIPE_CAP_MIXED_COLOR_DEPTH_BITS +- d3d12: Support RGBX formats mapped to RGBA +- microsoft/compiler: Handle GLES external textures +- gallium, windows: Use HANDLE instead of FD for external objects +- winsys/d3d12: Populate winsys handle format +- d3d12: Handle import/export of fd shared handles +- d3d12: Make format list all use macros +- d3d12: Generate format table using a macro list +- d3d12: Generate a pipe format -> typeless mapping table too +- d3d12: Validate opened D3D12 resource matches pipe template +- CI/windows: Uprev piglit +- CI/windows: Upload result.txt as an artifact +- CI/windows: Move D3D12 test YML to D3D12 driver folder +- CI/windows: Move SPIRV-to-DXIL test YML to microsoft folder +- CI/windows: Move reference files to relevant ci subdirectories +- CI/d3d12: Add a quick_shader run +- d3d12: Support compat level 330 +- windows: Use TLS context/dispatch with shared-glapi +- d3d12: Handle depth readback on drivers that require full-resource copies for depth +- nir: Add an 'external' texture type for parity with samplers +- d3d12: Force emulation of all YUV formats using per-plane formats +- d3d12: Handle opening planar resources +- d3d12: Allow creating planar resources +- d3d12: Use overall resource format + plane format to get format info +- microsoft/compiler: Implement inot +- microsoft/compiler: Remove algebaric pass for inot +- ci/windows: Remove line numbers from assertions in spirv2dxil tests +- glapi: Never use dllimport/dllexport for TLS vars on Windows +- microsoft/compiler: Support lowered io (nir_intrinsic_load_input/store_output) +- microsoft/compiler: Lower io +- microsoft/compiler: Delete non-sysval deref load/store code +- microsoft/compiler: Load synthesized sysvals via lowered io +- d3d12: Fix NV12 resource importing +- softpipe: Add a dummy field to sp_fragment_shader_variant_key +- CI: Trigger Windows build on softpipe changes +- microsoft/compiler: Emit SSBOs from 0 -> count for GL (non-kernel, non-Vulkan) shaders +- microsoft/compiler: Hook up uavs-at-every-stage flag +- microsoft/compiler: Handle write masks in SSBO lowering pass +- d3d12: Support SSBOs in root signatures +- d3d12: Always create buffers as UAV-capable +- d3d12: Support setting SSBOs on the context and turning them into descriptors +- d3d12: Use DXIL load/store lowering pass +- d3d12: Set SSBO support caps +- d3d12: Avoid a debug warning trying to unmap a not-mapped resource +- d3d12: Replace pipe cap literals with D3D12 defines when available +- d3d12: Enable cubemap arrays +- microsoft/compiler: Position should always be no-perspective +- d3d12: Handle cubemap gather on int cubemaps +- d3d12: Enable texture gather +- microsoft/compiler: Fix LOD instruction to return 2 values +- gallium/aux: Move index offsetting from prim restart to primconvert +- microsoft/compiler: Change vulkan_environment bool to an enum +- microsoft/compiler: Put SSBO and image handles in separate arrays +- microsoft/compiler: Emit GL images in descriptor space 1 with driver_location instead of binding +- microsoft/compiler: Unify handle retrieval between images and UBO/SSBO +- microsoft/compiler: Emit SRVs/UAVs as arrays +- microsoft/compiler: Fix array-of-array handling for derefs of textures/images +- microsoft/compiler: Handle images as derefs for GL +- microsoft/compiler: Implement atomic image ops +- microsoft/compiler: Handle forced early depth +- microsoft/compiler: Hook up memory/control barriers +- microsoft/compiler: Fix handling of fp16-in-32bit-val ops to handle high bits +- d3d12: Shrink 2D array size so that max-layer cube arrays can be created +- d3d12: Fix format table typeless-ness for A8 and RGBA1010102 +- d3d12: Rename UAV -> SSBO to disambiguate with image UAVs +- d3d12: Add missed SSBO binding enum value +- d3d12: Figure out if we can support GL shader images +- d3d12: Handle format support queries for shader images +- d3d12: Init null UAVs +- d3d12: Retrieve shader image dimensions during shader compiles +- d3d12: Handle images in the root signature +- d3d12: Handle set_shader_images +- d3d12: Create textures as UAV-capable when appropriate +- d3d12: Fill out shader image descriptor tables +- d3d12: Lower cube images to 2D arrays via existing int cubemap lowering pass +- d3d12: Handle memory barriers +- d3d12: Handle bitcasting of shader images +- d3d12: Set appropriate caps for shader images +- nir_opt_dead_cf: Remove dead ifs +- shader_info: tess.spacing needs to be unsigned +- microsoft/compiler: Move workgroup_size lowering from clc +- microsoft/compiler: Handle more GL memory barriers +- d3d12: Limit sampler view count to 32 +- d3d12: Keep state vars last in the per-stage root parameters +- d3d12: Remove draw_info from selection_context +- d3d12: Stop trying to set D3D12_DIRTY_SHADER during bindings +- d3d12: Compile, bind, and cache compute PSOs +- d3d12: Support compute root signatures +- d3d12: Hook up compute shader variations +- d3d12: Implement launch_grid +- d3d12: Implement num workgroups as a state var +- d3d12: Handle indirect dispatch +- d3d12: Run DXIL shared atomic lowering pass +- d3d12: Enable compute +- docs: Update d3d12 extension list and new_features.txt +- d3d12/ci: Skip flaky tex-miplevel-selection and timestamp tests +- mesa/st: Assert that NIR drivers that support tess use tess levels as inputs +- d3d12: Export d3d12_get_state_var from d3d12_nir_passes.c +- d3d12: Fix re-enabling predication after temporary disablement +- d3d12: Predication fix: re-enable after restarting a batch if needed +- d3d12: Predication fix: For boolean queries used for predication, D3D12 uses uint64, so clear at least a uint64 in the result +- d3d12: Declare support for inverted conditional render +- d3d12: Upgrade first vertex state var into all vertex draw params +- d3d12: Enable base instance and draw params extensions +- d3d12: Add a command signature cache for indirect draws +- d3d12: Handle draw indirect and multi-draw indirect +- d3d12: Handle indirect twoface draws +- d3d12: Add a compute transformation to handle indirect draws that need draw params +- d3d12: Enable draw and multi-draw indirect +- docs: Update d3d12 features +- d3d12: When no framebuffer attachments are present, use ForcedSampleCount instead of SampleDesc.Count for MSAA +- d3d12: When no framebuffer attachments are present, the viewport must be clamped to framebuffer size +- d3d12: Support ARB_framebuffer_no_attachments +- docs: Update d3d12 feature list +- ci/windows: Use 2 container stages +- microsoft/compiler: Handle variables declared per-sample +- microsoft/compiler: Handle load_sample_pos_at_id +- microsoft/compiler: Always have at least one GS active stream +- microsoft/compiler: Handle 'pull model' explicit interpolation intrinsics +- microsoft/compiler: Handle textureGatherCmp +- microsoft/compiler: Handle input coverage +- microsoft/compiler: Handle tex texture/sampler offset srcs +- microsoft/compiler: Handle load_invocation_id for GS and HS +- microsoft/compiler: Emit samplers as array types +- microsoft/compiler: Handle bitfield_insert +- microsoft/compiler: Use ibfe/ubfe for bitfield extract instead of lowering to shifts +- microsoft/compiler: Handle msb/lsb/bfrev +- microsoft/compiler: Lower helper invocations +- d3d12: Sample mask output needs to be uint-typed +- d3d12: Lower load_sample_pos to load_sample_pos_at_id +- d3d12: Report sample positions +- d3d12: Modify shaders when MSAA is disabled +- d3d12: Relax multisampling direct copy requirements +- d3d12: Temp resources for same-resource copies can be MSAA too +- d3d12: Report number of GS streams +- d3d12: Apply GS point sprite lowering to fixed-function point size too +- d3d12: Run point sprite lowering pass on multi-stream GS when safe +- d3d12: Support dynamic UBO/SSBO indexing +- d3d12: When mapping a non-directly-mappable resource for write, readback first +- d3d12: Set sample-rate shading and GLSL 400 caps +- docs: Update d3d12 features +- mesa/st: Lower user clip planes for tess eval too +- microsoft/compiler: Force integer I/O vars to use flat/constant interpolation +- microsoft/compiler: Use driver_location instead of location for inter-stage varying index in GL +- microsoft/compiler: Semantic table should be de-duped for multi-row semantics too +- microsoft/compiler: Multi-row output semantics need to write multiple never_writes_masks +- microsoft/compiler: Getting a builtin function with an undeclared signature should be unreachable +- microsoft/compiler: Add mapping from MESA_SHADER_* to DXIL_*_SHADER for tessellation +- microsoft/compiler: Fix typo in enum entry +- microsoft/compiler: Emit statically-indexed resource handles and scratch later +- microsoft/compiler: Support emitting multiple functions into a DXIL module +- microsoft/compiler: Emit functions with actual function names +- microsoft/compiler: Emit all NIR functions into the DXIL module +- microsoft/compiler: Handle store_per_vertex_output for HS outputs +- microsoft/compiler: Split hull (tess ctrl) shaders into main and patch constant funcs +- microsoft/compiler: Delete misleading TODO comments about semantic table +- microsoft/compiler: Emit HS PSV validation and entrypoint metadata +- microsoft/compiler: Fix I/O signatures for tess shaders +- microsoft/compiler: Overlap patch and non-patch varyings so both are separately 0-indexed +- microsoft/compiler: When sorting patch varyings, adjust location to be in normal varying range +- microsoft/compiler: Gather patch const signature and handle tess factor in it +- microsoft/compiler: Add patch constant signature into PSV and as container blob +- microsoft/compiler: Add a pass for hull and domain shaders to shrink tess level vars +- microsoft/compiler: For store_output from HS, use storePatchConstant +- microsoft/compiler: For load_input from DS, use loadPatchConstant +- microsoft/compiler: Handle load_per_vertex_output as LoadOutputControlPoint +- microsoft/compiler: Handle load_output in the HS stage as reading a previously written patch constant +- microsoft/compiler: Handle domain location intrinsic +- microsoft/compiler: Emit DS PSV validation and entrypoint metadata +- microsoft/compiler: Primitive ID should only be added as a sysval in geometry shaders +- microsoft/compiler: Location_frac needs to be included in sort order +- microsoft/compiler: Handle clip/cull distance as an input to tess shaders +- d3d12: Enable PIPE_CAP_TGSI_TEXCOORD +- d3d12: Initial plumbing for tesselation +- d3d12: Link tesselation control and eval shaders +- d3d12: Handle patch_vertices and patch topology +- d3d12: Handle passthrough TCS in the case where eval is bound +- d3d12: Add a state variable for patch_vertices_in +- d3d12: Update varying creation logic to handle location_frac +- d3d12: Handle input clip array size in the shader key +- d3d12: Set caps for tesselation +- microsoft/compiler: Fix UAV resource ID counting for static indexed handles +- d3d12: Fix compute transform for multi-draw indirect with dynamic count + state vars +- d3d12: Add UAV barriers for UAVs that are being used by compute transforms +- d3d12: Include SO buffer count as a PSO dirty bit +- d3d12: Support transform feedback pause/resume +- d3d12: Move indirect compute to real indirect dispatches +- d3d12: SO buffer filled size is only 32-bit +- d3d12: Add a comment for what the existing compute transform does +- d3d12: Add a couple compute transforms for "fake" SO buffers +- d3d12: Add a compute transform for draw auto +- d3d12: Move compute transform state save/restore to compute_transforms.cpp +- d3d12: Move "fake" SO buffer handling to compute transforms instead of CPU readback +- d3d12: Implement DrawAuto aka DrawTransformFeedback +- d3d12: Compute transform UBO0 is actually binding 1 +- d3d12: Rewrite subquery logic +- d3d12: Switch primitives-generated query to use XFB, GS, and IA data +- d3d12: ARB_transform_feedback2 +- microsoft/compiler: Correctly support I/O on variables with location_frac +- microsoft/compiler: Support multiple GS output streams +- d3d12: Unpack multi-stream varyings +- d3d12: Fix xfb varying matching for vars with location_frac +- d3d12: Handle indexed queries +- d3d12: ARB_transform_feedback3 +- microsoft/compiler: Only prep phis for the current function +- microsoft/compiler: Only treat tess level location as special if it's a patch constant +- tc: CPU storage needs to be freed with align_free + +Jianxun Zhang (7): + +- intel: provide pci bus and dev info in base device struct +- intel: use PCI info to compute device uuid +- anv: remove private pci fields +- intel: dump PCI info in intel_dev_info +- intel: remove chipset_id +- intel: add swizzle flag into driver uuid +- anv: refactor queue chain + +Jonathan Gray (6): + +- util: unbreak non-linux mips64 build +- util: fix util_cpu_detect_once() build on OpenBSD +- radv: use MAJOR_IN_SYSMACROS for sysmacros.h include +- util/u_atomic: fix build on clang archs without 64-bit atomics +- util: fix build with clang 10 on mips64 +- util: use correct type in sysctl argument + +Jonathan Marek (3): + +- freedreno/layout: Fix the UBWC block size for the Y plane +- turnip: enable UBWC for NV12 +- turnip: use SUBDRAW_SIZE and constant sized tess bos + +Jordan Crouse (1): + +- turnip: Update the msm_kgsl.h header with the sanitized 4.19 version + +Jordan Justen (50): + +- intel/genxml: Update genxml to support tessellation/geometry distribution +- intel/dev/test: Assert (verx10 / 10) == ver +- Revert "iris: Disable I915_FORMAT_MOD_Y_TILED_GEN12* on adl-p/display 13" +- iris: Use mi_builder in iris_load_indirect_location() +- intel/genxml/125: Update COMPUTE_WALKER POSTSYNC_DATA struct +- anv,blorp,iris: Set MOCS for COMPUTE_WALKER post-sync operation +- intel/dev: Add platform enum with DG2 G10 & G11 +- intel: Add intel_gem_count_engines +- intel: Add intel_gem_create_context_engines +- iris: Add iris_init_batches +- iris/batch: Move kernel context init to iris_init_non_engine_contexts +- iris/batch: Add exec_flags field +- iris: Move away from "hw" for some context terminology +- iris: Destroy all batches with a new iris_destroy_batches() function +- iris: Make iris_kernel_context_get_priority() public +- iris/batch: Add support for engines contexts +- intel/l3: Make DG1 urb-size exception more generic +- iris: Not all gfx12+ have aux_map_ctx +- anv: Align buffer VMA to 2MiB for XeHP +- iris: Align buffer VMA to 2MiB for XeHP +- nir/lower_tex: Add filter for tex offset lowering +- intel/compiler: Use nir_lower_tex_options::lower_offset_filter for tg4 on XeHP +- intel/genxml/12.5: Remove bt-pool enable from 3DSTATE_BINDING_TABLE_POOL_ALLOC +- anv: Add BINDING_TABLE_POOL_BLOCK_SIZE +- intel/compiler: Adjust TCS instance-id for dg2+ +- isl: Don't enable HDC:L1 caches on DG2 +- intel: Add device info for DG2 +- intel: Add \*disabled* device ids for DG2 +- intel/devinfo: Adjust L3 banks for DG2 +- iris: Use mi_builder to set 3DPRIM registers for draws +- iris: Use mi_builder for load/store reg/mem/imm functions +- intel/dev: Add max_threads_per_psd field to devinfo for gfx8+ +- anv,blorp,crocus,i965,iris: Use devinfo->max_threads_per_psd for gfx8+ +- intel/dev: Add intel_hwconfig_types.h from random post on the internet +- intel/dev: Add intel_print_hwconfig_table() +- intel/dev: Print urb size with intel_dev_info +- intel/dev: Add intel_device_info::apply_hwconfig +- intel/dev: Set intel_device_info::apply_hwconfig for DG2 +- intel/dev: Apply settings from hwconfig if devinfo::apply_hwconfig is set +- intel/dev: Recalculate max_cs_threads after applying hwconfig changes +- intel/gem: Return length from intel_i915_query_alloc +- intel/dev: Add DG1 PCI id 0x4909 +- intel/dev: Add device ids for ADL-N +- intel/dev: Add device info for RPL +- intel/genxml: Extend length of 3DSTATE_WM_HZ_OP for gfx12.5 +- intel/genxml: Extend length of 3DSTATE_DEPTH_BUFFER for gfx12.5 +- isl: Enable compression with Tile4 +- intel/fs: Assert that old pull-const code is not used if devinfo->has_lsc +- anv: Align GENERAL_STATE_POOL_MIN_ADDRESS to 2MiB +- anv: Align state pools to 2MiB on XeHP + +Joshua Ashton (8): + +- radv: Always inline descriptor writes +- radv: Split off cmd_buffer variant of descriptor set updates +- radv: Split off cmd_buffer variant of descriptor set template updates +- nvc0: Fix uninitialized width/height/depth warning. +- radv: Refactor S_FIXED to radv_float_to_{s,u}fixed +- radv: Expose min_lod in \*_make_texture_descriptor +- vulkan: Update the XML and headers to 1.2.199 +- radv: Implement VK_EXT_image_view_min_lod + +José Fonseca (4): + +- d3d10umd: Rename Dxgi.h to DxgiFns.h. +- d3d10umd: Update for transfer interface changes. +- d3d10umd: Fix MSVC build. +- d3d10umd: Update for set_sampler_views take_ownership parameter. + +Juan A. Suarez Romero (22): + +- vc4/ci: update expected results +- v3dv/ci: update expected results +- broadcom/compiler: handle array of structs in GS/FS inputs +- broadcom/compiler: apply constant folding on early GS lowering +- nir: add NIR_DEBUG envvar +- mesa: allow TEXTURE_BUFFER target for ARB_texture_buffer_range +- st/pbo: do not use GS for NIR preferred shaders +- gallium/util: add helper to clamp colors to valid range +- v3d: clamp clear color +- gallium: add new PIPE_CAP_IMAGE_STORE_FORMATTED +- st/pbo: add the image format in the download FS +- st/pbo: set layer coord for array textures +- v3d: enable ARB_texture_view +- tgsi-to-nir: initialize NIR_DEBUG envvar +- nir: use call_once() to init debug variable +- broadcom/ci: restructure expected results +- softpipe: enable PIPE_CAP_IMAGE_STORE_FORMATTED +- d3d12: enable PIPE_CAP_IMAGE_STORE_FORMATTED +- mesa/st: do not expose ARB_shader_image_load_store if not fully implemented +- mesa: fix MAX_GEOMETRY_IMAGE_UNIFORMS check support +- v3d/doc: do not expose ARB_shader_image_load_store +- v3d: keep clear color untouched + +Karol Herbst (5): + +- spirv: Don't add 0.5 to array indicies for OpImageSampleExplicitLod +- clover/image: add templated basic_image class to simplify image subclassing +- clover/format: Full rework on how we declare supported images. +- clover/formats: pass in cl_mem_flags for better format checking +- clover/api: fix clGetMemObjectInfo for images + +Kenneth Graunke (82): + +- intel: Drop Tigerlake revision 0 workarounds +- crocus: Replace devinfo->ver[x10] checks with GFX_VER[x10] +- intel/genxml: Fix Indirect Object Access Upper Bound on Gfx4 +- intel/genxml: Add an "mbz" data type +- intel/genxml: Drop "Hierarchical Depth Buffer MOCS" field +- intel/genxml: Change 3DSTATE_CONSTANT_XS::MOCS to be MBZ on Gfx8. +- isl: Fill in MOCS even for SURFTYPE_NULL surfaces. +- isl: Fill in MOCS for NULL depth, stencil, and HiZ buffers. +- blorp: Fill in MOCS even for SURFTYPE_NULL surfaces. +- blorp: Fill in MOCS for null depth/stencil/HiZ buffers. +- blorp: Use a non-zero MOCS for disabled constant buffers +- iris: Drop unnecessary parenthesis +- iris: Set Bindless Sampler State MOCS +- iris: Set default MOCS for NULL depth/stencil/HiZ buffers +- iris: Set MOCS on 3DSTATE_CONSTANT_XS on Gfx9+ +- iris: Set MOCS on 3DSTATE_CONSTANT_ALL packets that disable all buffers +- iris: Set MOCS on NULL vertex buffers +- iris: Set MOCS on NULL stream output buffers +- iris: Fix MOCS for buffer copies +- anv: Set default MOCS for NULL depth/stencil/HiZ buffers +- anv: Set MOCS for 3DSTATE_CONSTANT_XS on Gfx7.x as well +- anv: Set MOCS in 3DSTATE_CONSTANT_XS even if there isn't a buffer. +- anv: Set MOCS on NULL vertex buffers +- anv: Set MOCS on NULL stream output buffers +- crocus: Set MOCS for most state base addresses on pre-Gen8 +- crocus: Tidy the ifdefs for emitting STATE_BASE_ADDRESS +- crocus: Set MOCS for index buffers on Gen6+ +- crocus: Set MOCS on NULL stream output buffers +- crocus: Set default MOCS for NULL depth/stencil/HiZ buffers +- crocus: Set MOCS for push constant buffers where possible +- crocus: Set MOCS for 3DSTATE_SO_BUFFERS on Gfx7.x too +- crocus: Fix MOCS for buffer copies. +- i965: Use ISL for MOCS rather than open coding it everywhere +- i965: Set default MOCS for NULL depth/stencil/HiZ buffers +- i965: Set MOCS for push constant buffers on Haswell and Gfx9+ +- i965: Set MOCS on NULL stream output buffers +- i965: Set MOCS for 3DSTATE_SO_BUFFERS on Gfx7.x too +- i965: Set MOCS for 3DSTATE_INDEX_BUFFER on Gfx6/7 as well. +- i965: Fix MOCS for BLORP buffer copies +- i965: Port STATE_BASE_ADDRESS to genxml and fix bugs +- i965: Set MOCS for Bindless Surface/Sampler State base addresses +- intel/genxml: Add an field option for nonzero="true" +- intel/genxml: Assert that all MOCS fields are non-zero on Gfx7+ +- intel/genxml: Include blitter commands in gen*_pack.h +- intel/genxml: Allow MI_FLUSH_DW on the blitter +- intel/genxml: Add XY_BLOCK_COPY_BLT on Tigerlake and later. +- iris: Fix parameters to iris_copy_region in reallocate_resource_inplace +- intel/genxml: Simplify prefix handling for field value lists +- intel/genxml: Collapse leading underscores on prefixed value defines +- intel/genxml: Fix MI_FLUSH_DW to actually specify the length properly +- intel/genxml: Fix XY_BLOCK_COPY_BLT destination tiling field type +- intel/genxml: Decode VALIGN/HALIGN values in XY_BLOCK_COPY_BLT +- iris: Make a helper function for cross-batch dependency flushing +- iris: Check for cross-batch flushing whenever a buffer is newly written. +- iris: Tidy code in iris_use_pinned_bo a bit +- blorp: Fix compute-blits for rectangles not aligned to the workgroup +- blorp: Don't try to use the 3D stencil write hardware for compute +- blorp: Assert that BLORP_BATCH_PREDICATE_ENABLE isn't set for compute +- blorp: Disallow multisampling for BLORP compute blits and copies. +- iris: Rename is_render_target to is_dest in a few blit functions +- isl: Move some genxml surface state helpers into an include file +- intel/vec4: Use ir_texture_opcode less in emit_texture() +- intel/vec4: Use nir_texop in emit_texture instead of translating +- intel/vec4: Inline emit_texture and move helpers to brw_vec4_nir.cpp +- intel/compiler: Use uppercase enum values in brw_ir_performance.cpp +- intel/fs: Reuse the same FS input slot for VUE header fields. +- iris: Use prog_data->inputs rather than shader info in SBE code. +- iris: Do primitive ID overrides in 3DSTATE_SBE not SBE_SWIZ +- iris: Directly access BOs rather than using iris_resource_bo(...) +- intel: Allow copy engine class in intel_gem_create_context_engines() +- intel/genxml: Add XY_BLOCK_COPY_BLT Color Depth enum values +- intel/dev: Add a has_flat_ccs flag +- blorp: Add a blorp_address::local_hint flag +- isl: Add isl_dev->mocs.blitter_{src,dst} fields +- blorp: Add support for blorp_copy via XY_BLOCK_COPY_BLT +- iris: Create an IRIS_BATCH_BLITTER for using the BLT command streamer +- iris: Only have one blorp_batch_init/finish in iris_copy_region() +- iris: Set BLORP_BATCH_USE_{COMPUTE,BLITTER} flags for the target batch +- iris: Implement iris_blorp_exec() for the blitter engine +- iris: Fix and refactor check for clear color being fully zero +- iris: Make an iris_foreach_batch macro that skips unsupported batches +- blorp: Add blorp_measure hooks to the blitter codepaths + +Khem Raj (1): + +- v3dv: account for 64bit time_t on 32bit arches + +Konstantin Seurer (4): + +- lavapipe: Fixed maxFragmentCombinedOutputResources +- anv: Fixed maxFragmentCombinedOutputResources +- turnip: Fixed maxFragmentCombinedOutputResources +- panvk: Fixed maxFragmentCombinedOutputResources + +Kostiantyn Lazukin (3): + +- util/u_trace: Replace Flag with IntEnum to support python3.5 +- util/ra: use adjacency matrix for undirected graph +- util/ra: Fix numeric overflow during bitset allocation + +Krunal Patel (2): + +- frontends/va: use un-padded width/height in ExportSurfaceHandle +- frontend/va: Setting the size of VADRMPRIMESurfaceDescriptor + +Leandro Ribeiro (12): + +- egl: remove unnecessary spaces after types +- egl/wayland: replace EGL_DRI2_MAX_FORMATS by EGL_DRI2_NUM_FORMATS +- egl/wayland: deprecate drm_handle_format() and drm_handle_capabilities() +- egl/wayland: do not try to access memory if allocation failed +- egl/wayland: move formats and modifiers to a separate struct +- egl/wayland: remove unused constant EGL_DRI2_NUM_FORMATS +- loader: add function to get render node from dev_t +- egl/wayland: add initial dma-buf feedback support +- egl/wayland: move loader_dri_create_image() calls to separate functions +- egl/wayland: use surface dma-buf feedback to allocate surface buffers +- egl/wayland: do not try to bind to wl_drm if not advertised +- egl/wayland: fix surface dma-buf feedback error exits + +Lepton Wu (1): + +- driconf: Fix unhandled tags in static conf + +Lionel Landwerlin (119): + +- vulkan/wsi/wayland: don't expose surface formats not fully supported +- anv: fix push constant lowering with bindless shaders +- pps: remove counter_ids fields +- pps: add an intel config file +- docs: put a list of commands to setup perfetto +- intel/dev: printout timestamp period +- intel/pps: provide accurate min sampling period +- intel/pps: reuse timestamp_frequency from intel_device_info +- intel/dev: fix HSW GT3 number of subslices in slice1 +- intel/dev: don't forget to set max_eu_per_subslice in generated topology +- intel/dev: reuse internal functions to set mask +- intel/dev: fix subslice/eu total computations with some fused configurations +- intel/perf: fix perf equation subslice mask generation for gfx12+ +- intel/devinfo: use compatible type for ARRAY_SIZE +- intel/devinfo: fix wrong offset computation +- intel: remove 2 preproduction pci-id for ADLS +- intel: move away from booleans to identify platforms +- intel/dev: also test crocus & i915 pci-ids +- anv: don't forget to add scratch buffer to BO list +- anv: fix multiple wait/signal on same binary semaphore +- anv: don't try to close fd = -1 +- anv: initialize anv_bo_sync base fields +- intel/fs: fix shader call lowering pass +- pps: allow drivers to report timestamps in their own time domain +- intel/perf: add a helper to read timestamp from reports +- pps: fixup sporadic missing counters +- intel/ds: drop timestamp correlation code +- intel/perf: track end timestamp of queries +- intel/ds: drop unused constructors +- intel/ds: isolate intel/perf from the pps-producer +- intel/pps: tweak intel config some more +- intel/ds: remove verbose messages +- intel: move timestamp scaling helper to intel/perf +- anv: fix execbuf syncobjs/syncobj_values array leak +- util/u_trace: refcount payloads +- nir/opt_deref: don't try to cast empty structures +- util/u_trace: add end_of_pipe property to tracepoints +- util/u_trace/perfetto: add new env variable to enable perfetto +- intel/nir: preserve access value when duping intrinsic +- nir/lower_io: include the variable access in the lowered intrinsic +- nir/print: printout ACCESS_STREAM_CACHE_POLICY +- nir: add a new access flag to allow access in helper invocations +- nir: add intrinsics for ray queries +- nir: track variables representing ray queries +- nir: add a ray query optimization pass +- spirv: handle ray query intrinsics +- intel/debug: reclaim 7 unused bits from classic driver +- genxml: fix compilation with P/I defines +- genxml: protect _length defines in genX_bits.h +- docs/envvars: update after INTEL_DEBUG cleanup +- util/u_vector: prevent C++ warning on cast from void* to something else +- vulkan: fix missing handling of WSI memory signal +- anv,wsi: simplify WSI synchronization +- gitlab-ci: disable radv-fossils +- intel/devinfo: adjust subslice array size +- util/u_trace: protect against reentrant calls +- anv: don't leave anv_batch fields undefined +- anv: limit compiler valid color outputs using NIR variables +- intel/dev: fixup chv workaround +- ci: disable vs2019 windows build +- intel/devinfo: printout pixel pipes in info printout +- intel/devinfo: printout devinfo struct size +- intel/devinfo: add a helper to check for slice availability +- intel/devinfo: drop num_eus_per_subslice field +- anv: fix perf queries +- intel/dev: extract slice/subslice total computation +- intel/devinfo: split out l3/pixelpipes counting +- intel/devinfo: deal with i915 topology query change +- intel/fs: disable VRS when omask is written +- blorp: add description & helpers to printout ops +- isl: add helpers to printout ops +- anv: expose a couple of emit helper to build utrace buffer copies +- intel/dev,perf: Use a single timescale function +- intel/blorp: add measure_end entry point +- anv: implement u_trace support +- intel/ds: reuse intel_ioctl() +- intel/ds: allow user to select metric set at start time +- intel/ds: don't forget to reset upper dword timestamp read +- intel/ds: use the right i915_drm.h include location +- intel/ds: use a per GPU clock ID +- util/u_process: protect entrypoints for c++ +- anv: add perfetto source +- pps: enable anv source in example config file +- tools/pps: limit intel cfg to 250ms of sampling +- iris: utrace/perfetto support +- intel/dev: fix ppipe_mask computation +- anv: fix missing descriptor copy of bufferview/surfacestate content +- genxml: reduce amount of generated code +- anv: verify that the format supports multisampling +- anv: switch a bunch of struct/enum to 1.3 versions +- relnotes/features: updates for Vulkan 1.3 +- intel/ci: expected failure for 1.3 with older CTS +- docs: start some documentation on Anv +- docs/anv: list environment variables +- docs/anv: add descriptor memory layout +- anv: tidy long lines in descriptor code +- docs: update INTEL_DEBUG environment variable documentation +- intel/tracepoint: simplify tracepoint descriptions +- util/u_trace: make mako conditional code easier to read +- util/utrace: make generated code a tiny bit nicer to look at +- compiler: add VARYING bit for primitive shading rate +- genxml: gen12.5 changes for CPS +- genxml: add new 3DSTATE_PS_EXTRA bit +- intel/dev: details CPS feature support +- isl: add support for coarse pixel control surfaces +- isl: disable CPB surface compression +- nir/builder: add ishl_imm helper +- intel/compiler: add a new pass to lower shading rate into HW format +- intel/compiler: add primitive rate output support +- anv: force primitive shading rate write in last geometry stage +- anv/pass: rely on precomputed dynamic rendering pass/subpass more +- anv: Update VK_KHR_fragment_shading_rate for newer HW +- intel/fs: don't set allow_sample_mask for CS intrinsics +- intel/nir: fix shader call lowering +- anv: fix conditional render for vkCmdDrawIndirectByteCountEXT +- nir: fix lower_memcpy +- anv/genxml/intel/fs: fix binding shader record entry +- anv: fix fast clear type value with external images +- intel/fs: fix total_scratch computation + +Lorenz Brun (1): + +- frontends/va: Return error in vaRenderPicture if decoder is NULL + +Louis-Francis Ratté-Boulianne (7): + +- microsoft/compiler: add support for load_layer_id +- microsoft/compiler: Add subpass input types +- microsoft/compiler: Use SRVs for read-only images +- microsoft/spirv_to_dxil: check for variables r/w access +- microsoft/spirv_to_dxil: lower input attachments +- microsoft/spirv_to_dxil: Lower push constant loads to UBO loads +- microsoft/spirv_to_dxil: Allow passing a vulkan -> d3d12 binding mapping table + +Lucas Stach (11): + +- etnaviv: fix alpha blend with dither on older GPUs +- etnaviv: initialize vertex attributes on context reset +- egl/wayland: break double/tripple buffering feedback loops +- etnaviv: drm: fix size limit in etna_cmd_stream_realloc +- etnaviv: drm: properly handle reviving BOs via a lookup +- etnaviv: drm: export BO idle check function +- etnaviv: drm: rename _etna_bo_del +- etnaviv: drm: defer destruction of softpin BOs +- egl/dri2: remove superfluous flush when changing the context +- egl/dri2: short-circuit dri2_make_current when possible +- etnaviv: draw: only mark resources as read/written when the state changed + +M Henning (2): + +- nouveau/nir: Use natural alignment for scalars +- nouveau/nir: Lower 64-bit phis + +Manas Chaudhary (2): + +- panvk: Add check for null fence +- panvk: Fix pointer corruption in panvk_add_wait_event_syncobjs + +Maniraj D (1): + +- egl: set TSD as NULL after deinit + +Manuel Stoeckl (2): + +- gbm: add missing R16 case in gbm_bo_get_bpp +- gbm: add GBM_FORMAT_GR1616 and RG1616 + +Marcin Ślusarz (41): + +- iris: fix scratch address patching for TESS_EVAL stage +- intel: fix INTEL_DEBUG environment variable on 32-bit systems +- intel/decoder: Dump Task/Mesh shaders +- spirv: handle SpvOpMemberName +- intel/compiler: extract brw_nir_load_global_const out of rt code +- intel/compiler: Get mesh_global_addr from the Inline Parameter for Task/Mesh +- intel/compiler: Load draw_id from XP0 in Task/Mesh shaders +- nir: limit lower_clip_cull_distance_arrays input to traditional stages +- nir/print: simplify printing of IO semantics +- nir/print: expand printing of io semantics.gs_streams +- nir/print: compact printing of intrinsic indices +- nir/print: move print_load_const_instr up +- nir/print: group hex and float vectors together +- nir/print: print const value near each use of const ssa variable +- intel/compiler: disable workaround not applicable to gfx >= 11 +- spirv: handle ViewportMaskNV builtin/cap from SPV_NV_mesh_shader +- compiler: add new MESH_VIEW_COUNT/MESH_VIEW_INDICES system values +- spirv: add MeshViewCountNV/MeshViewIndidcesNV builtins from SPV_NV_mesh_shader +- nir: add load_mesh_view_count and load_mesh_view_indices intrinsics +- spirv: handle multiview bits of SPV_NV_mesh_shader +- nir: remove invalid assert affecting per-view variables +- spirv: mark [Clip|Cull]DistancePerViewNV variables as compact +- nir: handle per-view clip/cull distances +- freedreno/rnn: normalize line endings in rules-ng.xsd +- microsoft/compiler: normalize line endings +- ci/windows: normalize line endings +- radv/ci: add line endings exception for files generated with wine +- Add new rules to .gitattributes +- intel/compiler: handle gl_[Clip|Cull]Distance in mesh shaders +- intel/compiler: handle gl_[Clip|Cull]Distance from mesh in fragment shaders +- intel/compiler: Use Task/Mesh InlineData for the first few push constants +- anv: Enable conditional rendering in vkCmdDrawMeshTasksNV +- anv: Add support for non-zero firstTask in vkCmdDrawMeshTasksNV +- anv: Add support for UBOs, SSBOs and push constants in Mesh pipeline +- anv: Implement indirect dispatch for Mesh pipeline +- anv: tell the hardware about gl_[Clip|Cull]Distance in mesh shaders +- anv: include ClipDistance array in mesh shader per-vertex output +- anv: Put first few push constants directly into Task/Mesh InlineData +- intel/compiler: fix array & struct IO lowering in mesh shaders +- anv: don't set color state when input state was requested +- intel/compiler: ignore per-primitive attrs when calculating flat input mask + +Marek Olšák (240): + +- gallium/util: add some extern "C" guards +- radeonsi: si_state_shaders.c -> cpp +- radeonsi: split si_shader_key into ps and ge parts to minimize memcmp overhead +- radeonsi: don't memcmp inlined uniform values if uniform inlining is disabled +- radeonsi: don't pass NULL into si_get_nir_shader +- radeonsi: replace the GS prolog with a monolithic shader variant +- radeonsi: enable shader culling on Navi1x consumer SKUs as well +- ac,radeonsi: print a lowercase codename in the renderer string +- radeonsi: reorder and don't print patch level DRM version in the renderer string +- ac/llvm: use fmac instead of mul+sub in face culling +- ac/llvm: add helper ac_build_is_inf_or_nan +- ac/llvm: accept primitives whose face culling determinant is Inf or NaN +- gallium,vbo: add PIPE_BIND_VERTEX_STATE for display lists +- gallium/u_threaded: implement pipelined partial buffer uploads using CPU storage +- mesa: fix crashes in the no_error path of glUniform +- radeonsi: add SI_MAX_VRAM_MAP_SIZE definition +- radeonsi: add an option to use CPU storage uploads for threaded context +- radeonsi: change bind_history to track usage in each shader stage +- radeonsi: rebind a buffer only in shader stages where it's been bound +- radeonsi: don't sync PS or CS before (clear|copy)_buffer based on bind history +- radeonsi: don't update bind_history for internal buffer clears and copies +- radeonsi: don't sync before clear_buffer and copy_buffer if the buffer is idle +- radeonsi: properly destroy buffers on failure +- winsys/amdgpu: remove force_chaining parameter from cs_check_space +- winsys/amdgpu: set max_ib_size and max_check_space_size later in cs_check_space +- radeonsi: don't set inline_uniforms for viewperf because it's enabled by default +- amd/addrlib: change how the license is formatted to match internal tree +- amd/addrlib: cosmetic addrlib update +- mesa: discard draws with count=0 to decrease overhead +- st/mesa: don't crash when draw indirect buffer has no storage +- mesa: remove USAGE_ELEMENT_ARRAY_BUFFER because it's unused and adding overhead +- mesa: move setting USAGE_PIXEL_PACK_BUFFER out of BindBuffer to reduce overhead +- mesa: remove redundant flagging USAGE_ARRAY_BUFFER +- mesa: add a no_error path to _mesa_handle_bind_buffer_gen +- glthread: don't execute display lists if they have no effect +- glthread: don't sync for glIsEnabled with a few enums +- glthread: add an option to make glCheckFramebufferStatus a no-op +- glthread: add a trivial thread-safe way to skip display list execution +- radeonsi: enable shader culling for indirect draws +- radeonsi: remove unused parameters in si_emit_draw_packets +- gallium/radeon: change the BO priority definitions to bits +- gallium/radeon: remove/merge some BO priorities and remove holes +- gallium/radeon: remove unused RADEON_DEPENDENCY_START_FENCE +- gallium/radeon: merge BO read/write usage flags with priority flags +- winsys/amdgpu: simplify parameter passing and derefs in cs_add_buffer +- winsys/amdgpu: remove an amdgpu_cs dereference from amdgpu_cs_add_buffer +- winsys/amdgpu: don't clear RADEON_USAGE_SYNCHRONIZED for last_added_bo_usage +- winsys/amdgpu: increase the BO hash list size +- winsys/amdgpu: don't use ip_instance and ring fields of fence and IB structures +- winsys/amdgpu: move BO fence array updates to the CS thread +- winsys/amdgpu: optimize looping inefficiencies in add_bo_fence_dependencies +- radeonsi: don't invoke si_decompress_depth if textures are not dirty at binding +- mesa: fix locking when destroying/overwriting/adding display lists +- mesa: remove display list OPCODE_NOP +- mesa: remove PADDING_64BIT by adding the dlist header into vbo_save_vertex_list +- vbo: return a GL error earlier in vbo_save_playback_vertex_list_gallium +- vbo: use int16_t for vbo_save_vertex_list::gallium::private_refcount +- vbo: restructure vbo_save_vertex_list to get more cache hits +- mesa: use alloca in search_resource_hash +- glsl: add gl_resource_name to precompute "name" properties later +- mesa: don't compute the same strlen up to 3x in _mesa_program_resource_find_name +- mesa: precompute strlen in gl_resource_name::length and use it +- mesa: rename locals in _mesa_program_resource_find_name for clarity +- mesa: preparse [ and [0] in gl_resource_name and use it in shader_query.cpp +- mesa: handle hash collisions in program resource lookups (e.g. uniforms) +- mesa: add separate hash tables for each GLSL resource type +- mesa: skip strlen when hashing strings for ProgramResourceHash +- radeonsi: print the border color error message only once +- util: add a util_bitcount variant that selects POPCNT through C++ template arg +- st/mesa: change st_atom_array.c to cpp +- st/mesa: use POPCNT in st_update_array if the CPU supports it +- mesa: change gl_vertex_array_object::NewArrays to bool +- mesa: add NewVertexBuffers/NewVertexElements flags to indicate state changes +- cso: add missing parameters into cso_set_vertex_buffers +- st/mesa: don't update vertex elements when GL doesn't change them +- driconf: set vblank_mode=0 for viewperf2020 +- gallium/util: fix util_can_blit_via_copy_region with unbound render condition +- gallium/u_blitter: disable sample shading for all blits +- gallium/u_blitter: do MSAA copies in 1 pass using sample shading +- gallium/u_blitter: work around broken sample shading in llvmpipe and zink +- radeonsi: fix 2 issues with depth_cleared_level_mask +- radeonsi: add a faster clear path for glClearTexImage +- radeonsi: rename stencil_cleared_level_mask -> stencil_cleared_level_mask_once +- radeonsi: allow and finish TC-compatible MSAA HTILE +- radeonsi: fix a typo preventing a fast depth-stencil clear +- radeonsi: increase tc_max_cpu_storage_size +- vbo: utilize structure padding to optimize indirection cold->prims[0].begin +- driconf: disallow 10-bit pbuffers for viewperf2020/maya due to X errors +- gallium: rename PIPE_CAPF_MAX_POINT_WIDTH -> MAX_POINT_SIZE +- gallium: add missing point and line CAPs +- radeonsi: set correct point and line limits +- st/mesa: use new point and line CAPs +- nir: add new SSA instruction scheduler grouping loads into indirection groups +- radeonsi: enable nir_group_loads for better performance +- radeonsi: fix shader culling with integer pixel centers +- radeonsi: fix view culling for wide lines +- radeonsi: use ac_build_load_to_sgpr in gfx10_emit_ngg_culling_epilogue +- radeonsi: make si_get_small_prim_cull_info static +- radeonsi: set PERPENDICULAR_ENDCAP_ENA for wide AA lines +- radeonsi: set EXTRA_DX_DY_PRECISION for lines where it's supported +- radeonsi: add si_state_rasterizer::ngg_cull_flags_lines and rename the others +- ac,radeonsi: cull small lines in the shader using the diamond exit rule +- radeonsi: unify GFX9_VSGS_NUM_USER_SGPR and GFX9_TESGS_NUM_USER_SGPR +- radeonsi: add dcc_msaa option to enable DCC for MSAA +- radeonsi: improve memory instruction tracking +- radeonsi: remove an incorrect comment at lds_byte0_accept_flag +- radeonsi: make si_llvm_emit_clipvertex non-static +- radeonsi: unify how ngg_cull_flags are set +- radeonsi: cull against clip planes, clipvertex, clip/cull distances in shader +- radeonsi: inline declare_vs_specific_input_sgprs +- radeonsi: don't use GS SGPR6 for the small prim cull info +- glx: add a workaround to glXDestroyWindow for Viewperf2020/Sw +- radeonsi: separate culling code from VS/TES (to be reused by GS) +- radeonsi: restructure code that declares merged VS-GS and TES-GS SGPRs +- radeonsi: add is_gs parameter into si_vs_needs_prolog +- radeonsi: simplify si_get_vs_key_outputs for GS +- radeonsi: don't use ctx.stage outside of si_llvm_translate_nir +- radeonsi: implement shader culling in GS +- radeonsi: deduplicate min_esverts code in gfx10_ngg_calculate_subgroup_info +- mesa: don't add attenuation constants if ffvp doesn't use them +- mesa: add allow_glsl_compat_shaders for shader-db +- ac/gpu_info: don't fail on amdgpu_query_video_caps_info failures +- ac/surface: allow gfx6-8 to enter the gfx9 DCC codepath for SI_FORCE_FAMILY +- mesa: add a more straightforward callback for replacing shaders +- driconf: enable glthread for all Unigine benchmarks +- driconf: enable glthread for Minecraft +- driconf: enable glthread for Basemark GPU +- radeonsi: don't print uninitialized inlined_uniform_values +- radeonsi: add wave32 flag into prolog/epilog keys +- radeonsi: add si_shader::wave_size because it will vary +- radeonsi: use si_shader::wave_size +- radeonsi: don't use si_get_wave_size in si_get_ir_cache_key +- radeonsi: clean up compute_wave_size use in si_compute_blit.c +- radeonsi: propagate si_shader::wave_size to VGT_SHADER_STAGES +- radeonsi: don't use compute_wave_size directly +- radeonsi: centralize wave size computation in si_get_shader_wave_size +- radeonsi: rename si_get_shader_wave_size and make it non-inline +- mesa: remove SourceChecksum from shader structures +- mesa: rename gl_shader::sha1 to disk_cache_sha1 +- mesa: add shader source SHA1s that are propagated up to glCompileShader +- mesa: add gl_linked_shader::linked_source_sha1 +- mesa: don't compute the same SHA1 twice in glShaderSource +- util: add SHA1 printing and comparison functions +- nir: add shader_info::source_sha1, its initialization and printing +- radeonsi: print source_sha1 as part of shader dumps +- radeonsi: print the shader stage for shader-db dumps +- glthread: don't sync for more glGetIntegerv enums for glretrace +- mesa: use simple_mtx_t for TexMutex (v2) +- nir: handle more intrinsics in divergence analysis +- nir: disable a NIR test due to undebuggable & locally unreproducible CI failures +- nir: serialize divergent fields +- nir: add nir_has_divergent_loop function +- glsl: fix setting compiled_source_sha1 without a shader cache +- radeonsi: add Wave32 heuristics and shader profiles +- radeonsi: print more stats for shader-db +- radeonsi: add shader profiles that disable binning +- radeonsi: unroll loops of up to 128 iterations +- mesa: include less stuff in dlist.c +- mesa: inline vbo_initialize_save_dispatch and rename the functions +- mesa: inline _mesa_install_arrayelt_vtxfmt +- mesa: inline _mesa_install_eval_vtxfmt +- mesa: inline _mesa_install_dlist_vtxfmt +- mesa: move _mesa_initialize_vbo_vtxfmt calls to a common place and inline +- mesa: inline _vbo_install_exec_vtxfmt +- mesa: move the ES2 check from vbo_init_tmp.h to install_vtxfmt +- glapi: rename exec="dynamic" to exec "vtxfmt" to make it self-explanatory +- mesa: don't set CallList* redundantly in _mesa_initialize_save_table +- mesa: rename dlist functions to match dispatch function names +- glapi: rename gl_genexec.py to api_exec_init.py, api_exec.c to api_exec_init.c +- glapi: move apiexec API condition determination to common code +- glapi: replace dispatch.h inline functions with macros for faster compilation +- mesa: add EXT suffix to VertexAttribI*EXT to match glapi name +- vbo: rename vertex functions to match GL dispatch names +- vbo: rename ES vertex functions to match GL dispatch names +- glapi: move reusable glapi printing code to apiexec.py +- glapi: autogenerate _mesa_initialize_save_table with python +- glapi: autogenerate api_save.h with save_* function declarations +- mesa: remove api_exec.h and move its contents into context.h +- glapi: autogenerate all _mesa_* forward declarations in api_exec_decl.h +- glapi: autogenerate install_vtxfmt with python +- mesa: remove GLvertexformat +- vbo: expose all exec entrypoints for glthread and match api_exec_decl.h names +- glthread: add nop dispatch +- glthread: set marshal functions in dispatch only if they exist in the API +- glthread: inline _mesa_glthread_restore_dispatch and merge disable & destroy +- glthread: fix restoring the dispatch in destroy when the context is not current +- glthread: disable glthread if the context is lost +- mesa: use ctx->GLThread.enabled now that it's correct +- mesa: rename _ae_ArrayElement -> _mesa_ArrayElement to match glapi +- mesa: remove COPY_DISPATCH code that doesn't do anything +- glapi: add missing no_error settings for implemented functions +- mesa,vbo: make ES wrapper functions static +- mesa: remove all GL func forward declarations because they are autogenerated +- mesa: use nop dispatch for ColorTable/Convolution/Histogram +- radeonsi: add a debug option that disables DCC for all exported buffers +- driconf: enable glthread for Minecraft-FTB, Stellaris, Battletech +- ac/gpu_info: set cu_mask correctly for Arcturus +- ac/gpu_info: add AMD_CU_MASK environment variable to set CU_EN +- radeonsi: set COMPUTE_DESTINATION_EN_SEn to spi_cu_en +- radeonsi: program COMPUTE_STATIC_THREAD_MGMT_SE4..7 on Arcturus +- radeonsi: apply spi_cu_en to CU_EN +- radv: set COMPUTE_DESTINATION_EN_SEn to spi_cu_en +- radv: apply spi_cu_en to CU_EN +- radeonsi: pack si_pm4_state +- radeonsi: replace SI_PM4_MAX_DW with a max_dw field +- radeonsi: decrease the size of si_pm4_state::pm4 except for cs_preamble_state +- amd/registers: work around an assertion in parse_kernel_headers.py +- ac/llvm: add vindex into ac_build_buffer_store_dword +- ac/llvm: remove the num_channels parameter from ac_build_buffer_store_dword +- radeonsi: modifiers can't disable DCC +- radeonsi: make get_thread_id_in_tg non-static +- radeonsi: clean up si_export_mrt_color +- radeonsi: set done=1 for PS exports at the end of si_llvm_build_ps_epilog +- radeonsi: remove unnecessary code that was used to find the last export +- radeonsi: export mrtz before color exports +- radeonsi: simplify compacted_mrt_index in si_export_mrt_color +- radeonsi: reorder slots for internal buffers, reuse a slot for GS_QUERY_BUF +- radeonsi: don't bind the ESGS ring twice, handle the difference in the shader +- radeonsi: remove unused si_shader::prolog2 +- radeonsi: pass sample_coverage VGPR index to the PS prolog instead of guessing +- radeonsi: move smoothing to the main shader part to remove 1 live VGPR +- radeonsi: do opt_large_constants & lower_indirect_derefs after uniform inlining +- radeonsi: use nir->scratch_size instead of ac_count_scratch_private_memory +- radeonsi: change si_shader_output_values::vertex_stream to a bitmask +- radeonsi: move si_nir_scan_shader into si_shader_info.c +- radeonsi: add into the disk cache key whether cached shaders contain LLVM IR +- radeonsi: move the GS copy shader into shader variants +- ac: move ac_exp_param.h to ac_nir.h +- ac/nir: move ac_are_tessfactors_def_in_all_invocs into radeonsi +- radeonsi: print all streamout info +- radeonsi: print the number of param exports for shader-db +- ac/surface: allow displayable DCC with any resolution (e.g. 8K) +- radeonsi: rename uses_vmem_* flags +- radeonsi: apply fbfetch/indirect_descriptor to uses_vmem_load_other earlier +- radeonsi: determine MEM_ORDERED after generating a shader variant +- winsys/radeon: fix a hang due to introducing spi_cu_en +- amd: add a workaround for an SQ perf counter bug +- ac/surface: add more elements to meta equations because HTILE can use them +- radeonsi: fix register shadowing after the pm4 state size was decreased +- radeonsi: fix an assertion failure with register shadowing + +Marius Hillenbrand (3): + +- util/cpu_detect: Add flag for IBM Z (s390x) +- llvmpipe: Use lp_build_round_arch on IBM Z (s390x) +- util/cpu_detect, gallium: use cpu_family CPU_S390X instead of separate flag + +Markus_included (1): + +- Fixed you're to your + +Martin Roukala (né Peres) (1): + +- radv/ci: mark the dEQP fails related to a missing VKCTS 1.3 as expected + +Matt Turner (7): + +- util/format: Add PIPE_FORMAT_Y8_UNORM as an "other" layout format +- tu: Expose required VK_FORMAT_FEATURE bits for planar YUV formats +- ir3: Add support for (dis)assembling flat.b +- freedreno/ir3: Add infrastructure for flat.b +- freedreno/ir3: Use flat.b to load flat varyings on a6xx +- freedreno/ir3: Use immediate for flat.b's src1 +- intel/genxml: capitalize decoder mode select properly + +Matti Hamalainen (3): + +- aux/trace: print enum names instead of integer values in gallium traces +- aux/trace: implement missing trace calls +- aux/trace: cosmetic cleanup + +Mauro Rossi (3): + +- android: define cpp_rtti=false because libLLVM is built w/o RTTI +- Revert "android: define cpp_rtti=false because libLLVM is built w/o RTTI" +- android: define cpp_rtti=false because libLLVM is built w/o RTTI (v2) + +Melissa Wen (14): + +- v3dv: drop unused variable on handle_set_event_cpu_job +- v3dv: wrap wait semaphores info in v3dv_submit_info_semaphores +- v3dv: store wait semaphores in event_wait_cpu_job_info +- drm-uapi/v3d: extend interface for multiple semaphores support +- v3dv: check multiple semaphores capability +- v3dv: enable multiple semaphores on cl submission +- v3dv: enable multiple semaphores for tfu job +- v3dv: enable multiple semaphores for csd job +- v3dv: enable GPU jobs to signal multiple semaphores +- v3dv: track submitted jobs by GPU queue type +- v3dv: handle wait semaphores in the first job by queue +- v3dv: process signal semaphores in the very last job +- v3dv: signal fence when all submitted jobs complete execution +- v3dv: move sems_info from event_wait job to wait_thread info + +Michael Tang (2): + +- microsoft/spirv_to_dxil: turn sysvals into input varyings +- microsoft/compiler: Use memcpy instead of a union to write dxil_features + +Michel Dänzer (1): + +- Revert "wsi/x11: Avoid a class of deadlocks in the WSI queue thread" + +Michel Zou (8): + +- vulkan: fix uninitialized variables +- lavapipe: fix unused variable +- llvmpipe: Fix Wpointer-to-int-cast +- meson: check -mtls if has_exe_wrapper +- meson: correctly detect linker arguments +- zink: fix -Warray-bounds warning +- zink: fix unused variable warning +- vulkan/wsi: drop unused wsi_create_win32_image + +Mike Blumenkrantz (278): + +- nir/print: print bindless info as applicable +- aux/pb: add a tolerance for reclaim failure +- virgl: remove unused pipebuffer include +- aux/pb: more correctly check number of reclaims +- zink: use static array for detecting VK_TIME_DOMAIN_DEVICE_EXT +- zink: add a read barrier for indirect dispatch +- zink: fully zero surface creation struct +- zink: clear descriptor refs on buffer replacement +- zink: assert compute descriptor key is valid before hashing it +- zink: don't update lazy descriptor states in hybrid mode +- zink: move push descriptor updating into lazy-only codepath +- zink: add an early return for zink_descriptors_update_lazy_masked() +- zink: move last of lazy descriptor state updating back to lazy-only code +- lavapipe: stop reading renderpass during pipeline creation +- lavapipe: remove some unused struct members +- lavapipe: use framebuffer attachment_count member instead of renderpass +- lavapipe: remove lvp_subpass_attachment::in_render_loop +- lavapipe: remove lvp_subpass_attachment::layout +- lavapipe: add attachment index to lvp_render_pass_attachment +- lavapipe: remove lvp_subpass::max_sample_count +- lavapipe: remove lvp_subpass_attachment and use lvp_render_pass_attachment refs +- lavapipe: remove last VK_ATTACHMENT_UNUSED check +- lavapipe: store subpass directly to rendering_state +- lavapipe: simplify some attachment derefs +- lavapipe: remove lvp_subpass::has_color_att +- lavapipe: pull layer count from render state during resolve +- lavapipe: clamp attachment clear rect sizes +- zink: don't ralloc zink_resource structs +- zink: align pipe_resource and sampler_view allocations to cachelines +- zink: use ctx params for program ref/destroy functions +- zink: fix descriptor interface param for program_deinit +- zink: remove descriptor pools from hash table on deletion +- zink: unref descriptor pools in hybrid mode when they explode +- zink: always invalidate descriptor sets on pool free +- zink: don't clear descriptor pool cache on context destroy +- zink: stop leaking descriptor pool references +- zink: rescue surfaces/bufferviews for cache hits during deletion +- zink: rename zink_descriptor_layout_key::num_descriptors -> num_bindings +- zink: eliminate a hole in zink_descriptor_layout_key +- zink: reduce hashed region of zink_descriptor_layout_key +- zink: split out descriptor pool sizing into separate struct +- zink: detect prim type more accurately for tess/gs lines +- zink: don't break early when applying fb clears +- zink: only reset zink_resource::so_valid on buffer rebind +- zink: don't check rebind count outside of buffer/image rebind function +- zink: add notes about binding points which aren't counted in util funcs +- zink: stop exporting PIPE_SHADER_CAP_FP16_DERIVATIVES +- zink: don't add dynamic vertex pipeline states if no attribs are used +- zink: fix gl_SampleMaskIn spirv generation +- zink: more accurately update samplemask for fs shader keys +- nir/lower_samplers_as_deref: rewrite more image intrinsics +- nir/lower_io_to_scalar: add support for bo and shared io +- zink: run optimize_nir() only once during compile +- zink: move bo load offset adjustment to compiler passes +- zink: run lower_io_to_scalar before rewriting bo access +- zink: move all 64-32bit shader load rewriting to nir pass +- zink: move ssbo store offset adjustment to compiler passes +- zink: move shared intrinsic offset adjustments to compiler passes +- zink: move all 64-32bit shader store rewriting to nir pass +- zink: add more glsl base types to get_glsl_basetype() +- zink: move all shader bo/sharedmem access to compiler passes +- zink: add better handling for CUBE_COMPATIBLE bit +- zink: cache bo SpvId array types +- zink: use align64 for allocation sizes +- zink: set aspectMask for renderpass2 VkAttachmentReference2 structs +- zink: always use explicit lod for texture() when legal in non-fragment stages +- zink: be more permissive for injecting LOD into texture() instructions +- zink: inject LOD for sampler version of OpImageQuerySize +- zink: flag renderpass change when toggling fbfetch +- zink: be more spec-compliant for unnormalizedCoordinates samplers +- zink: don't clamp cube array surfacess to cubes +- zink: don't clamp 2D_ARRAY surfaces to 2D +- zink: error when trying to allocate a bo larger than heap size +- zink: clamp max buffer sizes to smallest buffer heap size +- zink: explicitly enable VK_EXT_shader_subgroup_ballot +- zink: add more int/float types to cast switching in ntv +- zink: force float dest types on some alu results +- zink: stop double printing validation messages +- zink: add SpvCapabilityStorageImageMultisample for multisampled storage images +- zink: reject all storage multisampling if the feature is unsupported +- gallium: add PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY +- zink: set PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY +- zink: add queue locking +- build: add sha1_h to llvmpipe build +- mesa/st: rework psiz lowering +- mesa/st: lower psiz for shader precompile +- anv: disable debug logging spam +- zink: set fbfetch state on lazy batch data when enabling it +- zink: always use lazy (non-push) updating for fbfetch descriptors +- vk: update headers for 1.2.197 +- lavapipe: fix cmd queuing for dynamic render +- lavapipe: VK_KHR_dynamic_rendering +- features: add dynamic render for lavapipe +- zink: do a better job conserving locations for packed xfb outputs +- zink: clamp PIPE_SHADER_CAP_MAX_INPUTS for xfb +- zink: remove lazy ci job +- zink: add khr46 to ci +- aux/primconvert: handle singular incomplete restarts +- zink: rework cached fbfetch descriptor fallback +- lavapipe: add some asserts for descriptor dynamic offsets +- gallivm: handle TGSI SampleId sysval +- Revert "gallium/u_blitter: work around broken sample shading in llvmpipe and zink" +- aux/trace: fix PIPE_QUERY_PIPELINE_STATISTICS_SINGLE tracing +- aux/trace: support pipe_context::get_query_result_resource +- aux/trace: trace pipe_screen::is_format_supported better +- aux/trace: fix vertex state tracing +- aux/trace: add pipe_context::render_condition_mem +- zink: set new point/line caps +- zink: update radv ci passes +- zink: flatten out draw templates a bit +- zink: declare int/float size caps inline with type usage +- zink: simplify 64bit vertex attrib lowering +- zink: add another compiler pass to convert 64bit vertex attribs +- zink: add 1DShadow sampler handling for drivers (radv) that don't support it +- zink: radv ci updates for 1dshadow stuff +- zink: implement cs uniform inlining +- zink: always inline uniforms when running on a cpu driver +- zink: ci updates +- zink: be more consistent about applying module hash for gfx pipeline +- zink: update gfx pipeline shader module pointer even if the program is unchanged +- aux/primconvert: break out primconvert internals into util function +- aux/primconvert: support pipe_context::draw_vertex_state +- zink: stop running discard_if in generated tcs +- zink: always add VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT for 3D images +- move util/indices to core util +- mesa: convert unsupported primtypes during display list compilation +- zink: block suballocator caching for swapchain/dmabuf images +- zink: set suballocator bo size to aligned allocation size +- zink: implement pipe_context::draw_vertex_state +- zink: stop using VK_IMAGE_LAYOUT_PREINITIALIZED for dmabuf +- zink: always set matching resource export type for dmabuf creation +- dri2: set dimensions on dmabuf import planes +- zink: implement multiplanar modifier handling +- zink: add error for bo allocation failure +- zink: always use slab allocation placement for domains +- zink: set zink_resource_object::host_visible based on actual bo placement +- zink: demote BAR allocations to device-local on oom +- zink: use IMMUTABLE for dummy xfb buffer +- zink: fix memory availability reporting +- zink: fail context creation more gracefully +- zink: clamp to 500 max batch states on nvidia +- gallium: add pipe_screen::is_compute_copy_faster hook +- gallium: rename PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER +- mesa/st: make sampler_type_for_target public +- mesa/st: make some pbo functions public +- gallium: implement compute pbo download +- aux/pb: add a new slab alloc function for reclaiming all bo objects +- zink: use pb_slab_alloc_reclaimed(reclaim_all) for BAR heap sometimes +- zink: enable PIPE_TEXTURE_TRANSFER_COMPUTE on non-cpu drivers +- zink: explicitly init glsl +- zink: add a compiler pass to scan for shader image use +- zink: set batch state queue on creation +- zink: be consistent about waiting on context queue on context destroy +- mesa/vbo: be more comprehensive for degenerate primitive conversion in dlists +- radv: fix xfb query copy param ordering +- zink: add missing assert for 8bit vertex decompose +- zink: add some wsi instance extensions +- zink: always unset vertex shader variant key data when changing last vertex stage +- zink: add extra synchronization for buffer descriptor binds +- zink: use device-local heap for sparse backing allocations +- zink: add a better threshold for clamping query pool resets on suspend +- zink: always set number of timestamp results to 1 for internal qbo +- zink: fix availability buffer sizing/copying for xfb queries +- zink: skip readback of qbos with no results +- Revert "zink: when performing an implicit reset, sync qbos" +- zink: use even more accurate stride values for query result copies +- zink: ci updates +- zink: add flake +- aux/trace: copy over stream_output_target_offset method from context +- util/vbuf: fix buffer translation sizing +- zink: remove SpvMemorySemanticsMakeVisibleMask from nir_intrinsic_memory_barrier +- zink: add some nv ci results +- aux/trace: add pipe_context::fence_server_signal tracing +- zink: update gfx_pipeline_state.vertex_strides when necessary +- zink: check EXT_image_drm_format_modifier for dmabuf support +- Revert "zink: update gfx_pipeline_state.vertex_strides when necessary" +- zink: add VK_KHR_external_semaphore_fd to device exts +- zink: add VK_KHR_external_memory_capabilities to instance exts +- zink: add driver/device uuid screen hooks +- zink: implement GL semaphores +- zink: implement external memory object resource handling +- zink: enable EXT_external_objects pipe caps +- util: add ptralloc +- lavapipe: replace hard pointer calcs in dynamic render with ptralloc +- lavapipe: replace hard pointer calcs in push descriptors with ptralloc +- zink: update nv ci baseline +- zink: add deqp ci baseline for nv +- lavapipe: fix ptralloc typo +- zink: add get_sparse_texture_virtual_page_size hook +- zink: set up image create bits for sparse textures +- zink: support sparse texture range commits +- zink: allow sparse buffers to be suballocated +- zink: stop allocating such massive staging regions for buffer maps +- zink: fake sparse R9G9B9E5 support as needed +- zink: implement sparse shader instructions in ntv +- zink: always set actual_dest_type for ntv tex instruction emission +- zink: handle residency return value from sparse texture instructions +- zink: rename zink_so_info -> zink_shader_info +- zink: always pass shader info to ntv +- zink: add nir_intrinsic_image_deref_sparse_load to image scanning in compiler +- zink: only allocate ntv residency info if it will be used +- zink: emit sparse residency cap in ntv +- zink: handle min_lod texture operands +- zink: batch sparse texture binds +- zink: handle sparse texture miptail commits +- zink: enable ARB_sparse_texture pipe caps +- zink: ARB_sparse_texture2 +- docs: add features/relnotes for zink sparse texture support +- zink: fix non-modifer dmabuf usage +- zink: link with vulkan utils +- zink: hook up planar image format creation +- vulkan/wsi: add VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT for swapchain image caps +- lavapipe: remove unused struct member +- zink: update nv fails +- zink: update radv fails list +- zink: never use SpvOpImageQuerySizeLod for texel buffers +- zink: add anv (icl) fails +- zink: handle bogus xfb draws +- zink: reorder fbfetch flag-setting to avoid null deref +- zink: return 256 for PIPE_CAP_MIN_MAP_BUFFER_ALIGNMENT +- anv: silence wsi debug logging +- zink: unify some context casts in zink_create_sampler_view +- zink: emit same number of timeline signals as semaphore signals +- zink: flag has_work when a GL semaphore is signalled +- zink: allow resource creation without VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT +- zink: use VkImageViewUsageCreateInfo to remove attachment bits +- zink: always create a separate VkBuffer for storage use +- zink: use the storage buffer for bufferview creation when format allows +- zink: flag all buffer resources with PIPE_BIND_SHADER_IMAGE +- zink: simplify buffer case for zink_resource_object_init_storage() +- zink: remove tmp buffer rebinds +- aux/tc: add tc_buffer_write to replace pipe_buffer_write usage +- zink: fix vertex buffer mask computation for null buffers +- zink: replace qbo pipe_buffer_write usage with tc_buffer_write +- zink: replace other pipe_buffer_write usage with pipe_buffer_write_nooverlap +- zink: make pipe_buffer_write usage trigger compiler errors +- zink: ci updates +- zink: clamp tbo creation to maxTexelBufferElements +- zink: add vertex shader pipeline bit for generated barrier construction +- zink: print an error when the device is lost +- zink: fix waiting on current batch id +- zink: handle swizzled offset/count values for shader bitfield ops +- zink: enable VK_EXT_shader_atomic_float +- zink: add warning printf for drivers missing VK_EXT_shader_atomic_float +- zink: cast image atomic op params/results based on image type +- zink: use SpvScopeDevice over SpvScopeWorkgroup for atomic shader ops +- aux/vbuf: use local var for modifying unaligned_vb_mask during update +- aux/vbuf: move mask-clearing for vbuf updates after buffer scanning +- aux/vbuf: add fastpath for skipping identical vbuf updates +- mesa: stop truncating MESA_GLSL=dump +- zink: ARB_sparse_texture_clamp +- docs: update features/relnotes for zink sparse texture clamp +- zink: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS +- llvmpipe: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS +- zink: add VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT for query binds +- zink: use scanout obj when returning resource param info +- zink: fix PIPE_CAP_TGSI_BALLOT export conditional +- zink: reject invalid draws +- zink: min/max blit region in coverage functions +- aux/draw: fix llvm tcs lane vec generation +- lavapipe: use util_pack_color_union() for generating clear colors +- zink: ci updates +- lavapipe: ci updates +- zink: always set VkPipelineMultisampleStateCreateInfo::pSampleMask +- zink: always invalidate streamout counter buffer if not resuming +- zink: ci updates +- zink: fix cached descriptor set invalidation for array bindings +- zink: free push descriptor pools on deinit +- zink: don't free non-fbfetch dsl structs when switching to fbfetch +- gallivm: avoid division by zero when computing cube face +- zink: always update shader variants when rebinding a gfx program +- zink: use a fence for pipeline cache update jobs +- zink: wait on program cache fences before destroying programs +- zink: fix descriptor cache pointer array allocation +- zink: mark fbfetch push sets as non-cached +- zink: stop leaking descriptor sets +- zink: invalidate non-punted recycled descriptor sets that are not valid +- zink: set shader key size to 0 for non-generated tcs + +Mike Lothian (1): + +- meson: Fix dri.pc dridriverdir + +Mykhailo Skorokhodov (3): + +- iris: Add missed tile flush flag +- Revert "iris: add tile cache flush to iris_copy_region" +- nir: Fix read depth for predecessors + +Nanley Chery (82): + +- iris: Convert some mod_info checks to asserts +- iris: Disable the MC_CCS modifier with norbc +- iris: Set DISABLE_AUX_BIT for AUX_USAGE_NONE modifiers +- iris: Refactor the assignment to possible_usages +- intel/isl: Allow creating non-Y-tiled ASTC surfaces +- iris: Allow GPU-based uploads of ASTC textures +- anv: Require transfer features for transfer usages +- anv: Allow transfer-only linear ASTC images +- anv: Drop code from get_blorp_surf_for_anv_buffer +- intel/isl: Unify fmt checks in isl_surf_supports_ccs +- iris: Enable CCS_E on 32-bpc float formats on TGL+ +- iris: Drop redundant iris_resource_disable_aux call +- intel/isl: Restore CCS_E support for YUYV and UYVY +- iris: Drop the YCRCB cases in finish_aux_import +- intel/isl: Drop extra devinfo checks for CCS support +- intel/isl: Require aux map for some 64K alignment +- intel/blorp: Modify the SKL+ CCS resolve rectangle +- intel/blorp: Modify get_fast_clear_rect for XeHP +- iris: Change a param of iris_resource_init_aux_buf +- iris: Use the aux BO and surf less during init +- iris: Move some BO setup to iris_resource_init_aux_buf +- iris: Simplify iris_get_aux_clear_color_state_size +- iris: Don't allocate a clear color BO for some Z/S +- iris: Drop row pitch param from iris_get_ccs_surf +- iris: Don't allocate and initialize CCS on XeHP +- iris: Don't assert a NULL aux BO during aux config +- iris: Modify the comment about zeroing CCS +- iris: Update the initial CCS state on XeHP +- iris: Free the local cache bucket in bufmgr_destroy +- iris: Replace bo->real.local with bo->real.heap +- iris: Add and use flags_to_heap +- iris: Use a num_buckets pointer in add_bucket +- iris: Replace "local" with "heap" in bufmgr fn params +- iris: Add and use BUCKET_ARRAY_SIZE +- iris: Add and use bucket_info_for_heap +- iris: Rework the DEVICE_LOCAL heap +- iris: Disable the SMEM fallback for CCS on XeHP +- iris: Use util packing fns in convert_clear_color +- blorp: Drop multisampled code in blorp_can_hiz_clear_depth +- intel/isl: Rework HiZ image align calculations +- intel/isl: Update comment for the XeHP HiZ block +- intel/isl: Use a new HiZ format on XeHP+ +- intel/isl: Require Y-tiling for depth on gfx4-5 +- intel/isl: Allow HiZ with Tile4/64 surfaces +- intel/isl: Return false more in isl_surf_get_hiz_surf +- anv,iris: Flush tile cache after color fast clears +- anv,iris: Depth stall around color fast clears +- intel: Rename the PSD bit in PIPE_CONTROL for XeHP +- anv,iris: PSS Stall Sync around color fast clears +- anv,iris: Flush HDC before color fast clears +- anv: Don't fill lowered_storage_image_param on SKL+ +- intel/isl: Don't check pitch in isl_surf_get_mcs_surf +- intel/isl: Strengthen MCS SINT format restriction +- Revert "intel/isl: Don't reconfigure aux surfaces for MCS" +- intel/gen125.xml: Increase Auxiliary Surface Pitch +- intel/isl: Allow creating MCS in Tile4 memory +- anv: Drop assert against modifier with aux on gfx12 +- anv: Disable CCS_E for some 8/16bpp copies on TGL+ +- anv: Use ANV_FAST_CLEAR_DEFAULT_VALUE for CCS on TGL+ +- anv: Re-enable CCS_E on TGL+ +- anv: Drop redundant disabling of non-renderable CCS +- anv: Disable the SMEM fallback for local memory +- anv: Require the local heap for CCS on XeHP +- anv: Don't allocate VMA for CCS on XeHP +- isl: Enable compression with multisampled Tile64 +- iris: Explicitly rely on gallium fallbacks for YUV +- intel/isl: Support YUV pipe-to-isl format mapping +- iris: Drop stale media compression import code +- iris: Use iris_format_for_usage in map_aux_addresses +- intel: Rename a RenderCompressionFormat field +- intel/isl: Support the XeHP media compression format +- iris: Support the XeHP media compression format +- iris: Refactor a ternary in iris_resource_get_param +- iris: Pick the right BO in iris_resource_get_param +- iris: Return non-zero stride for clear color plane +- intel/isl: Simplify Z-buffer tiling config during emit +- intel/isl: Fix depth buffer TiledSurface programming +- intel/isl: Add more PRM text for HiZ/STC requirement +- iris: Don't fast clear with the view format +- Revert "anv: Require the local heap for CCS on XeHP" +- anv: Refactor anv_image_init_from_create_info +- anv: Disable aux if the explicit modifier lacks it + +Neha Bhende (11): + +- st: Fix 64-bit vertex attrib index for TGSI path +- st: Fix comments in commit be6d584de43966e +- svga: Add GL43 commands support +- svga: Add utility to check for GL43 support +- tgsi: Add hw_atomic_declared in tgsi_info +- svga: Add support for compute shader, shader buffers and image views +- svga: shader translation for compute, image views and shader buffers +- svga: add GL43 resource validation at draw time +- svga: enable GL43 on SVGA GL43 capable device +- svga: enable PIPE_CAP_IMAGE_STORE_FORMATTED on gl43 capable device +- svga: store shared_mem_size in svga_compute_shader instead of svga_context + +Neil Roberts (1): + +- v3d: Update prim_counts when prims generated query in flight without TF + +Nicholas Bishop (1): + +- mesa/get: allow NV_pixel_buffer_object constants in GLES2 + +Niklas Haas (1): + +- wsi/x11: support depth 30 visuals + +Omar Akkila (1): + +- llvmpipe: page-align memory allocations + +Paulo Zanoni (12): + +- iris: also dump bo's imported and exported flags +- iris: destroy our mutexes a little later +- iris: fix off-by-one error when clearing stale syncobjs +- iris: call brw_process_intel_debug_variable() earlier +- iris: extract iris_hw_context_set_unrecoverable() +- intel/fs: Assert the GPU supports 64bit ops if present at lower_scoreboard time. +- iris: improve error checking in functions that call vma_alloc() +- iris: sprinkle some assertions for bufmgr->lock +- iris: save some iris_syncobj_reference() calls at update_bo_syncobjs() +- iris: implement inter-context busy-tracking +- iris: handle IRIS_MEMZONE_BINDER with a real vma_heap like the others +- iris: fix register spilling on compute shaders on XeHP + +Pavel Asyutchenko (6): + +- llvmpipe: fix wrong assumption on FB fetch shader opacity +- llvmpipe: fix gl_FragColor and gl_LastFragData[0] combination +- llvmpipe: protect from doing FB fetch of missing buffers +- llvmpipe: fix FB fetch with non 32-bit render target formats +- llvmpipe: remove dead args from load_unswizzled_block +- llvmpipe: enable PIPE_CAP_FBFETCH_COHERENT + +Pavel Ondračka (9): + +- r300: Document the RADEON_DEBUG options +- r300: Replace RADEON_NO_TCL with RADEON_DEBUG=notcl +- r300: Remove broken optimization in rc_transform_KILL +- r300: use point sprite coordinates only when drawing points (v5) +- r300: fix translate_LRP +- r300: properly initialize new_vs in r300_draw_init_vertex_shader +- r300: Disable integers and indirect temporary addressing with swctl +- r300: Set consistent PIPE_SHADER_CAP_PREFERRED_IR +- r300: fix transformation of abs modifiers with negate + +Philipp Zabel (1): + +- etnaviv: fix emit_if in case the else block ends in a jump + +Pierre Moreau (1): + +- nv50/nir: Switch to the common NIR options + +Pierre-Eric Pelloux-Prayer (57): + +- radeonsi: use viewport offset in quant_mode determination +- gallium/dri: replace bool with flag parameter +- gallium/dri: add createImageFromFds2 +- gallium/dri: let the driver know if the imported image is DRI_PRIME buffer +- radeon_winsys.h: add a parameter to buffer_from_handle +- winsys/amdgpu: add uncached flag to the imported DRI_PRIME buffer +- radeonsi/gfx10.3: enable SDMA for DRI_PRIME copies +- radeonsi: use PIPE_BIND_DRI_PRIME instead of is_dri_blit_image +- Revert "gallium: add a is_dri_blit_image bool to pipe_blit_info" +- glsl/drirc: add an option for gl_ClipVertex / gl_CullDistance checks +- drirc: enable do_dce_before_clip_cull_analysis for ANSA +- mesa: don't reset SamplersValidated if nothing changed +- glsl/nir: mark samplers inside a block as bindless +- radeonsi: treat nir_intrinsic_load_constant as a VMEM operation +- ac/surface: use a less strict condition in is_dcc_supported_by_L2 +- radeonsi/sdma: fix bogus assert +- radeonsi: fix ps_uses_fbfetch value +- ac/surface: don't validate DCC settings if DCC isn't possible +- vbo/dlist: free copied.buffer if no vertices were copied +- glx/drirc: add a force_direct_glx_context option +- mesa: enable force_direct_glx_context for DiscoveryStudio2020 +- llvmpipe: add missing NIR alu-op handling +- mesa: print a warning when an extension can't be disabled +- mesa: don't use dummy_true for some MESA extensions +- mesa/init: replace call_once with manual implementation +- drirc: add mesa_extension_override option +- drirc: add options for BETA CAE Ansa application. +- mesa: always call _mesa_update_pixel +- mesa: remove NEW_COPY_TEX_STATE +- radeonsi/sqtt: fix shader stage values +- radeonsi/sqtt: fix FINISH_DONE / BUSY usage +- radeonsi/sqtt: reserve a vmid when sqtt is enabled +- radeonsi: unreference framebuffer state after use +- radeonsi/sqtt: increase the default buffer size to 32MB +- radeonsi: fix fast clear / depth decompression corruption +- radeonsi: silence a warning +- radeonsi: use max_zplanes after the last write +- glx: fix querying GLX_FBCONFIG_ID for Window +- radeonsi: don't use perp. end caps when line smoothing is on +- glthread: only log glthread destroy reason when it's not NULL +- radeonsi/gfx8: use the proper dcc clear size +- vbo/dlist: fix loopback crash +- vbo/dlist: add vertices to incomplete primitives +- amd: add SDMA_NOP_PAD +- radv: partial sdma support +- radv: allocate the prime buffer as uncached +- vulkan/wsi: add use_prime_blit param to wsi_swapchain_init +- vulkan/wsi: add a private transfer pool to exec the DRI_PRIME blit +- radv: implement wsi's private transfer queue using SDMA +- radeonsi/gfx10: fix si_texture_get_offset for mipmapped tex +- radeonsi,radv: fix usages of surf_pitch +- radeonsi/tests: update expected results +- radeonsi/tests: add expected results for vega20 +- driconf: enable vs_position_always_invariant for Dirt Rally +- mesa: use less temporaries in build_lighting +- radeonsi: limit loop unrolling for LLVM < 13 +- radeonsi: change rounding mode to round to even + +Qiang Yu (76): + +- driconf: add executable_regexp application attribute +- drirc: add Mari application workaround +- xmlconfig_test: add unit test for executable_regexp +- radeonsi: add radeonsi_force_use_fma32 driconf option +- driconf: support META application +- glx/dri3: fix glXQueryContext does not return GLX_RENDER_TYPE value +- loader/dri3: fix piglit egl-copy-buffer test +- ci: remove egl-copy-buffers from fail list +- glx: no need to create extra pixmap for pbuffer +- glx: check drawable type before create drawble +- glx: add drawable type argument when create drawable +- loader/dri3: add drawable type set by GLX and EGL +- loader/dri3: remove unused present capability query +- loader/dri3: pack window present event setup into a function +- loader/dri3: setup present event with drawable type info +- loader/dri3: replace is_pixmap with drawable type +- loader/dri3: rename dri3_fake_front_buffer +- loader/dri3: stop doing anything in swap buffer for some drawable +- loader/dri3: support glx pbuffer swap +- glx: fix regression for drawable type detection +- glapi: should not add alias function to static_data.py +- gallium: add caps for sparse texture support +- mesa: add ARB_sparse_texture extension +- mesa: add ARB_sparse_texture constants +- gallium: add screen get_sparse_texture_virtual_page_size callback +- gallium: add get_sparse_texture_virtual_page_size for noop/rbug/trace +- mesa: add ARB_sparse_texture query in glGetInternalformativ +- mesa: add ARB_sparse_texture texture param set/get +- mesa/st: add st_GetSparseTextureVirtualPageSize interface +- mesa: glTexStorage* support sparse texture allocation +- mesa/st: add st_TexturePageCommitment interface +- mesa: implement glTexPageCommitmentARB/glTexturePageCommitmentEXT +- mesa/st: update NumSparseLevels from pipe_resource +- winsys/radeon: change surface_init flags to 64bit +- ac/surface: fix prt_first_mip_tail calculation for gfx9+ +- ac/surface: add prt_tile_depth +- radeonsi: support alloc a sparse texture +- radeonsi: use staging buffer for sparse texture when transfer map +- radeonsi: implement get_sparse_texture_virtual_page_size +- radeonsi: support texture resource commit +- radeonsi: enable ARB_sparse_texture +- nir: fix nir_tex_instr hash not count is_sparse field +- gallium/dd_debug: add get_sparse_texture_virtual_page_size +- gallium: add PIPE_CAP_QUERY_SPARSE_TEXTURE_RESIDENCY +- mesa: add ARB_sparse_texture2 extension +- mesa/main: relax alignment check when ARB_sparse_texture2 available +- glsl: add ARB_sparse_texture2 extension +- glsl: ir_texture support sprase texture +- glsl: add _texture related sparse texture builtin functions +- glsl: add _textureCubeArrayShadow related sparse texture builtin func +- glsl: add _texelFetch related sparse texture builtin function +- glsl: add sparse texture image load builtin functions +- glsl: add vec5 glsl types +- glsl/nir: convert sparse ir_texture to nir +- glsl/nir: convert sparse image load to nir +- glsl/nir: adjust sparse texture nir_variable +- glsl: add sparseTexelsResidentARB builtin function +- glsl/nir: convert is_sparse_texels_resident to nir +- radeonsi: lower nir_intrinsic_is_sparse_texels_resident +- mesa/main: allow multi sample sparse texture +- mesa/main: export _is_multisample_target for external usage +- gallium: add multi_sample parameter to get_sparse_texture_virtual_page_size +- radeonsi: enable multi sample sparse texture support +- radeonsi: enable ARB_sparse_texture2 +- gallium: add PIPE_CAP_CLAMP_SPARSE_TEXTURE_LOD +- mesa: add ARB_sparse_texture_clamp extension +- glsl: add ARB_sparse_texture_clamp extension +- glsl: ir_texture add clamp field +- glsl: _texture support clamp parameter +- glsl: _textureCubeArrayShadow support clamp +- glsl: add ARB_sparse_texture_clamp builtin functions +- glsl/nir: convert ir_texture->clamp to nir +- radeonsi: enable ARB_sparse_texture_clamp +- radeonsi: workaround Specviewperf13 Catia hang on GFX9 +- radeonsi: fix depth stencil multi sample texture blit +- glx: fix pbuffer refcount init + +Rafael Antognolli (2): + +- intel/compiler: Assert that unsupported tg4 offsets were lowered for XeHP +- intel: Emit 3DSTATE_BINDING_TABLE_POOL_ALLOC for XeHP + +Renato Pereyra (2): + +- anv: Enable implicit CCS for external images +- anv: add helper methods related to enabling CCS for external images + +Rhys Perry (83): + +- radv: Use nir_var_mem_image in meta shaders +- aco: disable mul(cndmask(0, 1, b), a) optimization sometimes +- aco: simplify emit_stream_output() +- radv: don't use a separate cache entry for GS copy shaders +- aco: use std::vector and IDSet in RA validator +- docs: update radv extensions in features.txt +- nir/algebraic: optimize Cyberpunk 2077's open-coded bitfieldReverse() +- nir/lower_system_values: replace local_invocation_id components with zero +- radv: lower load_local_invocation_index with 1D workgroups +- aco: optimize load_local_invocation_index with single-wave workgroups +- aco: consider pseudo-instructions reading exec in needs_exec_mask() +- aco/spill: use spills_entry instead of spills_exit to kill linear VGPRs +- radv: make RADV_FORCE_FAMILY case-insensitive +- radv: fix max_render_backends for Sienna Cichlid null winsys +- spirv: run nir_copy_prop before nir_rematerialize_derefs_in_use_blocks_impl +- radv: stop running copy-propagation before nir_opt_deref +- nir/lower_tex: don't calculate texture_mask for texture_index>=32 +- nir/lower_subgroups: fix left shift of -1 +- aco: properly update use counts if a extract is still used +- nir/dce: fix DCE of loops with a halt or return instruction in the pre-header +- nir/cf: fix insertion of loops/ifs after jumps +- nir/tests: add DCE test for loops following a jump +- aco: don't create DPP instructions with SGPR operands +- nir/opt_offsets: fix try_extract_const_addition recursion +- nir/opt_offsets: remove need to loop try_extract_const_addition +- nir/algebraic: optimize a*#b & -4 +- radv: add radv_meta_init_shader +- radv: include RT shaders in RADV_DEBUG=shaders,shaderstats +- radv: clone shader in radv_shader_compile_to_nir +- radv: initialize workgroup_size in radv_meta_init_shader +- aco: don't create unnecessary addition in indirect get_sampler_desc() +- aco: improve clrx disassembly +- aco: use more predictable tiebreaker when forming MADs +- aco: create v_fmamk_f32/v_fmaak_f32 from nir_op_ffma +- aco: swap operands if necessary to create v_madak/v_fmaak +- aco: swap multiplication operands if needed to create v_fmac_f32/etc +- radv,aco: implement nir_op_ffma +- radv,aco: don't lower some ffma instructions +- radv: have the null winsys set more fields +- aco: fix check_vop3_operands() for f16vec2 ffma fneg combine +- nir/opt_load_store_vectorize: improve ssbo/global alias analysis +- nir/algebraic: optimize more 64-bit imul with constant source +- nir/opt_access: infer CAN_REORDER for global access +- aco: disallow SMEM offsets that are not multiples of 4 +- aco: skip &-4 before SMEM +- aco: remove SMEM constant/addition combining out of the loop +- radv: increase maxTaskOutputCount to 65535 +- nir/lower_shader_calls: fix store_scratch write_mask +- ac/nir: fix store_buffer_amd write_masks +- nir/uniform_atomics: fix is_atomic_already_optimized without workgroups +- aco: remove pack_half_2x16(a, 0) optimization +- radv: add RADV_DEBUG=splitfma +- radv: set radv_split_fma=true for Proton SotTR +- nir/unsigned_upper_bound: don't follow 64-bit f2u32() +- aco: use p_extract for SGPR nir_op_unpack_half_2x16_split_y +- nir: add nir_op_fmulz and nir_op_ffmaz +- radv,aco,ac/llvm: implement fmulz and ffmaz +- aco: consider legacy multiplications in optimizer +- aco: create v_mac_legacy_f32/v_fmac_legacy_f32 +- nir/algebraic: add ignore_exact() wrapper +- nir/algebraic: optimize open-coded fmulz/ffmaz +- nir: add some missing nir_alu_type_get_base_type +- nir/algebraic: optimize expressions using fmulz/ffmaz +- nir/builder: set write mask if not provided +- nir/builder: assume scalar alignment if not provided +- radv: avoid providing a write_mask to intrinsic builders +- radv: avoid providing an align_mul to intrinsic builders +- radv: avoid providing an align_offset to intrinsic builders +- ac/nir: avoid providing a write_mask to intrinsic builders +- ac/nir: avoid providing an align_mul to intrinsic builders +- ac/nir: use shorter builder names +- radv: fix raytracing with wave32 +- radv: use wave32 for raytracing +- radv: use 8x4 workgroups for wave32 RT +- radv: fix optimized MSAA copies with suballocated images +- aco: fix neg(abs(mul(a, b))) if the mul is not VOP3 +- aco: optimize abs(mul(a, b)) +- aco: preserve pass_flags during format conversions +- aco: fix v_mac_legacy_f32 +- aco: don't encode src2 for v_writelane_b32_e64 +- radv: fix R_02881C_PA_CL_VS_OUT_CNTL with mixed cull/clip distances +- anv: Enable nir_opt_access +- radv: include disable_aniso_single_level and adjust_frag_coord_z in key + +Rob Clark (63): + +- freedreno: Fix for large epilogues +- freedreno/ir3+isa: Cleanup bindless cat5 samp/tex encoding +- freedreno/isa: Fixes for validation +- freedreno/ir3/tests: Fix indentation +- freedreno/ir3/tests: Add additional disasm test vectors +- freedreno/ir3: Don't lower s2en if samp/tex is too large +- isaspec: Fix derived field width +- isaspec: Do not emit duplicate field encodes +- isaspec: Add bitfield size assertions +- freedreno/isa: Add immed reg accessors +- freedreno/ir3/tests: Don't skip encode test if decode fails +- freedreno/ir3/tests: Add some 8/16b ldg/stg tests +- freedreno/isa: Fix ldg/stg "halfness" +- freedreno/computerator: Fix mergedregs +- freedreno/ir3: 64b intrinsic lowering +- freedreno/ir3: Lower 64b phis +- freedreno/ir3: Add load/store_global lowering +- isaspec: Fix gpu_id for default_options +- freedreno: Skip built-in shaders for clover +- freedreno/ir3: Handle MESA_SHADER_KERNEL +- freedreno: implement set_compute_state() +- freedreno/ir3: vec8+vec16 support +- freedreno/ir3: implement load_work_dim intrinsic +- freedreno/ir3: Add support for load_kernel_input +- freedreno/ir3: Move lower_idiv_options +- freedreno: Fix set_global_binding +- freedreno/ir3: Deal with zero-source instructions +- freedreno/ir3: 16b bools +- freedreno/ir3: 8bit fixes +- freedreno/ir3: Fix load/store_global_ir3 type +- freedreno/ir3: Fix reg size validation +- freedreno/ir3: Add wide load/store lowering +- freedreno/ir3: Add ihadd/uhadd +- freedreno/ir3: Get req_local_mem from pipe_compute_state +- freedreno/ir3: Fix validation of subgroup macros +- freedreno/drm: Add some asserts +- freedreno/drm: Move suballoc_bo to device +- freedreno/ir3/print: Show end's outidxs +- freedreno/ir3: xfb fix for duplicate outputs +- freedreno: Add PIPE_SHADER_IR_NIR_SERIALIZED support +- freedreno: caps for clover +- isaspec: Add prototypes for expr evaluators +- freedreno/crashdec: Split out mempool decoding +- freedreno/crashdec: HFI queue decoding +- freedreno/crashdec: Fallback to chip_id for GPU id +- freedreno/crashdec: Basing GMU log decoding +- freedreno/ir3: Handle instr->address when cloning +- freedreno/computerator: Fix @buf header +- freedreno/computerator: Mark shader bo for dumping +- freedreno/ir3: Dump const state with shader disasm +- clover: Move min image support check +- freedreno: Report system memory as video memory +- freedreno: Small dev_id_compare() cleanup +- freedreno: Rearrange dev_id_compare() logic +- freedreno: Handle wildcard fuse-id in device matching +- freedreno: Update chip-ids +- freedreno/decode: Handle chip-id +- mesa/st: Lowered ucp should still mark rast state dirty +- freedreno: Pass shader cache key instead of shader key +- freedreno: Add FD_DIRTY_RASTERIZER_CLIP_PLANE_ENABLE +- freedreno/a6xx: Fix clip_mask +- freedreno/a5xx: Fix clip_mask +- freedreno: Add missing generated header dependency + +Rohan Garg (7): + +- intel/fs: OpImageQueryLod does not support arrayed images as an operand +- ci: Do not remove libgbm-dev +- ci: Move common variables out into a separate file +- ci: Do not remove wget +- ci/piglit: Start vtest server if driver is set to virpipe +- anv: Enable VK_VALVE_mutable_descriptor_type +- docs: Update features and new_features for anv + +Roland Scheidegger (1): + +- llvmpipe: adjust rounding for viewport scissoring + +Roman Gilg (1): + +- vulkan/wsi/x11: document implementation + +Roman Stratiienko (6): + +- android.mk: Add missing variables to the make target +- v3dv: Fix dEQP-VK.info#instance_extensions test +- v3dv: Fix V3DV_HAS_SURFACE preprocessor condition +- v3dv: Hotfix: Rename remaining V3DV_HAS_SURFACE->V3DV_USE_WSI_PLATFORM +- v3d: Don't force SCANOUT for PIPE_BIND_SHARED requests +- v3dv: add Android support + +Ruijing Dong (6): + +- frontends/omx: preserve omx to keep current mode for avc decoding +- frontends/va: preparing to disable h264 extension flag in vaapi dec path +- radeon/vcn: enable dynamic dpb Tier2 support for h264 dec vaapi path +- radeon/vcn: enable dynamic dpb Tier2 for hevc dec vaapi path +- frontend/va: Keep surface buf addr before reallocation +- radeon/vcn: Updating render_pic_list for correction + +Ryan Houdek (1): + +- util/xmlconfig: Allow DT_UNKNOWN files + +Ryan Neph (1): + +- venus: ignore framebuffer for VkCommandBuffer executed outside of render pass + +Sagar Ghuge (16): + +- intel/compiler: Set correct cache policy for A64 byte scattered read +- intel/genxml: Add new Primitive ID Not Required bit field to 3DSTATE_DS +- intel/compiler: Track primitive id in domain/evaluation shader +- anv: Drop hint if primitive id is required or not +- iris: Drop hint if primitive id is required or not +- anv: Pass correct aux usage while filling out surface state +- anv: Enable CCS for storage image formats +- intel/compiler: Set correct return format for brw_SAMPLE +- intel/compiler: Don't hardcode padding source type to 32bit +- intel/compiler: Fix instruction size written calculation +- intel/compiler: Add helper to support half float payload with padding +- intel/fs: Define and set correct sampler simd mode +- intel/compiler: Prepare disasm for 16-bit sampler params +- anv, iris: Implement Wa_14014890652 for DG2 +- intel/genxml: Add L1 Cache Control bit field +- intel/genxml: Add Un-Typed Data-Port Cache Flush field to pipe control + +Sajeesh Sidharthan (1): + +- frontends/va/av1: handle multiple slice params + +Samuel Pitoiset (158): + +- aco: do not return an empty string when disassembly is not supported +- radv: fix removing PSIZ when it's not emitted by the last VGT stage +- radv: fix OpImageQuerySamples with non-zero descriptor set +- radv: do not remove PSIZ for streamout shaders +- aco: fix invalid IR generated for b2f64 when the dest is a VGPR +- aco: fix emitting stream outputs when the first component isn't zero +- radv: add an assertion to prevent GPU hangs when VRS isn't supported +- ac/rgp: remove useless code related to GFX6-7 +- aco: fix loading 64-bit inputs with fragment shaders +- radv,aco: decouple shader_info/options from radv_shader_args +- radv: re-emit prolog inputs when the nontrivial divisors state changed +- radv: remove old RADV_TRACE_FILE warning +- radv: fix build errors with Android +- radv: report error messages when the driver can't be initialized +- aco: only load streamout buffers if streamout is enabled +- radv: lower the viewport index to zero when the VGT stage doesn't export it +- radv: fix invalid wait_dst_stage_mask type +- ac/nir: remove bogus assertion about the position for culling +- zink: add CI lists and deqp-suite configuration for RADV +- radv: move freeing the trigger SQTT file at a better place +- radv: remove useless checks about GFX7 for SQTT +- radv: enable SQTT instruction timing by default +- radv: stop reporting SQTT/RGP support as experimental +- docs: document RADV_THREAD_TRACE_* envvars +- radv: rename radv_shader_variant to radv_shader +- radv: only enable VK_EXT_display_control for vrcompositor (SteamVR) +- radv: optimize subpass barrier flushes for imageless framebuffers +- Revert "radv: only enable VK_EXT_display_control for vrcompositor (SteamVR)" +- radv: remove unused parameter in radv_emit_subpass_barrier() +- radv/sqtt: reserve a VMID for better profiling +- radv/sqtt: stop calling radv_cs_add_buffer() for the thread trace BO +- radv: do not expose buffer features for depth/stencil formats +- ac/rgp: fix alignment of code object records to follow the RGP spec +- radv: only emit PGM_LO for the vertex prolog +- ac/rgp: add support for queue event timings +- ac/rgp: add support for clock calibration +- radv/winsys: use same IBs padding as the kernel +- zink: update the CI lists for RADV +- radv/sqtt: fix GPU hangs when capturing from the compute queue +- ac: add initial SPM support +- ac/rgp: add support for dumping SPM data +- radv: fix a sync issue on GFX9+ by clearing the upload BO fence +- ac/spm: fix determing the SPM wire +- ac/spm: fix determining the counter slot +- zink: update the CI lists for RADV +- zink: skip one GLES31 subset to avoid GPU hangs on Navi10 +- nir: fix constant expression of ibitfield_extract +- radv: simplify re-using cache entries in radv_pipeline_cache_insert_shaders() +- radv: disable HTILE for D32S8 format and mipmaps on GFX10 +- util/queue: fix a data race detected by TSAN when finishing the queue +- radv: allow TC-compat CMASK with storage images on GFX10+ +- radv: ignore the descriptor set layout when creating descriptor template +- radv: convert remaining enums/structs to 1.2 versions +- ac: change family names to uppercase in ac_get_family_name() +- radv/winsys: report the real family name instead of OVERRIDDEN +- radv: fix emitting VBO when vertex input dynamic state is used +- radv: make radv_break_on_count() a non-static function +- radv: make radv_copy_buffer() a non-static function +- radv: implement optimized MSAA copies using FMASK +- ac/nir: fix left shift of 1 by 31 places detected by UBSAN +- radv: fix OOB access for inline push constants detected by UBSAN +- aco: fix right shift of exponent 32 detected by UBSAN +- radv: implement vkCmdWriteTimestamp2KHR() +- radv: implement vkCmd{Reset,Set}Event2KHR() +- radv: implement vkCmdWriteBufferMarker2AMD() +- radv: implement vkCmdWaitEvents2KHR()/vkCmdPipelineBarrier2KHR() +- radv: implement vkQueueSubmit2KHR() +- radv: add support for VkMemoryBarrier2KHR +- radv: add support for creating device-only events +- radv: add support for new pipeline stages and access masks +- radv: add support for VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR +- radv: switch the remaining stages/access to VK_PIPELINE_STAGE_2/VK_ACCESS_2 +- radv: advertise VK_KHR_synchronization2 +- radv: fix accessing NULL pointers when destroy the VRS image +- radv: add a workaround to fix a segfault with Metro Exodus (Linux native) +- radv: configure the number of SGPRs/VGPRs directly from the arguments +- radv: copy the user SGPRs locations outside of radv_declare_shader_args() +- radv: constify radv_shader_info in radv_declare_shader_args() +- radv/llvm: stop trying to eliminate VS outputs +- radv/llvm: constify radv_shader_info +- radv: fix resetting the entire vertex input dynamic state +- radv: remove never reached free() when compiling shaders +- radv: add a helper function to upload a shader binary +- radv: upload shader binaries after they are all compiled +- radv: pass a pointer to a pipeline for the create/insert cache functions +- radv: upload shader binaries of a pipeline contiguously in memory +- radv: move a comment at the right place in CmdBindVertexBuffers2EXT() +- radv: constify radv_vertex_binding in CmdSetVertexInputEXT() +- radv: constify radv_vs_input_state() in more places +- radv: fix dynamic rendering with VRS +- radv: avoid prefixing few VkXXX structures by struct +- radv/sqtt: always dump pipelines and shaders ISA +- radv: add few helpers for configuring performance counters +- radv: add initial SPM support on GFX10+ +- radv: fix resume/suspend render pass with depth/stencil attachment +- radv: mark GFX10.3 (aka RDNA2) as conformant products with CTS 1.2.7.1 +- Revert "radv: Add bufferDeviceAddressMultiDevice support." +- radv: do not perform depth/stencil resolves for suspended render pass +- nir/lower_tex: add lower_lod_zero_width +- radv: enable lower_lod_zero_width +- radv: fix dynamic rendering inheritance if the subpass index isn't 0 +- radv: ignore dynamic inheritance if the render pass isn't NULL +- radv/winsys: remove useless has_sparse_vm_mappings checks +- radv/winsys: clear the PRT VA range when destroying a virtual BO +- radv/winsys: stop using reference counting for virtual BOs +- radv/winsys: update sparse mappings with OP_REPLACE instead of OP_MAP/OP_UNMAP +- ac/nir: add an option to disable anisotropic filtering for single level images +- radv,aco: do not disable anisotropy filtering for non-mipmap images +- radv: fix dynamic rendering global scissor +- radv: remove unnecessary NULL checks in vkMapMemory()/vkUnmapMemory() +- radv/winsys: stop zeroing few structs in buffer_from_fd() +- radv/winsys: remove radv_amdgpu_winsys_bo::is_shared +- radv: fix restoring subpass during hw/fs color resolves +- radv: re-enable fast clears for images that support comp-to-single +- radv: re-apply "Do not access set layout during vkCmdBindDescriptorSets." +- radv: fix clears with value of "1" and different DCC signedness +- radv: stop checking buffer size in vkCreateBuffer() +- radv: print number of levels with RADV_DEBUG=img +- radv: fix copying mutable descriptors to sampler descriptors +- radv: add drirc radv_disable_htile_layers and enable it for F1 2021 +- aco: fix a dynamic-stack-buffer-overflow when printing instructions +- aco: do not print prologs disassembly if no disassembler +- radv,aco: keep track of the prolog disassembly if necessary +- radv: save the vertex prolog to the trace BO for debugging +- radv: dump the VS prolog disassembly to the hang report +- radv: add UMR markers for the vertex prolog +- radv: do not use the common entrypoint for the Metro Exodus layer +- radv: remove remaining dead code related to the old sync code +- radv/winsys: remove unused syncobj functions +- radv: stop checking if dynamic states changed +- radv: reset VRS if the current subpass doesn't have a VRS attachment +- radv: fix computing the fb size in presence of dynamic VRS attachment +- radv: only clear VRS_HTILE_ENCODING on GFX10.3+ +- radv: allow to disable anisotropic filtering for single level image with drirc +- radv: enable radv_disable_aniso_single_level for Battlefield 1 & V +- radv/winsys: fix zero submit if no timeline semaphore support +- vulkan/runtime: fix accessing NULL pointers detected by UBSAN +- radv: fix missing destroy for the overallocation mutex +- radv: fix computing the number of color samples if no attachments +- radv: optimize CPU overhead of si_cp_dma_prefetch() slightly +- radv: disable attachmentFragmentShadingRate for RADV_DEBUG=nohiz +- radv: fix copying VRS rates to HTILE if the depth/stencil is cleared +- radv: fix copying VRS rates if the ds attachment uses mips +- radv/winsys: set GTT_WC flag for CS IBs on GFX6 +- radv: do not restore NULL compute pipelines after meta operations +- radv: stop checking if pipelines are NULL during draws/dispatches +- vulkan: Update the XML and headers to 1.3.204 +- radv: implement 1.3 features/properties +- radv: report textureCompressionASTC_HDR as not supported +- radv: add a no-op version of vkGetPhysicalDeviceToolPropertiesEXT() +- radv: switch a bunch of struct/enum to 1.3 versions +- radv: bump conformance version to 1.3.0.0 for RDNA2 +- radv: advertise Vulkan 1.3 +- radv/ci: mark dEQP-VK.api.version_check.version as expected failure on Stoney +- radv/winsys: fix missing buffer_make_resident() for the null winsys +- Revert "radv: re-apply "Do not access set layout during vkCmdBindDescriptorSets."" +- radv/winsys: fix initializing debug/perftest options if multiple instances +- radv: enable radv_disable_aniso_single_level for The Evil Within 1&2 + +Scott Anderson (1): + +- egl/wayland: Remove unused wayland enum + +Sergii Melikhov (1): + +- vulkan: Unlock before return. + +Shmerl (1): + +- docs/features: Add VK_KHR_acceleration_structure, VK_KHR_pipeline_library, VK_KHR_ray_query, VK_KHR_ray_tracing_pipeline. + +Silvestrs Timofejevs (2): + +- egl: introduce a log level getter function +- egl: add config debug printout + +Simon McVittie (1): + +- meson: Try to link all-targets module if Gallium OpenCL is enabled + +Simon Ser (4): + +- renderonly: write down usage rules +- vulkan/wsi/wayland: use enum wl_shm_format +- vulkan/wsi/wayland: use DRM_FORMAT_INVALID +- vulkan/wsi/wayland: remove format switch from wl_shm_format_for_vk_format + +Stefan Brüns (1): + +- llvmpipe: Add get_{driver,device}_uuid implementations + +Tapani Pälli (18): + +- iris: clear bos_written when resetting a batch +- vulkan/wsi: provide api for drivers to setup syncobj fd +- radv: setup syncobj fd via wsi_device_setup_syncobj_fd +- anv: setup syncobj fd via wsi_device_setup_syncobj_fd +- vulkan/wsi: implement missing wsi_register_device_event +- anv: allow VK_IMAGE_LAYOUT_UNDEFINED as final layout +- glsl: fix invariant qualifer usage and matching rule for GLSL 4.20 +- iris: unref syncobjs and free r/w dependencies array for slab entries +- mesa: free idalloc storage for display lists +- mesa: free vbo_save_vertex_list store prims +- mesa: refactor GetProgramiv to use program resource list +- mesa: move GetProgramInterfaceiv as a shader_query function +- mesa: change GetProgramiv name length queries to use program resources +- intel/genxml: add PIPE_CONTROL field for L3 read only cache invalidation +- anv: invalidate L3 read only cache when VF cache is invalidated +- iris: invalidate L3 read only cache when VF cache is invalidated +- iris: fix a leak on surface states +- mesa/st: always use DXT5 when transcoding ASTC format + +Tatsuyuki Ishi (3): + +- aco: support DPP8 +- aco: lower masked swizzle to DPP8 +- radv/sqtt: Add and enable basic EXT_debug_utils support. + +Thierry Reding (2): + +- tegra: Use private reference count for sampler views +- tegra: Use private reference count for resources + +Thomas H.P. Andersen (49): + +- nine: remove dead code +- svga: fix bitwise/logical and mixup +- meson: drop compatability with < 0.48 +- meson: drop a comment relating to old meson version +- docs: update the required meson version +- meson: drop a temp formatting variable +- ci: clean up debian-clang no-error list +- gallivm: avoid a self-assign warning +- ci: debian-clang: drop -Wno-error for self-assign +- lavapipe: fix implicit-fallthrough warning +- i915g: fix implicit-fallthrough warning +- r300: remove a set but not used variable +- r600: remove a set but not used variable +- glx: remove a set but not used variable +- gallium/u_threaded: drop unused function +- gallium/tgsi_exec: drop unused function +- draw: drop unused function +- microsoft/compiler: dxil_nir_opt_alu_deref_srcs: return progress +- lavapipe: fix string-plus-int warning +- i915g: avoid left shifting a negative number +- panvk: use FALLTHROUGH to stop a warning +- panvk: cast negative value to unint8_t +- ci: debian-clang: build more drivers +- tu/clear_blit: use || when working with bools +- r600/sb: silence a sometimes-uninitialized warning +- ci: debian-clang: -Wno-error for sometimes-uninitialized +- zink: malloc/sizeof mismatch +- xa: fix compile warning for -Wabsolute-value +- broadcom/compiler: fix compile warning -Wabsolute-value +- ci: debian-clang: drop -Wno-error=absolute-value +- replace 0 with NULL for NULL pointers +- freedreno: silence sometimes-uninitialized warning +- freedreno: drop dead assignment +- meson: add check kwarg to run_command +- ci: clean up debian-android no-error list +- anv: drop unused label +- ci: debian-android: drop -Wno-error=unused-label +- vulkan/vk_extensions_gen: fix -Wextern-initializer warning +- ci: debian-android: drop -Wno-error=extern-initializer +- microsoft/compiler: fix -Wbitwise-instead-of-logical warning +- anv: avoid warning about unused function +- vc4: drop unused function +- v3d: avoid warning about unused function +- v3d: avoid warning about unused function +- broadcom: drop unused functions +- panfrost: mark two variables as unused +- anv: drop a set but unused variable +- anv: drop a set but unused variable +- svga: silence -Wsometimes-uninitialized + +Thomas Wagner (1): + +- util: use anonymous file for memory fd creation + +Thong Thai (8): + +- frontends/va: disable packed header support for h264 encoder +- frontends/va/enc: hardcode h265 encoder ref pic list size +- radeon/vcn: increase encoder dpb size +- frontends/va/enc: allow for frames to be marked as (not) referenced +- radeon: hardcode uvd/vce encoder not_referenced value to false +- radeon/vcn: implement encoder dpb management +- frontends/va/enc: default motion estimation parameters for performance +- radeonsi: add check for graphics to si_try_normal_clear + +Timothy Arceri (16): + +- mesa: fix buffer overrun in SavedObj texture obj array +- mesa: remove old tnl device driver header files +- mesa: remove _mesa_ir_link_shader() +- mesa: make _mesa_associate_uniform_storage() static +- mesa: remove GLSL IR to Mesa IR code +- mesa/st: move _mesa_generate_parameters_list_for_uniforms() code to st +- mesa: move _mesa_ensure_and_associate_uniform_storage() to uniform_query.cpp +- mesa: tidy up ir_to_mesa.{cpp,h} includes, comments, etc +- mesa: rename ir_to_mesa.{cpp,h} -> link_program.{cpp,h} +- mesa: update or remove out of date references to ir_to_mesa +- doc: update source tree doc to reflect recent classic/swrast deletions +- util: add dri config option force_compat_shaders +- util: add workaround for SNK HEROINES Tag Team Frenzy +- mesa: make struct in gl_program a union and remove FIXME +- glsl/glcpp: make sure to expand new token after concatenation +- glsl/st: move st_nir_opts() into gl compiler common code + +Timur Kristóf (44): + +- radv: Use MESA_VULKAN_SHADER_STAGES to make room for mesh/task. +- aco: Fix how p_is_helper interacts with optimizations. +- nir: Rename nir_get_io_vertex_index_src and include per-primitive I/O. +- nir: Print Mesh Shader specific info. +- nir: Fix nir_lower_io with per primitive outputs. +- nir, spirv: Don't mark NV_mesh_shader primitive indices as per-primitive. +- nir: Add new option to lower invocation ID from invocation index. +- nir: Lower cull and clip distance arrays for mesh shaders. +- nir: Don't compact per-vertex and per-primitive outputs together. +- nir: Group per-primitive outputs at the end for driver location assign. +- nir: Fix sorting per-primitive outputs. +- util: Add util_widen_mask function. +- aco: Use util_widen_mask. +- radv: Use util_widen_mask. +- nir: Print task and mesh shader I/O variable names. +- aco: Clean up and fix quad group instructions with WQM. +- aco/optimizer_postRA: Fix combining DPP into VALU. +- aco/optimizer_postRA: Fix applying VCC to branches. +- spirv: Allow VRS with mesh shaders. +- gitlab-ci: Disable radv-fossils again. +- ac/nir/ngg: Lower NV mesh shaders to NGG semantics. +- radv: Add radv_pipeline_has_mesh helper. +- radv: Add mesh shader specific info. +- radv: Cleanup PS input generation. +- radv: Cleanup VS output param assignment. +- radv: Add support for per-primitive mesh shader outputs. +- radv: Setup shader arguments for mesh shaders. +- radv: Compile mesh shaders and apply the necessary NIR lowerings. +- radv: Set output driver locations for mesh shaders. +- radv: Create mesh shading pipelines. +- radv: Add support for mesh shading pipelines in the command buffer. +- aco: Add Mesh and Task shader stages. +- aco: Update README about NGG and mesh shaders. +- aco: Add 1D workgroup_id support for mesh shaders. +- aco: Use the correct outinfo for mesh shaders. +- aco: Export per-primitive mesh shader output attributes. +- radv: Implement NV_mesh_shader draw calls. +- radv: Enable NV_mesh_shader with a perftest flag. +- radv: Note when a mesh shader writes the primitive shading rate. +- radv: Lower primitive shading rate for mesh shaders. +- aco: Emit VRS rate when it's per-primitive. +- radv: Support VRS for mesh shaders. +- radv: Disable IB2 on compute queues. +- ac/nir/ngg: Fix mixed up primitive ID after culling. + +Tomeu Vizoso (13): + +- ci: Add support for lazor Chromebooks +- ci: Let manual LAVA jobs have a longer timeout than others +- freedreno/ci: Test Turnip on Adreno 618 +- ci: Create symlink to /install early +- ci: Don't set GALLIVM_PERF in the scripts +- virgl/ci: Set GALLIVM_PERF=nopt,no_quad_lod +- ci: Remove syslogd +- virgl/ci: Run each dEQP instance in its own VM +- ci: Uprev Crosvm +- lvp: Free the driver_data pointer for all commands +- anv/ci: Test with deqp-vk on Tiger Lake +- anv/tests: Free BO cache and device mutex +- ci: Rebalance Iris jobs + +Topi Pohjolainen (6): + +- intel/compiler: Handle new sampler descriptor fields for 16bit sampler +- intel/compiler/fs: Add support for 16-bit sampler msg payload +- intel/compiler: Demote sampler params to 16-bit for CMS/UMS/MCS +- intel/compiler: Prepare ld2dms_w for 4 mcs components +- intel/compiler: Add new variant for TXF_CMS_W +- intel/compiler: Deprecate ld2dms and use ld2dms_w instead + +Uday Kiran Pichika (2): + +- iris: enable adaptive sync for IRIS +- anv: enable adaptive sync for ANV + +Vadym Shovkoplias (3): + +- intel/fs: Fix a cmod prop bug when cmod is set to inst that doesn't support it +- anv: Include viewport size in scissor rectangle +- glthread: Check out of bounds for MultiDrawElementsBaseVertex cmd + +Vasily Khoruzhick (14): + +- gallium: add PIPE_CAP_PREFER_POT_ALIGNED_VARYINGS +- lima: enable PIPE_CAP_PREFER_POT_ALIGNED_VARYINGS +- lima: add native txp support +- lima: add support for 3D textures +- lima: handle 1D samplers +- lima: add more wrap modes +- lima/ppir: check if mul node is a source of add node before inserting +- lima/ppir: implement gl_FragDepth support +- lima: fix crash with sparse samplers +- lima: disasm: use last argument as a filename +- lima: disasm: call util_cpu_detect() to init CPU caps +- lima: implement dual source blend +- lima: use 1 as blend factor for dst_alpha for SRC_ALPHA_SATURATE +- lima: fix blending with min/max ops + +Viktoriia Palianytsia (1): + +- glsl: fix for unused variable in glsl_types.cpp + +Vinson Lee (17): + +- anv: Fix assertion. +- radv: Fix memory leak on error path. +- clover: Add constructor for image_rd_argument. +- zink: Remove duplicate variable unsized. +- intel/compiler: Change selected_simd return type to int. +- intel/compiler: Initialize SIMDSelectionTest member error. +- vulkan/wsi: Unlock before return on error path. +- microsoft/spirv_to_dxil: Fix non-Windows build. +- virgl: Allocate qdws after virgl_init_context to avoid leak. +- ac/rgp: Initialize clock_calibration with memset. +- ir3: Make shift operand 64-bit. +- panfrost: Avoid double unlock. +- isaspec: Sort field names to generate deterministic output. +- radv: Fix memory leak on error path. +- r600/sfn: Remove unused AluInstruction members. +- isaspec: Remove duplicate return statement. +- v3dv: Add missing unlocks on errors. + +Witold Baryluk (2): + +- zink: Do not access just freed zink_batch_state +- zink: Fully initialize VkBufferViewCreateInfo for hashing + +Xiaohui Gu (1): + +- iris: Mark a dirty update when vs_needs_sgvs_element value changed + +Yiwei Zhang (27): + +- dri_interface: remove obsolete interfaces +- dri_interface: remove gl header +- venus: refactor private descriptor_set helpers to be private +- venus: assign valid memoryTypeIndex of exportable ahb memory for image +- venus: release queues on device creation failure +- venus: refactor to add vn_device_init +- venus: refactor to add vn_buffer_init +- venus: refactor the ahb buffer mem_type_bits query api +- venus: add struct vn_buffer_memory_requirements +- venus: add struct vn_image_memory_requirements +- venus: add buffer cache init and usage flows +- venus: implement vn_buffer_get_max_buffer_size +- venus: implement vn_buffer_cache_get_memory_requirements +- venus: implement vn_buffer_cache_entries_create +- venus: refactor vn_device_memory_simple_alloc +- venus: simplify device memory pool alloc and refcount +- venus: defer roundtrip waiting to vkFreeMemory time +- venus: track memory type property flags in vn_device_memory +- venus: move bo allocation for mappable memory to vn_MapMemory +- venus: subtract appended header size in vn_CreatePipelineCache +- venus: VkExternalImageFormatProperties is optional +- tu: VkExternalImageFormatProperties is optional +- venus: update some obsolete assumptions described +- venus: track whether a fence is external +- Revert "venus: remove vn_ring_wait_all" +- venus: make vn_QueueSubmit async for native submissions +- venus: properly destroy deferred ahb image before real image creation + +Yonggang Luo (2): + +- vulkan: Open registry XML files as UTF-8 +- win32: Fixes thread local on win32 with clang/mingw (!14062) + +mwezdeck (1): + +- virgl/drm: New optimization for uploading textures + +orbea (1): + +- build: add sha1_h for lp_texture.c + +satmandu (1): + +- Fix compilation on armv7l with gcc 11.2.0 + +shanshengwang (1): + +- radeon/vce: Limiting max supported refernce frames to 1 for h264 encoding