1Mesa 19.3.0 Release Notes / 2019-12-12 2====================================== 3 4Mesa 19.3.0 is a new development release. People who are concerned with 5stability and reliability should stick with a previous release or wait 6for Mesa 19.3.1. 7 8Mesa 19.3.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 19.3.0 implements the Vulkan 1.1 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 5fa0e4e9dca79560f6882e362f9db36d81cf96da16cf6a84e0ada7466a99a5d7 mesa-19.3.0.tar.xz 26 27New features 28------------ 29 30- GL_ARB_gl_spirv on i965, iris. 31- GL_ARB_spirv_extensions on i965, iris. 32- GL_EXT_demote_to_helper_invocation on iris, i965. 33- OpenGL 4.6 on i965, iris. 34- EGL_EXT_image_flush_external 35- VK_ANDROID_external_memory_android_hardware_buffer on RADV. 36- VK_KHR_shader_clock on Intel, RADV. 37- VK_KHR_shader_float_controls on Intel, RADV. 38- VK_KHR_spirv_1_4 on Intel, RADV. 39- VK_KHR_timeline_semaphore on RADV. 40- VK_KHR_vulkan_memory_model on Intel. 41- VK_EXT_shader_subgroup_ballot on Intel. 42- VK_EXT_shader_subgroup_vote on Intel. 43- VK_EXT_texel_buffer_alignment on RADV. 44- VK_INTEL_performance_query on Intel. 45- Meson support for windows using MSVC and MinGW 46- scons has been deprecated for non windows 47- Initial Intel gen12 (Tigerlake) support on anvil and iris 48- New compiler backend "ACO" for RADV (RADV_PERFTEST=aco) 49- VK_EXT_shader_demote_to_helper_invocation on RADV/ACO. 50 51Bug fixes 52--------- 53 54- [RADV] The Dead Rising 4 is causing a GPU hang with LLVM backend 55- radeonsi: mpv --vo=vaapi incorrect rendering on gfx9+ 56- NULL resource when playing VP9 video through VDPAU on RX 570 57- gnome-shell overview mode crash in recent mesa 58- radv/aco Jedi Fallen Order hair rendering buggy 59- [RADV] VK_KHR_timeline_semaphore balloons in runtime 60- Shadow of Mordor has randomly dancing black shadows on Talion's face 61- ld.lld: error: duplicate symbol (mesa-19.3.0-rc1) 62- triangle strip clipping with GL_FIRST_VERTEX_CONVENTION causes wrong 63 vertex's attribute to be broadcasted for flat interpolation 64- [bisected][regression][g45,g965,ilk] piglit arb_fragment_program kil 65 failures 66- textureSize(samplerExternalOES, int) missing in desktop mesa 19.1.7 67 implementation 68- HSW. Tropico 6 and SuperTuxKart have shadows flickering 69- glxgears segfaults on POWER / Xvnc 70- Objects leaving trails in Firefox with antialias and 71 preserveDrawingBuffer in three.js WebGLRednerer with mesa 19.2 72- radv regression after 84d9551b232bdcead017b212cbb3e291486e698c: vk: 73 error: failed to submit CS 74- Rename ACO README to README.md 75- Steam crash due to commit e137b3a9b71a2711c1f68c8a8b9c0a7407fbcc4b 76 (bisected) 77- [Anv regression] SPIR-V abort in Aztec Ruins 78- FreeBSD does not have \_GNU_SOURCE in util/strtod.c 79- glLinkProgram crash when using gcc-9 -O3 -flto due to use of 80 uninitialised value 81- KeyError: 'force_scons': 82- link_shader and deserialize_glsl_program suddenly consume huge amount 83 of RAM 84- build errors after "meson: add -Werror=empty-body to disallow 85 \`if(x);`" 86- performance regression in Heroes of the Storm with Mesa 19.1.1 & 87 Polaris 88- Vulkan version of "Middle-earth: Shadow of Mordor" has graphics 89 glitches on RADV driver (part 2) 90- swr/rasterizer/core/format_types.h:1183: undefined reference to 91 \`_mm256_cvtps_ph' 92- Meson: Building osmesa gallium and tests at the same time results in 93 osmesa gallium build failure 94- Vulkan version of "Middle-earth: Shadow of Mordor" has graphics 95 glitches on RADV driver 96- [amdgpu][Navi][llvm] Minimap problem in Nier Automata 97- [bisected] anon_inode:sync_file file descriptor leak 98- Cache meson packagecach in appveyor 99- Piglit tests regression in gallium drivers 100- Black ground in Dirt 4 101- Superbibles examples crashing Mesa drivers (radeonsi) and causing gpu 102 reset 103- [CTS] dEQP-VK.graphicsfuzz.write-red-in-loop-nest crashes 104- mesa and libglvnd install the same headers 105- Multiple EGL displays with multiple window systems leads to a crash 106- Regression: Doom (2016) crashes on Mesa 19.2 and above and Radeon 380 107 with Vulkan (worked on Mesa 19.1) 108- Rocket League displays corruption when the game starts 109- drm.h:50:9: error: unknown type name 'uint8_t' 110- Mesa build breaks when only building radeonsi due to missing llvm 111 coroutines symbols 112- radeonsi aborting in LLVM validation test in si_compile_tgsi_shader() 113- meson.build:1447:6: ERROR: Problem encountered: libdrm required for 114 gallium video statetrackers when using x11 115- Mesa doesn't build with current Scons version (3.1.0) 116- libXvMC-1.0.12 breaks mesa build 117- Meson can't find 32-bit libXvMCW in non-standard path 118- Mesa installs gl.pc and egl.pc even with libglvnd >= 1.2.0 119 120Changes 121------- 122 123Adam Jackson (44): 124 125- glx: Whitespace cleanups 126- glx: Sync <GL/glxext.h> with Khronos 127- glx: Make \__glXGetDrawableAttribute return true sometimes 128- glx: Unset the direct_support bit for GLX_EXT_import_context 129- Revert "glx: Unset the direct_support bit for GLX_EXT_import_context" 130- egl: Enable 10bpc EGLConfigs for platform_{device,surfaceless} 131- gallium/xlib: Fix an obvious thinko 132- mesa: Remove unused gl_config::indexBits 133- mesa: Eliminate gl_config::have{Accum,Depth,Stencil}Buffer 134- mesa: Eliminate gl_config::rgbMode 135- gallium: Require LLVM >= 3.4 136- gallium: Require LLVM >= 3.5 137- gallium: Require LLVM >= 3.6 138- gallium: Require LLVM >= 3.7 139- gallium: Require LLVM >= 3.8 140- gallium: Require LLVM >= 3.9 141- egl/dri2: Refuse to add EGLConfigs with no supported surface types 142- glx: Remove unused indirection for glx_context->fillImage 143- gallium: Restore VSX for llvm >= 4 144- ci: Run tests on i386 cross builds 145- gallium/xlib: Remove drawable caching from the MakeCurrent path 146- gallium/xlib: Remove MakeCurrent_PrevContext 147- gallium/xlib: Fix glXMakeCurrent(dpy, None, None, ctx) 148- docs: Update bug report URLs for the gitlab migration 149- glx: Avoid atof() when computing the server's GLX version 150- glx: Fix drawable lookup bugs in glXUseXFont 151- egl/wayland: Reindent the format table 152- egl/wayland: Add FP16 format support 153- egl/wayland: Implement getCapability for the dri2 and image loaders 154- egl/surfaceless: Add FP16 format support 155- libgbm: Wire up getCapability for the image loader 156- glx: Move vertex array protocol state into the indirect backend 157- glx: Lift sending the MakeCurrent request to top-level code 158- glx: Implement GLX_EXT_no_config_context 159- Revert "glx: Implement GLX_EXT_no_config_context" 160- Revert "glx: Lift sending the MakeCurrent request to top-level code" 161- drisw: Simplify GC setup 162- drisw: Fix and simplify drawable setup 163- glx: Log the filename of the drm device if we fail to open it 164- egl/dri2: Don't dlclose() the driver on dri2_load_driver_common 165 failure 166- surfaceless: Support EGL_WL_bind_wayland_display 167- egl: Make native display detection work more than once 168- gallium/xlib: Fix xmesa drawable creation 169 170Alan Coopersmith (6): 171 172- gallium: Fix a bunch of undefined left-shifts in u_format\_\* 173- c99_compat.h: Don't try to use 'restrict' in C++ code 174- util: Make Solaris implemention of p_atomic_add work with gcc 175- util: Workaround lack of flock on Solaris 176- util: Solaris has linux-style pthread_setname_np 177- meson: recognize "sunos" as the system name for Solaris 178- intel/common: include unistd.h for ioctl() prototype on Solaris 179 180Alejandro Piñeiro (5): 181 182- i965: enable ARB_gl_spirv extension and ARB_spirv_extensions for 183 gen7+ 184- mesa/version: uncomment SPIR-V extensions 185- i965: Enable OpenGL 4.6 for Gen8+ 186- v3d: take into account prim_counts_offset 187- v3d: adds an extra MOV for any sig.ld\* 188 189Alex Smith (1): 190 191- radv: Change memory type order for GPUs without dedicated VRAM 192 193Alexandros Frantzis (1): 194 195- gitlab-ci: Update required libdrm version 196 197Alyssa Rosenzweig (220): 198 199- pan/decode: Eliminate DYN_MEMORY_PROP 200- pan/decode: Don't print MALI_DRAW_NONE 201- panfrost: Move pan_invocation to shared panfrost/ 202- panfrost: Set workgroups z to 32 for non-instanced graphics 203- pan/decode: Don't print canonical workgroup encoding 204- panfrost: Implement workgroups_x_shift_2 quirk 205- pan/decode: Silence workgroups_x_shift_2 206- pan/decode: Fix missing NULL terminator 207- pan/decode: Don't print zero exception_status 208- pan/decode: Express tiler structures as offsets 209- pan/decode: Allow updating mmaps 210- pan/decode: Bounds check polygon list and tiler heap 211- panfrost: Move pan_tiler.c outside of Gallium 212- pan/decode: Verify and omit polygon size 213- pan/decode: Print "just right" count of texture pointers 214- panfrost: Remove DRY_RUN 215- panfrost: Correct polygon size computations 216- pan/decode: Check for a number of potential issues 217- pan/decode: Don't print unreferenced attribute memory 218- pan/decode: Add static bounds checking utility 219- pan/decode: Do not print uniform/buffers explicitly 220- pan/decode: Validate AFBC fields are zero when AFBC is disabled 221- pan/decode: Check for MFBD preload chicken bit 222- pan/decode: Mark tripped zeroes with XXX 223- pan/decode: Normalize case matching XXX format 224- pan/decode: Normalize final instances of XXX 225- panfrost: Fix scoreboarding with dependency on job #0 226- panfrost: Do not expose PIPE_CAP_TEXTURE_MIRROR_CLAMP 227- panfrost: Don't crash on GL_CLAMP 228- pan/decode: Guard attribute unknowns 229- panfrost: Don't trip the prefix magic field 230- pan/decode: Handle VARYING_DISCARD 231- pan/decode: Treat RESERVED swizzles as errors 232- pan/decode: Validate swizzles against format 233- pan/decode: Don't print the default swizzle 234- pan/decode: Use GLSL style formats/swizzles 235- pan/decode: Guard texture unknowns as zero trips 236- pan/decode: Break out pandecode_texture function 237- pan/decode: Validate texture dimensionality 238- panfrost: nr_mipmap_levels -> levels 239- panfrost: Remove ancient TODO 240- pan/decode: Pretty-print sRGB format 241- panfrost: Break up usage2 field 242- pan/decode: Use concise texture printing 243- pan/decode: Include address in union mali_attr 244- pan/decode: Validate attribute/varying buffer pointer 245- pan/decode: Cleanup mali_attr printing 246- pan/midgard: Free liveness info 247- pan/midgard: Allocate \`dependencies\` on stack 248- pan/decode: Don't leak FBD pointer 249- pan/decode: Remove all_zero 250- pan/bifrost: Avoid buffer overflow in disassembler 251- pan/midgard: Represent unused nodes by ~0 252- pan/midgard: Reorder bits check to fix 8-bit masks 253- pan/midgard: Simplify contradictory check. 254- panfrost: Don't check reads_point_coord 255- pan/midgard: Mark fallthrough explicitly 256- panfrost: Pay attention to framebuffer dimension sign 257- panfrost: Clarify intention with PIPE_SWIZZLE_X check 258- panfrost: Prevent potential integer overflow in instancing 259- panfrost: Hoist job != NULL check 260- panfrost: Hoist bo != NULL check before dereference 261- panfrost: Fix missing ret assignment in DRM code 262- pan/bifrost: Correct file size signedness 263- panfrost: Guard against NULL rasterizer explicitly 264- panfrost: Pass stream_output_info by reference 265- pan/midgard: Breakout texture reg select printer 266- pan/midgard: Identify and disassemble indirect texture/sampler 267- panfrost: Don't bail on PIPE_BUFFER 268- panfrost: Implement depth range clipping 269- panfrost: Fix PIPE_BUFFER spacing 270- pan/midgard,bifrost: Expand nir_const_load_to_arr 271- nir: Remove nir_const_load_to_arr 272- pan/decode: Hoist shader-db stats to shared decode 273- pan/midgard: Sketch static analysis to uniform count 274- pan/midgard: Compute work_count via writes 275- pan/midgard: Analyze simple loads/store 276- pan/midgard: Explain ffma 277- pan/midgard: Disassemble integer constants in hex 278- pan/decode: Remove mali_attr(_meta) framing 279- pan/decode: Removing uniform buffer framing 280- pan/decode: Eliminate non-FBD dumped case 281- pan/decode: Validate MFBD tags 282- pan/decode: Validate and simplify FRAGMENT payloads 283- pan/decode: Validate blend shaders don't access I/O 284- pan/decode: Fix uniform printing 285- pan/decode: Promote <no shader> to an error 286- pan/decode: Disassemble before printing shader descriptor 287- pan/decode: Validate mali_shader_meta stats 288- pan/decode: Validate, but do not print, index buffer 289- pan/decode: Downgrade shader property mismatch to warning 290- pan/decode: Decode actual varying_meta address 291- pan/decode: Print stub for uniforms 292- pan/decode: Decouple attribute/meta printing 293- pan/decode: Remove size/stride divisibility check 294- pan/decode: Handle special varyings 295- panfrost: Remove vertex buffer offset from its size 296- panfrost: Implement gl_FragCoord correctly 297- pan/midgard: Fix writeout combining 298- pan/midgard: Analyze helper invocations 299- pan/decode: Validate and quiet helper invocation flag 300- pan/midgard, bifrost: Set lower_fdph = true 301- pan/midgard: Switch constants to uint32 302- pan/midgard: Add imov->fmov optimization 303- pan/midgard: Fold ssa_args into midgard_instruction 304- pan/midgard: Fix invert fusing with r26 305- freedreno/ir3: Link directly to Sethi-Ullman paper 306- pan/midgard: Count shader-db stats by bundled instructions 307- pan/midgard: Factor out mir_is_scalar 308- pan/midgard: Extract instruction sizing helper 309- pan/midgard: Expose mir_get/set_swizzle 310- pan/midgard: Add OP_IS_CSEL_V helper 311- pan/midgard: Fix corner case in RA 312- pan/midgard: Add post-schedule iteration helpers 313- pan/midgard: Include condition in branch->src[0] 314- pan/midgard: Document Midgard scheduling requirements 315- pan/midgard: Ensure fragment writeout is in the final block 316- pan/midgard: Track csel swizzle 317- pan/midgard: Add mir_insert_instruction*scheduled helpers 318- pan/midgard: csel_swizzle with mir get swizzle 319- pan/midgard: Extend mir_special_index to writeout 320- pan/midgard: Improve mir_mask_of_read_components 321- pan/midgard: Allow NULL argument in mir_has_arg 322- pan/midgard: Track shader quadword count while scheduling 323- pan/midgard: Add scheduling barriers 324- pan/midgard: Cleanup fragment writeout branch 325- pan/midgard: Remove texture_index 326- pan/midgard: Print branches in MIR 327- pan/midgard: Print MIR by the bundle 328- pan/midgard: Fix misc. RA issues 329- pan/midgard: Do not propagate swizzles into writeout 330- pan/midgard: Handle fragment writeout in RA 331- pan/midgard: Schedule before RA 332- pan/midgard: Remove mir_opt_post_move_eliminate 333- pan/midgard: Use shared psiz clamp pass 334- pan/decode: Fix uninitialized variables 335- pan/decode: Use %zu instead of %d 336- pan/decode: Use portable format specifier for 64-bit 337- pan/decode: Add missing format specifier 338- pan/midgard: Correct issues in disassemble.c 339- pan/midgard: Fix cppcheck issues 340- pan/midgard: Remove cppwrap.cpp 341- pan/midgard: Remove mir_print_bundle 342- pan/midgard: Remove mir_rewrite_index_*_tag 343- panfrost: Mark (1 << 31) as unsigned 344- panfrost: Fix misc. issues flagged by cppcheck 345- panfrost: Remove panfrost_upload 346- pan/midgard: Add missing parans in SWIZZLE definition 347- pan/midgard: Fix component count handling for ldst 348- pan/midgard: Squeeze indices before scheduling 349- pan/midgard: Add flatten_mir helper 350- pan/midgard: Calculate dependency graph 351- pan/midgard: Initialize worklist 352- pan/midgard: Add mir_choose_instruction stub 353- pan/midgard: Add mir_update_worklist helper 354- pan/midgard: Add mir_choose_bundle helper 355- pan/midgard: Add mir_schedule_texture/ldst/alu helpers 356- pan/midgard: Remove csel constant unit force 357- pan/midgard: Add constant intersection filters 358- pan/midgard: Add predicate->exclude 359- pan/midgard: Implement predicate->unit 360- pan/midgard: Add helpers for scheduling conditionals 361- pan/midgard: Extend csel_swizzle to branches 362- pan/midgard: Implement load/store pairing 363- pan/midgard: Add mir_choose_alu helper 364- pan/midgard: Add distance metric to choose_instruction 365- pan/midgard: Use new scheduler 366- pan/midgard: Don't double check SCALAR units 367- pan/midgard: Extend choose_instruction for scalar units 368- pan/midgard: Schedule to smul/sadd 369- pan/midgard: Only one conditional per bundle allowed 370- pan/midgard: Allow 6 instructions per bundle 371- pan/midgard: Allow writeout to see into the future 372- pan/midgard: Tightly pack 32-bit constants 373- pan/midgard: Add mir_flip helper 374- pan/midgard: Add csel invert optimization 375- pan/midgard: Allow scheduling conditions with constants 376- pan/midgard: Remove mir_has_multiple_writes 377- pan/midgard: Add mir_calculate_temp_count helper 378- pan/midgard: Move RA's liveness analysis into midgard_liveness.c 379- pan/midgard: Don't try to OR live_in of successors 380- pan/midgard: Begin tracking liveness metadata 381- pan/midgard: Invalidate liveness for mir_is_live_after 382- pan/midgard: Calculate temp_count for liveness 383- pan/midgard: Replace mir_is_live_after with new pass 384- pan/midgard: Report read mask for branch arguments 385- pan/midgard: Allow non-contiguous masks in UBO lowering 386- pan/midgard: Don't try to propagate swizzles to branches 387- pan/midgard: Add perspective ops to mir_get_swizzle 388- pan/midgard: Fix mir_mask_of_read_components with dot products 389- panfrost: Disable frame throttling 390- pan/midgard: Use 16-bit liveness masks 391- pan/midgard: Allow COMPUTE jobs in panfrost_bo_access_for_stage 392- pan/midgard: Fix memory corruption in register spilling 393- pan/midgard: Do not repeatedly spill same value 394- pan/midgard: Debug mir_insert_instruction_after_scheduled 395- pan/midgard: Identify 64-bit atomic opcodes 396- pan/midgard/disasm: Fix printing 8-bit/16-bit masks 397- pan/midgard: Factor out mir_get_alu_src 398- pan/midgard: Tableize load/store ops 399- pan/midgard: Implement OP_IS_STORE with table 400- pan/midgard: Add helpers for manipulating byte masks 401- pan/midgard: Report byte masks for read components 402- pan/midgard: Simplify mir_bytemask_of_read_components 403- pan/midgard: Implement per-byte liveness tracking 404- pan/midgard: Handle nontrivial masks in texture RA 405- pan/midgard: Create dependency graph bytewise 406- pan/midgard: Implement SIMD-aware dead code elimination 407- panfrost/ci: Update expectations list 408- pan/midgard: Add mir_set_bytemask helper 409- pan/midgard: Expose more typesize manipulation routines 410- pan/midgard: Express allocated registers as offsets 411- pipe-loader: Add kmsro pipe_loader target 412- pipe-loader: Default to kmsro if probe fails 413- panfrost: Expose serialized NIR support 414- pan/midgard: Disable precise occlusion queries 415- panfrost: Cleanup \_shader_upper -> shader 416- panfrost: Remove unused definitions in mali-job.h 417- pipe-loader: Build kmsro loader for with all kmsro targets 418- gallium/util: Support POLYGON in u_stream_outputs_for_vertices 419 420Andreas Baierl (5): 421 422- lima/ppir: Rename ppir_op_dummy to ppir_op_undef 423- lima/ppir: Add undef handling 424- lima/ppir: Add various varying fetch sources to disassembler 425- lima: Fix compiler warning in standalone compiler 426- lima: Fix crash when there are no vertex shader attributes 427 428Andreas Gottschling (1): 429 430- drisw: Fix shared memory leak on drawable resize 431 432Andres Gomez (12): 433 434- nir/algebraic: mark float optimizations returning one parameter as 435 inexact 436- docs: Update to OpenGL 4.6 in the release notes 437- nir/opcodes: Clear variable names confusion 438- docs: Add the maximum implemented Vulkan API version in 19.1 rel 439 notes 440- docs: Add the maximum implemented Vulkan API version in 19.2 rel 441 notes 442- docs: Add the maximum implemented Vulkan API version in 19.3 rel 443 notes 444- docs/features: Update status list of Vulkan extensions 445- docs/features: Update VK_KHR_display_swapchain status 446- i965/fs: add a comment about how the rounding mode in fmul is set 447- i965/fs: set rounding mode when emitting the flrp instruction 448- docs/relnotes: add support for GL_ARB_gl_spirv, 449 GL_ARB_spirv_extensions and OpenGL 4.6 on i965 and iris 450- egl: Remove the 565 pbuffer-only EGL config under X11. 451 452Andres Rodriguez (2): 453 454- radv: add RADV_DEBUG=allentrypoints 455- radv: additional query fixes 456 457Andrii Simiklit (1): 458 459- glsl: disallow incompatible matrices multiplication 460 461Anuj Phogat (5): 462 463- intel/gen12: Add L3 configurations 464- intel: Add few Ice Lake brand strings 465- genxml/gen11+: Add COMMON_SLICE_CHICKEN4 register 466- intel/gen11+: Enable Hardware filtering of Semi-Pipelined State in WM 467- intel/isl/icl: Use halign 8 instead of 4 hw workaround 468 469Arcady Goldmints-Orlov (1): 470 471- anv: fix descriptor limits on gen8 472 473Bas Nieuwenhuizen (63): 474 475- radv: Use correct vgpr_comp_cnt for VS if both prim_id and 476 instance_id are needed. 477- radv: Emit VGT_GS_ONCHIP_CNTL for tess on GFX10. 478- radv: Disable NGG for geometry shaders. 479- tu: Set up glsl types. 480- radv: Only break batch on framebuffer change with dfsm. 481- radv: Disable dfsm by default even on Raven. 482- radv: Add DFSM support. 483- glx: Remove redundant null check. 484- amd: Build aco only if radv is enabled 485- radv: Add workaround for hang in The Surge 2. 486- turnip: Add image->image blitting. 487- turnip: Always use UINT formats for copies. 488- turnip: Disallow NPoT formats. 489- turnip: Add todo for d24_s8 copies 490- radv: Fix condition for skipping the continue CS. 491- radv: Fix warning in 32-bit build. 492- meson: Always add LLVM coroutines module. 493- amd/llvm: Fix warning due to asserted-only variable. 494- radv: Implement & enable VK_EXT_texel_buffer_alignment. 495- radv: Cleanup buffer_from_fd. 496- radv: Handle device memory alloc failure with normal free. 497- radv: Split out layout code from image creation. 498- radv: Delay patching for imported images until layout time. 499- radv: Handle slightly different image dimensions. 500- radv: Unset vk_info in radv_image_create_layout. 501- radv: Add VK_ANDROID_external_memory_android_hardware_buffer. 502- radv/android: Add android hardware buffer field to device memory. 503- radv/android: Add android hardware buffer queries. 504- radv: Disallow sparse shared images. 505- radv: Derive android usage from create flags. 506- radv: Deal with Android external formats. 507- radv/android: Add android hardware buffer import/export. 508- radv: Allow Android image binding. 509- radv: Expose image handle compat types for Android handles. 510- radv: Check the size of the imported buffer. 511- radv: Enable VK_ANDROID_external_memory_android_hardware_buffer. 512- nir/dead_cf: Remove dead control flow after infinite loops. 513- radv: Fix single stage constant flush with merged shaders. 514- radv: Compute hashes in secure process for secure compilation. 515- radv: Add an early exit in the secure compile if we already have the 516 cache entries. 517- radv: Clean up unused variable. 518- radv: Split out commandbuffer submission. 519- radv: Do sparse binding in queue submission. 520- radv: Improve fence signalling in QueueSubmit. 521- radv: Always enable syncobj when supported for all fences/semaphores. 522- radv: Split semaphore into two parts as enum+union. 523- radv: Add temporary datastructure for submissions. 524- radv: Add timelines with a VK_KHR_timeline_semaphore impl. 525- radv: Add wait-before-submit support for timelines. 526- radv: Enable VK_KHR_timeline_semaphore. 527- radv: Start signalling semaphores in WSI acquire. 528- radv: Allocate space for temp. semaphore parts. 529- radv: Fix timeout handling in syncobj wait. 530- radv: Remove \_mesa_locale_init/fini calls. 531- turnip: Remove \_mesa_locale_init/fini calls. 532- anv: Remove \_mesa_locale_init/fini calls. 533- radv: Fix disk_cache_get size argument. 534- radv: Close all unnecessary fds in secure compile. 535- radv: Do not change scratch settings while shaders are active. 536- radv: Allocate cmdbuffer space for buffer marker write. 537- radv: Unify max_descriptor_set_size. 538- radv: Fix timeline semaphore refcounting. 539- radv: Fix RGBX Android<->Vulkan format correspondence. 540 541Ben Crocker (1): 542 543- llvmpipe: use ppc64le/ppc64 Large code model for JIT-compiled shaders 544 545Boris Brezillon (73): 546 547- panfrost: Free the instruction object in mir_remove_instruction() 548- panfrost: Free all block/instruction objects before leaving 549 midgard_compile_shader_nir() 550- panfrost: Make sure bundle.instructions[] contains valid instructions 551- Revert "panfrost: Free all block/instruction objects before leaving 552 midgard_compile_shader_nir()" 553- panfrost: Use ralloc() to allocate instructions to avoid leaking 554 those objs 555- panfrost: Reset the damage area on imported resources 556- panfrost: Add transient BOs to job batches 557- panfrost: s/job/batch/ 558- panfrost: Pass a batch to panfrost_drm_submit_vs_fs_batch() 559- panfrost: Stop passing a ctx to functions being passed a batch 560- panfrost: Make transient allocation rely on the BO cache 561- panfrost: Convert ctx->{scratchpad, tiler_heap, tiler_dummy} to plain 562 BOs 563- panfrost: Get rid of unused panfrost_context fields 564- panfrost: Get rid of the now unused SLAB allocator 565- panfrost: Rename pan_bo_cache.c into pan_bo.c 566- panfrost: Fix a list_assert() in schedule_block() 567- panfrost: Rework midgard_pair_load_store() to kill the nested foreach 568 loop 569- panfrost: Use a pipe_framebuffer_state as the batch key 570- panfrost: Get rid of the unused 'flush jobs accessing res' infra 571- panfrost: Allow testing if a specific batch is targeting a scanout FB 572- panfrost: Pass a batch to panfrost_{allocate,upload}_transient() 573- panfrost: Pass a batch to functions emitting FB descs 574- panfrost: Use ctx->wallpaper_batch in panfrost_blit_wallpaper() 575- panfrost: Pass a batch to panfrost_set_value_job() 576- panfrost: Prepare things to avoid flushes on FB switch 577- panfrost: Delay payloads[].offset_start initialization 578- panfrost: Move the fence creation in panfrost_flush() 579- panfrost: Move the batch submission logic to panfrost_batch_submit() 580- panfrost: Stop exposing internal panfrost_*_batch() functions 581- panfrost: Use the correct type for the bo_handle array 582- panfrost: Add missing panfrost_batch_add_bo() calls 583- panfrost: Add polygon_list to the batch BO set at allocation time 584- panfrost: Kill a useless memset(0) in panfrost_create_context() 585- panfrost: Stop passing has_draws to panfrost_drm_submit_vs_fs_batch() 586- panfrost: Get rid of pan_drm.c 587- panfrost: Move panfrost_bo_{reference,unreference}() to pan_bo.c 588- panfrost: s/PAN_ALLOCATE\_/PAN_BO\_/ 589- panfrost: Move the BO API to its own header 590- panfrost: Stop exposing panfrost_bo_cache_{fetch,put}() 591- panfrost: Don't check if BO is mmaped before calling 592 panfrost_bo_mmap() 593- panfrost: Stop passing screen around for BO operations 594- panfrost: Stop using panfrost_bo_release() outside of pan_bo.c 595- panfrost: Add panfrost_bo_{alloc,free}() 596- panfrost: Don't return imported/exported BOs to the cache 597- panfrost: Add the panfrost_batch_create_bo() helper 598- panfrost: Add FBO BOs to batch->bos earlier 599- panfrost: Allocate tiler and scratchpad BOs per-batch 600- Revert "panfrost: Rework midgard_pair_load_store() to kill the nested 601 foreach loop" 602- panfrost: Fix indexed draws 603- dEQP-GLES2.functional.buffer.write.use.index_array.\* are passing 604 now. 605- panfrost: Add the shader BO to the batch in patch_shader_state() 606- panfrost: Extend the panfrost_batch_add_bo() API to pass access flags 607- panfrost: Make panfrost_batch->bos a hash table 608- panfrost: Add a batch fence 609- panfrost: Use the per-batch fences to wait on the last submitted 610 batch 611- panfrost: Add a panfrost_freeze_batch() helper 612- panfrost: Start tracking inter-batch dependencies 613- panfrost: Prepare panfrost_fence for batch pipelining 614- panfrost: Add a panfrost_flush_all_batches() helper 615- panfrost: Add a panfrost_flush_batches_accessing_bo() helper 616- panfrost: Add flags to reflect the BO imported/exported state 617- panfrost: Make sure the BO is 'ready' when picked from the cache 618- panfrost: Do fine-grained flushing when preparing BO for CPU accesses 619- panfrost: Kill the explicit serialization in panfrost_batch_submit() 620- panfrost: Get rid of the flush in panfrost_set_framebuffer_state() 621- Revert "st/dri2: Implement DRI2bufferDamageExtension" 622- Revert "Revert "st/dri2: Implement DRI2bufferDamageExtension"" 623- panfrost: Make sure a clear does not re-use a pre-existing batch 624- panfrost: Draw the wallpaper when only depth/stencil bufs are cleared 625- panfrost: Fix support for packed 24-bit formats 626- panfrost: Fix the DISCARD_WHOLE_RES case in transfer_map() 627- gallium: Fix the ->set_damage_region() implementation 628- panfrost: Make sure we reset the damage region of RTs at flush time 629 630Brian Paul (3): 631 632- st/nir: fix illegal designated initializer in st_glsl_to_nir.cpp 633- REVIEWERS: add VMware reviewers 634- Call shmget() with permission 0600 instead of 0777 635 636Caio Marcelo de Oliveira Filho (66): 637 638- intel/compiler: Silence maybe-uninitialized warning in GCC 9.1.1 639- anv: Drop unused local variable 640- compiler/glsl: Fix warning about unused function 641- intel/decoders: Avoid uninitialized variable warnings 642- iris: Guard GEN9-only function in Iris state to avoid warning 643- tgsi: Remove unused local 644- i965: Silence brw_blorp uninitialized warning 645- nir/lower_explicit_io: Handle 1 bit loads and stores 646- glsl/nir: Avoid overflow when setting max_uniform_location 647- mesa/st: Do not rely on name to identify special uniforms 648- compiler: Add glsl_contains_opaque() helper 649- mesa: Pack gl_program_parameter struct 650- glsl/nir: Fill in the Parameters in NIR linker 651- mesa: Fill Parameter storage indices even when not using SPIR-V 652- mesa/program: Associate uniform storage without using names 653- mesa/st: Lookup parameters without using names 654- mesa/st: Extract preprocessing NIR steps 655- mesa/st: Add support for SPIR-V shaders 656- mesa/st: Don't expect prog->nir to already exist 657- mesa/spirv: Set a few more extensions 658- gallium: Add ARB_gl_spirv support 659- glsl/nir: Add and use a gl_nir_link() function 660- iris: Enable ARB_gl_spirv and ARB_spirv_extensions 661- mesa/st: Fallback to name lookup when the variable have no Parameter 662- spirv: Update JSON and headers to 1.5 663- spirv: Handle ShaderLayer and ShaderViewportIndex capabilities 664- spirv: Add missing break for capability handling 665- intel/fs: Add Fall-through comment 666- mesa: Extension boilerplate for EXT_demote_to_helper_invocation 667- glsl: Add ir_demote 668- glsl: Parse \`demote\` statement 669- glsl: Add helperInvocationEXT() builtin 670- gallium: Add PIPE_CAP_DEMOTE_TO_HELPER_INVOCATION 671- iris: Enable EXT_demote_to_helper_invocation 672- i965: Enable EXT_demote_to_helper_invocation 673- docs/relnotes: Add EXT_demote_to_helper_invocation support on iris, 674 i965 675- docs: Fix GL_EXT_demote_to_helper_invocation name 676- vulkan: Update the XML and headers to 1.1.124 677- spirv: Implement SPV_KHR_shader_clock 678- anv: Implement VK_KHR_shader_clock 679- anv: Enable VK_EXT_shader_subgroup_{ballot,vote} 680- docs: Update recently enabled VK extensions on Intel 681- intel: Add INTEL_DEBUG=nofc for disabling fast clears 682- anv: Disable fast clears when running with INTEL_DEBUG=nofc 683- iris: Disable fast clears when running with INTEL_DEBUG=nofc 684- i965: Disable fast clears when running with INTEL_DEBUG=nofc 685- vulkan: Update the XML and headers to 1.1.125 686- anv: Advertise VK_KHR_spirv_1_4 687- intel/fs/gen12: Add tests for scoreboard pass 688- nir: Add scoped_memory_barrier intrinsic 689- nir/tests: Add copy propagation tests with scoped_memory_barrier 690- intel/fs: Implement scoped_memory_barrier 691- spirv: Parse memory semantics for atomic operations 692- spirv: Emit memory barriers for atomic operations 693- spirv: Add SpvMemoryModelVulkan and related capabilities 694- spirv: Add option to emit scoped memory barriers 695- spirv: Handle MakeTexelAvailable/Visible 696- spirv: Handle MakePointerAvailable/Visible 697- anv: Implement VK_KHR_vulkan_memory_model 698- spirv: Add imageoperands_to_string helper 699- spirv: Check that only one offset is defined as Image Operand 700- spirv: Add helper to find args of Image Operands 701- anv: Fix output of INTEL_DEBUG=bat for chained batches 702- spirv: Don't fail if multiple ordering semantics bits are set 703- spirv: Don't leak GS initialization to other stages 704- anv: Initialize depth_bounds_test_enable when not explicitly set 705 706Chris Wilson (2): 707 708- iris: Allow packed RGB pbo uploads 709- st/mesa: Map MESA_FORMAT_RGB_UNORM8 <-> PIPE_FORMAT_R8G8B8_UNORM 710 711Christian Gmeiner (13): 712 713- gallium: util_set_vertex_buffers_mask(..): make use of 714 u_bit_consecutive(..) 715- etnaviv: a bit of micro-optimization 716- Revert "gallium: remove PIPE_CAP_TEXTURE_SHADOW_MAP" 717- etnaviv: disable ARB_shadow 718- etnaviv: etna_resource_copy_region(..): drop assert 719- etnaviv: support ARB_framebuffer_object 720- etnaviv: nir: start to make use of compile_error(..) 721- etnaviv: output the same shader-db format as freedreno, v3d and intel 722- etnaviv: fix compile warnings 723- etnaviv: fix code style 724- etnaviv: store updated usage in pipe_transfer object 725- etnaviv: keep track of buffer valid ranges for PIPE_BUFFER 726- etnaviv: remove dead code 727 728Clément Guérin (1): 729 730- radeonsi: enable zerovram for Rocket League 731 732Connor Abbott (40): 733 734- st/nir: Fix num_inputs for VS inputs 735- radeonsi/nir: Don't recompute num_inputs and num_outputs 736- ac/nir: Handle const array offsets in get_deref_offset() 737- ac/nir: Assert GS input index is constant 738- radeonsi/nir: Don't add const offset to indirect 739- radeonsi/nir: Add const_index when loading GS inputs 740- radeonsi/nir: Rewrite store intrinsic gathering 741- radeonsi/nir: Rewrite output scanning 742- ac/nir: add a workaround for viewing a slice of 3D as a 2D image 743- ac/nir: Remove gfx9_stride_size_workaround_for_atomic 744- ac/nir: Rewrite gather4 integer workaround based on radeonsi 745- ac/nir: Fix gather4 integer wa with unnormalized coordinates 746- nir: Fix num_ssbos when lowering atomic counters 747- ttn: Fill out more info fields 748- radeonsi/nir: Remove uniform variable scanning 749- radv/radeonsi: Don't count read-only data when reporting code size 750- ac/nir: Support load_constant intrinsics 751- ac/nir: Enable nir_opt_large_constants 752- st/nir: Call nir_remove_unused_variables() in the opt loop 753- st/nir: Don't lower indirects when linking 754- gallium: Plumb through a way to disable GLSL const lowering 755- radeonsi/nir: Don't lower constant arrays to uniforms 756- radv: Call nir_propagate_invariant() 757- lima/gpir: Do all lowerings before rsched 758- lima/gpir: Ignore unscheduled successors in can_use_complex() 759- lima/gpir: Fix schedule_first insertion logic 760- lima/gpir: Fix fake dep handling for schedule_first nodes 761- lima/gpir: Disallow moves for schedule_first nodes 762- nir/opt_if: Fix undef handling in opt_split_alu_of_phi() 763- lima/gpir: Fix compiler warning 764- lima/gpir: Only try to place actual children 765- lima/gpir: Support branch instructions 766- lima/gpir: Use registers for values live in multiple blocks 767- lima/gpir: Fix postlog2 fixup handling 768- lima/gpir: Don't emit movs when translating from NIR 769- lima/gpir: Fix 64-bit shift in scheduler spilling 770- nir/opt_large_constants: Handle store writemasks 771- nir: Fix overlapping vars in nir_assign_io_var_locations() 772- nir/sink: Rewrite loop handling logic 773- nir/sink: Don't sink load_ubo to outside of its defining loop 774 775Daniel Kolesa (1): 776 777- util: add auxv based PowerPC AltiVec/VSX detection 778 779Daniel Schürmann (44): 780 781- nir/algebraic: some subtraction optimizations 782- aco: Initial commit of independent AMD compiler 783- radv/aco: Setup alternate path in RADV to support the experimental 784 ACO compiler 785- radv: enable clustered reductions 786- radv/aco: enable VK_EXT_shader_demote_to_helper_invocation 787- radv: remove dead shared variables 788- aco: only emit waitcnt on loop continues if we there was some load or 789 export 790- freedreno: Enable the nir_opt_algebraic_late() pass. 791- nir: recombine nir_op_*sub when lower_sub = false 792- nir: Remove unnecessary subtraction optimizations 793- radv/aco: Don't lower subtractions 794- aco: call nir_opt_algebraic_late() exhaustively 795- nouveau: set lower_sub = true 796- aco: re-use existing phi instruction when lowering boolean phis 797- aco: don't reorder instructions in order to lower boolean phis 798- aco: don't combine minmax3 if there is a neg or abs modifier in 799 between 800- aco: ensure that uniform booleans are computed in WQM if their uses 801 happen in WQM 802- aco: refactor value numbering 803- aco: restrict scheduling depending on max_waves 804- aco: only skip RAR dependencies if the variable is killed somewhere 805- aco: add can_reorder flags to load_ubo and load_constant 806- aco: don't schedule instructions through depending VMEM instructions 807- aco: Lower to CSSA 808- aco: improve live variable analysis 809- aco: remove potential critical edge on loops. 810- aco: fix live-range splits of phis 811- aco: fix transitive affinities of spilled variables 812- aco: don't insert the exec mask into set of live-out variables when 813 spilling 814- aco: consider loop_exit blocks like merge blocks, even if they have 815 only one predecessor 816- aco: don't add interferences between spilled phi operands 817- aco: simplify calculation of target register pressure when spilling 818- aco: ensure that spilled VGPR reloads are done after p_logical_start 819- aco: omit linear VGPRs as spill variables 820- aco: always set scratch_offset in startpgm 821- aco: implement VGPR spilling 822- docs/relnotes/new_features.txt: Add note about ACO 823- aco: fix immediate offset for spills if scratch is used 824- aco: only use single-dword loads/stores for spilling 825- aco: fix accidential reordering of instructions when scheduling 826- aco: workaround Tonga/Iceland hardware bug 827- aco: fix invalid access on Pseudo_instructions 828- aco: preserve kill flag on moved operands during RA 829- aco: don't split live-ranges of linear VGPRs 830- aco: fix a couple of value numbering issues 831 832Daniel Stone (1): 833 834- panfrost: Respect offset for imported resources 835 836Danilo Spinella (1): 837 838- egl: Include stddef.h in generated source 839 840Danylo Piliaiev (10): 841 842- nir/loop_unroll: Update the comments for loop_prepare_for_unroll 843- nir/loop_unroll: Prepare loop for unrolling in wrapper_unroll 844- nir/loop_analyze: Treat do{}while(false) loops as 0 iterations 845- glsl: Fix unroll of do{} while(false) like loops 846- tgsi_to_nir: Translate TGSI_INTERPOLATE_COLOR as INTERP_MODE_NONE 847- iris: Fix fence leak in iris_fence_flush 848- st/nine: Ignore D3DSIO_RET if it is the last instruction in a shader 849- intel/compiler: Fix C++ one definition rule violations 850- glsl: Initialize all fields of ir_variable in constructor 851- i965: Unify CC_STATE and BLEND_STATE atoms on Haswell as a workaround 852 853Dave Airlie (75): 854 855- virgl: drop unused format field 856- virgl: fix format conversion for recent gallium changes. 857- gallivm: fix atomic compare-and-swap 858- llvmpipe: refactor jit type creation 859- gallivm: make lp_build_float_to_r11g11b10 take a const src 860- gallivm: handle helper invocation (v2) 861- gallivm: move first/last level jit texture members. 862- llvmpipe: handle early test property. 863- gallivm: add a basic image limit 864- llvmpipe: move the fragment shader variant key to dynamic length. 865- draw: add jit image type for vs/gs images. 866- llvmpipe: introduce image jit type to fragment shader jit. 867- gallivm/tgsi: add image interface to tgsi builder 868- gallivm: add image load/store/atomic support 869- draw: add vs/gs images support 870- llvmpipe: add fragment shader image support 871- llvmpipe: bind vertex/geometry shader images 872- gallivm: add support for fences api on older llvm 873- gallivm: add memory barrier support 874- llvmpipe: flush on api memorybarrier. 875- llvmpipe: enable ARB_shader_image_load_store 876- docs: add shader image extensions for llvmpipe 877- gallivm: fix appveyor build after images changes 878- gallivm: disable accurate cube corner for integer textures. 879- llvmpipe: enable fb no attach 880- gallivm/flow: add counter reset for loops 881- gallivm: add coroutine support files to gallivm. 882- gallivm: add coroutine pass manager support 883- llvmpipe: reogranise jit pointer ordering 884- gallivm: add new compute related intrinsics 885- gallivm: add support for compute shared memory 886- llvmpipe: add compute threadpool + mutex 887- gallivm: add barrier support for compute shaders. 888- llvmpipe: introduce compute shader context 889- llvmpipe: add initial compute state structs 890- gallivm: add compute jit interface. 891- llvmpipe: add compute debug option 892- llvmpipe: add initial shader create/bind/destroy variants framework. 893- llvmpipe: introduce new state dirty tracking for compute. 894- llvmpipe: introduce variant building infrastrucutre. 895- llvmpipe: add compute shader generation. 896- llvmpipe: add grid launch 897- llvmpipe: add compute pipeline statistics support. 898- llvmpipe: add support for compute constant buffers. 899- llvmpipe: add compute sampler + sampler view support. 900- llvmpipe: add ssbo support to compute shaders 901- llvmpipe: add compute shader images support 902- llvmpipe: add compute shader parameter fetching support 903- llvmpipe: add local memory allocation path 904- llvmpipe: enable compute shaders if LLVM has coroutines 905- docs: add llvmpipe features for fb_no_attach and compute shaders 906- st/mesa: Prefer R8 for bitmap textures 907- st/mesa: fix R8 bitmap texture for TGSI paths. 908- llvmpipe: make texture buffer offset alignment == 16 909- llvmpipe/draw: fix image sizes for vertex/geometry shaders. 910- llvmpipe/draw: handle UBOs that are < 16 bytes. 911- gallivm/sample: add gather component selection to the key. 912- gallium: add a a new cap for changing the TGSI TG4 instruction 913 encoding 914- st/glsl: add support for alternate TG4 encoding. 915- llvmpipe: add support for tg4 component selection. 916- gallivm: fix coroutines on aarch64 with llvm 8 917- gallivm/draw/swr: make the gs_iface not depend on tgsi. 918- nir: add a pass to lower flat shading. 919- gallium: add flatshade lowering capability 920- st/mesa: handling lower flatshading for NIR drivers. 921- llvmpipe: handle compute shader launch with 0 threads 922- zink: ask for flatshade lowering 923- zink: add dri loader 924- zink: query support (v2) 925- zink/spirv: store all values as uint. 926- zink: add support for compressed formats 927- zink: add sample mask support 928- zink: add samples to rasterizer 929- zink: attempt to get multisample resource creation right 930- llvmpipe/ppc: fix if/ifdef confusion in backport. 931 932Dave Stevenson (1): 933 934- broadcom/v3d: Allow importing linear BOs with arbitrary 935 offset/stride. 936 937Duncan Hopkins (7): 938 939- zink: clamped limits to INT_MAX when stored as uint32_t. 940- zink: fix line-width calculation 941- zink: respect ubo buffer alignment requirement 942- zink: limited uniform buffer size so the limits is not exceeded. 943- zink: pass line width from rast_state to gfx_pipeline_state. 944- zink: Use optimal layout instead of general. Reduces valid layer 945 warnings. Fixes RADV image noise. 946- zink: make sure src image is transfer-src-optimal 947 948Dylan Baker (120): 949 950- docs: Mark 19.2.0-rc2 as done and push back rc3 and rc4/final 951- glsl/tests: Handle windows \\r\n new lines 952- meson: don't try to generate i18n translations on windows 953- meson: Make shared-glapi a combo 954- meson: don't build glapi_static_check_table on windows 955- add a git ignore for subprojects 956- meson: add a zlib subproject 957- meson: add a expat subproject 958- glapi: export glapi_destroy_multithread when building shared-glapi on 959 windows 960- meson: fix dl detection on non cygwin windows 961- meson: build getopt when using msvc 962- meson: Add a platform for windows 963- meson: don't build glx or dri by default on windows 964- meson: don't allow glvnd on windows 965- meson: don't generate file into subdirs 966- Docs: mark that 19.2.0-rc3 has been released 967- scons: Make scons and meson agree about path to glapi generated 968 headers 969- docs: Add release notes for 19.2.0 970- docs: add SHA256 sum for 19.2.0 971- docs: update calendar, add news item, and link release notes for 972 19.2.0 973- release: Push 19.3 back two weeks 974- bin/get-pick-list: use --oneline=pretty instead of --oneline 975- meson: fix logic for generating .pc files with old glvnd 976- meson: Try finding libxvmcw via pkg-config before using find_library 977- meson: Link xvmc with libxv 978- meson: gallium media state trackers require libdrm with x11 979- docs: update install docs for meson 980- docs: use https for mesonbuild.com 981- docs: remove stray newline 982- meson: remove -DGALLIUM_SOFTPIPE from st/osmesa 983- docs: Add use of Closes: tag for closing gitlab issues 984- docs: add a new_features.text file and remove 19.3.0 release notes 985- scripts: Add a gen_release_notes.py script 986- release: Add an update_release_calendar.py script 987- bin: delete unused releasing scripts 988- meson: Only error building gallium video without libdrm when the 989 platform is drm 990- docs: Add relnotes for 19.2.1 991- docs: Add SHA256 sum for 19.2.1 992- docs: update calendar, add news item, and link release notes for 993 19.2.1 994- util: use \_WIN32 instead of WIN32 995- meson: add windows compiler checks and libraries 996- meson: Add windows defines to glapi 997- meson: Add necessary defines for mesa_gallium on windows 998- meson: build gallium gdi winsys 999- meson: build wgl state tracker 1000- meson: build libgl-gdi target 1001- meson: build graw-gdi target 1002- meson: fix gallium-osmesa to build for windows 1003- meson: Don't check for posix_memalign on windows 1004- util/xmlconfig: include strndup.h for windows 1005- meson: fix pipe-loader compilation for windows 1006- meson: don't look for rt on windows 1007- meson: Add support for using win_flex and win_bison on windows 1008- meson: force inclusion of inttypes.h for glcpp with msvc 1009- meson: disable sse4.1 optimizations with msvc 1010- meson: add switches for SWR with MSVC 1011- meson: don't define USE_ELF_TLS for windows 1012- meson: Add idep_getopt for tests 1013- meson: Add msvc compat args to util/tests 1014- meson: Set visibility and compat args for graw 1015- meson: don't build gallium trivial tests on windows 1016- meson: disable graw tests on mingw 1017- meson: don't build or run mesa-sha1 test on windows 1018- meson: maintain names of shared API libraries 1019- meson: add msvc compat args to swr 1020- meson: don't error on formaters with mingw 1021- meson: only build timspec test if timespec is available 1022- meson: glcpp tests are expected to fail on windows 1023- meson/util: Don't run string_buffer tests on mingw 1024- glsl/tests: Handle no-exec errors 1025- docs: update meson docs for windows 1026- appveyor: Add support for meson as well as scons on windows 1027- gitlab-ci: Add a mingw x86_64 job 1028- meson: Don't use expat on windows 1029- gitlab-ci: Add a pkg-config for mingw 1030- Revert "gitlab-ci: Disable meson-mingw32-x86_64 job again for now" 1031- gitlab-ci: Set the meson wrapmode to disabled 1032- appveyor: Cache meson's wrap downloads 1033- meson/llvmpipe: Add dep_llvm to driver_swrast 1034- meson: Add support for wrapping llvm 1035- meson: Use cmake to find LLVM when building for windows 1036- docs: update meson docs for windows 1037- appveyor: Add support for building llvmpipe with meson 1038- appveyor: Move appveyor script into .appveyor directory 1039- docs: Add new feature for compiling for windows with meson 1040- meson: Require meson >= 0.49.1 when using icc or icl 1041- scons: Use print_function ins SConstruct 1042- scons: Print a deprecation warning about using scons on not windows 1043- scons: Also print a deprecation warning on windows 1044- docs: Add release not about scons deprecation 1045- docs: Add release notes for 19.2.2 1046- docs: Add sha256 sum for 19.2.2 1047- docs: update calendar, add news item and link release notes for 1048 19.2.2 1049- bin/gen_release_notes.py: fix conditional of bugfix 1050- bin/gen_release_notes.py: strip '#' from gitlab bugs 1051- bin/gen_release_notes.py: Return "None" if there are no new features 1052- bin/post_version.py: Pass version as an argument 1053- bin/post_version.py: white space fixes 1054- bin/post_release.py: Add .html to hrefs 1055- bin/gen_release_notes.py: html escape all external data 1056- bin/gen_release_notes.py: Add a warning if new features are 1057 introduced in a point release 1058- docs: update releasing process to use new scripts and gitlab 1059- nir: Fix invalid code for MSVC 1060- gitlab-ci: refactor out some common stuff for Windows and Linux 1061- gitlab-ci: Add a job for meson on windows 1062- VERSION: bump to rc1 1063- nir: correct use of identity check in python 1064- meson: Add dep_glvnd to egl deps when building with glvnd 1065- Bump VERSION to 19.3.0-rc2 1066- cherry-ignore: Update for 19.3-rc3 cycle 1067- Bump version for -rc3 1068- cherry-ignore: update for 19.3.0-rc4 cycle 1069- VERSION: bump for 19.3.0-rc4 1070- VERSION: Bump version for -rc5 1071- VERSION: bump version for 19.3-rc6 1072- cherry-ignore: update for 19.3-rc7 1073- meson/broadcom: libbroadcom_cle needs expat headers 1074- meson/broadcom: libbroadcom_cle also needs zlib 1075- Revert "egl: avoid local modifications for eglext.h Khronos standard 1076 header file" 1077- Revert "egl: move #include of local headers out of Khronos headers" 1078 1079Eduardo Lima Mitev (4): 1080 1081- nir: Add new texop nir_texop_tex_prefetch 1082- freedreno/ir3: Add a NIR pass to select tex instructions eligible for 1083 pre-fetch 1084- nir: Add a new ALU nir_op_imad24_ir3 1085- freedreno/ir3: Handle newly added opcode nir_op_imad24_ir3 1086 1087Emil Velikov (3): 1088 1089- mesa: bump version to 19.3.0-devel 1090- docs: add 19.3.0-devel release notes template 1091- docs: update calendar for 19.2.x 1092 1093Eric Anholt (57): 1094 1095- gallium: Add a block depth field to the u_formats table. 1096- gallium: Add block depth to the format utils. 1097- gallium: Add the ASTC 3D formats. 1098- gallium: Fix mesa format name in unit test failure path. 1099- gallium: Skip generating the pack/unpack union if we don't use it. 1100- gallium: Drop the useless union wrapper on pack/unpack. 1101- gallium: Drop a bit of dead code from the pack/unpack python. 1102- gallium: Fix big-endian addressing of non-bitmask array formats. 1103- gallium: Don't emit identical endian-dependent pack/unpack code. 1104- freedreno/a6xx: Fix non-mipmap filtering selection. 1105- freedreno: Fix the type of single-component scaled vertex attrs. 1106- gallium/osmesa: Introduce a test. 1107- gallium/osmesa: Fix a race in creating the stmgr. 1108- gallium/osmesa: Move 565 format selection checks where the rest are. 1109- uapi: Update drm_fourcc.h 1110- dri: Use DRM_FORMAT\_\* instead of defining our own copy. 1111- gitlab-ci: Disable dEQP's watchdog timer. 1112- gitlab-ci: Log the driver version that got tested. 1113- freedreno: Introduce gitlab-based CI. 1114- gitlab-ci/a630: Disable flappy 1115 layout_binding.ssbo.fragment_binding_array 1116- egl/android: Fix build since the DRI fourcc removal. 1117- gitlab-ci/a630: Drop remaining dEQP-GLES3.functional.draw.random.\* 1118 xfails. 1119- gitlab-ci/a630: Drop the MSAA expected failure. 1120- gitlab-ci: Make the test job fail when bugs are unexpectedly fixed. 1121- freedreno: Fix invalid read when a block has no instructions. 1122- freedreno/a3xx: Mostly fix min-vs-mag filtering decisions on 1123 non-mipmap tex. 1124- shader_enums: Move MAX_DRAW_BUFFERS to this file. 1125- turnip: Add a .editorconfig and .dir-locals.el 1126- turnip: Silence compiler warning about uninit pipeline. 1127- turnip: Fix failure behavior of vkCreateGraphicsPipelines. 1128- vc4: Enable the nir_opt_algebraic_late() pass. 1129- v3d: Enable the late algebraic optimizations to get real subs. 1130- nir: Make nir_search's dumping go to stderr. 1131- nir: Skip emitting no-op movs from the builder. 1132- nir: Keep the range analysis HT around intra-pass until we make a 1133 change. 1134- nir: Factor out most of the algebraic passes C code to .c/.h. 1135- nir: Fix some wonky whitespace in nir_search.h. 1136- turnip: Drop unused tu_pack_clear_value() return. 1137- turnip: Fill in clear color packing for r10g11b11 and rgb9e5. 1138- turnip: Tell spirv_to_nir that we want fragcoord as a sysval. 1139- turnip: Set up the correct tiling mode for small attachments. 1140- turnip: Emit clears of gmem using linear. 1141- freedreno/ci: Ban texsubimage2d_pbo.r16ui_2d, due to two flakes 1142 reported. 1143- mesa: Add debug info to \_mesa_format_from_format_and_type() error 1144 path. 1145- mesa: Fix depth/stencil ordering in 1146 \_mesa_format_from_format_and_type(). 1147- mesa: Add format/type matching for DEPTH/UINT_24_8. 1148- mesa: Add support for array formats of depth and stencil. 1149- mesa: Refactor the entirety of 1150 \_mesa_format_matches_format_and_type(). 1151- v3d: Add Compute Shader support 1152- r100/r200: factor out txformat/txfilter setup from the TFP path. 1153- radeon: Fill in the TXOFFSET field containing the tile bits in our 1154 relocs. 1155- radeon: Drop the unused first arg of OUT_BATCH_RELOC. 1156- mesa: Replace the LA16_UNORM packed formats with one array format. 1157- mesa: Replace MESA_FORMAT_L8A8/A8L8 UNORM/SNORM/SRGB with an array 1158 format. 1159- gallium: Drop the unused PIPE_FORMAT_A*L\* formats. 1160- mesa: Redefine the RG formats as array formats. 1161- ci: Disable lima until its farm can get fixed. 1162 1163Eric Engestrom (104): 1164 1165- scons: define MESA_LLVM_VERSION_STRING like the other build systems 1166 do 1167- llvmpipe: use LLVM version string instead of re-computing it 1168- swr: use LLVM version string instead of re-computing it 1169- scons: add support for MAJOR_IN_{MKDEV,SYSMACROS} 1170- egl: warn user if they set an invalid EGL_PLATFORM 1171- ttn: fix 64-bit shift on 32-bit \`1\` 1172- egl: fix deadlock in malloc error path 1173- util/os_file: fix double-close() 1174- anv: fix format string in error message 1175- freedreno/drm-shim: fix mem leak 1176- nir: fix memleak in error path 1177- gallivm: replace \`0x\` version print with actual version string 1178- meson/scons/android: add LLVM_AVAILABLE binary flag 1179- aux/draw: replace binary HAVE_LLVM checks with LLVM_AVAILABLE 1180- r600: replace binary HAVE_LLVM checks with LLVM_AVAILABLE 1181- svga: replace binary HAVE_LLVM checks with LLVM_AVAILABLE 1182- amd: replace major llvm version checks with LLVM_VERSION_MAJOR 1183- swr: replace major llvm version checks with LLVM_VERSION_MAJOR 1184- gallivm: replace major llvm version checks with LLVM_VERSION_MAJOR 1185- clover: replace major llvm version checks with LLVM_VERSION_MAJOR 1186- gallivm: replace more complex 3.x version check with 1187 LLVM_VERSION_MAJOR/MINOR 1188- clover: replace more complex 3.x version check with 1189 LLVM_VERSION_MAJOR/MINOR 1190- llvmpipe: replace more complex 3.x version check with 1191 LLVM_VERSION_MAJOR/MINOR 1192- meson/scons/android: drop now-unused HAVE_LLVM 1193- gallivm: drop LLVM<3.3 code paths as no build system allows that 1194- anv: add support for driconf 1195- wsi: add minImageCount override 1196- anv: add support for vk_x11_override_min_image_count 1197- amd: move adaptive sync to performance section, as it is defined in 1198 xmlpool 1199- radv: add support for vk_x11_override_min_image_count 1200- drirc: override minImageCount=2 for gfxbench 1201- meson/iris: replace partial list of nir dep files with 1202 idep_nir_headers 1203- meson/v3d: replace partial list of nir dep files with 1204 idep_nir_headers 1205- gitlab-ci: rename stages to something simpler 1206- gl: drop incorrect pkg-config file for glvnd 1207- anv: split instance dispatch table 1208- anv: implement ICD interface v4 1209- meson: split compiler warnings one per line 1210- radv: fix s/load/store/ copy-paste typo 1211- meson: drop -Wno-foo bug workaround for Meson < 0.46 1212- meson: split more compiler options to their own line 1213- meson: re-add incorrect pkg-config files with GLVND for backward 1214 compatibility 1215- docs/release-calendar: fix bugfix release numbers 1216- docs/release-calendar: add missing <td> and </td> 1217- glsl: turn runtime asserts of compile-time value into compile-time 1218 asserts 1219- etnaviv: fix bitmask typo 1220- docs/install: drop autotools references 1221- git: delete .gitattributes 1222- egl: replace MESA_EGL_NO_X11_HEADERS hack with upstream EGL_NO_X11 1223- loader: replace int/1/0 with bool/true/false 1224- loader: s/int/bool/ for predicate result 1225- loader: use ARRAY_SIZE instead of NULL sentinel 1226- meson/loader: drop unneeded \*.h file 1227- script: drop get_reviewer.pl 1228- meson: add missing idep_nir_headers in iris_gen_libs 1229- meson: use idep_nir instead of libnir in libnouveau 1230- meson: use idep_nir instead of libnir in libclnir 1231- meson: use idep_nir instead of libnir in gallium nine 1232- meson: use idep_nir instead of libnir in haiku softpipe 1233- meson: use idep_nir instead of libnir in pipe-loader 1234- meson: rename libnir to \_libnir to make it clear it's not meant to 1235 be used anywhere else 1236- meson: drop duplicate inc_nir from libiris 1237- meson: drop duplicate inc_nir from libglsl 1238- meson: drop duplicate inc_nir from spirv2nir 1239- meson: drop unused inc_nir 1240- include: update drm-uapi 1241- meson: fix sys/mkdev.h detection on Solaris 1242- GL: drop symbols mangling support 1243- meson: rename \`glvnd_missing_pc_files\` to \`not 1244 glvnd_has_headers_and_pc_files\` 1245- meson: move a couple of include installs around 1246- meson: split headers one per line 1247- meson: split Mesa headers as a separate installation 1248- meson: skip installation of GLVND-provided headers 1249- symbols-check: ignore exported C++ symbols 1250- anv: add exported symbols check 1251- radv: add exported symbols check 1252- gbm: turn 0/-1 bool into true/false 1253- gbm: replace 1/0 bool with true/false 1254- gbm: replace NULL sentinel with explicit ARRAY_SIZE() 1255- gbm: use size_t for array indexes 1256- gitlab-ci: set a common job parent for container stage 1257- gitlab-ci: set a common job parent for build stage 1258- gitlab-ci: set a common job parent for test stage 1259- mesa/math: delete leftover... from 18 years ago (!) 1260- mesa/math: delete duplicate extern symbol 1261- util/u_atomic: fix return type of p_atomic_{inc,dec}_return() and 1262 p_atomic_{cmp,}xchg() 1263- travis: don't (re)install python 1264- travis: test meson install as well 1265- osmesa: add missing #include <stdint.h> 1266- llvmpipe: avoid compiling no-op block on release builds 1267- llvmpipe: avoid generating empty-body blocks 1268- meson: add -Werror=empty-body to disallow \`if(x);\` 1269- anv: fix error message 1270- anv: fix empty-body instruction 1271- radv: fix empty-body instruction 1272- v3d: fix empty-body instruction 1273- tu: fix empty-body instruction 1274- anv: add a couple printflike() annotations 1275- loader: default to iris for all future PCI IDs 1276- travis: fix scons build after deprecation warning 1277- meson: define \_GNU_SOURCE on FreeBSD 1278- egl: fix \_EGL_NATIVE_PLATFORM fallback 1279- egl: move #include of local headers out of Khronos headers 1280- vulkan: delete typo'd header 1281 1282Erico Nunes (7): 1283 1284- lima: fix ppir spill stack allocation 1285- lima/ppir: lower selects to scalars 1286- lima/ppir: enable vectorize optimization 1287- lima/ppir: mark regalloc created ssa unspillable 1288- lima/ppir: optimizations in regalloc spilling code 1289- lima/ppir: improve regalloc spill cost calculation 1290- lima: remove partial clear support from pipe->clear() 1291 1292Erik Faye-Lund (210): 1293 1294- gallium/auxiliary/indices: consistently apply start only to input 1295- mesa/main: remove unused include 1296- util: fix SSE-version needed for double opcodes 1297- util: do not assume MSVC implies SSE 1298- mesa/x86: improve SSE-checks for MSVC 1299- util: only allow \_BitScanReverse64 on 64-bit cpus 1300- gallium/gdi: use GALLIUM_FOO rather than HAVE_FOO 1301- st/mesa: remove always-true expression 1302- .mailmap: add an alias for Michel Dänzer 1303- .mailmap: add an alias for Eric Engestrom 1304- .mailmap: add an alias for Bas Nieuwenhuizen 1305- .mailmap: add an alias for Frank Binns 1306- glsl: correct bitcast-helpers 1307- loader/dri3: do not blit outside old/new buffers 1308- .mailmap: specify spelling for Elie Tournier 1309- .mailmap: add an alias for Alexandros Frantzis 1310- .mailmap: add an alias for Gert Wollny 1311- .mailmap: add an alias for Tomeu Vizoso 1312- .mailmap: add a couple of aliases for Jakob Bornecrantz 1313- nir: initialize uses_discard to false 1314- nir: initialize needs_helper_invocations as well 1315- mesa/main: prefer R8-textures instead of A8 for glBitmap in display 1316 lists 1317- gallium/u_blitter: set a more sane viewport-state 1318- mesa: expose alpha-ref as a state-variable 1319- nir: allow passing alpha-ref state to lowering-code 1320- mesa/gallium: automatically lower alpha-testing 1321- st/mesa: move point_size_per_vertex-logic to helper 1322- nir: add lowering-pass for point-size mov 1323- mesa/gallium: automatically lower point-size 1324- nir: support derefs in two-sided lighting lowering 1325- mesa/gallium: automatically lower two-sided lighting 1326- nir: support lowering clipdist to arrays 1327- nir: support feeding state to nir_lower_clip_[vg]s 1328- mesa/program: support referencing the clip-space clip-plane state 1329- mesa/st: support lowering user-clip-planes automatically 1330- panfrost: do not report alpha-test as supported 1331- vc4: do not report alpha-test as supported 1332- v3d: do not report alpha-test as supported 1333- nir: drop support for using load_alpha_ref_float 1334- nir: drop unused alpha_ref_float 1335- mesa/st: assert that lowering is supported 1336- Revert "nir: drop unused alpha_ref_float" 1337- Revert "nir: drop support for using load_alpha_ref_float" 1338- Revert "v3d: do not report alpha-test as supported" 1339- Revert "vc4: do not report alpha-test as supported" 1340- zink: introduce opengl over vulkan 1341- zink: detect presence of VK_KHR_maintenance1 1342- zink/spirv: implement point-sprites 1343- zink: transform z-range 1344- zink: remove discard_if 1345- zink/spirv: implement some integer ops 1346- zink/spirv: handle reading registers 1347- zink/spirv: prepare for control-flow 1348- zink/spirv: implement if-statements 1349- zink/spirv: implement discard 1350- zink/spirv: implement loops 1351- zink: prepare for caching of renderpases/framebuffers 1352- zink: move render-pass begin to helper 1353- zink: do not leak image-views 1354- zink: move cmdbuf-resetting into a helper 1355- zink: prepare for multiple cmdbufs 1356- zink: pass zink_render_pass to pipeline-creation 1357- zink: cache programs 1358- zink: move renderpass inside gfx pipeline state 1359- zink: cache those pipelines 1360- zink: reference renderpass and framebuffer from cmdbuf 1361- zink: return old fence from zink_flush 1362- zink: reference vertex and index buffers 1363- zink: reference ubos and textures 1364- zink: wait for idle on context-destroy 1365- zink: whitespace cleanup 1366- zink: reference blit/copy-region resources 1367- zink: add curr_cmdbuf-helper 1368- zink: delete samplers after the current cmdbuf 1369- zink: texture-rects? 1370- zink: store shader_info in zink_shader 1371- zink: implement fmod 1372- zink: track used resources 1373- zink: do not destroy staging-resource, deref it 1374- zink: use uvec for undefs 1375- zink: emit dedicated block for variables 1376- zink: ensure non-fragment shaders use lod-versions of texture 1377- zink: ensure textures are transitioned properly 1378- zink: assign increasing locations to varyings 1379- zink: move primitive-topology stuff into program 1380- zink: tweak state handling 1381- zink: remove unusual alignment 1382- zink: return after blitting 1383- zink: implement batching 1384- zink: simplify renderpass/framebuffer logic a tad 1385- zink: cache render-passes 1386- zink: cache framebuffers 1387- zink: more batch-ism 1388- zink: use helper 1389- zink: fixup parameter name 1390- zink: ensure sampler-views survive a batch 1391- zink: remove hack-comment 1392- zink: clean up render-pass management 1393- zink: rename sampler-view destroy function 1394- zink: pass screen instead of device to program-functions 1395- zink: keep a reference to used render-passes 1396- zink: prepare for shadow-samplers 1397- zink: kill dead code 1398- zink: clamp scissors 1399- zink: do not use hash-table for regs 1400- zink: squashme: forward declare hash_table 1401- zink: squashme: trade cplusplus wrapper for header-guard 1402- zink: fix off-by-one in assert 1403- zink: reuse constants 1404- zink: pool descriptors per batch 1405- zink: request alpha-test lowering 1406- zink/spirv: var -> regs 1407- zink/spirv: rename vec_type 1408- zink: do not lower io 1409- zink: request ucp-lowering 1410- zink: cleanup zink_end_batch 1411- zink: drop unused argument 1412- zink: refactor fence destruction 1413- zink: only consider format-desc if checking details 1414- zink: document end-of-frame hack 1415- zink: use pipe_stencil_ref instead of uint32_t-array 1416- zink: store sampler and image_view counts 1417- zink: save original scissor and viewport 1418- zink: save all supported util_blitter states 1419- zink: process one aspect-mask bit at the time 1420- zink: clean up opcode-emitting a bit 1421- zink: add some opcodes 1422- zink: add division ops 1423- zink: add shift ops 1424- zink: implement ineg 1425- zink: more comparison-ops 1426- zink: more converts 1427- zink: add more compares 1428- zink: crash hard on unknown queries 1429- zink: abort on submit-failure 1430- zink: stub resource_from_handle 1431- zink: make sure imageExtent.depth is 1 for arrays 1432- zink/spirv: correct opcode 1433- zink: support more texturing 1434- zink: wait for transfer when reading 1435- zink/spirv: be a bit more strict with fragment-results 1436- zink/spirv: debug-print unknown varying slots 1437- zink: ensure layout is reasonable before copying 1438- zink: fixup: save rasterizer 1439- zink: set ExecutionModeDepthReplacing when depth is written 1440- zink: avoid texelFetch until it's implemented 1441- zink: remove insecure comment 1442- zink: don't crash when setting rast-state to NULL 1443- zink: add note about enabling PIPE_CAP_CLIP_HALFZ 1444- zink/spirv: always enable Sampled1D for fragment shaders 1445- zink: do not use both depth and stencil aspects for sampler-views 1446- zink/spirv: support vec1 coordinates 1447- zink: fixup boolean queries 1448- zink: disable timestamp-queries 1449- zink: move set_active_query_state-stub to zink_query.c 1450- HACK: zink: suspend / resume queries on batch-boundaries 1451- zink: also accept txl 1452- zink: use primconvert to get rid of 8-bit indices 1453- zink: initialize nr_samples for pipe_surface 1454- zink: fix rendering to 3D-textures 1455- zink: support shadow-samplers 1456- zink: disable PIPE_CAP_QUERY_TIME_ELAPSED for now 1457- zink: add missing sRGB DXT-formats 1458- zink: lower point-size 1459- zink/spirv: use ordered compares 1460- zink/spirv: implement f2b1 1461- zink/spirv: assert bit-size 1462- zink/spirv: implement bcsel 1463- zink/spirv: implement bitwise ops 1464- zink/spirv: implement b2i32 1465- zink/spirv: implement emit_select helper 1466- zink/spirv: implement emit_float_const helper 1467- zink/spirv: use bit_size instead of hard-coding 1468- zink/spirv: add emit_bitcast-helper 1469- zink/spirv: add emit_uint_const-helper 1470- zink/spirv: inline get_uvec_constant into emit_load_const 1471- zink/spirv: clean up get_[fu]vec_constant 1472- zink/spirv: fixup b2i32 and implement b2f32 1473- zink/spirv: prepare for 1-bit booleans 1474- zink: do not lower bools to float 1475- zink/spirv: fixup b2i32 1476- zink/spirv: implement load_front_face 1477- zink/spirv: alias generic varyings on non-generic ones 1478- zink: lower two-sided coloring 1479- zink/spirv: alias var0 on tex0 etc instead 1480- zink: do not set VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT for non-3D 1481 textures 1482- zink: use VK_FORMAT_B8G8R8A8_UNORM for PIPE_FORMAT_B8G8R8X8_UNORM 1483- zink: implement resource_from_handle 1484- zink: refactor blitting 1485- zink: fixup return-value 1486- zink: pass screen to zink_create_gfx_pipeline 1487- zink: do not set lineWidth to invalid value 1488- zink: fixup scissoring 1489- zink/spirv: more complete sampler-dim handling 1490- zink: simplify gl-to-vulkan lowering 1491- gitlab-ci: also build Zink on CI 1492- gitlab-ci: fixup debian tags 1493- zink: error if VK_KHR_maintenance1 isn't supported 1494- zink: emulate optional depth-formats 1495- st/mesa: lower global vars to local after lowering clip 1496- zink: use dynamic state for line-width 1497- zink: use bitfield for dirty flagging 1498- zink: drop nop descriptor-updates 1499- zink: only enable KHR_external_memory_fd if supported 1500- zink: emit line-width when using polygon line-mode 1501- zink: use actual format for render-pass 1502- zink: always allow mutating the format 1503- zink: do not advertize coherent mapping 1504- zink: disable fragment-shader texture-lod 1505- zink: correct depth-stencil format 1506 1507Francisco Jerez (56): 1508 1509- intel/fs: Teach fs_inst::is_send_from_grf() about some missing 1510 send-like instructions. 1511- intel/fs: Define is_payload() method of the IR instruction class. 1512- intel/fs: Define is_send() convenience IR helper. 1513- intel/fs: Fix constness of implied_mrf_writes() argument. 1514- intel/eu: Split brw_inst ex_desc accessors for SEND(C) vs. SENDS(C). 1515- intel/eu: Fix up various type conversions in brw_eu.c that are 1516 illegal C++. 1517- intel/eu: Rework opcode description tables to allow efficient look-up 1518 by either HW or IR opcode. 1519- intel/eu: Encode and decode native instruction opcodes from/to IR 1520 opcodes. 1521- intel/ir: Drop hard-coded correspondence between IR and HW opcodes. 1522- intel/ir: Represent physical and logical subsets of the CFG. 1523- intel/ir: Add helper function to push block onto CFG analysis stack. 1524- intel/ir: Represent logical edge of BREAK instruction. 1525- intel/ir: Represent physical edge of ELSE instruction. 1526- intel/ir: Represent physical edge of unconditional CONTINUE 1527 instruction. 1528- intel/eu/gen12: Extend brw_inst.h macros for Gen12 support. 1529- intel/eu/gen12: Add sanity-check asserts to brw_inst_bits() and 1530 brw_inst_set_bits(). 1531- intel/eu/gen12: Implement basic instruction binary encoding. 1532- intel/eu/gen12: Implement three-source instruction binary encoding. 1533- intel/eu/gen12: Implement control flow instruction binary encoding. 1534- intel/eu/gen12: Implement SEND instruction binary encoding. 1535- intel/eu/gen12: Implement indirect region binary encoding. 1536- intel/eu/gen12: Implement compact instruction binary encoding. 1537- intel/eu/gen12: Implement datatype binary encoding. 1538- intel/eu/gen11+: Mark dot product opcodes as unsupported on 1539 opcode_descs table. 1540- intel/eu/gen12: Add Gen12 opcode descriptions to the table. 1541- intel/eu/gen12: Fix codegen of immediate source regions. 1542- intel/eu/gen12: Codegen three-source instruction source and 1543 destination regions. 1544- intel/eu/gen12: Codegen control flow instructions correctly. 1545- intel/eu/gen12: Codegen pathological SEND source and destination 1546 regions. 1547- intel/eu/gen12: Codegen SEND descriptor regions correctly. 1548- intel/eu/gen12: Use SEND instruction for split sends. 1549- intel/eu/gen12: Don't set DD control, it's gone. 1550- intel/eu/gen12: Don't set thread control, it's gone. 1551- intel/ir/gen12: Add SYNC hardware instruction. 1552- intel/fs/gen12: Add codegen support for the SYNC instruction. 1553- intel/eu/gen12: Add auxiliary type to represent SWSB information 1554 during codegen. 1555- intel/eu/gen12: Add tracking of default SWSB state to the current 1556 brw_codegen instruction. 1557- intel/eu/gen12: Set SWSB annotations in hand-crafted assembly. 1558- intel/fs/gen12: Add scheduling information to the IR. 1559- intel/fs/gen12: Introduce software scoreboard lowering pass. 1560- intel/fs/gen12: Demodernize software scoreboard lowering pass. 1561- intel/disasm/gen12: Disassemble software scoreboard information. 1562- intel/disasm/gen12: Fix disassembly of some common instruction 1563 controls. 1564- intel/disasm/gen12: Disassemble three-source instruction source and 1565 destination regions. 1566- intel/disasm/gen12: Disassemble Gen12 SYNC instruction. 1567- intel/disasm/gen12: Disassemble Gen12 SEND instructions. 1568- intel/disasm: Don't disassemble saturate control on SEND 1569 instructions. 1570- intel/disasm: Disassemble register file of split SEND sources. 1571- intel/fs/gen12: Don't support source mods for 32x16 integer multiply. 1572- intel/eu/validate/gen12: Implement integer multiply restrictions in 1573 EU validator. 1574- intel/eu/validate/gen12: Fix validation of SYNC instruction. 1575- intel/eu/validate/gen12: Validation fixes for SEND instruction. 1576- intel/ir/gen12: Update assert in brw_stage_has_packed_dispatch(). 1577- intel/eu: Don't set notify descriptor field of gateway barrier 1578 message. 1579- intel/fs/gen12: Fix barrier codegen. 1580- intel/fs/gen11+: Fix CS_OPCODE_CS_TERMINATE codegen. 1581 1582Fritz Koenig (5): 1583 1584- include/GLES2: Sync GLES2 headers with Khronos 1585- mesa: GetFramebufferParameteriv spelling 1586- mesa: Allow MESA_framebuffer_flip_y for GLES 3 1587- gallium: Enable MESA_framebuffer_flip_y 1588- freedreno: reorder format check 1589 1590Gert Wollny (4): 1591 1592- radeonsi: Release storage for smda_uploads when the context is 1593 destroyed 1594- etnaviv: enable triangle strips only when the hardware supports it 1595- r600: Fix interpolateAtCentroid 1596- r600: Disable eight bit three channel formats 1597 1598Greg V (1): 1599 1600- clover: use iterator_range in get_kernel_nodes 1601 1602Gurchetan Singh (4): 1603 1604- virgl: remove stride from virgl_hw_res 1605- virgl: modify resource_create_from_handle(..) callback 1606- virgl: modify internal structures to track winsys-supplied data 1607- virgl: honor winsys supplied metadata 1608 1609Haihao Xiang (1): 1610 1611- i965: support AYUV/XYUV for external import only 1612 1613Hal Gentz (11): 1614 1615- glx: Fix SEGV due to dereferencing a NULL ptr from XCB-GLX. 1616- clover: Fix build after clang r370122. 1617- gallium/osmesa: Fix the inability to set no context as current. 1618- egl: Add EGL_CONFIG_SELECT_GROUP_MESA ext. 1619- egl: Fixes transparency with EGL and X11. 1620- egl: Puts RGBA visuals in the second config selection group. 1621- egl: Configs w/o double buffering support have no \`EGL_WINDOW_BIT`. 1622- Revert "egl: Configs w/o double buffering support have no 1623 \`EGL_WINDOW_BIT`." 1624- Revert "egl: Puts RGBA visuals in the second config selection group." 1625- Revert "egl: Fixes transparency with EGL and X11." 1626- Revert "egl: Add EGL_CONFIG_SELECT_GROUP_MESA ext." 1627 1628Heinrich Fink (8): 1629 1630- include: sync GL headers with registry 1631- specs: Sync framebuffer_flip_y text with GL registry 1632- headers: remove redundant GL token from GL wrapper 1633- specs: Add GL_MESA_EGL_sync 1634- registry: update gl.xml with GL_MESA_EGL_sync token 1635- headers: Add GL_MESA_EGL_sync token to GL 1636- egl: Add GL_MESA_EGL_sync support 1637- mesa/gl: Sync with Khronos registry 1638 1639Hyunjun Ko (3): 1640 1641- freedreno/ir3: Add data structures to support texture pre-fetch 1642- freedreno/ir3: Add support for texture sampling pre-dispatch 1643- freedreno/ir3: fix printing output registers of FS. 1644 1645Iago Toral (1): 1646 1647- v3d: drop unused shader_rec_count member from context 1648 1649Iago Toral Quiroga (13): 1650 1651- prog_to_nir: VARYING_SLOT_PSIZ is a scalar 1652- gallium/ttn: VARYING_SLOT_PSIZ and VARYING_SLOT_FOGC are scalar 1653- nir/lower_point_size: assume scalar PSIZ 1654- v3d: add missing line break for performance debug message 1655- v3d: make sure we have enough space in the CL for the primitive 1656 counts packet 1657- v3d: remove redundant update of queued draw calls 1658- v3d: fix TF primitive counts for resume without draw 1659- mesa/main: GL_GEOMETRY_SHADER_INVOCATIONS exists in 1660 GL_OES_geometry_shader 1661- v3d: trivial update to obsolete comment 1662- v3d: add new flag dirty TMU cache at v3d_compiler 1663- broadcom: document known hardware issues for L2T flush command 1664- v3d: request the kernel to flush caches when TMU is dirty 1665- st/mesa: only require ESSL 3.1 for geometry shaders 1666 1667Ian Romanick (22): 1668 1669- nir/algrbraic: Don't optimize open-coded bitfield reverse when 1670 lowering is enabled 1671- intel/compiler: Request bitfield_reverse lowering on pre-Gen7 1672 hardware 1673- nir/algebraic: Mark some value range analysis-based optimizations 1674 imprecise 1675- nir/algebraic: Clean up value range analysis-based optimizations 1676- nir/range-analysis: Adjust result range of exp2 to account for 1677 flush-to-zero 1678- nir/range-analysis: Adjust result range of multiplication to account 1679 for flush-to-zero 1680- nir/range-analysis: Fix incorrect fadd range result for (ne_zero, 1681 ne_zero) 1682- nir/range-analysis: Handle constants in nir_op_mov just like 1683 nir_op_bcsel 1684- nir/range-analysis: Range tracking for fpow 1685- nir/range-analysis: Add a lot more assertions about the contents of 1686 tables 1687- nir/algebraic: Do not apply late DPH optimization in vertex 1688 processing stages 1689- nir/algebraic: Additional D3D Boolean optimization 1690- nir/range-analysis: Bail if the types don't match 1691- nir/range-analysis: Use types in the hash key 1692- nir/range-analysis: Use types to provide better ranges from bcsel and 1693 mov 1694- nir/search: Fix possible NULL dereference in is_fsign 1695- intel/vec4: Don't try both sources as immediates for DPH 1696- intel/compiler: Report the number of non-spill/fill SEND messages on 1697 vec4 too 1698- nir/algebraic: Add the ability to mark a replacement as exact 1699- nir/algebraic: Mark other comparison exact when removing a == a 1700- intel/fs: Disable conditional discard optimization on Gen4 and Gen5 1701- intel/compiler: Fix 'comparison is always true' warning 1702 1703Icenowy Zheng (4): 1704 1705- lima: reset scissor state if scissor test is disabled 1706- lima: fix PLBU viewport configuration 1707- lima: support rectangle texture 1708- lima: do not set the PP uniforms address lowest bits 1709 1710Ilia Mirkin (6): 1711 1712- gallium/vl: use compute preference for all multimedia, not just blit 1713- teximage: ensure that Tex*SubImage\* checks format 1714- gallium/tgsi: add support for DEMOTE and READ_HELPER opcodes 1715- nvc0: add support for GL_EXT_demote_to_helper_invocation 1716- gm107/ir: fix loading z offset for layered 3d image bindings 1717- nv50/ir: mark STORE destination inputs as used 1718 1719Illia Iorin (2): 1720 1721- Revert "mesa/main: Fix multisample texture initialize" 1722- mesa/main: Ignore filter state for MS texture completeness 1723 1724Indrajit Das (1): 1725 1726- radeon/vcn: exclude raven2 from vcn 2.0 encode initialization 1727 1728James Xiong (5): 1729 1730- gallium: simplify throttle implementation 1731- gallium: rename PIPE_CAP_MAX_FRAMES_IN_FLIGHT to PIPE_CAP_THROTTLE 1732- iris: finish aux import on get_param 1733- gallium: do not increase ref count of the new throttle fence 1734- iris: try to set the specified tiling when importing a dmabuf 1735 1736Jan Beich (6): 1737 1738- gallium/hud: add CPU usage support for DragonFly/NetBSD/OpenBSD 1739- util: skip NEON detection if built with -mfpu=neon 1740- util: detect NEON at runtime on FreeBSD 1741- util: skip AltiVec detection if built with -maltivec 1742- util: detect AltiVec at runtime on BSDs 1743- util: simplify BSD includes 1744 1745Jan Zielinski (3): 1746 1747- swr/rasterizer: Enable ARB_fragment_layer_viewport 1748- swr/rasterizer: Fix GS attributes processing 1749- gallium/swr: Fix depth values for blit scenario 1750 1751Jason Ekstrand (57): 1752 1753- nir: Add explicit signs to image min/max intrinsics 1754- intel/nir: Add a helper for getting BRW_AOP from an intrinsic 1755- v3d: Use the correct opcodes for signed image min/max 1756- intel/fs: Drop the gl_program from fs_visitor 1757- intel/fs: Fix FB write inst groups 1758- Revert "intel/fs: Move the scalar-region conversion to the 1759 generator." 1760- anv: Bump maxComputeWorkgroupSize 1761- intel/tools: Decode 3DSTATE_BINDING_TABLE_POINTERS on SNB 1762- intel/tools: Decode PS kernels on SNB 1763- blorp: Memset surface info to zero when initializing it 1764- intel/blorp: Expose surf_retile_w_to_y internally 1765- intel/blorp: Expose surf_fake_interleaved_msaa internally 1766- intel/blorp: Use wide formats for nicely aligned stencil clears 1767- nir: Handle complex derefs in nir_split_array_vars 1768- nir: Don't infinitely recurse in lower_ssa_defs_to_regs_block 1769- nir: Add a block_is_unreachable helper 1770- nir/repair_ssa: Repair dominance for unreachable blocks 1771- nir/repair_ssa: Insert deref casts when needed 1772- nir/dead_cf: Repair SSA if the pass makes progress 1773- intel/fs: Handle UNDEF in split_virtual_grfs 1774- vulkan: Update the XML and headers to 1.1.123 1775- Move blob from compiler/ to util/ 1776- util/rb_tree: Add the unit tests 1777- util/rb_tree: Reverse the order of comparison functions 1778- intel/fs: Allow UB, B, and HF types in brw_nir_reduction_op_identity 1779- intel/fs: Allow CLUSTER_BROADCAST to do type conversion 1780- intel/fs: Do 8-bit subgroup scan operations in 16 bits 1781- anv: Advertise VK_KHR_shader_subgroup_extended_types 1782- nir/repair_ssa: Replace the unreachable check with the phi builder 1783- util/rb_tree: Replace useless ifs with asserts 1784- util/rb_tree: Also test \_safe iterators 1785- util/rb_tree: Stop relying on &iter->field != NULL 1786- intel/fs: Fix fs_inst::flags_read for ANY/ALL predicates 1787- anv/pipeline: Capture serialized NIR 1788- intel/eu/validate/gen12: Don't blow up on indirect src0. 1789- intel/fs/gen12: Implement gl_FrontFacing on gen12+. 1790- intel/genxml: Remove W-tiling on gen12 1791- intel/isl: Select Y-tiling for stencil on gen12 1792- intel/isl: Add isl_aux_usage_has_ccs 1793- spirv/info: Add a memorymodel_to_string helper 1794- Revert "mapi: Inline call x86_current_tls." 1795- intel/blorp: Use surf instead of aux_surf for image dimensions 1796- intel/isl: Add new aux modes available on gen12 1797- intel/isl/fill_state: Separate aux_mode handling from aux_surf 1798- intel/isl: Update surf_fill_state for gen12 1799- intel/isl: Support HIZ_CCS in emit_depth_stencil_hiz 1800- anv: Delay allocation of relocation lists 1801- anv: Reduce the minimum number of relocations 1802- intel/vec4: Set brw_stage_prog_data::has_ubo_pull 1803- anv: Avoid emitting UBO surface states that won't be used 1804- anv: Fix a potential BO handle leak 1805- anv/tests: Zero-initialize instances 1806- anv: Set the batch allocator for compute pipelines 1807- anv: Stop bounds-checking pushed UBOs 1808- anv: Set up SBE_SWIZ properly for gl_Viewport 1809- anv: Re-emit all compute state on pipeline switch 1810- anv: Don't leak when set_tiling fails 1811 1812Jean Hertel (1): 1813 1814- Fix missing dri2_load_driver on platform_drm 1815 1816Jiadong Zhu (1): 1817 1818- mesa: fix texStore for FORMAT_Z32_FLOAT_S8X24_UINT 1819 1820Jiang, Sonny (1): 1821 1822- loader: always map the "amdgpu" kernel driver name to radeonsi (v2) 1823 1824John Stultz (1): 1825 1826- Android.mk: Fix missing \\ from recent llvm change 1827 1828Jon Turney (2): 1829 1830- Fix timespec_from_nsec test for 32-bit time_t 1831- rbug: Fix use of alloca() without #include "c99_alloca.h" 1832 1833Jonathan Gray (3): 1834 1835- mapi: Adapted libglvnd x86 tsd changes 1836- winsys/amdgpu: avoid double simple_mtx_unlock() 1837- i965: update Makefile.sources for perf changes 1838 1839Jonathan Marek (90): 1840 1841- freedreno/a2xx: ir2: fix lowering of instructions after float 1842 lowering 1843- freedreno/a2xx: ir2: remove pointcoord y invert 1844- freedreno/a2xx: ir2: set lower_fdph 1845- freedreno/a2xx: ir2: fix saturate in cp 1846- freedreno/a2xx: ir2: check opcode on the right instruction in export 1847 cp 1848- freedreno/a2xx: ir2: fix incorrect instruction reordering 1849- freedreno/a2xx: ir2: update register state in scalar insert 1850- freedreno/a2xx: fix SRC_ALPHA_SATURATE for alpha blend function 1851- freedreno/a2xx: implement polygon offset 1852- freedreno/a2xx: fix depth gmem restore 1853- freedreno/a2xx: formats update 1854- u_format: add ETC2 to util_format_srgb/util_format_linear 1855- u_format: float type for R11G11B10_FLOAT/R9G9B9E5_FLOAT 1856- etnaviv: fix two-sided stencil 1857- turnip: fix binning shader compilation 1858- turnip: use image tile_mode for gmem configuration 1859- turnip: emit shader immediates 1860- turnip: fix vertex_id 1861- turnip: implement sampler state 1862- turnip: implement image view descriptor 1863- turnip: use linear tiling for scanout image 1864- turnip: align layer_size 1865- turnip: enable linear filtering 1866- turnip: basic descriptor sets (uniform buffer and samplers) 1867- turnip: lower samplers and uniform buffer indices 1868- turnip: use nir_opt_copy_prop_vars 1869- turnip: add some shader information in pipeline state 1870- turnip: emit texture and uniform state 1871- etnaviv: nir: fix gl_FrontFacing 1872- etnaviv: nir: allocate contiguous components for LOAD destination 1873- etnaviv: nir: set num_components for inputs/outputs 1874- qetnaviv: nir: use new immediates when possible 1875- etnaviv: nir: add native integers (HALTI2+) 1876- etnaviv: nir: use store_deref instead of store_output 1877- etnaviv: nir: remove "options" struct 1878- etnaviv: remove extra allocation for shader code 1879- etnaviv: nir: make lower_alu easier to follow 1880- etnaviv: disable earlyZ when shader writes fragment depth 1881- etnaviv: nir: fix gl_FragDepth 1882- etnaviv: update headers from rnndb 1883- etnaviv: implement texture comparator 1884- etnaviv: set texture INT_FILTER bit 1885- etnaviv: clear texture cache and flush ts when texture is modified 1886- etnaviv: get addressing mode from tiling layout 1887- etnaviv: rework compatible render base 1888- etnaviv: rework etna_resource_create tiling choice 1889- freedreno/ir3: remove input ncomp field 1890- freedreno/ir3: increase size of inputs/outputs arrays 1891- freedreno/ir3: implement fdd{x,y}_coarse opcodes 1892- freedreno/ir3: fix GETLOD for negative LODs 1893- freedreno/ir3: implement texop_texture_samples 1894- freedreno/ir3: implement fquantize2f16 1895- freedreno/regs: update a6xx 2d blit bits 1896- turnip: fix triangle strip 1897- turnip: fix 32 vertex attributes case 1898- turnip: fix segmentation fault in events 1899- turnip: fix segmentation fault with compute pipeline 1900- turnip: fix assert failing for 0 color attachments 1901- turnip: add astc format layout 1902- turnip: add format_is_uint/format_is_sint 1903- turnip: format table fixes 1904- turnip: add more 2d_ifmt translations 1905- turnip: improve view descriptor 1906- turnip: improve sampler descriptor 1907- turnip: add black border color 1908- turnip: add VK_KHR_sampler_mirror_clamp_to_edge 1909- turnip: update setup_slices 1910- turnip: disable tiling as necessary 1911- turnip: add anisotropy and compressed formats to device features 1912- turnip: update some shader state bits from GL driver 1913- turnip: fixup consts 1914- turnip: add code to lower indirect samplers 1915- turnip: add missing nir passes 1916- turnip: use nir_assign_io_var_locations instead of 1917 nir_assign_var_locations 1918- turnip: improve CmdCopyImage and implement CmdBlitImage 1919- turnip: basic msaa working 1920- turnip: depth/stencil 1921- turnip: push constants 1922- turnip: more descriptor sets 1923- spirv: set correct dest_type for texture query ops 1924- etnaviv: fix linear_nearest / nearest_linear filters on GC7000Lite 1925- etnaviv: fix TS samplers on GC7000L 1926- etnaviv: check NO_ASTC feature bit 1927- freedreno/a2xx: use sysval for pointcoord 1928- freedreno/a2xx: add missing vertex formats (SSCALE/USCALE/FIXED) 1929- etnaviv: fix depth bias 1930- etnaviv: stencil fix 1931- etnaviv: fix non-pointsprite points on GC7000L 1932- freedreno/ir3: disable texture prefetch for 1d array textures 1933- freedreno/registers: fix a6xx_2d_blit_cntl ROTATE 1934 1935Jordan Justen (42): 1936 1937- intel/genxml: Handle field names with different spacing/hyphen 1938- intel/genxml/gen11: Add spaces in EnableUnormPathInColorPipe 1939- intel/genxml: Run sort_xml.sh to tidy gen9.xml and gen11.xml 1940- intel/genxml: Add gen12.xml as a copy of gen11.xml 1941- intel/genxml: Build gen12 genxml 1942- intel/isl: Build gen12 using gen11 code paths 1943- intel/compiler: Disable compaction on gen12 for now 1944- intel/l3: Don't assert on gen12 (use gen11 config temporarily) 1945- iris: Build for gen12 1946- anv: Build for gen12 1947- i965: Exit with error if gen12+ is detected 1948- pci_id_driver_map: Support preferring iris over i965 1949- anv,iris: L3ALLOC register replaces L3CNTLREG for gen12 1950- iris/state: Move reg/mem load/store functions earlier in file 1951- intel/ir: Lower fpow on Gen12. 1952- intel/genxml,isl: Add gen12 render surface state changes 1953- intel/genxml,isl: Add gen12 depth buffer changes 1954- intel/genxml,isl: Add gen12 stencil buffer changes 1955- intel/isl: Add gen12 depth/stencil surface alignments 1956- iris: Let isl decide the supported tiling in more situations 1957- intel/isl: Add R10G10B10_FLOAT_A2_UNORM format 1958- iris/resource: Use isl surface alignment during bo allocation 1959- intel/common: Add interface to allocate device buffers 1960- anv: Implement aux-map allocator interface 1961- intel/common: Add surface to aux map translation table support 1962- anv/gen12: Initialize aux map context 1963- genxml/gen12: Add AUX MAP register definitions 1964- anv/gen12: Write GFX_AUX_TABLE base address register 1965- iris/bufmgr: Initialize aux map context for gen12 1966- isl/gen12: 64k surface alignment 1967- iris: Map each surf to it's aux-surf in the aux-map tables 1968- iris/gen12: Write GFX_AUX_TABLE base address register 1969- iris: Mark aux-map BO as used by all batches 1970- intel: Update alignment restrictions for HiZ surfaces. 1971- iris: Set MOCS for external surfaces to uncached 1972- intel/genxml: Add gen12 tile cache flush bit 1973- intel/dev: Add preliminary device info for Tigerlake 1974- intel/eu/validate/gen12: Add TGL to eu_validate tests. 1975- docs/relnotes/new_features.txt: Add note about gen12 support 1976- iris: Add IRIS_DIRTY_RENDER_BUFFER state flag 1977- iris/gen11+: Move flush for render target change 1978- iris: Allow max dynamic pool size of 2GB for gen12 1979 1980Jose Maria Casanova Crespo (5): 1981 1982- mesa: recover target_check before get_current_tex_objects 1983- v3d: writes to magic registers aren't RF writes after THREND 1984- v3d: flag dirty state when binding compute states 1985- v3d: Explicitly expose OpenGL ES Shading Language 3.1 1986- v3d: Fix predication with atomic image operations 1987 1988José Fonseca (5): 1989 1990- glx: Fix incompatible function pointer types. 1991- util: Prevent implicit declaration of function getenv. 1992- util: Prevent strcasecmp macro redefinion. 1993- scons: Make GCC builds stricter. 1994- scons: Fix force_scons parsing. 1995 1996Juan A. Suarez Romero (14): 1997 1998- docs: add release notes for 19.1.5 1999- docs: add sha256 checksums for 19.1.5 2000- docs: update calendar, add news item and link release notes for 2001 19.1.5 2002- docs: add release notes for 19.1.6 2003- docs: add sha256 checksums for 19.1.6 2004- docs: update calendar, add news item and link release notes for 2005 19.1.6 2006- docs: extend 19.1.x releases 2007- docs: add release notes for 19.1.7 2008- docs: add sha256 checksums for 19.1.7 2009- docs: update calendar, add news item and link release notes for 2010 19.1.7 2011- bin/get-pick-list.sh: sha1 commits can be smaller than 8 chars 2012- docs: add release notes for 19.1.8 2013- docs: add release notes for 19.1.8 2014- docs: update calendar, add news item and link release notes for 2015 19.1.8 2016 2017Karol Herbst (15): 2018 2019- gallium: add blob field to pipe_llvm_program_header 2020- rename pipe_llvm_program_header to pipe_binary_program_header 2021- clover/functional: add id_equals helper 2022- clover: add support for drivers having no proper binary format 2023- clover: prepare supporting multiple IRs 2024- clover: add support for passing kernels as nir to the driver 2025- nvc0: expose spirv support 2026- clover/nir: fix compilation with g++-5.5 and maybe earlier 2027- nv50/ir: fix unnecessary parentheses warning 2028- nv50/ir/nir: comparison of integer expressions of different 2029 signedness warning 2030- clover/llvm: remove harmful std::move call 2031- clover/codegen: remove unused get_symbol_offsets function 2032- clover: eliminate "ignoring attributes on template argument" warning 2033- st/mesa: fix crash for drivers supporting nir defaulting to tgsi 2034- nv50/ir: remove DUMMY edge type 2035 2036Ken Mays (1): 2037 2038- haiku: fix Mesa build 2039 2040Kenneth Graunke (86): 2041 2042- gallium/ddebug: Wrap resource_get_param if available 2043- gallium/trace: Wrap resource_get_param if available 2044- gallium/rbug: Wrap resource_get_param if available 2045- gallium/noop: Implement resource_get_param 2046- iris: Replace devinfo->gen with GEN_GEN 2047- iris: Fix broken aux.possible/sampler_usages bitmask handling 2048- iris: Update fast clear colors on Gen9 with direct immediate writes. 2049- iris: Drop copy format hacks from copy region based transfer path. 2050- iris: Avoid unnecessary resolves on transfer maps 2051- iris: Set MOCS in all STATE_BASE_ADDRESS commands 2052- iris: Fix large timeout handling in rel2abs() 2053- isl: Drop UnormPathInColorPipe for buffer surfaces. 2054- isl: Don't set UnormPathInColorPipe for integer surfaces. 2055- iris: Delete dead prototype 2056- intel/compiler: Fix src0/desc setter ordering 2057- intel/compiler: Handle bits 15:12 in 2058 brw_send_indirect_split_message() 2059- intel/compiler: Refactor FB write message control setup into a 2060 helper. 2061- intel/compiler: Use generic SEND for Gen7+ FB writes 2062- intel/compiler: Use new Gen11 headerless RT writes for MRT cases 2063- util: Add a \_mesa_i64roundevenf() helper. 2064- mesa: Fix \_mesa_float_to_unorm() on 32-bit systems. 2065- iris: Drop swizzling parameter from s8_offset. 2066- iris: Don't auto-flush/dirty on transfer unmap for coherent buffers 2067- iris: Actually describe bo_reuse driconf option 2068- iris: Fix partial fast clear checks to account for miplevel. 2069- iris: Lessen texture cache hack flush for blits/copies on Icelake. 2070- iris: Report correct number of planes for planar images 2071- iris: Invalidate state/texture/constant caches after 2072 STATE_BASE_ADDRESS 2073- intel: Stop redirecting state cache to command streamer cache section 2074- iris: Support the disable_throttling=true driconf option. 2075- iris: Ignore line stipple information if it's disabled 2076- iris: Add support for the always_flush_cache=true debug option. 2077- iris: Optimize out redundant sampler state binds 2078- iris: Avoid flushing for cache history on transfer range flushes 2079- iris: Fix constant buffer sizes for non-UBOs 2080- gallium: Fix util_format_get_depth_only 2081- iris: Finish initializing the BO before stuffing it in the hash table 2082- iris: Set bo->reusable = false in iris_bo_make_external_locked 2083- st/mesa: Only pause queries if there are any active queries to pause. 2084- iris: trivial whitespace fixes 2085- iris: Initialize ice->state.prim_mode to an invalid value 2086- st/mesa: Prefer 5551 formats for GL_UNSIGNED_SHORT_5_5_5_1. 2087- st/mesa: Increase GL_POINT_SIZE_RANGE minimum to 1.0 2088- intel/compiler: Set "Null Render Target" ex_desc bit on Gen11 2089- iris: Skip allocating a null surface when there are 0 color regions. 2090- iris: Flag IRIS_DIRTY_BINDINGS_XS on constant buffer rebinds 2091- iris: Explicitly emit 3DSTATE_BTP_XS on Gen9 with DIRTY_CONSTANTS_XS 2092- iris: Don't flag IRIS_DIRTY_BINDINGS for constant usage history 2093- iris: Track per-stage bind history, reduce work accordingly 2094- intel/compiler: Record whether any pull constant loads occur 2095- iris: Avoid uploading SURFACE_STATE descriptors for UBOs if possible 2096- iris: Use state_refs for draw parameters. 2097- iris: Rework iris_update_draw_parameters to be more efficient 2098- iris: Skip double-disabling TCS/TES/GS after BLORP operations 2099- isl: Drop WaDisableSamplerL2BypassForTextureCompressedFormats on 2100 Gen11 2101- st/mesa: Bail on incomplete attachments in discard_framebuffer 2102- intel/genxml: Stop manually scrubbing 'α' -> "alpha" 2103- broadcom/genxml: Stop manually scrubbing 'α' -> "alpha" 2104- Revert "intel/gen11+: Enable Hardware filtering of Semi-Pipelined 2105 State in WM" 2106- intel: Increase Gen11 compute shader scratch IDs to 64. 2107- iris: Only resolve for image levels/layers which are actually in use. 2108- iris: Disable CCS_E for 32-bit floating point textures. 2109- iris: Fix iris_rebind_buffer() for VBOs with non-zero offsets. 2110- st/dri: Perform MSAA downsampling for \__DRI2_THROTTLE_COPYSUBBUFFER 2111- dri: Avoid swapbuffer throttling in glXCopySubBufferMESA 2112- iris: Refactor push constant allocation so we can reuse it 2113- iris: Hack up a SKL/Gen9LP PS push constant fifo depth workaround 2114- Revert "iris: Hack up a SKL/Gen9LP PS push constant fifo depth 2115 workaround" 2116- iris: Drop bonus parameters from iris_init_*_context() 2117- iris: Drop vtbl usage for some load_register calls 2118- iris: Update comment about 3-component formats and buffer textures 2119- iris: Properly unreference extra VBOs for draw parameters 2120- st/mesa: Fix inverted polygon stipple condition 2121- iris: Implement the Broadwell NP Z PMA Stall Fix 2122- intel/fs/gen12: Use TCS 8_PATCH mode. 2123- iris: Implement the Gen < 9 tessellation quads workaround 2124- mesa: Use ctx->ReadBuffer in glReadBuffer back-to-front tests 2125- mesa: Make back_to_front_if_single_buffered non-static 2126- mesa: Handle pbuffers in desktop GL framebuffer attachment queries 2127- intel/compiler: Report the number of non-spill/fill SEND messages 2128- st/mesa: Silence chatty debug printf 2129- iris: Rework edgeflag handling 2130- nir: Use VARYING_SLOT_TESS_MAX to size indirect bitmasks 2131- iris: Fix "Force Zero RTA Index Enable" setting again 2132- driconf, glsl: Add a vs_position_always_invariant option 2133- drirc: Set vs_position_always_invariant for Shadow of Mordor on Intel 2134 2135Kevin Strasser (14): 2136 2137- drm-uapi: Update headers for fp16 formats 2138- i965: Add helper function for allowed config formats 2139- gallium: Use consistent approach for config format filtering 2140- dri: Add config attributes for color channel shift 2141- util: move bitcount to bitscan.h 2142- egl: Convert configs to use shifts and sizes instead of masks 2143- glx: Add fields for color shifts 2144- dri: Handle configs with floating point pixel data 2145- egl: Handle dri configs with floating point pixel data 2146- dri: Add fp16 formats 2147- gbm: Add buffer handling and visuals for fp16 formats 2148- i965: Add handling for fp16 configs 2149- gallium: Add buffer and configs handling or fp16 formats 2150- egl: Fix implicit declaration of ffs 2151 2152Khaled Emara (2): 2153 2154- freedreno/a3xx: fix texture tiling parameters 2155- freedreno/a3xx: fix sysmem <-> gmem tiles transfer 2156 2157Kristian Høgsberg (40): 2158 2159- freedreno/a6xx: Let the GPU track streamout offsets 2160- freedreno/a6xx: Implement primitive count queries on GPU 2161- freedreno/a6xx: Track location of gl_Position out as we link it 2162- freedreno/a6xx: Share shader state constructor and destructor 2163- freedreno/a6xx: Turn on vectorize_io 2164- freedreno/a6xx: Write multiple regs for SP_VS_OUT_REG and 2165 SP_VS_VPC_DST_REG 2166- freedreno/regs: Fix CP_DRAW_INDX_OFFSET command 2167- freedreno/regs: A couple of tess updates 2168- freedreno/a6xx: Factor out const state setup 2169- freedreno: Rename vp and fp to vs and fs in fd_program_stateobj 2170- freedreno: Add state binding functions for HS/DS/GS 2171- freedreno: Move fs functions after geometry pipeline stages 2172- freedreno/a6xx: Add generic program stateobj support for HS/DS/GS 2173- freedreno/ir3: Add HS/DS/GS to shader key and cache 2174- freedreno/a6xx: Emit const and texture state for HS/DS/GS 2175- freedreno/a6xx: Move instrlen and obj_start writes to fd6_emit_shader 2176- freedreno/registers: Update with GS, HS and DS registers 2177- freedreno/a6xx: Trim a few regs from fd6_emit_restore() 2178- freedreno/ir3: Add support for CHSH and CHMASK instructions 2179- freedreno/ir3: Use third register for offset for LDL and LDLV 2180- freedreno/ir3: Extend RA with mechanism for pre-coloring registers 2181- freedreno/ir3: Add new LDLW/STLW instructions 2182- freedreno/ir3: Add intrinsics that map to LDLW/STLW 2183- freedreno/a6xx: Add missing adjacency primitives to table 2184- freedreno/ir3: Add has_gs flag to shader key 2185- freedreno/ir3: Implement lowering passes for VS and GS 2186- freedreno/ir3: Implement primitive layout intrinsics 2187- freedreno/ir3: Setup ir3 inputs and outputs for GS 2188- freedreno/ir3: Pre-color GS header and primitive ID 2189- freedreno/ir3: Start GS with (ss) and (sy) 2190- freedreno/ir3: End VS with CHMASK and CHSH in GS pipelines 2191- freedreno/a6xx: Emit program state for GS 2192- freedreno/a6xx: Support layered render targets 2193- st/mesa: Also enable GS when ESSLVersion > 320 2194- freedreno/blitter: Save GS state 2195- freedreno/a6xx: Implement PIPE_QUERY_PRIMITIVES_GENERATED for GS 2196- freedreno/ci: Add failing tests to skip list 2197- freedreno/a6xx: Turn on geometry shaders 2198- nir: Use BITSET for tracking varyings in lower_io_arrays 2199- freedreno/a6xx: Disable geometry shaders for release 2200 2201Krzysztof Raszkowski (2): 2202 2203- util: Add unreachable() definition for clang compiler. 2204- gallium/swr: Enable GL_ARB_gpu_shader5: multiple streams 2205 2206Laurent Carlier (1): 2207 2208- egl: avoid local modifications for eglext.h Khronos standard header 2209 file 2210 2211Leo Liu (3): 2212 2213- radeon/vcn: add RENOIR VCN decode support 2214- radeon/vcn: Add VP9 8K decode support 2215- radeonsi: enable 8K video decode support for HEVC and VP9 2216 2217Lepton Wu (14): 2218 2219- st/mesa: Allow zero as [level|layer]_override 2220- virgl: Fix pipe_resource leaks under multi-sample. 2221- egl/android: Only keep BGRA EGL configs as fallback 2222- virgl: replace fprintf with \_debug_printf 2223- virgl: Remove wrong EAGAIN handling for drmIoctl 2224- gbm: Add GBM_MAX_PLANES definition 2225- egl/android: Remove our own reference to buffers. 2226- virgl: Remove formats with unusual sample count. 2227- mapi: Inline call x86_current_tls. 2228- mapi: split entry_generate_or_patch for x86 tls 2229- mapi: Clean up entry_patch_public for x86 tls 2230- mapi: Inline call x86_current_tls. 2231- mapi: Improve the x86 tsd stubs performance. 2232- gallium: dri2: Use index as plane number. 2233 2234Lionel Landwerlin (59): 2235 2236- glsl/tests: take refs on glsl types 2237- nir/tests: take reference on glsl types 2238- compiler: ensure glsl types are not created without a reference 2239- mesa/compiler: rework tear down of builtin/types 2240- radeonsi: take reference glsl types for compile threads 2241- i965: honor scanout requirement from DRI 2242- util/timespec: use unsigned 64 bit integers for nsec values 2243- util: fix compilation on macos 2244- egl: fix platform selection 2245- vulkan/overlay: bounce image back to present layout 2246- intel: update product names for WHL 2247- radv: store engine name 2248- driconfig: add a new engine name/version parameter 2249- vulkan: add vk_x11_strict_image_count option 2250- util/xmlconfig: fix regexp compile failure check 2251- drirc: include unreal engine version 0 to 23 2252- anv: gem-stubs: return a valid fd got anv_gem_userptr() 2253- intel: use proper label for Comet Lake skus 2254- intel: Add new Comet Lake PCI-ids 2255- mesa: don't forget to clear \_Layer field on texture unit 2256- intel: fix topology query 2257- intel/error2aub: add support for platforms without PPGTT 2258- intel: fix subslice computation from topology data 2259- intel/isl: Set null surface format to R32_UINT 2260- intel/isl: set surface array appropriately 2261- intel/isl: set vertical surface alignment on null surfaces 2262- etnaviv: remove variable from global namespace 2263- anv: fix vkUpdateDescriptorSets with inline uniform blocks 2264- anv: fix memory leak on device destroy 2265- anv: fix unwind of vkCreateDevice fail 2266- intel/perf: add mdapi maker helper 2267- intel/perf: expose some utility functions 2268- intel/perf: extract register configuration 2269- intel/perf: move registers to their own header 2270- drm-uapi: Update headers from drm-next 2271- intel/perf: add support for querying kernel loaded configurations 2272- intel/genxml: add generic perf counters registers 2273- intel/genxml: add RPSTAT register for core frequency 2274- intel/perf: add mdapi writes for register perf counters 2275- anv: implement VK_INTEL_performance_query 2276- docs: Add new Intel extension 2277- intel/dev: store whether the device uses an aux map tables on devinfo 2278- anv: Add aux-map translation for gen12+ 2279- intel/perf: update ICL configurations 2280- intel/dump_gpu: handle context create extended ioctl 2281- intel/dev: set default num_eu_per_subslice on gen12 2282- mesa: check draw buffer completeness on 2283 glClearBufferfi/glClearBufferiv 2284- anv: Properly handle host query reset of performance queries 2285- mesa: check framebuffer completeness only after state update 2286- anv: invalidate file descriptor of semaphore sync fd at vkQueueSubmit 2287- anv: remove list items on batch fini 2288- anv/wsi: signal the semaphore in the acquireNextImage 2289- intel/perf: fix invalid hw_id in query results 2290- intel/perf: set read buffer len to 0 to identify empty buffer 2291- intel/perf: take into account that reports read can be fairly old 2292- intel/perf: simplify the processing of OA reports 2293- intel/perf: fix improper pointer access 2294- anv: fix missing gen12 handling 2295- anv: fix incorrect VMA alignment for CCS main surfaces 2296 2297Lucas Stach (17): 2298 2299- etnaviv: fix vertex buffer state emission for single stream GPUs 2300- gallium/util: don't depend on implementation defined behavior in 2301 listen() 2302- rbug: fix transmitted texture sizes 2303- rbug: unwrap index buffer resource 2304- rbug: move flush_resource initialization 2305- rbug: implement missing explicit sync related fence functions 2306- rbug: forward texture_barrier to pipe driver 2307- rbug: forward can_create_resource to pipe driver 2308- rbug: implement resource creation with modifier 2309- rbug: remove superfluous NULL check 2310- etnaviv: keep references to pending resources 2311- etnaviv: drm: remove unused etna_cmd_stream_finish 2312- etnaviv: rework the stream flush to always go through the context 2313 flush 2314- etnaviv: drm: add softpin interface 2315- etnaviv: check for softpin availability on Halti5 devices 2316- etnaviv: add linear texture support on GC7000 2317- etnaviv: GC7000: flush TX descriptor and instruction cache 2318 2319Marek Olšák (161): 2320 2321- radeonsi/gfx10: fix the legacy pipeline by storing as_ngg in the 2322 shader cache 2323- radeonsi: move some global shader cache flags to per-binary flags 2324- radeonsi/gfx10: fix tessellation for the legacy pipeline 2325- radeonsi/gfx10: fix the PRIMITIVES_GENERATED query if using legacy 2326 streamout 2327- radeonsi/gfx10: create the GS copy shader if using legacy streamout 2328- radeonsi/gfx10: add as_ngg variant for VS as ES to select Wave32/64 2329- radeonsi/gfx10: fix InstanceID for legacy VS+GS 2330- radeonsi/gfx10: don't initialize VGT_INSTANCE_STEP_RATE_0 2331- radeonsi/gfx10: always use the legacy pipeline for streamout 2332- radeonsi/gfx10: finish up Navi14, add PCI ID 2333- radeonsi/gfx10: add AMD_DEBUG=nongg 2334- winsys/amdgpu+radeon: process AMD_DEBUG in addition to R600_DEBUG 2335- radeonsi: add PKT3_CONTEXT_REG_RMW 2336- radeonsi/gfx10: remove incorrect ngg/pos_writes_edgeflag variables 2337- radeonsi/gfx10: set PA_CL_VS_OUT_CNTL with CONTEXT_REG_RMW to fix 2338 edge flags 2339- radeonsi: consolidate determining VGPR_COMP_CNT for API VS 2340- radeonsi: align scratch and ring buffer allocations for faster memory 2341 access 2342- radeonsi: unbind blend/DSA/rasterizer state correctly in delete 2343 functions 2344- radeonsi: fix scratch buffer WAVESIZE setting leading to corruption 2345- ac: enable LLVM atomic optimizations 2346- ac: use fma on gfx10 2347- radeonsi/gfx10: use fma for TGSI_OPCODE_FMA 2348- radeonsi/gfx10: don't call gfx10_destroy_query with compute-only 2349 contexts 2350- radeonsi: disable DCC when importing a texture from an incompatible 2351 driver 2352- radeonsi: only support at most 1024 threads per block 2353- radeonsi/gfx10: fix wave occupancy computations 2354- r300,r600,radeonsi: read winsys_handle::stride,offset in drivers, not 2355 winsyses 2356- r300,r600,radeonsi: set winsys_handle::stride,offset in drivers, not 2357 winsyses 2358- ac/surface: add RADEON_SURF_NO_FMASK 2359- radeonsi: handle NO_DCC early 2360- radeonsi: move HTILE allocation outside of radeonsi 2361- radeonsi: move texture storage allocation outside of radeonsi 2362- radeonsi: remove redundant si_texture offset and size fields 2363- ac: replace HAVE_LLVM with LLVM_VERSION_MAJOR for 2364 atomic-optimizations 2365- prog_to_nir, tgsi_to_nir: make sure kill doesn't discard NaNs 2366- radeonsi/gfx9: honor user stride for imported buffers 2367- radeonsi: add Navi12 PCI ID 2368- ac: move PBB MAX_ALLOC_COUNT into radeon_info 2369- ac: move num_sdp_interfaces into radeon_info 2370- ac: move ac_get_max_wave64_per_simd into radeon_info 2371- ac: move ac_get_num_physical_sgprs into radeon_info 2372- ac: move ac_get_num_physical_vgprs into radeon_info 2373- gallium: extend resource_get_param to be as capable as 2374 resource_get_handle 2375- radeonsi: implement pipe_screen::resource_get_param 2376- radeonsi: include drm_fourcc.h to fix the build 2377- amd: add more PCI IDs for Navi14 2378- ac/addrlib: fix chip identification for Vega10, Arcturus, Raven2, 2379 Renoir 2380- ac: stop using PCI IDs for chip identification 2381- amd: remove all PCI IDs supported by amdgpu 2382- nir: don't add bindless variables to num_textures and num_images 2383- nir: define 8-byte size and alignment for bindless variables 2384- tgsi_to_nir: fix masked out image loads 2385- tgsi_to_nir: fix 2-component system values like 2386 tess_level_inner_default 2387- ac/nir: port Z compare value clamping from radeonsi 2388- ac/nir: force unnormalized coordinates for RECT 2389- radeonsi: initialize displayable DCC using the retile blit to prevent 2390 hangs 2391- gallium/vl: don't set PIPE_HANDLE_USAGE_EXPLICIT_FLUSH 2392- radeonsi/gfx10: fix L2 cache rinse programming 2393- ac: fix incorrect vram_size reported by the kernel 2394- ac: add radeon_info::tcc_harvested 2395- radeonsi/gfx10: fix corruption for chips with harvested TCCs 2396- ac: fix num_good_cu_per_sh for harvested chips 2397- ac: set the number of SDPs same as the number of TCCs 2398- ac: reorder and print all radeon_info fields 2399- tgsi_to_nir: handle PIPE_FORMAT_NONE in image opcodes 2400- ac/surface: don't allocate FMASK if there is no graphics 2401- ac: add ac_build_image_get_sample_count from radeonsi 2402- ac/nir: fix GLSL imageSamples() 2403- winsys/radeon: initialize SIMD properties in radeon_info 2404- util: use simple_mtx_t for util_range 2405- gallium: add PIPE_RESOURCE_FLAG_SINGLE_THREAD_USE to skip util_range 2406 lock 2407- st/mesa: use simple_mtx_t instead of mtx_t 2408- radeonsi: use simple_mtx_t instead of mtx_t 2409- amd: don't use AMD_FAMILY definitions from amdgpu_drm.h 2410- gallium/util: remove enum numbering from util_format_layout 2411- gallium/util: add planar format layouts and helpers 2412- gallium/u_tests: test NV12 allocation and export 2413- vl: use u_format in vl_video_buffer_formats 2414- radeonsi: allocate planar multimedia formats in 1 buffer 2415- radeonsi: remove si_vid_join_surfaces and use combined planar 2416 allocations 2417- radeonsi: ignore metadata for non-zero planes 2418- radeonsi: don't set BO metadata for non-zero planes 2419- nir: add shader_info::last_msaa_image 2420- tgsi/scan: add tgsi_shader_info::msaa_images_declared 2421- radeonsi: fix GLSL imageSamples() 2422- radeonsi: set the sample index for shader images correctly 2423- radeonsi: add FMASK slots for shader images (for MSAA images) 2424- radeonsi: clean up image_fetch_rsrc 2425- radeonsi: apply FMASK to MSAA image loads 2426- radeonsi: expand FMASK before MSAA image stores are used 2427- radeonsi: enable MSAA shader images 2428- nir: add a strip parameter to nir_serialize 2429- nir: move gl_nir_opt_access from glsl directory 2430- nir/drawpixels: handle load_color0, load_input, 2431 load_interpolated_input 2432- nir/drawpixels: fix what appears to be a copy-paste bug in 2433 get_texcoord_const 2434- tgsi_to_nir: add #ifdef header guards 2435- nir: add nir_shader_compiler_options::lower_to_scalar 2436- st/mesa: use nir_shader_compiler_options::lower_to_scalar 2437- tgsi_to_nir: use nir_shader_compiler_options::lower_to_scalar 2438- gallium: remove PIPE_SHADER_CAP_SCALAR_ISA 2439- ac/nir: add back nir_op_fmod 2440- clover: fix the nir_serialize build failure 2441- st/mesa: always allocate pack/unpack buffers as staging 2442- radeonsi/nir: simplify si_lower_nir signature 2443- st/mesa: use \*prog at the end of st_link_nir 2444- st/mesa: deduplicate code for ATI fs in st_program_string_notify 2445- st/mesa: simplify the signature of st_release_basic_variants 2446- st/mesa: don't store stream output info to shader cache for tess ctrl 2447 shaders 2448- st/mesa: remove st_compute_program in favor of st_common_program 2449- st/mesa: deduplicate cases in st_deserialise_ir_program 2450- st/mesa: sink TCS/TES/GS/CS translate code into 2451 st_translate_common_program 2452- st/mesa: deduplicate st_common_program code in 2453 st_program_string_notify 2454- st/mesa: clean up more after the removal of st_compute_program 2455- st/mesa: move vertex program preparation code into 2456 st_prepare_vertex_program 2457- st/mesa: unify transform feedback info translation code 2458- st/mesa: finalize NIR after shader variant passes for TCS/TES/GS/CS 2459- st/mesa: don't call translate_*_program functions for NIR 2460- st/mesa: call prog_to_nir sooner for ARB_fp 2461- st/mesa: reorder and document code in st_translate_vertex_program 2462- st/mesa: call the reset callback if glGetGraphicsResetStatus returns 2463 a failure 2464- radeonsi: call the reset callback if get_device_reset_status returns 2465 a failure 2466- radeonsi: recreate aux_context after a GPU reset 2467- gallium/u_blitter: remove an unused variable 2468- st/mesa: silence a warning in st_nir_lower_tex_src_plane 2469- st/mesa: call st_nir_opts for linked shaders only once 2470- st/mesa: lower doubles for NIR after linking 2471- st/mesa: rename st_xxx_program::tgsi to state 2472- st/mesa: rename basic -> common for st_common_program 2473- st/mesa: remove num_tgsi_tokens from st_xx_program 2474- st/mesa: remove st_vp_variant_key in favor of st_common_variant_key 2475- st/mesa: remove unused st_xxx_program::sha1 2476- st/mesa: remove redundant function st_reference_compprog 2477- st/mesa: merge st_fragment_program into st_common_program 2478- st/mesa: don't call variables "tgsi" when they can reference NIR 2479- nir: allow nir_lower_uniforms_to_ubo to be run repeatedly 2480- st/mesa: replace pipe_shader_state with tgsi_token\* in st_vp_variant 2481- gallium/noop: implement get_disk_shader_cache and 2482 get_compiler_options 2483- util/disk_cache: finish all queue jobs in destroy instead of killing 2484 them 2485- util/u_queue: skip util_queue_finish if num_threads is 0 2486- st/mesa: move some NIR lowering before shader caching 2487- st/mesa: don't lower_global_vars_to_local for VS if there are no dead 2488 inputs 2489- st/mesa: assign driver locations for VS inputs for NIR before caching 2490- st/mesa: update VS shader_info for NIR after lowering passes 2491- gallium: add pipe_screen::finalize_nir 2492- tgsi_to_nir: use pipe_screen::finalize_nir 2493- st/mesa: use pipe_screen::finalize_nir 2494- radeonsi/nir: implement pipe_screen::finalize_nir 2495- glsl/serialize: restructure remap table code 2496- glsl/serialize: optimize for equal offsets in uniform remap tables 2497- include: add the definition of EGL_EXT_image_flush_external 2498- dri_interface: add interface for EGL_EXT_image_flush_external 2499- st/dri: assume external consumers of back buffers can write to the 2500 buffers 2501- st/dri: add support for EGL_EXT_image_flush_external 2502- egl: handle EGL_IMAGE_EXTERNAL_FLUSH_EXT 2503- egl: implement new functions from EGL_EXT_image_flush_external 2504- docs: document new feature EGL_EXT_image_flush_external 2505- radeonsi: don't print diagnostic LLVM remarks and notes 2506- radeonsi: initialize shader compilers in threads on demand 2507- ac: get tcc_harvested from the kernel 2508- winsys/amdgpu: use the new GPU reset query 2509- st/mesa: fix Sanctuary and Tropics by disabling ARB_gpu_shader5 for 2510 them 2511 2512Marek Vasut (4): 2513 2514- etnaviv: Make contexts track resources 2515- etnaviv: Rework resource status tracking 2516- etnaviv: Command buffer realloc 2517- etnaviv: Rework locking 2518 2519Marijn Suijten (2): 2520 2521- freedreno/a5xx: enable a510 2522- freedreno/ir3: Add missing ir3_nir_lower_tex_prefetch.c to Android.mk 2523 2524Matt Turner (6): 2525 2526- clover: Remove unused code 2527- intel/compiler: Remove unreachable() from brw_reg_type.c 2528- intel/compiler: Restructure instruction compaction in preparation for 2529 Gen12 2530- intel/compiler: Inline get_src_index() 2531- intel/compiler: Make separate src0/src1 index tables 2532- intel/compiler: Add instruction compaction support on Gen12 2533 2534Mauro Rossi (8): 2535 2536- android: mesa: revert "Enable asm unconditionally" 2537- android: anv: libmesa_vulkan_common: add libmesa_util static 2538 dependency 2539- android: aco: fix undefined template 'std::__1::array' build errors 2540- android: compiler/nir: build nir_divergence_analysis.c 2541- android: aco: add support for libmesa_aco 2542- android: amd/common: export amd/llvm headers 2543- android: aco: fix Lower to CSSA 2544- android: radeonsi: fix build after vl refactoring (v2) 2545 2546Maya Rashish (3): 2547 2548- intel/compiler: avoid truncating int64_t to int 2549- meson: Test for -Wl,--build-id=sha1 2550- llvmpipe: avoid left-shifting a negative number. 2551 2552Michael Schellenberger Costa (1): 2553 2554- aco: Cleanup insert_before_logical_end 2555 2556Michel Dänzer (48): 2557 2558- gitlab-ci: Move up meson-main job definition 2559- gitlab-ci: Use new needs: keyword 2560- gitlab-ci: Explicitly install linux-libc-dev for foreign 2561 architectures 2562- gitlab-ci: Keep g++ from stretch when installing foreign toolchains 2563- gitlab-ci: Add needs stanza to arm64_a306_gles2 job definition 2564- gitlab-ci: Use multiple inheritance instead of YAML references 2565- gitlab-ci: Simplify some job definitions by extending more similar 2566 jobs 2567- gitlab-ci: Move dependencies/needs for meson-main job to .deqp-test 2568- gitlab-ci: Move up meson-arm64 job definition 2569- gallivm: Limit DEBUG workaround to LLVM < 7 2570- swr: Limit DEBUG workaround to LLVM < 7 2571- ac: Remove DEBUG workaround 2572- gitlab-ci: Reference full ci-templates commit hash 2573- gitlab-ci: Pass --no-remove to apt-get where possible 2574- gitlab-ci: Create separate docker images for Debian stretch & buster 2575- gitlab-ci: Use newer packages from backports by default 2576- gitlab-ci: Use crossbuild-essential-\* packages 2577- gitlab-ci: Move scons build/test commands to a separate shell script 2578- gitlab-ci: Test scons with all LLVM versions 2579- gitlab-ci: Merge scons-nollvm and scons-llvm jobs 2580- radeonsi: fix VAAPI segfault due to various bugs 2581- loader: Avoid use-after-free / use of uninitialized local variables 2582- gitlab-ci: Declare needs: for stretch docker image 2583- gitlab-ci: Add needs: for x86 buster docker image 2584- gitlab-ci: Add test-container:arm64 to needs: for arm64 test jobs 2585- gitlab-ci: Set ccache path for cross compilers in meson cross file 2586- gitlab-ci: Use per-job ccache 2587- dri3: Pass \__DRI2_THROTTLE_COPYSUBBUFFER from 2588 loader_dri3_copy_drawable 2589- loader: Simplify handling of the radeonsi driver 2590- gitlab-ci/lava: Add needs: for container image to test jobs 2591- gitlab-ci: Remove redundant .meson-cross template script 2592- gitlab-ci: Add .use-debian-10 template 2593- gitlab-ci: Disable meson-mingw32-x86_64 job again for now 2594- gitlab-ci: Sort ARM docker image packages in alphabetical order 2595- gitlab-ci: Bring ARM docker image install script in line with x86_64 2596- gitlab-ci: Explicitly list debian-10 in needs: for .deqp-test 2597 template 2598- gitlab-ci: Use native aarch64 runner for ARM build jobs 2599- gitlab-ci: Update the meson cross file for LLVM_VERSION as well 2600- gitlab-ci: Enable llvmpipe in ARM build jobs 2601- intel/compiler: Don't left-shift by >= the number of bits of the type 2602- intel/compiler: Cast to target type before shifting left 2603- intel/fs: Check for NULL key in fs_visitor constructor 2604- gallium/util: Cast to target type before shifting left 2605- util: Use uint64_t for shifting left in sign_extend and strunc 2606- util/tests: Avoid int64_t overflow issues in fast_idiv_by_const test 2607- gitlab-ci: Enable UBSan for the meson-vulkan job 2608- gitlab-ci: Only run the pipeline if any files affecting it have 2609 changed 2610- gitlab-ci: Disable meson-windows job for the time being 2611 2612Michel Zou (1): 2613 2614- scons: add py3 support 2615 2616Nanley Chery (47): 2617 2618- anv/blorp: Use BLORP_BATCH_NO_UPDATE_CLEAR_COLOR 2619- anv: Properly allocate aux-tracking space for CCS_E 2620- anv/formats: Disable I915_FORMAT_MOD_Y_TILED_CCS on TGL+ 2621- iris: Drop support for I915_FORMAT_MOD_Y_TILED_CCS on TGL+ 2622- isl: Disable CCS_D on Gen12+ 2623- anv/image: Disable CCS_D on Gen12+ 2624- anv/cmd_buffer: Don't assume CCS_E includes CCS_D 2625- iris: Don't assume CCS_E includes CCS_D 2626- isl: Round up some pitches to 512B for Gen12's CCS 2627- intel/blorp: Halve the Gen12 fast-clear/resolve rectangle 2628- intel/blorp: Don't assert aux slices match main slices 2629- anv/private: Modify aux slice helpers for Gen12 CCS 2630- i965/miptree: Avoid -Wswitch for the Gen12 aux modes 2631- isl/drm: Map HiZ and CCS tilings to Y 2632- iris: Allow for non-Y-tiled aux allocation 2633- isl: Add and use isl_tiling_flag_to_enum() 2634- isl: Redefine the CCS layout for Gen12 2635- intel: Enable CCS_E for some formats on Gen12 2636- intel/blorp: Disable depth testing for slow depth clears 2637- iris: Clear ::has_hiz when disabling aux 2638- intel: Use RENDER_SURFACE_STATE::DepthStencilResource 2639- intel: Use 3DSTATE_DEPTH_BUFFER::ControlSurfaceEnable 2640- intel: Enable CCS_E for R24_UNORM_X8_TYPELESS on TGL+ 2641- isl: Reduce assertions during aux surf creation 2642- intel: Support HIZ_CCS in isl_surf_get_ccs_surf 2643- intel/blorp: Assert against HiZ in surface states 2644- intel/blorp: Treat HIZ_CCS like HiZ 2645- iris: Don't guess the aux_usage 2646- iris: Create an unusable secondary aux surface 2647- iris: Define initial HIZ_CCS state and transitions 2648- iris: Enable HIZ_CCS in depth buffer instructions 2649- isl: Add isl_surf_supports_hiz_ccs_wt() 2650- intel: Refactor blorp_can_hiz_clear_depth() 2651- intel/blorp: Satisfy HIZ_CCS fast-clear alignments 2652- iris: Start using blorp_can_hiz_clear_depth() 2653- intel: Fix and use HIZ_CCS write through mode 2654- intel/blorp: Satisfy clear color rules for HIZ_CCS 2655- iris: Enable HIZ_CCS sampling 2656- iris: Don't leak the resource for unsupported modifier 2657- iris: Disallow incomplete resource creation 2658- iris: Drop iris_resource::aux::extra_aux::bo 2659- iris: Bail resource creation upon aux creation error 2660- iris: Determine aux offsets within configure_aux 2661- iris: Allocate main and aux surfaces together 2662- gallium/dri2: Fix creation of multi-planar modifier images 2663- gallium: Store the image format in winsys_handle 2664- iris: Fix import of multi-planar surfaces with modifiers 2665 2666Nataraj Deshpande (1): 2667 2668- egl/android: Enable HAL_PIXEL_FORMAT_RGBA_FP16 format 2669 2670Neil Armstrong (1): 2671 2672- Revert "ci: Disable lima until its farm can get fixed." 2673 2674Neil Roberts (6): 2675 2676- glsl: Store the precision for a function return type 2677- nir/builder: Move nir_atan and nir_atan2 from SPIR-V translator 2678- nir/builtin: Add #include u_math.h to the header 2679- nir/builtin: Add extern "C" guards to nir_builtin_builder.h 2680- glsl: Add opcodes for atan and atan2 2681- glsl/builtin: Add alternate versions of atan using new ops 2682 2683OBATA Akio (1): 2684 2685- util: fix to detect NetBSD properly 2686 2687Paulo Zanoni (8): 2688 2689- intel/fs: grab fail_msg from v32 instead of v16 when v32->run_cs 2690 fails 2691- intel/fs: make scan/reduce work with SIMD32 when it fits 2 registers 2692- intel/fs: roll the loop with the <0,1,0> additions in emit_scan() 2693- intel/fs: the maximum supported stride width is 16 2694- intel/fs: fix SHADER_OPCODE_CLUSTER_BROADCAST for SIMD32 2695- intel/fs: don't forget the stride at generate_shuffle 2696- intel/compiler: remove the operand restriction for src1 on GLK 2697- intel/compiler: fix nir_op_{i,u}*32 on ICL 2698 2699Pierre Moreau (5): 2700 2701- meson: Check for SPIRV-Tools and llvm-spirv 2702- clover/spirv: Add functions for validating SPIR-V binaries 2703- clover/spirv: Add functions for parsing arguments, linking programs, 2704 etc. 2705- clover/llvm: Add options for dumping SPIR-V binaries 2706- clover/llvm: Add functions for compiling from source to SPIR-V 2707 2708Pierre-Eric Pelloux Prayer (1): 2709 2710- mesa: implement glTextureStorageNDEXT functions 2711 2712Pierre-Eric Pelloux-Prayer (23): 2713 2714- glsl: replace 'x + (-x)' with constant 0 2715- mesa: fix invalid target error handling for teximage 2716- mesa: add EXT_dsa glNamedRenderbufferStorageEXT and 2717 glGetNamedRenderbufferParameterivEXT 2718- mesa: add EXT_dsa glClientAttribDefaultEXT / 2719 glPushClientAttribDefaultEXT 2720- mesa: add EXT_dsa NamedProgram functions 2721- mesa: add EXT_dsa glProgramUniform*EXT functions 2722- mesa: add EXT_dsa + EXT_texture_buffer_object functions 2723- mesa: add EXT_dsa + EXT_texture_integer functions 2724- mesa: add EXT_dsa + EXT_gpu_shader4 functions 2725- mesa: add EXT_dsa + EXT_gpu_program_parameters functions 2726- mesa: add EXT_dsa glGetFloati_vEXT/glGetDoublei_vEXT 2727- mesa: refactor GenerateTextureMipmap handling 2728- mesa: add EXT_dsa Generate*MipmapEXT functions 2729- mesa: add EXT_dsa NamedRenderbufferStorageMultisampleEXT function 2730- mesa: add EXT_dsa NamedCopyBufferSubDataEXT function 2731- radeonsi: align sdma byte count to dw 2732- radeonsi: sdma misc fixes 2733- radeonsi: disable sdma for gfx10 2734- radeonsi: tell the shader disk cache what IR is used 2735- mesa: enable msaa in clear_with_quad if needed 2736- radeonsi: fix shader disk cache key 2737- radeonsi: fix multi plane buffers creation 2738- radeonsi: use gfx9.surf_offset to compute texture offset 2739 2740Plamena Manolova (8): 2741 2742- genxml: Add 3DSTATE_DEPTH_BOUNDS instruction. 2743- iris: Add support for depth bounds testing. 2744- anv: Add support for depth bounds testing. 2745- genxml: Change 3DSTATE_DEPTH_BOUNDS bias. 2746- anv: Set depthBounds to true in anv_GetPhysicalDeviceFeatures. 2747- genxml: Add 3DSTATE_SO_BUFFER_INDEX\_\* instructions 2748- iris: Implement new way for setting streamout buffers. 2749- anv: Implement new way for setting streamout buffers. 2750 2751Prodea Alexandru-Liviu (4): 2752 2753- scons/windows: Fix build with LLVM>=8 2754- scons/MSYS2-MinGW-W64: Fix build options defaults Signed-off-by: 2755 Prodea Alexandru-Liviu <liviuprodea@yahoo.com> Reviewed-by: Jose 2756 Fonseca <jfonseca@vmware.com> Cc: <mesa-stable@lists.freedesktop.org> 2757- Appveyor/Meson: Add build test of osmesa gallium Signed-off-by: 2758 Prodea Alexandru-Liviu <liviuprodea@yahoo.com> Acked-by: Eric 2759 Engestrom <eric@engestrom.ch> Reviewed-by: Dylan Baker 2760 <dylan@pnwbakers.com> 2761- Meson: Remove lib prefix from graw and osmesa when building with 2762 Mingw. Also remove version sufix from osmesa swrast on Windows. 2763 2764Qiang Yu (4): 2765 2766- lima: move format handling to unified place 2767- lima: implement EGL_KHR_partial_update 2768- lima: don't use damage system when full damage 2769- lima: move damage bound build to resource 2770 2771Rafael Antognolli (13): 2772 2773- anv: Only re-emit non-dynamic state that has changed. 2774- intel/tools: Fix aubinator usage of rb_tree. 2775- anv/block_pool: Align anv_block_pool state to 64 bits. 2776- intel/tools: Factor out GGTT allocation. 2777- intel/tools: Use common code for GGTT address allocation. 2778- intel/tools: Add basic aub_context code and helpers. 2779- intel/tools: Support multiple contexts in intel_dump_gpu. 2780- intel/blorp/gen12: Set FWCC when storing the clear color. 2781- anv: Align fast clear color state buffer to a page. 2782- iris: Align fast clear color state buffer to a page. 2783- iris: Add Tile Cache Flush for Unified Cache. 2784- blorp: Add Tile Cache Flush for Unified Cache. 2785- anv: Add Tile Cache Flush for Unified Cache. 2786 2787Rhys Perry (84): 2788 2789- nir/lower_io_to_vector: allow FS outputs to be vectorized 2790- nir/lower_io_to_vector: add flat mode 2791- util: include u_endian.h in u_math.h 2792- nir/lower_io_to_vector: don't merge compact varyings 2793- radv: keep GS threads with excessive emissions which could write to 2794 memory 2795- radv: always emit a position export in gs copy shaders 2796- radv: never kill a NGG GS shader 2797- nir/opt_remove_phis: handle phis with no sources 2798- aco: run nir_lower_int64() before nir_lower_idiv() 2799- aco: implement 64-bit ineg 2800- aco: fix GFX9 opcode for v_xad_u32 2801- aco: fix v_subrev_co_u32_e64 opcode 2802- aco: fix opcode for s_mul_hi_i32 2803- aco: check for duplicate opcode numbers 2804- radv/aco: actually disable ACO when unsupported 2805- aco,radv/aco: get dissassembly for release builds if requested 2806- aco: store printed backend IR in binary 2807- radv/aco: return a correct name and description for the backend IR 2808- aco,radv: rename record_llvm_ir/llvm_ir_string to record_ir/ir_string 2809- aco: don't CSE v_readlane_b32/v_readfirstlane_b32 2810- aco: CSE readlane/readfirstlane/permute/reduce with the same exec 2811 mask 2812- aco: set loop_info::has_discard for demotes 2813- aco: don't remove the loop exec mask in transition_to_Exact() 2814- radv/aco,aco: set lower_fmod 2815- nir/print: always use the right FILE \* 2816- aco: fix load_constant with multiple arrays 2817- nir/constant_folding: add back and use constant_fold_state 2818- nir/constant_folding: fold load_constant intrinsics 2819- aco: move s_andn2_b64 instructions out of the p_discard_if 2820- aco: enable nir_opt_sink 2821- aco: Allow literals on VOP3 instructions. 2822- aco: Assemble opsel in VOP3 instructions. 2823- aco: workaround GFX10 0x3f branch bug 2824- aco: pad code with s_code_end on GFX10 2825- aco: Initial work to avoid GFX10 hazards. 2826- aco: Use the VOP3-only add/sub GFX10 instructions if needed. 2827- aco: Have s_waitcnt_vscnt write to NULL. 2828- radv/aco: disable NGG when ACO is used 2829- aco/gfx10: fix inline uniform blocks 2830- aco/gfx10: disable GFX9 1D texture workarounds 2831- aco: rework scratch resource code 2832- aco: update print_ir 2833- nir/lower_non_uniform: lower image/texture instructions taking derefs 2834- nir/lower_input_attachments: pass on non-uniform access flag 2835- aco: don't apply sgprs/constants to read/write lane instructions 2836- aco: use can_accept_constant in valu_can_accept_literal 2837- aco: readfirstlane vgpr pointers in convert_pointer_to_64_bit() 2838- aco: implement divergent vulkan_resource_index 2839- aco: don't use p_as_uniform for vgpr sampler/image indices 2840- aco: fix scheduling with s_memtime/s_memrealtime 2841- aco: don't CSE s_memtime 2842- aco: emit_split_vector() s_memtime results 2843- nir/lower_idiv: add new llvm-based path 2844- aco: use nir_lower_idiv_precise 2845- aco: run opt_algebraic in a loop 2846- aco: small stage corrections 2847- aco: fix 64-bit p_extract_vector on 32-bit p_create_vector 2848- aco: create load_lds/store_lds helpers 2849- aco: fix sparse store_lds() 2850- aco: properly combine additions into ds_write2_b64/ds_read2_b64 2851- aco: use ds_read2_b64/ds_write2_b64 2852- aco: add a few missing checks in value numbering 2853- aco: keep can_reorder/barrier when combining addition into SMEM 2854- aco: add missing bld.scc() 2855- Revert "aco: only emit waitcnt on loop continues if we there was some 2856 load or export" 2857- radv: round vgprs/sgprs before calculating max_waves 2858- aco: increase accuracy of SGPR limits 2859- aco: take LDS into account when calculating num_waves 2860- aco: Fix reductions on GFX10. 2861- aco: Remove dead code in reduction lowering. 2862- aco: try to group together VMEM loads of the same resource 2863- aco: a couple loop handling fixes for GFX10 hazard pass 2864- aco: rename README to README.md 2865- aco: fix new_demand calculation for first instructions 2866- aco: fix shuffle with uniform operands 2867- aco: fix read_invocation with VGPR lane index 2868- aco: don't propagate vgprs into v_readlane/v_writelane 2869- aco: don't combine literals into v_cndmask_b32/v_subb/v_addc 2870- aco: fix 64-bit fsign with 0 2871- aco: propagate p_wqm on an image_sample's coordinate p_create_vector 2872- aco: fix i2i64 2873- aco: add v_nop inbetween exec write and VMEM/DS/FLAT 2874- radv: set writes_memory for global memory stores/atomics 2875- nir/lower_io_to_vector: don't create arrays when not needed 2876 2877Rob Clark (60): 2878 2879- freedreno/ir3: convert block->predecessors to set 2880- freedreno/ir3: maintain predecessors/successors 2881- freedreno/ir3: do better job of marking convergence points 2882- nir: remove unused constant_fold_state 2883- freedreno/drm: fix 64b iova shifts 2884- freedreno/ir3: use uniform base 2885- freedreno/ir3: cleanup "partially const" ubo srcs 2886- freedreno/ir3: fix addr/pred spilling 2887- freedreno/ir3: fix mad copy propagation special case 2888- freedreno/ir3: assert that only single address 2889- freedreno/ir3: fix cp cmps.s opt 2890- freedreno/ir3: allow copy propagation for relative 2891- util: android logging support 2892- freedreno/a6xx: don't tile things that are too small 2893- freedreno/a6xx: fix 3d tex layout 2894- freedreno: fix compiler warning 2895- freedreno/a6xx: pre-calculate userconst stateobj size 2896- gitlab-ci/a630: skip 2897 dEQP-GLES3.functional.fbo.msaa.2_samples.stencil_index8 2898- freedreno/a6xx: un-open-code PC_PRIMITIVE_CNTL_1.PSIZE 2899- freedreno/a6xx: fix binning pass vs. xfb 2900- freedreno/a6xx: do streamout only in binning pass 2901- freedreno/ir3: drop unused param 2902- freedreno/ir3: handle multi component alu src when propagating shifts 2903- freedreno: update registers 2904- freedreno/ir3: remove unused ir3_instruction::inout 2905- freedreno/ir3: track sysval slot for inputs 2906- freedreno/ir3: don't DCE ij_pix if used for pre-fs-texture-fetch 2907- freedreno/ir3: add meta instruction for pre-fs texture fetch 2908- freedreno/ir3: fixup register footprint to account for prefetch 2909- freedreno/ir3: add dummy bary.f(ei) for pre-fs-fetch 2910- freedreno/ir3: add pre-dispatch tex fetch to disasm 2911- freedreno/ir3: force i/j pixel to r0.x 2912- freedreno/a6xx: add support for pre-fs texture fetch 2913- turnip: add support for pre-fs texture fetch 2914- freedreno/ir3: enable pre-fs texture fetch for a6xx 2915- nir/search: fix the PoT helpers 2916- freedreno/ir3: rename mul.s/mul.u 2917- nir: Add a new ALU nir_op_imul24 2918- nir: add amul instruction 2919- nir: add address calc related opt rules 2920- nir: add nir_lower_amul pass 2921- freedreno/ir3: add rule to generate imad24 2922- freedreno/ir3: optimize immed 2nd src to mad 2923- freedreno/ir3: add imul24 opcode 2924- freedreno/ir3: handle imad24_ir3 case in UBO lowering 2925- freedreno/ir3: handle scalarized varying inputs 2926- freedreno/ir3: fixup register footprint fixup 2927- freedreno/ir3: debug cleanup 2928- freedreno/ir3: make high regs easier to see in IR dumps 2929- freedreno/ir3: propagate dest flags for collect/fanin 2930- freedreno/ir3: treat high vs low reg as conversion 2931- freedreno/ir3: allow copy-propagate out of fanout 2932- freedreno/ir3: remove restrictions on const + (abs)/(neg) 2933- freedreno/ir3: handle the progress case 2934- freedreno/a6xx: remove some left over dead code 2935- freedreno/a6xx: cleanup magic registers 2936- freedreno/a6xx: add a618 support 2937- freedreno/ir3: fix gpu hang with pre-fs-tex-fetch 2938- Revert "freedreno/ir3: enable pre-fs texture fetch for a6xx" 2939- nir/lower_clip: Fix incorrect driver loc for clipdist outputs 2940 2941Robin Murphy (1): 2942 2943- egl/gbm: Fix config validation 2944 2945Rohan Garg (3): 2946 2947- panfrost: Remove unused argument from panfrost_drm_submit_vs_fs_job() 2948- panfrost: Jobs must be per context, not per screen 2949- panfrost: protect access to shared bo cache and transient pool 2950 2951Roland Scheidegger (4): 2952 2953- gallivm: use fallback code for mul_hi with llvm >= 7.0 2954- llvmpipe: fix CALLOC vs. free mismatches 2955- llvmpipe: increase max texture size to 2GB 2956- gallivm: Fix saturated signed psub/padd intrinsics on llvm 8 2957 2958Roman Stratiienko (1): 2959 2960- lima: Return fence unconditionally 2961 2962Sagar Ghuge (26): 2963 2964- intel/eu/gen12: Implement immediate 64 bit constant encoding. 2965- nir: Add alpha_to_coverage lowering pass 2966- intel/compiler: Remove emit_alpha_to_coverage workaround from backend 2967- intel: Add missing entry for brw_nir_lower_alpha_to_coverage in 2968 Makefile 2969- intel/compiler: Add Immediate support for 3 source instruction 2970- intel/compiler: Set bits according to source file 2971- intel/compiler: Don't move immediate in register 2972- intel/compiler: Refactor disassembly of sources in 3src instruction 2973- intel/isl: Don't reconfigure aux surfaces for MCS 2974- iris: Initialize CCS to fast clear while using with MCS 2975- iris: Define MCS_CCS state transitions and usages 2976- intel/blorp: Use isl_aux_usage_has_mcs instead of comparing 2977- iris: Get correct resource aux usage for copy 2978- intel/isl: Support lossless compression with multisamples 2979- iris: Create resource with aux_usage MCS_CCS 2980- genxml/gen12: Add Stencil Buffer Resolve Enable bit 2981- intel/blorp: Assign correct view while clearing depth stencil 2982- intel/blorp: Add helper function for stencil buffer resolve 2983- intel: Track stencil aux usage on Gen12+ 2984- intel/blorp: Set stencil resolve enable bit 2985- iris: Resolve stencil buffer lossless compression with WM_HZ_OP 2986 packet 2987- iris: Prepare stencil resource before clear depth stencil 2988- iris: Prepare depth resource if clear_depth enable 2989- iris: Prepare resources before stencil blit operation 2990- iris: Resolve stencil resource prior to copy or used by CPU 2991- intel/isl: Allow stencil buffer to support compression on Gen12+ 2992 2993Samuel Iglesias Gonsálvez (26): 2994 2995- spirv: check support for SPV_KHR_float_controls capabilities 2996- spirv/nir: keep track of SPV_KHR_float_controls execution modes 2997- nir: add auxiliary functions to detect if a mode is enabled 2998- nir: add support for flushing to zero denorm constants 2999- util: add softfloat functions to operate with doubles and floats 3000- util: add float to float16 conversions with RTZ and RTNE 3001- util: add fp64 -> fp32 conversion support for RTNE and RTZ rounding 3002 modes 3003- nir: add support for round to zero rounding mode to nir_op_f2f32 3004- nir: mind rounding mode on fadd, fsub, fmul and fma opcodes 3005- nir/opcodes: make sure f2f16_rtz and f2f16_rtne behavior is not 3006 overriden by the float controls execution mode 3007- nir/constant_expressions: mind rounding mode converting from float to 3008 float16 destinations 3009- nir/algebraic: disable inexact optimizations depending on float 3010 controls execution mode 3011- nir: fix denorms in unpack_half_1x16() 3012- nir: fix denorm flush-to-zero in sqrt's lowering at 3013 nir_lower_double_ops 3014- nir: fix fmin/fmax support for doubles 3015- intel/nir: do not apply the fsin and fcos trig workarounds for consts 3016- i965/fs/nir: add nir_op_unpack_half_2x16_split_*_flush_to_zero 3017- i965/fs/generator: refactor rounding mode helper in preparation for 3018 float controls 3019- i965/fs/generator: add new opcode to set float controls modes in 3020 control register 3021- i965/fs: add emit_shader_float_controls_execution_mode() and aux 3022 functions 3023- i965/fs: set rounding mode when emitting fadd, fmul and ffma 3024 instructions 3025- i965/fs: set rounding mode when emitting nir_op_f2f32 or nir_op_f2f16 3026- i965/fs: add support for shader float control to 3027 remove_extra_rounding_modes() 3028- anv: enable VK_KHR_shader_float_controls and SPV_KHR_float_controls 3029- docs/relnotes: add support for VK_KHR_shader_float_controls on Intel 3030- nir/algebraic: refactor inexact opcode restrictions 3031 3032Samuel Pitoiset (136): 3033 3034- radv/gfx10: tidy up gfx10_format_table.py 3035- radv/gfx10: hardcode some depth+stencil formats in the format table 3036- radv: allow to enable VK_AMD_shader_ballot only on GFX8+ 3037- radv: add a new debug option called RADV_DEBUG=noshaderballot 3038- radv: force enable VK_AMD_shader_ballot for Wolfenstein Youngblood 3039- radv: implement VK_AMD_shader_core_properties2 3040- ac: fix exclusive scans on GFX8-GFX9 3041- ac,radv,radeonsi: remove LLVM 7 support 3042- gitlab-ci: bump LLVM to 8 for meson-vulkan and meson-clover 3043- radv/gfx10: don't initialize VGT_INSTANCE_STEP_RATE_0 3044- radv/gfx10: do not use NGG with NAVI14 3045- radv: fix getting the index type size for uint8_t 3046- radv: add radv_process_depth_image_layer() helper 3047- radv: add mipmaps support for decompress/resummarize 3048- radv: decompress mipmapped depth/stencil images during transitions 3049- radv: allocate metadata space for mipmapped depth/stencil images 3050- radv: add mipmap support for the TC-compat zrange bug 3051- radv: add mipmap support for the clear depth/stencil values 3052- ac: drop llvm8 from some load/store helpers 3053- ac: add has_clear_state to ac_gpu_info 3054- ac: add has_distributed_tess to ac_gpu_info 3055- ac: add has_dcc_constant_encode to ac_gpu_info 3056- ac: add has_rbplus to ac_gpu_info 3057- ac: add has_load_ctx_reg_pkt to ac_gpu_info 3058- ac: add has_out_of_order_rast to ac_gpu_info 3059- ac: add cpdma_prefetch_writes_memory to ac_gpu_info 3060- ac: add has_gfx9_scissor_bug to ac_gpu_info 3061- ac: add has_tc_compat_zrange_bug to ac_gpu_info 3062- ac: add rbplus_allowed to ac_gpu_info 3063- ac: add has_msaa_sample_loc_bug to ac_gpu_info 3064- ac: add has_ls_vgpr_init_bug to ac_gpu_info 3065- radv: make use of has_ls_vgpr_init_bug 3066- radv/gfx10: compute the LDS size for exporting PrimID for VS 3067- ac: import linear/perspective PS input parameters from radv/radeonsi 3068- ac: drop now useless lookup_interp_param from ABI 3069- radv: gather info about PS inputs in the shader info pass 3070- radv: move lowering PS inputs/outputs at the right place 3071- radv: remove some unused fields from radv_shader_context 3072- radv: remove unused shader_info parameter in ac_compile_llvm_module() 3073- radv: remove useless ac_llvm_util.h include from the WSI code 3074- radv: remove radv_init_llvm_target() helper 3075- radv: replace ac_nir_build_if by ac_build_ifcc 3076- radv: move setting can_discard to ac_fill_shader_info() 3077- radv: keep a pointer to a NIR shader into radv_shader_context 3078- nir: do not assume that the result of fexp2(a) is always an integral 3079- radv/gfx10: always set ballot_mask_bits to 64 3080- radv: merge radv_shader_variant_info into radv_shader_info 3081- radv: move ac_fill_shader_info() to radv_nir_shader_info_pass() 3082- radv: gather clip/cull distances in the shader info pass 3083- radv: gather pointsize in the shader info pass 3084- radv: gather viewport in the shader info pass 3085- radv: gather layer in the shader info pass 3086- radv: gather primitive ID in the shader info pass 3087- radv: calculate the GSVS vertex size in the shader info pass 3088- radv: calculate esgs_itemsize in the shader info pass 3089- radv/gfx10: account for the subpass view for the NGG GS storage 3090- radv/gfx10: make use the output usage mask when exporting NGG GS 3091 params 3092- radv/gfx10: determine the number of vertices per primitive for TES 3093- radv: do not pass all compiler options to the shader info pass 3094- radv: fill shader info for all stages in the pipeline 3095- radv: store GFX9 GS state as part of the shader info 3096- radv: store GFX10 NGG state as part of the shader info 3097- radv: store the ESGS ring size as part of gfx10_ngg_info 3098- radv: calculate GFX9 GS and GFX10 NGG states before compiling shader 3099 variants 3100- radv/gfx10: declare a LDS symbol for the NGG emit space 3101- radv: fix allocating number of user sgprs if streamout is used 3102- radv/winsys: add support for GS and OA domains 3103- radv/gfx10: add an option to switch from legacy to NGG streamout 3104- radv/gfx10: implement NGG streamout begin/end functions 3105- radv/gfx10: allocate GDS/OA buffer objects for NGG streamout 3106- radv/gfx10: adjust the GS NGG scratch size for streamout 3107- radv/gfx10: unconditionally declare scratch space for NGG streamout 3108 without GS 3109- radv/gfx10: adjust the LDS size for VS/TES NGG streamout 3110- radv/gfx10: fix unnecessary LDS overallocation for NGG GS 3111- radv/gfx10: compute the correct buffer size for NGG streamout 3112- radv/gfx10: gather GS output for VS as NGG 3113- radv/gfx10: enable NGG_WAVE_ID_EN for NGG streamout 3114- radv/gfx10: make GDS idle when leaving the IB 3115- radv/gfx10: make sure to wait for idle before clearing GDS 3116- radv/gfx10: implement NGG streamout 3117- radv/gfx10: disable unsupported transform feedback features for NGG 3118- radv: fix writing depth/stencil clear values to image 3119- radv: fix loading 64-bit GS inputs 3120- radv/gfx10: fix VK_KHR_pipeline_executable_properties with NGG GS 3121- radv/gfx10: add radv_device::use_ngg 3122- radv/gfx10: add missing counter buffer to the BO list 3123- radv/gfx10: fix storing/loading NGG stream outputs for VS and TES 3124- radv/gfx10: use the component mask when storing/loading NGG stream 3125 outputs 3126- radv/gfx10: fix storing/loading NGG stream outputs for GS 3127- radv/gfx10: fix NGG streamout with triangle strips for VS 3128- radv: rework the slow depthstencil clear to write depth from PS 3129- Revert "radv: disable viewport clamping even if FS doesn't write Z" 3130- radv: fix build 3131- radv/gfx10: fix the ESGS ring size symbol 3132- radv: enable lower_fmod for the LLVM path 3133- ac/nir: remove unused code for nir_op_{fmod,frem} 3134- radv: implement VK_KHR_shader_clock 3135- drirc: enable vk_x11_override_min_image_count for DOOM 3136- radv: bump minTexelBufferOffsetAlignment to 4 3137- radv: get the device name from radeon_info::name 3138- radv: sync before resetting query pools if timestamps have been 3139 written 3140- radv: use a compute shader for copying timestamp query results 3141- radv: fix DCC fast clear code for intensity formats 3142- radv: rename VK_KHR_shader_float16_int8 structs/constants 3143- Revert "radv: do not emit PKT3_CONTEXT_CONTROL with AMDGPU 3.6.0+" 3144- radv: fix DCC fast clear code for intensity formats (correctly) 3145- ac/llvm: add ac_build_canonicalize() helper 3146- ac/llvm: add AC_FLOAT_MODE_ROUND_TO_ZERO 3147- ac/llvm: force fneg/fabs to flush denorms to zero if requested 3148- radv: implement VK_KHR_shader_float_controls 3149- radv: enable VK_KHR_shader_float_controls on GFX6-GFX7 3150- radv: do not print useless descriptors info in hang reports 3151- radv: print which ring is dumped in hang reports 3152- radv: dump trace files earlier if a GPU hang is detected 3153- radv: do not dump descriptors twice in hang reports 3154- radv: advertise VK_KHR_spirv_1_4 3155- ac/llvm: fix ac_to_integer_type() for 32-bit const addr space 3156 pointers 3157- radv: fix updating bound fast ds clear values with different aspects 3158- radv: do not create meta pipelines with 16 samples 3159- radv: add an assertion in radv_gfx10_compute_bin_size() 3160- radv: do not emit rbplus if attachments are undefined 3161- radv/gfx10: re-enable fast depth/stencil clears with separate aspects 3162- radv/gfx10: fix 3D images 3163- radv: fix vkUpdateDescriptorSets with inline uniform blocks 3164- radv: fix a performance regression with graphics depth/stencil clears 3165- radv: compute the number of records correctly for vertex buffers 3166- radv: fix VK_KHR_shader_float_controls dependency on GFX6-7 3167- radv: enable fast depth/stencil clears with separate aspects on GFX8 3168- radv: fix OpQuantizeToF16 for NaN on GFX6-7 3169- radv: fix dumping SPIR-V into hang reports 3170- radv: move nomemorycache debug option at the right palce 3171- radv: fix perftest options 3172- radv: fix compute pipeline keys when optimizations are disabled 3173- radv: fix enabling sample shading with SampleID/SamplePosition 3174- radv/gfx10: fix implementation of exclusive scans 3175- ac/nir: fix out-of-bound access when loading constants from global 3176 3177Sergii Romantsov (4): 3178 3179- intel/dri: finish proper glthread 3180- nir/large_constants: more careful data copying 3181- nir/large_constants: pass after lowering copy_deref 3182- meta: leak of shader program when decompressing tex-images 3183 3184Stephen Barber (1): 3185 3186- nouveau: add idep_nir_headers as dep for libnouveau 3187 3188Tapani Pälli (23): 3189 3190- util: fix os_create_anonymous_file on android 3191- iris/android: fix build and link with libmesa_intel_perf 3192- egl: reset blob cache set/get functions on terminate 3193- intel/genxml: generate pack files for gen12 on android builds 3194- intel/isl: build android libmesa_isl for gen12 3195- iris: build android libmesa_iris for gen12 3196- anv: build libanv for gen12 in android build 3197- i965: initialize bo_reuse when creating brw_bufmgr 3198- iris: use driconf for 'bo_reuse' parameter 3199- android: fix linking issues with liblog 3200- iris: close screen fd on iris_destroy_screen 3201- egl: check for NULL value like eglGetSyncAttribKHR does 3202- iris: disable aux on first get_param if not created with aux 3203- mesa/st: calculate texture size based on EGLImage miplevel 3204- anv/android: fix images created with external format support 3205- i965: setup sized internalformat for MESA_FORMAT_R10G10B10A2_UNORM 3206- mesa: add [Program]Uniform*64ARB display list support 3207- mesa: enable ARB_gpu_shader_int64 in compat profile 3208- Revert "egl: implement new functions from 3209 EGL_EXT_image_flush_external" 3210- Revert "egl: handle EGL_IMAGE_EXTERNAL_FLUSH_EXT" 3211- Revert "st/dri: add support for EGL_EXT_image_flush_external" 3212- Revert "st/dri: assume external consumers of back buffers can write 3213 to the buffers" 3214- Revert "dri_interface: add interface for 3215 EGL_EXT_image_flush_external" 3216 3217Thomas Hellstrom (2): 3218 3219- svga: Fix banded DMA upload unmap 3220- winsys/svga: Limit the maximum DMA hardware buffer size 3221 3222Thong Thai (2): 3223 3224- Revert "radeonsi: don't emit PKT3_CONTEXT_CONTROL on amdgpu" 3225- radeonsi: add JPEG decode support for VCN 2.0 devices 3226 3227Timothy Arceri (35): 3228 3229- radeonsi/nir: fix number of used samplers 3230- util/disk_cache: bump thread count assigned to disk cache queue 3231- util/u_queue: track job size and limit the size of queue growth 3232- util/disk_cache: make use of the total job size limiting feature 3233- radeonsi/nir: lower load constants to scalar 3234- glsl: fix crash compiling bindless samplers inside unnamed UBOs 3235- nir: fix nir_variable_data packing 3236- nir: improve nir_variable packing 3237- glsl: remove propagate_invariance() call from the linker 3238- radv: get topology from pipeline key rather than 3239 VkGraphicsPipelineCreateInfo 3240- radv: add debug option to turn off in memory cache 3241- radv: add radv_create_shaders() to radv_shader.h 3242- radv: add radv_secure_compile_type enum 3243- radv: add some new members to radv device and instance for secure 3244 compile 3245- radv: add radv_device_use_secure_compile() helper 3246- radv: allow the secure process to read and write from disk cache 3247- radv: for secure compile exit early from radv_shader_variant_create() 3248- radv: add radv_secure_compile() 3249- radv: a support for a secure compile fork at device creation 3250- radv: enable secure compile support 3251- util: remove LIST_INITHEAD macro 3252- util: remove LIST_ADDTAIL macro 3253- util: remove LIST_ADD macro 3254- util: remove LIST_REPLACE macro 3255- util: remove LIST_DELINIT macro 3256- util: remove LIST_DEL macro 3257- util: rename list_empty() to list_is_empty() 3258- util: remove LIST_IS_EMPTY macro 3259- radv: allow select() calls in secure compile 3260- radv: add radv_sc_read() helper 3261- radv: make use of radv_sc_read() 3262- radv: add some infrastructure for fresh forks for each secure compile 3263- radv: add a secure_compile_open_fifo_fds() helper 3264- radv: create a fresh fork for each pipeline compile 3265- glsl/nir: iterate the system values list when adding varyings 3266 3267Timur Kristóf (48): 3268 3269- st/nine: Properly initialize GLSL types for NIR shaders. 3270- nir: Carve out nir_lower_samplers from GLSL code. 3271- tgsi_to_nir: Remove dependency on libglsl. 3272- amd/common: Move ac_export_mrt_z to ac_llvm_build. 3273- amd/common: Extract some helper functions to ac_shader_util. 3274- amd/common: Add num_shared_vgprs to ac_shader_config for GFX10. 3275- radv: Set shared VGPR count in radv_postprocess_config. 3276- amd/common: Introduce ac_get_fs_input_vgpr_cnt. 3277- radv: Add debug option to dump meta shaders. 3278- radv: Fix L2 cache rinse programming. 3279- amd: Move all amd/common code that depends on LLVM to amd/llvm. 3280- aco: Set +wavefrontsize64 for LLVM disassembler in GFX10 wave64 mode. 3281- aco: Add missing GFX10 specific fields and some README notes. 3282- aco: Support GFX10 SMEM in aco_assembler. 3283- aco: Support GFX10 VINTRP in aco_assembler. 3284- aco: Support GFX10 DS in aco_assembler. 3285- aco: Support GFX10 MUBUF in aco_assembler. 3286- amd/common: Add extern "C" to some headers that were missing it. 3287- aco: Link ACO with amd/common. 3288- aco: Support GFX10 MTBUF in aco_assembler. 3289- aco: Support GFX10 MIMG and GFX9 D16 in aco_assembler. 3290- aco: Fix GFX9 FLAT, SCRATCH, GLOBAL instructions, add GFX10 support. 3291- aco: Support GFX10 EXP in aco_assembler. 3292- aco: Support GFX10 VOP3 and VOP1 as VOP3 in aco_assembler. 3293- aco: Set GFX10 DLC bit properly. 3294- aco: Use ac_get_sampler_dim, delete duplicate code. 3295- aco: Set GFX10 dimensionality on the instructions that need it. 3296- aco: Support subvector loops in aco_assembler. 3297- aco: Fix VS input VGPRs on GFX10. 3298- aco: Fix s_dcache_wb on GFX10. 3299- aco: Add extra assertion for number of FS input VGPRs. 3300- aco: Clean up usages of PhysReg::reg from aco_assembler. 3301- aco/gfx10: Wait for pending SMEM stores before loads 3302- aco/gfx10: Fix PS exports for SPI_SHADER_32_AR. 3303- aco/gfx10: Update constant addresses in fix_branches_gfx10. 3304- aco/gfx10: Add notes about some GFX10 hazards. 3305- aco/gfx10: Mitigate VcmpxPermlaneHazard. 3306- aco/gfx10: Mitigate VcmpxExecWARHazard. 3307- aco/gfx10: Mitigate SMEMtoVectorWriteHazard. 3308- aco/gfx10: Mitigate LdsBranchVmemWARHazard. 3309- aco/gfx10: Fix mitigation of VMEMtoScalarWriteHazard. 3310- aco: Refactor hazard mitigations, separate pass for GFX10. 3311- st/nine: Fix build with -Werror=empty-body 3312- st/nine: Fix unused variable warnings in release build. 3313- aco: Implement subgroup shuffle in GFX10 wave64 mode. 3314- aco: Introduce vgpr_limit to keep track of available VGPRs. 3315- radv: Enable ACO on Navi. 3316- ac: Handle invalid GFX10 format correctly in ac_get_tbuffer_format. 3317 3318Tomeu Vizoso (19): 3319 3320- panfrost/ci: Use Volt-based runner for dEQP tests 3321- panfrost/ci: Print bootstrap log 3322- panfrost/ci: Build kernel with CONFIG_DETECT_HUNG_TASK 3323- panfrost/ci: Install qemu-arm-static into chroot 3324- panfrost/ci: Print load stats 3325- panfrost/ci: Print only regressions 3326- panfrost/ci: Re-add support for armhf 3327- panfrost/ci: Use special runner for LAVA jobs 3328- panfrost/ci: Increase timeouts 3329- panfrost/ci: Run dEQP with the surfaceless platform 3330- panfrost/ci: Update kernel to 5.3-rc8 3331- panfrost/ci: Use releases for Volt dEQP 3332- gitlab-ci: Run dEQP on devices with Panfrost 3333- gitlab-ci: Move LAVA-related files into top-level ci dir 3334- gitlab-ci/lava: Fix image to use in test jobs 3335- gitlab-ci/lava: Use files to list tests to skip 3336- gitlab-ci/lava: Test Lima driver with dEQP 3337- panfrost: Keep track of active BOs 3338- gitlab-ci: Update kernel for LAVA jobs to 5.4-rc4 3339 3340Urja Rannikko (1): 3341 3342- panfrost: allocate bo for occlusion query results 3343 3344Vasily Khoruzhick (35): 3345 3346- lima/ppir: refactor const lowering 3347- lima/ppir: clone ld_{uni,tex,var} into each block 3348- lima/ppir: add support for unconditional branches and condition 3349 negation 3350- lima/ppir: set write mask for texture loads if dest is reg 3351- lima/ppir: fix ordering deps 3352- lima/ppir: add write after read deps for registers 3353- lima/ppir: add dummy op 3354- lima/ppir: create ppir block for each corresponding NIR block 3355- lima/ppir: turn store_color into ALU node 3356- lima/ppir: validate shader outputs 3357- lima/ppir: add better liveness analysis 3358- lima/ppir: add control flow support 3359- lima/ppir: print register index and components number for spilled 3360 register 3361- lima: fix texture descriptor issues 3362- lima/ppir: add common helper for creating movs 3363- lima/ppir: don't assume that load coords gets value from register 3364- lima/ppir: clone uniforms and load_coords into each successor 3365- nir: allow specifying filter callback in lower_alu_to_scalar 3366- lima/ppir: don't lower vector {b,f}csel to scalar if condition is 3367 scalar 3368- lima/ppir: don't lower phis to scalar 3369- lima/gpir: lower fceil 3370- lima/gpir: fix warning in gpir disassembler 3371- lima: run opt_algebraic between int_to_float and boot_to_float for vs 3372- lima/ppir: drop fge/flt/feq/fne options 3373- lima: set .out_sync field of req in lima_submit_start() 3374- lima: add standalone disassembler with primitive MBS parser 3375- lima: use 0 to poll if BO is busy in lima_bo_wait() 3376- lima: implement BO cache 3377- lima/ppir: don't attempt to clone tex coords if it's not varying 3378- lima/ppir: add node dependency types 3379- lima/ppir: add support for indirect load of uniforms and varyings 3380- lima/ppir: add NIR pass to split varying loads 3381- lima: set uniforms_address lower bits properly 3382- lima/ppir: don't clone texture loads 3383- lima: fix PP stack size 3384 3385Vinson Lee (7): 3386 3387- glx: Fix up glXQueryGLXPbufferSGIX on macOS. 3388- swr: Fix build with llvm-9.0 again. 3389- travis: Fail build if any command in if statement fails. 3390- util: Define strchrnul on macOS. 3391- swr: Fix make_unique build error. 3392- scons: Add coroutines component to build. 3393- meson: Add coroutines component to llvmpipe build. 3394 3395Wladimir J. van der Laan (1): 3396 3397- etnaviv: GC7000: Texture descriptors 3398 3399Yevhenii Kolesnikov (2): 3400 3401- glsl: Enable textureSize for samplerExternalOES 3402- meson: Fix linkage of libgallium_nine with libgalliumvl 3403 3404Zebediah Figura (1): 3405 3406- Revert "draw: revert using correct order for prim decomposition." 3407 3408Zhaowei Yuan (1): 3409 3410- broadcom/vc4: Expand width of dst surface 3411 3412Zhu, James (1): 3413 3414- radeon: Fix mjpeg issue for ARCTURUS 3415 3416nia (1): 3417 3418- loader: include limits.h for PATH_MAX 3419 3420pal1000 (3): 3421 3422- scons/windows: Support build with LLVM 9. 3423- scons: Fix MSYS2 Mingw-w64 build. 3424- scons/windows: Enable compute shaders when possible. 3425 3426renchenglei (1): 3427 3428- egl/android: Enable HAL_PIXEL_FORMAT_RGBA_1010102 format 3429