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