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