1Mesa 24.0.0 Release Notes / 2024-02-01 2====================================== 3 4Mesa 24.0.0 is a new development release. People who are concerned 5with stability and reliability should stick with a previous release or 6wait for Mesa 24.0.1. 7 8Mesa 24.0.0 implements the OpenGL 4.6 API, but the version reported by 9glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / 10glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. 11Some drivers don't support all the features required in OpenGL 4.6. OpenGL 124.6 is **only** available if requested at context creation. 13Compatibility contexts may report a lower version depending on each driver. 14 15Mesa 24.0.0 implements the Vulkan 1.3 API, but the version reported by 16the apiVersion property of the VkPhysicalDeviceProperties struct 17depends on the particular driver being used. 18 19SHA256 checksum 20--------------- 21 22:: 23 24 dc7e8c077bc5884df95478263b34bdebb7e88e600689cb56fb07be2b8c304c36 mesa-24.0.0.tar.xz 25 26 27New features 28------------ 29 30- VK_EXT_image_compression_control on RADV 31- VK_EXT_device_fault on RADV 32- OpenGL 3.3 on Asahi 33- Geometry shaders on Asahi 34- GL_ARB_texture_cube_map_array on Asahi 35- GL_ARB_clip_control on Asahi 36- GL_ARB_timer_query on Asahi 37- GL_EXT_disjoint_timer_query on Asahi 38- GL_ARB_base_instance on Asahi 39- OpenGL 4.6 (up from 4.2) on d3d12 40- VK_EXT_depth_clamp_zero_one on RADV 41- GL_ARB_shader_texture_image_samples on Asahi 42- GL_ARB_indirect_parameters on Asahi 43- GL_ARB_viewport_array on Asahi 44- GL_ARB_fragment_layer_viewport on Asahi 45- GL_ARB_cull_distance on Asahi 46- GL_ARB_transform_feedback_overflow_query on Asahi 47- VK_KHR_calibrated_timestamps on RADV 48- VK_KHR_vertex_attribute_divisor on RADV 49- VK_KHR_maintenance6 on RADV 50- VK_KHR_ray_tracing_position_fetch on RADV 51- EGL_EXT_query_reset_notification_strategy 52 53 54Bug fixes 55--------- 56 57- vlc crashes when playing 1920x1080 video with Radeon RX6600 hardware acceleration and deinterlacing enabled. 58- [radeonsi] Regression: graphical artifacting on water texture in OpenGOAL 59- Assertion when creating dmabuf-compatible VkImage on Tigerlake 60- VAAPI: EFC on VCN2 produces broken H264 video and crashes the HEVC encoder 61- [AMDGPU RDNA3] Antialiasing is broken in Blender 62- MTL: vulkan cooperative matrix tests gpu hang on MTL 63- Assassin's Creed Odyssey wrong colors on Arc A770 64- The Finals fails to launch with DX12 on Intel Arc unless "force_vk_vendor" is set to -1. 65- VA-API CI tests freeze 66- radv: games render with garbage output on RX5600M through PRIME with DCC 67- radv: RGP reports for mesh shaders are confusing 68- zink crashes on nvidia 69- d3d10umd: Build failure regression with MSVC during 23.3 development cycle 70- Error during SPIR-V parsing of OpCopyLogical 71- rusticl: fails to find SPIRV-Tools headers via pkg-config under non-default prefix 72- Conservative depth output doesn't work with RADV 73- RADV: DOA-X3 (yuzu) missing hair, eyes and skybox 74- intel: Require 64KB alignment when using CCS and multiple engines 75- radv: Atlas Fallen corrupted rendering 76- r300: nir pass to lower indirect regression 77- r300: LRP present even with .lower_flrp32=true 78- 23.3.2 regression: kms_swrast_dri.so segfaults 79- Radeon: YUYV DMA BUF eglCreateImageKHR fails 80- No support for a644 81- anv: importing memory for a compressed image using modifier is hitting an assert 82- anv: importing memory for a compressed image using modifier is hitting an assert 83- anv: importing memory for a compressed image using modifier is hitting an assert 84- Large regression in \`glbench --tests context` on Intel 85- Android 14 depends on Vulkan EXT_swapchain_maintenance1, which breaks radv 86- nvk,nak: Implement shaderFloat64 87- Mesa is not compatible with Python 3.12 due to use of distutils 88- anv: glcts regression on zink 89- nir: Trivial loop not unrolling 90- Possible regression with AMD GPU with flatpak apps 91- nvk,nak: Implement VK_KHR_vulkan_memory_model 92- Compiling Mesa with X in custom prefix fails in Intel Vulkan driver 93- anv: implement recommended AUX-TT invalidation on compute/transfer queues 94- anv: implement recommended AUX-TT invalidation on compute/transfer queues 95- !26307 broke some piglit tests with rusticl on radeonsi on Navi 14 96- Compute shader with imageStore() to a swapchain image (from a display surface) produces incorrect results (Raspberry, Vulkan). 97- nvk: Implement VK_EXT_multi_draw 98- radv/aco: Crysis 2 Remastered RT reflections are blocky around the edges with ACO, renders normally with LLVM 99- radv: Major regression in main branch causing all Vulkan apps to crash on 6600M (Navi 23) 100- [23.3.0] Parallel build failure - fatal error: vtn_generator_ids.h: No such file or directory 101- crocus: Assertion failures in NIR divergence analysis 102- nak: Implement nir_op_fmulz 103- nvk,nak: Implement VK_KHR_shader_float_controls 104- 748b7f80ef1cf6a3fed9991d70230e69fef51a0e - Regression on Doom Eternal w/ RT Reflections 105- glFlush() blocks until close to GPU completion on Radeon R9 270 106- nvk: Implement VK_EXT_texel_buffer_alignment 107- rusticl: fails to find X11 headers via pkg-config under non-default prefix 108- nvk,nak: Implement VK_EXT_shader_image_atomic_int64 109- nvk,nak: Implement VK_KHR_shader_atomic_int64 110- nvk,nak: Implement VK_KHR_shader_subgroup_extended_types 111- nvk,nak: Implement shaderInt64 112- nvk: Implement VK_EXT_subgroup_size_control 113- mesa:freedreno / afuc-disasm unit test failure 114- anv: Resident Evil 2 hang 115- Mesa 23.3.0 release build fails on 22.04 LTS 116- Segfault in SDL2 game when using environment variables: \`SDL_VIDEODRIVER=wayland DRI_PRIME=1` 117- Mesa 22.3.0 SEGFAULT in nir shader creation for r600 cards on FreeBSD 118- radeonsi: merge request 26055 causes thousands of piglit failures 119- iris: INTEL_COMPUTE_CLASS causes gpu hangs on MTL platforms 120- anv: piglit tests regressed for zink 121- aco,radeonsi: GFX11 dEQP-GLES31.functional.separate_shader.random.0 fail when AMD_DEBUG=useaco 122- crash in si_update_tess_io_layout_state during _mesa_ReadPixels (radeonsi_dri, mesa 23.2.1) 123- Compilation error with current LLVM git (createLoopSinkPass) 124- [RADV] War Thunder has some grass flickering. 125- radv: satisfactory broken shader 126- RADV problem with R7 M440 in some games 127- nvk,nak: Weird fog effect in old GTA games with DXVK 128- gpu driver crashes when opening ingame map playing dead space 2023 129- [anv] Valheim water misrendering 130- radv, zink: dEQP-GLES3.functional.fbo.msaa.4_samples.depth_component16 fails on gfx9 131- Armored Core 6 (1888160) fake_sparse support 132- radv: fix sparseResidencyImage3D on GFX8 133- build still broken on Slackware 15.0 i586 134- mesa fails to build on arch 135- EGL/v3d: EGL applications under a X compositor doesn't work 136- nvk,nak: Implement VK_KHR_fragment_shader_barycentric 137- RADV: trunc_coord breaks ambient occlusion in Dirt Rally and other games 138- radv: Mass Effect Legendary Edition: a line going across the screen is visible in some areas with Ambient Occlusion enabled 139- LTO-related build failures 140- anv: DIRT5 gfx11_generated_draws_spv_source triggers "assert(!copy_value_is_divergent(src) || copy_value_is_divergent(dest));" 141- nvk: Implement VK_KHR_synchronization2 142- nvk: Implement bufferDeviceAddressCaptureReplay 143- nvk,nak,codegen: Implement VK_KHR_pipeline_executable_properties 144- panfrost: gbm_bo_get_offset() wrongly returns 0 for second plane of NV12 buffers 145- Sastisfactory since Update 8 needs force_vk_vendor set 146- [RADV][TONGA] - BeamNG.drive (284160) - Artifacts are present when looking at the skybox. 147- LEGO Star Wars: The Skywalker Saga graphical glitches (DXVK) on R9 380 148- [radv] Crypt not rendering properly 149- Leaks of DescriptorSet debug names 150- [Tracing flake] Missing geometry in trace\@freedreno-a630\@freedoom\@freedoom-phase2-gl-high.trace 151- Unreal Engine 5.2 virtual shadow maps have glitchy/lazy tile updates 152- RADV: Visual glitches in Unreal Engine 5.2.1 when using material with anisotropy and light channel 2 153- radv: Regression with UE5 test 154- SIGSEGV with MESA_VK_TRACE=rgp and compute only queue 155- mesa: vertex attrib regression 156- [ANV] Corruptions in Battlefield 4 157- anv regression w/ commit e488773b29d97 ("anv: Fast clear depth/stencil surface in vkCmdClearAttachments") 158- freedreno uses wrong patch size 159- ir3: dEQP-GLES31.functional.synchronization.inter_invocation.image_atomic_read_write crash on a6xx gen4 160- a630: antichamber crashes with pack_A6XX_GRAS_CL_GUARDBAND_CLIP_ADJ: Assertion 161- mesa:amd+compiler / aco_tests assembler.gfx11.vop12c_v128/gfx11 failure with llvm-17 162- ci_run_n_monitor crash because of incorrect parsing of dag 163- Zink + Venus: driver can't handle INVALID<->LINEAR! 164- anv not initializing engine correctly with INTEL_COPY_CLASS=1 165- Anv: Particles have black square artifacts on Counter Strike 2 on Skylake 166- Lords of the Fallen 2023 Red Eye mode crashing game and desktop 167- [radeonsi] [vulkan] [23.3-rc1 regression] Video output corrupted in QMplay2 with Vulkan renderer 168- [BISECTED] ac/radeon commit somehow breaks nv12 surface from HEVC decode 169- radv: Chrome crashes when ANGLE uses GPL 170- Parsec displays completely green screen with hardware decoder selected while using Mesa 23.3 and Mesa 24 171- H264 to H264 transcode output corruption with gst-vaapi 172- opencl-jpeg-encoder does not work with nouveau/rusticl, works with nouveau/clover 173- [rusticl] [radeonsi] [darktable4] [ppc64le] Darktable always renders black images despite not throwing any error 174- [R600] X-plane 11 demo (Linux Native) crashes upon launch on HD5870 and HD6970 175- [CI] .gitlab-ci/setup-test-env.sh date -d parsing fails on Alpine Linux containers 176- ANV not handling VkMutableDescriptorTypeCreateInfoEXT::pMutableDescriptorTypeLists[i] being out of range 177- Ubuntu 23.10 build error with rusticl_opencl_bindings.rs 178- Rusticl fails to build 179- tu: Wolfenstein: The New Order misrenders on a740 180- DRI_PRIME fails with ACO only radeonsi 181- ci_run_n_monitor: undetected sanity dep breaks the pipeline 182 183 184Changes 185------- 186 187Alejandro Piñeiro (10): 188 189- broadcom/qpu: use back BITFIELD64_RANGE for ANYOPMASK 190- broadcom/compiler: add v3d_pack_unnormalized_coordinates helper 191- broadcom: only support v42 and v71 192- broadcom/compiler: set properly lod query 193- broadcom/cle: remove v33 and v41 from xml definition 194- broadcom/cle: rename xml files 195- docs/v3d: update v3d documentation 196- nir: add new opcodes to map new v71 packing/conversion instructions 197- broadcom/compiler: update image store lowering to use v71 new packing/conversion instructions 198- broadcom/compiler: remove one superfluous call to nir_opt_undef 199 200Alessandro Astone (2): 201 202- asahi: Use the compat version of qsort_r 203- zink: Fix resizable BAR detection logic 204 205Alexander von Gluck IV (3): 206 207- egl/haiku: Cleanup includes; minor build fix 208- hgl: Redefine visual options in hgl_context.h 209- egl/haiku: Remove some dead cleanup code 210 211Alyssa Rosenzweig (286): 212 213- hasvk: Support builiding on non-Intel 214- crocus: Support building on non-Intel 215- meson: Add vulkan-drivers=all option 216- meson: Add gallium-drivers=all option 217- gitlab: Highlight .cl as C 218- nir,vtn: Add exported bool to nir_function 219- nir: Add nir_remove_non_exported 220- nir/builder: Add nir_call helper 221- meson: Simplify clc expression 222- meson: Require clc for asahi 223- vtn: Add spirv_library_to_nir_builder feature 224- clc: Add missing idep_vtn 225- agx: Fix lower regular texture metadata 226- agx: Vectorize load/stores 227- agx: Fuse (unmasked) extr_agx 228- agx: Fuse ubitfield_extract 229- asahi: Fix agx_pack unrolling 230- asahi: Make GenXML compatible with OpenCL 231- asahi: Unpack at 32-bit granularity 232- asahi: Reexpress genxml pack macro 233- asahi: Add folder for internal shaders 234- asahi: Add asahi_clc infrastructure 235- asahi: Pass valid memctx to open_device 236- asahi: Deserialize libagx when opening device 237- asahi,agx: Plumb libagx 238- asahi: Add software-defined field to texture desc 239- agx: Use CL for texture lowerings 240- asahi: Remove placeholder shader 241- asahi: Fix tools=all builds 242- ci: Opt out asahi from clang-format 243- ttn: Set sample shading for sample ID reads 244- compiler: Make shader_enums.h CL-safe 245- compiler: Inline mesa_vertices_per_prim 246- compiler: Make u_decomposed_prims_for_vertices available to CL 247- nir/lower_gs_intrinsics: Include primitive counts 248- nir/lower_gs_intrinsics: Append EndPrimitive 249- nir/lower_gs_intrinsics: Count decomposed primitives too 250- nir: Also gather decomposed primitive count 251- nir: Add intrinsics for lowering GS 252- nir: Add intrinsics for lowering bindless textures/samplers 253- nir/print: handle adjacency 254- asahi: Clamp 8-bit integer RTs 255- agx: Legalize image MS index 256- agx: Fix fragment side effects scheduling 257- agx: Check for spilling in release builds 258- docs/features: Mark ARB_mdi done on asahi 259- agx: Cleanup 8-bit math before lowering 260- agx: Require 32-bit alignment for EOT offset 261- agx: Add scaffolding for subgroup ops 262- agx: Translate simple subgroup ops 263- asahi: Pack non-border colour sampler desc 264- agx: Allow drivers to lower texture handles 265- asahi: Lower samplers to bindless if needed 266- agx: Lower LOD bias earlier 267- agx: Handle bindless samplers 268- asahi: Handle load_sampler_handle 269- asahi: Add sampler heap data structure 270- asahi: Use the sampler heap 271- asahi: Upload tex/samplers properly with merged shaders 272- asahi: Don't hazard track fake resources 273- asahi: Refactor encoder data structure 274- asahi: Factor out agx_launch 275- asahi: Make encoder_allocate public 276- asahi: Add data structures for geometry shaders 277- asahi: Add helpers for lowering GS 278- asahi: Add GS lowering pass 279- asahi: Wire up geometry shaders 280- asahi: Advertise geometry shaders 281- asahi: rm unused deqp debug flag 282- asahi: Don't use OpenGL clip bit 283- asahi: Plumb clip_halfz bit from RS 284- asahi: Advertise ARB_clip_control 285- asahi: Implement timer queries 286- docs: Mark timer queries as done on asahi 287- asahi: Implement ARB_base_instance 288- nir: Simplify nir_alu_instr_channel_used definition 289- nir/validate: Optimize ssa_srcs set 290- nir/validate: Don't spam nir_alu_instr_channels 291- nir/validate: Don't validate out-of-bounds channels 292- nir/validate: Use unlikely for validate_assert 293- nir/validate: Don't check dimensions in validate_def 294- nir/validate: Drop stale todo 295- nir/validate: Inline validate_ssa_src 296- nir/validate: Split out validate_sized_src 297- nir/validate: Specialize if source validation 298- panfrost: Add an allow_rotating_primitives() helper 299- panfrost: Factor out vertex attribute stride calculation 300- panfrost: Add panfrost_get_{position,varying}_shader() helpers 301- gallium: add pipe_shader_from_nir helper 302- radeonsi: use pipe_shader_from_nir 303- v3d: use pipe_shader_from_nir 304- asahi: use pipe_shader_from_nir 305- vc4: use pipe_shader_from_nir 306- zink: use pipe_shader_from_nir 307- nouveau: use pipe_shader_from_nir 308- panfrost: use pipe_shader_from_nir 309- gallium: drop pipe_shader_state_from_nir 310- mesa/st: collapse tgsi deadcode 311- mesa/st: use pipe_shader_from_nir 312- nir/lower_tex: Add 1D lowering 313- agx: fix 1D texture sampling 314- ac,radv,radeonsi: use common 1D texture lowering 315- nir/format_convert: handle clamping smaller bit sizes 316- nir/lower_idiv: Optimize idiv sign calculation 317- agx: Hotfix for stack_adjust in GS 318- asahi/decode: Decode multiple macOS commands 319- asahi: Quiet clang warning 320- asahi: Add half float type to genxml 321- asahi: Add XML for hw tessellation 322- asahi: Identify Primitive ID frag input 323- asahi: Identify bicubic filtering mode 324- asahi: fix index bias with GS/XFB 325- asahi: Sync heap size 326- asahi: init clear colour between batches 327- asahi: clamp clear colours 328- asahi: handle self blits 329- asahi: bump limits 330- asahi: remove bogus assertion 331- asahi: be robust about null xfb 332- asahi: fix dirty tracking fail with point sprites 333- asahi: handle null PBE 334- asahi: Be robust with arrays of images 335- asahi: fix imageSize of null image 336- asahi: rm compact image atomic descriptors 337- asahi: use 2D descriptors for cubes 338- asahi: defer texture packing to draw-time 339- ail: handle >4GiB textures 340- asahi: return GL_OOM for excessive image sizes 341- asahi: fix meta usc builder allocation 342- asahi: implement xfb stream queries 343- asahi: fix output to non-rast streams 344- asahi: bump glsl version 345- asahi: minify when blitting for transition 346- asahi: blit with the old format when transitioning 347- asahi: flush before resource transition 348- agx: Fix flatshading of matrices 349- asahi: fix xfb of pointsize when not drawing points 350- asahi: defeature quads 351- asahi: Rotate tri fans based on provoking vtx 352- asahi: use GS for first-provoking fans 353- asahi: Early out for GS + rast discard 354- asahi: Implement draw parameters 355- agx: wire up texture_samples/image_samplers 356- asahi: advertise ARB_shader_texture_image_samples 357- asahi: fix layout transitions with arrays 358- asahi: use correct target packing PBE 359- asahi: choose staging bind better 360- asahi: fix destroy_query leaving dangling references 361- asahi: add agx_push macro 362- asahi: collapse unreachable condition 363- asahi: use agx_push 364- asahi: remove dead declarations 365- asahi: rm unnecessary uniform upload for GS 366- asahi: make UB easier to see 367- asahi: force GS for indirect prim gen query 368- asahi: rework GS input assembly 369- asahi: Implement multidraw indirect 370- asahi: move heap alloc to first use 371- asahi: double depth bias 372- asahi: add static assert 373- agxdecode: fix stack smash with border colour 374- asahi: Support L/A/I formats for texture buffers 375- asahi: fix tri fan enum 376- asahi: rework cf binding xml 377- asahi: add xml for flatshading fans 378- agx: fix VARYING_SLOT_COL0 getting flatshaded 379- agx: Avoid scratch mem with tri strip w/ adjacency 380- agx: rework libagx linking a bit 381- asahi: Unroll GS/XFB primitive restart on the GPU 382- asahi: Lower edge flags 383- asahi: assert hw invariant 384- asahi: rewrite pointsize handling 385- agx: remove spurious z/s writes in force early-z shaders 386- agx: handle force early-z + discard 387- agx: note that sample_mask runs occlusion queries 388- agx: allocate varying slot if writing viewport only 389- agx: report if we have a nonzero viewport 390- asahi: allow empty scissor box 391- asahi: add XML for multiple viewports 392- asahi: Implement ARB_viewport_array 393- asahi: handle some components/offsets in GS lowering 394- asahi: prepare gs copy shaders for compact clip/cull 395- asahi: handle compact clip/cull in gs component gather 396- asahi: Implement ARB_cull_distance 397- asahi: add more BGR formats 398- asahi: fix dupe rgb65 formats 399- asahi: fix pbe swizzling 400- asahi: fix integer RT clamping 401- agx: fix fp64 lowering options 402- agx: Lower 64-bit I/O to 32-bit 403- agx: don't produce split of immediate 404- asahi: fix size calculation for 2d msaa arrays 405- asahi: allow more format reinterpretation 406- asahi: respect render condition for compute 407- asahi: wire up hardware gl_PrimitiveID 408- asahi: clamp draw count for mdi 409- gallium: fix util_clamp_color type confusion 410- gallium: add PIPE_IMAGE_ACCESS_DRIVER_INTERNAL 411- nir/validate: allow bias on nir_texop_lod 412- asahi: Implement lod queries 413- vtn: fuse OpenCL mad if we can can 414- asahi: fix eMRT + background load interaction 415- ail: add is_level_compressed query 416- ail: use is_level_compressed 417- ail: add ail_is_level_twiddled_uncompressed 418- asahi: do not use compression blits for uncompressed levels 419- agx: allow bindful arrays if not clamping 420- asahi: don't format convert with staging blits 421- asahi: implement arrays as 2d for internal images 422- asahi: respect last_block 423- asahi: allow compressed image stores in blits 424- asahi: fix image_mask with unbind num trailing 425- asahi: add compute blitter 426- asahi: add and use batch_is_compute helper 427- asahi: fix get_batch with compute batches 428- asahi: allow multiple compute dispatches in a batch 429- asahi: drop custom mipmap generate 430- asahi: set data_valid on first draw 431- asahi: fix data valid tracking 432- asahi: reduce transfer map flushing with staging blits 433- asahi: do not stall for writers with invalid mips 434- asahi: implement blit-based resource_copy_region 435- asahi: fix snorm staging blits 436- asahi: use copy region for decompression 437- asahi: fix scissor arrays 438- asahi: disable compute-based blitter for now 439- agx: use more mem->tex barriers even on g13g 440- agx: fix early-z + discard together 441- asahi: fix set_sampler_views 442- asahi: fix max tex sizes 443- agx: optimize fcmp like fcmpsel 444- agx: wire up some ballots 445- agx: lower votes to ballots 446- agx: implement query_levels 447- agx: skip scoreboard bit in builder for !wait 448- agx: make vec widths explicit in IR 449- agx: validate post-RA 450- agx: rm silly todo 451- agx: rm outdated comment 452- agx: add index size helper 453- agx: trust in agx_index size 454- agx: mv agx_read/write_regs to validator 455- agx: use custom assert when packing 456- agx: use mov imm for pcopies 457- agx: allow phis with 16bit imms 458- agx: prepare for immediates in phis 459- agx: handle imm inlining into phis 460- asahi: rework compute emptiness tracking 461- asahi: stub qbo on the cpu 462- asahi: implement xfb overflow queries 463- agx: const fold after discard lowering 464- agx: fix xfb of invalid comp 465- agx: fix xfb of invalid var 466- asahi: bump vertex shader outputs 467- asahi: rm pointless multisample key bit 468- asahi: rm layered bit from shader key 469- asahi: implement point sprites w/o shader key 470- asahi: rm unused blend enable bit 471- asahi: rm logicop enable bit 472- asahi: rm nr_cbufs from key 473- asahi: rm blend->store from shader key 474- asahi: rm vbuf.count from key 475- asahi: rm agx_vbufs wrapper 476- asahi: invert program_point_size 477- asahi: divide by xfb stride for xfb draws 478- asahi: disable fp16 cbuf cap 479- asahi: add missing GS line strip (+adj) handling 480- asahi: link libagx before lowering mem access widths 481- asahi: cl-ify some xfb logic 482- asahi: factor out libagx_map_vertex_in_tri_strip 483- asahi: rotate xfb'd tri strips 484- asahi: inline something silly 485- asahi: plumb get_ubo_size 486- asahi: make txf robust properly 487- asahi: fix passthrough GS with poly modes 488- asahi: add missing tib alignment check 489- agx: optimize split(64-bit uniform) 490- agx: expand agx_index 491- agx: fix 64-bit phis with inlined immediates 492- agx: add unit test for pcopy lowering bug 493- agx: require min alignment for load/store vectorize 494- asahi: fallback some resource copies 495- asahi: don't canonicalize nans/flush denorms when copying 496- agx: unit test split uniform opt 497- agx: clang-fmt 498- nir,zink: Redefine flat_mask in terms of I/O locations 499 500Andrew Gazizov (4): 501 502- venus: Add use_guest_vram capset to enable guest-based blob alloc 503- venus: Use vk_object_id as blob_id for guest_vram device memory alloc 504- venus: Tighten the conditions for guest_vram device memory alloc 505- venus: Make sure that guest allocated blobs from hostmem are mappable 506 507Anthony Roberts (1): 508 509- glsl: Use unsigned instead of enum type in ir_variable_data 510 511Antoine Coutant (1): 512 513- clc: retrieve libclang path at runtime. 514 515Antonio Gomes (14): 516 517- rusticl, meson: Move libc functions to their own crate 518- rusticl, meson: Add gl/egl/glx bindings 519- iris: Fixups in resource_get_handle and resource_from_handle 520- mesa/st: Add new data to mesa_glinterop 521- mesa/st, dri2, wgl, glx: Modify flush_objects interop func to export a fence_fd 522- rusticl: Add xplat helpers to dynamic link interop functions 523- rusticl/device: Function to check for gl interop support 524- rusticl/device: Enable gl_sharing only if create_fence_fd is implemented 525- rusticl: Add functions to create CL ctxs from GL, and also to query them 526- rusticl/format: Add conversion table for GL->CL 527- rusticl: Create CL mem objects from GL 528- rusticl: Add support for cube maps 529- rusticl: Flush objects just before importing them 530- rusticl: Advertise cl_khr_gl_sharing extension 531 532Anuj Phogat (1): 533 534- intel/l3: Adjust URB weight calculation for gfx12.5+. 535 536Asahi Lina (12): 537 538- asahi: Fix CDM Launch/Barrier naming 539- asahi: Add extra CDM barrier bit for G13X 540- asahi: Move USC cache flush to agx_batch_init_state 541- asahi: Add more memory barrier opcodes 542- asahi: Add extra barrier for texture atomics on G13X 543- ail: Fix miptree offset generation for compressed textures 544- ail: Add explicit specification of mip level strides 545- ail: Fix tile size & strides for compressed textures 546- asahi: Add .editorconfig for CL files 547- asahi: Implement BO alignment 548- agx: Fix packing of stack map/unmap 549- agx: Add scoreboarding to stack instructions 550 551Bas Nieuwenhuizen (11): 552 553- radv: Add DGC preprocessing barrier support. 554- radv: Add compute DGC preprocessing support. 555- radv: Add some initial graphics DGC preprocessing support. 556- radv: Add implementation of cmd buffers for a sparse binding queue. 557- radv: Remove the sparse binding queue from coherent images. 558- radv: Move sparse binding into a dedicated queue. 559- nir: Add nir_static_workgroup_size helper. 560- nir: Add pass for clearing memory at the end of a shader. 561- radv: Add option to clear LDS at the end of a shader. 562- radeonsi: Add support to clear LDS at the end of a shader. 563- radv: Use correct writemask for cooperative matrix ordering. 564 565Benjamin Lee (14): 566 567- nak: make sm available in builders 568- nak: Legalize a bunch of instructions for SM50 569- nak: add IADD instruction for SM50 570- nak: implement ST* and LD* on SM50 571- nak: add ATOM{G,S} encoding for SM50 572- nak: add carry register file 573- nak: move iadd64 construction to a builder method 574- nak: use carry register file for IADD2 575- nak: make as_imm_not_{i,f}20 helper methods public 576- nak: implement SHL and SHR on SM50 577- nak: implement IMUL for SM50 578- nak: encode Dst::None as RZ on SM50 579- nak: implement SHFL on SM50 580- nak: implement VOTE on SM50 581 582Boris Brezillon (74): 583 584- pan/genxml: Fix "{Last,First} Heap Chunk" field position 585- panfrost: Fix format_minimum_alignment() for v6- 586- pan/bo: Make sure we catch refcnt underflows 587- pan/genxml: Fix 'Shader Program' descriptor definition on v9 and v10 588- pan/decode: Print the resource table label 589- pan/decode: Make CSF decoding more robust to NULL pointers 590- pan/decode: Fix the pan_unpack() call for JUMP instruction unpacking 591- panfrost: Flag the right shader when updating images 592- panfrost: Kill unused panfrost_batch::polygon_list field 593- panfrost: Emit attribs in panfrost_update_state_3d() on bifrost/midgard 594- panfrost: Emit image attribs for compute in panfrost_update_shader_state() 595- panfrost: Rename panfrost_vtable::context_init 596- panfrost: Inline pan_emit_tiler_heap() 597- panfrost: Inline pan_emit_tiler_ctx() 598- panfrost: Count draws at the batch level 599- panfrost: Express the per-batch limit in term of draws 600- panfrost: Count the number of compute jobs at the batch level 601- panfrost: Make panfrost_has_fragment_job() public 602- panfrost: Stop using the scoreboard to check the presence of draws/compute 603- panfrost: Store the fragment job descriptor address in the batch 604- panfrost: Emit the fragment job from panfrost_batch_submit() 605- panfrost: Move the panfrost_emit_tile_map() call around 606- panfrost: Get rid of unused in_sync parameter in panfrost_batch_submit[_ioctl]() 607- panfrost: Get rid of the out_sync parameter in panfrost_batch_submit_jobs() 608- panfrost: Get rid of unused fb parameter passed to panfrost_batch_submit_jobs() 609- panfrost: Add a submit_batch() hook to panfrost_vtable 610- panfrost: Store the index pointer in panfrost_batch 611- panfrost: Stop passing vertex attribute arrays around 612- panfrost: Store varying related fields in panfrost_batch 613- panfrost: Use u_reduced_prim() to do the is_line check 614- panfrost: Move JM specific fields to their own struct 615- panfrost: s/panfrost_emit_vertex_tiler_jobs/jm_push_vertex_tiler_jobs/ 616- panfrost: Move the JM-specific bits out of emit_fragment_job() 617- panfrost: Rename several job emission helpers 618- panfrost: Factor out the point-sprite shader update logic 619- panfrost: Factor out the vertex count logic 620- panfrost: Re-order things in panfrost_direct_draw() 621- panfrost: Move all JM-specific bits out of panfrost_direct_draw() 622- panfrost: Use batch->tls.gpu to store the compute TLS descriptor 623- panfrost: Move JM-specific bits out of panfrost_launch_grid_on_batch() 624- panfrost: Move JM specific bits out of panfrost_launch_xfb() 625- panfrost: Drop the vertex_count argument passed to panfrost_batch_get_bifrost_tiler() 626- panfrost: Rename panfrost_batch_get_bifrost_tiler() 627- panfrost: s/panfrost_emit_shader/jm_emit_shader_env/ 628- panfrost: s/panfrost_emit_primitive/jm_emit_primitive/ 629- panfrost: Rename JM-specific batch submission helpers 630- panfrost: s/preload/jm_preload_fb/ 631- panfrost: s/init_batch/jm_init_batch/ 632- panfrost: Prepare things for the common/JM cmdstream split 633- panfrost: Move JM helpers to their own source file 634- panfrost: Add a JOBX() macro to simplify job-frontend selection 635- panfrost: Fix multiplanar YUV texture descriptor emission on v9+ 636- panfrost: Don't leak NIR compute shaders 637- panfrost: s/pan_scoreboard/pan_jc/ 638- panfrost: Rename pan_cs.{c,h} into pan_desc.{c,h} 639- panfrost: Make pan_afbc_compression_mode() per-gen 640- panfrost: Restrict job chain helpers to JM hardware 641- panfrost: Restrict job descriptor emission to JM hardware 642- util/hash_table: Use FREE() to be consistent with the CALLOC_STRUCT() call 643- util/hash_table: Don't leak hash_u64_key objects when the entry exists 644- util/hash_table: Don't leak hash_key_u64 objects when the u64 hash table is destroyed 645- panfrost: Abstract kernel driver operations 646- pan/kmod: Add a backend for the panfrost kernel driver 647- panfrost: Avoid direct accesses to some panfrost_device fields 648- panfrost: Avoid direct accesses to some panfrost_bo fields 649- panfrost: Back panfrost_device with pan_kmod_dev object 650- panfrost: Add a VM to panfrost_device 651- panfrost: Back panfrost_bo with pan_kmod_bo object 652- panfrost: Introduce a PAN_BO_SHAREABLE flag 653- panvk: Pass PAN_BO_SHAREABLE when relevant 654- panfrost: Flag BO shareable when appropriate 655- panvk: Fix tracing 656- panvk: Fix access to unitialized panvk_pipeline_layout::num_sets field 657- panfrost: Clamp the render area to the damage region 658 659Boyuan Zhang (4): 660 661- gallium/pipe: define hevc max slices number 662- frontend/va: add support for multi slices reflist 663- radeonsi: add new interface to handle multi slice reflist 664- radeonsi/vcn: add new logic for hevc multi slices reflist 665 666Brian King ((MEDIA)) (1): 667 668- d3d12: Add constraint_set1_flag support 669 670Caio Oliveira (90): 671 672- anv: Fix leak when compiling internal kernels 673- intel/compiler: Remove unused parameter from brw_nir_adjust_payload() 674- intel/compiler: Take more precise params in brw_nir_optimize() 675- intel/compiler: Remove unused parameter from brw_nir_analyze_ubo_ranges() 676- intel/compiler: Clarify the asserts in nir_load_workgroup_id lowering 677- intel/compiler: Rework opt_split_sends to not rely/modify LOAD_PAYLOAD 678- intel/compiler: Re-enable opt_zero_samples() for Gfx7+ 679- intel/compiler: Re-enable opt_zero_samples() in many cases for Gfx12.5 680- intel/compiler: Remove is_tex() 681- intel/compiler: Use linear allocator in parts of brw_schedule_instructions 682- intel/compiler: Remove reference to brw_isa_info from schedule_node 683- intel/compiler: Allocate all schedule_nodes at once 684- intel/compiler: Use array to iterate the scheduler nodes 685- intel/compiler: Add only available instructions to scheduling list 686- intel/compiler: Extract scheduling related basic functions 687- intel/compiler: Cache issue_time information 688- intel/compiler: Remove virtual calls from scheduler 689- intel/compiler: Move FS specific fields to fs_instruction_scheduler 690- intel/compiler: Merge child/latency arrays in schedule_node 691- intel/compiler: Tidy up code in scheduler related to reads_remaining 692- intel/compiler: Move earlier scheduler code that is not mode-specific 693- intel/compiler: Separate schedule_node temporary data 694- intel/compiler: Make scheduler classes take an external mem_ctx 695- intel/compiler: Reuse same scheduler for all pre-RA scheduling modes 696- intel/compiler: Clear up block instructions before re-adding them 697- intel/compiler: Simplify allocation of NIR related arrays 698- intel/compiler: Prefer ctor/dtors in some Google Tests 699- intel/compiler: Don't use fs_visitor::bld in tests 700- intel/compiler: Don't use fs_visitor::bld in fs_reg_alloc 701- intel/compiler: Don't use fs_visitor::bld in thread payload classes 702- intel/compiler: Add a few more helpers to fs_builder 703- intel/compiler: Allow dumping CFG to a specific FILE* 704- intel/compiler: Sort lists of succs and preds in CFG dump output 705- intel/compiler: Add a few tests to opt_predicated_break 706- anv/xe2+: Use Region-based Tessellation redistribution 707- iris/xe2+: Use Region-based Tessellation redistribution 708- intel/compiler: Refactor program exit in intel_clc 709- intel/compiler: Use single variable instead of dynarray 710- intel/compiler: Fix memory leaks in intel_clc 711- intel/compiler: Remove the linking step in intel_clc 712- intel/compiler: Remove unused headers 713- intel/compiler: Move NIR emission code to brw_fs_nir.cpp 714- intel/compiler: Make a NIR intrinsic emission functions static 715- intel/compiler: Make more functions in NIR conversion static 716- intel/compiler: Make functions for NIR control flow conversion static 717- intel/compiler: Make setup functions of NIR emission static 718- intel/compiler: Make non-intrinsic NIR conversion functions static 719- intel/compiler: Make NIR atomic conversion functions static 720- intel/compiler: Make NIR resources helpers static 721- intel/compiler: Move nir_ssa_value into a local structure 722- intel/compiler: Move remaining NIR conversion fields to nir_to_brw_state 723- intel/compiler: Stop using fs_visitor::bld field in NIR conversion 724- intel/compiler: Annotate and use nir_to_brw_state::bld 725- intel/compiler: Don't use fs_visitor::bld in remaining places 726- intel/compiler: Remove fs_visitor::bld 727- intel/compiler: Make fs_visitor not depend on fs_builder 728- intel/compiler: Make fs_builder include fs_visitor and not the other way 729- intel/compiler: Add ctor to fs_builder that just takes the shader 730- intel/compiler: Create and use nir_to_brw() function 731- intel/compiler: Use reference instead of pointer for nir_to_brw_state 732- intel/compiler: Use reference instead of pointer for fs_visitor 733- compiler/glsl: Reduce scope of is_anonymous 734- clover: Remove usage of glsl_type C++ helpers 735- compiler/types: Add a few more helpers to get builtin types 736- intel/compiler: Use C helpers to access builtin types 737- compiler: Remove C++ static member pointers to builtin types 738- intel/compiler: Use glsl_type C helpers 739- r600/sfn: Use glsl_type C helpers 740- nouveau: Use glsl_type C helpers 741- nir: Use glsl_type C helpers 742- mesa: Use glsl_type C helpers 743- lima: Use glsl_type C helpers 744- compiler/types: Add a few more glsl_type C helpers 745- glsl: Use glsl_type C helpers 746- compiler/types: Remove glsl_type C++ helpers 747- compiler/types: Use a typedef for glsl_type 748- intel/cmat: Add pass to lower cooperative matrix to subgroup operations 749- intel/dev: Add cooperative matrix configuration information 750- anv: Implement VK_KHR_cooperative_matrix 751- util: Add a way to set the min_buffer_size in linear_alloc 752- spirv: Use linear_alloc for parsing-only data 753- spirv: Use value_id_bound to set initial memory allocated 754- intel/fs: Only allocate acp_entry if we are adding one 755- intel/fs: Use linear allocator in opt_copy_propagation 756- intel/fs: Use linear allocator in fs_live_variables 757- anv: Don't print warnings for GRL kernel compilations 758- intel/compiler: Use INTEL_DEBUG=cs to ask for brw_compiler output 759- nir: Disable -Wmisleading-indentation when compiling with GCC 760- ci: Add Werror=misleading-indentation to debian-clang 761- intel/compiler: Fix rebuilding the CFG in fs_combine_constants 762 763Casey Bowman (1): 764 765- anv: Override vendorID for Diablo IV 766 767Chia-I Wu (14): 768 769- radv: fix vkCmdCopyImage2 for emulated etc2/astc 770- radv: stop using vk_render_pass_state::render_pass 771- vulkan, tu, pvr: remove vk_render_pass_state::render_pass 772- radv: fix image view extent override for astc 773- radv: minor clean up to image view extent override 774- ac: be careful with stencil_offset override 775- radv: disable TC-compat htile on GFX9 in some cases 776- radv: fix VkDrmFormatModifierProperties2EXT for multi-planar formats 777- radv: fix VkSubresourceLayout2KHR for multi-planar formats with modifiers 778- radv: fix a typo in radv_image_view_make_descriptor 779- radv: fix asserts for radv_init_metadata 780- radv: convert a check in radv_get_memory_fd to assert 781- vk/util: ignore unsupported feature structs 782- Revert "vk/util: ignore unsupported feature structs" 783 784Chris Spencer (7): 785 786- meson: Add option to ignore artificial Android limitations 787- android.mk: Add option to pass arbitrary parameters to meson 788- anv/android: Only limit advertised Vulkan version in strict mode 789- radv/android: Only limit advertised Vulkan version in strict mode 790- v3dv/android: Only limit advertised Vulkan version in strict mode 791- vn/android: Only limit advertised Vulkan version in strict mode 792- vulkan/android: Only limit advertised extensions in strict mode 793 794Christian Gmeiner (13): 795 796- agx: Re-index nir defs to reduce memory usage 797- ci/etnaviv: Update ci expectation 798- etnaviv: rs: Call etna_rs_gen_clear_surface(..) when needed 799- etnaviv: Mark etna_rs_gen_clear_surface(..) private 800- docs: Update etnaviv extensions 801- etnaviv: Update headers from rnndb 802- etnaviv: Add static_assert(..) to catch memory corruption 803- isaspec: Add bool_inv type to print inverted bools 804- etnaviv: Add isaspec support 805- etnaviv: disassembler: Switch to isaspec 806- mesa: Drop not used program_written_to_cache 807- nir/opt_peephole_select: handle speculative ubo loads 808- pan/mdg: Use nir_builder for load_sampler_lod_parameters_pan 809 810Colin Marc (1): 811 812- vulkan video: correctly set SPS VUI bits 813 814Connor Abbott (32): 815 816- util/rb_tree: Fix editorconfig 817- util/rb_tree: Add augmented trees and interval trees 818- freedreno/ci: Remove minetest trace 819- v3d/ci: Remove minetest trace 820- vk,lvp,tu,radv,anv: Add common vk_*_pipeline_create_flags() helper 821- vk/graphics_state: Support VK_KHR_maintenance5 822- vk/graphics_state, tu: Rewrite renderpass flags handling 823- vk/graphics_state: Support VK_EXT_attachment_feedback_loop_dynamic_state 824- vk/graphics_state: Add vk_pipeline_flags_feedback_loops helper 825- tu: Assume no raster-order attachment access with NULL DS/blend state 826- tu: Fix order of rasterizer_discard check 827- tu: Make sure copies to half-float formats are bit exact 828- tu: Fix getting VkDescriptorSetVariableDescriptorCountLayoutSupport 829- ir3/ra: Don't swap killed sources for early-clobber destination 830- nir: Add quad vote intrinsics 831- amd: Implement quad_vote intrinsics 832- nir/subgroups: Add option to lower Boolean subgroup reductions 833- amd: Enable boolean subgroup lowering 834- tu: Fix re-emitting VS param state after it is re-enabled 835- tu: Don't use pipeline layout to emit shared const enable 836- tu: Rework dynamic offset handling 837- tu: Make filling out tu_program_state not depend on the pipeline 838- tu: Move shader linking to tu_shader.cc 839- freedreno/afuc: Handle store instruction on a5xx 840- freedreno/afuc: Add separate "SQE registers" 841- freedreno/afuc: Use SQE registers for call stack 842- freedreno/afuc: Add syntax for pre-increment addressing 843- freedreno/afuc: Decode (sdsN) modifier 844- freedreno: Update more control/pipe registers for a7xx 845- freedreno/afuc: README updates for a7xx 846- freedreno/afuc: Fix gen autodetection for a7xx 847- ir3/legalize: Fix helper propagation with b.any/b.all/getone 848 849Corentin Noël (10): 850 851- mesa/bufferobj: ensure that very large width+offset are always rejected 852- virgl: fill the array_size value when using PIPE_TEXTURE_CUBE 853- virgl/texture: Align destination box to block depth 854- mesa/ffvs: Use gl_state_index16 in helpers directly 855- gallivm: Initialize indir_index to NULL before use 856- gallivm/lp_bld_nir_aos: Use TGSI instead of PIPE enum 857- mesa: Use a switch for state_iter and be more precise about its type 858- frontends/va: Remove wrong use of ProfileToPipe 859- virgl: Only send the same amount of data than declared in pipe_sampler_state 860- virgl: Assert build_id_note before dereferencing it 861 862Daniel Almeida (33): 863 864- nak: derive From<OpFoo> for Op through a proc macro 865- nak: make Instr::new() generic 866- nak: compiler: add From<T:Into<Op>> for Instr 867- nak: compiler: replace Instr::new(..) with OpFoo {}.into() 868- nak: Heap-allocate Instrs 869- nak: Do not allocate vectors needlessly in optimization passes 870- nak: add support for floor, ceil and trunc 871- nak: run nir_lower_frexp and nir_opt_algebraic_late 872- nak: more lowerings 873- nak: change ishl data type to I32 874- nak: add support for nir_op_isign 875- nak: Add support for nir_op_bitcount 876- nak: add support for nir_op_bitfield_reverse 877- nak: add support for findmsb,findlsb 878- nak: add support for packhalf2x16_split 879- nak: add support for nir_op_unpack_half_2x16_split_{x|y} 880- nak: add support for atomic cmpxcgh on images 881- nak/sm50: rewrite encode_iadd2 to not use encode_alu() 882- nak: sm50: rewrite fsetp to not use encode_alu 883- nak: sm50: Rewrite fmnmx to not use encode_alu 884- nak: sm50: rewrite fmul to not use encode_alu 885- nak: sm50: rewrite fset to not use encode_alu 886- nak: sm50: rewrite iabs to not use encode_alu 887- nak: sm50: convert sel to not use encode_alu() 888- nak: sm50: convert i2f to not use encode_alu() 889- nak: sm50: rewrite encode_f2f to not use encode_alu() 890- nak: convert encode_imad to not use encode_alu() 891- nak: sm50: rewrite encode_popc to not use encode_alu() 892- nak: sm50: rewrite encode_prmt to not use encode_alu() 893- nak: sm50: remove encode_alu() and friends 894- nak/sm50: remove ALUSrc and friends 895- nak/sm50: remove \*fmod* calls from iabs 896- nak: sm50: fix ineg legalization 897 898Daniel Schürmann (24): 899 900- nir/lower_subgroups: optimize reductions with cluster_size == 1 901- nir: optimize open-coded quadVote* directly to new nir_quad intrinsics 902- aco: delete instruction selection for boolean subgroup operations 903- nir: remove info.fs.needs_all_helper_invocations 904- nir/gather_info: add missing wide subgroup operations 905- nir: add info.fs.require_full_quads 906- aco: enable helper lanes if shader->info.fs.require_full_quads 907- amd: rename max_wave64_per_simd -> max_waves_per_simd 908- aco: rename max_wave64_per_simd -> max_waves_per_simd 909- radv: fix number of physical SGPRs on GFX10+ 910- aco: remove VCCZ and EXECZ register handling 911- nir/opt_loop: move loop control-flow optimizations into separate pass 912- treewide: replace calls to nir_opt_trivial_continues() with nir_opt_loop() 913- nir: remove nir_opt_trivial_continues() 914- nir: remove redundant passes from nir_opt_if() 915- nir/opt_loop_cf: generalize removal of "trivial" continues 916- aco: fix should_form_clause() for memory instructions without operands 917- aco: form clauses for LDS instructions 918- aco: add new post-RA scheduler for ILP 919- aco: refactor and speed-up dead code analysis 920- nir/opt_move_discards_to_top: don't schedule discard/demote across subgroup operations 921- nir/gather_info: fix enumeration of wide subgroup intrinsics 922- aco: give spiller more room to assign spilled SGPRs to VGPRs 923- aco/insert_exec_mask: Fix unconditional demote at top-level control flow. 924 925Daniel Stone (7): 926 927- ci: Try really hard to print final result string 928- ci/radeonsi: Occlusion queries are flaky on stoney 929- ci: Fix trivial typo in ARTIFACTS_BASE_URL 930- panfrost/ci: Remove Vulkan expectations from G57 931- panfrost/ci: Add environment variable to suppress warnings 932- panfrost/ci: Skip broken image copy tests 933- ci: Re-enable Collabora farm 934 935Danylo Piliaiev (15): 936 937- tu: Fix reading of stale (V)PC_PRIMITIVE_CNTL_0 938- tu/a7xx: Zero out A7XX_VPC_PRIMITIVE_CNTL_0 in 3d blits 939- tu/a6xx: Exclude REG_A6XX_TPL1_UNKNOWN_B602 from reg stomping 940- tu/a7xx: Fix occlusion queries on pre-A740 GPUs 941- tu: Always print startup failure messages 942- tu: Return error when GPU is unsupported 943- freedreno/devices: Support Adreno 725 944- tu: Add a725 workaround dispatch at the start of each cmdbuf 945- freedreno/devices: Separate device definition into base + gen features 946- freedreno,tu,ir3: Pass fd_dev_info into ir3_compiler_create 947- freedreno,tu: Add env vars to modify fd_dev_info 948- freedreno: Add a644 support 949- freedreno/devices: Update a690 magic regs from WSL blob 950- turnip: Disable UBWC for D/S images on A690 951- freedreno: Disable UBWC for D/S images on A690 952 953Dave Airlie (38): 954 955- vulkan: update video headers 956- vulkan/video: add support for h264 encode to common code 957- vulkan/video: add h265 encode support 958- vulkan/video: add h264 nal enum 959- vulkan/video: add a nal_unit lookup for hevc 960- util: add a bitstream encoder for video stream headers. 961- vulkan/video: add h264 level idc convertor utility 962- vulkan/video: add a h265 level translator. 963- vulkan/video: add h264 headers encode 964- vulkan/video: add h265 header encoders. 965- nak: fix backtrace crash running computeheadless 966- nak: make ipa encoding match the order in codegen gv100 967- nak: do perspective divide for interp none as well 968- nvk/xfb: set correct counter buffer for writing stream out counters. 969- nvk/nil: allow storage on VK_FORMAT_A2B10G10R10_UINT_PACK32 970- nvk: fix transform feedback with multiple saved counters. 971- nvk/nak/xfb: handle skipping properly when setting xfb_attr. 972- nvk: drop unneeded shader type conversion function 973- nvk/nak: fix regression with shf changes on sm70 974- intel/compiler: move gen5 final pass to actually be final pass 975- vulkan/video: drop encode beta checks and rename EXT->KHR 976- gallivm: handle llvm 16 atexit ordering problems. 977- intel/compiler: fix release build unused variable. 978- intel/compiler: revert part of "Move earlier scheduler code that is not mode-specific" 979- llvmpipe: fix caching for texture shaders. 980- gallivm/sample: refactor first/last level handling and use level_zero_only. 981- gallivm/sample: add some num_samples vs level zero only support 982- gallivm/sample: make the load_mip helper useful outside this file. 983- gallivm/lp: reduce size of lp_jit_texture. 984- gallivm/lp: reduce image descriptor size. 985- gallivm/lp: merge sample info into normal info 986- gallivm/lp: move sampler index around to reduce struct 987- lavapipe: bump .maxResourceDescriptorBufferRange 988- intel/compiler: reemit boolean resolve for inverted if on gen5 989- radv: don't emit cp dma packets on video rings. 990- radv/video: refactor sq start/end code to avoid decode hangs. 991- radv: don't submit empty command buffers on encoder ring. 992- gallivm: passing fp16_split_fp64 to fp16 lowering. 993 994Dave Stevenson (2): 995 996- gallium: Add more TinyDRM drivers to the list of kmsro drivers 997- gallium: Add udl (DisplayLink) to the list of kmsro drivers 998 999David Heidelberg (53): 1000 1001- ci/docs: add coreutils 1002- ci: bump tags 1003- ci/zink: reduce premerge testing on a618 to ~ 12 minutes 1004- ci: hide Mesa install phase 1005- ci: drop clover from release builds and remove rusticl build 1006- ci: simplify debian-rusticl-testing definition 1007- ci: drop mingw and wine from the x86_64 build container 1008- ci: always cleanup pip and cargo leftovers 1009- ci: bashify scripts, use arrays 1010- ci: drop debootstrap, unused 1011- ci/panfrost: run T860 traces as intended (nightly job) 1012- ci/venus: reduce pre-merge to fit under 15 min 1013- ci/alpine: do not store apk cache 1014- ci/wine: move wine configuration into rootfs where is wine available 1015- Revert "ci/wine: move wine configuration into rootfs where is wine available" 1016- ci/lava: add wine into the amd64 ephemeral container packages 1017- ci/zink: restore full premerge testing on Adreno 618 1018- ci: fixup section names 1019- ci/nouveau: define a kernel and dtb, so we can fetch it from external sources 1020- ci: inject gfx-ci/linux S3 artifacts without rebuilding containers 1021- ci/zink: disable nheko trace, as it sometimes crashes 1022- gitlab: make commit more commit-like formatted 1023- ci: tag sanity, rustfmt and clang-format job as a "placeholder" job 1024- ci/traces: drop the freedoom-phase2-gl-high.trace 1025- ci: disable Anholt farm 1026- ci/freedreno: disable a660 as it's down now 1027- Revert "ci/freedreno: disable a660 as it's down now" 1028- ci: bump kernel to 6.6.4 1029- docs: drop unused manual optimizations override 1030- ci/freedreno: mark unvanquished-lowest trace as flaky and skip 1031- ci/freedreno: switch Adreno 630 boards back to 6.4 kernel 1032- ci/freedreno: increase fraction for Vulkan testing 1033- ci/tu: add another failing pipeline strip draw 1034- ci/freedreno: extend timeout for full runs 1035- ci/freedreno: re-enable two Adreno 618 tests 1036- ci/freedreno: timestamp-get no longer fails on Adreno 1037- ci/freedreno: downgrade a618_piglit to 6.4 kernel 1038- ci/freedreno: fail introduced by ARB_post_depth_coverage 1039- rusticl: add freedreno alias for RUSTICL_ENABLE 1040- ci/freedreno: more issues showed up on a618, let's use 6.4 1041- ci/austriancoder: separate HW definition from SW 1042- ci/freedreno: downgrade whole Adreno 6xx series, incl. zink-a618 jobs 1043- ci/broadcom: separate HW definition from SW 1044- ci: skip EGL functional color_clears tests for Wayland 1045- ci/lava: separate HW definitions from SW 1046- ci/google: re-enable farm 1047- ci/zink: update piano trace 1048- ci/radeonsi: disable VA-API testing on raven 1049- ci: enable ci-deb-repo for libdrm 2.4.119 (and others in the future) 1050- ci/alpine: update to latest to get libdrm 2.4.119 1051- ci: bump Fedora and Android libdrm2 to 2.4.119 1052- ci/rootfs: add libdrm also inside the rootfs 1053- ci/deqp: uprev deqp-runner for Linux too to 0.18.0 1054 1055David Rosca (19): 1056 1057- frontends/va: Map decoder and postproc surfaces for reading 1058- radeonsi/vce: Implement destroy_fence vfunc 1059- radeonsi/uvd: Implement destroy_fence vfunc 1060- radeonsi/uvd_enc: Implement destroy_fence vfunc 1061- radeonsi/uvd_enc: Fix leaking session info buffer 1062- Revert "radeon/radeon_vce: fix out of target bitrate in CBR mode (H.264)" 1063- radeonsi/vce: Tweak motion estimation params for better quality 1064- radeonsi/vce: Add VUI parameters in output bitstream 1065- radeonsi/uvd_enc: Add VUI parameters in output bitstream 1066- radeonsi: Fix offset for linear surfaces on GFX < 9 1067- gallium/auxiliary/vl: Fix coordinates clamp in compute shaders 1068- gallium/auxiliary: Fix coordinates clamp in util_compute_blit 1069- gallium/auxiliary/vl: Scale dst_rect x0/y0 when rendering chroma plane 1070- gallium/auxiliary/vl: Support interleaved input in deinterlace filter 1071- Revert "frontends/va: Alloc interlaced surface for interlaced pics" 1072- gallium/auxiliary: NIR blit_compute_shader 1073- gallium/auxiliary/vl: NIR compute shaders 1074- util/rbsp: Fill bits twice if reading more than 16 bits 1075- radeonsi/vcn: Fix H264 slice header when encoding I frames 1076 1077Dennis Bonke (1): 1078 1079- mesa: add managarm support 1080 1081Dmitry Baryshkov (9): 1082 1083- freedreno/regs/mdp_common: change BPC1 -> BPC4 1084- freedreno/regs/mdp_common: fix BPC comments 1085- freedreno/regs: add mdp_fetch_mode enum 1086- freedreno/drm: fallback to default BO allocation if heap alloc fails 1087- ir3: fix shift amount for 8-bit shifts 1088- ir3/a6xx: fix ldg/stg of ulong2 and ulong4 data 1089- freedreno/drm: notify valgrind about FD_BO_NOMAP maps 1090- freedreno/drm: don't crash in heap allocator when run under valgrind 1091- freedreno/drm: don't crash for unsupported devices 1092 1093Dudemanguy (1): 1094 1095- vulkan/wsi/wayland: fix wl_event_queue memory leak 1096 1097Dylan Baker (3): 1098 1099- docs: add release notes for 23.2.1 1100- docs: Add sha256 sum for 23.2.1 1101- meson: add wrap for libdrm 1102 1103Echo J (2): 1104 1105- nvk: Set HOST_CACHED_BIT for the GTT type 1106- vulkan: Remove nonexistent output in vk_synchronization_helpers target 1107 1108Eric Engestrom (236): 1109 1110- VERSION: bump to 24.0 1111- docs: reset new_features.txt 1112- docs: update calendar for 23.3.0-rc1 1113- ci/rpi4: group all spec\@ext_image_dma_buf_import\@ext_image_dma_buf_import-sample_* together 1114- ci/rpi4: add spec\@ext_image_dma_buf_import\@ext_image_dma_buf_import-sample_yvyu to the list of known failures 1115- ci/zink+radv: add another flake on polaris 1116- ci: drop confusing fake \`rules`, \`if` and \`when` on the list of rules strings 1117- docs/ci: allow sanity job to be missing 1118- ci: don't run sanity in Marge pipelines 1119- ci: add \`.never-post-merge-rules` to avoid re-running pre-merge jobs after merging 1120- broadcom: use \`.never-post-merge-rules` for all rpi tests 1121- ci/radeonsi: add another flake 1122- rpi4/ci: add more known dEQP-EGL.functional.*.*_context.gles*.other failures 1123- rpi4/ci: move \`spec\@!opengl 1.1\@depthstencil-default_fb-drawpixels-24_8 samples=2` from fails for flakes after an UnexpectedPass 1124- rpi4/ci: remove \`spec\@!opengl 1.1\@depthstencil-default_fb-drawpixels-32f_24_8_rev samples=2` from fails as it's a flaky test and already marked as such 1125- Revert "ci: backport two mesh/task query fixes for VKCTS" 1126- ci/build-deqp: stop ignoring failures while fetching patches 1127- ci/build-deqp: split deqp version into a variable 1128- ci/build-deqp: move mkdir earlier 1129- ci/build-deqp: print more detailed information about what deqp version is running 1130- ci: bump image tags to rebuild deqp 1131- ci/rules: add missing clang-format files to what needs containers to build 1132- broadcom/ci: merge gl test lists to use a single deqp instance 1133- broadcom/ci: fix list indentation 1134- broadcom/ci: split broadcom-common manual rules to .broadcom-common-manual-rules 1135- vc4/ci: add manual variant of .vc4-rules 1136- v3dv/ci: add manual variant of .v3dv-rules 1137- v3d/ci: add "full run" variant of v3d-rpi4-gl:arm64 as a manual job 1138- v3dv/ci: add "full run" variant of v3dv-rpi4-vk:arm64 as a manual job 1139- vc4/ci: add piglit "full run" variant of vc4-rpi3-gl:arm32 as a manual job 1140- rpi4/ci: skip more timing out tests in the dEQP-VK.ssbo.layout.* group 1141- zink+radv/ci: simplify deqp config 1142- zink+radv/ci: ensure renderer is "zink on radv" 1143- ci: restore sanity (aka. Revert "ci: don't run sanity in Marge pipelines") 1144- gitlab_gql: strip newline at the end of the token file 1145- ci_run_n_monitor: compile target_jobs_regex only once 1146- ci/gitlab_gql: stop re-compiling regex now that all users pre-compile it 1147- v3d/ci: run manual jobs in daily pipeline 1148- radeonsi/ci: document new failures and flakes 1149- ci: disable lima farm as it appears to be down 1150- radv/ci: add navi21 flakes 1151- radv/ci: add vega10 flakes 1152- radv/ci: add polaris10 flakes 1153- radv+zink/ci: add polaris10 flakes 1154- radv+zink/ci: add navi10 flakes 1155- bin/gitlab_gql: resolve sha locally to be able to use things like \`HEAD` 1156- gitlab_gql: make \`--rev` optional, defaulting to \`HEAD` 1157- bin/gitlab_gql: fix command in example 1158- bin/gitlab_gql: only get the pipeline when a pipeline is needed 1159- v3d/ci: add new failures 1160- bin/gitlab_gql: only allow a single \`--print-\*` argument per invocation 1161- bin/gitlab_gql: rename get_job_final_definition() to print\_...() since that's what it actually does 1162- bin/gitlab_gql: deduplicate fetch_merged_yaml() logic between print branches 1163- bin/gitlab_gql: give a better name to the --print-job-manifest argument value than PRINT_JOB_MANIFEST 1164- ci/valve-infra: ensure the correct farm picks up the job 1165- docs: update calendar for 23.3.0-rc{2,3,4} and add another release candidate 1166- util/xmlconfig: drop default SYSCONFDIR & DATADIR values 1167- lima: drop unused lima_get_absolute_timeout() 1168- intel/ci: fix gl/vk dependencies in hsw jobs 1169- intel/dev: use libdrm.h wrapper to support builds without libdrm 1170- ci_run_n_monitor: require user to add an explicit \`.*` at the end if jobs like \`*-full` are wanted 1171- amd/ci: avoid re-running all the test jobs when changing the expectations for only one of them 1172- egl/dri2: increase NUM_ATTRIBS to fit all the attributes 1173- asahi: use util_resource_num() instead of open-coding it 1174- ci/piglit: specify only the traces file in the job config 1175- amd/ci: track changes to the traces config file as well 1176- ci: fix kdl commit fetch 1177- ci: uprev deqp-runner from 0.16.1 to 0.18.0 1178- ci/deqp-runner: turn paths in errors into links 1179- docs: update calendar for 23.0.0-rc5 1180- docs: add another -rc 1181- ci: use released version of meson 1182- lp: make sure 0xff is unsigned before shifting it past signed int range 1183- intel/perf: fix regex escaping 1184- intel/ci: fix .hasvk-manual-rules 1185- docs: update calendar for 23.3.0 1186- docs/calendar: add 23.3.x releases 1187- bin/python-venv: detect python version change 1188- ci: disable opengl & gles in debian-vulkan build 1189- radv/ci: add navi21-aco flake 1190- bin/gen_release_notes: fix regex raw string 1191- bin/python-venv: fix venv folder check 1192- bin/gen_release_notes: include removed 'new_features.txt' in commit 1193- docs: add release notes for 23.3.0 1194- docs: add sha256sum for 23.3.0 1195- docs: fix release date for 23.3.0 1196- turnip: fix typo in comment 1197- ci_run_n_monitor: allow picking a pipeline by its MR 1198- amd/ci: radeonsi is gl, not vk 1199- v3dv: update symbols that have become aliases for newer ones 1200- v3dv: drop duplicate flag 1201- radv: update symbols that have become aliases for newer ones 1202- pvr: update symbols that have become aliases for newer ones 1203- anv: update symbols that have become aliases for newer ones 1204- hasvk: update symbols that have become aliases for newer ones 1205- amd/ci: fix yaml indentation 1206- amd/ci: split common amd files list from radeonsi files list 1207- amd/ci: limit radv jobs to radv + aco files changes 1208- nvk: update symbols that have become aliases for newer ones 1209- vk/runtime: update symbols that have become aliases for newer ones 1210- vk/wsi: update symbols that have become aliases for newer ones 1211- vk/util: update symbols that have become aliases for newer ones 1212- vk/overlay-layer: update symbols that have become aliases for newer ones 1213- venus: update symbols that have become aliases for newer ones 1214- venus: fix typo in comment 1215- amd/ci: reuse .radeonsi-rules in .radeonsi-vaapi-rules 1216- nvk: use \`||` instead of \`|` between bools 1217- radeonsi/ci: update vangogh piglit expectations 1218- freedreno/ci: add flake seen on a630 1219- freedreno/ci: add more flakes seen on a630 1220- freedreno/ci: add more a630 flakes 1221- v3d: drop leftover from "move v3d_tiling to common" 1222- radeonsi/ci: track changes to \`vpelib` 1223- turnip: update symbols that have become aliases for newer ones 1224- util/blob: fix trivial typo 1225- ci: explain what we mean by the various types of pipelines 1226- ci: turn comment into code in \`sanity` job rules 1227- ci: identify merge request pipelines using \`$CI_PIPELINE_SOURCE == merge_request_event` instead of \`$CI_COMMIT_BRANCH` being missing 1228- ci: rename is-pre-merge-for-marge to is-merge-attempt to be clearer 1229- ci: drop containers, builds, and tests from post-merge pipeline 1230- ci: add pipeline for direct pushes to main 1231- ci: give an explicit priority to the scheduled nightly pipelines 1232- ci: clean up pre-merge and fork pipelines rules 1233- ci: make sure pre-merge pipelines have the same jobs as merge pipelines 1234- ci: improve comments 1235- ci: take microsoft farm offline 1236- ci: fix rules for formatting checks 1237- zink/ci: fix yaml indentation 1238- zink/ci: use variable to avoid repeating the list 1239- zink/ci: expand first (and only) level of folders in the list of files 1240- zink/ci: run only the relevant jobs when changing the ci expectations 1241- panfrost/ci: fix yaml indendation 1242- panfrost/ci: run only the relevant jobs when changing the ci expectations 1243- freedreno/ci: fix yaml indentation 1244- freedreno/ci: run only the relevant jobs when changing the ci expectations 1245- intel/ci: fix yaml indentation 1246- intel/ci: deduplicate common intel files rules 1247- intel/ci: expand first level of common intel files 1248- intel/ci: anv changes should only trigger anv jobs 1249- intel/ci: hasvk changes should only trigger hasvk jobs 1250- intel/ci: run only the relevant jobs when changing the ci expectations 1251- docs/calendar: add 24.0 branchpoint and release schedule 1252- etnaviv/ci: fix yaml indentation 1253- etnaviv/ci: expand first level of files in src/etnaviv/ 1254- etnaviv/ci: run only the relevant jobs when changing the ci expectations 1255- broadcom/ci: avoid running the rpi4 jobs when changing the rpi3 expectations, and vice-versa 1256- vk/update-aliases.py: drop dead --check-only 1257- vk/update-aliases.py: allow specifying the files we want to update 1258- vk/update-aliases.py: handle "no match" grep call 1259- vk/update-aliases.py: sort files when informing the user of the matches 1260- vk/update-aliases.py: simplify addition of other concatenated prefixes 1261- vk/update-aliases.py: handle more concatenated prefixes 1262- vk/update-aliases.py: enforce correct list order 1263- vk/update-aliases.py: only apply renames for the vulkan api (not vulkansc) 1264- v3dv/ci: only trigger on relevant changes 1265- a630/ci: add another flake 1266- freedreno/ci: move hang-y a630 jobs from pre-merge to nightly 1267- spirv: add missing build dependency 1268- ci/b2c: drop passthrough of unset CI_JOB_JWT 1269- ci/b2c: stop ignoring errors in before_script 1270- ci/b2c: fix indentation of comment and after_script: list 1271- ci/b2c: drop unused B2C_EXTRA_VOLUME_ARGS 1272- ci/b2c: tags are mandatory 1273- ci/b2c: drop support for harbor.freedesktop.org 1274- ci/b2c: drop unused --volume and --mount-volume 1275- ci/b2c: always define job_volume_exclusions 1276- ci/b2c: always define cmdline_extras 1277- ci/b2c: use with:write instead of manually doing open;write;close 1278- ci/b2c: export B2C_TEST_SCRIPT 1279- ci/b2c: use envvars directly instead of converting them back and forth into cli args 1280- ci/b2c: import all variables starting with \`B2C_` 1281- ci/b2c: rename B2C_TEST_SCRIPT to B2C_CONTAINER_CMD to match the automatic import 1282- ci/b2c: identify dut by its id instead of its tags 1283- docs: add release notes for 23.3.1 1284- docs: add sha256sum for 23.3.1 1285- docs: update calendar for 23.3.1 1286- ci: deduplicate constructing the ARTIFACTS_BASE_URL 1287- bin/gitlab_gql: fix --print-merged-yaml when --rev != HEAD 1288- bin/gitlab_gql: print merged yaml as yaml instead of a python dict 1289- v3d/ci: add flake 1290- ci: fix indentation 1291- ci: run every test when changing the build 1292- docs: drop \`:` in title 1293- radv/ci: add flake 1294- docs: document how to build the docs 1295- vulkan/wsi: fix build when platform headers are installed in non-standard locations 1296- ci/build: drop redundant meson/build.sh from jobs that already inherit from .meson-build 1297- radv/ci: add flake on raven 1298- ci: add nvk to the clang build 1299- ci: disable collabora farm as it is currently offline 1300- ci: fix farm restore pipelines 1301- meson: always define {,DRAW_}LLVM_AVAILABLE one way or the other 1302- docs: add release notes for 23.3.2 1303- docs: add sha256sum for 23.3.2 1304- docs: update calendar for 23.3.2 1305- meson: update expat wrap 1306- meson: update libarchive wrap 1307- meson: update libxml2 wrap 1308- meson: update zlib wrap 1309- meson: use \`allow_fallback` instead of manually listing the deps and what they provide 1310- ci/containers: use build-libdrm.sh in debian/android 1311- Revert "meson: add wrap for libdrm" 1312- zink: update symbols that have become aliases for newer ones 1313- zink/requirements: update feature and property names that have been promoted 1314- docs/backport-mr: fix invalid nested formatting 1315- docs: fix list whitespace 1316- docs: mention that python package \`packaging` is required on python 3.12+ 1317- lvp: update symbols that have become aliases for newer ones 1318- egl: only accept APIs that are compiled in 1319- ci: split & reuse debian version identifier 1320- ci: convert several \`find | xargs` to \`find -exec` 1321- ci/deqp: set default platform to \`default` instead of glx, to also support wayland 1322- docs: add release notes for 23.3.3 1323- docs: add sha256sum for 23.3.3 1324- docs: update calendar for 23.3.3 1325- docs: close the 23.2 cycle 1326- VERSION: bump for 24.0.0-rc1 1327- .pick_status.json: Update to 4fe5f06d400a7310ffc280761c27b036aec86646 1328- .pick_status.json: Mark 0557f0d59c5b22a8a934900ddc91f7a6057e146f as denominated 1329- ci: make sure we evaluate the python-test rules first 1330- .pick_status.json: Update to ff84aef116f9d0d13440fd13edf2ac0b69a8c132 1331- .pick_status.json: Update to 10e2dbb63b9d1f8f35c4fc3f570cd19b3fc03b43 1332- ci: fix job dependency error in MRs for bin/ci/* scripts 1333- VERSION: bump for 24.0.0-rc2 1334- ci/deqp: ensure that in \`default` builds, wayland + x11 + xcb are all built 1335- .pick_status.json: Update to d2b08f9437f692f6ff4be2512967973f18796cb2 1336- .pick_status.json: Update to d0a3bac163ca803eda03feb3afea80e516568caf 1337- .pick_status.json: Update to 90939e93f6657e1334a9c5edd05e80344b17ff66 1338- .pick_status.json: Update to eca4f0f632b1e3e6e24bd12ee5f00522eb7d0fdb 1339- VERSION: bump for 24.0.0-rc3 1340- .pick_status.json: Update to b75ee1a0670a3207dfd99917e4f47d064a44197f 1341- .pick_status.json: Update to 4cd5b2b5426e8d670fc3657eee040a79e3f9df1e 1342- util: rename __check_suid() to __normal_user() 1343- tree-wide: use __normal_user() everywhere instead of writing the check manually 1344- util: simplify logic in __normal_user() 1345- util: check for setgid() as well in __normal_user() 1346 1347Eric R. Smith (1): 1348 1349- panfrost: fix panfrost drm-shim 1350 1351Erico Nunes (6): 1352 1353- v3dv: Rework to remove drm authentication for wsi 1354- lima/ci: update piglit ci expectations 1355- Revert "ci: disable lima farm as it appears to be down" 1356- panvk: Support modifiers for Wayland WSI 1357- ci: lima farm is down 1358- Revert "ci: lima farm is down" 1359 1360Erik Faye-Lund (34): 1361 1362- docs: prepare for hawkmoth 1363- docs: remove breathe/doxygen stuff 1364- docs: improve readability of c-signatures 1365- util: remove unused lut 1366- panfrost: allow packing formats outside of pan_format.c 1367- panfrost: bypass format-table for null-textures 1368- panfrost: pass blendable formats to pan_pack_color 1369- panfrost: store blendable_formats in panfrost_device 1370- panfrost: look at correct blendable format version 1371- panfrost: use perf_debug instead of open-coding 1372- mesa/ffvs: use unreachable instead of assert 1373- docs: apply permanent redirect 1374- panfrost: do not open-code panfrost_has_fragment_job() 1375- ci: opt-out panfrost from clang-format 1376- panfrost: minify dimensions when converting modifiers 1377- util/format: document NONE swizzle 1378- lavapipe: do not use NONE-swizzle 1379- panfrost: do not handle NONE-swizzle 1380- d3d12: do not handle PIPE_SWIZZLE_NONE from sampler-view 1381- zink: do not handle PIPE_SWIZZLE_NONE 1382- meson: work around meson 0.62 issue 1383- mesa/main: remove unused Log2 variants of width/height/depth 1384- mesa/main: remove unused ClassID 1385- mesa/main: use _mesa_is_zero_size_texture-helper 1386- mesa/main: remove unused function 1387- mesa/st: use _mesa_is_zero_size_texture-helper 1388- zink: update profile schema 1389- zink: use KHR version of maint5 features 1390- panfrost: document ci failure 1391- mesa/st: do not require render-target support for texture-only exts 1392- mesa/st: do not check for emulated format 1393- mesa: actually check for EXT_color_buffer_float support 1394- mesa/main: require EXT_color_buffer_float for ES 3.2 1395- mesa: check for float-format support 1396 1397Etaash Mathamsetty (1): 1398 1399- driconf: add a workaround for Rainbow Six Siege 1400 1401Faith Ekstrand (663): 1402 1403- nir: Add a lower_first_invocation_to_ballot option to lower_subgroups 1404- nir: Add a lower_read_first_invocation option to lower_subgroups 1405- nir/lower_bit_size: Fix subgroup lowering for floats 1406- nir/lower_bit_size: Handle vote_feq/ieq separately 1407- nir/lower_bit_size: Use u_intN_min/max() 1408- nir: Split nir_lower_subgroup_options::lower_vote_eq into two bits 1409- nir: Return b2b ops from nir_type_conversion_op() 1410- nir/lower_bit_size: Use b2b for boolean subgroup ops 1411- nir: add deref follower builder for casts. 1412- nir: Handle wildcards with casts in copy_prop_vars 1413- nir: Use nir_builder to insert movs 1414- nir: Add asserts to nir_phi_builder_value_set_block_def 1415- vc4: Stop assuming glsl_get_length() returns 0 for vectors 1416- v3d: Stop assuming glsl_get_length() returns 0 for vectors 1417- nir/lower_io_to_vector: Only call glsl_get_length() on arrays 1418- nir/types: Support vectors in glsl_get_length() 1419- nir: Handle array-deref-of-vec in vars_to_ssa 1420- nir: Handle array-deref-of-vec in var split passes 1421- nir/validate: Allow array derefs on vectors on function/shader_temp 1422- nvk: Force all mappable BOs into GART pre-Maxwell 1423- nvk: Fix nvk_heap_free() for contiguous heaps 1424- nvk: Drop a bogus assert 1425- nvk: Assert no storage images on Kepler 1426- nir: Optimize boolean ieq/ine with an immediate 1427- nouveau: Add initial headers and meson for the new compoiler 1428- nak: Copy the optimization loop from Intel 1429- nak: Add a bunch of shader lowering code in NIR 1430- nak: Add initial stubs for rust code 1431- nvk: Run shaders through NAK 1432- nak: Add the core IR 1433- nak: Add Rust bindings for NIR 1434- nak: Add initial translation from NIR 1435- nak: Add a copy-prop pass 1436- nak: Add a dead-code pass 1437- nak: Add a util library 1438- nak: Add a trivial register allocator 1439- nak: Add a lowering pass for VEC and SPLIT instructions 1440- nak: Add a lowering pass for ZERO sources and destinations 1441- nak: Add bitset infrastructure 1442- nak: Add encoding for a few instructions 1443- nak: Encode program headers 1444- nak: Header stuff 1445- nak: Lower system values to a new load_sysval_nak intrinsic 1446- nak: Implement load_sysval_nv as S2R 1447- nak: Implement load_ubo 1448- nak: Implement load/store_global 1449- nak: Zero out the .w component of descriptors 1450- nak: Add an instruction fuzzing tool 1451- nak: Implement iadd and ishl 1452- nak: Add a pass for computing instruction dependencies 1453- nak: Implement 32-bit logic ops 1454- nak: Add support for instruction predicates 1455- nak: Implement integer comparisons 1456- nak: Implement bcsel 1457- nak: Rework ALU instruction encode 1458- nak/meson: Use bindgen dependencies 1459- nak: Add nak_compiler_create/destroy 1460- nvk: Pass an actual nak_compiler to nak_compile_shader() 1461- nak: Plumb the SM through to nak::Shader 1462- nak: Encode load/store correctly on SM80 1463- nak: Rework instruction encoding 1464- nak: Implement boolean logic ops 1465- nak: Lower 8 and 16-bit types 1466- HACK: Support old meson 1467- nak: Use Instr::num_srcs/dsts() less 1468- nak: Get rid of meta instructions 1469- meson: Pull in syn from crates.io 1470- nak: Add SrcAsSlice and DstAsSlice traits 1471- nak: Add a SrcModsAsSlice trait 1472- nak: Use a different inner struct type for each opcode 1473- nak: Use Src::Zero for load_const(0) 1474- nak: Handle zeroes at emit time 1475- nak: Implement i2f 1476- nak: Implement fadd 1477- nak: Rework integer compare ops 1478- nak: Implement float comparisons 1479- nak: Implement nir_op_b2f32 1480- nak: Implement unary float and integer ops 1481- nak: Allow iadd3 to take an immediate in srcs[2] 1482- nak: Implement fsign 1483- nak: Rework ALUSrc in emit code 1484- nak: Rework source modifiers 1485- nak: One of the predicates in IADD3 is a destination 1486- nak: Implement Display for SSAValue 1487- nak: Make Dst its own type 1488- nak: Add modifier propagation 1489- nak: Implement basic control-flow 1490- nak: Move nak_compiler to nak_private.h 1491- nak: Add a nir_shader_compiler_options to nak_compiler 1492- nvk: Pull the NIR options from NAK 1493- nak: Implement b2i32 1494- nak: Implement iadd64 1495- nak: Implement phis 1496- nak: Add a union-find implementation 1497- nak: Lower global access to scalars as needed 1498- nak: Print names of missing instructions 1499- nak: Implement unpack_64_2x32_split_* 1500- WIP: nak: Rework the barrier assignment pass 1501- nak: Add an SSAValueAllocator struct 1502- nak: Pass an SSAValueAllocator through to map methods 1503- nak: Handle fadd funnyness in the emit code 1504- WIP: nak: Add a legalization pass 1505- nak: Rename Imm to Imm32 1506- nak: Add separate True and False source types 1507- nak: Handle phis with non-SSA sources 1508- nak: Support both destinations in PLOP3 1509- nak: Drop the special cases for single-component vec/split 1510- nak: Don't emit MOVs for overlapping vec and split src/dst 1511- HACK: nak: Lower iadd64 again 1512- nak: Add a parallel copy in struction with lowering 1513- nak: Use OpParCopy for OpVec and OpSplit lowering 1514- nak: Get rid of the BitSet and BitSetMut traits 1515- nak: Rename BitSetView to BitView 1516- nak: Add a BitSet struct 1517- nak: Add an SSAComp struct 1518- nak: Rework dead-code 1519- nak: Rework phis 1520- nak: Add a space to the end of vec and split arg lists 1521- nak: Add a liveness analysis pass 1522- nak: Add a non-trivial register allocator 1523- nak: Improve the dependency tracker 1524- nak: Handle token re-use in dep tracking 1525- nak: Implement nir_op_i(eq|ne) for booleans 1526- nak: Fold [P]Lop3 sources 1527- nak: Predicates default to true 1528- nak: Implement nir_op_[iu](min|max) 1529- nak: Implement nir_op_fmul 1530- nak: Implement nir_op_(fmin|fmax) 1531- nak: Implement nir_op_u2f 1532- nak: Implement nir_op_vecN 1533- nak: Implement MuFu and a bunch of float unops 1534- nak: Move nak_sysval_attr_addr/sysval_idx higher in the file 1535- nak: Implement input interpolation 1536- nak: Handle multiple vector destinations in RA 1537- nak: Use immediage offsets for load/store_global 1538- nak: Implement OpFSOut with an OpParCopy 1539- nak: Implement f2[iu]32 1540- nak: Wire up ffma 1541- nak: Add more legalization 1542- nak: Implement right-shifts 1543- nak: Implement nir_op_[iu]mul[_high] 1544- nak: Enable nir_lower_idiv 1545- nak: Add a NIR texture lowering pass 1546- nak: Use more core NIR texture lowering 1547- nak: Wire up texture ops 1548- nak: Simplify the FromVariants proc macro 1549- nak: Simplify the (Srcs|Dsts)AsSlice proc macro 1550- HACK: spirv: Add a MESA_SPIRV_DUMP_PATH environment variable 1551- nak: Add a NAK_DEBUG environment variable 1552- nvk: Drop printing of NAK shaders 1553- nvk: Pass NAK flags through to shader cache UUIDs 1554- nak: Add a debug flag to assign worst-case instruction deps 1555- nak: Rework vector handling 1556- nak: Legalize vector sources 1557- nak: Add a use tracker to RA 1558- nak: Much more believable try_find_unused_reg_range() 1559- nak: Implement nir_op[iu]mul_2x32_64 1560- Revert "HACK: nak: Lower iadd64 again" 1561- nak: Implement nir_op_ixor 1562- nak: Implement undef instructions 1563- nak: Implement image load/store 1564- nak: Wire up OpLd and OpSt for local and shared 1565- nak: Implement nir_intrinsic_load/store_scratch 1566- nak: Add a smarter new_lop2 helper 1567- nak: Improve RA failure messages 1568- nak: Legalize OpShf 1569- nak: Only put actually live SSA values in the ra.live_in sets 1570- nak: Legalize more stuff 1571- nak/nir: Lower image size and samples to txq 1572- nak: Improve [FI]SETP encoding 1573- nak: Legalize Op[FI]Setp 1574- nak: Don't allow r255 in texture or surface ops 1575- nak: sin() and cos() require we divide by 2pi 1576- nak: Add F2F and implement fquantize16 1577- nak: Implement barriers 1578- nvk: Plumb num_barriers through from NAK 1579- nak: Implement load/store_shared 1580- nak: Integers don't have abs() source modifiers 1581- nak: Add a mechanism for decorating sources with types 1582- nak: Decorate sources with types 1583- nak: Only divide FS inputs by .w for smooth interpolation 1584- nak: Rework source modifiers a bit 1585- nak: Add a Src::supports_src_type() helper 1586- nak: Rework copy-prop to use soruce type decorations 1587- nak: Implement nir_intrinsic_global_atomic_* 1588- nak: Implement nir_intrinsic_shared_atomic_* 1589- nak: Implement global/shared_atomic_comp_swap 1590- nak: Implement image atomics 1591- nak: Fix the 2nd predicate on LOP3 1592- nak: Optimize OpLop3 and OpPLop3 1593- nak: DCE things with constant false predicates 1594- nak: Rework source modifiers instructions a bit 1595- nak: Fold fsat into FAdd/FFma/FMul 1596- nak: Delete unused imports and dead code 1597- nak: Add accum predicates to Op[FI]Setp 1598- nak: Add a Pred struct move the enum to PredRef 1599- nak: Fix multisampled textureing 1600- nak: Legalize everything 1601- nak: Rework cbufs a bit 1602- nak: Implement indirect UBO loads 1603- nak: Implement nir_op_b2b1 and nir_op_b2b32 1604- nak: Follow memcpy semantics with OpParCopy 1605- nak: Work in terms of bits for type sizes 1606- nak: Add a builder 1607- nak: Use the builder in some lowering passes 1608- nak: Compute liveness in reverse block order 1609- nak: Rework liveness to add next-use information 1610- nak: Add a PerRegFile helper struct 1611- nak: Record register pressure in liveness 1612- nak: Initialize RA with only live registers 1613- nak: Use num_regs instead of max_reg in RA 1614- nak: Use pcopy.push() in RA 1615- nak: Rework RA a bit 1616- nak: Add some documentation for SSA values 1617- nak: Print to stderr 1618- nak/ra: Pass a PerRegFile num_regs into the allocator 1619- nak: Allocate the minimum number of GPRs. 1620- nak: Separate the CFG from liveness 1621- nak: Break guts of liveness into traits 1622- nak: Require Rust 1.70.0 1623- nak: Handle dead destinations in RA 1624- nak: Make calc_max_live a function of the Liveness trait 1625- nak: Bring back bitset-based liveness 1626- nak: Add mum_gprs and tls_size to Shader 1627- nak: Accurately set num_gprs 1628- nak: Add a RegFileSet struct 1629- nak: Add more SSA iterator options 1630- nak: Add a new VecPair type 1631- nak/nir: Add more helpers 1632- nak: Emit if branches in the predecessor block 1633- nak: Add a more awesome CFG data structure 1634- nak: Store the blocks in the CFG 1635- nak: Base liveness on CFG indices 1636- nak: Add loop detection to the CFG 1637- nak: Add a phi allocator 1638- nak: Refactor nak_assign_regs a bit 1639- nak: Use u32 for register indices 1640- nak: Rework map_instrs() 1641- nak: Add a new OpCopy instruction for parallel copy lowering 1642- nak: Use the builder for the legalize pass 1643- nak: Use OpCopy in legalize 1644- nak: Use more OpCopy 1645- nak: Add a Mem register file 1646- nak: Handle RegFile::Mem in parallel copy lowering 1647- nak: Allow DCE on functions 1648- nak: Restructure liveness construction 1649- nak: Add interference helpers 1650- nak: Add a dominance check to CFG 1651- nak: Add helpers to BasicBlock to get phis 1652- nak: Add a to-CSSA pass 1653- nak: Add an SSA repair pass 1654- nak: Union find 1655- nak/ra: Drop the pointless AssignRegs struct 1656- nak/ra: Handle parallel copies as a special case 1657- nak/ra: Don't free killed for OpPhiSrcs 1658- nak: Expose LiveSet for incremental liveness tracking 1659- nak: Add a RegFileSet filter to NextUseLiveness::for_function() 1660- nak: Add more NextUseLiveness helpers 1661- nak: Add a spilling pass 1662- nak: Use the correct number of GPRs on Turing+ 1663- nak: Spill registers before RA 1664- nak: Add a debug flag to test spilling 1665- nak: Implement shader clock 1666- nak/ra: Improve coalescing 1667- nak/spill: Tweak the construction of S sets 1668- nak: Document spilling and RA 1669- nak: Add an alloc_vec() to SSAValueAllocator 1670- nak: Move all the IADD3 insanity to a new OpIAdd3X opcode 1671- nak/legalize: Fix too many IADD3 source modifiers 1672- nak: Disable lower_image_size_to_txs for NAK 1673- nak: IMAD also has a destination predicate 1674- nak: Remap GLSL_SAMPLER_DIM_SUBPASS and SUBPASS_MS to 2D and MS 1675- nak: Fix instruction ordering in nak_ir.rs 1676- nak: Rename OpBFind to OpFlo 1677- nak: Implement Index[Mut] for RegTracker 1678- nak: Use the right number of predicates in RegTracker 1679- nak: Rework the barrier insert pass 1680- nak: Rework calc_delay.rs 1681- nak: Re-work Instr::get_latency() 1682- nak: Emit FS_OUT before EXIT 1683- nvk: Use sysvals for fragcoord etc. with NAK 1684- nak: Handle flat FS inputs 1685- nak: Add support for centroid and sample interp modes 1686- nak: Use load_interpolated_input for frag_coord 1687- nak: Properly handle OpFSOut in RA and liveness 1688- nak: Handle empty OpFSOut 1689- nak/nir: Several FS output fixes 1690- nak: Implement load_sample_id and load_sample_mask_in 1691- nak: Implement discard and demote 1692- nak: Set TLS size properly in the shader header 1693- nvk,nak: Plumb through the zs_self_dep key bit 1694- nak: Use count_attribute_slots for FS input var sizes 1695- nak: Pull sm, num_gprs, and tls_size into a ShaderInfo struct 1696- nak: Stash a ShaderInfo in ShaderFromNir 1697- nak: Rework FS outputs again 1698- nak: Re-plumb compute shader info 1699- nak: Plumb more FS info through to the C API 1700- nvk/nak: Translate our new FS flags from NAK to nvk_shader 1701- nak: Saturate depth writes 1702- nak: Add support for gl_FrontFace 1703- nak/nir: Fix helper invocations 1704- nak/nir: Use nir_shader_intrinsics_pass for FS inputs 1705- nak: Handle interpolate_at_offset 1706- nak: Take components into account in load_*input 1707- nak: Plumb uses_kill through from nak_from_nir 1708- nak/nir: Plumb the FS key into lower_fs_input_intrin 1709- nak/nir: Move frag_coord/sample_pos lowering to FS input lowering 1710- nak/nir: Fix sample vs. pixel input interpolation 1711- nak/nir: Add a load_frag_w helper 1712- nak/nir: Interpolate gl_PointCoord 1713- nak/nir: Return one sample for gl_SampleMaskIn[0] when sample shading 1714- nak: Fold source modifiers in legalize 1715- nak: Provide more detail when printing IR after passes 1716- nak: Handle modifiers in dedup_srcs() in opt_lop() 1717- nvk: Add a helper for lowering system values to root table loads 1718- nvk: Lower more draw system values 1719- nak: Take component into account in store_output 1720- nak: Fix printing of OpASt 1721- nak: Move NIR enum translation out of nak_sph.rs 1722- nak: rustfmt fixes 1723- nak: Simplify I/O gathering 1724- nvk: Set clip/cull_enable for NAK shaders 1725- nak: Run simple liveness data-flow bottom-up 1726- nak/bitset: Add a helper for modifying in-place 1727- nak: Don't allocate bitsets in liveness data-flow 1728- nak: Handle non-constant I/O offsets 1729- nouveau/parser: Dump SET_STREAM_OUT_CONTROL_* properly 1730- nak: Translate XFB info 1731- nvk: Plumb through XFB info from NAK 1732- nak: Add a Label struct for branch targets 1733- nak: Add OpNop which can have a label 1734- nak: Break indirect offset encoding into a helper 1735- nak: Allow encoding Dst::None 1736- nak: Add barrier instructions 1737- nak/builder: Return the instruction from push_*() 1738- nak: Implement NIR control barriers 1739- nak: Implement From for SrcRef for more types 1740- nak: Add enums for sysvals and attributes 1741- nak: Plumb clip/cull enables through nak 1742- nak/nir: Lower tessellation and geometry I/O 1743- spirv: Fix locations for per-patch varyings 1744- nak: NVIDIA calls them tessellation init shaders 1745- nak: Rework OpALd and OpASt a bit 1746- nak: Set per patch attribute count both places in the SPH 1747- nak: Handle location_frac for FS outputs in nak_from_nir.rs 1748- nak: Add lowering for per-vertex I/O 1749- nak: Implement more attribute I/O 1750- nak/nir: Lower load_primitive_id 1751- nak,nvk: Plumb through tessellation info 1752- nak: Implement load_tess_coord 1753- nak: Fix lowering for patch_vertices_in 1754- HACK: Only emit OpBar in compute shaders 1755- nak/nir: Use count_vec4_slots instead of count_attribute_slots 1756- nak: Add NIR lowering for attribute I/O 1757- nak/nir: Lower systm values before lowering I/O 1758- nak: Use nak_nir_lower_vtg_io 1759- nak: Fix a bunch of warnings 1760- nak: Fix opt_out 1761- nak/bitset: Improve set_words() 1762- nak/bitset: Add an is_empty() helepr 1763- nak/bitset: Fix next_set() 1764- nak/sph: Round tls_size up to a multiple of 16 1765- nak: Fix repair_ssa() for back-edges 1766- nak: Fix parallel copy handling in spilling 1767- nak: Fix to_cssa() 1768- nak/nir: Don't lower 1-bit phis 1769- nak: Support encoding -Zero 1770- nak: Fix fneg to do fadd(-0, x) 1771- nak: Rename lower_vec_split() to lower_ineg() 1772- nak: Use Src::From<u32> and Src::From<bool> 1773- nak: A quick rustfmt fix 1774- nak: Upgrade to more modern meson 1775- nak: Add some #[allow(dead_code)] 1776- nak: Drop some unused helpers 1777- nak: Get rid of dead code warnings in RegFileSet 1778- nak: Get rid of warnings in nak_sph.rs 1779- nak: Drop the final calc_max_live() after GPR spilling 1780- nak: Don't print a range for one register 1781- nir: Add nvidia barrier intrinsics 1782- nak/nir: Add a pass for adding convergence barriers 1783- nak: Add OpBreak 1784- nak: Handle control-flow barriers 1785- nak: Use barriers for re-convergence 1786- nak: Remove unnecessary control barriers 1787- nak: Call nir_lower_subgroups() 1788- nak: Use nir_shader_intrinsics_pass for system values 1789- nak: Lower subgroup_id and num_subgroups 1790- nak/nir: Allow boolean vote_ieq 1791- nak/nir: Zero-pad subgroup masks 1792- nak: Implement vote and ballot 1793- nak: Fix the encoding of OpShfl 1794- nak: Implement read_invocation and shuffle_* 1795- nak: Allow 1-component image load/store 1796- nak: Emit CCtl in barriers with acq/rel semantics 1797- nak: Use strong ordering for Image load/store 1798- nak: Use the simplified BAR.SYNC encoding 1799- nak: Emit MemBar before Bar 1800- nak: Insert an OpNop after OpBar 1801- nak: Document a bit in encode_lds() 1802- nvk: Enable subgroups features 1803- nak: Rely on Rust 1.73 for next_multiple_of() and div_ceil() 1804- nak: Require meson 1.3.0 and clean up a couple bits 1805- meson: Set build.rust_std 1806- ci: Bump container images for NAK dependencies 1807- ci: Add syn to --force-fallback-for 1808- ci: Update the python env for ci_run_n_monitor.py 1809- nvk: Default to NAK on Turing+ 1810- nvk: Stop asserting 11-bit storage image handles 1811- nvk: Free NAK shaders 1812- nak: Fix copy-prop for OpPLop3 sources 1813- nak: Drop OpAtomCas in favor of OpAtom with atom_op == CmpExch 1814- nak: Make ALD/AST.PHYS a boolean 1815- nak: Make encode_sm75 a method of Shader 1816- nak: Plumb the nak_compiler through to lower_fs_input_intrin 1817- nak: Rework FS input interpolation 1818- nvk: Only advertise VK_KHR_shader_terminate_invocation if using NAK 1819- nvk: Handle load_first_vertex in nvk_nir_lower_descriptors() 1820- nak/nir: Lower indirect FS inputs 1821- nvk: Only lower outputs to temporaries 1822- nvk: Add a codegen helper for nir_shader_compiler_options 1823- nvk: Move a bunch of codegen-specific lowering to helpers 1824- nvk: Move the optimization loop to the nvk_codegen.c 1825- nvk: Move the guts of nvk_compile_nir() to nvk_codegen.c 1826- nvk: Move even more lowering into nvk_codegen.c 1827- nvk: Use nak_fs_key instead of rolling our own 1828- nak: Rename TLS to SLM 1829- nak: Properly prefix nak_xfb_info 1830- nak: Move clip, cull, and XFB into a nak_shader_info.vtg 1831- nak: Add a writes_layer bit to nak_shader_info::vtg 1832- nak: Handle the num_gpr offsetting inside nak 1833- nvk: Use nak_shader_info natively 1834- nak: Enable SM70 for Volta 1835- nak: Stop passing undefs to ipa_nv 1836- nak: Support dumping shader assembly as part of compile 1837- nvk: Don't set pipeline->base.type manually 1838- nvk: Implement VK_KHR_pipeline_executable_properties 1839- nvk: Drop nouveau_ws_bo_new_tiled() 1840- nvk: Rework error handling in nouveau_ws_bo_new() and from_dma_buf() 1841- nvk: Handle VMA allocation failure 1842- nvk: Add a separate VMA heap for BDA capture/replay 1843- nvk: Implement bufferDeviceAddressCaptureReplay 1844- nvk: Advertise VK_KHR_synchronization2 1845- nvk: Set the right API version in the ICD json files 1846- nak: Add the predicate destination to OpShfl 1847- nak: Add builder helpers for a few ops 1848- nak: Use c == 0x0 for shuffle_up 1849- nak: Lower scan/reduce in NIR 1850- nak: Implement quad ops 1851- nvk: Advertise the rest of the subgroup ops 1852- nak: Rework reg and SSA value printing 1853- nak: Make most Display stuff lower-case 1854- nak: Rework opcode printing to use a new trait 1855- nak: Implement DisplayOp on Op instead of Display 1856- nak: Default InstrDeps::delay to 0 1857- nak: Only write deps.delay when set 1858- nak: Align instructions when printing 1859- nak: Display memory access bits with the "." prefix 1860- nak: Make MemAddrType a part of MemSpace 1861- nak: Display memory type at the end for load/store ops 1862- nak: Rework printing of texture and image dims 1863- nak: Two more print fixes 1864- nak: gl_FragCoord and gl_PointCoord are screen-space interpolated 1865- nvk/codegen: Fragment shader builtins are noperspective 1866- nvk: Wire up MESA_VK_VERSION_OVERRIDE 1867- nvk: Limit shader stages to supported stages 1868- nak: Run rustfmt 1869- nak: Only insert barriers around ifs if they actually re-converge 1870- vulkan: Default override patch version to VK_HEADER_VERSION 1871- nvk: Advertise Vulkan 1.1 on Turing+ 1872- nak: Drop the PrmtSelection stuff 1873- nak: Add a builder helper for OpPrmt 1874- nak: Rework OpPrmt a bit 1875- nak: Implement nir_op_extract_* 1876- nak: Fix int8/16 lowering 1877- nak: Add base support for 8 and 16-bit types 1878- nak: Implement more int/float conversions 1879- nak: Implement integer conversions 1880- nak: Handle non-DW-aligned UBO loads 1881- nvk: Enable 8 and 16-bit integer types 1882- nak: Implement scan/reduce on booleans 1883- nak/nir: Handle CBuf alignment rules 1884- nak: Revert "nak: Handle non-DW-aligned UBO loads" 1885- nvk: Use the copy engine for CmdFillBuffer 1886- nvk: Use the copy engine for NVK_DEBUG=zero_memory 1887- nvk: Stop initializing the 2D engine 1888- vulkan: Move vk_synchronization2 to vk_synchronization 1889- vulkan: Add some auto-generated synchronization helpers 1890- vulkan: Add helpers for pipeline stage flags 1891- vulkan: Add helpers for access flags 1892- nvk: Move Begin/EndTransformFeedback to nvk_cmd_draw.c 1893- nvk: Rework transform feedback stalling 1894- nvk: Implement vkCmdPipelineBarrier2 for real 1895- nvk: Drop unnecessary per-draw/dispatch cache maintenance 1896- nvk: Drop MME_DMA_SYSMEMBAR before indirect draw/dispatch 1897- nak: Drop a bunch of SET_REFERENCE from the pre-Turing paths 1898- nvk: Advertise VK_EXT_subgroup_size_control 1899- nil: Add support for filling out linear texture headers 1900- nouveau: Rename nvidia-headers to headers 1901- nouveau: Move headers/classes to headers/nvidia/classes 1902- nak: Run rustfmt again 1903- nak: Fix integer roll-over when we have a u64vec4 1904- nak: Set .64/.32 on CSSR as needed 1905- nak/nir: Don't use nir_lower_bit_size on 64-bit values 1906- nak: Implement 64-bit ineg 1907- nak: Natively implement 64-bit shifts 1908- nak: Lower isign in NIR 1909- nak: Rework printing of comparisons 1910- nak: Implement 64-bit comparisons 1911- nak: Don't ask NIR to lower [iu]mul64_2x32 1912- nak: Use the right source types for I2F, F2I, and F2F 1913- nak: Fix encoding of 64-bit F2I, I2F, and F2F 1914- nak: Implement b2i64 1915- nak/nir: Don't lower 64-bit conversions 1916- nvk: Advertise shaderInt64 1917- nvk: Advertise VK_EXT_shader_subgroup_ballot/vote 1918- nak/nir: Handle non-32-bit data in lower_scan_reduce 1919- nvk: Advertise KHR_shader_subgroup_extended_types 1920- nvk: Advertise VK_KHR_shader_atomic_int64 1921- nak/nir: Trim image load/stores based on format 1922- nak: Lower 64-bit image load/store 1923- nak: Handle 64-bit image atomics 1924- nil: Add R64_SINT and R64_UINT formats 1925- nvk: Don't disable non-texturable formats 1926- nvk: Implement VK_EXT_shader_image_atomic_int64 1927- nak: Simplify Src::is_predicate() 1928- nak: Replace OpBMov with OpBClear 1929- nak: Fix scheduling for control barriers 1930- nak: Add a barrier register file 1931- nak: Add back OpBMov with better semantics 1932- nak: Add support for spilling barriers 1933- nak: Take num_barriers from RA 1934- nak: Make barriers SSA-friendly 1935- nak: Force RA to allocate bar_in/out to the same register 1936- nak: Add a barrier propagation pass 1937- dxil: Use mesa_prim consistently 1938- glsl: Properly remap GL_* to MESA_PRIM 1939- intel/vec4: Use MESA_PRIM_* instead of GL_* 1940- nir: Return a mesa_prim from gs_in_prim_for_topology 1941- compiler: Fix a comment 1942- radeonsi: Drop an unnecessary cast 1943- nvk: Advertise VK_EXT_scalar_block_layout 1944- nak: Advertise subgroupBroadcastDynamicId 1945- nak: Add a B32 source type 1946- nak: Rework the OpIAdd3/OpIAdd3X split 1947- nak/legalize: Handle the src0/1 source mod condition for OpIAdd3X 1948- nak: Legalize immediates with source modifiers 1949- nak: Implement uadd_sat 1950- nak: Implement usub_sat 1951- nvk: Implement VK_EXT_texel_buffer_alignment 1952- spirv: Plumb variable alignments through to NIR 1953- nir: Respect variable alignments in lower_vars_to_explicit_types 1954- nak: rustfmt 1955- nak: Restructure for better module separation 1956- ci: Also rustfmt binaries 1957- nir: Split has_[su]dot_4x8 bits into regular and _sat versions 1958- nir: Lower [su]dot_4x8_[ui]add_sat to [su]dot_4x8_[ui]add 1959- microsoft: Stop claiming dot_4x8_sat support 1960- nak: Rework printing of int/float types and rounding modes 1961- nak: Wire up DP4 1962- nvk: Advertise KHR_shader_integer_dot_product 1963- nak: Split legalize into per-SM functions 1964- nak: Initial WIP SM50 backend 1965- nak: Rework set_src_imm20 in nak_encode_sm50 1966- nak: Rewrite SM50 encode_fadd to not use encode_alu 1967- nak: Rename LogicOp to LogicOp3 1968- nak: Use OpLop2 and OpPSetP pre-SM70 1969- nak: Rework the SM50 encoding of isetp 1970- nak: Add SM50 encodings for ALD and AST 1971- nak: Only split texture destinations on Volta+ 1972- nak: Rework nvfuzz for SM50 1973- nak/nv50: Rewrite the encoding of OpShf 1974- nak/sm50: Wire up tex ops 1975- nak: Rewrite the SM50 encoding of OpF2I 1976- nak/sm50: Rewrite the encoding for OpIMnMx 1977- nak: Implement FS input interpolation on SM50 1978- nak/sm50: Rewrite the encoding for OpMov 1979- nak: Drop the SM50 encoding of BREV 1980- nak/sm50: Add better helpers for encoding sources with modifiers 1981- nak/sm50: Stop using ALUSrc for IADD2 1982- nak/sm50: Drop src_mod_has* in favor of core helpers 1983- nak: Clean up compiler warnings 1984- nak: Add barriers on Volta 1985- nak/nvfuzz: Add an SM parameter 1986- nak: Drop the fmnmx from Builder 1987- nak: Add an ftz bit to a bunch of float ops 1988- nak: Plumb through float controls 1989- nvk: Advertise VK_KHR_shader_float_controls 1990- nak: Plumb through float controls for fset[p] 1991- nak: Plumb through float controls for frnd[p] 1992- nak: Add dnz bits to OpFMul and OpFFma 1993- nak: Audit remaining FTZ/DNZ bits on sm70+ 1994- nak: Audit sm50 for FTZ/DNZ bits 1995- nak: Clean up instruction printing a bit 1996- nak: Rework barrier handling a bit 1997- nvk: Make NVK_DEBUG=push an alias for push_dump 1998- nvk: s/device/dev in nvk_descriptor_set_layout.c 1999- nvk: Plumb a physical device into descriptor_stride_align_for_type 2000- nvk: Add a nvk_min_cbuf_alignment() helper and use it 2001- nvk: Add an NVK_MIN_TEXEL_BUFFER_ALIGNMENT #define 2002- nak: Reduce minStorageBufferAlignment 2003- nvk: Simplify alignment limit plumbing 2004- nvk: CBuf alignment reduces to 64B on Turing 2005- nvk: Throw Tegra behind NVK_I_WANT_A_BROKEN_VULKAN_DRIVER 2006- nvk: Rework the way we set up memory heaps/types 2007- nir: Add a new has_fmulz_no_denorms flag 2008- nak: Set .ftz on f32 ops by default 2009- nak: Implement fmulz and ffmaz 2010- nvk: Enable NAK by default for Volta 2011- nak: Don't set both FTZ and DNZ at the same time 2012- nvk: Implement VK_EXT_multi_draw 2013- nak: Add a delay of 2 cycles for barriers 2014- nak: Rework the dependency pass 2015- nak: Handle negative cbuf offset immediates 2016- nak/sm50: Fix immediate encodings 2017- nak/sm50: Fix legalization of OpIAdd 2018- nak/sm50: Add legalization and encoding for OpLdc 2019- nvk/nir: Add cbuf analysis to nvi_nir_lower_descriptors() 2020- nvk/nir: Lower UBO loads to load_ubo when we have a cbuf 2021- nvk: Add a cbuf_bind_map to nvk_shader 2022- nvk: Stash descriptor set sizes 2023- nvk: Rework push_indirect to take an address 2024- nvk: Set MME_DATA_FIFO_CONFIG on device init 2025- nvk: Don't flush descriptors in BeginConditionalRendering 2026- nvk: Upload cbufs based on the cbuf_map 2027- nvk: Add debug flags to the physical device 2028- nvk: Enable cbufs 2029- nvk: Use ENUM_PACKED for enums instead of PACKED 2030- nir: Scalarize bounds checked loads and stores 2031- nak: Switch to //-style comments 2032- nak: Plumb shader model into instruction latency queries 2033- nak: Handle minimum execution latencies in the dep tracker 2034- nvk: Advertise VK_KHR_vulkan_memory_model 2035- nvk: Use render->color_att_count for color write enables 2036- nvk: Support extendedDynamicState3ColorWriteMask 2037- nak: Move the copy detection part of opt_copy_prop to a helper 2038- nak: Fix copy-prop for fp64 2039- nak: Copy propagate and constant fold OpPrmt 2040- nak: Make OpAtom::cmpr a GPR source 2041- nak: Pass SrcTypes around instead of RegFile in legalize 2042- nak/sm70: Allow src2 of 3src ops to be an immediate 2043- nak: OpDAdd doesn't have saturate 2044- nak: Rework encoding of ALU instructions on SM70+ 2045- nak: Add the rest of the double-precision ops 2046- nak: Split fmul/ffma handling from fmulz/ffmaz 2047- nak: Wire up 64-bit nir_op_fadd/ffma/fmul and comparisons 2048- nak: Fix nir_op_f2f64 2049- nak: Implement b2f64 2050- nak/nir: Set nir_lower_io_lower_64bit_to_32 for varyings 2051- meson: Update our rust dependencies 2052- nak: Fix encoding of dsetp with RZ on SM70+ 2053- nak: Implement 64-bit nir_op_fsign 2054- nak/sm50: Add encoding and legalization for dadd/dfma/dmul/dsetp 2055- nak/sm50: Fix encoding of f20 immediates 2056- nak/sm50: Fix encoding of iadd with imm32 2057- nak/sm50: Properly legalize OpSel and drop an assert 2058- nak/sm50: Add DMnMx and use it for fp64 fmin/fmax 2059- nir/lower_doubles: Add lowering for fmin/fmax/fsat 2060- nak/nir: Lower a bunch of fp64 2061- nvk: Advertise shaderFloat64 2062- nvk: Free shaders created by codegen 2063- nvk: Unref shaders on pipeline free 2064- nvk: Don't exnore ExternalImageFormatInfo 2065- nak: Fix TCS output reads 2066 2067Felix DeGrood (3): 2068 2069- anv: remove CS_FLUSH from query regression 2070- driconf: add Dying Light 2 to Intel XeSS workaround 2071- driconf: add Witcher3 to Intel XeSS workaround 2072 2073Felix bridault (1): 2074 2075- radv: use 32bit va range for sparse descriptor buffers 2076 2077Florian Weimer (1): 2078 2079- meson: C type error in strtod_l/strtof_l probe 2080 2081Francisco Jerez (70): 2082 2083- intel/l3/gfx11+: Add tile cache partition to intel_l3_config struct. 2084- intel/l3: Define helper for obtaining the size of an L3 partition in KB. 2085- intel/l3: Set up L3FullWayAllocationEnable config if ALL partition has over 126 ways. 2086- intel/dg2: Import L3 cache configurations. 2087- intel/mtl: Import L3 cache configurations. 2088- intel/xehp+: Add TBIMR-related genxml definitions. 2089- intel/xehp+: Import algorithm for TBIMR tiling parameter calculation. 2090- intel/xehp+: Add dynamic state flags controlling whether TBIMR is enabled during 3D primitives. 2091- intel/xehp+: Define driconf option for selectively disabling TBIMR. 2092- iris/xehp: Implement TBIMR tile pass setup and pipeline bandwidth estimation. 2093- anv/xehp: Implement TBIMR tile pass setup and pipeline bandwidth estimation. 2094- anv/xehp+: Enable TBIMR in generated draw calls. 2095- intel/xehp: Adjust TBIMR performance chicken bits. 2096- intel/xehp+: Adjust TBIMR batch size based on slice count. 2097- intel/xehp+: Use TBIMR tile box check in order to avoid performance regressions. 2098- intel/xehp: Enable TBIMR by default. 2099- intel/eu/xe2+: Add support for 10-bit SWSB representation on Xe2+ platforms. 2100- intel/fs/xe2+: Add comment reminding us to take advantage of the 32 SBID tokens. 2101- intel/fs/xe2+: Teach SWSB pass about the behavior of double precision instructions. 2102- intel/fs/xe2+: Handle extended math instructions as in-order in SWSB pass. 2103- intel/eu/xe2+: Add definition for size of GRF space on Xe2. 2104- intel/fs/xe2+: Don't special case SEL_EXEC in inferred_exec_pipe(). 2105- intel: Improve N-way pixel hashing computation to handle pixel pipes with asymmetric processing power. 2106- intel/compiler: Add max_polygons FS compilation parameter. 2107- intel/compiler: Add multipolygon dispatch fields to brw_wm_prog_data. 2108- intel/compiler: Add polygon count statistic to brw_compile_stats. 2109- intel/fs: Add separate constructor of fs_visitor for fragment shaders. 2110- intel/fs: Map all GS input attributes to ATTR register number 0. 2111- intel/fs: Map all VS input attributes to ATTR register number 0. 2112- intel/fs: Map all TES input attributes to ATTR register number 0. 2113- intel/fs: Assert fs_reg::nr is always zero for ATTR registers in geometry stages. 2114- intel/fs: Consider ATTR registers with different fs_reg::nr as belonging to disjoint register spaces. 2115- intel/fs: Provide component index explicitly to interp_reg(). 2116- intel/fs: Pass builder to per_primitive_reg(). 2117- intel/fs: Fix fs_reg::component_size() to handle two-dimensional register regions. 2118- intel/fs: Rework layout of FS vertex setup data in ATTR file to support multi-polygon dispatch. 2119- intel/fs: Don't copy-propagate ATTR registers in multi-polygon FS shaders when invalid. 2120- intel/compiler: Don't change types for copies from ATTR file. 2121- intel/fs/gfx12+: Don't set nir_divergence_single_prim_per_subgroup option for fragment shaders. 2122- intel/fs/gfx12: Don't consider multipolygon PS to have packed dispatch. 2123- intel/fs: No need to copy null destinations in lower_simd_width. 2124- intel/fs: Fix PS thread payload setup for depth_w_coef_reg. 2125- intel/fs/gfx12: Implement multi-polygon format of back/front-facing flag in PS payload. 2126- intel/fs/gfx12: Implement multi-polygon format of render target array index in PS payload. 2127- intel: Add debug flag for enabling dual-SIMD8 fragment shader dispatch. 2128- intel/compiler: Attempt to build dual-SIMD8 variant of fragment shaders on gfx12+ platforms. 2129- intel/genxml: Add 3DSTATE_PS definitions needed for dual-SIMD8 dispatch on Gfx12+. 2130- intel/gfx12: Enable SIMD8 dispatch in 3DSTATE_PS for FS multipolygon dispatch. 2131- iris/gfx12: Hook up dual-SIMD8 fragment shader dispatch. 2132- anv/gfx12: Hook up dual-SIMD8 fragment shader dispatch. 2133- intel/fs/xe2+: Stop building SIMD8 compute-like shaders (CS/BS/TS/MS). 2134- intel/fs/xe2+: Stop building SIMD8 fragment shaders. 2135- intel/fs/xe2+: Stop building SIMD8 shaders for geometry stages (VS/TCS/TES/GS). 2136- intel/eu/xe2+: Add helpers for constructing registers in 512b units. 2137- intel/fs/xe2+: Implement PS thread payload register offset setup. 2138- intel/fs/xe2+: Fix for new layout of X/Y pixel coordinates in PS payload. 2139- intel/fs/xe2+: Update uses of pixel/sample mask from PS thread payload. 2140- intel/fs/xe2+: Update location of sample ID fields in PS payload. 2141- intel/fs/xe2+: Update poly info PS payload for new multi-polygon dispatch format. 2142- intel/fs: Add support for vector payload values to fetch_payload_reg(). 2143- intel/fs/xe2+: Enable new format of barycentrics in PS payload. 2144- intel/fs/xe2+: Update for new layout of vertex setup data in PS payload. 2145- intel/fs/xe2+: Implement support for multi-polygon vertex setup data in PS payload. 2146- intel/fs/xe2+: Implement layout of mesh shading per-primitive inputs in PS thread payloads. 2147- intel/fs: Plumb shader instead of compiler to get_lowered_simd_width() and friends. 2148- intel/fs/xe2+: Lower SIMD width of instructions that access ATTR file from SIMD2x8/4x8 FS. 2149- intel: Add debug flags for enabling Xe2+ multipolygon fragment shader dispatch modes. 2150- intel/fs/xe2+: Attempt to build quad-SIMD8 and dual-SIMD16 FS variants on Xe2+ platforms. 2151- intel/xe2+: Implement fragment shader dispatch state setup. 2152- intel/compiler/xe2: Don't disassemble non-existent fields. 2153 2154Frank Binns (4): 2155 2156- pvr: rename some more instances of 'reserved' to 'carveout' for consistency 2157- include/drm-uapi: add pvr_drm.h 2158- pvr: Add powervr winsys implementation 2159- pvr: alloc WSI memory via GPU when there isn't a valid display FD 2160 2161Friedrich Vock (24): 2162 2163- aco: Update printed block kinds 2164- vulkan: Don't use set_foreach_remove when destroying pipeline caches 2165- radv/ci: Update skips comments 2166- ac/gpu_info: Manually compute L3 size for Navi33 2167- radv: Enable compute dispatch tunneling 2168- radv,vtn,driconf: Add and use radv_rt_ssbo_non_uniform workaround for Crysis 2/3 Remastered 2169- radv/rt: Initialize unused children in PLOC early-exit 2170- radv/rt: bsearch inlined shaders 2171- radv/rt: Free traversal NIR after compilation 2172- radv,aco: Convert 1D ray launches to 2D 2173- radv/rt: Move per-geometry build info into a geometry_data struct 2174- radv/rt: Acceleration structure updates 2175- radv/rt: Add workaround to make leaves always active 2176- radv: Fix shader replay allocation condition 2177- nir: Make is_trivial_deref_cast public 2178- nir: Handle casts in nir_opt_copy_prop_vars 2179- util: Provide a secure_getenv fallback for platforms without it 2180- vulkan: Use secure_getenv for trigger files 2181- aux/trace: Guard triggers behind __normal_user 2182- vtn: Use secure_getenv for shader dumping 2183- mesa/main: Use secure_getenv for shader dumping 2184- radv: Use secure_getenv in radv_builtin_cache_path 2185- radv: Use secure_getenv for RADV_THREAD_TRACE_TRIGGER 2186- util/disk_cache: Use secure_getenv to determine cache directories 2187 2188GKraats (1): 2189 2190- i915G: show correct number of needed ALU instructions at errmess 2191 2192Ganesh Belgur Ramachandra (9): 2193 2194- radeonsi: Fix clear-render-target shader for 1darrays in NIR 2195- radeonsi: "create_dma_compute" shader in nir 2196- radeonsi: "create_fmask_expand_cs" shader in nir 2197- radeonsi: "get_blitter_vs" shader in nir 2198- asahi: fixes prevailing '-Werror=maybe-uninitialized' issue 2199- radeonsi: enable nir pass for 64 bit operations 2200- radeonsi: add comments for unpack_2x16* utility functions 2201- radeonsi: convert "create_query_result_cs" shader to nir 2202- radeonsi: convert "gfx11_create_sh_query_result_cs" shader to nir 2203 2204Georg Lehmann (28): 2205 2206- aco, radv: vectorize f2f16 if rounding mode is rtz 2207- aco: force uniform result for LDS load with uniform address if it can be non uniform 2208- aco: stop using cstdint 2209- aco: namespace aco_opcode 2210- aco: deduplicate instr_class definition 2211- aco: deduplicate Format definition 2212- aco: don't CSE v_permlane across exec 2213- aco: use null operand for SOPK s_waitcnt 2214- aco: fix detecting sgprs read by SMEM hazard 2215- aco/tests: add some missing scc defs 2216- aco/tests: use correct operand size for some 64bit ops 2217- aco: use lm for carry out in vsub32 2218- aco: add missing scc def for SALU quad broadcast 2219- aco/gfx10+: don't use v_cmpx with VCC def 2220- aco: use correct operand size for int tg4 wa 2221- aco: add src/def count and size for all ALU opcodes 2222- aco: validate ALU operands and defs 2223- aco/sched: treat p_dual_src_export_gfx11 like export 2224- aco: don't optimize DPP across more than one block 2225- aco: add test for post-ra DPP clobbered in linear cfg 2226- aco: optimize 32bit fsign by using fmulz with Inf 2227- aco: shrink buffer stores with undef/zero components 2228- aco/gfx12: implement broadcast dmask shrink behavior 2229- aco: apply packed fneg commutatively 2230- aco: fix applying input modifiers to DPP8 2231- aco: clean up fneg/fabs combining 2232- aco: apply fneg/fabs to VOP3P 2233- aco: stop scheduling at p_logical_end 2234 2235George Ouzounoudis (9): 2236 2237- nvk: Move SET_BLEND_STATE_PER_TARGET to graphics state initialization 2238- nvk: Support extendedDynamicState3ColorBlendEnable 2239- nvk: Support extendedDynamicState3ColorBlendEquation 2240- nvk: Support extendedDynamicState3SampleMask 2241- nvk: Support extended dynamic state for alpha to coverage/one 2242- vulkan: Fix dynamic graphics state enum usage 2243- nvk: Support extended dynamic state for rasterization stream 2244- nvk: Remove pipeline state setting functions 2245- nvk: Support extended dynamic state for tessellation domain origin 2246 2247Gert Wollny (15): 2248 2249- virgl: Use host reported limits for max outputs 2250- r600: Add callbacks for get_driver_uuid and get_device_uuid 2251- r600: Add experimental get_compute_state_info 2252- r600: Link with libgalliumvl, when enabling rusticl this is needed 2253- r600/sfn: Fixup component count only if intrinsic has it 2254- r600/sfn: Allow skipping backend shader optimization for a subset of shaders 2255- r600/sfn: keep workgroup and invocation ID registers for whole shader 2256- r600/sfn: Fix usage of std::string constructor 2257- r600/sfn: Don't try to re-use iterators when the set is made empty 2258- zink: Don't pass a blend state when we have full ds3 support 2259- r600: lower dround_even also on hardware that supports fp64 2260- virgl: Use better reporting for mirror_clamp features 2261- radv: Fix compilation with gcc-13 and tsan enabled 2262- nir/lower_int64: Fix compilation with gcc-13 and tsan enabled 2263- nir/builder: Fix compilation with gcc-13 when tsan is enabled 2264 2265Giancarlo Devich (1): 2266 2267- nir: Workaround MSVC internal compiler error in ARM64 build 2268 2269Guilherme Gallo (19): 2270 2271- ci/bin: Use iid instead of SHA in gitlab_gql 2272- ci/bin: Do not forget to add early-stage dependencies 2273- ci/bin: Refactor create_job_needs_dag 2274- ci/lava: Use project_name instead of hardcoded \`mesa` 2275- ci/lava: Fix imports formatting 2276- ci/lava: Refactor UART definition building blocks 2277- ci/lava: Create LAVAJobDefinition 2278- ci/lava: Make SSH definition wrap the UART one 2279- ci/lava: Enable SSH by default in fastboot devices 2280- ci/lava: Add unit tests covering job definition 2281- ci/bin: Fix find_dependency function calls 2282- ci/bin: Replace AIOHTTPTransport with RequestsHTTPTransport 2283- ci/bin: gql: make the query cache optional 2284- ci/bin: gql: Log the caching errors 2285- ci/bin: gql: Implement pagination 2286- ci/bin: gql: Improve queries for jobs/stages retrieval 2287- ci/bin: Fix gitlab_gql methods that uses needs DAG 2288- ci/bin: Fix mypy errors in gitlab_gql.py 2289- ci/bin: Print a summary list of dependency and target jobs 2290 2291Haihao Xiang (1): 2292 2293- anv: Fix typo in transition_color_buffer 2294 2295Hans-Kristian Arntzen (2): 2296 2297- radv/radeonsi: Forward correct GPU instance to umr. 2298- wsi/x11: Add workaround for Detroit Become Human. 2299 2300Helen Koike (3): 2301 2302- ci/zink: add spec\@ext_timer_query\@time-elapsed to flakes 2303- ci/ci_run_n_monitor: abort when target gets skipped 2304- ci: fix python-test dependency error on merge requests 2305 2306Hyunjun Ko (2): 2307 2308- vulkan/video: fix a typo 2309- anv/video: fix out-of-bounds read 2310 2311Iago Toral Quiroga (13): 2312 2313- v3d,v3dv: fix MMU error from hardware prefetch after ldunifa 2314- v3d: implement support for PIPE_CAP_NATIVE_FENCE_FD 2315- broadcom: fix scheduling dependencies for SETMSF instruction 2316- v3dv: disallow image stores on VK_KHR_DISPLAY surfaces 2317- v3dv: switch timestamp queries to using BO memory 2318- broadcom: disable perquad tmu loads after discards 2319- broadcom: lower null pointers 2320- v3dv: implement VK_KHR_shader_terminate_invocation 2321- v3dv: implement VK_EXT_shader_demote_to_helper_invocation 2322- v3dv: expose VK_EXT_subgroup_size_control 2323- broadcom/compiler: fix incorrect flags setup in non-uniform if path 2324- broadcom/compiler: fix incorrect flags update for subgroup elect 2325- broadcom/compiler: be more careful with unifa in non-uniform control flow 2326 2327Ian Romanick (39): 2328 2329- nir/split_vars: Don't split arrays of cooperative matrix types 2330- nir/lower_packing: Don't generate nir_pack_32_4x8_split on drivers that can't handle it 2331- nir/lower_packing: Add lowering for nir_op_unpack_32_4x8 2332- nir/builder: Teach nir_pack_bits and nir_unpack_bits about 32_4x8 2333- intel/vec4: Don't emit an empty ELSE 2334- intel/compiler: Add basic CFG validation 2335- intel/compiler: Limit scope of cur_endif variable 2336- intel/compiler: Delete bidirectional block links in opt_predicated_break 2337- intel/compiler: Don't create extra CFG links in opt_predicated_break 2338- intel/compiler: Don't create extra CFG links when deleting a block 2339- intel/compiler: Don't promote CFG link types when removing a block 2340- intel/fs: Don't add MOV instructions to DO blocks in combine constants 2341- intel/compiler: Verify that DO is alone in the block 2342- nir: Handle divergence for decl_reg 2343- intel/fs/xe2+: Pass correct dispatch_width to fs_generator for geometry-processing stages. 2344- intel/cmat: Update get_slice_type for packed slices 2345- intel/cmat: Add lowering for cmat_insert and cmat_extract 2346- intel/cmat: Enable packed formats for unary, length, and construct 2347- intel/cmat: Enable packed formats for binary ops 2348- intel/cmat: Enable packed formats for scalar ops 2349- intel/cmat: Add lowering for cmat_bitcast 2350- intel/cmat: Lower cmat_load and cmat_store 2351- intel/compiler: Initial bits for DPAS instruction 2352- intel/disasm: Disassembly support for DPAS 2353- intel/compiler: Validation for DPAS instructions 2354- intel/fs: Fix scoreboarding for DPAS 2355- intel/fs: DPAS lowering 2356- intel/fs: nir: Add nir_intrinsic_dpas_intel 2357- anv: Add anv_physical_device::has_cooperative_matrix 2358- anv: Set COMPUTE_WALKER systolic mode enable flag 2359- anv: Set PIPELINE_SELECT systolic mode enable flag 2360- anv: Lower indirect derefs again after lowering cooperative matrices 2361- anv: Select the SIMD mode very early when cooperative matrices are used 2362- intel/dev: Advertise integer configs with saturatingAccumulation too 2363- intel/dev: Enable VK_KHR_cooperative_matrix on all Gfx9+ GPUs 2364- intel/cmat: Generate better code for nir_intrinsic_cmat_insert 2365- intel/compiler: Disable DPAS instructions on MTL 2366- intel/compiler: Track lower_dpas flag in brw_get_compiler_config_value 2367- intel/compiler: Track mue_compaction and mue_header_packing flags in brw_get_compiler_config_value 2368 2369Italo Nicola (4): 2370 2371- panfrost: fix untracked dependency when converting resource modifier 2372- gallium: stop calling resource_copy_region for multisampled copy_image 2373- panfrost: legalize afbc before blitting 2374- panfrost: expose support for EXT_copy_image 2375 2376Iván Briano (8): 2377 2378- anv: use the right vertexOffset on CmdDrawMultiIndexed 2379- hasvk: ensure we reapply always pipeline dynamic state in runtime state 2380- anv: allow NULL index buffers 2381- anv: remove no longer valid assert 2382- anv: handle VkBindMemoryStatusKHR on buffer/image memory bind 2383- anv: add support for Cmd*DescriptorSet*2KHR 2384- anv: move astc_emu to use descriptors2 calls 2385- anv: enable VK_KHR_maintenance6 2386 2387Jan Beich (2): 2388 2389- intel: make CLOCK_TAI optional for non-Linux 2390- intel: make CLOCK_BOOTTIME optional for non-Linux 2391 2392Jani Nikula (7): 2393 2394- nir: add names to some typedef'd structs/enums 2395- nir: drop \**< style documentation comments 2396- isl: drop \**< style documentation comments 2397- docs: Add docs/header-stubs/README.rst 2398- docs/vulkan: use hawkmoth instead of doxygen 2399- docs/nir: use hawkmoth instead of doxygen 2400- docs/isl: use hawkmoth instead of doxygen 2401 2402Janne Grunau (4): 2403 2404- gallium: Avoid empty version scripts in pipe-loader 2405- gallium: Fix i915 pipe-loader build 2406- gallium: Do not create pipe-loader version scripts for disabled drivers 2407- asahi: Fix typo in arch check in agx_get_gpu_timestamp 2408 2409Jesse Natalie (64): 2410 2411- microsoft: Disable post-merge CI for Windows 2412- d3d12: Only set draw params root parameter index for actual draw params 2413- dzn: Implement VK_MSFT_layered_driver 2414- wgl: Take pixelformat color channels into account for choosing a PFD 2415- winsys/gdi: Handle 4444 and 1010102 texture formats 2416- winsys/gdi: Update is_displaytarget_format_supported to reflect reality 2417- d3d12: Don't support displaytargets that can't be supported by GDI/DXGI 2418- dzn: Use vk_properties helper 2419- vulkan: Remove no-longer-needed prototypes for ICD entrypoints 2420- vulkan: Consolidate common ICD methods 2421- vulkan: Support loader interface v7 2422- dzn: Fix memory type sorting 2423- microsoft/compiler: Set src/dest nir types on image intrinsics when deducing format 2424- d3d12: Disable common state promotion for non-simultaneous-access textures 2425- d3d12: Initialize shader key swizzle for non-int textures 2426- d3d12: Add a fallback for int clears where value can't be cast to float 2427- d3d12: Binding buffers as SSBO/storage image needs to add buffer ranges 2428- d3d12: Change memory barrier implementation 2429- d3d12: Support ARB_texture_view 2430- d3d12: Use format casting for shader images 2431- d3d12: GL4.3 2432- microsoft/compiler: Bump signature limits for 32 rows of 4 components 2433- microsoft/compiler: Don't declare PS output registers split across variables 2434- microsoft/compiler: Don't use 64-bit types for signature entries 2435- microsoft/compiler: When packing fractional inputs, find a row with space for it 2436- microsoft/compiler: Stop lowering all I/O to temps 2437- d3d12: Fix location_frac_mask bitfield size 2438- d3d12: Split dvec3 interpolatns into devc2 and double 2439- d3d12: Support enhanced layouts for VS inputs 2440- d3d12: Fix GS variant I/O slot counts 2441- d3d12: Enable ARB_enhanced_layouts and ARB_texture_mirror_clamp_to_edge 2442- d3d12: Reference count queries in a batch 2443- d3d12: ARB_query_buffer_object and GL4.4 2444- d3d12: PRIMITIVES_GENERATED for stream > 0 should only be an SO query 2445- d3d12: Handle cull distance as an XFB target 2446- d3d12: Fix MSAA-disabling pass; sample mask should be 0 for helper lanes 2447- d3d12: GL4.5 2448- nir_lower_mem_access_bit_sizes: Fix write-mask-constrained 3-byte stores as atomics 2449- nir: Add a flag to opt_if to prevent fighting with splitting 64bit phis 2450- d3d12: Fixes for QBO shaders 2451- d3d12: Enable some 4.6 extensions that were already implemented 2452- d3d12: GL4.6 2453- nir_lower_mem_access_bit_sizes: Fix assert (bit -> byte size) 2454- microsoft/compiler: Fix lower_mem_access_bit_size callback result 2455- d3d12/driconf: Force on ARB_texture_view for Blender 2456- d3d12: Fix multidimensional array ordering 2457- d3d12: Fix h264 encoder 32-bit build (uint64_t -> size_t) 2458- d3d12: Fix hevc encoder 32-bit build (uint64_t -> size_t) 2459- microsoft/clc: Fix image lowering pass to only erase variables at the end 2460- microsoft/clc: Fix images with multiple derefs for real 2461- microsoft/clc: Add a test which sinks image derefs 2462- microsoft/clc: One more image lowering fix 2463- compiler/clc: Don't fail to parse SPIR-V if there's no kernels 2464- microsoft/clc: Flip on capabilities to prevent warning spew 2465- microsoft: Whitespace change to trigger CI 2466- vulkan/wsi: Convert bit tests to bool with != 0 2467- util: Re-implement getenv for Windows 2468- d3d12: Add a debug flag to opt out of singleton behavior 2469- d3d12: Only destroy the winsys during screen destruction, not reset 2470- libgl-gdi: Update wgl test to use a 32bit framebuffer 2471- libgl-gdi: Update wgl test to set debug flags needed for tests 2472- dzn: Fix 3D to 2D image copies 2473- zink: Add ASSERTED to vars that are only used for asserts 2474- mesa: Consider mesa format in addition to internal format for mip/cube completeness 2475 2476Jianxun Zhang (12): 2477 2478- intel/isl: Add a debug option to override modifer list 2479- intel: Move mod_plane_is_clear_color() into isl 2480- intel/vulkan: Report clear color in subresource layout 2481- intel/vulkan: Allow modifiers supporting fast clear 2482- intel/vulkan: Specify offset when creating aux state tracker 2483- intel/vulkan: Import aux state tracking buffer 2484- intel/vulkan: Remove private binding on fast clear region 2485- intel/vulkan: Use the last 2 dwords of clear color struct 2486- intel/vulkan: Correct a comment about an offset in fast clear 2487- intel/vulkan: Update comment of a workaround of modifiers 2488- intel/vulkan: Add COMPRESSED_CLEAR state in layout translation 2489- intel/isl: Add Gfx 12.x RC_CCS_CC into modifier scores 2490 2491Job Noorman (5): 2492 2493- ir3: correctly set bit size for 64b constant \@load_ubo 2494- nir: add _safe variants of nir_foreach_reg_load/store 2495- ir3: lower 64b registers 2496- nir: add helper to create cursor after all \@decl_regs 2497- ir3: lower 64b registers before creating preamble 2498 2499Jonathan Gray (2): 2500 2501- intel/common: add directory prefix to intel_gem.h include 2502- zink: put sysmacros.h include under #ifdef MAJOR_IN_SYSMACROS 2503 2504Jordan Justen (25): 2505 2506- intel/l3: Use devinfo->urb.size when cfg urb-size is 0. 2507- anv: Add more space for init_render_queue_state() batch (MTL regression) 2508- intel/dev/wa: Raise error if mesa_defs.json contains unknown platforms 2509- intel/dev: Rename mtl-m to mtl-u 2510- intel/dev: Rename mtl-p to mtl-h 2511- intel/compiler: Define XE2 compiler enum 2512- intel/genxml: Update COMPUTE_WALKER for xe2 2513- iris: Set COMPUTE_WALKER Message SIMD field 2514- anv: Set COMPUTE_WALKER Message SIMD field 2515- intel/genxml: Update INTERFACE_DESCRIPTOR_DATA for xe2 2516- anv, iris: Update INTERFACE_DESCRIPTOR_DATA programming for xe2 2517- iris: xe2 doesn't have INTERFACE_DESCRIPTOR_DATA::BarrierEnable 2518- intel/genxml: Update 3DSTATE_TE for xe2 2519- isl: Add mocs for xe2 2520- intel/genxml: Add UNIFIED_COMPRESSION_FORMAT enum for xe2 2521- anv, blorp, iris: Update 3DSTATE_PS programming for xe2 2522- anv, blorp, iris, intel/genxml: Update 3DSTATE_VS for xe2 2523- anv, blorp, iris, intel/genxml: Update 3DSTATE_PS_EXTRA for xe2 2524- intel/batch_decoder: Update 3DSTATE_PS decoding for xe2 2525- anv, iris, intel/genxml: Update 3DSTATE_GS for xe2 2526- anv, iris, intel/genxml: Update 3DSTATE_HS for xe2 2527- intel/compiler: Pass max_polygons to copy-prop from fs_visitor. 2528- intel/xe2+: Implement brw_wm_state_simd_width_for_ksp() on Xe2+. 2529- intel/genxml/gfx125: Move L1_CACHE_CONTROL to enum 2530- intel/genxml/gfx125: Move STATE_SURFACE_TYPE to enum 2531 2532Jordan Petridis (1): 2533 2534- Revert "ci: take microsoft farm offline" 2535 2536Joshua Ashton (2): 2537 2538- nvk: Hook up driconf for nvk_instance 2539- nvk: Enable KHR_present_id and KHR_present_wait 2540 2541José Expósito (5): 2542 2543- zink: Fix crash on zink_create_screen error path 2544- zink: fix dereference before NULL check 2545- zink: allow software rendering only if selected 2546- zink: initialize drm_fd to -1 2547- egl/glx: fallback to software when Zink is forced and fails 2548 2549José Roberto de Souza (56): 2550 2551- anv: Add missing ANV_BO_ALLOC_EXTERNAL flags when calling anv_device_import_bo() 2552- intel: Add more information about the PAT entry used 2553- intel: Update MTL scanout PAT entry 2554- intel: Add a write combining PAT entry 2555- anv: Honor memory coherency of the memory type selected 2556- anv: Move PAT entry selection to common code 2557- anv: Change default PAT entry to WC 2558- anv: Calculate mmap mode based on alloc_flags 2559- anv: Remove anv_bo flags that can be inferred from alloc_flags 2560- iris: Add iris_bufmgr_get_pat_entry_for_bo_flags() 2561- intel/common: Add intel_gem_read_correlate_cpu_gpu_timestamp() 2562- anv: Reduce ifdefs in anv_GetCalibratedTimestampsEXT() 2563- anv: Make use of intel_gem_read_correlate_cpu_gpu_timestamp() 2564- intel/common/xe: Re implement xe_gem_read_render_timestamp() with xe_gem_read_correlate_cpu_gpu_timestamp() 2565- anv: Bring back the non optimized version of build_load_render_surface_state_address() 2566- intel: Sync xe_drm.h 2567- intel: Sync xe_drm.h 2568- iris: Change default PAT entry to WC 2569- intel: Rename PAT entries 2570- intel: Share function to do device query in Xe KMD 2571- iris: Check for maximum allowed priority in Xe KMD 2572- anv: Rename ANV_BO_ALLOC_SNOOPED to ANV_BO_ALLOC_HOST_CACHED_COHERENT 2573- anv: Add support all possible cached and coherent memory types 2574- intel: Add PAT entries for gfx12 and newer 2575- intel: Sync xe_drm.h 2576- intel: Enable has_set_pat_uapi for Xe 2577- iris: Prepare iris_heap_to_pat_entry() for discrete GPUs 2578- iris: Fill PAT fields in Xe KMD gem_create and vm_bind uAPIs 2579- anv: Prepare anv_device_get_pat_entry() for discrete GPUs 2580- anv: Fill PAT fields in Xe KMD gem_create and vm_bind uAPIs 2581- anv: Add heaps for Xe KMD in platforms without LLC 2582- intel/dev: Adjust prefetch_size values for Xe2 engines 2583- anv: Fix vm bind of DRM_XE_VM_BIND_FLAG_NULL 2584- iris: Fix the mmap mode for IRIS_HEAP_DEVICE_LOCAL_PREFERRED 2585- intel: Sync xe_drm.h take 2 part 3 2586- intel/isl: Set mocs.blitter_dst/src for MTL 2587- anv: Fix handling of host_cached_coherent bos in gen9 lp in older kernels 2588- anv: Split ANV_BO_ALLOC_HOST_CACHED_COHERENT into two actual flags 2589- anv: Promote bos to host_cached+host_coherent in platforms with LLC 2590- anv: Avoid unnecessary intel_flush calls 2591- intel/genxml/xe2: Update PIPE_CONTROL 2592- intel/genxml/xe2: Update PIPELINE_SELECT 2593- intel: Sync xe_drm.h final part 2594- anv: Remove libdrm usage from Xe KMD backend 2595- anv: Add ANV_BO_ALLOC_IMPORTED 2596- anv: Replace anv_bo.vram_only by anv_bo.alloc_flags check 2597- anv: Assume that imported bos already have flat CCS requirements satisfied 2598- intel/isl/xe2: Enable route of Sampler LD message to LSC 2599- utils/u_debug: Fix parse of "all,<something else> 2600- anv: Increase ANV_MAX_QUEUE_FAMILIES 2601- anv: Drop useless STATIC_ASSERT in anv_physical_device_init_queue_families() 2602- anv: Simply companion_rcs handling 2603- anv: Add missing anv_measure_submit() calls in Xe KMD backend 2604- anv: Fix anv_measure_start/stop_snapshot() over copy or video engine 2605- anv: Call anv_measure_submit() before anv_cmd_buffer_chain_command_buffers() 2606- anv: Fix PAT entry for userptr in integrated GPUs 2607 2608Juan A. Suarez Romero (12): 2609 2610- v3d/ci: run V3D GL tests in 64-bits 2611- v3d: use kmsro to create drm screen on real hw 2612- vc4/ci: comment why piglit is disabled 2613- broadcom/ci: separate hiden jobs to -inc.yml files 2614- v3d: include the revision in the device name 2615- ci/baremetal: make BM_BOOTCONFIG optional 2616- ci: do not mount already mounted directories 2617- ci/v3d/vc4: remove explicit modules to load 2618- ci/v3dv: add new failures 2619- ci/v3dv: update results 2620- ci/vc4/v3d: remove some flakes 2621- ci/v3d: add support for rpi5 2622 2623Julia Zhang (1): 2624 2625- radeonsi: modify binning settings to improve performance 2626 2627Juston Li (17): 2628 2629- venus: add helper function to get cmd handle 2630- venus: refactor out common cmd feedback functions 2631- venus: support deferred query feedback recording 2632- venus: track/recycle appended query feedback cmds 2633- venus: append query feedback at submission time 2634- venus: switch to unconditionally deferred query feedback 2635- venus: sync protocol for VK_EXT_extended_dynamic_state3 2636- venus: pipeline fixes for VK_EXT_extended_dynamic_state3 2637- venus: enable VK_EXT_extended_dynamic_state3 2638- venus: disable unsupported ExtendedDynamicState3Features 2639- venus: implement vkGet[Device]ImageSparseMemoryRequirements 2640- radv: enable stippledBresenhamLines on GFX9 chips 2641- venus: fix query feedback copy sanitize off by 1 2642- venus: rename buffer cache to buffer reqs cache 2643- venus: use vk_format helper for plane count 2644- venus: support caching image memory requirements 2645- venus: add LRU cache eviction for image mem reqs cache 2646 2647Kai Wasserbäch (1): 2648 2649- fix: ac/llvm: LLVM 18: remove useless passes, partially removed upstream 2650 2651Karol Herbst (74): 2652 2653- vtn/opencl: always lower to libclc fmod 2654- rusticl/device: restrict image_buffer_size 2655- rusticl/device: restrict param_max_size further 2656- rusticl/mem: properly set pipe_image_view::access 2657- zink: support CLAMP_TO_BORDER with unnormalized coords 2658- zink: alias nir scratch memory by lowering to common bit_size 2659- zink: emit float controls 2660- zink: lower fisnormal as it requires the Kernel Cap 2661- radv: fix buffers in vkGetDescriptorEXT with size not aligned to 4 2662- rusticl/queue: Only take a weak ref to the last Event 2663- rusticl/device: restrict const max size to 1 << 26 bytes 2664- rusticl/mesa: pass PIPE_BIND_LINEAR in resource_create_texture_from_user 2665- rusticl: handle failed maps gracefully 2666- zink: validate pointer alignment in resource_from_user_memory 2667- zink: handle denorm preserve execution modes 2668- zink: deallocate global_bindings array 2669- zink: emit MemoryAccess flags for coherent global load/stores 2670- rusticl/mesa/screen: do not derefence the entire pipe_screen struct 2671- nir: Stop assuming glsl_get_length() returns 0 for vectors 2672- ir2: Stop assuming glsl_get_length() returns 0 for vectors 2673- nvc0: implement PIPE_CAP_TIMER_RESOLUTION 2674- radeonsi: support importing arbitrary resources 2675- radeonsi: hack for importing 3D textures 2676- rusticl/context: fix importing gl cube maps 2677- docs/features: mark rusticl gl_sharing as done 2678- rusticl/queue: do not send empty lists of event to worker queue 2679- rusticl/queue: fix implicit flushing of queue dependencies 2680- rusticl: only support the matching device for gl_sharing 2681- rusticl/memory: fix new clippy::needless-borrow warning 2682- nir: allow vec derefs on system values 2683- vtn: add hack for system values placed in CrossWorkgroup memory 2684- rusticl/api: workaround DPCPP fetching clSetProgramSpecializationConstant 2685- rusticl: add x11 dependency 2686- rusticl/gl: make GLX support optional 2687- clc: allow debug flag to be read from other files 2688- clc: add dump_llvm debug options 2689- nir/opt_preamble: make load_workgroup_size handling optional 2690- radeonsi: lower relative shuffle subgroup ops 2691- radeonsi: lower 64bit subgroup shuffle to 32 bit 2692- clc: add support for cl_khr_subgroup_shuffle and shuffle_relative 2693- rusticl: implement cl_khr_subgroup_shuffle and shuffle_relative 2694- ci/fedora: bump to meson 1.3.0 2695- rusticl: bump meson req 2696- rusticl: use rust.proc_macro for proc macros 2697- clc: use addMacroDef/Undef instead of -D/-U flags 2698- nak: fix some sm checks for volta 2699- nir/algebraic: add support for custom arguments 2700- nak: add algebraic lowering pass 2701- nak: move nir_lower_subgroups into nak_postprocess_nir 2702- rusticl/kernel: explicitly set rounding modes 2703- radeonsi: fix reg_saved_mask for non graphics contexts 2704- clc: add workaround for clang always defining __IMAGE_SUPPORT_ and __opencl_c_int64 2705- rusticl: do not warn on empty RUSTICL_DEBUG or RUSTICL_FEATURES 2706- rusticl: silence clippy::arc-with-non-send-sync for now 2707- rusticl: fix constant and printf buffer size 2708- rusticl/nir: add missing nir include 2709- rusticl: check rustc version for flags requiring newer rustc/clippy 2710- ci: merge debian-rusticl-testing into debian-testing 2711- zink: lock screen queue on context_destroy and CreateSwapchain 2712- clc: remove code supporting pre llvm-10 2713- zink: fix heap-use-after-free on batch_state with sub-allocated pipe_resources 2714- rusticl: specify buffer bindings explicitly 2715- rusticl: add QueueContext to track GPU state 2716- rusticl/queue: release bound constant buffer 2717- rusticl: use real buffer for cb0 for drivers prefering 2718- ci,rusticl: bump meson req to 1.3.1 2719- rusticl/meson: generate bindings for LLVM 2720- rusticl/program: add LLVM functions to cache timestamp 2721- rusticl/llvm: do not include spirv-tools/linker.hpp 2722- rusticl/kernel: run opt/lower_memcpy later to fix a crash 2723- nir: rework and fix rotate lowering 2724- nak/opt_out: fix comparison in try_combine_outs 2725- rusticl/kernel: check that local size on dispatch doesn't exceed limits 2726- clc: force fPIC for every user when using shared LLVM 2727 2728Kenneth Graunke (21): 2729 2730- intel/compiler: Delete unused emit_dummy_fs() 2731- intel/compiler: Delete unused repclear shader uniform handling 2732- intel/compiler: Delete repclear shader's special case for 1 color target 2733- intel/compiler: Drop unused saturate handling in repclear shader 2734- intel/compiler: Convert the repclear shader to use send-from-GRF 2735- intel/compiler: Assert that FS_OPCODE_[REP\_]FB_WRITE is for pre-Gfx7 2736- iris: Make an iris_bucket_cache structure and array per heap 2737- iris: Make an iris_heap_is_device_local() helper 2738- iris: Rename heap_flags -> heap in i915_gem_create 2739- iris: Split system memory heap into cached-coherent and uncached heaps 2740- iris: Use 64K BOs for the shader uploader 2741- iris: Align fresh BO allocations to 2MB in size 2742- iris: Ensure virtual addresses are aligned to 2MB for 2MB+ blocks 2743- anv: Implement rudimentary VK_AMD_buffer_marker support 2744- anv: Drop 3/4 of PPGTT size restriction for sys heap size calculation 2745- anv: Don't report more memory available than the heap size 2746- intel/fs: Allow omitting the destination of A64 untyped atomics 2747- intel/fs: Drop opt_register_renaming() 2748- iris: Initialize bo->index to -1 when importing buffers 2749- iris: Don't search the exec list if BOs have never been added to one 2750- iris: Skip mi_builder init for indirect draws 2751 2752Konstantin Seurer (40): 2753 2754- radv: Add RADV_MAX_HIT_ATTRIB_DWORDS 2755- radv/nir: Add radv_nir_lower_hit_attrib_derefs 2756- radv/nir: Handle boolean hit attribs 2757- radv/clang-format: Do not indent C++ modifiers 2758- radv: Add radv_nir_lower_hit_attrib_derefs_tests 2759- radv/sqtt: Fix tracing acceleration structure commands 2760- radv/sqtt: Handle monolithic RT pipelines 2761- radv/rt: Use a helper for inlining non-recursive stages 2762- radv/rt: Skip null checks for small case counts 2763- nir/lower_vars_to_scratch: Remove all unused derefs 2764- drm-shim/nouveau: Set nv_device_info_v0::platform 2765- drm-shim/nouveau: Expose the 2D engine on NV50+ 2766- drm-shim/nouveau: Stub mitting ioctls 2767- nvk: Do not preserve metadata after lower_load_global_constant_offset_instr 2768- radv: Add more offsets acceleration_structure_layout 2769- radv/bvh: Stop emitting leaf nodes inside the encoder 2770- nir: Optimize fpow with small constant exponents 2771- radv: Implement VK_KHR_ray_tracing_position_fetch 2772- radv: Make pipeline cache object data generic 2773- radv: Don't store library stack sizes 2774- radv: Add more ray tracing data to the cache 2775- radv/rt: Skip compiling a traversal shader 2776- radv: Skip compiling chit and miss shaders 2777- radv/rt: Remove useless assert 2778- radv/rt: Use radv_shader for compiled shaders 2779- radv/sqtt: Avoid duplicate stage check 2780- radv/rt: Repurpose radv_ray_tracing_stage_is_compiled 2781- vtn: Remove transpose(m0)*m1 fast path 2782- ac/nir: Export clip distances according to clip_cull_mask 2783- vtn: Handle DepthReplacing correctly 2784- radv/rmv: Fix tracing ray tracing pipelines 2785- radv/rt/rmv: Log pipeline library creation 2786- radv: Use PLOC for TLAS builds 2787- radv: Remove the BVH depth heuristics 2788- radv/rt: Lower ray payloads to registers 2789- vtn: Allow for OpCopyLogical with different but compatible types 2790- ac/llvm: Enable helper invocations for quad OPs 2791- lavapipe: Fix DGC vertex buffer handling 2792- lavapipe: Mark vertex elements dirty if the stride changed 2793- lavapipe: Report the correct preprocess buffer size 2794 2795Lang Yu (1): 2796 2797- radeonsi: emit SQ_NON_EVENT for GFX11_5 2798 2799Leo Liu (2): 2800 2801- gallium/vl: match YUYV/UYVY swizzle with change of color channels 2802- radeonsi: fix video processing path without VPE enabled 2803 2804LingMan (9): 2805 2806- rusticl: Show an error message if the build is attempted with an outdated bindgen version 2807- rusticl: Show an error message if the version of bindgen can't be detected 2808- rusticl: Directly pass a \`&Device` to \`Mem::map_image` and \`Mem::map_buffer` 2809- rusticl: Only put an Arc around PipeScreen where needed 2810- rusticl: Avoid repeatedly creating Vecs during Platform initialization 2811- rusticl: Turn pointers in enqueue_svm_mem_fill_impl into proper Rust types 2812- rusticl: Turn pointers in enqueue_svm_memcpy_impl into slices 2813- rusticl/api: Add checking wrappers around \`slice::from_raw_parts{_mut}` 2814- rusticl: Use the \`from_raw_parts` wrappers 2815 2816Lionel Landwerlin (88): 2817 2818- intel/fs: fix dynamic interpolation mode selection 2819- anv/meson: add missing dependency on the interface header 2820- anv: ensure we reapply always pipeline dynamic state in runtime state 2821- intel/fs: Xe2 fix for ExBSO on UGM 2822- blorp: handle binding table & surface state allocation failures 2823- anv: rename internal heaps 2824- anv: deal with state stream allocation failures 2825- anv: add max_size argument for block & state pools 2826- anv: make sure pools can handle more than 2Gb 2827- anv: fail pool allocation when over the maximal size 2828- anv: use anv_state_pool_state_address for blorp vertex buffer address 2829- anv: fix corner case of mutable descriptor pool creation 2830- anv: dynamically allocate utrace batch buffers 2831- perfetto/pps-producer: add optimized cpu/gpu timestamp correlation support 2832- intel/ds: use improved timestamp correlation if available 2833- isl: disable MCS compression on R9G9B9E5 2834- intel: fix PXP status check 2835- anv: handle protected memory allocation 2836- anv: allow creation of protected queues 2837- anv: Emit protection + session ID on protected command buffers 2838- anv: allow protected GEM context creation 2839- anv: enable protected memory 2840- intel/fs: fix residency handling on Xe2 2841- anv: workaround XeSS for Satisfactory 2842- intel/fs: rerun divergence analysis prior to convert_from_ssa 2843- intel/nir/rt: fix reportIntersection() hitT handling 2844- anv: fix source_hash propagation with libraries 2845- anv: fix missing naming for dirty bit 2846- anv: fix CC_VIEWPORT pointer dirty after blorp/simple-shaders 2847- anv: fix dirty state tracking for 3DSTATE_PUSH_CONSTANT_ALLOC 2848- intel/decoder: handle 3DPRIMITIVE_EXTENDED in accumulated prints 2849- intel/blorp: move Wa_18019816803 out of blorp code 2850- anv: get rid of the duplicate pipeline fields in command buffer state 2851- anv/blorp: move helper function about BTI changes to blorp 2852- intel/perf: fix querying of configurations 2853- intel/fs: fix incorrect register flag interaction with dynamic interpolator mode 2854- intel/fs: reuse set_predicate() 2855- intel/aux_map: introduce ref count of L1 entries 2856- anv: use main image address to determine ccs compatibility 2857- anv: track & unbind image aux-tt binding 2858- anv: remove heuristic preferring dedicated allocations 2859- intel/ds: add trace of buffer markers 2860- intel/tools: add hang_replay tool 2861- intel/hang_replay: add the ability to pass the context image to sim-drm 2862- intel: add error2hangdump tool 2863- intel/aubinator_error_decode: bump max buffers to 1024 2864- intel/error_decode: map i915 gfx12.5 register names to our names 2865- intel/tools: hang viewer/editor 2866- anv: add a sampler state pool 2867- anv: move descriptor set type selection to earlier 2868- anv: make a couple of descriptor function private 2869- anv: add missing push descriptor flush on ray tracing pipelines 2870- anv: set layout printer 2871- anv: use 2 different buffers for surfaces/samplers in descriptor sets 2872- intel/hang_replay: fix compile race with generated files 2873- intel/tools: 32bit compile fixes 2874- vulkan/runtime: retain video session creation flags 2875- anv/video: only report matching memory types for protected sessions 2876- util/u_printf: add a u_printf_ptr() variant 2877- nir: make printf_info (de)serializer available 2878- nir/clone: fix missing printf_info clone 2879- nir: include printfs from linked shaders 2880- nir/divergence: handle printf intrinsic 2881- nir/serialize: untangle printf serialization from a particular stage 2882- nir: fixup nir_printf intrinsic description 2883- anv: fix incorrect queue_family access on command buffer 2884- isl: constify isl_device_get_sample_counts() 2885- anv: get features after initializing drm 2886- anv: switch to use runtime physical device properties infrastructure 2887- anv: promote EXT_vertex_attribute_divisor to KHR 2888- anv: promote EXT_calibrated_timestamps to KHR 2889- isl: drop AUX-TT CCS alignment with INTEL_DEBUG=noccs 2890- anv: wait for CS write completion before executing secondary 2891- isl: further restrict alignment constraints 2892- isl: implement Wa_22015614752 2893- intel/fs: fix depth compute state for unchanged depth layout 2894- anv: remove ANV_ENABLE_GENERATED_INDIRECT_DRAWS variable 2895- anv: fix disabled Wa_14017076903/18022508906 2896- intel/aux_map: fix fallback unmapping range on failure 2897- anv: hide vendor ID for The Finals 2898- anv: fix pipeline executable properties with graphics libraries 2899- anv: implement undocumented tile cache flush requirements 2900- anv: don't prevent L1 untyped cache flush in 3D mode 2901- anv: add missing alignment for AUX-TT mapping 2902- anv: factor out aux-tt binding logic for future reuse 2903- anv: rename aux_tt image field 2904- anv: retain ccs image binding address 2905- anv: fix transfer barriers flushes with compute queue 2906 2907Louis-Francis Ratté-Boulianne (4): 2908 2909- panfrost: factor out method to check whether we can discard resource 2910- panfrost: add copy_resource flag to pan_resource_modifier_convert 2911- panfrost: add can_discard flag to pan_legalize_afbc_format 2912- panfrost: Legalize before updating part of a AFBC-packed texture 2913 2914Luc Ma (1): 2915 2916- loader: Remove a line of unused include 2917 2918Luca Weiss (1): 2919 2920- freedreno: Enable A305B 2921 2922Lucas Fryzek (2): 2923 2924- freedreno/drm: Add more APIs to per backend API 2925- gallivm/nir: Load all inputs into indirect inputs array 2926 2927Lucas Stach (2): 2928 2929- etnaviv: drm: don't update cmdstream timestamp when skipping submit 2930- etnaviv: disable 64bpp render/sampler formats 2931 2932Lynne (1): 2933 2934- radv: change queue family order in radv_get_physical_device_queue_family_properties 2935 2936M Henning (21): 2937 2938- nak: Fix a warn(unused_must_use) by calling drop 2939- nak: Remove MemScope::Cluster 2940- nak: Memory order/scope encodings for Ampere 2941- nak: Specify MemScope on MemOrder::Strong 2942- nak: Bind nir_intrinsic_access 2943- nak: Add MemOrder::Constant 2944- nvk: Use load_global_constant for ubo loads 2945- nak: Add encodings for cache eviction priorities 2946- nak: Set "evict first" from ACCESS_NON_TEMPORAL 2947- nak: Request alignment that matches the load width 2948- nak: Use nir_combined_align 2949- nvk: Fix descriptor alignment offset 2950- nak: Provide robustness info to postprocess_nir 2951- nak: Call nir_opt_load_store_vectorize 2952- nak: Call nir_opt_combine_barriers 2953- nak: Call nir_opt_shrink_vectors 2954- nak: Clamp negative texture array indices to zero 2955- nak: Enable loop unrolling. 2956- nak: Print out an instruction count 2957- nak: Add a jump threading pass 2958- nak: Optimize jumps to fall-through if possible 2959 2960Marcin Ślusarz (1): 2961 2962- anv: fix minSubgroupSize for xe2 2963 2964Marek Olšák (199): 2965 2966- radeonsi: initialize perfetto in the right place 2967- ac: add missing gfx11.5 bits 2968- ac/gpu_info: adjust attribute ring size for gfx11 2969- ac/surface: cosmetic changes 2970- ac/surface/tests: cosmetic changes 2971- radeonsi: don't use nir_optimization_barrier_vgpr_amd with ACO 2972- radeonsi: inline si_allocate_gds and si_add_gds_to_buffer_list 2973- radeonsi: inline si_screen_clear_buffer 2974- radeonsi: remove redundant VS_PARTIAL_FLUSH for streamout 2975- radeonsi: remove AMD_DEBUG=nogfx 2976- radeonsi: rename ctx -> sctx in si_emit_guardband 2977- radeonsi: remove and inline si_shader::ngg::prim_amp_factor 2978- radeonsi: decrease PIPE_CAP_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS to 1024 2979- radeonsi: cosmetic changes in si_pm4.c 2980- radeonsi: split setting num_threads in si_emit_dispatch_packets 2981- radeonsi: use si_shader_uses_streamout properly 2982- radeonsi: adjust setting PA_SC_EDGERULE once more 2983- radeonsi: various isolated cosmetic changes 2984- radeonsi: move max_dist for MSAA into si_state_msaa.c 2985- radeonsi: cosmetic changes in si_state_viewport.c 2986- radeonsi: cosmetic changes in si_state_binning.c, si_state_msaa.c 2987- radeonsi: move setting registers at the end of si_emit_cb_render_state 2988- ac/gpu_info: split has_set_pairs_packets into context and sh flags 2989- ac/gpu_info,llvm: trivial cosmetic changes 2990- radeonsi: clean up si_set_streamout_targets 2991- radeonsi: upload shaders using a compute queue instead of gfx 2992- radeonsi: rewrite PM4 packet building helpers with less duplication 2993- radeonsi: move buffered_xx_regs into a substructure 2994- radeonsi: rename HAS_PAIRS -> HAS_SH_PAIRS_PACKED 2995- radeonsi: rename radeon_*push_*_sh_reg -> gfx11_*push_*_sh_reg 2996- radeonsi: rewrite gfx11_*push*_sh_reg helpers 2997- radeonsi: restructure blocks in si_setup_nir_user_data 2998- radeonsi: restructure blocks in si_emit_graphics_{shader,compute}_pointers 2999- radeonsi/gfx11: use PKT3_SET_CONTEXT_REG_PAIRS_PACKED for PM4 states 3000- radeonsi: don't call nir_lower_compute_system_values too many times 3001- radeonsi: don't check DCC compatibility on chips where it's no-op 3002- radeonsi: cosmetic changes in si_emit_db_render_state 3003- radeonsi: prettify code around PA_SC_LINE_STIPPLE 3004- radeonsi: move emitting VGT_TF_PARAM into gfx10_emit_shader_ngg 3005- radeonsi: remove num_params variable from gfx10_shader_ngg 3006- radeonsi: move SPI_SHADER_IDX_FORMAT into the preamble (it's immutable) 3007- radeonsi: adjust the total viewport area 3008- radeonsi/gfx11: use SET_CONTEXT_REG_PAIRS_PACKED for other states 3009- radeonsi/gfx11: don't set OREO_MODE to fix rare corruption 3010- radeonsi: don't dma-upload shaders on APUs 3011- radeonsi/ci: update failures for gfx103 3012- st/mesa: disable light_twoside if back faces are culled 3013- glsl/nir: return failure from link_varyings if there is a linker error 3014- nir: add lowering from FS LAYER input to LAYER_ID sysval 3015- nir: return progress from nir_remove_sysval_output 3016- ac/nir: add kill_layer flag to VS/GS/NGG lowering 3017- st/mesa: set pipe_framebuffer_state::layers for PBO blits 3018- radeonsi: clean up si_nir_kill_outputs 3019- radeonsi: don't allocate output space for LAYER/VIEWPORT before TES and GS 3020- radeonsi: implement gl_Layer in FS as a system value 3021- radeonsi: remove the LAYER output if the framebuffer state has only 1 layer 3022- nir: fix gathering TESS_LEVEL_INNER/OUTER usage with lowered IO 3023- nir: don't declare illegal varyings in nir_create_passthrough_tcs 3024- nir/print: print PATCH0 and VARn_16BIT names instead of numbers for TCS and TES 3025- gallium/docs: make CAP doc order match definition order 3026- gallium: add PIPE_CAP_PERFORMANCE_MONITOR for GL_AMD_performance_monitor 3027- radeonsi: group equal CAP cases 3028- radeonsi: only expose GL_AMD_performance_monitor on gfx7-10.3 3029- ac: rename ac_parse_ib.c -> ac_ib_parser.c 3030- ac: move the IB parsers into ac_parse_ib.c 3031- ac: add an IB parser that gathers context rolls 3032- mesa: optimize _mesa_matrix_is_identity 3033- mesa: skip checking for identity matrix in glMultMatrixf with glthread 3034- mesa: optimize setting the identity matrix 3035- glthread: add a marker at the end of batches indicating the end 3036- glthread: eliminate push/pop calls in PushMatrix+Draw/MultMatrixf+PopMatrix 3037- glthread: add option to put autogenerated marshal structures in the header file 3038- glapi: rename primcount -> instance_count in a few Draw functions 3039- glthread: use autogenerated marshal structures for custom functions 3040- glthread: rework type reduction and reduce vertex stride params to 16 bits 3041- glapi: only expose GL_EXT_direct_state_access functions to GL compatibility 3042- glthread: don't do "if (COMPAT)" if the function is not in the GL core profile 3043- glapi: only allow deprecated="" on non-aliased functions 3044- glthread: pass struct marshal_cmd_DrawElementsUserBuf into Draw directly 3045- mesa: deduplicate glVertexPointer and glNormalPointer vs DSA error checking 3046- glthread: add a string table of function names 3047- radeonsi/gfx11: fix unaligned SET_CONTEXT_PAIRS_PACKED 3048- radeonsi: don't set non-existent VGT_GS_MAX_PRIMS_PER_SUBGROUP on gfx10 3049- radeonsi: change the low-priority compiler queue to normal priority 3050- radeonsi: update shaders for blend state only if the shader key changed 3051- radeonsi: update shaders for rasterizer state only if the shader key changed 3052- radeonsi: clean up setting poly/line/stipple shader key bits 3053- radeonsi: rewrite how shader key bits dependent on current_rast_prim are updated 3054- radeonsi: rewrite si_get_total_colormask as si_any_colorbuffer_written 3055- radeonsi: in bind_{blend,rs}_state, only call 1 update function per if 3056- radeonsi/gfx11: skip si_set_streamout_enable because it has no effect 3057- radeonsi: execute streamout_begin after cache flushes 3058- radeonsi: don't print the preamble state separately for GALLIUM_DDEBUG 3059- radeonsi: replace gl_FrontFacing with a constant if one side is always culled 3060- radeonsi: set OOB_SELECT for VBOs in si_create_vertex_elements 3061- radeonsi: group most vertex element fields 3062- radeonsi/gfx11: prefer Wave64 for PS without inputs for better VALU perf 3063- radeonsi/gfx11: disable the shader profile for Medical that forces Wave64 3064- radeonsi/gfx11: disable the shader profile for Medical that disables binning 3065- radeonsi: clean up how debug flags and shader profiles determine the wave size 3066- radeonsi/gfx11: prefer Wave64 for VS/TCS/TES/GS because it's slightly faster 3067- winsys/amdgpu: bypass GL2 for command buffers 3068- radeonsi: track NIR progress properly for optimizations in si_get_nir_shader 3069- ac,radeonsi: rename pos_inputs -> fragcoord_components 3070- nir,radeonsi: add FLAGS into load_vector_arg_amd to record color input usage 3071- radeonsi: change the signature of si_nir_lower_ps_color_input 3072- radeonsi: gather lowered color inputs for monolithic PS 3073- radeonsi: add PS input info into si_shader_binary_info 3074- radeonsi: don't include the PARAM_GEN input in si_shader_info 3075- radeonsi: decrease NUM_INTERP if uniform inlining eliminated PS inputs 3076- radeonsi: update comments about uniform inlining 3077- radeonsi: decrease NUM_INTERP if export formats/colormask eliminated PS inputs 3078- util: make BITSET_TEST_RANGE_INSIDE_WORD take a value to compare with 3079- radeonsi: merge context_reg_saved_mask and other_reg_saved_mask into a BITSET 3080- radeonsi: convert depth-stencil-alpha state to tracked registers 3081- radeonsi: convert rasterizer state to tracked registers 3082- ac/gpu_info: fix printing radeon_info after adding VPE 3083- radeonsi: rework how guardband registers are updated to decrease overhead 3084- mesa: fix _mesa_matrix_is_identity 3085- mesa: remove some DrawTransformFeedback duplication 3086- mesa: remove some DrawElementsInstanced duplication 3087- mesa: remove more DrawArrays/Elements duplication 3088- mesa: remove non-relevant 16-year-old comment 3089- st/mesa: make prepare_(indexed\_)draw non-static 3090- mesa: inline st_draw_transform_feedback 3091- mesa: call st_prepare_(indexed\_)draw before Driver.DrawGallium(MultiMode) 3092- st/mesa: no need to check index_size in st_prepare_indexed_draw anymore 3093- mesa: move index bounds code (st_prepare_indexed_draw) into draw.c 3094- cso: do cso_context inheritance how we do it elsewhere 3095- cso: inline cso_get_pipe_context 3096- mesa: execute an error path sooner in _mesa_validated_drawrangeelements 3097- gallium: add typedef pipe_draw_func matching the draw_vbo signature and use it 3098- ac/llvm: remove code for converting txd from 1D to 2D because NIR does it 3099- ac,radeonsi: require DRM 3.27+ (kernel 4.20+) same as RADV 3100- winsys/amdgpu: don't return a value from cs_add_buffer 3101- winsys/amdgpu: cosmetic changes in amdgpu_cs_add_buffer 3102- winsys/amdgpu: inline amdgpu_add_fence_dependencies_bo_lists 3103- winsys/amdgpu: use inheritance for the cache_entry BO field 3104- winsys/amdgpu: use inheritance for the real BO 3105- winsys/amdgpu: use inheritance for the sparse BO 3106- winsys/amdgpu: use inheritance for the slab BO 3107- winsys/amdgpu: move lock from amdgpu_winsys_bo into sparse and real BOs 3108- winsys/amdgpu: don't count memory usage because it's unused 3109- winsys/amdgpu: change real/slab/sparse_buffers to buffer_lists[3] 3110- winsys/amdgpu: change amdgpu_lookup_buffer to take struct amdgpu_buffer_list 3111- winsys/amdgpu: clean up duplicated code around amdgpu_lookup/add_buffer 3112- winsys/amdgpu: return amdgpu_cs_buffer* from add/lookup_buffer instead of index 3113- winsys/amdgpu: pass amdgpu_buffer_list* to amdgpu_add_bo_fences_to_dependencies 3114- winsys/amdgpu: clean up the rest of the code for cs->buffer_lists 3115- winsys/amdgpu: fix amdgpu_cs_has_user_fence for VPE 3116- winsys/amdgpu: document BO structures 3117- ci: disable the google/freedreno farm because it's down 3118- glthread: add a missing end-of-batch marker 3119- mesa: micro-improvements in draw.c 3120- st/mesa: restore pipe_draw_info::mode at the end of st_hw_select_draw_gallium 3121- mesa: add a pipe_draw_indirect_info* parameter into the DrawGallium callback 3122- mesa: enable GL_SELECT and GL_FEEDBACK modes for indirect draws 3123- winsys/amdgpu: reduce wasted memory due to the size tolerance in pb_cache 3124- gallium/pb_slab: move group_index and entry_size from pb_slab_entry to pb_slab 3125- iris,zink,winsys/amdgpu: remove unused/redundant slab->entry_size 3126- winsys/amdgpu: rename to amdgpu_bo_slab to amdgpu_bo_slab_entry 3127- winsys/amdgpu: stop using pb_buffer::vtbl 3128- gallium/pb_cache: remove pb_cache_entry::end to save space 3129- gallium/pb_cache: switch time variables to milliseconds and 32-bit type 3130- radeon_winsys: add struct radeon_winsys* parameter into fence_reference 3131- r300,r600,radeon/winsys: always pass the winsys to radeon_bo_reference 3132- winsys/amdgpu: don't layer slabs, use only 1 level of slabs, it improves perf 3133- winsys/amdgpu: add amdgpu_bo_real_reusable slab for the backing buffer 3134- winsys/amdgpu: remove now-redundant amdgpu_bo_slab_entry::real 3135- winsys/amdgpu: remove va (gpu_address) from amdgpu_bo_slab_entry 3136- winsys/amdgpu: don't use gpu_address to compute slab entry offset in bo_map 3137- gallium/pb_buffer: define pb_buffer_lean without vtbl, inherit it by pb_buffer 3138- gallium/pb_cache: switch to pb_buffer_lean 3139- gallium/pb_cache: remove pb_cache_entry::mgr 3140- gallium/pb_cache: remove pb_cache_entry::buffer 3141- winsys/radeon: stop using pb_buffer::vtbl 3142- r300,r600,radeonsi: switch to pb_buffer_lean 3143- winsys/amdgpu: allocate 1 amdgpu_bo_slab_entry per cache line 3144- winsys/amdgpu: compute bo->unique_id at pb_slab_alloc, not at memory allocation 3145- winsys/amdgpu: rewrite BO fence tracking by adding a new queue fence system 3146- winsys/amdgpu: rename amdgpu_winsys_bo::bo -> bo_handle 3147- winsys/amdgpu: rename amdgpu_bo_sparse::lock -> commit_lock 3148- winsys/amdgpu: rename amdgpu_bo_real::lock to map_lock 3149- winsys/amdgpu: remove dependency_flags parameter from cs_add_fence_dependency 3150- winsys/amdgpu: implement explicit fence dependencies as sequence numbers 3151- winsys/amdgpu: use pipe_reference for amdgpu_ctx refcounting 3152- winsys/amdgpu: don't use amdgpu_fence::ctx for fence dependencies 3153- winsys/amdgpu: simplify code using amdgpu_cs_context::chunk_ib 3154- radeonsi/ci: add gfx11 flakes 3155- glthread: don't unroll draws using user VBOs with GLES 3156- glthread: add proper helpers for call fences 3157- gallium/u_threaded_context: use function table to jump to different draw impls 3158- mesa,u_threaded_context: add a fast path for glDrawElements calling TC directly 3159- gallium/u_threaded: use a dummy end call to indicate the end of the batch 3160- gallium/u_threaded: remove unused param from tc_bind_buffer/add_to_buffer_list 3161- gallium/u_threaded: keep it enabled even if the CPU count is 1 3162- meson: require libdrm_amdgpu 2.4.119 3163- winsys/amdgpu: remove amdgpu_bo_real::gpu_address, use amdgpu_va_get_start_addr 3164- winsys/amdgpu: remove amdgpu_bo_sparse::gpu_address, use amdgpu_va_get_start_addr 3165 3166Mario Kleiner (1): 3167 3168- v3d: add B10G10R10[X2/A2]_UNORM to format table. 3169 3170Mark Collins (8): 3171 3172- meson: Only include virtio when DRM available 3173- meson: Only link libvdrm to Turnip with virtio KMD 3174- meson: Update lua wrap to 5.4.6-4 3175- freedreno/rddecompiler: Emit explicit scope for CP_COND_REG_EXEC 3176- freedreno/rddecompiler: Decode ELSE branches using NOPs 3177- freedreno/rddecompiler: Reset buffers after RD_CMDSTREAM_ADDR 3178- freedreno/rddecompiler: Print pkt values in hex 3179- freedreno/rddecompiler: Add ability to read GPU buffer into file 3180 3181Mark Janes (7): 3182 3183- iris: make shader cache content deterministic 3184- anv: make shader cache content deterministic 3185- intel: remove workaround for preproduction DG2 steppings 3186- intel/dev: improve descriptions of workaround macros. 3187- intel/dev: poison macros for workarounds fixed at a stepping 3188- intel: remove MTL a0 workarounds 3189- intel/dev: update workaround definitions to latest defect status 3190 3191Mart Raudsepp (1): 3192 3193- docs: Fix typo in OpenGL 3.3 support on Asahi 3194 3195Martin Roukala (né Peres) (12): 3196 3197- zink/ci: drop the concurrency of the zink-radv-vangogh-valve job 3198- ci/b2c: fix artifact collection 3199- radv/ci: fix \`vkcts-navi21-valve` execution 3200- Revert "ci/deqp-runner: turn paths in errors into links" 3201- radv: disable meshShaderQueries on gfx10.3 3202- amd/ci: reduce Renoir's concurrency to 16 3203- ci/b2c: fix the \`cmdline_extra` variable name 3204- ci: disable the valve-kws farm until it can be rebooted 3205- Revert "ci: disable the valve-kws farm until it can be rebooted" 3206- ci: disable mupuf's farm 3207- ci: disable collabora's farm which appears to be down 3208- Revert "ci: disable mupuf's farm" 3209 3210Mary Guillemard (37): 3211 3212- venus: skip bind sparse info when checking for feedback query 3213- nir: Add AGX-specific doorbell and stack mapping opcodes 3214- agx: Add doorbell and stack mapping opcodes 3215- agx: Handle doorbell and stack mapping intrinsics 3216- asahi: clc: Handle doorbell and stack mapping intrinsics 3217- agx: Add stack load and store opcodes 3218- agx: Implement scratch load/store 3219- agx: Add stack adjust opcode 3220- agx: Emit stack_adjust in the entrypoint 3221- zink: Check for VK_EXT_extended_dynamic_state3 before setting A2C 3222- nak: sm75: Fix panic when encoding MUFU with SQRT and TANH 3223- nak: Make PRMT selection a Src 3224- nak: Add support for fddx and fddy 3225- nak: Add for_each_instr in Shader 3226- nak: Gather global memory usage for ShaderInfo 3227- nak: Fix ALD/AST encoding for vtx and offset 3228- nak: Add a complete wrapper around SPH 3229- nak: Collect information to create SPH 3230- nak: Remove encode_hdr_for_nir 3231- nak: Restructure ShaderInfo 3232- nak: Add geometry shader support 3233- nak: Ensure we allocate one barrier when using BAR.SYNC 3234- nak: Implement VK_KHR_shader_terminate_invocation 3235- nak: Move nir_lower_int64 after I/O lowering 3236- nak: Pass offset to load_frag_w 3237- nak: Rewrite nir_intrinsic_load_sample_pos and implement nir_intrinsic_load_barycentric_at_sample 3238- nir: Add a ldtram_nv intrinsic 3239- nak: Add more bits discovered in SPH 3240- nvk: Implement VK_KHR_fragment_shader_barycentric 3241- nvk: Disable flush on each queries and flush at the end 3242- nvk: Implement VK_EXT_primitives_generated_query 3243- venus: Do not submit batch manually when no feedback is required 3244- nak: Fix NAK_ATTR_CLIP_CULL_DIST_7 wrong value 3245- nak: sm50: Implement FFMA 3246- zink: Force 128 fs input components under Venus for Intel 3247- zink: Initialize pQueueFamilyIndices for image query / create 3248- zink: Always fill external_only in zink_query_dmabuf_modifiers 3249 3250Matt Turner (11): 3251 3252- r600: Add missing dep on git_sha1.h 3253- util: Include stdint.h in libdrm.h 3254- util: Provide DRM_DEVICE_GET_PCI_REVISION definition 3255- ci/lava: Add firmware-misc-nonfree on amd64 3256- intel: Only validate inst compaction if debugging a shader stage 3257- iris: Only initialize batch decoder if necessary 3258- symbols-check: Add _GLOBAL_OFFSET_TABLE_ 3259- nir: Fix cast 3260- nir/tests: Reenable tests that failed on big-endian 3261- util: Add DETECT_ARCH_HPPA macro 3262- util/tests: Disable half-float NaN test on hppa/old-mips 3263 3264Mauro Rossi (3): 3265 3266- Android.mk: filter out cflags to build with Android 14 bundled clang 3267- Android.mk: disable android-libbacktrace to build with Android 14 3268- Android.mk: be able to build radeonsi without llvm 3269 3270Max R (3): 3271 3272- virgl: Implement clear_render_target and clear_depth_stencil 3273- ci: Uprev virglrenderer 3274- d3d10umd: Fix compilation 3275 3276Maíra Canal (22): 3277 3278- v3dv: implement VK_EXT_multi_draw 3279- v3dv: move multisync functions to the beginning of the file 3280- v3dv: allow different in/out sync queues 3281- v3dv: allow set_multisync() to accept more wait syncobjs 3282- drm-uapi: extend interface for indirect CSD CPU job 3283- v3dv: check CPU queue availability 3284- v3dv: create a CPU queue type 3285- v3dv: use the indirect CSD user extension 3286- v3dv: occlusion queries aren't handled with a CPU job 3287- drm-uapi: extend interface for timestamp query CPU job 3288- v3dv: use the timestamp query user extension 3289- drm-uapi: extend interface for reset timestamp CPU job 3290- v3dv: use the reset timestamp user extension 3291- drm-uapi: extend interface for copy timestamp results CPU job 3292- v3dv: use the copy timestamp query results user extension 3293- drm-uapi: extend interface for the reset performance query CPU job 3294- v3dv: don't start iterating performance queries at zero 3295- v3dv: use the reset performance query user extension 3296- drm-uapi: extend interface for copy performance query CPU job 3297- v3dv: use the copy performance query results user extension 3298- v3d/v3dv: move V3D_CSD definitions to a separate file 3299- v3dv: enable CPU jobs in the simulator 3300 3301Michael Catanzaro (1): 3302 3303- util: create parents of disk cache directory if needed 3304 3305Michael Tretter (1): 3306 3307- egl/wayland: fix formatting and add trailing comma 3308 3309Michel Dänzer (2): 3310 3311- gallium/dri: Return __DRI_ATTRIB_SWAP_UNDEFINED for _SWAP_METHOD 3312- glx: Handle IGNORE_GLX_SWAP_METHOD_OML regardless of GLX_USE_APPLEGL 3313 3314Mike Blumenkrantz (48): 3315 3316- zink: don't block large vram allocations 3317- vulkan/wsi: unify all the image usage flag caps 3318- draw: fix uninit variable false positive 3319- zink: add copy box locking 3320- tc: add non-definitive tracking for batch completion 3321- tc: always track fb attachments 3322- tc: add batch usage tagging to threaded_resource 3323- tc: use strong refs for fb attachment tracking 3324- tc: allow unsynchronized texture_subdata calls where possible 3325- zink: handle unsynchronized image maps from tc 3326- zink: barrier_cmdbuf -> reordered_cmdbuf 3327- zink: assert that transfer_dst is available before doing buf2img 3328- zink: rework cmdbuf submission to be more extensible 3329- zink: add a third cmdbuf for unsynchronized (not reordered) ops 3330- zink: add flag to restrict unsynchronized texture access 3331- zink: add locking for batch refs 3332- zink: enable unsynchronized texture uploads using staging buffers 3333- ci: skip zink vram test 3334- ci: bump VVL to 1.3.269 3335- zink: emit SpvCapabilitySampleRateShading with SampleId 3336- zink: always set VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT for usermem 3337- zink: clamp resolve extents to src/dst geometry 3338- zink: only emit xfb execution mode for last vertex stage 3339- aux/u_transfer_helper: set rendertarget bind for msaa staging resource 3340- zink: unset explicit_xfb_buffer for non-xfb shaders 3341- mesa/st/texture: match width+height for texture downloads of cube textures 3342- zink: add more locking for compute pipelines 3343- radv: correctly return oom from the device when failing to create a cs 3344- zink: make (some) vk allocation commands more robust against vram depletion 3345- zink: check for cbuf0 writes before setting A2C 3346- vk/cmd_queue: exempt more descriptor functions from autogeneration 3347- vulkan: add wrappers for descriptor '2' functions 3348- zink: enforce maxTexelBufferElements for texel buffer sizing 3349- zink: always force flushes when originating from api frontend 3350- vk/cmd_queue: stop using explicit casts 3351- vk/cmd_queue: generate maint6 functions 3352- vk/cmd_queue: fix up indentation a little 3353- lavapipe: maint6 descriptor stuff 3354- lavapipe: maint6 3355- zink: fix buffer rebind early-out check 3356- zink: ignore tc buffer replacement info 3357- vk/cmdbuf: add back deleted maint6 workgraph bits 3358- lavapipe: use pushconstants2 for dgc 3359- lavapipe: fix devenv icd filename 3360- zink: fix separate shader patch variable location adjustment 3361- zink: set more dynamic states when using shader objects 3362- zink: always map descriptor buffers as COHERENT 3363- zink: fix descriptor buffer unmaps on screen destroy 3364 3365Mohamed Ahmed (4): 3366 3367- nvk: Fix GetImageSubResourceLayout for non-disjoint images 3368- nil: Add support for linear images 3369- nvk: Wire up rendering to linear 3370- nvk: Enable linear images for texturing 3371 3372Molly Sophia (1): 3373 3374- tu: Fix KHR_present_id and KHR_present_wait being used without initialization 3375 3376Nanley Chery (11): 3377 3378- iris: Optimize BO_ALLOC_ZEROED for suballocations 3379- iris: Zero the clear color before FCV_CCS_E rendering 3380- iris: Don't memset the clear color BO during aux init 3381- iris: Simplify get_main_plane_for_plane 3382- iris: Simplify a plane count check in from_handle 3383- iris: Use helpers for generic aux plane importing 3384- iris: Inline import_aux_info 3385- iris: Use common res fields for imported planes 3386- iris: Delay main and aux resource creation on import 3387- isl: Handle MOD_INVALID in clear color plane check 3388- iris: Fix lowered images in get_main_plane_for_plane 3389 3390Neha Bhende (1): 3391 3392- ntt: lower indirect tesslevels in ntt 3393 3394Patrick Lerda (1): 3395 3396- glsl/nir: fix gl_nir_cross_validate_outputs_to_inputs() memory leak 3397 3398Paulo Zanoni (34): 3399 3400- anv: don't forget to destroy device->vma_mutex 3401- anv: alloc client visible addresses at the bottom of vma_hi 3402- anv/sparse: join multiple bind operations when possible 3403- anv/sparse: join multiple NULL binds when possible 3404- anv/sparse: also print bind->address at dump_anv_vm_bind 3405- intel/genxml: add the Gen12+ TR-TT registers 3406- anv/sparse: extract anv_sparse_bind() 3407- anv: setup the TR-TT vma heap 3408- vulkan: fix potential memory leak in create_rect_list_pipeline() 3409- anv/sparse: allow sparse resouces to use TR-TT as its backend 3410- anv/sparse: fix limits.sparseAddressSpaceSize when using vm_bind 3411- anv/trtt: join L1 writes into a single MI_STORE_DATA_IMM when possible 3412- anv/trtt: also join the L3/L2 writes into a single MI_STORE_DATA_IMM 3413- anv/sparse: drop anv_sparse_binding_data from dump_anv_vm_bind() 3414- anv/sparse: join all submissions into a single anv_sparse_bind() call 3415- anv/sparse: pass anv_sparse_submission to the backend functions 3416- anv/sparse: add 'queue' to anv_sparse_submission 3417- anv/trtt: use 'queue' from anv_sparse_submission in the backend 3418- anv/sparse: move waiting/signaling syncobjs to the backends 3419- anv/sparse: process image binds before opaque image binds 3420- anv/i915: extract setup_execbuf_fence_params() 3421- anv/xe: allow passing extra syncs to xe_exec_process_syncs() 3422- anv/trtt: don't wait/signal syncobjs using the CPU anymore 3423- anv/trtt: add struct anv_trtt_batch_bo and pass it around 3424- anv/trtt: add support for queue->sync to the TR-TT batches 3425- anv/trtt: properly handle the lifetime of TR-TT batch BOs 3426- anv: enable sparse by default on i915.ko 3427- anv/sparse: don't support YCBCR 2x1 compressed formats 3428- anv+zink/ci: document new sparse failures 3429- anv/sparse: reject binds that are not a multiple of the granularity 3430- anv/tr-tt: assert the bind size is a multiple of the granularity 3431- anv/sparse: check if the non-sparse version is supported first 3432- anv/sparse: document USAGE_2D_3D_COMPATIBLE as non-standard too 3433- intel/tools: fix compilation of intel_hang_viewer on 32 bits 3434 3435Pavel Asyutchenko (1): 3436 3437- mesa/main: allow S3TC for 3D textures 3438 3439Pavel Ondračka (17): 3440 3441- r300: add late vectorization after nir_move_vec_src_uses_to_dest 3442- r300: small adress register load optimization 3443- r300: nir fcsel/CMP lowering pass for R500 3444- r300: add some more early bool lowering 3445- r300: lower flrp in NIR 3446- r300: fcsel_ge lowering from lowered ftrunc 3447- r300: lower ftrunc in NIR 3448- r300: remove backend CMP lowering 3449- r300: remove backend LRP lowering 3450- r300: mark load_ubo_vec4 with ACCESS_CAN_SPECULATE 3451- r300: fix memory leaks in compiler tests 3452- ci: uprev mesa-trigger container 3453- ci: add r300 RV530 dEQP gles2 CI job 3454- r300/ci: add missing kernel url quotes 3455- r300/ci: switch to b2c v0.9.11 3456- r300/ci: add piglit job 3457- r300: fix reusing of color varying slots for generic ones 3458 3459Peyton Lee (6): 3460 3461- frontends, va: add new parameters of post processor 3462- amd,radeonsi: add libvpe 3463- amd: add new hardware ip for vpe 3464- amd, radeonsi: add si_vpe.c with helper functions of VPE lib 3465- amd, radeonsi: supports post processing entrypoint 3466- winsys, amdgpu, drm: add VPE submission handle 3467 3468Phillip Pearson (1): 3469 3470- radeonsi: use PRIu64 instead of %lu for uint64_t formatting 3471 3472Pierre-Eric Pelloux-Prayer (23): 3473 3474- mesa: restore call to _mesa_set_varying_vp_inputs from set_vertex_processing_mode 3475- radeonsi/ci: update failures 3476- radeonsi: check sctx->tess_rings is valid before using it 3477- Revert "radeonsi: decrease PIPE_CAP_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS to 1024" 3478- egl/wayland: set the correct modifier for the linear_copy image 3479- radeonsi: use a compute shader to convert unsupported indices format 3480- radeonsi: update guardband if vs_disables_clipping_viewport changes 3481- radeonsi/sqtt: fix RGP pm4 state emit function 3482- radeonsi/sqtt: clear record_counts variable 3483- radeonsi/sqtt: rework pm4.reg_va_low_idx 3484- radeonsi/sqtt: use calloc instead of malloc 3485- radeonsi/sqtt: reformat with clang-format 3486- radeonsi/sqtt: fix capturing indirect dispatches with SQTT 3487- radeonsi/winsys: add cs_get_ip_type function 3488- radeonsi/sqtt: fix emitting SQTT userdata when CAM is needed 3489- radeonsi/sqtt: fix capturing RGP on RDNA3 with more than one Shader Engine 3490- radeonsi/sqtt: handle COMPUTE queues as well 3491- radeonsi: fix extra_md handling with fmask 3492- ac/surface: don't oversize surf_size 3493- radeonsi: compute epitch when modifying surf_pitch 3494- Revert "ci/radeonsi: disable VA-API testing on raven" 3495- radeonsi: emit cache flushes before draw registers 3496- radeonsi: adjust flags for si_compute_shorten_ubyte_buffer 3497 3498Qiang Yu (35): 3499 3500- aco: do not fix_exports when separately compiled ngg vs or es 3501- aco: add create_end_for_merged_shader 3502- aco: extend max operands in a instruction to 128 3503- aco: move end program handling to select_shader 3504- aco: stop emit s_endpgm for first stage of merged shader 3505- aco: add aco_is_gpu_supported 3506- radeonsi: add vs prolog args needed by aco ls vgpr fix 3507- radeonsi: fill aco shader info for part mode merged shader 3508- radeonsi: enable aco compilation for merged shader parts 3509- radeonsi: move use_aco to si_screen 3510- radeonsi: move llvm compiler alloc/free into create/destroy funcntion 3511- radeonsi: stop llvm context creation when use aco 3512- radeonsi: move llvm internal header to si_shader_llvm.h 3513- radeonsi: selectively build si llvm compiler create/destroy 3514- radeonsi: selectively build llvm compile 3515- radeonsi: set use_aco when no llvm available 3516- radeonsi: include ac_llvm_util.h when llvm available 3517- radeonsi: disk cache remove llvm dependancy when use aco 3518- radeonsi: does not call llvm init when no llvm available 3519- radeonsi: change compiler name for aco 3520- radeonsi: selectively build llvm files 3521- meson: be able to build radeonsi without llvm 3522- radeonsi: fix piglit image coherency test when use aco 3523- aco,radv: add aco_is_nir_op_support_packed_math_16bit 3524- radeonsi: only vectorize nir ops that aco support 3525- ac/llvm: remove nir_op_*2*mp ops handling 3526- nir: add force_f2f16_rtz option to lower f2f16 to f2f16_rtz 3527- aco,ac/llvm,radeonsi: lower f2f16 to f2f16_rtz in nir 3528- aco: set MIMG unrm for GL_TEXTURE_RECTANGLE 3529- aco: handle GL_TEXTURE_RECTANGLE in tg4_integer_workarounds 3530- radeonsi: add missing args in spi_ps_input_ena when fbfetch output 3531- nir: fix load layer id system_values_read info gather 3532- aco: fix set_wqm segfault when ps prolog 3533- radeonsi: fix legacy merged LS/ES workgroup size for aco compilation 3534- radeonsi: unify elf and raw shader binary upload 3535 3536Raphaël Gallais-Pou (1): 3537 3538- gallium: add sti DRM entry point 3539 3540Rhys Perry (55): 3541 3542- nir: add helpers to skip idempotent passes 3543- radv: use NIR_LOOP_PASS helpers 3544- aco: add VALU/SALU/VMEM/SMEM statistics 3545- aco: collect Pre-Sched SGPRs/VGPRs before spilling 3546- radv: call lower_array_deref_of_vec before lower_io_arrays_to_elements 3547- radv: skip radv_remove_varyings for mesh shaders 3548- radv: disable gs_fast_launch=2 by default 3549- aco/tests: fix tests with LLVM 17 3550- aco/tests: fix tests with LLVM 18 3551- aco: workaround LS VGPR initialization bug in RADV prologs 3552- aco: skip LS VGPR initialization bug workaround if the prolog exists 3553- radv: set prolog as_ls if has_ls_vgpr_init_bug=true 3554- docs: fix RADV_THREAD_TRACE_CACHE_COUNTERS default 3555- nir/lower_fp16_casts: correctly round RTNE f64->f16 casts 3556- nir/lower_fp16_casts: add option to split fp64 casts 3557- radeonsi: use nir_lower_fp16_casts 3558- radv: use nir_lower_fp16_casts 3559- aco: remove f16<->f64 conversions 3560- intel/compiler: use nir_lower_fp16_casts 3561- radv: add radv_disable_trunc_coord option 3562- radv: enable radv_disable_trunc_coord for vkd3d-proton/DXVK 3563- ac/gpu_info: update conformant_trunc_coord comment 3564- ac/nir: fix partial mesh shader output writes on GFX11 3565- ac/nir: ignore 8/16-bit global access offset 3566- ac/nir: fix 32-bit offset global access optimization 3567- aco: flush denormals for 16-bit fmin/fmax on GFX8 3568- aco: implement 16-bit fsign on GFX8 3569- aco: implement 16-bit derivatives 3570- aco: implement 16-bit fsat on GFX8 3571- aco: simplify v_mul_* labelling slightly 3572- aco: insert p_end_wqm before p_jump_to_epilog 3573- nir/loop_analyze: skip if basis/limit/comparison is vector 3574- nir/loop_analyze: scalarize try_eval_const_alu 3575- nir/loop_analyze: fix vector basis/limit/comparison 3576- nir/loop_analyze: check min compatibility with comparison 3577- nir/loop_analyze: support umin and {u,i,f}max 3578- nir/loop_analyze: support loops with min/max and non-add incrementation 3579- vulkan/wsi: don't support present with queues where blit is unsupported 3580- vulkan/wsi: fix win32 compilation 3581- vulkan/wsi: always create command buffer for special blit queues 3582- nir/loop_analyze: remove invariance analysis 3583- aco/tests: use more raw strings 3584- aco: correctly set min/max_subgroup_size for wave32-as-wave64 3585- radv: use CS wave selection for task shaders 3586- radv: remove radv_shader_info's cs.subgroup_size 3587- nir: add msad_4x8 3588- nir/algebraic: optimize vkd3d-proton's MSAD 3589- aco: implement msad_4x8 3590- ac/llvm: implement msad_4x8 3591- radv: enable msad_4x8 3592- nir: remove sad_u8x4 3593- radv: do nir_shader_gather_info after radv_nir_lower_rt_abi 3594- nir/lower_non_uniform: set non_uniform=false when lowering is not needed 3595- nir/lower_shader_calls: remove CF before nir_opt_if 3596- aco: fix labelling of s_not with constant 3597 3598Rob Clark (34): 3599 3600- ci: Only strip debug symbols 3601- tu/msm: Fix timeline semaphore support 3602- tu/virtio: Fix timeline semaphore support 3603- freedreno/drm: Fix race in zombie import 3604- freedreno: Fix modifier determination 3605- freedreno: Handle DRM_FORMAT_MOD_QCOM_TILED3 import 3606- virtio/drm: Split out common virtgpu drm structs 3607- freedreno/drm: Simplify backend mmap impl 3608- virtio: Add vdrm native-context helper 3609- freedreno/drm/virtio: Switch to vdrm helper 3610- tu/drm/virtio: Switch to vdrm helper 3611- freedreno/a6xx: Assume MOD_INVALID imports are linear 3612- freedreno/a6xx: Fix antichamber trace replay assert 3613- Revert "ci/freedreno: disable antichambers trace" 3614- freedreno/a6xx: Don't set patch_vertices if no tess 3615- freedreno/a6xx: Rework wave input size 3616- freedreno/drm: Fix mmap leak 3617- freedreno: Always attach bo to submit 3618- isaspec: Sort labels with same output 3619- freedreno/drm: Fix zombie BO import harder 3620- freedreno/a6xx: Fix NV12+UBWC import 3621- freedreno: De-duplicate 19.2MHz RBBM tick conversion 3622- freedreno: Fix timestamp conversion 3623- freedreno: Implement PIPE_CAP_TIMER_RESOLUTION 3624- drm-uapi: Sync drm-uapi 3625- freedreno/layout: Add layout metadata 3626- tu: Add metadata support for dedicated allocations 3627- freedreno/drm: Add BO metadata support 3628- freedreno: Add layout metadata support 3629- ci: More context for color_clear skips for Wayland 3630- ci: List specific color_clears skips 3631- ci: Add wayland-dEQP-EGL.functional.render.* skips 3632- ci: Remove per-driver wayland-dEQP-EGL xfails 3633- freedreno/drm/virtio: Fix typo 3634 3635Robert Foss (3): 3636 3637- egl/surfaceless: Fix EGL_DEVICE_EXT implementation 3638- egl: Add _eglHasAttrib() function 3639- egl/surfaceless: Don't overwrire disp->Device if using EGL_DEVICE_EXT 3640 3641Robert Mader (4): 3642 3643- util: Add new helpers for pipe resources 3644- panfrost: Support parameter queries for main planes 3645- vc4/resource: Support offset query for multi-planar planes 3646- v3d/resource: Support offset query for multi-planar planes 3647 3648Rohan Garg (31): 3649 3650- intel/compiler: migrate WA 14013672992 to use WA framework 3651- blorp,anv,iris: refactor blorp functions into something more generic 3652- iris: Wa 16014538804 for DG2, MTL A0 3653- iris: pull WA 22014412737 into emit_3dprimitive_was 3654- anv: WA 16014538804 for DG2, MTL A0 3655- blorp: WA 16014538804 for DG2, MTL A0 3656- anv: Refactor loading indirect parameters and filling IDD 3657- anv: refactor kernel dispatch to use new common functions 3658- intel/dev: Add a bit for when the HW can do a indirect draw/dispatch unroll 3659- genxml/12.5: Add the EXECUTE_INDIRECT_DRAW instruction 3660- genxml/12.5: Add the EXECUTE_INDIRECT_DISPATCH instruction 3661- anv: Emit EXECUTE_INDIRECT_DRAW when available 3662- anv: Emit a EXECUTE_INDIRECT_DISPATCH when available 3663- iris: Emit a EXECUTE_INDIRECT_DISPATCH when available 3664- anv: memcpy the thread dimentions only when they're on the CPU 3665- anv: introduce ANV_TIMESTAMP_REWRITE_INDIRECT_DISPATCH 3666- intel/genxml: Add the preferred slm size enum for xe2 3667- intel: Set a preferred SLM size for LNL 3668- intel/genxml: Update COMPUTE_WALKER_BODY for xe2 3669- intel/genxml: Update IDD for new fields 3670- blorp: set min/max viewport depths to -FLT_MAX/FLT_MAX when EXT_depth_range_unrestricted is enabled 3671- anv: ensure that we clamp only when EXT_depth_range_unrestricted is not enabled 3672- anv: enable VK_EXT_depth_range_unrestricted 3673- iris: Emit EXECUTE_INDIRECT_DRAW when available 3674- intel/compiler: use the proper enum type to store the op 3675- intel/compiler: infer the number of operands using lsc_op_num_data_values 3676- anv: rename anv_create_companion_rcs_command_buffer to anv_cmd_buffer_ensure_rcs_companion 3677- iris,isl: Adjust driver for several commands of clear color (xe2) 3678- intel/fs/xe2+: Lift CPS dispatch width restrictions on Xe2+. 3679- intel/compiler: Update disassembly for new LSC cache enums 3680- anv: untyped data port flush required when a pipeline sets the VK_ACCESS_2_SHADER_STORAGE_READ_BIT 3681 3682Roland Scheidegger (1): 3683 3684- lavapipe: bump image alignment up to 64 bytes 3685 3686Roman Stratiienko (5): 3687 3688- v3d: Don't implicitly clear the content of the imported buffer 3689- u_gralloc: Extract common code from fallback gralloc 3690- u_gralloc: Add QCOM gralloc support 3691- egl/android: Switch to generic buffer-info code 3692- u_gralloc: Add support for gbm_gralloc 3693 3694Ruijing Dong (12): 3695 3696- radeonsi/vcn: vcn4 encoding interface dummy update 3697- radeonsi/vcn: preparation for enc intra-refresh 3698- radeonsi/vcn: change intra-ref name 3699- radonesi/vcn: enable intra-refresh in vcn encoders 3700- frontends/va: add intra-refresh in VAAPI interface 3701- radesonsi/vcn add qp_map definition 3702- frontends/va: add ROI feature 3703- radeonsi/vcn: ROI feature implementation 3704- radeonsi/vcn: enable ROI feature in vcn. 3705- radeonsi/vcn: ROI capability value initialization. 3706- frontends/va: remove some TODOs in hevc encoding 3707- radeonsi/vcn: update session_info from vcn3 and up. 3708 3709Ryan Neph (6): 3710 3711- virgl: implemement resource_get_param() for modifier query 3712- venus: add VN_PERF=no_tiled_wsi_image 3713- venus: strip ALIAS_BIT for WSI image creation on ANV 3714- venus: reject multi-plane modifiers for tiled wsi images 3715- venus: add dri option to enable multi-plane wsi modifiers 3716- venus: fix shmem leak on vn_ring_destroy 3717 3718Sagar Ghuge (24): 3719 3720- iris: Disable auxiliary buffer if MSRT is bound as texture 3721- iris: Disable CCS compression on top of MSAA compression on ACM 3722- isl: Enable MCS compression on ACM platform 3723- anv: Write timestamp using MI_FLUSH_DW on blitter 3724- anv: Avoid emitting PIPE_CONTROL command for copy/video queue 3725- anv: Flush data cache while clearing depth using HIZ_CCS_WT 3726- anv: Add comment to copy image code block 3727- iris: Init aux map state for compute engine 3728- anv,hasvk: Use uint32_t for queue family indices 3729- blorp: Handle stencil buffer compression on blitter engine 3730- anv: Use RCS cmd buffer if blit src/dest has 3 components 3731- intel/compiler: Adjust assertion in lower_get_buffer_size() for Xe2 3732- intel/fs: Adjust destination size for image size intrinsic 3733- intel/fs: Adjust destination size for global load constant on Xe2+ 3734- intel/fs: Adjust destination size for load ubo on Xe2+ 3735- intel/genxml: Add BCS/VD0 aux table base address register 3736- anv: Handle video/copy engine queue initialization 3737- anv: Invalidate aux map for copy/video engine 3738- iris: Handle aux map init for copy engine 3739- docs: Document INTEL_COPY_CLASS 3740- anv: Enable blitter engine unconditionally on ACM+ 3741- iris: No need to emit PIPELINE_SELECT on Xe2+ 3742- anv: No need to emit PIPELINE_SELECT on Xe2+ 3743- intel/fs: Check fs_visitor instance before using it 3744 3745Samuel Pitoiset (169): 3746 3747- radv: move RADV_DEBUG_NO_HIZ check in radv_use_htile_for_image() 3748- radv: implement VK_EXT_image_compression_control 3749- radv: advertise VK_EXT_image_compression_control 3750- ac/gpu_info: remove bogus assertion about number of COMPUTE/SDMA queues 3751- radv: dump the pipeline hash to the gpu hang report 3752- radv: fix a synchronization issue with primitives generated query on RDNA1-2 3753- ac/registers: allow to parse GCVM_L2_PROTECTION_FAULT_STATUS 3754- ac/debug: add a helper to print GPUVM fault protection status 3755- radv: use the GPUVM fault protection status helper 3756- radv: remove NGG streamout support for RDNA1-2 3757- radv: remove unnecessary VS_PARTIAL_FLUSH for NGG streamout 3758- ac/nir: remove dead code in nir_intrinsic_xfb_counter_{add,sub}_amd 3759- aco: remove dead code in nir_intrinsic_xfb_counter_{add,sub}_amd 3760- radv/ci: update list of expected failures/flakes for NAVI31 3761- radv: add RADV_DEBUG=nomeshshader 3762- radv/ci: enable RADV_DEBUG=nomeshshader for vkcts-navi31-valve 3763- radv: bind the non-dynamic graphics state from the pipeline unconditionally 3764- radv: adjust binning settings to improve performance on GFX9 3765- radv: fix compute shader invocations query on compute queue on GFX6 3766- radv: emit COMPUTE_PIPELINESTAT_ENABLE for CS invocations on ACE 3767- ci: backport two mesh/task query fixes for VKCTS 3768- radv/ci: document one more flake test 3769- nir: fix inserting the break instruction for partial loop unrolling 3770- radv: add initial VK_EXT_device_fault support 3771- radv: advertise VK_EXT_device_fault 3772- ci: re-apply two mesh/task query fixes for VKCTS 3773- radv: add a helper to determine if it's possible to preprocess DGC 3774- radv: emit individual SET_SH_REG for inlined push constants with DGC 3775- radv: optimize emitting inlined push constants with DGC 3776- radv: enable DGC preprocessing when all push constants are inlined 3777- radv: restore sampling CPU/GPU clocks before starting SQTT trace 3778- ac/rgp: update dumping queue event records to the capture 3779- radv: add radv_write_timestamp() helper 3780- radv: add support for RGP queue events 3781- radv: add drirc options to force re-compilation of shaders when needed 3782- radv: fix VRS subpass attachment when HTILE can't be enabled on GFX10.3 3783- radv: fix registering queues for RGP with compute only 3784- radv: set radv_zero_vram=true for Unreal Engine 4/5 3785- radv: fix a descriptor leak with debug names and host base descriptor set 3786- radv: add a missing async compute workaround for Tonga/Iceland 3787- zink/ci: add a manual job on radv-navi31 3788- aco: remove useless nir_intrinsic_load_force_vrs_rates_amd 3789- radv: remove redundant check when forcing VRS rates 3790- radv: check earlier if a graphics pipeline can force VRS per vertex 3791- ac/surface: change tile mode for 3D PRT surfaces with bpp < 64 on GFX6-8 3792- radv: re-enable sparseResidencyImage3D on POLARIS10+ 3793- aco: rename color_exports to exports in create_fs_jump_to_epilog() 3794- radv: rename ps_epilog_inputs to colors for PS epilogs 3795- radv: add radv_physical_device::emulate_mesh_shader_queries for GFX10.3 3796- radv: add support for mesh primitives queries on GFX10.3 3797- radv: define new pipeline statistics indices for mesh/task on GFX11 3798- radv: bump the pipeline state query size to 14 on GFX10.3 3799- radv: do not harcode the pipeline stats mask for query resolves 3800- radv: add support for mesh shader invocations queries on GFX10.3 3801- radv: rework gfx10_copy_gds_query() slightly 3802- radv: make some gang functions non-static 3803- radv: add support for task shader invocations queries on GFX10.3 3804- radv: enable meshShaderQueries on GFX10.3 3805- radv/ci: add missing expected failures for mesh queries on VANGOGH 3806- radv: disable TC-compatible HTILE on Tonga and Iceland 3807- radv: add missing FDCC_CONTROL bits for GFX1103 R2 3808- radv: set radv_invariant_geom=true for War Thunder 3809- radv: do not set OREO_MODE to fix rare corruption on GFX11 3810- ci: uprev vkd3d-proton to 2.11 3811- radv/ci: add new flakes for VEGA10 3812- radv: remove useless NIR instructions when emitting IBO with DGC 3813- radv: set the stream VA for DGC graphics 3814- radv: use an indirect draw when IBO isn't updated as part of DGC 3815- radv: enable DGC preprocessing for IBO 3816- radv: fix bogus interaction between DGC and RT with descriptor bindings 3817- radv: make sure to prefetch the compute shader for DGC 3818- radv: remove radv_pipeline_key::dynamic_color_write_mask 3819- radv: simplify creating image views for src resolve images 3820- radv: stop performing redundant resolves with the HW resolve path 3821- radv: remove unused layers support for the HW/FS resolve paths 3822- radv: only re-initialize DCC for one level for the HW resolve path 3823- radv: adjust assertions for multi-layer resolves with the HW/FS paths 3824- radv: remove never used binds_state for DGC 3825- radv: only initialize the VBO reg if VBOs are bound with DGC 3826- radv: only initialize the VTX base SGPR if non-zero with DGC 3827- radv: add DGC support for mesh shader only 3828- radv: advertise VK_EXT_depth_clamp_zero_one 3829- radv: update the reset stipple pattern mode 3830- radv: change the reset stipple pattern mode for adjacent lines 3831- radv: make sure to reset the stipple line state when it's disabled 3832- radv: set combinedImageSamplerDescriptorCount to 1 for multi-planar formats 3833- radv: switch to on-demand PS epilogs for GPL 3834- radv: remove unused code for compiling PS epilogs as part of pipelines 3835- aco: export depth/stencil/samplemask in create_fs_jump_to_epilog() 3836- ac/nir: add an option to skip MRTZ exports in ac_nir_lower_ps() 3837- radv: determine if MRTZ needs to be exported via PS epilogs 3838- radv: prepare the PS epilog key for exporting MRTZ on RDNA3 3839- radv,aco: declare PS epilog VGPR arguments for depth/stencil/samplemask 3840- radv: determine and emit SPI_SHADER_Z_FORMAT for PS epilogs 3841- zink/ci: remove skipped tests from the list of expected failures for NAVI31 3842- radv: export MRTZ via PS epilogs when alpha to coverage is dynamic on GFX11 3843- radv: enable extendedDynamicState3AlphaToCoverageEnable on GFX11 3844- zink/ci: skip more tests that run OOM on NAVI31 3845- zink/ci: update list of failures for NAVI31 3846- zink/ci: stop running zink-radv-navi31-valve sequentially 3847- ci: uprev vkd3d-proton to a0ccc383937903f4ca0997ce53e41ccce7f2f2ec 3848- radv: simplify disabling MRT compaction for PS epilogs 3849- vulkan: bump headers/registry to 1.3.273 3850- radv: promote EXT_calibrated_timestamps to KHR 3851- docs: update features.txt for RADV 3852- radv: remove useless check for TC-compat CMASK images during fb emission 3853- radv: stop clearing FMASK_COMPRESS_1FRAG_ONLY for TC-compat CMASK images 3854- vulkan/runtime: promote VK_EXT_vertex_attribute_divisor to KHR 3855- radv: advertise VK_KHR_vertex_attribute_divisor 3856- radv/ci: remove dEQP-VK.mesh_shader.ext.query.* from the lists 3857- radv: emit the task shader in radv_emit_graphics_pipeline() 3858- radv: cleanup ac_nir_lower_ps options 3859- radv: cleanup gathering PS info with/without PS epilogs 3860- radv: cleanup radv_pipeline_generate_ps_epilog_key() 3861- radv: add support for MRT compaction with PS epilogs 3862- radv: fix binding partial depth/stencil views with dynamic rendering 3863- radv: stop asserting some image create info fields 3864- radv: remove some declared but unused functions/macros 3865- radv: add missing HTILE support for fb mip tail workaround 3866- radv: stop checking FMASK for the fb mip tail workaround 3867- radv: move emitting the fb mip tail workaround when rendering begins 3868- radv: remove radv_get_tess_output_topology() declaration 3869- radv: move meta declarations to radv_meta.h 3870- radv: move RADV_HASH_SHADER_xxx flags to radv_pipeline.c 3871- radv: move radv_image_is_renderable() to radv_image.c 3872- radv: move more descriptor related declarations to radv_descriptor_set.h 3873- radv: move radv_depth_clamp_mode to radv_cmd_buffer.c 3874- radv: move more shader related declarations to radv_shader.h 3875- radv: move SI_GS_PER_ES to radv_constants.h 3876- radv: move buffer view related code to radv_buffer_view.c 3877- radv: move image view related code to radv_image_view.c 3878- vulkan: bump headers/registry to 1.3.274 3879- vulkan: drop VK_ENABLE_BETA_EXTENSIONS for video encode layouts 3880- radv/ci: update CI lists for NAVI10,NAVI31 and RENOIR 3881- ci: apply two bugfixes for VKCTS 3882- radv: move radv_{emulate,enable}_rt() to radv_physical_device.c 3883- radv: make a couple of NIR RT functions as static 3884- radv: move radv_rt_{common,shader} files to nir/ 3885- radv: move radv_BindImageMemory2() to radv_image.c 3886- radv: add support for VkBindMemoryStatusKHR 3887- radv: rename RADV_GRAPHICS_STAGES to RADV_GRAPHICS_STAGE_BITS 3888- radv: add support for version 2 of all descriptor binding commands 3889- radv: add support for NULL index buffer 3890- radv: advertise VK_KHR_maintenance6 3891- radv: disable FMASK for MSAA images with layers on GFX9 3892- radv: stop clearing CMASK to 0xcc when FMASK is present on GFX9 3893- radv: disable stencil test without a stencil attachment 3894- radv: constify a variable in radv_emit_depth_control() 3895- radv: remove duplicated si_tile_mode_index() function 3896- radv: rename si_make_texture_descriptor() to gfx6_make_texture_descriptor() 3897- radv: remove radv_write_scissors() 3898- radv: drop si\_ prefix from all functions 3899- Revert "radv: disable DCC with signedness reinterpretation on GFX11" 3900- radv: stop disabling DCC for mutable with 0 formats on GFX11 3901- radv: do not program COMPUTE_MAX_WAVE_ID (GDS register) on GFX6 3902- radv/winsys: replace '<= GFX6' by '== GFX6' 3903- radv: query drirc options in only one place 3904- radv: move dri options to radv_instance::drirc 3905- radv: rework declaring color arguments for PS epilogs 3906- Revert "radv/rt: Lower ray payloads to registers" 3907- radv: do not issue SQTT marker with DISPATCH_MESH_INDIRECT_MULTI 3908- radv: add missing disable_shrink_image_store to the pipeline key 3909- radv: move RADV_HASH_SHADER_KEEP_STATISTICS to radv_pipeline_key 3910- radv: initialize radv_device::disable_trunc_coord earlier 3911- radv: introduce radv_device_cache_key for per-device cache compiler options 3912- radv: move all per-device keys from radv_pipeline_key to radv_device_cache_key 3913- radv: fix indirect dispatches on the compute queue on GFX7 3914- radv: fix indirect draws with NULL index buffer on GFX10 3915- radv: fix segfault when getting device vm fault info 3916 3917Sarah Walker (3): 3918 3919- pvr: Update AM62 DSS compatible string to match upstream 3920- pvr: csbgen: Add dummy implementation of stream type 3921- pvr: Add command stream and static context state layout to rogue_kmd_stream.xml 3922 3923Sathishkumar S (1): 3924 3925- frontends/va: use va interface for jpeg partial decode 3926 3927Sebastian Wick (1): 3928 3929- radeonsi: Destroy queues before the aux contexts 3930 3931Sergi Blanch Torne (8): 3932 3933- ci: disable Collabora's LAVA lab for maintance 3934- Revert "ci: disable Collabora's LAVA lab for maintance" 3935- ci: disable Collabora's LAVA lab for maintance 3936- Revert "ci: disable Collabora's LAVA lab for maintance" 3937- Revert "ci: disable collabora farm as it is currently offline" 3938- ci: disable Collabora's LAVA lab for maintance 3939- Revert "ac/nir: Export clip distances according to clip_cull_mask" 3940- Revert "ci: disable Collabora's LAVA lab for maintance" 3941 3942Shuicheng Lin (1): 3943 3944- intel/xe: Correct DRM_XE_EXEC_QUEUE_SET_PROPERTY's ioctl 3945 3946Sil Vilerino (76): 3947 3948- d3d12: d3d12_video_buffer_create_impl - Fix resource importing 3949- d3d12: Allow creating d3d12_dxcore_screen from existing ID3D12Device 3950- vl/win32: Add vl_win32_screen_create_from_d3d12_device 3951- gallium/auxiliary: Fix pb_bufmgr_slab.c leak 3952- pipe: Extend get_feedback with additional metadata 3953- pipe: Add PIPE_VIDEO_CAP_ENC_H264_DISABLE_DBK_FILTER_MODES_SUPPORTED 3954- pipe: Add PIPE_VIDEO_CAP_ENC_INTRA_REFRESH_MAX_DURATION 3955- pipe: Add H264 VUI encode params 3956- pipe: Add HEVC VUI encode params 3957- pipe: Add max_slice_bytes for H264, HEVC encoding 3958- frontend/va: Add log2_max_frame_num_minus4 and log2_max_pic_order_cnt_lsb_minus4 for h264enc 3959- frontend/va: Parse VUI H264 parameters 3960- frontend/va: Parse VUI HEVC parameters 3961- frontend/va: Support VAEncMiscParameterMaxSliceSize 3962- meson: add vp9 and av1 codec support options 3963- gallium/vl: Check for VP9 and AV1 meson option support flags 3964- d3d12: Plumb pipe_h264_enc_picture_desc.dbk.disable_deblocking_filter_idc 3965- d3d12: Use log2_max_frame_num_minus4 and log2_max_pic_order_cnt_lsb_minus4 from pipe_pic_params_h264 3966- d3d12: Video Encode - Remove PIPE_VIDEO_PROFILE_MPEG4_AVC_BASELINE as not supported 3967- d3d12: Disable codecs according to meson video-codecs option 3968- d3d12: Implement H264 VUI Writer 3969- d3d12: Implement HEVC VUI Writer 3970- d3d12: Implement Intra Refresh for H264, HEVC, AV1 3971- d3d12: Support PIPE_VIDEO_CAP_ENC_H264_DISABLE_DBK_FILTER_MODES_SUPPORTED 3972- d3d12: Implement get_feedback with additional metadata 3973- d3d12: fix usage of GetAdapterLuid() in mingw/GCC using ABI helper 3974- ci: Build d3d12 gallium driver in debian-x86_32 3975- pipe: Support inserting new headers on each H264/HEVC IDR frame 3976- pipe: Add get_feedback_fence for encode async waiting on pipe_feedback_fence 3977- pipe: Add fence_get_win32_handle to get HANDLE from pipe_fence_handle 3978- pipe: Add p_video_codec.get_encode_headers for out of band VPS, SPS, PPS 3979- pipe: Add PIPE_VIDEO_FEEDBACK_METADATA_TYPE_AVERAGE_FRAME_QP 3980- pipe: Add PIPE_VIDEO_CAP_ENC_H264_SUPPORTS_CABAC_ENCODE 3981- pipe: Add PIPE_H264_MAX_REFERENCES 3982- frontend/va: Add h264 encode ip_period param 3983- frontend/va: Add VACodedBufferSegment Average QP metadata 3984- frontend/va: Use p_video_codec.get_feedback_fence to report errors on frame submission 3985- vl_winsys_win32: call winsys->destroy(winsys) in error conditions 3986- d3d12: Implement inserting optional new headers on each H264/HEVC IDR frame 3987- d3d12: Do not increase active_seq_parameter_set_id on new SPS. Force PPS on new SPS 3988- d3d12: H264 encode - Allow CONSTRAINED_BASELINE profile to be written in headers 3989- d3d12: Implement get_feedback_fence for encode async waiting on pipe_feedback_fence 3990- d3d12: Implement fence_get_win32_handle to get HANDLE from d3d12_fence 3991- d3d12: Only pass texture dimensions to d3d12_video_encoder_update_current_encoder_config_state 3992- d3d12: Implement d3d12_video_encoder_get_encode_headers for out of band VPS, SPS, PPS 3993- d3d12: Use new pipe h264 encode ip_period param 3994- d3d12: max_frame_poc workaround for infinite GOPs 3995- d3d12: Fix max slice size and max frame size metadata reporting 3996- d3d12: Implement PIPE_VIDEO_FEEDBACK_METADATA_TYPE_AVERAGE_FRAME_QP 3997- d3d12: Autodetect d3d12_video_buffer imported handle/resource format and dimensions when not passed 3998- d3d12: Implement PIPE_VIDEO_CAP_ENC_H264_SUPPORTS_CABAC_ENCODE 3999- d3d12: Detect imported resource buffer unknown format 4000- d3d12: Improve error detection and reporting for video encoder 4001- d3d12: Fix d3d12_tcs_variant_cache_destroy leak in d3d12_context 4002- d3d12: Fix screen->winsys leak in d3d12_screen 4003- d3d12: d3d12_create_fence_win32 - Fix double refcount bump 4004- d3d12: Fix max reference frames reporting when HW does not support B frame 4005- d3d12: Video Encoder - When setting rate control dirty flags take into account rolled back optional configs 4006- d3d12: Video Encoder: Support reporting non contiguous NALU, offsets for frontend extraction 4007- meson: Add all, all_free (default) options for video-codecs option. 4008- d3d12: Fix usage of H264/HEVC specific classes when VIDEO_CODEC_H26XENC not set 4009- d3d12: Fix AV1 video encode 32 bits build 4010- d3d12: Fix typos in d3d12_video_encoder_bitstream_builder_h264 4011- d3d12: Use enc_constraint_set_flags for H264 NALU writing 4012- frontends/va: Parse enc_constraint_set_flags from packed SPS 4013- d3d12: Check video encode codec cap before checking encode profile/level cap 4014- meson: Only build WGL for Windows platform when opengl option is active 4015- d3d12: Bump directx-headers dependency to v611.0 for latest video codecs and features 4016- d3d12: Remove D3D12_SDK_VERSION checks after bumping directx-headers dependency to v611 4017- d3d12: Fix warning C4065 switch statement contains default but no case labels 4018- d3d12: Implement Delta QP ROI In h264, hevc and av1 video encode 4019- d3d12: Report support for PIPE_VIDEO_CAP_ENC_ROI for Delta QP 4020- Revert "d3d12: Only destroy the winsys during screen destruction, not reset" 4021- Revert "d3d12: Fix screen->winsys leak in d3d12_screen" 4022- d3d12: Fix AV1 Encode - log2 rounding for tile_info section 4023- d3d12: Implement cap for PIPE_VIDEO_CAP_ENC_INTRA_REFRESH 4024 4025Simon Ser (3): 4026 4027- egl: extract EGLDevice setup in dedicated function 4028- egl: move dri2_setup_device() after dri2_setup_extensions() 4029- egl: ensure a render node is passed to _eglFindDevice() 4030 4031Simon Zeni (2): 4032 4033- EGL: sync files with Khronos 4034- egl: implement EGL_EXT_query_reset_notification_strategy 4035 4036Sviatoslav Peleshko (23): 4037 4038- nir/loop_analyze: Fix inverted condition handling in iterations calculation 4039- anv: Fix MI_ARB_CHECK calls in generated indirect draws optimization 4040- nir/loop_analyze: Don't test non-positive iterations count 4041- intel/fs: Don't optimize DW*1 MUL if it stores value to the accumulator 4042- intel/compiler: Add variable to dump binaries of all compiled shaders 4043- intel/disasm: Print half-float values instead of placeholder 4044- intel/compiler: Set flag reg to 0 when disabling predication 4045- intel/disasm: Print src1_len correctly depending on ExDesc type 4046- intel/fs: Set group 0 for Wa_14010017096 MOV instruction 4047- intel/eu/validate: Validate that the ExecSize is a factor of chosen ChanOff 4048- intel/tools/i965_asm: Add SWSB handling 4049- intel/tools/i965_asm: Handle HF immediates 4050- intel/tools/i965_asm: Handle sync instruction 4051- intel/tools/i965_asm: Allow neg and abs modifiers on accumulator register 4052- intel/tools/i965_asm: Don't override flag reg from cond modifier 4053- intel/tools/i965_asm: Allow src0 and src2 of ternary instructions to be imm 4054- intel/tools/i965_asm: Implement gfx12 and gfx12.5 send/sendc 4055- intel/tools/i965_asm: Add dp4a and add3 instructions 4056- intel/tools/i965_asm: Don't set src0 for break and while on gfx12 4057- intel/tools/tests: Fix sends indirect argument in gfx9 test 4058- intel/tools/tests: Unbreak i965_asm tests 4059- intel/tools/tests: Add i965_asm tests for gfx12 and gfx12.5 4060- nir: Use alu source components count in nir_alu_srcs_negative_equal 4061 4062Sylvain Munaut (1): 4063 4064- mesa/st, dri2, wgl, glx: Restore flush_objects interop backward compat 4065 4066Tapani Pälli (34): 4067 4068- intel/dev: provide intel_device_info_is_adln helper 4069- iris: add required PC for Wa_14014966230 4070- anv: add current_pipeline for batch_emit_pipe_control 4071- anv: add required PC for Wa_14014966230 4072- intel/dev: fix intel_device_info_is_adln check 4073- iris: handle tile case where cso width, height is zero 4074- anv: skip engine initialization if vm control not supported 4075- iris: add data cache flush for pre hiz op 4076- anv/drirc: add option to disable FCV optimization 4077- drirc: use fake_sparse for Armored Core 6 4078- drirc: Set limit_trig_input_range option for Valheim 4079- iris: implement Wa_18020335297 4080- anv: refactor state emission 4081- anv: implement Wa_18020335297 4082- iris: implement dummy blit for Wa_16018063123 4083- anv: implement dummy blit for Wa_16018063123 4084- mesa: lower EXT_render_snorm version requirement 4085- anv: use slow clear for small surfaces with Wa_18020603990 4086- iris: use slow clear for small surfaces with Wa_18020603990 4087- anv/hasvk/drirc: change anv_assume_full_subgroups to have subgroup size 4088- drirc: setup anv_assume_full_subgroups=16 for UnrealEngine5.1 4089- anv: cleanup, use intel_needs_workaround instead of is_dg2 4090- iris: cleanup, use intel_needs_workaround instead of is_dg2 4091- iris: use intel_needs_workaround with 14015055625 4092- mesa: fix enum support for EXT_clip_cull_distance 4093- drirc/anv: disable FCV optimization for Baldur's Gate 3 4094- isl: implement Wa_14018471104 4095- iris: use workaround framework for Wa_22018402687 4096- anv: use workaround framework for Wa_22018402687 4097- anv: check for wa 16013994831 in emit_so_memcpy_end 4098- iris: expand pre-hiz data cache flush to gfx >= 125 4099- anv: expand pre-hiz data cache flush to gfx >= 125 4100- iris: replace constant cache invalidate with hdc flush 4101- anv: move \*bits_for_access_flags to genX_cmd_buffer 4102 4103Tatsuyuki Ishi (25): 4104 4105- fast_urem_by_const: #ifdef DEBUG an assertion. 4106- radv: Fix mis-sizing of pipeline_flags in radv_hash_rt_shaders. 4107- radv: Use sizeof(flags) instead of hardcoded size in radv_hash_shaders. 4108- aco: Replace aco_vs_input_state.divisors with bitfields. 4109- radv: Remove last VS prolog reuse logic. 4110- radv, aco: Rework VS prolog key handling. 4111- radv, aco: Inline struct aco_vs_input_state. 4112- radv: Pre-mask misaligned_mask for VS prolog. 4113- radv: Implement helpers for shader part caching. 4114- radv: Use shader part caching helpers for VS prolog and PS/TCS epilog. 4115- zink: Fix missing sparse buffer bind synchronization. 4116- zink: Defer freeing sparse backing buffers. 4117- zink: Fix waiting for texture commit semaphores. 4118- zink: Remove now unused dead_framebuffers. 4119- radv: Remove aspect mask "expansion" for copy_image. 4120- radv: Add workaround to allow sparse binding on gfx queues. 4121- radv: Enable radv_legacy_sparse_binding for DOOM Eternal. 4122- radv/amdgpu: Remove virtual bo dump logic. 4123- radv/amdgpu: Separate the concept of residency from use_global_list. 4124- radv: Simplify shader config assignment. 4125- radv: Move up radv_get_max_waves, radv_get_max_scratch_waves. 4126- radv: Precompute shader max_waves. 4127- radv: Add layer to skip UnmapMemory for Quantic Dream Engine 4128- radv: Recompute max_waves after postprocessing RT config 4129- radv: never set DISABLE_WR_CONFIRM for CP DMA clears and copies 4130 4131Tele42 (1): 4132 4133- drirc: enable \`vk_wsi_force_swapchain_to_current_extent` for "The Talos Principle VR" 4134 4135Teng, Jin Chung (1): 4136 4137- d3d12: Decode - Adding more supported resolution 4138 4139Thomas Devoogdt (1): 4140 4141- util: os_same_file_description: fix unknown linux < 3.5 syscall SYS_kcmp 4142 4143Thomas H.P. Andersen (13): 4144 4145- docs: update nvk extensions 4146- nvk: use nvk_pipeline_zalloc 4147- nouveau: drop unused #includes of tgsi_parse.h 4148- nvk: VK_EXT_color_write_enable 4149- docs: update features.txt for nvk 4150- nvk: loop over stages in MESA order 4151- nvk: add hashing for shaders 4152- nvk: allocatable nvk_shaders 4153- nvk: pipeline shader cache 4154- nvk: VK_EXT_pipeline_creation_feedback 4155- nvk: VK_EXT_pipeline_creation_cache_control 4156- nvk: VK_EXT_shader_module_identifier 4157- docs: update features.txt for nvk 4158 4159Thong Thai (1): 4160 4161- radeonsi/vcn: remove EFC support for renoir 4162 4163Timothy Arceri (24): 4164 4165- nir: move build_write_masked_stores() to nir builder 4166- glsl/nir: implement a nir based lower distance pass 4167- glsl: switch to NIR distance lowering pass 4168- glsl: remove now unused lower distance pass 4169- nir: simplify nir_build_write_masked_store() 4170- glsl: drop ir_binop_ubo_load 4171- glsl: add nir based lower_named_interface_blocks() 4172- glsl: use the nir based lower_named_interface_blocks() 4173- glsl: remove GLSL IR lower_named_interface_blocks() 4174- nir: add nir_fixup_deref_types() 4175- glsl: support glsl linking in nir block linker 4176- glsl: use new nir based block linker 4177- glsl: remove now unused GLSL IR block linker 4178- glsl/st: move has_half_float_packing flag to consts struct 4179- glsl/st: move remaining glsl ir lowering to linker 4180- mesa/st: drop additional validate_ir_tree() call 4181- glsl: combine shader stage loops in linker 4182- radeonsi: fix divide by zero in si_get_small_prim_cull_info() 4183- glsl: tidy up validation loop in linker 4184- glsl: remove some unused linker code 4185- glsl: copy precision val of function output params 4186- glsl: add additional lower mediump test 4187- glsl: move glsl ir lowering out of glsl_to_nir() 4188- glsl: add support for inout params to glsl_to_nir() 4189 4190Timur Kristóf (32): 4191 4192- radv: Remove always false tmz variables from SDMA functions. 4193- radv: Expose radv_get_dcc_max_uncompressed_block_size function. 4194- radv: Implement buffer/image copies on transfer queues. 4195- radv: Add temporary BO for transfer queues. 4196- radv: Implement workaround for unaligned buffer/image copies. 4197- ac: Rename SDMA max copy size macros to reflect SDMA version. 4198- ac: Remove CIK prefix from SDMA opcodes. 4199- ac: Add sdma_version enum and use it for SDMA features. 4200- radv: Use GPU info for determining SDMA metadata support. 4201- radv: Use SDMA version instead of gfx_level where possible. 4202- radv: disable HTILE/DCC for concurrent images with transfer queue if unsupported. 4203- radv: Disable DCC on exclusive images with transfer queue when SDMA doesn't support it. 4204- radv: Disable HTILE on exclusive images with transfer queues when SDMA doesn't support it. 4205- radv: Don't retile DCC on transfer queues. 4206- radv: Implement barriers for transfer queues. 4207- radv: Implement vkCmdFillBuffer on transfer queues. 4208- radv: Implement vkCmdWriteTimestamp2 on transfer queues. 4209- radv: Implement vkCmdWriteBufferMarker2AMD on transfer queues. 4210- radv: Implement buffer copies on transfer queues. 4211- radv: Implement vkCmdUpdateBuffer on transfer queues. 4212- radv: Move SDMA function and struct declarations to a new header. 4213- radv: Unify SDMA surface struct for linear and tiled images. 4214- radv: Refactor and simplify SDMA surface info functions. 4215- radv: Pass radv_sdma_surf from copy functions to SDMA. 4216- radv: Use SDMA surface structs for determining unaligned buffer copies. 4217- radv: Clean up SDMA chunked copy info struct. 4218- radv: Use correct plane and binding index with SDMA. 4219- radv: Correct binding index for transfer buffer-image copies. 4220- radv: Implement image copies on transfer queues. 4221- radv: Implement T2T scanline copy workaround. 4222- radv: Expose transfer queues, hidden behind a perftest flag. 4223- radv: Correctly select SDMA support for PRIME blit. 4224 4225Vignesh Raman (5): 4226 4227- ci: Add CustomLogger class and CLI tool 4228- ci: copy logging script to install 4229- ci: bare-metal: poe: Create strutured logs 4230- ci: bare-metal: cros-servo: Create strutured logs for a630 4231- ci/freedreno: add FARM variable 4232 4233Vinson Lee (6): 4234 4235- ac/surface/tests: Remove duplicate variable block_size_bits 4236- nir: Fix decomposed_prmcnt copy-paste error 4237- nvk: Fix tautological-overlap-compare warning 4238- etnaviv: Remove duplicate initializers 4239- ac/rgp: Fix single-bit-bitfield-constant-conversion warning 4240- intel/disasm: Remove duplicate variable reg_file 4241 4242Violet Purcell (1): 4243 4244- gallium: Fix undefined symbols in version scripts 4245 4246Vitaliy Triang3l Kuzmin (13): 4247 4248- r600: Move r600_create_vertex_fetch_shader to r600_shader.c 4249- r600: Remove Gallium dependencies in r600_isa 4250- r600: Replace R600_ERR with R600_ASM_ERR in shader code 4251- r600: Remove Gallium dependencies in r600_asm 4252- r600: Split r600_shader.h into common and Gallium parts 4253- r600/sfn: Make r600 header include paths relative 4254- r600/sfn: Split r600_shader_from_nir into common and Gallium parts 4255- r600: Fix outputs typo in print_pipe_info 4256- r600: Replace TGSI I/O semantics with shader_enums 4257- r600/sfn: Change sampler_index to texture_index in buffer txs 4258- r600/sfn: Remove unused sampler reference in emit_tex_lod 4259- nir: Don't skip lower_alu if only bit_count needs lowering 4260- vulkan: Fix pipeline layout allocation scope 4261 4262Vlad Schiller (1): 4263 4264- pvr: Fix VK_EXT_texel_buffer_alignment 4265 4266VladimirTechMan (1): 4267 4268- venus/android: Switch to using u_gralloc 4269 4270Yiwei Zhang (57): 4271 4272- venus: use common vk_image_format_to_ahb_format helper 4273- venus: use common vk_image_usage_to_ahb_usage helper 4274- venus: tiny refactor of device memory report interface 4275- venus: avoid modifier prop query in vn_android_get_image_builder 4276- venus: use common vk_image as vn_image base 4277- venus: use common vk_device_memory as vn_device_memory base 4278- venus: use common AHB management and export impl 4279- venus: use vk_device_memory tracked export and import handle types 4280- venus: use vk_device_memory tracked size 4281- venus: use vk_device_memory tracked memory_type_index 4282- venus: fix query feedback batch leak and race upon submission 4283- zink: apply can_do_invalid_linear_modifier to Venus 4284- venus: scrub msaa sample mask only with valid msaa state 4285- venus: fix async compute pipeline creation 4286- venus: properly initialize ring monitor initial alive status 4287- venus: add missing shmem pool fini for cs_shmem pool 4288- venus: reduce ring idle timeout from 50ms to 5ms 4289- venus: use STACK_ARRAY to prepare for indirect submission 4290- venus: enable renderer shmem cache dump for cache debug 4291- venus: add ring helper to avoid redundant ring wait requests 4292- venus: use instance allocator for ring allocs 4293- venus: use instance allocator for indirect cs storage alloc 4294- venus: add vn_instance_fini_ring helper 4295- venus: refactor instance creation failure path 4296- venus: move ring monitor to instance for sharing across rings 4297- venus: refactor to add vn_watchdog 4298- venus: further cleanup vn_relax_init to take instance instead of ring 4299- venus: always set reply command stream to avoid seek 4300- venus: make vn_renderer_shmem_pool thread-safe 4301- venus: remove command_dropped tracking 4302- venus: relax ring mutex 4303- venus: move ring shmem into vn_ring 4304- venus: move the rest ring belongings into ring 4305- venus: move ring submission into ring 4306- venus: move the actual ring creation into ring as well 4307- venus: add vn_ring_get_id and hide vn_ring internals entirely 4308- venus: switch to vn_ring as the protocol interface - part 1 4309- venus: switch to vn_ring as the protocol interface - part 2 4310- venus: switch to vn_ring as the protocol interface - part 3 4311- venus: add vn_gettid helper 4312- venus: dispatch background shader tasks to secondary ring 4313- driconfig: add a workaround for Hades (Vulkan backend) 4314- vulkan/wsi/wayland: ensure drm modifiers stored in chain are immutable 4315- venus: clang format fixes 4316- venus: split up the pipeline fix description into self and pnext 4317- venus: refactor to add pipeline info fixes helpers 4318- venus: properly ignore formats in VkPipelineRenderingCreateInfo 4319- meson/vulkan/util: allow venus to drop compiler deps 4320- venus: make tls hint specific to pipeline creation 4321- venus: TLS ring 4322- venus: clean up secondary ring 4323- venus: allow to retrieve pipeline cache on TLS ring 4324- venus: populate oom from ring submit alloc failures 4325- vulkan/wsi/wayland: fix returns and avoid leaks for failed swapchain 4326- venus: fix pipeline layout lifetime 4327- venus: fix pipeline derivatives 4328- venus: fix to respect the final pipeline layout 4329 4330Yogesh Mohan Marimuthu (10): 4331 4332- winsys/amdgpu: add _dw to max_ib_size variable for code readability 4333- winsys/amdgpu: remove ib_type variable from struct amdgpu_ib 4334- winsys/amdgpu: rename struct amdgpu_ib main variable as main_ib everywhere 4335- winsys/amdgpu: rename ib variable name to chunk_ib 4336- winsys/amdgpu: remove rcs variable from struct amdgpu_ib 4337- winsys/amdgpu: move 125% comment to correct line of code 4338- winsys/amdgpu: rename requested_size_dw to projected_size_dw 4339- winsys/amdgpu: rename ptr_ib_size_inside_ib to is_chained_ib 4340- winsys/amdgpu: rename big_ib_buffer,ib_mapped variables in struct amdgpu_ib 4341- winsys/radeon: remove unused gpu_address variable from struct radeon_cmdbuf 4342 4343Yonggang Luo (61): 4344 4345- compiler: Implement num_mesh_vertices_per_primitive to match u_vertices_per_prim 4346- treewide: Merge num_mesh_vertices_per_primitive and u_vertices_per_prim into mesa_vertices_per_prim 4347- nir: remove redundant include of gallium headers 4348- nir: #include "util/macros.h" for BITFIELD64_MASK in nir.c 4349- compiler,vulkan,drm-shim: Remove unused include directories from meson.build 4350- nvk: Should use alignment instead of align 4351- microsoft/clc: Using sampler_id instead PIPE_MAX_SHADER_SAMPLER_VIEWS for dxil_lower_sample_to_txf_for_integer_tex 4352- microsoft/clc: Use 128 instead of PIPE_MAX_SHADER_SAMPLER_VIEWS 4353- micosoft: define enum dxil_tex_wrap to avoid the usage of enum pipe_tex_wrap 4354- micosoft: decouple microsoft vulkan driver and compiler from gallium 4355- dzn: Fixes -Werror=incompatible-pointer-type 4356- d3d12,dzn: Simplify the usage of #include <wsl/winadapter.h> 4357- util: Fixes note: the alignment of ‘_Atomic long long int’ fields changed in GCC 11. 4358- glsl: move glsl_get_gl_type into glsl/linker_util.h 4359- meson/win32: There is no need install OpenGL headers on win32 4360- intel: Remove unused ALIGN macro 4361- clover: Rename function align to align_vector to avoid conflict with global align 4362- treewide: Avoid use align as variable, replace it with other names 4363- util,vulkan,mesa,compiler: Generate source files with utf8 encoding from mako template 4364- intel: Generate source file with utf-8 encoding from mako template 4365- zink: Generate source file with utf-8 encoding from mako template 4366- docs: Generate document with utf8 encoding 4367- v3dv: Use correct type VkStencilOp in function translate_stencil_op 4368- broadcom/compiler: Use correct type pipe_logicop for logicop_func in struct v3d_fs_key 4369- broadcom/compiler: remove unused blend in v3d_fs_key 4370- broadcom: remove unused headers include 4371- osmesa: Make osmesa.h compatible with Windows SDK's GL.h 4372- broadcom/(compiler,common): avoid include of gallium headers in header files 4373- broadcom/compiler: remove include of gallium headers from meson.build 4374- osmesa: Fixes building osmesa.c on windows 4375- meson: Support for both packaging and distutils 4376- dzn: Remove #if D3D12_SDK_VERSION blocks now that 611 is required 4377- ci/msvc: update flex and bison to winflexbison3 4378- ci/msvc: Install graphics tools(DirectX debug layer) easy to stuck, place it at the beginning 4379- ci/msvc: Split install vulkan sdk out of choco 4380- ci/msvc: Rename vs2019 to msvc 4381- ci/msvc: Rename vs to msvc for consistence 4382- ci/msvc: Improve msvc init 4383- ci/msvc: Remove &windows_msvc_image_tag 4384- ci/msvc: Upgrade to vs2022 build tools 4385- ci/msvc: Install msvc2019 only from vs2022 4386- ci/msvc: Install both msvc2019 and msvc2022 4387- ci/msvc: Stick deqp-runner to version v0.16.1 4388- ci/msvc: Stick VK-GL-CTS to specific version 56114106d860c121cd6ff0c3b926ddc50c4c11fd 4389- ci/msvc: Split the install of rust and d3d out of mesa_deps_test.ps1 4390- ci/microsoft: Update the image-tag and image-path for msvc2019/msvc2022 4391- treewide: Replace the include of nir_types.h with glsl_types.h 4392- compiler/glsl: Move glsl specific _mesa_glsl_initialize_types out and glsl_symbol_table of glsl_types.h 4393- intel: Avoid use align as variable, replace it with other names 4394- intel: Use ALIGN_POT instead of ALIGN inside macro define 4395- intel: Cleanup duplicate ALIGN macro defines 4396- intel,crocus,iris: Use align64 instead of ALIGN for 64 bit value parameter 4397- amd: Use align64 instead of ALIGN for 64 bit value parameter 4398- util,compiler: Avoid use align as variable, replace it with other names 4399- panfrost: Avoid use align as variable, replace it with other names 4400- glsl: Fixes glcpp/tests with mingw/gcc 4401- util: Add align_uintptr and use it treewide to replace ALIGN that works on size_t and uintptr_t 4402- nvk: Avoid use align as variable, replace it with alignment 4403- nouveau: Use align64 instead of ALIGN for 64 bit value parameter 4404- etnaviv/drm: Remove redundant ALIGN macro by #include "util/u_math.h" 4405- compiler/spirv: The spirv shader is binary, should write in binary mode 4406 4407Zhang Ning (2): 4408 4409- iris: use helper util_resource_at_index 4410- lima: Support parameter queries for PIPE_RESOURCE_PARAM_NPLANES 4411 4412Zhang, Jianxun (5): 4413 4414- intel/genxml: Remove 3DSTATE_CLEAR_PARAMS instruction (xe2) 4415- intel/genxml: update 3DSTATE_WM_HZ_OP instruction (xe2) 4416- intel/genxml: update 3DSTATE_DEPTH_BUFFER instruction (xe2) 4417- intel/isl: update 3DSTATE_STENCIL_BUFFER (xe2) 4418- intel/genxml: Add RENDER_SURFACE_STATE for xe2 4419 4420antonino (4): 4421 4422- nir: don't take the derivative of the array index in \`nir_lower_tex` 4423- vulkan: use instance allocator for \`object_name` in some objects 4424- nir/zink: drop NIH helper in favor of \`mesa_vertices_per_prim` 4425- egl: only check dri3 on X11 4426 4427daoxianggong (1): 4428 4429- zink - Fix for blend color change without blend state change 4430 4431duncan.hopkins (4): 4432 4433- util: Update util/libdrm.h stubs to allow loader.c to compile on MacOS. 4434- dri: added build dependencies for systems using non-standard prefixed X11 libs. 4435- glx: fix automatic zink fallback loading between hw and sw drivers on MacOS 4436- vulkan: added build dependencies for systems using non-standard prefixed X11 libs. 4437 4438i509VCB (3): 4439 4440- asahi,docs: add PBE to hardware glossary 4441- asahi: create queue for screen 4442- agx: remove internal agx_device queue 4443 4444jphuang (1): 4445 4446- dzn: Change dst image layout according to aspect 4447 4448llyyr (1): 4449 4450- docs: document AMD_DEBUG=noefc and useaco 4451 4452ratatouillegamer (2): 4453 4454- hasvk: Add Vulkan API version override 4455- hasvk: Enable hasvk override Vulkan API Version for Brawlhalla 4456