1Mesa 20.0.0 Release Notes / 2020-02-19 2====================================== 3 4Mesa 20.0.0 is a new development release. People who are concerned with 5stability and reliability should stick with a previous release or wait 6for Mesa 20.0.1. 7 8Mesa 20.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 11used. Some drivers don't support all the features required in OpenGL 124.6. OpenGL 4.6 is **only** available if requested at context creation. 13Compatibility contexts may report a lower version depending on each 14driver. 15 16Mesa 20.0.0 implements the Vulkan 1.2 API, but the version reported by 17the apiVersion property of the VkPhysicalDeviceProperties struct depends 18on the particular driver being used. 19 20SHA256 checksum 21--------------- 22 23:: 24 25 bb6db3e54b608d2536d4000b3de7dd3ae115fc114e8acbb5afff4b3bbed04b34 mesa-20.0.0.tar.xz 26 27New features 28------------ 29 30- OpenGL 4.6 on radeonsi. 31- GL_ARB_gl_spirv on radeonsi. 32- GL_ARB_spirv_extensions on radeonsi. 33- GL_EXT_direct_state_access for compatibility profile. 34- VK_AMD_device_coherent_memory on RADV. 35- VK_AMD_mixed_attachment_samples on RADV. 36- VK_AMD_shader_explicit_vertex_parameter on RADV. 37- VK_AMD_shader_image_load_store_lod on RADV. 38- VK_AMD_shader_fragment_mask on RADV. 39- VK_EXT_subgroup_size_control on RADV/LLVM. 40- VK_KHR_separate_depth_stencil_layouts on Intel, RADV. 41- VK_KHR_shader_subgroup_extended_types on RADV. 42- VK_KHR_swapchain_mutable_format on RADV. 43- VK_KHR_shader_float_controls on RADV/ACO. 44- GFX6 (Southern Islands) and GFX7 (Sea Islands) support on RADV/ACO. 45- Wave32 support for GFX10 (Navi) on RADV/ACO. 46- Compilation of Geometry Shaders on RADV/ACO. 47- Vulkan 1.2 on Intel, RADV. 48- GL_INTEL_shader_integer_functions2 and 49 VK_INTEL_shader_integer_functions2 on Intel. 50 51Bug fixes 52--------- 53 54- drisw crashes on calling NULL putImage on EGL surfaceless platform 55 (pbuffer EGLSurface) 56- [radeonsi][vaapi][bisected] invalid VASurfaceID when playing 57 interlaced DVB stream in Kodi 58- [RADV] GPU hangs while the cutscene plays in the game Assassin's 59 Creed Origins 60- ACO: The Elder Scrolls Online crashes on startup (Navi) 61- Broken rendering of glxgears on S/390 architecture (64bit, BigEndian) 62- aco: sun flickering with Assassins Creeds Origins 63- !1896 broke ext_image_dma_buf_import piglit tests with radeonsi 64- aco: wrong geometry with Assassins Creed Origins on GFX6 65- valgrind errors since commit a8ec4082a41 66- OSMesa osmesa_choose_format returns a format not supported by 67 st_new_renderbuffer_fb 68- Build error with VS on WIN 69- Using EGL_KHR_surfaceless_context causes spurious "libEGL warning: 70 FIXME: egl/x11 doesn't support front buffer rendering." 71- !3460 broke texsubimage test with piglit on zink+anv 72- The screen is black when using ACO 73- [Regression] JavaFX unbounded VRAM+RAM usage 74- radv: implement VK_AMD_shader_explicit_vertex_parameter 75- Civilization VI crashes when loading game (AMD Vega Mobile) 76- [radeonsi] X-Server crashes when trying to start Guild Wars 2 with 77 the commits from !3421 78- aco: implement GFX6 support 79- Add support for VK_KHR_swapchain_mutable_format 80- radv: The Surge 2 crashes in ac_get_elem_bits() 81- [Regression] JavaFX unbounded VRAM+RAM usage 82- Use the OpenCL dispatch defnitions from OpenCL_Headers 83- [regression][ilk,g965,g45] various dEQP-GLES2.functional.shaders.\* 84 failures 85- aco: Dead Rising 4 crashes in lower_to_hw_instr() on GFX6-GFX7 86- libvulkan_radeon.so crash with \`free(): double free detected in 87 tcache 2\` 88- Commit be08e6a causes crash in com.android.launcher3 (Launcher) 89- anv: Regression causing issues for radv when there are no Intel 90 devices 91- Mesa no longer compiles with GCC 10 92- [Navi/aco] Guild Wars 2 - ring gfx timeout with commit 3bca0af2 93- [radv/aco] Regression is causing a soft crash in The Witcher 3 94- [bisected] [radeonsi] GPU hangs/resets while playing interlaced 95 content on Kodi with VAAPI 96- [radeonsi] MSAA image not copied properly after image store through 97 texture view 98- T-Rex and Manhattan onscreen performance issue on Android 99- VkSamplerCreateInfo compareEnable not respected 100- VkSamplerCreateInfo compareEnable not respected 101- Freedreno drm softpin driver implementation leaks memory 102- [POLARIS10] VRAM leak involving glTexImage2D with non-NULL data 103 argument 104- [regression][bisected][ivb/byt] crucible test 105 func.push-constants.basic.q0 causes gpu hang 106- MR 3096 broke lots of piglit ext_framebuffer_object tests on Raven 107- Rise of the Tomb Raider benchmark crash on Dell XPS 7390 2-in-1 w/ 108 Iris Plus Graphics (Ice Lake 8x8 GT2) 109- Raven Ridge (2400G): Resident Evil 2 crashes my machine 110- Common practice of glGetActiveUniform leads to O(N²) behavior in Mesa 111- Rocket League ingame artifacts 112- [radv] SteamVR direct mode no longer works 113- [ANV] unused create parameters not properly ignored 114- [Bisected] Mesa fails to start alacritty with the wayland backend 115 (AMD Vega). 116- [iris] piglit test clip-distance-vs-gs-out fails due to VUE map 117 mismatch between VS <-> GS stages 118- [radv] SteamVR direct mode no longer works 119- Blocky corruption in The Surge 2 120- radeonsi: Floating point exception on R9 270 gpu for a set of traces 121- [RADV] [Navi] LOD artifacting in Halo - The Master Chief Collection 122 (Halo Reach) 123- [CTS] 124 dEQP-VK.api.image_clearing.core.clear_color_image.2d.linear.single_layer.r32g32b32\_\* 125 fail on GFX6-GFX8 126- Vulkan: Please consider adding another sample count to 127 sampledImageIntegerSampleCounts 128- Navi10: Bitrate based encoding with VAAPI/RadeonSI unusable 129- [RADV] create parameters not properly ignored 130- [regression][bdw,gen9,hsw,icl][iris] gltcs failures on 131 mesa=8172b1fa03f 132- Bugs in RadeonSI VAAPI implementation 133- [GFX10] Glitch rendering Custom Avatars in Beat Saber 134- intel/fs: Check for 16-bit immediates in 135 fs_visitor::lower_mul_dword_inst is too strict 136- i965/iris: assert when destroy GL context with active query 137- Visuals without alpha bits are not sRGB-capable 138- swapchain throttling: wait for fence has 1ns timeout 139- radeonsi: OpenGL app always produces page fault in gfxhub on Navi 10 140- [regression] 141 KHR-GLES31.core.geometry_shader.api.program_pipeline_vs_gs_capture 142 fails for various drivers 143- [CTS] 144 dEQP-VK.spirv_assembly.instruction.spirv1p4.entrypoint.tess_con_pc_entry_point 145 hangs on GFX10 146- [RADV] SPIR-V warning when compiling shader using storage 147 multisampled image array 148- [RADV] The Dead Rising 4 is causing a GPU hang with LLVM backend 149- macOS u_thread.h:156:4: error: implicit declaration of function 150 'pthread_getcpuclockid' 151- [Wine / Vulkan] Doom 2016 Hangs on Main Menu 152- NULL resource when playing VP9 video through VDPAU on RX 570 153- radeonsi: mpv --vo=vaapi incorrect rendering on gfx9+ 154- [BSW/BDW] skia lcdblendmode & lcdoverlap test failure 155- Create a way to prefer iris vs i965 via driconf 156- [Bisected] i965: CS:GO crashes in emit_deref_copy_load_store with 157 debug Mesa 158- radv/aco Jedi Fallen Order hair rendering buggy 159- Inaccurate information on https://www.mesa3d.org/repository.html 160 about how to get git write access. 161- [RADV] VK_KHR_timeline_semaphore balloons in runtime 162- Shadow of Mordor has randomly dancing black shadows on Talion's face 163- gen7 crucible failures func.push-constants.basic.q0 and 164 func.shader-subgroup-vote.basic.q0 165- GL_EXT_disjoint_timer_query failing with GL_INVALID_ENUM 166- Unreal 4 Elemental and MatineeFightScene demos misrender 167- gputest gimark has unwanted black liquorice flakes 168- triangle strip clipping with GL_FIRST_VERTEX_CONVENTION causes wrong 169 vertex's attribute to be broadcasted for flat interpolation 170- [bisected][regression][g45,g965,ilk] piglit arb_fragment_program kil 171 failures 172- glcts crashes since the enablement of ARB_shading_language_include 173- Android build broken 174- ld.lld: error: duplicate symbol (mesa-19.3.0-rc1) 175- Divinity: Original Sin Enhanced Edition(Native) crash on start 176- HSW. Tropico 6 and SuperTuxKart have shadows flickering 177- GL_EXT_disjoint_timer_query failing with GL_INVALID_ENUM 178- glxgears segfaults on POWER / Xvnc 179- [regression][bdw,gen9,icl][iris] piglit failures on mesa 180 f9fd04aca15fd00889caa666ba38007268e67f5c 181- Redundant builds of libmesa_classic and libmesa_gallium 182- [IVB,BYT] [Regression] [Bisected] Core dump at launching 183 arb_compute_shader/linker/bug-93840.shader_test 184- Vulkan drivers need access to format utils of gallium 185- Disabling lower_fragdata_array causes shader-db to crash for some 186 drivers 187- GL_EXT_disjoint_timer_query failing with GL_INVALID_ENUM 188- Android build broken by commit 9020f51 "util/u_endian: Add error 189 checks" 190- radv secure compile feature breaks compilation of RADV on armhf EABI 191 (19.3-rc1) 192- radv_debug.c warnings when compiling on 32 bits : cast to pointer 193 from integer of different size 194- Meson: Mesa3D build failure with standalone Mingw-w64 multilib 195- [regression][bisected] KHR46 VertexArrayAttribFormat has unexpectedly 196 generated GL_INVALID_OPERATION 197- textureSize(samplerExternalOES, int) missing in desktop mesa 19.1.7 198 implementation 199- zink: implicly casting integers to pointers, warnings on 32-bit 200 compile 201- Objects leaving trails in Firefox with antialias and 202 preserveDrawingBuffer in three.js WebGLRednerer with mesa 19.2 203 204Changes 205------- 206 207Aaron Watry (1): 208 209- clover/llvm: fix build after llvm 10 commit 1dfede3122ee 210 211Adam Jackson (1): 212 213- drisw: Cache the depth of the X drawable 214 215Afonso Bordado (4): 216 217- pan/midgard: Optimize comparisions with similar operations 218- pan/midgard: Move midgard_is_branch_unit to helpers 219- pan/midgard: Optimize branches with inverted arguments 220- pan/midgard: Fix midgard_compile.h includes 221 222Alan Coopersmith (1): 223 224- intel/perf: adapt to platforms like Solaris without d_type in struct 225 dirent 226 227Alejandro Piñeiro (4): 228 229- v3d: adds an extra MOV for any sig.ld\* 230- mesa/main/util: moving gallium u_mm to util, remove main/mm 231- nir/opt_peephole_select: remove unused variables 232- turnip: remove unused descriptor state dirty 233 234Alexander van der Grinten (1): 235 236- egl: Fix \_eglPointerIsDereferencable w/o mincore() 237 238Alexander von Gluck IV (1): 239 240- haiku/hgl: Fix build via header reordering 241 242Alyssa Rosenzweig (223): 243 244- pipe-loader: Build kmsro loader for with all kmsro targets 245- pan/midgard: Remove OP_IS_STORE_VARY 246- pan/midgard: Add a dummy source for loads 247- pan/midgard: Refactor swizzles 248- pan/midgard: Eliminate blank_alu_src 249- pan/midgard: Use fp32 blend shaders 250- pan/midgard: Validate tags when branching 251- pan/midgard: Fix quadword_count handling 252- pan/midgard: Compute bundle interference 253- pan/midgard: Add bizarre corner case 254- pan/midgard: offset_swizzle doesn't need dstsize 255- pan/midgard: Extend offset_swizzle to non-32-bit 256- pan/midgard: Extend swizzle packing for vec4/16-bit 257- pan/midgard: Extend default_phys_reg to !32-bit 258- panfrost/ci: Update T760 expectations 259- pan/midgard: Fix printing of half-registers in texture ops 260- pan/midgard: Disassemble half-steps correctly 261- pan/midgard: Pass shader stage to disassembler 262- pan/midgard: Switch base for vertex texturing on T720 263- nir: Add load_output_u8_as_fp16_pan intrinsic 264- pan/midgard: Identify ld_color_buffer_u8_as_fp16\* 265- pan/midgard: Implement nir_intrinsic_load_output_u8_as_fp16_pan 266- pan/midgard: Pack load/store masks 267- panfrost: Select format-specific blending intrinsics 268- pan/midgard: Add blend shader selection bits for MRT 269- pan/midgard: Implement linearly-constrained register allocation 270- pan/midgard: Integrate LCRA 271- pan/midgard: Remove util/ra support 272- pan/midgard: Compute spill costs 273- pan/lcra: Use Chaitin's spilling heuristic 274- pan/midgard: Copypropagate vector creation 275- pan/midgard: Fix copypropagation for textures 276- pan/midgard: Generalize texture registers across GPUs 277- pan/midgard: Fix vertex texturing on early Midgard 278- pan/midgard: Use texture, not textureLod, on early Midgard 279- pan/midgard: Disassemble with old pipeline always on T720 280- pan/midgard: Prioritize texture registers 281- pan/midgard: Expand 64-bit writemasks 282- pan/midgard: Implement i2i64 and u2u64 283- pan/midgard: Fix mir_round_bytemask_down for !32b 284- pan/midgard: Pack 64-bit swizzles 285- pan/midgard: Use generic constant packing for 8/64-bit 286- pan/midgard: Implement non-aligned UBOs 287- pan/midgard: Expose more typesize helpers 288- pan/midgard: Fix masks/alignment for 64-bit loads 289- pan/midgard: Represent ld/st offset unpacked 290- pan/midgard: Use shader stage in mir_op_computes_derivative 291- panfrost: Stub out clover callbacks 292- panfrost: Pass kernel inputs as uniforms 293- panfrost: Disable tiling for GLOBAL resources 294- panfrost: Set PIPE_COMPUTE_CAP_ADDRESS_BITS to 64 295- pan/midgard: Introduce quirks checks 296- panfrost: Add the lod_bias field 297- nir: Add load_sampler_lod_paramaters_pan intrinsic 298- pan/midgard: Implement load_sampler_lod_paramaters_pan 299- pan/midgard: Add LOD bias/clamp lowering 300- pan/midgard: Describe quirk MIDGARD_BROKEN_LOD 301- pan/midgard: Enable LOD lowering only on buggy chips 302- panfrost: Add lcra.c to Android.mk 303- pan/midgard: Use lower_tex_without_implicit_lod 304- panfrost: Add information about T720 tiling 305- panfrost: Implement pan_tiler for non-hierarchy GPUs 306- panfrost: Simplify draw_flags 307- pan/midgard: Splatter on fragment out 308- gitlab-ci: Remove non-default skips from Panfrost 309- panfrost: Remove blend shader hack 310- panfrost: Update SET_VALUE with information from igt 311- panfrost: Rename SET_VALUE to WRITE_VALUE 312- gallium/util: Support POLYGON in u_stream_outputs_for_vertices 313- pan/midgard: Move spilling code out of scheduler 314- pan/midgard: Split spill node selection/spilling 315- pan/midgard: Simplify spillability test 316- pan/midgard: Remove spill cost heuristic 317- pan/midgard: Move bounds checking into LCRA 318- pan/midgard: Remove consecutive_skip code 319- pan/midgard: Remove code marked "TODO: remove me" 320- pan/midgard: Dynamically allocate r26/27 for spills 321- pan/midgard: Use no_spill bitmask 322- pan/midgard: Don't use no_spill for memory spill src 323- pan/midgard: Force alignment for csel_v 324- pan/midgard: Don't try to free NULL in LCRA 325- pan/midgard: Simplify and fix vector copyprop 326- pan/midgard: Fix shift for TLS access 327- panfrost: Describe thread local storage sizing rules 328- panfrost: Rename unknown_address_0 -> scratchpad 329- panfrost: Split stack_shift nibble from unk0 330- panfrost: Add routines to calculate stack size/shift 331- panfrost: Factor out panfrost_query_raw 332- panfrost: Query core count and thread tls alloc 333- panfrost: Route stack_size from compiler 334- panfrost: Emit SFBD/MFBD after a batch, instead of before 335- panfrost: Handle minor cppcheck issues 336- pan/midgard: Remove unused ld/st packing hepers 337- pan/midgard: Handle misc. cppcheck warnings 338- panfrost: Calculate maximum stack_size per batch 339- panfrost: Pass size to panfrost_batch_get_scratchpad 340- pandecode: Add cast 341- panfrost: Move nir_undef_to_zero to Midgard compiler 342- panfrost: Move property queries to \_encoder 343- panfrost: Add panfrost_model_name helper 344- panfrost: Report GPU name in es2_info 345- ci: Remove T760/T860 from CI temporarily 346- panfrost: Pass blend RT number through 347- pan/midgard: Add schedule barrier after fragment writeout 348- pan/midgard: Writeout per render target 349- pan/midgard: Fix liveness analysis with multiple epilogues 350- pan/midgard: Set r1.w magic 351- panfrost: Fix FBD issue 352- ci: Reinstate Panfrost CI 353- panfrost: Remove fbd_type enum 354- panfrost: Pack invocation_shifts manually instead of a bit field 355- panfrost: Remove asserts in panfrost_pack_work_groups_compute 356- panfrost: Simplify sampler upload condition 357- panfrost: Don't double-create scratchpad 358- panfrost: Add PAN_MESA_DEBUG=precompile for shader-db 359- panfrost: Let precompile imply shaderdb 360- panfrost: Handle empty shaders 361- pan/midgard: Use a reg temporary for mutiple writes 362- pan/midgard: Hoist temporary coordinate for cubemaps 363- pan/midgard: Set .shadow for shadow samplers 364- pan/midgard: Set Z to shadow comparator for 2D 365- pan/midgard: Add uniform/work heuristic 366- pan/midgard: Implement textureOffset for 2D textures 367- pan/midgard: Fix crash with txs 368- pan/midgard: Lower txd with lower_tex 369- panfrost: Decode shader types in pantrace shader-db 370- pan/decode: Skip COMPUTE in blobber-db 371- pan/decode: Prefix blobberdb with MESA_SHADER\_\* 372- pan/decode: Append 0:0 spills:fills to blobber-db 373- pan/midgard: Fix disassembler cycle/quadword counting 374- pan/midgard: Bounds check lcra_restrict_range 375- pan/midgard: Extend IS_VEC4_ONLY to arguments 376- pan/midgard: Clamp LOD register swizzle 377- pan/midgard: Expand swizzle for texelFetch 378- pan/midgard: Fix fallthrough from offset to comparator 379- pan/midgard: Do witchcraft on texture offsets 380- pan/midgard: Generalize temp coordinate to non-2D 381- pan/midgard: Implement shadow cubemaps 382- pan/midgard: Enable lower_(un)pack\_\* lowering 383- pan/midgard: Support loads from R11G11B10 in a blend shader 384- pan/midgard: Add mir_upper_override helper 385- pan/midgard: Compute destination override 386- panfrost: Rename pan_instancing.c -> pan_attributes.c 387- panfrost: Factor batch/resource out of instancing routines 388- panfrost: Move instancing routines to encoder/ 389- panfrost: Factor out panfrost_compute_magic_divisor 390- panfrost: Fix off-by-one in pan_invocation.c 391- pan/decode: Fix reference computation for invocations 392- panfrost: Slight cleanup of Gallium's pan_attribute.c 393- panfrost: Remove pan_shift_odd 394- pan/decode: Handle gl_VertexID/gl_InstanceID 395- panfrost: Unset vertex_id_zero_based 396- pan/midgard: Factor out emit_attr_read 397- pan/midgard: Lower gl_VertexID/gl_InstanceID to attributes 398- panfrost: Extend attribute_count for vertex builtins 399- panfrost: Route gl_VertexID through cmdstream 400- pan/midgard: Fix minor typo 401- panfrost: Remove MALI_SPECIAL_ATTRIBUTE_BASE defines 402- panfrost: Update information on fixed attributes/varyings 403- panfrost: Remove MALI_ATTR_INTERNAL 404- panfrost: Inline away MALI_NEGATIVE 405- panfrost: Implement remaining texture wrap modes 406- panfrost: Add pan_attributes.c to Android.mk 407- panfrost: Add missing #include in common header 408- panfrost: Remove mali_alt_func 409- panfrost; Update comment about work/uniform_count 410- panfrost: Remove 32-bit next_job path 411- glsl: Set .flat for gl_FrontFacing 412- pan/midgard: Promote tilebuffer reads to 32-bit 413- pan/midgard: Use type-appropriate st_vary 414- pan/midgard: Implement flat shading 415- panfrost: Identify glProvokingVertex flag 416- panfrost: Disable some CAPs we want lowered 417- panfrost: Implement integer varyings 418- panfrost: Remove MRT indirection in blend shaders 419- panfrost: Respect glPointSize() 420- pan/midgard: Convert fragment writeout to proper branches 421- pan/midgard: Remove prepacked_branch 422- panfrost: Handle RGB16F colour clear 423- panfrost: Pack MRT blend shaders into a single BO 424- pan/midgard: Fix memory corruption in constant combining 425- pan/midgard: Use better heuristic for shader termination 426- pan/midgard: Generalize IS_ALU and quadword_size 427- pan/midgard: Generate MRT writeout loops 428- pan/midgard: Remove old comment 429- pan/midgard: Identity ld_color_buffer as 32-bit 430- pan/midgard: Use upper ALU tags for MFBD writeout 431- panfrost: Texture from Z32F_S8 as R32F 432- panfrost: Support rendering to non-zero Z/S layers 433- panfrost: Implement sRGB blend shaders 434- panfrost: Cleanup tiling selection logic 435- panfrost: Report MSAA 4x supported for dEQP 436- panfrost: Handle PIPE_FORMAT_R10G10B10A2_USCALED 437- panfrost: Respect constant buffer_offset 438- panfrost: Adjust for mismatch between hardware/Gallium in arrays/cube 439- pan/midgard: Account for z/w flip in texelFetch 440- panfrost: Don't double-flip Z/W for 2D arrays 441- pan/midgard: Support indirect UBO offsets 442- panfrost: Fix linear depth textures 443- pan/midgard: Bytemasks should round up, not round down 444- panfrost: Identify un/pack colour opcodes 445- pan/midgard: Fix recursive csel scheduling 446- panfrost: Expose some functionality with dEQP flag 447- panfrost: Compile tiling routines with -O3 448- panfrost,lima: De-Galliumize tiling routines 449- panfrost: Rework linear<--->tiled conversions 450- panfrost: Add pandecode entries for ASTC/ETC formats 451- panfrost: Fix crash in compute variant allocation 452- panfrost: Drop mysterious zero=0xFFFF field 453- panfrost: Don't use implicit mali_exception_status enum 454- pan/decode: Remove last_size 455- pan/midgard: Remove pack_color define 456- pan/decode: Remove SHORT_SLIDE indirection 457- panfrost: Fix 32-bit warning for \`indices\` 458- pan/decode: Drop MFBD compute shader stuff 459- pan/midgard: Record TEXTURE_OP_BARRIER 460- pan/midgard: Disassemble barrier instructions 461- pan/midgard: Validate barriers use a barrier tag 462- pan/midgard: Handle tag 0x4 as texture 463- pan/midgard: Remove float_bitcast 464- pan/midgard: Fix missing prefixes 465- pan/midgard: Don't crash with constants on unknown ops 466- pan/midgard: Use fprintf instead of printf for constants 467 468Andreas Baierl (14): 469 470- lima: Beautify stream dumps 471- lima: Parse VS and PLBU command stream while making a dump 472- lima/streamparser: Fix typo in vs semaphore parser 473- lima/streamparser: Add findings introduced with gl_PointSize 474- lima/parser: Some fixes and cleanups 475- lima/parser: Add RSW parsing 476- lima/parser: Add texture descriptor parser 477- lima: Rotate dump files after each finished pp frame 478- lima: Fix dump file creation 479- lima/parser: Fix rsw parser 480- lima/parser: Fix VS cmd stream parser 481- lima/parser: Make rsw alpha blend parsing more readable 482- lima: Add stencil support 483- lima: Fix alpha blending 484 485Andres Rodriguez (1): 486 487- vulkan/wsi: disable the hardware cursor 488 489Andrii Simiklit (5): 490 491- main: fix several 'may be used uninitialized' warnings 492- glsl: fix an incorrect max_array_access after optimization of 493 ssbo/ubo 494- glsl: fix a binding points assignment for ssbo/ubo arrays 495- glsl/nir: do not change an element index to have correct block name 496- mesa/st: fix a memory leak in get_version 497 498Anthony Pesch (5): 499 500- util: import xxhash 501- util: move fnv1a hash implementation into its own header 502- util/hash_table: replace \_mesa_hash_data's fnv1a hash function with 503 xxhash 504- util/hash_table: added hash functions for integer types 505- util/hash_table: update users to use new optimal integer hash 506 functions 507 508Anuj Phogat (2): 509 510- intel: Add device info for 1x4x6 Jasper Lake 511- intel: Add pci-ids for Jasper Lake 512 513Arno Messiaen (5): 514 515- lima: fix stride in texture descriptor 516- lima: add layer_stride field to lima_resource struct 517- lima: introduce ppir_op_load_coords_reg to differentiate between 518 loading texture coordinates straight from a varying vs loading them 519 from a register 520- lima: add cubemap support 521- lima/ppir: add lod-bias support 522 523Bas Nieuwenhuizen (33): 524 525- radv: Fix timeout handling in syncobj wait. 526- radv: Remove \_mesa_locale_init/fini calls. 527- turnip: Remove \_mesa_locale_init/fini calls. 528- anv: Remove \_mesa_locale_init/fini calls. 529- radv: Fix disk_cache_get size argument. 530- radv: Close all unnecessary fds in secure compile. 531- radv: Do not change scratch settings while shaders are active. 532- radv: Allocate cmdbuffer space for buffer marker write. 533- radv: Enable VK_KHR_buffer_device_address. 534- amd/llvm: Refactor ac_build_scan. 535- radv: Unify max_descriptor_set_size. 536- radv: Fix timeline semaphore refcounting. 537- radv: Fix RGBX Android<->Vulkan format correspondence. 538- amd/common: Fix tcCompatible degradation on Stoney. 539- amd/common: Always use addrlib for HTILE tc-compat. 540- radv: Limit workgroup size to 1024. 541- radv: Expose all sample counts for integer formats as well. 542- amd/common: Handle alignment of 96-bit formats. 543- nir: Add clone/hash/serialize support for non-uniform tex 544 instructions. 545- nir: print non-uniform tex fields. 546- amd/common: Always initialize gfx9 mipmap offset/pitch. 547- turnip: Use VK_NULL_HANDLE instead of NULL. 548- meson: Enable -Werror=int-conversion. 549- Revert "amd/common: Always initialize gfx9 mipmap offset/pitch." 550- radv: Only use the gfx mipmap level offset/pitch for linear textures. 551- spirv: Fix glsl type assert in spir2nir. 552- radv: Emit a BATCH_BREAK when changing pixel shaders or 553 CB_TARGET_MASK. 554- radv: Use new scanout gfx9 metadata flag. 555- radv: Disable VK_EXT_sample_locations on GFX10. 556- radv: Remove syncobj_handle variable in header. 557- radv: Expose VK_KHR_swapchain_mutable_format. 558- radv: Allow DCC & TC-compat HTILE with 559 VK_IMAGE_CREATE_EXTENDED_USAGE_BIT. 560- radv: Do not set SX DISABLE bits for RB+ with unused surfaces. 561 562Ben Crocker (1): 563 564- llvmpipe: use ppc64le/ppc64 Large code model for JIT-compiled shaders 565 566Bernd Kuhls (1): 567 568- util/os_socket: Include unistd.h to fix build error 569 570Boris Brezillon (21): 571 572- panfrost: MALI_DEPTH_TEST is actually MALI_DEPTH_WRITEMASK 573- panfrost: Destroy the upload manager allocated in 574 panfrost_create_context() 575- panfrost: Release the ctx->pipe_framebuffer ref 576- panfrost: Move BO cache related fields to a sub-struct 577- panfrost: Try to evict unused BOs from the cache 578- gallium: Fix the ->set_damage_region() implementation 579- panfrost: Make sure we reset the damage region of RTs at flush time 580- panfrost: Remove unneeded phi nodes 581- panfrost/midgard: Fix swizzle for store instructions 582- panfrost/midgard: Print the actual source register for store 583 operations 584- panfrost/midgard: Use a union to manipulate embedded constants 585- panfrost/midgard: Rework mir_adjust_constants() to make it type/size 586 agnostic 587- panfrost/midgard: Make sure promote_fmov() only promotes 32-bit imovs 588- panfrost/midgard: Factorize f2f and u2u handling 589- panfrost/midgard: Add f2f64 support 590- panfrost/midgard: Fix mir_print_instruction() for branch instructions 591- panfrost/midgard: Add 64 bits float <-> int converters 592- panfrost/midgard: Add missing lowering passes for type/size 593 conversion ops 594- panfrost/midgard: Add a condense_writemask() helper 595- panfrost/midgard: Prettify embedded constant prints 596- panfrost: Fix the damage box clamping logic 597 598Brian Ho (14): 599 600- turnip: Update tu_query_pool with turnip-specific fields 601- turnip: Implement vkCreateQueryPool for occlusion queries 602- turnip: Implement vkCmdBeginQuery for occlusion queries 603- turnip: Implement vkCmdEndQuery for occlusion queries 604- turnip: Update query availability on render pass end 605- turnip: Implement vkGetQueryPoolResults for occlusion queries 606- turnip: Implement vkCmdResetQueryPool 607- turnip: Implement vkCmdCopyQueryPoolResults for occlusion queries 608- anv: Properly fetch partial results in vkGetQueryPoolResults 609- anv: Handle unavailable queries in vkCmdCopyQueryPoolResults 610- turnip: Enable occlusionQueryPrecise 611- turnip: Free event->bo on vkDestroyEvent 612- turnip: Fix vkGetQueryPoolResults with available flag 613- turnip: Fix vkCmdCopyQueryPoolResults with available flag 614 615Brian Paul (4): 616 617- s/APIENTRY/GLAPIENTRY/ in teximage.c 618- nir: fix a couple signed/unsigned comparison warnings in 619 nir_builder.h 620- Call shmget() with permission 0600 instead of 0777 621- nir: no-op C99 \_Pragma() with MSVC 622 623C Stout (1): 624 625- util/vector: Fix u_vector_foreach when head rolls over 626 627Caio Marcelo de Oliveira Filho (24): 628 629- spirv: Don't leak GS initialization to other stages 630- glsl: Check earlier for MaxShaderStorageBlocks and MaxUniformBlocks 631- glsl: Check earlier for MaxTextureImageUnits and MaxImageUniforms 632- anv: Initialize depth_bounds_test_enable when not explicitly set 633- spirv: Consider the sampled_image case in wa_glslang_179 workaround 634- intel/fs: Lower 64-bit MOVs after lower_load_payload() 635- intel/fs: Fix lowering of dword multiplication by 16-bit constant 636- intel/vec4: Fix lowering of multiplication by 16-bit constant 637- anv/gen12: Temporarily disable VK_KHR_buffer_device_address (and EXT) 638- spirv: Implement SPV_KHR_non_semantic_info 639- panfrost: Fix Makefile.sources 640- anv: Drop unused function parameter 641- anv: Ignore some CreateInfo structs when rasterization is disabled 642- intel/fs: Only use SLM fence in compute shaders 643- spirv: Drop EXT for PhysicalStorageBuffer symbols 644- spirv: Handle PhysicalStorageBuffer in memory barriers 645- nir: Add missing nir_var_mem_global to various passes 646- intel/fs: Add FS_OPCODE_SCHEDULING_FENCE 647- intel/fs: Add workgroup_size() helper 648- intel/fs: Don't emit fence for shared memory if only one thread is 649 used 650- intel/fs: Don't emit control barrier if only one thread is used 651- anv: Always initialize target_stencil_layout 652- intel/compiler: Add names for SHADER_OPCODE_[IU]SUB_SAT 653- nir: Make nir_deref_path_init skip trivial casts 654 655Chris Wilson (1): 656 657- egl: Mention if swrast is being forced 658 659Christian Gmeiner (24): 660 661- drm-shim: fix EOF case 662- etnaviv: rs: upsampling is not supported 663- etnaviv: add drm-shim 664- etnaviv: drop not used config_out function param 665- etnaviv: use a more self-explanatory param name 666- etnaviv: handle 8 byte block in tiling 667- etnaviv: add support for extended pe formats 668- etnaviv: fix integer vertex formats 669- etnaviv: use NORMALIZE_SIGN_EXTEND 670- etnaviv: fix R10G10B10A2 vertex format entries 671- etnaviv: handle integer case for GENERIC_ATTRIB_SCALE 672- etnaviv: remove dead code 673- etnaviv: remove not used etna_bits_ones(..) 674- etnaviv: drop compiled_rs_state forward declaration 675- etnaviv: update resource status after flushing 676- gallium: add PIPE_CAP_MAX_VERTEX_BUFFERS 677- etnaviv: check if MSAA is supported 678- etnaviv: gc400 does not support any vertex sampler 679- etnaviv: use a better name for FE_VERTEX_STREAM_UNK14680 680- etnaviv: move state based texture structs 681- etnaviv: move descriptor based texture structs 682- etnaviv: add deqp debug option 683- etnaviv: drop default state for PE_STENCIL_CONFIG_EXT2 684- etnaviv: drm-shim: add GC400 685 686Connor Abbott (19): 687 688- nir: Fix non-determinism in lower_global_vars_to_local 689- radv: Rename ac_arg_regfile 690- ac: Add a shared interface between radv, radeonsi, LLVM and ACO 691- ac/nir, radv, radeonsi: Switch to using ac_shader_args 692- radv: Move argument declaration out of nir_to_llvm 693- aco: Constify radv_nir_compiler_options in isel 694- aco: Use radv_shader_args in aco_compile_shader() 695- aco: Split vector arguments at the beginning 696- aco: Make num_workgroups and local_invocation_ids one argument each 697- radv: Replace supports_spill with explict_scratch_args 698- aco: Use common argument handling 699- aco: Make unused workgroup id's 0 700- nir: Maintain the algebraic automaton's state as we work. 701- a6xx: Add more CP packets 702- freedreno: Use new macros for CP_WAIT_REG_MEM and CP_WAIT_MEM_GTE 703- freedreno: Fix CP_MEM_TO_REG flag definitions 704- freedreno: Document CP_COND_REG_EXEC more 705- freedreno: Document CP_UNK_A6XX_55 706- freedreno: Document CP_INDIRECT_BUFFER_CHAIN 707 708Daniel Ogorchock (2): 709 710- panfrost: Fix panfrost_bo_access memory leak 711- panfrost: Fix headers and gpu_headers memory leak 712 713Daniel Schürmann (58): 714 715- aco: fix immediate offset for spills if scratch is used 716- aco: only use single-dword loads/stores for spilling 717- aco: fix accidential reordering of instructions when scheduling 718- aco: workaround Tonga/Iceland hardware bug 719- aco: fix invalid access on Pseudo_instructions 720- aco: preserve kill flag on moved operands during RA 721- aco: rematerialize s_movk instructions 722- aco: check if SALU instructions are predeceeded by exec when 723 calculating WQM needs 724- aco: value number instructions using the execution mask 725- aco: use s_and_b64 exec to reduce uniform booleans to one bit 726- amd/llvm: Add Subgroup Scan functions for SI 727- radv: Enable Subgroup Arithmetic and Clustered for SI 728- aco: don't value-number instructions from within a loop with ones 729 after the loop. 730- aco: don't split live-ranges of linear VGPRs 731- aco: fix a couple of value numbering issues 732- aco: refactor visit_store_fs_output() to use the Builder 733- aco: Initial GFX7 Support 734- aco: SI/CI - fix sampler aniso 735- aco: fix SMEM offsets for SI/CI 736- aco: implement nir_op_fquantize2f16 for SI/CI 737- aco: only use scalar loads for readonly buffers on SI/CI 738- aco: implement nir_op_isign on SI/CI 739- aco: move buffer_store data to VGPR if needed 740- aco: implement quad swizzles for SI/CI 741- aco: recognize SI/CI SMRD hazards 742- aco: fix disassembly of writelane instructions. 743- aco: split read/writelane opcode into VOP2/VOP3 version for SI/CI 744- aco: implement 64bit VGPR shifts for SI/CI 745- aco: make 1/2*PI a literal constant on SI/CI 746- aco: implement 64bit i2b for SI /CI 747- aco: implement 64bit ine/ieq for SI/CI 748- aco: disable disassembly for SI/CI due to lack of support by LLVM 749- radv: only flush scalar cache for SSBO writes with ACO on GFX8+ 750- aco: flush denorms after fmin/fmax on pre-GFX9 751- aco: don't use a scalar temporary for reductions on GFX10 752- aco: implement (clustered) reductions for SI/CI 753- aco: implement inclusive_scan for SI/CI 754- aco: implement exclusive scan for SI/CI 755- radv: disable Youngblood app profile if ACO is used 756- aco: return to loop_active mask at continue_or_break blocks 757- radv: Enable ACO on GFX7 (Sea Islands) 758- aco: use soffset for MUBUF instructions on SI/CI 759- aco: improve readfirstlane after uniform ssbo loads on GFX7 760- aco: propagate temporaries into expanded vectors 761- nir: fix printing of var_decl with more than 4 components. 762- aco: compact various Instruction classes 763- aco: compact aco::span<T> to use uint16_t offset and size instead of 764 pointer and size_t. 765- aco: fix unconditional demote_to_helper 766- aco: rework lower_to_cssa() 767- aco: handle phi affinities transitively through parallelcopies 768- aco: ignore parallelcopies to the same register on jump threading 769- aco: fix combine_salu_not_bitwise() when SCC is used 770- aco: reorder VMEM operands in ACO IR 771- aco: fix register allocation with multiple live-range splits 772- aco: simplify adjust_sample_index_using_fmask() & get_image_coords() 773- aco: simplify gathering of MIMG address components 774- docs: add new features for RADV/ACO. 775- aco: fix image_atomic_cmp_swap 776 777Daniel Stone (2): 778 779- Revert "st/dri: do FLUSH_VERTICES before calling flush_resource" 780- Revert "gallium: add st_context_iface::flush_resource to call 781 FLUSH_VERTICES" 782 783Danylo Piliaiev (12): 784 785- intel/blorp: Fix usage of uninitialized memory in key hashing 786- i965/program_cache: Lift restriction on shader key size 787- intel/blorp: Fix usage of uninitialized memory in key hashing 788- intel/fs: Do not lower large local arrays to scratch on gen7 789- i965: Unify CC_STATE and BLEND_STATE atoms on Haswell as a workaround 790- glsl: Add varyings to "zero-init of uninitialized vars" workaround 791- drirc: Add glsl_zero_init workaround for GpuTest 792- iris/query: Implement PIPE_QUERY_GPU_FINISHED 793- iris: Fix value of out-of-bounds accesses for vertex attributes 794- i965: Do not set front_buffer_dirty if there is no front buffer 795- st/mesa: Handle the rest renderbuffer formats from OSMesa 796- st/nir: Unify inputs_read/outputs_written before serializing NIR 797 798Dave Airlie (74): 799 800- nir/serialize: pack function has name and entry point into flags. 801- nir/serialize: fix serializing functions with no implementations. 802- spirv: don't store 0 to cs.ptr_size for non kernel stages. 803- spirv: get the correct type for function returns. 804- spirv/nir/opencl: handle some multiply instructions. 805- nir: add 64-bit ufind_msb lowering support. (v2) 806- nouveau: request ufind_msb64 lowering in the frontend. 807- vtn/opencl: add clz support 808- nir: fix deref offset builder 809- llvmpipe: initial query buffer object support. (v2) 810- docs: add llvmpipe to ARB_query_buffer_object. 811- gallivm: split out the flow control ir to a common file. 812- gallivm: nir->tgsi info convertor (v2) 813- gallivm: add popcount intrinsic wrapper 814- gallivm: add cttz wrapper 815- gallivm: add selection for non-32 bit types 816- gallivm: add nir->llvm translation (v2) 817- draw: add nir info gathering and building support 818- gallium: add nir lowering passes for the draw pipe stages. (v2) 819- gallivm: add swizzle support where one channel isn't defined. 820- llvmpipe: add initial nir support 821- nir/samplers: don't zero samplers_used/txf. 822- llvmpipe/images: handle undefined atomic without crashing 823- gallivm/llvmpipe: add support for front facing in sysval. 824- llvmpipe: enable texcoord semantics 825- gallium/scons: fix graw-xlib build on OSX. 826- llvmpipe: add queries disabled flag 827- llvmpipe: disable occlusion queries when requested by state tracker 828- draw: add support for collecting primitives generated outside 829 streamout 830- llvmpipe: enable support for primitives generated outside streamout 831- aco: handle gfx7 int8/10 clamping on exports 832- gallivm: add bitfield reverse and ufind_msb 833- llvmpipe/nir: handle texcoord requirements 834- gallivm: fix transpose for when first channel isn't created 835- gallivm: fix perspective enable if usage_mask doesn't have 0 bit set 836- gallivm/nir: cleanup code and call cmp wrapper 837- gallivm/nir: copy compare ordering code from tgsi 838- gallivm: add base instance sysval support 839- gallivm/draw: add support for draw_id system value. 840- gallivm: fixup base_vertex support 841- llvmpipe: enable ARB_shader_draw_parameters. 842- vtn: convert vload/store to single value loops 843- vtn/opencl: add shuffle/shuffle support 844- gallivm/nir: wrap idiv to avoid divide by 0 (v2) 845- llvmpipe: switch to NIR by default 846- nir: sanitize work group intrinsics to always be 32-bit. 847- gallivm: add 64-bit const int creator. 848- llvmpipe/gallivm: add kernel inputs 849- gallivm: add support for 8-bit/16-bit integer builders 850- gallivm: pick integer builders for alu instructions. 851- gallivm/nir: allow 8/16-bit conversion and comparison. 852- tgsi/mesa: handle KERNEL case 853- gallivm/llvmpipe: add support for work dimension intrinsic. 854- gallivm/llvmpipe: add support for block size intrinsic 855- gallivm/llvmpipe: add support for global operations. 856- llvmpipe: handle serialized nir as a shader type. 857- llvmpipe: add support for compute shader params 858- llvmpipe/nir: use nir_max_vec_components in more places 859- gallivm: handle non-32 bit undefined 860- llvmpipe: lower hadd/add_sat 861- gallivm/nir: lower packing 862- gallivm/nir: add vec8/16 support 863- llvmpipe: add debug option to enable OpenCL support. 864- gallivm: fixup const int64 builder. 865- llvmpipe: enable ARB_shader_group_vote. 866- gallium/util: add multi_draw_indirect to util_draw_indirect. 867- llvmpipe: enable driver side multi draw indirect 868- llvmpipe: add support for ARB_indirect_parameters. 869- llvmpipe: add ARB_derivative_control support 870- gallivm: fix gather component handling. 871- llvmpipe: fix some integer instruction lowering. 872- galllivm: fix gather offset casting 873- gallivm: fix find lsb 874- gallivm/nir: add missing break for isub. 875 876David Heidelberg (1): 877 878- .mailmap: use correct email address 879 880David Stevens (1): 881 882- virgl: support emulating planar image sampling 883 884Denis Pauk (2): 885 886- gallium/swr: Enable support bptc format. 887- docs/features: mark GL_ARB_texture_compression_bptc as done for 888 llvmpipe, softpipe, swr 889 890Dongwon Kim (3): 891 892- gallium: enable INTEL_PERFORMANCE_QUERY 893- iris: INTEL performance query implementation 894- gallium: check all planes' pipe formats in case of multi-samplers 895 896Drew Davenport (1): 897 898- radeonsi: Clear uninitialized variable 899 900Drew DeVault (1): 901 902- st_get_external_sampler_key: improve error message 903 904Duncan Hopkins (1): 905 906- zink: make sure src image is transfer-src-optimal 907 908Dylan Baker (69): 909 910- Bump VERSION to 20.0.0-devel 911- docs/new_features: Empty the feature list for the 20.0 cycle 912- nir: correct use of identity check in python 913- r200: use preprocessor for big vs little endian checks 914- r100: Use preprocessor to select big vs little endian paths 915- dri/osmesa: use preprocessor for selecting endian code paths 916- util/u_endian: Use \_WIN32 instead of \_MSC_VER 917- util/u_endian: set PIPE_ARCH_*_ENDIAN to 1 918- mesa/main: replace uses of \_mesa_little_endian with preprocessor 919- mesa/swrast: replace instances of \_mesa_little_endian with 920 preprocessor 921- mesa/main: delete now unused \_mesa_little_endian 922- gallium/osmesa: Use PIPE_ARCH_*_ENDIAN instead of little_endian 923 function 924- util: rename PIPE_ARCH_*_ENDIAN to UTIL_ARCH_*_ENDIAN 925- util/u_endian: Add error checks 926- meson: Add dep_glvnd to egl deps when building with glvnd 927- docs: add release notes for 19.2.3 928- docs: add sha256 sum to 19.2.3 release notes 929- docs: update calendar, add news item and link release notes for 930 19.2.2 931- meson: gtest needs pthreads 932- gallium/osmesa: Convert osmesa test to gtest 933- osmesa/tests: Extend render test to cover other working cases 934- util: Use ZSTD for shader cache if possible 935- docs: Add release notes for 19.2.4 936- docs: Add SHA256 sum for for 19.2.4 937- docs: update calendar, add news item and link release notes for 938 19.2.4 939- docs: Add relnotes for 19.2.5 940- docs/relnotes/19.2.5: Add SHA256 sum 941- docs: update calendar, add news item and link release notes for 942 19.2.5 943- docs/release-calendar: Update for extended 19.3 rc period 944- docs: Add release notes for 19.2.6 945- docs: Add SHA256 sum for 19.2.6 946- docs: update calendar, add news item and link release notes for 947 19.2.6 948- gallium/auxiliary: Fix uses of gnu struct = {} extension 949- meson: Add -Werror=gnu-empty-initializer to MSVC compat args 950- docs: Add release notes for 19.2.7 951- docs: Add SHA256 sums for 19.2.7 952- docs: update calendar, add news item and link release notes for 953 19.2.7 954- docs: Update mesa 19.3 release calendar 955- meson/broadcom: libbroadcom_cle needs expat headers 956- meson/broadcom: libbroadcom_cle also needs zlib 957- docs: add release notes for 19.3.0 958- docs/19.3.0: Add SHA256 sums 959- docs: Update release notes, index, and calendar for 19.3.0 960- dcos: add releanse notes for 19.3.1 961- docs: Add release notes, update calendar, and add news for 19.3.1 962- docs: add relnotes for 19.2.8 963- docs/relnotes/19.2.8: Add SHA256 sum 964- docs: Add release notes, news, and update calendar for 19.2.8 965- docs: Add release notes for 19.3.2 966- docs: add SHA256 sums for 19.3.2 967- docs: Add release notes for 19.3.2, update calendar and home page 968- docs: Update release calendar for 20.0 969- docs: Add relnotes for 19.3.3 release 970- docs: Add SHA 256 sums for 19.3.3 971- docs: update news, calendar, and link release notes for 19.3.3 972- VERSION: bump to 20.0.0-rc1 973- bin/pick-ui: Add a new maintainer script for picking patches 974- .pick_status.json: Update to 0d14f41625fa00187f690f283c1eb6a22e354a71 975- .pick_status.json: Update to b550b7ef3b8d12f533b67b1a03159a127a3ff34a 976- .pick_status.json: Update to 9afdcd64f2c96f3fcc1a28912987f2e8066aa995 977- .pick_status.json: Update to 7eaf21cb6f67adbe0e79b80b4feb8c816a98a720 978- VERSION: bump to 20.0-rc2 979- .pick_status.json: Update to d8bae10bfe0f487dcaec721743cd51441bcc12f5 980- .pick_status.json: Update to 689817c9dfde9a0852f2b2489cb0fa93ffbcb215 981- .pick_status.json: Update to 23037627359e739c42b194dec54875aefbb9d00b 982- VERSION: bump for 20.0.0-rc3 983- .pick_status.json: Update to 2a98cf3b2ecea43cea148df7f77d2abadfd1c9db 984- .pick_status.json: Update to 946eacbafb47c8b94d47e7c9d2a8b02fff5a22fa 985- .pick_status.json: Update to bee5c9b0dc13dbae0ccf124124eaccebf7f2a435 986 987Eduardo Lima Mitev (2): 988 989- turnip: Remove failed command buffer from pool 990- turnip: Fix issues in tu_compute_pipeline_create() that may lead to 991 crash 992 993Elie Tournier (4): 994 995- Docs: remove duplicate meson docs for windows 996- docs: fix ascii html representation 997- nir/algebraic: i2f(f2i()) -> trunc() 998- nir/algebraic: sqrt(x)*sqrt(x) -> fabs(x) 999 1000Emmanuel Gil Peyrot (1): 1001 1002- intel/compiler: Return early if read() failed 1003 1004Eric Anholt (102): 1005 1006- ci: Make lava inherit the ccache setup of the .build script. 1007- ci: Switch over to an autoscaling GKE cluster for builds. 1008- Revert "ci: Switch over to an autoscaling GKE cluster for builds." 1009- mesa/st: Add mapping of MESA_FORMAT_RGB_SNORM16 to gallium. 1010- gallium: Add defines for FXT1 texture compression. 1011- gallium: Add some more channel orderings of packed formats. 1012- gallium: Add an equivalent of MESA_FORMAT_BGR_UNORM8. 1013- gallium: Add equivalents of packed MESA_FORMAT_*UINT formats. 1014- mesa: Stop defining a full separate format for RGBA_UINT8. 1015- mesa/st: Test round-tripping of all compressed formats. 1016- mesa: Prepare for the MESA_FORMAT\_\* enum to be sparse. 1017- mesa: Redefine MESA_FORMAT\_\* in terms of PIPE_FORMAT_*. 1018- mesa/st: Gut most of st_mesa_format_to_pipe_format(). 1019- mesa/st: Make st_pipe_format_to_mesa_format an effective no-op. 1020- u_format: Fix swizzle of A1R5G5B5. 1021- ci: Use several debian buster packages instead of hand-building. 1022- ci: Make the skip list regexes match the full test name. 1023- ci: Use cts_runner for our dEQP runs. 1024- ci: Enable all of GLES3/3.1 testing for softpipe. 1025- ci: Remove old commented copy of freedreno artifacts. 1026- ci: Disable flappy blit tests on a630. 1027- ci: Expand the freedreno blit skip regex to cover more cases. 1028- util: Move gallium's PIPE_FORMAT utils to /util/format/ 1029- mesa: Move compile of common Mesa core files to a static lib. 1030- mesa/st: Simplify st_choose_matching_format(). 1031- mesa: Don't put sRGB formats in the array format table. 1032- mesa/st: Reuse st_choose_matching_format from st_choose_format(). 1033- util: Add a mapping from VkFormat to PIPE_FORMAT. 1034- turnip: Drop the copy of the formats table. 1035- ci: Move freedreno's parallelism to the runner instead of gitlab-ci 1036 jobs. 1037- ci: Use a tag from the parallel-deqp-runner repo. 1038- nir: Add a scheduler pass to reduce maximum register pressure. 1039- nir: Refactor algebraic's block walk 1040- nir: Make algebraic backtrack and reprocess after a replacement. 1041- freedreno: Introduce a fd_resource_layer_stride() helper. 1042- freedreno: Introduce a fd_resource_tile_mode() helper. 1043- freedreno: Introduce a resource layout header. 1044- freedreno: Convert the slice struct to the new resource header. 1045- freedreno/a6xx: Log the tiling mode in resource layout debug. 1046- turnip: Disable timestamp queries for now. 1047- turnip: Fix unused variable warnings. 1048- turnip: Drop redefinition of VALIDREG now that it's in ir3.h. 1049- turnip: Reuse tu6_stage2opcode() more. 1050- turnip: Add basic SSBO support. 1051- turnip: Refactor the graphics pipeline create implementation. 1052- turnip: Add a helper function for getting tu_buffer iovas. 1053- turnip: Sanity check that we're adding valid BOs to the list. 1054- turnip: Move pipeline BO list adding to BindPipeline. 1055- turnip: Add support for compute shaders. 1056- ci: Disable egl_ext_device_drm tests in piglit. 1057- freedreno: Enable texture upload memory throttling. 1058- freedreno: Stop forcing ALLOW_MAPPED_BUFFERS_DURING_EXEC off. 1059- freedreno: Track the set of UBOs to be uploaded in UBO analysis. 1060- freedreno: Drop the extra offset field for mipmap slices. 1061- freedreno: Refactor the UBWC flags registers emission. 1062- freedreno: Move UBWC layout into a slices array like the non-UBWC 1063 slices. 1064- tu: Move our image layout into a freedreno_layout struct. 1065- freedreno: Move a6xx's setup_slices() to a shareable helper function. 1066- freedreno: Switch the 16-bit workaround to match what turnip does. 1067- tu: Move UBWC layout into fdl6_layout() and use that function. 1068- turnip: Lower usub_borrow. 1069- turnip: Drop unused variable. 1070- turnip: Add support for descriptor arrays. 1071- turnip: Fix support for immutable samplers. 1072- ci: Fix caselist results archiving after parallel-deqp-runner rename. 1073- mesa: Fix detection of invalidating both depth and stencil. 1074- mesa/st: Deduplicate the NIR uniform lowering code. 1075- mesa/st: Move the vec4 type size function into core GLSL types. 1076- mesa/prog: Reuse count_vec4_slots() from ir_to_mesa. 1077- mesa/st: Move the dword slot counting function to glsl_types as well. 1078- i965: Reuse the new core glsl_count_dword_slots(). 1079- nir: Fix printing of ~0 .locations. 1080- turnip: Refactor linkage state setup. 1081- mesa: Make atomic lowering put atomics above SSBOs. 1082- gallium: Pack the atomic counters just above the SSBOs. 1083- nir: Drop the ssbo_offset to atomic lowering. 1084- compiler: Add a note about how num_ssbos works in the program info. 1085- freedreno: Stop scattered remapping of SSBOs/images to IBOs. 1086- radeonsi: Remove a bunch of default handling of pipe caps. 1087- r600: Remove a bunch of default handling of pipe caps. 1088- r300: Remove a bunch of default handling of pipe caps. 1089- radeonsi: Drop PIPE_CAP_TGSI_ANY_REG_AS_ADDRESS. 1090- turnip: Fix some whitespace around binary operators. 1091- turnip: Refactor the intrinsic lowering. 1092- turnip: Add limited support for storage images. 1093- turnip: Disable UBWC on images used as storage images. 1094- turnip: Add support for non-zero (still constant) UBO buffer indices. 1095- turnip: Add support for uniform texel buffers. 1096- freedreno/ir3: Plumb the ir3_shader_variant into legalize. 1097- turnip: Add support for fine derivatives. 1098- turnip: Fix execution of secondary cmd bufs with nothing in primary. 1099- freedreno: Add some missing a6xx address declarations. 1100- freedreno: Fix OUT_REG() on address regs without a .bo supplied. 1101- turnip: Port krh's packing macros from freedreno to tu. 1102- turnip: Convert renderpass setup to the new register packing macros. 1103- turnip: Convert the rest of tu_cmd_buffer.c over to the new pack 1104 macros. 1105- vulkan/wsi: Fix compiler warning when no WSI platforms are enabled. 1106- iris: Silence warning about AUX_USAGE_MC. 1107- mesa/st: Fix compiler warnings from INTEL_shader_integer_functions. 1108- ci: Enable -Werror on the meson-i386 build. 1109- tu: Fix binning address setup after pack macros change. 1110- Revert "gallium: Fix big-endian addressing of non-bitmask array 1111 formats." 1112 1113Eric Engestrom (58): 1114 1115- meson: split out idep_xmlconfig_headers from idep_xmlconfig 1116- anv: add missing xmlconfig headers dependency 1117- radv: drop unnecessary xmlpool_options_h 1118- pipe-loader: drop unnecessary xmlpool_options_h 1119- loader: replace xmlpool_options_h with idep_xmlconfig_headers 1120- targets/omx: replace xmlpool_options_h with idep_xmlconfig_headers 1121- targets/va: replace xmlpool_options_h with idep_xmlconfig_headers 1122- targets/vdpau: replace xmlpool_options_h with idep_xmlconfig_headers 1123- targets/xa: replace xmlpool_options_h with idep_xmlconfig_headers 1124- targets/xvmc: replace xmlpool_options_h with idep_xmlconfig_headers 1125- dri: replace xmlpool_options_h with idep_xmlconfig_headers 1126- i915: replace xmlpool_options_h with idep_xmlconfig_headers 1127- nouveau: replace xmlpool_options_h with idep_xmlconfig_headers 1128- r200: replace xmlpool_options_h with idep_xmlconfig_headers 1129- radeon: replace xmlpool_options_h with idep_xmlconfig_headers 1130- meson: move idep_xmlconfig_headers to xmlpool/ 1131- gitlab-ci: build a recent enough version of GLVND (ie. 1.2.0) 1132- meson: require glvnd 1.2.0 1133- meson: revert glvnd workaround 1134- meson: add variable to control the symbols checks 1135- meson: move the generic symbols check arguments to a common variable 1136- meson: add windows support to symbols checks 1137- meson: require \`nm\` again on Unix systems 1138- mesa/imports: let the build system detect strtok_r() 1139- egl: fix \_EGL_NATIVE_PLATFORM fallback 1140- egl: move #include of local headers out of Khronos headers 1141- gitlab-ci: build libdrm using meson instead of autotools 1142- gitlab-ci: auto-cancel CI runs when a newer commit is pushed to the 1143 same branch 1144- CL: sync C headers with Khronos 1145- CL: sync C++ headers with Khronos 1146- vulkan: delete typo'd header 1147- egl: use EGL_CAST() macro in eglmesaext.h 1148- anv: add missing "fall-through" annotation 1149- vk_util: drop duplicate formats in vk_format_map[] 1150- meson: drop duplicate \`lib\` prefix on libiris_gen\* 1151- meson: drop \`intel_\` prefix on imgui_core 1152- docs: reword a bit and list HTTPS before FTP 1153- intel: add mi_builder_test for gen12 1154- intel/compiler: add ASSERTED annotation to avoid "unused variable" 1155 warning 1156- intel/compiler: replace \`0\` pointer with \`NULL\` 1157- util/simple_mtx: don't set the canary when it can't be checked 1158- anv: drop unused #include 1159- travis: autodetect python version instead of hard-coding it 1160- util/format: remove left-over util_format_description_table 1161 declaration 1162- util/format: add PIPE_FORMAT_ASTC_*x*x*_SRGB to 1163 util_format_{srgb,linear}() 1164- util/format: add trivial srgb<->linear conversion test 1165- u_format: move format tests to util/tests/ 1166- amd: fix empty-body issues 1167- nine: fix empty-body-issues 1168- meson: simplify install_megadrivers.py invocation 1169- mesa: avoid returning a value in a void function 1170- meson: use github URL for wraps instead of completely unreliable 1171 wrapdb 1172- egl: drop confusing mincore() error message 1173- llvmpipe: drop LLVM < 3.4 support 1174- util/atomic: fix return type of p_atomic_add_return() fallback 1175- util/os_socket: fix header unavailable on windows 1176- freedreno/perfcntrs: fix fd leak 1177- util/disk_cache: check for write() failure in the zstd path 1178 1179Erico Nunes (17): 1180 1181- lima: fix nir shader memory leak 1182- lima: fix bo submit memory leak 1183- lima/ppir: enable lower_fdph 1184- gallium/util: add alignment parameter to util_upload_index_buffer 1185- lima: allocate separate bo to store varyings 1186- lima: refactor indexed draw indices upload 1187- vc4: move the draw splitting routine to shared code 1188- lima: split draw calls on 64k vertices 1189- lima/ppir: fix lod bias src 1190- lima/ppir: remove assert on ppir_emit_tex unsupported feature 1191- lima: set shader caps to optimize control flow 1192- lima/ppir: remove orphan load node after cloning 1193- lima/ppir: implement full liveness analysis for regalloc 1194- lima/ppir: handle write to dead registers in ppir 1195- lima/ppir: fix ssa undef emit 1196- lima/ppir: split ppir_op_undef into undef and dummy again 1197- lima/ppir: fix src read mask swizzling 1198 1199Erik Faye-Lund (82): 1200 1201- zink: heap-allocate samplers objects 1202- zink: emit line-width when using polygon line-mode 1203- anv: remove incorrect polygonMode=point early-out 1204- zink: use actual format for render-pass 1205- zink: always allow mutating the format 1206- zink: do not advertize coherent mapping 1207- zink: disable fragment-shader texture-lod 1208- zink: transition resources before resolving 1209- zink: always allow sampling of images 1210- zink: use u_blitter when format-reinterpreting 1211- zink/spirv: drop temp-array for component-count 1212- zink/spirv: support loading bool constants 1213- zink/spirv: implement bany_fnequal[2-4] 1214- zink/spirv: implement bany_inequal[2-4] 1215- zink/spirv: implement ball_iequal[2-4] 1216- zink/spirv: implement ball_fequal[2-4] 1217- zink: do advertize integer support in shaders 1218- zink/spirv: add support for nir_op_flrp 1219- zink: correct depth-stencil format 1220- nir: patch up deref-vars when lowering clip-planes 1221- zink: always allow transfer to/from buffers 1222- zink: implement buffer-to-buffer copies 1223- zink: remove no-longer-needed hack 1224- zink: move format-checking to separate source 1225- zink: move filter-helper to separate helper-header 1226- zink: move blitting to separate source 1227- zink: move drawing separate source 1228- st/mesa: unmap pbo after updating cache 1229- zink: use true/false instead of TRUE/FALSE 1230- zink: reject invalid sample-counts 1231- zink: fix crash when restoring sampler-states 1232- zink: delete query rather than allocating a new one 1233- zink: do not try to destroy NULL-fence 1234- zink: handle calloc-failure 1235- zink: avoid NULL-deref 1236- zink: avoid NULL-deref 1237- zink: avoid NULL-deref 1238- zink: error-check right variable 1239- zink: silence coverity error 1240- zink: enable PIPE_CAP_MIXED_COLORBUFFER_FORMATS 1241- zink: implement nir_texop_txd 1242- zink: implement txf 1243- zink: implement some more trivial opcodes 1244- zink: simplify front-face type 1245- zink: factor out builtin-var creation 1246- zink: implement load_vertex_id 1247- zink: use nir_fmul_imm 1248- zink: remove unused code-path in lower_pos_write 1249- nir/zink: move clip_halfz-lowering to common code 1250- etnaviv: use nir_lower_clip_halfz instead of open-coding 1251- st/mesa: use uint-samplers for sampling stencil buffers 1252- zink: fixup initialization of operand_mask / num_extra_operands 1253- util: initialize float-array with float-literals 1254- st/wgl: eliminate implicit cast warning 1255- gallium: fix a warning 1256- mesa/st: use float literals 1257- docs: fix typo in html tag name 1258- docs: fix paragraphs 1259- docs: open paragraph before closing it 1260- docs: use code-tag instead of pre-tag 1261- docs: use code-tags instead of pre-tags 1262- docs: use code-tags instead of pre-tags 1263- docs: move paragraph closing tag 1264- docs: remove double-closed definition-list 1265- docs: do not double-close link tag 1266- docs: do not use definition-list for sub-topics 1267- docs: use figure/figcaption instead of tables 1268- docs: remove trailing header 1269- docs: remove leading spaces 1270- docs: remove trailing newlines 1271- docs: use [1] instead of asterisk for footnote 1272- docs: remove pointless, stray newline 1273- docs: fixup indentation 1274- zink: implement nir_texop_txs 1275- zink: support offset-variants of texturing 1276- zink: avoid incorrect vector-construction 1277- zink: store image-type per texture 1278- zink: support sampling non-float textures 1279- zink: support arrays of samplers 1280- zink: set compareEnable when setting compareOp 1281- st/mesa: use uint-result for sampling stencil buffers 1282- Revert "nir: Add a couple trivial abs optimizations" 1283 1284Florian Will (1): 1285 1286- radv/winsys: set IB flags prior to submit in the sysmem path 1287 1288Francisco Jerez (26): 1289 1290- glsl: Fix software 64-bit integer to 32-bit float conversions. 1291- intel/fs/gen11+: Handle ROR/ROL in lower_simd_width(). 1292- intel/fs/gen8+: Fix r127 dst/src overlap RA workaround for EOT 1293 message payload. 1294- intel/fs: Fix nir_intrinsic_load_barycentric_at_sample for SIMD32. 1295- intel/fs/cse: Fix non-deterministic behavior due to inaccurate 1296 liveness calculation. 1297- intel/fs: Make implied_mrf_writes() an fs_inst method. 1298- intel/fs: Try to vectorize header setup in lower_load_payload(). 1299- intel/fs: Generalize fs_reg::is_contiguous() to register files other 1300 than VGRF. 1301- intel/fs: Rework fs_inst::is_copy_payload() into multiple 1302 classification helpers. 1303- intel/fs: Extend copy propagation dataflow analysis to copies with 1304 FIXED_GRF source. 1305- intel/fs: Add partial support for copy-propagating FIXED_GRFs. 1306- intel/fs: Add support for copy-propagating a block of multiple 1307 FIXED_GRFs. 1308- intel/fs: Allow limited copy propagation of a LOAD_PAYLOAD into 1309 another. 1310- intel/fs/gen4-6: Allocate registers from aligned_pairs_class based on 1311 LINTERP use. 1312- intel/fs/gen6: Constrain barycentric source of LINTERP during bank 1313 conflict mitigation. 1314- intel/fs/gen6: Generalize aligned_pairs_class to SIMD16 aligned 1315 barycentrics. 1316- intel/fs/gen6: Use SEL instead of bashing thread payload for unlit 1317 centroid workaround. 1318- intel/fs: Split fetch_payload_reg() into separate helper for 1319 barycentrics. 1320- intel/fs: Introduce barycentric layout lowering pass. 1321- intel/fs: Switch to standard vector layout for barycentrics at 1322 optimization time. 1323- intel/fs/cse: Make HALT instruction act as CSE barrier. 1324- intel/fs/gen7: Fix fs_inst::flags_written() for 1325 SHADER_OPCODE_FIND_LIVE_CHANNEL. 1326- intel/fs: Add virtual instruction to load mask of live channels into 1327 flag register. 1328- intel/fs/gen12: Workaround unwanted SEND execution due to broken 1329 NoMask control flow. 1330- intel/fs/gen12: Fixup/simplify SWSB annotations of SIMD32 scratch 1331 writes. 1332- intel/fs/gen12: Workaround data coherency issues due to broken NoMask 1333 control flow. 1334 1335Fritz Koenig (1): 1336 1337- freedreno: reorder format check 1338 1339Georg Lehmann (3): 1340 1341- Correctly wait in the fragment stage until all semaphores are 1342 signaled 1343- Vulkan Overlay: Don't try to change the image layout to present twice 1344- Vulkan overlay: use the corresponding image index for each swapchain 1345 1346Gert Wollny (12): 1347 1348- r600: Disable eight bit three channel formats 1349- virgl: Increase the shader transfer buffer by doubling the size 1350- gallium/tgsi_from_mesa: Add 'extern "C"' to be able to include from 1351 C++ 1352- nir: make nir_get_texture_size/lod available outside nir_lower_tex 1353- gallium: tgsi_from_mesa - handle VARYING_SLOT_FACE 1354- r600: Add functions to dump the shader info 1355- r600: Make it possible to include r600_asm.h in a C++ file 1356- r600/sb: Correct SB disassambler for better debugging 1357- r600: Fix maximum line width 1358- r600: Make SID and unsigned value 1359- r600: Delete vertex buffer only if there is actually a shader state 1360- mesa/st: glsl_to_nir: don't lower atomics to SSBOs if driver supports 1361 HW atomics 1362 1363Guido Günther (2): 1364 1365- etnaviv: drm: Don't miscalculate timeout 1366- freedreno/drm: Don't miscalculate timeout 1367 1368Gurchetan Singh (11): 1369 1370- drirc: set allow_higher_compat_version for Faster Than Light 1371- virgl/drm: update UAPI 1372- teximage: split out helper from EGLImageTargetTexture2DOES 1373- glapi / teximage: implement EGLImageTargetTexStorageEXT 1374- dri_util: add driImageFormatToSizedInternalGLFormat function 1375- i965: track if image is created by a dmabuf 1376- i965: refactor intel_image_target_texture_2d 1377- i965: support EXT_EGL_image_storage 1378- st/dri: track if image is created by a dmabuf 1379- st/mesa: refactor egl image binding a bit 1380- st/mesa: implement EGLImageTargetTexStorage 1381 1382Hyunjun Ko (7): 1383 1384- freedreno/ir3: cleanup by removing repeated code 1385- freedreno: support 16b for the sampler opcode 1386- freedreno/ir3: fix printing output registers of FS. 1387- freedreno/ir3: fixup when changing to mad.f16 1388- freedreno/ir3: enable half precision for pre-fs texture fetch 1389- turnip: fix invalid VK_ERROR_OUT_OF_POOL_MEMORY 1390- freedreno/ir3: put the conversion back for half const to the right 1391 place. 1392 1393Iago Toral Quiroga (32): 1394 1395- v3d: rename vertex shader key (num)_fs_inputs fields 1396- mesa/st: make sure we remove dead IO variables before handing NIR to 1397 backends 1398- glsl: add missing initialization of the location path field 1399- v3d: fix indirect BO allocation for uniforms 1400- v3d: actually root the first BO in a command list in the job 1401- v3d: add missing plumbing for VPM load instructions 1402- v3d: add debug assert 1403- v3d: enable debug options for geometry shader dumps 1404- v3d: remove unused variable 1405- v3d: add initial compiler plumbing for geometry shaders 1406- v3d: fix packet descriptions for geometry and tessellation shaders 1407- v3d: emit geometry shader state commands 1408- v3d: implement geometry shader instancing 1409- v3d: add 1-way SIMD packing definition 1410- v3d: compute appropriate VPM memory configuration for geometry shader 1411 workloads 1412- v3d: we always have at least one output segment 1413- v3d: add support for adjacency primitives 1414- v3d: don't try to render if shaders failed to compile 1415- v3d: predicate geometry shader outputs inside non-uniform control 1416 flow 1417- v3d: save geometry shader state for blitting 1418- v3d: support transform feedback with geometry shaders 1419- v3d: remove obsolete assertion 1420- v3d: do not limit new CL space allocations with branch to 4096 bytes 1421- v3d: support rendering to multi-layered framebuffers 1422- v3d: move layer rendering to a separate helper 1423- v3d: handle writes to gl_Layer from geometry shaders 1424- v3d: fix primitive queries for geometry shaders 1425- v3d: disable lowering of indirect inputs 1426- v3d: support precompiling geometry shaders 1427- v3d: expose OES_geometry_shader 1428- u_vbuf: don't try to delete NULL driver CSO 1429- v3d: fix bug when checking result of syncobj fence import 1430 1431Ian Romanick (39): 1432 1433- intel/compiler: Report the number of non-spill/fill SEND messages on 1434 vec4 too 1435- nir/algebraic: Add the ability to mark a replacement as exact 1436- nir/algebraic: Mark other comparison exact when removing a == a 1437- intel/fs: Disable conditional discard optimization on Gen4 and Gen5 1438- nir/range-analysis: Add pragmas to help loop unrolling 1439- nir/range_analysis: Make sure the table validation only occurs once 1440- nir/opt_peephole_select: Don't count some unary operations 1441- intel/compiler: Increase nir_opt_peephole_select threshold 1442- nir/algebraic: Simplify some Inf and NaN avoidance code 1443- nir/algebraic: Rearrange bcsel sequences generated by 1444 nir_opt_peephole_select 1445- intel/compiler: Fix 'comparison is always true' warning 1446- mesa: Silence 'left shift of negative value' warning in BPTC 1447 compression code 1448- mesa: Silence unused parameter warning 1449- anv: Fix error message format string 1450- mesa: Extension boilerplate for INTEL_shader_integer_functions2 1451- glsl: Add new expressions for INTEL_shader_integer_functions2 1452- glsl_types: Add function to get an unsigned base type from a signed 1453 type 1454- glsl: Add built-in functions for INTEL_shader_integer_functions2 1455- nir: Add new instructions for INTEL_shader_integer_functions2 1456- nir/algebraic: Add lowering for uabs_usub and uabs_isub 1457- nir/algebraic: Add lowering for 64-bit hadd and rhadd 1458- nir/algebraic: Add lowering for 64-bit usub_sat 1459- nir/algebraic: Add lowering for 64-bit uadd_sat 1460- nir/algebraic: Add lowering for 64-bit iadd_sat and isub_sat 1461- compiler: Translate GLSL IR to NIR for new 1462 INTEL_shader_integer_functions2 expressions 1463- intel/fs: Don't lower integer multiplies that don't need lowering 1464- intel/fs: Add SHADER_OPCODE_[IU]SUB_SAT pseudo-ops 1465- intel/fs: Implement support for NIR opcodes for 1466 INTEL_shader_integer_functions2 1467- nir/spirv: Translate SPIR-V to NIR for new 1468 INTEL_shader_integer_functions2 opcodes 1469- spirv: Silence a bunch of unused parameter warnings 1470- spirv: Add support for IntegerFunctions2INTEL capability 1471- i965: Enable INTEL_shader_integer_functions2 on Gen8+ 1472- gallium: Add a cap bit for OpenCL-style extended integer functions 1473- gallium: Add a cap bit for integer multiplication between 32-bit and 1474 16-bit 1475- iris: Enable INTEL_shader_integer_functions2 1476- anv: Enable SPV_INTEL_shader_integer_functions2 and 1477 VK_INTEL_shader_integer_functions2 1478- nir/algebraic: Optimize some 64-bit integer comparisons involving 1479 zero 1480- relnotes: Add GL_INTEL_shader_integer_functions2 and 1481 VK_INTEL_shader_integer_functions2 1482- intel/fs: Don't count integer instructions as being possibly coissue 1483 1484Icecream95 (16): 1485 1486- gallium/auxiliary: Reduce conversions in 1487 u_vbuf_get_minmax_index_mapped 1488- gallium/auxiliary: Handle count == 0 in 1489 u_vbuf_get_minmax_index_mapped 1490- panfrost: Add negative lod bias support 1491- panfrost: Compact the bo_access readers array 1492- panfrost: Dynamically allocate shader variants 1493- panfrost: Add ETC1/ETC2 texture formats 1494- panfrost: Add ASTC texture formats 1495- pan/midgard: Fix bundle dynarray leak 1496- pan/midgard: Fix a memory leak in the disassembler 1497- pan/midgard: Support disassembling to a file 1498- pan/bifrost: Support disassembling to a file 1499- pan/decode: Support dumping to a file 1500- pan/decode: Dump to a file 1501- pan/decode: Rotate trace files 1502- panfrost: Don't copy uniforms when the size is zero 1503- pan/midgard: Fix a liveness info leak 1504 1505Icenowy Zheng (2): 1506 1507- lima: support indexed draw with bias 1508- lima: fix lima_set_vertex_buffers() 1509 1510Ilia Mirkin (7): 1511 1512- gm107/ir: fix loading z offset for layered 3d image bindings 1513- nv50/ir: mark STORE destination inputs as used 1514- nv50,nvc0: fix destination coordinates of blit 1515- nvc0: add dummy reset status support 1516- gm107/ir: avoid combining geometry shader stores at 0x60 1517- nvc0: treat all draws without color0 broadcast as MRT 1518- nvc0: disable xfb's which don't have a stride 1519 1520Italo Nicola (1): 1521 1522- intel/compiler: remove old comment 1523 1524Iván Briano (4): 1525 1526- intel/compiler: Don't change hstride if not needed 1527- anv: Export filter_minmax support only when it's really supported 1528- anv: Export VK_KHR_buffer_device_address only when really supported 1529- anv: Enable Vulkan 1.2 support 1530 1531James Xiong (3): 1532 1533- iris: try to set the specified tiling when importing a dmabuf 1534- gallium: dmabuf support for yuv formats that are not natively 1535 supported 1536- gallium: let the pipe drivers decide the supported modifiers 1537 1538Jan Vesely (2): 1539 1540- clover: Initialize Asm Parsers 1541- clover: Use explicit conversion from llvm::StringRef to std::string 1542 1543Jan Zielinski (8): 1544 1545- gallium/swr: Fix depth values for blit scenario 1546- swr/rasterizer: Add tessellator implementation to the rasterizer 1547- gallium/swr: Fix Windows build 1548- gallium/gallivm/tgsi: enable tessellation shaders 1549- gallium/gallivm: enable linking lp_bld_printf function with C++ code 1550- gallium/swr: implementation of tessellation shaders compilation 1551- gallium/swr: fix tessellation state save/restore 1552- docs: Update SWR tessellation support 1553 1554Jason Ekstrand (212): 1555 1556- util: Add a util_sparse_array data structure 1557- anv: Move refcount to anv_bo 1558- anv: Use a util_sparse_array for the GEM handle -> BO map 1559- anv: Fix a relocation race condition 1560- anv: Stop storing the GEM handle in anv_reloc_list_add 1561- anv: Declare the bo in the anv_block_pool_foreach_bo loop 1562- anv: Inline anv_block_pool_get_bo 1563- anv: Replace ANV_BO_EXTERNAL with anv_bo::is_external 1564- anv: Handle state pool relocations using "wrapper" BOs 1565- anv: Fix a potential BO handle leak 1566- anv: Rework anv_block_pool_expand_range 1567- anv: Use anv_block_pool_foreach_bo in get_bo_from_pool 1568- anv: Rework the internal BO allocation API 1569- anv: Choose BO flags internally in anv_block_pool 1570- anv/tests: Zero-initialize instances 1571- anv/tests: Initialize the BO cache and device mutex 1572- anv: Allocate block pool BOs from the cache 1573- anv: Use the query_slot helper in vkResetQueryPoolEXT 1574- anv: Allocate query pool BOs from the cache 1575- anv: Set more flags on descriptor pool buffers 1576- anv: Allocate descriptor buffers from the BO cache 1577- util: Add a free list structure for use with util_sparse_array 1578- anv: Allocate batch and fence buffers from the cache 1579- anv: Allocate scratch BOs from the cache 1580- anv: Allocate misc BOs from the cache 1581- anv: Drop anv_bo_init and anv_bo_init_new 1582- anv: Add a device parameter to anv_execbuf_add_bo 1583- anv: Set the batch allocator for compute pipelines 1584- anv: Use a bitset for tracking residency 1585- anv: Zero released anv_bo structs 1586- anv: Use the new BO alloc API for Android 1587- anv: Don't delete fragment shaders that write sample mask 1588- anv: Don't claim the null RT as a valid color target 1589- anv: Stop compacting render targets in the binding table 1590- anv: Move the RT BTI flush workaround to begin_subpass 1591- spirv: Remove the type from sampled_image 1592- spirv: Add a vtn_decorate_pointer helper 1593- spirv: Sort out the mess that is sampled image 1594- nir/builder: Add a nir_extract_bits helper 1595- nir: Add tests for nir_extract_bits 1596- intel/nir: Use nir_extract_bits in lower_mem_access_bit_sizes 1597- intel/fs: Add DWord scattered read/write opcodes 1598- intel/fs: refactor surface header setup 1599- intel/nir: Plumb devinfo through lower_mem_access_bit_sizes 1600- intel/fs: Implement the new load/store_scratch intrinsics 1601- intel/fs: Lower large local arrays to scratch 1602- anv: Lock around fetching sync file FDs from semaphores 1603- anv: Plumb timeline semaphore signal/wait values through from the API 1604- spirv: Fix the MSVC build 1605- anv/pipeline: Assume layout != NULL 1606- genxml: Mark everything in genX_pack.h always_inline 1607- anv: Input attachments are always single-plane 1608- anv: Flatten descriptor bindings in anv_nir_apply_pipeline_layout 1609- anv: Delete dead shader constant pushing code 1610- anv: Stop bounds-checking pushed UBOs 1611- anv: Pre-compute push ranges for graphics pipelines 1612- intel/compiler: Add a flag to avoid compacting push constants 1613- anv: Re-arrange push constant data a bit 1614- anv: Rework push constant handling 1615- anv: Use a switch statement for binding table setup 1616- anv: More carefully dirty state in BindDescriptorSets 1617- anv: More carefully dirty state in BindPipeline 1618- anv: Use an anv_state for the next binding table 1619- anv: Emit a NULL vertex for zero base_vertex/instance 1620- nir: Validate that variables are in the right lists 1621- iris: Re-enable param compaction 1622- Revert "i965/fs: Merge CMP and SEL into CSEL on Gen8+" 1623- vulkan/enum_to_str: Handle out-of-order aliases 1624- anv/entrypoints: Better handle promoted extensions 1625- vulkan: Update the XML and headers to 1.1.129 1626- anv: Push constants are relative to dynamic state on IVB 1627- anv: Set up SBE_SWIZ properly for gl_Viewport 1628- anv: Respect the always_flush_cache driconf option 1629- iris: Stop setting up fake params 1630- anv: Drop bo_flags from anv_bo_pool 1631- anv: Add a has_softpin boolean 1632- blorp: Pass the VB size to the VF cache workaround 1633- anv: Always invalidate the VF cache in BeginCommandBuffer 1634- anv: Apply cache flushes after setting index/draw VBs 1635- anv: Use PIPE_CONTROL flushes to implement the gen8 VF cache WA 1636- anv: Don't leak when set_tiling fails 1637- util/atomic: Add a \_return variant of p_atomic_add 1638- anv: Disallow allocating above heap sizes 1639- anv: Stop tracking VMA allocations 1640- anv: Set up VMA heaps independently from memory heaps 1641- anv: Stop advertising two heaps just for the VF cache WA 1642- anv: Add an explicit_address parameter to anv_device_alloc_bo 1643- util/vma: Factor out the hole splitting part of util_vma_heap_alloc 1644- util/vma: Add a function to allocate a particular address range 1645- anv: Add allocator support for client-visible addresses 1646- anv: Use a pNext loop in AllocateMemory 1647- anv: Implement VK_KHR_buffer_device_address 1648- util/atomic: Add p_atomic_add_return for the unlocked path 1649- vulkan/wsi: Provide the implicitly synchronized BO to vkQueueSubmit 1650- vulkan/wsi: Add a hooks for signaling semaphores and fences 1651- anv: Always add in EXEC_OBJECT_WRITE when specified in extra_flags 1652- anv: Use submit-time implicit sync instead of allocate-time 1653- anv: Add a fence_reset_reset_temporary helper 1654- anv: Use BO fences/semaphores for AcquireNextImage 1655- anv: Return VK_ERROR_OUT_OF_DEVICE_MEMORY for too-large buffers 1656- anv: Re-capture all batch and state buffers 1657- anv: Re-emit all compute state on pipeline switch 1658- ANV: Stop advertising smoothLines support on gen10+ 1659- anv: Flush the queue on DeviceWaitIdle 1660- anv: Unconditionally advertise Vulkan 1.1 1661- anv: Bump the advertised patch version to 129 1662- i965: Enable GL_EXT_gpu_shader4 on Gen6+ 1663- anv: Properly advertise sampledImageIntegerSampleCounts 1664- anv: Drop unneeded struct keywords 1665- blorp: Stop whacking Z24 depth to BGRA8 1666- blorp: Allow reading with HiZ 1667- i965/blorp: Don't resolve HiZ unless we're reinterpreting 1668- intel/blorp: Use the source format when using blorp_copy with HiZ 1669- anv: Allow HiZ in TRANSFER_SRC_OPTIMAL on Gen8-9 1670- i965: Allow HiZ for glCopyImageSubData sources 1671- intel/nir: Add a memory barrier before barrier() 1672- intel/disasm: Fix decoding of src0 of SENDS 1673- genxml: Remove a non-existant HW bit 1674- anv: Don't add dynamic state base address to push constants on Gen7 1675- anv: Flag descriptors dirty when gl_NumWorkgroups is used 1676- anv: Re-use flush_descriptor_sets in flush_compute_state 1677- intel/vec4: Support scoped_memory_barrier 1678- nir: Handle more barriers in dead_write and copy_prop 1679- nir: Handle barriers with more granularity in combine_stores 1680- llmvpipe: No-op implement more barriers 1681- nir: Add a new memory_barrier_tcs_patch intrinsic 1682- spirv: Add a workaround for OpControlBarrier on old GLSLang 1683- spirv: Add output memory semantics to OpControlBarrier in TCS 1684- nir/glsl: Emit memory barriers as part of barrier() 1685- intel/nir: Stop adding redundant barriers 1686- nir: Rename nir_intrinsic_barrier to control_barrier 1687- nir/lower_atomics_to_ssbo: Also lower barriers 1688- anv: Drop an unused variable 1689- intel/blorp: Fill out all the dwords of MI_ATOMIC 1690- anv: Don't over-advertise descriptor indexing features 1691- anv: Memset array properties 1692- vulkan/wsi: Add a driconf option to force WSI to advertise 1693 BGRA8_UNORM first 1694- vulkan: Update the XML and headers to 1.2.131 1695- turnip: Pretend to support Vulkan 1.2 1696- anv: Bump the patch version to 131 1697- anv,nir: Lower quad_broadcast with dynamic index in NIR 1698- anv: Implement the new core version feature queries 1699- anv: Implement the new core version property queries 1700- relnotes: Add Vulkan 1.2 1701- anv: Drop some VK_IMAGE_TILING_OPTIMAL checks 1702- anv: Support modifiers in GetImageFormatProperties2 1703- vulkan/wsi: Move the ImageCreateInfo higher up 1704- vulkan/wsi: Use the interface from the real modifiers extension 1705- vulkan/wsi: Filter modifiers with ImageFormatProperties 1706- vulkan/wsi: Implement VK_KHR_swapchain_mutable_format 1707- anv/blorp: Rename buffer image stride parameters 1708- anv: Canonicalize buffer formats for image/buffer copies 1709- anv: Add an anv_physical_device field to anv_device 1710- anv: Take an anv_device in vk_errorf 1711- anv: Take a device in anv_perf_warn 1712- anv: Stop allocating WSI event fences off the instance 1713- anv: Drop the instance pointer from anv_device 1714- anv: Move the physical device dispatch table to anv_instance 1715- anv: Drop separate chipset_id fields 1716- anv: Re-arrange physical_device_init 1717- anv: Allow enumerating multiple physical devices 1718- anv/apply_pipeline_layout: Initialize the nir_builder before use 1719- intel/blorp: resize src and dst surfaces separately 1720- anv: Use TRANSFER_SRC_OPTIMAL for depth/stencil MSAA resolves 1721- anv: Add a layout_to_aux_state helper 1722- anv: Use isl_aux_state for HiZ resolves 1723- anv: Add a usage parameter to anv_layout_to_aux_usage 1724- anv: Allow HiZ in read-only depth layouts 1725- anv: Improve BTI change cache flushing 1726- intel/fs: Don't unnecessarily fall back to indirect sends on Gen12 1727- intel/disasm: Properly disassemble indirect SENDs 1728- intel/isl: Plumb devinfo into isl_genX(buffer_fill_state_s) 1729- intel/isl: Add a hack for the Gen12 A0 texture buffer bug 1730- anv: Rework the meaning of anv_image::planes[]::aux_usage 1731- anv: Replace aux_surface.isl.size_B checks with aux_usage checks 1732- intel/aux-map: Add some #defines 1733- intel/aux-map: Factor out some useful helpers 1734- anv: Delete a redundant calculation 1735- isl: Add a helper for calculating subimage memory ranges 1736- anv: Add another align_down helper 1737- anv: Make AUX table invalidate a PIPE\_\* bit 1738- anv: Make anv_vma_alloc/free a lot dumber 1739- anv: Rework CCS memory handling on TGL-LP 1740- intel/blorp: Add support for CCS_E copies with UNORM formats 1741- intel/isl: Allow CCS_E on more formats 1742- intel/genxml: Make SO_DECL::"Hole Flag" a Boolean 1743- anv: Insert holes for non-existant XFB varyings 1744- intel/blorp: Handle bit-casting UNORM and BGRA formats 1745- anv: Replace one more aux_surface.isl.size_B check 1746- intel/mi_builder: Force write completion on Gen12+ 1747- anv: Set actual state pool sizes when we have softpin 1748- anv: Re-use one old BT block in reset_batch_bo_chain 1749- anv/block_pool: Ensure allocations have contiguous maps 1750- anv: Rename a variable 1751- genxml: Add a new 3DSTATE_SF field on gen12 1752- anv,iris: Set 3DSTATE_SF::DerefBlockSize to per-poly on Gen12+ 1753- intel/genxml: Drop SLMEnable from L3CNTLREG on Gen11 1754- iris: Set SLMEnable based on the L3$ config 1755- iris: Store the L3$ configs in the screen 1756- iris: Use the URB size from the L3$ config 1757- i965: Re-emit l3 state before BLORP executes 1758- intel: Take a gen_l3_config in gen_get_urb_config 1759- intel/blorp: Always emit URB config on Gen7+ 1760- iris: Consolodate URB emit 1761- anv: Emit URB setup earlier 1762- intel/common: Return the block size from get_urb_config 1763- intel/blorp: Plumb deref block size through to 3DSTATE_SF 1764- anv: Plumb deref block size through to 3DSTATE_SF 1765- iris: Plumb deref block size through to 3DSTATE_SF 1766- anv: Always fill out the AUX table even if CCS is disabled 1767- intel/fs: Write the address register with NoMask for MOV_INDIRECT 1768- anv/blorp: Use the correct size for vkCmdCopyBufferToImage 1769 1770Jonathan Gray (4): 1771 1772- winsys/amdgpu: avoid double simple_mtx_unlock() 1773- i965: update Makefile.sources for perf changes 1774- util/futex: use futex syscall on OpenBSD 1775- util/u_thread: don't restrict u_thread_get_time_nano() to \__linux_\_ 1776 1777Jonathan Marek (98): 1778 1779- freedreno: add Adreno 640 ID 1780- freedreno/ir3: disable texture prefetch for 1d array textures 1781- freedreno/registers: fix a6xx_2d_blit_cntl ROTATE 1782- etnaviv: blt: use only for tiling, and add missing formats 1783- etnaviv: separate PE and RS formats, use only RS only for tiling 1784- etnaviv: blt: set TS dirty after clear 1785- turnip: add display wsi 1786- turnip: add x11 wsi 1787- turnip: implement CmdClearColorImage/CmdClearDepthStencilImage 1788- turnip: fix sRGB GMEM clear 1789- util: add missing R8G8B8A8_SRGB format to vk_format_map 1790- freedreno/regs: update UBWC related bits 1791- turnip: implement UBWC 1792- etnaviv: avoid using RS for 64bpp formats 1793- etnaviv: implement 64bpp clear 1794- etnaviv: blt: fix partial ZS clears with TS 1795- etnaviv: support 3d/array/integer formats in texture descriptors 1796- turnip: fix integer render targets 1797- freedreno/registers: add missing MH perfcounter enum for a2xx 1798- freedreno/perfcntrs: add a2xx MH counters 1799- freedreno/perfcntrs/fdperf: fix u64 print on 32-bit builds 1800- freedreno/perfcntrs/fdperf: add missing a20x compatible 1801- freedreno/perfcntrs/fdperf: add missing a2xx case in select_counter 1802- turnip: fix display wsi fence timing out 1803- turnip: don't skip unused attachments when setting up tiling config 1804- turnip: implement CmdClearAttachments 1805- turnip: don't set unused BLIT_DST_INFO bits for GMEM clear 1806- turnip: MSAA resolve directly from GMEM 1807- turnip: allow writes to draw_cs outside of render pass 1808- turnip: add function to allocate aligned memory in a substream cs 1809- turnip: improve emit_textures 1810- turnip: implement border color 1811- turnip: add hw binning 1812- turnip: fix incorrectly failing assert 1813- freedreno/ir3: add GLSL_SAMPLER_DIM_SUBPASS to tex_info 1814- freedreno/registers: add a6xx texture format for stencil sampler 1815- turnip: fix hw binning render area 1816- turnip: fix tile layout logic 1817- turnip: update tile_align_w/tile_align_h 1818- turnip: set load_layer_id to zero 1819- turnip: set FRAG_WRITES_SAMPMASK bit 1820- turnip: fix VK_IMAGE_ASPECT_STENCIL_BIT image view 1821- turnip: no 8x msaa on 128bpp formats 1822- turnip: add dirty bit for push constants 1823- turnip: subpass rework 1824- turnip: CmdClearAttachments fixes 1825- turnip: implement subpass input attachments 1826- etnaviv: remove sRGB formats from format table 1827- etnaviv: sRGB render target support 1828- etnaviv: set output mode and saturate bits 1829- etnaviv: update INT_FILTER choice for GLES3 formats 1830- etnaviv: disable integer vertex formats on pre-HALTI2 hardware 1831- etnaviv: remove swizzle from format table 1832- etnaviv: add missing formats 1833- etnaviv: add missing vs_needs_z_div handling to NIR backend 1834- turnip: use single substream cs 1835- turnip: use common blit path for buffer copy 1836- turnip: don't require src image to be set for clear blits 1837- turnip: implement CmdFillBuffer/CmdUpdateBuffer 1838- freedreno/ir3: lower mul_2x32_64 1839- turnip: fix emit_textures for compute shaders 1840- turnip: remove compute emit_border_color 1841- turnip: fix emit_ibo 1842- turnip: change emit_ibo to be like emit_textures 1843- turnip: remove duplicate A6XX_SP_CS_CONFIG_NIBO 1844- nir: add option to lower half packing opcodes 1845- freedreno/ir3: lower pack/unpack ops 1846- turnip: don't set LRZ enable at end of renderpass 1847- freedreno/ir3: update prefetch input_offset when packing inlocs 1848- turnip: add cache invalidate to fix input attachment cases 1849- turnip: don't set SP_FS_CTRL_REG0_VARYING if only fragcoord is used 1850- freedreno/ir3: fix vertex shader sysvals with pre_assign_inputs 1851- freedreno/registers: document vertex/instance id offset bits 1852- freedreno/ir3: support load_base_instance 1853- turnip: emit base instance vs driver param 1854- turnip: emit_compute_driver_params fixes 1855- turnip: compute gmem offsets at renderpass creation time 1856- turnip: implement secondary command buffers 1857- nir: fix assign_io_var_locations for vertex inputs 1858- turnip: minor warning fixes 1859- util/format: add missing vulkan formats 1860- turnip: disable B8G8R8 vertex formats 1861- etnaviv: fix incorrectly failing vertex size assert 1862- etnaviv: update headers from rnndb 1863- etnaviv: HALTI2+ instanced draw 1864- etnaviv: implement gl_VertexID/gl_InstanceID 1865- etnaviv: remove unnecessary vertex_elements_state_create error 1866 checking 1867- st/mesa: don't lower YUV when driver supports it natively 1868- st/mesa: run st_nir_lower_tex_src_plane for lowered xyuv/ayuv 1869- freedreno/ir3: allow inputs with the same location 1870- turnip: remove tu_sort_variables_by_location 1871- turnip: fix array/matrix varyings 1872- turnip: hook up GetImageDrmFormatModifierPropertiesEXT 1873- turnip: set linear tiling for scanout images 1874- vulkan/wsi: remove unused image_get_modifier 1875- turnip: simplify tu_physical_device_get_format_properties 1876- etnaviv: implement UBOs 1877- turnip: hook up cmdbuffer event set/wait 1878 1879Jordan Justen (7): 1880 1881- iris: Add IRIS_DIRTY_RENDER_BUFFER state flag 1882- iris/gen11+: Move flush for render target change 1883- iris: Allow max dynamic pool size of 2GB for gen12 1884- intel: Remove unused Tigerlake PCI ID 1885- iris: Fix some indentation in iris_init_render_context 1886- iris: Emit CS Stall before Instruction Cache flush for gen12 WA 1887- anv: Emit CS Stall before Instruction Cache flush for gen12 WA 1888 1889Jose Maria Casanova Crespo (1): 1890 1891- v3d: Fix predication with atomic image operations 1892 1893Juan A. Suarez Romero (3): 1894 1895- nir/lower_double_ops: relax lower mod() 1896- Revert "nir/lower_double_ops: relax lower mod()" 1897- nir/spirv: skip unreachable blocks in Phi second pass 1898 1899Kai Wasserbäch (4): 1900 1901- nir: fix unused variable warning in nir_lower_vars_to_explicit_types 1902- nir: fix unused variable warning in 1903 find_and_update_previous_uniform_storage 1904- nir: fix unused function warning in src/compiler/nir/nir.c 1905- intel/gen_decoder: Fix unused-but-set-variable warning 1906 1907Karol Herbst (14): 1908 1909- nv50/ir: fix crash in isUniform for undefined values 1910- nir/validate: validate num_components on registers and intrinsics 1911- nir/serialize: fix vec8 and vec16 1912- nir/tests: add serializer tests 1913- nir/tests: MSVC build fix 1914- spirv: handle UniformConstant for OpenCL kernels 1915- clover/nir: treat UniformConstant as global memory 1916- clover/nir: set spirv environment to OpenCL 1917- clover/spirv: allow Int64 Atomics for supported devices 1918- nir: handle nir_deref_type_ptr_as_array in 1919 rematerialize_deref_in_block 1920- nv50/ir: implement global atomics and handle it for nir 1921- nir/serialize: cast swizzle before shifting 1922- aco: use NIR_MAX_VEC_COMPONENTS instead of 4 1923- nv50ir/nir: support vec8 and vec16 1924 1925Kenneth Graunke (57): 1926 1927- iris: Fix "Force Zero RTA Index Enable" setting again 1928- nir: Handle image arrays when setting variable data 1929- Revert "intel/blorp: Fix usage of uninitialized memory in key 1930 hashing" 1931- iris: Properly move edgeflag_out from output list to global list 1932- iris: Wrap iris_fix_edge_flags in NIR_PASS 1933- mesa: Handle GL_COLOR_INDEX in \_mesa_format_from_format_and_type(). 1934- iris: Change keybox parenting 1935- iris: Stop mutating the resource in get_rt_read_isl_surf(). 1936- iris: Drop 'old_address' parameter from iris_rebind_buffer 1937- iris: Create an "iris_surface_state" wrapper struct 1938- iris: Maintain CPU-side SURFACE_STATE copies for views and surfaces. 1939- iris: Update SURFACE_STATE addresses when setting sampler views 1940- iris: Disable VF cache partial address workaround on Gen11+ 1941- driconf, glsl: Add a vs_position_always_invariant option 1942- drirc: Set vs_position_always_invariant for Shadow of Mordor on Intel 1943- st/mesa: Add GL_TDFX_texture_compression_FXT1 support 1944- iris: Map FXT1 texture formats 1945- meson: Add a "prefer_iris" build option 1946- main: Change u_mmAllocMem align2 from bytes (old API) to bits (new 1947 API) 1948- meson: Include iris in default gallium-drivers for x86/x86_64 1949- util: Detect use-after-destroy in simple_mtx 1950- intel/genxml: Add a partial TCCNTLREG definition 1951- iris: Enable Gen11 Color/Z write merging optimization 1952- anv: Enable Gen11 Color/Z write merging optimization 1953- intel/decoder: Make get_state_size take a full 64-bit address and a 1954 base 1955- iris: Create smaller program keys without legacy features 1956- iris: Default to X-tiling for scanout buffers without modifiers 1957- iris: Alphabetize source files after iris_perf.c was added 1958- drirc: Final Fantasy VIII: Remastered needs 1959 allow_higher_compat_version 1960- iris: Make helper functions to turn iris shader keys into brw keys. 1961- iris: Fix shader recompile debug printing 1962- iris: Avoid replacing backing storage for buffers with no contents 1963- intel: Drop Gen11 WaBTPPrefetchDisable workaround 1964- st/nir: Optionally unify inputs_read/outputs_written when linking. 1965- iris: Set nir_shader_compiler_options::unify_interfaces. 1966- st/mesa: Allow ASTC5x5 fallbacks separately from other ASTC LDR 1967 formats. 1968- iris: Disable ASTC 5x5 support on Gen9 for now. 1969- iris: Delete remnants of the unimplemented ASTC 5x5 workaround 1970- iris: Allow HiZ for copy_region sources 1971- anv: Only enable EWA LOD algorithm when doing anisotropic filtering. 1972- Revert "nir: assert that nir_lower_tex runs after lowering derefs" 1973- i965: Simplify brw_get_renderer_string() 1974- iris: Simplify iris_get_renderer_string() 1975- intel: Use similar brand strings to the Windows drivers 1976- intel/compiler: Fix illegal mutation in get_nir_image_intrinsic_image 1977- iris: Fix export of fences that have already completed. 1978- st/mesa: Allocate full miplevels if MaxLevel is explicitly set 1979- iris: Drop some workarounds which are no longer necessary 1980- anv: Drop some workarounds that are no longer necessary 1981- intel: Fix aux map alignments on 32-bit builds. 1982- meson: Prefer 'iris' by default over 'i965'. 1983- loader: Check if the kernel driver is i915 before loading iris 1984- iris: Drop 'engine' from iris_batch. 1985- iris: Make iris_emit_default_l3_config pull devinfo from the batch 1986- iris: Support multiple chained batches. 1987- i965: Use brw_batch_references in tex_busy check 1988- loader: Fix leak of kernel driver name 1989 1990Kristian Høgsberg (62): 1991 1992- freedreno/registers: Fix typo 1993- freedreno/registers: Move SP_PRIMITIVE_CNTL and SP_VS_VPC_DST 1994- freedreno/registers: Add comments about primitive counters 1995- freedreno/a6xx: Fix primitive counters again 1996- freedreno/a6xx: Clear sysmem with CP_BLIT 1997- freedreno: Add nogmem debug option to force bypass rendering 1998- freedreno/a6xx: Fix layered texture type enum 1999- freedreno/a6x: Rename z/s formats 2000- freedreno/a6xx: Add register offset for STG/LDG 2001- freedreno/ir3: Emit link map as byte or dwords offsets as needed 2002- freedreno/ir3: Add load and store intrinsics for global io 2003- freedreno: Don't count primitives for patches 2004- freedreno/ir3: Add ir3 intrinsics for tessellation 2005- freedreno/ir3: Use imul24 in offset calculations 2006- freedreno/ir3: Add tessellation field to shader key 2007- freedreno/ir3: Extend geometry lowering pass to handle tessellation 2008- freedreno/ir3: Add new synchronization opcodes 2009- freedreno/ir3: End TES with chsh when using GS 2010- freedreno/ir3: Implement tess coord intrinsic 2011- freedreno/ir3: Implement TCS synchronization intrinsics 2012- freedreno/ir3: Setup inputs and outputs for tessellation stages 2013- freedreno/ir3: Don't assume binning shader is always VS 2014- freedreno/ir3: Pre-color TCS header and primitive ID inputs 2015- freedreno/ir3: Allocate const space for tessellation parameters 2016- freedreno/a6xx: Build the right draw command for tessellation 2017- freedreno/a6xx: Allocate and program tessellation buffer 2018- freedreno/a6xx: Emit constant parameters for tessellation stages 2019- freedreno/a6xx: Program state for tessellation stages 2020- freedreno: Use bypass rendering for tessellation 2021- freedreno/a6xx: Only set emit.hs/ds when we're drawing patches 2022- freedreno/blitter: Save tessellation state 2023- freedreno/a6xx: Only use merged regs and four quads for VS+FS 2024- freedreno/a6xx: Turn on tessellation shaders 2025- freedreno/ir3: Use regid() helper when setting up precolor regs 2026- freedreno/registers: Remove duplicate register definitions 2027- freedreno: New struct packing macros 2028- freedreno/registers: Add 64 bit address registers 2029- freedreno/a6xx: Drop stale include 2030- freedreno/a6xx: Include fd6_pack.h in a few files 2031- freedreno/a6xx: Convert emit_mrt() to OUT_REG() 2032- freedreno/a6xx: Convert emit_zs() to OUT_REG() 2033- freedreno/a6xx: Convert VSC pipe setup to OUT_REG() 2034- freedreno/a6xx: Convert gmem blits to OUT_REG() 2035- freedreno/a6xx: Convert some tile setup to OUT_REG() 2036- freedreno/a6xx: Silence warning for unused perf counters 2037- freedreno/a6xx: Document the CP_SET_DRAW_STATE enable bits 2038- freedreno/a6xx: Make DEBUG_BLIT_FALLBACK only dump fallbacks 2039- freedreno: Add debug flag for forcing linear layouts 2040- freedreno/a6xx: Program sampler swap based on resource tiling 2041- freedreno/a6xx: Pick blitter swap based on resource tiling 2042- freedreno/a6xx: Add fd_resource_swap() helper 2043- freedreno/a6xx: Use blitter for resolve blits 2044- freedreno/a6xx: RB6_R8G8B8 is actually 32 bit RGBX 2045- freedreno/a6xx: Use A6XX_SP_2D_SRC_FORMAT_MASK macro 2046- freedreno/a6xx: Handle srgb blits on the blitter 2047- freedreno/a6xx: Move handle_rgba_blit() up 2048- freedreno/a6xx: Rewrite compressed blits in a helper function 2049- freedreno/a6xx: Set up multisample sysmem MRTs correctly 2050- st/mesa: Lower vars to ssa and constant prop before 2051 gl_nir_lower_buffers 2052- ir3: Set up full/half register conflicts correctly 2053- iris: Advertise PIPE_CAP_NATIVE_FENCE_FD 2054- iris: Print warning and return \*out = NULL when fd to syncobj fails 2055 2056Krzysztof Raszkowski (10): 2057 2058- gallium/swr: Fix GS invocation issues - Fixed proper setting 2059 gl_InvocationID. - Fixed GS vertices output memory overflow. 2060- gallium/swr: Enable some ARB_gpu_shader5 extensions Enable / add to 2061 features.txt: - Enhanced textureGather. - Geometry shader instancing. 2062 - Geometry shader multiple streams. 2063- gallium/swr: Fix crash when use GL_TDFX_texture_compression_FXT1 2064 format. 2065- gallivm: add TGSI bit arithmetic opcodes support 2066- gallium/swr: Fix glVertexPointer race condition. 2067- gallium/swr: Disable showing detected arch message. 2068- docs/GL4: update gallium/swr features 2069- gallium/swr: add option for static link 2070- gallium/swr: Fix gcc 4.8.5 compile error 2071- gallium/swr: simplify environmental variabled expansion code 2072 2073Lasse Lopperi (1): 2074 2075- freedreno/drm: Fix memory leak in softpin implementation 2076 2077Laurent Carlier (1): 2078 2079- egl: avoid local modifications for eglext.h Khronos standard header 2080 file 2081 2082Leo Liu (1): 2083 2084- ac: add missing Arcturus to the info of pc lines 2085 2086Lepton Wu (2): 2087 2088- gallium: dri2: Use index as plane number. 2089- android: mesa: Revert "android: mesa: revert "Enable asm 2090 unconditionally"" 2091 2092Lionel Landwerlin (60): 2093 2094- intel/dev: set default num_eu_per_subslice on gen12 2095- intel/perf: add TGL support 2096- intel/perf: fix Android build 2097- mesa: check draw buffer completeness on 2098 glClearBufferfi/glClearBufferiv 2099- vulkan: bump headers/registry to 1.1.127 2100- anv: Properly handle host query reset of performance queries 2101- anv: implement VK_KHR_separate_depth_stencil_layouts 2102- mesa: check framebuffer completeness only after state update 2103- anv: invalidate file descriptor of semaphore sync fd at vkQueueSubmit 2104- anv: remove list items on batch fini 2105- anv: detach batch emission allocation from device 2106- anv: expose timeout helpers outside of anv_queue.c 2107- anv: move queue init/finish to anv_queue.c 2108- anv: allow NULL batch parameter to anv_queue_submit_simple_batch 2109- anv: prepare driver to report submission error through queues 2110- anv: refcount semaphores 2111- anv: prepare the driver for delayed submissions 2112- anv/wsi: signal the semaphore in the acquireNextImage 2113- anv: implement VK_KHR_timeline_semaphore 2114- intel/dev: flag the Elkhart Lake platform 2115- intel/perf: add EHL performance query support 2116- intel/perf: fix invalid hw_id in query results 2117- intel/perf: set read buffer len to 0 to identify empty buffer 2118- intel/perf: take into account that reports read can be fairly old 2119- intel/perf: simplify the processing of OA reports 2120- intel/perf: fix improper pointer access 2121- anv: fix missing gen12 handling 2122- anv: fix incorrect VMA alignment for CCS main surfaces 2123- anv: fix fence underlying primitive checks 2124- anv: fix assumptions about temporary fence payload 2125- intel/perf: drop batchbuffer flushing at query begin 2126- i965/iris: perf-queries: don't invalidate/flush 3d pipeline 2127- anv: constify pipeline layout in nir passes 2128- anv: drop unused parameter from apply layout pass 2129- vulkan/wsi: error out when image fence doesn't signal 2130- mesa: avoid triggering assert in implementation 2131- i965/iris/perf: factor out frequency register capture 2132- loader: fix close on uninitialized file descriptor value 2133- anv: don't close invalid syncfd semaphore 2134- anv: fix intel perf queries availability writes 2135- anv: set stencil layout for input attachments 2136- iris: Implement Gen12 workaround for non pipelined state 2137- anv: Implement Gen12 workaround for non pipelined state 2138- anv: only use VkSamplerCreateInfo::compareOp if enabled 2139- anv: fix pipeline switch back for non pipelined states 2140- genxml: add new Gen11+ PIPE_CONTROL field 2141- iris: handle new PIPE_CONTROL field 2142- iris: implement another workaround for non pipelined states 2143- anv: implement another workaround for non pipelined states 2144- intel/perf: expose timestamp begin for mdapi 2145- intel/perf: report query split for mdapi 2146- anv: enable VK_KHR_swapchain_mutable_format 2147- anv: don't report error with other vendor DRM devices 2148- anv: ensure prog params are initialized with 0s 2149- anv/iris: warn gen12 3DSTATE_HS restriction 2150- intel: Implement Gen12 workaround for array textures of size 1 2151- isl: drop CCS row pitch requirement for linear surfaces 2152- isl: add gen12 comment about CCS for linear tiling 2153- anv: implement gen9 post sync pipe control workaround 2154- anv: set MOCS on push constants 2155 2156Luis Mendes (1): 2157 2158- radv: fix radv secure compile feature breaks compilation on armhf 2159 EABI and aarch64 2160 2161Marco Felsch (1): 2162 2163- etnaviv: Fix assert when try to accumulate an invalid fd 2164 2165Marek Olšák (245): 2166 2167- glsl: encode/decode types using a union with bitfields for 2168 readability 2169- glsl: encode vector_elements and matrix_columns better 2170- glsl: encode explicit_stride for basic types better 2171- glsl: encode array types better 2172- glsl: encode struct/interface types better 2173- st/mesa: call nir_opt_access only once 2174- st/mesa: call nir_lower_flrp only once per shader 2175- compiler: make variable::data::binding unsigned 2176- nir: pack nir_variable::data::stream 2177- nir: pack nir_variable::data::xfb\_\* 2178- radeonsi: use IR SHA1 as the cache key for the in-memory shader cache 2179- radeonsi: don't keep compute shader IR after compilation 2180- radeonsi: keep serialized NIR instead of nir_shader in 2181 si_shader_selector 2182- nir: pack the rest of nir_variable::data 2183- nir/serialize: don't expand 16-bit variable state slots to 32 bits 2184- nir/serialize: store 32-bit object IDs instead of 64-bit 2185- nir/serialize: pack nir_variable flags 2186- mesa: expose SPIR-V extensions in the Compatibility profile too 2187- util: add blob_finish_get_buffer 2188- radeonsi/nir: call nir_serialize only once per shader 2189- radeonsi/nir: fix compute shader crash due to nir_binary == NULL 2190- glsl/linker: pass shader_info to analyze_clip_cull_usage directly 2191- compiler: pack shader_info from 160 bytes to 96 bytes 2192- st/mesa: fix Sanctuary and Tropics by disabling ARB_gpu_shader5 for 2193 them 2194- st/mesa: rename DEBUG_TGSI -> DEBUG_PRINT_IR 2195- st/mesa: remove \\n being only printed in debug builds after printed 2196 TGSI 2197- st/mesa: print TCS/TES/GS/CS TGSI in the right place & keep disk 2198 cache enabled 2199- st/mesa: add ST_DEBUG=nir to print NIR shaders 2200- st/mesa: remove unused TGSI-only debug printing functions 2201- gallium/noop: call finalize_nir 2202- radeonsi/nir: remove dead function temps 2203- radeonsi/nir: call nir_lower_flrp only once per shader 2204- radeonsi/nir: don't lower fma, instead, fuse fma 2205- mesa: enable glthread for 7 Days To Die 2206- st/mesa: rename delete_basic_variant -> delete_common_variant 2207- st/mesa: decrease the size of st_fp_variant_key from 48 to 40 bytes 2208- st/mesa: start deduplicating some program code 2209- st/mesa: initialize affected_states and uniform storage earlier in 2210 deserialize 2211- st/mesa: consolidate and simplify code flagging 2212 program::affected_states 2213- st/mesa: trivially merge st_vertex_program into st_common_program 2214- st/mesa: rename st_common_program to st_program 2215- st/mesa: cleanups after unification of st_vertex/common program 2216- st/mesa: rename occurences of stcp to stp to correspond to st_program 2217- st/mesa: more cleanups after unification of st_vertex/common_program 2218- st/mesa: subclass st_vertex_program for VP-specific members 2219- st/mesa: call nir_sweep in st_finalize_nir 2220- st/mesa: keep serialized NIR instead of nir_shader in st_program 2221- st/mesa: call nir_serialize only once per shader 2222- nir: move data.image.access to data.access 2223- nir/print: only print image.format for image variables 2224- glsl_to_nir: rename image_access to mem_access 2225- nir: move data.descriptor_set above data.index for better packing 2226- nir: don't use GLenum16 in nir.h 2227- ac: add radeon_info::num_rings and move ring_type to amd_family.h 2228- ac: fill num_rings for remaining IPs 2229- winsys/amdgpu: detect noop dependencies on the same ring correctly 2230- nir: strip as we serialize to remove the nir_shader_clone call 2231- nir/serialize: do ctx = {0} instead of manual initializations 2232- util/blob: add 8-bit and 16-bit reads and writes 2233- nir/serialize: pack instructions better 2234- nir/serialize: pack src better and limit the object count to 1M from 2235 1G 2236- nir/serialize: don't serialize var->data for temporaries 2237- nir/serialize: deduplicate serialized var types by reusing the last 2238 unique one 2239- nir/serialize: try to store a diff in var data locations instead of 2240 var data 2241- nir/serialize: pack load_const with non-64-bit constants better 2242- nir/serialize: pack 1-component constants into 20 bits if possible 2243- nir/serialize: pack nir_intrinsic_instr::const_index[] better 2244- nir/serialize: try to pack two alu srcs into 1 uint32 2245- nir/serialize: don't store deref types if not needed 2246- nir/serialize: don't serialize mode for deref non-cast instructions 2247- nir/serialize: try to put deref->var index into the unused bits of 2248 the header 2249- nir/serialize: cleanup - fold nir_deref_type_var cases into switches 2250- nir/serialize: try to pack both deref array src into 32 bits 2251- nir/serialize: remove up to 3 consecutive equal ALU instruction 2252 headers 2253- nir/serialize: reuse the writemask field for 2 src X swizzles of SSA 2254 ALU 2255- nir/serialize: serialize swizzles for vec8 and vec16 2256- nir/serialize: serialize writemask for vec8 and vec16 2257- nir/serialize: don't serialize redundant 2258 nir_intrinsic_instr::num_components 2259- nir/serialize: use 3 unused bits in intrinsic for 2260 packed_const_indices 2261- nir/serialize: support any num_components for remaining instructions 2262- ac: set swizzled bit in cache policy as a hint not to merge 2263 loads/stores 2264- radeonsi: initialize the per-context compiler on demand 2265- radeonsi/nir: don't run si_nir_opts again if there is no change 2266- st/mesa: don't serialize all streamout state if there are no SO 2267 outputs 2268- st/mesa: don't use redundant stp->state.ir.nir 2269- st/mesa: don't call ProgramStringNotify in glsl_to_nir 2270- st/mesa: propagate gl_PatchVerticesIn from TCS to TES before linking 2271 for NIR 2272- st/mesa: simplify looping over linked shaders when linking NIR 2273- st/mesa: don't use \*\* in the st_nir_link_shaders signature 2274- st/mesa: add st_variant base class to simplify code for shader 2275 variants 2276- ac/nir: don't rely on data.patch for tess factors 2277- radeonsi/nir: implement subgroup system values for SPIR-V 2278- radeonsi: simplify the interface of 2279 get_dw_address_from_generic_indices 2280- radeonsi: simplify get_tcs_tes_buffer_address_from_generic_indices 2281- radeonsi/nir: validate is_patch because SPIR-V doesn't set it for 2282 tess factors 2283- radeonsi/nir: don't rely on data.patch for tess factors 2284- radeonsi/nir: fix location_frac handling for TCS outputs 2285- radeonsi/nir: support interface output types to fix SPIR-V xfb 2286 piglits 2287- radeonsi: enable SPIR-V and GL 4.6 for NIR 2288- util/driconfig: print ATTENTION if MESA_DEBUG=silent is not set 2289- radeonsi/gfx10: simplify some duplicated NGG GS code 2290- radeonsi/gfx10: fix the vertex order for triangle strips emitted by a 2291 GS 2292- llvmpipe: implement TEX_LZ and TXF_LZ opcodes 2293- gallivm: implement LOAD with CONSTBUF but don't enable it for 2294 llvmpipe 2295- st/mesa: support UBOs for Selection/Feedback/RasterPos 2296- st/mesa: save currently bound vertex samplers and sampler views in 2297 st_context 2298- st/mesa: support samplers for Selection/Feedback/RasterPos 2299- st/mesa: support SSBOs for Selection/Feedback/RasterPos 2300- st/mesa: support shader images for Selection/Feedback/RasterPos 2301- st/mesa: use a separate VS variant for the draw module 2302- st/mesa: remove st_vp_variant::num_inputs 2303- st/mesa: remove struct st_vp_variant in favor of st_common_variant 2304- st/mesa: don't generate VS TGSI if NIR is enabled 2305- draw, st/mesa: generate TGSI for ffvp/ARB_vp if draw lacks LLVM 2306- st/mesa: release the draw shader properly to fix driver crashes 2307 (iris) 2308- st/dri: assume external consumers of back buffers can write to the 2309 buffers 2310- radeonsi: enable NIR by default and document GL 4.6 support 2311- radeonsi/gfx10: disable vertex grouping 2312- radeonsi/gfx10: simplify the tess_turns_off_ngg condition 2313- radeonsi: don't rely on CLEAR_STATE to set PA_SC_GENERIC_SCISSOR\_\* 2314- ac: fix ac_get_i1_sgpr_mask for Wave32 2315- ac: fix the return value in cull_bbox when bbox culling is disabled 2316- radeonsi: deduplicate ES and GS thread enablement code 2317- radeonsi: disallow compute-based culling if polygon mode is enabled 2318- radeonsi: set is_monolithic for VS prologs when the shader is really 2319 monolithic 2320- radeonsi: don't wrap the VS prolog in if (ES thread) .. endif 2321- radeonsi/gfx10: don't insert NGG streamout atomics if they are never 2322 used 2323- radeonsi: allow generating VS prologs with 0 inputs 2324- radeonsi: fix determining whether the VS prolog is needed 2325- radeonsi: reset more fields in si_llvm_context_set_ir to fix reusing 2326 ctx 2327- radeonsi/gfx10: fix ngg_get_ordered_id 2328- amd/addrlib: update to the latest version 2329- ac/surface: fix an assertion failure on gfx9 in CMASK computation 2330- radeonsi/gfx10: don't declare any LDS for NGG if it's not used 2331- radeonsi/gfx10: enable NGG passthrough for eligible shaders 2332- radeonsi/gfx10: improve performance for TES using PrimID but not 2333 exporting it 2334- Revert "u_vbuf: Regard non-constant vbufs with non-instance elements 2335 as free" 2336- winsys/radeon: initialize pte_fragment_size 2337- radeonsi: preserve the scanout flag for shared resources on gfx9 and 2338 gfx10 2339- radeonsi: ignore PIPE_BIND_SCANOUT for imported textures 2340- radeonsi: remove the "display_dcc_offset == 0" assertion 2341- radeonsi: rename SDMA debug flags 2342- radeonsi: remove broken and unused SI SDMA image copy code 2343- radeonsi: add AMD_DEBUG=nodmaclear for debugging 2344- radeonsi: add AMD_DEBUG=nodmacopyimage for debugging 2345- radeonsi: rename dma_cs -> sdma_cs 2346- radeonsi: move SI and CIK+ SDMA code into 1 common function for 2347 cleanups 2348- radeonsi: disable SDMA on gfx8 to fix corruption on RX 580 2349- radeonsi: remove TGSI 2350- gallium: put u_vbuf_get_caps return values into u_vbuf_caps 2351- gallium/cso_context: move non-vbuf vertex buffer and element code 2352 into helpers 2353- gallium: bypass u_vbuf if it's not needed (no fallbacks and no user 2354 VBOs) 2355- ac/gpu_info: always use distributed tessellation on gfx10 2356- radeonsi: fix monolithic pixel shaders with two-sided colors and 2357 SampleMaskIn 2358- radeonsi: fix context roll tracking in si_emit_shader_vs 2359- radeonsi: test polygon mode enablement accurately 2360- radeonsi: determine accurately if line stippling is enabled for 2361 performance 2362- radeonsi: clean up messy si_emit_rasterizer_prim_state 2363- ac: unify build_sendmsg_gs_alloc_req 2364- ac: unify primitive export code 2365- ac/gpu_info: add pc_lines and use it in radeonsi 2366- ac: add 128-bit bitcount 2367- ac: add ac_build_s_endpgm 2368- radeonsi/gfx9: force the micro tile mode for MSAA resolve correctly 2369 on gfx9 2370- radeonsi: rename desc_list_byte_size -> vb_desc_list_alloc_size 2371- radeonsi: add si_context::num_vertex_elements 2372- radeonsi: don't allow draw calls with uninitialized VS inputs 2373- radeonsi: simplify si_set_vertex_buffers 2374- ac,radeonsi: increase the maximum number of shader args and return 2375 values 2376- radeonsi: put up to 5 VBO descriptors into user SGPRs 2377- radeonsi: don't enable VBOs in user SGPRs if compute-based culling 2378 can be used 2379- radeonsi: fix assertion and other failures in 2380 si_emit_graphics_shader_pointers 2381- radeonsi: actually enable VBOs in user SGPRs 2382- radeonsi: don't adjust depth and stencil PS output locations 2383- radeonsi: rename DBG_NO_TGSI -> DBG_NO_NIR 2384- radeonsi: remove TGSI from comments 2385- radeonsi: rename si_shader_info -> si_shader_binary_info 2386- radeonsi: fork tgsi_shader_info and tgsi_tessctrl_info 2387- radeonsi: merge si_tessctrl_info into si_shader_info 2388- radeonsi: clean up si_shader_info 2389- radeonsi: rename si_compile_tgsi_main -> si_build_main_function 2390- radeonsi: rename si_shader_create -> si_create_shader_variant for 2391 clarity 2392- radeonsi: fold si_create_function into si_llvm_create_func 2393- radeonsi: remove always constant ballot_mask_bits from 2394 si_llvm_context_init 2395- radeonsi: move PS LLVM code into si_shader_llvm_ps.c 2396- radeonsi: separate code computing info for small primitive culling 2397- ac/cull: don't read Position.Z if it's not needed for culling 2398- radeonsi: make si_insert_input\_\* functions non-static 2399- radeonsi: move VS_STATE.LS_OUT_PATCH_SIZE a few bits higher to make 2400 space there 2401- radeonsi/gfx10: separate code for getting edgeflags from the 2402 gs_invocation_id VGPR 2403- radeonsi/gfx10: separate code for determining the number of vertices 2404 for NGG 2405- radeonsi: fix si_build_wrapper_function for compute-based primitive 2406 culling 2407- radeonsi: work around an LLVM crash when using 2408 llvm.amdgcn.icmp.i64.i1 2409- radeonsi: move si_insert_input\_\* functions 2410- radeonsi: move tessellation shader code into si_shader_llvm_tess.c 2411- radeonsi: remove llvm_type_is_64bit 2412- radeonsi: move geometry shader code into si_shader_llvm_gs.c 2413- radeonsi: move code for shader resources into 2414 si_shader_llvm_resources.c 2415- radeonsi: remove useless #includes 2416- radeonsi: merge si_compile_llvm and si_llvm_compile functions 2417- gallium: add st_context_iface::flush_resource to call FLUSH_VERTICES 2418- st/dri: do FLUSH_VERTICES before calling flush_resource 2419- Revert "radeonsi: unbind image before compute clear" 2420- radeonsi: clean up how internal compute dispatches are handled 2421- radeonsi: don't invoke decompression inside internal launch_grid 2422- radeonsi: fix doubles and int64 2423- radeonsi: turn an assertion into return in si_nir_store_output_tcs 2424- ac: add prefix bitcount functions 2425- ac: add ac_build_readlane without optimization barrier 2426- radeonsi/gfx10: update comments and remove invalid TODOs 2427- radeonsi/gfx10: correct VS PrimitiveID implementation for NGG 2428- radeonsi/gfx10: move s_sendmsg gs_alloc_req to the beginning of 2429 shaders 2430- radeonsi/gfx10: export primitives at the beginning of VS/TES 2431- radeonsi/gfx10: merge main and pos/param export IF blocks into one if 2432 possible 2433- radeonsi/gfx10: don't initialize VGPRs not used by NGG passthrough 2434- radeonsi/gfx10: move GE_PC_ALLOC setting to shader states 2435- radeonsi/gfx10: implement NGG culling for 4x wave32 subgroups 2436- ac: add helper ac_build_triangle_strip_indices_to_triangle 2437- radeonsi/gfx10: rewrite late alloc computation 2438- radeonsi/gfx10: enable GS fast launch for triangles and strips with 2439 NGG culling 2440- radeonsi: use ctx->ac. for types and integer constants 2441- radeonsi: move non-LLVM code out of si_shader_llvm.c 2442- radeonsi: move VS shader code into si_shader_llvm_vs.c 2443- radeonsi: move si_shader_llvm_build.c content into si_shader_llvm.c 2444- radeonsi: minor cleanup in si_shader_internal.h 2445- radeonsi: move si_nir_build_llvm into si_shader_llvm.c 2446- radeonsi: fold si_shader_context_set_ir into si_build_main_function 2447- radeonsi: move more LLVM functions into si_shader_llvm.c 2448- radeonsi: make si_compile_llvm return bool 2449- radeonsi: make si_compile_shader return bool 2450- radeonsi: change prototypes of si_is_multi_part_shader & 2451 si_is_merged_shader 2452- radeonsi: separate LLVM compilation from non-LLVM code 2453- util/simple_mtx: add a missing include to get ASSERTED 2454- gallium/util: add a cache of live shaders for shader CSO 2455 deduplication 2456- radeonsi: use the live shader cache 2457- radeonsi: restructure si_shader_cache_load_shader 2458- radeonsi: print shader cache stats with AMD_DEBUG=cache_stats 2459- radeonsi: expose shader cache stats to the HUD 2460- radeonsi: make screen available to shader part compilation 2461- radeonsi: fix a regression since the addition of si_shader_llvm_vs.c 2462- Revert "winsys/amdgpu: Close KMS handles for other DRM file 2463 descriptions" 2464- Revert "winsys/amdgpu: Re-use amdgpu_screen_winsys when possible" 2465- radeonsi: don't report that multi-plane formats are supported 2466- radeonsi: fix the DCC MSAA bug workaround 2467- radeonsi: don't wait for shader compilation to finish when destroying 2468 a context 2469 2470Marek Vasut (5): 2471 2472- etnaviv: Replace bitwise OR with logical OR 2473- etnaviv: tgsi: Fix gl_FrontFacing support 2474- etnaviv: Report correct number of vertex buffers 2475- etnaviv: Do not filter out PIPE_FORMAT_S8_UINT_Z24_UNORM on 2476 pre-HALTI2 2477- etnaviv: Destroy rsc->pending_ctx set in etna_resource_destroy() 2478 2479Mark Janes (3): 2480 2481- Revert "st/mesa: call nir_serialize only once per shader" 2482- Revert "st/mesa: keep serialized NIR instead of nir_shader in 2483 st_program" 2484- iris: separating out common perf code 2485 2486Markus Wick (3): 2487 2488- mapi/glapi: Generate sizeof() helpers instead of fixed sizes. 2489- mesa/glthread: Implement ARB_multi_bind. 2490- drirc: Enable glthread for dolphin/citra/yuzu. 2491 2492Martin Fuzzey (1): 2493 2494- etnaviv: update Android build files 2495 2496Mathias Fröhlich (1): 2497 2498- egl: Implement getImage/putImage on pbuffer swrast. 2499 2500Matt Turner (19): 2501 2502- intel/compiler: Use ARRAY_SIZE() 2503- intel/compiler: Extract GEN\_\* macros into separate file 2504- intel/compiler: Split has_64bit_types into float/int 2505- intel/compiler: Don't disassemble align1 3-src operands on Gen < 10 2506- intel/compiler: Limit compaction unit tests to specific gens 2507- intel/compiler: Add NF some more places 2508- intel/compiler: Add a INVALID_{,HW_}REG_TYPE macros 2509- intel/compiler: Split hw_type tables 2510- intel/compiler: Handle invalid inputs to brw_reg_type_to_*() 2511- intel/compiler: Handle invalid compacted immediates 2512- intel/compiler: Factor out brw_validate_instruction() 2513- intel/compiler: Validate some instruction word encodings 2514- intel/compiler: Add unit tests for new EU validation checks 2515- intel/compiler: Validate fuzzed instructions 2516- intel/compiler: Test compaction on Gen <= 12 2517- gitlab-ci: Skip ext_timer_query/time-elapsed 2518- intel/compiler: Move Gen4/5 rounding to visitor 2519- util: Explain BITSET_FOREACH_SET params 2520- util: Remove tmp argument from BITSET_FOREACH_SET macro 2521 2522Mauro Rossi (9): 2523 2524- android: aco: fix Lower to CSSA 2525- android: radeonsi: fix build error due to wrong u_format.csv file 2526 path 2527- android: util/format: fix include path list 2528- android: radeonsi: fix build after vl refactoring (v2) 2529- android: nir: add a load/store vectorization pass 2530- android: util: Add a mapping from VkFormat to PIPE_FORMAT. 2531- android: radv: fix vk_format_table.c generated source build 2532- android: radeonsi,ac: fix building error due to ac changes 2533- android: radv: build radv_shader_args.c 2534 2535Michel Dänzer (36): 2536 2537- gitlab-ci: Set arm job CCACHE_DIR properly 2538- gitlab-ci: Use separate arm64 build/test docker images 2539- gitlab-ci: Don't build libdrm for ARM 2540- gitlab-ci: Use ninja -j4 for building dEQP 2541- gitlab-ci: Move artifact preparation to separate script 2542- gitlab-ci: Share dEQP build process between x86 & ARM test image 2543 scripts 2544- gitlab-ci: Sort packages in debian-install.sh 2545- gitlab-ci: Run piglit tests with llvmpipe 2546- gitlab-ci: Use separate docker images for x86 build/test jobs 2547- gitlab-ci: Delete install/bin from artifacts as well 2548- gitlab-ci: Document that ci-templates refs must be in sync 2549- gitlab-ci: Use functional container job names 2550- gitlab-ci: Rename container install scripts to match job names 2551 (better) 2552- gitlab-ci: Organize images using new REPO_SUFFIX templates feature 2553- gitlab-ci: Directly use host-mapped directory for ccache 2554- gitlab-ci: Stop reporting piglit test results via JUnit 2555- gitlab-ci: Stop storing piglit test results as JUnit 2556- gitlab-ci: Put HTML summary in artifacts for failed piglit jobs 2557- gitlab-ci: Update to current ci-templates master 2558- gitlab-ci: Run piglit glslparser & quick_shader tests separately 2559- glsl/tests: Use splitlines() instead of strip() 2560- gitlab-ci: Use the common run policy for LAVA jobs as well again 2561- gitlab-ci: Overhaul job run policy 2562- gitlab-ci: Don't exclude any piglit quick_shader tests 2563- gitlab-ci: Test against LLVM / clang 9 on x86 2564- gitlab-ci: Stop using manual jobs for merge requests 2565- gitlab-ci: Set GIT_STRATEGY to none for the dummy job 2566- gitlab-ci: Use single if for manual job rules entry 2567- winsys/amdgpu: Keep a list of amdgpu_screen_winsyses in amdgpu_winsys 2568- winsys/amdgpu: Keep track of retrieved KMS handles using hash tables 2569- winsys/amdgpu: Only re-export KMS handles for different DRM FDs 2570- util: Add os_same_file_description helper 2571- winsys/amdgpu: Re-use amdgpu_screen_winsys when possible 2572- winsys/amdgpu: Close KMS handles for other DRM file descriptions 2573- winsys/amdgpu: Re-use amdgpu_screen_winsys when possible 2574- winsys/amdgpu: Close KMS handles for other DRM file descriptions 2575 2576Michel Zou (3): 2577 2578- Meson: Check for dladdr with MinGW 2579- disk_cache_get_function_timestamp: check for dladdr 2580- Meson: Add llvm>=9 modules 2581 2582Miguel Casas-Sanchez (1): 2583 2584- i965: Ensure that all 2101010 image imports can pass framebuffer 2585 completeness. 2586 2587Nanley Chery (3): 2588 2589- gallium/dri2: Fix creation of multi-planar modifier images 2590- gallium: Store the image format in winsys_handle 2591- iris: Fix import of multi-planar surfaces with modifiers 2592 2593Nataraj Deshpande (1): 2594 2595- egl/android: Restrict minimum triple buffering for android 2596 color_buffers 2597 2598Nathan Kidd (1): 2599 2600- llvmpipe: Check thread creation errors 2601 2602Neha Bhende (3): 2603 2604- st/mesa: release tgsi tokens for shader states 2605- svga: fix size of format_conversion_table[] 2606- svga: Use pipe_shader_state_from_tgsi to set shader state 2607 2608Neil Armstrong (3): 2609 2610- Add support for T820 CI Jobs 2611- ci: Remove T820 from CI temporarily 2612- gitlab-ci/lava: add pipeline information in the lava job name 2613 2614Neil Roberts (9): 2615 2616- nir/opcodes: Add a helper function to generate the comparison binops 2617- nir/opcodes: Add a helper function to generate reduce opcodes 2618- nir: Add a 16-bit bool type 2619- nir: Add a 8-bit bool type 2620- nir/lower_alu_to_scalar: Support lowering 8- and 16-bit reduce ops 2621- freedreno/ir3: Support 16-bit comparison instructions 2622- freedreno/ir3: Add implementation of nir_op_b16csel 2623- freedreno/ir3: Implement f2b16 and i2b16 2624- freedreno/ir3: Enabling lowering 16-bit flrp 2625 2626Paul Cercueil (5): 2627 2628- kmsro: Extend to include ingenic-drm 2629- u_vbuf: Mark vbufs incompatible if more were requested than HW 2630 supports 2631- u_vbuf: Only create driver CSO if no incompatible elements 2632- u_vbuf: Regard non-constant vbufs with non-instance elements as free 2633- u_vbuf: Return true in u_vbuf_get_caps if nb of vbufs is below 2634 minimum 2635 2636Paul Gofman (1): 2637 2638- state_tracker: Handle texture view min level in st_generate_mipmap() 2639 2640Paulo Zanoni (2): 2641 2642- intel/compiler: remove the operand restriction for src1 on GLK 2643- intel/compiler: fix nir_op_{i,u}*32 on ICL 2644 2645Peng Huang (1): 2646 2647- radeonsi: make si_fence_server_signal flush pipe without work 2648 2649Philipp Sieweck (1): 2650 2651- svga: check return value of define_query_vgpu{9,10} 2652 2653Pierre Moreau (4): 2654 2655- compiler/spirv: Fix uses of gnu struct = {} extension 2656- include/CL: Update OpenCL headers to latest 2657- clover: Use the dispatch table type from the OpenCL headers 2658- clover/meson: Define OpenCL header macros 2659 2660Pierre-Eric Pelloux-Prayer (54): 2661 2662- radeonsi: tell the shader disk cache what IR is used 2663- mesa: enable msaa in clear_with_quad if needed 2664- mesa: pass vao as a function paramter 2665- mesa: add EXT_dsa glVertexArray\* functions declarations 2666- mesa: rework \_mesa_lookup_vao_err to allow usage from EXT_dsa 2667- mesa: add vao/vbo lookup helper for EXT_dsa 2668- mesa: add EXT_dsa glVertexArray\* functions implementation 2669- mesa: add gl_vertex_array_object parameter to client state helpers 2670- mesa: add EXT_dsa glEnableVertexArrayEXT / glDisableVertexArrayEXT 2671- mesa: add EXT_dsa EnableVertexArrayAttribEXT / 2672 DisableVertexArrayAttribEXT 2673- mesa: extract helper function from \_mesa_GetPointerv 2674- mesa: add EXT_dsa glGetVertexArray\* 4 functions 2675- mesa: fix call to \_mesa_lookup_vao_err 2676- radeonsi: fix shader disk cache key 2677- radeonsi: enable mesa_glthread for GfxBench 2678- mesa: update features.txt to reflect EXT_dsa status 2679- mesa: add ARB_framebuffer_no_attachments named functions 2680- mesa: add ARB_vertex_attrib_64bit VertexArrayVertexAttribLOffsetEXT 2681- mesa: add ARB_clear_buffer_object named functions 2682- mesa: add ARB_gpu_shader_fp64 selector-less functions 2683- mesa: add ARB_instanced_arrays EXT_dsa function 2684- mesa: add ARB_texture_buffer_range glTextureBufferRangeEXT function 2685- mesa: implement ARB_texture_storage_multisample + EXT_dsa functions 2686- mesa: extend vertex_array_attrib_format to support EXT_dsa 2687- mesa: add ARB_vertex_attrib_binding glVertexArray\* functions 2688- mesa: add ARB_sparse_buffer NamedBufferPageCommitmentEXT function 2689- mesa: enable EXT_direct_state_access 2690- mesa: fix warning in 32 bits build 2691- radeonsi: implement sdma for GFX9 2692- radeonsi: display cs blit count for AMD_DEBUG=testdma 2693- radeonsi: use gfx9.surf_offset to compute texture offset 2694- radeonsi: fix multi plane buffers creation 2695- radeonsi: dcc dirty flag 2696- st/mesa: add a notify_before_flush callback param to flush 2697- st/dri: use st->flush callback to flush the backbuffer 2698- radeonsi: disable dcc for 2x MSAA surface and bpe < 4 2699- gallium: refuse to create buffers larger than UINT32_MAX 2700- radeon/vcn2: enable rate control for hevc encoding 2701- radeonsi: check ctx->sdma_cs before using it 2702- radeonsi: release saved resources in si_retile_dcc 2703- radeonsi: release saved resources in si_compute_expand_fmask 2704- radeonsi: release saved resources in si_compute_clear_render_target 2705- radeonsi: release saved resources in si_compute_copy_image 2706- radeonsi: release saved resources in si_compute_clear_12bytes_buffer 2707- radeonsi: release saved resources in si_compute_do_clear_or_copy 2708- radeonsi: fix fmask expand compute shader 2709- radeonsi: make sure fmask expand is done if needed 2710- radeonsi: unbind image before compute clear 2711- radeonsi: drop the negation from fmask_is_not_identity 2712- util: call bind_sampler_states before setting sampler_views 2713- radeonsi: move AMD_DEBUG tests to AMD_TEST 2714- docs: document AMD_DEBUG variable 2715- radeonsi: stop using the VM_ALWAYS_VALID flag 2716- radeonsi/ngg: add VGT_FLUSH when enabling fast launch 2717 2718Prodea Alexandru-Liviu (2): 2719 2720- Meson: Remove lib prefix from graw and osmesa when building with 2721 Mingw. Also remove version sufix from osmesa swrast on Windows. 2722- Appveyor: Quickly fix meson build. As this required use of Python 2723 3.8, mako module also had to be updated. 2724 2725Qiang Yu (3): 2726 2727- lima: sync lima_drm.h with kernel 2728- lima: create heap buffer with new interface if available 2729- lima: add noheap debug option 2730 2731Rafael Antognolli (23): 2732 2733- intel/isl: Add MOCS settings to isl_device. 2734- anv: Use mocs settings from isl_dev. 2735- iris: Use mocs from isl_dev. 2736- intel: Add workaround for stencil state. 2737- intel/genxml: Add 3DSTATE_CONSTANT_ALL packet. 2738- intel/aubinator: Decode 3DSTATE_CONSTANT_ALL. 2739- intel/blorp: Use 3DSTATE_CONSTANT_ALL to setup push constants. 2740- iris: Rework push constants emitting code. 2741- iris: Use 3DSTATE_CONSTANT_ALL when possible. 2742- anv: Move gen8+ push constant packet workaround. 2743- anv: Add get_push_range_address() helper. 2744- anv: Move code for emitting push constants into its own function. 2745- anv: Use 3DSTATE_CONSTANT_ALL when possible. 2746- iris: Add restriction to 3DSTATE_CONSTANT\_ packets. 2747- util/os_socket: Add socket related functions. 2748- vulkan/overlay: Add a control socket. 2749- vulkan/overlay: Add support for a control socket. 2750- vulkan/overlay: Add a command to start capturing data to a file. 2751- vulkan/overlay: Add basic overlay control script. 2752- vulkan/overlay: Update docs. 2753- iris: Implement WA for push constants. 2754- utils/os_socket: Define ssize_t on windows. 2755- intel: Load the driver even if I915_PARAM_REVISION is not found. 2756 2757Rhys Perry (131): 2758 2759- radv: adjust loop unrolling heuristics for int64 2760- aco: add Instruction::usesModifiers() and add more checks in the 2761 optimizer 2762- radv: fix radv_nir_get_max_workgroup_size when nir=NULL 2763- aco: use DPP instead of exec modification when lowering GFX10 2764 shuffles 2765- aco: fix shuffle with uniform operands 2766- nir/divergence: improve DA of shuffle 2767- aco: fix read_invocation with VGPR lane index 2768- aco: don't propagate vgprs into v_readlane/v_writelane 2769- aco: combine read_invocation and shuffle implementations 2770- radv: enable FP16/FP64 denormals earlier and only for LLVM 2771- aco: don't combine literals into v_cndmask_b32/v_subb/v_addc 2772- aco: fix 64-bit fsign with 0 2773- aco: implement VK_KHR_shader_float_controls 2774- aco: refactor reduction lowering helpers 2775- aco: implement 64-bit integer reductions 2776- radv/aco: enable VK_KHR_shader_subgroup_extended_types 2777- nir: make nir_variable::{num_members,num_state_slots} a uint16_t 2778- nir: add nir_variable::index and nir_index_vars 2779- nir/large_constants: use nir_index_vars and nir_variable::index 2780- docs: update features.txt for RADV 2781- aco: improve waitcnt insertion around loops 2782- aco: fix copy+paste error 2783- aco: fix waitcnts for barriers at block ends 2784- nir: add nir_num_variable_modes and nir_var_mem_push_const 2785- radv: set alignment for load_ssbo/store_ssbo in meta shaders 2786- nir: add a load/store vectorization pass 2787- nir: add load/store vectorizer tests 2788- aco: enable load/store vectorizer 2789- aco: allow constant offsets for global/scratch instructions on GFX10 2790- aco: set dlc/glc correctly for image loads 2791- aco: propagate p_wqm on an image_sample's coordinate p_create_vector 2792- aco: fix i2i64 2793- aco: fix incorrect cast in parse_wait_instr() 2794- aco: add v_nop inbetween exec write and VMEM/DS/FLAT 2795- aco: improve WAR hazard workaround with >64bit stores 2796- aco: fix GFX10 opcodes for some global/flat atomics 2797- aco: fix assembly of FLAT/GLOBAL atomics 2798- aco: fix SADDR with FLAT on GFX10 2799- aco: don't enable store_global for helper invocations 2800- aco: improve FLAT/GLOBAL scheduling 2801- aco: implement global atomics 2802- ac/llvm: fix pointer type for global atomics 2803- ac/llvm: improve sync scope for global atomics 2804- radv: set writes_memory for global memory stores/atomics 2805- aco: validate the CFG 2806- aco: handle loop exit and IF merge phis with break/discard 2807- aco: fix block_kind_discard s_andn2 definition to exec 2808- nir/lower_io_to_vector: don't create arrays when not needed 2809- nir/load_store_vectorize: fix combining stores with aliasing loads 2810 between 2811- aco/wave32: fix comparison optimizations 2812- aco: improve jump threading with wave32 2813- aco: fix vgpr alloc granule with wave32 2814- aco: limit register usage for large work groups 2815- aco: set vm for pos0 exports on GFX10 2816- aco: fix imageSize()/textureSize() with large buffers on GFX8 2817- aco: fix uninitialized data in the binary 2818- aco: handle VOP3 modifiers when combining a constant comparison's NaN 2819 test 2820- aco: handle omod successors with the constant in the first operand 2821- aco: check usesModifiers() when identifying a neg/abs 2822- aco: better handle neg/abs of sgprs 2823- aco: set exec_potentially_empty for demotes 2824- aco: don't DCE atomics with return values 2825- aco: disable add combining for ds_swizzle_b32 2826- aco: check if multiplication/clamp is live when applying output 2827 modifier 2828- nir/divergence: handle load_primitive_id in GS 2829- nir/lower_gs_intrinsics: add option for per-stream counts 2830- aco: update IR validator 2831- aco: apply literals to split mads 2832- aco: combine two sgprs into a VALU if they're the same 2833- aco: improve can_use_VOP3() 2834- aco: rewrite literal combining 2835- aco: rewrite apply_sgprs() 2836- aco: add check_vop3_operands() 2837- aco: be more careful with literals in combine_salu_{n2,lshl_add} 2838- aco: follow through temporary when merging tests into constant 2839 comparisons 2840- aco: allow applying two sgprs to an instruction 2841- aco: allow an extra SGPR with multiple uses to be applied to VOP3 2842- aco: take advantage of GFX10's constant bus limit and VOP3 literals 2843- aco: improve creation of v_madmk_f32/v_madak_f32 2844- aco: fix clamp optimization 2845- aco: improve clamp optimization 2846- aco: add min(-max(), ) and max(-min(), ) optimization 2847- aco: don't move literal to reg when making an instruction VOP3 on 2848 GFX10 2849- aco: allow input modifiers on v_cndmask_b32 2850- aco: replace extract_vector with copies 2851- aco: improve readfirstlane after uniform LDS loads 2852- aco: add integer min/max to can_swap_operands 2853- nir/sink,nir/move: move/sink load_per_vertex_input 2854- nir/sink,nir/move: move/sink nir_op_mov 2855- nir/algebraic: a & ~(a >> 31) -> imax(a, 0) 2856- aco: fix stack buffer overflow in apply_sgprs() 2857- aco: fix fall-through test in try_remove_simple_block() with 2858 back-edges 2859- aco: fix operand kill flags when a temporary is used more than once 2860- aco: fix off-by-one error when initializing sgpr_live_in 2861- radv: move gs copy shader creation before other variants 2862- aco: improve support for s_sendmsg 2863- radv/aco,aco: implement GS on GFX9+ 2864- aco: implement GS on GFX7-8 2865- radv/aco: allow ACO for GS 2866- aco: explicitly mark end blocks for exports 2867- aco: remove needs_instance_id 2868- aco: implement GS copy shaders 2869- radv/aco: use ACO for GS copy shaders 2870- aco: use nir_move_copies 2871- aco: fix WaR check for >64-bit FLAT/GLOBAL instructions 2872- aco: fix operand to scc when selecting SGPR ufind_msb/ifind_msb 2873- aco: always add sgprs to sgpr_ids when choosing literals 2874- aco: fix literal application with v_cndmask_b32/v_addc_co_u32/etc 2875- amd/common,radv: move vertex_format_table to ac_shader_util.{h,c} 2876- aco: rework vertex fetching a bit 2877- aco: skip unused channels at the start when fetching vertices 2878- aco: handle unaligned vertex fetch on GFX10 2879- aco: value-number MUBUF instructions 2880- aco: use MUBUF in some situations instead of splitting vertex fetches 2881- aco: fix rebase error from GS copy shader support 2882- aco: ensure predecessors' p_logical_end is in WQM when a p_phi is in 2883 WQM 2884- aco: run p_wqm instructions in WQM 2885- nir/algebraic: add patterns for a >> #b << #b 2886- nir/algebraic: add some half packing optimizations 2887- aco: fix target calculation when vgpr spilling introduces sgpr 2888 spilling 2889- aco: don't consider loop header blocks branch blocks in 2890 add_coupling_code 2891- aco: don't update demand in add_coupling_code() for loop headers 2892- aco: only create parallelcopy to restore exec at loop exit if needed 2893- aco: don't always add logical edges from continue_break blocks to 2894 headers 2895- aco: error when block has no logical preds but VGPRs are live at the 2896 start 2897- aco: set exec_potentially_empty after continues/breaks in nested IFs 2898- aco: improve assertion at the end of spiller 2899- aco: fill reg_demand with sensible information in add_coupling_code() 2900- aco: parallelcopy exec mask before s_wqm 2901- aco: fix exec mask consistency issues 2902- aco: fix gfx10_wave64_bpermute 2903 2904Ricardo Garcia (1): 2905 2906- anv: Unify GetDeviceQueue and GetDeviceQueue2 2907 2908Rob Clark (89): 2909 2910- freedreno/ir3: split pre-coloring to it's own function 2911- freedreno/ir3: use SSA flag on dest register too 2912- freedreno/ir3: ir3_print tweaks 2913- freedreno/ir3/ra: move regs_count==0 check 2914- freedreno/ir3/ra: remove ir print after livein/out 2915- freedreno/ir3: remove obsolete comment 2916- freedreno/a3xx: fix SP_FS_MRT_REG.HALF_PRECISION 2917- freedreno/a4xx: fix SP_FS_MRT_REG.HALF_PRECISION 2918- freedreno/ir3: sync disasm changes from envytools 2919- freedreno/ir3: also track # of nops for shader-db 2920- freedreno: fix eglDupNativeFenceFD error 2921- freedreno/ir3: fix valgrind complaint with STLW 2922- freedreno/ir3: remove half-precision output 2923- freedreno/ir3: rename fanin/fanout to collect/split 2924- freedreno/ir3: remove impossible condition 2925- freedreno/ir3: add input/output iterators 2926- freedreno/ir3: show input/output wrmask's in disasm 2927- freedreno/ir3: helper to print ir if debug enabled 2928- freedreno/ir3: remove first-vertex sysval 2929- freedreno/ir3: simplify creating sysval inputs 2930- freedreno/ir3: re-work shader inputs/outputs 2931- freedreno/ir3: only tex instructions have wrmask 2932- freedreno/ir3: fix gpu hang with pre-fs-tex-fetch 2933- freedreno/ir3: legalize cleanups 2934- freedreno/ir3: remove unused parameter 2935- freedreno/perfcntrs: small cleanup 2936- freedreno/perfcntrs: remove gallium dependencies 2937- freedreno/perfcntrs: move to shared location 2938- freedreno/perfcntrs: add accessor to get per-gen tables 2939- freedreno/perfctrs/a2xx: move CP to be first group 2940- freedreno/perfcntrs/a6xx: remove RBBM counters 2941- freedreno/perfcntrs: add fdperf 2942- freedreno/perfctrs/fdperf: periodically restore counters 2943- gitlab-ci: update deqp build so we can generate xml 2944- gitlab-ci/deqp: preserve full list of unexpected results 2945- gitlab-ci/deqp: preserve caselists for blocks with fails 2946- gitlab-ci/deqp: detect and report flakes 2947- gitlab-ci: bump arm test container 2948- gitlab-ci/deqp: generate xml results for fails/flakes 2949- gitlab-ci/deqp: generate junit results 2950- gitlab-ci/freedreno/a6xx: remove most of the flakes 2951- freedreno: use rsc->slice accessor everywhere 2952- freedreno: switch to layout helper 2953- gitlab-ci: disable junit results for deqp 2954- freedreno/ir3: remove store_output lowered to store_shared_ir3 2955- freedreno/ir3: fix neverball assert in case of unused VS inputs 2956- nir/lower_clip: Fix incorrect driver loc for clipdist outputs 2957- freedreno/fdperf: use drmOpen() 2958- freedreno/a6xx: disable LRZ when blending 2959- freedreno/a5xx+a6xx: split LRZ layout to per-gen 2960- freedreno/a6xx: fix LRZ layout 2961- freedreno/a6xx: fix LRZ logic 2962- freedreno/a6xx: enable LRZ by default 2963- spirv: add OpLifetime\* 2964- freedreno/ir3: add last-baryf shaderdb stat 2965- freedreno/ir3: add scheduler traces 2966- freedreno/ir3: add iterator macros 2967- freedreno/a6xx: fix OUT_REG() vs growable cmdstream 2968- nir+vtn: vec8+vec16 support 2969- freedreno/ir3: fix flat shading again 2970- nir: assert that nir_lower_tex runs after lowering derefs 2971- mesa/st: lower samplers before nir_lower_tex 2972- freedreno/ir3: rename instructions 2973- gitlab-ci: fix missing caselist.css/xsl 2974- freedreno/a6xx: limit scratch/debug markers to debug builds 2975- freedreno/a6xx: cleanup rasterizer state 2976- freedreno/a6xx: separate rast stateobj for prim restart 2977- freedreno/a6xx: drop a few more per-draw registers 2978- freedreno/a6xx: move dynamic program state to streaming stateobj 2979- freedreno/a6xx: add PROG_FB_RAST stateobj 2980- freedreno/drm: fix invalid-cmdstream-size with older kernels 2981- freedreno: use PIPE_CAP_RGB_OVERRIDE_DST_ALPHA_BLEND 2982- mesa/st: random whitespace cleanup 2983- freedreno/a6xx: remove special handling based on MRT format 2984- freedreno/a6xx: convert blend state to stateobj 2985- freedreno: extract vsc pipe bo from GMEM state 2986- freedreno: consolidate GMEM state 2987- freedreno: constify fd_tile 2988- freedreno: constify fd_vsc_pipe 2989- freedreno/a6xx: constify gmem state 2990- freedreno/a5xx: constify gmem state 2991- freedreno/a4xx: constify gmem state 2992- freedreno/a3xx: constify gmem state 2993- freedreno/a2xx: constify gmem state 2994- freedreno: get GMEM state from batch 2995- freedreno: add gmem state cache 2996- freedreno: add gmem_lock 2997- freedreno: remove flush-queue 2998- freedreno: allow ctx->batch to be NULL 2999 3000Robert Foss (5): 3001 3002- nir: Build nir_lower_point_size.c in libmesa_nir 3003- android: Add panfrost support to build scripts 3004- android: Fix u_format_table.c being generated twice 3005- panfrost: Prefix schedule_program to prevent collision 3006- android: Fix whitespace issue 3007 3008Rohan Garg (1): 3009 3010- gitlab-ci: Use lavacli from packages 3011 3012Roland Scheidegger (3): 3013 3014- gallium/scons: fix graw_gdi build 3015- util/atomic: Fix p_atomic_add for unlocked and msvc paths 3016- winsys/svga: use new ioctl for logging 3017 3018Roman Stratiienko (2): 3019 3020- Android: Fix build issue without LLVM 3021- panfrost: Fix Android build 3022 3023Ross Zwisler (1): 3024 3025- intel: limit shader geometry on BDW GT1 3026 3027Sagar Ghuge (1): 3028 3029- intel/compiler: Clear accumulator register before EOT 3030 3031Samuel Iglesias Gonsálvez (1): 3032 3033- main: fix coverity error in \_mesa_program_resource_find_name() 3034 3035Samuel Pitoiset (202): 3036 3037- radv: declare NGG scratch for VS or TES and only on GFX10 3038- radv: fix compute pipeline keys when optimizations are disabled 3039- docs: document all RADV environment variables 3040- radv: add a note about perftest/debug options 3041- radv: fix 32-bit compiler warnings 3042- nir: fix packing of nir_variable 3043- radv/gfx10: enable wave32 for compute based on shader's wavesize 3044- radv: hardcode the number of waves for the GFX6 LS-HS bug 3045- radv: determine shaders wavesize at pipeline level 3046- radv: rely on shader's wavesize when computing NGG info 3047- radv: implement VK_EXT_subgroup_size_control 3048- radv/gfx10: fix primitive indices orientation for NGG GS 3049- ac: handle pointer types to LDS in ac_get_elem_bits() 3050- gitlab-ci: build a specific libdrm version for ARM64 3051- gitlab-ci: build RADV on ARM64 3052- ac: fix build with recent LLVM 3053- radv: remove useless RADV_DEBUG=unsafemath debug option 3054- radv: make sure to not clear the ds attachment after resolves 3055- ac: add radeon_info::has_l2_uncached 3056- radv: implement VK_AMD_device_coherent_memory 3057- spirv: fix lowering of OpGroupNonUniformAllEqual 3058- ac: remove useless cast in ac_build_set_inactive() 3059- ac: add 8-bit and 16-bit supports to ac_build_shuffle() 3060- ac: add 8-bit and 16-bit supports to ac_build_readlane() 3061- ac: add 8-bit and 16-bit supports to ac_build_set_inactive() 3062- ac: add 8-bit and 16-bit supports to ac_build_dpp() 3063- ac: add 8-bit and 16-bit supports to ac_build_swizzle() 3064- ac: add 8-bit and 16-bit supports to get_reduction_identity() 3065- ac: add 8-bit and 16-bit supports to ac_build_wwm() 3066- ac: add 8-bit and 16-bit supports to ac_build_optimization_barrier() 3067- ac: add 16-bit float support to ac_build_alu_op() 3068- radv: advertise VK_KHR_shader_subgroup_extended_types on GFX8-GFX9 3069- radv: enable VK_KHR_shader_subgroup_extended_types on GFX6-GFX7 3070- docs: add missing new features for RADV 3071- pipe-loader: check that the pointer to driconf_xml isn't NULL 3072- gitlab-ci: move building piglit into a separate script 3073- gitlab-ci: fix ldd check for Vulkan drivers 3074- gitlab-ci: add a job that only build things needed for testing 3075- gitlab-ci: do not build with debugoptimized for meson-main 3076- gitlab-ci: build swr in meson-main 3077- gitlab-ci: build GLVND in meson-clang 3078- gitlab-ci: remove now useless meson-swr-glvnd build job 3079- gitlab-ci: reduce the number of scons build 3080- radv: disable subgroup shuffle operations on GFX10 3081- ac/llvm: fix the local invocation index for wave32 3082- meson: only build imgui when needed 3083- radv: set the image view aspect mask during subpass transitions 3084- radv: set the image view aspect mask before resolves 3085- radv: rework creation of decompress/resummarize meta pipelines 3086- radv: create decompress pipelines for separate depth/stencil layouts 3087- radv: select the depth decompress path based on the aspect mask 3088- ac/llvm: fix warning in ac_build_canonicalize() 3089- radv: fix reporting subgroup size with 3090 VK_KHR_pipeline_executable_properties 3091- radv: fix enabling sample shading with SampleID/SamplePosition 3092- radv/gfx10: fix implementation of exclusive scans 3093- ac: add 8-bit and 16-bit supports to ac_build_permlane16() 3094- radv: enable VK_KHR_shader_subgroup_extended_types on GFX10 3095- ac/llvm: convert src operands to pointers if necessary 3096- radv: add more constants to avoid using magic numbers 3097- radv,ac/nir: lower deref operations for shared memory 3098- aco: drop useless lowering of deref operations for shared memory 3099- ac/llvm: fix atomic var operations if source isn't a deref 3100- radv: remove dead shader input/output variables 3101- radv: simplify a check in radv_fixup_vertex_input_fetches() 3102- radv/gfx10: fix the vertex order for triangle strips emitted by a GS 3103- gitlab-ci: rename build-deqp.sh to build-deqp-gl.sh 3104- gitlab-ci: add a gl suffix to the x86 test image and all test jobs 3105- gitlab-ci: add a new job that builds a base test image for VK 3106- gitlab-ci: build cts_runner in the x86 test image for VK 3107- gitlab-ci: build dEQP VK 1.1.6 in the x86 test image for VK 3108- gitlab-ci: add a new base test job for VK 3109- gitlab-ci: allow to run dEQP Vulkan with DEQP_VER 3110- gitlab-ci: configure the Vulkan ICD export with VK_DRIVER 3111- gitlab-ci: build RADV in meson-testing 3112- gitlab-ci: add a job that runs Vulkan CTS with RADV conditionally 3113- radv: do not use VK_TRUE/VK_FALSE 3114- radv: move emission of two PA_SC\_\* registers to the pipeline CS 3115- radv: fix possibly wrong PA_SC_AA_CONFIG value for conservative rast 3116- radv: synchronize after performing a separate depth/stencil fast 3117 clears 3118- radv: do not init HTILE as compressed state when dst layout allows it 3119- radv: initialize HTILE for separate depth/stencil aspects 3120- radv: implement VK_KHR_separate_depth_stencil_layouts 3121- gitlab-ci: set RADV_DEBUG=checkir for RADV test jobs 3122- ac/nir: fix out-of-bound access when loading constants from global 3123- radv: enable SpvCapabilityImageMSArray 3124- radv: handle unaligned vertex fetches on GFX6/GFX10 3125- radv/gfx10: fix ngg_get_ordered_id 3126- radv/gfx10: fix the out-of-bounds check for vertex descriptors 3127- ac: declare an enum for the OOB select field on GFX10 3128- radv: init a default multisample state for the resolve FS path 3129- radv: ignore pMultisampleState if rasterization is disabled 3130- radv: ignore pTessellationState if the pipeline doesn't use tess 3131- radv: ignore pDepthStencilState if rasterization is disabled 3132- radv: tidy up radv_pipeline_init_blend_state() 3133- radv: ignore pColorBlendState if rasterization is disabled 3134- radv: rely on pipeline layout when creating push descriptors with 3135 template 3136- radv: return the correct pitch for linear mipmaps on GFX10 3137- radv: record number of color/depth samples for each subpass 3138- radv: implement VK_AMD_mixed_attachment_samples 3139- ac/surface: use uint16_t for mipmap level pitches 3140- radv: do not fill keys from fragment shader twice 3141- spirv: add SpvCapabilityImageReadWriteLodAMD 3142- spirv,nir: add new lod parameter to image_{load,store} intrinsics 3143- amd/llvm: handle nir_intrinsic_image_deref_{load,store} with lod 3144- aco: handle nir_intrinsic_image_deref_{load,store} with lod 3145- radv: advertise VK_AMD_shader_image_load_store_lod 3146- radv/gfx10: disable vertex grouping 3147- radv/gfx10: determine if a pipeline is eligible for NGG passthrough 3148- radv/gfx10: do not declare LDS for NGG if useless 3149- radv/gfx10: add support for NGG passthrough mode 3150- radv/gfx10: improve performance for TES using PrimID but not 3151 exporting it 3152- radv: only use VkSamplerCreateInfo::compareOp if enabled 3153- radv/gfx10: enable all CUs if NGG is never used 3154- radv/gfx10: simplify some duplicated NGG GS code 3155- vulkan/overlay: Fix for Vulkan 1.2 3156- radv: update VK_EXT_descriptor_indexing for Vulkan 1.2 3157- radv: update VK_EXT_host_query_reset for Vulkan 1.2 3158- radv: update VK_EXT_sampler_filter_minmax for Vulkan 1.2 3159- radv: update VK_EXT_scalar_block_layout for Vulkan 1.2 3160- radv: update VK_KHR_8bit_storage for Vulkan 1.2 3161- radv: update VK_KHR_buffer_device_address for Vulkan 1.2 3162- radv: update VK_KHR_create_renderpass2 for Vulkan 1.2 3163- radv: update VK_KHR_depth_stencil_resolve for Vulkan 1.2 3164- radv: update VK_KHR_draw_indirect_count for Vulkan 1.2 3165- radv: update VK_KHR_driver_properties for Vulkan 1.2 3166- radv: update VK_KHR_image_format_list for Vulkan 1.2 3167- radv: update VK_KHR_imageless_framebuffer for Vulkan 1.2 3168- radv: update VK_KHR_shader_atomic_int64 for Vulkan 1.2 3169- radv: update VK_KHR_shader_float16_int8 for Vulkan 1.2 3170- radv: update VK_KHR_shader_float_controls for Vulkan 1.2 3171- radv: update VK_KHR_shader_subgroup_extended_types for Vulkan 1.2 3172- radv: update VK_KHR_uniform_buffer_standard_layout for Vulkan 1.2 3173- radv: update VK_KHR_timeline_semaphore for Vulkan 1.2 3174- radv: implement Vulkan 1.1 features and properties 3175- radv: implement Vulkan 1.2 features and properties 3176- radv: enable Vulkan 1.2 3177- aco: fix emitting SMEM instructions with no operands on GFX6-GFX7 3178- aco: do not select 96-bit/128-bit variants for ds_read/ds_write on 3179 GFX6 3180- aco: do not combine additions of DS instructions on GFX6 3181- aco: implement stream output with vec3 on GFX6 3182- aco: fix emitting slc for MUBUF instructions on GFX6-GFX7 3183- aco: print assembly with CLRXdisasm for GFX6-GFX7 if found on the 3184 system 3185- aco: fix constant folding of SMRD instructions on GFX6 3186- aco: do not use the vec3 variant for stores on GFX6 3187- aco: do not use the vec3 variant for loads on GFX6 3188- aco: add new addr64 bit to MUBUF instructions on GFX6-GFX7 3189- aco: implement nir_intrinsic_load_barycentric_at_sample on GFX6 3190- radv: fix double free corruption in radv_alloc_memory() 3191- radv: add explicit external subpass dependencies to meta operations 3192- radv: handle missing implicit subpass dependencies 3193- spirv: add SpvCapabilityFragmentMaskAMD 3194- nir: add two new texture ops for multisample fragment color/mask 3195 fetches 3196- spirv: add support for SpvOpFragment{Mask}FetchAMD operations 3197- nir/lower_input_attachments: lower nir_texop_fragment_{mask}_fetch 3198- ac/nir: add support for nir_texop_fragment_{mask}_fetch 3199- aco: add support for nir_texop_fragment_{mask}_fetch 3200- radv: advertise VK_AMD_shader_fragment_mask 3201- aco: fix printing assembly with CLRXdisasm on GFX6 3202- aco: fix wrong IR in nir_intrinsic_load_barycentric_at_sample 3203- aco: implement nir_intrinsic_store_global on GFX6 3204- aco: implement nir_intrinsic_load_global on GFX6 3205- aco: implement nir_intrinsic_global_atomic\_\* on GFX6 3206- aco: implement 64-bit nir_op_ftrunc on GFX6 3207- aco: implement 64-bit nir_op_fceil on GFX6 3208- aco: implement 64-bit nir_op_fround_even on GFX6 3209- aco: implement 64-bit nir_op_ffloor on GFX6 3210- aco: implement nir_op_f2i64/nir_op_f2u64 on GFX6 3211- ac/llvm: fix missing casts in ac_build_readlane() 3212- aco: combine MRTZ (depth, stencil, sample mask) exports 3213- aco: fix a hardware bug for MRTZ exports on GFX6 3214- aco: fix a hazard with v_interp\_\* and v_{read,readfirst}lane\_\* on 3215 GFX6 3216- aco: copy the literal offset of SMEM instructions to a temporary 3217- radv: enable ACO support for GFX6 3218- radv: print NIR shaders after lowering FS inputs/outputs 3219- radv: do not allow sparse resources with multi-planar formats 3220- radv: enable VK_AMD_shader_fragment_mask on GFX6-GFX7 3221- compiler: add a new explicit interpolation mode 3222- spirv: add support for SpvDecorationExplicitInterpAMD 3223- compiler: add PERSP to the existing barycentric system values 3224- compiler: add new SYSTEM_VALUE_BARYCENTRIC\_\* 3225- spirv: add support for SpvBuiltInBaryCoord\* 3226- nir: add nir_intrinsic_load_barycentric_model 3227- nir: lower SYSTEM_VALUE_BARYCENTRIC\_\* to nir_load_barycentric() 3228- nir: add nir_intrinsic_interp_deref_at_vertex 3229- nir: lower interp_deref_at_vertex to load_input_vertex 3230- spirv: implement SPV_AMD_shader_explicit_vertex_parameter 3231- ac/llvm: implement VK_AMD_shader_explicit_vertex_parameter 3232- aco: implement VK_AMD_shader_explicit_vertex_parameter 3233- radv: gather which input PS variables use an explicit interpolation 3234 mode 3235- radv: implement VK_AMD_shader_explicit_vertex_parameter 3236- radv: bump conformance version to 1.2.0.0 3237- radv: remove the non conformant VK implementation warning on GFX10 3238- aco: fix VS input loads with MUBUF on GFX6 3239- radv/gfx10: add a separate flag for creating a GDS OA buffer 3240- radv/gfx10: implement NGG GS queries 3241- radv/gfx10: re-enable NGG GS 3242- radv: refactor physical device properties 3243- aco: fix MUBUF VS input loads when expanding vec3 to vec4 on GFX6 3244- aco: do not use ds_{read,write}2 on GFX6 3245- aco: fix waiting for scalar stores before "writing back" data on 3246 GFX8-GFX9 3247- aco: fix creating v_madak if v_mad_f32 has two sgpr literals 3248- nir: do not use De Morgan's Law rules for flt and fge 3249 3250Samuel Thibault (3): 3251 3252- loader: #define PATH_MAX when undefined (eg. Hurd) 3253- util: Do not fail to build on unknown pthread_setname_np 3254- meson: Do not require libdrm for DRI2 on hurd 3255 3256Satyajit Sahu (1): 3257 3258- radeon/vcn: Handle crop parameters for encoder 3259 3260Sonny Jiang (1): 3261 3262- radeonsi: use compute shader for clear 12-byte buffer 3263 3264Stephan Gerhold (1): 3265 3266- kmsro: Add "mcde" entry point 3267 3268Tapani Pälli (33): 3269 3270- nir: fix couple of compile warnings 3271- util/android: fix android build errors 3272- Revert "egl: implement new functions from 3273 EGL_EXT_image_flush_external" 3274- Revert "egl: handle EGL_IMAGE_EXTERNAL_FLUSH_EXT" 3275- Revert "st/dri: add support for EGL_EXT_image_flush_external" 3276- Revert "st/dri: assume external consumers of back buffers can write 3277 to the buffers" 3278- Revert "dri_interface: add interface for 3279 EGL_EXT_image_flush_external" 3280- mesa: allow bit queries for EXT_disjoint_timer_query 3281- Revert "mesa: allow bit queries for EXT_disjoint_timer_query" 3282- mesa: allow bit queries for EXT_disjoint_timer_query 3283- gitlab-ci: update Piglit commit, update skips 3284- mapi: add GetInteger64vEXT with EXT_disjoint_timer_query 3285- glsl: handle max uniform limits with lower_const_arrays_to_uniforms 3286- gitlab-ci: bump piglit checkout commit 3287- glsl: additional interface redeclaration check for SSO programs 3288- intel/compiler: add newline to limit_dispatch_width message 3289- intel/compiler: force simd8 when dual src blending on gen8 3290- dri: add \__DRI_IMAGE_FORMAT_SXRGB8 3291- i965: expose MESA_FORMAT_B8G8R8X8_SRGB visual 3292- mesa/st/i965: add a ProgramResourceHash for quicker resource lookup 3293- mesa: create program resource hash in a single place 3294- iris: set depth stall enabled when depth flush enabled on gen12 3295- anv: set depth stall enabled when depth flush enabled on gen12 3296- isl/gen12: add reminder comment about missing WA with 3D surfaces 3297- anv: fix assert in GetImageDrmFormatModifierPropertiesEXT 3298- anv: add assert for isl_mod_info in choose_isl_tiling_flags 3299- anv: initialize clear_color_is_zero_one 3300- egl/android: fix buffer_count for applications setting max count 3301- anv/android: setup gralloc1 usage from gralloc0 usage manually 3302- anv/android: make format_supported_with_usage static 3303- intel/vec4: fix valgrind errors with vf_values array 3304- glsl: fix a memory leak with resource_set 3305- iris: fix aux buf map failure in 32bits app on Android 3306 3307Thomas Hellstrom (4): 3308 3309- winsys/svga: Enable transhuge pages for buffer objects 3310- svga: Avoid discard DMA uploads 3311- gallium/util: Increase the debug_flush map depth 3312- svga: Fix banded DMA upload 3313 3314Thong Thai (8): 3315 3316- st/va: Convert interlaced NV12 to progressive 3317- util/format: Add the P010 format used for 10-bit videos 3318- gallium: Add PIPE_FORMAT_P010 support 3319- st/va: Add support for P010, used for 10-bit videos 3320- radeon: Use P010 for decoding of 10-bit videos 3321- r600: Remove HEVC related code since HEVC is not supported 3322- mesa: Prevent \_MaxLevel from being less than zero 3323- Revert "st/va: Convert interlaced NV12 to progressive" 3324 3325Timothy Arceri (66): 3326 3327- glsl: just use NIR to lower outputs when driver can't read outputs 3328- glsl: disable lower_fragdata_array() for NIR drivers 3329- mesa: add ARB_shading_language_include stubs 3330- glsl: add infrastructure for ARB_shading_language_include 3331- mesa: add ARB_shading_language_include infrastructure to 3332 gl_shared_state 3333- mesa: add helper to validate tokenise shader include path 3334- mesa: add \_mesa_lookup_shader_include() helper 3335- mesa: add copy_string() helper 3336- mesa: add glNamedStringARB() support 3337- mesa: implement glGetNamedStringARB() 3338- mesa: make error checking optional in \_mesa_lookup_shader_include() 3339- mesa: implement glIsNamedStringARB() 3340- mesa: implement glGetNamedStringivARB() 3341- mesa: split \_mesa_lookup_shader_include() in two 3342- mesa: implement glDeleteNamedStringARB() 3343- glsl: add ARB_shading_language_include support to #line 3344- glsl: pass gl_context to glcpp_parser_create() 3345- glsl: add preprocessor #include support 3346- glsl: error if #include used while extension is disabled 3347- glsl: add can_skip_compile() helper 3348- glsl: delay compilation skip if shader contains an include 3349- mesa: add support cursor support for relative path shader includes 3350- mesa: add shader include lookup support for relative paths 3351- mesa: implement glCompileShaderIncludeARB() 3352- mesa: enable ARB_shading_language_include 3353- gitlab-ci: bump piglit checkout commit 3354- gitlab-ci: update for arb_shading_language_include 3355- compiler: move build definition of pp_standalone_scaffolding.c 3356- radv: add some infrastructure for fresh forks for each secure compile 3357- radv: add a secure_compile_open_fifo_fds() helper 3358- radv: create a fresh fork for each pipeline compile 3359- docs: update source code repository documentation 3360- glsl: move calculate_array_size_and_stride() to link_uniforms.cpp 3361- glsl: don't set uniform block as used when its not 3362- glsl: make use of active_shader_mask when building resource list 3363- glsl/nir: iterate the system values list when adding varyings 3364- docs: remove mailing list as way of submitting patches 3365- glsl: move nir_remap_dual_slot_attributes() call out of glsl_to_nir() 3366- glsl: copy the how_declared field when converting to nir 3367- nir: add some fields to nir_variable_data 3368- glsl: copy the new data fields when converting to nir 3369- glsl: add support for named varyings in 3370 nir_build_program_resource_list() 3371- glsl: add subroutine support to nir_build_program_resource_list() 3372- st/glsl_to_nir: call gl_nir_lower_buffers() a little later 3373- st/glsl_to_nir: use nir based program resource list builder 3374- st/glsl_to_nir: fix SSO validation regression 3375- glsl: rename gl_nir_link() to gl_nir_link_spirv() 3376- glsl: add gl_nir_link_check_atomic_counter_resources() 3377- glsl: add new gl_nir_link_glsl() helper 3378- glsl: reorder link_and_validate_uniforms() calls 3379- mesa: add new UseNIRGLSLLinker constant 3380- glsl: use nir linker to link atomics 3381- glsl: add check_image_resources() for the nir linker 3382- glsl: use nir version of check_image_resources() for nir linker 3383- glsl: move check_subroutine_resources() into the shared util code 3384- glsl: call check_subroutine_resources() from the nir linker 3385- glsl: move uniform resource checks into the common linker code 3386- glsl: call uniform resource checks from the nir linker 3387- glsl: move calculate_subroutine_compat() to shared linker code 3388- glsl: call calculate_subroutine_compat() from the nir linker 3389- glsl: fix potential bug in nir uniform linker 3390- glsl: remove bogus assert in nir uniform linking 3391- glsl: fix check for matrices in blocks when using nir uniform linker 3392- glsl: count uniform components and storage better in nir linking 3393- glsl_to_nir: update interface type properly 3394- glsl: fix gl_nir_set_uniform_initializers() for image arrays 3395 3396Timur Kristóf (39): 3397 3398- ac: Handle invalid GFX10 format correctly in ac_get_tbuffer_format. 3399- aco: Make sure not to mistakenly propagate 64-bit constants. 3400- aco: Treat all booleans as per-lane. 3401- aco: Optimize out trivial code from uniform bools. 3402- aco: Fix operand of s_bcnt1_i32_b64 in emit_boolean_reduce. 3403- aco: Remove superfluous argument from emit_boolean_logic. 3404- aco: Remove lower_linear_bool_phi, it is not needed anymore. 3405- aco: Optimize load_subgroup_id to one bit field extract instruction. 3406- aco/wave32: Change uniform bool optimization to work with wave32. 3407- aco/wave32: Replace hardcoded numbers in spiller with wave size. 3408- aco/wave32: Introduce emit_mbcnt which takes wave size into account. 3409- aco/wave32: Add wave size specific opcodes to aco_builder. 3410- aco/wave32: Use lane mask regclass for exec/vcc. 3411- aco/wave32: Fix load_local_invocation_index to support wave32. 3412- aco/wave32: Use wave_size for barrier intrinsic. 3413- aco/wave32: Allow setting the subgroup ballot size to 64-bit. 3414- aco/wave32: Fix reductions. 3415- aco: Fix uniform i2i64. 3416- ac/llvm: Fix ac_build_reduce in wave32 mode. 3417- aco/wave32: Set the definitions of v_cmp instructions to the lane 3418 mask. 3419- aco: Implement 64-bit constant propagation. 3420- aco: Allow optimizing vote_all and nir_op_iand. 3421- aco: Don't skip combine_instruction when definitions[1] is used. 3422- aco: Optimize out s_and with exec, when used on uniform bitwise 3423 values. 3424- aco: Flip s_cbranch / s_cselect to optimize out an s_not if possible. 3425- nouveau/nvc0: add extern keyword to nvc0_miptree_vtbl. 3426- intel/compiler: Fix array bounds warning on GCC 10. 3427- radeon: Move si_get_pic_param to radeon_vce.c 3428- r600: Move get_pic_param to radeon_vce.c 3429- gallium: Fix a couple of multiple definition warnings. 3430- radeon: Fix multiple definition error with radeon_debug 3431- aco: Fix -Wstringop-overflow warnings in aco_span. 3432- aco: Fix maybe-uninitialized warnings. 3433- aco: Fix signedness compare warning. 3434- aco: Make a better guess at which instructions need the VCC hint. 3435- aco: Transform uniform bitwise instructions to 32-bit if possible. 3436- aco/gfx10: Fix VcmpxExecWARHazard mitigation. 3437- aco: Fix the meaning of is_atomic. 3438- aco/optimizer: Don't combine uniform bool s_and to s_andn2. 3439 3440Tomasz Pyra (1): 3441 3442- gallium/swr: Fix arb_transform_feedback2 3443 3444Tomeu Vizoso (38): 3445 3446- gitlab-ci: Disable lima jobs 3447- gitlab-ci: Run only LAVA jobs in special-named branches 3448- panfrost: Add checksum fields to SFBD descriptor 3449- panfrost: Set 0x10 bit on mali_shader_meta.unknown2_4 on T720 3450- panfrost: Rework format encoding on SFBD 3451- panfrost: Take into account texture layers in SFBD 3452- panfrost: Decode blend shaders for SFBD 3453- panfrost: Generate polygon list manually for SFBD 3454- panfrost: Print the right zero field 3455- panfrost: Pipe the GPU ID into compiler and disassembler 3456- panfrost: Set depth and stencil for SFBD based on the format 3457- panfrost: Multiply offset_units by 2 3458- panfrost: Make sure the shader descriptor is in sync with the GL 3459 state 3460- gitlab-ci: Remove limit on kernel logging 3461- panfrost: Just print tiler fields as-is for Tx20 3462- panfrost: Rework buffers in SFBD 3463- gitlab-ci: Fix dir name for VK-GL-CTS sources 3464- panfrost: Don't print the midgard_blend_rt structs on SFBD 3465- panfrost: Add quirks system to cmdstream 3466- panfrost: Simplify shader patching 3467- panfrost: White list the Mali T720 3468- gitlab-ci: Test Panfrost on T720 GPUs 3469- panfrost: Add PAN_MESA_DEBUG=sync 3470- panfrost: Hold a reference to sampler views 3471- pan/midgard: Remove undefined behavior 3472- nir: Don't copy empty array 3473- util: Don't access members of NULL pointers 3474- panfrost: Don't lose bits! 3475- st/mesa: Don't access members of NULL pointers 3476- panfrost: Handle Z24_UNORM_S8_UINT as MALI_Z32_UNORM 3477- panfrost: Increase PIPE_SHADER_CAP_MAX_OUTPUTS to 16 3478- panfrost: Dynamically allocate array of texture pointers 3479- panfrost: Map with size of first layer for 3D textures 3480- panfrost: Store internal format 3481- gitlab-ci: Update kernel for LAVA to 5.5-rc1 plus fixes 3482- gitlab-ci: Switch LAVA jobs to use shared dEQP runner 3483- gitlab-ci: Upgrade kernel for LAVA jobs to v5.5-rc5 3484- gitlab-ci: Consolidate container and build stages for LAVA 3485 3486Urja Rannikko (4): 3487 3488- panfrost: free last_read/write tables in mir_create_dependency_graph 3489- panfrost: free allocations in schedule_block 3490- panfrost: add lcra_free() to free lcra state 3491- panfrost: free spill cost table in mir_spill_register 3492 3493Vasily Khoruzhick (31): 3494 3495- lima: add debug prints for BO cache 3496- lima: align size before trying to fetch BO from cache 3497- lima: ignore flags while looking for BO in cache 3498- lima: set dithering flag when necessary 3499- lima: add support for gl_PointSize 3500- lima: enable tiling 3501- lima: handle DRM_FORMAT_MOD_INVALID in resource_from_handle() 3502- lima: expose tiled format modifier in query_dmabuf_modifiers() 3503- lima: use single BO for GP outputs 3504- lima: drop suballocator 3505- lima: fix allocation of GP outputs storage for indexed draw 3506- lima: postpone PP stream generation 3507- lima: don't reload and redraw tiles that were not updated 3508- lima: fix PP stream terminator size 3509- lima: use linear layout for shared buffers if modifier is not 3510 specified 3511- lima: add debug flag to disable tiling 3512- lima: drop support for R8G8B8 format 3513- lima: fix PLBU_CMD_PRIMITIVE_SETUP command 3514- lima: fix viewport clipping 3515- lima: implement polygon offset 3516- lima: fix PIPE_CAP\_\* to mark features that aren't supported yet 3517- lima: add new findings to texture descriptor 3518- lima: fix handling of reverse depth range 3519- ci: lava: pass CI_NODE_INDEX and CI_NODE_TOTAL to lava jobs 3520- ci: Re-enable CI for lima on mali450 3521- lima: implement invalidate_resource() 3522- nir: don't emit ishl in \_nir_mul_imm() if backend doesn't support 3523 bitops 3524- lima: use imul for calculations with intrinsic src 3525- lima: ppir: don't delete root ld_tex nodes without successors in 3526 current block 3527- lima: ppir: always create move and update ld_tex successors for all 3528 blocks 3529- lima: disable early-z if fragment shader uses discard 3530 3531Vinson Lee (9): 3532 3533- swr: Fix build with llvm-10.0. 3534- panfrost: Fix gnu-empty-initializer build errors. 3535- scons: Bump C standard to gnu11 on macOS 10.15. 3536- util/u_thread: Restrict u_thread_get_time_nano on macOS. 3537- swr: Fix build with llvm-10.0. 3538- swr: Fix build with llvm-10.0. 3539- lima: Fix build with GCC 10. 3540- swr: Fix GCC 4.9 checks. 3541- panfrost: Remove unused anonymous enum variables. 3542 3543Wladimir J. van der Laan (2): 3544 3545- u_vbuf: add logic to use a limited number of vbufs 3546- u_vbuf: use single vertex buffer if it's not possible to have 3547 multiple 3548 3549X512 (1): 3550 3551- util/u_thread: Fix build under Haiku 3552 3553Yevhenii Kolesnikov (5): 3554 3555- glsl: Enable textureSize for samplerExternalOES 3556- meson: Fix linkage of libgallium_nine with libgalliumvl 3557- meta: Cleanup function for DrawTex 3558- main: allow external textures for BindImageTexture 3559- meta: Add cleanup function for Bitmap 3560 3561Zebediah Figura (1): 3562 3563- Revert "draw: revert using correct order for prim decomposition." 3564 3565luc (1): 3566 3567- zink: confused compilation macro usage for zink in target helpers. 3568