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