From 1d60c8701024ff5f3e12eb0f763fcb1eeb6ef2ed Mon Sep 17 00:00:00 2001 From: Dylan Baker Date: Wed, 18 May 2022 12:30:26 -0700 Subject: docs: add release notes for 22.1.0 --- docs/relnotes/22.1.0.rst | 3562 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 3562 insertions(+) create mode 100644 docs/relnotes/22.1.0.rst diff --git a/docs/relnotes/22.1.0.rst b/docs/relnotes/22.1.0.rst new file mode 100644 index 00000000000..d2ca8fa6308 --- /dev/null +++ b/docs/relnotes/22.1.0.rst @@ -0,0 +1,3562 @@ +Mesa 22.1.0 Release Notes / 2022-05-18 +====================================== + +Mesa 22.1.0 is a new development release. People who are concerned +with stability and reliability should stick with a previous release or +wait for Mesa 22.1.1. + +Mesa 22.1.0 implements the OpenGL 4.6 API, but the version reported by +glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / +glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. +Some drivers don't support all the features required in OpenGL 4.6. OpenGL +4.6 is **only** available if requested at context creation. +Compatibility contexts may report a lower version depending on each driver. + +Mesa 22.1.0 implements the Vulkan 1.2 API, but the version reported by +the apiVersion property of the VkPhysicalDeviceProperties struct +depends on the particular driver being used. + +SHA256 checksum +--------------- + +:: + + TBD. + + +New features +------------ + +- d3d12 GL4.2 + +- GL_NV_pack_subimage + +- VK_EXT_depth_clip_control on lavapipe and RADV + +- Vulkan 1.3 support on lavapipe + +- VK_EXT_graphics_pipeline_library on lavapipe + +- VK_EXT_primitives_generated_query on lavapipe + +- VK_EXT_image_2d_view_of_3d on ANV and lavapipe + +- VK_KHR_swapchain_mutable_format on lavapipe + +- None + + +Bug fixes +--------- + +- [radv] DCC causes artifacts in Senran Kagura Shinovi Versus +- Radeon RX 5700XT crash when using prusa-slicer +- turnip: gfxbench mh3.1 offscreen crash with ANGLE +- Radv leaks a descriptor set layout +- clover: Assertion \`NumContainedTys && "Attempting to get element type of opaque pointer"' failed +- wsi/x11: Avoid using xcb_wait_for_special_event in FIFO modes causes memory leak in Apex Legends +- freedreno: fragile location packing can break cull/clip distance +- turnip: dEQP-VK.spirv_assembly.instruction.compute.float_controls.fp16.generated_args.* failures +- Panfrost: wrong textures and lighting in "Thief" games in wine (not happening when using Software render) +- [Bisected] r600: Big performance regression on some games +- piglit ext_image_dma_buf_import.ext_image_dma_buf_import* regression +- Huge amount of anon_inode:sync_file file descriptor created +- Grid Autosport via proton/vulkan: glitches on the grass on amdgpu, fine on amdgpu-pro +- NIR validation failed after nir_opt_if +- intel: integer_mad_hi / integer_mad_sat / integer_mul_hi produce invalid results +- Aperture Desk Job rendering artifacts Intel TGL +- intel: integer_sub_sat produces stack corruption / OpISubBorrow compilation issue +- r300/rv530: "Black rendering" of Baldur's Gate Dark Alliance in Xbox emulator CXBX-R under wine with Gallium Nine and RADEON_DEBUG=use_tgsi +- radv/aco: xfb bug +- '../src/amd/common/ac_surface.c:1575: void ac_copy_dcc_equation(const struct radeon_info \*, ADDR2_COMPUTE_DCCINFO_OUTPUT \*, struct gfx9_meta_equation \*): assertion "dcc->equation.gfx9.num_bits <= ARRAY_SIZE(equation->u.gfx9.bit)" failed' +- Occasional flicker corruption in Rage 2, e.g. after loading, with ACO on RX 5700 XT +- Vulkan::Calling vkWaitForFences Timeout +- Intel (CHT) - Uplink text rendering bugged out in Mesa 22.0 +- gen9atom gpu hang on dEQP-VK.spirv_assembly.instruction.graphics.float16.arithmetic_1 +- bad memory managment on panfrost RK3399 - cannot alocate more ram - fury unleashed +- radv,aco: Regression with global atomics with negative offsets +- RADV: Quake 2 RTX v1.6.0 Corrupted Graphics +- radv: nir validation error with invalid array access +- [Intel, Iris] Broken rendering in Ryujinx on Tigerlake +- intel: integer_mad_hi / integer_mad_sat / integer_mul_hi produce invalid results +- llvmpipe: wrong color on big endian, with 16bits framebuffer. +- llvmpipe: wrong color on big endian, with 16bits framebuffer. +- radv: Poor performance in Ghostwire: Tokyo +- Intel Iris Xe Geometry Flickering/Assets Disappearing +- Rendering artifacts when playing Outer Wilds [Reproducible with latest ANV driver built from main] +- ANV: EXT_depth_clip_control broken +- VA-API accelerated videos are displayed all red w/ Encoder format conversion (EFC) support for AMD VCN2.0 devices patch +- panfrost: BO importing crash on Android +- [Intel,ANV] Feature request: a few formats +- Vulkan wsi leaks vk_sync object on every wsi_AcquireNextImageKHR call +- radv: Fog effects in Elden Ring broken +- r300: Set PVS_LAST_VTX_SRC_INST and PVS_XYZW_VALID_INST correctly +- [bisected] commit "vbo/dlist: use a single buffer object" results in heavy regression with virgl for glxgears +- llvmpipe: [bisected] ec8104c6b2274 breaks virglrenderer's vtest_server +- Textures colors distortion in "Black Geyser: Couriers of Darkness" with radeonsi +- r300: Anmesia the dark descent corruption +- ShaderStorageBlocksWriteAccess not set for spir-v shaders? +- anv: EXT_color_write_enable severely broken +- ICL gpu hang: dEQP-GLES31.functional.shaders.multisample_interpolation.interpolate_at_sample.centroid_qualified.multisample_rbo_16 +- null pointer deref crash in wsi_common_x11.c +- Error compiling with LLVM-git/15 +- [bisected] panfrost(RK3399/T860): Emulationstation: broken, black or missing menus with v22.0.0 +- Plasma/KDE settings menus disappear on daily build +- turnip: Unrecoverable hang in Age of Empires IV on A650/A660 +- anv regressions from commit 57445adc891 "anv: Re-enable CCS_E on TGL+" +- anv: uninit compile warnings +- VK_IMAGE_CREATE_EXTENDED_USAGE_BIT not accounted for in vkGetPhysicalDeviceImageFormatProperties +- freedreno: crash in PUBG +- [regression][bisected] MSVC: Build failure in libmesa_util when targeting x86 32-bit +- vulkan: cmd queue codegen still needs work +- Using VAAPI-AMDGPU, RGBA-surface converted to NV12-surface, and UV data is lost, only Y data +- A crash in radeonsi driver +- freedreno: deqp cts fails +- turnip: autotune disabled under zink sometimes +- radeonsi dEQP-GLES3.functional.buffer.map.write.explicit_flush.* flake crashes +- [BDW-TGL] Piglit's ext_image_dma_buf_import-export-tex fails in the Intel CI +- android: don't sync_wait() on in fence +- va: incorrect frame_num logic causes corrupt h.264 encoding +- Performance slowdown by ~20% in Unigine sanctuary with nir_to_tgsi +- !15098 broke 4 piglit spec@ext_external_objects tests +- 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 +- Square Artifacts Dragons Dogma +- iris: Shared resources are allocated for scanout, but not configured for it +- [Feature Request] turnip: Support of Gamescope +- r300: shaders/closed/steam/massive-chalice/1707.shader_test reports absurd results +- Redraw freeze after upgrade to Xwayland 21.1.3 +- [ANV] Rendering corruption in DOOM Eternal +- radv: When using VS+PS only, primitive ID is mixed up after NGG culling +- radv: Fails to build on Unix except Linux +- [22.0.0_rc{1,2}] radeonsi: broken support for HD7850 (radeon 0000:0b:00.0: ring 0 stalled for more than...) +- turnip: external memory import does not work +- lavapipe: dEQP-VK.spirv_assembly.instruction.compute.float16.arithmetic_3.step fails +- RADV: Texture seams in The Evil Within 2 (regression) +- r300: some optimization oportunities when transforming SIN and COS inputs +- microsoft/compiler: System variables that aren't VS input or PS output should have interpolation specified +- ANV: Bad output from TransformFeedback . Regression from Mesa 21. Something to do with VB+XFB -> VB+XFB dependency? +- undefined reference to \`intel_ds_end_dyn_render_pass' +- radv: CullDistance fail +- Changing the buffer modifer via Wayland dmabuf-feedback apparently does not reliably reset the buffer age to 0 +- r300: "deadcode" pass for removing unused values ignores "break" +- turnip: dEQP-VK.pipeline.render_to_image.core.* failures on a618 + + +Changes +------- + +Adam Jackson (20): + +- dri: Epoch how no-error context creation works +- egl: Use the new no-error driver interface +- glx: Use the new no-error driver interface +- mesa: Enable GL_NV_pack_subimage +- wsi/x11: xcb_wait_for_special_event failure is an error +- dri: Fold away some unused indirection in __DriverAPIRec +- dri: Implement __DRI_DRIVER_VTABLE +- dri: Fill in the driver extensions for the legacy createNewScreen paths +- dri: Remove the globalDriverAPI hacks +- dri: Remove the megadriver compat stub +- meson: Define a HAVE_XXXX macro for every gallium driver we build +- kopper: Define the driver interface +- egl: Learn about kopper +- glx: Learn about kopper +- gallium: Learn about kopper +- glx/kopper: Wire up a way for SwapBuffers to fail +- wsi/x11: Avoid using xcb_wait_for_special_event in FIFO modes +- kopper: Grow a swap interval API +- glx/kopper: Enable GLX_EXT_swap_control etc. +- egl/kopper: Hook up eglSwapInterval + +Adrián Larumbe (1): + +- panfrost: fix segfault in pandecode + +Akihiko Odaki (2): + +- virgl/ci: Uprev virglrenderer +- virgl: Check texture multisample compatibility + +Alejandro Piñeiro (4): + +- v3d/drm-shim: remove drm-shim driver +- v3dv/pipeline: use new helper vk_shader_module_to_nir +- docs: document v3d/v3dv envvars +- broadcom: update language on V3D_DEBUG options + +Alex Xu (Hello71) (1): + +- r300/compiler/tests: print regoff_t as size_t + +Alexey Bozhenko (1): + +- spirv: fix OpBranchConditional when both branches are the same + +Alyssa Rosenzweig (345): + +- panfrost: Remove blend shader return value on v9 +- panfrost: Fix alignments on Valhall +- panfrost: Add Valhall Plane Descriptor XML +- panfrost: Add remaining ZS/CRC XML +- panfrost: Fix texel interleave flag on Valhall +- nir,zink: Make lower_discard_if a common pass +- agx: Call nir_lower_discard_if +- asahi: Identify IOGPU_ATTACHMENT::size +- asahi: Correctly set IOGPU_ATTACHMENT::size +- agx: Add AUTO_LOD_BIAS mode +- agx: Translate LOD modes more generically +- agx: Implement nir_op_txb +- agx: Handle texture array indices +- agx: Don't kill helper threads in ld_var +- asahi: Fix memory unsafety in delete_sampler_state +- panfrost: Flesh out Buffer descriptor +- panfrost: Strip % in GenXML names +- panfrost: Flesh out tiler heap descriptor +- panfrost: Update supported job types +- panfrost: Remove some indexed formats on Valhall +- panfrost: Remove unused layout enums +- panfrost: Fix Depth Source enum +- panfrost: Update primitive descriptor for Valhall +- panfrost: Add more fields to Attribute Descriptor +- panfrost: Clarify unknowns in z/stencil descriptor +- panfrost: Simplify Valhall preload descriptor +- panfrost: Flesh out the Shader Program Descriptor +- panfrost: Add Valhall additions to the framebuffer +- panfrost: Shuffle render target AFBC for Valhall +- panfrost: Add Valhall fields to tiler descriptor +- panfrost: Update Shader Environment descriptor +- panfrost: Flesh out compute jobs +- panfrost: Fix Malloc Vertex definition +- nir: Set internal=true in nir_builder_init_simple_shader +- panfrost,asahi,radv: Don't set internal=true manually +- pan/mdg: Pull out skip_internal boolean +- pan/mdg: Print optimized and scheduled shader +- pan/mdg: Model zero/sign extension for 8/16-bit loads +- pan/mdg: Handle 8/16-bit UBO loads +- pan/mdg: Clarify some ISA unknowns +- pan/mdg: Delete stray comment +- pan/mdg: Delete dedicated fdot2 lowering +- pan/mdg: Assert that we don't see unknown jumps +- pan/mdg: Remove todo we'll probably never get to +- panvk: Don't use UBOs for meta_clear +- pan/va: Parse units from the XML +- pan/va: Fix some units +- pan/va: Make subgroup 4-bits +- pan/va: Fix conservative branch handling +- pan/va: Identify LEA_TEX_IMM table +- pan/bi: Avoid \*FADD.v2f16 hazard in optimizer +- pan/bi: Avoid \*FADD.v2f16 hazard in scheduler +- pan/bi: Test avoiding \*FADD.v2f16 hazard in optimizer +- pan/bi: Test avoiding FADD.v2f16 hazards in scheduler +- nir: Check all sizes in nir_alu_instr_is_comparison +- asahi: Streamline modifier selection +- asahi: Don't redefine MIN2/MAX2 +- asahi: Identify Level field of render target descriptor +- asahi: Respect mip level when rendering +- asahi: Add 2D Array and 3D texture dimensions +- asahi: Handle tiling of 2D arrays and 3D +- asahi: Add some notes to XML about mipmapping +- asahi: Dynamically configure tile size +- asahi: Allow tiling of all bpps +- asahi: Rename bpp to blocksize +- asahi: Align allocations to effective tile size +- asahi: Align linear texture's strides to 64 bytes +- asahi: Handle page alignment of miptrees +- asahi: Pass correct tile shift to tiling routines +- asahi: Track mipmap state explicitly +- asahi: Support 2D array and 3D textures +- asahi: Add agx_map_texture_{cpu,gpu} helpers +- asahi: Handle reloads of specific cube/mipfaces +- asahi: Implement texturing with non-zero start level +- asahi: Add AGX_PUSH_ARRAY_SIZE_MINUS_1 +- agx: Add typed move helper +- agx: Add agx_size_align_16 helper +- agx: Naturally align uniform pushes +- agx: Round and clamp array indices +- asahi: Allow GenXML to be used in C++ +- asahi: Add LOD type +- asahi: Add LOD clamp packing unit tests +- asahi: Identify minimum/maximum LOD fields +- asahi: Support LOD clamps +- asahi: Wire in pure integer texture formats +- pan/bi: Disambiguate IDVS variants in shader-db +- pan/bi: Lower swizzles on CSEL.i32/MUX.i32 +- pan/bi: Lower swizzles on MUX.v2i16 +- pan/bi: Constant fold swizzles on constants +- pan/bi: Optimize replication +- pan/bi: Handle trivial i2i32 +- pan/bi: Handle vectorized u2f16/i2f16 +- pan/bi: Switch to lower_bool_to_bitsize +- pan/bi: Revert "Fix load_const of 1-bit booleans" +- pan/bi: Promote MUX to CSEL in the scheduler +- asahi: Fix use-after-free in shader key +- panvk: Use more reliable assert for UBO pushing +- pan/bi: Specialize IDVS in NIR +- pan/bi: Enable nir_opt_shrink_vectors +- pan/bi: Clarify requirement for barriers +- pan/bi: Cull DTSEL_IMM dests in post-RA DCE +- pan/bi: Do not cull post-RA staging writes +- pan/bi: Add bi_{start, exit}_block helpers +- pan/bi: Use bi_exit_block +- pan/bi: Clean up nits in liveness analysis +- pan/bi: Add scoreboard state to IR +- pan/bi: Print scoreboarding state +- pan/bi: Implement basic scoreboarding pass +- pan/bi: Add BIFROST_MESA_DEBUG=nosb option +- pan/mdg: Fix partial execution mode names +- panfrost: Use pan_shader_prepare_rsd in blitter +- panfrost: Set defaults for deprecated DCD fields +- panfrost: Annotate slow clears as such +- panfrost: Decouple tiler job and DCD emit +- panfrost: Inline pan_blit_emit_dcd +- panfrost: Use txl instead of tex in the blitter +- panfrost: Remove unrelated comment +- panfrost: Remove pan_emit_fbd thunking +- panfrost: Inline pan_emit_sfbd_tiler +- ci: Disable windows-vs2019 +- panfrost: Fix FD resource_get_handle +- panfrost: Simplify panfrost_resource_get_handle +- iris,crocus,i915g: Don't stub flush_frontbuffer +- pan/mdg: Fix overflow in intra-bundle interference +- pan/bi: Reorder pushed uniforms to avoid moves +- panfrost/ci: Move T720 flakes to skips +- panfrost/ci: Move T860 flake to skip +- panfrost: Remove Message Preload Descriptor from v6.xml +- panfrost: Add an unpacked message preload struct +- panfrost: Pack message preloads from compiler +- pan/bi: Add bi_before_nonempty_block helper +- pan/bi: Account for message preloading in shaderdb +- pan/bi: Support message preloading +- pan/bi: Unit test message preloading optimization +- panfrost/ci: Update xfails list +- panfrost: Fix set_sampler_views for big GL +- panfrost: Handle NULL sampler views +- panfrost: Handle NULL samplers +- panfrost: Flush resources when shadowing +- pan/va: Remove incorrect TEX test cases +- pan/va: Add MUX.v2i16 and MUX.v4i8 opcodes +- pan/va: Allow forcing enums for 1-bit modifiers +- pan/va: Handle extended staging counts in assembler +- pan/va: Don't use staging index as a sideband +- pan/va: Fix definitions of TEX_SINGLE and TEX_FETCH +- pan/va: Handle sr_write_count in the disassembler +- pan/va: Add TEX_FETCH assembler case +- panfrost: Extend SPD size +- panfrost: Add Tile Render Order enum to fragment jobs +- panfrost: Remove Invalidate Cache from Valhall job header +- panfrost: Clarify contains descriptor? bit +- panfrost: Make Divisor E an integer on v9 +- panfrost: Add an enum for Valhall resource tables +- panfrost: Rename prepare_rsd->prepare_shader +- panfrost: Add PAN_MESA_DEBUG=dump option +- panfrost: Generalize some is_bifrost users +- panfrost: Don't pack blend constants with blend shaders +- panfrost: Allow uploading fragment SPDs +- panfrost: Don't emit compression tags on Valhall +- panfrost: Adapt estimate_texture_payload_size to Valhall +- panfrost: Set texel_interleave on Valhall +- panfrost: Unify barrier+helper handling +- pan/bi: Mark NOP as having no destinations +- pan/bi: Use a progress loop for constant folding +- pan/bi: Allow CSE of preloaded registers +- pan/bi: Support standalone Valhall disassembly +- pan/bi: Wire Valhall disassembler into compiler +- pan/bi: Add BI_SUBGROUP_SUBGROUP16 option +- pan/bi: Trade off registers/threads on Valhall +- pan/bi: Adapt bi_lower_branch for Valhall +- pan/bi: Extract INSTRUCTION_CASE macro +- pan/va: Add missing copyright notice +- pan/va: Handle force_enum differing from name +- pan/va: Add modifiers required for gathers +- pan/va: Add TEX_DUAL instruction +- pan/va: Add TEX_GATHER instruction +- pan/va: Fix definitions of LD_VAR_BUF_IMM +- pan/va: Fix LEA_BUF_IMM definition +- pan/va: Remap "store segment" to "memory access" +- pan/va: Add memory access modifier to LOADs +- pan/bi: Model Valhall texture instructions +- pan/bi: Extend BLEND to take a register format +- pan/bi: Generalize I->table for Valhall +- pan/bi: Add LD_VAR_BUF_IMM.f16/f32 instructions +- pan/bi: Model LEA_BUF_IMM in the IR +- pan/bi: Model pos/vary segments in STORE instructions +- pan/bi: Model offset for LOAD/STORE +- pan/bi: Model LD_BUFFER instructions +- pan/bi: Add BRANCHZI instruction +- pan/bi: Extend LD_TILE with a register format +- pan/bi: Add arithmetic flag to RSHIFT ops +- pan/bi: Run CSE after lowering FAU +- panfrost: Push twice as many uniforms +- mesa: Remove unused framebuffer validation +- panfrost: Emulate GL_CLAMP on Bifrost +- pan/bi: Handle non-2D arrays +- panfrost: Handle txs of cube arrays +- pan/va: Fix typo in BLEND text +- pan/va: Add start property to source +- pan/va: Handle 64-bit sources in message instrs +- pan/va: Fix BLEND instruction +- pan/va: Rewrite FAU handling in dis/assembler +- pan/va: Handle uniforms from page 1 +- pan/va: Rename imm_mode -> fau_page +- pan/va: Use 64-bit special FAU for pages 1 and 3 +- pan/va: Remove immediate modes from XML/asm +- pan/va: Use boring names for FAU special pages 1/3 +- pan/va: Use XML for special FAU page 0 +- pan/decode: Handle blend arrays on Valhall +- pan/decode: Unify tiler job handling +- panfrost: Correct ASTC decode mode XML +- panfrost: Fix primitive restart with 32-bit indices +- panfrost: Fix definition of DCD on v9 +- panfrost: Refactor XML to permit non-IDVS jobs +- panfrost: Add Tiler Job to v9 XML +- pan/va: Correct definition of ZS_EMIT +- pan/va: Model LEA_TEX_IMM more accurately +- pan/va: Add LEA_ATTR_IMM instruction +- pan/va: Add missing .auto32 register format +- pan/va: Align error messages in disassembler tests +- pan/va: Fix ST_CVT definitions +- pan/bi: Add helpers to get vertex/instance ID +- pan/bi: Use vertex/instance ID helpers +- pan/bi: Print Valhall-specific FAU indices +- pan/bi: Don't analyze helper reqs in !frag shaders +- pan/bi: Add Valhall-specific zero builder +- pan/bi: Model Valhall action on bi_instr +- pan/bi: Emit arch-specific code for bi_dontcare +- pan/bi: Use bi_dontcare for ZS_EMIT +- asahi: Identify IOGPU Clear Z/S structure +- asahi: Identify aux framebuffer data structure +- asahi: Identify IOGPU Internal Pipelines structure +- asahi: Add stencil buffer attachment type +- asahi: Identify IOGPU_MISC data structure +- asahi: Add size field to slices +- asahi: Add separate_stencil, internal_format fields +- asahi: Generate IOGPU attachments dynamically +- asahi: Wire in u_transfer_helper +- asahi: Handle flushes of depth-only rendering +- asahi: Don't clobber clear colours +- asahi: Port driver to macOS 12.x ABI +- panfrost: Process scissor state earlier +- pan/va: Allow forcing staging flags to read-write +- pan/va: Allow omitting staging registers +- pan/va: Add atomic instructions +- pan/bi: Use consistent modifier lists in packing +- pan/bi: Gate late DCE/CSE on "optimize" +- pan/bi: Rename PATOM_C to ATOM +- pan/bi: Add ATOM_RETURN pseudo-instruction +- pan/bi: Model Valhall-style A(CMP)XCHG +- pan/bi: Allow branch_offset on BLEND +- pan/bi: Check return addresses in blend shaders +- pan/bi: Augment ST_TILE with register format +- pan/bi: Model LD_VAR_BUF instructions +- pan/bi: Rename I->action to I->flow +- pan/va: Add ST_TILE instruction +- pan/va: Add LD_VAR_BUF instructions +- pan/va: Add Bifrost-style LD_VAR instructions +- pan/va: Unify flow control +- pan/va: Permit encoding more flags +- pan/va: Build opcode info structures +- pan/va: Generate header containing enums +- pan/va: Add helpers for swapping bitwise sources +- pan/va: Add packing routines +- pan/va: Optimize add with imm to ADD_IMM +- pan/va: Add unit tests for ADD_IMM optimizations +- pan/va: Add FAU validation +- pan/va: Validate FAU before packing +- pan/va: Add constant lowering pass +- pan/va: Add instruction selection lowering pass +- pan/va: Lower branch offsets +- pan/va: Test instruction selection lowerings +- pan/va: Implement the cycle model +- pan/va: Add shader-db support +- pan/va: Add packing unit tests +- pan/va: Lower BLEND to call blend shaders +- pan/bi: Add .shadow modifier to TEX_GATHER +- pan/bi: Fix write_mask size +- pan/bi: Call Valhall backend passes on v9 +- pan/bi: Use nir_tex_instr_has_implicit_derivative +- pan/bi: Split out load/store to thread storage +- pan/bi: Use ID accessors for LEA_ATTR +- pan/bi: Preload r60/r61 for MSAA + blend shader +- panfrost: Disable AFBC on Valhall +- panfrost: Handle Valhall IDVS in job_uses_tiling +- panfrost: Restrict Z/S formats for Valhall +- panfrost: Add Valhall compressed formats +- pan/bi: Model Valhall image loads +- pan/va: Add indirect LEA_{ATTR, TEX} +- pan/va: Pack LEA_TEX_IMM +- pan/va: Model image load instructions +- pan/va: Don't truncate slots +- pan/va: Add flow control lowering pass +- pan/va: Allow small constants in register pairs +- panfrost: Add a table for images +- pan/bi: Mark LD_TILE as w=format +- pan/bi: Fix spilling on Valhall +- pan/bi: Waits before tilebuffer access on Valhall +- pan/bi: Specialize BLEND emit for Valhall +- pan/bi: Emit Valhall texture instructions +- pan/bi: Handle Valhall texturing in helper analysis +- pan/bi: Track whether the malloc IDVS flow is used +- pan/bi: Emit Valhall-style varying loads +- pan/bi: Emit Valhall-style varying stores +- pan/bi: Set table for Valhall LD_ATTR +- pan/bi: Force psiz to mediump +- pan/bi: Lower gl_PointSize to FP16 on Valhall +- pan/bi: Make psiz variants +- pan/bi: Generate LD_BUFFER on Valhall +- pan/bi: Avoid masked writes for now +- pan/bi: Report whether workgroups can be merged +- pan/bi: Don't lower vertex_id for malloc IDVS +- pan/bi: Consider flow control in DCE +- pan/va: Add LD_TILE.v3.f16 packing test +- panfrost: Handle Valhall texturing +- panfrost: Handle stencil texturing on Valhall +- panfrost: Control tiler memory usage +- panfrost: Hide parts of pan_encoder.h for Valhall +- panfrost: Add panfrost_make_resource_table helper +- panfrost: Add shader_stage helper +- panfrost: Adapt pan_shader.h for Valhall +- panfrost: Hide AFBC on Valhall +- panfrost: Move assign_vertex_buffer to pan_helpers +- panfrost: Make alpha=0 NOP / 1 store Bifrost only +- panfrost: Disable PIPE_CAP_PRIMITIVE_RESTART on v9 +- panfrost: Add helpers to set batch masks +- panfrost: Split out image access tracking +- panfrost: Don't check alpha test in fs_required on Bifrost+ +- panfrost: Don't set a default for blend count +- panfrost: Adapt panfrost_rasterizer for v9 +- panfrost: Add a pool to sampler_view +- panfrost: Specialize vertex state for Valhall +- panfrost: Split out panfrost_get_blend_shaders +- panfrost: Split out allow_fpk helper +- panfrost: Add Valhall fields to panfrost_batch +- panfrost: Add valhall_has_blend_shader field +- panfrost: Hide some Bifrost-specific functions +- panfrost: Adapt viewport/scissor to Valhall +- panfrost: Add helpers to emit Valhall data structures +- panfrost: Use track_image_access on Bifrost +- pan/bi: Don't use funny round modes in tests +- pan/bi: Mark some opcodes as default round-to-zero +- pan/bi: Use should_skip in bi_builder generation +- pan/bi: Imply round mode most of the time +- nir: Don't set writes_memory for reading XFB + +Andrey Konovalov (1): + +- ir3: set local_size for shaders of MESA_SHADER_KERNEL type + +Andrii Pauk (1): + +- venus: Allow usage of virtio-mmio based device + +Andrii Simiklit (1): + +- glsl: add member's location layout qualifier rules for \`arrayed` in/out blocks + +Anuj Phogat (3): + +- anv, iris: Add Wa_16011411144 for DG2 +- include/uapi: Update drm_fourcc.h from kernel +- isl,iris: Add I915_FORMAT_MOD_4_TILED support for XeHP + +Autumn on Tape (4): + +- gallivm: add subgroup shuffle support +- lavapipe: enable subgroup shuffle operations +- gallivm: use shufflevector for shuffles when index is constant data +- gallivm: use VPERMPS (x86/AVX2) for 32-bit 8-element shuffles + +Bas Nieuwenhuizen (9): + +- radv: Add submit locking with trace bo. +- radv: Use larger arena sizes. +- radv: Fix preamble argument order. +- radv: Only wait on CS/PS to finish if we wait on a semaphore. +- vk: Update xml and headers to 1.3.207. +- radv: Expose VK_VALVE_descriptor_set_host_mapping for vkd3d only. +- radv: Fix vk_queue_to_radv for radv_image_queue_family_mask. +- radv: Add more BVH vertex formats. +- vulkan/wsi/x11: Ensure we have the required number of images for acquire. + +Benjamin Cheng (3): + +- vulkan/queue: Destroy wait temps if they are skipped +- anv: drop from_wsi bit from anv_image +- radv: fix memory leak of descriptor set layout + +Boris Brezillon (81): + +- pan/midg: Add intra-bundle interferences +- pan/midg: Remove spurious printf() in print_vector_constants() +- pan/midg: Prefix scalar immediates with '#' instead of '<' +- pan/midg: Fix swizzling on 8-bit sources +- pan/midg: Fix 64-bit swizzle printer +- pan/midg: Fix the upper/lower limit on 8bit vectors +- pan/midg: Fix swizzle packing on 64bit instructions with src-expansion + dst-shrinking +- pan/midg: Add a pass to lower non-logbase2 global/shared loads +- pan/midg: Support 8/16 bit load/store +- vulkan/wsi: Use ALIGN_POT() instead of open-coding it +- vulkan/wsi: Don't open-code vk_format_get_blocksize() +- panvk: Add support for push constants +- panvk: Add support for storage buffers +- panvk: Support creation of compute pipelines +- panvk: Add support for storage/uniform buffers with dynamic offsets +- panvk: Move dummy attribute buffer emission out of emit_{attribute,varying}_bufs +- panvk: Add support for storage image +- panvk: Implement vkCmdDispatch() +- vulkan/cmd_queue: Constify vk_cmd_queue.alloc +- vulkan/cmd_queue: Remove duplicate entries in MANUAL_COMMANDS +- vulkan/cmd_queue: Properly deconstify array of pointers +- lavapipe: Re-use auto-generated vk_cmd_enqueue entrypoints +- panvk: Add a dummy sampler for NIR tex operations that don't take one +- panvk: Add support for texel buffers +- panvk: No-op zero-vertex draws +- panvk: Fix per-instance attribute handling +- panvk: Implement indexed rendering +- vulkan/cmd_queue: Track allocation errors in vk_cmd_queue +- vulkan/cmd_queue: Fix the allocation scope +- panvk: Refcount the descriptor set and pipeline layouts +- aco: Fix an MSVC warning +- amd: Fix ac_gpu_info.c compilation on windows +- radv: Don't use VK_OUTARRAY_MAKE()/vk_outarray_append() +- lavapipe: Don't use VK_OUTARRAY_MAKE()/vk_outarray_append() +- Revert "ci: Disable windows-vs2019" +- vulkan/runtime: Add vk_cmd_queue.h to idep_vulkan_runtime_headers +- v3dv: Stop using VK_OUTARRAY_MAKE() +- turnip: Stop using VK_OUTARRAY_MAKE() +- pvr: Stop using VK_OUTARRAY_MAKE() +- anv: Stop using VK_OUTARRAY_MAKE() +- panvk: Stop using VK_OUTARRAY_MAKE() +- venus: Stop using VK_OUTARRAY_MAKE() +- vulkan/device_select: Stop using VK_OUTARRAY_MAKE() +- vulkan/wsi: Stop using VK_OUTARRAY_MAKE() +- vulkan/util: Get rid of VK_OUTARRAY_MAKE() +- vulkan/image: Make MSVC C++ compiler happy +- vulkan/util: Make STACK_ARRAY() work for arrays of pointers +- dzn: Compile-test the driver +- dzn: Add Missing return type to dzn_translate_sampler_filter() +- dzn: Remove the dzn_cmd_exec_functions file +- dzn: Make a bunch of functions private +- dzn: Fix alpha blend factor translation +- dzn: Properly support static blend constants +- dzn: Pass a NULL ralloc context to dxil_create_validator() +- dzn: Fix pipeline creation when rasterization is disabled +- dzn: Fix dzn_translate_viewport() when height < 0 +- dzn: Don't crash when EndCommandBuffer() returns an error +- dzn: Align the default case in dzn_image_view_prepare_dsv_desc() +- dzn: Replace C++ references by pointers +- dzn: Fix dzn_image_get_rtv_desc() for 3D views +- dzn: Support 2Darray views on 3D images for color attachments +- dzn: Fix 3D <-> 2D image copies +- dzn: Return a valid imageFormatProperties.maxMipLevels +- dzn: Make sure the properties are all zero when the format is not supported +- dzn: Set bufferFeatures to zero on depth/stencil formats +- dzn: 3D array images don't exist +- dzn: Get rid of dzn_GetPhysicalDeviceFeatures() +- dzn: Get rid of dzn_GetPhysicalDeviceProperties() +- dzn: Force sampleCounts to 1 for bgra4 images +- dzn: Check image view usage instead of image usage when creating an image view +- dzn: Drop extra blank line in dzn_CmdCopyImage2() +- vulkan/util: Make STACK_ARRAY() C++-friendly +- dzn: Lower partial copy of multisample resources to blits +- dzn: Fix 2D <-> 3D blits +- dzn: Support independent depth/stencil access +- dzn: Fix loop condition in dzn_descriptor_set_copy() +- dzn: Pass the right type to CreateCommandList() in the reset path +- dzn: Add missing VKAPI_{ATTR,CALL} specifiers to BeginCommandBuffer() +- dzn: Pass the dzn_event pointer to _mesa_hash_table_insert() +- dzn: Fix the STATIC_ASSERT() in dzn_meta_blits_get_context() +- ci/windows: Add a variable to globally disable jobs using windows runners + +Brian Paul (1): + +- vulkan/wsi/x11: add null pointer check for the has_dri3_v1_2 test + +Caio Oliveira (7): + +- anv: Enable requiredSubgroupSize for Task/Mesh +- intel/compiler: Lower Task/Mesh I/O before SIMD specific lowering +- intel/compiler: Use pass helper in brw_nir_adjust_offset_for_arrayed_indices +- intel/fs: Initialize the sample mask in flags register when using demote +- intel/fs: Fix IsHelperInvocation for the case no discard/demote are used +- intel/compiler: Use nir_var_mem_task_payload +- intel/compiler: Inline TUE map computation into TUE Input lowering + +Chad Versace (1): + +- intel/tools: Fix build without drivers + +Charles Baker (2): + +- zink: Fix MSVC RTC in zink_get_framebuffer_imageless() +- mesa: align constant/uniform uploads to driver expected alignment + +Charlie Turner (8): + +- ci, valve: Add support scripts for the Valve bare-metal farm. +- amd, ci: Remove unused runners. +- amd, ci: Drop log level in SPIRV -> NIR code generator. +- amd, ci: Categorize the sections of the CI file. +- ci, valve: Add the dEQP runners for Valve CI +- ci, valve: Show real kernel addresses in KFENCE reports. +- ci, valve: Bump the trigger container +- ci, radv: Update flake expectations + +Charmaine Lee (1): + +- mesa: fix misaligned pointer returned by dlist_alloc + +Chia-I Wu (20): + +- zink: set dma-buf bit for shared resources +- zink: always chain wsi_image_create_info for scanout images +- zink: set needs_mesa_flush_wsi for venus +- venus: fix two VN_TRACE_SCOPE's in the same scope +- venus: use 64KB alignment for suballocations +- venus: cache VkFormatProperties +- venus: trace vn_ring_wait_space +- venus: abort when stuck +- venus: fix properties of unsupported external fences/semaphores +- venus: update venus-protocol headers +- venus: add VK_EXT_shader_demote_to_helper_invocation +- venus: add VK_EXT_conservative_rasterization +- venus: add VK_EXT_depth_clip_enable +- venus: add VK_EXT_robustness2 +- venus: add VK_EXT_shader_stencil_export +- venus: add VK_EXT_vertex_attribute_divisor +- venus: add vn_extension_get_spec_version +- venus: update venus-protocol headers +- util: Keep quiet NaNs quiet when converting to half float. +- anv: advertise rectangularLines only for Gen10+ + +Christian Gmeiner (3): + +- etnaviv: drop TGSI based backend compiler +- Revert "nir: make tgsi_varying_semantic_to_slot(..) public" +- nir: Use const for nir_shader_get_entrypoint(..) + +Connor Abbott (57): + +- ir3/spill: Fix simplify_phi_nodes with multiple loop nesting +- nir/serialize: Don't access blob->data directly +- util/blob: Clarify rules on blob::data +- spirv: Rewrite determinant calculation +- ir3: Use CAN_REORDER instead of NON_WRITEABLE +- freedreno: Replace A6XX_IBO with A6XX_TEX_CONST +- freedreno/fdl: Set swizzle on storage descriptor +- ir3: Don't always set bindless_tex with readonly images +- ir3/nir: Fix 1d array readonly images +- tu: Call nir_opt_access +- ir3: Use isam for bindless images +- ir3/cp_postsched: Support multiple destinations +- ir3/dce: Support multiple destinations +- ir3/sched: Support multiple destinations +- ir3/ra: Fix tied destination handling with multiple destinations +- ir3/ra: Fix ra_foreach_dst_n +- ir3/ra: Sanitize parallel copy flags better +- ir3/ra: Add proper support for multiple destinations +- ir3/ra: Add IR3_REG_EARLY_CLOBBER +- ir3/spill: Mark reload destination as early-clobber +- util/bitset: Fix off-by-one in __bitset_set_range +- ir3: Track physical edges when inserting (ss) for shared regs +- ir3: Add support for subgroup arithmetic +- tu: Expose subgroup arithmetic +- tu: Rewrite dynamic descriptor handling +- tu: Handle UBO/SSBO descriptors with different sizes +- tu: Add an extra storage descriptor for isam +- ir3/parser: Don't use right recursion +- ir3/lower_spill: Fix corner case with oob offsets +- ir3: Actually use wrmask in emit_sam +- ir3: Use isam for bindless readonly ssbo loads +- nir: Add preamble functions +- nir: Add a "deep" instruction clone +- nir: Add a preamble optimization pass +- ir3: Fix scan.macro valid flags +- ir3: Don't count reserved user consts in ubo_state::size +- ir3: Implement basic shader preamble intrinsics +- ir3: Better assemble/disassemble stc +- ir3: Plumb through store_uniform_ir3 intrinsic +- ir3/legalize: Handle inserting (ei) with preamble +- ir3: Support prefetching with preambles +- ir3: Insert frag coord code after preamble +- ir3: Don't include preamble instructions in stats +- ir3: Add preamble optimization pass +- ir3: Implement and document ldc.k +- ir3: Refactor ir3_compiler_create() to take an options struct +- ir3, turnip: Use ldc.k to push UBOs +- tu: Enable UniformBufferUpdateAfterBind +- tu: Trivially implement VK_EXT_texel_buffer_alignment +- tu: Actually expose VK_EXT_texel_buffer_alignment +- tu: Correctly handle VK_IMAGE_CREATE_EXTENDED_USAGE_BIT +- freedreno/ci: Fix skip comment +- tu: Implement GetDevice*MemoryRequirements() +- tu: Fill out maxBufferSize +- tu: Remove tu_pipeline::layout +- tu: Expose VK_KHR_maintenance4 +- freedreno/a6xx: Fix SP_DS_CTRL_REG0 definition + +Corentin Noël (6): + +- ci: Uprev virglrenderer and crosvm +- virgl: Update virgl_protocol and use the provided constants +- nir_to_tgsi: Require the block index to always be populated +- nir_to_tgsi: Handle blocks defined as arrays of arrays +- ci: Only apply patches with the build-skqp prefix +- virgl/ci: Uprev virglrenderer and crosvm + +Cristian Ciocaltea (29): + +- ci: Ensure Mesa Shader Cache resides on tmpfs +- ci: Add socat utility +- ci: Enable kernel virtio transport for Virtual Sockets +- virgl/ci: Setup virtio-vsock based IPC +- ci: Increase limit of concurrent crosvm instances per runner +- ci: Improve interrupt signal handling in crosvm-runner.sh +- ci/zink: Report flake test +- radeonsi/ci: Mark a bunch of flaky tests on stoney +- ci: Avoid altering EXTRA_CARGO_ARGS environment variable +- ci: Convert generate-env.sh to a POSIX compliant script +- ci: Set CI_JOB_JWT_FILE to a fixed path outside /tmp +- ci: Build crosvm for LAVA runners +- ci: Add crosvm runtime dependencies for LAVA +- ci: Enable KVM_AMD and KVM_INTEL kernel modules +- ci: Load KVM kernel module for LAVA runners +- ci: Make kernel image available in LAVA for KVM use cases +- ci: Use script relative paths in crosvm-runner +- ci: Add PIGLIT_REPLAY_LOOP_TIMES to generate-env.sh +- ci: Remove obsolete CROSVM_TEST_SCRIPT env var +- ci: Provide consistent results location in LAVA +- ci: Allow specifying any shell command via HWCI_TEST_SCRIPT +- ci: Dynamically adjust LIBGL_ALWAYS_SOFTWARE for crosvm +- virgl/ci: Add jobs for running trace tests on LAVA +- ci: Make bash available in LAVA rootfs +- Revert "ci: Convert generate-env.sh to a POSIX compliant script" +- virgl/ci: Add support for dEQP GL vtest-ing +- ci: Add Intel GPU frequency utility +- ci: Provide intel-gpu-freq.sh in LAVA and bare-metal rootfs +- ci: Lock Intel GPU frequency for performance tests + +Daniel Schürmann (39): + +- aco: emit nir_intrinsic_discard() as p_discard_if() +- aco: remove block_kind_discard +- aco: make Preserve_WQM independent from block_kind_uses_discard_if +- aco: merge block_kind_uses_[demote|discard_if] +- aco: optimize discard_if when WQM is not needed afterwards +- radv: remove exports without color attachment or writemask +- nir: split nir_opt_shrink_stores from nir_opt_shrink_vectors +- nir/opt_shrink_vectors: Remove shrinking of store intrinsics data source +- radv: move nir_opt_shrink_stores from radv_optimize_nir() +- aco/insert_exec_mask: stay in WQM while helper lanes are still needed +- aco: don't propagate WQM for p_as_uniform +- aco: don't emit WQM for bool_to_scalar_condition +- aco/insert_exec_mask: remove Preserve_WQM flag +- aco/insert_exec_mask: remove some unnecessary WQM loop handling code +- aco/insert_exec_mask: remove ever_again_needs and Exact_Branch +- aco/insert_exec_mask: refactor and simplify get_block_needs() +- aco/insert_exec_mask: refactor and remove some unnecessary WQM handling code +- aco: relax condition to remove branches in case of few instructions +- aco/ra: don't immediately assign a register for p_branch +- nir/opt_shrink_vectors: shrink load_const properly +- nir/opt_shrink_vectors: remove duplicate components from vecN +- nir/opt_shrink_vectors: update docstring +- aco/ra: count constant moves in get_reg_create_vector() +- aco/ra: special-case get_reg_for_create_vector_copy() +- aco/ra: refactor find_vars() to return a vector +- aco/ra: refactor collect_vars() to return a sorted vector +- nir: rename nir_src_is_dynamically_uniform to nir_src_is_always_uniform +- aco/optimizer: fix call to can_use_opsel() in apply_insert() +- aco: remove 'high' parameter from can_use_opsel() +- aco: use branch definition as scratch register for SSA lowering +- aco/ra: fix stride check on subdword parallelcopies for create_vector +- aco/optimizer: check recursively if we can eliminate s_and exec +- aco/ra: only use VCC if program->needs_vcc == true +- aco/ra: create VCC-affinities during RA +- aco/ra: omit VCC affinity on VOPC_SDWA for GFX9+ +- aco: make program->needs_vcc independent of VCC hints +- aco: remove occurences of VCC hint +- aco: remove register hints entirely +- aco/ra: fix live-range splits of phi definitions + +Daniel Stone (11): + +- egl/wayland: Reset buffer age when destroying buffers +- egl/wayland: Don't replace existing backbuffer in get_buffers +- ci: Disable Windows for now +- Revert "ci: Disable Windows for now" +- CI: Disable panfrost-t760 +- CI: Disable Panfrost T720 jobs +- Revert "CI: Disable panfrost-t760" +- Revert "CI: Disable Panfrost T720 jobs" +- ci: Add new Panfrost G52 skip +- CI: Disable Windows jobs +- ci: Also disable Windows container builds when down + +Danylo Piliaiev (37): + +- turnip: Add TU_GMEM envvar to test different gmem sizes +- turnip: Do not use hw binning if tiles per pipe are over the limit +- turnip/doc: Update turnip extension list +- turnip: Use the shared helpers to expose 1.3 core extensions/limits +- turnip: Expose VK_EXT_image_robustness +- turnip: Implement VK_KHR_zero_initialize_workgroup_memory +- turnip: Expose VK_KHR_shader_non_semantic_info +- turnip: Unconditionaly remove descriptor set from pool's list on free +- tu: Implement VK_AMD_buffer_marker to support Graphics Flight Recorder +- turnip: Depth/stencil formats should not expose any bufferFeatures +- freedreno/pps: Expose same counters as blob +- ir3: Limit the maximum imm offset in nir_opt_offset for shared vars +- turnip: Add a refcount mechanism to BOs +- turnip: Use LATE_Z when there might be depth/stencil feedback loop +- turnip: Merge LRZ and DEPTH_PLANE draw states +- turnip: Implement VK_ARM_rasterization_order_attachment_access +- turnip: Always use GMEM for feedback loops in autotuner +- turnip: Set drmFormatModifierTilingFeatures +- turnip: Implement VK_EXT_physical_device_drm +- turnip: Add "rast_order" debug option to force rast order access +- tu: Refactor VS DECODE/DEST to be emitted in two pkt4 +- turnip: Make autotuner work with reusable command buffers +- tu: Implement VK_EXT_depth_clip_control +- turnip: Force linear mode for non-ubwc R8G8 formats +- turnip: Disallow non-linear tiling when casting R8G8 to other fmts +- turnip: Fix the lack of WFM before indirect draws +- turnip: enable has_ccu_flush_bug workaround for a660 +- turnip: Use correct type for OUTARRAY in FormatProperties2 +- turnip: Correctly store separate stencil in gmem store +- turnip: Ignore aspectMask for D32S8 framebuffer attachment +- turnip: Add "unaligned_store" debug option to better test gmem stores +- turnip: Fix subpassLoad from CUBE input attachments +- ci/freedreno: Add fractional test of forced unaligned gmem store +- turnip: Implement VK_EXT_primitives_generated_query +- tu: Do not flush ccu in clear/blits during renderpass +- pps: Open writable renderer node in DrmDevice::create +- tu: Fix indices of drm_msm_gem_submit_cmd when filling them + +Dave Airlie (85): + +- llvmpipe: optimise triangle setup a bit. +- llvmpipe: inline retry_triangle_ccw +- llvmpipe/setup: remove opaque from setup triangle +- llvmpipe: refactor lp_rast_shader_inputs. +- llvmpipe: just move opaque alpha lookup closer to use. +- llvmpipe/triangle: don't store area in fixed_position. +- crocus: find correct relocation target for the bo. +- lavapipe: fix sampler + sampler view leaks. +- ci/lavapipe: update lvp asan results after leak fixes. +- gallivm: add coroutine attribute that llvm requires. +- gallivm/st/lvp: add flags arg to get_query_result_resource api. +- gallivm: fix missing cast in 4-bit blending paths. +- llvmpipe: fix linear rast samples check. +- lavapipe: reference gallium fences correctly. +- crocus: fix leak on gen4/5 stencil fallback blit path. +- drisw: fence drawing to the swap/copy buffers. +- lavapipe: fix pipeline statistic query results with availability. +- lavapipe: handle endless fence timeout properly. +- lavapipe: execute a finish in pipeline barrier and event waiting. +- lavapipe: don't flush on transfer operations. +- lavapipe: handle non-timeline semaphores wait/signal. +- llvmpipe: convert texture barrier to a finish. +- llvmpipe/flush: always finish whether for cpu/gpu access. +- llvmpipe/scene: move to slab allocated objects for scenes. +- llvmpipe: base the scene queue size of the max number of scenes. +- llvmpipe: handle dynamically creating scenes when needed +- llvmpipe: size initial allocation and free scenes +- llvmpipe: add writeable resource tracking to the scene. +- llvmpipe: pass ssbo write mask down into setup. +- llvmpipe: add ssbo to resources reference by scenes. +- llvmpipe: add images to the scene resource tracker. +- llvmpipe: check framebuffer resources for all scenes for references. +- gallium: add partial bit to the query flags. +- llvmpipe/query: add support for partial query waits. +- lavapipe: pass partial results flags through. +- llvmpipe: add support for fence_server_sync. +- llvmpipe: allow vertex processing and fragment processing in parallel +- ci/lavapipe: fixup results after proper reference counting. +- draw/so: don't use pre clip pos if we have a tes either. +- vulkan/wsi: handle queue families properly for non-concurrent sharing mode. +- lavapipe: always set read/write on ssbo/images. +- llvmpipe/linear: fix disk caching. +- gallivm/nir: split load_const out into backend helper. +- gallivm/llvmpipe: add support for NIR to the linear/aos paths. +- crocus: change the line width workaround for gfx4/5 +- gallivm/nir: extract a valid texture index according to exec_mask. +- zink: workaround depth texture mode alpha. +- lavapipe: remove broken workaround for zink depth texturing. +- crocus: don't map scanout buffers as write-back +- radv: abstract queue family away from queue family index. +- intel: add some missing debug recompile info. +- crocus: force ignore_sample_mask_out on gen4/5 for precompile +- radv: try and fix internal transfer queue mapping +- radv/winsys: complete ring/ip translations. +- radv/winsys: add nop packets for uvd and vcn dec. +- radv/winsys: add a ring level detection for ib bo usage. +- radv/winsys: add support for queues without user fences. +- llvmpipe/fs: add missing depth_clamp key printing +- vulkan: update vk video headers for new vulkan headers. +- clover/nir: respect lower to scalar options. +- lavapipe: add EXT_texel_buffer_alignment support. +- gallivm/sample: detect if rho is inf or nan and flush to zero. +- zink: update resource layout in copy_scanout +- util/format: add new z24/s8 packing helper to pack z32/s8. +- u_transfer: refactor out code to check interleave/deinterleave path. +- u_transfer_helper: add a new option for handling z24 stored in z32 +- lavapipe: add loop unrolling. +- Reinstate: llvmpipe: allow vertex processing and fragment processing in parallel +- zink/query: consolidate xfb_buffers into one array. +- zink/query: collapse the xfb_query_pool array into the normal one. +- zink: refactor out number of vk queries per gallium query helper +- zink/query: use a single query pool for XFB queries. +- zink/query: refactor get_query_result to map upfront. +- zink/query: only reset the range of queries in use. +- zink/query: rewrite the query handling code to pass validation. +- llvmpipe: fix nr_sampler_view in key creation. +- radv: use flush vgt streamout like PAL does. +- zink: fix tessellation shader key matching. +- zink/query: refactor out vk queries and allow sharing them +- draw: handle tess eval shader when getting num outputs +- u_blitter/stencil: take dstbox x/y into accounts for dst fb width +- util/stencil: fix stencil fallback blit shader texture types. +- vulkan/wsi: keep allocate queue families in image, just don't fill them +- llvmpipe: add user memory resources to the debug global list. +- meson: add build-id to pipe libraries + +Dmitry Baryshkov (2): + +- freedreno/registers: add new register for 7nm DSI PHY v4.3 (sm8450) +- freedreno/regs: remove 5nm DSI PHY regs + +Dylan Baker (56): + +- VERSION: bump version for 22.0 release +- docs: reset new_features.txt +- docs: update calendar for 22.0.0-rc1 +- meson: add support for \`meson devenv` with vulkan +- meson: add LIBGL_DRIVERS_PATH to the devenv +- meson: add radv to meson devenv +- docs: update calendar for 22.0.0-rc2 +- docs: update calendar and link releases notes for 22.0.0 +- docs: Add calendar entries for 22.0 release. +- docs: add release notes for 22.0.0 +- util/list.h: Add docstrings for list_add and list_addtail +- mesa/main: replace use of simple_list with util/list +- gallium/opencl: set OCL_ICD_FILENAMES with devenv +- docs: Add calendar entries for 22.1 release candidates. +- docs: add release notes for 22.0.1 +- docs: add sah256 sum for mesa 22.0.1 +- docs: update calendar and link releases notes for 22.0.1 +- VESRION: bump for 22.1.0-rc1 release +- .pick_status.json: Update to e509598470c000498c3e1328e012142d9047e292 +- VERSION: bump for 22.1.0-rc2 +- .pick_status.json: Update to 9f44a264623461c98368185b023d99446676e039 +- .pick_status.json: Update to fbece25a451bb7915891851ee5c72724974ae5e2 +- .pick_status.json: Update to a6a4bf0f1eae36cb68d5c67653ac013fe0fbde8a +- .pick_status.json: Update to f329f67243d671965d73bd2243cffc4e1e68c4a3 +- VERSION: bump for 22.1.0-rc3 +- .pick_status.json: Update to f17d3a125126dd7e0f1c2072545976cec1eeb1c8 +- .pick_status.json: Update to 1dc697942af7254798f83583f5788e1abf136d27 +- .pick_status.json: Update to 2505afc430c6b151e7e4243503953ba0b0a2c842 +- .pick_status.json: Mark c025cb9ee9d79ebfb66a577556e04deecfe012ed as backported +- .pick_status.json: Update to 575068a1656ab4303647ade1491da7d711d36db7 +- VERSION: bump for 22.1.0-rc4 release +- .pick_status.json: Update to 7f91e8fad94dd34f83c6a124dbbe5d210be7715f +- .pick_status.json: Update to 17c98393f9f3cb0801b73b2d4c62442859417368 +- .pick_status.json: Update to 14b1ed1ce105d42652f70e2fd13c90fc4f2e7ffc +- .pick_status.json: Mark 6317f88b044501354a052064478d5b43dfe41809 as backported +- .pick_status.json: Mark 5ff3fa5912778adb8117fa26bfe4786b583e741b as backported +- .pick_status.json: Mark 9a412c10b7a96adf71c9a2ca44a0abca75de1c49 as backported +- .pick_status.json: Mark 0e49ef5c9f2ec34567613226ad498edca28bce88 as backported +- .pick_status.json: Mark ae369e9f6d4f2c826f1f2a748c32a14f9d5f1f54 as backported +- .pick_status.json: Mark 8b28d1751c76b0ba72dae1f6b916cb7f2bbc1c0c as backported +- .pick_status.json: Mark 8daf8ff730b777bb512a237a36783d781cbf9de9 as backported +- .pick_status.json: Mark 8c1d9c7b744b2e5b40fd42cfd51256b16deea6a8 as denominated +- VERSION: bump for 22.1.0-rc5 +- .pick_status.json: Update to 57293dee2b11ba7e52052edc4d0437f08db19144 +- .pick_status.json: Mark 5a3aee78cbb70918b413cdd40dffcae7c9e97d8c as denominated +- .pick_status.json: Update to 5c90eb1c53f46e86717c6bf4d5253dd23c4dac1f +- .pick_status.json: Update to 07eba9a15a06ceda3469892822e8b539effc6788 +- .pick_status.json: Update to 29a8f1f03bed317370e07288fd9d4b85a24562e6 +- .pick_status.json: Mark 07efe6f129956d0cce0fb167d08b5f8af25d0c95 as backported +- .pick_status.json: Mark 1c17502ab38a238efe5d9aa4bc0ff07c967adb80 as backported +- .pick_status.json: Mark b6eec12327b65038dd56742dbe272c21c63a3844 as backported +- .pick_status.json: Mark 7057a363591279c3f65a3c4af41687e6f8142649 as backported +- .pick_status.json: Mark 9924fecee6412f1cad65d7d7347681856e3a525c as backported +- .pick_status.json: Mark 7aee9f12b9c1f17ae2662c8043c8679ce698b731 as backported +- .pick_status.json: Mark 5e4009fe6c91c34a7cdf8c16aa5aa53c3ff41222 as backported +- .pick_status.json: Mark b18448e7acfc765ee95505c7cd5e2ce6e6fc36cc as backported + +Emma Anholt (145): + +- r300: Fix missing \\n in an error message. +- r300: Set up shadow sampler lowering in precompiles. +- r300: Simplify DCE by assuming all output writes are used. +- ci/freereno: Reduce run-by-default a630-vk coverage. +- ci/turnip: Extend the full-vk-run job timeouts. +- ci/freedreno: Reduce concurrency for a618 vk_full. +- ci/i915: Update rendering hash for plot3d trace. +- llvmpipe: Disable an assertion that may not be quite right. +- ci: Uprev vulkan-cts to 1.2.8.0 +- ci/softpipe,llvmpipe: Disable Xvfb server reset on piglit runs. +- ci/crocus: Add recent flakes from #intel-ci +- ci/iris: Add skips and flakes notes for recent #intel-ci logs. +- ci/freedreno: Add another unsizedArrayLength flake. +- ci/panfrost: Add a flake a few of us have run into in the last couple days. +- ci/broadcom: Remove unused v3dv xfails file. +- ci: Bump VK-GL-CTS to 1.3.1.0. +- r300: Request that nir-to-tgsi avoid generating TGSI_OPCODE_CMP. +- r300: Demote a compiler assert(0) to a compile failure. +- r300: Throw a compile error instead of an assert in r300 swizzle rewrites. +- nir: Split the flag for lowering of fabs and fneg to source modifiers. +- nir_to_tgsi: Add a flag for lowering fabs, and use it in r300/i915. +- i915g: Report the temps usage +- tgsi: Refactor out a tgsi_util_get_src_usage_mask(). +- nir_to_tgsi: Track our TGSI insns in blocks before emitting tokens. +- nir_to_tgsi: Replace the NIR SSA liveness with TGSI reg-level liveness. +- nir: Delete the per-instr SSA liveness impl. +- ci/r300: Drop xfails that were fixed with the VK-GL-CTS 1.3.1.0 uprev. +- ci/lvp: Add a flake that's shown up a couple of times since VKCTS 1.3.1. +- ci/freedreno: Try to detect a wedged MMU that's happened recently. +- tgsi_translate: Make the procType public when translating. +- virgl: Work around old virglrenderer's BARRIER counting bug. +- virgl: Add a workaround for virglrenderer output writemask bugs. +- virgl: Apply TGSI transforms to compute shaders, too. +- virgl: Add workarounds for virglrenderer input/sv signedness bugs. +- virgl: Move tex immediate operands to a temp to avoid virglrenderer bug. +- virgl: Move double operands to a temp to avoid double-swizzling bugs. +- nir_to_tgsi: Don't vectorize 64-bit instructions, to keep virgl happy. +- nir_to_tgsi: Add support for FBFETCH. +- r300: Delete the loop unrolling. +- i915g: Initialize the rest of the "from_nir" temporary VS struct. +- draw: Don't look at .nir if !IR_NIR. +- nv30/40: Switch to using NIR-to-TGSI by default. +- nir: Add some notes about const/uniform array access rules in GL. +- ci/freedreno: Move a 60s timeout test to skips instead of flakes. +- ci/freedreno: Cut down pre-merge a630 VK coverage. +- ci/freedreno: Add a known spilling hangcheck flake. +- turnip: Request no implicit sync when we have no implicit-sync WSI BOs. +- ci: Stash the ldd and ccache stats output under collapsed sections. +- ci/llvmpipe: Move most of testing to shared 64-core runners at Google. +- ci/lavapipe: Test 1/3 of lavapipe on the shared 64-core google runners. +- ci/softpipe: Move most of testing to shared 64-core runners at Google. +- ci/virgl: Drop the bvec4_from_mat4x2_vs xfail. +- ci/lvp: Update the asan fails list. +- ci/zink: Move testing to shared 64-core runners at Google. +- ci/zink: Add testing of dEQP GLES3.1/3.2. +- nir: Allow the _replicates opcodes to have num_components != 4. +- freedreno: Use the resource size rather than BO size for VFD_FETCH[].SIZE. +- freedreno: Fix start_slot handling in set_vertex_buffers. +- freedreno: Improve robustness behavior for VBs with offset > size. +- ir3: Don't assert on not finding the VS output for an FS input. +- ci/freedreno: Consolidate some information about an a630 flake. +- nir: Introduce a nir_vec_scalars() helper using nir_ssa_scalar. +- nir: Add a helper for setting up a nir_ssa_scalar struct. +- nir: Switch to using nir_vec_scalars() for things that used nir_channel(). +- intel/perf: Move some static blocks of C code out of the python script. +- ci/bare-metal: Drop the BM_POE_USERNAME/PASSWORD env var checks. +- ci/bare-metal: Increase maximum retry count for POE boots. +- ci: Stop xz-compressing firmware for ramdisks. +- ci/nouveau: Add nouveau support to the rootfs. +- ci/nouveau: Add a manual run for the Jetson Nano (GM20B). +- docs/ci: Update some bare-metal CI docs. +- docs/ci: Add docs for using a POE switch to control boards, like nouveau. +- turnip: Enable VK_EXT_display_control using the common code. +- turnip: use vk_shader_module_to_nir(). +- ci: Drop skips of spv-stable-pillars-volatile-nontemporal-store +- ci/lvp: Stop skipping spv-stable-maze-flatten-copy-composite +- ci/freedreno: Drop the skips of spirv_ids_abuse in pre-merge. +- ci/freedreno: Remove some xfails for tests that now skip. +- turnip: Use the DRM or KGSL GPU reset status ioctls to report device loss. +- ci/turnip: Drop alpha_to-coverage flake note on a618. +- vulkan: Make sure we've loaded our connectors when querying plane props. +- ci/turnip: Increase the hangcheck timer to 2 seconds. +- ci/traces: Make sure we have no pre-existing traces-db before starting. +- nouveau/nir: Enable nir_opt_move/sink. +- r600: Drop nr_ps_max_color_exports +- r600: Update the PS state before checking for cb_misc update. +- r600: Update the PS state when MSAA-ness changes, too. +- r600: Add shader precompile and shader-db support. +- ci/r600: Check in some expectation files for rv770 and Turks. +- r600: Add shader-compiler debug knobs to the shader cache key. +- r600: Drop unused sbcl debug option. +- r600: Drop unused debug options from the fork off of radeonsi. +- r600: Fix ordering of SSBO loads versus texturing. +- r600: Add a workaround and explanation for shadowcubearray TG4. +- r600: Disable SB in the presence of indirection on temp arrays. +- r600: Disable SB when INTERP_SAMPLE is used. +- r600: Implement memoryBarrier() in the non-SFN path. +- glsl: Delete unused EmitNoPow path. +- glsl: Delete dont_lower_swz path of lower_quadop_vector. +- nir_to_tgsi: Add support for nir_intrinsic_image_samples. +- turnip: Add support for VK_KHR_format_feature_flags2. +- freedreno/a6xx: Set the color_swap field for storage descriptors. +- turnip: Disable tiling on 1D images. +- turnip: Allow image access on swapped formats. +- util/log: Don't print an extra \\n if the format string had one. +- spirv: Silence "Decoration not allowed on struct members: SpvDecorationRestrict" +- ci/deqp: Add gitlab-ci sections to deqp-runner.sh. +- ci/deqp: Move the set +e just before the deqp-runner invocation. +- ci/lava: Simplify passthrough of the request to upload results/ to minio. +- util/log: Add support for logging once. +- gallivm/nir: Don't do uniform-and-broadcast access on inactive invocations. +- gallivm/nir: Pull some repeated exec_mask computation out of loops. +- gallivm/nir: Refactor out some repeated logic for SSBO/shared access. +- gallivm/nir: Refactor out some repeated code to generate 0 values. +- gallivm/nir: Add a short circuit uniform-offset mode for load_global. +- gallivm/nir: Add a short circuit uniform-offset mode for load_ssbo/load_shared. +- ci/turnip: Drop xfails for create_list_modifiers. +- ci: Uprev deqp-runner and piglit. +- freedreno: Fix the cpu-prep wait to be "infinite". +- Revert "ci/freedreno: Reduce concurrency when replaying traces on a630" +- virgl: Disable nir_op_ffloor to avoid sending DFLR to virglrenderer. +- nir_to_tgsi: Fix emitting the sample number for non-array MSAA image access. +- r600: Stop using ArrayID to look up atomic counters. +- r600: Add a helper function for rat_index_mode, with documentation and assert. +- nir_to_tgsi: Extract const components of atomic counter offsets into Index. +- nir_to_tgsi: Fix the address reg mapping for images and SSBOs to match G-T-T. +- tgsi/transform: Make tgsi_transform_shader() manage token allocation. +- tgsi/transform: Drop a stale comment. +- ci/iris: Disable pixmark-piano trace testing. +- ci/crocus: Disable pixmark-piano trace testing. +- st/glsl-to-tgsi: Fix handling of csel(bool, vec, vec). +- ci/softpipe: Mark some flakes that have appeared across a few MRs. +- ci/zink: Mark a new GLX flake that hit an innocent MR. +- turnip: Track refcounts on BOs in kgsl as well. +- turnip: Stop allocating unused pvtmem space in the pipeline CS. +- turnip: Sub-allocate pipelines out of a device-global BO pool. +- turnip: Skip telling the kernel the BO list when we don't need any. +- turnip: Reduce the pipeline's CS allocation a bit. +- turnip: Get autotune off of ralloc destructors. +- turnip: Move autotune buffers to suballoc. +- nir_to_tgsi: Do the required cleanup for nir_opt_find_array_copies(). +- Revert "ci: Disable Google's lab" +- nir: Add lowering for fround_even on r300. +- nouveau/nir: Fix the inverted sense of usesSampleMaskIn. +- nouveau/nir: Move FS output stores to the end of the last block. + +Enrico Galli (1): + +- microsoft/spirv_to_dxil: Add missing ralloc_free + +Eric Engestrom (7): + +- docs: add release notes for 21.3.6 +- docs: update calendar and link releases notes for 21.3.6 +- docs: add release notes for 21.3.7 +- docs: update calendar and link releases notes for 21.3.7 +- Revert "glx: Fix build errors with --enable-mangling (v2)" +- docs: add release notes for 21.3.8 +- docs: update calendar and link releases notes for 21.3.8 + +Erico Nunes (14): + +- lima/gpir: clean up override-init warnings +- lima/ppir: clean up override-init warnings +- lima/ppir: avoid ppir_codegen_outmod implicit conversion +- lima/ppir: initialize spill_costs array in regalloc +- lima: fix warning of garbage value access +- lima: add some checks for potential null pointer dereference +- lima: remove an unneeded lima_job_get assignment +- lima/gpir: avoid invalid write in regalloc +- lima/ppir: initialize slots array for dummy/undef +- lima/ppir: refactor bitcopy to use unsigned char +- lima/ci: update deqp results +- lima/ci: enable CI again +- lima/ci: enable piglit in lima CI +- lima: fix vector const src referenced multiple times + +Erik Faye-Lund (81): + +- vulkan/util: Add extern "C" to allow inclusion from c++ +- vulkan/util: Add explicit casts to make c++ happy +- vulkan/util: simplify multialloc init +- zink: do not copy colors through floats +- nir/spirv: guard macros in case of redefinition +- vulkan/wsi: pass win32-swapchain directly +- vulkan/wsi: untangle buffer-images from prime +- vulkan/wsi: add transition to/from transfer-src state +- vulkan/wsi: use buffer-image code-path on Windows +- docs: add license to the redirects script +- docs: remove incorrect drivers from extension +- docs: import virgl docs +- docs: remove a few repeated words +- docs: add missing get +- docs: qemu -> QEMU +- docs: Virgl -> VirGL +- docs: master -> main +- docs: link to gitlab instead of cgit +- docs: update virgl description +- docs: mark virgl gles2 renderer as done +- docs: update irc channel +- docs: fix a broken link +- docs: match build-flags markup with meson docs +- docs: fixup zink gl 4.3 requirements +- docs: improve language in zink article +- Revert "ci: downgrade sphinx to v3.x" +- gallium: rename pack half-float cap +- gallium: rename vs instance id cap +- gallium: rename layer-viewport caps +- gallium: rename pixel-coord caps +- gallium: rename fine derivative cap +- gallium: rename sysval caps +- gallium: rename array-components cap +- gallium: rename read-outputs cap +- gallium: rename texture query samples cap +- gallium: rename group-vote cap +- gallium: rename clock cap +- gallium: rename ballot cap +- gallium: rename window-space position cap +- gallium: rename image atomic float-add cap +- gallium: rename image atomic inc-wrap cap +- pvr: use zloadformat instead of zstoreformat +- pvr: fixup typos when allocating object +- microsoft/compiler: ralloc incoming phi-values +- microsoft/compiler: remove phi-value limit +- pvr: use a helper to translate compare-ops +- pvr: use a helper to translate stencil-ops +- pvr: zero-initialize variable +- docs: fixup breakage in release-calendar +- docs: add a minimal docs page for radv +- pvr: do not use fallthrough for unreachable code +- pvr: do not use fallthrough for unreachable code +- microsoft: Initial vulkan-on-12 driver +- vbo/dlist: do not try to pad an empty draw +- aco: do not use designated initializers +- nir/tests: do not use designated initializers in c++ code +- dozen: require c++20 for designated initializers +- ci: do not specify c_std and cpp_std for windows-build +- d3d12: fix return-code without dxcompiler.dll +- microsoft/compiler: add common dxil-validator API +- d3d12: use dxil_validator +- microsoft/spirv_to_dxil: use dxil_validator +- dzn: use dxil_validator +- clc/tests: use dxil_validator +- dzn: remove needless using +- dzn: remove unused struct +- dzn: drop needless includes +- dzn: add D3D12_IGNORE_SDK_LAYERS define +- dzn: fixup indent +- dzn: remove unused variable +- dzn: drop unused header +- dzn: drop incorrect return statement +- dzn: drop unused include +- dzn: add missing space +- wgl: rename force-msaa env-var +- util: limit error-dialogs to win32 +- wgl: do not disable error-dialogs by default +- vulkan: explicitly cast object-type enum +- meson: remove unused defines +- gallium/xlib: fix stale comment +- mesa: add missing error-path + +Ernst Sjöstrand (1): + +- intel/compiler: Fix non-trivial designated initializer + +Felix DeGrood (4): + +- anv/measure: Fix INTEL_MEASURE for ANV +- anv: add indirect draw to INTEL_MEASURE +- intel: increase INTEL_MEASURE batch/buffer sizes +- intel: change INTEL_MEASURE output to microseconds + +Filip Gawin (2): + +- r300: fix swizzle handling in transformation of abs +- r300: Print warning when stubbing derivatives + +Francisco Jerez (5): + +- iris: Demote all callers of iris_flush_and_dirty_for_history() to iris_dirty_for_history(). +- iris: Remove remaining history flushes. +- iris: Replace unconditional QBO flush with iris_dirty_for_history(). +- intel/perf: Fix OA report accumulation on Gfx12+. +- intel/dev: Compute pixel pipe information based on geometry topology DRM query. + +Frank Binns (2): + +- pvr: Add a Vulkan driver for Imagination Technologies PowerVR Rogue GPUs +- pvr: fix clang unused function warning + +Ganesh Belgur Ramachandra (1): + +- radeonsi: NIR equivalent of si_create_clear_buffer_rmw_cs() + +Georg Lehmann (20): + +- nir/lower_mediump: Treat u2u16 like i2i16. +- radv, aco: Add u_foreach_bit to .clang-format. +- nir: Fix source type for fragment_fetch_amd. +- radv: Don't hash ycbcr sampler base object. +- nir/fold_16bit_sampler_conversions: Don't fold dest upcasts. +- nir/fold_16bit_sampler_conversions: Fix dest type mismatches. +- nir/fold_16bit_sampler_conversions: Fix src type mismatches. +- nir/legalize_16bit_sampler_srcs: Don't guess source type. +- radv: Add a vkCmdBuildAccelerationStructuresIndirectKHR stub. +- radv: Add more RT pipeline stubs. +- aco: Remove 0 data components from image stores. +- nir: Move lower_usub_sat64 to nir_lower_int64_options. +- nir: Add an option to lower 64bit iadd_sat. +- aco: Implement 64bit uadd_sat. +- aco: Implement scalar iadd_sat. +- radv: Lower 64bit iadd_sat. +- radv, aco: Packed iadd_sat/uadd_sat. +- radv: Enable global bo list if 1.2 features are used. +- wsi/x11: Don't leak xcb_get_geometry_reply_t. +- nir/opt_algebraic: Fix mask in shift by constant combining. + +Gert Wollny (24): + +- virgl: Enable PIPE_CAP_TGSI_TEXCOORD when the host supports it +- virgl: Fix texture transfers by using a staging resource +- virgl: Add a few more formats to the format table +- Revert "llvmpipe: allow vertex processing and fragment processing in parallel" +- Revert "virgl: Enable PIPE_CAP_TGSI_TEXCOORD when the host supports it" +- virgl: re-enable PIPE_CAP_TGSI_TEXCOORD with new host versions +- virgl: Don't support QUADS natively +- r600: Only emit the NOP group triggered by dest.rel after a full group +- virgl: Propagate precice flag through moves +- virgl: Always make some extra temps available for transformations +- virgl: Add an extra mov for int outputs from constant and immediate inputs +- r600: Don't limit scheduling of PARAM_SRC values +- r600: ignore dest sel for non-write targets when counting registers +- r600: don't reschedule INTERP_LOAD_P0 +- r600: Force last instruction of group when starting a new CF +- r600: Set the last bit if an alu group is split by kcache allocation +- r600: make r600_load_ar available to driver code +- ntt: translate nir_intrinsic_shader_clock +- r600: Assign shader type when creating a new CS state +- virgl: Apply integer op fix only for ALU ops and clear modifiers +- virgl: Fix relocating the re-writing the transformation code +- r600/sfn: Fix store_shared_r600 write masks +- virgl: don't move input gl_SampleMaskIn to a temp +- r600: Allow eight bit, three channel formats for vertex buffers + +Guilherme Gallo (5): + +- ci: Make LAVA jobs fail CI job when retry is exhausted +- ci: Install pytest and freezegun plugin +- ci: Add unit tests for lava_job_submitter +- ci: skqp: Build skqp from android-cts-10.0_r11 tag with Clang +- ci: skqp: Add Vulkan support for a630_skqp job + +Gurchetan Singh (1): + +- zink: emulate some more memory + +Hans-Kristian Arntzen (1): + +- radv: Implement VK_VALVE_descriptor_set_host_mapping. + +Henry Goffin (1): + +- frontends/va: ignore incoming frame_num from VA picture parameters + +Iago Toral Quiroga (50): + +- broadcom/compiler: fix offset alignment for ldunifa when skipping +- broadcom/compiler: allow ldunifa with read-only SSBOs +- broadcom/compiler: choose compile strategy with lowest spilling +- broadcom/compiler: define max number of tmu spills for compile strategies +- broadcom/compiler: fix end of TMU sequence check +- broadcom/compiler: reset spill/fill counts after lowering thread count. +- broadcom/compiler: do not rebuild the interference graph after each spill +- broadcom/compiler: drop spill_count and add spilling boolean +- broadcom/compiler: document that spill_base is used for spills and scratch +- broadcom/compiler: only patch temps that existed before the current spill +- broadcom/compiler: fix register class patching for postponed spills +- nir/nir_opt_move: allow to move uniform loads +- nir: add a nir_instr_def_is_register helper +- nir/nir_opt_move: handle non-SSA defs +- broadcom/compiler: move uniforms right before their first use after scheduling +- broadcom/compiler: increase cost of TMU spills to 10 +- broadcom/compiler: disallow TMU spills if max tmu spills is 0 +- broadcom/compiler: move constants before their first user +- broadcom/compiler: sink uniform loads +- broadcom/compiler: don't sort nodes for register allocation +- broadcom/compiler: simplify node/temp translation during register allocation +- broadcom/compiler: stop moving UBO loads before NIR scheduling +- nir/schedule: fix handling of generic memory barrier +- nir/schedule: handle nir_intrinsic_group_memory_barrier +- nir/schedule: use larger delay for non-filtered memory reads +- nir/schedule: allow drivers to decide about instruction latency +- broadcom/compiler: define v3d-specific delays for NIR instructions +- broadcom/compiler: add a strategy to disable scheduling of general TMU reads +- broadcom/compiler: adjust register threshold for 2-thread compiles +- broadcom/compiler: add comment on why we don't use r5 with ldunifa +- broadcom/compiler: don't always assign r5 if available +- broadcom/compiler: remove unused functions +- v3dv: expose VK_EXT_image_drm_format_modifier +- v3dv: TFU destination must be UIF +- v3dv: return early on image to buffer blit copies if image is linear +- v3dv: don't expose image load/store features for linear images +- v3dv: fix temporary imports of semaphores and fences with multisync +- v3dv: don't signal semaphores/fences from a wait thread +- v3dv: fix semaphore wait from CPU job +- v3dv: lock around noop job submits +- v3dv: support importing external semaphores +- v3dv: implement VK_EXT_inline_uniform_block +- broadcom/compiler: allow ldunifa with indirect uniform loads +- v3dv: fix sampler array addressing in v3dv_descriptor_set_layout +- v3dv: drop unnecessary memset +- v3dv: add reference counting for descriptor set layouts +- broadcom/compiler: always enable per-quad on spill operations +- v3dv: fix limits for inline uniform blocks +- broadcom/compiler: prefer reconstruction over TMU spills when possible +- v3dv: fix bogus VkDrmFormatModifierProperties2EXT usage + +Ian Romanick (40): + +- gallivm/nir: Call nir_lower_bool_to_int32 after nir_opt_algebraic_late +- nir: Constify def parameter to nir_ssa_def_bits_used +- nir/search: Constify instr parameter to nir_search_expression::cond +- 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 +- glsl/lower_vector_derefs: Don't emit conditional assignments +- glsl: Use csel in do_vec_index_to_cond_assign +- glsl: Don't try to emit the "linear sequence" in lower_variable_index_to_cond_assign +- glsl/ir_builder: Eliminate unused conditional assignment builders +- glsl: Lower if to conditional select instead of conditional assignment +- glsl: Add ir_assignment constructor that takes just a write mask +- glsl: Remove the ability to read text IR with conditional assignments +- glsl: Eliminate unused conditional assignment constructor +- glsl: Don't clone assignment conditions +- glsl: Don't constant-fold the condition of an assignment +- glsl: Remove unused condition parameter from ir_assignment constructor +- glsl: Don't dead-built-in varying eliminate in the condition of an assignment +- glsl: Don't tree graft in the condition of an assignment +- glsl: Don't split arrays in the condition of an assignment +- glsl: Don't split structures in the condition of an assignment +- glsl: Don't lower vector indexing in the condition of an assignment +- glsl: Don't visit rvalues in the condition of an assignment +- glsl: Make ir_assignment::condition private +- glsl: Eliminate ir_assignment::condition +- Re-indentation after the previous commit +- nir: Add missing dependency on nir_opcodes.py +- i915g/ci: update piglit fails +- nir/algebraic: Optimize some cases of (sXX(a, b) != 0.0) +- i915g: Handle constants composed exclusively of 0 or ±1 specially +- i915g: Emit better code for SEQ(x, 0) and SNE(x, 0) +- iris/ci: Mark amd_performance_monitor tests as flakes. +- intel/fs: Force destination types on DP4A instructions +- nir: intel/compiler: Lower TXD on array surfaces on DG2+ +- intel/compiler: Fix sample_d messages on DG2 +- intel/fs: Better handle constant sources of FS_OPCODE_PACK_HALF_2x16_SPLIT + +Icecream95 (31): + +- pan/mdg: Use util_logbase2 instead of C99 log2 +- panfrost: Set PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION +- panfrost: Update point size limits to match hardware behaviour +- panfrost: Disable point size upper limit clamping +- 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 +- pan/bi: Add documentation for bifrost_nir_lower_store_component +- panfrost: Improve comment for emit_fragment_job +- panfrost: Fix ubo_mask calculation +- pan/bi: Skip psuedo sources in ISA.xml +- pan/bi: Don't assign slots for the blend second source +- panfrost: Don't initialise the trampolines array +- panfrost: Optimise recalculation of max sampler view +- panfrost: Remove BO mapping from import +- util/hash_table: Remove Unicode byte order mark +- drm-shim: Add a function for mmap64 rather than using an alias +- drm-shim: Return fake render nodes in /dev/dri first +- drm-shim: Explicitly use off64_t for the offset to drm_shim_mmap +- drm-shim: Implement a shim function for close +- panfrost: Stop overallocating compressed textures +- panfrost: Fix pack_32_2x16 implementation +- pan/bi: Use texture index instead of sampler for message preloading +- nir/lower_tex: Copy more fields in lower_tex_to_txd and friends +- pan/mdg: Keep min_bound at 16 when alignment requires it +- pan/mdg: Use MAX2 to set min_alignment +- pan/mdg: Fix mask usage when filling before a spill +- pan/mdg: Return the instruction from mir_insert_instruction_*_scheduled +- pan/mdg: Fix multiple spilt writes in the same bundle + +Igor Torrente (13): + +- venus: Exposes VK_EXT_4444_formats extension +- venus: venus-protocol groundwork to VK_EXT_custom_border_color +- venus: add VK_EXT_custom_border_color extension +- venus: add macros to help with future extensions +- Venus: Add \`vn_physical_device_{features, properties}` for better organization +- Venus: Add VN_CMD_ENQUEUE macro with vkCmd* common code +- Venus: Adjust VN_CMD_ENQUEUE to set VN_COMMAND_BUFFER_STATE_INVALID +- Venus: add VN_CMD_ENQUEUE to vn_cmd_encode_memory_barriers +- venus: move vkGetCalibratedTimestamps to vn_protocol_driver_device.h +- venus: add VK_EXT_calibrated_timestamps extension +- venus: add VK_EXT_extended_dynamic_state2 extension +- venus: Update venus-protocol to add two new extensions +- venus: add VK_EXT_{conditional_rendering,index_type_uint8} extensions + +Ilia Mirkin (30): + +- glsl: simplify conditions for setting various allowed flags +- glsl: only validate xfb_buffer values when we have enhanced layouts +- st/mesa: only enable ARB_enhanced_layouts if there are xfb buffers +- rtasm: fix printf specifier for ptrdiff_t +- rtasm: add pcmpgtd operation +- translate: improve sse2 32-bit unsigned -> float conversion +- isaspec: fix gen_max to be 2^32-1 +- isaspec: add gen-based leaf bitset separation +- freedreno/ir3: split up load/store/atomic by generation +- freedreno/a4xx: use correct macro for color +- freedreno/a4xx: make luminance formats renderable, add missing L8A8_SNORM +- freedreno/ir3: document GETINFO's x/y results +- nouveau: add dEQP/GLCTS run failure info for GF108/GT215 +- mesa: enable GL_EXT_texture_sRGB_RG8 on desktop +- nvc0: disable EXT_texture_sRGB_RG8 +- freedreno/ir3: remove bogus tg4 -> tex lowering pass +- nir: remove bogus logic to allow cube + offset to work +- freedreno/a4xx: move tex_type to header +- freedreno/a4xx: add swizzles to shader keys for tg4 workaround +- freedreno/a4xx: fix integer tg4 +- freedreno/ir3: support a4xx in load/store buffer/image emission +- freedreno/ir3: support a4xx compute differences +- a4xx: add logic to emit image/ssbo state +- a4xx: add emission of compute state, and compute dispatch +- freedreno/a4xx: extend astc and tg4 workarounds to compute shaders +- freedreno/a4xx: improve condition for disabling early z +- freedreno/ir3: no need to count bits 16b at a time for a4xx +- freedreno/ir3: disable conversion folding on a4xx +- freedreno/a4xx: expose shaders and images, as well as ES 3.1 +- freedreno: add a420 deqp-runner files + +Indrajit Das (1): + +- ac/gpu_info: disallow displayable DCC for Navi12 and Navi14 + +Iván Briano (7): + +- anv: make the pointer valid before we assign stuff into it +- intel/compiler: remove what looks like a bad rebase +- anv: only advertise 64b atomic floats if 64b floats are supported +- intel/compiler: make CLUSTER_BROADCAST always deal with integers +- intel/fs: handle interpolation modes for at_sample and at_offset too +- vulkan/wsi/wayland: Fix double free on error condition +- anv: re-alloc push constants after secondary command buffers + +Jakob Bornecrantz (1): + +- vulkan-device-select: Don't leak xcb_query_extension_reply_t + +Jason Ekstrand (179): + +- vulkan,lavapipe: Simplify command recording code-gen +- zink: Re-interpret formats when using vkCmdClearColorImage() +- anv: Call vk_command_buffer_finish if create fails +- vulkan: Add a common vk_command_pool base struct +- anv: Use vk_command_pool +- radv: Use vk_command_pool +- panvk: Use vk_command_pool +- lavapipe: Use vk_command_pool +- v3dv: Use vk_command_pool +- turnip: Use vk_command_pool +- vulkan: Take a vk_command_pool in vk_command_buffer_init() +- vulkan/queue: Assert command buffers have the right queue family +- vulkan: Implement of a bunch of VkCommandPool functions +- anv: Don't use vk_alloc/free2 for command buffers +- anv: Drop anv_cmd_buffer::pool +- anv: Don't call DestroyCommandBuffers in AllocateCommandBuffers +- anv: Use the common vk_command_pool +- v3dv: Don't use vk_alloc/free2 for command buffers +- v3dv: Use the common command pool implementation +- vulkan: Rename vk_image_view::format to view_format +- vulkan: Add back vk_image_view::format +- anv: use vk_image_view::format for creating dynamic renderpasses +- anv: Don't assume depth/stencil attachments have depth +- panvk: Advertise VK_KHR_get_physical_device_properties2 +- panvk: Advertise zero sparse format properties +- panvk: Non-destructively stub GetRenderAreaGranularity +- blorp: Add a binding_table_offset_to_pointer helper +- vulkan/cmd_queue: Re-flow MANUAL_COMMANDS +- vulkan/cmd_queue: Stop generating enqueue helpers for INTEL perf queries +- vulkan/cmd_queue: Generate enqueue entrypoints +- lavapipe: Reset the free_cmd_buffers list in TrimCommandPool +- vulkan,lavapipe: Move some enqueue helpers to common code +- vulkan/cmd_queue: Add a driver_free_cb hook +- vulkan/cmd_queue: Add a common vk_cmd_enqueue_CmdBindDescriptorSets +- lavapipe: Allocate descriptor set layouts with DEVICE scope +- lavapipe: Reference count pipeline layouts +- lavapipe: Use the common vk_enqueue_CmdBindDescriptorSets +- vulkan/cmd_queue: Properly support non-array pointer members +- lavapipe: Use the auto-generated vk_enqueue_BeginRendering +- anv: Allow MSAA resolve with different numbers of planes +- bifrost: Lower usub_borrow +- bifrost: Simplify derivatives a bit +- bifrost: Implement fine and coarse derivatives +- bifrost: Handle nir_op_frexp* and nir_op_ldexp +- bifrost: Constant fold after lower_explicit_io +- panvk: Stop advertising Vulkan 1.1 +- panvk: Make panvk_image derive from vk_image +- panvk: Make panvk_image_view derive from vk_image_view +- panvk: Skip ZS setup if there is no depth/stencil attachment +- panvk: Rework texture, sampler, and image binding index calculation +- panvk: Use the correct integer border colors +- vulkan: Add a vk_shader_module_to_nir() helper +- anv: Use vk_shader_module_to_nir() +- panvk: Use vk_shader_module +- panvk: Use vk_shader_module_to_nir() +- panvk: Require 16B alignment for UBOs +- panvk: Fix SSBO buffer offsets +- panvk: Implement VK_EXT_vertex_attribute_divisor +- vulkan: Add a common vk_framebuffer struct +- anv: Convert to vk_framebuffer +- vulkan: Add a common vk_render_pass struct +- vulkan: Add a common CmdBegin/EndRederPass implementation +- vulkan: Add helpers for getting rendering info from a renderpass +- vulkan/render_pass: Provide self-dependeny information +- vulkan/render_pass: Support fragment shading rate +- vulkan/render_pass: Add an optimization for UNDEFINED+LOAD_OP_CLEAR +- vulkan/framebuffer: Add a flags field +- anv: Fix handling of null depth/stencil attachments with dynamic rendering +- anv: Better null surface state size for dynamic rendering +- anv/pass: Make unused color attachments VK_ATTACHMENT_UNUSED +- anv: Stop treating color input attachments specially +- anv/pipeline: Stop pretending we're the validator +- anv: Drop pipeline pass/subpass in favor of rendering_info +- anv: Convert to 100% dynamic rendering +- docs: Add the start of Vulkan runtime docs +- docs: Add high-level documentation for Vulkan render passes +- intel/guardband: Take min/max instead of total size +- anv: Calculate the real guardband based on render area +- anv: Move viewport/scissor emit to genX_cmd_buffer.c +- anv: Include scissors in viewport calculations +- panvk: Convert to the common sync/submit framework +- panvk: Re-arrange GetPhysicalDeviceFeatures2 +- panvk: Add a 1.3 features struct +- panvk: Re-arrange GetPhysicalDeviceProperties2 +- panvk: Move core properties into their respective core structs +- panvk: Implement VK_KHR_synchronization2 +- panvk: Implement VK_KHR_copy_commands2 +- panvk: Drop BindImage/BufferMemory +- panvk: Drop QueueBindSparse +- panvk: Only implement Get*MemoryRequirements2 +- anv: Use layerCount for clears and transitions in BeginRendering +- vulkan: Add a 2 wrapper for vkGetPhysicalDeviceQueueFamilyProperties +- anv: Drop GetPhysicalDeviceQueueFamilyProperties +- radv: Drop GetPhysicalDeviceQueueFamilyProperties +- turnip: Drop tu_legacy.c +- v3dv: Drop GetPhysicalDeviceQueueFamilyProperties +- panvk: Drop GetPhysicalDeviceQueueFamilyProperties +- lavapipe: Use VK_OUTARRAY for GetPhysicalDeviceQueueFamilyProperties[2] +- lavapipe: Drop GetPhysicalDeviceQueueFamilyProperties +- vulkan/cmd_queue: Add a vk_cmd_queue_execute() helper +- vulkan/cmd_queue: Generate enqueue_if_not_primary entrypoints +- vulkan/cmd_queue: Auto-generate more vk_cmd_enqueue_unless_primary_Cmd* +- vulkan/runtime: Add emulated secondary command buffer support +- panvk: Hook up emulated secondary command buffers +- spirv: Properly mangle generic pointers +- nir/print: Add support for generic pointers +- intel/nir: Add optimizations to help OpenCL-style kernels +- intel/debug: Dump KERNEL source when INTEL_DEBUG=cs +- intel/compiler: Add code for compiling CL-style SPIR-V kernels +- intel/kernel: Implement some Intel built-in functions +- intel: Add a little OpenCL C compiler binary +- nir: Allow nir_var_mem_global variables +- spirv: Implement the function portion of the Linkage capability +- i915: Use the sin/cos lowering in nir_opt_algebraic.py +- vulkan: Add a vk_image_view_subresource_range helper +- lavapipe: Use vk_image_view +- lavapipe: Use vk_image_subresource_layer/level_count +- lavapipe: Delete render passes +- v3dv/queue: Rework multisync_free +- spirv/libclc: Add generic versions of arithmetic functions +- vulkan: Add more VU comments to justify framebuffer asserts +- vulkan/queue: Add a submit mode enum +- vulkan/queue: Rework submit thread enabling +- vulkan/queue: Rework vk_queue_submit() +- vulkan: Replace various uses of device->timeline_mode +- vulkan: Allow the driver to manually enable threaded submit +- intel/isl: Add a helper for swizzling color values +- anv: Disallow blending on swizzled formats +- anv: Generalize border color swizzles +- anv: Advertise two more formats +- util/timespec: Return overflow from timespec_add_[mn]sec() +- vulkan: Use timespec_add_nsec in vk_sync_timeline +- lavapipe: Switch to the common sync framework +- v3dv: Enable VK_EXT_debug_utils +- turnip: Enable VK_EXT_debug_utils +- lavapipe: Enable VK_EXT_debug_utils +- anv: Enable VK_EXT_debug_utils +- panvk: Enable VK_EXT_debug_report and VK_EXT_debug_utils +- lavapipe: Go back to manually signaling in lvp_AcquireNextImage2() +- iris: Account for BO offsets in iris_set_global_binding() +- iris: Handle range tracking for global bindings +- iris: Take offsets into account when mapping resources +- iris: Allow non-page-aligned userptr +- iris: Allow userptr on 1D and 2D images +- anv/formats: Relax usage checks if EXTENDED_USAGE_BIT is set +- vulkan: vk_object_base_init/finish have no unused parameters +- vulkan,docs: Document vk_object_base +- vulkan,docs: Document vk_instance +- vulkan,docs: Document vk_physical_device +- vulkan,docs: Document vk_device +- vulkan,docs: Add documentation for Vulkan dispatch +- nir: Dont set coord_components on txs +- nir/lower_int64: Fix [iu]mul_high handling +- intel/fs: Implement 16-bit [ui]mul_high +- intel/nir: Lower 8 and 16-bit bitwise unops +- iris: Don't leak scratch BOs +- vulkan/drm_syncobj: Implement WAIT_PENDING with a sync_file lookup +- v3dv: Stop directly setting vk_device::alloc +- v3dv: Put indirect compute CSD jobs in the job list +- v3dv: Don't use pthread functions on c11 mutexes +- v3dv: Destroy the device mutex on the teardown path +- v3dv: Switch to the common device lost tracking +- v3dv: Use util/os_time helpers +- v3dv: Add a condition variable for queries +- v3dv: Always wait on last_job_syncs if job->serialize +- v3dv: Switch to the common submit framework +- v3dv: Use the core version feature helpers +- v3dv: Use the core version property helpers +- v3dv: Add emulated timeline semaphore support +- iris: More gracefully fail in resource_from_user_memory +- nir/opcodes: fisfinite32 should return bool32 +- util/set: Respect found in search_or_add_pre_hashed +- nir: Lower all bit sizes of usub_borrow +- vulkan: Set signals[i].stageMask = ALL_COMMANDS for QueueSubmit2 wrapping +- spirv: Handle Op*MulExtended for non-32-bit types +- vulkan/wsi: Set the right stage flags for semaphore waits +- nir/cf: Return a cursor from nir_cf_extract as well +- gallium/u_threaded_context: Use PIPE_MAX_SHADER_SAMPLER_VIEWS for sampler_buffers +- nir: Preserve metadata if remove_dead_derefs makes no progress + +Jesse Natalie (68): + +- microsoft/compiler: Lower mul_2x32_64 +- microsoft/compiler: Only prep phis for the current function +- microsoft/compiler: Only treat tess level location as special if it's a patch constant +- microsoft/compiler: Add never-supported double ops to lower_doubles bitmask +- microsoft/compiler: It's possible to have doubles without int64 +- microsoft/compiler: Fix splitdouble struct name +- microsoft/compiler: Fix make_double and split_double to respect swizzles +- microsoft/compiler: Fix dxil_nir_lower_double_math_instr pass for vectors +- microsoft/compiler: Set dx11_1_double_extensions flag for dfma/ddiv +- microsoft/compiler: Handle b2f64 +- microsoft/compiler: Lower 64bit I/O to 32 and then run lower_pack +- microsoft/compiler: Handle I/O vars larger than a vec4 +- microsoft/compiler: Process signatures before the shader code +- microsoft/compiler: Map I/O base locations to input IDs +- microsoft/compiler: Handle structs in I/O signatures +- d3d12: Update max input, output, and varying caps +- d3d12: Use a constant define for max anisotropy +- d3d12: Use the right constant for GS varying limits +- d3d12: Cache a modifyable copy of the nir options in d3d12_screen +- d3d12: Add a driver version to the screen to be used for workarounds +- d3d12: Get OPTIONS1 +- d3d12: Add int64 support +- d3d12: Lower [de]construction of doubles via math ops into pack/unpack ops +- d3d12: Set lower full fp64 compiler options flag when needed +- d3d12: Handle structs in GS variants +- d3d12: Handle structs in TCS variants +- d3d12: ARB_gpu_shader_fp64 +- docs: Update d3d12 features +- microsoft/compiler: Handle SV_ViewportArrayIndex +- microsoft/compiler: Set flag for VP/RT array index from VS/DS +- d3d12: Enable BPTC (BC6/BC7) +- d3d12: Bind 16 scissor rects when scissor disabled +- d3d12: Fix linkage for viewport index +- d3d12: Update depth invert to deal with multi-viewport +- d3d12: Fix location compares in MSAA disable +- d3d12: Update nir varying bitmasks when linking stages +- d3d12: Don't force a GS to be added for 'flat' sysvals +- d3d12: Don't add arrayed VS outputs when next stage uses per-vertex inputs +- d3d12: When adding new output varyings, write 0s +- d3d12: Allow RGB VS inputs without an alpha channel +- d3d12: GL4.2 +- docs: Update d3d12 features +- tc: CPU storage needs to be freed with align_free +- d3d12: Fix set constant buffers +- d3d12: Fix range calculation for suballocated buffers in d3d12_bo_unmap +- d3d12: Always respect offsets when mapping a bo, not just when there's a range +- d3d12: Delete make_resource_writeable +- d3d12: Fix TBOs from suballocated buffers +- d3d12: Don't suballocate TBO buffers +- d3d12: Fix offset for buf/image copies with suballocated buffers +- d3d12: Actually suballocate and cache buffers +- d3d12: Add a buffer busy callback to the bufmgr +- d3d12: Use CPU storage in TC for buffers +- d3d12: Allow 8bit index buffer conversions by vbuf +- d3d12: Fix take_ownership semantic for constant buffers +- d3d12: When mapping a resource used in the current batch without blocking, at least flush +- d3d12: Forward wait condition from query -> result buffer +- d3d12: Move ID3D12Fence from context to screen +- d3d12: Add sampler's textures to batch bo tracking +- d3d12: Add residency info to d3d12_bo +- d3d12: Add a budget/usage callback to the screen +- d3d12: Implement residency management algorithm +- d3d12: Default newly-created resources to not-resident +- d3d12: Don't add a second dual-source output for Heaven +- driconf: Add Heaven entries for Windows .exe +- d3d12: Only force point sampling for emulated shadow samplers +- microsoft/compiler: Fill interpolation for sysval inputs to non-vertex shader +- microsoft/compiler: Unload DXIL validator library \*after* calling Release() + +Jiadong Zhu (1): + +- st/mesa: set GL_DYNAMIC_STORAGE_BIT for GL-VK interop buffers + +Jocelyn Falempe (2): + +- llvmpipe: fix color rendering on big endian. +- llvmpipe: remove unused array + +Jonathan Gray (10): + +- util: unbreak non-linux mips64 build +- util: fix u_print.cpp build on OpenBSD +- 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 +- util: fix msvc build +- intel/dev: sync ADL-S pci ids with linux +- intel/dev: add RPL-S pci ids from drm-intel-next + +Jordan Justen (13): + +- 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 +- intel/dev: Add ATS-M pci-ids +- intel/dev: Add device info for RPL-P +- vulkan/wsi/x11: Use atomic_int with sent_image_count +- drm-uapi/i915_drm.h: Update from drm-next (2022-04-28) +- iris: Fix assertion meant to only target the clear-color stride +- intel/dev: Read hwconfig from i915 +- intel_dev_info: Add --hwconfig command line parameter +- intel/dev: Add INTEL_PLATFORM_DG2_G12 +- intel/dev: Add DG2 G12 PCI IDs +- intel/dev: Enable first set of DG2 PCI IDs + +Jose Maria Casanova Crespo (1): + +- v3dv/v3d: Fix copyright holder to Raspberry Pi Ltd + +José Expósito (2): + +- egl/wayland: fix crash in dri2_initialize_wayland_drm +- egl/wayland: fix crash in dri2_initialize_wayland_swrast + +Juan A. Suarez Romero (23): + +- v3dv/ci: Update failure list +- vc4/ci: update failing piglit tests +- vc4/ci: make piglit test mandatory +- vc4: remove redundant initialization +- v3d: enable texture filtering anisotropic +- v3d: rebind sampler view if resource changed the BO +- v3dv/ci: add test to skip list +- util/disk_cache: rename MESA_GLSL_CACHE envvar +- ci: use MESA_SHADER_CACHE envvar +- radv: change MESA_GLSL_CACHE envvar reference +- v3dv: change MESA_GLSL_CACHE envvar reference +- broadcom/ci: Update flake list +- v3d: add support for on-disk shader cache +- broadcom: add on-disk cache debug option +- broadcom: add line rasterization mode to packet definition +- v3dv: add subpixel precision definition +- v3dv: implement VK_EXT_line_rasterization +- v3d: fix some leaks in cache +- v3d: do not leak BO on query begin +- ci: enable v3dv arm64 jobs +- CODEOWNERS: add Broadcom maintainers +- ci: add Broadcom CI maintainer +- mesa: unref syncobj after wait_sync + +Kai Wasserbäch (2): + +- fix(FTBFS): clover: work around removal of PointerType::getElementType() +- fix(clover): FTBFS: Added missing include for ConstantInt for LLVM 15 + +Karmjit Mahil (5): + +- pvr: Fix seg fault in vkAllocateDescriptorSets(). +- pvr: Add stricter type checking in pvr_csb_pack(). +- pvr: Add core count info and pvr_device_runtime_info. +- pvr: Add pvrsrvkm visibility test heap. +- pvr: Implement vkCreateQueryPool() and vkDestroyQueryPool(). + +Karol Herbst (1): + +- nir: fix nir_sweep for printf + +Kenneth Graunke (51): + +- iris: Make an iris_foreach_batch macro that skips unsupported batches +- anv: Increase maxUniformBufferRange to 2^30 when not using the sampler +- intel/genxml: Add missing MI_FLUSH_DW::Flush CCS field +- blorp: Assert that blorp_copy() on the blitter can handle it +- iris: Add support for flushing the blitter (hackily) +- ci/iris: Mark qbo tests as flakes +- iris: Allow IRIS_BATCH_BLITTER in iris_copy_region() +- iris: Use the hardware blitter for DRI PRIME blits +- iris: Disable PIPE_CAP_PREFER_BACK_BUFFER_REUSE +- anv: Increase maxBoundDescriptorSets to 32 +- anv: Lower bufferImageGranularity to 1 from 64 +- anv: Raise vertex input bindings and attributes limits slightly +- iris: Set MI_FLUSH_DW::PostSyncOperation correctly +- blorp: Add blorp_measure hooks to the blitter codepaths +- iris: Use more efficient binding table pointer formats on Icelake+. +- iris: Rename surface_base_address to binder_address in a few places +- intel: Limit Wa_1607854226 to Gfx12.0 only +- intel: Use 3DSTATE_BINDING_TABLE_POOL_ALLOC exclusively on Gfx11+ +- iris: Restore flagging of dirty bindings in binder_realloc +- iris: Fix MOCS for copy regions +- nir: Print divergence status of SSA values if analysis was ever run. +- intel: Add INTEL_DEBUG=noccs alias for INTEL_DEBUG=norbc +- nir: Teach nir_divergence_analysis about Intel-specific intrinsics +- intel/compiler: Implement nir_intrinsic_last_invocation +- intel/compiler: Set divergence analysis options +- intel/compiler: Convert to LCSSA and use divergence analysis. +- intel/compiler: Use nir_opt_uniform_atomics() +- intel/decoder: Fix decoder handling of binding table pool alloc on XeHP +- iris: Properly tell the decoder about inherited binder addresses +- intel/compiler: Call inst->resize_sources before setting the sources +- anv: Stop updating STATE_BASE_ADDRESS on XeHP +- intel/genxml: Add SAMPLER_STATE::Allow Low Quality LOD Calculation field +- intel/genxml: Add new "Low Quality Filter" field on Gfx12+. +- intel/genxml: Delete SAMPLER_MODE register definition on Gfx12+ +- intel/genxml: Add SAMPLER_MODE bits for enabling Small PL on Icelake +- st/mesa: Make transcode_astc also check for non-SRGB format support +- st/mesa: Transcode ASTC to BC7 (BPTC) where possible +- iris: Use IRIS_DOMAIN_DEPTH_WRITE for read only depth/stencil. +- iris: Split out an IRIS_DOMAIN_SAMPLER_READ domain from OTHER_READ +- iris: Fix UBO cache tracking for the !indirect_ubos_use_sampler case +- iris: Add an iris_is_domain_l3_coherent helper. +- iris: Add a separate PIPE_CONTROL_L3_READ_ONLY_CACHE_INVALIDATE bit +- iris: Extend the cache tracker to handle L3 flushes and invalidates +- iris: Add pre-draw flushing for stream output targets +- iris: Use cache-tracker for draw count flushing +- iris: Emit flushes for push constant source buffers +- iris: Demote DC flush to HDC flush in cache tracker +- iris: Add VF_CACHE_INVALIDATE to IRIS_DOMAIN_OTHER_WRITE flush bits +- anv: Fix INTEL_DEBUG=bat on XeHP +- iris: Add FLUSH_HDC to PIPE_CONTROL_CACHE_FLUSH_BITS +- Revert "st/mesa: Transcode ASTC to BC7 (BPTC) where possible" + +Konstantin Seurer (16): + +- radv: Move common code to seperate file +- nir,spirv: Preserve ray_query_value +- radv: Lower ray queries +- radv: Enable KHR_ray_query +- radv: Use common GetPhysicalDeviceMemoryProperties +- venus: Use trivial common entrypoints +- radv: Fully implement ray primitive culling +- radv: Advertise ray primitive culling +- radv: Replace magic constants with enum values +- radv: Remove radv_util.c +- radv: Refactor radv_tex_aniso_filter +- radv: Refactor ray tracing support checks +- radv: Fix barriers with cp dma +- radv: Enable rt primitive culling for spirv2nir +- radv: Fix lowering ignore_ray_intersection +- ac/nir: Do not set cursor in try_extract_additions + +Krunal Patel (1): + +- frontend/va: Create decoder once the max_references is updated + +Lionel Landwerlin (104): + +- anv: flush utrace before at device destroy +- anv: add dynamic rendering traces +- intel/ds: fix compilation with perfetto +- nir: change intel dss_id intrinsic to topology_id +- intel/fs: rework dss_id opcode into generic opcode +- intel/fs: add support for Eu/Thread/Lane id +- intel/nir/rt: add a new number of SIMD lanes per DSS helper +- intel/fs: name sources for A64 opcodes +- intel/fs: add support for ACCESS_ENABLE_HELPER +- intel/fs: don't set allow_sample_mask for CS intrinsics +- intel/fs: load more fields from BVH instance leafs +- intel/compiler: tracker number of ray queries in prog_data +- intel/fs: limit FS dispatch to SIMD16 when using ray queries +- intel/nir: fix shader call lowering +- intel/nir: use a single intel intrinsic to deal with ray traversal +- nir/builder: add nir_ior_imm() helper +- intel: add a new intrinsic to get the shader stage from bindless shaders +- intel/nir/rt: load bvh_level value off mem_hit structure +- intel/fs: make trivial shader complete tracing operations with missing shaders +- intel/nir: document committed argument +- intel/nir/rt: make RT manipulation helpers helper invocations ready +- intel/nir/rt: add more helpers for ray queries +- nir/lower_shader_calls: consider relocated constants as rematerializable +- intel/nir: document RT builder +- intel/fs: lower ray query intrinsics +- anv: enable ray queries +- anv: fix conditional render for vkCmdDrawIndirectByteCountEXT +- anv: update limit for maxVertexInputBindingStride +- intel/dev: provide some default values for no_hw +- nir: fix lower_memcpy +- anv: add a custom AcquireNextImage2KHR func +- anv/genxml/intel/fs: fix binding shader record entry +- anv: fix fast clear type value with external images +- intel/fs: fix total_scratch computation +- anv: fix acceleration structure descriptor copies +- anv: don't lazy allocate surface states in descriptor sets +- anv: rename host only descriptor internal flag +- anv: make a couple of descriptor function private +- anv: silence compiler warning +- anv: silence compiler warnings +- anv: fix variable shadowing +- anv: zero-out anv_batch_bo +- anv: emit timestamp & availability using the same part of CS +- anv: flush tile cache with query copy command +- intel/nir/fs: replace COMPUTE || KERNEL by gl_shader_stage_is_compute() +- intel/fs: handle inline data on OpenCL style kernels +- meson: try to find clang-cpp before going through each module +- intel/clc: allow multiple CL files to be compiled together +- intel/clc: allow producing SPIRV files +- intel/clc: specify supported extensions +- intel/clc: disable tool prior to Gfx12.5 platforms +- ci: add clang/spirv-tools/llvm-spirv packages to fedora container +- ci: enable llvm on debian-release build +- ci: enable intel-clc on some platforms +- vulkan: move EXT_tooling_info implementation to runtime +- anv: implement EXT_tooling_info +- intel/dev: default to B stepping on DG2 for offline compiler +- intel/kernel: enable groups caps +- intel/kernel: enable linkage cap +- intel/clc: add option to printout kernel prog_data +- intel/clc: compile fix +- intel/clc: fixup shared memory offsets +- intel/clc: deal with SPIRV-Tools linker new behavior +- iris: don't synchronize BO for batch decoding +- anv: allow baking of 3DSTATE_DEPTH_BOUNDS in pipeline batch +- anv: fix dynamic state emission +- anv: fix VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT state +- anv: fix color write enable interaction with color mask +- anv: use local dynamic pointer more +- anv: fix dynamic sample locations on Gen7/7.5 +- anv: don't store sample location sample count +- intel/clc: fix missing pointer write +- anv: disable preemption on 3DPRIMITIVE on gfx12 +- anv: remove unused 3DSTATE_DEPTH_BOUNDS fields +- blorp: disable depth bounds +- intel/nir: don't report progress on rayqueries if no queries +- nir/lower_shader_calls: name resume shaders +- intel/fs: fix metadata preserve on trace_ray intrinsic +- intel/fs: add a note on possible optimization of root node address +- anv: stop using old entrypoint/struct/enum names for 1.3 +- intel: fix URB programming for GT1s +- anv: allow getting the address of the beginning of the batch +- nir/divergence: handle load_global_block_intel +- intel: fixup number of threads per EU on XeHP +- anv: fix acceleration structure descriptor template writes +- anv: skip acceleration structure in binding table emission +- anv: fix clflush usage on utrace copy batch +- iris: use new kernel uAPI to compute video memory +- anv: fix invalid utrace memcpy l3 config on gfx < 11 +- anv: reset all dynamic state after secondary execution +- anv: add missing logic op set in pipeline dyn state +- Revert "anv: fix dynamic state emission" +- anv: rework sample location +- anv: never emit 3DSTATE_CPS in the pipeline batch +- anv: don't emit 3DSTATE_STREAMOUT in pipeline batch +- anv: don't emit 3DSTATE_WM in pipeline batch +- anv: don't emit 3DSTATE_BLEND_STATE_POINTERS in pipeline batch +- anv: don't emit 3DSTATE_DEPTH_BOUNDS in pipeline batch +- anv: don't emit 3DSTATE_VF_TOPOLOGY in pipeline batch +- anv: remove static_state_mask +- nir/cf: return cursor after insertion of cf_list +- nir/lower_shader_calls: don't use nop instructions as cursors +- nir/lower_shader_calls: don't insert code after break/continue +- nir/lower_shader_calls: put inserted instructions into a dummy block + +Louis-Francis Ratté-Boulianne (5): + +- vulkan/runtime: Add a level field to vk_command_buffer +- vulkan/cmd_queue: Add an initializer for the vk_cmd_queue object +- vulkan/runtime: Add a vk_cmd_queue object to vk_command_buffer +- dzn: Add a debug flag to enable D3D12 debug layer +- dzn: Add CI target for vulkan driver + +M Henning (2): + +- nouveau: Handle unaligned tlsBase during spills +- nouveau: Fix out-of-bounds access in AlgebraicOpt + +Marcin Ślusarz (20): + +- intel/compiler: fix array & struct IO lowering in mesh shaders +- anv: don't set color state when input state was requested +- intel/compiler: remove redundant code from fs_visitor::run_* +- anv: cleanup begin_subpass & end_subpass +- intel/compiler: ignore per-primitive attrs when calculating flat input mask +- intel/compiler: optimize flat inputs mask calculation +- intel/compiler: shift mesh urb read/write window when offset is too large +- intel/compiler: inject MUE initialization +- intel/compiler: handle ViewportIndex, PrimitiveID and Layer in MUE setup +- intel/compiler: mark some variables as per-primitive in FS if they come from MS +- anv: set number of viewports in clip state (mesh) +- anv: include Primitive Header in mesh shader per-primitive output +- anv: fix push constant lowering for task/mesh +- anv: initialize 3DMESH_1D.ExtendedParameter0 when ExtendedParameter0Present +- nir: remove gl_PrimitiveID output from MS when it's not used in FS +- anv: invalidate all metadata in anv_nir_lower_ubo_loads +- intel/compiler: invalidate all metadata in brw_nir_lower_intersection_shader +- intel/compiler: invalidate metadata in brw_nir_initialize_mue +- anv: update task/mesh distribution with the recommended values +- anv: disable streamout before emitting mesh shading state + +Marek Olšák (61): + +- gallium: add PIPE_RESOURCE_FLAG_UNMAPPABLE for shared unmappable buffers +- ci: bump piglit version +- gallivm: fix build with LLVM 15 +- winsys/radeon: fix a hang due to introducing spi_cu_en +- amd: remove the _UMD suffix from register definitions +- amd: add a workaround for an SQ perf counter bug +- ac: add a gfx9 workaround for high priority compute +- ac/gpu_info: print units for some radeon_info fields +- ac/surface: don't set the display flag for 1D textures +- ac/llvm: remove unused function dpp_row_sl +- winsys/amdgpu: fix a warning of defining radeon_screen_create_t twice +- radeonsi: add assertions to check if buffer_map/texture_map calls are valid +- radeonsi: always set FLUSH_ON_BINNING_TRANSITION +- radeonsi: program SQ_THREAD_TRACE_CTRL.AUTO_FLUSH_MODE on gfx10.3 +- radeonsi: change ACCUM_ISOLINE to 12 +- radeonsi: document an unexpected behavior of PS_DONE +- radeonsi: reduce the max TBO/SSBO binding size to 512 MB to help 32-bit builds +- radeonsi: more fixes for si_buffer_from_winsys_buffer for GL-VK interop +- radeonsi: don't map buffers that VK made unmappable +- radeonsi: replace SI_RESOURCE_FLAG_UNMAPPABLE with PIPE_RESOURCE_FLAG_UNMAPPABLE +- radeonsi: remove bit gaps in SI_RESOURCE_FLAG_* +- radeonsi: increase the tesselation factor ring size +- radeonsi: fix the unaligned clear_buffer fallback with TC +- ac,radeonsi: rework and optimize how TMPRING_SIZE is set +- radeonsi: apply the LLVM discard bug workaround to LLVM 13 only +- ac/surface/tests: fix missing NUM_PKRS extraction in test_modifier +- ac/surface: add more elements to meta equations because HTILE can use them +- radeonsi: use SET_SH_REG_INDEX with index=3 for registers containing CU_EN +- ac/llvm: replace structured by vindex != NULL in ac_build_tbuffer_store +- ac/llvm: replace structured by vindex != NULL in ac_build_buffer_store_common +- radeonsi: move Arcturus code outside the gfx9 branch +- ac: update shadowed registers +- ac: set correct cache size per TCC for Yellow Carp +- amd: add support for gfx1036 and gfx1037 chips +- amd: update addrlib +- radeonsi: fix broken VK-GL buffer interop +- nir: validate write_mask for all intrinsics that have it +- nir: fix nir_io_semantics::gs_streams in nir_lower_io_to_scalar +- nir: add transform feedback info into nir_intrinsic_store_output +- nir: add shader_info::xfb_strides +- nir: scalarize transform feedback info in nir_lower_io_to_scalar +- nir: add nir_io_semantics::no_varying, no_sysval_output, and helpers +- nir: add nir_lower_io_passes() with new transform feedback +- nir: add nir_gather_xfb_info_from_intrinsics for lowered IO +- nir: add nir_print_xfb_info +- nir: pass nir_shader into nir_recompute_io_bases instead of func_impl +- gallium/util: add util_dump_stream_output_info +- gallium/aux: add helper nir_gather_stream_output_info +- st/mesa: do nir_lower_io() for inputs & outputs with transform feedback info +- ci: add point coord failures to d3d12 +- ac/llvm: update LLVM processor names for gfx10.3 +- ac: parse SET_SH_REG_INDEX packet +- ac: define PKT3_ATOMIC_MEM +- ac: add an environment variable that parses IBs in files +- radeonsi: fix register shadowing after the pm4 state size was decreased +- radeonsi: fix an assertion failure with register shadowing +- nir: fix an uninitialized variable valgrind warning in nir_group_loads +- ac/surface: fix an addrlib race condition on gfx9 +- winsys/amdgpu: fix a mutex deadlock when we fail to create pipe_screen +- ac/llvm: set the correct cache policy for sparse buffer loads +- radeonsi: fix a crash when failing to create a context + +Mark Janes (1): + +- Revert "intel/fs: handle interpolation modes for at_sample and at_offset too" + +Martin Roukala (né Peres) (1): + +- ci/b2c: fix the generation of the IMAGE_UNDER_TEST variable + +Matt Coster (2): + +- pvr: Gate offline compiler build behind -Dtools=imagination +- pvr: ci: Initial freedesktop CI integration + +Matt Turner (8): + +- intel/perf: Don't print leading space from desc_units() +- intel/perf: Deduplicate perf counters +- intel/perf: Use a function to initialize perf counters +- intel/perf: Use slimmer intel_perf_query_counter_data struct +- intel/perf: Store indices to strings rather than pointers +- intel/perf: Mark intel_perf_counter_* enums as PACKED +- intel/perf: Fix mistake in description string +- intel/perf: Destination array calculation into function + +Matti Hamalainen (1): + +- aux/trace: fix dumping of pipe_texture_target + +Melissa Wen (1): + +- broadcom/simulator: enable multisync in the simulator + +Michael Olbrich (1): + +- crocus: export GEM handle with RDWR access rights + +Michel Dänzer (3): + +- ci: Use $CI_COMMIT_BRANCH +- ci: Use $CI_PIPELINE_SOURCE +- ci: Remove unused is-for-marge YAML anchor + +Michel Zou (4): + +- vulkan/wsi: drop unused wsi_create_win32_image +- lavapipe: set non-zero device/driver uuid +- lavapipe: fix i686 mingw build +- gallium: fix unused symbols warnings + +Mihai Preda (12): + +- radeonsi/tests: print PCI-id of GPU device under test +- radeonsi/tests: update piglit baseline on vega20 +- radeonsi/tests: update glcts baseline on vega20 +- radeonsi/tests: update piglit baseline on vega20 +- amd/ac_gpu_info: fix warning on fread unused result +- radeonsi/tests: fix file left open in radeonsi-run-tests.py +- radeonsi/tests: add flakes option to radeonsi-run-tests.py +- radeonsi/tests: update baseline and flakes on vega20 +- radeonsi: convert copy_image shader to NIR +- radeonsi: convert copy_image_1d_array shader to NIR +- radeonsi: merge the copy_image shader generators +- amd/llvm: Transition to LLVM "opaque pointers" + +Mike Blumenkrantz (538): + +- zink: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS +- llvmpipe: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS +- llvmpipe: ci updates +- zink: add VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT for query binds +- zink: add synchronization for conditional render buffer +- zink: use scanout obj when returning resource param info +- zink: export PIPE_SHADER_CAP_TGSI_CONT_SUPPORTED +- zink: fix PIPE_CAP_TGSI_BALLOT export conditional +- zink: reject invalid draws +- zink: min/max blit region in coverage functions +- vk/sync: add asserts for timeline semaphore count matching +- gallium: add PIPE_CAP_CULL_DISTANCE_NOCOMBINE +- zink: export PIPE_CAP_CULL_DISTANCE_NOCOMBINE +- lavapipe: use util_pack_color_union() for generating clear colors +- zink: ci updates +- lavapipe: ci updates +- zink: ci updates +- zink: add Sample decorations to fragment shader inputs with sample shading +- zink: ci updates +- aux/draw: fix llvm tcs lane vec generation +- zink: anv (icl) ci updates +- zink: always set VkPipelineMultisampleStateCreateInfo::pSampleMask +- zink: ci updates +- zink: break out spirv shader dumping into separate function +- zink: make spirv_buffer_emit_word() return the word that was written +- zink: make spirv_builder_emit_exec_mode_literal() return the word for the param +- zink: store the tcs_vertices_out spirv word +- zink: store the tcs_vertices_out spirv word to the spirv_shader struct +- zink: split off CreateShaderModule into util function +- zink: store the spirv_shader to the zink_shader struct for generated tcs +- zink: add a tcs shader key +- zink: move pipeline tcs patch_vertices value to tcs shader key +- zink: implement generated tcs variants using spirv shortcut +- zink: ci updates +- zink: track internal conditional render state +- zink: always terminate conditional render when flushing a batch +- zink: restart conditional render when crossing batch boundary +- zink: activate conditional render for compute dispatch when necessary +- zink: ci updates +- zink: map R8G8B8X8_SRGB -> R8G8B8A8_SRGB +- zink: export PIPE_SHADER_CAP_INDIRECT_TEMP_ADDR +- zink: always invalidate streamout counter buffer if not resuming +- zink: ci updates +- zink: radv ci updates +- zink: radv ci updates +- zink: prune ci lists +- zink: allow null descriptor set layouts +- zink: remove zink_descriptor_util_init_null_set() +- zink: ci updates +- zink: add a flake channel +- lavapipe: EXT_depth_clip_control +- features: VK_EXT_depth_clip_control for lavapipe +- zink: update descriptor refs after starting renderpass +- zink: fix typo for image descriptor rebinds +- zink: add layout to sampler descriptor hash +- zink: skip extra descriptor lookups for images during barrier updates +- zink: set shader key size to 0 for non-generated tcs +- 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 +- nir/lower_psiz: create the store instruction more accurately +- nir/lower_psiz_mov: stop clobbering existing exports +- zink: update psiz handling to fix xfb output +- glx/drisw: handle GL_RESET_NOTIFICATION_STRATEGY +- zink: use VK_EXT_depth_clip_control when available +- zink: restrict clear flushing on sampler/image bind to compute binds +- zink: directly create surfaces for shader images +- zink: clamp 3d/array shader images to lower dimensionality using layer counts +- zink: more accurately clamp 3d fb surfaces to corresponding 2d target +- zink: add layer asserts for 3d imageview creation +- zink: remove a bunch of flakes +- zink: emit Aliased decorations for any image that isn't explicitly marked restrict +- zink: switch to u_foreach_bit for ntv image access decorations +- zink: remove loop from generated tcs +- zink: update query states before starting renderpass during draw +- zink: split out query suspending into util function +- zink: split primitives generated queries if xfb/gs states change +- zink: ci updates +- gallivm: fix debug prints for halfs +- gallivm: avoid division by zero when computing cube face +- lavapipe: heap-allocate rendering_state struct +- lavapipe: scan shaders for image/ssbo access and generate per-stage masks +- lavapipe: accurately set image/ssbo access based on shader usage +- zink: always update shader variants when rebinding a gfx program +- zink: add function for refcounting zink_program structs +- 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: hide descriptor debug behind #ifdef +- Revert "lavapipe: accurately set image/ssbo access based on shader usage" +- zink: run nir_lower_phis_to_scalar in optimization loop +- zink: fix 64bit float shader ops +- zink: ci updates +- llvmpipe: fix debug print iterating in set_framebuffer_state +- lavapipe: clamp clear attachments rects +- llvmpipe: clamp surface clear geometry +- lavapipe: update multisample state after blend state +- lavapipe: fix pipeline creation for blend and zs states +- aux/trace: more screen methods +- aux/trace: rzalloc the context struct +- aux/trace: dump clear colors as uints +- aux/trace: dump clear_texture colors +- aux/trace: dump more rasterizer state members +- aux/cso: stop tracing during cso_unbind() +- ci: add another stoney flake +- ci: more stoney flakes +- zink: use 64bit mask for xfb analysis +- zink: store the correct number of components for xfb packing outputs +- zink: correctly set xfb packed output offsets +- zink: fix xfb analysis variable finding for arrays +- zink: handle remaining xfb corner cases during analysis +- zink: store shader to ntv_context +- zink: handle spirv xfb insanity +- glsl: store OES/EXT point_size extension enablement to shader struct +- mesa/st: add a gl_program struct flag to skip psiz exports for xfb +- mesa/st: conditionally add pointsize outputs to ES tess/geom shaders +- nir/gather_info: check copy_deref instrs for writing outputs +- mesa/st: only add pointsize output if it doesn't exceed max component limit +- mesa: always set PointSizeEnabled for API_OPENGLES2 +- mesa/st: simplify pointsize shader update conditional +- mesa/st: simplify pointsize precompile conditional +- mesa/st: precompile with API pointsize only if the shader doesn't have pointsize +- mesa/st: count FF shaders as needing psiz export for precompile +- mesa/st: check max output components for adding pointsize during precompile +- mesa/st: make export_point_size shader key clobber existing psiz +- zink: update radv fails +- zink: add another radv fail +- zink: lower dmod on AMD hardware +- lavapipe: add the full list of cts fails +- lavapipe: use the correct value for dynamic render resolve attachment indexing +- lavapipe: skip format checks for EXTENDED_USAGE +- lavapipe: ci updates +- lavapipe: run nir_opt_copy_prop_vars during optimization loop +- lavapipe: ci updates +- llvmpipe: fix occlusion queries with early depth test +- anv: fix xfb usage with rasterizer discard +- anv: fix CmdSetColorWriteEnableEXT for maximum rts +- anv: fix some dynamic rasterization discard cases in pipeline construction +- lavapipe: make device limits a physical device struct +- lavapipe: validate per-stage descriptor limits when creating pipeline layouts +- lavapipe: more descriptor validation +- zink: remove flake +- zink: anv ci updates +- zink: assert that the dynamic state array size is big enough +- zink: move dynamic state2 pipeline state to substruct in pipeline state +- zink: use dynamic rasterizer_discard state when possible +- lavapipe: always clone shader nir for shader states +- lavapipe: ref/unref pipeline layouts for pipeline creation +- lavapipe: implement vkGetDevice*MemoryRequirements +- lavapipe: set maxBufferSize for maintenance4 +- lavapipe: maintenance4 +- gallivm: implement nir_op_pack_32_4x8_split +- lavapipe: KHR_shader_integer_dot_product +- zink: add nir_var_function_temp support to ntv +- zink: add DOUBLE glsl type for streamout export +- zink: fix unreachable() location in ntv streamout info +- zink: export indirect io pipe caps +- lavapipe: strip unneeded scoped barriers +- llvmpipe: set nir_shader_compiler_options::use_scoped_barrier +- lavapipe: enable KHR_memory_model support +- gallium: add flag to draw info to indicate converted draws +- lavapipe: use VkFormatFeatureFlags2 in format detection +- lavapipe: KHR_format_feature_flags2 +- llvmpipe: add handling for zeroing cs shared memory +- lavapipe: KHR_zero_initialize_workgroup_memory +- lavapipe: EXT_pipeline_creation_feedback +- lavapipe: EXT_pipeline_creation_cache_control +- gallivm: fix oob image detection for cube/1dArray/2dArray/cubeArray +- lavapipe: EXT_image_robustness +- zink: flag sample locations for re-set on batch flush +- zink: force-add usage when adding last-ref tracking +- zink: only update usage on buffer rebind if rebinds occurred +- zink: set vbo resource usage on bind +- zink: add some nice docs for batch usage and tracking +- features: fix some vk extension listings +- Revert "features: fix some vk extension listings" +- lavapipe: store number of immutable samplers to pipeline layout +- lavapipe: break out resolves into separate functions +- lavapipe: zalloc lvp_image_view structs +- zink: store vertices statistics query to context +- zink: handle conversion for vertices statistics query with LINE_LOOP draws +- nir/lower_is_helper_invocation: create load_helper_invocation instr with bitsize=1 +- lavapipe: run some shader passes for demote handling +- lavapipe: EXT_shader_demote_to_helper_invocation +- lavapipe: extend demote->discard pass to handle terminate +- lavapipe: KHR_shader_terminate_invocation +- lavapipe: don't emit compute states during draw +- lavapipe: zalloc pipeline layout structs +- lavapipe: add a stream uploader to rendering_state and queue objects +- lavapipe: save pipeline stages that push constants are active on +- lavapipe: use stream uploader for push constant upload +- lavapipe: remove unused struct member +- lavapipe: implement EXT_inline_uniform_block +- lavapipe: EXT_inline_uniform_block +- llvmpipe: fix gl_NumSubgroups +- llvmpipe: fix subgroup id construction +- llvmpipe: fix variable naming insanity in cs generator +- lavapipe: EXT_subgroup_size_control +- lavapipe: add a GetPhysicalDeviceToolPropertiesEXT stub +- lavapipe 1.3 +- docs: update lavapipe features and relnotes +- lavapipe: fix typo in set_event execution +- lavapipe: add sync2 cmdbuf method implementations +- lavapipe: add QueueSubmit2 implementation +- lavapipe: KHR_synchronization2 +- zink: hook up EXT_color_write_enable +- zink: force disable rasterization discard if primgen query is active +- zink: start a unified driver workarounds struct +- zink: disable color_write_enable on ANV +- zink: use EXT_color_write_enable when possible +- zink: add an alternate path for EXT_color_write_enable usage +- zink: use EXT_color_write_enable to mask out primgen+rasterizer_discard output +- zink: use the right query type for primitives generated +- zink: ci updates +- zink: ci updates +- zink: create compute pipeline after updating shader variants +- zink: use the current compute shader, not the base one +- zink: add RADV to list of broken drivers for EXT_color_write_enable +- draw: fix gs vertex stream counting +- draw: fix nonzero stream primitives generated queries +- nir/lower_tex: add txp lowering option for arrays +- zink: lower txp for cube and ms textures +- zink: lower txp for array textures +- zink: update radv ci +- zink: fix up color_write_enable workaround +- zink: flush clears before toggling color write +- zink: update anv icl ci list +- mesa/st: add special casing for pointsize constant updating during validate +- zink: update radv fails +- zink: add anv cts skips from waiver +- zink: add another radv flake +- zink: use z24_in_z32f support and radv ci updates +- radv: fix CmdSetColorWriteEnableEXT(attachmentCount==MAX_RTS) +- zink: add a couple flakes +- lavapipe: run optimize loop before krangling pipeline layout +- zink: run piglit's gpu profile +- vulkan: update spec to 1.3.210 +- lavapipe: EXT_primitives_generated_query +- lavapipe: support KHR_pipeline_library +- lavapipe: implement EXT_graphics_pipeline_library +- lavapipe: display EXT_graphics_pipeline_library +- doc: update extensions for lavapipe +- zink: fix error logging for 2d z/s checking +- zink: break out CmdSetColorWriteEnableEXT to util function +- zink: remove anv workaround for broken color writes +- zink: update radv baseline +- zink: more radv fails +- zink: add in radv passes to baseline +- intel/isl: fix 2d view of 3d textures +- crocus: assert that 3d samplerview base_array_layer is zero +- iris: assert that samplerview base_array_layer is zero for hw < skl +- vulkan: update more headers to 1.3.210 +- lavapipe: fix shader indexing of sampler arrays with const array index +- lavapipe: fix xfb availability query copying +- lavapipe: allow timeline progress in GetSemaphoreCounterValue +- lavapipe: enforce monotonic timeline incrementing +- zink: force push descriptors cache update if hashing detects changes +- llvmpipe: handle sampling from 2d views of 3d images +- zink: add driver workaround for broken EXT_depth_clip_control +- mesa/st: rework atom flagging when pointsize changes +- mesa/st: always flag last vertex stage constants for upload on pointsize change +- mesa/st: rework pointsize constant uploads +- mesa/st: don't add pointsize to ES programs if it already exists +- zink: update radv ci baseline +- zink: remove radv cwrite driver workaround +- lavapipe: add an env var to enable poisoning memory allocations +- zink: set LVP_POISON_MEMORY for ci +- lavapipe: set LVP_POISON_MEMORY for ci +- aux/trace: dump format in set_shader_images +- vulkan: spec update to 1.3.211 +- vulkan: check 3D image type for VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT +- lavapipe: expose VK_EXT_image_2d_view_of_3d +- anv: expose VK_EXT_image_2d_view_of_3d +- docs: update features for VK_EXT_image_2d_view_of_3d +- zink: fix barrier generation for ssbo descriptors +- zink: only uncommit sparse pages that have been committed +- zink: merge stencil test case for draw-time dynamic state +- zink: always set stencil dynamic states before draw +- zink: set Geometry capability for fs if geometry inputs are read +- zink: handle 1bit xor as OpLogicalNotEqual +- zink: clamp min viewport width to 1 +- zink: apply fb attachment layout to dummy attachments +- zink: convert all 64bit vertex attribs to 32bit +- zink: fix max geometry input component advertising +- zink: prune shader i/o +- zink: unset resource layout+access when doing storage setup +- zink: use EXT_image_2d_view_of_3d +- zink: refactor zink_descriptor_util_image_layout_eval +- zink: remove commented code +- zink: further simplify zs case for zink_descriptor_util_image_layout_eval +- zink: add a renderpass flag for mixed zs layout +- zink: add a ctx param to zink_descriptor_util_image_layout_eval +- zink: delete some code in get_layout_for_binding() +- zink: use store op NONE when necessary for depth usage +- zink: update samplerview layouts for zs attachments during renderpass prep +- zink: use GENERAL layout for mixed zs fb attachments +- zink: switch warn_missing_feature to mesa_logw +- zink: add a param to warn_missing_feature() macro +- zink: fix warning text in missing feature macro +- zink: rework missing feature warnings +- zink: run shader optimize loop during initial create +- zink: prune shader i/o more aggressively +- zink: use local variable more consistently in producer shader i/o assign +- zink: use local variable in consumer shader i/o assign to match producer usage +- zink: simplify shader i/o assignment +- st/manager: update framebuffer size if texture has been resized +- zink: move flush queue init down a little further +- zink: put screen param into flush queue global data +- zink: move update_framebuffer_state() higher up in file +- zink: move blit src/dst decls up in function +- zink: change early returns in zink_blit to gotos +- zink: use two submits for every queue submit +- zink: add VK_KHR_swapchain_mutable_format +- zink: add fail logging for drmPrimeFDToHandle +- zink: split surface creation more to allow disabling caching +- zink: move drirc handling up +- zink: pass index to unbind_fb_surface +- zink: move variable decl up in unbind_fb_surface +- zink: check whether clear is enabled before applying in unbind +- zink: add kopper api +- zink: it's kopperin' time +- zink: export PIPE_CAP_DEVICE_RESET_STATUS_QUERY +- driconf: add override for Xwayland +- zink: handle zombie swapchains +- zink: ci fixup +- zink: update ci list +- radv: improve failure logging for amdgpu on init +- zink: rename a variable +- zink: add a gently mangled version of the d3d12 cubemap -> array compiler pass +- zink: support nir_op_imod +- zink: specify struct member name when copying inline uniforms for gfx variants +- zink: handle shader key variants that have nonseamless cubemaps +- zink: set nonseamless hint for sampler states +- zink: create an array view for all cube samplerviews +- zink: handle nonseamless cube sampler binding +- zink: run the cubemap -> array compiler pass if the shader key is set +- zink: export PIPE_CAP_SEAMLESS_CUBE_MAP_PER_TEXTURE +- zink: ci updates +- egl: implement more hooks for swrast +- zink: handle deferred swapchain resource flushing +- zink: only apply swapchain behavior in flush_resource for swapchain images +- zink: handle swapchain readbacks when a present is pending +- kopper: add a dmabuf-free image interface for use with sw drivers +- zink: set nir_shader_compiler_options::has_txs +- nir/lower_tex: avoid adding invalid LOD to RECT textures +- zink: allow lod for RECT sampler types +- zink: adds refs to user index buffers when tc is not active +- lavapipe: KHR_swapchain_mutable_format +- zink: add error logging for SRGB framebuffer without KHR_swapchain_mutable_format +- zink: ci updates +- docs: update features for lavapipe +- mesa: add a bool indicating when pointsize == 1.0 +- nir/lower_point_size_mov: fix check for overwriting existing pointsize +- mesa/st: declare added pointsize var as hidden +- mesa/st: always inject a 1.0 pointsize for vertex stages +- mesa/st: also add pointsize to fixedfunction vertex shaders as needed +- mesa/st: only use constant upload pointsize variants if pointsize != 1.0 +- mesa/st: only flag pointsize constant uploads if they're needed +- mesa/st: don't precompile the pointsize upload variant anymore +- mesa/st: simplify st_can_add_pointsize_to_program iterator +- zink: handle SUBPASS_MS in ntv +- zink: handle multisampled fbfetch +- zink: don't emit SpvCapabilityStorageImageMultisample for fbfetch +- zink: only trigger deferred present barrier if swapchain has acquired +- zink: unset deferred present barrier on flush +- zink: only get swapchain present semaphore on batch flush after acquire +- zink: only get swapchain present semaphore on batch flush if not presented +- zink: clamp out partial texels when creating bufferviews +- zink: bitcast InterpolateAtOffset offset to fvec +- zink: hook up sync2 extension +- zink: add handling for !sync2 in renderpass dependencies +- zink: don't rely on implicit access for generated barriers +- zink: don't generate VK_ACCESS_SHADER_READ_BIT barrier for vertex inputs +- zink/kopper: don't use generated include in kopper interface +- ci: disable v3dv arm64 jobs +- mesa: set PointSizeIsOne on context creation +- mesa/st: fix pointsize adding check +- mesa/st: handle copy_deref cases for adding pointsize +- nir/lower_point_size_mov: handle case where gl_Position isn't written +- mesa/st: handle adding pointsize when gl_Position is never written +- zink: ci updates +- zink: clamp cube size queries to 2 return components +- zink only use zs-specific layout for zs attachments +- zink: remove compiled conditional for lavapipe usage +- zink: add a self-dependency for fbfetch renderpasses +- zink: rework texture_barrier hook +- zink: force texture barriers when performing in-renderpass clears +- zink: only do swapchain update during fb setup if swapchain is active +- zink: update radv ci baseline +- zink: reorganize radv ci baseline +- zink: update radv piglit baseline +- zink: add issue notes for remaining radv fails +- zink: refactor copy_region path in zink_blit to util function +- zink: try copy region first for non-resolve blits +- zink: prune unused st-injected pointsize exports +- zink: handle 0 ubos and 0 ssbos in pipeline layout +- zink: create pipeline layout if only bindless descriptor set is used +- radv: set read/write without format flags for supported texel buffers +- zink: finish up radv piglit baseline updates +- features: mark off ARB_seamless_cubemap_per_texture for zink +- kopper: print better error message if loader not detected +- egl: don't make LIBGL_ALWAYS_SOFTWARE and MESA_LOADER_DRIVER_OVERRIDE=zink exclusive +- zink: ZINK_USE_LAVAPIPE -> LIBGL_ALWAYS_SOFTWARE +- aux/trace: clean up some zink+lavapipe tracing awfulness +- zink: rework choose_pdev to (finally) be competent +- zink: use the calculated last struct member idx for ssbo size in ntv +- zink: avoid creating ssbo variable types with multiple runtime arrays +- zink: set optimal tiling on swapchain images +- nir/lower_tex: fix rect queries with lower_rect set +- mesa/st: set normalized coords for RECT samplers if rects are unsupported +- zink: remove tcs patch slot map +- zink: reject resource creation if format features don't match attachment +- zink: use mixed zs renderpass for depth read/write +- zink: unconditionally set line width on rasterizer state change +- zink: support restart with PIPE_PRIM_LINES_ADJACENCY if ext is available +- zink: fix extended restart prim types without dynamic state2 +- zink: make a kopper debug print into an error +- zink: rework zink_kopper_update() assert +- zink: set VK_QUERY_RESULT_WAIT_BIT when copying to qbo +- zink: fix synchronization when drawing from streamout +- zink: fix xfb counter buffer barriers +- zink: remove xfb_barrier flag +- zink: handle device-local unsynchronized maps +- util/draw: fix map size of indirect buffer in util_draw_indirect_read +- util/draw: handle draw_count=0 when reading indirect parameters +- util/draw: fix indirect draw count readback +- zink: move the kopper present fence to the displaytarget object +- wgl: support GL 4.6 +- zink: fix tcs control barriers for use without vk memory model +- zink: fix semantics mask for compute control barriers +- zink: add synchronization for buffer clears +- mesa/st: clamp GL_RENDERBUFFER to GL_TEXTURE_2D for sparse queries +- glsl/nir: set new_style_shadow for sparse tex ops as necessary +- zink: fix group memory barrier emission +- vulkan: bump layer api versions to current vk header version +- kopper: always fetch and store drawable info +- kopper: move drawable geometry updating up in function +- kopper: store whether screen has dmabuf support +- kopper: copy a bunch of code for texture_from_pixmap +- kopper: add DISPLAY_TARGET bind for depth buffer +- zink: fix/improve swapchain surface info updating +- zink: fix up swapchain depth buffer geometry during fb update +- zink: ci update +- drisw: remove dead code +- zink: add a util function for finding swapchain resource +- zink: flag swapchains when updating fails +- zink: handle dead swapchains in acquire +- zink: unset image layout when killing swapchain +- zink: rework swapchain object check for acquires +- zink: fix return for zink_kopper_acquire +- zink: handle swapchain acquire failures more directly +- zink: flag swapchain resources as swapchains +- zink/kopper: add a mechanism for checking swapchain status +- kopper: add some error logging for pixmap->texture failure +- kopper: check for modifiers to use modifier functionality +- zink/kopper: add a function for determining if running on software +- kopper: check whether zink is using sw +- kopper: rename a confusing variable +- kopper: implement texture-from-pixmap for software (non-dmabuf) +- zink: fix dmabuf plane returns +- zink: export fd info for all 2d images +- zink: ignore KMS handle types +- zink: remove drm_fd +- llvmpipe: disable statistic queries during draw if queries are disabled +- llvmpipe: disable compute statistics queries if queries are disabled +- wgl: always set alpha on kopper windows +- wgl: don't auto-load zink before software drivers +- zink: add supported present modes to kopper displaytarget +- lavapipe: lower quad_broadcast intrinsics +- kopper: invalidate drawables when resizing textures in place +- kopper: pass the current context to dri_flush +- nir/gather_info: flag fbfetch on subpass image loads +- llvmpipe: never infer early zs tests when fbfetch is active +- lavapipe: enqueue pipeline destruction +- zink: fix null buffer/surface formats +- zink: add more image usage for null surfaces +- zink: use descriptor surfaces for notemplates ref updating +- kopper: remove unused zink include +- zink: remove unused headers/struct members/linkage +- zink: outdent some code +- zink: add a flag to indicate whether a resource is exportable +- zink: break out resource bind-adding into separate function for reuse +- zink: introduce copy contexts +- zink: create a copy context for the screen on init +- Revert "zink: export fd info for all 2d images" +- zink: always check for fb rebinds when starting renderpass +- zink: unset pipe_resource::next pointers when creating resource copies +- zink: add a bind flag to indicate a resource is exported as a dmabuf +- zink: fix conditional for modifier usage +- zink: force memory exports if dmabuf bind is specified +- zink: add a LINEAR drm modifier if rebinding to add dmabuf export +- zink: rebind resources for export as needed +- zink: create images with modifiers any time there is an import handle +- zink: pass sparse backing page offset to binding function +- zink: pass sparse bind bo offset through for texture binds +- zink: set all usage flags when querying sparse features +- zink: fix multisample conditional in sparse image query +- zink: bump number of image binds that can be batched to 50 +- zink: semi-handle 1D sparse texture rewrites for drivers that don't support them +- zink: ci regressions +- util/blitter: fix sampler restore with 0 saved samplers +- gallivm: fix ssbo oob reads +- lavapipe: fix CmdPushDescriptorSetWithTemplateKHR with refcounting +- st/draw_feedback: set constant buffer stride +- gallivm/draw: fix oob ubo reads +- llvmpipe: always set ssbo data pointers for draw +- gallivm: fix oob txf swizzling +- zink: fix up sparse texture sampling for shadow samplers +- zink: clamp out min_lod operands for explicit lod ops +- zink: fix sparse binding for arrayed textures +- zink: set sparse flag in cubemap lowering +- zink: fix sparse texture depth calcs for arrayed textures +- zink: remove implicit query resets +- zink: remove refs from shader images +- zink: reuse local res pointer in set_shader_images +- zink: simplify dumb update flagging in set_shader_images +- zink: read shader image r/w usage from incoming data struct +- zink: copy incoming shader image struct after doing updates +- zink: stop leaking shader image surfaces +- zink: fix 3d shader image miplevel calc for depth +- zink: directly reuse surface ivci when rebinding +- lavapipe: ignore depth/stencil states if attachment is not present +- lavapipe: fix pipeline handling for dynamic render zs state with pipeline library +- spirv: fix barrier scope assert +- zink: never create a sw context unless sw is requested +- zink: only reject non-blittable resource creation if it has no other binds +- zink: add separate error message for push descriptor set alloc fail +- zink: add extra validation for resource creation +- zink: remove input attachment usage when pruning surface usage +- zink: add extended usage and retry if resource creation fails +- zink: fix surface/bufferview cache comparisons +- zink: force render target usage for sampler-only resources +- zink: clamp 1D_ARRAY sparse textures to 2D as needed +- zink: handle PIPE_BUFFER sparse texture queries +- zink: fix non-dynamic vertex stride update flagging + +Mykhailo Skorokhodov (1): + +- intel/fs: Enable b2f(inot(a)) and b2i(inot(a)) optimization for Gfx12+ + +Nanley Chery (24): + +- iris: Don't fast clear with the view format +- iris: Drop format param from fast_clear_color +- iris: Drop res param from surf_state_offset_for_aux +- iris: Add and use iris_surface_state::aux_usages +- iris: Add and use use_surface_state +- iris: Add and use fill_surface_states +- iris: Inline some surface_state.cpu references +- iris: Avoid making some invalid CCS surface states +- intel/isl: Add format assertions for surfaces using CCS +- iris: Use iris_sample_with_depth_aux more often +- iris: Compute aux.possible_usages from aux.usage +- iris: Drop the iris_resource aux usage bit fields +- anv: Don't disable HiZ/MCS in anv_BindImageMemory2 +- anv: Fall back to HiZ when disabling CCS on HiZ+CCS +- anv: Add a perf warning in anv_BindImageMemory2 +- Revert "anv: Require the local heap for CCS on XeHP" +- anv: Change a parameter of the implicit layout fn +- anv: Refactor anv_image_init_from_create_info +- anv: Disable aux if the explicit modifier lacks it +- Revert "anv: Disable CCS_E for some 8/16bpp copies on TGL+" +- ci/anv: Changes from enabling 8/16bpp CCS more +- iris: Return a 64B stride for clear color plane +- intel/isl: Add a score for I915_FORMAT_MOD_4_TILED +- isl,iris: Add DG2 CCS modifier support for XeHP + +Neha Bhende (1): + +- svga: store shared_mem_size in svga_compute_shader instead of svga_context + +Oleksandr Gabrylchuk (1): + +- venus: Implement guest vram blob type. + +Omar Akkila (7): + +- venus: Implement VK_EXT_extended_dynamic_state commands +- venus: Advertise VK_EXT_extended_dynamic_state support +- lavapipe: Lift fence check into dedicated function +- ci: uprev Fossilize +- ci: uprev vkd3d-proton to v2.6 +- ci: cherry-pick deqp fix for zlib dependency +- ci: bump VK-GL-CTS to 1.3.1.1 + +Otavio Pontes (1): + +- nir: Use proper macro to set bits of variable correctly + +Paulo Zanoni (5): + +- iris: handle IRIS_MEMZONE_BINDER with a real vma_heap like the others +- iris: have a single border color pool per bufmgr +- iris: use the same VM for every context +- iris: fix register spilling on compute shaders on XeHP +- iris: fix race condition during busy tracking + +Pavel Ondračka (23): + +- r300: fix deadcode elimination in loops with breaks +- r300: fix transformation of abs modifiers with negate +- r300: use nir lowering for sin and cos on R300 and R400 +- r300: transform vs sin and cos input to [-PI,PI] range in NIR +- r300: transform fs sin and cos input to [0,1) range in NIR +- r300: only print shader statistics when compilation succeeds +- r300: use %u specifiers when printing unsigned stats values +- r300: report number of loops in shader statistics +- r300: add predicate instructions to statistics of vertex shaders +- r300: remove some dead logic in tex pair scheduling +- r300: schedule TEX instructions before OUT instructions +- r300: set PVS_LAST_VTX_SRC_INST properly to last input read +- r300: respect output_semantic_index when writing colors +- r300: don't move position output to the end when duplicating it for WPOS +- r300: optimize single write scenarios in rc_copy_output +- r300: restructure r300_vertex_shader +- r300: move r300_init_vs_outputs to r300_translate_vertex_shader +- r300: only output wpos in vertex shaders when needed +- r300: set PVS_XYZW_VALID_INST properly to last position write +- r300: don't assume position is always OUT[0] in rc_copy_output +- r300: move pointer dereference after a NULL check +- nine: check hardware support before using vertex texture +- r300: set PIPE_BIND_CONSTANT_BUFFER for const_uploader + +Pierre-Eric Pelloux-Prayer (39): + +- radeonsi: limit loop unrolling for LLVM < 13 +- gallium/dri: add missing PIPE_BIND_DRI_PRIME handling +- gallium: rename PIPE_BIND_DRI_PRIME +- radeonsi: create prime buffers as uncached +- radeonsi/blit: relax conditions to use sdma copy for prime buffers +- radeonsi: add SI_PROFILE_CLAMP_DIV_BY_ZERO +- radeonsi: use SI_PROFILE_CLAMP_DIV_BY_ZERO for viewperf +- radeonsi/drirc: use force_gl_vendor for Maya +- radeonsi: change rounding mode to round to even +- radeonsi/tests: always add the --gpu argument +- radeonsi: use 1 shader compilation thread if NIR_PRINT is used +- gallium/u_threaded: late alloc cpu_storage +- radeonsi: enable tc cpu_storage by default +- gallium/tc: warn if an app is incompatible with cpu_storage +- util/slab: add slab_zalloc +- gallium/tc: zero alloc transfers +- radeonsi: don't clear framebuffer.state before dcc decomp +- radeonsi: replace opencoded slab_zalloc +- r600: replace opencoded slab_zalloc +- zink: replace opencoded slab_zalloc +- virgl: replace opencoded slab_zalloc +- vc4: replace opencoded slab_zalloc +- v3d: replace opencoded slab_zalloc +- iris: replace opencoded slab_zalloc +- lima: replace opencoded slab_zalloc +- freedreno: replace opencoded slab_zalloc +- etnaviv: replace opencoded slab_zalloc +- d3d12: replace opencoded slab_zalloc +- crocus: replace opencoded slab_zalloc +- glsl/nir/linker: update shader_storage_blocks_write_access for SPIR-V +- glsl/nir/linker: fix shader_storage_blocks_write_access +- drirc: enable radeonsi_zerovram for Black Geyser +- docs: document useful radeonsi env variables +- radeonsi: drop LLVM global instruction selector +- ac: remove LLVM 4.0 workaround +- ac/surface: adjust gfx9.pitch[*] based on surf->blk_w +- radeonsi: don't use wave32 for GE on gfx10 if culling is used +- amd: fix ac_build_mbcnt_add in wave32 mode +- glx: set max values for pbuffer width / height + +Qiang Yu (10): + +- radeonsi: workaround Specviewperf13 Catia hang on GFX9 +- radeonsi: fix depth stencil multi sample texture blit +- glx: fix pbuffer refcount init +- glx: merge drawable release to the same function +- glx: keep native window glx drawable by driconf option +- driconf: add Abaqus configs +- util/util_vertex_state_cache: remove error check when deinit +- nir/linker: disable varying from uniform lowering by default +- lima: enable nir lower_varying_from_uniform +- nir/linker: set varying from uniform as flat + +Rajnesh Kanwal (6): + +- pvr: Implement vkCreateSampler and vkDestroySampler APIs. +- pvr: Use vk_common_GetDeviceQueue API. +- pvr: Check if the buffer/image was bound before unbinding. +- amd: Use common u_format.h implementation for vk_format_get_component_bits. +- vulkan: Move common format function to vulkan/util/vk_format.h +- pvr: Remove logic to set vk_device::alloc. + +Renato Pereyra (2): + +- venus: Increase the base sleep of vn_relax +- Revert "venus: Increase the base sleep of vn_relax" + +Rhys Perry (74): + +- aco/tests: add a bunch more building helpers +- aco/tests: implement sub-dword program inputs +- aco: don't combine fneg/fabs of different bit-size +- aco: don't apply omod/clamp of different bit-size +- aco: don't combine add/mul of different bit-size +- aco: fix neg(mul)/abs(mul) optimization with different bit-size +- aco: add test for optimizations with casts +- aco: don't encode src2 for v_writelane_b32_e64 +- radv: fix R_02881C_PA_CL_VS_OUT_CNTL with mixed cull/clip distances +- nir/validate: don't validate the GC list by default +- nir/validate: don't add instrs not present in shader to shader_gc_list +- anv: Enable nir_opt_access +- ac/nir: remove TCS nir_var_shader_out memory barrier +- radv: include disable_aniso_single_level and adjust_frag_coord_z in key +- aco: remove vcc hint from branch definitions +- aco/ra: add get_reg_phi() helper +- aco/ra: fix register allocation of branch definitions +- aco: add validate_instr_defs() +- aco: fix branch definition validation +- aco/tests: add test for branch definition RA +- aco: rework removal of jumps over branches +- aco/insert_exec_mask: fix top-level to-exact with non-global exact mask +- aco/insert_exec_mask: use get_exec_op +- aco/insert_exec_mask: optimize top-level transition to exact before demote +- aco: split and recombine unaligned sgpr inputs +- radv,aco,ac/llvm: fix indirect dispatches on the compute queue on GFX7-10 +- aco: fix fp16 opcode definitions +- aco: improve support for v_fma_mix +- aco: refactor selection of mad/fma +- aco: use v_fma_mix to combine mul/add/fma input conversions +- aco: combine add/mul as v_fma_mix into fma +- aco: apply clamp to v_fma_mix +- aco: use v_fma_mix to combine mul/add/fma output conversions +- aco/tests: add v_fma_mix tests +- nir: add load_{scalar,vector}_arg_amd and load_smem_amd intrinsics +- aco: implement load_{scalar,vector}_arg_amd and load_smem_amd +- ac/llvm: implement implement load_{scalar,vector}_arg_amd and load_smem_amd +- radv: move radv_declare_shader_args() out of shader_variant_compile() +- nir: allow bindless image/texture/sampler handles to be vectors +- ac/llvm: remove deref requirement for image fmask loads +- ac/llvm: implement nir_intrinsic_bindless_image_sparse_load +- ac/llvm: remove deref chasing for tg4 integer workaround +- ac/llvm: implement nir_tex_src_{texture,sampler}_handle +- radv,aco: lower vulkan_resource_index in NIR +- radv,aco: lower buffer descriptor loads in NIR +- radv,aco: lower texture descriptor loads in NIR +- radv,aco: lower image descriptor loads in NIR +- aco: fix RA validation of 16-bit fma_mix operands +- aco: don't use v_mad_mix on GFX9 if 16-bit denormals must be preserved +- radv: allow inline push constants in more situations +- radv: allow holes in inline push constants +- radv,aco: implement 64-bit inline push constants +- radv: increase inline push constant limit if we can inline all constants +- radv: don't require robust vectorization for nir_var_mem_global +- aco: use vcc for 64-bit vgpr addition +- aco: use saddr for global access with sgpr address +- aco: don't expand smem/mubuf global loads +- nir: add _amd global access intrinsics +- ac/llvm: implement _amd global access intrinsics +- aco: implement _amd global access intrinsics +- aco: increase global_load_params.max_const_offset_plus_one +- radv,ac/nir: lower global access to _amd global access intrinsics +- aco: remove old global access intrinsics +- nir: add load_shared2_amd and store_shared2_amd +- nir/opt_load_store_vectorize: fix broken indentation +- nir/opt_load_store_vectorize: create load_shared2_amd/store_shared2_amd +- aco: fix signedness of DS_instruction::offset0/1 +- aco: handle read2st64/write2st64 in optimizer +- aco: implement load_shared2_amd/store_shared2_amd +- ac/llvm: implement load_shared2_amd/store_shared2_amd +- radv: use load_shared2_amd/store_shared2_amd +- ac/nir: properly handle large global access constant offsets +- radv: fix clearing of TRUNC_COORD with tg4 and immutable samplers +- aco/ra: fix vgpr_limit + +Rob Clark (28): + +- freedreno/registers: Add a couple regs we need for kernel +- gallium/dri: Extend image extension to support in-fence +- android: Push in-fence-fd down to driver +- egl+libsync: Add helper to complain about invalid fence fd's +- freedreno: Update uapi header +- freedreno/drm: Add SYSPROF param +- freedreno/perfetto+fdperf: Set SYSPROF param +- gallium/dri: Add missing in_fence_fd initialization +- turnip: Don't call getenv() directly +- mesa: Fix discard_framebuffer for fbo vs winsys +- mesa: Easier shader capture for android +- freedreno/ir3: Remove unused define +- freedreno/ir3: Don't try re-swapping cat3 srcs +- freedreno/drm: Split msm backend into subdir +- freedreno/drm: Add fd_device_open() helper +- freedreno/drm: Rework bo creation path +- freedreno/drm: Add FD_BO_NOMAP hint +- freedreno/drm: Add FD_BO_SHARED hint +- freedreno/drm: Add fd_bo_upload() +- freedreno/drm: Avoid CPU_PREP ioctl if bo is idle +- freedreno/drm: Move submit_queue to base +- freedreno/drm: Move bo idx to base +- freedreno/drm: Move ring_pool slab parent to base +- freedreno/drm: Extract out "softpin" submit/ringbuffer base class +- freedreno/drm: Reorder device destroy +- freedreno/drm: Add virtio backend +- pipe-loader: Try loading freedreno for virtgpu device +- freedreno/ci: Update a306 expectations + +Rohan Garg (4): + +- anv: Refactor descriptor copy +- anv: Handle VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE for descriptor sets +- anv: Drop dead code in anv_UpdateDescriptorSets +- iris: set a default EDSC flag + +Roman Stratiienko (2): + +- panfrost: Don't crash on panfrost_bo_create() with size==0 invocation +- android: Set max platform-sdk-version to 10000 + +Sagar Ghuge (2): + +- intel/fs: Add Wa_22013689345 +- intel/fs: Add Wa_14014435656 + +Samuel Pitoiset (141): + +- radv: stop setting streamout state when a new pipeline is bound +- radv: add reference counting for descriptor set layouts +- Revert "radv: re-apply "Do not access set layout during vkCmdBindDescriptorSets."" +- radv: allow RADV_FORCE_VRS with pipeline VRS declared as dynamic +- radv: rewrite RADV_FORCE_VRS directly in NIR +- radv: do not force per-vertex VRS if there is no pixel shader +- radv: only emit the per-vertex VRS state if the pipeline forced it +- radv/ci: update CI lists for CTS 1.3.1.0 +- radv/winsys: fix initializing debug/perftest options if multiple instances +- radv: fix allocating/uploading the trap handler shader +- radv: make the trap handler shader BO resident +- radv: fix finding shaders by PC +- radv: remove useless NULL checks in vkBind{Buffer,Image}Memory2() +- radv: remove set but unused radv_buffer::shareable +- nir: add nir_intrinsic_load_vrs_rates_amd +- radv: declare a new shader argument for loading the VRS rates +- ac/llvm: implement nir_intrinsic_load_vrs_rates_amd +- aco: implement nir_intrinsic_load_vrs_rates_amd +- radv: rework RADV_FORCE_VRS to make it more dynamic +- radv: only re-emit the per-vertex VRS rates if necessary +- radv: rename RADV_FORCE_VRS_NONE to RADV_FORCE_VRS_1x1 and accept 1x1 +- radv: add RADV_FORCE_VRS_CONFIG_FILE to configure per-vertex VRS +- radv: allow applications to dynamically change RADV_FORCE_VRS +- radv: allow to force per-vertex VRS if the config file is present +- radv: enable radv_disable_aniso_single_level for The Evil Within 1&2 +- radv: allow to force per-vertex VRS in the tessellation stage +- radv: do not enable per-vertex VRS if the FS uses gl_FragCoord +- ci: upgrade to libdrm 2.4.110 +- meson: bump libdrm_amdgpu version to 2.4.110 +- include/drm-uapi: update amdgpu_drm.h for new CTX OP to set/get stable pstates +- ac: add ac_gpu_info::has_stable_pstate +- radv/winsys: add support for new CTX OP to set/get stable pstates +- radv: set profile_peak when capturing with SQTT +- radv,aco,llvm: lower adjusting vertex alpha in NIR +- radv: fix build on BSD +- radv: initialize more depth/stencil states earlier +- radv: initialize VGT_GS_OUT_PRIM_TYPE earlier +- radv: remove useless radv_blend_state::single_cb_enable field +- radv: initialize extra state for internal pipelines at one place +- radv,drirc: move RADV workarounds to 00-radv-defaults.conf +- radv: remove color exports in presence of holes +- radv: disable DCC for Fable Anniversary, Dragons Dogma, GTA IV and more +- radv,aco: do not lower nir_op_pack_{unorm,snorm}_2x16 +- nir: introduce nir_pack_{sint,uint}_2x16 instructions +- aco: implement nir_op_pack_{uint,sint}_2x16 +- ac/nir: implement nir_op_pack_{uint,sint}_2x16 +- radv/ci: skip dEQP-VK.renderpass2.depth_stencil_resolve.*_samplemask +- radv/ci: update list of expected failures +- radv/ci: remove unused files +- radv,aco,llvm: lower post shuffle vertex in NIR +- aco: always emit vk_cvt_pkrtz_f16_f32 for nir_op_pack_half_2x16_split +- radv: optimize the number of loaded components for VS inputs in NIR +- radv: fix the CS regalloc hang workaround on GFX6 and few GFX7 chips +- radv: rework the CS regalloc hang workaround +- amd: add PKT3_LOAD_SH_REG_INDEX +- radv: fix indirect dispatches on the compute queue on GFX10.3+ +- radv: stop waiting for DMA to be idle for all transfer operations +- radv: update inputs_read when lowering the view index +- radv: fix compatibility with VK_IMAGE_CREATE_EXTENDED_USAGE_BIT +- radv: remove useless check in radv_cmd_buffer_upload_data() +- radv: remove unnecessary NULL check in TrimCommandPool() +- radv: remove unnecessary check in FreeCommandBuffers() +- radv: move waiting for events to CmdWaitEvents2KHR() +- radv: stop zeroing radv_sample_locations_state in barriers +- radv: export the pipeline hash via VK_KHR_pipeline_executable_properties +- radv: remove VK_AMD_shader_info support +- radv: fix returning empty drmFormatModifierTilingFeatures +- radv/winsys: remove old comment about zerovram +- radv: only clear VRAM for app and descriptor BOs when set via drirc +- radv: fix missing destruction of the inotify thread +- radv: do not compute the cache UUID for LLVM if it's not used +- radv: enable radv_disable_aniso_single_level for DXVK/vkd3d +- radv,aco: lower color exports in NIR +- radv: lower load_sample_mask_in in NIR +- radv: lower adjusting gl_FragCoord.z for VRS in NIR +- radv: implement VK_EXT_depth_clip_control +- radv: advertise VK_EXT_depth_clip_control +- radv: remove now unused radv_nir_compiler_options::layout +- radv: fix mismatch between radv_GetPhysicalDeviceMemoryProperties*() +- radv: drop EXT or KHR suffixes for stuff promoted in Vulkan 1.3 +- radv: lower has_multiview_view_index in NIR +- radv: save/restore the stencil write mask during internal driver operations +- radv: suspend/resume queries during internal driver operations +- radv: rework the workaround that disables DCC for incompatible copies +- radv: convert the meta depth decompression path to dynamic rendering +- radv: convert the meta fast clear flush path to dynamic rendering +- radv: convert the meta blit 2d path to dynamic rendering +- radv: convert the meta resolve color FS path to dynamic rendering +- radv: convert the meta resolve depth/stencil FS path to dynamic rendering +- radv: convert the meta resolve HW path to dynamic rendering +- radv: convert the meta blit path to dynamic rendering +- radv: convert the meta clear path to dynamic rendering +- radv: remove now unused radv_cmd_buffer_{begin,end}_render_pass() +- radv: use the common vk_framebuffer +- radv: enable VK_EXT_separate_stencil_usage +- radv: fix cleaning the image view for CmdCopyImageToBuffer() +- radv: save/restore the stencil reference during internal driver operations +- radv/ci: update CI lists against CTS 1.3.1.1 +- radv: save/restore more dynamic states during internal driver operations +- radv: use radv_dynamic_state for saving/restoring meta operations +- radv: only declare dynamic states that are used by internal operations +- radv: enable VK_KHR_pipeline_library +- radv: fix dynamic raster discard with VK_EXT_depth_clip_control +- radv: add a new helper to determine if rasterization is enabled +- radv: mark all states declared dynamic at pipeline creation +- radv: do not check if VkPipelineRenderingCreateInfo is NULL +- radv: use radv_pipeline_has_ds_attachments() more +- radv: remove unused parameters in radv_get_{wave,ballot_bit}_size() +- radv: add radv_generate_pipeline_key() for common graphics/compute keys +- radv: add a new helper to initialize various type of pipelines +- radv: add radv_is_vrs_enabled() +- radv: assert that the arg is declared when used in get_scalar_arg() +- radv: lower ycbcr textures just before applying the pipeline layout +- radv: remove more references to the pipeline layout during compilation +- radv: copy the spirv module for debugging after compilation +- radv: drop the module reference in radv_can_dump_shader() +- radv: drop the module reference in radv_can_dump_shader_stats() +- radv: drop the module reference for enable_mrt_output_nan_fixup +- radv: stop passing the module to the compiler debug callback +- radv: stop relying on shader modules after SPIRV->NIR +- radv: re-order shader stages directly in radv_create_shaders() +- radv: rework pipeline and shaders creation feedback +- radv: add missing multi inclusion define to radv_shader_args.h +- radv: introduce new radv_pipeline_stage structure +- radv: replace convert_rt_stage() by vk_to_mesa_shader_stage() +- radv: store the shader sha1 to radv_pipeline_stage +- radv: drop the remaining uses of shader modules +- radv: remove unused radv_pipeline_layout::size field +- radv: add few helpers to deal with pipeline layout +- Revert "radv: Disable NGG for GS with suboptimal output vertex count." +- radv: fix initializing pipeline_key::topology for GFX9 and older +- radv: only apply enable_mrt_output_nan_fixup for 32-bit float MRTs +- aco: fix load_barycentric_at_{sample,offset} on GFX6-7 +- nir: fix marking XFB varyings as always active IO +- nir: mark XFB varyings as unmoveable to prevent them to be remapped +- radv: fix handling divisor == 0 with dynamic vertex input state +- radv: allow to disable sinking of load inputs for FS via drirc +- radv: enable radv_disable_sinking_load_input_fs for Grid Autosport +- radv: re-emit dynamic line stipple state if the primitive topology changed +- radv: disable instance packing to fix pipeline query stats +- radv: disable DCC for Senra Kagura Shinovi Versus + +Shirish S (1): + +- radeonsi: allocate protected buffer only if required + +Shmerl (1): + +- docs/features: Mark VK_KHR_ray_query in progress + +Sidney Just (6): + +- wgl: add a flag to determine if running on zink +- wgl: add zink to the list of auto-loaded drivers +- zink: support VK_KHR_win32_surface +- kopper: add win32 loader interface +- zink: support win32 wsi +- wgl: support kopper + +Simon Ser (4): + +- vulkan/wsi/wayland: switch from alpha/opaque bools to bitfield +- vulkan/wsi/wayland: introduce wsi_wl_display_add_vk_format_modifier +- vulkan/wsi/wayland: de-duplicate wsi_wl_display_add_wl_shm_format +- vulkan/wsi/wayland: ensure added formats have flags + +Stefan Dirsch (1): + +- meson: restore private requires to libdrm in dri.pc file + +Sviatoslav Peleshko (2): + +- mesa: flush bitmap caches when changing scissors or window rects state +- anv: workaround apps that assume full subgroups without specifying it + +Tales Lelo da Aparecida (1): + +- zink: validate and log errors on vulkan calls + +Tapani Pälli (9): + +- 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 +- iris: setup internal_format for memory object resources +- mesa: check for valid internalformat with glTex[Sub]Image +- ci: update various ci result files +- isl: disable mcs (and mcs+ccs) for color msaa on DG2 + +Thierry Reding (2): + +- tegra: Use private reference count for sampler views +- tegra: Use private reference count for resources + +Thomas Debesse (1): + +- gallium/clover: pass -no-opaque-pointers to Clang + +Thomas H.P. Andersen (1): + +- pvr: fix overlapping comparison + +Thong Thai (7): + +- radeonsi: add check for graphics to si_try_normal_clear +- gallium: add parameters for encoder format conversion (EFC) support +- frontends/va: add encoder format conversion (EFC) support +- frontends/va: zero-copy efc +- radeon: add EFC support to only VCN2.0 devices +- radeonsi: add option to disable EFC +- frontends/va: fix decode issues introduced by efc change + +Timothy Arceri (5): + +- glsl/nir: free GLSL IR right after we convert to NIR +- glsl: fix needs_lowering() call in varying packing pass +- glsl/st: use nir pass to lower indirect rather than GLSL IR +- nir: fix setting varying from uniform as flat +- nir: fix sorting before assigning varying driver locations + +Timur Kristóf (38): + +- compiler: Extract num_mesh_vertices_per_primitive function. +- spirv: Create PRIMITIVE_INDICES for NV_mesh_shader on-demand. +- radv: Disable IB2 on compute queues. +- radv: Don't disturb dynamic primitive topology with mesh shading. +- ac/nir/ngg: Fix mixed up primitive ID after culling. +- radv: Better exclude special MS outputs from driver location assignment. +- aco: Allow 1-byte loads and stores with load/store_buffer_amd +- aco: Fix workgroup_id.y and .z for NV_mesh_shader. +- aco: Fix multiview view index for mesh shaders. +- ac/nir: Move LDS area for primitive count to the beginning. +- ac/nir: Properly handle when mesh API workgroup size is smaller than HW. +- ac/nir: Sanitize mesh shader primitive indices using umin. +- ac/nir: Make sure to exclude special outputs from arrayed output masks. +- ac/nir: Refactor mesh shader output code to smaller functions. +- radv: Refactor mesh shader draws and add num_workgroups. +- nir: Add new variable mode for task/mesh payload. +- spirv: Use task_payload mode for generic task outputs and mesh inputs. +- aco: Add storage class for Task Shader payload. +- aco: Support task_payload with barriers, refactor allowed storage class. +- aco: Support memory modes properly with load/store_buffer_amd. +- ac/nir: Use vertex count minus 1 to determine max index in mesh shaders. +- ac/nir: Reuse existing nir_builder for emit_ms_finale. +- ac/nir: Store mesh shader API and HW workgroup size in lowering state. +- ac/nir: Fix workgroup ID in mesh shader waves other than the first. +- ac/nir: Properly invalidate mesh shader metadata. +- aco: Remove superfluous code for mesh shader workgroup ID. +- ac/nir: Extract final mesh shader output counts to a separate function. +- nir: Fix handling of NV_mesh_shader PRIMITIVE_INDICES output. +- nir: Fix lowering terminology of compute system values: "from"->"to". +- nir: Extract lower_id_to_index into a separate function. +- nir: Introduce workgroup_index and ability to lower workgroup_id to it. +- ac: Query the amdgpu MEC firmware version. +- radv: Use correct buffer offset for conditional rendering. +- radv: Disable NGG for GS with suboptimal output vertex count. +- aco: Fix VOP2 instruction format in visit_tex. +- nir: Handle out of bounds access in nir_vectorize_tess_levels. +- radv: Fix gs_vgpr_comp_cnt for NGG VS without passthrough mode. +- radv: Only use TES vertex offset 2 for triangles and quads. + +Tomeu Vizoso (21): + +- iris/ci: Enable Whiskey Lake boards by default +- ci: Allow disabling the whole of the Collabora farm +- ci: Disable jobs to the Collabora lab +- Revert "ci: Disable jobs to the Collabora lab" +- ci/freedreno: Disable a618 jobs +- ci/freedreno: Update checksum for GolfWithYourFriends trace +- ci/iris: Increase console timeout for perf jobs +- ci/freedreno: Increase console timeout for perf jobs +- ci/panfrost: Disable some jobs due to a lab failure +- Revert "ci/panfrost: Disable some jobs due to a lab failure" +- ci/freedreno: Reduce concurrency when replaying traces on a630 +- Revert "ci/freedreno: Disable a618 jobs" +- ci: Disable Link Power Management with RTL8153 +- ci: Disable Google's lab +- ci: Use CI_PROJECT_NAME instead of hardcoding 'mesa' +- ci: Allow specifying a different kernel in LAVA jobs +- ci: Add env var to add packages to install in rootfs +- ci: Add env var to add packages to install in debian/arm_build image +- ci: Allow local installations to build additional stuff into the rootfs +- ci: Move most stuff out of root .gitlab-ci.yml +- ci: Disable jobs to the Collabora lab + +Vadym Shovkoplias (4): + +- iris: Do not apply SCANOUT allocation flags for SHARED-only requests +- anv: implement EXT_depth_clip_control +- anv: fix EXT_depth_clip_control +- anv: Fix geometry flickering issue when compute and 3D passes are combined + +Victor Hermann Chiletto (1): + +- radv: always check entry count in descriptor pool when allocating + +Vinod Koul (1): + +- freedreno/registers: update dsi registers to support dsc + +Vinson Lee (1): + +- pvr: Remove duplicate variable queue_create. + +Vitalii.Lomaka (1): + +- intel/batch-decoder: Fix uninitialized scalar variables + +Xaver Hugl (1): + +- gbm: improve documentation about the lifetime of resources + +Xiaohui Gu (1): + +- iris: Mark a dirty update when vs_needs_sgvs_element value changed + +Yevhenii Kolesnikov (1): + +- nir: Remove single-source phis before opt_if_loop_last_continue + +Yiwei Zhang (23): + +- venus: init renderer_info at renderer creation (part 1) +- venus: init renderer_info at renderer creation (part 2) +- venus: no roundtrip needed for shmem backed by BLOB_MEM_HOST3D +- turnip: advertise VK_EXT_queue_family_foreign +- venus: properly destroy deferred ahb image before real image creation +- venus: deep copy format list info for deferred image creation +- venus: clean up android wsi and ahb image builder +- venus: pass necessary format list at ahb image format query +- venus: add necessary format list for ahb image creation +- venus: clean up physical device features and properties +- venus: group extensions promoted to 1.3 +- venus: update to latest venus protocol +- venus: add VK_EXT_line_rasterization support +- venus: add VK_EXT_provoking_vertex support +- venus: add VK_EXT_image_robustness support +- venus: update protocol to remove redundant decoders +- venus: let vn_android use vn_BindImageMemory2 and directly use reqs +- virgl: fake modifier plane count query support +- venus: workaround an ANGLE assumption on FORMAT_IMPLEMENTATION_DEFINED +- venus: store extension mask in renderer info +- venus: add cs helper stubs to be used by protocol +- venus: update protocol for mask helper and ignore renderer unknown pNext +- venus: prepare and feed renderer protocol info into cs + +Yogesh Mohan Marimuthu (4): + +- radeonsi: move clamp, alpha test from si_export_mrt_color() to new function +- radeonsi: prepare clamp, alpha test before mrtz prepare +- vulkan/device_select: for vulkan 1.0 use vid/did for boot_vga +- vulkan/device_select: add has_vulkan11 flag with has_pci_bus flag + +Yonggang Luo (20): + +- glx/egl: improve dri null screen related error messages. +- util: trim trailing space for files src/util/\**/* +- llvmpipe: Revise u_sse.h to remove unused _mm_shuffle_epi8 inline function +- gallium: Remove unused macro PIPE_ARCH_SSSE3 +- util: Fixes unused parameter warnings +- c11: Fixes unused parameter warnings +- meson: Add predefined macro -D__MSVCRT_VERSION__=0x0700 only in mingw environment without _UCRT +- vtn: Fixes compiling error for mingw/ucrt by using setjmp/longjmp function instead compiler builtin +- nir: Move the define of snprintf to header nir.h +- util: Should not use ASSERTED in util_thread_get_time_nano +- vulkan/microsoft: Remove \`override_options: ['cpp_std=c++latest']` option for visual studio +- ci: Improve vs2019 mesa_build.ps1 for remove the need of cmd.exe +- util: Rename pipe_debug_message to util_debug_message +- util: Rename pipe_debug_callback to util_debug_callback +- pipe: place \`struct util_debug_callback` at the proper place in p_context.h +- util: Rename pipe_debug_type to util_debug_type +- util: Rename PIPE_DEBUG_TYPE to UTIL_DEBUG_TYPE +- util: Getting u_debug.h not depends on pipe/* +- util: Add tests for u_printf.h +- util: Convert util/u_printf.cpp to util/u_printf.c + +Zoltán Böszörményi (2): + +- crocus: enable GL46 tests for HSW in ci +- crocus: Enable compat profile the same way as core profile + +jiadozhu (1): + +- radeonsi: fix crash in flush_resource when used with buffers + +shansheng.wang (1): + +- frontends/va: fix coredump as creating surface with VAConfigAttrib + +wingdeans (1): + +- r600: Fix small leak in SfnLog + +xperia64 (1): + +- wgl: Add driver_zink as a dependency of the wgl frontend -- cgit v1.2.1