xref: /aosp_15_r20/external/mesa3d/docs/relnotes/21.2.0.rst (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1Mesa 21.2.0 Release Notes / 2021-08-04
2======================================
3
4Mesa 21.2.0 is a new development release. People who are concerned
5with stability and reliability should stick with a previous release or
6wait for Mesa 21.2.1.
7
8Mesa 21.2.0 implements the OpenGL 4.6 API, but the version reported by
9glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
10glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
11Some drivers don't support all the features required in OpenGL 4.6. OpenGL
124.6 is **only** available if requested at context creation.
13Compatibility contexts may report a lower version depending on each driver.
14
15Mesa 21.2.0 implements the Vulkan 1.2 API, but the version reported by
16the apiVersion property of the VkPhysicalDeviceProperties struct
17depends on the particular driver being used.
18
19SHA256 checksum
20---------------
21
22::
23
24   0cb3c802f4b8e7699b1602c08c29d06a4d532ab5b8f7a64676c4ca6bb8f4d426  mesa-21.2.0.tar.xz
25
26
27New features
28------------
29
30- zink supports GL_ARB_texture_filter_minmax, GL_ARB_shader_clock
31
32- VK_EXT_provoking_vertex on RADV.
33
34- VK_EXT_extended_dynamic_state2 on RADV.
35
36- VK_EXT_global_priority_query on RADV.
37
38- VK_EXT_physical_device_drm on RADV.
39
40- VK_KHR_shader_subgroup_uniform_control_flow on Intel and RADV.
41
42- VK_EXT_color_write_enable on RADV.
43
44- 32-bit x86 builds now default disable x87 math and use sse2.
45
46- GL ES 3.1 on GT21x hardware.
47
48- VK_EXT_acquire_drm_display on RADV and ANV.
49
50- VK_EXT_vertex_input_dynamic_state on lavapipe
51
52- wideLines on lavapipe
53
54- VK_EXT_line_rasterization on lavapipe
55
56- VK_EXT_multi_draw on ANV, lavapipe, and RADV
57
58- VK_KHR_separate_depth_stencil_layouts on lavapipe
59
60- VK_EXT_separate_stencil_usage on lavapipe
61
62- VK_EXT_extended_dynamic_state2 on lavapipe
63
64- NGG shader based primitive culling is now supported by RADV.
65
66- Panfrost supports OpenGL ES 3.1
67
68- New Asahi driver for the Apple M1
69
70- GL_ARB_sample_locations on zink
71
72- GL_ARB_sparse_buffer on zink
73
74- GL_ARB_shader_group_vote on zink
75
76- DRM format modifiers on zink
77
78- freedreno+turnip: Initial support for a6xx gen4 (a660, a635)
79
80- None
81
82
83Bug fixes
84---------
85
86- The image is distorted while use iGPU(Intel GPU) rendering and output via dGPU (AMD GPU)
87- lima: regression in plbu scissors cmd
88- freedreno: regression in org.skia.skqp.SkQPRunner#gles_multipicturedraw_*_tiled
89- Incorrect rendering
90- intel/isl: Wrong surface format name in batch
91- [RADV] FSR in Resident Evil: Village looks very pixelated on Polaris
92- 21.2.0rc1 Build Failure - GCC6.3
93- Crash in update_buffers after closing KDE "splash screen" downloader
94- Firefox (wayland) crash in wayland_platform
95- Crash in update_buffers after closing KDE "splash screen" downloader
96- Firefox (wayland) crash in wayland_platform
97- radeonsi: persistent, read-only buffer maps are slow to read
98- substance painter flickering with jagged texture and masks shown black
99- radv: FP16 mode in FidelityFX FSR doesn't look right
100- Regression in Turnip with KGSL and Zink running opengl in proot
101- Validation crash on wlroots after wl_shm appeared
102- [RADV] Blocky corruption in Scarlet Nexus and vkd3d-proton 2.4
103- Use out encoding for float immediates
104- Radeon RX580 and 5700 XT: Reloading ARB assembly shaders causes very glitchy rendering
105- i915g: dEQP-GLES2.functional.fragment_ops.depth_stencil..* failures
106- i915g: dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.* and fragment_ops.random.* failures
107- KHR-GL46.shader_ballot_tests.ShaderBallot* tests fails on the main
108- i965 nir compiler is lowering fdiv twice or initializing struct twice
109- [radv] Textures missing in Doom (2016) w/ any temporal AA setting enabled
110- Drop Android.mk
111- [build error] macros.h:88:26: error: size of unnamed array is negative
112- Game Issue: Nuclear Throne crashes in RadeonSI
113- iris: reduce shader storage buffer object alignment
114- agx_compile.h:29:10: fatal error: asahi/lib/agx_pack.h: No such file or directory
115- radv: VBO range check issues with odd strides and sizes
116- Crash in glLinkProgram while trying to craft the link error
117- i915g: wide point failures
118- Wolfenstein II: The New Colossus - Screen goes black in some cases
119- [radv] [regression] Textures missing in Doom (2016)
120- Shader compilation memory leaks
121- radv: fd leak in Android WSI radv_AcquireImageANDROID
122- SpaceEngine in Steam Proton cannot start with Mesa >=20.3
123- [bisected] KDE plasma menu text renders like stretched strangely [amdgpu]
124- radeonsi: glitches in Euro Truck Simulator 2
125- White box for Webrender Firefox with R600_DEBUG=nir on Evergreen GPU
126- radv_AllocateDescriptorSets: validation on variable description count is too strict
127- Luna Sky Crashes on Launch
128- Mesa crashes on undefined texture behaviour
129- Mesa crashes on undefined texture behaviour
130- cache_test uses uninitialized stack memory
131- nir/opt_load_store_vectorize: check_for_robustness() crashes on derefs
132- [anv] GravityMark (benchmark) crashes on ANV
133- turnip: corrupted geometry after tesselation shaders in GTAV
134- [opengl] We happy few not being rendered correctly
135- anv: dynamic state prim type is hard
136- [iris][bisected] piglit test ...ext_external_objects.vk-image-display-muliple-textures failing after enabled
137- Factorio: GPU hang when opening machine inventory
138- RuneScape on Mesa 21.1.1 (VEGA10) has bad performance and leaks memory
139- LLVM12 breaks atomicCompSwap tests with radeonsi
140- freedreno: tex-miplevel-selection causes a creation of too many BOs without flushes, causing a crash
141- RADV: Resident Evil Village Freezes during a specific cutscene
142- Supraland: flickering black bars on ground
143- u_queue.c:173:7: error: implicit declaration of function 'timespec_get' is invalid in C99
144- radv: front face and cull mode dynamic state can desync
145- radv: GPU hang in Cyberpunk 2077 on Big Navi
146- Cyberpunk 1.22 crashes with amdgpu ring gfx_0.0.0 timeout
147- [amdgpu][renoir][rx5500m]: [drm:0xffffffff8198ad5e] \*ERROR* ring gfx timeout, signaled seq=10952, emitted seq=10954
148- [spirv-fuzz] SPIR-V parsing FAILED: Invalid back or cross-edge in the CFG
149- anv: dEQP-VK.graphicsfuzz.spv-stable-bubblesort-flag-complex-conditionals fails
150- panfrost Mount and Blade: Warband (glitches)
151- anv: dEQP-VK.robustness.robustness2*no_fmt_qual.null_descriptor.samples* fail
152- KHR-GLES31.core.shader_image_load_store.basic-glsl-earlyFragTests may be flakey on RPI4
153- SPIRV AMD Driver compiler memory leak/usage - 8Gb+ to compile single 41Kb SPIRV file, Ubuntu 21.04
154- Regression of !10941: mutter Wayland on bare metal crashes when closing HW accelerated windows
155- radv: ACO miscompiles a specific DIRT 5 shader
156- Copy paste bug in v3dv_cmd_buffer.c
157- Segfault in mtx_unlock/amdgpu_bo_slab_destroy
158- [radeonsi] Incorrect rendering when using glDisable(GL_MULTISAMPLE) with multisample backbuffer
159- virtio(vulkan): Error building on Android/arm32
160- [i965] regression: piglit.spec.arb_depth_buffer_float.fbo-depthstencil-gl_depth32f_stencil8-drawpixels
161- iris: Select memory map cacheability settings at BO allocation time
162- zink: regression for primitive-restart on ANV
163- zink: Unimplemented ALU {un,}pack_half_2x16 in nir_to_spirv
164- venus: dEQP-VK.api.command_buffers.bad_inheritance_info_random test failure
165- [radeonsi] glClearTexImage on 1D array only clears first slice
166- zink: Expected Image Operand ConstOffset to be a const object
167- docs: bullet-lists no longer show any bullets
168- [RADV] - Path of Exile (238960) - Ground decals are missing or corrupted using the Vulkan renderer.
169- [ADL-S / TGL-U / TGL-H] Pixels missing / flickering when render some app on weston
170- [iris][biected] piglit.spec.glsl-1_50.execution.geometry.clip-distance-vs-gs-out
171- panfrost ff9a0000.gpu: Unhandled Page fault in AS1 at VA 0x0000000009801200
172- black stripes in X/Xwayland applications under panfrost/midgard
173- radv: significant overhead from radv_pipeline_has_ngg()
174- mesa-21.1.1/src/gallium/drivers/vc4/vc4_resource.c:790: reading from uninitialised array
175- [iris,i965][hsw,ivb,snb,bdw][bisected][regression] wflinfo crashes
176- [iris,i965][hsw,ivb,snb,bdw][bisected][regression] wflinfo crashes
177- The image is distorted while use iGPU(Intel GPU) rendering and output via dGPU (AMD GPU)
178- [radv] Revert !7207 once BG3 is fixed.
179- piglit test 'spec.glsl-1_30.execution.range_analysis_fsat_of_nan' failure
180- iris: Rework iris_transfer_mapto better use iris_has_color_unresolved
181- ir3_cf breaks nir_op_fquantize2f16
182- [i915g] implicit fallthrough
183- Add asahi to CI's build
184- RADV - Regression - CPU side 'hang' in metro exodus
185- Assassin's Creed Odyssey crash on launch
186- Metro Exodus not starting under xwayland
187- [i915g] PIPE_SHADER_CAP_MAX_HW_ATOMIC_COUNTERS is Unknown cap 38
188- Elite Dangerous: Odyssey alpha crashes GPU on launch
189- glmark2-es2 -b terrain crashes since Bifrost FP16
190- [iris][bisected][regression] dEQP-GLES31.functional.texture.multisample.* tests crash on multiple platforms
191- gallium: tc regression
192- panfrost: Look into invalidate_resource()
193- [ivb,hsw][i965][bisected] dEQP-GLES3.functional.shaders.texture_functions.texture.sampler2darrayshadow_vertex failing
194- ci: Explicitly test shader caching
195- radv: RoTR fails on Raven APU
196- Tungsten Graphics links in Gallium docs
197- Obs Studio Broken on Latest Mesa Git(Regression)(Bisected)
198- Graphics corruption and GPU hang with RADV/LLVM
199- old kernels (4.19) support in radv
200- Elite Dangerous: Odyssey alpha crashes GPU on launch
201- CSGO: Some default variables can cause problems with trust mode
202- freedreno: dEQP-GLES3.functional.fence_sync.client_wait_sync_finish flakes
203- glxclient.h:56:10: fatal error: 'loader.h' file not found
204- mesa git started to break wine + UnrealTournament.exe (old dx6 game)
205- SuperTuxKart artifacting on RK3399
206- [amdgpu]: Golf With Your Friends (431240): ERROR Waiting for fences timed out
207- don't flush for each blit/grid
208- No sRGB capable visuals/fbconfigs reported in glx
209- Documentation request: AMD debug variables
210- docs: versions is out-of-date
211- Strange results when trying to read from VK_FORMAT_R64_SFLOAT in compute shader
212- anv: dEQP-VK.binding_model.buffer_device_address.set3.depth3.basessbo.convertcheck* slow
213- Iris doesn't support INTEL_performance_query anymore
214- [iris][bisected][regression] dEQP-GLES3.functional.texture.specification.teximage2d* failures
215- RADV: TRUNC_COORD breaks gather operations
216- [RADV] corruption in avatar after dying in Heroes of the Storm
217- drm-shim build error with glibc 2.33
218- Metro Exodus crashing due to memory overflow
219- Sauerbraten shader rendering broken on RV530 (r300g)
220- texture glitches on CS:GO on Tiger Lake
221- Incorrect texture blitting/mapping when running Unigine-Heaven 4.0 on ADL-S / TGL-H, TGL-U
222- Build fail due to "parameter name omitted" on Gallium Nine
223- v3dv: DiligentEngine fail to run with SRGB swapchain
224- Non-DRI builds broken by recent cleanups in Mesa core
225- Cinnamon core dump after installing latest oibaf mesa build (165a69d2)
226- yuv sampler lowering regression
227- clover llvm build failure ‘class llvm::VectorType’ has no member named ‘getNumElements’;
228- Possible corruption for apps using multiple Z-buffers on TGL
229
230
231Changes
232-------
233
234Aaron Liu (1):
235
236- amd: add Yellow Carp support
237
238Abel García Dorta (2):
239
240- i915g: add HW atomic counters as unsupported
241- i915g: fix implicit fallthrough
242
243Adam Jackson (53):
244
245- Revert "glx: Lift sending the MakeCurrent request to top-level code"
246- gallium/xlib: Fix for recent gl_config changes
247- glx/drisw: Enable GLX_ARB_create_context_no_error
248- glx: Remove silly __glXGetGLVersion() indirection
249- glx: Remove some truly ancient unused code
250- glx: Remove major/minor version tracking from extension table
251- glx: Mark GLX_{ATI_pixel_format_float,NV_float_buffer} as supported
252- glx: Remove some non-functional GL extension from the table
253- glx: Generalize __glXGetStringFromTable a little
254- glx: Remove redundant client_support field from extension table
255- glx: Enable pure-client-library extensions explicitly
256- glx: Fold client_gl_only array into its one real user
257- glx: Remove some ancient backwards-compatibility typedefs
258- zink: Learn about VK_KHR_swapchain
259- zink: Fix format query for minmax reduction support
260- gallium: Fix PIPE_BIND_SAMPLER_REDUCTION_MINMAX definition to be unique
261- dri: Try harder to infer the drawable fbconfig if needed
262- glx: Return the right GLX opcode in synthetic MakeCurrent errors
263- glx: s/dri_message/glx_message/
264- glx: Add and use DebugMessageF convenience macro
265- glx: Convert undocumented LIBGL_DIAGNOSTIC to LIBGL_DEBUG=verbose
266- glx: Remove unused debugging printfs
267- glx: Implement GLX_EXT_no_config_context
268- glx: Stop pretending the GLX major number isn't 1
269- glx: Stop force-enabling extensions "implied" by GLX 1.3
270- glx: Simplify glXIsDirect
271- glx: Remove warn-once-ery around GLX 1.3 functions
272- glx: Remove unused opcode argument to __glX{Get,QueryServer}String
273- glx: Stash a copy of the XExtCodes in the glx_display
274- glx: Simplify some overuse of GetGLXScreenConfigs
275- glx: Move server GLX vendor and version strings to glx_screen
276- glx: s/Display \*/struct glx_display \*/ over internal API
277- glx: Remove some dead declarations from glxclient.h
278- Revert "glx: s/Display \*/struct glx_display \*/ over internal API"
279- include: Remove unused i810_pci_ids.h
280- i915c: Add a symlink for i830_dri.so
281- mesa: Remove unused _mesa_{create,destroy}_visual
282- mesa: Ignore the depth buffer when computing framebuffer floatness
283- gallium: Reset attachments to ST_ATTACHMENT_INVALID when revalidating
284- format/fxt1: Clean up fxt1_variance's argument list
285- mesa: s/malloc/calloc/ to silence a warning
286- gallium: Remove unused st_visual::render_buffer
287- gallivm: Fix a signature mismatch warning
288- zink/ntv: Don't call free() on ralloc'd memory
289- gallium/dri: Remove unused dri_drawable::drisw_surface
290- drisw: Don't bzero displaytarget pixels
291- intel: properly constify isl_format_layouts
292- classic/xlib: Fix the build after !9817
293- swrast: Fix a warning from gcc 11
294- loader/dri3: Properly initialize the XFIXES extension
295- loader/dri3: Don't churn through xfixes regions in SwapBuffers
296- vl/dri3: Don't leak regions on the X server
297- meson: Make prefer-{crocus,iris} always take effect
298
299Alejandro Piñeiro (30):
300
301- v3dv/debug: print correct stage name
302- v3dv/debug: use gl stage when checking debug flag
303- v3dv/pipeline: track descriptor maps per stage, not per pipeline
304- v3dv: remove custom icd json generation
305- v3dv: move extensions table to v3dv_device
306- v3dv: don't use typedef enum with broadcom stages
307- v3dv: remove unused v3dv_zs_buffer_from_vk_format
308- broadcom/compiler: use proper type field for atomic operations
309- v3d/simulator: capture hub interrupts
310- v3d/simulator: add a cache flush mode enum
311- v3d/simulator: wait for cache flushes
312- v3d/simulator: use the proper register when waiting on a CSD submit
313- v3d/simulator: use BFC/RFC registers to wait for bin/render to complete
314- broadcom/common: move v3d_tiling to common
315- v3d/simulator: hw mem is now an v3d_size_t, typedef to uint32_t
316- v3d/simulator: get rid of has_gca wrapper
317- v3dv: rename v3dv_pack for v3dvx_pack
318- v3dv/cmd_buffer: add helper job_emit_binning_prolog
319- v3dv/cmd_buffer: move cl_emit calls for Draw methods to helpers
320- v3dv: start to move and wrap hw-version code with v3dv_queue
321- v3dv: split v3dv_pipeline hw version dependant code to a new source file
322- v3dv: split v3dv_image hw version dependant code to a new source file
323- v3dv: split v3dv_format hw version dependant code to a new source file
324- v3dv: split v3dv_device hw version dependant code to a new source file
325- v3dv: move several hw version dependant code to their own (v3dvx) source file
326- v3dv: split v3dv_descriptor hw version dependant to a new source file.
327- v3dv: don't use cl_packet_length for prepacked data
328- v3dv: remove gen-dependant includes from v3dv_private
329- v3dv/build: meson infrastructure for multi-hw-version support
330- v3dv/format: expose properly that some formats are not filterable
331
332Alexander Monakov (2):
333
334- freedreno/drm-shim: pretend to offer DRM 1.6.0
335- freedreno/drm-shim: keep GEM buffers page-aligned
336
337Alexander Shi (1):
338
339- mesa: texparam: Add a clamping macro to handle out-of-range floats returned as integers.
340
341Alexey Nurmukhametov (1):
342
343- tu/kgsl: Fix file descriptor double close
344
345Alyssa Rosenzweig (668):
346
347- nir: Update some comments referring to imov
348- panfrost: Don't allow_forward_pixel_to_kill for Z/S blit
349- panfrost: Set allow_forward_pixel_to_be_killed for blit
350- panfrost: Set clean_fragment_write for blits
351- panfrost: Invert blend_reads_dest logic
352- panfrost: Don't allow FPK if a RT is missing
353- panfrost: Allow FPK when there are no side effects
354- panfrost: Keep Bifrost blendable -> pixel in table
355- panfrost: Specialize blendable formats for sRGB
356- panfrost: Simplify format_to_bifrost_blend prototype
357- panfrost: Drop blendable format accessor
358- panfrost: Always pick dithered tb formats
359- panfrost: Remove padded unorm blendable formats
360- docs/macos: Explain Apple GLX versus OSMesa on macOS
361- nir/lower_fragcolor: Use shader_instructions_pass
362- nir/lower_fragcolor: Handle fp16 outputs
363- panfrost: Fix formats converting uninit from AFBC
364- nir/lower_fragcolor: Fix driver_location assignment
365- nir/lower_fragcolor: Take max cbufs as argument
366- d3d12: Switch to nir_lower_fragcolor
367- util/bitset: Add BITSET_COUNT helper
368- nir: Add fsin_agx opcode
369- asahi: Stub command-line compiler for AGX G13B
370- agx: Add opcode descriptions as Python
371- agx: Generate opcode list
372- agx: Generate runtime-accessible opcode table
373- agx: Generate builder routines
374- agx: Stub NIR backend compiler
375- agx: Remap varyings to match AGX ABI
376- agx: Stub control flow walking
377- agx: Stub NIR instruction iteration
378- agx: Stub emit_intrinsic
379- agx: Implement load_const as mov
380- agx: Implement direct st_vary
381- agx: Add agx_alu_src_index helper for emit_alu
382- agx: Implement vec2/vec3/vec4 ops
383- agx: Implement fragment_out
384- agx: Add instruction printing
385- agx: Add a trivial register allocator
386- agx: Add instruction packing
387- agx: Add packing for memory loads/stores
388- agx: Add st_vary(_final) instruction packing
389- agx: Terminate programs with stop and traps
390- agx: Implement ld_vary
391- agx: Implement simple floating point ops
392- agx: Implement fsin/fcos
393- agx: Add 8-bit AGX minifloat routines
394- agx: Add minifloat tests
395- agx: Implement native float->int conversions
396- agx: Implement native int->float conversions
397- agx: Add bitwise operations
398- agx: Add iadd/imad integer arithmetic
399- agx: Add saturated integer add/subtract support
400- agx: Add 32-bit bitwise shifts
401- agx: Add forward optimizing pass for fmov
402- agx: Add dead code eliminator
403- agx: Propagate fmov backwards as well
404- agx: Propagate immediates
405- agx: Implement limited case of i2i16/i2i32 as iadd
406- agx: Add sysval management helper
407- agx: Implement load_ubo/kernel_input
408- agx: Set flag on last st_vary instruction
409- agx: Lower load_attr to device memory accesses
410- agx: Implement vertex_id
411- agx: Add agx_tex_dim helper
412- agx: Emit texture ops
413- agx: Pack texture ops
414- agx: Add min/max support
415- agx: Support 1-bit booleans
416- agx: Implement b2f
417- agx: Add b2i implementation
418- agx: Pack cmpsel
419- agx: Support bcsel
420- asahi: Add hexdump utility
421- asahi: Add command buffer XML definitions
422- asahi: Add allocation data structure
423- asahi: Add a GenXML fork
424- asahi: Add (clean room) IOKit uABI header
425- asahi: Add command buffer decode helpers
426- asahi: Add tiling routines
427- asahi: Add device abstraction
428- asahi: Add pool data structure
429- asahi: Add uniform upload routines
430- asahi: Add some magic IOGPU routines
431- asahi: Add vertex formats table
432- asahi: Add Gallium driver
433- nir/opcodes: Reword confusing comment
434- pan/bi: Add missing sr_count to pseudo-atomics
435- pan/bi: Don't reference uninit source in ATOM_C1
436- pan/bi: Add simple constant folding pass
437- pan/bi: Don't reference nir_lower_mediump_outputs
438- pan/bi: Simplify Python expression
439- pan/bi: Union modifiers from across variants
440- pan/bi: Support 16-bit load_interpolated_input
441- pan/bi: Emit int CSEL instead of float by default
442- pan/bi: Implement vectorized f32_to_f16
443- pan/bi: Fix 16-bit fsat
444- pan/bi: Improve assert for vector size errors
445- pan/bi: Implement vectorized int downcasts
446- pan/bi: Fix loads and stores smaller than 32 bits
447- pan/bi: Lower swizzles on CLPER
448- pan/bi: Add and use bi_negzero helper
449- pan/bi: Don't schedule clamps to +FADD.v2f16
450- pan/bi: Workaround \*V2F32_TO_V2F16 erratum
451- panfrost: Don't unroll loops in GLSL
452- panfrost: Remove old dEQP workaround
453- pan/bi: Track dual-src blend type
454- pan/bi: Handle different sizes of LD_TILE
455- pan/bi: Add single-component 8-bit mkvec lowering
456- pan/bi: Handle swizzles in i2i8
457- pan/bi: Lower 8-bit fragment input
458- panfrost: Make comment less confusing
459- panfrost: Support alpha_to_one
460- panfrost: Minor cleanup of blend CSO
461- panfrost: Don't clobber RT0 if RTn is disabled
462- pan/lower_blend: Clean up type size handling
463- pan/lower_blend: Use NIR helpers
464- pan/lower_blend: Rename is_bifrost->scalar
465- panfrost/blend: Fix outdated comments
466- panfrost/blend: Workaround a v7 implementation-detail
467- panfrost/blend: Distribute to_c_factor
468- panfrost/blend: Prepare for lower_fragcolor
469- panfrost: Call nir_lower_fragcolor based on key
470- panfrost: Assume lower_fragcolor has been called
471- panfrost/lower_framebufffer: Don't use i2imp
472- pan/blend: Emit explicit conversions for all types
473- panfrost: Key blend shaders to the input types
474- pan/mdg: Hide units behind MIDGARD_MESA_DEBUG=verbose
475- pan/mdg: More concise RMU name
476- pan/mdg: Don't print zero shifts
477- pan/mdg: Suppress most attribute tables
478- pan/mdg: Don't print explicit .rte
479- pan/mdg: Don't print mem addr brackets
480- pan/mdg: Reduced printed parens
481- pan/mdg: Don't print zero
482- pan/bi: Add imm_uintN helper
483- pan/bi: Handle integer min/max ourselves
484- pan/bi: Handle ineg
485- pan/bi: Handle b2f ourselves
486- pan/bi: Handle b2i8/16
487- pan/bi: Track scalarness of 16-bit ALU
488- pan/bi: Don't swizzle scalars
489- pan/bi: Switch to 1-bit bools
490- pan/bi: Use nir_lower_to_bit_size
491- pan/mdg: Use _output_ type for outmod printing
492- pan/mdg: Remove midgard_opt_copy_prop_reg
493- pan/mdg: Enable nir_opt_{move, sink}
494- panfrost/blend: Inline blend constants
495- pan/mdg: Model blend shader interference
496- panfrost: Fix typo handling blend types
497- pan/bi: Change swizzled scalars to identity
498- pan/bi: Adapt branching for 1-bit bools
499- pan/bi: Handle make_vec with 1-bit bools
500- pan/bi: Temporarily switch back to 0/~0 bools
501- pan/bi: Enable NIR vectorization
502- pan/bi: Fix int<-->float size converts
503- pan/bi: Copyprop constants
504- pan/bi: Garbage collect bifrost_nir.h
505- pan/bi: Enable mediump BLEND lowering
506- panfrost: Enable 16-bit support on Bifrost
507- pan/lower_framebuffer: Fix bitsize mismatch
508- nir: Add blend lowering pass
509- panfrost: Use common blend lowering
510- nir/divergence_anlysis: Add intrinsics for Bifrost
511- pan/bi: Drop load_sampler_lod_parameters_pan
512- pan/bi: Map load_subgroup_invocation to FAU
513- pan/bi: Add "lanes per warp" accessor
514- pan/bi: Add divergent intrinsic lowering pass
515- asahi: Translate blend CSO to lower_blend options
516- asahi: Augment Gallium key with blend state
517- asahi: Call nir_lower_blend with selected key
518- asahi: Garbage collect bind_state
519- asahi: Implement set_blend_color
520- asahi: Add blend constant system value
521- asahi: Call nir_lower_fragcolor
522- asahi: Fix shader key hash function
523- asahi: Pass through "reads tilebuffer?" bit
524- agx: Return agx_instr* from emit_intrinsic
525- agx: Implement blend constant color sysvals
526- agx: Rename blend -> st_tile
527- agx: Add ld_tile opcode
528- agx: Assume lower_fragcolor has been called
529- agx: Condition writeout ops on already being emitted
530- agx: Implement load_output
531- agx: Set reads_tib appropriately
532- panfrost: Drop panfrost_fence in favour of pipe_fence_handle
533- docs: Simplify now that kmsro is autoenabled
534- pan/bi: Add first_vertex to vertex ID
535- panfrost: Track buffers needing resolve
536- panfrost: Set discard based on the resolve set
537- panfrost: Implement framebuffer invalidation
538- panfrost: Hide CAP_INT16 behind is_deqp
539- panfrost: Don't translate compare funcs
540- panfrost: Remove spurious assignment
541- panfrost: Clean up cases for emit_fbd
542- panfrost: Don't upload empty push uniform table
543- pan/mdg: Use smaller LD_UNIFORM instructions
544- ci: Build asahi in meson-gallium job
545- panfrost: Fix major flaw in BO cache
546- panfrost: Drop random #define
547- panfrost: Use natural shader limits
548- panfrost: Make clear which limits are arbitrary
549- panfrost: Garbage collect comment
550- panfrost: Shorten iffy comment
551- pan/mdg: Remove unused midgard_int_alu_op_prefix
552- pan/mdg: Fix output types for scalar fields
553- pan/mdg: Fix spills to TLS
554- pan/mdg: Set lower_uniforms_to_ubo
555- panfrost: Add unowned mode to pan_pool
556- panfrost: Label all BOs in userspace
557- panfrost: Label pools
558- panfrost: Make pool slab size configurable
559- panfrost: Add reference type for unowned pool
560- panfrost: Pool shaders
561- panfrost: Pool texture views
562- panfrost: Reduce blitter pool size
563- panfrost: Fix blending for unbacked MRT
564- panfrost: Fix the reads_dest prototype
565- panfrost: Fix is_opaque prototype
566- panfrost: Fix blend constant fetch prototype
567- panfrost: Fix blend fixed-function prototype
568- panfrost: Fix pan_blend_to_fixed_function_equation prototype
569- panfrost: Move blend properties to CSO create
570- panfrost: Translate fixed-function blend at CSO create
571- panfrost: Garbage collect Gallium blend includes
572- panfrost: Pack blend equations at CSO create time
573- panfrost: Distribute out constant colour code
574- panfrost: Simplify blend_final
575- panfrost: Pass batch to panfrost_get_blend
576- panfrost: Streamline fixed-function get_blend path
577- panfrost: Remove unused dither flag
578- panfrost: Split Bifrost BLEND emit by word
579- panfrost: Precompute bifrost_blend_type_from_nir
580- panfrost: Add draw-time merge helper
581- panfrost: Prepack partial RSD at compile time
582- panfrost: Move depth/stencil/alpha to CSO create
583- panfrost: Preset evaluate_per_sample
584- panfrost: Correct the type of sample_mask
585- panfrost: Fill out the rasterizer CSO
586- panfrost: Move early-z decision earlier
587- panfrost: Streamline the !fs_required case
588- panfrost: Hoist allow_forward_pixel_to_be_killed
589- panfrost: Partially determine FPK state
590- panfrost: Distribute masks for FPK selection
591- panfrost: Pull erratum workaround into own function
592- panfrost: Hoist part of shader_reads_tilebuffer
593- panfrost: Pack draw-time RSD all-at-once
594- panfrost: Move batch_set_requirements to the CSO
595- panfrost: Deduplicate some code from indirect/direct draws
596- panfrost: Pass batch to panfrost_get_index_buffer_bounded
597- panfrost: Remove silly assertion
598- panfrost: Mark job_index > 10000 as unlikely
599- panfrost: Simplify panfrost_bind_sampler_states
600- panfrost: Express viewport in terms of the batch
601- asahi: Set PACKED_STREAM_OUTPUT
602- glsl: Fix subscripted arrays with no XFB packing
603- glsl: Fix packing of matrices for XFB
604- panfrost: Streamline varying linking code
605- panfrost: Define dirty tracking flags
606- panfrost: Add the usual clean/dirty helpers
607- panfrost: Dirty all state when batch is set
608- panfrost: Dirty track RSDs
609- panfrost: Dirty track textures/samplers
610- panfrost: Dirty track viewport descriptor
611- panfrost: Dirty track fragment images
612- panfrost: Add PAN_MESA_DEBUG=dirty option
613- panfrost/ci: Disable GLES2 jobs when we run GLES3
614- panfrost/ci: Disable G72 jobs for now
615- panfrost/ci: Split rules by ISA
616- ci: Condition ppc64-el on specific drivers
617- ci: Condition s390x on specific drivers
618- panfrost: Only link varyings once in good conditions
619- panfrost: Lower max inputs again
620- panfrost: Abort on faults in SYNC mode
621- panfrost: Remove minimal mode
622- panfrost: Increase tiler_heap max allocation to 64MB
623- panfrost/ci: Disable terrain trace
624- panfrost/ci: Remove reference to dated flag
625- panfrost/ci: Run jobs with PAN_MESA_DEBUG=sync
626- panfrost: Add Message Preload descriptor XML
627- panfrost: Add message preload to pan_shader_info
628- panfrost: Inline pan_prepare_shader_descriptor
629- panfrost: Don't take ctx in panfrost_shader_compile
630- panfrost: Expose PIPE_CAP_SHAREABLE_SHADERS
631- asahi: Fix meson.build definition to depend on agx_pack.h
632- agx: Drop cmdline version back to ES3.0
633- agx: Pack ld_var Dx
634- agx: Enable 1-bit load_const
635- agx: Implement boolean mov
636- agx: Track current_block
637- agx: Track block offsets
638- agx: Add nest field to IR
639- agx: Add invert_cond (ccn) to IR
640- agx: Add branch target to IR
641- agx: Add inner loop nesting count field
642- agx: Model control flow instructions
643- agx: Model pop_exec
644- agx: Add push_exec alias
645- agx: Pack control flow instructions
646- agx: Model jump instructions
647- agx: Fix up branch offsets at pack time
648- agx: Implement emit_if the simplest way
649- agx: Optimize out empty else blocks
650- agx: Implement loops in the simplest way
651- agx: Add break/continue support
652- agx: Zero r0l before first use of control flow
653- asahi: Fix scissor descriptor definition
654- asahi: Add "set scissor" command
655- asahi: Add scissor enable bit
656- asahi: Defer viewport pack
657- asahi: Dirty track viewport descriptor
658- asahi: Track scissor states
659- asahi: Mark scissor dirty if rast->scissor changes
660- asahi: Skip draws if the scissor culls everything
661- agx: Add scissor upload BO
662- asahi: Expose PIPE_CAP_CLIP_HALFZ
663- asahi: Add unknown bits seen with the GL driver
664- asahi: Enable depth culling
665- asahi: Update viewport descriptor depth fields
666- asahi: Implement scissors and scissor to viewport
667- asahi: Fix off-by-one in viewport scissoring
668- asahi: Implement wide lines
669- asahi: Determine tiling vs linear for internal textures
670- asahi: Use dt_stride for line_stride where needed
671- asahi: Add layout enum to XML
672- asahi: Translate layouts for texture and RTs
673- asahi: Identify line stride in texture/RT XML
674- asahi: Respect linear strides
675- asahi: Handle linear display targets as well as tiled
676- asahi: Note that "render target" lacks an sRGB bit
677- asahi: Align strides to 16 bytes
678- asahi: Print unknown enum values
679- asahi: Add format enums
680- asahi: Hide pixel formats behind an opaque type
681- asahi: Scaffold format table
682- asahi: Use pixel table in is_format_supported
683- asahi: Respect render target format swizzle
684- asahi: Add ETC2 formats to table
685- asahi: Add "hacks for dEQP" flag
686- asahi: Lift streamout scaffolding from Panfrost
687- asahi: Fake CAPs for ES3 with AGX_MESA_DEBUG=deqp
688- asahi: Flesh out the formats table
689- asahi: Allow half-float vertex buffers
690- asahi: Make data_valid a bitset to save memory
691- asahi: Abort on blit()
692- asahi: Add mipmapping state to the XML
693- asahi: Set levels in texture descriptor
694- asahi: Allocate slices for mipmapping
695- panfrost: Update comment
696- panfrost: Shrink pan_draw_mode return type
697- panfrost: Add draw parameters dirty flags
698- panfrost: Analyze sysval dirty flags
699- panfrost: Dirty track constant buffers
700- panfrost: Don't allocate empty varying buffer
701- panfrost: Dirty track stack sizes
702- panfrost: Write translate_index_size better
703- panfrost: Minor changes to draw_vbo
704- panfrost: Bubble up errors
705- panfrost: Elucidate thread group split field
706- panfrost: Eliminate reserve_* functions
707- panfrost/ci: Report flakes on IRC
708- vc4: Use Rn_UINT instead of In_UINT for index buffers
709- v3d: Use Rn_UINT instead of In_UINT for index buffers
710- etnaviv: Use Rn_UINT instead of In_UINT for index buffers
711- freedreno: Use Rn_UINT instead of In_UINT for index buffers
712- lima: Use Rn_UINT instead of In_UINT for index buffers
713- si: Use Rn_UINT instead of In_UINT for index buffers
714- docs/gallium: Document the index buffer format convention
715- nir: Add nir_intrinsic_load_back_face_agx
716- asahi: Mark special fragment inputs as sysvals
717- agx: Model get_sr
718- agx: Generate enums from Python
719- agx: List sr enum in Python
720- agx: Pack SR immediate
721- agx: Lower front face to back face
722- agx: Handle load_back_face_agx
723- ci: Disable the iris APL jobs
724- nir/lower_fragcolor: Avoid redundant load_output
725- pan/bi: Pull out bi_count_write_registers
726- pan/bi: Use TEXS_2D for rect textures
727- pan/bi: Simplify TEXC codegen for sr_count=0
728- pan/bi: Fix bi_rewrite_passthrough ordering
729- pan/bi: Bundle after RA
730- pan/bi: Add post-RA optimizer
731- pan/bi: Track liveness while scheduling
732- pan/bi: Allow IADD.u32 on FMA as \*IADDC
733- pan/bi: Use explicit affinities in RA
734- pan/bi: Inline spilling in RA
735- pan/bi: Explicit zero reg_live_{in, out} when needed
736- pan/bi: Model interference with preloaded regs
737- pan/bi: Allow move/sink in blend shaders
738- pan/bi: Don't restrict the register file in non-blend shaders
739- pan/bi: Model +BLEND clobbering of r48
740- pan/bi: Handle images in vertex shaders
741- pan/bi: Lower loads with component > 0
742- pan/bi: Lower stores with component != 0
743- pan/bi: Lower 64-bit ints again
744- pan/bi: Emit a dummy ATEST if needed
745- pan/bi: Simplify spill code
746- pan/bi: Track words instead of bytes in RA
747- pan/bi: Don't allocate past the end of the reg file
748- panfrost: Remove AFBC format fixups
749- panfrost: Add missing 'Reverse issue order flag'
750- panfrost: Disable AFBC on v7
751- panfrost: Don't duplicate attribute buffers
752- panfrost: Separate image attribute and buffer emit
753- panfrost: Be explicit in image modifier handling
754- panfrost: Use util_last_bit for images
755- panfrost: Default indirect attributes to 1D type
756- pan/indirect: Factor out is_power_of_two_or_zero
757- pan/indirect_draw: Use unsigned comparisons
758- pan/indirect_draw: Fix 1 instance, nonzero divisor
759- panfrost: Correctly size varyings
760- panfrost: Use varying format from frag shader
761- pan/bi: Force u32 for flat varyings
762- panfrost: Fix vertex image attribute overrun
763- panfrost: Simplify compute_checksum_size formula
764- panfrost: Fix crc_valid condition
765- panfrost: Zero r_dimension for buffer textures
766- panfrost: Add util_draw_indirect() debug path
767- panfrost: Align NPOT divisor records
768- panfrost: Fix src_offset data type
769- panfrost: Make instancing code more obvious
770- panfrost: Assert alignment of indirect records
771- pan/mdg: Use consistent casing in midgard_print
772- pan/mdg: Make -Wswitch happy
773- pan/mdg: Stub memory_barrier{_image}
774- panfrost: Clarify how fs_sidefx works with oq
775- panfrost: Simplify Midgard blend disable
776- panfrost: Don't force early-z with occlusion query
777- panfrost: Respect early-Z force on Midgard
778- pan/mdg: Fix units for SUBSAT
779- pan/mdg: Handle {i,u}{add,sub}_sat
780- pan/mdg: Update r1.w comment
781- pan/mdg: Fix incorrect rewrite in Midgard scheduler
782- panfrost: Mark 16/32_UNORM as non-renderable (v5)
783- panfrost: Don't allocate WLS when not needed
784- pan/mdg: Wire in PAN_SYSVAL_VERTEX_INSTANCE_OFFSETS
785- pan/mdg: Lower away gl_VertexID offset
786- pan/mdg: Use more accurate ld/st reg estimates
787- pan/mdg: Don't skip unit-based checks in choose_instruction
788- pan/mdg: Assert scheduled instructions are reasonable
789- pan/mdg: Insert moves to load/store registers
790- panfrost: Fix dirty state emission
791- panfrost: Emulate indirect draws on Midgard
792- panfrost: Add some missing BGRA formats
793- panfrost: Remove scissor_culls_everything
794- panfrost: Don't set a blend shader for no_colour
795- panfrost: Allocate XFB buffers per-instance
796- panfrost: Fix BUFFER image handling
797- panfrost: Make image buffers robust
798- panfrost: Lower max compute size
799- panfrost: Set PIPE_COMPUTE_CAP_SUBGROUP_SIZE
800- panfrost: Set PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK
801- panfrost: Drop todo on PIPE_COMPUTE_CAP_IMAGES_SUPPORTED
802- panfrost: Don't CRC mipmapped textures
803- panfrost: Reduce pan_image_state indirection
804- pan/indirect_dispatch: Indent NIR blocks
805- pan/indirect_dispatch: Simplify empty command case
806- pan/indirect_dispatch: Distinguish minus-1 defs
807- pan/indirect_dispatch: Expand split expressions
808- pan/indirect_dispatch: Use extracted values
809- panfrost: Use direct dispatch with shared memory
810- panfrost: Don't clobber indirect dispatch fields
811- panfrost: Make data_valid a bitset
812- panfrost: Remove pan_image_state
813- panfrost: Set valid_buffer_range for GPU writes
814- panfrost: Add XML for vertex/instance ID records
815- panfrost: Clean up vertex/instance ID on Midgard
816- panfrost: Flush everything for glMemoryBarrier
817- panfrost: Flush before compute jobs
818- panfrost: Set vertex job_barrier
819- panfrost: Add "Cache Flush" job XML
820- panfrost: Advertise GLES3.1
821- pan/decode: Fix image attribute counting
822- pan/decode: Handle cache flush jobs
823- panfrost/ci: Blank G52 flakes file
824- panfrost/ci: Don't skip SSBO tests on G52
825- panfrost/ci: Do fractional dEQP-GLES31 run on Midgard
826- docs/features: Mark GLES3.1 as done on Panfrost
827- docs/panfrost: Update API versions
828- pan/bi: Include modifier info in opcode table
829- pan/bi: Move bi_word_node to common code
830- pan/bi: Move typesize to common code
831- pan/bi: Track instruction size in opcode table
832- pan/bi: Handle fsat_signed and fclamp_pos
833- pan/bi: Report tuples, not nops, in shader-db
834- pan/bi: Propagate fabs/neg/sat
835- pan/bi: Add back custom algebraic opts
836- pan/bi: Fuse fclamp_pos and fsat_signed
837- pan/bi: Schedule FCMP.v2f16 with abs modifier
838- pan/bi: Fuse abs into FCMP/FMIN/FMAX.v2f16
839- nir: Fix constant folding for irhadd/urhadd
840- agx: Mark components as ASSERTED
841- agx: Add agx_immediate_f helper
842- agx: Add perspective bit to ld_var
843- agx: Update ld_vary encoding mask
844- agx: Add ld_vary_flat opcode
845- asahi: Identify varying descriptor fields
846- agx: Rename remap_varyings -> remap_varyings_vs
847- agx: Implement nir_intrinsic_load_frag_coord
848- agx: Implement ld_vary_flat
849- agx: Rename agx_pack to agx_pack_binary
850- agx: Remap fragment shader varyings explicitly
851- asahi: Unify varying linking code with vertex shaders
852- agx: Pull out agx_write_components
853- agx: Add agx_exit_block helper
854- agx: Add liveness analysis pass
855- agx: Mark sources that kill
856- agx: Count write registers, not components
857- agx: Lift agx_block_add_successor from Panfrost
858- agx: Track logical control flow graph
859- asahi: Wire in tgsi_to_nir
860- asahi: Fix random \*2
861- asahi: Guard for overflow when packing
862- asahi: Always flush when setting framebuffer state
863- asahi: Handle Z16_UNORM textures
864- asahi: Add zsbuf to batch
865- asahi: Save zsbuf ptr
866- asahi: Add internal (renderable) formats to the table
867- asahi: Set fragment key for non-U8NORM render targets
868- asahi: Implement colour buffer reloads
869- asahi: Remove spurious assignment
870- asahi: Remove spurious varying assignment
871- asahi: Generalize varying linking
872- asahi: Add ASAHI_MESA_DEBUG=no16 option
873- agx: Fix 32-bit bitwise shifts
874- agx: Fix LOD_MIN enum
875- agx: Pack LOD descriptors
876- agx: Fix lod_mode shift
877- agx: Legalize LOD sources to be 16-bit only
878- agx: Handle txl
879- asahi: Fail on LOD clamps/bias
880- asahi: Identify texture/sampler count fields
881- asahi: Identify vertex texture/sampler counts
882- asahi: Set vertex texture/sampler counts
883- asahi: Track more Gallium state
884- asahi: Wire in u_blitter
885- asahi: Handle nonzero first_level
886- asahi: Fix meson dependency on packing in compiler
887- asahi: Prepack rasterizer faces
888- asahi: Implement the stencil test
889- asahi: Flush for accesses to Z/S buffer
890- asahi: Comment on an embedded data structure
891- asahi: Skip over holes in the vbufs
892- asahi: Add XML for the attachment structure
893- asahi: Sync attachment magic with asahi demo
894- asahi: Parametrize software "command buffer" size
895- asahi: Identify "command buffer" size field in map
896- asahi: Move IOGPU header to XML
897- asahi: Extend IOGPU header to contain encoder
898- asahi: Use GenXML for main bind fragment
899- asahi: Identify attachment length field
900- asahi: Set data_valid for the depth buffer
901- asahi: Enable primitive restart
902- asahi: Use XML for interpolation packet
903- panfrost: Express dependencies as resources, not BOs
904- panfrost: Wrap occlusion query in pipe_resource
905- panfrost: Split "flush writer" from "flush accessing"
906- panfrost: Eliminate redundant flushes with AFBC
907- panfrost: Add secondary shader XML fields
908- pan/decode: Handle IDVS jobs on Bifrost
909- agx: Don't choke on registers in the optimizer
910- agx: Count read registers as well
911- agx: Assign registers locally
912- agx: Pipe in nir_register
913- agx: Ensure we don't overallocate registers
914- panfrost: Move draw_vbo to pan_cmdstream.c
915- panfrost: Move most CSO creates to pan_cmdstream.c
916- panfrost: Split out prepare_rsd into a vtbl
917- panfrost: Move blend CSO to cmdstream/context
918- panfrost: Don't ralloc panfrost_blend_state
919- panfrost: Move launch_grid to pan_cmdstream
920- panfrost: Move panfrost_emit_tile_map to pan_job
921- panfrost: Use vtable for fragment descriptor functions
922- panfrost: Clean up pan_cmdstream.h
923- panfrost: Move sample accessor to pan_cmdstream
924- panfrost: Remove pan_cmdstream.h
925- panfrost: Remove unused midgard-pack.h includes
926- docs: Update relnotes for panfrost/asahi
927- pan/bi: Improve clause printing
928- pan/bi: Fix skip/lod_mode aliasing with VAR_TEX
929- pan/bi: Add bi_foreach_instr_global_rev_safe helper
930- pan/bi: Pack staging_barrier for the -next- clause
931- pan/bi: Try to hit full occupancy on v7
932- pan/bi: Only spill nodes that could progress in RA
933- pan/bi: Report cycle counts
934- pan/bi: Track LOD mode even for TEXC
935- pan/bi: Analyze helper invocations
936- pan/bi: Fuse LD_VAR+TEXS_2D -> VAR_TEX
937- pan/bi: Add a constant subexpression elimination pass
938- pan/bi: Workaround widen restrictions on +FADD.f32
939- pan/bi: Simplify cube map descriptor generation
940- pan/bi: Comment the fexp2 implementation
941- pan/bi: Factor out exp2/log2 code
942- pan/bi: Don't lower fpow
943- panfrost: Fix FPK enable condition
944- panfrost: Add a performance counter dump utility
945- panfrost: Don't set zs_update_operation in vertex shaders
946- panfrost: Zero depth_source in vertex shaders
947- panfrost: Query tiler features
948- panfrost: Enable more tiler levels if we can
949- panfrost: Generalize pan_blitter's reg count assert
950- panfrost: Set register allocation in the v7 RSD
951- asahi: Move fixed internal shaders to agx_blit.c
952- asahi: Add missing copyright/guards for magic.c/h
953- asahi: Remove unused bo_access property
954- asahi/decode: Only dump mapped allocations
955- asahi: Make track_free safer
956- asahi/decode: Check fewer zeroes after a command buffer
957- asahi: Reserve more space to stop a command buffer
958- asahi: Identify more unknown fields in the memmap
959- asahi/decode: Fix up high word
960- asahi/decode: Handle CULL packets
961- asahi/decode: Fix decoding of draw calls
962- asahi: Allow specifying an encoder ID
963- asahi: Allocate global IDs
964- asahi: Consolidate some magic numbers
965- asahi: Garbage collect senseless cmdbuf struct
966- asahi/decode: Print clear/store pipelines
967- asahi/decode: Print some IOGPU stuff
968- asahi: Set bits in UNK11 needed for points
969- asahi: Set point magic bit in rasterizer
970- asahi: Set bit for psiz
971- asahi: Lower PIPE_CAPF_MAX_POINT_WIDTH to hw limit
972- asahi: Unpack varying descriptors (1x)
973- asahi: Identify triangle/lines vs point varyings
974- asahi: Handle point coordinates
975- agx: Flip point coordinates because OpenGL
976- panfrost: Inline flip_compare_func into pan_encoder.h
977- panfrost: Move panfrost_vertex/instance_id to per-gen
978- panfrost: Inline away pan_pool.c
979- panfrost: Express pack_work_groups more concisely
980- panfrost: Inline away pan_invocation.c
981- panfrost: Assert that injected jobs are for blits
982- panfrost: Inline panfrost_get_z_internal_format
983- panfrost: Move arch-independent pan_format code
984- panvk: Don't use panfrost_bifrost_swizzle
985- panfrost: Remove panfrost_bifrost_swizzle
986- panfrost: Add GenXML macros
987- panfrost: Compile format table multiple times
988- panfrost: Specialize blendable_formats for v6
989- panfrost: Use smaller sizes in blend table
990- panfrost: Give WLS Instances a default
991- panfrost: Pin an architecture for blending
992- panfrost: Use generic delete for ZSA
993- panfrost: Remove reference to mali_blend_equation_packed
994- panfrost: Avoid GenXML enum dependences
995- panfrost: Remove pan_blitter integration
996- panfrost: Init/destroy blitter from per-gen file
997- panfrost: Only access blitter from per-gen
998- pan/bi: Refuse to CSE non-SSA sources
999- pan/bi: Make bi_foreach_instr_in_tuple safer
1000- pan/bi: Update ins->link after scheduling
1001- pan/bi: Do helper termination analysis on clauses
1002- pan/bi: Handle multiple destinations in scheduler
1003- pan/bi: Add bi_before_tuple convenience method
1004- pan/bi: Handle 4-src instructions in scheduler
1005- pan/bi: Calculate dependency graph when bundling
1006- pan/bi: Add a bundling heuristic
1007- panfrost: Fix format swizzles on G72
1008- targets/graw-xlib: Add missing dep_x11
1009- pan/mdg: Garbage collect silly quirk
1010- asahi: Fix sampler filtering flag
1011- agx: Fix mismatched units in load_ubo
1012- agx: Plug memory leak in register allocator
1013- pan/bi: Restrict swizzles on same cycle temporaries
1014- pan/bi: Remove incorrect errata workaround
1015
1016Andres Gomez (25):
1017
1018- ci: Uprev piglit to 9d87cc3d79e ("framework/replay: send backend's subprocess stderr to sys.stderr")
1019- ci: Add test which occasionally times out to lavapipe-vk skips
1020- ci: add xorg to the x86_test-vk container
1021- ci: allow starting xorg for piglit run
1022- ci: remove results directory content only with piglit runners
1023- ci: make sure we only read the first line from install/VERSION
1024- ci: update some radv trace checksums
1025- ci: update some radv trace checksums
1026- ci: update radv's trace job tag for Raven
1027- ci: remove radv's trace job for Polaris10
1028- ci: uprev apitrace to 10.0
1029- ci: uprev DXVK to 1.8.1
1030- ci: add radv's trace job for Navy Flounder
1031- ci: include VKD3D-Proton tests into the VK test container
1032- ci: add VKD3D-Proton testsuite runner
1033- ci: add VKD3D-Proton testsuite job for radv's Navy Flounder
1034- ci: disentangle tags for containers and artifacts produced by them
1035- ci: remove glslangValidator installation from the VK test container
1036- ci: replace glslangValidator with glslang-tools
1037- ci: fix the vkd3d-proton runner
1038- ci: build the hang-detection tool into x86_test-vk
1039- ci: update some radv trace checksums
1040- ci: bump x86_test-base tag
1041- ci: remove unzip from several containers that don't use it at all
1042- ci: use bash with download-git-cache.sh
1043
1044Andrii Simiklit (1):
1045
1046- Remove redundant assignment
1047
1048Antonio Caggiano (15):
1049
1050- panfrost: Fix invalid conversions
1051- panfrost: Meson dependency
1052- util: Perfetto SDK v15.0
1053- pps: Gfx-pps v0.3.0
1054- pps: Gfx-pps config tool
1055- pps: Documentation
1056- intel/perf: Extern C
1057- pps: Intel pps driver
1058- pps: Intel documentation
1059- ci: Add a manual job for tracking the performance of Freedreno
1060- panfrost: Counter definitions
1061- panfrost: Performance configuration
1062- panfrost: Fix pan_pool_ref construction
1063- pps: Panfrost pps driver
1064- pps: Panfrost documentation
1065
1066Anuj Phogat (39):
1067
1068- intel: Rename files with gen_debug prefix
1069- intel: Rename gen_debug prefix to intel_debug
1070- intel: Rename GEN_DEBUG prefix to INTEL_DEBUG
1071- intel: Rename intel_device_info.c to intel_dev_info.c
1072- intel: Rename gen_device prefix in filenames
1073- intel: Rename gen_device prefix to intel_device
1074- intel: Fix alignment and line wrapping due to gen_device renaming
1075- intel: Rename GEN_DEVICE prefix in macros to INTEL_DEVICE
1076- intel: Rename gen_get_device prefix to intel_get_device
1077- intel: Rename gen_get_aperture_size to intel_get_aperture_size
1078- intel: Drop gen prefix in gen_has_get_tiling()
1079- intel: Rename gen_context.h to intel_context.h
1080- intel: Rename gen_context prefix to intel_context
1081- intel: Rename gen_perf prefix in filenames to intel_perf
1082- intel: Rename gen_perf prefix to intel_perf in source files
1083- intel: Fix alignment and line wrapping due to gen_perf renaming
1084- intel: Rename GEN_PERF prefix to INTEL_PERF in build files
1085- intel: Rename GEN_PERF prefix to INTEL_PERF in source files
1086- intel: Rename gen_{pipeline, oa, counter, hw} to intel_{..}
1087- intel: Rename brw_gen_enum.h to brw_gfx_ver_enum.h
1088- intel: Rename gen enum to gfx_ver
1089- intel: Rename gen keyword in test_eu_validate.cpp
1090- intel: Rename gens keyword to gfx_vers
1091- intel: Rename index_gen keyword to index_ver
1092- intel: Rename eu compact instruction tests
1093- intel: Rename gen_{mapped, clflush, invalidate} prefix to intel_{..}
1094- intel: Remove devinfo_to_gen() helper function
1095- intel: Rename isl_to_gen keyword to isl_encode
1096- intel: Rename vk_to_gen keyword to vk_to_intel
1097- intel: Rename gen_10 to ver_10
1098- intel: Rename calculate_gen_slm_size to intel_calculate_slm_size
1099- intel: Rename _gen_{program, part, batch, freq} to _intel_{..}
1100- intel: Rename GEN_PART to INTEL_PART
1101- intel: Rename {i965, iris, anv, isl}_gen prefix in build files
1102- intel: Rename since_gen to since ver
1103- intel: Rename _gen keyword to _gfx_ver in few build files
1104- intel: Fix GEN_GEN macro checks
1105- intel/gfx12+: Add Wa_14013840143
1106- intel: Rename GFX 12.5 to XE_HP
1107
1108Axel Davy (1):
1109
1110- st/nine: Fix compilation error on non-x86 platforms
1111
1112Bas Nieuwenhuizen (41):
1113
1114- radv: Fix memory leak on descriptor pool reset with  layout_size=0.
1115- amd/common: Use cap to test kernel modifier support.
1116- radv: Only require DRM 3.23.
1117- radeon/vcn: Use the correct pitch for chroma surface.
1118- nir: Add load_sbt_amd intrinsic.
1119- radv: Add sbt descriptors user SGPR input.
1120- aco: Add load_sbt_amd intrinsic implementation.
1121- radv: Use global BO list with raytracing.
1122- radv: Add support for RT bind point.
1123- radv: Add RT pipeline bind.
1124- radv: Implement vkCmdTraceRays.
1125- radv: Use correct border swizzle on GFX9+.
1126- nir: Add bvh64_intersect_ray_amd intrinsic.
1127- aco: Implement bvh64_intersect_ray_amd intrinsic.
1128- nir/lower_returns: Deal with single-arg phis after if.
1129- radv: Don't skip barriers that only change queues.
1130- radv: Actually return correct value for read-only DCC compressedness.
1131- radv: Allow DCC images to be compressed with foreign queues.
1132- gallium/vl: Use format plane count for sampler view creation.
1133- gallium/va: Add support for PRIME_2 import.
1134- radv: Use the global BO list for acceleration structures.
1135- radv: Add initial CPU BVH building.
1136- radv: Implement device-side BVH building.
1137- radv: Add acceleration structure descriptor set support.
1138- radv: Convert lower_intrinsics to a switch statement
1139- radv: Implement load_vulkan_descriptor for acceleration structures.
1140- radv: Expose formats for acceleration structure.
1141- radv: Add rt perftest flag.
1142- radv: Enable VK_KHR_acceleration_structure with RADV_PERFTEST=rt.
1143- radv: Add -Wpointer-arith.
1144- util/fossilize_db: Pull seek into lock.
1145- util/fossilize_db: Split out reading the index.
1146- util/fossilize_db: Do not lock the fossilize db permanently.
1147- util/fossilize_db: Only lock the db file, not the index.
1148- nir: Add lowered vendor independent raytracing intrinsics.
1149- nir: Add raytracing shader call lowering pass.
1150- meson: Bump libdrm for amdgpu to 2.4.107.
1151- radv/winsys: Return vulkan errors for buffer creation.
1152- radv/winsys: Add support for a fixed VA address for replay.
1153- radv: Support address capture and replay.
1154- ac/surface: Handle non-retiled displayable DCC correctly for modifiers.
1155
1156Bastian Beranek (1):
1157
1158- glx: Assign unique serial number to GLXBadFBConfig error
1159
1160BillKristiansen (2):
1161
1162- d3d12: Fixes stale context bindings after copy, resolve, and clear
1163- d3d12: Sets all SRV descriptors as data-static
1164
1165Billy Laws (1):
1166
1167- meson: Increase Android Platform SDK version limit
1168
1169Boris Brezillon (60):
1170
1171- panfrost: Don't advertise AFBC mods when the format is not supported
1172- panfrost: Reserve thread storage descriptor in panfrost_launch_grid()
1173- panfrost: Fix RSD emission on Bifrost v6
1174- panfrost: Fix indirect draws
1175- pan/bi: Don't set the EOS flag if there's at least one successor
1176- panfrost: Keep panfrost_batch_reserve_framebuffer() private
1177- panfrost: Fix ZS reloading on Bifrost v6
1178- pan/midg: Fix 2 memory leaks
1179- pan/bi: Expand pseudo instructions when nosched is set
1180- pan/midg: Fix midgard_pack_common_store_mask()
1181- pan/midg: Make sure the constant offset is in range in mir_match_iadd()
1182- panfrost: Make sure pack_work_groups_compute() is passed valid dimensions
1183- panfrost: Add helpers to emit indirect dispatch jobs
1184- panfrost: Hook-up indirect dispatch support
1185- panfrost: Only advertise INDIRECT_DRAW if the kernel supports HEAP BOs
1186- ci: Update to a kernel that has the panfrost MMU fixes
1187- panfrost/ci: Test GLES 3.1 on Bifrost
1188- panfrost/ci: Skip draw_indirect.compute_interop.large.*
1189- panfrost/ci: Run the full deqp-gles3 testsuite
1190- panfrost: Fix format definitions to match gallium expectations
1191- Revert "gallium/util: Fix depth/stencil blit shaders"
1192- panfrost: Pass an image view to panfrost_estimate_texture_payload_size()
1193- panfrost: Fix blit shader names
1194- panfrost: Pack pan_blit_surface fields
1195- panfrost: Get rid of the vertex_count arg in pan_preload_emit_varying()
1196- panfrost: Make pan_preload_emit_*_sampler() applicable to blits
1197- panfrost: Stop assigning ->position in pan_preload_emit_varying()
1198- panfrost: Make pan_preload_emit_*_textures() applicable to blits
1199- panfrost: Make pan_preload_emit_viewport() applicable to blits
1200- panfrost: Rename pan_preload_emit_varying()
1201- panfrost: Shrink the number of args passed to prepare_{bifrost,midgard}_rsd()
1202- panfrost: Don't select the blit shader fragout type twice
1203- panfrost: Stop assuming the viewport will always cover the framebuffer
1204- panfrost: Extend pan_blitter to support blit/resolve operations
1205- panfrost: Use pan_blit() when PAN_MESA_DEBUG=panblit
1206- panfrost: Split the indexed and !indexed indirect draw info structs
1207- pan/bi: Add support for gl_{BaseVertex,BaseInstance}
1208- pan/bi: Add support for gl_DrawID
1209- panfrost: Expose the DRAW_PARAMETERS cap on Bifrost
1210- panfrost: Flag indirect draw/dispatch shaders as internal
1211- panfrost: Relax the stride check when importing resources
1212- panfrost: Try to align scanout resource stride on 64 bytes
1213- panfrost: Don't freeze blit batches
1214- panfrost: Avoid duplicate entries in access->readers
1215- panfrost: Simplify the dependency tracking logic
1216- panfrost: Limit the number of active batch to 32
1217- ci: Update to a new kernel fixing a bug in the panfrost driver
1218- panfrost: Constify the constants pointers passed to pan_blend functions
1219- panfrost: Make panfrost_scoreboard_initialize_tiler() return the job pointer
1220- pan/midg: Add a flag to dump internal shaders
1221- panfrost: Add a Vulkan driver for Midgard/Bifrost GPUs
1222- panfrost: Don't add blit context BOs twice
1223- panfrost: Pass a memory pool to pan_blit_ctx_init()
1224- panfrost: Add alignment info to write-value and cache-flush jobs
1225- panfrost: Allocate WRITE_VALUE jobs with panfrost_pool_alloc_desc()
1226- panvk: Use the desc alloctor when we can
1227- panfrost: Start splitting the panfrost pool logic
1228- panvk: Support returning BOs allocated by panvk_pool to a 'free BO' pool
1229- panfrost: Replace the batch->bos hashmap by a sparse array
1230- panfrost: Do tracking of resources, not BOs
1231
1232Boyuan Zhang (8):
1233
1234- vl: add st_rps_bits for HEVC decode
1235- frontends/va: get st_rps_bits from VA pic param hevc
1236- frontends/vdpau: disable UseStRpsBits for vdpau hevc
1237- radeon/vcn: enable parsing support for st_rps_bits
1238- frontends/omx: use pipe buffer map instead of texture map
1239- radeon/vcn: move calc_dpb_size into create_decoder
1240- radeon/vcn: allocate non-tmz context buffer for VCN2+
1241- radeon/vcn: use st_rps_bits only when it's set
1242
1243Caio Marcelo de Oliveira Filho (25):
1244
1245- spirv: Don't replicate patch bool in vtn_variable
1246- nir: Remove now unnecessary conditions from emit_load/store helpers
1247- intel/compiler: Add common function for CS dispatch info
1248- iris: Use brw_cs_get_dispatch_info()
1249- anv: Use brw_cs_get_dispatch_info()
1250- i965: Use brw_cs_get_dispatch_info()
1251- intel/compiler: Remove unused exported functions
1252- nir: Move shared_memory_explicit_layout bit into common shader_info
1253- intel/compiler: Clarify why VUE is recomputed by FS
1254- nir: Rename nir_is_per_vertex_io to nir_is_arrayed_io
1255- compiler: Rename local_size to workgroup_size
1256- compiler: Rename SYSTEM_VALUE_LOCAL_GROUP_SIZE to SYSTEM_VALUE_WORKGROUP_SIZE
1257- nir: Rename nir_intrinsic_load_local_group_size to nir_intrinsic_load_workgroup_size
1258- nir: Rename WORK_GROUP (and similar) to WORKGROUP
1259- nir: Move zero_initialize_shared_memory into common shader_info
1260- nir: Move workgroup_size and workgroup_variable_size into common shader_info
1261- anv: Support workgroup memory in other shaders
1262- nir/lower_io: Rename vertex_index to array_index in helpers
1263- nir/gather_info: Rename per_vertex to is_arrayed
1264- spirv: Fix handling of OpBranchConditional with same THEN and ELSE
1265- nir/opt_if: Don't split ALU for single block infinite loops
1266- nir: Add test to check edge case in Split ALU optimization
1267- spirv: Update headers and metadata from latest Khronos commit
1268- spirv: Support SPV_KHR_subgroup_uniform_control_flow
1269- anv: Advertise VK_KHR_shader_subgroup_uniform_control_flow
1270
1271Carsten Haitzler (Rasterman) (1):
1272
1273- panfrost: Fix Bo imports to not take the process down if fd is invalid
1274
1275Charlie (10):
1276
1277- v3dv: enable KHR_image_format_list
1278- v3dv: enable KHR_sampler_mirror_clamp_to_edge
1279- v3dv: enable KHR_incremental_present
1280- v3dv: enable KHR_uniform_buffer_standard_layout
1281- v3dv: clamp srgb render targets
1282- v3dv: remove sRGB blending workaround
1283- v3dv: add the unswizzled RGBA4444 format
1284- v3dv: divide by block size in copy_image_blit
1285- v3dv: add ASTC formats to get_compatible_tlb_format
1286- v3dv: enable ASTC formats
1287
1288Charlie Birks (1):
1289
1290- v3dv: document two supported extensions
1291
1292Charlie Turner (5):
1293
1294- ci: Remove obsolete reference to DEQP_SKIPS
1295- radv: Merge dEQP default skips into all generation-specific skip lists
1296- radv: Add a STONEY baseline for dEQP.
1297- radv: Provide a toggle to avoid warnings about unsupported devices.
1298- spirv_to_nir: Add environment variable to change default log level
1299
1300Charmaine Lee (1):
1301
1302- svga: fix texture rectangle sampling when no sampler view declaration is defined
1303
1304Chia-I Wu (93):
1305
1306- venus: stop using vn_renderer_sync in vn_fence
1307- venus: stop using vn_renderer_sync in vn_semaphore
1308- venus: stop using vn_renderer_sync in vn_queue
1309- venus: remove vn_renderer_sync support from vn_queue_submission
1310- venus: remove VN_SYNC_TYPE_SYNC
1311- venus: remove vn_queue::sync_queue_index
1312- venus: remove vn_ring_wait_all
1313- venus: wait on vkQueuePresentKHR
1314- venus: remove vn_renderer_info::has_timeline_sync
1315- venus: add vn_image_init_memory_requirements
1316- venus: add vn_image_create
1317- venus: add vn_wsi_create_scanout_image
1318- venus: refactor vn_queue_submission_count_semaphores
1319- venus: clang-format clean
1320- venus: change SpaceBeforeParens style option
1321- venus: provide accessors for vn_instance_submit_command
1322- venus: update venus-protocol headers to use accessors
1323- venus: rename VN_CS_ENCODER_INITIALIZER
1324- venus: add vn_renderer_shmem
1325- venus: use vn_renderer_shmem
1326- venus: add dev->renderer pointer
1327- venus: pass vn_renderer in vn_renderer_bo functions
1328- venus: move vn_renderer_bo_ops to vn_renderer
1329- venus: merge bo create and init ops
1330- venus: move some common members to vn_renderer_bo
1331- venus: use sparse array to manage vn_renderer_bo
1332- venus: make sure gem_handle and vn_renderer_bo are 1:1
1333- venus: update venus-protocol for external memory
1334- venus: rework external memory capability queries
1335- venus: enable external memory support
1336- venus: fix render pass without attachments
1337- venus: fix dmabuf import mmap_size check
1338- venus: fix dmabuf import fail path
1339- venus: add VN_MAX_API_VERSION
1340- venus: rename vn_instance::renderer_version
1341- venus: clarify/fix instance renderer versions
1342- venus: clarify/fix device renderer version
1343- venus: refactor vn_physical_device_init_extensions
1344- venus: avoid strcmp for spec version override
1345- venus: refactor vn_physical_device_init_supported_extensions
1346- venus: init supported extensions in one place
1347- venus: add extension check for ANDROID_native_buffer
1348- venus: clean up vn_device_fix_create_info
1349- venus: get rid of #ifdef's in vn_CreateImage
1350- pps: fix a missing include in Intel pps driver
1351- util/u_thread: fix u_thread_setname for long names
1352- venus: add struct vn_command_buffer_builder
1353- venus: remember cmd buffer level and queue family
1354- venus: ignore pInheritanceInfo when we should
1355- docs: add basic documentation for venus
1356- vulkan/wsi: provide more info in wsi_image_create_info
1357- venus: add vn_device_memory_alloc as a helper
1358- venus: fix asserts on mem bo
1359- venus: fix opaque fd re-import
1360- venus: move wsi_image_create_info parsing
1361- venus: remember image wsi states
1362- venus: handle VN_COMMAND_BUFFER_STATE_INVALID
1363- venus: remember render pass PRESENT_SRC attachments
1364- venus: remember render pass PRESENT_SRC barriers
1365- venus: remember image view image
1366- venus: remember framebuffer attachments
1367- venus: remember cmd buffer render pass and framebuffer
1368- venus: remember cmd buffer fb attachments
1369- venus: add vn_image_memory_barrier_has_present_src
1370- venus: add vn_cmd_get_image_memory_barriers
1371- venus: clean up vn_get_intercepted_barriers
1372- venus: undo wsi iamge ownership transfer for Android
1373- venus: reland wsi image ownership transfer for Android
1374- venus: enable wsi image ownership transfer for common wsi
1375- vulkan/util: add vk_default_allocator
1376- radv: use vk_default_allocator
1377- v3dv: use vk_default_allocator
1378- tu: use vk_default_allocator
1379- anv: use vk_default_allocator
1380- venus: use vk_default_allocator
1381- venus: silence compiler warnings
1382- venus: query experimental features in one call
1383- venus: document the darkest corner of venus
1384- venus: move vn_renderer_sync_ops to vn_renderer
1385- venus: simplify vn_renderer_sync creation
1386- venus: update venus-protocol headers
1387- venus: add support for external fence on Android
1388- venus: add support for external semaphores on Android
1389- venus: clean up vn_physical_device_get_native_extensions
1390- venus: fix compatibility with older host drivers
1391- venus: be verbose about which physical devices are skipped
1392- vulkan/wsi: fix select_memory_type when all MTs are local
1393- venus: fix empty submits with BOs
1394- egl/surfaceless: try kms_swrast before swrast
1395- meson: allow egl_native_platform to be specified
1396- venus: clean up vn_AllocateMemory
1397- venus: suballocate memory in more cases
1398- vulkan/wsi/x11: do not inherit last_present_mode
1399
1400Christian Gmeiner (3):
1401
1402- ci: disable initrd support
1403- drm-shim: fix compile with glibc >= 2.33
1404- ci: bare-metal: drop webdav support
1405
1406Connor Abbott (133):
1407
1408- ir3: Fix list corruption in legalize_block()
1409- ir3: Reduce max const file indirect offset base to 9 bits
1410- ir3, tu: Add compiler flag for robust UBO behavior
1411- tu: Correctly preserve old push descriptor contents
1412- tu: Handle robust UBO behavior for pushed UBO ranges
1413- tu: Handle null descriptors
1414- tu: Expose VK_EXT_robustness2
1415- ir3/parser: Fix oob write with immediates array
1416- ir3: Improve cat1 modifier disassembly
1417- ir3: Assemble and disassemble swz/gat/sct
1418- ir3: Prevent oob writes to inputs/outputs array
1419- nir/lower_clip_disable: Fix store writemask
1420- ir3, tu: Cleanup indirect i/o lowering
1421- freedreno: Don't lower indirects in GLSL IR
1422- freedreno/a6xx: Better document SP_GS_PRIM_SIZE
1423- freedreno/a6xx: Fix SP_GS_PRIM_SIZE for large sizes
1424- tu: Fix SP_GS_PRIM_SIZE for large sizes
1425- ir3/postsched: Fix dependencies for a0.x/p0.x
1426- ir3/cp: Clone registers for compare-folding optimization
1427- ir3/sched: Use correct src index
1428- ir3/postsched: Use correct src index
1429- ir3/delay: Remove special case for array deps
1430- ir3/postsched: Fix ir3_postsched_node::delay calculation
1431- ir3/cp_postsched: Fixup SSA use pointer for direct reads
1432- ir3: Refactor nir->ir3 block handling
1433- ir3: Make predecessors an array
1434- ir3: Rework outputs
1435- ir3: Don't assume regs[1] exists in ir3_fixup_src_type()
1436- nir/lower_phis_to_scalar: Add "lower_all" option
1437- ir3/cf: Rewrite pass
1438- ir3: Use round-to-nearest-even for fquantize2f16
1439- ir3: Call nir_lower_wrmask() again after lowering scratch
1440- ir3: Only use per-wave pvtmem layout for compute
1441- ir3: Introduce phi and parallelcopy instructions
1442- ir3: Add ir3_start_block()
1443- ir3: Readd support for translating NIR phi nodes
1444- ir3: Prepare for instructions with multiple destinations
1445- ir3: Improve register printing for SSA
1446- ir3: Add ir3_register::array.base
1447- ir3/delay: Fix full->half and half->full delay
1448- ir3: Add reg_elems(), reg_elem_size(), and reg_size()
1449- ir3: Make branch conditions non-SSA
1450- ir3: Rewrite delay calculation
1451- ir3/delay: Delete pre-RA repeat handling
1452- ir3/postsched: Don't use SSA source information
1453- ir3: Remove unused check_src_cond()
1454- ir3: Add dominance infrastructure
1455- ir3: Add pass to lower arrays to SSA
1456- ir3: Expose occupancy calculation functions
1457- ir3: Rewrite register allocation
1458- ir3/ra: Add a validation pass
1459- ir3: Remove right and left copy prop restrictions
1460- ir3/sched: Don't schedule collect early
1461- ir3/sched: Make collects count against tex/sfu limits
1462- ir3/sched: Consider unused destinations when computing live effect
1463- ir3: Add simple CSE pass
1464- ir3: Insert output collects in the main shader
1465- ir3: Copy propagate immed/const to meta instructions
1466- ir3: Improve printing of array parallelcopies/phis
1467- ir3/ra: Fix array parallelcopy confusion
1468- ir3: Make tied sources/destinations part of the IR
1469- ir3: Split read-modify-write array dests in two
1470- ir3: Update ir3_register::instr when cloning instructions
1471- ir3: Validate that ir3_register::instr is correct
1472- ir3: Add is_reg_special()
1473- ir3: Make ir3_instruction::address a normal register
1474- ir3: Split ir3_reg_create() into ir3_{src,dst}_create()
1475- ir3: Add separate src/dst count in ir3_instr
1476- ir3/legalize: Construct branch properly
1477- ir3: Add srcs/dsts arrays to ir3_instruction
1478- freedreno/isa: Convert to srcs/dsts
1479- freedreno/tests: Convert to srcs/dsts
1480- ir3/sched: Convert to srcs/dsts arrays
1481- ir3/core: Switch to srcs/dsts arrays
1482- ir3/ra: Switch to srcs/dsts arrays
1483- ir3/parser: Switch to srcs/dsts arrays
1484- ir3/array_to_ssa: Switch to srcs/dsts arrays
1485- ir3/legalize: Switch to srcs/dsts arrays
1486- ir3/print: Switch to srcs/dsts arrays
1487- ir3/validate: Switch to srcs/dsts arrays
1488- ir3/opts: Switch to srcs/dsts arrays
1489- ir3/frontend: Switch to srcs/dsts arrays
1490- ir3: Remove regs array
1491- ir3: Remove IR3_REG_DEST
1492- ir3/ra: Fix corner case in collect handling
1493- freedreno/a6xx: Make SP_XS_PVT_MEM_HW_STACK_OFFSET non-inline
1494- freedreno, tu: Set SP_XS_PVT_MEM_HW_STACK_OFFSET
1495- freedreno/computerator: Fix local_size typo
1496- ir3/sched: Speed up live_effect
1497- ir3: Stop creating dummy dest registers
1498- ir3: Prepare dest helpers for multi-dst instructions
1499- ir3: Add foreach_dst/foreach_dst_n
1500- ir3: Support multi-mov instructions
1501- ir3/delay: Support multi-mov instructions
1502- ir3/postsched: Support multi-mov instructions
1503- ir3/legalize: Support multi-mov instructions
1504- ir3: Use correct flags for movmsk & multi-mov
1505- ir3/validate: Support multi-mov instructions
1506- ir3: Print multi-mov instructions
1507- ir3: Add min gen for multi-mov instructions
1508- ir3/lower_parallelcopy: Use SWZ
1509- nir/subgroups: Replace lower_vote_eq_to_ballot with lower_vote_eq
1510- nir/subgroups: Support > 1 ballot components
1511- nir: Add read_invocation_cond_ir3 intrinsic
1512- tu, ir3: Plumb through support for CS subgroup size/id
1513- ir3/nir: Call nir_lower_subgroups
1514- ir3: Handle shared register liveness correctly
1515- ir3: Handle unreachable blocks
1516- ir3: Prevent propagating shared regs out of loops
1517- ir3: Better valid flags for shared regs
1518- ir3: Actually allow shared reg moves to be folded
1519- ir3: Fix shared reg delay
1520- ir3: Make MOVMSK use repeat
1521- ir3: Fix infinite loop in scheduler when splitting
1522- ir3/sched: Handle branch condition in split_pred()
1523- ir3: Cleanup ir3_legalize jump optimization
1524- ir3: Support any/all/getone branches
1525- ir3: Add subgroup pseudoinstructions
1526- ir3: Handle shared registers in lower_parallelcopy
1527- ir3: Implement nir subgroup intrinsics
1528- ir3: Fix convergence behavior for loops with continues
1529- ir3/legalize: Fix loop convergence behavior
1530- tu: Update subgroup properties
1531- ir3/nir: Lower indirect references of compact variables
1532- ir3: Add missing include to ir3_parser.y
1533- ir3: Add ir3_collect() for fixed-size collects
1534- ir3/lower_parallelcopy: Don't manually set wrmask
1535- ir3: Update .editorconfig and .dir-locals.el
1536- ir3: Manually reformat some places
1537- freedreno: Add some options to .clang-format
1538- ir3: Reformat source with clang-format
1539- ir3/print: Manual formatting fixups
1540- ir3: Preserve gl_ViewportIndex in the binning shader
1541
1542Corentin Noël (4):
1543
1544- ci: Use the caching proxy for Mesa artifacts
1545- ci: Re-enable virgl tesselation shader
1546- ci: Bump virglrenderer
1547- ci: actually run piglit tests with virgl
1548
1549Daniel Schürmann (33):
1550
1551- aco: fix additional register requirements for spilling
1552- aco: relax validation rules for p_reduce dst RegType
1553- driconf: set vk_x11_strict_image_count for Metro: Exodus
1554- aco/ra: prevent underflow register for p_create_vector operands
1555- radv: call nir_copy_prop() after load-store vectorization
1556- aco/ra: also prevent overflow register for p_create_vector operands
1557- aco: remove condition operand from branch in invert block
1558- radv,aco: scalarize all phis via nir_lower_phis_to_scalar()
1559- aco: simplify Phi RegClass selection
1560- aco/ra: only create phi-affinities for killed operands
1561- aco/ra: refactor affinity coalescing
1562- aco/ra: refactor register assignment for vector operands
1563- amd/ci: add hawaii-specific skip and fail lists
1564- aco/ra: handle copies of definition registers
1565- aco/ra: handle copies of copies better
1566- aco/util: replace DIV_ROUND_UP(n+1,m) by n/m+1
1567- aco: reorder and cleanup #includes
1568- aco: add missing Licenses and remove Authors from files
1569- aco: add 'common/' and 'llvm/' prefix to #includes
1570- aco/meson: remove unnecessary dependencies
1571- aco: refactor SDWA opcode validation
1572- aco: remove (wrong) GCC array-bounds warning
1573- util/meson: include inc_gallium
1574- aco: add .clang-format file
1575- aco: Format.
1576- aco/meson: remove inc_gallium from include_directories
1577- aco: fix self-intersecting register swaps
1578- aco: fix extract_vector optimization
1579- aco/isel: avoid unnecessary calls to nir_unsigned_upper_bound()
1580- aco/insert_waitcnt: Remove many unnecessary wait_imm.combine()
1581- aco/live_var_analysis: change worklist to a single integer
1582- aco/optimizer: ensure to not erase high bits when propagating packed constants
1583- aco: include <cstddef> in aco_util.h
1584
1585Daniel Stone (69):
1586
1587- CI: Disable Panfrost and radeonsi
1588- CI: Disable all Panfrost/AMD/Iris automatic jobs
1589- CI: Disable rk3399-gru-kevin jobs for now
1590- doc: Gratuituous promotion of Wayland
1591- docs: Even more gratutious nitpicks
1592- Revert "CI: Disable rk3399-gru-kevin jobs for now"
1593- CI: Fix path confusion in OpenCL Piglit execution
1594- ci/zink: Skip flaky GLX test
1595- ci/radeonsi: Skip flaky glx-swap-copy test
1596- ci/windows: Artifact Meson build and test logs
1597- ci/windows: Re-enable Windows build
1598- ci: Add Piglit gl-1.0-blend-func to everyone's skips
1599- ci/lava: Iterate all job results, not just the first
1600- ci/lava: Handle proxy download failures
1601- ci/lava: Add validate-only mode to job submitter
1602- ci/lava: Add --dump-yaml option to submitter
1603- ci/bare-metal: Factor out environment to a separate script
1604- ci/bare-metal: Don't leak JWT into logs
1605- ci/lava: Move LAVA files to lava/
1606- ci/lava: Pass JWT separately from environment variables
1607- ci/lava: Cosmetic reordering of job init
1608- ci/lava: Wrap submission in a shell script
1609- ci/lava: Clean up variable naming, document them
1610- ci: Make PIPELINE_ARTIFACTS_BASE a common variable
1611- ci: Add JOB_ARTIFACTS_BASE variable
1612- ci: Use JOB_ARTIFACTS_BASE for Piglit fails
1613- ci/lava: Use per-job rootfs overlay for environment
1614- ci/panfrost: Remove useless variable
1615- ci/lava: Generate job name from lava-submit.sh
1616- ci/lava: Remove unused arguments
1617- ci/lava: Add explicit fatal-error handler
1618- ci/lava: Disable stdout/stderr buffering
1619- ci/lava: Dump and artifact YAML again
1620- ci/lava: Avoid tee as it ruins exit status
1621- ci/piglit: Fix path to uploaded images
1622- ci/lava: Always upload Piglit replay images to MinIO
1623- ci/lava: Set PIGLIT_NO_WINDOW
1624- ci/lava: Explicitly start Xorg for Iris EGL tests
1625- ci/bare-metal: Rename BM_KERNEL_MODULES to HWCI_KERNEL_MODULES
1626- ci/lava: Use HWCI_KERNEL_MODULES to load modules
1627- ci/lava: Rename environment variable script
1628- ci/bare-metal: Try harder to do NTP
1629- ci/bare-metal: Reorder init so network comes first
1630- ci: Move bare-metal init script to common directory
1631- ci: Be consistent about install path
1632- ci/bare-metal: Consistently set library paths
1633- ci/bare-metal: Split init script into two stages
1634- ci/bare-metal: Move devcoredump capture to CI common
1635- ci/lava: Start using devcoredump captures
1636- ci: Consistent pass/fail result output
1637- ci: Unify {BM,LAVA}_START_XORG environment
1638- ci: Unify {BARE_METAL,LAVA}_TEST_SCRIPT environment
1639- ci/bare-metal: Set CPU and GPU governors to max, disable GPU runtime PM
1640- ci/lava: Pass MinIO path on the command line
1641- ci/lava: Use common stage-2 init
1642- ci/lava: Drop bitrotten fastboot support
1643- ci/lava: Make kernel image type a normal argument
1644- ci/lava: Generate YAML from Python, not Jinja
1645- llvmpipe: Add handle export for resource_get_param
1646- Revert "ci: disable panfrost t760 jobs"
1647- CI: Disable LAVA devices for maintenance
1648- Revert "CI: Disable LAVA devices for maintenance"
1649- util/disk_cache: Don't leak when cache is empty
1650- panfrost/genxml: Decode Bifrost index-driven vertex jobs
1651- ci/panfrost: Temporarily disable sun50i/RK3288
1652- Revert "ci/panfrost: Temporarily disable sun50i/RK3288"
1653- vulkan/wsi/wayland: Initialise wl_shm pointer in VkImage
1654- egl/wayland: Error on invalid native window
1655- egl/wayland: Allow EGLSurface to outlive wl_egl_window
1656
1657Danylo Piliaiev (36):
1658
1659- nir: add lowering pass for helperInvocationEXT()
1660- turnip: implement VK_EXT_shader_demote_to_helper_invocation
1661- turnip: implement VK_KHR_shader_terminate_invocation
1662- ir3: treat 16b imul as mul.s24
1663- turnip: enable shaderInt16
1664- ir3: do not double threadsize when exceeding branchstack limit
1665- ir3: make possible to specify branchstack up to 64
1666- tu: do not corrupt unwritten render targets
1667- ir3: do not move varying inputs that depend on unmovable instrs
1668- ir3: do not fold cmps from different blocks with non-null address
1669- ir3: memory_barrier also controls shared memory access order
1670- ir3: update bar/fence bits in accordance to blob
1671- turnip: implement VK_KHR_vulkan_memory_model
1672- docs: mark off VK_KHR_vulkan_memory_model for turnip
1673- turnip,freedreno/a6xx: SP_BLEND_CNTL has per-mrt blend enable bit
1674- freedreno/a5xx: SP_BLEND_CNTL has per-mrt blend enable bit
1675- turnip: copy all layers specified in vkCmdCopyImage
1676- ci/turnip: drop fail annotation for float_control tests
1677- ci/turnip: drop fail annotation for image.extend_operands_spirv1p4.*
1678- turnip: do not ignore early_fragment_tests
1679- turnip: make possible to create read-only bo with tu_bo_init_new
1680- turnip: make cmdstream bo's read-only to GPU
1681- turnip: place a limit on the growth of BOs
1682- freedreno: reduce the upper bound of IB size by one
1683- turnip: reset push descriptor set on command buffer reset
1684- turnip: emit vb stride dynamic state when it is dirty
1685- turnip: fix register_index calculations of xfb outputs
1686- turnip: implement VK_EXT_provoking_vertex
1687- turnip: do not re-emit same vs params
1688- turnip: early exit in tu6_draw_common to save cpu cycles
1689- freedreno/computerator: pass iova of buffer to const register
1690- freedreno/isa: add uoffset type to print positive-only offsets
1691- ir3: add ldg.a,stg.a which allow complex in-place offset calculation
1692- glsl: Prohibit implicit conversion of mem parameter in atomicOP functions
1693- ir3: add newly found shlg.b16 instruction
1694- freedreno: fix wrong tile aligment for 3 CCU gpu
1695
1696Dave Airlie (146):
1697
1698- iris: move get_time into a static in bufmgr code.
1699- iris: move target to isl dim translate to inline.
1700- lavapipe: add support for non-dri loader on linux
1701- llvmpipe: split screen init up.
1702- llvmpipe: wrap late screen init with a mutex.
1703- llvmpipe: delay late screen creation until context init.
1704- lavapipe: fix mipmapped resolves.
1705- lavapipe: mark event_storage as volatile
1706- intel: move brw_ff_gs_prog_key/data to compiler.
1707- intel/compiler: add support for compiling fixed function gs
1708- i965: port fixed function geom shader to use compiler paths
1709- i965: drop old brw ff gs code.
1710- intel/genxml: align gen4/5 xml for store data immediate
1711- intel/genxml: rewrite the prefilterop xml to be more consistent.
1712- intel/gemxml: move blitter command to render on gen4/5
1713- intel/genxml: fix raster op fields on gen4/5
1714- intel/decoder: fixup batch decoder for binding tables on gen4/5
1715- intel/decoder: add gen4/5 geometry state decode
1716- gallivm: handle texture arrays in non-fragment shaders with lod.
1717- llvmpipe: fix non-multisampled rendering to multisampled framebuffer
1718- llvmpipe: add the interesting bit of cpu detection to the cache.
1719- st/nir: always revectorise if scalarising happens.
1720- intel/gfx6: move xfb_setup outside the gs compiler into the driver.
1721- intel/isl: decrease isl_format_layouts size by 36k
1722- intel/isl: convert null surface fill to a struct.
1723- intel/isl: add levels and minimum array element to null fill
1724- intel/isl: add blend enable flag to gen4/5
1725- u_blitter: fix fs used when no color emitted
1726- u_blitter: fix stencil blit fallback for crocus.
1727- iris: drop unused function declaration
1728- nir/edgeflags: update outputs written when lowering edge flags.
1729- st/mesa: also disable other int textures
1730- intel/decode: handle gen4/5 WM state fragment shaders
1731- intel: reorder base program key.
1732- intel/compiler: add flag to indicate edge flags vertex input is last
1733- crocus: initial gallium driver for Intel gfx 4-7
1734- ci: add crocus to the build tests
1735- crocus: Don't call SET_TILING for dmabuf imports
1736- crocus: Make iris_bo_import_dmabuf take a modifier
1737- crocus: introduce main resource configuration helper.
1738- crocus: Drop buffer support in resource_from_handle
1739- crocus: hook up memory object creation from handle
1740- crocus: hook up resource creation from memory object
1741- crocus: plumb device/driver UUID generators
1742- crocus: enable GL_EXT_memory_object feature on gen7
1743- crocus: fix scanout tiling so glamor/modesetting can work.
1744- crocus: fixed some missing WM dirtys.
1745- crocus: fixup render aux usage function.
1746- crocus: disable Z16
1747- crocus/gen6: fix depth blit blorp regression.
1748- i965: fix regression in pipe control on g45
1749- crocus: drop dead gen prototypes.
1750- crocus: fixup stray tab
1751- crocus: rename genX proto functions to avoid iris conflicts.
1752- crocus: fixup workaround_bo to match 965.
1753- crocus: convert a bunch of is_haswell into verx10 checks.
1754- crocus: refactor blend state code.
1755- crocus/gen8: limit some pipe controls to gen7/hsw
1756- crocus: limit texture gather workarounds to gen7/hsw
1757- crocus/stencil: limit stencil workaround to gen7
1758- crocus/query: add gen8 support to queries by extending hsw checks
1759- crocus: extend l3 config setup to gen8
1760- crocus/gen8: add push constant support (extend hsw)
1761- crocus/gen8: extend some compute + state functions to gen8
1762- crocus/gen8: extend image support to gen8
1763- crocus: extend hsw cut index to gen8
1764- crocus/gen8: extend predicate handling to gen8.
1765- crocus/gen8: add sampler / border color support for gen8
1766- crocus/gen8: add l3 config support
1767- crocus/gen8: extending gen7 binding table pointers
1768- crocus/gen8: limit vertex buffer workarounds to ivb
1769- crocus/gen8: add raw pipe control support for gen8 workarounds
1770- crocus/gen8: add support for vertex instancing and index buffers.
1771- crocus/gen8: state base address + misc setup state.
1772- crocus/gen8: add VF topology support
1773- crocus/gen8: add PMA fix from iris
1774- crocus/gen8: add streamout support
1775- crocus/gen8: add SBE swiz support
1776- crocus/gen8: add VF SGVS support.
1777- crocus/gen8: add PS blend command support.
1778- crocus/gen8: refactor blend state for gen8
1779- crocus/gen8: add rasterizer state changes.
1780- crocus/gen8: add viewport support
1781- crocus/gen8: add depth stencil state support
1782- crocus/gen8: port over vs/gs/ds state changes.
1783- crocus/gen8: port over ps/wm state changes from iris.
1784- crocus/gen8: port over VFE/compute state changes
1785- croucs/gen8: handle gfx8 surface aux addr reloc.
1786- crocus/gen8: handle sampler differences
1787- crocus/gen8: hookup gen8 state generators
1788- crocus/gen8: add support for cherryview (env var for bdw)
1789- croucs: limit stencil swizzle change to older generations
1790- crocus/bufmgr: fix userptr left over fail
1791- crocus: Explicitly cast value to uint64_t
1792- crocus: free context state properly.
1793- crocus: fix vertex buffer leak on screen end.
1794- crocus: fix batch state bo leak
1795- meson/crocus: add prefer-crocus option.
1796- crocus/query: poll the syncobj in the no wait situation
1797- intel/genxml: fix gfx6 GS SVB_INDEX encoding
1798- crocus/gfx6: fix sampler view first level.
1799- crocus: dirty blend state more often.
1800- crocus: Avoid replacing backing storage for buffers with no contents
1801- crocus/gfx6: always be dirtying gs attachments for xfb
1802- crocus: fix another printf specifier.
1803- crocus/gen8: add back z16 support for gen8
1804- crocus: disable Z16 unorm textures on pre-gen8 as well.
1805- gallium/sw: add sw_vk bit to avoid having to futz with env vars for lavapipe
1806- zink: drop getenv hacking now that gallium is fixed.
1807- iris: make iris_bind_reserve_3d and Wa_1604061319 only check for dirty render bindings
1808- crocus: cleanup some deadcode in the gen5 blend emit
1809- crocus: expose ARB_blend_func_extended on gen 45/50
1810- crocus/gen5: enable support for GL_EXT_gpu_shader4
1811- crocus: fix crash on index buffer rebinding.
1812- crocus: fixup index buffer dirtying.
1813- draw: fix tessellation output vertex size calculation
1814- draw/tess: write correct primitive id into vertices
1815- crocus: inline the d/s resource handling functions
1816- crocus: don't update draw parameters unless needed
1817- crocus: optimise bo_unref path a little.
1818- crocus: inline group_index<->bti
1819- crocus: reorder version checks on indirect xfb
1820- crocus: restrict prim_restart on index buffer check to pre-hsw
1821- crocus: support rebinding streamout target buffers
1822- crocus: use threaded context base classes
1823- crocus/tc: init/deinit threaded resource
1824- crocus: add unsync transfer pool
1825- crocus: enable threaded context support
1826- ac: fix win32 build
1827- crocus/gen8: fix wrap mode needs border color.
1828- crocus: add GL_CLAMP emulation in driver again.
1829- vulkan/wsi/wl: add wl_shm support for lavapipe.
1830- lavapipe: add the separate depth/stencil layout enable.
1831- crocus: use simple_mtx in the bufmgr
1832- lvp: fixup multi draw memcpys
1833- draw: handle resetting draw_id between instances.
1834- softpipe/aniso: move DDQ calculation to after scaling.
1835- crocus/gen4-5: fix ff gs emit on VS vue map change.
1836- llvmpipe: add support for time elapsed queries.
1837- draw/llvmpipe: multiply polygon offset units by 2
1838- teximage: return correct desktop GL error for compressedteximage
1839- crocus/gen4: restrict memcpy mapping to gen5
1840- intel/fs: restrict max push length on older GPUs to a smaller amount
1841- crocus/gen45: fix mapping compressed textures
1842- intel/genxml: fix raster operation field in blt genxml
1843- crocus: add support for set alpha to one with blt.
1844
1845Dmitry Baryshkov (2):
1846
1847- freedreno/regs: split DSI PHY registers to separate xml files.
1848- freedreno/regs: split old/not used phy registers to separate DB
1849
1850Drew Davenport (1):
1851
1852- radeonsi: Report multi-plane formats as unsupported
1853
1854Duncan Hopkins (3):
1855
1856- zink: Correct compiler issue with have_moltenvk member having been moved.
1857- gallium/dri: Guard DRI driver global variables on MacOS if Zink is enabled.
1858- zink: Fix MacOS compiling issues
1859
1860Dylan Baker (27):
1861
1862- meson: OpenMP is supposed to be optional
1863- docs: add release notes for 21.0.3
1864- docs: update sha256 sum for mesa 21.0.3
1865- docs: update calendar and link releases notes for 21.0.3
1866- docs: update calendar for 21.1.0-rc1
1867- docs: update calendar for 21.1.0-rc2
1868- docs: update calendar for 21.1.0-rc3
1869- meson/vulkan: fix linkage on windows
1870- docs: Add calendar entries for 21.2 release candidates.
1871- VERSION: bump for 21.2-rc1
1872- .pick_status.json: Update to f40a08d25c91256cd3dff0211b8e10d5bbb3734e
1873- .pick_status.json: Update to a62973580b7846f2213cbd2589e9473c26596683
1874- .pick_status.json: Update to 27534a49cf3872646cb8ef9371707d74a81b1986
1875- VERSION: bump for 21.2-rc2
1876- .pick_status.json: Update to b45cddda183230232937387f91d009500b2372c9
1877- .pick_status.json: Update to 49908c602ffd2d84063effa7ddd0ee842be41a89
1878- VERSION: bump for 21.2.0-rc3
1879- .pick_status.json: Update to dff0d9911d176802b54890c796e19f56c50f24e1
1880- .pick_status.json: Update to b8e29e89366a5264391dc7c10e778330b7add66a
1881- freedreno/ir3: Add build id to the disassembler test
1882- .pick_status.json: Mark 8cb795b4772f882024b20c4d4b051b2411dd1a8c as denominated
1883- .pick_status.json: Update to 87b0962fef4e447a2ea9c76a611aa20b109a259d
1884- .pick_status.json: Update to 842b8c8965327615f4692384a905dd63f1fba63d
1885- .pick_status.json: Update to 97be8e42e42f3b739c3de808553094f86ad8879f
1886- bin/gen_release_notes: Add basic tests for parsing issues
1887- bin/gen_release_notes: Don't consider issues for other projects
1888- bin/gen_release_notes: Fix commits with multiple Closes:
1889
1890Eleni Maria Stea (5):
1891
1892- egl: fix in expected type
1893- util: replaced ENODATA with ENOATTR for non-Linux systems
1894- util: Removed unused statement from FreeBSD build
1895- intel: struct bitset is renamed to brw_bitset
1896- intel: PAGE_SIZE used in allocators shouldn't be defined on FreeBSD
1897
1898Ella-0 (1):
1899
1900- anv: expose primary node to VK_EXT_physical_device_drm even when VK_KHR_display is not enabled
1901
1902Emil Velikov (1):
1903
1904- gbm: list to stderr all the missing extension
1905
1906Emma Anholt (251):
1907
1908- ci/freedreno: Merge a630 piglit to a single job.
1909- freedreno: Fix YUV sampler regression.
1910- ci/virgl: Mark a couple of new Crash tests as flakes.
1911- ci/freedreno: Skip some precision tests on a530.
1912- nir_to_tgsi: Use ARL instead of UARL in the !native_integers case.
1913- nir: Generate load_ubo_vec4 directly for !PIPE_CAP_NATIVE_INTEGERS
1914- ci/lavapipe: Don't include deqp's shader_cache in the artifacts.
1915- ci/lava: Return the run's results/ artifacts from the DUTs.
1916- ci/piglit: Always include the HTML summary in a run.
1917- ci/lava: Point the shader cache at tmpfs.
1918- mesa: Remove dead _mesa_unpack_rgba_block().
1919- util: Switch the non-block formats to unpacking rgba rows instead of rects.
1920- util/format: Add some NEON intrinsics-based u_format_unpack.
1921- panfrost: Enable packed uniforms.
1922- zink: Enable PIPE_CAP_PACKED_UNIFORMS.
1923- ci: Build deqp-egl targeting x11_egl_glx
1924- ci/llvmpipe: Test dEQP-EGL against Xvfb.
1925- ci/freedreno: Test dEQP-EGL against Xorg.
1926- mapi: Respect MESA_DEBUG=silent for no-op debug output.
1927- freedreno: Mark glsl-fs-fogscale as a Fail.
1928- freedreno/a6xx: Don't try to do Z-as-RGBA blits for mismatched formats.
1929- util: Fix big-endian handling of z/s formats.
1930- mesa: Deduplicate _mesa_pack_ubyte_stencil_row()
1931- mesa: Deduplicate _mesa_pack_float_z_row().
1932- mesa: Deduplicate _mesa_pack_uint_z_row().
1933- mesa: Remove dead _mesa_get_pack_float_z_func().
1934- msea: Move z24s8-to-z24s8 packing fastpath to swrast.
1935- mesa: Move per-pixel Z pack functions to swrast.
1936- mesa: Remove dead _mesa_pack_ubyte_rgba_rect().
1937- mesa: Replace _mesa_pack_ubyte_rgba_row() with pack_ubyte_rgba_8unorm().
1938- ci/radeonsi: Mark a glx_arb_sync_control/timing flake.
1939- turnip: Only write the tu_RegisterDeviceEXT() out fence on success.
1940- ci: Add missing vulkan dep for freedreno (turnip) and v3dv test jobs.
1941- u_format: Fix z32_s8x24 s8 unpacking on big-endian.
1942- u_format: Add missing BE swizzles for R8SG8SB8UX8U_NORM
1943- ci/freedreno: Mark dEQP-EGL flakes reported on IRC since its introduction.
1944- ci/freedreno: Mark new flakes from the go-fast branch.
1945- ci/freedreno: Mark another recent piglit flake.
1946- ci/freedreno: Fix the recent-a5xx-texture-flakes matches.
1947- ci/freedreno: Add another db820c flake that's appeared in the last few months.
1948- tgsi: Mark the tgsi_exec_channel and tgsi_double_channel ALIGN16.
1949- tunrip: Add support for VK_EXT_separate_stencil_usage.
1950- ci/freedreno: Mark a5xx texture gather as flaky.
1951- turnip: Demote API version to 1.1.
1952- ci/llvmpipe: Add testing of gles3/31/gl.
1953- ci/lavapipe: Add fractional NIR stress test job.
1954- freedreno/a5xx: Fix up border color pointers.
1955- gallium/tgsi_exec: Drop the unused dst_datatypes from dest stores.
1956- tgsi_exec: Drop unused destination dimension support.
1957- tgsi_exec: Mark the store file default case as unreachable.
1958- gallium/tgsi_exec: Simplify bounds checks on the const file.
1959- turnip: Switch to the shared vulkan ICD generator.
1960- turnip: Move the extension tables to tu_device.c
1961- ci/freedreno: Add another daily dose of a530 flakes.
1962- turnip: Drop wideLines properties since we don't support wide lines.
1963- turnip: Claim 2 discrete queue priorities.
1964- freedreno: Update editorconfig and emacs settings for freedreno reformat.
1965- ci/turnip: Clean up some stale fail annotations.
1966- ci/turnip: Add some links to issues and MRs for some test failures.
1967- turnip: Drop fail annotation for driver_properties.
1968- ci: Switch to apitraces for glmark2
1969- ci/panfrost: Add some more traces to replay.
1970- ci/iris: Add some more traces to replay.
1971- ci/freedreno: Skip refract on a306 now that it hangchecks sometimes.
1972- midgard: Fix type for vertex_builtin_arg() and compute_builtin_arg().
1973- ci/freedreno: Skip a test that's taking out the a530 boards.
1974- ci/freedreno: Mark two more recent intermittent a530 flakes.
1975- ci/deqp: Make DEQP_EXPECTED_RENDERER a required regex for VK like for GLES.
1976- ci/intel: Add test jobs for dEQP.
1977- vulkan: Avoid stomping array padding in the MemoryProperties wrapper.
1978- mesa/st: Only use 16-bit ints or floats in the NIR path.
1979- i915g: Disable 3D-pipeline clears.
1980- i915g: Switch batchbuffer dumping to mesa_logi().
1981- i915g: Fix dumping of the FS in batchbuffers.
1982- ci/i915g: Introduce manual testing of i915g using anholt's runner.
1983- i915g: Make the FS for compile failures write red instead of DIFFUSE.
1984- i915g: Add support for the .Absolute flag on TGSI srcs.
1985- i915g: Stop advertising support for indirect addressing in the FS.
1986- i915g: Fix writing of undefined depth value if not writing any outputs.
1987- i915g: Fix undefined results for TGSI_OPCODE_KILL
1988- ci/iris: Switch GLK back to manual testing.
1989- ci/freedreno: Clear compswap flake annotation.
1990- ci/freedreno: Clear stale validation failure flake annotation.
1991- ci/freedreno: Drop a630 flake annotation from the go-fast changes.
1992- ci/freedreno: Add a link explaining get_display_plane_capabilities
1993- ci/freedreno: Drop VK flake annotations not seen in the last ~year.
1994- ci/freedreno: Consolidate ssbo.fragment_binding_array flake annotation.
1995- ci/freedreno: Mark a630 glx-visuals-depth/stencil as piglit flakes.
1996- ci/freedreno: Also mark waitformsc as flaky.
1997- ci/freedreno: Add glx-copy-sub-buffer to flakes on a530 and a630.
1998- mesa/st: Fix iris regression with clip distances.
1999- ci/freedreno: Add another a630 piglit flake.
2000- ci/freedreno: Turn off default a530 quick_gl testing, do full quick_shader.
2001- turnip: Reorganize copy_format()'s switch statement.
2002- turnip: Make sure that SNORM blits don't clamp ambiguous -1.0 values.
2003- Revert "ci: Configure DUTs for max performance"
2004- ci: Add known-flake handling for the IRC flake reports
2005- ci: Move the flakes channels to OFTC
2006- util: Add a helper macro for defining initial-exec variables.
2007- android: Fix ELF TLS support.
2008- ci/android: Update to building for SDK 29 by default.
2009- u_format: Fix some pep8 in u_format_parse.py.
2010- u_format: Drop redundant .name init.
2011- u_format: Move the BE swizzle computation into Format init.
2012- u_format: Use the nice helper for reversing an array.
2013- u_format: Assert that array formats don't include BE swizzles.
2014- u_format: Define tests for r3g3b2 formats and fix BE swizzles for them.
2015- u_format: Fix the BE channel ordering for R5G5B5A1_UINT.
2016- u_format: Sanity check the BE channels for all bitmask formats.
2017- u_format: Sanity check that BE swizzles are appropriately mapped from LE.
2018- u_format: Use the computed BE channels/swizzles for bitmask formats.
2019- ci/freedreno: Add some more known flakes from recent marge runs.
2020- docs/freedreno: Update for the fanin/fanout -> collect/split rename.
2021- docs/freedreno: Rewrite the section on array access.
2022- tgsi_exec: Garbage-collect the FAST_MATH path.
2023- u_math: Reduce fast-log2 table size from 65k entries back to 256.
2024- llvmpipe: Don't call util_init_math().
2025- ra: Add a unit test.
2026- ra: Document that class index is allocated in order, use that in r300.
2027- ra: Use struct ra_class in the public API.
2028- ra: Add fast-path support for register classes of contiguous regs.
2029- vc4: Use the ra_alloc_contig_reg_class() function to speed up RA.
2030- v3d: Use the ra_alloc_contig_reg_class() function to speed up RA.
2031- intel/fs: Use ra_alloc_contig_reg_class() to speed up RA.
2032- intel/vec4: Use ra_alloc_contig_reg_class() to reduce RA overhead.
2033- lima: Use ra_alloc_contig_reg_class().
2034- util/ra: Use the conflicting neighbor to skip unavailable registers.
2035- ci/i915g: Fix incorrect expectation.
2036- i915g: Make sure we don't try to texture from the const file.
2037- ci/lava: Finish garbage-collecting the TEST_SUITE variable
2038- ci: Update piglit and deqp/piglit-runner.
2039- ci/freedreno: Enable running all of piglit_gl for a530's manual test.
2040- ci/piglit: Skip WGL on all the Linux runs.
2041- ci/fastboot: Add a serial timeout to catch fastboot prompt failure.
2042- ci/fastboot: Consistently restart the run on intermittent conditions.
2043- ci/iris: Enable piglit testing on AML-Y.
2044- ci: Disable Xorg's screensaver entirely.
2045- ci/deqp: Drop stress/perf skips lists.
2046- ci/deqp: Skip flush_finish on all CI jobs.
2047- ci/softpipe: Move the flake to the flakes list.
2048- ci: Add a flakes IRC channel for llvmpipe/softpipe.
2049- ci/deqp: Skip dEQP-VK.wsi.display.get_display_plane_capabilities
2050- ci/piglit: Move the WGL skip to a common skips file.
2051- ci/piglit: Skip glx_arb_sync_control\@timing.* on all systems.
2052- freedreno: Drop batch-cache orphan tracking.
2053- freedreno: Make a bunch of the batch cache take ctx as the arg.
2054- freedreno: Drop a bit of indirection around the batch cache flush path.
2055- freedreno: Be more strict about QUERY_AVAILABLE to simplify the code.
2056- freedreno: Fix batch reference handling in flush_resource().
2057- freedreno: Move the !MAP_WRITE write batch refcounting to the branch.
2058- freedreno: Remove broken back_blit optimization.
2059- freedreno: Flush batches upon destroying the ctx.
2060- freedreno: Add perf_debug() for our software conditional rendering.
2061- freedreno: Move FD_MESA_DEBUG=msgs output to mesa_logi.
2062- freedreno/fdl: Give the tiling mode a nice name in debug dumps.
2063- freedreno: Add more detailed blit debug in FD_MESA_DEBUG=msgs.
2064- freedreno: Skip staging blits from uninitialized resources.
2065- freedreno: Add some cheza flakes from the last week.
2066- i915: Disable vertex texturing and delete the code.
2067- i915: Drop assertion failure about seeing each const decled once.
2068- i915g: Allow fragment coord conventions TGSI properties to be set.
2069- nir/lower_int_to_float: Make sure the cursor is in the right spot.
2070- nir: Do peephole select on other instructions if the limit is ~0.
2071- nir_to_tgsi: Fix internal handling of NIR uints for !CAP_INTEGERS
2072- nir_to_tgsi: Support integer sysvals on !CAP_INTEGERS hardware.
2073- i915g: Handle fragment depth being in OUT[1] not OUT[0].
2074- i915g: Switch to using nir-to-tgsi.
2075- i915g: Add triangle provoking vertex support.
2076- freedreno: Move some driver debug printfs to mesa_logd.
2077- freedreno/ir3: Move the assert output to mesa_loge().
2078- util/log: Add a streaming printf interface.
2079- freedreno/ir3: Use mesa_log_stream() for ir3 disassembly.
2080- freedreno/ir3: Move the native code output to mesa_log as well.
2081- nir: Add an interface for logging shaders with mesa_log*.
2082- freedreno/ir3: Move NIR printing to mesa_log.
2083- gallium/draw: Garbage collect draw_set_force_passthrough
2084- gallium/draw: Garbage collect draw_pt_fetch_emit.
2085- gallium/util: Introduce a helper for finding whole-resource blits.
2086- freedreno: Move the rsc-based batch flushing to helper functions.
2087- freedreno: Handle full blit discards by invalidating the resource.
2088- freedreno: Cooperate with tc to stop checking the BC for resource_busy().
2089- ci/llvmpipe: Mark two more multithread program link flakes.
2090- i915g: Remove nr_cbufs loop.
2091- i915g: Create an i915_surface for our pipe_surfaces.
2092- i915g: Compute 3DSTATE_BUF_INFO flags at surface create time.
2093- i915g: Move cbuf color swizzle lookup to CSO creation time.
2094- i915g: Simplify color write mask setup.
2095- i915g: Use the color swizzle to reshuffle the blend const color.
2096- i915g: Clear xfails for vertex texturing.
2097- freedreno: Fix leak of the screen hash table.
2098- i915g: Fix GL_ARB_copy_buffer assertion fails.
2099- i915g: Fix bad naming of depth texture formats.
2100- i915g: Finish out blend factor overrides for both RGBx and A8.
2101- ci/i915g: Skip the piglit glx tests since we're not running X.
2102- freedreno/ir3: Report RA failure with mesa_loge().
2103- turnip: Link more MRs and issues related to our xfails.
2104- turnip: Use vk_startup_errorf() in more startup paths.
2105- ci/turnip: Document create_instance_device_intentional_alloc_fail's fail.
2106- turnip: Disable buffer texturing on 422 formats.
2107- Revert "freedreno: Cooperate with tc to stop checking the BC for resource_busy()."
2108- nir: Add a helper for chasing movs with nir_ssa_scalar().
2109- turnip: Short-circuit if ladder generation for constant index SSBO/UBOs.
2110- i915g: Apply clang-format.
2111- i915g: Bake the decls and program together.
2112- i915g: Allow use of I915_DEBUG= options on non-DEBUG builds.
2113- i915g: Enable dumping of fragment shaders under I915_DEBUG=fs.
2114- i915g: Use the normal compile error path for empty FSes.
2115- i915g: Log program compile errors to mesa_loge().
2116- i915g: Stop translating the fragment program on the first error.
2117- i915g: Improve logging of unsupported opcodes.
2118- i915g: replace "uint" with normal uint32_t.
2119- i915g: Use stdbool.h instead of custom bools.
2120- i915g: Remove redundant p->error setting.
2121- i915g: Mark program errors on setting up temps, constants, and immediates.
2122- i915g: Fix off-by-one in constant count assertion.
2123- intel: Early exit from inst_is_in_block().
2124- i915g: Finish the uint -> uint32_t conversion.
2125- i915g: Add the nice cube map layout comments from i915c.
2126- i915g: Fix FS debug dumping for declarations.
2127- i915g: Delete redundant i915_hw_sampler_views atom.
2128- i915g: Add curly braces for normal mesa style (and helps clang-format)
2129- i915g: Set up the cube map texture wrap modes.
2130- freedreno: Update comments about PIPE_BUFFER shadowing.
2131- freedreno: swap ->valid when shadowing resources.
2132- freedreno/a5xx: Make sure to mark blit read/write access in the BC.
2133- freedreno: Stop manually marking blit dst buffers as valid.
2134- freedreno: Swap needs_ubwc_clear when shadowing.
2135- freedreno: Flush the shadowed resource's write batch up front.
2136- i915g: Add support for per-vertex point size.
2137- i915g: whitespace fixup from the cube map fix.
2138- i915g: Force 1D textures to use wrap mode for the Y coordinate.
2139- i915g: Make sure the 1D texture Y channel is initialized.
2140- anv: Fix unused var warning on release builds from an assertion.
2141- nir: Add a nir_instr_remove that recursively removes dead code.
2142- nir: Use remove_and_dce for nir_shader_lower_instructions().
2143- nir: Free the instructions in a DCE instr removal.
2144- i915g: Fix writemasking of SEQ/SNE/SSG.
2145- nir_to_tgsi: Run copy prop (and thus dce) after lower_bool_to_float.
2146- nir_to_tgsi: Declare immediates as float on non-native-ints hardware.
2147- turnip: Fix allocation size for vkCmdUpdateBuffer.
2148- i915g: Fix dumping of 3DSTATE_BACKFACE_STENCIL_OPS.
2149- i915g: Fix backface stencil when front_ccw is set.
2150- ci: Make sure that we build the piglit dmabuf tests.
2151- freedreno: Suballocate our long-lived ring objects.
2152- freedreno/a6xx: Reduce the size of the config stateobj allocation.
2153- freedrneo/a6xx: Reduce the size of the long-lived texture stateobj.
2154- freedreno/a6xx: Allocate just enough memory for SO state, only if we do SO.
2155- freedreno: Optimize duplicate obj-obj ring relocs.
2156- i915g: Fix release build compiler warnings.
2157- ci: Enable testing of i915g in the the debian -Werror release build.
2158- freedreno: Lock access to msm_pipe for RB object suballocation.
2159
2160Enrico Galli (10):
2161
2162- microsoft/compiler: zero out unused WebGPU system values
2163- microsoft/compiler: Remove de-duplication of arbitrary semantic names
2164- d3d12, microsoft/compiler: Switching semantic names to TEXCOORD
2165- d3d12, microsoft/compiler: Moving driver_location allocation to compiler
2166- util: Add simple test for util_qsort_r
2167- util: Add qsort_r/s args adapter for MSVC and BSD/macOS
2168- nir: Add modes filter to nir_sort_variables
2169- microsoft/compiler: Switch io sort to use nir_sort_variables_with_modes
2170- microsoft/spirv_to_dxil: Add drive_location assignment
2171- microsoft/compiler: Add support for get_ssbo_size to translator
2172
2173Eric Engestrom (15):
2174
2175- VERSION: bump to 21.2.0-devel
2176- docs: reset new_features.txt
2177- egl/x11: don't forget to exit the attrib list loop
2178- docs: add release notes for 21.1.0
2179- docs: add release notes for 21.1.1
2180- docs: update calendar and link releases notes for 21.1.0
2181- docs: update calendar and link releases notes for 21.1.1
2182- docs/release-calendar: add the schedule for the 21.1 branch
2183- docs: add release notes for 21.1.2
2184- docs: update calendar and link releases notes for 21.1.2
2185- docs: add release notes for 21.1.3
2186- docs: update calendar and link releases notes for 21.1.3
2187- docs: add release notes for 21.1.4
2188- docs: update calendar and link releases notes for 21.1.4
2189- docs/release-calendar: add a few more 21.1 releases
2190
2191Erico Nunes (7):
2192
2193- gallium/hud: create vs_text to match fs_text
2194- gallium/hud: extend check for has_srgb
2195- docs/lima: add an initial page for Lima
2196- lima: enable z16 format
2197- lima: add reload command to the command dump
2198- meson: kmsro: require dri3 for X11
2199- lima: avoid crash with negative viewport values
2200
2201Erik Faye-Lund (193):
2202
2203- zink: fix stencil-export cap emission
2204- lavapipe: resolve border-color when creating sampler
2205- lavapipe: implement VK_EXT_custom_border_color
2206- nir/lower_tex: do not stumble on 16-bit inputs
2207- zink: document requirement of VK_EXT_custom_border_color
2208- gallivm: handle 16-bit input in i2b32
2209- gallivm: run nir_opt_algebraic_late
2210- gallivm: add 16-bit integer support
2211- zink: do not require vulkan memory model for shader-images
2212- docs: write basic meta-documentation
2213- zink: do not read outside of array
2214- docs: remove out-of-date gles info
2215- docs: remove documentation of MESA_CI_VISUAL
2216- docs: remove documentation of MESA_PRIVATE_CMAP
2217- docs: remove documentation of MESA_HPCR_CLEAR
2218- docs: nest cherry-pick example under note
2219- docs: use tables instead of pre-formatted text
2220- docs: use math notation for example matrices
2221- docs: use code-block for console-content
2222- docs: use code-block for glsl
2223- docs: use code-block for c
2224- docs: use code-block for ini
2225- zink: only emit extended-formats cap if needed
2226- zink: remove memory-model leftovers
2227- docs: fixup link to extension
2228- docs: fix quoting around a few limits
2229- zink: correct image cap checks
2230- docs: add missing zink-requirement
2231- docs: someome -> someone
2232- zink: enable required instance ext
2233- zink: make zink_binding private
2234- zink: remove stray semicolons
2235- zink: fixup bad indentation
2236- docs: remove out-of-date versions doc
2237- zink: fix shader-image requirements
2238- zink: correct an extension-link
2239- docs: fixup indentation of radeonsi envvar values
2240- docs: document r600 envvars
2241- zink: use UINT32_MAX instead of UINT_MAX
2242- zink: respect bit-size of dref-result
2243- zink: run nir_opt_algebraic_late
2244- zink: always lower function-temp derefs
2245- zink: support emitting 16-bit int types
2246- zink: enable 16-bit int support
2247- zink: support emitting 16-bit float types
2248- zink: perform fp16 texture-lookups as fp32 and then convert
2249- zink: enable 16-bit float support
2250- zink/codegen: prefer first definition of prop/feature structs
2251- zink: also enable float16 from KHR extension
2252- lavapipe: consistently use nir macros
2253- docs: update gallium doxygen docs
2254- zink: handle matrix-types after vectors
2255- zink: cache SpvId for aggregate glsl_types
2256- zink: always enable fixed shader-caps
2257- zink: do not check for varying output for fragment shaders
2258- zink: emit cap early
2259- zink: remove needless shader-info from context
2260- zink: emit sample-shading cap early
2261- zink: emit cap early
2262- zink: only emit ImageBuffer cap if needed
2263- docs: do not generate redirects on error
2264- gallium/u_vbuf: avoid dereferencing NULL pointer
2265- freedreno/a5xx: Remove ppgtt hack
2266- docs: remove doxygen support
2267- zink: remove incorrect border-swizzle assumption
2268- lavapipe: emit correct textures_used for texture-arrays
2269- zink: do not ask glsl-compiler to unroll
2270- lavapipe: fix fsum with swizzle
2271- st/mesa: do not take util_logbase2 of a negative size
2272- zink: check for error when binding memory
2273- gallium: allow to report errors from p_screen::resource_bind_backing
2274- lavapipe: report out-of-memory when binding
2275- llvmpipe: allow calculating size of overly large texture
2276- lavapipe: report allocation-error
2277- lavapipe: correct reported number of UBOs
2278- translate: reserve more vertex-shader outputs
2279- translate: assert that nr_elements is in range
2280- ci: Uprev piglit to 3351e8952 ("max-texture-size: report merged results")
2281- docs/features: document GL_ARB_ES3_2_compatibility support for zink
2282- docs/features: mark a few more extensions as done for zink
2283- zink: fix provoking-vertex cap for quads
2284- docs: promote #dri-devel on oftc over freenode
2285- docs: update link to #zink
2286- docs: update location of #panfrost
2287- docs: update link to #lima
2288- zink: simplify emit_load_const
2289- v3d: use helper to simplify things
2290- ci: downgrade sphinx to v3.x
2291- docs: update another IRC reference
2292- docs: update another IRC reference
2293- docs: drop clayton from intel-ci notice
2294- zink: use actual const for const offset
2295- lavapipe: handle cube-array image-views
2296- lavapipe: do not interpret cube-compatible as cubemap
2297- zink: only mark resources as cube-compatible if supported
2298- zink: mark 2d-arrays as cube-compatible
2299- zink: implement half-float packing
2300- zink: untangle have_EXT_debug_utils and ZINK_DEBUG_VALIDATION
2301- zink: add support for string-markers
2302- util/prim_restart: revert part of bad fix
2303- docs: quote a few defines
2304- docs: fix header-levels in envvars.rst
2305- docs: use file-role for paths
2306- docs: use envvar role for envvars
2307- docs: add the doc-comment for fse-vars
2308- docs: do not list all gles major versions
2309- docs: update list of apis to match website
2310- docs: update llvm requirement
2311- docs: rename vmware-guest article
2312- docs: clean up list of deprecated systems
2313- docs: move swrast to deprecated drivers list
2314- docs: clean up software-drivers list
2315- docs: clean up openswr links
2316- docs: split out layered driver to its own list
2317- docs: clean up freedreno links
2318- docs: add links to documented drivers
2319- r600: explicitly advertise index buffer format support
2320- zink: limit images we mark as cube-compatible
2321- zink: rename spirv_15 bool to spirv_1_4_interfaces
2322- zink: allow to specify any spir-v version to nir_to_spirv
2323- zink: calculate spir-v version based on vk version
2324- zink: only enable vote if we can support it
2325- zink: use a macro for spir-v versions
2326- st/pbo: use correct type for images and textures
2327- docs: update master -> main in edit-links
2328- zink/ci: increase piglit and deqp-runner timeouts
2329- llvmpipe: fix edge-rule logic for lines
2330- llvmpipe: consistently deal with post-rast state
2331- llvmpipe: fix multisample lines again
2332- llvmpipe: do not always use pixel-rounded coordinates for points
2333- zink/ci: re-enable test
2334- zink: reject more illegal blits
2335- zink: limit non-extension version feature to spirv 1.5
2336- zink: use correct type for u_bit_scan
2337- zink: do not unmap dt-buffers twice
2338- zink: drop paranoid code
2339- zink: add missing compiler-dependency
2340- zink: drop some more vla usage
2341- zink: fix more initializer styles
2342- zink: introduce a define for max descriptors per type
2343- zink: use max-descriptor define
2344- zink: use alloca instead of hard-to-size vlas
2345- zink: correct type of flags to flush
2346- zink: fixup signedness of subtraction
2347- zink: remove unused function
2348- zink: drop repeated usage-bit
2349- zink: do not check buffer-format for usage-bits
2350- docs: remove outdated meson-section
2351- docs: remove outdated clarification
2352- docs: drop historic meson details
2353- docs: use more file-roles
2354- docs: use rst captions
2355- wgl: remove hard limit on pixelformats
2356- zink: drop unused macros
2357- zink: remove unused function-pointers
2358- zink: unbreak moltenvk code
2359- zink: remove unused moltenvk functions
2360- zink: do not store moltenvk functions in screen
2361- zink: remove some needless moltenvk details
2362- libgl-gdi: add missing include
2363- iris/ci: disable amly jobs
2364- aux/trace: fix bool argument
2365- zink: cast pointers to uintptr_t
2366- ci/windows: work around meson encoding issues
2367- ci/windows: enable msvc builds of zink
2368- ci/windows: fix zink msvc build-rules
2369- gallium/u_threaded: do not apply start twice
2370- ci: fix source-deps for radv on windows
2371- zink: hook up line-rasterization ext
2372- zink: use bit-allocation for boolean rasterizer-state
2373- zink: support line stippling
2374- zink: fill in the right line-mode based on state
2375- docs: update zink requirements
2376- llvmpipe: reject unsupported shader-image formats
2377- lavapipe: query formats for shader-image support
2378- llvmpipe: only report supported shader-image formats
2379- lavapipe: expose more storage-image features
2380- lavapipe: do not disable multisampling for smooth lines
2381- lavapipe: fix disable_multisample condition
2382- gallium: explicitly specify line rasterization mode
2383- draw: respect line_rectangular state
2384- llvmpipe: respect rectangular_lines
2385- lavapipe: re-expose line-rasterization extension
2386- lavapipe: expose strict-lines feature
2387- zink: implement support for non-planar DRM modifiers
2388- zink: remove duplicate format-mapping on little-endian
2389- vulkan: do not map zero-sized region of memory
2390- vulkan: allocate host-visible memory for swapchain images
2391- zink: check for right feature
2392- zink: respect line_rectangular state
2393- lavapipe: do not assert on more than 32 samplers
2394- lavapipe: do not mark unsupported tests as crashing
2395- d3d12: split up root parameter update and set
2396
2397Erik Kurzinger (1):
2398
2399- vulkan/device_select: avoid segfault on Wayland if wl_drm is unavailable
2400
2401Ernst Sjöstrand (1):
2402
2403- nv50: Fix use of initializers on older compilers
2404
2405Ezequiel Garcia (2):
2406
2407- panfrost: Add GPU IDs for G52 1-Core-2EE (RK3568/RK3566)
2408- panfrost: Rename G52 product ID 0x7402 as G52r1
2409
2410Felix DeGrood (16):
2411
2412- intel: add L3 Bypass Disable to gen xml
2413- iris: Cache VB/IB in L3$ for Gen12
2414- iris: reduce redundant tile cache flushes
2415- intel/blorp: remove tile flush from emit surface state
2416- intel/compiler: Use switch for DERIVATIVE_GROUP logic
2417- intel/compile: refactor DERIVATIVE_GROUP logic
2418- intel/compiler: tileY friendly LID order for CS
2419- intel/compiler: balanced tileY/linear friendly LID order for CS
2420- anv: Cache VB/IB in L3$ for Gfx12
2421- anv: Add debug messages for DEBUG_PIPE_CONTROL
2422- anv: Clear all pending stall after pipe flush
2423- anv: Remove Tile Cache flush from SBA, Pipe Select
2424- anv: remove unnecessary Tile Cache flushes
2425- anv: Only flush Tile Cache on VK_ACCESS_HOST_R/W
2426- anv: Add ANV_PIPE_HDC_PIPELINE_FLUSH_BIT
2427- anv: Replace DC Flush with HDC Pipeline Flush
2428
2429Francisco Jerez (20):
2430
2431- intel/fs: Implement representation of SWSB cross-pipeline synchronization annotations.
2432- intel/fs: Add helper functions inferring sync and exec pipeline of an instruction.
2433- intel/fs: Represent SWSB in-order dependency addresses as vectors.
2434- intel/fs: Calculate SWSB cross-pipeline synchronization information.
2435- intel/fs: Use CHV/BXT implementation of 64-bit MOV_INDIRECT on XeHP+.
2436- intel/fs: Fix repclear assembly for XeHP+ regioning restrictions.
2437- intel/fs: Handle regioning restrictions of split FP/DP pipelines.
2438- intel/eu: Teach EU validator about FP/DP pipeline regioning restrictions.
2439- intel/compiler: Lower integer division on XeHP.
2440- intel/fs: Introduce lowering pass to implement derivatives in terms of quad swizzles.
2441- intel/fs: Add more efficient fragment coordinate calculation.
2442- iris/gen12: Work around push constant corruption on context switch.
2443- iris/gfx12: Invalidate ISP at the end of every batch.
2444- intel/fs/xehp: Assert that the compiler is sending all 3 coords for cubemaps.
2445- intel/fs: Track single accumulator in scoreboard lowering pass.
2446- intel/fs: Implement Wa_22012725308 for cross-pipe accumulator data hazard.
2447- intel/fs: Add SWSB dependency annotations for cross-pipeline WaR data hazards on XeHP+.
2448- intel/fs: Teach IR about EOT instruction writing the accumulator implicitly on TGL+.
2449- intel/fs: Fix synchronization of accumulator-clearing W/A move on TGL+.
2450- intel/fs: Implement Wa_14013745556 on TGL+.
2451
2452Georg Lehmann (11):
2453
2454- radv: Fix compatible image handle type for dmabufs.
2455- v3dv: use VKAPI_ATTR and VKAPI_CALL.
2456- zink: Add a missing VKAPI_ATTR.
2457- vulkan: Update the XML and headers to 1.2.180
2458- radv: Implement VK_EXT_global_priority_query.
2459- ac: Check me_fw_feature for 32bit predication on gfx10.3
2460- ac: Enable 32bit predication on gfx10.
2461- ac: Enable 32bit predication on gfx9 with fw feature version 52.
2462- lavapipe: Use common default allocator.
2463- lavapipe: Add a missing VKAPI_ATTR.
2464- vulkan/wsi/wayland: Add support for more SRGB formats.
2465
2466Gert Wollny (40):
2467
2468- Revert "r600: don't set an index_bias for indirect draw calls"
2469- Revert "r600: Don't advertise support for scaled int16 vertex formats"
2470- r600: don't set an index_bias for indirect draw calls
2471- virgl: use pipe_draw_info::restart_index only when primitive_restart is enabled
2472- r600: update pipe_draw_info::restart_index only when primitive_restart is enabled
2473- nir/opt_algebraic: optimizations for add umax/umin with zero
2474- nir: Add filter callback for lower_to_scalar to the options
2475- gallium: pass lower_to_scalar_filter to lower_to_scalar pass
2476- r600/sfn: lower to scalar with filter applied
2477- mesa: add an extension MESA_bgra
2478- compiler/nir: check whether var is an input in lower_fragcoord_wtrans
2479- nir/linker: add option to ignore the IO precisions for better varying packing
2480- r600/sfn: Ignore precision when linking
2481- r600: don't put INTERP_X and INTERP_Z into one instruction group
2482- r600/sfn: Use valid pixel mode only in fragment shaders
2483- r600/sfn: Use valid pixel mode for SSBO and Image result fetches
2484- r600/sfn: force new CF if fetch through TC would be used in same clause
2485- r600/sfn: Lower FS pos input w-transform in NIR
2486- r600/sfn: Don't check the faction when searching for the input slot
2487- r600/sfn: count only distinct literals per instruction group
2488- r600/sfn: Fix Cayman trans ops
2489- r600/sfn: Use unified index register code for samplers
2490- r600/sfn: Use unified code path for index register load
2491- r600/sfn: Fix texture gather for Cayman
2492- r600/sfn: Fix ssbo/image atomic swap for Cayman
2493- r600/sfn: Fix Cayman SSBO write with more than one value
2494- r600/sfn: Fix Geometry shader for Cayman
2495- r600/sfn: read number of images from shader info
2496- r600/sfn: Fix cube query layer number for indirect access
2497- r600/sfn: Add lowering pass to legalize image access
2498- r600/sfn: legalize image access on Cayman
2499- r600: Enable NIR debug flags also for Cayman
2500- r600/sfn: don't designates initializers, since they are c++20
2501- r600/sfn: don't read back unused image atomic result values
2502- r600/sfn: Drop method for emit_atomic_add, it is handled in generic code
2503- r600/sfn: Don't read return values of atomic ops that are not used
2504- r600/sfn: Clean up some ALU lowering and move code
2505- r600/sfn: Lower offset in TXF instructions
2506- virgl: Enable ASTC formats also for 3D textures
2507- r600/sfn: initialize all texture lower options
2508
2509Gustavo Padovan (10):
2510
2511- traces-iris: fix expectation for Intel GLK
2512- gitlab-ci: enable Intel AML-Y as experimental
2513- gitlab-ci: rule anchor for experimental devices as manual in MRs
2514- gitlab-ci: enable all 3 intel devices as manual in MR pipelines
2515- iris/ci: disable failing gimark test for now
2516- iris/ci: enable intel devices automatically in MR pipelines
2517- gitlab-ci: add python script to submit lava jobs
2518- gitlab-ci: enable testing on Intel Kaby Lake as experimental
2519- ci/lava: propely report test failure through sys.exit()
2520- ci/lava: do not save lava.yaml in the artifacts
2521
2522Hans-Kristian Arntzen (2):
2523
2524- radv: Take image alignment into account when allocating MUTABLE pool.
2525- radv: Allocate buffer list for MUTABLE descriptor types as well.
2526
2527Heinrich Fink (6):
2528
2529- softpipe: add missing sentinel to debug option array
2530- llvmpipe: unmap display target of shader image/sampler
2531- softpipe: unmap display target of shader sampler
2532- llvmpipe: do not leak map of display target in fs setup
2533- llvmpipe: do not leak display target mapped ptr in cs setup
2534- gbm/dri: Fix leaking bo memory on failure path
2535
2536Hoe Hao Cheng (15):
2537
2538- vulkan/util: generate vk_dispatch_table that combines all dispatch tables
2539- nir: define NIR_ALU_MAX_INPUTS
2540- zink: remove variable length arrays in ntv
2541- zink: introduce vk_dispatch_table
2542- zink/codegen: split commands into three groups
2543- zink/codegen: add zink_verify_*_extensions()
2544- zink: slight refactor of load_device_extensions()
2545- zink: use the dispatch tables
2546- zink/codegen: allow conditional enabling of instance extensions
2547- zink/codegen: clean the constructor of Extension up
2548- zink: do not fail when EXT_calibrated_timestamps is unavailable
2549- zink: move extension function verification to when it is used
2550- zink: zero-init structs with ISO C
2551- zink: standardize zero-init code style
2552- zink: make codegen compatible with python 3.5
2553
2554Hubert Jasudowicz (1):
2555
2556- docs/egl: Add missing backticks
2557
2558Hyunjun Ko (6):
2559
2560- turnip: prep work for timeline semaphore support
2561- turnip: Implement VK_KHR_timeline_semaphore.
2562- turnip/kgsl: Fix to build on android.
2563- turnip: add missing VKAPI_ATTR/CALL
2564- turnip: Copy command buffers to deferred submit request
2565- turnip/kgsl: new flag TU_USE_KGSL
2566
2567Iago Toral Quiroga (118):
2568
2569- v3dv: avoid redundant BO job additions for textures and samplers
2570- v3dv: avoid redundant BO job additions for UBO/SSBO
2571- v3dv: avoid redundant BO job additions for spill / shared BOs
2572- v3dv: optimize a few cases of BO job additions
2573- v3dv: use a bitfield to implement a quick check for job BO tracking
2574- v3dv: fix descriptor set limits
2575- v3dv: fix array sizes when tracking BOs during uniform setup
2576- v3dv: don't use a dedicated BO for each occlusion query
2577- v3dv: fix sRGB blending workaround
2578- v3dv: improve dirty descriptor set state tracking
2579- v3dv: dirty viewport doesn't affect fragment shaders
2580- v3dv: better tracking of dirty push constant state
2581- vulkan/wsi: give drivers the option to decide if they need to blit
2582- v3dv: implement wsi hook to decide if we can present directly on device
2583- compiler/nir: add a divergence analysis option for non-uniform workgroup id
2584- v3dv: choose a larger CSD supergroup size if possible
2585- broadcom/compiler: track if a shader has control barriers in prog_data
2586- v3dv: limit supergroup size in presence of TSY barriers
2587- broadcom/common: move CSD supergroup sizing to a common helper
2588- v3d: choose a larger CSD supergroup size if possible
2589- broadcom/compiler: add a loop unrolling pass
2590- v3dv: setup loop unrolling
2591- v3d: move NIR compiler options to GL driver
2592- broadcom/compiler: add a compiler strategy to disable loop unrolling
2593- broadcom/compiler: refactor compile strategies
2594- broadcom/compiler: specify maximum thread count in compile strategies
2595- v3d: enable NIR loop unrolling
2596- v3d: re-enable GLSL loop unrolling
2597- broadcom/compiler: change register allocation policy for accumulators
2598- broadcom/compiler: move vertex shader output handling to its own function
2599- broadcom/compiler: implement non-uniform offset on vertex outputs
2600- broadcom/compiler: make vir_VPM_WRITE_indirect handle non-uniform offsets
2601- broacom/compiler: enable PIPE_SHADER_CAP_INDIRECT_OUTPUT_ADDR
2602- broadcom/compiler: don't use nir_src_is_dynamically_uniform
2603- v3dv: don't lower indirect derefs on output variables
2604- broadcom/compiler: don't unroll due to indirect indexing of outputs
2605- v3d: disable GLSL loop unrolling again
2606- broadcom/compiler: clarify PIPE_SHADER_CAP_INDIRECT_INPUT_ADDR setting
2607- broadcom/compiler: don't emit TLB loads for components that don't exist
2608- broadcom/compiler: consider RT component size when lowering logic ops in Vulkan
2609- broadcom/ci: update fail list for v3dv
2610- v3d: take TLB blit framebuffer dimensions from smallest surface dimensions
2611- v3dv: implement VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES
2612- v3dv: fix texture_size()
2613- v3dv: allow creating uncompressed views from compressed images and vice versa
2614- v3dv: expose VK_KHR_maintenance2
2615- v3dv: define V3D_MAX_BUFFER_RANGE
2616- v3dv: implement VK_KHR_maintenance3
2617- v3dv: implement VK_KHR_bind_memory2
2618- v3dv: implement VK_KHR_get_memory_requirements2
2619- v3dv: keep track of whether an image may be backed by external memory
2620- v3dv: implement VK_KHR_dedicated_allocation
2621- v3dv: trivially handle VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR
2622- v3dv: add v3dv_GetImageSparseMemoryRequirements back
2623- v3dv: implement vkCmdDispatchBase
2624- v3dv: create a helper for image creation
2625- v3dv: implement interactions of VK_KHR_device_group with VK_KHR_swapchain
2626- v3dv: implement VK_KHR_device_group
2627- v3dv: don't keep an open file descriptor for imported fences/semaphores
2628- v3dv: implement external semaphore/fence extensions
2629- v3dv: increase number of supported SSBOs
2630- v3dv: expose KHR_relaxed_block_layout
2631- v3dv: document VK_KHR_relaxed_block_layout as implemented
2632- v3dv: expose VK_KHR_storage_buffer_storage_class
2633- v3dv: refactor descriptor updates
2634- v3dv: implement VK_KHR_descriptor_update_template
2635- v3dv: fix incorrect render area setup
2636- v3dv: expose KHR_variable_pointers
2637- v3dv: don't lower vulkan resource index result to scalar
2638- v3dv: implement VK_KHR_get_display_properties2
2639- v3dv: handle Vulkan 1.1 feature and property queries
2640- v3dv: don't support VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT
2641- Revert "v3dv: allow creating uncompressed views from compressed images and vice versa"
2642- v3dv: expose VK_KHR_shader_non_semantic_info
2643- v3dv: implement VK_EXT_index_type_uint8
2644- v3dv: implement vkCmdBlitImage2KHR
2645- v3dv: implement vkCmdCopyBuffer2KHR
2646- v3dv: implement vkCmdCopyBufferToImage2KHR and vkCmdCopyImageToBuffer2KHR
2647- v3dv: implement vkCmdCopyImage2KHR
2648- v3dv: implement vkCmdResolveImage2KHR
2649- v3dv: expose VK_KHR_copy_commands2
2650- v3dv: remove const qualifier for resource pointer in view objects
2651- broadcom/compiler: implement nir_intrinsic_load_subgroup_id correctly
2652- broadcom/compiler: lower nir_intrinsic_load_num_subgroups
2653- broadcom/compiler: add FLAFIRST and FLNAFIRST opcodes
2654- broadcom/compiler: implement more subgroup intrinsics
2655- broadcom/compiler: add a ntq_emit_cond_to_bool helper
2656- broadcom/compiler: add a set_a_flags_for_subgroup helper
2657- broadcom/compiler: track if a compute shader uses subgroup functionality
2658- broadcom/util: don't use compute supergroup packing with subgroups
2659- v3dv: expose correct subgroup size
2660- v3dv: expose support for basic subgroup operations
2661- broadcom/compiler: use nir_sort_variables_with_modes
2662- v3dv: account for dst offset of copy query results operations
2663- v3dv: always free pipeline stages after compiling
2664- v3dv: extend broadcom stages to include geometry
2665- v3dv: define a generic helper to create binning pipeline stages
2666- v3dv: add a few more broadcom shader stage helpers
2667- broadcom/compiler: track if geometry shaders write gl_PointSize
2668- v3dv: add support for geometry shaders to pipelines
2669- broadcom/compiler: create a helper for computing VPM config
2670- v3dv: emit state packets for geometry shaders
2671- v3dv: handle QUNIFORM_FB_LAYERS
2672- v3dv: fix copy buffer to image TFU path for 3D images
2673- broadcom/compiler: handle compact input arrays for geometry shaders
2674- broadcom/compiler: don't ignore constant offset on per-vertex input loads
2675- v3dv: implement layered attachment clears
2676- v3dv: remove fallback path for vkCmdClearAttachments
2677- v3dv: remove deferred vkCmdClearAtachments path
2678- broadcom/ci: update expected fails for v3dv after enabling geometry shaders
2679- v3dv: expose geometry shaders
2680- v3dv: fix push constant range for texel buffer copy pipelines
2681- v3dv: implement layered texel buffer copies using a geometry shader
2682- v3dv: allow batching texel buffer copies for 3D images
2683- v3dv: use defines for push constant offsets used by texel buffer copy shaders
2684- v3d: better scissor tracking
2685- broadcom/compiler: implement gl_PrimitiveID in FS without a GS
2686- v3dv: remove more dead clearing code
2687
2688Ian Romanick (49):
2689
2690- tgsi_exec: Fix NaN behavior of saturate
2691- tgsi_exec: Fix NaN behavior of min and max
2692- ci: Uprev piglit to b3a9fa345 ("framework/replay: Quote resource names before signing")
2693- tgsi_exec: Use C99 functions for min and max instead of open coding
2694- gallivm: Fix NaN behavior of min and max
2695- gallivm: Use range analysis to generate better fmin and fmax code
2696- gallivm: Use GALLIVM_NAN_RETURN_OTHER_SECOND_NONNAN for norm clamping
2697- gallivm: Remove unused GALLIVM_NAN_RETURN_NAN
2698- nir/algebraic: Remove some optimizations of comparisons with fsat
2699- nir/algebraic: Tautology replacements require sources be numbers
2700- nir/algebraic: Invert comparisons less often
2701- nir/algebraic: Equality comparison inversions require sources be numbers
2702- nir/algebraic: Mark some more comparison reductions exact
2703- nir/algebraic: Mark some more logic-joined comparison reductions as exact
2704- nir/algebraic: Rearrange some logic-joined comparisons and reduce
2705- nir/algebraic: Add algebraic opt for float comparisons with identical operands.
2706- util/format: Delete trailing whitespace
2707- dri: Fix typo before __DRI_IMAGE_COMPONENTS defines
2708- egl/dri2: Rely on drm-uapi for DRM_FORMAT defines
2709- mesa/st: Always call st_nir_lower_tex_src_plane if samplers were lowered
2710- nir/lower_tex: Add support for lowering Y41x formats
2711- util/format: Add Y41x formats
2712- egl/dri2: Add Y41x formats
2713- gallium/dri: Add Y41x formats
2714- util/format: Add Y21x formats
2715- egl/dri2: Add Y21x formats
2716- gallium/dri: Add Y21x formats
2717- intel/isl: Add mappings for PIPE_FORMAT_R8G8_R8B8_UNORM and PIPE_FORMAT_G8R8_B8R8_UNORM
2718- mesa: Add R8G8_R8B8 and G8R8_B8R8 formats
2719- nir/lower_tex: Add support for lowering YUYV formats
2720- gallium/dri: Allow use of R8G8_R8B8 for YUYV and G8R8_B8R8 for UYVY
2721- iris: Return correct enum names from fmt_swizzle
2722- iris: Silence warnings about implicit enum type conversions
2723- mesa/st: Don't assert !unify_interfaces in the passthrough edge flags case
2724- radeonsi: Use util_cpu_caps to detect number of CPUs
2725- util: Zero out all of mask in util_set_thread_affinity
2726- util: Change order of PIPE_OS_UNIX code in util_cpu_detect_once
2727- util: Trivial cleanup in the BSD code of util_cpu_detect_once
2728- util: Fix setting nr_cpus on some BSD variants
2729- util: Set util_cpu_caps.num_cpu_mask_bits based on total CPUs in the system
2730- util: Use maximum number of CPUs for determining cache topology
2731- util: Consider CPU affinity when detecting number of CPUs
2732- v3d: ci: Add KHR-GLES31.core.shader_image_load_store.basic-glsl-earlyFragTests to flakes
2733- intel/compiler: Add the ability to defer IP updates in backend_instruction::remove
2734- intel/compiler: Add cfg_t::adjust_block_ips() method
2735- intel/compiler: Update block IPs once in dead_code_eliminate
2736- intel/compiler: Update block IPs once in register_coalesce
2737- intel/compiler: Update block IPs once in opt_cmod_propagation
2738- nir/gcm: Clear out pass_flags before starting
2739
2740Icecream95 (38):
2741
2742- panfrost: Assert staging resource allocation was successful
2743- panfrost: Unset shared/scanout binding flags for staging resources
2744- pan/bi: Skip nir_opt_move/sink for blend shaders
2745- panfrost: Fix shader texture count
2746- pan/decode: Allow frame shader DCDs to be in another BO than the FBD
2747- pan/decode: Print errors when closing dump file
2748- pan/mdg: Fix calculation of available work registers
2749- panfrost: Remove incorrect comment
2750- panfrost: Fix viewport scissor for preload draws
2751- panfrost: Split panfrost_batch_submit to prevent stack overflows
2752- pan/bi: Add "lane_dest" modifier
2753- pan/bi: Replace lane0 modifier with lane_dest for load instructions
2754- panfrost: Make pan_select_crc_rt a non-static function
2755- panfrost: Always write reloaded tiles when making CRC data valid
2756- pan/bi: Add two tuples to a clause when needed with NOSCHED
2757- panfrost: Skip blit shader labelling if the buffer has no space
2758- panfrost: Fix polygon list size computations
2759- pan/mdg: Try scheduling load/store ops in pairs
2760- pan/decode: Flush the dump stream after decoding
2761- panfrost: Call abort() when aborting on fault
2762- panfrost: Use first_tiler to check if tiling is needed
2763- pan/mdg: Add a bundle ID to instructions
2764- pan/mdg: Reorder some code in mir_spill_register
2765- pan/mdg: Fill from TLS before spilling non-SSA nodes
2766- pan/mdg: Fix reading a spilt register in the bundle it's written
2767- pan/mdg: Add 16 bytes of padding to the end of shaders
2768- panfrost: Don't set dirty_mask for constant buffers
2769- pan/bi: Create a mask of UBOs that need to be uploaded
2770- pan/mdg: Create a mask of UBOs that need to be uploaded
2771- panfrost: Only upload UBOs when needed
2772- panfrost: Set bound dimensions to framebuffer size
2773- Revert "panfrost: Fix crc_valid condition"
2774- panfrost: Always use a fragment shader when alpha test is enabled
2775- panfrost: Fix GPU ID for t76x in get_perf_config
2776- panfrost: Fix full_threads calculation on v6
2777- pan/bi: Create a nop clause when the shader starts with ATEST
2778- panfrost: Initialise the blend equation in create_blend_state
2779- pan/mdg: Analyze helper termination after scheduling
2780
2781Ilia Mirkin (29):
2782
2783- nv50/ir: offset accesses to shared memory
2784- nv50/ir: refine limitation on load/store loading offsets, include atomics
2785- nv50/ir: "zero" register does not work with g[] memory
2786- nv50/ir: mark ATOM as having 3 arguments
2787- nv50/ir: wipe any info about memory when seeing a locking op
2788- nv50/ir: optimize shift of 0 bits
2789- nv50: pass surface/buffer parameters to shader via aux buffer
2790- nv50/ir: add surface op lowering
2791- nv50/ir: add lowering for shared atomics
2792- nv50: add compute invocations counter
2793- nv50: add remapping of buffers/images into unified space
2794- nv50: add support for doing membars
2795- nv50: add indirect compute support
2796- intel: fix MI builder for pre-gen7
2797- nv50: fix streamout queries
2798- nvc0: fix 3d images
2799- vdpau: allow state tracker to report a lower number of macroblocks
2800- nouveau: improve video limit reporting
2801- st/mesa: avoid enabling image/buffer/compute extensions for weak hardware
2802- mesa: relax ES 3.1 compute shader requirements
2803- st/mesa: properly encode OES_geometry_shader requirement
2804- mesa/get: allow image/buffer/atomic variables to be fetched in es3.1
2805- st/mesa: allow hardware to claim ES 3.1 without hw indirect draws
2806- nv50: expose images/buffers/compute
2807- nv50: expose GL ES 3.1 for nva3+ hardware
2808- mesa: always expose NV_image_formats and OES_shader_image_atomic
2809- mesa: also flush after compute dispatch when debug flag enabled
2810- nv50: use the no-mipmap texture type for 2d ms views
2811- st/mesa: always report the max samples as supported
2812
2813Ishi Tatsuyuki (1):
2814
2815- radv: ignore redundant variable descriptor counts (v2)
2816
2817Italo Nicola (28):
2818
2819- pan/mdg: fix midgard writemask encoding for stores
2820- util: add util_sign_extend
2821- pan/mdg: clean up redundant/unused variables in disassemble.c
2822- pan/mdg: rename dest_override to shrink_mode
2823- pan/mdg: improve outmod printing
2824- pan/mdg: refactor mir_pack_swizzle
2825- pan/mdg: add proper expand_mode enum
2826- pan/mdg: encode/decode expand_mode properly
2827- pan/mdg: add midgard_src_expand_mode validation
2828- pan/mdg: improve input modifier printing
2829- pan/mdg: improve swizzle decoding
2830- pan/mdg: fix/change ALU opcodes descriptions and add some missing ops
2831- pan/mdg: stop querying datatype by reading opcode name
2832- pan/mdg: print input data type for ALU opcodes
2833- pan/mdg: stop using size disambiguation suffixes
2834- pan/mdg: fix midgard.h indentation
2835- pan/mdg: improve mask decoding
2836- pan/mdg: remove register prefixes
2837- pan/mdg: print special alu arg outmods
2838- pan/mdg: misc cleanups
2839- pan/mdg: add helpers for load/store special read regs
2840- pan/mdg: improve ldst opcode names and add missing ops
2841- pan/mdg: print names of non-work registers
2842- pan/mdg: properly encode/decode ldst instructions
2843- pan/mdg: improve tex opcode decoding and add missing ops
2844- panfrost/ci: Improve coverage for T860
2845- virgl: implement EXT_multisampled_render_to_texture
2846- panfrost: fix GL_EXT_multisampled_render_to_texture regression
2847
2848Iván Briano (2):
2849
2850- intel/nir: Fix txs for null surfaces
2851- anv: fix feature/property/sizes reported for fragment shading rate
2852
2853James Jones (18):
2854
2855- gbm: Remove stat and refcount fields from gbm_device
2856- gbm: Inline load_backend function content
2857- gbm: Create device directly in find_backend
2858- gbm: Consolidate env var and default backend loops
2859- gbm: Give getenv backend override its own function
2860- gbm: Give gbm_device a reference to its backend
2861- gbm: Add gbm_core struct to export code to backends
2862- gbm: Move majority of gbmint.h to gbm_backend_abi.h
2863- gbm: Version the GBM backend interface
2864- gbm: Add backend ABI-check test
2865- gbm: Rename backend description list to builtin_backends
2866- loader: Factor out driver library loading code
2867- meson: Add a GBM backends search path build option
2868- gbm: Rename the DRI backend from gbm_dri.so to dri
2869- gbm: Put common device creation in a helper function
2870- gbm: Support dynamically loading named backends
2871- gbm: Load backend based on DRM device driver name
2872- loader: Handle failure to load DRI driver library
2873
2874James Park (14):
2875
2876- meson: Fix winflexbison warnings
2877- ac/surface: Move drm_fourcc.h to common header
2878- radv: Use ac_drm_fourcc.h
2879- meson: Add wrap for libelf on Windows
2880- meson: Disable libdrm for RADV on Windows
2881- meson: Disable MSVC warning 5105
2882- amd: Fix warnings around variable sizes
2883- radv: Add _WIN32 guard in radv_check_gpu_hangs
2884- radv: Fix unused label warning on Windows
2885- radv: Add <io.h> on WIndows for missing close()
2886- draw/clip: Use NAN to make MSVC happy
2887- llvmpipe: Remove stray ## operator for MSVC
2888- ci: Update Windows image to build RADV
2889- vulkan: Support 32-bit "weak" symbols on MSVC
2890
2891Jan Beich (1):
2892
2893- anv: adjust headers for non-GNU after e9e1e0362b6c
2894
2895Faith Ekstrand (139):
2896
2897- intel/compiler: Don't insert barriers for NULL sources
2898- anv: Use the same re-order mode for streamout as for GS
2899- vulkan: Update the XML and headers to 1.2.177
2900- anv: Implement VK_EXT_provoking_vertex
2901- gallium: Add a transcode_astc driconf option
2902- intel/isl: There are seven aux states
2903- intel/isl: Fix isl_color_value_unpack to match the prototype
2904- intel/eu: SVB writes only happen on Gen6
2905- intel/fs: Stop using brw_dp_read/write_desc in Gen7+ only code
2906- intel/eu: Set message subtype properly for SIMD8 FB fetch
2907- intel/fs: Don't use pixel_z for Gen4-5 source_depth_to_render_target
2908- intel/nir: Set lower txs with non-zero LOD
2909- nir/builder: Move clamp helpers to nir_builder.h
2910- anv: Check offset instead of alloc_size for freeing surface states
2911- anv: Allow storage on all formats that support typed writes
2912- anv: Plumb the shader into push constant helpers
2913- anv: Support pushing shader constants
2914- anv: Push at most 32 regs for vec4 shaders
2915- intel/vec4: Don't spill fp64 registers more than once
2916- intel/vec4: Add some asserts to move_push_to_pull
2917- intel/vec4: Update nr_params in pack_uniform_registers
2918- intel/vec4: Set up push ranges before we emit any code
2919- intel/vec4: Add support for masking pushed data
2920- intel/vec4: Add support for UBO pushing
2921- nir: Add a nir_instr_move helper
2922- nir/gather_info: Expose a nir_intrinsic_writes_external_memory helper
2923- nir: Add a discard optimization pass
2924- intel/fs: Handle non-perspective-correct interpolation on gen4-5
2925- intel/nir,i965: Move HW generation check for UBO pushing to i965
2926- intel/vec4: Also use MOV_FOR_SCRATCH for swizzle resolves
2927- intel/isl: Fix isl_format_is_valid
2928- intel/fs/ra: Fix payload node setup for SIMD16 on Gen4-5
2929- ttn: Stop manually managing system_values_read
2930- anv: Require softpin on Gen8+
2931- anv: Make use_softpin compile-time in genX code
2932- anv: Handle OOM in the pinned path in anv_reloc_list_add
2933- anv: Add a helper to add a BO to the batch list without a reloc
2934- anv: Make anv_batch_emit_reloc inline and optimize SKL+
2935- anv: Fast-path surface relocs when we have softpin
2936- anv: Optimize anv_address_physical when ANV_ALWAYS_SOFTPIN
2937- anv/blorp: Optimize addresses/relocations when ANV_ALWAYS_SOFTPIN
2938- iris: Use isl_surf_get_image_surf instead of hand-rolling it
2939- iris: Move target_to_isl_surf_dim to iris_resource.c
2940- intel/isl: Add a isl_surf_get_image_offset_B_tile_el helper
2941- intel/blorp: Use isl_surf_get_image_offset_B_tile_el in ccs_ambiguate
2942- intel/isl: Make the offset helpers four dimensional
2943- intel/isl: Make tile logical extents four dimensional
2944- intel/isl: Use a 4D physical total extent for size calculations
2945- i965: Use nir_lower_passthrough_edgeflags
2946- anv: Agressively no-op Flush/InvalidateMappedMemoryRanges
2947- docs: Begin documenting ISL
2948- isl: Document more members of isl_surf
2949- docs/isl: Document ISL's units
2950- docs/isl: Add detailed documentation about isl formats
2951- docs/isl: Add detailed documentation about tiling on Intel GPUs
2952- docs/isl: Add detailed documentation about CCS compression
2953- util: Move the 4x4 matrix inverse function to u_math
2954- crocus: Drop extra_aux support
2955- nir,amd: Suffix nir_op_cube_face_coord/index with _amd
2956- nir,panfrost: Suffix fsat_signed and fclamp_pos with _mali
2957- nir,vc4: Suffix a bunch of unorm 4x8 opcodes _vc4
2958- vulkan: Update the XML and headers to 1.2.182
2959- nir: Require vectorized ALU ops to be all-or-nothing
2960- nir,docs: Add docs for NIR ALU instructions
2961- nir: Document all the ALU opcodes
2962- docs,isl: Document Sandy Bridge HiZ/stencil
2963- editorconfig: Use 3-space tabs for .rst
2964- docs/nir: Use 3-space tabs
2965- docs/isl: Consistently use 3-space tabs
2966- spirv: Create acceleration structure and shader record variables
2967- anv: Add minimal boilerplate for VK_KHR_acceleration_structure
2968- anv: Add stub support for acceleration structures
2969- anv: Add support for binding acceleration structures
2970- anv: Add minimal boilerplate for VK_KHR_ray_tracing_pipeline
2971- anv: Get ready for more pipeline stages
2972- anv: Add a ray-tracing pipeline object
2973- anv: Add support for binding ray-tracing pipelines
2974- anv,iris: Move the SHADER_RELOC enums to brw_compiler.h
2975- intel/compiler: Generalize shader relocations a bit
2976- intel/compiler: Add a U32 reloc type
2977- intel/fs: Add support for compiling bindless shaders with resume shaders
2978- intel/rt: Use reloc constants for the resume SBT
2979- anv: Disallow UBO pushing for bindless shaders
2980- nir/apply_pipeline_layout: Handle bindless shaders
2981- anv: Support fetching descriptor addresses from push constants
2982- anv: Compile ray-tracing shaders
2983- anv: Compile trivial return and trampoline shaders
2984- intel/fs: Don't pull CS push constants if uses_inline_data
2985- anv: Create and return ray-tracing pipeline SBT handles
2986- anv: Compute scratch sizes for ray-tracing pipelines and shader groups
2987- anv: Add support for vkCmdSetRayTracingPipelineStackSizeKHR
2988- anv: Allow _anv_combine_address with a NULL batch
2989- anv: Make anv_address::offset 64-bit
2990- anv: Implement vkCmdTraceRays and vkCmdTraceRaysIndirect
2991- isl: Assert some iris invariants in isl_surf_get_ccs_surf
2992- isl: Take a hiz_or_mcs_surf in isl_surf_supports_ccs
2993- isl,iris: Move the extra_aux_surf logic into iris
2994- isl,docs: Add a chapter on AUX state tracking
2995- docs/isl: Improve the bit[6] swizzling section of the tiling chapter
2996- include/drm-uapi: bump headers
2997- anv: Claim to be a discrete GPU if has_lmem
2998- util: Add an implementation of qsort_r for non-GNU platforms
2999- nir: Add a function for sorting variables
3000- intel/genxml: Add SURFTYPE_SCRATCH on GFX version 12.5
3001- intel/isl: Add support for scratch buffers
3002- intel/fs: Implement spilling on XeHP
3003- intel/fs: Implement load/store_scratch on XeHP
3004- intel/genxml: Add new ScratchSpaceBuffer fields on GFX version 12.5
3005- iris: Add a MEMZONE_BINDLESS and uploader
3006- iris: Add support for scratch on XeHP
3007- anv: Add support for scratch on XeHP
3008- intel/genxml: Remove old scratch fields on GFX version 12.5
3009- iris/bufmgr: Stop changing mapping modes on buffers
3010- intel/devinfo: Add a has_lsc bit
3011- intel/compiler: Add LSC to messages brw_ir_performance
3012- intel/fs: Lower uniform pull constant load message to LSC dataport
3013- docs/isl/tiling: Fix swizzle pattern for X-tiling
3014- intel/isl: Pull the uncompressed surface view code from anv
3015- intel/blorp: Adjust the compressed copy rectangle before convert_to_single_slice
3016- intel/blorp: Use isl_surf_get_uncompressed_surf
3017- intel/isl: Add more cases to isl_surf_get_uncompressed_surf
3018- iris: Don't leak the surface if uncompressed re-interp fails
3019- iris: Use isl_surf_get_uncompressed_surf
3020- nir: Drop nir_ssa_def::name and nir_register::name
3021- android: Drop the Android.mk build system
3022- android: Restore android/Android.mk
3023- nir/lower_subgroups: Pad ballot values before bitcasting
3024- docs: Add docs for running a local Mesa build
3025- mailmap: Update for Emma's new e-mail address
3026- Convert a few files to UTF-8
3027- mailmap: Add two more lines for Alyssa Rosenzweig
3028- glsl: Delete lower_texture_projection
3029- anv/allocator: Use list->u64 in free_list_push
3030- iris: Re-emit MEDIA_VFE_STATE for variable group size shaders
3031- anv: Handle errors properly in anv_i915_query
3032- intel: Pull anv_i915_query into common code
3033- anv: Use intel_i915_query_alloc for memory regions
3034- iris: Use intel_i915_query for meminfo
3035- nir/lower_tex: Rework invalid implicit LOD lowering
3036
3037Jeremy Huddleston (2):
3038
3039- libgl-xlib: Set darwin-versions
3040- libgl-xlib: Add missing dep_x11 dependency
3041
3042Jeremy Newton (1):
3043
3044- Update libva requirement
3045
3046Jesse Natalie (44):
3047
3048- microsoft/spirv_to_dxil: Lower samplers from deref to index
3049- microsoft/spirv_to_dxil: Lower loads/stores to DXIL
3050- microsoft/compiler: Support raw SRVs/UAVs through dxil_module_get_res_type
3051- microsoft/compiler: Support arrays of UBOs
3052- microsoft/compiler: Emit CBVs via variables for Vulkan
3053- microsoft/compiler: Emit SSBO variables
3054- microsoft/compiler: Split Vulkan resource_index / descriptor processing
3055- microsoft/compiler: Better support UBO/SSBO references to descriptors
3056- microsoft/compiler: Store nir_shader in the ntd_context
3057- microsoft/compiler: Support raw SRVs in addition to typed SRVs
3058- microsoft/compiler: Propagate access when lowering SSBO loads
3059- microsoft/clc: If local size isn't specified either in the shader or at runtime, set it to (1,1,1)
3060- gallium: Define PIPE_ARCH_AARCH64 for MSVC arm64 builds
3061- nir: Fix MSVC warning C4334 (32bit shift cast to 64bit)
3062- d3d12: Fix MSVC warning C4334 (32bit shift cast to 64bit)
3063- microsoft/clc: Fix MSVC unreferenced variable warnings
3064- microsoft/clc: Fix undeclared function warning
3065- microsoft/compiler: Fix MSVC warning C4334 (32bit shift cast to 64bit)
3066- shader_enums: Fix MSVC warning C4334 (32bit shift cast to 64bit)
3067- gallium/aux: Fix MSVC warning C4334 (32bit shift cast to 64bit)
3068- llvmpipe: Fix MSVC warning C4334 (32bit shift cast to 64bit)
3069- xmlconfig: Fix MSVC warning C4334 (32bit shift cast to 64bit)
3070- CI: Windows: Bump warning level to W3 (except for zlib)
3071- microsoft/compiler: Remove hardcoded limits on numbers of resource arrays
3072- microsoft/compiler: Remove assert-only resource size or usage tracking
3073- microsoft/compiler: For Vulkan environment, don't create resource handles upfront
3074- vtn: Propagate access data that's present on all struct members to the struct itself
3075- vtn: Propagate access data from UBO/SSBO/push constant types to variables of that type, not just their pointers
3076- nir: Rename nir_lower_cl_images_to_tex, replace 'cl' with 'readonly'
3077- nir_lower_readonly_images_to_tex: Support non-CL semantics
3078- nir_lower_readonly_images_to_tex: Use nir_shader_lower_instructions
3079- microsoft/compiler: Treat read-only SSBOs as SRVs
3080- microsoft/spirv_to_dxil: Treat read-only storage images as SRVs
3081- d3d12, microsoft/compiler: Use SRV/sampler variable binding data
3082- microsoft/compiler: Rewrite sampler splitting pass to be smarter and handle derefs
3083- microsoft/compiler: Fix function signature for bufferStore to support overloads
3084- microsoft/compiler: Map descriptor set -> binding space
3085- microsoft/compiler: Handle unbounded arrays
3086- llvmpipe: Fix optimization loop to actually loop
3087- nir: Add relaxed 24bit opcodes
3088- vtn: Use relaxed 24bit opcodes for CL 24bit math
3089- microsoft/compiler: Change behavior for emitting inexpressible barriers
3090- nir_lower_readonly_images: Clear variable data when changing the type
3091- mesa/main: Check for fbo attachments when importing EGL images to textures
3092
3093John Bates (1):
3094
3095- add execmem build option
3096
3097Jonathan Marek (4):
3098
3099- freedreno/registers: define REG_DSI_CPHY_MODE_CTRL
3100- tu: remove workaround for conditional rendering + hw binning
3101- freedreno/a6xx: larger gmem_page_align from tile align instead of gpu id
3102- freedreno/common: unhardcode CCU color cache offset
3103
3104Jordan Justen (20):
3105
3106- Revert "intel/compiler: Silence unused parameter warning in update_inst_scoreboard"
3107- intel/eu: Allow 64-bit registers on XeHP.
3108- intel/fs: Disable 3-src immediates on XeHP.
3109- intel/fs: End computer shader with message gateway on XeHP.
3110- intel/compiler: Lower txd for 3D samplers on XeHP.
3111- intel/compiler: Fix INTEL_DEBUG=hex
3112- commit_in_branch_test.py: Rename branch master to main
3113- bin/pick: Rename master branch to main
3114- .gitlab-ci.yml: Use main branch for gitlab ci
3115- issue_templates/Bug Report: Rename master branch to main
3116- docs/releasing.rst: Rename master branch to main
3117- docs: Rename master branch to main
3118- mesa: NOTE! Default branch is now main
3119- intel/isl: Add Wa_22011186057 to disable CCS on ADL GT2 A0
3120- intel/dev: Add device info for ADL GT2
3121- intel: Add 2 ADL-S pci-ids
3122- intel/gen125.xml: Drop GPGPU_WALKER
3123- intel/devinfo: Add has_local_mem
3124- iris/bufmgr: Align vma addresses to 64K for local memory
3125- intel/dev: Set has_local_mem for DG1
3126
3127Jose Maria Casanova Crespo (5):
3128
3129- v3d: YUV formats at is_dmabuf_modifier_supported are external_only
3130- v3d: YUV formats at query_dmabuf_modifiers are external_only
3131- v3d: DRM_FORMAT_MOD_BROADCOM_SAND128 only available for NV12 format.
3132- ci/v3d: Update piglit expectations.
3133- v3d/driconf: Expose non-MSAA texture limits for mutter and gnome-shell
3134
3135Joshua Ashton (5):
3136
3137- radv: Handle unnormalized samplers in YCbCr lowering
3138- venus: Fix zero-initialized fd causing apps to hang/crash
3139- driconf: Add more workarounds for Teardown
3140- llvmpipe: Handle NULL views in llvmpipe_cleanup_stage_sampling
3141- lavapipe: Use common Vulkan format helpers
3142
3143Joshua Watt (1):
3144
3145- v3d, vc4: Fix dmabuf import for non-scanout buffers
3146
3147José Fonseca (8):
3148
3149- lavapipe: Fix lvp_execute_cmds' pipe_stream_output_target leak.
3150- lavapipe: Fix lvp_pipeline_compile's nir_xfb_info leak.
3151- wgl: Remove opengl32.mingw.def.
3152- draw: Allocate extra padding for extra shader outputs.
3153- draw: Plug leak when combining tessellation with primitive assembly.
3154- d3d10umd,d3d10sw: Initial import.
3155- d3d10sw: Add a sanity test.
3156- d3d10umd: Avoid duplication in CreateDevice.
3157
3158Juan A. Suarez Romero (42):
3159
3160- v3dv: avoid dereferencing null value
3161- ci: support KHR-GLES testing
3162- ci/v3d: add KHR-GLES test jobs
3163- ci/llvmpipe: run KHR-GLES2.* tests
3164- ci/softpipe: run KHR-GLESxx tests
3165- iris: hook up memory object creation from handle
3166- iris: hook up resource creation from memory object
3167- iris: enable GL_EXT_memory_object feature
3168- ci/broadcom: update expected results
3169- ci/vc4: add KHR-GLES2.* job test
3170- ci/broadcom: add EGL testing jobs
3171- v3dv: check returned values
3172- ci/v3d: execute all piglit tests
3173- v3dv/pipeline_cache: bail out in case of error
3174- ci/v3d: fix typo in job name
3175- ci/v3dv: update flakes
3176- ci/baremetal: propagate ASAN_OPTIONS to devices
3177- ci/broadcom: update expected results
3178- v3d: rename header include guards
3179- v3d: rename VC5 enums and definitions
3180- broadcom/qpu: rename from VC5 to V3D
3181- broadcom/simulator: change references to VC5
3182- v3dv: rename VC5 to V3D
3183- v3dv: check dest bitsize in color blit
3184- util/hash_table: do not leak u64 struct key
3185- ci/broadcom: update expected results
3186- v3d: fix resource leak in error path
3187- st/mesa: fix pipe resource leak
3188- broadcom/compiler: fix dynamic-stack-buffer-overflow error
3189- ci: Update VK-GL-CTS to 1.2.6.1
3190- ci/broadcom: update expected results
3191- vc4: initialize array
3192- ci/v3dv: update expected results
3193- ci/broadcom: unset manual jobs
3194- ci/v3dv: test v3dv in arm64 environment
3195- broadcom/ci: Report flakes on IRC
3196- ci/vc4: update piglit failures
3197- ci: update VK-GL-CTS to 1.2.6.2
3198- broadcom/compiler: emit TMU flush before a jump
3199- v3dv: assert job->cmd_buffer is valid
3200- broadcom: remove v3dv3 from neon library
3201- gallium/hud: initialize query
3202
3203Kai-Heng Feng (1):
3204
3205- iris: Avoid abort() if kernel can't allocate memory
3206
3207Karol Herbst (18):
3208
3209- clover/llvm: handle Fixed vs Scalable vectors explicitly starting with llvm-11
3210- util/format: fix value declarations for big endian
3211- nv50/query: fix stringop-overflow gcc warning
3212- nvc0: fix implicit-fallthrough gcc warning
3213- clover/memory: fix data race in buffer subclasses
3214- nouveau: fix race in nouveau_screen_get_name
3215- nouveau/mm: pass mm_bucket to mm_slab_new
3216- nouveau/mm: remove unused nouveau_mm_allocation.next field
3217- nv50/ir: when constant folding shl(mul, a) we need to copy muls type
3218- nv50/ir: don't optimize shl(mul_hi, a) to mul_hi
3219- nv50/ir/ra: fixes upcoming barrier file
3220- nv50/ir: add barrier and thread_state files
3221- gv100/ir: add support for barrier thread state files for OP_CVT
3222- gm107/ir: emit barrier sources for quadon/pop
3223- gv100/ir: fix quadop/pop lowering
3224- nv50/ir: fix surface lowering when values get shared accross operations
3225- nv50/ir/nir: fix smem size for GL
3226- nv30: fix emulated vertex index buffers
3227
3228Keith Packard (1):
3229
3230- vulkan/x11: Mark present complete using serial instead of MSC
3231
3232Kenneth Graunke (29):
3233
3234- iris: only flush the render cache for aux changes, not format changes
3235- isl: Work around NVIDIA and AMD display pitch requirements
3236- i965: Don't advertise Y-tiled modifiers for scanout buffers on Gfx8-
3237- iris: Don't advertise Y-tiled modifiers for scanout buffers on Gfx8
3238- iris: Replace no_gpu flag with PIPE_MAP_DIRECTLY
3239- iris: Promote to MAP_DIRECTLY when required before NULL return
3240- iris: Delete a comment suggesting we use tiled staging buffers
3241- iris: Make an iris_bo_is_external() helper and use it in a few places
3242- iris: Track imported vs. exported status separately
3243- iris: Use staging blits for reads from uncached buffers.
3244- iris: Use staging blits for transfers involving imported BOs
3245- iris: Assert on mapping a tiled buffer without MAP_RAW
3246- iris: Drop fallback GEM_MMAP_GTT if GEM_MMAP with I915_MMAP_WC fails
3247- iris: Delete GTT mapping support
3248- iris: Pick a single mmap mode (WB/WC) at BO allocation time
3249- iris: Use bo->mmap_mode in transfer map read check
3250- iris: Add a flags argument to iris_bo_alloc()
3251- iris: Add an alignment parameter to iris_bo_alloc()
3252- iris: Only use SET/GET_TILING when exporting/importing BOs
3253- iris: Add a BO_ALLOC_SMEM flag for allocating from system memory
3254- anv: Fix dynamic primitive topology for tess on Gfx7.x too
3255- iris: Stop calling I915_GEM_SET_CACHING on discrete GPUs
3256- iris: Fail BO allocation if we can't enable snooping properly.
3257- iris: Delete unused bo->cache_coherent flag
3258- vulkan/wsi: Fix prime blits to use system memory for the destination
3259- iris: Reduce SSBO alignment requirements from 64B to 4B
3260- crocus: Reduce SSBO alignment requirements from 64B to 4B.
3261- iris: Force device local memory for u_upload_mgr buffers
3262- iris: Use simple_mtx in the bufmgr.
3263
3264Leo Liu (9):
3265
3266- frontends/va: add VASurfaceAttribUsageHint attribute
3267- frontends/va: fix multi planes for external memeory type
3268- frontends/va: use pipe buffer map instead of texture map
3269- radeon/vcn/enc: use surface swizzle mode instead of linear
3270- radeonsi: add PIPE_FORMAT_P010 for HEVC Main10 profile to encode param
3271- radeonsi: separate video hw info based on HW engine individually
3272- frontends/va: use the correct entrypoint to get config attributes
3273- frontends/va: include the profile queries for encoder as well
3274- frontends/va: use the entrypoint from context instead of the hard-coded one
3275
3276Lepton Wu (3):
3277
3278- virgl: move new added field to the end.
3279- Revert "virgl: Cache depth and stencil buffers"
3280- gallium: Reset {d,r}Priv in dri_unbind_context
3281
3282Lionel Landwerlin (59):
3283
3284- anv: fix 3DSTATE_MULTISAMPLE emission on gen8+
3285- anv: disable baked in pipeline bits from dynamic emission path
3286- vulkan/util: cast enums to int64_t in switch
3287- spirv: fix uToAccelerationStructure handling
3288- spirv: fixup pointer_to/from_ssa with acceleration structures
3289- vulkan: bump headers/registry to version 1.2.175
3290- anv: drop extension check for dynamic state
3291- anv: prepare pipeline for delayed emission of color writes
3292- anv: implement VK_EXT_color_write_enable
3293- anv: reuse define for number of render target assert
3294- vulkan/wsi/display: don't report support if there is no drm fd
3295- i965/bufmgr: fix invalid assertion
3296- intel/dev: printout correct subslice/dualsubslice name
3297- intel/genxml: Add coarse pixel shading instructions
3298- intel/decoder: decode CPS_STATE
3299- intel/compiler: make sure we keep the lowest dispatch limit
3300- intel/compiler: rework message descriptors for render targets
3301- intel/compiler: use existing helpers to pull bits of descriptors
3302- intel/compiler: handle coarse pixel in render target writes descriptors
3303- intel/compiler: add support for fragment shading rate variable
3304- intel/compiler: add support for fragment coordinate with coarse pixels
3305- intel/compiler: add coarse pixel offset on Gfx12.5+
3306- intel/compiler: add restrictions related to coarse pixel shading
3307- anv: implement VK_KHR_fragment_shading_rate
3308- isl: document format fields
3309- intel/fs: use the final destination type for regioning restrictions
3310- intel/mi_builder: fix resolve call
3311- anv: fix perf query pass with command buffer batching
3312- anv: handle spirv parsing failure
3313- iris: fix assert to reflect correct limit for encoded size
3314- intel/perf: allow opening perf stream with no context filtering
3315- intel/perf: allow metric sets to be loaded with on OA reports
3316- anv: fixup physical device properties of fragment shading rate
3317- intel/fs: make sure shuffle is lowered to supported types
3318- intel/perf: update gen9/11 TestOa configs
3319- intel/perf: update Gen11 RenderBasic programming
3320- intel/perf: update Gen11 RenderBasic programming
3321- intel/perf: add EHL availability condition to HDCAndSF counters
3322- intel/perf: update Gen9/11 programming for AsyncCompute
3323- intel/perf: rename metric descriptions
3324- anv: implement VK_EXT_physical_device_drm
3325- blorp: add blorp string in shader keys
3326- anv: cache raytracing trampoline shader
3327- anv: store more RT shader data in pipeline_stage object
3328- anv: move trivial return shader to device
3329- anv: implement caching for ray tracing pipelines
3330- intel/rt: switch to common pass for shader calls lowering
3331- nir: drop the btd_resume_intel intrinsic
3332- nir: use a more fitting index for btd_stack_push_intel
3333- anv: bound checks buffer memory binding in debug builds
3334- anv: allocate bigger batches as we grow command buffers
3335- intel/perf: use the right popcount for 64bits
3336- intel/compiler: Track latency/perf of LSC fences
3337- isl: fix mapping of format->stringname
3338- loader/dri3: create linear buffer with scanout support
3339- nir/lower_shader_calls: adding missing stack offset alignment
3340- anv: fix submission batching with perf queries
3341- drm-shim: implement stat/fstat when xstat variants are not there
3342- intel/disasm: fix missing oword index decoding
3343
3344Lucas Stach (9):
3345
3346- etnaviv: fix vertex sampler setup
3347- dri: add loader_dri_create_image helper
3348- loader/dri3: convert to loader_dri_create_image
3349- loader/dri: hook up createImageWithModifiers2
3350- gallium/dri: copy image use in dup_image
3351- dri: don't call modifier interfaces when modifiers_count is 0
3352- frontend/dri: add EXPLICIT_FLUSH hint in dri2_resource_get_param
3353- etnaviv: remove double assigment of surface->texture
3354- etnaviv: flush used render buffers on context flush when neccessary
3355
3356Luis Felipe Strano Moraes (2):
3357
3358- meson: print information about layers being built as part of summary
3359- overlay_layer: add missing undef
3360
3361Maksim Sisov (2):
3362
3363- iris: export GEM handle with RDWR access rights
3364- i965: export GEM handle with RDWR access rights
3365
3366Marcin Ślusarz (28):
3367
3368- intel/tools: remove unused macros
3369- intel/batch_decoder: set foreground color of decoded instructions
3370- i965: fully populate perf_config before using it to initialize perf_context
3371- iris: fully populate perf_config before using it to initialize perf_context
3372- intel/perf: move calculation of period_exponent to perf ctx init
3373- gallium/u_threaded: implement INTEL_performance_query hooks
3374- gallium/u_threaded: offload begin/end_intel_perf_query
3375- nir: handle float atomics in nir_gather_info
3376- nir: handle float atomics in nir_lower_memory_model
3377- intel: simplify is_haswell checks, part 1
3378- intel: simplify is_haswell checks, part 2
3379- i965: simplify gfx version checks
3380- intel/isl: replace format_gen by verx10
3381- intel/disasm: decode/describe more send messages
3382- intel/disasm: remove useless space after "("
3383- iris: fix error message on I915_GEM_[GS]ET_TILING failure
3384- intel/decoder: add assert for register size
3385- anv: fix potential integer overflows
3386- intel/tools: fix left shift overflow on 32-bit
3387- intel/tools: fix int-to-pointer/pointer-to-int cast warnings on 32-bit
3388- intel/tools: fix invalid type in argument to printf format specifier
3389- intel/tools: fix potential memory leaks
3390- intel/blorp: initialize BLEND_STATE using braced initializer list
3391- intel/fs: use stack for temporary array
3392- anv: keep descriptor set's address directly in anv_descriptor_set
3393- anv: handle push descriptor sets when they are sent with push constants
3394- anv: drop unused argument of anv_descriptor_set_address
3395- intel/compiler: document register types
3396
3397Marek Olšák (190):
3398
3399- ci: don't build clover with LLVM 9 on radeonsi because it's unsupported
3400- amd: drop support for LLVM 9
3401- amd: drop support for LLVM 10
3402- amd: remove some references to older LLVM versions in comments
3403- amd/registers: fix the kernel header parser with latest headers
3404- amd/registers: clean up gfx103.json
3405- amd/registers: rename IMG_FORMAT to GFX10_FORMAT to disambiguate the meaning
3406- radeonsi: don't decompress DCC for float formats in si_compute_copy_image
3407- radeonsi: fix incorrect comments in culling code and NIR lowering
3408- radeonsi: fix automatic DCC retiling after DCC clear and DCC decompression
3409- radeonsi: fix automatic DCC retiling after compute image stores
3410- gallium/util: add easy profiling helpers using TIME_ELAPSED queries
3411- Revert "st/pbo: use cso_set_vertex_buffers_and_elements() for st_pbo_draw"
3412- Revert "ci/radeonsi: Add expected failures due to #4674 having slipped in"
3413- ac/surface: document more meta equation dependencies
3414- radeonsi: make the gfx9 DCC MSAA clear shader depend on the number of samples
3415- radeonsi: remove the separate DCC optimization for Stoney
3416- amd: addrlib update for April
3417- gallium: renumber PIPE_MAP_* enums to remove holes
3418- gallium: remove 4 bytes from pipe_transfer
3419- gallium+(u_threaded,r300,r600,radeonsi): move transfer offset into pipe_transfer
3420- util: print CPU caps in release builds too
3421- util: fix (re-enable) L3 cache pinning
3422- Revert "gallium/u_threaded: align batches and call slots to 16 bytes"
3423- gallium/u_threaded: move base_valid_buffer_range to transfer where it belongs
3424- gallium/u_threaded: handle sampler views == NULL better
3425- gallium/u_threaded: rewrite slot layout to reduce wasted space
3426- gallium/u_threaded: don't set resource pointers to NULL after driver calls
3427- gallium/u_threaded: fix 32-bit breakage due to incorrect pointer arithmetic
3428- gallium/u_threaded: pass last into and return call size from execute callbacks
3429- gallium/u_threaded: merge draws in tc_call_draw_single
3430- gallium/u_threaded: add callbacks and documentation for resource busy checking
3431- gallium/u_threaded: track whether TCS, TES, or GS have ever been used
3432- gallium/u_threaded: query shader resource limits
3433- gallium/u_threaded: add buffer lists - tracking of buffers referenced by tc
3434- gallium/u_threaded: add driver-internal flush tracking for buffer lists
3435- gallium/u_threaded: don't invalidate idle buffers
3436- gallium/u_threaded: always map idle buffers unsynchronized
3437- gallium/u_threaded: don't reference resource in pipe_transfer
3438- util: add thread-safe version of idalloc
3439- zink: don't set u_resource_vtbl
3440- gallium: remove unused u_default_transfer_unmap
3441- gallium: remove resource_get_handle from u_resource_vtbl
3442- gallium: remove transfer_flush_region from u_resource_vtbl
3443- radeonsi: stop using u_resource_vtbl::resource_destroy
3444- r300: stop using u_resource_vtbl::resource_destroy
3445- nouveau: stop using u_resource_vtbl::resource_destroy
3446- i915g: stop using u_resource_vtbl::resource_destroy
3447- virgl: stop using u_resource_vtbl::resource_destroy
3448- svga: stop using u_resource_vtbl::resource_destroy
3449- r600: stop using u_resource_vtbl::resource_destroy
3450- gallium: remove u_resource_vtbl::resource_destroy
3451- gallium: split transfer_(un)map into buffer_(un)map and texture_(un)map
3452- gallium: remove u_resource_vtbl::transfer_(un)map
3453- gallium: remove empty structure u_resource_vtbl
3454- gallium: remove structure u_resource
3455- radeonsi: simplify the NGG culling vertex count heuristic
3456- amd: add Beige Goby support
3457- amd/registers: don't generate 32-bit register fields
3458- amd/registers: regenerate json files without 32-bit register fields
3459- amd: fix incorrect addrlib comment for HTILE equations
3460- ac/gpu_info: set has_zero_index_buffer_bug for Navi12 too
3461- ac/llvm: set target features per function instead of per target machine
3462- ac/llvm: expose set_range_metadata to more users
3463- ac/llvm: allow ac_build_optimization_barrier with SGPRs, pointers, and metadata
3464- ac/llvm: set range metadata on mbcnt and deduplicate get_thread_id
3465- ac/llvm: don't draw the primitive for the dummy export workaround for Navi1x
3466- winsys/amdgpu: don't hold a mutex while accessing is_shared
3467- radeonsi: remove unused SI_IMAGE_ACCESS_AS_BUFFER
3468- radeonsi: handle PIPE_CAP_MAX_VERTEX_BUFFERS
3469- radeonsi: add a gfx10 bug workaround for NOT_EOP
3470- radeonsi: fix a coherency issue when VS memory stores are not visible in PS
3471- radeonsi: always use the L2 LRU cache policy for faster clears and copies
3472- radeonsi: don't disable L2 caching for staging textures
3473- radeonsi: don't use GS fast launch with small instances
3474- radeonsi: fix the fast launch vert/prim thread counts if they are trimmed
3475- radeonsi: remove a twice duplicated workaround for VERT_GRP_SIZE
3476- radeonsi: re-enable fast launch with indexed tri strips because it doesn't hang
3477- radeonsi: improve generated culling code by adding optimization barriers
3478- radeonsi: change si_resource::alignment to alignment_log2 for better packing
3479- radeonsi: remove 8 bytes from si_resource, turn other 4 bytes into padding
3480- radeonsi: add a gfx10 hw bug workaround with the barrier before gs_alloc_req
3481- radeonsi: add missing threaded_resource_deinit calls in fail paths
3482- radeonsi: rewrite the prefix sum computation for shader culling
3483- radeonsi: allow changing the NGG subgroup size to 256 but don't change it yet
3484- radeonsi: generate buffer_id_unique for u_threaded_context
3485- radeonsi: implement threaded context callbacks for resource busy checking
3486- radeonsi: disable DFSM on gfx9 by default because it decreases performance a lot
3487- radeonsi: remove DFSM after we discovered how bad it is
3488- gallium/u_vbuf: add a fast path to skip refcounting for uploaded user buffers
3489- mesa: move _mesa_copy_vertex_attrib/buffer functions to their only use
3490- mesa: don't call _mesa_set_draw_vao in glPushClientAttrib
3491- mesa: optimize glPush/PopClientAttrib for GL_CLIENT_VERTEX_ARRAY_BIT
3492- mesa: optimize unreferencing VBOs in glPopClientAttrib
3493- mesa: don't call FLUSH_VERTICES in glPopClientAttrib
3494- mesa: don't save/restore VAO NumUpdates and IsDynamic to fix update tracking
3495- st/mesa: execute glFlush asynchronously if no image has been imported/exported
3496- gallium/u_threaded: don't update valid_buffer_range for read-only shader buffers
3497- gallium/u_threaded: clear valid buffer range only if it's not bound for write
3498- gallium/u_threaded: use tc_drop_resource_reference in call_draw_single_drawid
3499- gallium/u_threaded: merge draws faster by merging indexbuf unreferencing
3500- radeonsi: check is_buffer once instead of 4 times in si_set_sampler_view_desc
3501- radeonsi: use the restrict keyword to set sampler view descriptors faster
3502- radeonsi: don't clear register fields in si_set_mutable_tex_desc_fields
3503- radeonsi: restructure si_set_sampler_views for faster unbinding trailing slots
3504- radeonsi: remove no-op unref in si_set_constant_buffer
3505- radeonsi: set desc[3] of all buffer descriptors at context creation
3506- radeonsi: move a few functions from si_state_draw.cpp into si_gfx_cs.c
3507- radeonsi: compile si_state_draw.cpp for each gfx generation separately
3508- radeonsi: remove the chip_class dimension from the draw_vbo array
3509- radeonsi: remove -Wstrict-overflow=0 since it doesn't seem to be needed
3510- gallium/pb: change alignment to 32 bits
3511- shader_enums: change VERT_BIT back to the 32-bit shift
3512- glthread: change when glFlush flushes asynchronously
3513- st/mesa: fix an incorrect comment in st_context_flush
3514- st/mesa: move the st_flush_bitmap_cache call into st_flush
3515- mesa: add gallium flush_flags param into ctx->Driver.Flush
3516- mesa: move _mesa_notifySwapBuffers into the x11 swrast driver
3517- mesa: execute glFlush asynchronously if no image has been imported/exported
3518- radeonsi: fix compile failures with SI_PRIM_DISCARD_DEBUG enabled
3519- radeonsi: use ac_build_bit_count instead of opencoding it
3520- radeonsi: fix incorrect counting of compute_num_verts_rejected
3521- radeonsi: fix multi draws for the prim discard CS
3522- ac/llvm: add a callback to ac_cull_triangle to generate code in inner-most block
3523- radeonsi: move the accepting code into the bbox cull branch in NGG cull code
3524- ac/surface/tests: fix RB counts
3525- ac/surface: don't set DCC_PIPE_ALIGN modifier bit for gfx10 with 1 RB
3526- radeonsi: restructure si_get_vs_vgpr_comp_cnt for readability
3527- radeonsi: merge 2 conditional blocks with same condition into 1 in culling code
3528- radeonsi: set more precise max_waves in NGG code
3529- radeonsi: remove incorrect comment about PA
3530- radeonsi: try to keep all VS input loads together for better perf
3531- radeonsi: don't compile TES and GS draw_vbo variants for the prim discard CS
3532- radeonsi: remove the Z culling option from the primitive discard CS
3533- radeonsi: drop gfx7 support from the prim discard CS to simplify code
3534- radeonsi: drop support for triangle fans from the prim discard CS
3535- radeonsi: skip buffer_atomic_add(ptr, n) when n=0 in the prim discard CS
3536- radeonsi: cleanup some primitive discard CS TODOs regarding instancing, etc.
3537- ac/llvm: don't set skip-uniform-regions to fix atomic.cmpswap
3538- mesa: unreference zombie buffers when creating buffers to lower memory usage
3539- radeonsi: document why VBO descriptors in user SGPRs are beneficial
3540- radeonsi: if shader culling culls all vertices, cull the primitive exports too
3541- radeonsi: remove incorrect comment about hangs in gfx10_ngg_gs_emit_epilogue
3542- radeonsi: don't use NGG culling on 1 RB chips
3543- ac/gpu_info: adjust the condition for use_late_alloc
3544- radeonsi: optimize set_inlinable_constants when they don't change
3545- st/mesa: don't track VS sampler views for st_draw_feedback in st_context
3546- st/mesa: don't track FS sampler views for bitmap/drawpix in st_context
3547- st/mesa: don't memset the sampler view array, don't init trailing slots to NULL
3548- st/mesa: sink _mesa_get_samplerobj into st_update_single_texture
3549- st/mesa: read Target only once in st_update_single_texture
3550- st/mesa: return sview from st_update_single_texture via return value, not param
3551- st/mesa: remove the const qualifier for a few st_sampler_view instances
3552- st/mesa: sink refcounting from st_get_sampler_views into st_sampler_view.c
3553- st/mesa: add a mechanism to bypass atomics when binding sampler views
3554- st/mesa: remove the sampler min_lod/max_lod value swap
3555- cso: disallow NULL sampler state templates in cso_single_sampler
3556- cso: update max_sampler_seen only once in cso_set_samplers
3557- cso: don't look up a sampler CSO if the last one is identical
3558- mesa: use atomics instead of mutexes for refcounting texture objects
3559- mesa: use atomics instead of mutexes for refcounting sampler objects
3560- mesa: use atomics instead of mutexes for refcounting renderbuffers
3561- mesa: remove mutex locking from a glBindTexture early out path
3562- mesa: translate into pipe_sampler_state in GL functions
3563- mesa: add LodBias quantization from st/mesa
3564- mesa: add IsBorderColorNonZero to skip border color update for st/mesa faster
3565- mesa: lower GL_CLAMP in texture and sampler functions instead of st/mesa
3566- radeonsi: remove the GDS variants of compute-based primitive discard
3567- radeonsi: change how the prim discard CS is enabled and splitting limits
3568- radeonsi: fix issues with draw-level splitting for the prim discard CS
3569- radeonsi: add optimal multi draws and draw-level splitting for prim discard CS
3570- radeonsi: move the accepting code into the bbox cull branch in prim discard CS
3571- radeonsi: drop smoothing quality to 4xAA for better performance
3572- ac/llvm: don't return a status from ac_cull_triangle because it's unused
3573- ac/llvm: rework how negative W affects culling to not call accept_func twice
3574- radeonsi: rewrite a confusing comment in si_upload_and_prefetch_VB_descriptors
3575- ac/surface/tests: fix the ARM build
3576- radeonsi,radv: fix a late alloc deadlock with <= 6 CUs per SA
3577- radeonsi: move an incorrectly placed comment about late alloc
3578- ac,radeonsi: move late alloc computation into common code and shader states
3579- radeonsi: enable uniform inlining by default
3580- util/idalloc: change num_elements to units of elements instead of bits
3581- util/idalloc: fold the size call into init
3582- util/idalloc: reserving an ID that already exists should be no-op
3583- util/idalloc: hide or remove unused public functions
3584- util/idalloc: add exists and foreach helpers
3585- util/idalloc: add util_idalloc_alloc_range
3586- radeonsi: don't expose no-attachment MSAA 16x on all 1 RB chips due to issues
3587- mesa: fix incorrect comment in draw_gallium_multimode
3588- st/mesa: always use PIPE_USAGE_STAGING for GL_MAP_READ_BIT usage
3589
3590Mark Janes (11):
3591
3592- iris: Increase the size of upload buffers
3593- iris: Upload constant resources for efficient GPU access
3594- iris: Use const_uploader for iris_create_stream_output_target
3595- iris: Use const uploader for blorp vertex data
3596- iris: Use const uploader for draw parameters
3597- iris: Use const uploader for user index data
3598- intel/compiler: Add getter helpers for LSC message descriptor fields
3599- intel/compiler: Add LSC messages to brw_schedule_instructions
3600- intel/fs: Lower DW untyped r/w messages to LSC when available
3601- intel/fs: Lower untyped atomic messages to LSC when available
3602- intel/fs: Lower A64 untyped r/w messages to LSC when available
3603
3604Martin Krastev (1):
3605
3606- compiler/glsl: Use mutex lock while freeing up mem_ctx
3607
3608Martin Peres (1):
3609
3610- ci: add the dEQP expectations for radv on Renoir
3611
3612Matt Turner (10):
3613
3614- intel/eu: Add instruction compaction support on XeHP.
3615- compiler/glsl: Return progress from propagate_invariance()
3616- compiler/glsl: Propagate invariant/precise when splitting arrays
3617- compiler/glsl: Always propagate_invariance() last
3618- freedreno/afuc: Print uintptr_t with PRIxPTR
3619- sparc: Avoid some redefinition warnings
3620- tu: Provide a toggle to avoid warnings about unsupported devices
3621- freedreno/ci: Use TU_IGNORE_CONFORMANCE_WARNING to reduce warnings
3622- ci: Unify on MESA_VK_IGNORE_CONFORMANCE_WARNING
3623- amd/ci: Use MESA_VK_IGNORE_CONFORMANCE_WARNING to reduce warnings
3624
3625Matti Hamalainen (11):
3626
3627- gallium/tools: clean up tracediff.sh a bit
3628- gallium/tools: improve option handling in dump_state.py
3629- gallium/tools: implement better suppression of variants
3630- gallium/tools: implement 'named' pointers option in dump.py
3631- gallium/tools: use left-column output mode of sdiff in tracediff.sh
3632- gallium/tools: improve tracediff.sh argument handling
3633- gallium/tools: implement "high-level" overview mode option in dump scripts
3634- gallium/tools: improve pointer type tracking in parse.py
3635- gallium/tools: add option to use Meld for diffing
3636- aux/trace: add missing return value to trace output
3637- gallium/tools: improve handling of pointer arrays
3638
3639Mauro Rossi (11):
3640
3641- egl/android: include "util/compiler.h" for FALLTHROUGH macro
3642- android: panfrost/lib: add pan_cs.c to Makefile.sources
3643- android: gallium/radeonsi: add nir include path
3644- android: amd/common: add nir include path
3645- android: pan/bi: add bi_opt_constant_fold.c to Makefile.sources
3646- android: nir: add nir_lower_fragcolor.c to Makefile.sources
3647- android: intel/compiler: add brw_compile_ff_gs.c to Makefile.sources
3648- android: i965: remove brw_ff_gs_emit.c from Makefile.sources
3649- android: ac: add ac_nir_lower_ngg.c to Makefile.sources
3650- android: ac: add include src/util path
3651- android: aco: add aco_optimizer_postRA.cpp to Makefile.sources
3652
3653Michael Tang (1):
3654
3655- microsoft/compiler: Maintain sorting of resource type in the context
3656
3657Michael Walle (1):
3658
3659- kmsro: Add mali-dp
3660
3661Michel Dänzer (18):
3662
3663- lima/ppir: Cast pointer to uintptr_t instead of uint64_t
3664- util: Remove unused Android options_tbl_lock
3665- Convert most remaining free-form fall-through comments to FALLTHROUGH
3666- Guard FALLTHROUGH annotations after assert()
3667- llvmpipe: Drop switch with only default case
3668- iris: Drop unneeded default switch case
3669- Use explicit break instead of fall-through to break-only case
3670- ci: Enable -Werror in clang jobs
3671- osmesa: Replace default case FALLTHROUGH annotation by following return
3672- ci: Enable -Werror for the remaining GCC build jobs
3673- ci: Move -Werror enabling from job definitions to meson build script
3674- ci: Add test which occasionally times out to lavapipe-vk skips
3675- Fix up leftover "state_trackers" references to "frontends"
3676- turnip: Mark local variable ASSERTED
3677- ci: Add debian/ prefix to job names for Debian based docker images
3678- ci: Rename Debian based build jobs from meson-* to debian-*
3679- ci: Add Fedora 34 based x86 build docker image
3680- ci: Add Fedora release build job
3681
3682Michel Zou (14):
3683
3684- lavapipe: fix unused variable warning
3685- vulkan: fix duplicate win32 def
3686- gallium: fix uninitialized variable warning
3687- meson: link vulkan_util with link_whole on mingw
3688- docs: list more vulkan extensions
3689- vulkan/wsi: avoid wsi_x11_check_for_dri3 for sw device
3690- zink: fix win32 build
3691- swr: fix uninitialized variable warnings
3692- llvmpipe: restrict optim bug workaround to gcc 10.x
3693- glapi: fix Warray-parameter
3694- zink: Drop useless zink_dispatch_table
3695- zink: Fix win32 build
3696- zink: Fix unused-variable warning
3697- meson: dont use missing dumpbin path
3698
3699Miguel Gomez (1):
3700
3701- i965: Prevent invalid framebuffer usage
3702
3703Mike Blumenkrantz (548):
3704
3705- gallium: add PIPE_BIND_SAMPLER_REDUCTION_MINMAX
3706- gallium: split PIPE_CAP_SAMPLER_REDUCTION_MINMAX into modes
3707- mesa/st: plumb GL_TEXTURE_REDUCTION_MODE_ARB through QueryInternalFormat
3708- zink: hook up VK_EXT_sampler_filter_minmax
3709- zink: support format queries for VK_EXT_sampler_filter_minmax
3710- zink: handle minmax sampler creation for VK_EXT_sampler_filter_minmax
3711- zink: export PIPE_CAP_SAMPLER_REDUCTION_MINMAX_ARB
3712- docs: update GL_ARB_texture_filter_minmax for zink
3713- zink: compare against screen batch id when determining which semaphore to use
3714- zink: always copy the nir shader before compiling
3715- zink: fix tcs slot map eval for user vars
3716- zink: fix tcs input reservation for user vars
3717- st/pbo: use cso_set_vertex_buffers_and_elements() for st_pbo_draw
3718- zink: merge copy-to-scanout path into non-deferred flush path
3719- zink: force scanout sync when mapping scanout resource
3720- util/format: add util_format_is_rgbx_or_bgrx
3721- zink: use undefined layout for first scanout obj transition
3722- Revert "zink: force scanout sync when mapping scanout resource"
3723- zink: move scanout sync to end of batch
3724- zink: add a flag indicating whether scanout object needs updating
3725- zink: move wsi flush info conditional to queue submission
3726- zink: directly set batch->state->flush_res from flush_resource hook
3727- zink: add clear-on-flush mechanic deeper into flush codepath
3728- gallium: when tracing is enabled for threaded drivers, trace the driver thread
3729- nir/lower_fragcolor: set outputs_written for fragdata members
3730- softpipe: fix render condition checking
3731- softpipe: fix streamout queries
3732- softpipe: ci updates
3733- zink: track persistent resource objects, not resources
3734- zink: restore previous semaphore (prev_sem) handling
3735- zink: use cached memory for staging resources
3736- zink: init timeline semaphore on screen creation, not first batch creation
3737- zink: only reset query on suspend if the query has previously been stopped
3738- zink: when performing an implicit reset, sync qbos
3739- lavapipe: implement VK_EXT_provoking_vertex
3740- zink: hook up VK_EXT_provoking_vertex
3741- zink: implement VK_EXT_provoking_vertex
3742- zink: ci updates
3743- zink: update docs
3744- nir/gl_lower_buffers: set access for ssbo load/store instrs
3745- zink: use non-atomic load/store ops if intrinsic is not actually coherent
3746- zink: remove leftover references to flatshading in shader keys
3747- zink: hook up VK_KHR_shader_clock
3748- zink: add conversion util for nir_scope -> SpvScope
3749- zink: add spirv builder for unops with a const operand
3750- zink: support nir_intrinsic_shader_clock
3751- zink: export PIPE_CAP_TGSI_CLOCK
3752- zink: generate spirv 1.5 from ntv when using vk >= 1.2
3753- zink: create entrypoints for descriptor variables with spirv 1.5
3754- zink: add fastpath for getting default shader variants
3755- zink: use first-created shader variant as the default
3756- zink: hook up VK_EXT_sample_locations
3757- zink: hook up VK_EXT_conservative_rasterization
3758- zink: hook up VK_EXT_shader_subgroup_ballot
3759- zink: hook up EXT_image_drm_format_modifier
3760- docs: mark off GL_ARB_shader_clock for zink
3761- gallium: rename pipe_draw_start_count -> pipe_draw_start_count_bias
3762- gallium: move pipe_draw_info::index_bias to pipe_draw_start_count_bias
3763- mesa/st: rename DrawGalliumComplex -> DrawGalliumMultiMode
3764- gallium: split drawid out of pipe_draw_info and as a separate draw_vbo param
3765- gallium: remove padding members from pipe_draw_info
3766- util/tc: split out drawid-using draws into a separate call
3767- iris: fix indirect drawid
3768- zink: grab GetPhysicalDeviceMemoryProperties2 from instance
3769- zink: hook up VK_EXT_memory_budget
3770- zink: support PIPE_CAP_QUERY_MEMORY_INFO
3771- zink: minor refactoring of buffer map for read case
3772- zink: add a screen util function for handling VkResults
3773- zink: use zink_screen_handle_vkresult() for fence and timeline waiting
3774- zink: add a ctx function for handling device lost resets
3775- zink: use new ctx device lost checker function
3776- zink: add a pipe_context::resource_commit hook
3777- zink: implement sparse buffer creation/mapping
3778- zink: export PIPE_CAP_SPARSE_BUFFER_PAGE_SIZE
3779- aux/cso_cache: add handling for save/restore of compute states
3780- zink: clamp zs samplers to XXXX swizzle for all non-zero/one swizzles
3781- gallium/inlines: remove atomic set from pipe_reference_init()
3782- nir: add nir_isub_imm
3783- lavapipe: handle buffer sizes better in CmdBindTransformFeedbackBuffersEXT
3784- lavapipe: do not read sampler descriptor info during update if layout has immutables
3785- lavapipe: set events to the unsignalled state on creation
3786- lavapipe: flag renderpasses as having color/zs attachments
3787- lavapipe: update more states on null multisample pipeline info
3788- lavapipe: zero out the dsa state info and flag for updating on null dsa state
3789- lavapipe: zero out the blend state info and flag for updating on null blend state
3790- lavapipe: don't unnecessarily flag dsa states for updating
3791- lavapipe: ignore tess pipeline info if no tess shaders in pipeline
3792- lavapipe: don't access pipeline viewport state when it should be ignored
3793- lavapipe: don't access pipeline dsa state when it should be ignored
3794- lavapipe: don't access pipeline blend state when it should be ignored
3795- zink: split off descriptor layout from descriptor pools
3796- zink: unify pipeline layout creation functions
3797- zink: abstract descriptor init
3798- zink: abstract descriptor usage for programs
3799- zink: abstract descriptor pool usage for programs
3800- zink: use explicit types during descriptor updates
3801- zink: check descriptor layout support before creating it
3802- zink: move more vertex state stuff into the hw state
3803- zink: split vertex state pipeline hashing into its own value
3804- zink: flag pipeline for change more often when vbos change without dynamic state
3805- zink: return current pipeline object if state hasn't changed
3806- zink: hook up dynamic dsa states
3807- zink: start using dynamic front face state
3808- util/hash_table: _mesa_hash_table_create_u32_keys()
3809- zink: add a pipe_context::clear_buffer hook
3810- zink: never use LINEAR for VK_EXT_4444_formats
3811- zink: make ZINK_INLINE_UNIFORMS more standardized in function
3812- zink: clamp 3D surface viewtype to 2D only in the create_surface hook
3813- zink: add a target param to create_ivci()
3814- zink: simplify samplerview surface creation
3815- zink: only set layer info for samplerviews if there are multiple layers
3816- zink: handle in-renderpass clears in fb_clears_apply_internal()
3817- zink: break zs clear loop once both bits are set when beginning renderpass
3818- zink: add debug assert to verify that zink_clear_framebuffer() is accurate
3819- zink: remove compute cruft from resource mapping
3820- zink: break out draw dispatch into separate functions
3821- zink: fix texture barriers for real this time
3822- zink: rework memory_barrier hook again (third time's the charm)
3823- ci: skip glsl-uniform-interstage-limits tests for softpipe jobs
3824- zink: use DONTCARE renderpass when a new scanout fb attachment is set
3825- iris: refcount separate screen objects for resource tracking
3826- zink: stop invalidating descriptor sets on pool destroy
3827- zink: add context-based descriptor info tracking infrastructure
3828- zink: unify resource rebinding
3829- zink: track bind counts for descriptors
3830- zink: update samplerview descriptor layouts when image binds are set
3831- zink: don't track sampler states onto buffer sampler sets
3832- zink: track max slot idx for descriptor types
3833- zink: track number of tbos in shader data
3834- zink: add slot params to zink_context_invalidate_descriptor_state
3835- zink: use better iterating for buffer rebinds
3836- zink: call invalidate on invalid descriptor sets during recycle
3837- zink: make zink_context_update_descriptor_states() static
3838- zink: remove screen param from zink_descriptors_update()
3839- zink: pop descriptor refs when invalidating sets
3840- zink: flush every 100k draws/computes
3841- zink: check for a work_count-based stall in zink_maybe_flush_or_stall()
3842- zink: always do maybe_flush after draw/compute
3843- zink: stop overwriting buffer map pointers for stream uploader
3844- zink: fix DrawParameters shader cap usage
3845- lavapipe: fix fencing when submitting multiple cmdbufs
3846- zink: immediately return false when getting query result if it's not gonna happen
3847- util/queue: don't require a fence when adding a job
3848- zink: split out base renderpass begin into separate function
3849- zink: add a flag for tracking/validating renderpass clears
3850- zink: add flags for determining whether to update framebuffer and renderpass
3851- zink: emit some barriers out of renderpass where possible
3852- nir/builder: add nir_pad_vector and nir_pad_vec4 util functions
3853- zink: don't multiply cube array image layers
3854- zink: populate images with u_blitter if transfer_dst isn't available
3855- zink: add even more validation for linear images before creation
3856- util/primconvert: add C++ guards to header
3857- aux/trace: support pipe_screen::query_memory_info
3858- aux/trace: pipe_screen::query_dmabuf_modifiers
3859- aux/trace: pipe_context::is_dmabuf_modifier_supported
3860- aux/trace: propagate pipe_screen::transfer_helper pointer
3861- aux/trace: pipe_screen::get_dmabuf_modifier_planes
3862- aux/trace: trace pipe_screen::resource_create_with_modifiers
3863- util/prim_restart: fix util_translate_prim_restart_ib
3864- ci: more freedreno flakes
3865- aux/vbuf: prevent uint underflow and assert if no vbs are dirty
3866- aux/trace: add pipe_context::set_debug_callback hook
3867- aux/trace: more effectively unwrap pipe_context params from screen functions
3868- aux/trace: trace transfer ops
3869- aux/trace: stop dumping transfer data for threaded contexts
3870- aux/trace: hook tc methods
3871- aux/trace: fix set_inlinable_constants hook
3872- aux/trace: fix query handling with tc
3873- aux/trace: add a pipe_context::clear_buffer hook
3874- aux/trace: dump 'wait' param for get_query_result
3875- radeonsi: explicitly return support for all index buffer formats
3876- zink: rename ptr_add_usage -> batch_ptr_add_usage
3877- zink: make descriptor_layout_get a public util function
3878- zink: make a public util function for allocating descriptor sets
3879- zink: unify pipeline layout creation and move to descriptor_program_init
3880- zink: pass descriptor type to set layout create()
3881- zink: replace has_descriptors program member with a util function
3882- zink: abstract descriptor functionality and make descriptor structs private
3883- zink: improve samplerview update flagging
3884- zink: emit descriptor barriers and references during bind
3885- zink: add vertex buffer barriers during bind
3886- zink: make timeline_wait use only a screen param
3887- zink: move timeline_wait() to screen function
3888- zink: implement tc idalloc resource id stuff
3889- zink: force streamout rebind when mapping a streamout buffer for writing
3890- zink: implement a tc is_resource_busy hook
3891- zink: call tc_driver_internal_flush_notify() on flush
3892- zink: mark some buffer barrier functions inline/static
3893- zink: switch to memory barriers instead of actual buffer barriers
3894- zink: hook up push descriptor and descriptor template extensions
3895- zink: disable push descriptors on amd
3896- nir/builder: add nir_mask
3897- radv: make radv_pipeline::attrib_ends 32bit
3898- radv: set maxVertexInputAttributeOffset to UINT32_MAX
3899- zink: remove weird lod hack for texturing
3900- zink: ci updates
3901- llvmpipe: remove clamping to [0,1] for tri offset
3902- lavapipe: moar @optimize
3903- llvmpipe: split out scene surface info into separate struct
3904- llvmpipe: split out scene surface init into separate function
3905- llvmpipe: only dump tgsi shaders if they're actually tgsi shaders
3906- llvmpipe: store a screen pointer in resource struct
3907- llvmpipe: stop accessing pipe_resource::screen internally
3908- lavapipe: skip "pipeline barriers" if they're first or last in a cmdbuf
3909- lavapipe: also ignore multiple pipeline barriers in succession
3910- gallium/aux: add helper for pre-clamping clear_buffer value to dword
3911- zink: clamp clear_buffer values
3912- radeonsi: clamp clear_buffer values using new util helper
3913- zink: improve unsupported feature warning message
3914- aux/trace: avoid deadlock in screen::flush_frontbuffer hook
3915- gallivm: fix oob imageLoad with formats that have <4 components
3916- llvmpipe: ci updates
3917- aux/indices: break out primitive type conversion to separate function
3918- aux/indices: break out index size conversion to separate function
3919- aux/indices: break out index count conversion into separate function
3920- aux/indices: employ Delete The Code methodology
3921- lavapipe: add more format mappings for vertex buffer formats
3922- zink: reapply resource/surface refs after app flushes
3923- zink: reapply program refs automatically
3924- zink: remove barriers/refs from descriptor cache
3925- zink: mark some draw functions inline
3926- zink: only rebind pipelines when necessary
3927- zink: handle rebinds for vertex buffers
3928- zink: only rebind vertex buffers when necessary
3929- zink: only update viewport state when necessary
3930- zink: update scissor only when necessary
3931- zink: ref vertex buffers during set_vertex_buffers
3932- zink: stop using util_set_vertex_buffers_mask()
3933- Revert "zink: call tc_driver_internal_flush_notify() on flush"
3934- compiler/spirv: expand_to_vec4 -> nir_pad_vec4
3935- anv: fix availability for copying timestamp query results
3936- zink: add a second descriptor manager
3937- zink: unify code for updating res->bind_count values
3938- zink: unify more resource bind count tracking code
3939- zink: optimize buffer rebinds
3940- zink: ci updates
3941- aux/trace: dump resource for samplerview and surface
3942- aux/draw: if pipe_draw_info::index_bias_varies is not set, ignore index_bias for N>1
3943- aux/draw: fix aalines and aapoints for shaders with explicit FragData outputs
3944- radv: declare index_va in a single call for indexed draw packet emit
3945- radv: explicitly load a desc set layout struct member during set allocate
3946- zink: add a util function to create a null surface
3947- zink: replace context-based null framebuffer surfaces with internal ones
3948- zink: create dummy surface/bufferview for null descriptor use
3949- zink: handle null bufferview/imageview descriptors when robustness2 is missing
3950- zink: ci updates
3951- zink: no-op read access buffer barriers if existing access exists for earlier stage
3952- zink: emit fb attachment barriers inline during renderpass start
3953- zink: track number of fb attachment binds on resources
3954- zink: use VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL when possible
3955- aux/tc: fix ubo unbinding
3956- Revert "Revert "zink: call tc_driver_internal_flush_notify() on flush""
3957- nouveau: explicitly advertise index buffer format support
3958- r300: explicitly advertise index buffer format support
3959- d3d12: explicitly advertise index buffer format support
3960- zink: explicitly advertise index buffer format support
3961- zink: more accurately handle shader layer/viewport caps
3962- util/prim_restart: assert the index size at the start of the function
3963- util/prim_restart: pre-trim degenerate primitives during draw rewrite
3964- util/prim_restart: store index bounds while rewriting draws
3965- util/prim_restart: store the total index count when rewriting draws
3966- util/prim_restart: update index bounds before draws in util_draw_vbo_without_prim_restart
3967- util/prim_restart: simplify util_draw_vbo_without_prim_restart a bit
3968- zink: populate maxSampleLocationGridSize for all available sample sizes on init
3969- zink: set VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT on zs rts
3970- zink; add a pipe_screen::get_sample_pixel_grid hook
3971- zink: add a pipe_context::set_sample_locations hook
3972- zink: also flag sample_locations_changed if framebuffer samples changes
3973- zink: add a util function for populating VkSampleLocationsInfoEXT
3974- zink: update vk sample location info during framebuffer setup
3975- zink: add a pipe_context::evaluate_depth_buffer hook
3976- zink: use dynamic state to apply sample locations during draw
3977- zink: export PIPE_CAP_PROGRAMMABLE_SAMPLE_LOCATIONS
3978- util/vbuf: fix buffer overrun in attribute conversions
3979- zink: fix caching of shader variants with inlined uniforms
3980- util/blitter: remove duplicated set_sample_mask calls
3981- util/disk_cache: add nocopy variant of disk cache store function
3982- zink: use scissor region for discarding clears during blit
3983- zink: clamp PIPE_CAP_MAX_VIEWPORTS to PIPE_MAX_VIEWPORTS
3984- aux/cso: add flag to disable vbuf
3985- aux/cso: split cso_destroy_context into unbind and a destroy functions
3986- lavapipe: use cso caching
3987- zink: fix typo that's definitely not at all embarrassing or anything like that
3988- aux/cso: store flatshade_first state from rasterizer
3989- util/primconvert: add function for setting flatshade_first
3990- util/vbuf: add flatshade_first to vbuf context and api
3991- aux/cso: set flatshade_first onto vbuf when binding rasterizer
3992- aux/tc: pass rebind count and rebind bitmask with replace_buffer_storage func
3993- util/prim_restart: use more direct conversion for restart index
3994- zink: add a function for creating descriptor layouts for push sets
3995- zink: split lazy sets based on descriptor type
3996- zink: match lazy descriptor set layout in cache mode
3997- zink: modernize cached push ubo descriptor updating
3998- zink: modernize cached ubo descriptor updating
3999- zink: modernize cached ssbo descriptor updating
4000- zink: modernize cached image descriptor updating
4001- zink: remove sorting for dynamic ubo offset updating
4002- zink: move ubo range assert to update_descriptor_state()
4003- zink: unify cached descriptor update code
4004- zink: run lazy batch descriptor functions in cache mode
4005- zink: add is_buffer flag to union zink_descriptor_surface
4006- zink: update null sampler/image descriptor surface with is_buffer during hashing
4007- zink: move shader image descriptor set refs to underlying type
4008- zink: add funcs for descriptor_surface refs
4009- zink: move samplerview descset refs to base objects
4010- zink: enable templated descriptor updates in cache mode
4011- zink: add oob asserts for descriptor set ref setting
4012- zink: skip hash updates for descriptor types which aren't used
4013- zink: unblock last_set cached descriptor reuse when safe to do so
4014- zink: add ZINK_DESCRIPTORS env var to explicitly set a mode
4015- zink: remove zink_batch_state::descs_used
4016- zink: split batch state work_count into separate vars
4017- zink: reorder has_barriers flag in batch state struct
4018- zink: optimize zink_tc_fence struct packing
4019- zink: move batch usage functions to static inlines
4020- zink: remove atomic from batch usage setting
4021- zink: make batch_usage_unset take a batch state param
4022- zink: unset program batch usage on state reset
4023- zink: remove unnecessary conditionals in resource batch tracking
4024- zink: make batch_usage_set take a batch state param
4025- zink: make batch_usage_matches take a batch state param
4026- zink: cache descriptor update templates along with layout
4027- zink: track active use counts for descriptor layouts
4028- zink: destroy lazy descriptor pools during batch reset when unused
4029- zink: slightly refactor program updating during draw
4030- zink: remove return types from program update functions during draw
4031- zink: simplify zink_program_has_descriptors()
4032- zink: mark bind_stage() as inline
4033- zink: unify gfx shader create callbacks
4034- zink: use u_live_shader_cache
4035- zink: remove unnecessary draw checks
4036- zink: move batch decl to top of draw_vbo
4037- zink: stop sanitizing primitive_restart flag in draw info
4038- zink: handle nir_op_pack_64_2x32
4039- zink: add update flag for rasterizer state change
4040- zink: add update flag for dsa state change
4041- zink: split stencil ref changes to separate dirty flag
4042- anv: fix dynamic primitive topology for tess
4043- zink: update pipe_screen::num_contexts
4044- zink: set subdata hook as PIPE_MAP_ONCE
4045- zink: move queue init to screen creation
4046- util/queue: add a global data pointer for the queue object
4047- zink: add a more direct check for rgbx formats in create_sampler_view hook
4048- zink: smash dstAlphaBlendFactor to ZERO for RGBX attachments
4049- zink: also nope out of any dst alpha blends for rgbx formats
4050- zink: support more RGBX formats
4051- zink: ci updates
4052- zink: mark some functions inline
4053- zink: collapse host_visible and non-coherent alignment alloc cases
4054- zink: change a bunch of sparse buffer resource checks to host-visible checks
4055- zink: avoid caching visible vram allocations
4056- zink: key alloc cache on heap index, not heap flags
4057- zink: check actual mem props to determine if resource object is coherent
4058- zink: use fake buffer barriers for descriptors
4059- zink: always defer image descriptor barriers
4060- zink: remove duplicated bitflag filtering for inline uniforms
4061- zink: remove inlinable_uniforms_dirty_mask
4062- radv: move pipe_misaligned and l2_coherent image checks to flags set on init
4063- nine: only enable tgsi disk cache if the driver supports it
4064- nine: add zink to the build target
4065- zink: handle custom border color without matching wrap mode case
4066- zink: add a flag for disabling conditional render during blit
4067- zink: add more clear hooks
4068- zink: clear the fb clears array instead of freeing it on reset
4069- zink: support multidraw
4070- zink: use multidraw
4071- vk/util: add macros for multidraw
4072- zink: clear textures directly when possible
4073- zink: only update last_finished during batch reset if the batch was used
4074- zink: improve tc fence disambiguation
4075- zink: add and use fencing functions which take batch usage structs
4076- zink: use batch usage api for resource helper function
4077- zink: remove no-longer-used resource helper functions
4078- zink: queue v3.0
4079- zink: apply zink_resource_object::offset for memory flush/invalidates
4080- zink: break out offset alignment calculation into helper
4081- zink: make init_mem_range() a public function
4082- zink: enforce multi-context waiting for unflushed resources on foreign batches
4083- zink: move queue submit thread to screen
4084- zink: move sparse buffer commit to screen queue
4085- zink: move fence reset to submit thread
4086- zink: flag scanout updates to batch state, not resource
4087- zink: move some end-of-batch stuff to submit thread
4088- zink: don't clear batch resources on fence finish
4089- ci: disable panfrost t760 jobs
4090- aux/draw: add a util function for reading back indirect draw params
4091- util/prim_restart: break out draw rewriting into separate function
4092- util/primconvert: handle indirect draws
4093- util/primconvert: map index buffer before getting index translator function
4094- util/primconvert: handle rewriting of prim-restart draws with unsupported primtype
4095- util/primconvert: handle multidraws in primconvert
4096- gallium: add a pipe cap to rewrite index buffers for draws using a non-fixed restart index
4097- gallium: handle automatic 8bit -> 16bit index buffer rewrites
4098- gallium: add a pipe cap for performing automatic prim type conversion
4099- gallium: add a pipe cap for determining driver support for prim type in restarts
4100- zink: export PIPE_CAP_EMULATE_NONFIXED_PRIMITIVE_RESTART
4101- zink: export 8bit index buffer support based on extension presence
4102- zink: export supported prim types
4103- zink: export supported primitive restart types
4104- zink: remove primconvert
4105- zink: ci updates
4106- zink: use depth/stencil-only layouts for depth/stencil-only formats
4107- lavapipe: implement multidraw ext
4108- zink: break out image descriptor layout into util function
4109- zink: split deferring of barriers to image and buffer functions
4110- zink: only do deferred image barriers if layout changes
4111- zink: use bind counts to more accurately determine image descriptor's exact layout
4112- zink: improve automatic layout transitions for sampler+image descriptors
4113- zink: only queue deferred descriptor layout change on first bind or change
4114- zink: flush pending clears if a resource is bound as a descriptor
4115- zink: repack zink_context struct a bit
4116- anv: unify some draw state vertex constant emission
4117- anv: VK_EXT_multi_draw implementation
4118- util/vbuf: always claim support for PATCHES in restart modes
4119- util/vbuf: flag fallback_always if any prim types are missing from restart modes
4120- zink: add direct conversion from pipe_shader_type->VkPipelineStageFlags
4121- zink: split dummy buffer creation and populate
4122- zink: try for better buffer allocation heaps
4123- zink: don't align device-local buffer memory
4124- zink: make mem cache limits dynamically scalable
4125- zink: uncap mem caching
4126- zink: cache visible vram
4127- zink: attempt to handle some resource unmap cases in 32bit envs
4128- radv: pre-calc vertex buffer descriptor size on pipeline object
4129- lavapipe: hook up some bits for handling dynamic line stipple state
4130- lavapipe: implement EXT_vertex_input_dynamic_state
4131- zink: avoid unnecessarily rewriting gl_DrawID
4132- zink: unify/consolidate some barrier queuing
4133- zink: break up ctx descriptor state updating to per-type functions
4134- zink: add a ref for flush resource
4135- zink: unify fb surface unbinding
4136- zink: move line width and depth bias updating into conditional during draw
4137- zink: merge some streamout state emission into the same draw conditional
4138- zink: rework pipeline cache implementation
4139- zink: make prim type a bitfield in pipeline info
4140- zink: rename 'template' struct member
4141- zink: remove unnecessary return from zink_desc_type_from_vktype()
4142- zink: add c++ header guards
4143- zink: add more explicit casts to draw code
4144- zink: don't add batch tracking during buffer rebinds if refs are dirty
4145- zink: remove stencil resource batch tracking
4146- zink: split out resource tracking into more incremental functions
4147- zink: split batch usage setting from refcounting
4148- zink: split samplerview/imageview usage/refcounting calls
4149- zink: add resource refs after last descriptor unbind
4150- zink: use vkresult helper for map return
4151- zink: only flag persistent resource maps for invalidation if they aren't coherent
4152- zink: don't add mem allocation offset when copying buf2image
4153- zink: use pipe_resource::width0 for clamping ssbo sizes
4154- zink: use 0 as the offset when mapping qbos
4155- zink: stop screwing up buffer offsets during for maps
4156- zink: add a screen function for waiting on a batch id
4157- zink: check last_finished before timeline waiting
4158- lavapipe: store whether the geometry shader outputs GL_LINES
4159- lavapipe: store the geometry shader prim type to render state
4160- lavapipe: implement VK_EXT_line_rasterization
4161- lavapipe: wideLines support
4162- zink: ci updates for wideline fails
4163- relnotes: add some line feature updates for lavapipe
4164- features: mark off line rasterization for lavapipe
4165- features: mark off some zink features
4166- features: fix ARB_shader_group_vote -> GL_ARB_shader_group_vote
4167- features: add VK_EXT_multi_draw
4168- features: mark off EXT_vertex_input_dynamic_state for lavapipe
4169- radv: use multidraw iteration for direct draws
4170- radv: emit NOT_EOP for multi indexed draws
4171- radv: emit drawid for multidraws
4172- radv: determine if hardware can emit NOT_EOP before emitting
4173- radv: split indexed draw cases based on whether drawid is used
4174- radv: add a gfx10 bug workaround for NOT_EOP
4175- radv: implement VK_EXT_multi_draw
4176- lavapipe: handle null vertex buffers more gracefully
4177- util/vbuf: check 3-component 16bit int formats for translation
4178- zink: make shader cache local to a single program
4179- zink: split up shader cache per-stage
4180- zink: set gfx program shaders and generate internal tcs during program creation
4181- zink: remove gfx program slot mapping
4182- zink: remove shader_id
4183- zinK: tweak shader module update -> pipeline combined_dirty conditional
4184- lavapipe: implement EXT_separate_stencil_usage
4185- lavapipe: implement KHR_separate_depth_stencil_layouts
4186- features: more lavapipe extensions
4187- relnotes: more lavapipe features
4188- zink: add util function for transferring resource refs to batch
4189- zink: move resource object ref to batch in invalidate hook
4190- zink: move resource object ref to batch in init_storage_object
4191- zink: remove refs from buffer rebinds
4192- zink: remove refs from vertex buffers
4193- zink: remove refs from ubos
4194- zink: remove refs from shader buffers
4195- zink: remove refs from shader images
4196- zink: remove resource refs from samplerviews
4197- zink: remove refs from desc ref updating
4198- zink: add surface ref during rebind if unflushed usage
4199- zink: set new batch usage during surface rebinds
4200- zink: remove imageview refs from shader images
4201- zink: remove samplerview refs
4202- zink: remove fb surface refs
4203- zink: remove fb surface resource refs
4204- zink: remove some descriptor_refs_dirty checks from resource binding
4205- zink: add a per-stage mask for ubo binds
4206- zink: add a per-stage bind mask for ssbos
4207- zink: make samplerview bind mask apply to buffer resources too
4208- zink: make image_bind_count work for buffers
4209- zink: remove barriers from buffer rebinds
4210- zink: optimize buffer rebinds
4211- zink: redo streamout and texture components of memory_barrier hook
4212- zink: remove unnecessary stall during device-local map case
4213- lavapipe: only apply pipeline state for depth bias if it's enabled
4214- lavapipe: implement EXT_extended_dynamic_state2
4215- features: EXT_extended_dynamic_state2 for lavapipe
4216- relnotes: EXT_extended_dynamic_state2 for lavapipe
4217- zink: store the last vertex stage to the context during bind
4218- zink: use last_vertex_stage pointer to optimize streamout emission during draw
4219- zink: update streamout buffer strides inline
4220- zink: move descriptor update closer to start of draw
4221- zink: consolidate and optimize index buffer handling during draw
4222- features: mark off VK_EXT_multi_draw for radv
4223- zink: remove zink_shader_module refcounting
4224- zink: flag all shaders for create during gfx program init
4225- zink: keep a mask of stages present in a gfx program
4226- zink: flag shader modules as default
4227- zink: store the default variant hash for a program
4228- nir/format_convert: nir_shift -> nir_shift_imm
4229- nir/format_convert: add ssa version of uint packing
4230- lavapipe: disable line rasterization ext
4231- zink: ensure sparse allocations aren't marked host-visible
4232- zink: fix mem info query to be more permissive
4233- zink: zero out sampler/image descriptor surface info for null descriptor updates
4234- zink: ci updates
4235- zink: populate modifier props onto screen object during init
4236- zink: start storing modifiers to the base resource struct
4237- zink: store modifier aspect to resource
4238- zink: add a pipe_screen::resource_get_param hook
4239- zink: use VkImageDrmFormatModifierListCreateInfoEXT for creating from modifier array
4240- zink: explicitly disallow using the modifier image create for non-linear images
4241- zink: don't pass modifier count to first image create
4242- zink: add fallback for linear modifier use
4243- zink: add a pipe_screen::resource_create_with_modifiers hook
4244- features: mark off line rasterization for lavapipe
4245- relnotes: add some missing zink/lavapipe updates
4246- ci: add vulkan files to lavapipe rules
4247- ci: only trigger gallium_core_file_list jobs from dri and glx frontend changes
4248- zink: simplify modifier ifdefs
4249- zink: improve detection for broken drawids
4250- lavapipe: increment drawid for multidraws
4251- util/foz: stop crashing on destroy if prepare hasn't been called
4252- zink: use array size in spirv bo length calculations
4253
4254Nanley Chery (8):
4255
4256- anv: Add clear_supported to anv_layout_to_aux_state
4257- anv: Avoid sampling some MCS surfaces with clear
4258- iris: Avoid sampling some MCS surfaces with clear
4259- isl: Add isl_aux_usage_has_compression
4260- iris: Prefer more GPU-based uploads for compression
4261- intel: Limit the D16 workarounds to Gfx12.0
4262- anv,iris: Port the D16 workaround stalls to BLORP
4263- intel/isl: Fix HiZ+CCS comment about ambiguates
4264
4265Neha Bhende (4):
4266
4267- svga: Add target and sampler_return_type info into shader key
4268- svga: Use shader_key info to declare resources if TGSI shader is missing it
4269- svga: Initialize pipe_shader_state for transform shaders
4270- aux/indices: include provoking vertex check in prim type conversion
4271
4272Neil Roberts (1):
4273
4274- kmsro: Fix confusing comma expression
4275
4276Niklas Haas (3):
4277
4278- vulkan/wsi/x11: return VK_SUBOPTIMAL_KHR on mismatched swapchain
4279- vulkan/wsi/x11: lower resize events to VK_SUBOPTIMAL_KHR
4280- vulkan/wsi/wayland: implement the full format table
4281
4282Olivier Fourdan (1):
4283
4284- radeonsi: Check aux_context on si_destroy_screen()
4285
4286Paul Gofman (1):
4287
4288- util: add force_gl_names_reuse for SWKOTOR.
4289
4290Paul Kocialkowski (1):
4291
4292- lima: Take offset in account when checking BO size
4293
4294Paulo Zanoni (2):
4295
4296- iris: finish converting from drmIoctl to intel_ioctl
4297- iris: don't munmap NULL pointers
4298
4299Petr Vaněk (1):
4300
4301- docs/install: remove one extra when
4302
4303Philipp Zabel (1):
4304
4305- etnaviv: fix gbm_bo_get_handle_for_plane for multiplanar images
4306
4307Philippe Normand (1):
4308
4309- i915: Prevent invalid framebuffer usage
4310
4311Pierre Moreau (2):
4312
4313- clover/spirv: Properly size 3-component vector args
4314- clover/nir: Set constant buffer pointer size to host
4315
4316Pierre-Eric Pelloux-Prayer (57):
4317
4318- driconf: add workaround for Golf With Friends
4319- glx: init __GLXvendorInfo to NULL
4320- radeonsi/nir: enable nir_opt_move_discards_to_top pass
4321- radeonsi: enable glsl_correct_derivatives_after_discard by default
4322- st/mesa: fix clearing of 1D array textures
4323- frontend/dri: set PIPE_BIND_PROTECTED later
4324- frontend/dri: fix bool/int comparison
4325- radeonsi: allow write-only mapping of encrypted textures
4326- radeonsi: fix encryption check for buffers
4327- radeonsi: dirty msaa_config on rs->multisample_enable change
4328- winsys/amdgpu: don't read bo->u.slab.entry after pb_slab_free
4329- amdgpu/winsys: remove amdgpu_cs_has_chaining
4330- winsys/amdgpu: reduce amdgpu_cs size
4331- winsys/amdgpu: use int16 for buffer_indices_hashlist
4332- radeonsi: add _once suffix to depth_cleared_level_mask
4333- radeonsi: add si_install_draw_wrapper
4334- radeonsi: use si_install_draw_wrapper for tmz handling
4335- radeonsi/nir: add si_nir_is_output_const_if_tex_is_const
4336- radeonsi: use si_nir_is_output_const_if_tex_is_const
4337- vbo: delay vbo_exec_vtx_map call
4338- radeonsi: delay sample_pos_buffer creation until first use
4339- util/u_queue: move function definition up
4340- util/u_queue: add UTIL_QUEUE_INIT_SCALE_THREADS flag
4341- disk_cache: use UTIL_QUEUE_INIT_SCALE_THREADS
4342- radeonsi: skip instance_count==0 draws on <= GFX9
4343- radeonsi: disable ngg culling on llvm < 12
4344- mesa/shaderapi: change construct_name signature
4345- mesa/shaderapi: add an optional shader override mechanism
4346- ac/llvm: call the callback in all return paths of ac_cull_triangle
4347- radeonsi: fix fb_too_small condition
4348- radeonsi/gfx7: always sync pfp/me
4349- ac/surface: don't print stencil info if tex has no stencil
4350- radeonsi/driconf: add workaround for SpaceEngine
4351- glthread: add a last parameter to unmarshal functions
4352- glthread: return consumed bytes
4353- glthread: use custom marshal/unmarshal for CallList
4354- glthread: merge sucessive glCallList
4355- dlist: add locked param to _mesa_lookup_list
4356- dlist: prelock ctx->Shared->DisplayList before execute_list
4357- dlist: remove OPCODE_EXT_0
4358- dlist: remove InstSize
4359- dlist: unindent code
4360- dlist: use an union instead of allocating a 1-sized array
4361- dlist: always use merged primitive for drawing
4362- dlist: split hot/cold data from vertex_list
4363- dlist: use a separate opcode for vbo replay using loopback
4364- dlist: use a new OPCODE to avoid loading cold data
4365- dlist: increment/check list nesting when handling OPCODE_CALL_LIST(S)
4366- dlist: store all dlist in a continuous memory block
4367- dlist: remove _mesa_dlist_alloc_aligned
4368- dlist: remove unused _mesa_dlist_alloc
4369- dlist: skip NOP command at the head of a list
4370- mesa: clear shader_info::is_lowered in prog_to_nir
4371- mesa: fix bindless uniform samplers update
4372- dlist: don't handle unmerged draws as merged
4373- gallium/va: don't use key=NULL in hash tables
4374- amd/registers: fix fields conflict detection
4375
4376Qiang Yu (1):
4377
4378- st/mesa: fix size miss match for some check
4379
4380Rafael Antognolli (5):
4381
4382- intel/fs: Lower dword integer multiplies on XeHP.
4383- iris/bufmgr: Query memory region info.
4384- iris/bufmgr: Add new set of buckets for local memory.
4385- iris/bufmgr: Add flag to allocate from local memory.
4386- iris: Map with WC on non-LLC platforms.
4387
4388Rhys Perry (92):
4389
4390- aco/ra: use original names when renaming loop carried phi operands
4391- aco/ra: remove live-in temporary from live_out_per_block when moving it
4392- radv: fix barrier in radv_decompress_dcc_compute shader
4393- radv: fix clearing DCC-compressed e5b9g9r9 images
4394- aco: set TRUNC_COORD=0 for nir_texop_tg4
4395- ac/nir: set TRUNC_COORD=0 for nir_texop_tg4
4396- aco: remove image parameter from get_sampler_desc()
4397- Revert "radeonsi: set TRUNC_COORD=0 for Total War: WARHAMMER to fix it"
4398- aco: don't update register demand during RA validation
4399- aco: allow SDWA sels smaller than the operand size
4400- aco: add and use Program::progress
4401- nir/load_store_vectorize: assume CAN_REORDER ops don't alias with stores
4402- nir/opt_load_store_vectorize: improve handling of swizzles
4403- nir/opt_load_store_vectorize: ignore load_vulkan_descriptor
4404- nir/opt_load_store_vectorize: loop internally
4405- radv: improve vectorization callback for small bit sizes
4406- radv: only set robust_modes if robustBufferAccess2 is enabled
4407- radv: disable VK_FORMAT_R64_SFLOAT
4408- radv: cleanup LLVM implementation of vulkan_descriptor_index
4409- radv: implement vulkan_resource_reindex
4410- nir/lower_non_uniform: allow lowering with vec2 handles
4411- radv,aco: use nir_address_format_vec2_index_32bit_offset
4412- vulkan: fix use-after-free in vk_common_DestroyDebugReportCallbackEXT
4413- radv: fix use-after-free upon GS copy shader cache hits
4414- radv: fix possible use-after-free when inserting GS copy shader from cache
4415- radv,ac/llvm: use a dword alignment for descriptor loads
4416- aco: group loads from the same vertex binding into the same clause
4417- radv,aco: use per-attribute vertex descriptors for robustness
4418- Revert "radv,aco: don't use MUBUF for multi-channel loads on GFX8 with robustness2"
4419- radv,aco: compact vertex buffer descriptors
4420- ci: remove expected robustness2 fails for Renoir
4421- aco/ra: initialize temp_in_scc earlier
4422- aco/ra: fix get_reg_for_operand() with no free registers
4423- aco/ra: fix get_reg_for_operand() when the blocking var is a vector
4424- aco/ra: fix get_reg_for_operand() with vector operands
4425- aco/ra: use flags instead of booleans for update_renames()
4426- aco: disallow SGPRs on DPP instructions
4427- radv: don't allocate DCC predicate if the image doesn't use DCC
4428- radv: add radv_absolute_depth_bias
4429- radv: workaround incorrect depthBiasConstantFactor by Path of Exile
4430- radv: fix formatting of radv_dri_options
4431- radv: make attrib_end variable in radv_flush_vertex_descriptors 32-bit
4432- aco: do not clause NSA instructions
4433- aco/tests: add tests for form_hard_clauses()
4434- aco/tests: improve reporting of failed code checks
4435- aco: don't create 4 and 5 dword NSA instructions on GFX10
4436- aco: don't use nir_block_is_unreachable()
4437- nir/unsigned_upper_bound: don't require dominance metadata
4438- nir/algebraic: optimize extract of extract
4439- nir, nir/algebraic: add byte/word insertion instructions
4440- aco: disallow SDWA for instructions with 64-bit definitions/operands
4441- aco: add p_extract/p_insert
4442- aco: implement nir_op_extract/nir_op_insert
4443- aco: use byte/word extract pseudo-instructions
4444- ac/llvm: implement byte/word extract/insert instructions
4445- radv: use byte/word extract/insert instructions
4446- aco: optimize 32-bit extracts and inserts using SDWA
4447- aco: make validate_ir() output usable in tests
4448- aco: disallow literals with some instruction formats
4449- aco/tests: add tests for p_extract/p_insert lowering
4450- aco/tests: add SDWA tests
4451- aco: use v1b/v2b for ds_read_u8/ds_read_u16
4452- radv: improve LDS alignment check for load/store vectorization
4453- aco: don't ever widen 8/16-bit sgpr load_shared
4454- aco: use ds_read_{u8,u16}_d16
4455- aco: fix emit_mbcnt() with a VGPR mask
4456- radv: increase maxComputeSharedMemorySize
4457- nir/load_store_vectorizer: fix check_for_robustness() with indirect loads
4458- nir/opt_load_store_vectorize: check for restrict at the variable
4459- nir/opt_load_store_vectorize: only require one variable to be restrict
4460- nir: document that ACCESS_RESTRICT is not set at intrinsics
4461- radv,aco: use all attributes in a binding to obtain an alignment for fetch
4462- aco: adjust the condition for expanding vertex fetch data format
4463- aco/ra: use adjust_max_used_regs() in compact_relocate_vars()
4464- aco: don't move descriptor loads below buffer loads
4465- aco: move VMEM instructions below descriptor loads
4466- aco/lower_phis: fix undef_operands initialization with >32 predecessors
4467- aco/lower_phis: don't allocate unused temporary ids
4468- nir: use a single set during CSE
4469- nir/cse: resize the instruction set
4470- nir/propagate_invariant: add invariant_prim option
4471- radv: allow VK_FORMAT_R8G8_SRGB sampling
4472- nir/opt_load_store_vectorize: fix check_for_robustness() with deref access
4473- aco/tests: fix 32-bit build
4474- docs/envvars: fix RADV_TEX_ANISO
4475- aco: remove resource flags
4476- aco: handle NIR loops without breaks
4477- radv: enable VK_KHR_shader_subgroup_uniform_control_flow
4478- radv: don't ever convert num_records to bytes if it's zero
4479- radv: adjust num_records when offset>stride
4480- radv: use null vertex descriptor if num_records=0
4481- aco: don't create v_madmk_f32/v_madak_f32 from v_fma_legacy_f16
4482
4483Rob Clark (157):
4484
4485- freedreno: Add .clang-format
4486- freedreno: Some manual reformatting
4487- freedreno: Re-indent
4488- freedreno: Manual fixups
4489- freedreno: Add missing foreach macros and update indentation
4490- freedreno/drm: Re-indent
4491- freedreno/afuc: Re-indent
4492- freedreno/common: Re-indent
4493- freedreno/computerator: Re-indent
4494- freedreno/decode: Re-indent
4495- freedreno/drm-shim: Re-indent
4496- freedreno/ir2: Re-indent
4497- freedreno/perfcntrs: Re-indent
4498- freedreno/fdl: Re-indent
4499- ir3: handle 16b op_i2b1
4500- ci: Update kernel with a few freedreno related fixes
4501- ci: Add timeout for traces jobs
4502- freedreno: Small indent fix
4503- freedreno: Avoid staging blits with stencil on older gens
4504- freedreno: Make sure we actually flush if we need a fence
4505- freedreno: Add a couple debug traces
4506- freedreno: Allow resource shadowing for TC
4507- freedreno/drm: Move submit->primary to base class
4508- freedreno/drm: Cleanup bo allocation flags
4509- freedreno/drm: Cleanup bo cpu_prep flags
4510- freedreno/drm: Add FD_BO_PREP_FLUSH
4511- freedreno/drm: Move the growable array helper
4512- freedreno/drm: Add locked version fd_{bo,pipe}_del()
4513- freedreno/drm: Userspace fences
4514- freedreno/drm: Inline the fence-table
4515- freedreno/batch: Don't create fences for every batch
4516- freedreno: last_fence optimization for TC async flushes
4517- freedreno: Move fence struct to header
4518- freedreno: Drop unused create_fence() arg
4519- freedreno/drm: Reference count submits
4520- freedreno: Re-work fd_submit fence interface
4521- freedreno/drm: Add pipe tracking for deferred submits
4522- freedreno/drm/sp: Split submit prep and finish
4523- freedreno/drm/sp: Implement deferred submit merging
4524- freedreno: Avoid flushing deferred submits for u_trace
4525- freedreno/drm: fd_submit should hold ref to fd_pipe
4526- freedreno/drm: pipe should hold reference to device
4527- freedreno/drm: Async submit support
4528- freedreno/drm: Assume explicit fences if in_fence_fd
4529- freedreno/ci: Disable counterstrike trace on a306 for now
4530- freedreno/ci: Skip texsubmimage cube_map_array
4531- ci: Add DEQP_CASELIST_INV_FILTER
4532- freedreno/ci: Isolate dEQP-EGL reset_context tests
4533- freedreno: Remove samples-per-tex tracking
4534- freedreno/drm: Allow FD_BO_PREP_FLUSH without _NOSYNC
4535- freedreno: Flush resources harder
4536- freedreno/ci: Mark client_wait_sync_finish as flake
4537- freedreno/ci: Update piglit skips/fails
4538- freedreno/drm: Initialize control->fence
4539- freedreno: Fix TC last_fence optimization
4540- freedreno: Consolidate needs_flush and clearing last_fence
4541- freedreno/query/acc: Set needs_flush
4542- freedreno/tools: Fix async flush vs fdperf/computerator
4543- pps: Lower min sampling interval
4544- util/perfetto: Add one-time init
4545- freedreno: Add freedreno pps driver
4546- gallium/aux: Add perfetto support to u_trace
4547- freedreno/drm: Add support to query device suspend count
4548- freedreno/pps: Detect GPU suspend on newer kernels
4549- freedreno: Moar header C++-proofing
4550- freedreno: Add perfetto renderpass support
4551- pps: Add a more interesting cfg example
4552- docs/perfetto: Updates for freedreno and render-stages
4553- gallium/u_threaded: Add to_call() helper
4554- gallium/u_threaded: Add call logging
4555- freedreno/ir3: Don't force RTNE if rounding mode is undefined
4556- freedreno/a6xx: Add a few registers
4557- freedreno: Rename internal resource_busy
4558- freedreno: Implement TC resource_busy
4559- freedreno/tu+drm: Extract out pm4 pkt header helpers
4560- freedreno: Move pkt parsing helpers to common
4561- freedreno/afuc: Split out instruction decode helper
4562- freedreno/afuc: Split out utils
4563- freedreno/afuc: Clean up special regs
4564- freedreno/afuc: Add pipe reg name decoding
4565- freedreno/afuc: Add emulator mode to afuc-disasm
4566- freedreno/registers: Add a few a6xx regs and notes
4567- freedreno/afuc: Extract full gpu-id
4568- freedreno/afuc: Split out helpers to parse labels and packet-table
4569- freedreno/afuc: Add emulator support to run bootstrap
4570- freedreno/ci: Add real packet-table loading for afuc test
4571- freedreno/afuc: Use emulator to extract jmptbl
4572- freedreno/headergen2: Fix compile warnings with CP_DRAW_INDIRECT_MULTI
4573- freedreno/a6xx: Fix mh31 intermittent faults
4574- freedreno: Fix typo
4575- freedreno: Don't return a flushed batch
4576- egl: zero is a valid fd
4577- egl+libsync: Add check for valid fence-fd
4578- frontend/dri: Fix fence-fd logic
4579- freedreno/ir3: Fix use after free
4580- Revert "st/mesa: execute glFlush asynchronously if no image has been imported/exported"
4581- freedreno: Fix batch flush race condition
4582- freedreno: Fix fdperf flush
4583- gallium/u_threaded: Missing driver-thread marking
4584- freedreno: Add string-marker debug trace
4585- freedreno: Move assert
4586- freedreno: Add tid to DBG() msgs
4587- freedreno: Remove assert
4588- freedreno/registers: add A5XX_RBBM_STATUS3 bit
4589- freedreno: Add missing valid range tracking for SSBOs/images
4590- docs: Update freedreno features
4591- freedreno/ci: Sort a630 piglit xfails
4592- freedreno/a6xx: Fix r16_snorm blits
4593- freedreno/a6xx: Handle non-UBWC surface views
4594- freedreno/a6xx: Improve UBWC demotion logic
4595- freedreno: Drop obsolete comment
4596- freedreno: Don't try staging blit for non-renderable formats
4597- freedreno: Add debugging for blitter fallback recursion
4598- freedreno: Avoid recursive re-entry of u_blitter
4599- freedreno/a6xx: Handle R8G8 sharp edges in validate_format()
4600- freedreno/a6xx: Also validate format in blitter path
4601- freedreno: Flush batches on shadow/uncompress
4602- freedreno: Fallback to sw for copy_image with compressed
4603- freedreno: Fix flushes with NULL batch
4604- freedreno/blitter: Flush before self-blits
4605- freedreno/a6xx: Use UNORM for SNORM copy blits
4606- freedreno/a6xx: Handle u/snorm vs u/sint validation
4607- freedreno: Fix for multi-draw blits
4608- freedreno/a6xx: Flip on copy_image
4609- freedreno/a6xx: Skip nv_copy_image tests
4610- freedreno: Defer freeing batch->key
4611- freedreno/ci: Start longest traces first
4612- freedreno/ci: Increase # of jobs for CI runners
4613- freedreno/ci: Garbage collect some a630 flakes
4614- freedreno/a6xx: Handle fb_read in sysmem path
4615- freedreno: Flush if at risk of overflowing bos table
4616- turnip: Use drmIoctl()
4617- turnip: Fix AcquireImageANDROID() handle type
4618- turnip: Add CrOS Gralloc support
4619- nir: Add pass to lower phi precision
4620- freedreno+ir3: Enable INT16
4621- freedreno/a6xx: Fix framebuffer_barrier crash
4622- turnip: avoid some UB
4623- turnip: Split tu6_emit_xs()
4624- freedreno/computerator: Add script to probe FLUT values
4625- freedreno/ir3: Add float immed "FLUT" support
4626- freedreno: Rename \*_dev_info
4627- freedreno: Generate device-info tables at build time
4628- freedreno: Convert fd_dev_info to const pointer
4629- turnip: Convert fd_dev_info to const pointer
4630- freedreno/ir3: Get tess_use_shared from fd_dev_info
4631- freedreno/ir3: Get reg_size_vec4 from fd_dev_info
4632- turnip: Drop unused vshs_workgroup param
4633- turnip: Get storage_16bit from fd_dev_info
4634- turnip: Get indirect_draw_wfm_quirk from fd_dev_info
4635- turnip: Get has_tex_filter_cubic from fd_dev_info
4636- turnip: Get has_sample_locations from fd_dev_info
4637- freedreno+turnip: Add has_cp_reg_write
4638- freedreno+turnip: Add has_8bpp_ubwc
4639- freedreno+turnip: Get device name from device-info table
4640- freedreno+turnip: Add a6xx gen4 support
4641- freedreno/a6xx: Add missing PC_CCU_INVALIDATE_x
4642
4643Robert Foss (1):
4644
4645- freedreno/regs: add 5nm DSI PHY/PLL regs
4646
4647Robert Tarasov (1):
4648
4649- iris: Check data alignment for copy_mem_mem
4650
4651Rohan Garg (8):
4652
4653- i965: plumb device/driver UUID generators
4654- i965: Initial implementation for EXT_memory_object_*
4655- i965: Implement semaphore support for EXT_external_objects
4656- i965: Implement BufferDataMem
4657- i965: fix in fences backend for ext_external_objects edge case
4658- i965: Enable EXT_memory_object_* for Gen 7 and above
4659- docs: mark external memory and semaphore extensions done for i965
4660- ci: Don't artifact rendered images when job succeeds
4661
4662Roland Scheidegger (1):
4663
4664- llvmpipe: fix nir dot products (fsum op)
4665
4666Roman Stratiienko (7):
4667
4668- anv_android: Add missing type
4669- meson: egl: Do not build platform_drm for Android
4670- android: Add scripts to build using meson
4671- nouveau: Don't require RTTI and use it only when enabled
4672- egl: android: prepare code for adding more buffer_info getters
4673- egl: android: add IMapper@4 metadata API buffer_info getter
4674- AOSP: Do not add '-Wl,--gc-sections' to the linker arguments
4675
4676Ryan Houdek (3):
4677
4678- Default enable SSE2 on mesa builds.
4679- Switch u_format_test to passed on i386
4680- Update release notes with mention that x87 is no longer used on x86
4681
4682Sagar Ghuge (16):
4683
4684- anv: Set correct fast clear value for depth during blorp operation
4685- anv: Avoid corrupting indirect depth clear values
4686- anv: Query memory region info
4687- anv: Wrapper around I915_GEM_CREATE_EXT_MEMORY_REGIONS
4688- anv: Allocate BO in appropriate region
4689- anv: Allocate scratch and workaround BO in local memory
4690- intel/compiler: Define new LSC data port encodings
4691- intel/compiler: Add support for LSC fence operations
4692- intel/compiler: Add helpers for LSC message descriptors
4693- intel/disasm: Disassmeble LSC messages
4694- intel/disasm: Disassemble LSC message extended descriptors
4695- intel/fs: Lower untyped float atomic messages to LSC when available
4696- intel/fs: Lower Byte scattered r/w messages to LSC when available
4697- intel/fs: Lower A64 byte scattered r/w messages to LSC dataport
4698- intel/fs: Lower A64 atomic messages to LSC dataport
4699- intel/fs: Lower varying pull constant load message to LSC dataport
4700
4701Samuel Iglesias Gonsálvez (13):
4702
4703- turnip: move pipeline gras_su and rb{stencil,depth}_cntl_mask initialization
4704- turnip: initialize pipeline->rb_{stencil,depth}_cntl always
4705- turnip: refactor how LRZ state is calculated
4706- turnip/lrz: add support for VK_EXT_extended_dynamic_state
4707- turnip: document GRAS_LRZ_CNTL's UNK5 bitfield
4708- turnip/lrz: added support for depth bounds test enable
4709- turnip: fix typo in tu_CmdBeginRenderPass2()
4710- turnip: implement LRZ direction
4711- turnip: update LRZ state based on stencil test state
4712- turnip: group all geometry constant draw states in one
4713- turnip: fix setting dynamic state mask for VK_DYNAMIC_STATE_STENCIL_OP_EXT case
4714- turnip: add LRZ early-z support
4715- anv: do not dereference VkPipelineMultisampleStateCreateInfo always
4716
4717Samuel Pitoiset (130):
4718
4719- amd: drop support for LLVM 8
4720- radv: keep DCC compressed for clears on compute with image stores
4721- aco: fix opquantize2f16 on GFX6-7
4722- radv: fix fast clearing depth-only or stencil-only aspects with HTILE
4723- radv: fix emitting depth bias when beginning a command buffer
4724- radv: remove radv_image_iview::bo
4725- radv: remove radv_image_iview::multiplane_planes
4726- radv: allow concurrent MSAA images to be FMASK compressed
4727- radv: fix emitting default depth bounds state on GFX6
4728- radv/winsys: remove set but never used use_llvm
4729- radv: remove old comment about LLVM <= 8
4730- ac: move ac_lower_indirect_derefs() outside of the LLVM dir
4731- radv: cleanup LLVM related includes
4732- radv: remove RADV_DEBUG=nothreadllvm
4733- radv/winsys: fix allocating the number of CS in the sysmem path
4734- radv/winsys: fix resetting the number of padded IB words
4735- radv: make sure CP DMA is idle before executing secondary command buffers
4736- radv: remove warnings about RADV_PERFTEST=aco,llvm
4737- radv/llvm: implement the image load DCC bug
4738- radv: enable DCC stores with the LLVM backend
4739- radv: re-introduce missing skip list for Polaris10
4740- radv: fix various CMASK regressions on GFX9
4741- radv: add the provoking vertex mode to the pipeline/shader keys
4742- radv/llvm: adjust NGG if provoking vertex mode is last
4743- aco: adjust NGG if provoking vertex mode is last
4744- radv: implement VK_EXT_provoking_vertex
4745- radv: enable TC-compat CMASK on GFX8-9
4746- radv: fix computation of the number of user SGPRS for NGG GS state
4747- radv: check if DCC is enabled when resolving different levels
4748- radv: only keep concurrent MSAA images compressed if TC-compat CMASK
4749- radv/winsys: add GFX6_MAX_CS_SIZE instead of using a magic value
4750- radv/winsys: fix executing huge secondary command buffers on GFX6
4751- radv: implement RADV_FORCE_VRS for the LLVM backend
4752- util/math: change ROUND_DOWN_TO to return a uint64_t
4753- radv: adjust the computation of the total usage of memory used
4754- radv: expose 2/3rd of total memory as VRAM and 1/3rd as GTT on APUs
4755- radv: fix missing ITERATE_256 for D/S MSAA images that are TC-compat HTILE
4756- radv: declare VK_EXT_extended_dynamic_state2 but leave it disabled
4757- radv: declare new dynamic states for VK_EXT_extended_dynamic_state2
4758- radv: implement dynamic depth bias enable
4759- radv: implement dynamic primitive restart enable
4760- radv: implement dynamic rasterizer discard enable
4761- radv: advertise VK_EXT_extended_dynamic_state2
4762- radv: fix extending the dirty bits to 64-bit
4763- radv: dump the trap handler shader with RADV_DEBUG=metashaders
4764- nir/opt_access: fix getting variables in presence of similar bindings/desc
4765- radv: add missing entrypoints for VK_EXT_extended_dynamic_state2
4766- radv: enable DCC stores on RDNA2
4767- aco: fix derivatives/intrinsics with SGPR sources
4768- Revert "radv: Do not access set layout during vkCmdBindDescriptorSets."
4769- radv: fix heap indices when computing the budget
4770- ac: ac_gpu_info::has_vgt_flush_ngg_legacy_bug
4771- radv: fix fast clearing DCC if one level can't be compressed on GFX10+
4772- radv: simplify radv_pipeline_has_gs_copy_shader()
4773- radv: remove small overhead of radv_pipeline_has_ngg()
4774- radv: ignore dynamic blend constants if blend isn't enabled
4775- radv: remove an useless TODO for dynamic line width
4776- radv: pass an image range to radv_layout_dcc_compressed()
4777- radv: remove redundant call to radv_dcc_enabled()
4778- radv: only mark DCC as compressed when drawing if layout allows it
4779- radv: only init DCC if compressed in the HW resolve path
4780- radv: do not decompress DCC for partial resolves if stores are supported
4781- radv: use radv_dcc_enabled() for the FB mip flush workaround
4782- aco: fix emitting discard when the program just ends
4783- radv: stop reporting ACO from the device name
4784- radv: remove DFSM
4785- util/drirc: make engine_versions an optional field
4786- radv: add few new drirc options
4787- util/drirc: use application_name_match for the SotTR RADV workaround
4788- radv: move all game workarounds to drirc
4789- radv: fix missing default state for DB_DFSM_CONTROL
4790- radv: fix generating hang reports if mutable descriptors are used
4791- radv: enable RADV_DEBUG=invariantgeom for Monster Hunter World
4792- ac/rgp: mark SQTT_FILE_CHUNK_TYPE_ISA_DATABASE as deprecated
4793- ac/rgp: bump the SQTT file minor version to 5
4794- radv: enable RADV_DEBUG=invariantgeom for SotTR DX11/DX12 versions
4795- ac: import performance counters from RadeonSI
4796- ac: rename ac_dump_thread_trace() to ac_dump_rgp_capture()
4797- ac/rgp: fix ac_fill_sqtt_asic_info() name
4798- ac: add ac_thread_trace::data
4799- radv/winsys: allow to reserve a VMID
4800- radv: emit PA_SC_CONSERVATIVE_RASTERIZATION_CNTL only on GFX9+
4801- ac/debug: fix color printing PKT3 when count in header is too low
4802- aco: fix range checking for SSBO loads/stores with SGPR offset on GFX6-7
4803- radv: dump SPIR-V instead of using spirv-dis when generating a hang report
4804- aco: fix emitting literal offsets with SMEM on GFX7
4805- ci: update list of expected failures for Pitcairn/Oland (RADV)
4806- radv: do not launch an IB2 for secondary cmdbuf with INDIRECT_MULTI on GFX7
4807- radv/winsys: add a small comment explaining the CHAIN bit
4808- ci: add expected list of failures for Bonaire (RADV)
4809- radv: fix aligning the image offset by using align64()
4810- radv/winsys: adjust some error messages
4811- radv/winsys: remove useless errno.h includes
4812- radv: fix dynamic rasterizer discard enable state
4813- radv: reject binding buffer/image when the device memory is too small
4814- radv: always decompress both aspects of a depth/stencil image
4815- radv: create only one pipeline for decompressing depth/stencil images
4816- radv: fix dynamic culling and depth/stencil related dynamic states
4817- ac/perfcounters: remove ac_pc_block_base::num_prelude
4818- ac/perfcounters,radeonsi: rework performance counters layout
4819- ac/perfcounters: rename num_multi to num_spm_counters
4820- ac/perfcounters: add more SPM configuration fields
4821- ac/perfcounters: add a GPU block ID to every block definitions
4822- radv: implement dynamic logic op
4823- radv: advertise extendedDynamicState2LogicOp
4824- radv: fix RADV_FORCE_VRS for 2x1 and 1x2
4825- radv: fix fd leak in vkAcquireImageANDROID()
4826- radv: disable DCC for DOOM 2016 and Wolfenstein II
4827- radv: implement VK_EXT_color_write_enable
4828- radv: advertise VK_EXT_color_write_enable
4829- radv: add support for more HTILE clear codes
4830- radv: prevent fast clearing HTILE depth for unrestricted ranges
4831- radv: allow more fast clears for depth surfaces without TC-compat HTILE
4832- ci: update list of expected failures against CTS 1.2.6.2 for RADV
4833- ci: remove few CTS that are now skipped with RADV
4834- aco: fix emitting d16 for MIMG instructions on GFX9+
4835- aco: fix emitting a16 for MIMG instructions on GFX10+
4836- aco: fix shared_atomic_comp_swap if the second source isn't a VGPR
4837- radv: fix applying radv_disable_dcc for DOOM and Wolfenstein II
4838- aco: use nir_ssa_def_is_unused() to determine if atomic dest is used
4839- ac,radv: implement the cs_regalloc_hang HW bug workaround
4840- radv: fix applying radv_disable_dcc for DOOM 2016 again
4841- radv: lower primitive shading rate in NIR
4842- radv: only init the TC-compat ZRANGE metadata for the depth aspect
4843- radv: fix bounds checking for zero vertex stride on GFX6-7
4844- radv: report APUs as discrete GPUs for Red Dead Redemption 2
4845- radv: fix specifying the stencil layout for separate depth/stencil layouts
4846- radv: allow unused VkSpecializationMapEntries
4847- radv: fix selecting the first active CU when profiling with SQTT
4848- radv: fix missing cache flushes when clearing HTILE levels on GFX10+
4849
4850Sergii Melikhov (1):
4851
4852- util/format: Change the pointer offset.
4853
4854Simon Ser (27):
4855
4856- radeon/vcn: handle tiled buffers when decoding
4857- util/format: document block depth field
4858- ac/surface: use blocksizebits instead of blocksize
4859- radeonsi: stop special-casing YUV formats in si_query_dmabuf_modifiers
4860- ac/surface: allow non-DCC modifiers for YUV on GFX9+
4861- frontends/va: improve surface attribs processing
4862- gallium, va: add support for VASurfaceAttribDRMFormatModifiers
4863- radeonsi: implement pipe_context.create_video_buffer_with_modifiers
4864- radv: stop special-casing multi-planar formats in radv_get_modifier_flags
4865- dri: add createImageWithModifiers2 interface
4866- gallium/dri: implement createImageWithModifiers2
4867- i965: implement createImageWithModifiers2
4868- vulkan/wsi/wayland: simplify wl_surface version check
4869- docs/envvars: document MESA_VK_WSI_PRESENT_MODE
4870- radv: implement VK_EXT_physical_device_drm
4871- amd/addrlib: remove Meson debug message()
4872- vulkan/wsi: unify format logic in dmabuf_handle_modifier
4873- vulkan/wsi: prefer the Wayland linux-dmabuf protocol
4874- vulkan/wsi/wayland: remove swapchain wl_drm wrapper
4875- vulkan/wsi/wayland: remove unnecessary wl_proxy_set_queue call
4876- vulkan/wsi/wayland: fix wsi_wl_image_init error code
4877- vulkan/wsi/wayland: handle dmabuf params allocation failure
4878- etnaviv: fix renderonly check in etna_resource_alloc
4879- etnaviv: fail in get_handle(TYPE_KMS) without a scanout resource
4880- freedreno: fail in get_handle(TYPE_KMS) without a scanout resource
4881- panfrost: fail in get_handle(TYPE_KMS) without a scanout resource
4882- lima: fail in get_handle(TYPE_KMS) without a scanout resource
4883
4884Simon Zeni (4):
4885
4886- vulkan/wsi: add drm_fd param to wsi_display_get_connector
4887- vulkan/wsi: Implement VK_EXT_acquire_drm_display
4888- radv: Implement VK_EXT_acquire_drm_display
4889- anv: Implement VK_EXT_acquire_drm_display
4890
4891Steve Pronovost (1):
4892
4893- d3d12: Add mechanism for D3D12 Adapter Selection
4894
4895Stéphane Marchesin (1):
4896
4897- virgl: resources without any binding can be cached
4898
4899SureshGuttula (3):
4900
4901- frontends/va/picture:Fix wrong reallocation even surface is protected
4902- frontends/va: Derive image from interlaced buffers for h26[4/5]encode
4903- radeon/vcn: calc_dpb_size should be based on dpb_type
4904
4905Tapani Pälli (21):
4906
4907- anv: do not support image export with stencil aspect set
4908- glx: fix compilation error when function name not found
4909- glsl: ignore interface precision qualifier on desktop GL
4910- glx: revert "Downgrade sRGB-ful fbconfigs"
4911- i965: support only color formats with memory objects
4912- nir: skip assert check with empty structs
4913- isl: require hiz for depth surface in isl_surf_get_ccs_surf
4914- anv: require rendering support for blit destination feature
4915- mesa: fix error set for glCompressedTexSubImage calls
4916- gitlab-ci: enable building of Vulkan tests in Piglit
4917- anv: introduce new dynamic states
4918- anv: support rasterizer discard dynamic state
4919- anv: support depth bias enable dynamic state
4920- anv: support primitive restart enable dynamic state
4921- anv: centralize vk_to_intel_logic_op array
4922- anv: support blending logic op dynamic state
4923- anv: toggle on VK_EXT_extended_dynamic_state2
4924- docs: add VK_EXT_extended_dynamic_state2 features.txt entry
4925- anv: provide dummy vkCmdSetPatchControlPointsEXT
4926- iris: take a reference to memobj bo in iris_resource_from_memobj
4927- anv: fix emitting dynamic primitive topology
4928
4929Thomas H.P. Andersen (9):
4930
4931- nir: return progress from nir_lower_packing
4932- nir/lower_packing: use shader_instructions_pass
4933- anv: remove dead code
4934- nir/ifind_msb_rev: fix input check
4935- zink: remove initialization override
4936- lavapipe: remove initialization override
4937- broadcom/compiler: use correct flag enum
4938- broadcom/compiler: fix add vs. mul
4939- nine: Fix assert in tx_src_param
4940
4941Thong Thai (1):
4942
4943- radeon/vcn/enc: Add missing line to HEVC SPS header code
4944
4945Timothy Arceri (23):
4946
4947- mesa: fix incomplete GL_NV_half_float implementation
4948- mesa: make _mesa_find_temp_intervals() a static function
4949- mesa: fix _mesa_add{_typed}_unnamed_constant() declarations
4950- mesa: fix _mesa_add_state_reference() declaration mismatch
4951- mesa: fix glShaderSource() error handling
4952- util: disable glthread in CSGO
4953- glsl: create validate_component_layout_for_type() helper
4954- glsl: add missing support for explicit components in interface blocks
4955- nir/lower_io_to_vector: fix per vertex io handling for arrays
4956- Revert "util: disable glthread in CSGO"
4957- util: add work around for the game We Happy Few
4958- util/tests: initialise key in cache_test
4959- mesa: don't crash on incorrect texture use
4960- i965: don't crash on incorrect texture use
4961- glsl: force_glsl_version to shaders with no defined version
4962- util/driconf: add new ignore_write_to_readonly_var workaround
4963- util: add some workarounds for the game Luna Sky
4964- util/disk_cache: delete more cache items in one go when full
4965- util/radeonsi: add radeonsi workaround for Nuclear Throne
4966- glsl: replace some C++ code with C
4967- util: add workaround for Full Bore
4968- glsl: relax rule on varying matching for shaders older than 4.20
4969- intel/compiler: make sure swizzle is applied to if condition
4970
4971Timur Kristóf (74):
4972
4973- aco: Mark VCC clobbered for iadd8 and iadd16 reductions on GFX6-7.
4974- radv: Ignore GS copy shader when determining NGG GS wave size.
4975- radv: Properly enable Wave32 mode for NGG GS.
4976- nir: Support upper bound of subgroup_id/num_subgroups for non-compute.
4977- nir: Support upper bound of unsigned bit size conversions.
4978- nir: Allow load_primitive_id in VS in nir_divergence_analysis.
4979- nir: Add AMD specific intrinsics for merged shaders and NGG.
4980- aco: Allow workgroup barrier and shared scope for NGG shaders.
4981- aco: Fixup the NIR metadata after sanitize_cf_list.
4982- aco: Split ngg_emit_sendmsg_gs_alloc_req from the wave0 check.
4983- radv: Fill shader info earlier.
4984- radv: Gather NGG info sooner.
4985- aco: Implement new NGG specific NIR intrinsics.
4986- ac: Add new NIR pass to lower NGG VS/TES.
4987- radv: Use new NGG NIR lowering for VS/TES when ACO is used.
4988- ac: Add NIR lowering for NGG GS.
4989- radv: Use new NIR lowering of NGG GS when ACO is used.
4990- aco: Determine whether a few more instructions need exec.
4991- aco: Use Operand instead of Temp for the exec mask stack.
4992- aco: Remember when exec mask is const, and restore the const then.
4993- aco: Don't use s_and_saveexec with branches when exec is constant.
4994- aco: Refactor SSA elimination phi info to use vector instead of map.
4995- aco: Eliminate useless exec writes in jump threading.
4996- aco/insert_exec_mask: Fixed unused variable warning in release build.
4997- aco/util: Initialize IDSet::bits_set to zero.
4998- gallium/tessellator: Fix uninitialized variable warnings.
4999- anv: Fix unused function warnings for memory range checks.
5000- gallivm: Fix a few uninitialized variable warnings.
5001- nine: Fix uninitialized warning in texture9.c
5002- radv/cmd_buffer: Fix warning by initializing instance count.
5003- aco: Don't eliminate exec write when it's used by a copy later.
5004- aco: Don't DCE instructions that write non-temps, eg. exec.
5005- aco: Add Operand(Temp, PhysReg) constructor.
5006- aco: New writeout overloads for the test framework.
5007- aco: Introduce a new, post-RA optimizer.
5008- aco: Use s_cbranch_vccz/nz in post-RA optimization.
5009- aco: Eliminate SALU comparison when SCC can be used instead.
5010- radv: Remove duplicate code for getting GS info.
5011- radv: Don't generate GS copy shader when the pipeline has NGG.
5012- radv: Assert that there is no GS copy shader when the pipeline has NGG.
5013- aco: Add note about v_alignbyte in the ISA README.
5014- nir: Add nir_op_sad_u8x4 which corresponds to AMD's v_sad_u8.
5015- aco: Implement nir_op_sad_u8x4.
5016- aco: Add validation for v_permlane instructions.
5017- nir: Add AMD-specific byte and lane permute intrinsics.
5018- aco: Implement byte and lane permute intrinsics.
5019- aco: Keep VGPR destinations for uniform shared loads when beneficial.
5020- ac/nir: Refactor and optimize the repacking sequence.
5021- amd: Add extra source to the mbcnt_amd NIR intrinsic.
5022- aco: Use as_vgpr for the second source of mbcnt_amd.
5023- ac/nir: Update TCS output barriers with nir_var_mem_shared.
5024- aco: Fix checking if load_shared is used by cross lane instructions.
5025- radv/llvm: Emit s_barrier at the beginning of NGG non-GS shaders.
5026- aco/gfx10: NGG zero output workaround for conservative rasterization.
5027- aco/gfx10: Emit barrier at the start of NGG VS and TES.
5028- radv: Add last_vgt_api_stage and use it to simplify some code.
5029- radv: Move radv_optimize_nir_algebraic to a separate function.
5030- radv: Allow enabling vertex grouping, fix NGG info with it disabled.
5031- radv: Set parameter cache oversubscription according to the PC lines.
5032- nir: Add AMD specific intrinsics for NGG shader based culling.
5033- ac/nir: Add a NIR port of ac_llvm_cull.
5034- ac/nir: Use a ballot that matches the wave size during NGG lowering.
5035- ac/nir: Implement NGG deferred attribute culling in NIR.
5036- radv: Expose radv_get_viewport_xform in radv_private.h
5037- radv: New shader args for NGG culling settings and viewport.
5038- aco: Implement NGG culling related intrinsics.
5039- radv: Support NGG culling with new perftest environment variable.
5040- radv: Run algebraic optimizations before NGG lowering.
5041- ac/nir: Reuse the repacked output positions of culling shaders.
5042- ac/nir: Analyze culling shaders to remember which inputs are used when.
5043- ac/nir: Reuse uniforms from top part of culling shaders.
5044- radv, aco, ac/nir: Tweak position export scheduling for NGG culling.
5045- radv: Don't compile NGG culling into shaders that write viewport index.
5046- radv: Remove num_viewports from radv_skip_ngg_culling.
5047
5048Tomeu Vizoso (51):
5049
5050- ci: Reenable radeonsi jobs, and extend coverage
5051- ci/lava: Build all piglit profiles in LAVA images
5052- ci/lava: Update kernel for LAVA to 5.11
5053- ci/lava: Start Xorg on request, for Piglit
5054- ci: Test RadeonSI with piglit's quick_gl
5055- ci: Use a single kernel+rootfs for both baremetal and LAVA jobs
5056- ci: Drop hack to disable all modules from defconfig
5057- ci/radeonsi: Add expected failures due to #4674 having slipped in
5058- panfrost/ci: Enable some dEQP 3.1 tests on Mali T860
5059- Revert "CI: Disable Panfrost and radeonsi"
5060- panfrost: Don't access members of NULL pointers
5061- pan/midgard: Don't emit zero padding
5062- ci: Remove the need for an empty Piglit results file
5063- Revert "CI: Disable all Panfrost/AMD/Iris automatic jobs"
5064- ci: Update kernel to v5.13-rc2
5065- panfrost/ci: Test Panfrost on the Mali G72 GPU
5066- panfrost/ci: Add one more flake test for G72
5067- radv/ci: Test on Stoney on CI
5068- ci/lava: Add caching proxies for trace downloads
5069- ci/piglit: Use wget instead of ci-fairy to check a file exists
5070- ci: Configure DUTs for max performance
5071- ci: Uprev piglit to eee7d89611cf "tests: Replay profile frame times"
5072- ci: Uprev apitrace to 170424754bb4 "retrace: Get --loop to work without rewinding"
5073- radeonsi/ci: Add new Piglit failures
5074- ci/freedreno: Add depth32f_stencil8 flakes
5075- ci/zink: Add nearest_linear_mirror_l8_pot flake
5076- ci/freedreno: Fix name of flake
5077- ci/freedreno: Add new flake after "ci: Configure DUTs for max performance"
5078- ci/freedreno: Add spec\@arb_copy_buffer\@dlist flake on a530
5079- Partial revert of "ci: Add a manual job for tracking the performance of Freedreno"
5080- ci/freedreno: Skip Portal 2 trace on a630, due to flakiness
5081- Revert "ci/freedreno: Skip Portal 2 trace on a630, due to flakiness"
5082- ci/lava: Disable CPU frequency scaling
5083- ci/lava: Switch LAVA jobs to x86 runners
5084- ci: Disable windows builds due to runner not being available
5085- ci: Build Crosvm in our container
5086- ci: Move Kernel build tasks into its own file
5087- ci: Store the credentials in /tmp
5088- ci: Run tests inside Crosvm
5089- iris/ci: Update the checksums for the pixmark-piano trace
5090- panfrost/ci: Add some failures that crept in
5091- ci/lava: Improve error reporting in lava_job_submitter.py
5092- ci/lava: Don't overwrite PIGLIT_REPLAY_EXTRA_ARGS
5093- Revert "ci: Disable the iris APL jobs"
5094- ci/bare-metal: Add parens around shell command
5095- panfrost: Fork pan_pool for Gallium and Vulkan
5096- panvk: Add VkCommandPool support
5097- panvk: Support calls to CreateDescriptorSetLayout without bindings
5098- panvk: Make panvk_queue_transfer_sync more generic
5099- panfrost: Specify alignment for the Job Header descriptor
5100- panvk: Add vkEvents support
5101
5102Tony Wasserka (18):
5103
5104- radv: Remove assert about pDepthStencilState
5105- aco/spill: Fix improper handling of exec phis
5106- aco/scheduler: Fix register demand computation for downwards moves
5107- aco/scheduler: Fix register demand computation for upwards moves
5108- aco/scheduler: Verify register demand invariants in debug mode
5109- util: add support for defining bitwise operators on strongly typed enums
5110- util: tune signatures of generated enum operators
5111- aco/scheduler: Clean up register demand tracking
5112- aco/scheduler: Move cursor handling state to dedicated interfaces
5113- aco/ra: Fix off-by-one-error in print_regs
5114- aco/ra: Clean up print_regs output and support byte-allocated variables
5115- aco/ra: Split print_regs by lines of 64 registers
5116- aco: Replace Operand literal constructors with factory member functions
5117- aco: Remove use of deprecated Operand constructors in test_to_hw_instr.cpp
5118- aco: Remove use of deprecated Operand constructors in aco_builder.h
5119- aco: Remove use of deprecated Operand constructors
5120- aco: Clean up unneeded literal casts
5121- aco: Remove deprecated Operand constructors
5122
5123Vasily Khoruzhick (3):
5124
5125- lima: switch resource to linear layout if there's to many full updates
5126- lima: implement alpha test
5127- lima: handle fp16 vertex formats
5128
5129Ville Syrjälä (2):
5130
5131- i915: Implement __DRI_IMAGE_ATTRIB_OFFSET query
5132- i915: Implement __DRI2_FLUSH version 4
5133
5134Vinson Lee (17):
5135
5136- clover: Add constructor for constant_argument.
5137- glx: Fix macOS build.
5138- nv50/ir: Initialize Graph::Node member tag.
5139- nvc0: Remove unnecessary bsp_bo NULL check.
5140- nv50/ir: Initialize BuildUtil member tail.
5141- nv50/ir: Initialize CodeEmitterNV50 member progType.
5142- nv50/ir: Initialize GCRA::RIG_Node members.
5143- nvc0/ir: Initialize CodeEmitterGK110 member progType in constructor.
5144- nv50/ir: Add ConstantFolding constructor.
5145- travis: Download XQuartz from GitHub.
5146- v3dv: Fix assert.
5147- nvc0/ir: Initialize CodeEmitterNVC0 member progType in constructor.
5148- intel/vec4: Add missing break statement.
5149- nvc0/ir: Initialize Limits members in constructor.
5150- asahi: Fix macOS macro.
5151- st/xa: Mark default xa_get_pipe_format case unreachable.
5152- asahi: Move assignment after null check.
5153
5154Yevhenii Kolesnikov (3):
5155
5156- intel: fix leaking memory on shader creation
5157- glsl: Add operator for .length() method on implicitly-sized arrays
5158- glsl: Properly handle .length() of an unsized array
5159
5160Yiwei Zhang (79):
5161
5162- venus: update venus-protocol headers
5163- venus: implement dma_buf fd import and properties query
5164- venus: cap api version to 1.1 for Android
5165- venus: fix virtgpu_bo_init_dmabuf for classic resource
5166- venus: close the import memory fd on success
5167- venus: force a roundtrip after vn_renderer_bo_create_dmabuf
5168- venus: set bo->size to 0 for classic resource
5169- venus: update venus-protocol headers
5170- venus: implement VK_ANDROID_native_buffer v7
5171- venus: use VK_EXT_image_drm_format_modifier
5172- venus: update venus-protocol headers
5173- venus: enable VK_EXT_queue_family_foreign
5174- venus: handle VK_IMAGE_LAYOUT_PRESENT_SRC_KHR transfer
5175- venus: handle wsi image queue ownership transfer for Android
5176- venus: query extended resource info from gralloc
5177- venus: populate VK_ERROR_OUT_OF_HOST_MEMORY if applied
5178- virgl: do not use winsys info for guest storage of classic resource
5179- venus: fix vkEnumeratePhysicalDeviceGroups
5180- venus: stop advertising KHR_driver_properties for Android
5181- venus: clean up vn_android api names
5182- venus: add AHB format and VkFormat conversion helper functions
5183- venus: add vn_android_get_ahb_usage helper function
5184- venus: add ahb image and buffer properties query support
5185- venus: vn_GetAndroidHardwareBufferPropertiesANDROID (part 1/2)
5186- venus: vn_GetAndroidHardwareBufferPropertiesANDROID (part 2/2)
5187- anv: fix AHB leak upon exportable allocation
5188- radv: fix AHB leak upon exportable allocation
5189- gallium/st: add a back buffer fallback for front rendering
5190- gallium/dri: implement EGL_KHR_mutable_render_buffer
5191- egl/android: check front rendering support for cros gralloc
5192- venus: tiny refactor of vn_android_get_gralloc_buffer_info
5193- venus: complete the format conversion between AHB and Vulkan
5194- venus: fix vn_GetAndroidHardwareBufferPropertiesANDROID
5195- venus: fix AHB image format properties query
5196- venus: prepare image creation helpers for AHB
5197- venus: implement image creation for ahb handle type
5198- venus: refactor device memory fd import
5199- venus: implement AHB allocation and import (part 1/2)
5200- venus: implement AHB allocation and import (part 2/2)
5201- venus: implement vn_GetMemoryAndroidHardwareBufferANDROID
5202- venus: support AHB external format for sampler YCbCr conversion
5203- venus: advertise VK_ANDROID_external_memory_android_hardware_buffer
5204- venus: rename dmabuf to dma_buf when it represents a type
5205- venus: fix misaligned bo_flags between import and query
5206- venus: refactor for property query of dma_buf fd
5207- venus: fix mismatched bo mmap_size for export and multiple imports
5208- venus: initial AHB support for multi-planar format
5209- venus: update to the latest venus protocol
5210- venus: support AHB prop query with host dma_buf size
5211- venus: refactor gralloc buffer and drm modifier properties query
5212- venus: unify VkNativeBufferANDROID and AHardwareBuffer image create info
5213- venus: forward the host renderer hardware info
5214- egl/android: fix cached buffer slots for EGL Android winsys
5215- egl/android: refactor to use the legit vndk/window.h header
5216- vulkan: fix back compat with Android Oreo and below
5217- egl/android: add aosp_nougat system/window.h back for back compat
5218- virgl: forward the host renderer hardware info
5219- anv: fix Android WSI VkFence
5220- venus: silence a build warning
5221- venus: refactor vn_AcquireImageANDROID with globalFencing
5222- venus: moves GPU rendering off CPU timeline for Android WSI
5223- venus: add debug info for experimental features during init
5224- radv: fix build errors after commit 8b7ff784
5225- anv: fix build errors after commit 8b7ff78
5226- venus: remove workarounds for multi-planar format interop
5227- anv: fix some log formats
5228- anv: support multi-planar format in add_all_surfaces_explicit_layout
5229- anv: enable multi-planar support for drm format modifier
5230- venus: properly support GPU_DATA_BUFFER for AHB
5231- venus: use the mesa "drm-uapi/drm_fourcc.h" header
5232- venus: remove unsupported AHB formats
5233- venus: resolve AHB external format with DRM format
5234- venus: add more logs for Android WSI debugging
5235- venus: prepare vn_CreateBuffer for AHB
5236- venus: handle ahb backed VkBuffer creation properly
5237- venus: fix AHB VkBuffer memory requirement
5238- egl/android: only apply front rendering usage in shared buffer mode
5239- egl/android: restore image creation fallback path used by virgl
5240- venus: cache ahb backed buffer memory type bits requirement
5241
5242Yogesh Mohanmarimuthu (4):
5243
5244- radv: set RADEON_FLAG_GTT_WC flag for prime memory
5245- glx: Keep display fd open for prime
5246- glx: create DRI screen for display GPU incase of prime
5247- loader: allocate VRAM in display GPU in case of prime
5248
5249Yurii Kolesnykov (1):
5250
5251- c_std=c11 in meson default_options
5252
5253Zhaofeng Li (1):
5254
5255- Add default driver selections for RISC-V
5256
5257Zhu Yuliang (1):
5258
5259- gallium/vl: don't leak fd in vl_dri3_screen_create
5260
5261Zoltán Böszörményi (2):
5262
5263- crocus:	Add pipe loader driver
5264- crocus: Make the driver loader use PCI IDs for crocus
5265
5266cheyang (1):
5267
5268- virgl:Fix the leak of hw_res used as fence
5269
5270luc (1):
5271
5272- panfrost: Only clear existing color buffers
5273