1Mesa 20.2.0 Release Notes / 2020-09-28
2======================================
3
4Mesa 20.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 20.2.1.
7
8Mesa 20.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 20.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    63f0359575d558ef98dd78adffc0df4c66b76964ebf603b778b7004964191d30  mesa-20.2.0.tar.xz
25
26
27New features
28------------
29
30- GL_ARB_compute_variable_group_size on Iris.
31
32- GL_ARB_gpu_shader5 on llvmpipe
33
34- GL_ARB_post_depth_coverage on llvmpipe
35
36- GLES 3.2 on llvmpipe
37
38- GL_EXT_shader_group_vote on GLES3.
39
40- GL_EXT_texture_shadow_lod on llvmpipe
41
42- VK_AMD_texture_gather_bias_lod on RADV.
43
44- VK_AMD_gpu_shader_half_float on RADV/ACO.
45
46- VK_AMD_gpu_shader_int16 on RADV/ACO.
47
48- VK_EXT_extended_dynamic_state on ANV and RADV.
49
50- VK_EXT_image_robustness on RADV.
51
52- VK_EXT_private_data on ANV and RADV.
53
54- VK_EXT_custom_border_color on ANV and RADV.
55
56- VK_EXT_pipeline_creation_cache_control on ANV and RADV.
57
58- VK_EXT_shader_demote_to_helper_invocation on RADV/LLVM.
59
60- VK_EXT_subgroup_size_control on RADV/ACO.
61
62- VK_GOOGLE_user_type on ANV and RADV.
63
64- VK_KHR_shader_subgroup_extended_types on RADV/ACO.
65
66- GL_ARB_gl_spirv on nvc0/nir.
67
68- GL_ARB_spirv_extensions on nvc0/nir.
69
70- RADV now uses ACO per default as backend
71
72- RADV_DEBUG=llvm option to enable LLVM backend for RADV
73
74- VK_EXT_image_robustness for ANV
75
76- VK_EXT_shader_atomic_float on ANV
77
78- VK_EXT_4444_formats on ANV and RADV.
79
80- VK_KHR_memory_model on RADV.
81
82- GL 4.5 on llvmpipe
83
84- EGL_KHR_swap_buffers_with_damage on X11 (DRI3)
85
86
87Bug fixes
88---------
89
90- [Regression][Bisected][20.2][radeonsi] American Truck Simulator continually allocates memory until OOM
91- anv: dEQP-VK.robustness.robustness2.* failures on gen12
92- [RADV] Problems reading primitive ID in fragment shader after tessellation
93- Massive memory leak (at least AMD, others unknown)
94- Substance Painter 6.1.3 black glitches on Radeon RX570
95- vkCmdCopyImage broadcasts subsample 0 of MSAA src into all subsamples of dst on RADV
96- Crash in ruvd_end_frame when calling vaBeginPicture/vaEndPicture without rendering anything
97- X-Plane 11 Installer crashes on startup since `glsl: declare gl_Layer/gl_ViewportIndex/gl_ViewportMask as vs builtins`
98- Horizon Zero Dawn graphics corruption with with radv
99- Amber test opt_peel_loop_initial_if: Assertion failed
100- Dirt Rally: Flickering glitches on certain foliage since Mesa 20.1.0 caused by MSAA
101- [BRW] WRC 5 asserts with gallium nine and iris.
102- radv: Corruption in "The Surge 2"
103- [RADV] Detroit: Become Human Demo game lock-ups with RADV
104- Road Redemption certain  graphic effects rendered white color
105- vulkan/wsi/x11: deadlock with Xwayland when compositor holds multiple buffers
106- [RADV/ACO] Death Stranding cause a GPU hung (*ERROR* Waiting for fences timed out!)
107- lp_bld_init.c:172:7: error: implicit declaration of function ‘LLVMAddConstantPropagationPass’; did you mean ‘LLVMAddCorrelatedValuePropagationPass’? [-Werror=implicit-function-declaration]
108- Intel Vulkan driver crash with alpha-to-coverage
109- EGL_KHR_swap_buffers_with_damage support on X11
110- radv: blitting 3D images with linear filter
111- [ACO] Compiling pipelines from RPCS3's shader interpreter spins forever in ACO code
112- Intel Vulkan driver assertion with small xfb buffer
113- [spirv-fuzz] SPIR-V parsing failed "src->type->type == dest->type->type"
114- radeonsi: radeonsi crashes in Chrome on chromeos
115- [RADV] commit d19bc94e4eb94 broke gamescope with Navi
116- 4e3a7dcf6ee4946c46ae8b35e7883a49859ef6fb breaks Gamescope showing windows properly.
117- anv: crashes in CTS test dEQP-VK.subgroups.*.framebuffer.*_tess_eval
118- Intel Vuikan (anv) crash in copy_non_dynamic_state() when using validation layer
119- Mafia 3: Trees get rendered incorrectly
120- radv: dEQP-VK.synchronization.op.multi_queue.timeline_semaphore.write_clear_attachments_*_concurrent fail when forcing DCC.
121- Crash on GTA 5 through proton 5.0.9 and GE versions
122- Mesa 20.2.0-rc1 fails to build for AMD
123- Assertion failure compiling shader from Zigguart
124- Panfrost locks for waiting fence when running Source engine games
125- ci: `-Dtools=panfrost` should be build-tested
126- panfrost: Register allocation fails for Firefox WebRender shaders
127- VRAM leak with vuilkan external memory + opengl memory objects
128- [vulkan/build] Recent build system changes made VK_EXT_acquire_xlib_display unnecessarily depend on GBM
129- ci: Capture devcoredumps on chezas
130- Possible array out of bounds in brw_vec4_nir.cpp
131- freedreno/a6xx: incorrect rendering in asphalt 9
132- [tgl][bisected][regression][iris] failure on dEQP-EGL.functional.wide_color.pbuffer_8888_colorspace_default
133- Multiply defined symbols compiling with gcc@10.1.0
134- shrinking descriptor pool on intel+vulkan
135- dEQP-VK.renderpass2.dedicated_allocation.attachment.1.12 fails on NAVI14
136- turnip: binning and indirect dependency
137- Amber test leads to NIR validation failed after nir_opt_if (on spirv-fuzz shader)
138- Unable to compile mesa-git from b559d26c
139- Ambient light too bright with ACO in AC: Odyssey
140- Multiple issues with Detroit Become Human
141- ci: Capture artifacts in baremetal mode
142- turnip/ir3: fine derivatives
143- panfrost: regression: Major stuttering and low compositor FPS with glmark2
144- khr_debug-push-pop-group_gl: ../src/util/simple_mtx.h:86: simple_mtx_lock: Assertion \`c != _SIMPLE_MTX_INVALID_VALUE' failed.
145- freedreno/a6xx: skai/skqp fails
146- SPIR-V parsing fails in src/compiler/spirv/spirv_to_nir.c
147- SPIR-V parsing fails in src/compiler/spirv/vtn_cfg.c
148- Weird GLSL bug
149- iris driver is broken in Freedesktop 19.08
150- LLVM not properly shutdown in `si_pipe.c`?
151- Panfrost: add current status to docs/features.txt
152- Opengl incorrect rendering on yuzu Amd
153- RADV: VK_ACCESS_MEMORY_READ/WRITE_BIT is not implemented
154- [bisected][regression][all platforms] multiple deqp-gles31/glescts/piglit failures
155- 7406ea37, "ac/surface: require that gfx8 doesn't have DCC in order to be displayable", breaks Gamescope being able to launch games on RX580, and possibly other gfx8 cards
156- vkGetSemaphoreCounterValue doesn't update without vkWaitSemaphores calls on Intel UHD 620
157- [RADV] System crash when playing XCOM Chimera Squad because of commit #7a5e6fd2
158- [RADV] Non-precise occlusion queries return non-zero when all fragments are discarded
159- [DXVK] Project Cars rendering problems
160- ADDRLIB ODR Violation
161- Build fails with current mesa from git "undefinierter Verweis auf »nir_lower_clip_disable«"
162- KDE Compositor stuttering after Check for window destruction in dri3_wait_for_event_locked
163- Add fallthrough to prevent errors caused by missing break
164- i965/20.1: gray rendering with torcs racing
165- glBindBufferRange call seems to be ignored by one of two shader-programs on radeon cards
166- [bisected][g33] piglit.spec.ext_framebuffer_object.fbo-cubemap failure
167- Increase GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS to greater value.
168- nir: st_nir_lower_builtin fails for gl_LightSource[i]
169- Sometimes VLC player process gets stuck in memory after closure if video output used is Auto or OpenGL
170- Double unlock in rbug_context.c
171- Double copy for TexSubImage
172- [v3d] corruption when GS omits some vertices
173- Iris crashes when reading from multisampled front buffer on platforms without front buffer
174- freedreno: subway surfers crash when repeatedly toggling fullscreen
175- [RADV/GFX8] Performance drop in DOOM Eternal when "Present from compute" is enabled
176- freedreno: multiple applications crash on a5xx
177- Use-after-free crash innv50_ir::GCRA::RIG_Node::init()
178- intel: Sample mask writes need to be honored in Vulkan
179- [RADV] - Path of Exile (238960) - Map outline, landscape and markers are missing with the Vulkan renderer.
180- ASTC texture decompression fails when using software fallback
181- [i965][iris][regression][bisected] multiple piglit and glcts failures on all platforms
182- please publish GPG keyring used to sign new releases
183- [BISECTED] compiling shader causes crash
184- Missing render Information on Stellaris
185- freedreno/ir3: allow copy-propagate from array
186- Zink + GALLIUM_HUD SIGSEGV
187- piglit spec@egl_ext_device_base@conformance fails LLVM 11 Git assertion since "llvmpipe/fs: add caching support"
188- llvmpipe: 1x1 framebuffer with a 2x2 viewport
189- [regression] nir build failure
190- ci: need to end baremetal tests after kernel panic/instaboot
191- If-statement body is executed for false condition
192- freedreno/a6xx: broken rendering in playcanvas "after the flood"
193- [regression] performance drop on Dota 2, CS:GO, and gfxbench GL benchmarks on ICL/Iris
194- [amd] C++ ODR violatation for union GB_ADDR_CONFIG
195- Zink reports incorrect amount of video memory
196- [RADV/LLVM]: void llvm::ICmpInst::AssertOK(): Assertion \`getOperand(0)->getType() == getOperand(1)->getType() && "Both operands to ICmp instruction are not of the same type!"' failed.
197- glsl-1.50-gs-max-output hangs on Navi10 + NGG
198- anv: Runs out of binding tables with PPSSPP during long runs
199- Segfault in Panfrost with waypipe
200- ci: Use rsync instead of rm -rf ; cp for baremetal rootfs
201- i965: Rendering problems replaying a trace of "Refunct" after mesa-20.1.0-rc1 release [bisected]
202- Panfrost (rk3399 NanoPi M4) hang/crash on playing video on Kodi/X11
203- gallium/winsys/radeon/drm fails assertion on 32bit
204- NIR validation failed after glsl to nir, before function inline, wrong {src,dst}->type ?
205- nir/spirv asin() function not precise enough
206- Mesa 20.0.7 / 20.1.0-rc4 regression, extremally long shader compilation time in NIR
207- Android build error after 689acc73
208- freedreno/a6xx: gpu hangs in google earth
209- Mesa-git build fails on Fedora Rawhide
210- Doom Eternal 1.1 performs very poorly on RADV
211- iris/i965: possible regression in 20.0.5 due to changes in buffer manager sharing across screens (firefox/mozilla#1634213)
212- iris/i965: possible regression in 20.0.5 due to changes in buffer manager sharing across screens (firefox/mozilla#1634213)
213- Incorrect _NetBSD__ macro inside execmem.c
214- Possible invalid sizeof in device.c
215- YUV FP16 lowering validation failing
216- GLSL compiler assertion is_float() failed in glsl/ir_validate.cpp, visit_leave on specific WebGL shader
217- [RADV] - Doom Eternal (782330) & Metro Exodus (412020) - Title requires 'RADV_DEBUG=zerovram' to eliminate colorful graphical aberrations.
218- [RADV] - Doom Eternal (782330) & Metro Exodus (412020) - Title requires 'RADV_DEBUG=zerovram' to eliminate colorful graphical aberrations.
219- mesa trunk master vulkan overlay-layer meson.build warning empty configuration_data() object
220- [meson] increase minimum required version
221- Kicad fails to render 3D PCB models.
222- freedreno: minetest: alpha channel issue on a6xx
223- Reproduceable i915 gpu hang Intel Iris Plus Graphics (Ice Lake 8x8 GT2)
224- 7 Days to Die - "Reflection Quality" setting broken, results in environment rendered black
225- glsl: regression affecting shader compilation time
226- freedreno: glamor issue with x11 desktops
227- finish converting from fnv1a to xxhash
228- Hang in iris_dri in kitty
229- Setting twice value to output_stream in radv_nir_to_llvm.c
230- Overwriting value of `jit_tex->sample_stride` in lp_setup.c
231- [AMDGPU][OpenGL] apitrace of kernel/firmware crash that requires a reboot
232- Flickering in Superposition benchmark
233- Double lock in fbobject.c
234- Possible typo in aco_insert_waitcnt.cpp
235- [bisected] Steam crashes when newest Iris built with LTO
236- Freeing null pointer inside radv_amdgpu_cs.c
237- Duplicated sub expression in radv_nir_to_llvm.c
238- i965/vec4: opt_cse_local cause the out of bound array access
239- NIR: Regression on shader using 8/16-bit integers
240- ACO: Compiler segfault on 8/16-bit integers.
241- lp_bld_intr.c:70:16: error: use of undeclared identifier 'LLVMFixedVectorTypeKind'; did you mean 'LLVMVectorTypeKind'?
242- recent seqno changes causing surfaceflinger crash
243- [radeonsi] [glthread] Crash with glthread enabled
244- Deadlock in anv_timelines_wait()
245- [gles3] supertuxkart: some textures are incorrect
246- post_version.py does not work with release candidates
247- post_version.py does not work with release candidates
248- radv regression on android
249- ogl: Set mesa_glthread=true as default on the RPCS3 emulator
250- [iris] android deqp dEQP-EGL.functional.robustness.negative_context#invalid_notification_strategy_enum fails
251- zink: conditional rendering
252- [RadeonSI] Glitches on VEGA8 + RX 560X after MR 4863
253- RadeonSI OpenGL broken for GFX8 after unify code for overriding offset
254- freedreno/turnip: Don't request fragcoord components we don't use
255- Make check fails in ANV
256- src\util\meson.build:294:4: ERROR: Program or command 'winepath' not found or not executable
257- Please add Zink to features.txt
258- llvmpipe: assert triggers in LLVM
259- debug builds are massively broken on Windows
260- ci: Report flakes on IRC from baremetal tests
261- heavy glitches on amd ryzen 5 since version 20.x
262- zink asserts with 32-bit boolean
263- OpenGL: Surviving Mars black screen late-game (possible shader problem)
264- Kerbal Space Program (KSP) hangs entire Navi system
265- Dirt: Showdown bad performance and broken rendering with enabled advanced lightning
266- gravit & Firefox WebGL broken since 3dc2ccc14c0e035368fea6ae3cce8c481f3c4ad2 "ac/surface: replace RADEON_SURF_OPTIMIZE_FOR_SPACE with !FORCE_SWIZZLE_MODE"
267- mesa 20.0.5 causing kitty to crash
268- radeonsi: "Torchlight II" trace showing regression on mesa-20.0.6 [bisected]
269- [RADV/LLVM/ACO/Regression] After mesa commit a3dc7fffbb7be0f1b2ac478b16d3acc5662dff66 all games stucks at start
270- Android building error after commit 2ab45f41
271- freedreno/a6xx: pubg rendering glitches
272- iris: Crash when trying to capture window in OBS Studio
273- lp_test_format failure with llvm-11
274
275
276Changes
277-------
278
279Abhishek Kumar (1):
280
281- egl: Limit the EGL ver for android
282
283Adam Jackson (1):
284
285- glx: Fix build and warnings with -Dglx=dri -Dglx-direct=false
286
287Alejandro Piñeiro (9):
288
289- v3d/tex: only look up the 2nd texture gather offset for 1d non-arrays
290- v3d/tex: set up default values for Configuration Parameter 1 if possible
291- v3d/tex: use TMUSLOD register if possible
292- v3d: moving v3d simulator to src/broadcom
293- v3d/tex: handle correctly coordinates for cube/cubearrays images
294- vulkan/util: add struct vk_pipeline_cache_header
295- nir/lower_tex: handle query lod with nir_lower_tex_packing_16 at lower_tex_packing
296- v3d/packet: fix typo on Set InstanceID/PrimitiveID packet
297- v3d: set instance id to 0 at start of tile
298
299Alyssa Rosenzweig (475):
300
301- pan/mdg: Track more types
302- pan/mdg: Be a bit more pedantic in invert passes
303- panfrost: Enumify bifrost blend types
304- pan/bi: Add texture indices to IR
305- pan/bi: Pipe multiple textures through
306- pan/bi: Pack round opcodes (FMA, either 16 or 32)
307- pan/bit: Add framework forinterpreting double vs float
308- pan/bit: Interpret ROUND
309- pan/bit: Add round tests
310- panfrost: Fix texture field size
311- panfrost: Fix size of bifrost sampler descriptor
312- panfrost: Fix sampler wrap/filter field orders
313- panfrost: Fix norm coords on bifrost sampler
314- panfrost: Fix tiled texture "stride"s on Bifrost
315- pan/decode: Don't crash on missing payload
316- pan/bi: Enable lower_mediump_outputs NIR pass
317- panfrost: Update Bifrost fields in mali_shader_meta
318- pan/bi: Lower for now sincos
319- pan/mdg: Ingest actual isub ops
320- pan/mdg: Rename .one to .sat_signed
321- pan/mdg: Move constant switch opts to algebraic pass
322- pan/mdg: Drop forever todo
323- pan/mdg: Drop `opt` in name of midgard_opt_cull_dead_branch
324- pan/mdg: Enable nir_opt_algebraic_distribute_src_mods
325- panfrost: Update dEQP expectation list
326- panfrost: Setup gl_FragCoord as sysval on Bifrost
327- pan/bi: Add clause type for gl_FragCoord.zw load
328- pan/bi: Abort on unknown op packing
329- pan/bi: Abort on unhandled intrinsics
330- pan/bi: Futureproof COMBINE lowering against non-u32
331- pan/bi: Print bad instruction on src packing fail
332- pan/bi: Passthrough direct ld_var addresses
333- pan/bi: Lower gl_FragCoord
334- pan/bi: Set clause type for gl_FragCoord.z
335- pan/bi: Fix double-abs flipping
336- pan/bi: Fix missing swizzle
337- pan/bi: Fix incorrectly flipped swizzle
338- pan/bi: Disable CSEL4 emit for now
339- pan/bi: Fix DISCARD ops in disasm
340- pan/bi: Structify DISCARD
341- pan/bi: Remove BI_GENERIC
342- pan/bi: Unwrap BRANCH into CONDITIONAL class
343- pan/bi: Handle discard_if in NIR->BIR naively
344- pan/bi: Emit discard (not if)
345- pan/bi: Add float-only mode to condition fusing
346- pan/bi: Fuse conditions into discard_if
347- pan/bi: Handle discard/branch in get_component_count
348- pan/bi: Pack ADD.DISCARD
349- pan/bi: Structify ADD ICMP 16
350- pan/bi: Pack ADD ICMP 32
351- pan/bi: Pack ADD ICMP 16
352- pan/bi: Don't pack ICMP on FMA
353- pan/bit: Add swizzles to round tests
354- pan/bit: Add more 16-bit fmod tests
355- pan/bit: Add ICMP tests
356- pan/bi: Rename BI_ISUB to BI_IMATH
357- pan/bi: Use IMATH for nir_op_iadd
358- pan/bi: Pack FMA IADD/ISUB 32
359- pan/bi: Pack ADD IADD/ISUB for 8/16/32
360- pan/bi: Add SUB.v2i16/SUB.v4i8 opcodes to disasm
361- pan/bi: Don't schedule <32-bit IMATH to FMA
362- pan/bit: Interpret IMATH
363- pan/bit: Interpret v4i8 ops
364- pan/bit: Remove test names
365- pan/bit: Use swizzle helper for round
366- pan/bit: Factor out identity swizzle helper
367- pan/bit: Add IMATH packing tests
368- pan/decode: Fix flags_hi printing
369- pan/mdg: Explain helper invocations dataflow theory
370- pan/mdg: Analyze helper invocation termination
371- pan/mdg: Analyze helper execution requirements
372- pan/mdg: Use the helper invo analyze passes
373- pan/mdg: Use analysis to set .cont/.last flags
374- pan/mdg: Remove texture_op_count
375- pan/mdg: Set types for derivatives
376- pan/mdg: Fix derivative swizzle
377- panfrost: Run dEQP-GLES3.functional.shaders.derivate.* on CI
378- pan/decode: Use a page table for tracking mmaps
379- pan/decode: Fix min/max_tile_coord mixup
380- pan/mfbd: Add format codes for PIPE_FORMAT_B5G5R5A1_UNORM
381- panfrost: Switch formats to table
382- panfrost: Fix Z24 vs Z32 mixup
383- panfrost: Enable AFBC for Z24X8
384- nir: Add fsat_signed opcode
385- nir: Add fclamp_pos opcode
386- panfrost: Add modifier detection helpers
387- pan/mdg: Remove .pos propagation pass
388- pan/mdg: Drop nir_lower_to_source_mods
389- pan/mdg: Prepare for modifier helpers
390- pan/mdg: Ingest fsat_signed/fclamp_pos
391- pan/mdg: Apply abs/neg modifiers
392- pan/mdg: Treat inot as a modifier
393- pan/mdg: Remove invert optimizations
394- pan/mdg: Use helpers for branch/discard inversion
395- pan/mdg: Apply outmods
396- pan/mdg: Emit fcsel when beneficial
397- pan/mdg: Optimize pipelining logic
398- pan/mdg: Precompute mir_special_index
399- pan/mdg: Optimize liveness computation in DCE
400- pan/mdg: Handle comparisons in fp16 path
401- pan/mdg: Fix constant combining crash
402- pan/mdg: Remove mir_*size routines
403- pan/mdg: Remove mir_get_alu_src
404- pan/mdg: Include more types
405- pan/mdg: Handle dest up/lower correctly with swizzles
406- pan/mdg: Respect !32-bit sizes in RA
407- pan/mdg: Explain ld/st sign/zero extension
408- pan/mdg: Add abs/neg/shift modifiers to IR
409- pan/mdg: Use src_types to determine size in scheduling
410- pan/mdg: Use type to determine triviality of a move
411- pan/mdg: Identify scalar integer mods
412- pan/mdg: Promote imov to fmov on a NIR level
413- pan/mdg: Remove promote_float pass
414- pan/mdg: Defer modifier packing until emit time
415- pan/mdg: Remove redundant redundancy
416- pan/mdg: Streamline dest_override handling
417- pan/mdg: Implement b2f16
418- pan/mdg: Don't generate conversions for fp16 LUTs
419- pan/mdg: Ignore dest.type when offseting load swizzle
420- pan/lcra: Remove unused alignment parameters
421- pan/lcra: Allow per-variable bounds to be set
422- pan/mdg: Use type size to determine alignment
423- pan/mdg: Eliminate load_64
424- pan/mdg: Set RA bounds for fp16
425- pan/mdg: Print mask when dest=0
426- pan/mdg: Round up bytemasks when spilling
427- pan/mdg: Print constant vectors less wrong
428- pan/mdg: Factor out mir_adjust_constant
429- pan/mdg: Only combine 16-bit constants to lower half
430- pan/mdg: Separately pack constants to the upper half
431- pan/mdg: Fix type checking issues with compute
432- pan/mdg: Pack barriers correctly
433- pan/mdg: Use shifts instead of division for RA sizes
434- pan/mdg: Implement vector constant printing for 8-bit
435- pan/mdg: Implement condense_writemask for 8-bit
436- pan/mdg: Pack 8-bit swizzles in 16-bit ops
437- panfrost: Guard experimental fp16 behind debug flag
438- panfrost: Keep cached BOs mmap'd
439- panfrost: Remove deadcode
440- panfrost: Fill in SCALED formats to format table
441- panfrost: Don't set PIPE_CAP_VERTEX_BUFFER_STRIDE_4BYTE_ALIGNED_ONLY
442- panfrost: Don't zero staging buffer for tiling
443- panfrost: Allow bpp24 tiling
444- panfrost: Allow tiling on RECT textures
445- panfrost: Limit blend shader work count
446- panfrost: Remove dated comment about leaks
447- panfrost: Disable tib read/write when colourmask = 0x0
448- panfrost: Avoid redundant shader executions with mask=0x0
449- panfrost: Don't set CAN_DISCARD for MFBD
450- panfrost: Fix transform feedback types
451- pan/mdg: Cleanup comments that look like division
452- pan/mdg: Eliminate expand_writemask division
453- pan/mdg: Eliminate 64-bit swizzle packing division
454- pan/mdg: Avoid division in printing helpers
455- pan/mdg: Eliminate remaining divisions from compiler
456- panfrost: Fix dated comment
457- panfrost: Use _mesa_roundevenf when packing clear colours
458- panfrost: Handle !independent_blend for blend shaders
459- pan/mdg: Add pack_colour_32 opcode
460- pan/mdg: Lower shifts to 32-bit
461- pan/mdg: Ensure we don't DCE into impossible masks
462- pan/mdg: Allow DCE on ld_color_buffer masks
463- panfrost: Add debug print before query flushes
464- panfrost: Only run batch debug when specifically asked
465- nir: Add un/pack_32_4x8 opcodes
466- util: Add SATURATE macro
467- util/format: Use SATURATE
468- mesa: Use SATURATE
469- mesa/swrast: Use SATURATE
470- gallium/draw: Use SATURATE
471- glsl: Use SATURATE
472- panfrost: Use SATURATE
473- softpipe: Use SATURATE
474- intel: Use SATURATE
475- i965: Use SATURATE
476- iris: Use SATURATE
477- etnaviv: Use SATURATE
478- nouveau: Use SATURATE
479- pan/decode: Fix unused variable warning
480- pan/decode: Fix tiler warning
481- pan/decode: Dump missing field on Bifrost
482- pan/decode: Dump unknown2
483- panfrost: Fix Bifrost blending with depth-only FBO
484- panfrost: Adjust null_rt for Bifrost
485- panfrost: Tweak zsbuf magic numbers for Bifrost
486- panfrost: Tweak Bifrost colour buffer magic
487- panfrost: Force Z/S tiling on Bifrost
488- panfrost: Share MRT blend flag calculation with Bifrost
489- panfrost: Set unk2 to accomodate blending
490- panfrost: Identify Bifrost texture format swizzle
491- panfrost: Ensure nonlinear strides are 16-aligned
492- panfrost: Document Midgard Inf/NaN suppress bit
493- panfrost: Add defines for bifrost unk1 flags
494- panfrost: Identify MALI_BIFROST_EARLY_Z flag
495- panfrost: Set MALI_BIFROST_EARLY_Z as necessary
496- pan/decode: Decode Bifrost shader flags
497- pan/bi: Add TEX.vtx opcode for vertex texturing
498- pan/bi: Also add compact vertex texturing
499- pan/bi: Document compute_lod bit for compact tex
500- pan/bi: Allow vertex txl with lod=0 as compact
501- pan/bi: Add f16 TEXC.vtx op
502- pan/bi: Pack compact vertex texturing
503- pan/bi: Add CSEL.16 packing tests
504- pan/bi: Suppress inf/nan for now
505- panfrost: Don't generate gl_FragCoord varying on Bifrost
506- panfrost: Set reads_frag_coord as a sysval
507- panfrost: Preload gl_FragCoord on Bifrost
508- pan/bi: Remove FMA? parameter from get_src
509- pan/bi: Remove comment about old scheduler design
510- pan/bi: Move bi_registers to common IR structures
511- pan/bi: Move bi_registers to bi_bundle
512- pan/bi: Drop `struct` from bi_registers
513- pan/bi: Add FILE* argument to bi_print_registers
514- pan/bi: Move bi_flip_ports out of port assignment
515- pan/bi: Document constant count invariant
516- pan/bi: Disassemble pos=0xe
517- pan/bi: Add MUL.i32 to disasm
518- pan/bi: Remove more artefacts of 2-pass scheduling
519- pan/bi: Add bi_layout.c for clause layout helpers
520- pan/bi: Add helper to measure clause size
521- pan/bi: Remove schedule_barrier
522- pan/bi: Allow printing branches without targets
523- pan/bi: Fix emit_if successor assignment
524- pan/bi: Only rewrite COMBINE dest if not SSA
525- pan/bi: Fix CONVERT component counting
526- pan/bi: Fix branch condition typesize
527- pan/bi: Passthrough ZERO in branch packing
528- pan/bi: Add branch constant field to IR
529- pan/bi: Pack branch offset constants
530- pan/bi: Set branch_constant if there is a branch
531- pan/bi: Assign constant port for branch offsets
532- pan/bi: Preliminary branch packing
533- pan/bi: Link clauses back to their blocks
534- pan/bi: Add bi_foreach_clause_in_block_from{_rev} helpers
535- pan/bi: Measure distance between blocks
536- pan/bi: Pack proper clause offsets
537- pan/bi: Set branch_conditional if b2b is set
538- pan/bi: Set back-to-back bit more accurately
539- pan/bi: Set branch conditional bit
540- pan/bi: Pack unconditional branch
541- pan/bi: Defer block naming until after emit
542- pan/bi: Add bi_foreach_block_from_rev helper
543- pan/bi: Measure backwards branches as well
544- pan/bi: Allow two successors in header packing
545- pan/bi: Passthrough deps of the branch target
546- panfrost: Disable QUAD_STRIP/POLYGON on Bifrost
547- panfrost: Add GPU IDs for G31/G52
548- panfrost: Probe G31/G52 if PAN_MESA_DEBUG=bifrost
549- pan/mdg: Handle un/pack opcodes as moves
550- pan/mdg: Add pack_unorm_4x8 via 8-bit
551- pan/mdg: Treat packs "specially"
552- pan/mdg: Handle bitsize for packs
553- pan/mdg: Print 8-bit constants
554- pan/mdg: Drop the u8 from the colorbuf op names
555- pan/mdg: Implement raw colourbuf loads on T720
556- panfrost: Add theory for new framebuffer lowering
557- panfrost: Determine unpacked type for formats
558- panfrost: Add quirks for blend shader types
559- panfrost: Determine load classes for formats
560- panfrost: Determine classes for stores
561- panfrost: Stub out lowering boilerplate
562- panfrost: Un/pack pure 32-bit
563- panfrost: Un/pack pure 16-bit
564- panfrost: Un/pack pure 8-bit
565- panfrost: Un/pack 8-bit UNORM
566- panfrost: Flesh out dispatch
567- panfrost: Un/pack UNORM 4
568- panfrost: Un/pack RGB565 and RGB5A1
569- panfrost: Un/pack RGB10_A2_UNORM
570- panfrost: Un/pack RGB10_A2_UINT
571- panfrost: Un/pack R11G11B10
572- panfrost: Un/pack sRGB via NIR
573- panfrost: Switch to pan_lower_framebuffer
574- panfrost: Conditionally allow fp16 blending
575- panfrost: Account for differing types in blend lower
576- panfrost: Let Gallium pack colours
577- panfrost: Check for large tilebuffer requirements
578- panfrost: Add separate_stencil BO to batch
579- panfrost: Use internal_format throughout
580- panfrost: Update fails list
581- pan/mdg: Handle 16-bit ld_vary
582- pan/mdg: Fuse f2f16 into load_interpolated_input
583- panfrost: Fix PRESENT flag mix-up
584- panfrost: Permit AFBC of RGB8
585- panfrost: Use VTX tag for vertex texturing
586- panfrost: Don't flush explicitly when mipmapping
587- panfrost: Remove unused nir_lower_framebuffer pass
588- pan/mdg: Disassemble out-of-order bits
589- pan/mdg: Add quirk for missing out-of-order support
590- pan/mdg: Enable out-of-order execution after texture ops
591- nir: Fold f2f16(b2f32(x)) to b2f16(x)
592- pan/mdg: Don't double-replicate blend on T720
593- pan/mdg: Distinguish blend shaders in internal shader-db
594- pan/mdg: Add roundmode enum
595- pan/mdg: Add opcode roundmode property
596- pan/mdg: Lower roundmodes
597- pan/mdg: Implement \*_rtz conversions with roundmode
598- pan/mdg: Fold roundmode into applicable instructions
599- pan/mdg: Handle f2u8
600- pan/mdg: Allow f2u8 and friends thru
601- pan/mdg: Handle regular nir_intrinsic_load_output
602- panfrost: Passthrough NATIVE loads/stores
603- pan/bi: Handle SEL with vec3 16-bit
604- pan/bi: Fix SEL.16 swizzle
605- pan/bi: Pack second argument of F32_TO_F16
606- pan/bi: Passthrough second argument of F32_TO_F16
607- pan/bi: Handle vectorized load_const
608- panfrost: Update MALI_EARLY_Z description
609- panfrost: Document MALI_WRITES_GLOBAL bit
610- panfrost: Handle writes_memory correctly
611- panfrost: Readd MIDGARD_SHADERLESS quirk to t760
612- panfrost: Explicitly convert to 32-bit for logic-ops
613- pan/bi: Disassemble gl_PointCoord reads.
614- panfrost: Prefer sysval for gl_PointCoord on Bifrost
615- panfrost: Fix gl_PointSize out of GL_POINTS
616- panfrost: Mark point sprites as todo on Bifrost
617- pan/mdg: Legalize inverts with constants
618- pan/mdg: Ensure ld_vary_16 is aligned
619- panfrost: Ensure we have ro before using it
620- nir: Remove nir_intrinsic_output_u8_as_fp16_pan
621- pan/mdg: Avoid fusing ld_vary_16 with non-zero component
622- panfrost: Calculate varying size by format
623- panfrost: Add panfrost_streamout_offset helper
624- panfrost: Introduce bitfields for tracking varyings
625- panfrost: Determine varying buffer presence
626- panfrost: Emit unlinked varyings
627- panfrost: Emit special varyings
628- panfrost: Emit xfb records
629- panfrost: Add helper to determine if we are capturing
630- panfrost: Add high-level varying emit
631- panfrost: Use new varying linking
632- panfrost: Remove unused routines
633- panfrost: Allow R/RG/RGB varyings
634- panfrost: Only store varying formats
635- panfrost: Use shader_info harder
636- panfrost: Override varying format to minimal precision
637- panfrost: Demote mediump varyings to fp16
638- pan/mdg: Explicitly type 64-bit uniform moves
639- pan/mdg: Analyze types for 64-bitness in RA
640- pan/mdg: Prefer type over regmode for schedule constraints
641- pan/mdg: Precolour blend inputs
642- panfrost: Merge bifrost_bo/midgard_bo
643- panfrost: Update sampler view in Bifrost path
644- panfrost: Fix level_2
645- panfrost: Correctly calculate tiled stride
646- panfrost: Enable AFBC for RGB565
647- panfrost: Simplify AFBC format check
648- pan/mdg: Factor out unit check
649- pan/mdg: Allow scheduling "x + x" to multipliers
650- pan/mdg: Canonicalize (x * 2.0) to (x + x)
651- pan/mdg: Reassociate adds for multiply-by-two
652- nir: Propagate \*2*16 conversions into vectors
653- panfrost: Specify stack_shift on SFBD
654- pan/mdg: Defer nir_fuse_io_16 until after opts
655- pan/mdg: Don't assign destination in writeout block to r1
656- pan/mdg: Remove bundle interference code
657- pan/mdg: Schedule writeout to VLUT
658- pan/mdg: Defer smul, vlut until after writeout moves
659- pan/mdg: Allow Z/S writes to use any 2nd stage unit
660- pan/mdg: Prioritize non-moves on VADD/VLUT
661- pan/mdg: Skip r1.w write where possible
662- pan/mdg: Schedule based on liveness
663- pan/mdg: Respect type/mask in mir_lower_special_reads
664- pan/mdg: Fix indirect UBO swizzles
665- pan/decode: Fix MSAA texture decoding
666- pan/decode: Identify layered MSAA flag
667- pan/mdg: Allow ignoring move mode
668- pan/mdg: Handle GLSL_SAMPLER_DIM_MS
669- pan/mdg: Handle nir_tex_src_ms_index
670- pan/mdg: Handle nir_texop_txf_ms
671- pan/mdg: Use _VTX tag for texelFetch in frag shaders
672- panfrost: Set depth to sample_count for MSAA 2D
673- panfrost: Identify layer_stride
674- panfrost: Allocate space for multisampling
675- panfrost: Index texture by sample
676- panfrost: Include pointer for each sample
677- panfrost: Set layer_stride for multisampled rendering
678- panfrost: Don't advertise MSAA 2x
679- panfrost: Identify coverage_mask
680- panfrost: Pass sample_mask to the hardware
681- panfrost: Implement alpha-to-coverage
682- panfrost: Identify depth/stencil layer strides
683- panfrost: Set depth/stencil_layer_stride accordingly
684- panfrost: Enable MSAA if we render to such a surface
685- panfrost: Save sample_mask before blitting
686- panfrost: Expose MSAA 4x
687- glsl: Handle 16-bit types in loop analysis
688- docs/features: Track Panfrost
689- panfrost: Introduce pan_pool struct
690- panfrost: Allocate pool BOs against the pool
691- panfrost: Track the device through the pool
692- panfrost: Expose pool-based allocation API
693- panfrost: Move debug flags into the device
694- panfrost: Drop Gallium-local pan_bo_create wrapper
695- panfrost: Move pool routines to common code
696- panfrost: Factor out scoreboarding state
697- panfrost: Pass polygon_list to tiler init function
698- panfrost: Drop batch from scoreboard routines
699- panfrost: Move scoreboarding routines to common
700- panfrost: Handle PIPE_FORMAT_X24S8_UINT
701- panfrost: Handle PIPE_FORMAT_S8_UINT
702- panfrost: Move panfrost_translate_texture_type
703- panfrost: Report blend shader work count
704- panfrost: Clamp pure int pixels
705- panfrost: Generate shader variants on framebuffer bind
706- panfrost: Always use SOFTWARE for pure formats
707- panfrost: Extend fetched framebuffer results
708- panfrost: Fix fence leak
709- panfrost: Fix write to free'd memory
710- panfrost: Add a sparse array to map GEM handles to BOs
711- panfrost: Index BOs from the BO map sparse array
712- panfrost: Merge PAN_BO_IMPORTED/PAN_BO_EXPORTED
713- panfrost: Remove PAN_BO_COHERENT_LOCAL
714- panfrost: Remove PAN_BO_DONT_REUSE
715- panfrost: Remove panfrost_bo_access type
716- panfrost: Compact unused BO flag bits
717- panfrost: Add format codes for new compressed textures
718- panfrost: Pipe in compressed texture feature mask
719- panfrost: Filter compressed texture formats
720- panfrost: Map PIPE_{DXT, RGTC, BPTC} to MALI_BCn
721- docs/features: Update ASTC entries for Panfrost
722- pan/mdg: Bump compiler RT maximum
723- pan/mdg: Identify per-sample interpolation mode
724- pan/mdg: Implement gl_SampleID
725- panfrost: Force Z/S writeback
726- panfrost: Expose panfrost_get_blend_shader
727- panfrost: Add MALI_PER_SAMPLE bit
728- panfrost: Include sample count in payload estimates
729- panfrost: Identify zs_samples field
730- panfrost: Add rectangle subtraction algorithm
731- panfrost: Handle per-sample shading
732- panfrost: Set zs_samples as necessary
733- panfrost: Track surfaces drawn per-batch
734- panfrost: Extract panfrost_batch_reserve_framebuffer
735- panfrost: Use Midgard-specific reloads
736- panfrost: Call util_blitter_save_fragment_constant_buffer_slot
737- panfrost: Overhaul tilebuffer allocations
738- panfrost: Set PIPE_CAP_MIXED_COLORBUFFER_FORMATS
739- panfrost: Fix sRGB clear colour packing
740- panfrost: Implement Z32F_S8 blits
741- panfrost: Abort on unsupported blit
742- panfrost: Avoid integer underflow in rt_count_1
743- panfrost: Honour cso->compare_mode
744- panfrost: Fix faults with RASTERIZER_DISCARD
745- panfrost: Report CAPs more honestly
746- panfrost: Enable Chromium
747- panfrost: Revert "Disable frame throttling"
748- docs/features: Mark trivial missed feature
749- panfrost: Enable FP16 by default
750- panfrost: Avoid wait=true flushing all batches
751- panfrost: Remove wait parameter to flush_all_batches
752- panfrost: Skip specifying in_syncs
753- panfrost: Allocate syncobjs in panfrost_flush
754- panfrost: Remove unused batch_fence->signaled
755- panfrost: Remove unused batch_fence->ctx
756- pan/bit: Update f32->f16 convert test
757- pan/bit: Remove BI_SHIFT stub
758- pan/mdg: Mask spills from texture write
759- pan/mdg: Test for SSA before chasing addresses
760- docs/features: Add GL_EXT_multisampled_render_to_texture
761- panfrost: Add MSAA mode selection field
762- panfrost: Implement EXT_multisampled_render_to_texture
763- panfrost: Set STRIDE_4BYTE_ALIGNED_ONLY
764- panfrost: Fix WRITES_GLOBAL bit
765- pan/mdg: Ensure barrier op is set on texture
766- panfrost: Fix blend leak for render targets 5-8
767- panfrost: Free cloned NIR shader
768- panfrost: Free NIR of blit shaders
769- panfrost: Free hash_to_temp map
770- pan/mdg: Free previous liveness
771- panfrost: Use memctx for sysvals
772- panfrost: Free batch->dependencies
773- pan/mdg: Fix discard encoding
774- pan/mdg: Fix perspective combination
775- pan/bit: Set d3d=true for CMP tests
776
777Andreas Baierl (1):
778
779- nir/ lower_int_to_float: Handle umax and umin
780
781Andres Gomez (10):
782
783- .mailmap: add an alias for Iago Toral Quiroga
784- .mailmap: add an alias for Andres Gomez
785- gitlab-ci: update tracie README after changes in main script
786- scripts: remove unittest.mock dependency when not used
787- gitlab-ci: create always the "results" directory with tracie
788- gitlab-ci: correct tracie behavior with replay errors
789- gitlab-ci: build gfxreconstruct from the "dev" branch
790- gitlab-ci: get the last frame from a gfxr trace using gfxrecon-info
791- gitlab-ci/traces: updated paths and checksums for POLARIS10 traces
792- gitlab-ci: Test AMD's Raven with traces
793
794Andrey Vostrikov (1):
795
796- egl/x11: Free memory allocated for reply structures on error
797
798Andrii Simiklit (3):
799
800- glsl_type: don't serialize padding bytes from glsl_struct_field
801- i965/vec4: Ignore swizzle of VGRF for use by var_range_end()
802- glsl: fix crash on glsl macro redefinition
803
804Ani (1):
805
806- drirc: Enable glthread for rpcs3
807
808Anuj Phogat (6):
809
810- intel/devinfo: Add is_dg1 to device info
811- intel/l3: Add DG1 L3 configuration
812- intel/ehl: Use GEN11_URB_MIN_MAX_ENTRIES in device info
813- intel/ehl: Use macro GEN11_LP_FEATURES in device info
814- intel/ehl: Rename gen_device_info struct
815- intel/ehl: Add new PCI-IDs
816
817Arcady Goldmints-Orlov (4):
818
819- anv: increase minUniformBufferOffsetAlignment to 64
820- intel/compiler: fix alignment assert in nir_emit_intrinsic
821- nir/spirv/glsl450: increase asin(x) precision
822- intel/compiler: Always apply sample mask on Vulkan.
823
824Axel Davy (19):
825
826- st/nine: Set correctly blend max_rt
827- gallium/util: Fix leak in the live shader cache
828- ttn: Add new allow_disk_cache parameter
829- ttn: Implement disk cache
830- st/nine: Enable ttn cache
831- radeonsi: Enable tgsi to nir disk cache
832- st/nine: Add checks for pure device
833- st/nine: Return error when setting invalid depth buffer
834- st/nine: Do not return invalidcall on getrenderstate
835- st/nine: Pass more adapter formats for CheckDepthStencilMatch
836- st/nine: Improve return error code in CheckDeviceFormat
837- st/nine: Fix uninitialized variable in BEM()
838- st/nine: Fix a crash if the state is not initialized
839- st/nine: Add missing NULL checks
840- st/nine: Increase available GPU memory
841- st/nine: Retry allocations after freeing some space
842- st/nine: Improve pDestRect handling
843- st/nine: Ignore pDirtyRegion
844- st/nine: Handle full pSourceRect better
845
846Bas Nieuwenhuizen (80):
847
848- radv: Fix implicit sync with recent allocation changes.
849- radv: Extend tiling flags to 64-bit.
850- radv: Provide a better error for permission issues with priorities.
851- radv: Support VK_PIPELINE_COMPILE_REQUIRED_EXT.
852- radv: Support VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT.
853- radv: Support VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT.
854- radv: Expose VK_EXT_pipeline_creation_cache_control.
855- radv/winsys: Finish mapping for sparse residency.
856- radv/winsys:  Remove extra sizeof multiply.
857- radv: Handle failing to create .cache dir.
858- radv: Remove dead code.
859- radv: Do not close fd -1 when NULL-winsys creation fails.
860- radv: Implement vkGetSwapchainGrallocUsage2ANDROID.
861- frontend/dri: Implement mapping individual planes.
862- util/format: Add VK_FORMAT_D16_UNORM_S8_UINT.
863- util/format: Use correct pipe format for VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM.
864- util/format: Add more multi-planar formats.
865- gallium/dri: Remove lowered_yuv tracking for plane mapping.
866- radeonsi: Explicitly map Z16_UNORM_S8_UINT to None for GFX10.
867- amd/common,radeonsi: Move gfx10_format_table to common.
868- radeonsi: Define gfx10_format in the common header.
869- radv: Include gfx10_format_table.h only from a single source file.
870- radv: Use common gfx10_format_table.h
871- radv: Use ac_surface to determine fmask enable.
872- radv: Pass no_metadata_planes info in to ac_surface.
873- radv: Enforce the contiguous memory for DCC layers in ac_surface.
874- radv: Rely on ac_surface for avoiding cmask for linear images.
875- radv: Use offsets in surface struct.
876- radv: Disable DCC in ac_surface.
877- radv: Disable HTILE in ac_surface.
878- radv: Allocate values/predicates at the end of the image.
879- amd/common: Add total alignment calculation.
880- radv: Use ac_surface to allocate aux surfaces.
881- vulkan/wsi/x11: Ensure we create at least minImageCount images.
882- radv/winsys: Deal with realloc failures in BO lists.
883- radv: Handle mmap failures.
884- radv/winsys: Distinguish device/host memory errors.
885- radv: Make radv_alloc_shader_memory static.
886- turnip: semaphore support.
887- meson: Do not require shader cache for radv.
888- amd/addrlib: fix another C++ one definition rule violation
889- radv: Set handle types in Android semaphore/fence import.
890- radv: Always enable PERFECT_ZPASS_COUNTS.
891- Revert "radv: add support for MRTs compaction to avoid holes"
892- radv: Use correct semaphore handle type for Android import.
893- amd/llvm: Mark pointer function arguments as 32-byte aligned.
894- amd/common: Cache intra-tile addresses for retile map.
895- amd/addrlib: Clean up unused colorFlags argument
896- amd/registers: add RLC_PERFMON_CLK_CNTL for pre-GFX10
897- radeonsi: Inhibit clock-gating for perf counters.
898- meson: Add mising git_sha1.h dependency.
899- amd: Add detection of timeline semaphore support.
900- radv/winsys: Add binary syncobj ABI changes for timeline semaphores.
901- radv: Add thread for timeline syncobj submission.
902- radv: Add winsys support for submitting timeline syncobj.
903- radv: Add winsys functions for timeline syncobj.
904- radv: Add timeline syncobj for timeline semaphores.
905- radv: Fix uninitialized variable in renderpass.
906- vulkan/wsi/x11: report device-group present rectangles with prime.
907- vulkan/wsi: Convert usage of -1 to UINT32_MAX.
908- radv: Fix host->host signalling with legacy timeline semaphores.
909- mesa/st: Actually free the driver part of memory objects on destruction.
910- radv: Don't use both DCC and CMASK for single sample images.
911- radv: Fix assert that is too strict.
912- radv: Do not consider layouts fast-clearable on compute queue.
913- radv: When importing an image, redo the layout based on the metadata.
914- radv: Use getter instead of setter to extract value.
915- driconf: Support selection by Vulkan applicationName.
916- radv: Override the uniform buffer offset alignment for World War Z.
917- radv: Fix handling of attribs 16-31.
918- radv: Remove conformance warnings with ACO.
919- radv: Update CTS version.
920- radv: Fix 3d blits.
921- radv: Fix threading issue with submission refcounts.
922- radv: Avoid deadlock on bo_list.
923- spirv: Deal with glslang not setting NonUniform on constructors.
924- radeonsi: Work around Wasteland 2 bug.
925- spirv: Deal with glslang bug not setting the decoration for stores.
926- ac/surface: Fix depth import on GFX6-GFX8.
927- st/mesa: Deal with empty textures/buffers in semaphore wait/signal.
928
929Ben Skeggs (38):
930
931- nir: use bitfield_insert instead of bfi in nir_lower_double_ops
932- nvir: bump max encoding size of instructions
933- nvir: introduce OP_LOP3_LUT
934- nvir: introduce OP_WARPSYNC
935- nvir: introduce OP_BREV with lowering to EXTBF_REV for current GPUs
936- nvir: introduce OP_SHF
937- nvir: introduce OP_BMSK
938- nvir: introduce OP_SGXT
939- nvir: introduce OP_FINAL
940- nvir: add constant folding for OP_PERMT
941- nvir: run replaceZero() before replaceCvt()
942- nvir/nir: fix fragment program output when using MRT
943- nvir/nir: move nir options to codegen
944- nvir/nir: flesh out options
945- nvir/nir: turn on lower_rotate
946- nvir/nir: implement nir_op_extract_u8
947- nvir/nir: implement nir_op_extract_i8
948- nvir/nir: implement nir_op_extract_u16
949- nvir/nir: implement nir_op_extract_i16
950- nvir/nir: implement nir_op_urol
951- nvir/nir: implement nir_op_uror
952- nvir/nir: nir expects the shift amount to wrap, rather than clamp
953- nvir/nir: use nir_lower_idiv
954- nvir/gm107: implement OP_PERMT
955- nvir/gm107: replace SHR+AND+AND with PRMT+PRMT in PFETCH lowering
956- nvir/gm107: separate out header for sched data calculator
957- nvir/nir/gm107: split nir shader compiler options from gf100
958- nvir/nir/gm107: turn on nir_lower_extract64
959- nvir/nir/gm107: switch off lower_extract_byte
960- nvir/nir/gm107: switch off lower_extract_word
961- nvir/gv100: initial support
962- nvir/gv100: enable support for tu1xx
963- nvc0: use NVIDIA headers for GK104->GM2xx compute QMD
964- nvc0: use NVIDIA headers for GP100- compute QMD
965- nvc0: move setting of entrypoint for a shader stage to a function
966- nvc0: remove hardcoded blitter vertprog
967- nvc0: initial support for gv100
968- nvc0: initial support for tu1xx
969
970Benjamin Cheng (1):
971
972- drirc: Add picom to adaptive_sync exclusion list
973
974Benjamin Tissoires (3):
975
976- CI: reduce bandwidth for git pull
977- gitlab-ci: update ci-fairy minio to latest upstream
978- gitlab-ci: do not run full CI on scheduled pipelines
979
980Blaž Tomažič (1):
981
982- radeonsi: Fix omitted flush when moving suballocated texture
983
984Boris Brezillon (14):
985
986- spirv: Split the vtn_emit_scoped_memory_barrier() logic
987- nir: Replace the scoped_memory barrier by a scoped_barrier
988- intel/compiler: Extract control barriers from scoped barriers
989- spirv: Use scoped barriers for SpvOpControlBarrier
990- nir: Add new rules to optimize NOOP pack/unpack pairs
991- nir: Use a switch in build_deref_offset()/deref_instr_get_const_offset()
992- nir: Allow casts in nir_deref_instr_get[_const]_offset()
993- freedreno: Initialize lower_int64_options to a proper value
994- nir: Stop passing an options arg to nir_lower_int64()
995- nir: Extend nir_lower_int64() to support i2f/f2i lowering
996- intel: Set int64_options to ~0 when lowering 64b ops
997- nir: Get rid of __[u]int64_to_fp32() and __fp32_to_[u]int64()
998- nir: Fix i64tof32 lowering
999- spirv: Add a vtn_get_mem_operands() helper
1000
1001Boyuan Zhang (2):
1002
1003- radeon/vcn/enc: Re-write PPS encoding for HEVC
1004- radeon/vcn: bump vcn3.0 encode major version to 1
1005
1006Brian Ho (14):
1007
1008- turnip: Execute ir3_nir_lower_gs pass again
1009- turnip: Fill out VkPhysicalDeviceSubgroupProperties
1010- nir: Support sysval tess levels in SPIR-V to NIR
1011- nir: Add an option for lowering TessLevelInner/Outer to vecs
1012- turnip: Lower shaders for tessellation
1013- turnip: Offset by component when lowering gl_TessLevel*
1014- turnip: Parse tess state and support PATCH primtype
1015- turnip: Allocate tess BOs as a function of draw size
1016- turnip: Update VFD_CONTROL with tess system values
1017- turnip: Emit HS/DS user consts as draw states
1018- turnip: Support tess for draws
1019- turnip: Force sysmem for tessellation
1020- ir3: Unconditionally enable MERGEDREGS on a6xx
1021- turnip: Enable tessellationShader physical device feature
1022
1023Caio Marcelo de Oliveira Filho (32):
1024
1025- intel/dev: Bail when INTEL_DEVID_OVERRIDE is not valid
1026- intel/fs: Clean up variable group size handling in backend
1027- intel/fs: Add an option to lower variable group size in backend
1028- intel/fs: Add and use a new load_simd_width_intel intrinsic
1029- intel: Let drivers call brw_nir_lower_cs_intrinsics()
1030- iris: Implement ARB_compute_variable_group_size
1031- util/list: Add list_foreach_entry_from_safe
1032- nir: Use deref intrinsics to set writes_memory when gathering info
1033- intel/fs: Use writes_memory from shader_info
1034- nir: Consider atomic counter intrinsics when setting writes_memory
1035- intel/fs: Remove unused emission of load_simd_with_intel
1036- intel/fs: Remove unused state from brw_nir_lower_cs_intrinsics
1037- intel/fs: Early return when can't satisfy explicit group size
1038- intel/fs: Remove redundant assert()
1039- intel/fs: Remove min_dispatch_width spilling decision from RA
1040- intel/fs: Support INTEL_DEBUG=no8,no32 in compute shaders
1041- intel/fs: Add helper to get prog_offset and simd_size
1042- i965: Use new helper functions to pick SIMD variant for CS
1043- iris: Set CS KernelStatePointer at dispatch
1044- iris: Use new helper functions to pick SIMD variant for CS
1045- anv: Use new helper functions to pick SIMD variant for CS
1046- intel/fs: Generate multiple CS SIMD variants for variable group size
1047- iris, i965: Drop max_variable_local_size
1048- iris, i965: Update limits for ARB_compute_variable_group_size
1049- intel: Add helper to calculate GPGPU_WALKER::RightExecutionMask
1050- nir: Fix printing execution scope of a scoped barrier
1051- spirv: Memory semantics is optional for OpControlBarrier
1052- intel/fs: Add Fall-through comment
1053- nir: Fix logic that ends combine barrier sequence
1054- spirv: Handle most execution modes earlier
1055- nir: Filter modes of scoped memory barrier in nir_opt_load_store_vectorize
1056- spirv: Propagate explicit layout only in types that need it
1057
1058Charmaine Lee (1):
1059
1060- llvmpipe: do not enable tessellation shader without llvm coroutines support
1061
1062Chris Forbes (12):
1063
1064- bifrost: Set RTZ rounding mode for f2i conversion
1065- bifrost: Lower x->bool conversions to != 0
1066- bifrost: Emit "d3d" variant of comparison instructions
1067- bifrost: Document d3d/gl comparison control bit
1068- bifrost: Add lowering for b2i32
1069- bifrost: Add support for nir_op_inot
1070- bifrost: Add support for nir_op_ishl
1071- bifrost: Add support for nir_op_uge
1072- bifrost: Add support for nir_op_imul
1073- bifrost: Add support for nir_op_iabs
1074- bifrost: Honor src swizzle in special math ops
1075- bifrost: Fix packing of ADD_FEXP2_FAST
1076
1077Chris Wilson (6):
1078
1079- iris: Place a seqno at the end of every batch
1080- iris: Convert fences to using lightweight seqno
1081- iris: Store a seqno for each batch in the fence
1082- iris: Initialise stub iris_seqno to 0
1083- iris: Rename iris_seqno to iris_fine_fence
1084- iris: Fixup copy'n'paste mistake in Makefile.sources
1085
1086Christian Gmeiner (31):
1087
1088- etnaviv: fix SAMP_ANISOTROPY register value
1089- etnaviv: do not use int filter when anisotropic filtering is used
1090- ci: bare-metal: make it possible to use a script for serial
1091- ci: extend expect-output.sh
1092- ci: add U-Boot specific fetch strings
1093- etnaviv: drop translate_blend(..)
1094- ci: add arm_test-base docker image
1095- ci: use separate docker images for baremetal builds
1096- ci: fix possible spuriously run of jobs
1097- etnaviv: delete not used struct
1098- etnaviv: convert enums
1099- etnaviv: move etna_lower_io(..) to etnaviv_nir.c
1100- etnaviv: get rid of etna_compile dependency
1101- etnaviv: move etna_lower_alu(..) to etnaviv_nir.c
1102- etnaviv: drop OPT_V define
1103- etnaviv: make more use of compile_error(..)
1104- etnaviv: move liveness related stuff into own file
1105- etnaviv: merge struct etna_compile and etna_state
1106- etnaviv: drop emit macro
1107- etnaviv: move functions that generate asm to own file
1108- etnaviv: move nir compiler related stuff into .c file
1109- etnaviv: move ra into own file
1110- etnaviv: replace prims-emitted query
1111- ci: bare-metal: use nginx to get results from DUT
1112- etnaviv: explicitly set nir_variable_mode
1113- etnaviv: introduce struct etna_compiler
1114- etnaviv: move shader_count to etna_compiler
1115- etnaviv: do register setup only once
1116- etnaviv: fix nir validation problem
1117- etnaviv: call nir_lower_bool_to_bitsize
1118- etnaviv: completely turn off MSAA
1119
1120Christopher Egert (2):
1121
1122- radv: use util_float_to_half_rtz
1123- r600: Use TRUNC_COORD on samplers
1124
1125Clément Guérin (1):
1126
1127- radv: Always expose non-visible local memory type on dedicated GPUs
1128
1129Con Kolivas (1):
1130
1131- Linux: Change minimum priority threads from SCHED_IDLE to nice 19 SCHED_BATCH.
1132
1133Connor Abbott (88):
1134
1135- tu: Support pipelines without a fragment shader
1136- tu: Add a "scratch bo" allocation mechanism
1137- tu: Add noubwc debug flag to disable UBWC
1138- tu: Implement fallback linear staging blit for CopyImage
1139- freedreno/a6xx: Document dual-src blending enable bits
1140- ir3: Fixup dual-source blending slot
1141- tu: Move RENDER_COMPONENTS setting to pipeline state
1142- tu: Implement dual-src blending
1143- tu: Advertise COLOR_ATTACHMENT_BLEND_BIT for blendable formats
1144- tu: Always initialize image_view fields for blit sources
1145- tu: Fall back to 3d blit path for BC1_RGB_* formats
1146- tu: Fix buffer compressed pitch calculation with unaligned sizes
1147- tu: Support VK_FORMAT_FEATURE_BLIT_SRC_BIT for texture-only formats
1148- tu: Fix IBO descriptor for cubes
1149- tu: Respect VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT
1150- tu: Add missing storage image/texel buffer bits
1151- tu: Remove useless post-binning flushes
1152- tu: Don't actually track seqno's for events
1153- tu: Remove useless event_write helpers
1154- tu: Rewrite flushing to use barriers
1155- tu: Fix context faults loading unused descriptor sets
1156- ir3: Pass reserved_user_consts to ir3_shader_from_nir()
1157- tu: Remove num_samp hack
1158- tu: Use the ir3 shader API
1159- tu: Remove tu_shader_compile_options
1160- tu: Set num_components to 0 when building bindless intrinsics
1161- ir3: Don't calculate num_samp ourselves
1162- tu: Actually remove dead variables after io lowering
1163- ir3: Split out variant-specific lowering and optimizations
1164- ir3, freedreno: Round up constlen earlier
1165- ir3: Include ir3_compiler from ir3_shader
1166- ir3: Support variants with different constlen's
1167- ir3: Add ir3_trim_constlen()
1168- tu: Share constlen between different stages properly
1169- freedreno: Refactor ir3_cache shader compilation
1170- freedreno: Share constlen between different stages properly
1171- freedreno: On a5xx+ INDX_SIZE is MAX_INDICES
1172- freedreno/registers: Label firstIndex field in CP_DRAW_INDX_OFFSET
1173- tu: Pass firstIndex directly to CP_DRAW_INDX_OFFSET
1174- freedreno/a6xx: use firstIndex field
1175- nir: Refactor load/store intrinsic helper
1176- nir: add vec2_index_32bit_offset address format
1177- tu: Rewrite variable lowering
1178- tu: Enable KHR_variable_pointers
1179- ir3: Add layer_zero variant bit
1180- tu: Force gl_Layer to 0 when necessary
1181- freedreno/a6xx: Force gl_Layer to 0 when necessary
1182- freedreno: Include adreno_pm4.xml.h before adreno_a6xx.xml.h
1183- freedreno: Sync registers with envytools
1184- freedreno/a6xx: Rename and document HLSQ_UPDATE_CNTL
1185- freedreno/a6xx: Add some documentation for shared consts
1186- tu: Don't invalidate irrelevant state when changing pipeline
1187- freedreno/a6xx: Add stencilref register info
1188- ir3: Handle gl_FragStencilRefARB
1189- tu: Enable VK_EXT_shader_stencil_export
1190- freedreno: Add a helper for computing guardband sizes
1191- tu: Use common guardband helper
1192- freedreno: Use common guardband helper
1193- freedreno/ir3: Fix SSBO size for bindless SSBO's
1194- tu: Enable VK_EXT_depth_clip_enable
1195- freedreno: Clean up CP_DRAW_MULTI_INDIRECT definition
1196- freedreno: Add INDIRECT_COUNT CP_DRAW_INDIRECT_MULTI variants
1197- tu: Integrate WFI/WAIT_FOR_ME/WAIT_MEM_WRITES with cache tracking
1198- tu: Add missing wfi to tu6_emit_hw()
1199- tu: Implement VK_KHR_draw_indirect_count
1200- tu: Fix empty blit scissor case
1201- tu: Fix hangs for DS with no output
1202- tu: Detect invalid-for-binning renderpass dependencies
1203- tu: Enable vertex & fragment stores & atomics
1204- tu: Fix descriptor update templates with input attachments
1205- ir3: Validate bindless samp_tex correctly
1206- ir3: Remove redundant samp_tex validation
1207- ir3: Fix incorrect src flags for samp_tex
1208- tu: Enable resource dynamic indexing
1209- freedreno/rnn: Return success when parsing addvariant
1210- tu: Dump CP_DRAW_INDIRECT_MULTI draw BO's
1211- freedreno/rnn: Support stripes in rnndec_decodereg
1212- freedreno/cffdec: Handle CP_DRAW_INDIRECT_MULTI like other draws
1213- freedreno: Add trace for CP_DRAW_INDIRECT_MULTI
1214- freedreno/a6xx: Fix CP_BIN_SIZE_ADDRESS name
1215- freedreno/rnn: Make rnn_decode_enum() respect variants
1216- freedreno/cffdec: Stop open-coding enum parsing
1217- freedreno/afuc: Add missing rnn_prepdb()
1218- freedreno/afuc: Fix PM4 enum parsing
1219- tu: Fix DST_INCOHERENT_FLUSH copy/paste error
1220- freedreno: Document draw predication packets
1221- tu: Reset has_tess after renderpass
1222- tu: Implement VK_EXT_conditional_rendering
1223
1224D Scott Phillips (4):
1225
1226- intel/fs: Update location of Render Target Array Index for gen12
1227- anv,iris: Fix input vertex max for tcs on gen12
1228- intel/dump_gpu: Fix name of LD_PRELOAD in env append logic
1229- anv/gen11+: Disable object level preemption
1230
1231Daniel Schürmann (54):
1232
1233- aco: either copy-propagate or inline create_vector operands
1234- aco: coalesce parallelcopies during register allocation
1235- nir: add nir_intrinsic_elect to divergence analysis
1236- nir: refactor divergence analysis state
1237- nir: rework phi handling in divergence analysis
1238- nir: simplify phi handling in divergence analysis
1239- nir: reset ssa-defs as non-divergent during divergence analysis instead of upfront
1240- aco: fix WQM coalescing
1241- aco: restrict copying of create_vector operands to GFX9+
1242- aco: don't move create_vector subdword operands to unsupported register offsets
1243- aco: fix corner case in register allocation
1244- aco: don't allow unaligned subdword accesses on GFX6/7
1245- aco: fix register assignment for p_create_vector on GFX6/7
1246- aco: simplify statistics collection for copies
1247- aco: use full-register instructions to implement subdword packing on GFX6/7
1248- aco: Workarounds subdword lowering on GFX6/7
1249- aco: adjust GFX6 subdword lowering workarounds for 8bit
1250- aco: add and use scratch SGPR to lower subdword p_create_vector on GFX6/7
1251- aco: coalesce copies more aggressively when lowering to hw
1252- aco: skip partial copies on first iteration when lowering to hw
1253- aco: optimize packing of 16bit subdword registers on GFX6/7
1254- aco: remove unnecessary split- and create_vector instructions for subdword loads
1255- aco: fix shared subdword loads
1256- aco: reorder calls to aco_validate() and cleanup aco_compile_shader()
1257- aco: don't allow SGPRs on logical phis
1258- aco: fix WQM handling in nested loops
1259- radv/aco: implement logic64 instead of lowering
1260- aco: align swap operations to 4 bytes on GFX6/7
1261- aco: don't allow partial copies on GFX6/7
1262- radv: introduce RADV_DEBUG=llvm option
1263- radv: change use_aco -> use_llvm
1264- radv: enable ACO by default
1265- aco: fix partial copies on GFX6/7
1266- aco: remove superflous (bool & exec) if the result comes from VOPC
1267- nir: also move vecN in case of nir_move_copies
1268- nir: refactor nir_can_move_instr
1269- nir/algebraic: optimize bcsel(a, 0, 1) to b2i
1270- nir: also move b2i in case of nir_move_copies
1271- nir/algebraic: optimize iand/ior of (n)eq zero
1272- nir/algebraic: add optimizations for fsign/isign
1273- nir/algebraic: add some more unop + bcsel optimizations
1274- nir/algebraic: optimize fmul(x, bcsel(c, -1.0, 1.0)) -> bcsel(c, -x, x)
1275- nir/algebraic: optimize (a < 0.0) ? -a : a -> fabs(a)
1276- nir/algebraic: add distributive rules for ior/iand
1277- nir/algebraic: propagate b2i out of ior/iand
1278- nir/algebraic: fold some nested bcsel
1279- aco: fix scratch loads which cross element_size boundaries
1280- aco: ensure to not extract more components than have been fetched
1281- aco: don't split store data if it was already split into more elements
1282- aco: prevent infinite recursion in RA for subdword variables
1283- aco: ensure readfirstlane subdword operands are always dword aligned
1284- radv: call radv_nir_lower_ycbcr_textures after first optimizations
1285- aco: add GFX6/7 subdword lowering tests
1286- aco: execute branch instructions in WQM if necessary
1287
1288Daniel Stone (13):
1289
1290- CI: Disable Panfrost T7x0 jobs
1291- CI: Re-enable Panfrost T7x0 jobs
1292- llvmpipe: Expect increased exp precision on Windows
1293- CI: Windows: Build LLVM and llvmpipe
1294- CI: Disable Panfrost T720/T760
1295- Revert "CI: Disable Panfrost T720/T760"
1296- CI: Enable assertions on Windows
1297- CI: Try shared libraries on Windows
1298- CI: Correct build-directory path on Windows, and keep it
1299- CI: Re-enable the Windows VS2019 build job
1300- CI: Temporarily disable Panfrost T860 jobs
1301- CI: Re-enable Panfrost T860 jobs
1302- CI: Disable Windows build due to unstable infrastructure
1303
1304Danylo Piliaiev (25):
1305
1306- glsl: rename has_implicit_uint_to_int_conversion to *_int_to_uint_*
1307- i965: Fix out-of-bounds access to brw_stage_state::surf_offset
1308- anv: Translate relative timeout to absolute when calling anv_timelines_wait
1309- anv: Fix deadlock in anv_timelines_wait
1310- meson: Disable GCC's dead store elimination for memory zeroing custom new
1311- mesa: Fix double-lock of Shared->FrameBuffers and usage of wrong mutex
1312- st/mesa: Clear texture's views when texture is removed from Shared->TexObjects
1313- intel/fs: Work around dual-source blending hangs in combination with SIMD16
1314- glsl: Don't replace lrp pattern with lrp if arguments are not floats
1315- glsl: inline functions with unsupported return type before converting to nir
1316- i965: Work around incorrect usage of glDrawRangeElements in UE4
1317- st/mesa: account for "loose", per-mipmap level textures in CopyImageSubData
1318- iris: Honor scanout requirement from DRI
1319- iris: Fix fast-clearing of depth via glClearTex(Sub)Image
1320- nir/opt_if: Fix opt_if_simplification when else branch has jump
1321- nir/tests: Add tests for opt_if_simplification
1322- st/mesa: Treat vertex outputs absent in outputMapping as zero in mesa_to_tgsi
1323- anv/nir: Unify inputs_read/outputs_written between geometry stages
1324- spirv: Only require bare types to match when copying variables
1325- glsl: Eliminate out-of-bounds triop_vector_insert
1326- intel/compiler: Fix pointer arithmetic when reading shader assembly
1327- glsl: Eliminate assigments to out-of-bounds elements of vector
1328- nir/lower_io: Eliminate oob writes and return zero for oob reads
1329- nir/large_constants: Eliminate out-of-bounds writes to large constants
1330- nir/lower_samplers: Clamp out-of-bounds access to array of samplers
1331
1332Daryl W. Grunau (1):
1333
1334- prevent multiply defined symbols
1335
1336Dave Airlie (199):
1337
1338- i965: add support for gen 5 pipelined pointers to dump
1339- i965: disable shadow batches when batch debugging.
1340- draw/tess: free tessellation control shader i/o memory.
1341- llvmpipo/nir: free compute shader NIR
1342- llvmpipe: simple texture barrier implementation.
1343- gallivm/sample: add multisample support for texel fetch
1344- gallivm/sample: add multisample image operation support
1345- gallivm/nir/tgsi: add multisample texture sampling.
1346- gallivm/nir: add multisample support to image size
1347- gallivm/nir: add multisample image operations
1348- draw: introduce sampler num samples + stride members
1349- draw: add support for num_samples + sample_stride to the image paths
1350- llvmpipe: add num_samples/sample_stride support to jit textures
1351- llvmpipe: add samples support to image jit
1352- util: add a resource wrapper to get resource samples
1353- llvmpipe: add multisample support to texture allocator.
1354- llvmpipe: add a max samples define set to 4.
1355- gallium/util: split out zstencil clearing code.
1356- llvmpipe: fix race between draw and setting fragment shader.
1357- llvmpipe: add get_sample_position support (v2)
1358- llvmpipe/jit: pass fragment sample mask via jit context.
1359- llvmpipe: pass incoming sample_mask into fragment shader context.
1360- llvmpipe: add internal multisample texture mapping path.
1361- llvmpipe: add multisample resource copy region support.
1362- llvmpipe: add clear texture support for multisample textures.
1363- llvmpipe: handle multisample render target clears
1364- draw: disable point/line smoothing for multisample (v2)
1365- llvmpipe: pass color and depth sample strides into fragment shader.
1366- llvmpipe: record sample info for color/depth buffers in scene
1367- llvmpipe/rast: fix tile clearing for multisample color and depth tiles
1368- llvmpipe: plumb multisample state bit into setup code.
1369- llvmpipe: add multisample bit to fragment shader key.
1370- llvmpipe: change mask input to fragment shader to 64-bit.
1371- llvmpipe: add cbuf/zsbuf + coverage samples to the fragment shader key.
1372- gallivm: add sample id/pos intrinsic support
1373- gallivm: add mask api to force mask
1374- nir/tgsi: translate the interp location
1375- llvmpipe: pass interp location into interpolation code.
1376- llvmpipe: add centroid interpolation support.
1377- llvmpipe: add per-sample interpolation.
1378- llvmpipe: move getting mask value out of depth code. (v2)
1379- llvmpipe: add per-sample depth/stencil test
1380- llvmpipe: move some fs code around
1381- llvmpipe: multisample sample mask + early/late depth pass
1382- llvmpipe: handle multisample early depth test/late depth write
1383- llvmpipe: interpolate Z at sample points for early depth test.
1384- llvmpipe: handle multisample color stores.
1385- llvmpipe: hook up sample position system value
1386- llvmpipe: add multisample alpha to coverage support.
1387- llvmpipe: add multisample alpha to one support
1388- llvmpipe: handle gl_SampleMask writing.
1389- llvmpipe: don't allow branch to end for early Z with multisample
1390- llvmpipe: pass mask store into interp for centroid interpolation
1391- llvmpipe: move color storing earlier in frag shader
1392- llvmpipe: fix multisample occlusion queries.
1393- llvmpipe: disable opaque variant for multisample
1394- llvmpipe: add new rast api to pass full 64-bit mask.
1395- llvmpipe: add fixed point sample positions to scene.
1396- llvmpipe: build 64-bit coverage mask in rasterizer
1397- llvmpipe: fixup multisample coverage masks for covered tiles
1398- llvmpipe: generate multisample triangle rasterizer functions (v2)
1399- llvmpipe: choose multisample rasterizer functions per triangle (v2)
1400- llvmpipe: choose correct position for multisample
1401- llvmpipe: don't choose pixel centers for multisample
1402- drisw: add multisample support to sw dri layer.
1403- llvmpipe: enable 4x sample MSAA + texture multisample
1404- gallivm/sample: add num samples query for txqs (v2)
1405- gallivm/nir: hooks up texture samples queries
1406- llvmpipe: enable GL_ARB_shader_texture_image_samples
1407- llvmpipe: add min samples support to the fragment shader.
1408- llvmpipe: enable ARB_sample_shading
1409- llvmpipe: make sample position a global array.
1410- zink: enable conditional rendering if available
1411- r600: enable TEXCOORD semantic for TGSI.
1412- r600/sfn: plumb the chip class into the instruction emission
1413- r600/sfn: fix cayman float instruction emission.
1414- r600/sfn: cayman fix int trans op2
1415- r600/sfn: add callstack non-evergreen support
1416- r600/sfn: add emit if start cayman support
1417- llvmpipe: don't use sample mask with 0 samples
1418- llvmpipe: use per-sample position not sample id for interp
1419- llvmpipe/interp: fix interpolating frag pos for sample shading
1420- llvmpipe: remove non-simple interpolation paths.
1421- gallivm/nir: add an interpolation interface.
1422- llvmpipe/interp: refactor out use of pixel center offset
1423- llvmpipe/interp: refactor out centroid calculations
1424- llvmpipe: add interp instruction support
1425- llvmpipe/fs: hook up the interpolation APIs.
1426- gallivm/nir: add sample_mask_in support
1427- llvmpipe: add gl_SampleMaskIn support.
1428- r600/sfn: fix nop channel assignment.
1429- llvmpipe: compute shaders work better with all the threads.
1430- llvmpipe: move coroutines out of noopt case
1431- ci: bump virglrenderer to latest version
1432- util/disk_cache: add fallback for disk_cache_get_function_identifier
1433- llvmpipe/cs: overhaul cs variant key state.
1434- llvmpipe/draw: drop variant number from function names.
1435- gallivm: rework coroutine malloc/free callouts.
1436- gallivm: rework debug printf hook to use global mapping.
1437- gallivm: add support for a cache object
1438- gallivm: skip operations if we have a cached object.
1439- gallivm: add cache interface to mcjit
1440- llvmpipe: add infrastructure for disk cache support
1441- gallivm: don't cache shaders that use fetch functions.
1442- llvmpipe/fs: add caching support
1443- llvmpipe/cs: add shader caching
1444- draw: add disk cache callbacks for draw shaders
1445- llvmpipe: hook draw disk cache up
1446- draw: add disk caching for draw shaders
1447- draw/gs: fix emitting inactive primitives crash
1448- draw/gs: add more info to debugging.
1449- gallivm/nir: add group barrier support
1450- llvmpipe: fix subpixel bits reporting.
1451- gallivm/format: convert unsigned values to float properly.
1452- gallivm/conv: enable conversion min code. (v2)
1453- gallivm/sample: fix texel type for stencil 8-bit
1454- llvmpipe/setup: add planes for draw regions if no scissor.
1455- gallivm/cache: don't require a null terminator for cache data.
1456- mesa/gles3: add support for GL_EXT_shader_group_vote
1457- virgl: change vendor id to reflect reality more.
1458- llvmpipe: change vendor to be more generic.
1459- softpipe: change vendor name to something more generic.
1460- gallivm/nir: fix const loading on big endian systems
1461- glsl: fix constant packing for 64-bit big endian.
1462- gallivm/nir: fix big-endian 64-bit splitting/merging.
1463- llvmpipe: fix occlusion queries on big-endian.
1464- mesa/get: fix enum16 big-endian getting.
1465- draw/llvm: fix big-endian mask adjusting
1466- draw: pass nr_samplers into llvm sample state creation.
1467- llvmpipe: pass number of samplers into llvm sampler code.
1468- gallivm/sample: change texture function generator api
1469- gallivm: add indirect texture switch statement builder.
1470- draw: add support for indirect texture access
1471- llvmpipe: add support for indirect texture access.
1472- gallivm/nir: add texture unit indexing
1473- gallivm/nir: handle non-uniform texture offsets
1474- gallivm/sample: pass indirect offset into texture/image units
1475- llvmpipe/draw: wire up indirect offset
1476- gallivm/sample: handle size unit offset
1477- llvmpipe: enable ARB_gpu_shader5
1478- draw: pass number of images to image soa create
1479- llvmpipe: pass number of images into image soa create
1480- gallivm/nir: support passing image index into image code.
1481- gallivm/nir: refactor image operations for indirect support.
1482- gallivm/img: refactor out the texel return type (v2)
1483- gallivm/nir: add support for indirect image loading
1484- draw/sample: add support for indirect images
1485- llvmpipe: handle indirect images properly
1486- ci: fixup tests after all indirect images fixes.
1487- docs: update llvmpipe GL 4.0 status
1488- draw/clip: cleanup viewport index handling code.
1489- draw/clip: fix viewport index for geometry shaders
1490- mesa/version: only enable GL4.1 with correct limits.
1491- llvmpipe: bump texture/scene limits to enable GL 4.1
1492- llvmpipe: bump to GL support to GL 4.1
1493- llvmpipe: enable GL 4.2
1494- gallivm/nir: call end prim at end on all GS streams.
1495- draw: emit so primitives before ending empty pipeline.
1496- draw/gs: fix up current verts in output fetching.
1497- gallivm/draw/gs: pass vertex stream count into shader build
1498- draw/gs: only allocate memory for streams needed.
1499- gallivm/gs_iface: pass stream into end primitive interface.
1500- gallivm/nir: don't access stream var outside bounds
1501- gallivm/nir: end primitive for all streams.
1502- draw: account primitive lengths for all streams.
1503- draw/gs: reverse the polarity of the invocation/prims execution
1504- draw: use common exit path in pipeline finish.
1505- draw: free vertex info from geometry streams.
1506- draw/gs: use mask to limit vertex emission.
1507- ci/virgl: update results after streams fixes.
1508- llvmpipe: add ARB_post_depth_coverage support.
1509- llvmpipe: denote NEW fs when images change.
1510- llvmpipe: flush resources on sampler view binding
1511- llvmpipe/cs: fix image/sampler binding for compute
1512- nouveau: avoid LTO ODR warning (v2)
1513- gallivm/sample: always square rho before fast log2
1514- llvmpipe/format: fix snorm conversion
1515- mesa: change dsa texture error codes for GL 4.6
1516- ci: bump piglit checkout for dsa tests
1517- llvmpipe: fix stencil only formats.
1518- llvmpipe: fix position offset interpolation
1519- llvmpipe/cs: respect render condition
1520- llvmpipe: add framebuffer fetching support (v1.1)
1521- ci/llvmpipe: reenable gpu shader5 tests
1522- llvmpipe: enable EXT_texture_shadow_lod
1523- llvmpipe/draw: handle constant buffer limits and robustness (v1.1)
1524- drisw: add robustness extension support.
1525- glx/drisw: add robustness support
1526- llvmpipe: add device reset query context hook.
1527- llvmpipe: enable robust buffer access + GL 4.3, GLES 3.2 and robust buffer access behaviour
1528- llvmpipe/ms: fix sign extension bug in rasterizer.
1529- Revert "llvmpipe: Use the default behavior of ALLOW_MAPPED_BUFFERS."
1530- radv: cleanup locking around timeline waiting.
1531- llvmpipe: only read 0 for channels being read
1532- llvmpipe/blit: for 32-bit unorm depth blits just copy 32-bit
1533- llvmpipe: enable GL 4.5
1534- llvmpipe/cs: update compute counters not fragment shader.
1535- llvmpipe: include gallivm perf flags in shader cache.
1536- gallivm: disable brilinear for lod bias and explicit lod.
1537
1538David McFarland (1):
1539
1540- radv: link with ld_args_build_id
1541
1542David Stevens (2):
1543
1544- nir: Add colorspace support to YUV lowering pass
1545- i965/i915: Add colorspace support to YUV sampling
1546
1547Denys (1):
1548
1549- gitlab: Ask about reproduction rate in the issue template
1550
1551Dmitriy Nester (8):
1552
1553- mesa: check draw buffer completeness on glClearBufferfv/glClearBufferuiv
1554- nir: replace fnv1a hash function with xxhash
1555- freedreno: replace fnv1a hash function with xxhash
1556- i965: replace fnv1a hash function with xxhash
1557- util/hash_table: replace fnv1a hash function with xxhash
1558- r600: replace fnv1a hash function with xxhash
1559- zink: replace fnv1a hash function with xxhash
1560- util: delete fnv1a hash function
1561
1562Duncan Hopkins (1):
1563
1564- zink. Changed sampler default name.
1565
1566Dylan Baker (41):
1567
1568- docs: Add release notes for 20.0.6
1569- docs: Add SHA256 sums for 20.0.6
1570- docs: update calendar, add news item, and link releases notes for 20.0.6
1571- docs: Add release notes for 20.0.7
1572- docs/relnotes Add sha256 sums to 20.0.7
1573- docs: update calendar, add news item, and link releases notes for 20.0.7
1574- tests: Make tests aware of meson test wrapper
1575- meson: Bump required version to 0.52.0
1576- meson: Use the check_header function
1577- meson: Use build_always_stale instead of build_always
1578- meson: Use builtins for checking gnu __attributes__
1579- drm-shim/meson: The name of the target is a string not a list
1580- drm-shim/meson: Use portable override_options for setting C standard
1581- meson: use gnu_symbol_visibility argument
1582- meson: use 2 space not 3 space indent
1583- meson: deprecated 'true' and 'false' in combo options for 'enabled' and 'disabled'
1584- vulkan-overlay/meson: use install_data instead of configure_file
1585- docs: Add release notes for 20.0.8
1586- docs: Add sha256sums for 20.0.8
1587- docs: update calendar, add news item, and link releases notes for 20.0.8
1588- mesa/swrast: use logf2 instead of util_fast_log2
1589- VERSION: bump for 20.2.0-rc1
1590- .pick_status.json: Update to 9333a8570d2174b73da63c3ee6f1a740ae487ab8
1591- .pick_status.json: Update to 1e28745bc0d3528c1dfc25459456849feb58d407
1592- meson/freedreno: Fix lua requirement
1593- .pick_status.json: Update to fdb97d3d2914c8f887a7968432db4fdbd35d8376
1594- bump version for 20.2.0-rc2
1595- .pick_status.json: Update to 61042b1bdb199f98dd34085ed29a8c492ed9b2a3
1596- .pick_status.json: Update to 6d28270968e0728bf8bdf48a6abd261c50d9ef07
1597- .pick_status.json: Update to ca7d66e847d08914cec0a5e003b400da9c0a2695
1598- VERSION: bump for 20.2.0-rc3
1599- .pick_status.json: Update to 7fbded8b5821a47c26245b181446f972f920a96e
1600- .pick_status.json: Mark e93979ba599355c42df01a89073362b970489a3a as denominated
1601- .pick_status.json: Update to b9927c8c8d0c105699306a68773c015930ff9509
1602- VERSION: bump for 20.2.0-rc4
1603- .pick_status.json: Update to ef980ac0c1cd65993ba0c1d20e1c09b45bfef99d
1604- fix: gallivm: disable brilenear for lod bias and explicit lod.
1605- .pick_status.json: Update to a1f46d7b6943699e5efb60fbcfdd1450db85adb1
1606- amd/ac_surface: convert tabs to 3 spaces
1607- .pick_status.json: Update to 90b98c06493f8a9759e5496d5ec91fb60edf7b92
1608- .pick_status.json: Update to 472a20c5fc0feda0f074b4ff95fd7c7a6305c8cd
1609
1610Eduardo Lima Mitev (2):
1611
1612- freedreno: Centralize UUID generation into new files freedreno_uuid.c/h
1613- freedreno/uuid: Generate meaningful device and driver UUID
1614
1615Elie Tournier (12):
1616
1617- virgl: implement ARB_clear_texture
1618- virgl: Enable CAP_CLEAR_TEXTURE if host supports it
1619- docs/features: Add ARB_clear_texture to virgl
1620- gallium: add TGSI_PROPERTY_FS_BLEND_EQUATION_ADVANCED
1621- glsl_to_tgsi: Set TGSI_PROPERTY_FS_BLEND_EQUATION_ADVANCED
1622- virgl: Reserved last caps of capability_bits
1623- gallium: Add PIPE_CAP_BLEND_EQUATION_ADVANCED
1624- st: expose KHR_blend_equation_advanced if PIPE_CAP_BLEND_EQUATION_ADVANCED
1625- glsl_to_ir: do lower_blend_equation if PIPE_CAP_FBFETCH
1626- virgl: Use alpha_src_factor to store blend_equation_advenced value
1627- virgl: Encode barrier for blend_equation_advanced
1628- virgl: set PIPE_CAP_BLEND_EQUATION_ADVANCED
1629
1630Emmanuel (3):
1631
1632- meson: Do not enable USE_ELF_TLS for FreeBSD
1633- iris: Explicitly cast value to uint64_t
1634- i965: Explicitly cast value to uint64_t
1635
1636Emmanuel Gil Peyrot (2):
1637
1638- util/rand_xor: use getrandom() when available
1639- Expose EGL_KHR_platform_* when EXT is supported
1640
1641Emmanuel Vadot (1):
1642
1643- meson: Add versioning for xvmc tracker
1644
1645Eric Anholt (228):
1646
1647- freedreno/ir3: Initialize the unused dwords of the immediates consts.
1648- freedreno/ir3: Drop redundant IR3_REG_HALF setup in ALU ops.
1649- freedreno/ir3: Leave bools as 1-bit, storing them in full regs.
1650- freedreno/ir3: Set up the block predecessors for a3xx TF
1651- freedreno/ir3: Fix the a3xx TF outputs stores.
1652- freedreno/ir3: Fix register allocation assertion failures.
1653- freedreno: Stop doing binning shaders other than the VS in shader-db.
1654- freedreno/ir3: Skip tess epilogue if the program is missing stores.
1655- freedreno: Fix assertion failures on GS/tess shaders with shader-db enabled.
1656- freedreno/ir3: Remove unused half precision shader key flag.
1657- freedreno: Emit debug messages when doing draw-time recompiles of shaders.
1658- freedreno/ir3: Improve shader key normalization.
1659- freedreno/ir3: Stop initializing regid of so->outputs during setup.
1660- freedreno/ir3: Set up outputs for multi-slot varyings.
1661- freedreno: Immediately compile a default variant of shaders.
1662- freedreno/ir3: Set the FS .msaa flag to true during precompiles.
1663- freedreno/ir3: Add some more tests of cat6 disasm.
1664- freedreno/ir3: Sync some new changes from envytools.
1665- freedreno/ir3: Define the bindful uniform/nonuniform desc modes for cat6 a6xx.
1666- freedreno/ir3: Disable sin/cos range reduction for mediump.
1667- ci: Clean up setup of the job-specific env vars in baremetal testing.
1668- ci: Enable IRC flake reporting on freedreno baremetal boards.
1669- ci: Improve the flakes reports on IRC.
1670- ci: Fix the nick used in IRC reporting.
1671- freedreno: Deduplicate ringbuffer macros with computerator/fdperf
1672- freedreno: Clean up tests around ORing in the reloc flags.
1673- freedreno: Rename append_bo() in case it doesn't get inlined.
1674- freedreno: Initialize the bo's iova at creation time.
1675- freedreno: Start moving relocs flags into the BOs.
1676- freedreno: Replace OUT_RELOCD with permanently flagging shader BOs for it.
1677- freedreno: Mark all ringbuffer BOs as to be dumped on crash.
1678- freedreno: Tell the kernel that all BOs are for writing.
1679- freedreno: Replace OUT_RELOCW with OUT_RELOC.
1680- freedreno: Drop the "write" arg to emit_const_bo now relocs don't care.
1681- nir: Fix count when we didn't lower load_uniforms but did shift load_ubos.
1682- freedreno: Fix non-constbuf-upload UBO block indices and count.
1683- freedreno: Add a nohw flag to skip submitting to the kernel.
1684- freedreno: Split the fd_batch_resource_used by read vs write.
1685- freedreno: Add an early out for preparing to read a resource.
1686- freedreno: Move the resource_read early out to an inline.
1687- freedreno: Skip taking the lock for resource usage if it's already flagged.
1688- freedreno/a4xx+: Increase max texture size to 16384.
1689- freedreno/a6xx: Improve layout testcase logging for UBWC fails.
1690- freedreno/a6xx: Add a testcase for UBWC buffer sharing.
1691- freedreno: Pull the tile_alignment lookup for a layout to a helper.
1692- freedreno/a6xx: Fix UBWC blockheight for RG8.
1693- freedreno/a6xx: Fix UBWC mipmap sizing.
1694- freedreno/a6xx: Fix UBWC mipmapping height alignment.
1695- nir: Include num_ubos in the printed shader (if nonzero).
1696- freedreno/ir3: Clean up a silly nir_src_for_ssa(src.ssa).
1697- freedreno/ir3: Leave the cursor alone during ir3_nir_try_propagate_bit_shift.
1698- freedreno/ir3: Move i/o offset lowering after analyze_ubo_ranges.
1699- freedreno: Trim num_ubos to just the ones we haven't lowered to constbuf.
1700- freedreno/a6xx: Use LDC for UBO loads.
1701- freedreno: Drop the noubo fails list for CI, since there aren't any now.
1702- freedreno: Fix attempts to push UBO contents past the constlen on pre-a6xx.
1703- freedreno: Fix resource layout dump loop.
1704- freedreno: Avoid duplicate BO relocs in FD_RINGBUFFER_OBJECTs.
1705- ci: Move cross file generation to a shared script.
1706- ci: Autodetect whether we need cross setup in lava_arm builds.
1707- ci: Make cmake toolchain file for deqp cross build setup.
1708- ci: Make the create-rootfs more resilient.
1709- ci: Update versions of packages to remove from rootfses.
1710- ci: Switch the baremetal runner to be an x86 docker image.
1711- ci: Disable SMP on the a5xx boards.
1712- ci: Make a530's GLES3/31 fractional runs much more complete.
1713- freedreno/a5xx: Move resource layout to fdl.
1714- freedreno/fdl: Separate the list of a6xx testcases from the the test code.
1715- freedreno/a5xx: Add the outline of a unit test for a5xx layout.
1716- freedreno/a5xx: Set MIN_LAYERSZ on 3D textures like we do on a6xx.
1717- freedreno/a5xx: Define the 2D blit UBWC pitch fields
1718- ci: Fix DEQP_CASELIST_FILTER (used by a630 noubo run)
1719- ci: Do an explicit NIR validation-enabled pass on freedreno a630.
1720- ci: Don't forget to set NIR_VALIDATE in baremetal runs.
1721- ci: Enable a fractional run with UBO-to-constbuf disabled on a3xx.
1722- ci: Improve baremetal's logging of the job env var passthrough.
1723- freedreno/a6xx: Fix the size of buffer image views.
1724- freedreno: Fix printing of unused src in disasm of cat6 RESINFO.
1725- freedreno: Add more resinfo/ldgb testcases.
1726- freedreno: Fix resinfo asm, which doesn't have srcs besides IBO number.
1727- freedreno: Set the immediate flag in a4/a5xx resinfos.
1728- freedreno/ir3: Refactor out IBO source references.
1729- freedreno/ir3: Move handle_bindless_cat6 to compiler_nir and reuse.
1730- freedreno/ir3: Use RESINFO for a6xx image size queries.
1731- ci: Drop double ".txt" suffix on the unexpected results file.
1732- ci: Drop old comment about enabling --deqp-watchdog.
1733- ci: Auto-detect the architecture for VK ICD filenames.
1734- ci: Add DEQP_EXPECTED_RENDERER support for VK tests.
1735- ci: Move baremetal DEQP_NO_SAVE_RESULTS setup to the yml.
1736- ci: Quick exit qpa extraction for non-matching qpas.
1737- ci: Disable the firmware loader user helper option in arm64 kernels.
1738- ci: Build a cheza kernel.
1739- ci: Add scripts for controlling bare-metal chezas.
1740- ci: Switch cheza (freedreno a630) testing to baremetal.
1741- ci: Don't build an arm_test container now that the last user is gone.
1742- ci: Rename x86_cross_arm_test to just arm_test.
1743- turnip: Move vertex buffer bindings to SET_DRAW_STATE.
1744- turnip: Don't bother clamping VB size.
1745- turnip: Simplify vertex buffer bindings.
1746- turnip: Use tu_cs_emit_regs() for BLEND_CONTROL.
1747- turnip: Add support for alphaToOne.
1748- freedreno/a6xx: Add support for ALPHA_TO_ONE.
1749- freedreno: Upload gallium constbufs as needed when referenced as a UBO.
1750- freedreno/ir3: Refactor ir3_cp's lower_immed().
1751- freedreno/ir3: Stop pushing immediates once we've filled the constbuf.
1752- freedreno/ir3: Drop unnecessary alignment of pushed UBO size.
1753- freedreno/ir3: Stop shifting UBO 1 down to be UBO 0.
1754- freedreno/ir3: Account for driver params in UBO max const upload.
1755- freedreno/ir3: Drop the max_const on a6xx to 512.
1756- freedreno/ir3: Handle cases where we decide not to lower UBO 0 loads.
1757- turnip: Fix crashes in compute with no descriptors to load.
1758- ci: Bump up to the current version of the VK CTS.
1759- ci: Disable shader cache on vulkan CI runs.
1760- ci: Build the full VK CTS for baremetal testing.
1761- ci: Enable pre-merge fractional vulkan CTS runs on the turnip driver.
1762- ci: Use rsync for initial nfsroot population on cheza.
1763- turnip: Expose robustBufferAccess.
1764- freedreno/a6xx: Fix clip_halfz support.
1765- ci: Leave a note as to what might be going on with a test.
1766- ci: Fix weird filesystem globs appearing in failed test .qpa files.
1767- ci: Disable some flaky tests on turnip.
1768- ci/bare-metal: Reword the final output of the init script on the board.
1769- ci/bare-metal: Make which test to run configurable.
1770- ci/bare-metal: Use the deqp-runner bits straight out of the artifacts.
1771- ci/bare-metal: Stop fetching the git tree.
1772- ci/bare-metal: Terminate the job with an error on kernel panic.
1773- docs: Replace ancient swrast conformance docs with more current information.
1774- docs: Add dri-devel to the mailing lists and drop the DRI wiki link.
1775- ci: disable the windows tests until the runner can be stabilized again
1776- ci: Bump vulkan CTS to 1.2.3.0.
1777- ci: Enable NIR validation on a630 GLES2 and VK tests.
1778- ci/bare-metal: Skip setting of unset variables at startup.
1779- ci/bare-metal: Don't include dev packages in arm*test.
1780- ci/tracie: Print the path if the trace isn't found.
1781- ci/tracie: Fix apitrace dump using "less" which isn't in the ARM rootfs.
1782- ci: Add a freedreno a630 tracie run.
1783- freedreno/a6xx: Define the register fields for polygon fill mode.
1784- turnip: Add support for polygon fill modes.
1785- freedreno/a6xx: Add support for polygon fill mode (as long as front==back).
1786- ci: Remove a stray "always" on the freedreno traces job.
1787- ci/bare-metal: Fail early when we get stuck powering on a cheza.
1788- ci/baremetal: Bump the kernel to a recent drm-msm-fixes for msm semaphores.
1789- turnip: Do better TU_DEBUG=startup logging of drmGetDevices2() failure.
1790- turnip: Fix error handling of DRM_MSM_GEM_INFO ioctls.
1791- turnip: Properly return VK_DEVICE_LOST on queuesubmit failures.
1792- gallium/util: Add a helper function for point sprite handling.
1793- vc4: Enable PIPE_CAP_TGSI_TEXCOORD.
1794- v3d: Enable PIPE_CAP_TGSI_TEXCOORD.
1795- v3d: Fix -Wmaybe-uninitialized compiler warning in the v33 code.
1796- ci: Disable pixmark-piano trace on a630 due to GPU hangs.
1797- util: Avoid strict aliasing bugs in xxhash.
1798- util: Mark util_format_description() as a const function.
1799- softpipe: Clean up softpipe's SSBO load/store interpreting instructions.
1800- util: Remove unused util_format_planar_is_supported().
1801- etnaviv: Use the util_pack_color_union() helper.
1802- gallium/util: Fix location of the comment about S8_UINT handling.
1803- gallium/util: Clean up the Z/S tile write path.
1804- gallium/util: Move the Z/S handling to the outside of get_tile().
1805- svga: Reuse util_format_unpack_rgba().
1806- util: Merge util_format_write_4* functions.
1807- util: Merge util_format_read_4* functions.
1808- util: Use designated initializers to clean up the format tables' pack/unpack.
1809- llvmpipe: Generalize "could llvmpipe fetch this format" check in unit testing.
1810- util: Remove the stub pack/unpack functions for YUV formats.
1811- util: Share a single function pointer for the 4-byte rgba unpack function.
1812- docs: Move the current CI .rst doc to docs/ci/ and link to it from .gitlab-ci.
1813- docs: Move the conformance and the CI docs to a top level Testing section.
1814- docs: Move the gitlab-ci docs to RST.
1815- docs: Relax the expectations of HW CI farms.
1816- docs: Document how to interact with docker containers.
1817- freedreno/ir3_cmdline: Fix an uninit var warning.
1818- freedreno/ir3: Fix uninit var warning.
1819- intel: Fix release-build warnings about sf_entry_size.
1820- intel/perf: Fix unused var warning in release builds.
1821- intel/perf: Move perf query register programming to static tables.
1822- freedreno/a2xx: Fix compiler warning in disasm.
1823- meson: Enable GCing of functions and data from compilation units by default.
1824- freedreno/ir3: Fix duplicated fine derivatives instructions.
1825- freedreno/ir3: Add unit tests for derivatives disasm.
1826- ci: Use FDO_CI_CONCURRENT as our -j flags when present in the runner env.
1827- freedreno/ir3: Add a note about the instructions in the disasm test.
1828- freedreno/ir3: Add a bunch more tests for cat6 opcodes.
1829- freedreno/ir3: Refactor cat6 general dst printing.
1830- freedreno/ir3: Fix disasm of register offsets in ldp/stp.
1831- freedreno/ir3: Add missing ld_args_build_id to the ir3_delay unit test.
1832- ci: Set XDG_CACHE_HOME to tmpfs for bare-metal runners to avoid NFS.
1833- ci: Update checksums for freedreno traces.
1834- llvmpipe: Remove a bunch of default handling of pipe caps.
1835- llvmpipe: Use the default behavior of ALLOW_MAPPED_BUFFERS.
1836- softpipe: Remove a bunch of default handling of pipe caps.
1837- softpipe: Use the default behavior of ALLOW_MAPPED_BUFFERS.
1838- virgl: Remove a bunch of default handling of pipe caps.
1839- swr: Remove a bunch of default handling of pipe caps.
1840- swr: Use the default behavior of ALLOW_MAPPED_BUFFERS.
1841- svga: Remove a bunch of default handling of pipe caps.
1842- i915: Remove a bunch of default handling of pipe caps.
1843- softpipe: Refactor pipe_shader_state setup.
1844- softpipe: Convert to comma-separated SOFTPIPE_DEBUG for debug options.
1845- softpipe: Add support for reporting shader-db output.
1846- softpipe: Enable PIPE_CAP_TGSI_TEXCOORD.
1847- softpipe: Enable PIPE_CAP_TGSI_ANY_REG_AS_ADDRESS;
1848- ci/bare-metal: Capture the first devcoredump a job produces.
1849- drm-shim: Return -EINVAL instead of abort()ing on unknown ioctls.
1850- docs: Explain how to set up a personal gitlab runner.
1851- nir: Add a pass to cut the trailing ends of vectors.
1852- i965: Enable vector shrinking in the vec4 backend.
1853- amd: Swap from nir_opt_shrink_load() to nir_opt_shrink_vectors().
1854- nir: Remove the old nir_opt_shrink_load.
1855- freedreno: Fix "Offset of packed bitfield changed" warnings:
1856- nir/lower_amul: Use num_ubos/ssbos instead of recomputing it.
1857- nir: Add a little more docs about NIR's constant_data.
1858- nir: Print the constant data size associated with a shader.
1859- freedreno/ir3: Fix the type of half-float indirect uniform loads.
1860- freedreno/a6xx: Document the bit for the magic 32bit-uniforms-as-16b mode.
1861- freedreno/computerator: Set SP_MODE_CONTROL to the same value as vulkan/GL
1862- freedreno/ir3: Merge the redundant immediate_idx/immediates_count fields
1863- freedreno/ir3: Simpify the immediates from an array of vec4 to array of dwords.
1864- freedreno: Rename emit_const_bo() to emit_const_ptrs().
1865- freedreno: Split ir3_const's user buffer and indirect upload APIs.
1866- freedreno/ir3: Clean up instrlen setup.
1867- freedreno: Increase the NUM_UNIT on compute's consts in indirect dispatch.
1868- freedreno: Add more asserts for DST_OFF/NUM_UNIT in indirect const uploads.
1869- freedreno/ir3: Fix assertion failures dumping CS high full regs.
1870- turnip: Make sure we include the build id.
1871- gallium/tgsi_exec: Fix up NumOutputs counting
1872- freedreno: Make the pack struct have a .qword for wide addresses.
1873- turnip: Fix truncation of CS shader iovas to 32 bits.
1874- turnip: Fix truncation of iovas to 32 bits in queries.
1875
1876Eric Engestrom (146):
1877
1878- cut 20.1 branch
1879- docs: update calendar for 20.1.0-rc2
1880- post_version.py: fix branch name construction for release candidates
1881- post_version.py: invert `is_point` into `is_first_release` to make its purpose clearer
1882- post_version.py: stop adding release candidates to the index and relnotes
1883- docs: update calendar for 20.1.0-rc3
1884- gitlab-ci: exclude scripts that don't affect the build
1885- util/rand_xor: make it clear that {,s_}rand_xorshift128plus take *exactly 2* uint64_t
1886- util/rand_xor: drop unused header
1887- util/rand_xor: fallback Linux to time-based instead of fixed seed
1888- util/rand_xor: extend the urandom path to all non-Windows platforms
1889- docs: update calendar for 20.1.0-rc4
1890- anv: pass the fd directly to anv_gem_reg_read()
1891- anv: replace magic `| 1` with already #define'd name
1892- anv: disable VK_EXT_calibrated_timestamps when the timestamp register is unreadable
1893- git_sha1_gen.py: fix out-of-date comment
1894- git_sha1_gen.py: fix code style
1895- git_sha1_gen.py: fix whitespace
1896- compiler: delete leftover autotools test wrapper
1897- no_extern_c.h: fix typo in comment
1898- tree-wide: fix deprecated GitLab URLs
1899- docs: drop no-longer-relevant comment about bugzilla
1900- docs: Add release notes for 20.1.0
1901- docs: update calendar, add news item, and link releases notes for 20.1.0
1902- meson: remove "empty array"/"array of an empty string" confusion
1903- glapi: remove deprecated .getchildren() that has been replace with an iterator
1904- intel/genxml: drop sort_xml.sh and move the loop directly in gen_sort_tags.py
1905- intel: fix gen_sort_tags.py
1906- docs: Add release notes for 20.1.1
1907- docs: update calendar, add news item, and link releases notes for 20.1.1
1908- v3d: add missing unlock() in error path
1909- intel/genxml: drop python 2 support for gen_sort_tags.py
1910- intel/genxml: replace gen_sort_tags.py MIT licence with SPDX equivalent
1911- docs: update the blocks of unused EGL enums assigned to us
1912- i965: drop dead #include "config.h"
1913- iris: drop dead #include "config.h"
1914- gen_release_notes.py: update script to the new rST way of things
1915- post_version.py: update script to the new rST way of things
1916- intel/tools: rewrite run-test.sh in python
1917- intel/tools: make test aware of the meson test wrapper
1918- khronos-update.py: add script to simplify update of Khronos headers & xml files
1919- docs: remove plain-text copy of versions.rst
1920- util/os_file: replace broken windows-detection code with detect_os.h
1921- util: introduce os_dupfd_cloexec() helper
1922- replace all F_DUPFD_CLOEXEC with os_dupfd_cloexec()
1923- vulkan/wsi: replace all dup() with os_dupfd_cloexec()
1924- radv: replace all dup() with os_dupfd_cloexec()
1925- anv: replace all dup() with os_dupfd_cloexec()
1926- iris: replace all dup() with os_dupfd_cloexec()
1927- i965: replace all dup() with os_dupfd_cloexec()
1928- egl: replace all dup() with os_dupfd_cloexec()
1929- etnaviv: replace all dup() with os_dupfd_cloexec()
1930- freedreno: replace all dup() with os_dupfd_cloexec()
1931- svga: replace all dup() with os_dupfd_cloexec()
1932- virgl: replace all dup() with os_dupfd_cloexec()
1933- docs: publish our release maintainers' keys
1934- docs: remind release maintainers to sign the tarballs and publish their key
1935- docs: suggest alternative installation methods for meson
1936- docs: stop considering `Cc: mesa-stable` as an email address
1937- docs: reword "sending a patch revision" to "updating a merge request"
1938- docs: drop `git sendemail` instructions
1939- docs: prefer `Fixes:` over `Cc: mesa-stable`
1940- docs: add some formatting to the "backport merge request" option
1941- docs: reword a sentence a bit
1942- docs: make it clear that the tags needs to be in the commit message
1943- docs: move `Fixes:` tag explanation to its own section
1944- docs: move "stable" tag explanation next to `Fixes:`
1945- driconf: drop 28% catalan translation
1946- driconf: drop 15% german translation
1947- driconf: drop 26% spanish translation
1948- driconf: drop 6% french translation
1949- driconf: drop 8% dutch translation
1950- driconf: drop 9% swedish translation
1951- driconf: drop now unused translation facility
1952- util: rename xmlpool.h to driconf.h
1953- gitlab-ci: drop gettext from the build images
1954- docs: drop deleted file from extra sphinx files
1955- docs: cat maintainer keys to a single file
1956- docs: add some padding to the release calendar
1957- docs: add planning for 20.2
1958- bin/symbols-check: explain C++ symbols workaround
1959- docs: Add release notes for 20.1.2
1960- docs: update calendar and link releases notes for 20.1.2
1961- docs: fix 20.1.2 relnotes
1962- docs: add a page explaining the GitLab CI and the Intel CI
1963- mesa/glformats: make _mesa_gles_error_check_format_and_type() more consistent
1964- docs: add release notes for 20.1.3
1965- docs: update calendar and link releases notes for 20.1.3
1966- docs: fix a bunch of typos
1967- egl: always compile surfaceless
1968- vulkan: automatically compile the `display` platform when available
1969- meson: move xlib-lease block further down
1970- egl: automatically compile the `drm` platform when available
1971- introduce `commit_in_branch.py` script to help devs figure this out
1972- bin/gen_release_notes.py: drop new_features.txt when we release XX.Y.0
1973- egl/wayland: add missing newline between functions
1974- glx: drop always-true #ifdef
1975- docs/submittingpatches: add more than one `Cc: mesa-stable` example to the examples list
1976- meson/intel: add missing dep on git_sha1.h
1977- meson: fix android vulkan build
1978- egl: inline fallback for create_pixmap_surface
1979- egl: inline fallback for create_pbuffer_surface
1980- egl: drop unused fallback function
1981- egl: inline fallback for swap_buffers_with_damage
1982- egl: inline fallback for swap_buffers_region
1983- egl: inline fallback for post_sub_buffer
1984- egl: inline fallback for copy_buffers
1985- egl: inline fallback for query_buffer_age
1986- egl: inline fallback for create_wayland_buffer_from_image
1987- egl: inline fallback for get_sync_values
1988- egl: drop now empty egl_dri2_fallbacks.h
1989- egl: mark the rest of the callbacks as mandatory or optional
1990- egl: inline _EGLAPI into _EGLDriver
1991- docs: add release notes for 20.1.4
1992- docs: update calendar and link releases notes for 20.1.4
1993- post_version.py: don't generate relnotes twice
1994- post_version.py: drop incorrect conf.py changes
1995- post_version.py: stop using non-existent functions and fix commit message
1996- post_version.py: update the files in the current worktree, not the one with the script that we run
1997- post_version.py: fix relnotes links
1998- bin/gen_release_notes: automatically commit release notes
1999- docs/releasing: improve wording
2000- bin/khronos-update: having a folder in include/ is not a requirement
2001- bin/khronos-update: add support for the SPIRV files
2002- bin/khronos-update: add workaround for python bug 9625
2003- egl: replace _eglInitDriver() with a simple variable
2004- egl: drop unnecessary _eglGetDriver()
2005- egl: fix _eglMatchDriver() return type
2006- egl: inline _eglMatchAndInitialize() and refactor _eglMatchDriver()
2007- egl: rename _eglMatchDriver() to _eglInitializeDisplay()
2008- egl: drop left-over function prototype
2009- egl: const _eglDriver
2010- egl/haiku: drop overwritten preset of EGL version
2011- egl: consistently use dri2_egl_display() helper macro
2012- meson: fix `-D xlib-lease=auto` detection
2013- docs: add release notes for 20.1.5
2014- docs: update calendar and link releases notes for 20.1.5
2015- pick-ui: specify git commands in "resolve cherry pick" message
2016- egl/entrypoint-check: split sort-check into a function
2017- egl/entrypoint-check: add check that GLVND and plain EGL have the same entrypoints
2018- driconf: fix force_gl_vendor description
2019- meson: bump required glvnd version
2020- egl/x11_dri3: enable & require xfixes 2.0
2021- egl/x11_dri3: implement EGL_KHR_swap_buffers_with_damage
2022- meson: don't advertise TLS support if glx wasn't build with it
2023- meson: drop leftover PTHREAD_SETAFFINITY_IN_NP_HEADER
2024
2025Erico Nunes (16):
2026
2027- lima/ppir: introduce liveness internal live set
2028- lima/ppir: fix lod bias register codegen
2029- lima/ppir: do not assume single src for pipeline outputs
2030- lima/ppir: combine varying loads in node_to_instr
2031- lima/ppir: duplicate intrinsics in nir
2032- lima/ppir: duplicate consts in nir
2033- lima/ppir: remove unused clone functions
2034- lima/ppir: rework emit nir to ppir
2035- lima/ppir: rework store output
2036- lima/ppir: add fallback mov option for const scheduler
2037- lima/ppir: rework select conditions
2038- lima/ppir: handle failures on all ppir_emit_cf_list paths
2039- lima/ppir: improve handling for successors in other blocks
2040- lima/ppir: rework tex lowering
2041- lima/ppir: optimize tex loads with single successor
2042- lima/ppir: use a ready list in node_to_instr
2043
2044Erik Faye-Lund (124):
2045
2046- compiler/nir: move tan-calculation to helper
2047- vtn/opencl: add native_tan-support
2048- vtn/opencl: native variants of sin/cos
2049- vtn/opencl: native divide support
2050- vtn/opencl: native powr support
2051- vtn/opencl: native recip support
2052- vtn/opencl: native rsqrt support
2053- vtn/opencl: native sqrt support
2054- compiler/glsl: explicitly store NumUniformBlocks
2055- mesa/st: consider NumUniformBlocks instead of num_ubos when binding
2056- zink: use nir_lower_uniforms_to_ubo
2057- zink: lower b2b to b2i
2058- util/os_memory: never use os_memory_debug.h
2059- st/wgl: pass st_context_iface into stw_st_framebuffer_present_locked
2060- st/wgl: allocate and resolve msaa-textures
2061- docs/features: add zink features
2062- zink: load vk_GetMemoryFdKHR while creating screen
2063- zink: add a GET_PROC_ADDR macro to simplify load_device_extensions
2064- docs/features: mark GL_NV_conditional_render as done for zink
2065- zink: disable vkCmdResolveImage when respecting render-condition
2066- zink: do not expose real value for PIPE_CAP_MAX_VIEWPORTS
2067- zink: correct PIPE_SHADER_CAP_MAX_SHADER_IMAGES
2068- zink: mark depth-component cube-maps as done
2069- zink: implement i2b1
2070- docs: fix broken release-calendar
2071- zink: hammer in an explicit wait when retrieving buffer contents for reading
2072- zink: use samples from state
2073- zink: do not dig into resource for nr_samples
2074- zink: pass batch instead of context for queries
2075- zink: implement nir_texop_txf_ms
2076- zink: expose PIPE_CAP_TEXTURE_MULTISAMPLE
2077- docs/features: mark GL_ARB_texture_multisample as done for zink
2078- zink: use general-layout when blitting to/from same resource
2079- zink: Use store_dest_raw instead of storing an uint
2080- nir: reuse existing psiz-variable
2081- zink: emulate B8G8R8X8_SRGB with B8G8R8A8_SRGB
2082- zink: assert that image-view format isn't undefined
2083- zink: only report device-local memory as video-memory
2084- gallium/hud: do not specify potentially invalid depth-range
2085- TEMP: add rst-conversion scripts
2086- docs: convert articles to reructuredtext
2087- TEMP: remove rst-conversion scripts
2088- docs: delete no longer needed file
2089- docs: fixup botched table
2090- docs: escape double colons
2091- docs: escape asterisks
2092- docs: escape trailing underscores properly
2093- docs: fixup broken rst
2094- docs: fixup heading-levels
2095- docs: use sphinx
2096- docs: disable syntax-highlighting by default
2097- docs: use code-block with caption instead of table
2098- docs: format notes as rst-notes
2099- docs: use code-blocks
2100- docs: drop open-coded toc for articles
2101- docs: add xlibdriver to table-of-contents
2102- docs: do not copy source-files to site
2103- docs: use rst footnotes instead of manual ones
2104- docs: reformat license table as rst table
2105- docs: use rst-note for highlighted text
2106- docs: bundle extra files
2107- docs: include specs into the generated docs
2108- gitlab-ci: build and deploy docs
2109- docs: drop news in favour of the introduction as index-page
2110- README: update references to internal docs
2111- docs: update internal references
2112- docs/relnotes: update internal references
2113- radv: update internal reference
2114- bin/perf-annotate-jit.py: update internal reference
2115- docs/release-calendar: restore missing id
2116- nir: do not try to merge xfb-outputs
2117- Revert "gallium/hud: don't use user vertex buffers"
2118- gallium/hud: don't use user vertex buffers
2119- zink: enable cull-distance if supported
2120- zink: expose GLSL 1.30
2121- docs: update internal references
2122- docs/relnotes: update internal references
2123- docs: fixup relnotes after rst-conversion
2124- docs/features: mark GL3 as complete for zink
2125- docs/features: update ARB_texture_buffer_object line
2126- docs/features: remove driver-list for forward-compatible context
2127- mesa/main: fix inverted condition
2128- gallium/os: call "ANSI" version of GetCommandLine
2129- graw/gdi: do not depend on UNICODE macro
2130- gallium/util: limit STACK_LEN on Windows
2131- gallium/util: add missing include
2132- docs: update favicon
2133- docs: remove non-existent reference
2134- docs: restore accidentally dropped labels
2135- docs: fix internal references
2136- docs: use ref-links for internal references
2137- gallium/docs: update to recent sphinx
2138- gallium/docs: fixup formatting of numbered lists
2139- gallium/docs: remove reference to non-existent label
2140- gallium/docs: use none for highlight_language
2141- gallium/docs: prefix exts dir with underscore
2142- gallium/docs: remove non-existent static dir
2143- gallium/docs: remove unused imgmath extension
2144- ci: only build docs in the upstream-repo
2145- ci: only build docs if any docs changed
2146- ci: test docs for non-master builds
2147- ci: move deploy-stage later in the pipeline
2148- ci: move test-docs to container stage
2149- ci: add graphviz to the .docs-base template
2150- merge gallium docs into main docs
2151- docs: clean up gallium index-file
2152- docs: add an extension to generate redirects
2153- docs: move gallium specific docs into gallium folder
2154- docs: use svg for graphviz output
2155- docs: fixup envvar output
2156- zink: expose depth-clip if supported
2157- mesa/main: factor out one-time-init into a helper
2158- mesa/main: use call_once instead of open-coding
2159- gallium/util: do not use _MTX_INITIALIZER_NP on Windows
2160- mesa/main: use p_atomic_inc_return instead of locking
2161- mesa: do not use bitfields for advanced-blend state
2162- mesa: treat Color._AdvancedBlendMode as enum
2163- zink: use ralloc in nir-to-spirv
2164- zink: use ralloc for plain malloc-calls
2165- zink: pass mem_ctx to ralloc_size-call
2166- zink: use ralloc for spirv_builder as well
2167- mesa/program: fix shadow property for samplers
2168- docs: add some very basic documentation about zink
2169- mesa: handle GL_FRONT after translating to it
2170
2171Francisco Jerez (23):
2172
2173- intel/ir: Update performance analysis parameters for memory fence codegen changes.
2174- iris: Simplify iris_batch_prepare_noop().
2175- iris: Extend iris_context dirty state flags to 128 bits.
2176- iris: Add batch-local synchronization book-keeping to iris_bo.
2177- iris: Add infrastructure to partition batch into sync boundaries.
2178- iris: Bracket batch operations which access memory within sync regions.
2179- iris: Annotate all BO uses with domain and sequence number information.
2180- iris: Drop redundant iris_address::write flag.
2181- iris: Report use of any in-flight buffers on first draw call after sync boundary.
2182- iris: Introduce cache coherency matrix for batch-local memory ordering.
2183- iris: Update cache coherency matrix on PIPE_CONTROL.
2184- iris: Implement buffer-local memory barrier based on cache coherency matrix.
2185- iris: Insert buffer barrier in existing cache flush helpers.
2186- iris: Remove batch argument of iris_resource_prepare_access() and friends.
2187- iris: Perform compute predraw flushes from compute batch.
2188- iris: Remove depth cache set tracking and synchronization.
2189- iris: Remove render cache hash table-based synchronization.
2190- iris: Open-code iris_cache_flush_for_read() and iris_cache_flush_for_depth().
2191- iris: Emit single render target flush PIPE_CONTROL on format mismatch.
2192- iris: Remove iris_flush_depth_and_render_caches().
2193- OPTIONAL: iris: Perform BLORP buffer barriers outside of iris_blorp_exec() hook.
2194- iris/icl+: Report same caching domain as main surface for clear color BO.
2195- intel/ir/gen12+: Work around FS performance regressions due to SIMD32 discard divergence.
2196
2197Frank Binns (2):
2198
2199- docs: change "Fixes:" tag example to match git fixes output
2200- egl/dri2: only take a dri2_dpy reference when binding a new context/surfaces
2201
2202Frédéric Bonnard (2):
2203
2204- clover: Fix types collision between c++ and altivec
2205- meson: Revert commit overriding C++ standard with gnu++11 on ppc64el
2206
2207Gert Wollny (66):
2208
2209- r600: Annotate some case fallthroughs
2210- r600: remove unused static functions
2211- r600/sb: replace memset by using member initialization/assignment
2212- r600: remove some unused variables to silence warnings
2213- r600: Fix warning regarding mixing enums and unsigned in ?: expression
2214- r600: Fix nir compiler options, i.e. don't lower IO to temps for TESS
2215- r600/sfn: Unify semantic name and index query and use TEXCOORD semantic
2216- r600/sfn: Fix printing vertex fetch instruction flags
2217- r600: Lower int64 ops from TGSI-to-NIR shaders too
2218- r600: Lower lerp after tgsi_to_nir
2219- r600: Add support for loading index register from other than chan X
2220- r600/sfn: Handle CF index loading from non-X channel
2221- r600/sfn: rework getting a vector and uniforms from the value pool
2222- r600/sfn: Skip move instructions if they are only ssa and without modifiers
2223- r600/sfn: re-use an allocated register in lookup
2224- r600/sfn: skip copying LOD if the target register is is the same
2225- r600/sfn: Fix memring print output
2226- r600/sfn: Fix RING instruction assembly emission
2227- r600/sfn: Fix GDS assembly emission
2228- r600/sfn: Fix RAT instruction assembly emission
2229- r600/sfn: Make allocate_reserved_registers forward to a virtual function
2230- r600/sfn: Fix handling of output register index
2231- r600/sfn: Make 3vec loads skip possible moves
2232- r600/sfn: Add support for viewport index output
2233- r600/sfn: Take FOGC, and backcolors into account im GS outputs
2234- r600/sfn: Handle loading sample_pos
2235- r600/sfn: Add FS output sample_mask
2236- r600/sfn: Don't reject VARYING_SLOT_PCNT
2237- r600/sfn: remove pointless check
2238- r600/sfn: assert when alu dest is missing
2239- r600/sfn: support indirect sampler buffer reads.
2240- r600/sfn: Add support for texture_samples
2241- r600/sfn: use the per shader atomic base
2242- r600/sfn: SSBO: Fix query of dest components
2243- r600/sfn: Fix clip vertex output as possible stream variable
2244- r600/sfn: Fix splitting constants that come from different kcache banks.
2245- r600/sfn: Don't reorder outputs by location
2246- r600/sfn: Fix printing ALU op without dest
2247- r600: Fix duplicated subexpression in r600_asm.c
2248- r600/sfn: Fix mapping for f32tof64 and f64tof32
2249- r600/sfn: use modern c++ in printing LDS read instruction
2250- r600/sfn: Correctly update the number of literals when forcing a new group
2251- r600/sfn: remove debug output leftover
2252- nir: lower_tex: Don't normalize coordinates for TXF with RECT
2253- r600/sfn: lower image derefs
2254- r600/sfn: Add imageio support
2255- r600/sfn: Add support for image_size
2256- r600/sfn: Add support for reading cube image array dim.
2257- r600/sfn: Take SSBO buffer ID offset into account
2258- r600/sfn: Handle memory_barrier
2259- r600/sfn: Add lowering pass for shared IO
2260- r600/sfn: Add support for shared atomics
2261- r600/sfn: Don't set num_components on TESS sysvalue intrinsics
2262- r600/sfn: lower rotate ALU ops
2263- r600/sfn: Pipe through requesting a register at a given channel
2264- r600/sfn: emit texture instructions in one block
2265- r600/sfn: Add option to get a temp value for a specific channel
2266- r600/sfn: correct handling of loading vec4 with fetching constants
2267- r600/sfn: Add a forced output swizzle for depth write
2268- r600/sfn: Fix Ring output swizzle masks
2269- r600/sfn: Fix default z swizzle for GDS instructions
2270- r600: Add shader key item to identify when the sample mask should be used
2271- r600/sfn: Only use sample mask if the according shader key is set
2272- r600/sfn: Make the pin_to_channel generic
2273- d600/sfn: write stream outputs to correct mem ring
2274- gallivm/nir: Lower uniforms to UBOs in llvm draw if the driver didn't request this already
2275
2276Greg V (1):
2277
2278- gallium,util: undef ALIGN on FreeBSD to prevent name clash
2279
2280Guido Günther (2):
2281
2282- etnaviv: drm: Use NSEC_PER_SEC
2283- etnaviv: drm: Normalize nano seconds
2284
2285Gurchetan Singh (1):
2286
2287- virgl: apply bgra dest swizzle and add Portal 2
2288
2289Hanno Böck (1):
2290
2291- Properly check mmap return value
2292
2293Hyunjun Ko (6):
2294
2295- freedreno,tu: Don't request fragcoord components not being read.
2296- tu,radv: fix potentially wrong offset of flexible array.
2297- vulkan: Adds helpers for vk_object (de)alloation and (de)initialization.
2298- tu: Fix wrong copies of sampler descriptor.
2299- turnip: Use the common base object type and struct.
2300- turnip: implement VK_EXT_private_data
2301
2302Iago Toral Quiroga (7):
2303
2304- v3d/compiler: don't rewrite unused temporaries to point to NOP register
2305- v3d/compiler: fix spill offset
2306- v3d/compiler: fix image size for 1D arrays
2307- nir/lower_clip: make the pass compatible with Vulkan semantics
2308- v3d/compiler: handle compact varyings
2309- v3d/compiler: request fragment shader clip lowering to be vulkan compatible.
2310- nir/lower_tex: skip lower_tex_packing for the texture samples query
2311
2312Ian Romanick (24):
2313
2314- nir/algebraic: Recognize open-coded byte or word extract from bfe
2315- nir/algebraic: Split ibfe and ubfe with two constant sources
2316- nir/algebraic: Optimize some bfe patterns
2317- nir/algebraic: Optimize ushr of pack_half, not ishr
2318- nir/algebraic: Add some half packing optimizations for pack_half_2x16_split
2319- nir/algebraic: Eliminate useless extract before unpack
2320- i965: Assert that blorp always handles color blits
2321- meta: Make _mesa_meta_texture_object_from_renderbuffer static
2322- meta: Make _mesa_meta_setup_sampler static
2323- meta: Remove support for clearing integer buffers
2324- mesa: Add matrix utility functions to load matrices
2325- mesa: Add function to calculate an orthographic projection
2326- meta: Stop frobbing MatrixMode
2327- meta: Use same vertex coordinates for GLSL and FF clears
2328- meta: Coalesce the GLSL and FF paths in meta_clear
2329- meta: Remove support for multisample blits
2330- anv/tests: Don't rely on assert or changing NDEBUG in tests
2331- anv/tests: Silence unused parameter warnings in main
2332- anv: Silence unused parameter warning in anv_image_get_clear_color_addr
2333- intel: Silence unused parameter warning in __intel_log_use_args
2334- intel/drm-shim: Add noop ioctl handler for set_tiling
2335- intel/drm-shim: Return correct values for I915_PARAM_HAS_ALIASING_PPGTT
2336- glsl: Remove integer matrix support from ir_dereference_array::constant_expression_value
2337- nir/algebraic: Don't distrubte absolute-value into dot-products
2338
2339Icecream95 (78):
2340
2341- pan/midgard: Fix old style shadows
2342- panfrost: Fix background showing when using discard
2343- panfrost: Enable PIPE_CAP_VERTEX_COLOR_UNCLAMPED
2344- panfrost: Decode AFBC flag bits
2345- panfrost: Only use AFBC YTR with RGB and RGBA
2346- pan/midgard: Use a signed value for checking inline constants
2347- Revert "panfrost: Keep cached BOs mmap'd"
2348- panfrost: Mark PIPE_BUFFER BOs as not renderable
2349- pan/mdg: Add a macro for printing instruction source information
2350- pan/mdg: Move r1.w writeout to branch->dest
2351- pan/mdg: Remove old zs store lowering
2352- pan/mdg: Remove old depth writeout code
2353- pan/mdg: Remove writeout case from bytemask_of_read_components
2354- nir: Replace the zs_output_pan intrinsic with combined_output_pan
2355- pan/mdg: Replace writeout booleans with a single value
2356- pan/mdg: Add new depth writeout code
2357- pan/mdg: Move search_var to earlier in midgard_compile.c
2358- pan/mdg: Add depth/stencil support to emit_fragment_store
2359- pan/mdg: Add new depth store lowering
2360- pan/mdg: Print writeout sources in mir_print_instruction
2361- panfrost: Add writes_stencil to the EARLY_Z disable list
2362- panfrost: Move sampler view bo creation to a separate function
2363- panfrost: Create a new sampler view bo when the layout changes
2364- panfrost: Tiled to linear layout conversion
2365- panfrost: Clean up panfrost_frag_meta_rasterizer_update
2366- panfrost: Implement ARB_depth_clamp
2367- pan/decode: Fix helper invocations when tracing
2368- pan/decode: Add missing wrap modes
2369- pan/mdg: Fix max_comp calculation for constant printing
2370- panfrost: RGBA4 and RGB5_A1 framebuffer support
2371- panfrost: Update sampler views when the texture bo changes
2372- panfrost: Copy resources when mapping to avoid waiting for readers
2373- panfrost: Only copy resources when they are in a pending batch
2374- panfrost: Add PAN_MESA_DEBUG=gl3 flag
2375- panfrost: Do fine-grained flushing for occlusion query results
2376- pan/mdg: Vectorize vlut operations
2377- pan/decode: Make mapped memory read-only while decoding
2378- nir: Add a base value to load_raw_output_pan
2379- panfrost: Fix MALI_READS_TILEBUFFER
2380- pan/mdg: Handle tilebuffer wait loops
2381- pan/mdg: Use the writeout tag for tilebuffer wait loops
2382- panfrost: Add rt formats to shader state
2383- panfrost: Add a bitset of render targets read by shaders
2384- pan/mdg: Do the pan_lower_framebuffer pass later
2385- pan/mdg: Emit a tilebuffer wait loop when needed
2386- pan/mdg: Handle non-blend framebuffer lowering
2387- pan/mdg: Support MRT in output load lowering
2388- pan/mdg: Set the z/s store intrinsic base correctly
2389- pan/mdg: Use a 32-bit ld_color_buffer op when needed
2390- panfrost: Implement texture_barrier
2391- panfrost: Stop keying on rt format when using native loads
2392- panfrost: Use f2fmp for framebuffer lowering conversions
2393- panfrost: Enable framebuffer fetch
2394- pan/mdg: Fix non-debug compiliation
2395- compiler: Add dual-source factors to blend_factor
2396- gallium: Dual source support in blend_factor_to_shader
2397- pan/mdg: Add a nir pass to reorder store_output intrinsics
2398- pan/mdg: Dual source blend input/writeout support
2399- pan/mdg: Skip z/s combining for dual-source writes
2400- panfrost: Dual source blend support
2401- pan/decode: Open the dump file later
2402- pan/mdg: Don't disassemble blit shaders
2403- panfrost: Rename lower_store to is_blend in pan_lower_framebuffer
2404- pan/mdg: Do per-sample framebuffer loads
2405- panfrost: Do per-sample shading when outputs are read
2406- nir: Add a face_sysval argument to nir_lower_two_sided_color
2407- nir: Fix lower_two_sided_color when the face is an input
2408- panfrost: Report TEXTURE_BUFFER_OBJECTS cap when gl3 flag set
2409- panfrost: Set depth_enabled when stencil is enabled
2410- nir: Set the alignment for SSBO lowering
2411- panfrost: Make panfrost_bo_wait take a wait_readers bool
2412- panfrost: Fix calls to panfrost_flush_batches_accessing_bo
2413- panfrost: Fake RGTC support
2414- panfrost: Use more tilebuffer sizes
2415- panfrost: 8x MRT support
2416- pan/mdg: Use the blend RT for blend shader framebuffer fetches
2417- panfrost: Allow PIPE_TEXTURE_1D_ARRAY textures
2418- pan/mdg: Fix spilling of non-32-bit types
2419
2420Icenowy Zheng (1):
2421
2422- panfrost: signal syncobj if nothing is going to be flushed
2423
2424Ilia Mirkin (14):
2425
2426- freedreno/a3xx: there's no r8i/ui rb format, only rg8i/rg8ui
2427- freedreno/a3xx: reinstate rgb10_a2ui texture format
2428- freedreno/ir3: avoid applying (sat) on bary.f
2429- freedreno/a3xx: fix const footprint
2430- freedreno: fix off-by-one in assertions checking for const sizes
2431- freedreno/a3xx: parameterize ubo optimization
2432- freedreno/a3xx: fix rasterizer discard
2433- nouveau: allow invalidating coherent/persistent buffer backings
2434- st/mesa: allow R8 to not be exposed as renderable by driver
2435- a4xx: add noperspective interpolation support
2436- a4xx: add polygon offset clamp, fix units
2437- ir3: mark ucp_enables as allowed values on all keys
2438- a4xx: hook up centroid ij coords
2439- ir3: use empirical size for params as used by the shader
2440
2441Indrajit Kumar Das (2):
2442
2443- st/mesa: use fragment shader to copy stencil buffer
2444- st/mesa: optimize DEPTH_STENCIL copies using fragment shader
2445
2446Italo Nicola (17):
2447
2448- panfrost: Fix outmods on int to float conversions
2449- pan/mdg: fix src_type in instructions that need a implicit zero
2450- pan/mdg: prepare effective_writemask()
2451- pan/mdg: eliminate references to ins->alu.op
2452- pan/mdg: eliminate references to ins->alu.reg_mode
2453- pan/mdg: fix comment
2454- pan/mdg: eliminate references to ins->alu.outmod
2455- pan/mdg: apply float outmods to textures
2456- pan/mdg: eliminate references to ins->texture.op
2457- pan/mdg: eliminate references to ins->load_store.op
2458- pan/mdg: defer register packing
2459- pan/mdg: externalize mir_pack_mod
2460- pan/mdg: remove ins->alu
2461- pan/mdg: refactor emit_alu_bundle
2462- pan/mdg: defer branch packing
2463- pan/mdg: remove ins->br_compact and ins->branch_extended
2464- pan/mdg: emit REGISTER_UNUSED on unused ALU src2
2465
2466Iván Briano (9):
2467
2468- anv: use the correct format on Android
2469- anv: Disable B5G6R5_UNORM_PACK16
2470- anv: Add a way to reserve states from a pool
2471- anv: Implement VK_EXT_custom_border_color
2472- anv: support externally synchronized pipeline caches
2473- anv: implement VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT
2474- anv: enable VK_EXT_pipeline_creation_cache_control
2475- anv: Add VK_EXT_custom_border_color to relnotes
2476- anv: fix allocation of custom border color pool
2477
2478James Park (1):
2479
2480- amd/llvm: Reorder LLVM headers
2481
2482James Zhu (1):
2483
2484- ac/gpu_info: Correct Acturus cu bitmap
2485
2486Jan Beich (5):
2487
2488- drm-uapi: Add sync_file.h
2489- anv,iris: unbreak on BSDs after 812cf5f522ab,abf8aed68047
2490- util: enable futex usage on BSDs after 7dc2f4788288
2491- meson: unbreak sysctl.h detection on BSDs
2492- anv: disable i915_perf warning on non-Linux
2493
2494Jan Palus (1):
2495
2496- targets/opencl: fix build against LLVM>=10 with Polly support
2497
2498Jan Zielinski (1):
2499
2500- gallium/swr: Fix crashes in sampling code
2501
2502Jason Ekstrand (167):
2503
2504- intel/eu: Use non-coherent mode (BTI=253) for stateless A64 messages
2505- Revert "anv/gen12: Temporarily disable VK_KHR_buffer_device_address (and EXT)"
2506- vulkan: Allow destroying NULL debug report callbacks
2507- vulkan,anv: Add a common base object type for VkDevice
2508- anv: Stop clflushing events
2509- anv: Allocate CPU-side memory for events
2510- vulkan,anv: Add a base object struct type
2511- vulkan,anv: Move the DEFINE_HANDLE_CASTS macros to vk_object.h
2512- anv: Refactor setting descriptors with immutable sampler
2513- vulkan: Add run-time object type asserts in handle casts
2514- vulkan/wsi: Make wsi_swapchain inherit from vk_object_base
2515- anv/allocator: Add a start_offset to anv_state_pool
2516- vulkan/object: Always include the type
2517- anv,vulkan: Implement VK_EXT_private_data
2518- vulkan: Handle vkGet/SetPrivateDataEXT on Android swapchains
2519- nir: Make "divergent" a property of an SSA value
2520- util/list: Add a list pair iterator
2521- util/vma: Add an option to configure high/low preference
2522- util/vma: Add a debug print helper
2523- util/ra: Add [de]serialization support
2524- anv: Set 3DSTATE_VF_INSTANCING on the SVGS element
2525- anv: Set MOCS in 3DSTATE_CONSTANT_* on Gen9+
2526- nir: Add some docs to the metadata types
2527- anv: Call vk_object_base_finish for image views
2528- anv: Fix descriptor set clean-up on BO allocation failure
2529- nir: Use 8-bit types for most info fields
2530- anv:gpu_memcpy: Emit 3DSTATE_VF_INDEXING on Gen8+
2531- nir: Validate jump instructions as an instruction type
2532- nir: Use a switch statement in nir_handle_add_jump
2533- nir: Add documentation for each jump instruction type
2534- nir/clone: Re-use clone_alu for nir_alu_instr_clone
2535- nir: Add a new helper for iterating phi sources leaving a block
2536- nir: Add a store_reg helper and use the builder in phis_to_regs
2537- nir: Add const to nir_intrinsic_src_components
2538- nir/lower_double_ops: Rework the if (progress) tree
2539- nir/opt_deref: Report progress if we remove a deref
2540- nir/copy_prop_vars: Record progress in more places
2541- nir: Fix sources for image atomic fadd
2542- intel/vec4: Stomp the return type of RESINFO to UINT32
2543- intel/fs: Fix unused texture coordinate zeroing on Gen4-5
2544- intel/fs: Emit HALT for discard on Gen4-5
2545- anv/allocator: Compare to start_offset in state_pool_free_no_vg
2546- nir: Add a nir_metadata_all enum value
2547- nir: Add a nir_shader_preserve_all_metadata helper
2548- nir: Call nir_metadata_preserve on !progress
2549- nir: Properly preserve metadata in more cases
2550- intel/nir: Call nir_metadata_preserve on !progress
2551- iris: Better handle metadata in NIR passes
2552- anv: Add an anv_batch_set_storage helper
2553- anv: Add anv_pipeline_init/finish helpers
2554- nir/intrinsics: Put the _intel intrinsics together at the end
2555- anv: Use resolve_device_entrypoint for dispatch init
2556- vulkan: Update Vulkan XML and headers to 1.2.145
2557- anv: Bump the advertised patch version to 145
2558- intel/fs: Expose a couple of NIR lowering helpers
2559- intel/fs: Break wm_prog_data setup into a helper
2560- intel/fs: Move more prog_data setup into populate_wm_prog_data
2561- intel/compiler: Expose brw_texture_offset to C
2562- intel/eu: Add a brw_urb_dest_msg_type helper
2563- intel/eu: Set the right subnr for ALIGN16 destinations
2564- intel/eu: Add the RNDU opcode
2565- vulkan/wsi: Don't consider VK_SUBOPTIMAL_KHR to be an error condition
2566- wsi/x11: Log swapchain status changes
2567- freedreno: Only call nir_lower_io on shader_in/out
2568- lima: Only call nir_lower_io on shader_in/out
2569- nouveau: Only call nir_lower_io on shader_in/out
2570- vc4: Only call nir_lower_io on shader_in/out
2571- v3d: Only call nir_lower_io on shader_in/out
2572- panfrost: Only call nir_lower_io on shader_in/out
2573- nir: Assert that nir_lower_io is only called with allowed modes
2574- nir: Remove shared support from lower_io
2575- nir: Add docs to nir_lower[_explicit]_io
2576- anv: Handle clamping of inverted depth ranges
2577- nir/validate: Don't abort() until after the shader has printed
2578- spirv: Skip phis in unreachable blocks in the second phi pass
2579- spirv: Allow block-decorated struct types for constants
2580- vulkan: Update Vulkan XML and headers to 1.2.148
2581- anv: Advertise VK_EXT_image_robustness
2582- spirv: Update headers and grammar json
2583- spirv: Add support for SPV_EXT_shader_atomic_float
2584- intel/fs: Use the correct logical op for global float atomics
2585- anv: Advertise support for VK_EXT_shader_atomic_float
2586- nir: Allow for system values with variable numbers of destination components
2587- nir/lower_io: Choose to set access based on intrinsic metadata
2588- nir/lower_io: Use b2b for shader and function temporaries
2589- nir/lower_io: Add support for global scratch addressing
2590- spirv: Simplify our handling of NonUniform
2591- spirv: Drop the void \*ptr from vtn_value
2592- spirv: Fix indentation in vtn_handle_ptr
2593- spirv: Clean up OpSignBitSet
2594- spirv: Use nir_bany/ball for OpAny/All
2595- spirv: Add a helpers for getting types of values
2596- spirv: Rename push_value_pointer to push_pointer
2597- spirv: Add a vtn_push_nir_ssa helper
2598- spirv/amd: Use vtn_push_nir_ssa
2599- spirv: Add a vtn_get_nir_ssa helper
2600- spirv: Use the new helpers in OpConvertUToPtr/PtrToU
2601- spirv: Refactor vtn_push_ssa
2602- spirv/alu: Use vtn_push_ssa_value
2603- spirv/glsl450: Use vtn_push_ssa_value
2604- spirv/subgroups: Stop incrementing w
2605- spirv/subgroups: Refactor to use vtn_push_ssa
2606- spirv: Simplify vtn_ssa_value creation
2607- spirv: Hand-roll fewer vtn_ssa_value creations
2608- spirv: Add better checks for SSA value types
2609- spirv: Drop the sampled boolean from vtn_type
2610- spirv: Give atomic counters their own variable mode
2611- spirv: Add a helper for getting the NIR type of a vtn_type
2612- spirv: Remove a dead case in function parameter handling
2613- spirv: More heavily use vtn_ssa_value in function parameter handling
2614- anv,turnip,radv,clover,glspirv: Run nir_copy_prop before nir_opt_deref
2615- spirv: Rework our handling of images and samplers
2616- spirv: Also copy over binding information for atomic counters
2617- nir: Take a mode in remove_unused_io_vars
2618- nir/dead_variables: Respect the modes passed to remove_dead_vars
2619- nir: Add nir_foreach_shader_in/out_variable helpers
2620- nir: Add a nir_foreach_function_temp_variable helper
2621- nir: Add a nir_foreach_uniform_variable helper
2622- nir: Add a nir_foreach_gl_uniform_variable helper for GL linking
2623- nir: Add and use a nir_variable_list_for_mode helper
2624- nir: Take a nir_shader and variable mode in assign_var_locations
2625- nir: Take a shader and variable mode in nir_assign_io_var_locations
2626- nir/linking: Rework some internal helpers
2627- st/nir: Rework fixup_varying_slots
2628- nir/split_vars: Add mode checks to list walks
2629- nir: Split nir_index_vars into two functions
2630- nir/lower_amul: Add a variable mode check
2631- nir: Use a nir_shader and mode in lower_clip_cull_distance_arrays
2632- nir/lower_io_to_temporaries: Use a separate list for new inputs
2633- nir/io_to_vector: Use nir_foreach_variable_with_modes
2634- nir/lower_two_sided_color: Use nir_variable_create
2635- nir/lower_uniforms_to_ubo: Use nir_foreach_variable_with_modes
2636- nir/split_per_member_structs: Use nir_variable_with_modes_safe
2637- nir/lower_variable_initializers: Restrict the modes we lower
2638- nir/gl_nir_linker: Use nir_foreach_variable_with_modes
2639- freedreno/ir3_lower_tess: Rework var list helpers
2640- lima/standalone: Rework i/o variable fixup
2641- freedreno/ir3_cmdline: Rework i/o variable fixup
2642- r600/sfn/lower_tess_io: Rework get_tcs_varying_offset
2643- r600/sfn/lower_tex: Get rid of the lower_sampler vector
2644- r600/sfn: Use nir_foreach_variable_with_modes in IO vectorization
2645- panfrost/midgard: Make search_var take a nir_shader and mode
2646- panfrost: Use nir_foreach_variable_with_modes in pan_compile
2647- aco: Use nir_foreach_variable_with_modes to walk SSBOs
2648- mesa/ptn: Use nir_variable_create
2649- gallium/ttn: Use variable create/add helpers
2650- nir: Use a single list for all shader variables
2651- nir/split_per_member_structs: Inline split_variables_in_list
2652- nir/gl_nir_linker: Call add_vars_with_modes once for GL_PROGRAM_INPUT
2653- nir: Add a find_variable_with\_[driver\_]location helper
2654- vulkan: Update Vulkan XML and headers to 1.2.149
2655- anv: Implement VK_EXT_4444_formats
2656- nir/deref: Don't try to compare derefs containing casts
2657- compiler/types: Add a struct_type_is_packed wrapper
2658- spirv: Do more complex unwrapping in get_nir_type
2659- anv: Advertise shaderIntegerFunctions2
2660- spirv: Don't emit RMW for vector indexing in shared or global
2661- clover/spirv: Don't call llvm::regularizeLlvmForSpirv
2662- intel/nir: Pass the nir_builder by reference in lower_alpha_to_coverage
2663- intel/nir: Rewrite the guts of lower_alpha_to_coverage
2664- intel/fs: Fix MOV_INDIRECT and BROADCAST of Q types on Gen11+
2665- intel/fs: Don't copy-propagate stride=0 sources into ddx/ddy
2666- iris: Re-emit push constants if we have a varying workgroup size
2667- spirv: Run repair_ssa if there are discard instructions
2668- nir: More NIR_MAX_VEC_COMPONENTS fixes
2669- intel/fs/swsb: SCHEDULING_FENCE only emits SYNC_NOP
2670- radeonsi: Only call nir_lower_var_copies at the end of the opt loop
2671
2672Jesse Natalie (10):
2673
2674- nir_lower_io: Add addr_format_is_offset helper
2675- nir: When nir_lower_vars_to_explicit_types is run on temps, update scratch_size
2676- nir: Support load/store of temps as scratch in nir_lower_explicit_io
2677- nir: Support vec8/vec16 in nir_lower_bit_size
2678- nir: Support algebraic opts on vectors larger than 4
2679- nir: Support 8 and 16 component vectors for reduceable intrinsics
2680- nir/vtn: Add support for 8 and 16 vector ball/bany
2681- u_debug_stack_test: Fix MSVC compiling by using ATTRIBUTE_NOINLINE
2682- nir: More NIR_MAX_VEC_COMPONENTS fixes
2683- glsl_type: Add packed to structure type comparison for hash map
2684
2685JibbityJobbity (1):
2686
2687- drirc: Enable glthread for PCSX2
2688
2689Jon Turney (1):
2690
2691- glthread: Fix use of alloca() without #include "c99_alloca.h"
2692
2693Jonathan Gray (13):
2694
2695- util: unbreak endian detection on OpenBSD
2696- util/anon_file: add OpenBSD shm_mkstemp() path
2697- meson: build with _ISOC11_SOURCE on OpenBSD
2698- meson: don't build with USE_ELF_TLS on OpenBSD
2699- meson: conditionally include -ldl in gbm pkg-config file
2700- util: futex fixes for OpenBSD
2701- util/u_thread: include pthread_np.h if found
2702- anv: use os_get_total_physical_memory()
2703- util/os_misc: add os_get_available_system_memory()
2704- anv: use os_get_available_system_memory()
2705- util/os_misc: os_get_available_system_memory() for OpenBSD
2706- radv: remove seccomp includes
2707- vulkan: make VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT conditional
2708
2709Jonathan Marek (135):
2710
2711- turnip: update "fetchsize" value to match fdl6_layout changes
2712- turnip: enable tiling for compressed formats
2713- util/format: translate 422_UNORM and 420_UNORM vulkan formats
2714- freedreno/registers: document 422_UNORM and 420_UNORM formats
2715- turnip: implement VK_KHR_sampler_ycbcr_conversion
2716- turnip: enable 422_UNORM formats
2717- freedreno: move a4xx specific layout code to a4xx code
2718- freedreno/a5xx: remove unused reference to gmem_alignw in layout code
2719- freedreno/a6xx: don't use gmem_alignw for imported buffers
2720- freedreno/a6xx: split up gmem/tile alignment requirements
2721- freedreno: reduce extra height alignment in a6xx layout
2722- freedreno/a6xx: use RESOLVE_TS event
2723- freedreno: add adreno 650
2724- freedreno/layout: add explicit offset/pitch argument to fdl6_layout
2725- turnip: support VkImageDrmFormatModifierExplicitCreateInfoEXT
2726- turnip: fix RENDER_COMPONENTS value
2727- turnip: move HLSQ_UPDATE_CNTL write to before xs config writes
2728- turnip: update some properties based on blob driver
2729- turnip: clamp sampler minLod/maxLod
2730- freedreno/a6xx: use nonbinning VS when GS is used
2731- turnip: correctly emit non-binning vs in transform feedback case
2732- turnip: fix HW binning with geometry shader
2733- turnip: use common emit_xs_cntl to fill a6xx_sp_xs_ctrl_reg0
2734- turnip: fix VFD_CONTROL for binning pass
2735- turnip: pipeline program state refactor
2736- turnip: share code between 3D blit/clear path and tu_pipeline
2737- turnip: add layered 3D path clear for CmdClearAttachments
2738- turnip: add emit renderpass cache flushes for sysmem 3D CmdClearAttachments
2739- turnip: remove some dead/redundant code
2740- freedreno/ir3: fix ir3_nir_move_varying_inputs
2741- turnip: remove duplicated stage2opcode and stage2shaderdb
2742- turnip: simplify stage2 helpers
2743- turnip: set VFD_INDEX_OFFSET in 3D clear/blit path
2744- turnip: fix 3D path always being used for CmdBlitImage
2745- turnip: fix cubic filtering with CmdBlitImage
2746- turnip: compute and graphics have completely separate state
2747- turnip: move descriptor set BO tracking to CmdBindDescriptorSets
2748- turnip: improve dirty bit handling a bit
2749- turnip: delete dead dynamic state code
2750- turnip: refactor draw states and dynamic states
2751- turnip: input attachment descriptor set rework
2752- turnip: use draw states for input attachments
2753- turnip: use u_format for packing gmem clear values
2754- freedreno/a6xx: FETCHSIZE is PITCHALIGN
2755- freedreno/fdl6: rework layout code a bit (reduce linear align to 64 bytes)
2756- turnip: fix a crash when rasterizerDiscardEnable is set
2757- turnip: fix a sample shading case
2758- turnip: fix renderpass gmem configs when there are too many attachments
2759- turnip: set the API version
2760- turnip: move enum translation functions to a common header
2761- freedreno/a6xx: VSC "STRM_ARRAY_PITCH" is "STRM_LIMIT"
2762- freedreno/a6xx: remove unnecessary OVERFLOW_FLAG_REG check
2763- turnip: remove unnecessary OVERFLOW_FLAG_REG check
2764- freedreno/a4xx: restore pitch to bytes change to layout code
2765- freedreno/a4xx: simplify setup_slices
2766- turnip: rework streamout state and add missing counter buffer read/writes
2767- turnip: refactor CmdDraw* functions (and a few fixes)
2768- turnip: enable VK_EXT_index_type_uint8
2769- turnip: implement CmdDrawIndirectByteCountEXT
2770- turnip: fix ts_cs_memory typo
2771- turnip: use pipeline cs for shader programs instead of separate bo
2772- freedreno/registers: a6xx depth bounds test registers
2773- turnip: implement depthBounds
2774- turnip: translate CreateRenderPass to CreateRenderPass2
2775- turnip: replace a memset(0) with zalloc in CreateRenderPass
2776- turnip: use RenderPassCreateInfo for render_pass_add_implicit_deps
2777- turnip: move some logic out of create_render_pass_common
2778- turnip: implement VK_EXT_vertex_attribute_divisor
2779- turnip: fix empty scissor case
2780- turnip: fix update_stencil_mask
2781- turnip: disable early_z for VK_FORMAT_S8_UINT
2782- freedreno/registers: add CP_DRAW_INDIRECT_MULTI
2783- freedreno/ir3: add support for load_draw_id
2784- turnip: implement VK_KHR_shader_draw_parameters
2785- turnip: fix VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES
2786- turnip: fix huge scissor min/max case
2787- freedreno/ir3: fix resinfo wrmask
2788- freedreno/regs: add extra bits for UBWC array pitch
2789- turnip: enable largePoints
2790- turnip: enable depthBiasClamp
2791- freedreno/registers: update varying-related registers
2792- freedreno/a3xx: support LINEAR_PIXEL/PERSP_CENTROID/LINEAR_CENTROID sysvals
2793- freedreno/a4xx: fake LINEAR_PIXEL varying support for u_blitter
2794- freedreno/ir3: add generic get_barycentric()
2795- freedreno/a5xx: set missing bary sysvals
2796- freedreno/a6xx: set missing bary sysvals
2797- turnip: set missing bary sysvals
2798- freedreno/ir3: add support for INTERP_MODE_NOPERSPECTIVE
2799- turnip: make tiling config part of framebuffer state
2800- turnip: rework render_tiles loop
2801- turnip: vsc improvements
2802- turnip: fix tess param bo size calculation
2803- turnip: clear_blit: pass aspect mask to setup function
2804- turnip: support multi-image layouts
2805- turnip: enable 420_UNORM formats
2806- freedreno/layout: fix explicit layout offset not added to slice offset
2807- freedreno/ir3: fix/rework tess levels
2808- Revert "nir: Add an option for lowering TessLevelInner/Outer to vecs"
2809- Revert "nir: Support sysval tess levels in SPIR-V to NIR"
2810- freedreno/regs: document SS6_UBO state src
2811- turnip: use global bo for clear blit shaders
2812- freedreno/ir3: add support for a650 tess shared storage
2813- freedreno/regs: document CS shared storage size bit
2814- freedreno/a2xx: fix compressed textures
2815- freedreno: add a fd_resource_pitch helper
2816- freedreno/layout: layout simplifications and pitch from level 0 pitch
2817- turnip: fix active_desc_sets not being set for compute pipeline
2818- freedreno/ir3: fix setup_input for sparse vertex inputs
2819- freedreno/ir3: run nir_opt_loop_unroll in optimization loop
2820- freedreno: fix layout pitchalign field not being set for imported buffers
2821- freedreno/regs: update primitive output related registers
2822- turnip: clean up primitive output state
2823- turnip: drop GS clear path
2824- turnip: use DIRTY SDS bit to avoid making copies of pipeline load state ib
2825- turnip: emit compute pipeline directly in CmdBindPipeline
2826- turnip: fix inconsistencies with tu6_load_state_size
2827- turnip: remove use of tu_cs_entry for draw states
2828- gitlab-ci: re-enable arm64_a630_vk
2829- freedreno/regs: update a6xx GRAS registers
2830- freedreno/regs: update a6xx RB regs
2831- freedreno/regs: update a6xx VPC regs
2832- freedreno/regs: update a6xx PC regs
2833- turnip: disable tiling for NV12/IYUV formats
2834- turnip: remove extra gmem alignment
2835- freedreno/ir3: fix wrong local_primitive_id_start type
2836- turnip: move WFI out of draw state to fix a650 hangs
2837- turnip: use patchControlPoints for HS_INPUT_SIZE value
2838- turnip: fix SP_HS_UNKNOWN_A831 value for A650
2839- turnip: workaround for a630 d24_unorm_s8_uint fails
2840- turnip: fix sysmem CmdClearAttachments 3D fallback breaking GMEM path flush
2841- turnip: delete tu_clear_sysmem_attachments_2d
2842- turnip: add support for D32_SFLOAT_S8_UINT
2843- turnip: rework extended formats to allow more extended formats
2844- util/format: translate A4R4G4B4_UNORM and A4B4G4R4_UNORM vulkan formats
2845- turnip: implement VK_EXT_4444_formats
2846
2847Jordan Justen (17):
2848
2849- intel/dev: Split .num_subslices out of GEN12_FEATURES macro
2850- intel/dev: Add device info for RKL
2851- intel/l3: Don't rely on cfg entry URB size being 0 as a sentinal
2852- intel/l3: Allow platforms to have no l3 configurations
2853- iris/l3: Enable L3 full way allocation when L3 config is NULL
2854- anv: Set L3 full way allocation at context init if L3 cfg is NULL
2855- intel/dev: Add device info for DG1
2856- iris: Make use of devinfo has_aux_map field
2857- anv: Make use of devinfo has_aux_map field
2858- anv/pipeline: Split VFE/INTERFACE_DESCRIPTOR out to emit_media_cs_state
2859- anv/cmd_buffer: Split GPGPU_WALKER out to emit_gpgpu_walker
2860- iris: Split walker and state update into iris_upload_gpgpu_walker
2861- iris/compute: Split out iris_load_indirect_location
2862- intel/compiler/cs: Allow simd32 in some more cases with no8 and/or no16
2863- intel/compiler/fs: Still attempt simd32 when INTEL_DEBUG=no16 is used
2864- iris: Add missing break in switch in modifier_is_supported
2865- anv, iris: Set MediaSamplerDOPClockGateEnable for gen12+
2866
2867Jose Maria Casanova Crespo (4):
2868
2869- v3d: Fix swizzle in DXT3 and DXT5 formats
2870- v3d: Include supported DXT formats to enable s3tc/dxt extensions
2871- vc4: don't relay on intr->num_components for non-vectorized intrinsics
2872- nir: only uniforms with dynamically_uniform offset are dynamically_uniform
2873
2874Joshua Ashton (7):
2875
2876- anv: Remove RANGE_SIZE usage
2877- radv: Remove RANGE_SIZE usage
2878- turnip: Remove RANGE_SIZE usage
2879- vulkan: Update Vulkan XML and headers to 1.2.140
2880- radv: Implement VK_EXT_custom_border_color
2881- radeonsi: Use TRUNC_COORD on samplers
2882- radv: Implement VK_EXT_4444_formats
2883
2884José Fonseca (3):
2885
2886- glthread: Add GLAPIENTRY to _mesa_marshal_MultiDrawArrays.
2887- appveyor: Upgrade pip.
2888- appveyor: Use Python3.
2889
2890Karol Herbst (50):
2891
2892- nir/deref: copy ptr_stride when rematerializing
2893- nir/validate: validate the stride for deref_ptr_as_array
2894- Revert "nir/validate: validate the stride for deref_ptr_as_array"
2895- nvir/nir: use component helpers instead of insn->num_components
2896- st/mesa: lower images when needed
2897- nir/lower_images: fix for array of arrays
2898- nir/lower_images: handle dec and inc
2899- nv50/ir/nir: move away from image_deref intrinsics
2900- nv50/ir/nir: handle image atomic inc and dec
2901- nv50/ir/nir: remove image uniform hack
2902- gv100/ir: fix atom cas
2903- gv100/ir: fix shift lowering
2904- gv100/ir: fix OP_TXG for shadow textures
2905- nv50/ir/nir: add workaround for double vertex attribs
2906- nv50/ir/print: add missing VIEWPORT_MASK handling
2907- nv50/ir/nir: fix ext_demote_to_helper_invocation
2908- nv50/ir/nir: fix nv_viewport_array2
2909- nvc0: enable spirv caps with nir
2910- nv50/ir/nir: don't emit a restart with set a stream_id
2911- nv50/ir/nir: handle clip vertex for tess eval shaders
2912- nv50/ir/nir: rework input output handling
2913- nv50/ir/nir: rework CFG handling
2914- nv50/ir/ra: convert some for loops to Range-based for loops
2915- nv50/ir/ra: fix memory corruption when spilling
2916- nv50/ir/nir: fix interpolation on explicit operations
2917- gv100/ir: implement sample shading
2918- gv100/ir: fix coherent and volatile memory access
2919- nv50/ir/nir: fix cache mode conversion
2920- nv50/ir: fix memset on non trivial types warning
2921- nv50/ir/tgsi: move call to tgsi_scan_shader inside Source constructor
2922- nvc0: set local mem size for compute on gv100
2923- nvc0: set sampler index mode to independently on gv100 compute
2924- gv100/ir: set ftz bit on floating point operations
2925- ci: bump libdrm to 2.4.102
2926- nouveau: enable HMM
2927- gallium: add PIPE_CAP_RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLY
2928- nvc0: support PIPE_CAP_RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLY
2929- nouveau: expose HMM
2930- ci: need to install wget in order to download libdrm
2931- ci: bump libdrm to 2.4.102
2932- nouveau: enable HMM
2933- gallium: add PIPE_CAP_RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLY
2934- nvc0: support PIPE_CAP_RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLY
2935- nouveau: expose HMM
2936- st/mesa: fix st_CopyPixels without support for stencil exports
2937- nv50/ir/tgsi: silence warning about unhandled GS_INPUT_PRIM property
2938- nv50/ir: initialize persampleInvocation to false
2939- nir/lower_io: assert that offsets are used for shader_in
2940- nv50/ir/nir: fix global_atomic_comp_swap
2941- spirv: extract switch parsing into its own function
2942
2943Kenneth Graunke (20):
2944
2945- iris: Include linux/sync_file.h instead of cut and pasting contents
2946- anv: Include linux/sync_file.h instead of cut and pasting contents
2947- iris: Rename iris_syncpt to iris_syncobj for clarity.
2948- iris: Give up on not passing ice to iris_init_batch
2949- iris: Destroy transfer slab after batches
2950- iris: Flush any current work in iris_fence_await before adding deps
2951- intel: Move anv_gem_supports_syncobj_wait to common code.
2952- iris: Detect DRM_SYNCOBJ_WAIT_FLAGS_WAIT_FOR_SUBMIT kernel support
2953- iris: Implement PIPE_FLUSH_DEFERRED support.
2954- intel: Delete hardcoded devinfo->urb.size values for Gen7+ (sans DG1).
2955- iris: Delete useless #define
2956- intel/eu: Add a brw_urb_desc helper
2957- CI: Disable Panfrost Mali-T820, Lima Mali-400 and Lima Mali-450 jobs
2958- intel: Disable loading drivers on DG1 devices for now
2959- nir: Fix divergence analysis for tessellation input/outputs
2960- iris: Implement pipe->texture_subdata directly
2961- iris: Fix CCS check in iris_texture_subdata().
2962- iris: Delete shader variants when deleting the API-facing shader
2963- iris: Reorder the loops in iris_fence_await() for clarity.
2964- iris: Drop stale syncobj references in fence_server_sync
2965
2966Kristian Høgsberg (73):
2967
2968- freedreno/ir3: Pass stream output info to ir3_shader_from_nir
2969- freedreno/ir3: Rename ir3_nir_lower_to_explicit_io
2970- freedreno/ir3: Add ir3_nir_lower_to_explicit_input() pass
2971- freedreno/ir3: Lower GS builtins before lowering IO
2972- freedreno/ir3: Drop hack to clean up split vars
2973- freedreno/fdl: Align after dividing by block size
2974- freedreno/a6xx: Set tfetch correctly for compressed formats
2975- freedreno/ir3: Drop wrmask for ir3 local and global store intrinsics
2976- freedreno/a6xx: Create shader dependent streamout state at compile time
2977- freedreno/a6xx: Map inputs to VFD entries up front
2978- freedreno/a6xx: Allocate ringbuffer based on VFD count
2979- freedreno/a6xx: Emit VFD setup as array writes
2980- freedreno/a6xx: Avoid stalling for occlusion queries
2981- freedreno: Use the right amount of &'s
2982- freedreno: Use explicit \*_NONE enum for undefined formats
2983- turnip: Use hw enum when emitting A6XX_RB_STENCIL_CONTROL
2984- turnip: Use tu6_reduction_mode() to avoid warning
2985- turnip: Use {} initializer to silence warning
2986- freedreno/ir3: Avoid {0} initializer for struct reginfo
2987- src/util: Remove out-of-range comparison
2988- mapi: Fix a couple of warning in generated code
2989- mesa/st: Use memset to zero out struct
2990- egl/android: Move get_format under HAVE_DRM_GRALLOC guard where it's used
2991- egl/android: Drop unused variable
2992- freedreno/a6xx: Move per element offset to VFD_DECODE
2993- freedreno/a6xx: Decouple VFD_FETCH and VFD_DECODE
2994- freedreno/a6xx: Create stateobj for VFD_DECODE
2995- freedreno/a6xx: Program VFD_DEST_CNTL from program stateobj
2996- freedreno/a6xx: Turn on robustness extensions
2997- docs/features.txt: Update for freedreno
2998- freedreno/a6xx: Fix VFD_CONTROL emit
2999- freedreno/a6xx: Don't write REG_A6XX_RB_SRGB_CNTL in restore
3000- freedreno/a6xx: Set index buffer size to bo size
3001- freedreno: Handle DRM_FORMAT_MOD_INVALID in shared code
3002- turnip: Put VK_KHR_external_fence_fd stubs back
3003- freedreno/a6xx: Don't blit with R2D_RAW
3004- freedreno/a6xx: Move fd6_ifmt into fd6_blitter.c
3005- freedreno/a6xx: Split out src and dst setup helpers for blit
3006- freedreno/a6xx: Don't set unknown bit when tiling differs
3007- freedreno/a6xx: Set src and dst rects outside blit loop
3008- freedreno/a6xx: Program SP_2D_SRC_FORMAT outside blit loop
3009- freedreno/a6xx: Consolidate computing blit_cntl
3010- freedreno/a6xx: Don't emit src state when clearing
3011- freedreno/a6xx: Separate stencil sysmem clear fix
3012- freedreno/a6xx: Enable FMT6_10_10_10_2_UNORM blitting
3013- freedreno/a6xx: Make blit_control helper a little more helpful
3014- freedreno/a6xx: Program A6XX_SP_2D_SRC_FORMAT_COLOR_FORMAT based on dst format
3015- freedreno/a6xx: Move REG_A6XX_SP_2D_SRC_FORMAT programming to helper
3016- freedreno/a6xx: Move CP_SET_MARKER to setup helper
3017- freedreno/a6xx: Program RB_UNKNOWN_8C01 in setup helper
3018- freedreno/a6xx: Don't take pipe_blit_info in emit_blit_dst
3019- freedreno/a6xx: Split clear and blit texture into different functions
3020- freedreno/registers: Rename SP_2D_SRC_FORMAT
3021- turnip: Move device enumeration and feature discovery to tu_drm.c
3022- turnip: Move tu_bo functions to tu_drm.c
3023- turnip: Collapse some tu_drm wrappers
3024- turnip: Move remaining drm code to tu_drm.c
3025- turnip: Only include msm_drm in tu_drm.c
3026- egl/android: Remove unused variable
3027- mapi/test: Change type to unsigned for offset
3028- gallium: Switch u_debug_stack/symbol.c to util/hash_table.h
3029- util: Move stack debug functions to src/util
3030- util: Add unit test for stack backtrace caputure
3031- gallium/android: Rewrite backtrace helper for android
3032- ci: Include enough Android headers to let us compile test EGL
3033- mapi: Mark TLS symbols as optional in glapi-symbols.txt
3034- turnip: Make tu_android.c compile again
3035- meson: Define ANDROID and ANDROID_API_LEVEL when compiling for Android
3036- anv: Pass device to setup_gralloc0_usage for error reporting
3037- anv: Add stub for anv_gem_get_tiling() for Android
3038- vulkan: Allow global symbol HMI for Android
3039- radv/android: Remove unused variable
3040- ci: Add a build test for the Android platform
3041
3042Krzysztof Raszkowski (1):
3043
3044- gallium/swr: Fix building swr with MSVC
3045
3046Laura Ekstrand (3):
3047
3048- docs: include meson in the toctree
3049- docs: Remove version.
3050- docs: Add the favicon to the new page.
3051
3052Leo Liu (3):
3053
3054- radeon/vcn: reset the decode flags from message buffer
3055- radeon/vcn: add Sienna to use internal register offset
3056- radeon/vcn/dec: add db_aligned_height to message buffer
3057
3058Lepton Wu (3):
3059
3060- mapi: x86: Fix dynamic entries in x86 tsd stubs.
3061- mapi: Return NULL function pointers for GL_EXT_debug_marker
3062- egl: Allow software rendering for vgem/virtio_gpu in platform_device
3063
3064Lionel Landwerlin (60):
3065
3066- drm-shim: move handle lock to shim_fd
3067- drm-shim: don't create a memfd per BO
3068- drm-shim: silence warnings
3069- intel/dev: print out error when platform is not found by name
3070- intel: add stub_gpu tool
3071- ci: Add intel to shaderdb runs
3072- iris: don't assert on unfinished aux import in copy paths
3073- anv: don't expose VK_INTEL_performance_query without kernel support
3074- anv: fix alignments for uniform buffers
3075- genxml: run sorting script
3076- genxml: fix invalid end value for video fields
3077- genxml: factor out utility functions
3078- genxml: pack: deal with default field not being simple integers
3079- intel/genxml: fix bits generation for MI_LOAD_REGISTER_IMM
3080- intel/mi-builder: add framework for self modifying batches
3081- anv: don't reserve a particular register for draw count
3082- anv: add a new execution mode for secondary command buffers
3083- intel/genxml: add PIPE_CONTROL command cache invalidate bit
3084- intel/perf: make pipeline statistic query loading optional
3085- intel/perf: store the appropriate OA formats in queries
3086- intel/perf: update generated code to ralloc all data
3087- intel/perf: create a unique list of counters
3088- intel/perf: compute number of passes for a set of counters
3089- intel/perf: emit counter units in generated code
3090- intel/perf: add helper to compute metrics from counters
3091- intel/perf: add counter category to generated code
3092- intel/perf: report whether the platform supported
3093- anv: use a query filled by the perf code
3094- intel/perf: reuse offset specified in the query
3095- anv: Implement VK_KHR_performance_query
3096- intel/perf: repurpose INTEL_DEBUG=no-oaconfig
3097- anv: fixup unwinding of device create failure
3098- blorp: rename workaround address function
3099- anv: store the workaround address
3100- iris: store workaround address
3101- i965: store workaround_bo offset
3102- intel: add identifier for debug purposes
3103- iris: add identifier BO
3104- i965: add identifier BO
3105- anv: add identifier BO
3106- intel/aub_error_decoder: print driver identifier if found
3107- iris: fix BO destruction in error path
3108- i965: don't forget to set screen on duped image
3109- iris: fix export of GEM handles
3110- i965: fix export of GEM handles
3111- anv: add an option to disable secondary command buffer calls
3112- anv: garbage collect timeline semaphore when querying value
3113- iris: fix fallback to swrast driver
3114- anv: fix uninitialized variable access
3115- anv: properly handle fence import of sync_fd = -1
3116- anv: fix descriptor set free
3117- anv: fix incorrect realloc failure handling
3118- anv: centralize vk to gen arrays
3119- anv: fix up dynamic clip emission
3120- anv: don't fail userspace relocation with perf queries
3121- anv: fix transform feedback surface size
3122- anv: VK_INTEL_performance_query interaction with VK_EXT_private_data
3123- intel/perf: store query symbol name
3124- intel/perf: fix raw query kernel metric selection
3125- intel/compiler: fixup Gen12 workaround for array sizes
3126
3127Liviu Prodea (1):
3128
3129- util: Make process_test path compatible with mingw native toolchains
3130
3131Louis-Francis Ratté-Boulianne (1):
3132
3133- nir: Always create UBO variable when lowering uniforms to ubo
3134
3135Lucas Stach (3):
3136
3137- etnaviv: generalize FE stall before loading shader and sampler states
3138- etnaviv: retarget transfer to render resource when necessary
3139- etnaviv: don't expose timer queries
3140
3141Luigi Santivetti (3):
3142
3143- dri2: dri2_make_current() fold multiple if blocks
3144- dri2: do not conflate unbind and bindContext() failure
3145- egl/dri2: try to bind old context if bindContext failed
3146
3147Marcin Ślusarz (24):
3148
3149- i965: remove unused variable
3150- glsl_to_tgsi: add fallthrough comments
3151- glsl: cleanup vertex shader input checks
3152- iris: remove unused iris_bo->swizzle_mode
3153- intel/compiler: fix Android build
3154- st/mesa: fix reporting of float perf counters max value
3155- iris: return max counter value for AMD_performance_monitor
3156- iris: remove iris_monitor_config
3157- intel/perf: move query_mask and location out of gen_perf_query_counter
3158- iris: propagate error from gen_perf_begin_query to glBeginPerfQueryINTEL
3159- i965: propagate error from gen_perf_begin_query to glBeginPerfQueryINTEL
3160- util: fix possible fd leaks in os_socket_listen_abstract
3161- glsl: catch out of bounds access in the debug version
3162- util: fix possible buffer overflow in util_get_process_exec_path
3163- util/format: initialize non-important components to 0
3164- mesa: fix out of bounds access in glGetFramebufferParameterivEXT
3165- mesa: quiet down static analyzers
3166- iris: quiet down static analyzers
3167- intel/vec4: fix out of bounds read
3168- intel/perf: fix performance counters availability after glFinish
3169- anv: refresh cached current batch bo after emitting some commands
3170- anv: fix minor gen_ioctl(I915_PERF_IOCTL_CONFIG) error handling issue
3171- intel/perf: split load_oa_metrics
3172- intel/perf: export performance counters sorted by [group|set] and name
3173
3174Marek Olšák (226):
3175
3176- mesa: optimize glPush/PopClientAttrib by removing malloc overhead
3177- mesa: don't call _mesa_update_state for _mesa_get_clamp_fragment_color
3178- mesa: don't set unnecessary program flags in _mesa_update_state
3179- mesa: don't update shaders on fixed-func state changes if user shaders are bound
3180- mesa,st/mesa: add a fast path for non-static VAOs
3181- mesa: inline vbo_context inside gl_context to remove vbo_context dereferences
3182- mesa: add glInternalBufferSubDataCopyMESA for glthread
3183- mesa: add _mesa_InternalBind{ElementBuffer,VertexBuffers} for glthread
3184- glthread: do glBufferSubData as unsynchronized upload + GPU copy
3185- glthread: don't use atomics for refcounting to decrease overhead on AMD Zen
3186- glthread: track pointers and strides for Pointer & EXT_dsa attrib functions
3187- glthread: track instance divisor changes
3188- glthread: track primitive restart state
3189- glthread: initialize VAOs properly
3190- glthread: handle POS vs GENERIC0 aliasing
3191- glthread: handle gl{Push,Pop}ClientAttrib{DefaultEXT} for glthread states
3192- glthread: upload non-VBO vertices and indices for non-Indirect non-IBM draws
3193- tgsi_to_nir: handle TGSI_SEMANTIC_BLOCK_SIZE
3194- tgsi_to_nir: handle TGSI_OPCODE_BARRIER
3195- radeonsi: unify and align down the max SSBO/TBO/UBO buffer binding size
3196- radeonsi: clean up and deduplicate code around internal compute dispatches
3197- radeonsi: bind shader images after DCC is disabled for image stores
3198- radeonsi: add SI_IMAGE_ACCESS_DCC_OFF to ignore DCC for shader images
3199- radeonsi: implement and use compute-based DCC decompression on gfx9-10
3200- radeonsi: add a workaround to fix KHR-GL45.texture_view.view_classes on gfx9
3201- radeonsi: fix si_compute_clear_render_target with render condition enabled
3202- radeonsi: revert an accidental change in si_clear_buffer
3203- Revert "ac/surface: remove RADEON_SURF_TC_COMPATIBLE_HTILE and assume it's always set"
3204- Revert "ac: reassociate FP expressions for inexact instructions for radeonsi"
3205- ac/surface: fix MSAA crash with FORCE_SWIZZLE_MODE on gfx9
3206- radeonsi: don't wait for idle at the end of gfx IBs
3207- ac/surface: unset RADEON_SURF_TC_COMPATIBLE_HTILE if HTILE hasn't been computed
3208- radeonsi/gfx9: always use IMG_DATA_FORMAT_S8_32 for 8-bit stencil
3209- radeonsi: allow tc_compatible_htile to be mutable
3210- radeonsi: enable TC-compatible HTILE on demand for best Z/S performance
3211- tgsi_to_nir: translate non-vec4 image stores correctly
3212- radeonsi: fix compilation of monolithic PS
3213- amd: update amdgpu_drm.h
3214- amd: remove duplicated definitions from amdgpu_drm.h
3215- amd: assume CMASK is always rb/pipe_aligned, remove ac_surface.u.gfx9.cmask
3216- amd: assume HTILE is always rb/pipe_aligned, remove ac_surface.u.gfx9.htile
3217- ac/surface,radeonsi: move the set/get_bo_metadata code to ac_surface.c
3218- ac/surface,radeonsi: move the set/get_umd_metadata code into ac_surface.c
3219- amd: unify code for overriding offset and stride for imported buffers
3220- ac/surface: override all offsets including metadata offsets
3221- ac/surface: fix broken pitch override on gfx8
3222- gallium: rename 'state tracker' to 'frontend'
3223- gallium: change comments to remove 'state tracker'
3224- gallium: rename PIPE_RESOURCE_FLAG_ST_PRIV to FRONTEND_PRIV
3225- gallium: remove more "state tracker" occurences
3226- radeonsi: also enable tgsi_to_nir caching for compute shaders
3227- glthread: stop using GLenum16 to get correct GL errors for out-of-bounds enums
3228- radeonsi: don't expose 16xAA on chips with 1 RB due to an occlusion query issue
3229- ac/nir: honor ACCESS_STREAM_CACHE_POLICY for L1 and L0 caches too
3230- radeonsi: use correct clear value size for EQAA in expand_fmask
3231- radeonsi: optimize access pattern for compute blits with linear textures
3232- radeonsi: tweak clear/copy_buffer limits when to use compute
3233- radeonsi: simplify setting resource usage for si_init_temp_resource_from_box
3234- radeonsi: rename SI_RESOURCE_FLAG_TRANSFER to FORCE_LINEAR
3235- radeonsi: use vi_dcc_enabled instead of using tex->surface.dcc_offset directly
3236- radeonsi: use display_dcc_offset for setting displayable_dcc_cb_mask
3237- winsys/amdgpu: add RADEON_FLAG_UNCACHED for faster blits over PCIe
3238- radeonsi: disable the L2 cache for most CPU mappings of textures
3239- radeonsi: disable the L2 cache for CPU read mappings of buffers
3240- radeonsi: compute perf tests - don't test 1 wave/SA limit, test no limit first
3241- radeonsi: test uncached clear/copy buffer performance with compute shaders
3242- gallium/u_threaded: execute transfer_unmap with THREAD_SAFE directly
3243- ac/gpu_info: compute the best safe IB alignment
3244- ac/surface: don't compute single-sample CMASK if it's unaligned
3245- radeonsi: don't use INDIRECT_BUFFER within IBs
3246- radeonsi: decrease the max GS invocation count to 32
3247- Revert "radeonsi: don't wait for idle at the end of gfx IBs"
3248- ac: update register and packet definitions for preemption
3249- radeonsi: move resetting tracked registers into a new function
3250- radeonsi: split si_all_descriptors_begin_new_cs and rename functions
3251- radeonsi: don't enable TC-compatible HTILE for stencil if stencil doesn't use it
3252- radeonsi/gfx8: enable TC-compatible HTILE from the beginning as before
3253- radeonsi: don't hardcode most perf counter block counts
3254- ac/gpu_info: replace num_good_cu_per_sh with min/max_good_cu_per_sa
3255- amd: replace SH -> SA (shader array) in comments
3256- radeonsi/gfx10: implement most performance counters
3257- glthread: don't upload for glDraw inside a display list and always sync
3258- nir: add i2imp and u2ump opcodes for conversions to mediump
3259- nir: add int16 and uint16 type helpers
3260- nir: lower int16 and uint16 in nir_lower_mediump_outputs
3261- nir: fix lower_wpos for 16-bit fddy
3262- nir: add options::vectorize_vec2_16bit to limit vectorization to vec2 16
3263- glsl: treat lowp as mediump when lowering builtins
3264- glsl: handle int16 and uint16 types and add instructions for mediump
3265- glsl: lower mediump integer types to int16 and uint16
3266- glsl: lower mediump partial derivatives
3267- glsl: lower the precision of imageLoad
3268- glsl: lower samplers with highp coordinates correctly
3269- gallium: add shader caps INT16 and FP16_DERIVATIVES
3270- ac: rename has_double_rate_fp16 -> has_packed_math_16bit
3271- ac/nir: use more types from ac_llvm_context
3272- ac/nir: support vector types in the type suffix of overloaded intrinsics
3273- ac/nir: remove type and num_channels args from ac_build_buffer_store_common
3274- ac/nir: support 16-bit data in buffer_load_format opcodes
3275- ac/nir: support 16-bit data in image opcodes
3276- ac/nir: handle nir_op_[fiu]2[fiu]mp opcodes
3277- ac/nir: select v_cvt_pkrtz for all conversions from f32 to f16 for radeonsi
3278- ac/nir: set the second v_cvt_pkrtz argument to undef if it's unused
3279- ac/nir: support v2f16 derivatives
3280- nir: don't count samplers and images in interface blocks
3281- nir: gather which images are buffers
3282- nir: gather which images are MSAA
3283- radeonsi: remove unused leftover code for INDIRECT_BUFFER inside IBs
3284- radeonsi: remove const_buffers_declared hacks
3285- radeonsi: pass at most 3 images and/or shader buffers via user SGPRs for compute
3286- radeonsi: add a hack to disable TRUNC_COORD for shadow samplers
3287- gallium/u_vbuf: get rid of some pointer dereferences
3288- gallium/u_vbuf: add a faster path for uploading non-interleaved attribs
3289- glthread: sync in glFlush for multiple contexts
3290- radeonsi: enable ARB_sparse_buffer
3291- ac,radeonsi: replace == GFX10 with >= GFX10 where it's needed
3292- ac,radeonsi: start adding support for gfx10.3
3293- ac/surface: add displayable DCC code for gfx10.3
3294- radeonsi: honor a user-specified pitch on gfx10.3
3295- radeonsi: enable larger SDMA clears and copies on gfx10.3
3296- radeonsi: implement R9G9B9E5 render target and image store support on gfx10.3
3297- radeonsi: move L2_CACHE_CONTROL registers into si_emit_framebuffer_state
3298- radeonsi: set BIG_PAGE fields on gfx10.3
3299- radeonsi: don't set any XNACK options on gfx10.3
3300- ac: align num_vgprs for gfx10.3
3301- radeonsi: add support for Sienna Cichlid
3302- radeonsi: require LLVM 11 for gfx10.3
3303- ac/surface: don't recompute the DCC retile map for imported textures
3304- amd/addrlib: don't recompute DCC info for every ComputeDccAddrFromCoord call
3305- amd/addrlib: remove unused members of ADDR2_COMPUTE_DCC_ADDRFROMCOORD_INPUT
3306- ac/surface: add a wrapper structure to hold ADDR_HANDLE
3307- ac/surface: cache DCC retile maps (v2)
3308- amd/addrlib: fix the C++ one definition rule violation
3309- ac/surface: don't set is_displayable if displayable DCC is missing
3310- ac/surface: require that gfx8 doesn't have DCC in order to be displayable
3311- ac/surface: enable DCC for the first level in the mip tail on gfx10
3312- ac/surface: don't free dcc_retile_map on failure
3313- radeonsi: compact MRTs to save PS export memory space
3314- ac/nir: fix 64-bit division for GL CTS
3315- glapi: fix incorrect param names in ARB_vertex_attrib_binding functions
3316- glthread: rename non_vbo_attrib_mask -> user_buffer_mask, attribs -> buffers
3317- glthread: handle ARB_vertex_attrib_binding
3318- radeonsi: don't wait for idle at the end of gfx IBs
3319- radeonsi: replace ctx->screen with sscreen in si_flush_gfx_cs
3320- glsl,driconf: add allow_glsl_120_subset_in_110 for SPECviewperf13
3321- driconf: add workarounds for SPECviewperf13
3322- amd: add proper definitions for NOP packets
3323- ac,winsys/amdgpu: align IBs the same as the kernel
3324- radeonsi: don't add the border color buffer into the init_config state
3325- radeonsi: rename init_config states to cs_preamble states
3326- radeonsi: don't add the tess ring buffers into the cs_preamble state
3327- radeonsi: make wait_mem_scratch unmappable
3328- radeonsi: disallow adding BOs into si_pm4_state except 1 shader BO per state
3329- radeonsi: make si_pm4_cmd_begin/end static and simplify all usages
3330- radeonsi: clear per-context buffers at the end of si_create_context
3331- radeonsi: remove tabs
3332- radeonsi: don't flush in fence_server_sync
3333- ac/gpu_info: fix num_physical_sgprs_per_simd for gfx10
3334- radeonsi: fix NGG culling for Wave64
3335- radeonsi: always use Wave32 for GS fast launch, because Wave64 hangs
3336- radeonsi: always use Wave64 for HS/GS/VS shader stages (except GS fast launch)
3337- radeonsi: don't try to enable NGG culling for GS
3338- radeonsi: add a debug option to enable NGG culling for tessellation
3339- glsl: make print_type non-static for debugging
3340- glsl: print precision qualifiers in IR dumps
3341- glsl: print constant initializers
3342- glsl: fix the type of ir_constant_data::u16
3343- glsl: fix evaluating float16 constant expression matrices
3344- glsl: run validate_ir_tree if GLSL_VALIDATE=1 regardless of the build config
3345- glsl: validate more stuff
3346- glsl: convert reusable lower_precision util code into helper functions
3347- glsl: remove the return type from lower_precision
3348- glsl: cleanups in lower_precision
3349- glsl: flatten a tautological conditional in lower_precision
3350- glsl: don't lower precision of textureSize
3351- glsl: don't lower builtins to mediump that don't allow it
3352- glsl: lower builtins to mediump that ignore precision of certain parameters
3353- glsl: lower builtins to mediump that always return mediump or lowp
3354- glsl: add capability to lower mediump array types
3355- glsl: lower mediump temporaries to 16 bits except structures (v2)
3356- gallium: add PIPE_SHADER_CAP_GLSL_16BIT_TEMPS for LowerPrecisionTemporaries
3357- Revert "ac/surface: require that gfx8 doesn't have DCC in order to be displayable"
3358- glsl: don't validate array types in ir_dereference_variable
3359- radeonsi: prevent a gfx10_ngg_calculate_subgroup_info failure for TES+NGG GS
3360- radeonsi: add missing initialization of registers
3361- radeonsi/gfx10: set the correct value for OFFCHIP_BUFFERING
3362- radeonsi: sort registers in si_emit_initial_compute_regs according to GPU gen
3363- radeonsi: sort registers in si_init_cs_preamble_state according to GPU gen
3364- ac: add helper ac_get_register_name
3365- ac: add tables for CP register shadowing
3366- winsys/amdgpu: make amdgpu_bo_unmap non-static
3367- radeonsi: make cs_preamble_state optional
3368- radeonsi: reorder code in update_gs_ring_buffers and init_tess_factor_ring
3369- radeonsi: implement CP register shadowing
3370- radeonsi: add reg shadowing codepaths to GS and tess ring setup
3371- radeonsi: add debug code for register shadowing
3372- radeonsi: don't restore states at the beginning of IBs if they're shadowed
3373- radeonsi: set up IBs for preemption
3374- radeonsi: enable preemption if the kernel enabled it
3375- amd: rename SIENNA -> SIENNA_CICHLID
3376- amd: add support for Navy Flounder
3377- amd: enable displayable DCC for everything newer than Navi1x
3378- radeonsi: disable SDMA on gfx9
3379- radeonsi: reorder NIR optimizations
3380- radeonsi: call nir_split_array_vars/shrink_vec_array_vars/opt_find_array_copies
3381- glsl: lower_precision - fix assertion failure with dereferences of constants
3382- glsl: fix constant expression evaluation for 16-bit types
3383- glsl: don't lower atomic functions to mediump
3384- glsl: don't create conversion opcodes for array types
3385- glsl: don't lower to mediump for desktop OpenGL
3386- glsl: improve precision determination for calls
3387- Revert "radeonsi: honor a user-specified pitch on gfx10.3"
3388- radeonsi: use correct wave size in gfx10_ngg_calculate_subgroup_info
3389- radeonsi: use the same units for esgs_ring_size and ngg_emit_size
3390- radeonsi: increase minimum NGG vertex count requirement per workgroup on gfx 10.3
3391- radeonsi: fix applying the NGG minimum vertex count requirement
3392- radeonsi: don't count unusable vertices to the NGG LDS size
3393- radeonsi: add a common function for getting the size of gs_ngg_scratch
3394- radeonsi: remove the NGG hack decreasing LDS usage to deal with overflows
3395- radeonsi: various fixes for gfx10.3
3396- radeonsi: disable NGG culling on gfx10.3 because of hangs
3397- st/mesa: don't generate NIR for ARB_vp/fp if NIR is not preferred
3398- radeonsi: fix tess levels coming as scalar arrays from SPIR-V
3399- gallivm: fix build on LLVM 12 due to LLVMAddConstantPropagationPass removal
3400- ac/llvm: fix unaligned VS input loads on gfx10.3
3401- Revert "ac: generate FMA for inexact instructions for radeonsi"
3402
3403Marek Vasut (3):
3404
3405- etnaviv: Disable seamless cube map on GC880
3406- etnaviv: Remove etna_resource_get_status()
3407- etnaviv: Add lock around pending_ctx
3408
3409Mario Kleiner (1):
3410
3411- vulkan/wsi: Really terminate DRM lease in wsi_release_display().
3412
3413Mathias Fröhlich (2):
3414
3415- st/mesa: Move _NEW_FRAG_CLAMP to NewFragClamp driver flag.
3416- mesa: set _NEW_FRAG_CLAMP only when needed
3417
3418Matt Turner (22):
3419
3420- intel/compiler: Drop opt_sampler_eot()
3421- intel/tools: Remove unnecessary reg number checking
3422- intel/tools: Drop srctype from ipreg
3423- intel/tools: Require explicit regions/types for special regs
3424- intel/tools: Disallow control subregisters > 3
3425- intel/tools: Add assembler tests for the cr0 register
3426- intel/compiler: Add assert that set bits are within mask
3427- intel/compiler: Don't emit no-op cr0 changes
3428- intel/tools: Fix typos
3429- intel/tools: Remove stray newline
3430- intel/tools: Don't allow empty type specifier
3431- intel/tools: Simplify register type handling
3432- intel/tools: Make swizzle an integer
3433- intel/tools: Make writemask an integer
3434- intel/tools: Simplify immediate handling
3435- intel/tools: Simplify dstregion
3436- intel/compiler: Relax SENDS regioning assertions
3437- intel/tools: Pass integers, not enums, to stride()
3438- intel/tools: Manually set ARF register file/nr/subnr
3439- intel/tools: Don't hardcode notification register
3440- intel/tools: Simplify notification register handling
3441- intel/tools: Test notification subregisters
3442
3443Mauro Rossi (17):
3444
3445- android: iris: add iris_seqno.{c,h} to Makefile.sources
3446- freedreno/drm: android: add libfreedreno_registers static dependency
3447- freedreno: android: add adreno-pm4-pack.xml.h generation to android build
3448- android: util: fix build for GL4.1 support
3449- android: svga: fix build for GL4.1 support
3450- android: aco: add aco_ir.cpp to Makefile.sources
3451- android: nvir/gv100: update sources in Makefile.sources
3452- android: freedreno: add fd5_layout.c to Makefile.sources
3453- android: freedreno/ir3: add missing generated sources and rules
3454- android: freedreno/ir3: simplify generated sources rules
3455- android: panfrost/encoder: add libmesa_nir static dependency
3456- radv: fix build on Android 7 (v2)
3457- android: freedreno/registers: fix generated headers rules
3458- android: freedreno/ir3: fix include paths
3459- android: freedreno/common: add support for libfreedreno_common static
3460- android: freedreno: move a2xx disasm out of gallium
3461- android: freedreno/common: add libmesa_git_sha1 static dependency
3462
3463Michel Dänzer (38):
3464
3465- gitlab-ci: Use YAML anchor for llvmpipe paths in virgl rules
3466- gitlab-ci: Update to current templates
3467- gitlab-ci: Move down container_pre_build.sh invocation in x86_build.sh
3468- gitlab-ci: Add Debian testing repository for x86_build image
3469- gitlab-ci: Install WINE from Debian testing
3470- gitlab-ci: Move lib{drm,pciaccess}-dev cross packages out of loop
3471- gitlab-ci: Install g++-mingw-w64-x86-64-win32 instead of mingw-w64
3472- Revert "ac,radeonsi: fix compilations issues with LLVM 11"
3473- Revert "gallium/gallivm: fix compilation issues with llvm 11"
3474- gitlab-ci: Enable -Werror in `meson-s390x` job
3475- gitlab-ci: Also list arm/x86_build in needs: of test jobs
3476- gitlab-ci: x86_test-base image as common base for x86_test-gl/vk
3477- gitlab-ci: Pull in GCC 9 from Debian testing in x86_test-gl/vk images
3478- gitlab-ci: Move LLVM/clang 6/7 packages to the x86_build_old image
3479- gitlab-ci: Use Debian 10 wine-development packages
3480- gitlab-ci: Stop using packages from Debian testing
3481- gitlab-ci: Move meson back to x86_test-gl/vk ephemeral packages lists
3482- gitlab-ci: Add x86_build-base docker image
3483- gitlab-ci: Use separate docker images for cross builds
3484- loader/dri3: Add dri3_wait_for_event_locked full_sequence out parameter
3485- loader/dri3: Use dri3_wait_for_event_locked in loader_dri3_wait_for_msc
3486- loader/dri3: Check for window destruction in dri3_wait_for_event_locked
3487- gitlab-ci: Automatically run pipelines for Marge Bot pre-merge only
3488- gitlab-ci: Use rules: instead of except:/only: for test-docs job
3489- gitlab-ci: Extend .ci-run-policy template for docs jobs
3490- gitlab-ci: Do not create the "success" job when the test-docs job exists
3491- ci: Use "when: always" for pages job
3492- ci: Move deploy stage between container & build stages
3493- Revert "loader/dri3: Check for window destruction in dri3_wait_for_event_locked"
3494- gitlab-ci: Remove indirect dependencies from needs:
3495- gitlab-ci: Drop dependencies:
3496- Revert https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4580
3497- gitlab-ci: Fix "triggered by Marge for a merge request" rule
3498- gitlab-ci: Only trigger test-docs job automatically for MRs
3499- ci: Use FDO_CI_CONCURRENT in run-shader-db.sh as well
3500- ci: Do not mark container / pages jobs as interruptible
3501- ci: Use half as many parallel softpipe / virgl test jobs
3502- ci: Use ignore_scheduled_pipelines anchor in .radeonsi-rules
3503
3504Michel Zou (1):
3505
3506- swr: fix build with mingw
3507
3508Mike Blumenkrantz (73):
3509
3510- zink: explicitly zero some arrays in ntv
3511- zink: add SpvId returns to a couple ntv functions
3512- zink: flush active queries on destroy and free query object
3513- zink: fix vkCmdResetQueryPool usage
3514- zink: reset query on-demand when beginning a new query from resume
3515- zink: always use logical eq ops in ntv with 1bit inputs
3516- zink: track program usages for each shader
3517- zink: emit interpolation decorations for ntv outputs
3518- zink: handle more glsl->spirv builtin translation
3519- zink: rework input/output location emission
3520- zink: use '2' variants for device props/feats, check features for ext enabling
3521- zink: add spirv builder util functions for emitting xfb decorations
3522- zink: add spirv_builder methods for OpVectorExtractDynamic and OpVectorInsertDynamic
3523- zink: implement streamout and xfb handling in ntv
3524- zink: implement transform feedback support to finish off opengl 3.0
3525- zink: set PIPE_CAP_VIEWPORT_TRANSFORM_LOWERED and remove POS special casing
3526- zink: switch to passing VkPhysicalDeviceFeatures2 in VkDeviceCreateInfo
3527- zink: enable xfb extension in screen creation
3528- zink: use int assignment for vk int type
3529- zink: use correct define value for reserved slot count in ntv
3530- zink: clamp VkImageCreateInfo.arrayLayers to 1 for image resource creation
3531- zink: unify code for setting resource barriers
3532- zink: handle signed and unsigned min/max ops in ntv
3533- zink: add ult handling for ntv
3534- zink: add bitfield_reverse handling to ntv
3535- zink: lower byte/word extract ops in nir
3536- zink: handle ixor in ntv
3537- zink: handle isign alu in ntv
3538- zink: set lower_mul_high and lower_rotate in ntv compiler options
3539- zink: use OpFUnordNotEqual for nir_op_fne
3540- zink: set lower_uadd_carry in nir options
3541- zink: implement Vk_EXT_index_type_uint8
3542- nir: add lowering pass for clip plane enabling
3543- st/program: use nir_lower_clip_disable instead of nir_lower_clip_vs conditionally
3544- nir: add lowering pass for fragcolor -> fragdata
3545- zink: translate gl_FragColor to gl_FragData before ntv to fix multi-rt output
3546- u_prim_restart: handle user buffers in util_translate_prim_restart_ib()
3547- nir: allow nir_lower_point_size_mov to run in geometry shader
3548- nir: allow nir_lower_clip_halfz to run in geometry shaders
3549- zink: rework query handling
3550- zink: use #define for number of queries per-pool
3551- zink: only stall during query destroy for xfb queries
3552- zink: properly handle query pool overflows
3553- zink: only reset query pool on query end if current batch isn't in renderpass
3554- zink: use right vulkan type for GL_PRIMITIVES_GENERATED queries
3555- zink: handle ntv case of nested loop instructions more permissively
3556- zink: add lengthy comment and remove assert from discard_if ntv pass
3557- zink: use type of src[0] for ntv store and load ops
3558- zink: try copy_region hook for blits where we can't do a regular blit or resolve
3559- zink: block vkCmdBlitImage usage for multi sampled blits
3560- zink: block resolve blits for depth/stencil buffers
3561- zink: handle empty attachments
3562- zink: try to handle multisampled null buffers
3563- zink: enable tgsi texcoord pipe cap
3564- zink: destroy gfx program when a shader is freed
3565- zink: destroy descriptor pools on context destroy
3566- zink: free pipeline cache during program destroy
3567- zink: free all ntv allocations after creating shader module
3568- zink: use helper function to handle uvec/bvec types
3569- zink: handle texelFetchOffset with offsets
3570- zink: add some asserts for building access chains in ntv
3571- zink: omit Lod image operand in ntv when not using an image texture dim
3572- nir: allow lower_psiz_mov to run in tessellation stages
3573- nir\_ allow nir_lower_clip_halfz to run in tess eval shader
3574- u_prim_restart: handle indirect draws
3575- zink: add extension loading framework for spirv builder
3576- zink: implement VK_EXT_robustness2
3577- zink: clamp PIPE_SHADER_CAP_MAX_SHADER_BUFFERS to PIPE_MAX_SHADER_BUFFERS
3578- zink: handle VK_EXT_vertex_attribute_divisor setup
3579- zink: store valid timestamp bits onto zink_screen
3580- zink: implement handling for VK_EXT_calibrated_timestamps
3581- u_prim_restart: add inline function for getting restart index based on index size
3582- zink: reorder create_stream_output_target to fix failure case leak
3583
3584Miklós Máté (1):
3585
3586- docs: add some missing stuff to sourcetree.rst
3587
3588Nanley Chery (18):
3589
3590- iris: Drop can_fast_clear_color's format parameter
3591- iris: Remove the CCS_D fallback
3592- iris: Avoid fast-clear with incompatible view
3593- iris: Disable sRGB fast-clears for non-0/1 values
3594- intel: Add ISL_AUX_USAGE_GEN12_CCS_E
3595- iris: Don't support sRGB + Y_TILED_CCS on gen9
3596- iris: Use ISL_AUX_USAGE_GEN12_CCS_E on gen12
3597- isl/drm: Support I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS
3598- gallium/dri2: Support I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS
3599- iris: Handle importing aux-enabled surfaces on TGL
3600- iris: Refactor modifier_is_supported for gen12
3601- iris: Support I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS
3602- iris: Zero the add-on clear color BO on import
3603- dri_util: Update internal_format to GL_RGB8 for MESA_FORMAT_B8G8R8X8_UNORM
3604- iris: Don't call SET_TILING for dmabuf imports
3605- gallium/dri2: Report correct YUYV and UYVY plane count
3606- iris: Fix aux assertion in resource_get_handle
3607- blorp: Fix alignment test for HIZ_CCS_WT fast-clears
3608
3609Nataraj Deshpande (3):
3610
3611- anv: Limit vulkan version to 1.1 for Android
3612- anv: Disable extensions based on Android versions
3613- dri_util: Update internal_format to GL_RGB8 for MESA_FORMAT_R8G8B8X8_UNORM
3614
3615Neha Bhende (6):
3616
3617- util: Initialize pipe_shader_state for passthrough and transform shaders
3618- util: Add util functionality for GL4.1 support
3619- winsys/drm: Add GL4.1 support in drm winsys
3620- svga/include: Headers for GL4.1 support
3621- svga: Add GL4.1(compatibility profile) support in svga driver
3622- svga: Performance fixes
3623
3624Neil Armstrong (2):
3625
3626- Revert "CI: Disable Lima jobs due to lab unhealthiness"
3627- Revert "CI: Disable Panfrost Mali-T820 jobs"
3628
3629Neil Roberts (26):
3630
3631- nir/scheduler: Handle nir_intrinsic_load_per_vertex_input
3632- v3d: Remove unused member of v3d_compile
3633- nir/schedule: Store a pointer to the scoreboard in nir_deps_state
3634- nir/scheduler: Add an option to specify what stages share memory for I/O
3635- v3d: Let scheduler know GS doesn’t have shared I/O memory
3636- gallium: Add pipe cap for primitive restart with fixed index
3637- mesa: Add PrimitiveRestartFixedIndex to gl_constants
3638- v3d: Disable PIPE_CAP_PRIMITIVE_RESTART
3639- v3d: Add missing macro for stvpmd instruction
3640- v3d: Use stvpmd for non-uniform offsets in GS
3641- compiler: Add a system value for the line coord
3642- v3d: Implement the line coord intrinsic
3643- nir: Add intrinsics for the line width
3644- v3d: Handle the line width intrinsics
3645- v3d: Add a lowering pass for line smoothing
3646- v3d: Enable perpendicular line caps when line smoothing
3647- broadcom/qpu: set VC5_QPU_RADDR_A out of the switch at _pack_branch
3648- v3d/compiler: Fix sorting the gs and fs inputs
3649- v3d/compiler: Lower geometry output store base into offset src
3650- nir/scheduler: Move nir_scheduler to its own header
3651- nir/schedule: Store a pointer to the options struct in scoreboard
3652- nir/schedule: Add a callback for backend-specific dependencies
3653- v3d: Mark scheduling dependency for prim id and first output
3654- nir/schedule: Add an option for a fallback scheduling algorithm
3655- v3d: Changed v3d_compile:failed to an enum
3656- v3d: Retry with the fallback scheduler when RA fails
3657
3658Oschowa (5):
3659
3660- radv: Don't take absolute value of unsigned type.
3661- aco: Don't declare 'Block' as class, but define as struct.
3662- aco: Don't std::move temporary object.
3663- aco: Use correct reference type in for-range-loop.
3664- radv: Explicitly cast TIMESTAMP_NOT_READY value to uin32_t where needed.
3665
3666Pablo Saavedra (5):
3667
3668- ci: TRACES_DB_PATH and RESULTS_PATH defined as relative paths
3669- ci: ArgumentParser receives the args from the main parameters
3670- ci: Migrate tracie tests done in shell script to pytest
3671- ci: Split test_tracie_skips_traces_without_checksum in separate cases
3672- ci: Fix TypoError error when traces in traces.yml is an empty list
3673
3674Pavel Asyutchenko (1):
3675
3676- vulkan/overlay: fix crash on destroying NULL swapchain
3677
3678Peter Seiderer (3):
3679
3680- vc4_bufmgr: fix time_t printf
3681- pan_bo.h: add time.h include for time_t
3682- v3d_bufmgr: fix time_t printf
3683
3684Pierre Moreau (4):
3685
3686- clover/nir: Check the result of spirv_to_nir
3687- clover/api: Address missing braces for subobj init
3688- clover: Address unnecessary copy warnings
3689- clover/spirv: Remove unused tuple header
3690
3691Pierre-Eric Pelloux-Prayer (62):
3692
3693- radeonsi: fix export count
3694- mesa: add gl_coontext::ForceIntegerTexNearest
3695- driconf: add force_integer_tex_nearest option
3696- radeonsi: add workaround for issue 2647
3697- radeonsi: don't print gs_copy_shader stats for shaderdb
3698- glsl: init gl_FragColor if zero_init=true
3699- glsl: rework zero initialization
3700- glsl: add a is_implicit_initializer flag
3701- mesa: extend GLSLZeroInit semantics
3702- gallium: add a new cap PIPE_CAP_GLSL_ZERO_INIT
3703- ac/nir: export some undef as zero
3704- ac/surface: remove shadowing declaration
3705- amdgpu/radeon: add secure api
3706- radeonsi: add AMD_DEBUG=tmz option
3707- radeon: add RADEON_CREATE_ENCRYPTED flag
3708- radeonsi: allocate framebuffer texture as secure when using tmz
3709- amdgpu: add encrypted slabs support
3710- radeonsi: force using staging texture when uploading to secure texture
3711- radeonsi/sdma: implement tmz support
3712- gallium: PIPE_RESOURCE_FLAG_ENCRYPTED
3713- radeonsi: add support for PIPE_RESOURCE_FLAG_ENCRYPTED
3714- amdgpu: use AMDGPU_IB_FLAGS_SECURE when requested
3715- radeonsi: determine secure flag must be set for gfx IB
3716- radeonsi: do not use cmask with encrypted texture
3717- amd/addrlib: fix forgotten char -> enum conversions
3718- radeonsi: fix inversed arguments in si_test_gds_memory_management
3719- amdgpu: fix unitialized variable
3720- radeonsi/sdma: remove useless compare
3721- radeonsi/drirc: enable zerovram option for 7 Days to Die
3722- winsys/radeon: do not cast bo->va as void*
3723- radeonsi: add return value to gfx10_ngg_calculate_subgroup_info
3724- radeonsi/ngg: try GS multi-cycling mode if default mode failed
3725- ac/surface: set SCANOUT if surf->is_displayable
3726- ac/surface: fix epitch when modifying surf_pitch
3727- ac/llvm: load 1 byte at a time if unaligned on gfx10
3728- st/mesa: make texture views inherit compressed_data storage
3729- radeonsi: bump SI_NUM_SHADER_BUFFERS to 32
3730- st/mesa: do not clear NewDriverState for inactive states
3731- glsl: reject size1x8 for image variable with floating-point data types
3732- ac/llvm: remove the -1 hack from ac_atomic_inc_wrap
3733- glsl: don't expose imageAtomicIncWrap for signed image
3734- glsl: only allow 32 bits atomic operations on images
3735- glsl: declare gl_Layer/gl_ViewportIndex/gl_ViewportMask as vs builtins
3736- st/mesa: set compressed_data to NULL when freed
3737- bin/symbols-check.py: add --ignore-symbol argument
3738- ac/llvm: export ac_init_llvm_once in targets
3739- mesa: rename _mesa_free_errors_data
3740- mesa: add bool param to _mesa_free_context_data
3741- mesa/st: release debug_output after destroying the context
3742- ac/surface: adapt surf_size when modifying surf_pitch
3743- radeonsi: adjust epitch for PIPE_FORMAT_R8G8_R8B8_UNORM
3744- radeonsi: extend workaround for KHR-GL45.texture_view.view_classes on gfx9
3745- ac/llvm: handle static/shared llvm init separately
3746- mesa/st: introduce PIPE_CAP_NO_CLIP_ON_COPY_TEX
3747- radeonsi: enable PIPE_CAP_NO_CLIP_ON_COPY_TEX
3748- ac/llvm: add option to clamp division by zero
3749- radeonsi,driconf: add clamp_div_by_zero option
3750- radeonsi: use radeonsi_clamp_div_by_zero for SPECviewperf13, Road Redemption
3751- glsl: fix per_vertex_accumulator::fields size
3752- r600/uvd: set dec->bs_ptr = NULL on unmap
3753- radeon/vcn: set dec->bs_ptr = NULL on unmap
3754- mesa: fix glUniform* when a struct contains a bindless sampler
3755
3756Pierre-Loup A. Griffais (2):
3757
3758- radv: fix null descriptor for dynamic buffers
3759- radv: fix vertex buffer null descriptors
3760
3761Qiang Yu (6):
3762
3763- radeonsi: remove emacs style config file
3764- panfrost: don't always build bifrost_compiler
3765- radeonsi: fix syncobj wait timeout
3766- radeonsi: fix user fence space when MCBP is enabled
3767- radeonsi: fix max syncobj wait timeout
3768- radeonsi: fix user fence GPU address
3769
3770Rafael Antognolli (8):
3771
3772- intel: Store the aperture size in devinfo.
3773- intel/isl: Update mocs for DG1
3774- intel/l3: Return the URB size from devinfo for DG1
3775- intel/devinfo: Add function to check for DRM_I915_GEM_GET_TILING.
3776- iris/bufmgr: Do not use map_gtt or use set/get_tiling on DG1
3777- anv/dg1: Don't use SET_TILING kernel uapi.
3778- iris: Align last_seqnos to 64 bits.
3779- anv: Align "used" attribute to 64 bits.
3780
3781Rhys Kidd (5):
3782
3783- nv50_2d: regenerate envytools-based rnndb headers
3784- nv50_2d,nvc0_2d: Document SET_PIXELS_FROM_MEMORY_SAFE_OVERLAP from rnndb
3785- nvc0_2d: Document SET_PIXELS_FROM_MEMORY_CORRAL_SIZE from rnndb
3786- nvc0: fix macro define for NVE4_COPY()
3787- nvc0: add documentation for nve4+ (Kepler) COPY class
3788
3789Rhys Perry (174):
3790
3791- aco: remove use of f-strings
3792- aco: add message to static_assert
3793- nir: add missing group_memory_barrier handling
3794- compiler/spirv: flag nclamp/nmin/nmax as exact
3795- nir: make fsat return 0.0 with NaN instead of passing it through
3796- docs: add src/amd/ to sourcetree.html
3797- docs/envvars: document ACO_DEBUG
3798- docs/envvars: update RADV_FORCE_FAMILY
3799- aco: simplify consecutive ordered vmem/lds writes optimization
3800- aco: fix consecutively written vgprs from vmem instructions
3801- aco: mark phi definitions as last-seen phi operands
3802- aco: consider affinities when creating v_mac_f32
3803- aco: improve phi affinities with p_split_vector
3804- aco: split operations that use a swap's definition
3805- aco: fix disassembly with LLVM 11
3806- nir/opt_if: run opt_peel_loop_initial_if after all other optimizations
3807- nir/opt_if: use nir_src_as_bool in opt_peel_loop_initial_if helper
3808- aco: fix typo in insert_waitcnt's kill()
3809- nir: fix lowering to scratch with boolean access
3810- aco: fix interaction with 3f branch workaround and p_constaddr
3811- aco: consider SDWA during value numbering
3812- aco: check instruction format before waiting for a previous SMEM store
3813- aco: preserve more fields when combining additions into SMEM
3814- aco: don't reorder barriers in the scheduler
3815- aco: fix 64-bit shared_atomic_exchange
3816- docs: add missing "shader\_" in VK_KHR_shader_subgroup_extended_types
3817- radv: set keep_statistic_info with RADV_DEBUG=shaderstats
3818- ac/gpu_info, radv: set max_wave64_per_simd to 20 on GFX10
3819- aco: use v_xor3_b32
3820- aco: validate instructions reading/writing upper halves/bytes
3821- aco: p_extract_vector in 64-bit u2f16/i2f16
3822- aco: allow reading/writing upper halves/bytes when possible
3823- aco: prefer 4-byte aligned definitions
3824- aco: add Info::{operand_size,definition_size}
3825- aco: use Info::definition_size instead of definition's regclass
3826- aco: fix moving sub-dword values out of a register for a fixed definition
3827- aco: use num_opcodes instead of last_opcode
3828- aco: improve code for f2{i,u}{8,16}
3829- aco: use p_as_uniform in emit_vop1_instruction
3830- aco: add and set precise flag
3831- aco: create mads when signed zeros should be preserved
3832- aco: try to use fma instead of mad when denormals are enabled
3833- aco: create 16-bit mad/fma
3834- aco: update comment about preserving fp16/fp64 denormals
3835- aco: create 16-bit input and output modifiers
3836- aco: improve sub-dword check for sgpr/constant propagation
3837- aco: fix half_pi constant for 16-bit fsin/fcos
3838- aco: use 32-bit inline constants for 16-bit integer instructions
3839- aco: improve 8/16-bit constants
3840- aco: copy-propagate constants through p_extract_vector/p_split_vector
3841- aco: optimize 16-bit and 64-bit float comparisons
3842- aco: validate sub-dword pseudo instructions
3843- aco: add more opcodes to can_swap_operands
3844- aco: allow GFX9 partial writes with instructions which use opsel
3845- aco: improve check for moving temporaries out of fixed definitions
3846- aco: fix encoding of certain s_setreg_imm32_b32 instructions
3847- aco: fix validation error from vgpr spill/restore code
3848- aco: fix sub-dword opsel/sdwa checks
3849- aco: fix validation of opsel when set for the definition
3850- aco: shrink ssa_info
3851- aco: make ssa_info::label 64-bit
3852- aco: shrink mad_info
3853- aco: fix edge check with sub-dword temporaries
3854- aco: use the same regclass as the definition for undef phi operands
3855- radv: add new drirc option radv_no_dynamic_bounds
3856- radv: enable radv_no_dynamic_bounds for Path of Exile
3857- radv: enable radv_no_dynamic_bounds for more Path of Exile executables
3858- nir: slight correction to cube_face_coord constant folding
3859- spirv: set variables to restrict by default
3860- radv: fix image variable types in meta shaders
3861- aco: only use SMEM if we can prove it's safe
3862- aco: allow SMEM for some sub-dword accesses
3863- radv/aco,aco: allow SMEM SSBO loads on GFX6/7
3864- aco: fix copy+paste error in split_buffer_store
3865- aco: don't store byte-aligned short stores
3866- aco: add missing bld.scc() in byte_align_scalar()
3867- aco: don't create byte-aligned short loads
3868- aco: fix when sub-dword create_vector operand cannot be placed perfectly
3869- aco: improve vectorization of 8/16-bit loads/stores
3870- aco: ignore blocked registers when checking edges in get_reg_impl()
3871- aco: remove outdated assert in handle_operands()
3872- radv: enable zerovram for Quantic Dream games
3873- aco: use VOP2 version of v_mbcnt_hi_u32_b32 on GFX6/7
3874- aco: rework boolean phi pass
3875- aco: create better code for boolean phis with constant operands
3876- aco: optimize boolean phis with uniform selections
3877- aco: don't create phis with undef operands in the boolean phi pass
3878- aco: read 0 from inactive lanes when using dpp
3879- aco: optimize some masked swizzles to DPP
3880- aco: implement <32-bit masked_swizzle_amd
3881- nir/lower_subgroups: pass options struct to lower_shuffle
3882- nir/lower_subgroups: add lower_shuffle_to_swizzle_amd
3883- radv: use lower_shuffle_to_swizzle_amd
3884- aco: add 32-bit integer addition to can_swap_operands
3885- aco: fix underestimated pressure in spiller when a phi has a killed def
3886- aco: rewrite graph coloring in spiller
3887- aco: use unordered_set for spill id interferences
3888- aco: add add_interference() helper
3889- aco: use s_round_mode/s_denorm_mode
3890- aco: flush denormals before fp16 fabs/fneg if needed
3891- aco: fix nir_op_f2f16_rtne with non-default rounding modes
3892- aco: set tcs_in_out_eq=false if float controls of VS and TCS stages differ
3893- radv: enable more float_controls features
3894- aco: properly recognize that s_waitcnt mitigates VMEMtoScalarWriteHazard
3895- aco: use s_waitcnt_depctr to mitigate VMEMtoScalarWriteHazard
3896- spirv: don't split memory barriers
3897- nir/lower_int64: lower 64-bit amul
3898- aco: always set FI on GFX10
3899- radv: replace discard with demote for Quantic Dream games
3900- aco: implement b2i8/b2i16
3901- aco: be more careful combining additions that could wrap into loads/stores
3902- aco: allow overflow for some SMEM instructions
3903- aco: add NUW flag
3904- nir: add nir_unsigned_upper_bound and nir_addition_might_overflow
3905- aco: use nir_addition_might_overflow to combine additions into SMEM
3906- aco: move some setup code into helpers
3907- aco: make validate() usable in tests
3908- aco: print ACO IR before scheduling instead of after
3909- radv: fix invalid conversion warnings in vk_format.h
3910- aco: fix copy of uninitialized boolean
3911- aco: fix includes in aco_ir.cpp
3912- aco: add missing add_to_hazard_query
3913- aco: rework barriers and replace can_reorder
3914- radv/aco,aco: use scoped barriers
3915- aco: consider intrinsic access in visit_{load,store}_image
3916- nir,radv/aco: add and use pass to lower make available/visible barriers
3917- aco: enable value numbering of s_buffer_load_*
3918- aco: use storage_scratch
3919- aco: improve sync_info for TCS output stores
3920- aco: improve workgroup-scope and lower vmem/smem barriers
3921- aco: create acq+rel barriers instead of acq/rel
3922- nir/load_store_vectorize: fix indentation
3923- ac/nir: implement scoped_barrier
3924- radv: use scoped barriers
3925- aco: remove isel for GLSL-style barriers
3926- aco: add framework for unit testing
3927- aco: add a few tests for the assembler and optimizer
3928- aco: add framework for testing isel and integration tests
3929- ci: enable ACO tests
3930- aco/tests: add tests for sub-dword swaps
3931- aco: optimize swizzled SALU 8/16-bit conversions
3932- aco: fix waitcnt insertion on GFX10.3
3933- aco: don't create v_mad_f32 on GFX10.3
3934- aco: update bug workarounds for GFX10_3
3935- aco: fix max_waves_per_simd on Polaris, VegaM and GFX10.3
3936- aco: update vgpr_alloc_granule for GFX10.3
3937- aco: implement subgroup shader_clock on GFX10.3
3938- aco: update aco_opcodes.py for GFX10.3
3939- aco: disable SMEM stores on GFX10.3
3940- aco: replace MADs in isel with FMA on GFX10.3
3941- spirv: set ACCESS_COHERENT for ssbo/global/image atomic load/store
3942- radv/aco: enable VK_KHR_memory_model
3943- ac/nir: consider an image load/store intrinsic's access
3944- ac/nir: fix coherent global loads/stores
3945- radv/llvm: enable VK_KHR_memory_model
3946- aco: fix C++11/C++14 compilation
3947- aco: set constant_data_offset correctly in the case of merged shaders
3948- aco: don't move memory accesses to before control barriers
3949- aco: fix non-rtz pack_half_2x16
3950- aco: consider branch definitions in spiller
3951- aco: don't consider the first partial spill if it's the wrong type
3952- aco: don't fix break condition for break+discard to exec
3953- aco: fix regclass checks when fixing to vcc/exec with Builder
3954- aco: fix spills_entry heuristic for branch blocks in init_live_in_vars()
3955- aco: keep loop live-through variables spilled
3956- aco: reserve 2 sgprs for each branch
3957- aco: create long jumps
3958- aco: fix byte_align_scalar for 3 dword vectors
3959- aco: fix one-off error in Operand(uint16_t)
3960- nir/opt_if: fix opt_if_merge when destination branch has a jump
3961- aco: fix v_writelane_b32 with two sgprs
3962- aco: don't apply constant to SDWA on GFX8
3963- radv: initialize with expanded cmask if the destination layout needs it
3964- radv,aco: fix reading primitive ID in FS after TES
3965
3966Rob Clark (265):
3967
3968- util/simple_mtx: add assert_locked()
3969- freedreno: add screen lock wrappers
3970- freedreno: switch to simple_mtx
3971- freedreno: fix buffer import
3972- gallium: extract out logicop helper
3973- freedreno/drm: drop atomic refcnts
3974- freedreno/drm: inline the things
3975- freedreno/a6xx: small query cleanup
3976- freedreno/a6xx: avoid unnecessary clearing VS DP state
3977- freedreno/a6xx: move const state to single stateobj
3978- freedreno/a6xx: move scissor state to stateobj
3979- freedreno/a6xx: limit PROG_FB_RAST state emit
3980- freedreno/a6xx: limit LRZ state emit
3981- freedreno/a6xx: move blend-color to stateobj
3982- freedreno/a6xx: combine sample mask into blend state
3983- freedreno/a6xx: skip unnecessary MRT blend state
3984- freedreno/a6xx: add OUT_PKT()
3985- freedreno/a6xx: convert draw packet to OUT_PKT()
3986- freedreno/a6xx: split out const emit
3987- freedreno/ir3: inline const emit
3988- freedreno/a6xx: convert const emit to OUT_PKT()
3989- freedreno: scissor vs disabled scissor micro-opt
3990- freedreno/a6xx: more OUT_REG()
3991- freedreno: sync registers with envytools
3992- freedreno/a6xx: don't set SP_FS_CTRL_REG0.VARYING for fragcoord
3993- freedreno/a6xx: fix LRZ hang
3994- freedreno/a6xx: add some more formats
3995- freedreno: we don't need aligned vbo's
3996- freedreno/a6xx: compressed blit fixes
3997- freedreno/a6xx: enable tiled compressed textures
3998- freedreno/gmem: don't assume scissor opt when estimating # of bins
3999- freedreno: initialize max_scissor
4000- freedreno/gmem: add div_align() helper
4001- freedreno/gmem: add helper to dump GMEM layout
4002- freedreno: add gmemtool
4003- freedreno/gmem: relax alignment on a6xx
4004- freedreno/gmem: rework gmem layout algo
4005- freedreno/ir3: don't allow negative const_offset
4006- freedreno/ir3: fix indirect cb0 load_ubo lowering
4007- freedreno/ir3: limit # of tex prefetch by shader size
4008- freedreno/ir3/postsched: reset sfu_delay on sync
4009- freedreno/ir3/postsched: try to avoid (sy) syncs
4010- freedreno/ir3/sched: avoid scheduling outputs
4011- freedreno/ir3/sched: try to avoid syncs
4012- freedreno/a6xx: fix max-scissor opt
4013- freedreno/ir3: use const_index accessors
4014- nir: fix indices for ir3 ssbo_atomic intrinsics
4015- nir: add helper to copy const_index[]
4016- nir: add pass to lower disjoint wrmask's
4017- freedreno/ir3: use lower_wrmasks pass
4018- freedreno/fdperf: add dependency on generated headers
4019- freedreno/drm: don't pass thru 'DUMP' flag on older kernels
4020- freedreno/drm: handle ancient kernels
4021- freedreno/ir3: remove Sethi-Ullman numbering pass
4022- freedreno/ir3: juggle around ir3_debug_print()
4023- freedreno/ir3/dce: report progress
4024- freedreno/cf: report progress
4025- freedreno/ir3/cp: report progress
4026- freedreno/ir3/deps: report progress
4027- freedreno/ir3/group: report progress
4028- freedreno/ir3/legalize: report progress
4029- freedreno/ir3/postsched: report progress
4030- freedreno/ir3: add IR3_PASS() macro
4031- freedreno/ir3: move where we preserve binning pass inputs
4032- freedreno/ir3: be iterative
4033- freedreno/ir3: make foreach_src declare cursor ptr
4034- freedreno/ir3: make foreach_ssa_src declar cursor ptr
4035- freedreno/ir3: make input/output iterators declare cursor ptr
4036- freedreno/ir3/group: fix for half-regs
4037- freedreno/ir3: fix mismatched flags on split
4038- freedreno/ir3/cf: handle multiple cov's properly
4039- freedreno/ir3: fix immed type in create_addr0()
4040- freedreno/ir3/print: print cat2 condition
4041- freedreno/ir3/cp: fix cmps folding
4042- freedreno/ir3: fix mismatched wrmask for overlapping VS inputs
4043- freedreno/ir3: add simple validate pass
4044- freedreno/ir3: add helpers to deal with src/dst types
4045- freedreno/ir3/validate: add checking for types and opcodes
4046- freedreno/drm: disallow exported buffers in bo cache
4047- freedreno: add batch debugging
4048- freedreno: clear last_fence after resource tracking
4049- freedreno: handle PIPE_TRANSFER_MAP_DIRECTLY
4050- freedreno/gmem: make noscis debug actually do something on a6xx
4051- freedreno/gmemtool: make GMEM alignment per-gen
4052- freedreno/gmemtool: add a405
4053- freedreno/gmemtool: add verbose mode
4054- freedreno/gmem: add some asserts
4055- freedreno/gmem: fix nbins_x/y mismatch
4056- freedreno/gmem: split out helper to calc # of bins
4057- freedreno/a6xx: LRZ fix for alpha-test
4058- freedreno/a6xx: document LRZ flag buffer
4059- freedreno/a6xx: fix vsc assert
4060- nir: get_base_type() should return enum type
4061- nir: extract out convert_to_bitsize() helper
4062- nir/builder: add bitsize conversion helpers
4063- nir/lower_tex: fixes for fp16 yuv lowering
4064- freedreno/ir3: split kill from no_earlyz
4065- freedreno/a6xx: sync registers from envytools
4066- freedreno/a6xx: update depth-plane control regs
4067- freedreno/a6xx: re-work LRZ state tracking
4068- freedreno/a6xx: add early-lrz-late-z mode
4069- freedreno/a6xx: also consider alpha-test for ztest-mode
4070- freedreno/a6xx: more early-z
4071- freedreno/computerator: fix missing dependency on generated header
4072- nir/print: print tex dest type
4073- freedreno/ir3: add debug code to print conflicting half-regs
4074- freedreno/ir3: respect tex prefetch limits
4075- freedreno/ir3: remove RA "q-values" optimization
4076- freedreno/ir3: limit pre-fetched tex dest
4077- freedreno/ir3: unify shader create/delete paths
4078- freedreno/ir3: move the libdrm dependency out of shared code
4079- turnip: drop linking libfreedreno_drm
4080- freedreno/ir3: don't rely on intr->num_components
4081- radv: don't set num_components for non-vectorized intrinsics
4082- nir/builder: don't set intr->num_components
4083- nir/lower-atomics-to-ssbo: don't set num_components
4084- spriv: don't set num_components for non-vectorised intrinsics
4085- v3d: don't use intr->num_components for non-vectorized intrinsics
4086- nir/validate: validate intr->num_components
4087- freedreno/log-parser: fix compute times
4088- freedreno/sched: reset delay counters at start of block
4089- freedreno/ir3/validate: also check instr->address
4090- freedreno/ir3/cp: properly handle already-folded RELATIV
4091- freedreno: splitup emit_string_marker
4092- freedreno/a6xx: emit shader names in debug builds
4093- freedreno/ir3/legalize: don't allow (nopN) if (rptN)
4094- freedreno/ir3/print: print (r) flag
4095- freedreno/ir3: add test for delay slot calculation
4096- freedreno/ir3/delay: calculate delay properly for (rptN)'d instructions
4097- freedreno/ir3: add helpers to move instructions
4098- freedreno/ir3: delay test support for vectorish instructions
4099- freedreno/ir3/cp: extract valid_flags
4100- freedreno/ir3: add post-scheduler cp pass
4101- freedreno/ir3: convert regmask_t to struct
4102- freedreno/ir3: move mergedreg state out of reg
4103- freedreno/ir3: decouple regset from gpu gen
4104- freedreno/ir3: pass variant to postsched
4105- freedreno/ir3: re-work assembler API
4106- freedreno/ir3: make mergedregs a property of the variant
4107- freedreno/a6xx: set .MERGEREGS based on variant
4108- turnip: set .MERGEDREGS based on variant
4109- freedreno/computerator: MERGEDREGS update
4110- freedreno/ir3: update obsolete comment
4111- spirv: atomic_counter_read_deref is not vectorized
4112- spirv: drop some dead code
4113- glsl_to_nir: fix is_helper_invocation
4114- glsl_to_nir: fix shader_clock
4115- glsl_to_nir: fix vote_any/vote_all
4116- freedreno/ir3: refactor out helper to compile shader from asm
4117- freedreno/ir3: add accessor for const_state
4118- freedreno/a6xx: defer userconst cmdstream size calculation
4119- freedreno/ir3: move ubo_state into const_state
4120- freedreno/ir3: drop shader->num_ubos
4121- freedreno/ir3: constify shader key
4122- freedreno/ir3: pass variant to ir3_create()
4123- freedreno/ir3: convert over to ralloc
4124- freedreno/ir3: move num_reserved_user_consts out of const_state
4125- freedreno/ir3: un-embed const_state
4126- freedreno/ir3: move const_state back to variant
4127- freedreno/ir3: move output_loc to variant
4128- freedreno/ir3: split out ubo info from range
4129- freedreno/ir3: splitup get_existing_range()
4130- freedreno/ir3: split ubo analysis/lowering passes
4131- ci: remove some freedreno a6xx skips
4132- freedreno/ir3: add helper to determine point-coord inputs
4133- freedreno/a6xx: de-duplicate vinterp/vpsrepl state building
4134- freedreno/a6xx: use point-coord helper
4135- freedreno/a5xx: use point-coord helper
4136- freedreno/a4xx: use point-coord helper
4137- freedreno/a3xx: use point-coord helper
4138- freedreno: convert builtin blit VS prog to ureg builder
4139- freedreno/ir3: switch PIPE_CAP_TGSI_TEXCOORD
4140- freedreno: make foreach_bit() declare it's cursor
4141- freedreno: split out batch draw tracking helper
4142- freedreno: split out batch clear tracking helper
4143- freedreno: handle batch flush in resource tracking
4144- freedreno/ir3/ra: fix pre-color edge case
4145- freedreno/ir3: add ir3_finalize_nir()
4146- freedreno/ir3: move finalize_nir to pscreen hook
4147- freedreno/ir3: add ir3_compiler_destroy()
4148- freedreno/ir3: shuffle some variant fields
4149- freedreno/a6xx+ir3: stop generating pointless binning shaders
4150- freedreno/ir3: build binning variant at same time as draw variant
4151- freedreno/ir3: disk-cache support
4152- freedreno/ir3: move nir finalization to after cache miss
4153- freedreno/fdperf: fix print of base address
4154- freedreno/fdperf: better compatible string matching
4155- freedreno/fdperf: prefer render node
4156- gitlab-ci: reduce a630 runner load
4157- freedreno/ir3: add missing VS driver params
4158- freedreno/ir3: make compile fails more visible
4159- freedreno/a6xx: bail instead of crash for compile fails
4160- freedreno/ir3/ra: be better at failing
4161- freedreno/a6xx: don't enable early-z/lrz if no z-test
4162- freedreno/ir3: DCE unused arrays
4163- driconf: allowlist/denylist
4164- gitlab-ci: re-enable all a630 jobs
4165- freedreno: small comment re-word
4166- freedreno: whitespace fix
4167- freedreno/ir3/parser: half-precision relative regs
4168- freedreno/ir3: set array precision on creation
4169- freedreno/ir3: fix half-reg array stores
4170- freedreno/ir3/ra: debug msgs tweak
4171- freedreno/ir3/ra: assign vreg names to all array elements
4172- freedreno/ir3/ra: fix array conflicts for split/merged
4173- freedreno: sync registers from envytools
4174- freedreno: make gen_header.py check parent directory
4175- freedreno: slurp in rnndb
4176- freedreno: slurp in rnn
4177- freedreno: slurp in decode tools
4178- freedreno: slurp in afuc
4179- freedreno/rnn: warnings cleanup
4180- freedreno/decode: warnings cleanup
4181- freedreno/afuc: warnings cleanup
4182- freedreno: add CI for envytools tools
4183- freedreno/ir3: split out regmask
4184- freedreno: drop shader_t
4185- freedreno: deduplicate a3xx+ disasm
4186- freedreno: move a2xx disasm out of gallium
4187- freedreno: deduplicate a2xx disasm
4188- freedreno/ci: add a2xx trace to CI job
4189- freedreno/tools: check rnn parse status
4190- freedreno/rnn: split out helper to find files
4191- freedreno/rnn: add error helper
4192- freedreno/rnn: rename schema file
4193- freedreno/rnn: update schema for 'pos'
4194- freedreno/rnn: add relaxed boolean type
4195- freedreno/rnn: add high/low/pos to registers
4196- freedreno/rnn: add radix/align
4197- freedreno/rnn: relax Hexadecimal to HexOrNumber
4198- freedreno/rnn: add variants/varset to domain
4199- freedreno/registers/a2xx: fix validation error
4200- freedreno/registers/a4xx: fix validation error
4201- freedreno/registers/adreno_pm4: fix validation errors
4202- freedreno/rnn: describe copyright element in schema
4203- freedreno/rnn: add "addvariant" to schema
4204- freedreno/rnn: allow name to be optional in arrays
4205- freedreno/rnn: fix use-group
4206- freedreno/registers/mdp5: fix validation error
4207- freedreno/rnn: schema updates for dynamic/irregular offsets
4208- freedreno/rnn: add schema validation
4209- freedreno/rnn: headergen2 warnings cleanup
4210- freedreno/decode: cffdec warnings cleanup
4211- freedreno/ir3: add missing track_ubo_use()
4212- freedreno/a6xx: don't emit a bogus size for empty cb slots
4213- freedreno/a6xx: fixup draw state earlier
4214- freedreno/rnn: also look for .xml.gz
4215- freedreno/rnn: rework RNN_DEF_PATH construction
4216- freedreno/registers: add .gitignore
4217- freedreno/registers: split header build into subdirs
4218- freedreno/registers: install gzip'd register database
4219- freedreno/decode: move dependencies up a level
4220- freedreno: allow fence_fd fences to be recycled
4221- freedreno/ir3: ir3_cmdline updates
4222- freedreno/ir3: lower local_index using local_id
4223- glsl/lower_precision: split out const lowering
4224- gallium: replace 16BIT_TEMPS cap with 16BIT_CONSTS
4225- glsl: remove LowerPrecisionTemporaries
4226- glsl: don't inline intrinsics for mediump
4227- glsl_to_nir: fix bitfield_extract with 16-bit operands
4228- freedreno/registers: add some missing regs to build
4229- freedreno/crashdec: handle section name typos
4230- freedreno/a6xx: fix occlusion query with more than one tile
4231- freedreno: handle case of shadowing current render target
4232- freedreno/gmemtool: add tile_alignw/h and a650
4233
4234Rohan Garg (3):
4235
4236- iris: Fix documentation for _iris_batch_flush
4237- ci: Include trace replay support in ARM rootfses.
4238- gitlab-ci: Replay traces on lava devices
4239
4240Roland Scheidegger (1):
4241
4242- gallivm: fix half to float conversions with llvm 11
4243
4244Roman Gilg (2):
4245
4246- vulkan/wsi/x11: add sent image counter
4247- vulkan/wsi/x11: wait for acquirable images in FIFO mode
4248
4249Roman Stratiienko (5):
4250
4251- egl: Build surfaceless platform on Android
4252- Android: Fixes for Q and R
4253- panfrost: Android build fixes 2020 week 31
4254- lima: Fix lima_screen_query_dmabuf_modifiers()
4255- android: freedreno: Another build fix
4256
4257Sagar Ghuge (3):
4258
4259- iris: Use modfiy disables for 3DSTATE_WM_DEPTH_STENCIL command
4260- intel/compiler: Optimize integer add with 0 into mov
4261- intel/compiler: Remove unnecessary optimization for MUL
4262
4263Samuel Pitoiset (235):
4264
4265- ci: fix reporting the number of unexpected/flakes
4266- ci: add lists of expected failures & skipped tests for RAVEN with ACO
4267- aco: remove unecessary p_split_vector with v2b reg class
4268- radv: enable shaderInt16 unconditionally with LLVM and only GFX8+ with ACO
4269- radv: cleanup radv_CreateInstance()
4270- radv: rename radv_devices() to radv_enumerate_physical_devices()
4271- radv: fix a memleak if the physical device initialization failed
4272- radv: report INITIALIZATION_FAILED when the amdgpu winsys init failed
4273- radv: don't report error with other vendor DRM devices
4274- radv: use a linked list for physical devices
4275- radv: display an error message if the winsys init failed
4276- radv/winsys: do not count visible VRAM buffers twice in the budget
4277- ci: remove unused .test-radv-fossilize rule
4278- ci: set ACO_DEBUG=validateir,validatera global for RADV testing
4279- ci: run radv-fossils with Pitcairn (GFX6) and Bonaire (GFX7) too
4280- radv: remove the LLVM version string when ACO is used
4281- radv: do not print the LLVM version string twice in hang reports
4282- radv: report correct backend IR in hang reports when ACO is used
4283- aco: fix 64-bit trunc with negative exponents on GFX6
4284- nir: do not vectorize load/store if offset can overflow and robustness enabled
4285- aco: prevent invalid loads/stores vectorization if robustness is enabled
4286- radv: limit the Vulkan version to 1.1 for Android
4287- radv: handle different Vulkan API versions correctly
4288- radv: update the list of allowed Android extensions
4289- aco: optimize add/sub(a, cndmask(b, 0, 1, cond)) -> addc/subbrev_co(0, a, b)
4290- radv: use the common base object type for VkDevice
4291- radv: use the base object struct types
4292- radv: implement VK_EXT_private_data
4293- vulkan: import common code for generating extensions
4294- radv: use the common code for generating extensions and dispatch tables
4295- anv: use the common code for generating extensions and dispatch tables
4296- turnip: use the common code for generating extensions and dispatch tables
4297- radv: add a LLVM version string workaround for SotTR and ACO
4298- aco: remove useless check for nir_tex_src_bias
4299- aco: add support for texturing with clamped LOD
4300- ac/llvm: add support for texturing with clamped LOD
4301- radv: enable shaderResourceMinLod
4302- spirv: handle OpCopyObject correctly with any types
4303- radv: fix missing break in radv_GetPhysicalDeviceProperties2()
4304- aco: store 16-bit temporary outputs as v2b
4305- aco: convert 16-bit values before exporting MRTs
4306- aco: allow to load/store 16-bit values in VMEM for tess and geom
4307- aco: implement 8-bit/16-bit mov's with p_create_vector
4308- aco: implement 16-bit vertex fetches with tbuffer_load_format_d16_*
4309- aco: validate v_interp_*_f16 as VOP3 instructions instead of VINTRP
4310- aco: emit v_interp_*_f16 instructions as VOP3 instead of VINTRP
4311- aco: implement 16-bit interp
4312- aco: fix off-by-one error with 16-bit MTBUF opcodes on GFX10
4313- radv/aco: enable storageInputOutput16 on GFX9+
4314- aco: fix missing break in label_instruction()
4315- radv: fix missing break in radv_GetPhysicalDeviceFeatures2()
4316- radv: fix duplicated expression in ac_setup_rings()
4317- radv/winsys: remove useless free in radv_amdgpu_create_bo_list()
4318- aco: declare 8-bit/16-bit reduce operations
4319- aco: implement 8-bit/16-bit reductions
4320- aco: validate 8-bit/16-bit VGPR operands for readfirstlane/readlane/writelane
4321- aco: implement 8-bit/16-bit nir_intrinsic_read_first_invocation
4322- aco: implement 8-bit/16-bit nir_intrinsic_{shuffle,_read_invocation}
4323- aco: implement 8-bit/16-bit nir_intrinsic_quad_*
4324- aco: use a temporary SGPR for 8-bit/16-bit literal reduction identities
4325- aco: sign-extend the input and identity for 8-bit subgroup operations
4326- radv: do not return from radv_GetPhysicalDeviceFeatures2()
4327- radv: cleanup physical device features
4328- radv: remove useless assignment in build_streamout_vertex()
4329- spirv: add ReadClockKHR support with device scope
4330- aco: implement nir_intrinsic_shader_clock with device scope
4331- ac/nir: fix shader clock with subgroup scope
4332- ac/nir: implement nir_intrinsic_shader_clock with device scope
4333- radv: advertise shaderDeviceClock on GFX8+
4334- spirv: add SpvCapabilityImageGatherBiasLodAMD
4335- spirv: add support for bias/lod with OpImageGather
4336- ac/nir: add support for bias/lod with texture gather
4337- aco: add support for bias/lod with texture gather
4338- radv: add support for querying which formats support texture gather LOD
4339- radv: advertise VK_AMD_texture_gather_bias_lod
4340- spirv,radv,anv: implement no-op VK_GOOGLE_user_type
4341- radv/aco: enable VK_EXT_subgroup_size_control
4342- aco: fix register allocation for subdword instructions on GFX10
4343- aco: implement 8-bit/16-bit reductions on GFX10
4344- aco: allocate a temp VGPR for some 8-bit/16-bit reduction ops on GFX10
4345- aco: allow gfx10_wave64_bpermute with 8-bit/16-bit input
4346- aco: sign-extend input/indentity for 32-bit reduce ops on GFX10
4347- radv/aco: enable VK_KHR_subgroup_extended_types on GFX8+
4348- radv: enable zero VRAM for Doom Eternal
4349- radv: enable zero VRAM for all VKD3D (DX12->VK) games
4350- aco: implement 16-bit reduce operations on GFX6-GFX7
4351- aco: implement 16-bit nir_intrinsic_quad_* on GFX6-GFX7
4352- aco: fix subdword copies on GFX6-GFX7
4353- aco: sign-extend input/identity for 16-bit subgroup ops on GFX6-GFX7
4354- radv/aco: enable 64-bit atomic features if RADV is linked with LLVM 8
4355- aco: use v_bfe_u32 for unsigned reductions sign-extension on GFX6-GFX7
4356- aco: fix sign-extend 8-bit subgroup operations on GFX6-GFX7
4357- aco: fix nir_intrinsic_quad_* with 8-bit in GFX6-GFX7
4358- radv/aco: enable VK_KHR_shader_subgroup_extended_types on GFX6-GFX7
4359- ac/nir: adjust an assertion for D16 on GFX6-GFX7
4360- nir/lower_explicit_io: fix NON_UNIFORM access for UBO loads
4361- radv/llvm: expose VK_EXT_shader_demote_to_helper_invocation with LLVM 9+
4362- aco: implement 8-bit/16-bit conversions on GFX6-GFX7
4363- aco: fix alignment of vectors with 4 elements
4364- radv/aco: enable 8-bit/16-bit storage on GFX6-GFX7
4365- radv/aco: enable shaderInt16 on GFX6-GFX7
4366- radv/aco: enable shaderInt8 and VK_KHR_shader_float16_int8 on GFX6-GFX7
4367- ac/nir: fix integer comparisons with pointers
4368- radv: set DB_SHADER_CONTROL.CONSERVATIVE_Z_EXPORT correctly
4369- radv: add new drirc option radv_enable_mrt_output_nan_fixup
4370- aco: implement radv_enable_mrt_output_nan_fixup workaround
4371- radv/llvm: implement radv_enable_mrt_output_nan_fixup workaround
4372- radv: enable radv_enable_mrt_output_nan_fixup for RAGE 2
4373- ac: add ac_choose_spi_color_formats() to common code
4374- spirv: fix using OpSampledImage with OpUndef instead of OpType{Image,Sampler}
4375- aco: allow to swap operands for some 16-bit float instructions
4376- spirv: do not set num_components for non-vectorized mbcnt_amd intrinsic
4377- radv/aco: enable FP16 features/extensions on GFX9+
4378- radv: lower discards to demote to workaround a RDR2 game bug
4379- radv: make sure to set CB_SHADER_MASK correctly for internal CB operations
4380- radv: compute CB_SHADER_MASK from the fragment shader outputs
4381- radv: only requires LLVM 9 for GFX10 if not using ACO
4382- radv: replace == GFX10 with >= GFX10 where it's needed
4383- aco: replace == GFX10 with >= GFX10 where it's needed
4384- radv: add support for Sienna Cichlid
4385- radv: require LLVM 11+ for GFX 10.3 if not using ACO
4386- aco: fix printing ASM on GFX6-7 if clrxdisasm is not found
4387- aco: improve validation checks for readlane/writelane
4388- aco: fix printing ASM on GFX6-7 again
4389- gitlab-ci: stop testing RADV with LLVM
4390- gitlab-ci: update the list of expected CTS failures for RADV/ACO
4391- gitlab-ci: update the list of expected failures for Pitcairn
4392- radv: fix checking the return value of cs_finalize()
4393- gitlab-ci: add parallel-rdp fossils
4394- radv: lower 64-bit drcp/dsqrt/drsq for fixing precision issues
4395- radv: lower 64-bit dfloor on GFX6 for fixing precision issues
4396- gitlab-ci: add a list of expected failures for RADV/ACO on NAVI14
4397- gitlab-ci: set the number of Fossilize threads to 4
4398- gitlab-ci: append Fossilize stdout/stderr to a file to reduce spam
4399- gitlab-ci: attach the Fossilize log file as artifact on failure
4400- radv: remove the shader ballot workaround for Youngblood with LLVM
4401- radv: remove the load/store workaround for Monster Hunter World with LLVM
4402- radv: enable VK_AMD_shader_ballot on GFX6-7 with both compiler backends
4403- radv: adjust CB_SHADER_MASK for dual-source blending in the shader info pass
4404- radv: rework 8/16-bit color attachment formats detection
4405- radv: use SPI_SHADER_ZERO for non-written color attachments
4406- radv: add support for MRTs compaction to avoid holes
4407- radv: fix wide points and lines
4408- radv: fix wide lines with multisample enabled
4409- Revert "vulkan/wsi/x11: Ensure we create at least minImageCount images."
4410- radv,vulkan: add a new x11 wsi drirc workaround for DOOM Eternal
4411- radv: disable FMASK compression when drawing with GENERAL layout
4412- radv: set depth/stencil enable values correctly for the meta clear path
4413- radv: implement missing VK_ACCESS_MEMORY_{READ,WRITE}_BIT
4414- radv: store the primitive topology hardware value in the pipeline
4415- radv: adjust IA_MULTI_VGT_PARAM.WD_SWITCH_ON_EOP at draw time
4416- radv: adjust IA_MULTI_VGT_PARAM.PARTIAL_VS_WAVE at draw time
4417- radv: compute prim_vertex_count at draw time
4418- aco: fix more validation errors from vgpr spill/restore code
4419- radv: return VK_ERROR_DEVICE_LOST if wait-for-idle failed or expired
4420- radv: remove the secure compile support feature
4421- radv: rework dynamic viewports/scissors support
4422- radv: add VK_EXT_extended_dynamic_state but leave it disabled
4423- radv: declare new extended dynamic states
4424- radv: add support for dynamic cull mode and front face
4425- radv: add support for dynamic primitive topology
4426- radv: add support for dynamic and scissor count
4427- radv: add support for dynamic depth/stencil states
4428- radv: add support for dynamic vertex input binding stride
4429- radv: advertise VK_EXT_extended_dynamic_state
4430- radv: add the custom border color BO to the list of buffers
4431- radv: destroy the base object if VkCreateQueryPool() failed
4432- radv: destroy the base object if VkCreateRenderPass*() failed
4433- radv: destroy the base object if VkCreateImage() failed
4434- radv: destroy the base object if VkCreateBuffer() failed
4435- radv: destroy the base object if VkCreateEvent() failed
4436- radv: destroy the base object if VkCreateSemaphore() failed
4437- radv: destroy the base object if VkCreateFence() failed
4438- radv: destroy the base object if VkAllocateCommandBuffers() failed
4439- radv: destroy the base object if VkCreateInstance() failed
4440- radv/winsys: replace alloca() by malloc() everywhere
4441- radv/winsys: pass the buffer list via the CS ioctl for less CPU overhead
4442- radv: fix destroying the syncobj when exporting a fence FD
4443- radv: fix the error code when exporting a semaphore/fence fails
4444- radv: fix the error code when allocating a fresh imported syncobj fails
4445- radv: optimize creating signaled syncobj with amdgpu_cs_create_syncobj2()
4446- radv: split fence into two parts as enum+union.
4447- radv: remove one useless goto in radv_queue_submit_deferred()
4448- radv: improve the error messages when a CS submission failed
4449- radv: return better Vulkan error codes when VkQueueSubmit() fails
4450- radv: disable CPU caching for IBS to reduce fetch latency
4451- radv/winsys: always allow GTT placements on APUs
4452- radv: advertise VK_EXT_image_robustness
4453- radv: do not perform read-modify-write with the upload BO
4454- radv: disable CPU caching for the upload BO to reduce fetch latency
4455- aco: add support for nir_intrinsic_shared_atomic_fadd
4456- ac/nir: add support for nir_intrinsic_shared_atomic_fadd
4457- radv: advertise VK_EXT_shader_atomic_float
4458- radv: add missing return values check for some winsys calls
4459- radv/winsys: check more allocation failures
4460- radv/winsys: remove useless check when binding virtual buffers/images
4461- radv/winsys: return a Vulkan error code when binding virtual buffers/images
4462- radv/winsys: be more robust when a CS failed during recording
4463- radv: remove declared but unused radv_pipeline::is_dual_src
4464- radv: remove set but unused radv_pipeline::vertex_elements
4465- radv: remove outdated TODO related to PA_SU_VTX_CNTL.PIX_CENTER
4466- radv: emit more invariant registers as part of the initial gfx state
4467- radv: emit PA_SC_LINE_CNTL as part of the rasterization state
4468- radv: clean up VGT_SHADER_STAGES_EN emission
4469- radv: clean up PA_SC_CLIPRECT_RULE emission
4470- radv: reduce the number of allocated dwords for compute CS
4471- radv: clean up radv_compute_generate_pm4()
4472- radv: remove unnecessary radv_tessellation_state::num_patches
4473- radv: remove no-op si_multiwave_lds_size_workaround()
4474- radv: remove one unnecessary param to radv_generate_graphics_pipeline_key()
4475- radv: align the LDS size in calculate_tess_lds_size()
4476- radv: set LDS TCS size at shaders creation for GFX9+
4477- radv: remove unnecessary radv_tessellation_state::lds_size
4478- radv: clean up tessellation state emission
4479- radv: add radv_pipeline_init_input_assembly_state()
4480- radv: add radv_pipeline_generate_vgt_gs_out()
4481- radv: clean up adjusting MSAA state if conservative rast is enabled
4482- radv: clean up binning state initialization
4483- radv: assign pipeline gfx fields before PM4 emission
4484- radv: constify all radv_pipeline_generate_*() helpers
4485- radv: add radv_pipeline_init_shader_stages_state()
4486- radv: remove useless return value to radv_pipeline_scratch_init()
4487- radv: clean up remaining pipeline init functions
4488- radv: print warnings for famous RADV_PERFTEST options that no longer exist
4489- radv: do not honor a user-specified pitch on GFX 10.3
4490- radv: increase minimum NGG vertex count requirement per workgroup on GFX 10.3
4491- radv: fix sample shading on GFX 10.3
4492- radv: set BYPASS_VTX_RATE_COMBINER_GFX103 on GFX 10.3
4493- radv/gfx10: add missing initialization of registers
4494- radv: limit LATE_ALLOC_GS to prevent a GPU hang on GFX10
4495- radv: fix emitting the border color pointer on the compute queue
4496- nir/algebraic: mark some optimizations with fsat(NaN) as inexact
4497- aco: handle unaligned loads on GFX10.3
4498- spirv: fix emitting switch cases that directly jump to the merge block
4499- radv: fix transform feedback crashes if pCounterBufferOffsets is NULL
4500
4501Satyajit Sahu (1):
4502
4503- frontends/va: Handle dynamic resolution/SVC for VP9
4504
4505Satyeshwar Singh (1):
4506
4507- intel/dev: Don't consider all TGL SKUs as GT1 only
4508
4509Serge Martin (3):
4510
4511- amd/common: Fix incorrect use of asprintf instead of vasprintf
4512- clover: add more cl_mem_object_type to pipe_texture_target mapping
4513- clover: implements clEnqueueFillBuffer
4514
4515Shawn Guo (1):
4516
4517- freedreno/a4xx: fix \*_NONE enum conversion
4518
4519Simon Ser (3):
4520
4521- EGL: sync headers with Khronos
4522- gbm: document that gbm_bo_map exposes a linear view
4523- radv: use bitshifts for debug enum values
4524
4525SureshGuttula (1):
4526
4527- radeon/vcn: Corrected vp9 ref associated data incase of target->codec is NULL
4528
4529Tapani Pälli (14):
4530
4531- st/mesa: destroy only own program variants when program is released
4532- anv: call base finish only if pass given in DestroyRenderPass
4533- anv: add VK_EXT_extended_dynamic_state but leave it disabled
4534- anv: add new dynamic states
4535- anv: consider dynamic state when creating pipeline
4536- anv: handle dynamic viewport count
4537- anv: add support for dynamic cull mode and winding order
4538- anv: add support for dynamic viewport and scissor with count
4539- anv: add support for dynamic primitive topology change
4540- anv: depth/stencil dynamic state support
4541- anv: dynamic vertex input binding stride and size support
4542- anv: toggle on VK_EXT_extended_dynamic_state
4543- anv: add a check for depthStencilState before using it
4544- anv: null check for buffer before reading size
4545
4546Thong Thai (8):
4547
4548- radeon: Fix whitespaces
4549- gallium/auxiliary/vl: Fix compute shader scaling for non-square pixels
4550- gallium/auxiliary/vl: Fix compute shader scale_y for interlaced videos
4551- frontends/va: Fix deinterlace bottom field first flag
4552- frontends/vdpau: Default destination rect to source rect
4553- radeon/vcn: add vcn 3.0 encode support
4554- radeonsi: use PIPE_FORMAT_P010 for 10-bit VP9 decoding
4555- radeon/vcn: increase render_pic_list size
4556
4557Timothy Arceri (69):
4558
4559- glsl: stop cascading errors if process_parameters() fails
4560- glsl: fix slow linking of uniforms in the nir linker
4561- radv: fix regression with builtin cache
4562- nir: add glsl_get_ifc_packing() helper
4563- nir: add callback to nir_remove_dead_variables()
4564- glsl: add can_remove_uniform() helper to the NIR linker
4565- glsl: remove dead uniforms in the nir linker
4566- glsl/spirv: remove dead uniforms in spirv nir linker
4567- gitlab-ci: bump piglit checkout commit
4568- i965: call brw_nir_lower_uniforms() after uniform linking is complete
4569- util: add BITSET_LAST_BIT() helper
4570- glsl: add struct to gather more info about uniform array access
4571- glsl: add update_array_sizes() helper to the NIR uniform linker
4572- glsl: gather uniform dereference info before main linking loop
4573- glsl: when NIR linker enable use it to resize uniform arrays
4574- glsl: fix potential slow compile times for GLSLOptimizeConservatively
4575- glsl: fix incorrect optimisation in opt_constant_variable()
4576- glsl: fix uniform array resizing in the nir linker
4577- glsl: small optimisation fix for uniform array resizing
4578- st_glsl_to_nir: fix potential use after free
4579- mesa: remove _mesa prefix from static function
4580- mesa: add _mesa_program_state_value_size() helper
4581- glsl: define gl_LightSource members in ARB_vertex_program order
4582- st/glsl_to_nir: disable st_nir_lower_builtin() when packing supported
4583- glsl: remove stale FIXME
4584- i965: add and fix fallthrough comments
4585- llvmpipe: add missing fallthrough comments
4586- gallivm: add missing break
4587- anv: update fallthrough comment so gcc sees it
4588- intel/compiler: add and fix up fallthrough comments for gcc warnings
4589- iris: add missing fallthrough comment
4590- egl: move fallthrough comment so gcc can see it
4591- nir: add missing break to nir_opt_access()
4592- mesa: fix fallthrough in glformats
4593- mesa: add fallthrough comments to glformats.c
4594- mesa: add fallthrough comments to get.c
4595- nir: fix implicit fallthrough warnings
4596- mesa: add fallthrough comments to COPY_SZ_4V()
4597- radeonsi: add missing fallthrough comment
4598- glx: add missing fallthrough comment
4599- glsl: move fallthrough comment to where gcc can see it
4600- radeon: add missing fallthrough comments
4601- spirv: add missing fallthrough comments
4602- mesa/vbo: add some missing fallthrough comments
4603- mesa: add missing fallthrough comment to teximage.c
4604- mesa: fix unintended fallthrough in glIsEnabled()
4605- r300: add and fix up fallthrough comments
4606- svga: add missing fallthrough comments
4607- mesa: update fallthrough comment so gcc can see it
4608- nv30: add missing fallthrough comment
4609- meson: turn on Wimplicit-fallthrough project wide
4610- nouveau: fix pointer-sign warning
4611- gitlab-ci: Enable -Werror in `meson-classic` job
4612- r600/radeonsi: silence zero-length-bounds gcc warnings
4613- radeonsi: fix SI_NUM_ATOMS
4614- iris: fix maybe-uninitialized warning for initial_state variable
4615- iris: silence maybe-uninitialized for stc_dst_aux_usage variable
4616- nouveau/nvc0: silence maybe-uninitialized warning
4617- panfrost: add some missing fallthrough comments
4618- panfrost: hide more unused code in bi_lower_combine.c
4619- panfrost: add some missing fallthrough comments to bi_pack.c
4620- freedreno: fix missing fallthrough comments
4621- v3d: remove redefine of VG(x)
4622- zink: fix missing fallthrough comment
4623- nine: remove unused var
4624- etnaviv: add missing fallthrough comments
4625- lima: add missing fallthrough comments
4626- lima: add missing break
4627- gitlab-ci: Enable -Werror in `meson-gallium` job
4628
4629Timur Kristóf (4):
4630
4631- aco/gfx10: Refactor of GFX10 wave64 bpermute.
4632- aco: Implement subgroup shuffle on GFX6-7.
4633- radv/aco: Always enable subgroup shuffle.
4634- aco: Fix emit_boolean_exclusive_scan in wave32 mode.
4635
4636Tomeu Vizoso (55):
4637
4638- panfrost: Emit blend descriptors on Bifrost
4639- panfrost: Don't leak temporary descriptors array
4640- pan/decode: Check for correct unknown field
4641- pan/decode: Use correct printf modifier for long int
4642- panfrost: Split bit out of format.unk3
4643- panfrost: Create additional BO for the checksum of imported BOs (Bifrost)
4644- panfrost: Add a bit more info about some tiler fields
4645- pan/bi: Print shaders only if BIFROST_MESA_DEBUG=shaders
4646- pan/decode: Trace to stderr with PANDECODE_DUMP_FILE=stderr
4647- panfrost: GPUs newer than G-71 don't have swizzles...
4648- panfrost: mali_attr_meta.unknown1 is zero on Bifrost
4649- panfrost: Add Bifrost texture trampoline BO to batch
4650- pan/decode: Properly print tripped zeroes
4651- virgl: Properly check for encode_stride when encoding transfers
4652- panfrost: Add checksum BOs to batch
4653- panfrost: Don't trample on top of Bifrost-specific unions
4654- panfrost: Handle MALI_RGB8_UNORM in panfrost_format_to_bifrost_blend
4655- gitlab-ci: Run more dEQP tests for virgl
4656- gitlab-ci: Add manual tests for Virgl using GLES on the host
4657- gitlab-ci: Test virgl with Khronos' OpenGL CTS
4658- gitlab-ci: Update CTS runner
4659- ci: Don't call renderdoc's ReplayController.Shutdown()
4660- ci: Move ARM rootfses to stable
4661- gitlab-ci: Build kernel drivers for a few ethernet USB dongles
4662- gitlab-ci: More stable URL for kernel and ramdisk artifacts, for LAVA
4663- gitlab-ci: Remove left-behind rules:
4664- gitlab-ci: Don't rebuild kernels and rootfs if they have been already built in mainline
4665- gitlab-ci: Run all of GLES3 tests for Panfrost
4666- gitlab-ci: Re-add kernels for bare-metal
4667- gitlab-ci: Download traces from MinIO
4668- gitlab-ci: Upload tracie artifacts to MinIO
4669- gitlab-ci: Fix needs: of the arm64 LAVA test jobs
4670- ci: Upload images of failed replays to MinIO
4671- ci: Use smaller glxgears trace
4672- ci: Prefix tracie artifacts with the device name
4673- ci: Test with more traces
4674- ci: Disable trace testing on Mali T760
4675- ci: Fix the overwriting of traces.yml for baremetal
4676- ci: Namespace trace artifacts to the job number
4677- ci: Always print status code of HTTP uploads in tracie
4678- ci: Print load stats after running dEQP
4679- ci: Fix URL for glslang
4680- ci: Don't ship vk-build-programs after building dEQP
4681- ci: Split building of libdrm to its own script
4682- ci: Build kernels and rootfs for x86 devices
4683- ci: Upload reference images for traces
4684- ci: Print URL to image diff when a trace replay fails
4685- ci: Generate MinIO credentials within LAVA jobs
4686- ci: Set date in LAVA DUTs from NTP servers
4687- ci: Build-test Panfrost tools
4688- ci: Upload traces' reference and actual images to MinIO
4689- ci: Download traces from MinIO in baremetal runs
4690- ci: Remove kernel module build that slipped in
4691- ci: Actually upload trace artifacts to MinIO for baremetal
4692- ci: Use a rootfs tarball for NFS root, instead of a ramdisk (for LAVA)
4693
4694Tony Wasserka (4):
4695
4696- nir/lower_idiv: Port recent LLVM fixes to emit_udiv
4697- radv: Fix various non-critical integer overflows
4698- aco: Fix integer overflows when emitting parallel copies during RA
4699- amd/common: Fix various non-critical integer overflows
4700
4701Vinson Lee (25):
4702
4703- freedreno: Add missing break statement.
4704- llvmpipe: Fix variable name.
4705- r600/sfn: Initialize VertexStageExportForGS m_num_clip_dist member variable.
4706- panfrost: Ensure final.no_colour is initialized.
4707- r600/sfn: Use correct setter method.
4708- freedreno: Add missing va_end.
4709- pan/bi: Initialize struct fma_op_info member extended.
4710- zink: Check fopen result.
4711- etnaviv: Fix memory leak on error path.
4712- panfrost: Fix printf format specifier.
4713- r300g: Remove extra printf format specifiers.
4714- vdpau: Fix wrong calloc sizeof argument.
4715- mesa: Fix NetBSD compiler macro.
4716- Switch from cElementTree to ElementTree.
4717- intel/genxml: Migrate from deprecated xml.etree.ElementTree getchildren.
4718- rbug: Fix rbug_delete_vs_state lock acquisition.
4719- nir: Add nir_lower_clip_disable.c to SCons build.
4720- util: Fix SCons build.
4721- util: Fix memory leaks in unit test.
4722- meson: Fix lmsensors warning message.
4723- vulkan: Fix memory leaks.
4724- freedreno: Fix file descriptor leak.
4725- svga: Fix unused printf argument.
4726- freedreno: Check file descriptor before write.
4727- panfrost: Delete debug allocated syncobj.
4728
4729Yevhenii Kharchenko (1):
4730
4731- st/mesa: fix corrupted texture levels, when adding more levels than expected
4732
4733Yevhenii Kolesnikov (5):
4734
4735- glsl: subroutine signatures must match exactly
4736- nvir: don't use designated initialisers in C++ code
4737- intel/compiler: don't propagate cmp to add if add is saturated
4738- mesa: change error code of \*TextureSubImage\* for incorreect target
4739- nine: fix incorrect calculation of layer count for 3D textures
4740
4741jzielins (2):
4742
4743- gallium/swr: Fix compilation warnings
4744- swr: Bump maximum 2D texture size to 16kx16k
4745
4746mmenzyns (1):
4747
4748- nv50: Clear nv50_ir_prog_info of dead and codegen specific variables
4749