Mesa 21.1.0 Release Notes / 2021-05-05¶
Mesa 21.1.0 is a new development release. People who are concerned with stability and reliability should stick with a previous release or wait for Mesa 21.1.1.
Mesa 21.1.0 implements the OpenGL 4.6 API, but the version reported by glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) / glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used. Some drivers don’t support all the features required in OpenGL 4.6. OpenGL 4.6 is only available if requested at context creation. Compatibility contexts may report a lower version depending on each driver.
Mesa 21.1.0 implements the Vulkan 1.2 API, but the version reported by the apiVersion property of the VkPhysicalDeviceProperties struct depends on the particular driver being used.
SHA256 checksum¶
0128f10e22970d3aed3d1034003731f94623015cd9797c07151417649c1b1ff8 mesa-21.1.0.tar.xz
New features¶
VK_KHR_workgroup_memory_explicit_layout on Intel, RADV
DRM format modifiers for AMD.
VK_KHR_zero_initialize_workgroup_memory on Intel, RADV
Zink exposes GL 4.6 and ES 3.1
GL_EXT_depth_bounds_test on softpipe, zink
GL_EXT_texture_filter_minmax on nvc0 (gm200+)
GL_ARB_texture_filter_minmax on nvc0 (gm200+)
GL_ARB_post_depth_coverage on zink
VK_KHR_copy_commands2 on lavapipe
lavapipe exposes Vulkan 1.1
VRS attachment on RADV
None
Bug fixes¶
No sRGB capable visuals/fbconfigs reported in glx
Graphics corruption and GPU hang with RADV/LLVM
old kernels (4.19) support in radv
Elite Dangerous: Odyssey alpha crashes GPU on launch
CSGO: Some default variables can cause problems with trust mode
mesa git started to break wine + UnrealTournament.exe (old dx6 game)
SuperTuxKart artifacting on RK3399
[amdgpu]: Golf With Your Friends (431240): ERROR Waiting for fences timed out
Strange results when trying to read from VK_FORMAT_R64_SFLOAT in compute shader
anv: dEQP-VK.binding_model.buffer_device_address.set3.depth3.basessbo.convertcheck* slow
Iris doesn’t support INTEL_performance_query anymore
RADV: TRUNC_COORD breaks gather operations
[RADV] corruption in avatar after dying in Heroes of the Storm
Metro Exodus crashing due to memory overflow
Sauerbraten shader rendering broken on RV530 (r300g)
texture glitches on CS:GO on Tiger Lake
Build fail due to “parameter name omitted” on Gallium Nine
Non-DRI builds broken by recent cleanups in Mesa core
Cinnamon core dump after installing latest oibaf mesa build (165a69d2)
yuv sampler lowering regression
anv: anv_descriptor_set_binding_layout::array_size overflows u16
RADV - Vertex explosion in DIRT 5 on RDNA2
ci: Use renderdoc from debian
ci: Use debian apitrace in x86 images
SIGSEV in v3d_emit_gl_shader_state
Xorg crash due to assertion failure after GPU soft reset
AMD hevc_vaapi ffmpeg encoding = wrong image width (48px black bar on the right)
panfrost: Page fault in glamor when running GIMP with X11 on Mali T860
gallium: python trace scripts need updating
EGL context creation fails when EGL_KHR_create_context_no_error is mentioned for OpenGL ES 1.1.
[spirv-fuzz] NIR validation failed after spirv_to_nir: error: nir_block_dominates
[bisected][regression][i965,iris] dEQP-VK.clipping.user_defined.clip_cull_distance.* failing on multiple platforms
No Mans Sky GPU hang on Radeon ACO
radeonsi: prusa-slicer crashes on mesa 21
anv: dEQP-VK.subgroups.ballot_broadcast.compute.subgroupbroadcast_i8vec3_requiredsubgroupsize16 fails on ICL, TGL
[radeonsi] Rendering of Firefox UI and website content corrupts randomly and after window geometry changes
max_binding inconsistency in vulkan descriptor set drivers
anv: conservative rasterization ext question mark
Unigine Tropics MSAA failure
warning: xnack ‘Off’ was requested for a processor that does not support it! [AMD VEGAM with LLVM 12.0.0]
Compiling some ARB assembly shaders leads to memory corruption
Specifying an explicit location for an array output messes up transform feedback
Request for VK_EXT_conservative_rasterization support on Anvil Intel driver for newest DXVK..
radv: dEQP regressions after addrlib update
Up to 30% performance drop (GLBenchmark, GfxBench)
DOTA 2 don’t no longer starts since commit ad241b15a9e517dd4c4e8d7b1d5dab7c3a74b37c
Clover doesn’t work for kmsro drivers
aco_tests isel.sparse.clause fails with llvm-12
util cpu detection breaks on 128-core AMD machines
util cpu detection breaks on 128-core AMD machines
Default GL_MAX_TEXTURE_BUFFER_SIZE very small
intel_nullhw.c:41:38: error: field ‘vtable’ has incomplete type
ACO error with GCN 1 GPU
kmsro advertises EGL_MESA_device_software
d3d12: Use ID3D12Device9::CreateCommandQueue1 when available
[RADV] Halo: The Master Chief Collection: Crash in Halo Reach Firefight
freedreno: use SAMPLE_COUNT to autotune sysmem vs gmem
freedreno: draw_vbo optimizations
[Bisected][RadeonSI] Mesa crashes when rendering with Eevee in Blender
subgroupBallotFindMSB() broken in RADV/ACO 20.3.4
nir_print: util_cpu_detect() is not called prior to _mesa_half_to_float()
turnip: buffer overflow read on dEQP-VK.ycbcr.query.levels.tess_eval.r8g8b8a8_unorm
RuneScape crashes GLOn12
d3d12: Surfaces need to use shareable descriptors
[RADV][RDNA2] Red Dead Redemption 2 image glitches during menu/overlay menu transitions
“unknown intrinsic” assertion triggered by multiview shader in non-multiview renderpass in Vulkan on intel
[i965][g965,ilk,g33,g45][bisected] dEQP-GLES2.functional.fbo.completeness.attachment_combinations.* failures
radv: VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT exposed for VK_FORMAT_R64_SFLOAT
anv: android building error after commit 4fb6c05
Compiling mesa with -Dtools=all throws deprecation warnings for intel tools
DXVK is broken in latest master
OpenCLOn12: Affinity Photo CL kernels produce invalid DXIL phis
nir -> tgsi conversion problem
[i965][g965,ilk,g33][bisected] fp16 enablement causes deqp test failures
mesa/st: Uniforms are not updated after lowering alpha test
[i965][bisected][regression] piglit failing primitive-restart-vbo_combined_vertex_and_index on multiple platforms
[RADV] Nioh 2 - The Complete Edition: “Bloom” on lights
[RADV] Oblivion: Poor Performance while MSAA Is Enabled
lima context state bugs with shader compile
[RADV][BISECTED] The Surge 2 (644830) - In-game assets do not render correctly since 20.3.4.
amd clang cannot convert ‘llvm::AtomicOrdering’ to ‘llvm::MaybeAlign’ build failure
[iris][icl,tgl][bisected][regression] failure on piglit.spec.arb_separate_shader_objects.programuniform coverage
opencl build fail
anv: dEQP-VK.glsl.builtin_var.fragcoord_msaa.* fails
Request - depth format feature SAMPLED_IMAGE_FILTER_LINEAR
“radeonsi: Check pitch and offset for validity.” is a bad commit
Add OpenCL information to docs/features.txt
[regression] [bisected] piglit.spec.arb_framebuffer_object.fbo-drawbuffers-none gldrawpixels fails
RADV: robustBufferAccessUpdateAfterBind is not exposed
debug build compilation failed: inlining failed in call to ‘always_inline’ ‘_nir_visit_dest_indirect’: indirect function call with a yet undetermined callee
[RADV/DXVK] Shadow artifacts with different games
glxgears segfaults with classic i915
mesa_glthread=true Black Mesa
freedreno: rendering corruption in dead cells
ac/rgp: Android building error after commit 12515d6
d3d12: Assert failures & crashes on latest master
RADV/ACO - DCC causing garbled output on RX570
draw.c:121: _mesa_set_draw_vao: Assertion `vao->_EnabledWithMapMode == _mesa_vao_enable_to_vp_inputs(vao->_AttributeMapMode, vao->Enabled)’ failed.
ANV: Weird jitter in Witcher 1
RADV - Path of Exile: Shimmering outlines where water and other objects meet
ANV: Weird jitter in Witcher 1
ANV: Weird jitter in Witcher 1
meson: meson-built libraries have inconsistent compatability / current versions compared to older autotools-built libraries
device select layer breaks other layers
RADV: Extreme overhead in vkQueueSubmit
Graphical glitch of popupping missing texture on Mesa version >18.0.5 (Padoka Stable + Unstable/Oibaf/ubuntu-x-swat PPAs)
[regression] [bisected] dEQP-GLES2.functional.fbo.render.stencil_clear.rbo_rgb5_a1_stencil_index8 fails
occasional corruption issue with RADV in multiple games, disappears after using amdvlk
panfrost T860 regression
OpenGL on GMA4500MHD
piglit-replay: JUnit file contains wrong links to the tracie dashboard
R8 texture upload / corruption bug on Radeon RX 5700 XT
Ambient Occlusion in Two Point Hospital shows black spot artifacts
freedreno: async background shader compile
AMD VAAPI encoding has ceased to work
Rage 2: Visual corruption on in-game menu with ACO.
ACO doesn’t correctly render map in Borderlands 3 vs. LLVM on 5700 XT
Invalid shader under panfrost/wayland
Strange Brigade refuses to load correctly since some recent commits
GLonD3D12: Crashes and suboptimal fallback
GLonD3D12: Crashes and suboptimal fallback
GLonD3D12: Crashes and suboptimal fallback
[RADV][REGRESSION][BISECTED] radv_GetMemoryFdPropertiesKHR returns no valid memory types for vaapi drmbuf
anv: vkQueueSubmit with waitSemaphore value of 0 hangs CPU
ttn: invalid base/range triggering nir_validate assertion
Sampling with mipmapped HiZ behaves unexpectedly on Gen9
zink: ARB_map_buffers issues on CI
u_upload_mgr: assert failure for large uploads
[RADV][ACO] Overwatch game crash: amd/compiler/aco_insert_exec_mask.cpp: Failed Assertion
PRIME render offloading broken
Use out encoding for float immediates
[RADV] Severe performance drop when exceeding VRAM compared to AMDVLK
LIBGL_ALWAYS_SOFTWARE=1 picks zink over actual software rasterizers
crash/assert in fd_set_viewport_states
RADV: Occlusion query hangs Big Navi GPU
“mesa: don’t allocate matrices with malloc” cause eglCreateContext problem on android 7.
Metal Gear Solid V: The Phantom Pain: texture issues and vertex stretches
[iris and Navi 10] piglit.spec.arb_multi_draw_indirect.arb_draw_elements_base_vertex-multidrawelements -indirect regression
miscompiled compute shader loop on llvmpipe (and Iris)
ci: minio caching of arm64 artifacts for bare-metal
Graphics glitches after upgrade to mesa 20.3 on Khadas VIM3 Pro (Mali G52 GPU)
glthread crash in _mesa_glthread_upload
freedreno piglit flakes
RADV: NonUniform OpArrayLength on SSBO ignores NonUniform.
Iris driver causing graphics glitch in QEMU spice egl DMA-BUF
[RADV/ACO] Death Stranding cause a GPU hung (*ERROR* Waiting for fences timed out!)
[TGL] Elder Scrolls Online misrenders
[ANV] System hang with GRVK demos
ci: Fractional deqp runs with valgrind enabled.
Regression: Segfault in cso_destroy_context() regression in 20.2
Rendering artifacts in Barn Finders specifically on Radeon Vega
Graphics regression in Assassins Creed Odyssey
[ANV] Compilation warnings
regression in !8152
[bdw][icl][iris] fails new test `clearbuffer-depth-cs-probe`
ci: new traces runner needs dashboard links in the job log and junit
zink: car model corruption with game TORCS
glGetInternalformati64v(GL_TEXTURE_2D, GL_SR8_EXT, GL_COLOR_ENCODING) returns GL_NONE
Windows: 32-bit build is broken hard
ANV: Not handling separate stencil layouts properly
[Regression][Intel][OpenGL][Bisected] Copying whole 2D array texture failed on latest driver
turnip: dEQP-VK.tessellation.invariance.outer_triangle_set.quads_fractional_odd_spacing failure
i915 regressions bisected to “vbo/dlist: use a shared index buffer”
intel: Chrome OS “hatch” (cometlake) fails on dEQP-GLES31.functional.geometry_shading.layered.render_with_default_layer_cubemap
radv: dEQP-VK.sparse_resources.* failures on GFX9
freedreno: rendering corruption in War Robots
radv: dEQP-VK.sparse_resources.* failures on GFX9
Mesa 20.3.x crashes pidgin on AMD RX480
timespec_get used unconditionally / build fails when targeting macOS 10.14 or earlier
libunwind not located / used on macOS
libunwind not located / used on macOS
meson fails to locate libexpat on macOS
CarX Drift Racing 2 fails to start
Some games using FNA framework show blank screen
Intel Vulkan regression of angle_end2end_tests
Defer lavapipe warning to queue / command / swapchain buffer creation
Changes¶
Aaron Watry (2):
clover: implement CL_IMAGE_ELEMENT_SIZE
clover: implement CL_IMAGE_NUM_MIP_LEVELS and CL_IMAGE_NUM_SAMPLES
Abhishek Kumar (2):
intel: change urb max shader geometry for CML GT1
intel: change urb max shader geometry for KBL GT1
Adam Jackson (66):
docs: Mark some non-core zink extensions complete
docs: Mark some ES3 zink features complete
egl: Fix error string returned by eglQueryDeviceAttribEXT
zink: Factor out instance setup a bit more
osmesa: Pacify MSVC in the test code
glx: Fix GLX_SGI_video_sync for the no-current-drawable case
nir: Silence a warning at -Og
softfloat: Silence a warning at -Og
glsl: Silence a warning at -Og
glsl: Silence some warnings at -Og
glsl: Silence a warning at -Og
loader: Silence a warning at -Og
gallivm: Silence a warning at -Og
nir/ttn: Silence some warnings at -Og
vl: Silence a warning at -Og
gallivm: Silence a warning at -Og
nouveau: Silence some warnings at -Og
nouveau: Silence a warning at -Og
xlib: Fix build regression since 99e25d183d9
gallium/xlib: Partial fix for glXCopySubBufferMESA
mesa: Store depth bounds test bounds as GLclampd
softpipe: Fix depth comparison with float Z formats
softpipe: Implement GL_EXT_depth_bounds_test
docs: Document GL_EXT_depth_bounds_test
zink: Enable GL_EXT_depth_bounds_test
zink: more and better debug printfs
zink: Fix a thinko in instance setup
zink: Wire up ARB_post_depth_coverage
glx: Pull use_x_font out of the context vtable
glx: Pull get_proc_address out of the context vtable
glx: Remove windows’ stub {bind,release}_text_image context hooks
glx/drisw: Implement WaitX and WaitGL
dri: Explicitly handle all the config attributes
dri: Fold attribMap into the code
mesa: Remove misc pbuffer attributes from struct gl_config
mesa: Remove the texture-from-pixmap state from struct gl_config
mesa: Remove transparency state from struct gl_config
mesa: Remove unused gl_config::level
mesa: Remove the pretense of aux buffer support
mesa: Stop tracking visual rating in gl_config
mesa: Remove redundant gl_config::sampleBuffers
ci: Bump the llvmpipe test timeout to 240 seconds
mesa/st: Remove unused ST_ATTACHMENT_SAMPLE
mesa/st: Check for successful framebuffer allocation in st_api_make_current
gallium: Remove curious st_visual::no_config
radeon: Exchange one curious idiom for another in radeonMakeCurrent
mesa: Remove unused _mesa_create_framebuffer
mesa: Make _mesa_initialize_visual return void
mesa: Remove unused gl_config::mutableRenderBuffer
mesa: gl_config::rgbBits should count alphaBits too
dri: Don’t tie the accum buffer’s alpha-ness to the color buffer’s
glx: Stop pretending to validate the pbuffer fbconfig attributes
glx: Don’t downgrade the visual caveat from the server
glx: Downgrade aux-buffer-ful fbconfigs
glx: Downgrade tfp mipmap-capable fbconfigs
glx: Downgrade sRGB-ful fbconfigs
dri: Use __DRI_BUFFER_COUNT consistently internally
glx: Default sRGBCapable in the same place as the other config attribs
glx: Clean up fbconfig attribute handling
glx: Remove some #if 0’d DRI config attribute fetch
glx: Don’t pointlesly add -D_REENTRANT to libGL’s cflags
glx: Move {Bind,Release}TexImage from context to screen vtable
glx: Be more robust against null fbconfigs
glx: Lift sending the MakeCurrent request to top-level code
Revert “glx: Lift sending the MakeCurrent request to top-level code”
gallium/xlib: Fix for recent gl_config changes
Adrian Ratiu (1):
docs: docker: minor stale documentation fix
Alejandro Piñeiro (36):
v3dv/pipeline: enable lower_add_sat NIR option
v3d/compiler: enable lower_add_sat NIR option
v3dv/descriptor: assert CrateDescriptorPool receives valid count values
v3dv: drop v3dv_resource definition
v3dv: properly handle two different binding points for cmd_buffers
v3dv: move to subclassing instance/physical device
v3dv: remove reference to v3dv_instance on v3dv_physical_device
v3dv: port to using common dispatch code.
v3dv: support for depthBiasClamp
v3dv/device: clarify that we can’t expose textureCompressionBC
v3dv/formats: expose support for BC1-3 compressed formats
v3dv/meta_copy: get tlb compatible BC compressed formats for copies
v3dv/descriptor_set: don’t free individual set if not allowed
v3dv: avoid some maybe-uninitialized warnings
v3dv/pipeline_cache: add more details when dumping debug info
v3dv/pipeline: remove pregenerate_variant
v3dv/pipeline: remove pipeline->use_push_constants
broadcom/compiler: add local_size in v3d_compute_prog_data
broadcom/compiler: add driver_location_map at vs prog data
v3dv/pipeline: use driver_location_map instead of nir utilities
v3dv/pipeline: move topology to pipeline
v3dv/pipeline: remove compiled_variant_count field
v3dv/pipeline: remove v3d_key from shader_variant and pipeline stage
v3dv: define broadcom shader stages
v3dv/pipeline: use broadcom_shader_stage as pipeline/variant stage type
v3dv/pipeline: try to get the shader variant directly from the cache
v3dv/pipeline: don’t create a variant if compilation failed
v3dv/pipeline: compute sha1 for no-op fragment shaders correctly
v3dv/device: avoid unused-result warning with asprintf
v3dv: Add support for the on-disk shader cache
v3dv/cmd_buffer: return early for draw commands if there is nothing to draw
v3dv: define a default attribute values with float type
vulkan: track number of bindings instead of max binding for CreateDescriptorSetLayout
v3dv/device: do not compute per-pipeline limits multiplying per-stage
v3dv/device: fix and cleanup v3dv limits
v3dv/pipeline: reduce descriptor_map size
Alexander Kapshuk (1):
frontends/va/image: Eliminate repetitive code on error paths
Alexander Shi (1):
mesa: texparam: Add a clamping macro to handle out-of-range floats returned as integers.
Alexander von Gluck IV (1):
egl/haiku: Fix ConfigID naming inline with mesa
Alyssa Rosenzweig (345):
pan/bi: Fix assertion
pan/bi: Pipe scratch_size in from NIR
pan/bi: Fix 64-bit SSBO addresses
pan/bi: Fix RA of node 0
pan/bi: Fix printing of node 0
panfrost: Fix TLS sizing if cores are missing
panfrost: Allow waiting on slots 6/7 during preload
pan/bi: Add internal debug flag
pan/bi: Validate format 12 tuple count in disasm
pan/bi: Print FAU index in verbose mode
pan/bi: Refactor PC-relative printing
pan/bi: Lint for infinite loops
pan/bi: Print disasm/stats with DEBUG=internal
pan/bi: Fix IDLE register mode packing
pan/bi: Fix staging register packing
pan/bi: Fix dependency wait calculation
pan/bi: Fix M1/M2 decoding in disassembler
pan/bi: Pull out bi_count_read_registers helper
pan/bi: Move bi_next_clause to bir.c
pan/bi: Pass through wait_{6, 7} flags
pan/bi: Add dead branch elimination pass
pan/bi: Add “soft” mode to DCE
pan/bi: Add bi_{before,after}_clause cursors
pan/bi: Add bi_foreach_clause_in_block_rev
pan/bi: Add bi_foreach_instr_in_tuple helper
pan/bi: Add bi_foreach_instr_in_clause iterators
pan/bi: Add destination iterator macro
pan/bi: Don’t open code bi_foreach_dest
pan/bi: Permit multiple destinations in RA
pan/bi: Add interference per clause
pan/bi: Implement spilling at the clause-level
pan/bi: Don’t fill garbage
pan/bi: Add CUBEFACE pseudoinstruction
pan/bi: Print multiple destinations if needed
pan/bi: Move init_builder to common code
pan/bi: Add “word equivalence” relation for index
pan/bi: Stub out scheduler unit test
pan/bi: Factor nir_function_impl out of the context
pan/bi: Add bi_can_{fma, add} predicates
pan/bi: Annotate ISA.xml with ‘last’ parameter
pan/bi: Pipe last flag into opcode tables
pan/bi: Add bi_must_last predicate
pan/bi: Add bi_must_message predicate
pan/bi: Label table instructions
pan/bi: Emit branch and table bits in opcode table
pan/bi: Add various read predicates
pan/bi: Unit test bi_can_{fma, add}
pan/bi: Test bi_must_last
pan/bi: Test bi_must_message
pan/bi: Test read predicates
pan/bi: Move bi_constants to bifrost.h
pan/bi: Use canonical terminology for tuple
pan/bi: Use enum bifrost_message_type
pan/bi: Clarify tuple comment
pan/bi: Amend misleading comment
pan/bi: Pack multiple tuples in-memory
pan/bi: Add clause encodings as a table
pan/bi: Move bi_packed_tuple to compiler.h
pan/bi: Add bi_pack_literal
pan/bi: Add bi_pack_upper
pan/bi: Add bi_pack_tuple_bits
pan/bi: Add bi_pack_sync
pan/bi: Add tuple/embedded constant pack
pan/bi: Add subword 5/6 pack
pan/bi: Add subword 4 or 7 pack
pan/bi: Add pack_format helper
pan/bi: Calculate pos for constant packing
pan/bi: Pack multiple tuples per clause
pan/bi: Add packing unit test group
pan/bi: Test pack_literal
pan/bi: Test pack_upper
pan/bi: Test pack_tuple_bits
pan/bi: Test pack_sync
pan/bi: Add packing format tests
pan/decode: Be explicit when printing invocations
pan/decode: Remove tiler size checks
pan/decode: Remove dependency of decoder on the encoder
pan/decode: Deduplicate SFBD blend printing
pan/decode: Deduplicate shader property printing
pan/decode: Remove unused MEMORY_PROP macro
pan/decode: Simplify tiler printing
pan/decode: Remove pandecode_prop
pan/decode: Remove unused disasm stats
pan/decode: Remove mesa header dependencies
pan/mdg: Drop unused stage parameter to disassembler
pan/decode: Remove tile range validation
pan/decode: Prefer sizeof to ARRAY_SIZE for char
nir/lower_io: Fix grammar errors
pan/bi: Fix NULL deref with empty shader
pan/bi: Add side_effects helper
pan/bi: Respect side effects in DCE
pan/bi: Implement AXCHG
pan/bi: Implement ACMPXCHG
pan/bi: Add bi_fmul_f32 convenience method
pan/bi: Fix FLOG_TABLE modifier handling
pan/bi: Lower frcp to Newton-Raphson
pan/bi: Lower frsq to Newton-Raphson
pan/bi: Lower FEXP2 with a table
pan/bi: Lower flog2 to a table and polynomial
pan/bi: Rename NO_FP32_TRANSCENDENTALS quirk
pan/bi: Fix bi quirks detection
pan/bi: Lower FP32 transcendentals where required
pan/bi: Lower transcendentals on G71
pan/bi: Print program size in shader-db
pan/bi: Cleanup terminal block check
pan/bi: Dead code eliminate per-channel
pan/bi: Include ATEST datum in the instruction
pan/bi: Add scheduler data structures
pan/bi: Add cubeface lowering
pan/bi: Flatten block lists
pan/bi: Stub worklist routines
pan/bi: Add constant count estimates to scheduler
pan/bi: Add FAU update helper
pan/bi: Add bi_tuple_is_new_src
pan/bi: Add bi_count_succ_reads helper
pan/bi: Validate reads_t
pan/bi: Add T0/T1 constraint check
pan/bi: Add writes_reg predicate
pan/bi: Add bi_instr_schedulable predicate
pan/bi: Choose instructions to schedule
pan/bi: Destructively schedule a single instruction
pan/bi: Add passthrough register rewriting helper
pan/bi: Extract bi_ec0_packed helper
pan/bi: Add bi_foreach_instr_and_src_in_tuple
pan/bi: Move bi_constant_field to bifrost.h
pan/bi: Add pcrel_idx to bi_clause
pan/bi: Derive M0 from pcrel_idx while packing
pan/bi: Add trivial rewrite helpers
pan/bi: Add constant to passthrough rewrite
pan/bi: Add constant state constructor
pan/bi: Add constant merging routines
pan/bi: Add constant modifier handling
pan/bi: Schedule blocks
pan/bi: Switch to new scheduler
pan/bi: Remove old FAU assignment code
pan/bi: Remove older cube map lowering
pan/bi: Add nosched debug option
pan/bi: Fix ‘last tuple’ for terminal-NOP clauses
pan/bi: Fix 2-write pseudo op scheduling
pan/mdg: Fix multithreaded shader-db
pan/mdg: Add MIDGARD_MESA_DEBUG=inorder option
pan/mdg: Optimize UBO offset calculations
pan/mdg: Set lower_uniforms_to_ubo
panfrost: Fix race condition in UBO mapping to CPU
panfrost: Respect buffer_offset when mapping to CPU
panfrost: Move sysvals to dedicated UBO
panfrost: Don’t truncate uniform_count
panfrost: Add UBO push data structure
panfrost: Push uniforms required by the program
panfrost: Set FAU count based on program->push
panfrost: Don’t store uniform_count on Midgard
pan/mdg: Update UBO promotion comment
pan/mdg: Push uniforms based on UBO analysis
pan/bi: Fix multithreaded shader-db
pan/bi: Add bi_replace_index helper
pan/bi: Add bi_is_ssa helper
pan/bi: Print FAU uniforms in IR
pan/bi: Generalize bi_update_fau with fast zero
pan/bi: Handle modifiers in rewrite_fau_to_pass
pan/bi: Rework FAU lowering
pan/bi: Simplify derivative lowering
pan/bi: Add SSA-based scalar copy propagation
pan/bi: Push UBOs on Bifrost
panfrost: Enable ES3 conformant floating-point
compiler, nir: Add and set barrier metadata
panfrost: Set barriers flag for compute shaders
panfrost: Pass is_blit flag around
pan/bi: Skip ATEST for colour blit shaders
panfrost: Fake shader images for bifrost+deqp
pan/bi: Fix jumps to terminal block again
pan/bi: Fix empty shader handling
nir: Add sample_positions_pan intrinsic
pan/decode: Cleanup sample locations decode
pan/decode: Only print local storage for vertex jobs
panfrost: Preload sample mask if needed
panfrost: Add sample positions sysval
panfrost: Push sample positions sysval for Midgard
panfrost: Refactor sample shading state
panfrost: Respect info.fs.uses_sample_shading
panfrost: Add panfrost_sample_pattern helper
panfrost: Set tiler descriptor sampler pattern
panfrost: Generalize MSAA handling
panfrost: Don’t set REQ_MSAA in pan_mfbd
panfrost: Don’t use PAN_REQ_MSAA in SFBD
panfrost: Remove PAN_REQ_MSAA
panfrost: Remove PAN_REQ_DEPTH_WRITE
panfrost: Remove batch_is_scanout
panfrost: Set sample count/pattern for tiler FBD
panfrost: Upload sample positions on device init
panfrost: Use sample location LUT
panfrost: Ensure open_device has pandecode initialized
panfrost: Advertise MSAA 8x and 16x
panfrost: Implement get_sample_position
panfrost: Overhaul sysval handling
panfrost: Add MULTISAMPLED sysval
pan/mdg: Assert on bad 64-bit swizzle in disassembly
pan/mdg: Remove unused pack_unorm_4x8 lowering
pan/mdg: Lower bitfield instructions
pan/mdg: Rename bitcount8 to popcnt, fixing the unit
pan/mdg: Implement uclz
pan/mdg: Lower ufind_msb, poorly
pan/mdg: Stub load_barycentric_sample
pan/mdg: Lower stores from helpers
pan/bi: Remove redundant TEXC opcode check
pan/bi: Implement texture gathers
pan/bi: Lower bitfield inserts/extracts
pan/bi: Implement bitfield_reverse
pan/bi: Implement ufind_msb
pan/bi: Lower ifind_msb
pan/bi: Fix gl_SampleID read
pan/bi: Implement load_sample_mask_in
pan/bi: Implement nir_intrinsic_load_sample_positions_pan
pan/bi: Decouple sysval loading from NIR
pan/bi: Implement coverage mask updates
pan/{mdg, bi}: Lower load_helper_invocation
pan/{mdg, bi}: Lower load_sample_pos
panfrost: Simplify bind_compute_state
panfrost: Remove stale TODOs
panfrost: Assert on indirect compute shaders
panfrost: Advertise SAMPLE_SHADING
panfrost: Bump max SSBO count
panfrost: Bump advertised ESSL feature level
panfrost: Advertise OES_standard_derivatives
docs/features: Mark more TBO exts done on panfrost
docs/features: Mark some ES3.1 done on Panfrost
docs/features: Mark sample shading done on Panfrost
docs/features: gl_HelperInvocation on Panfrost
nir: Fix grammar error
panfrost: Fix uniform_count on Midgard
pan/bi: Stub scoreboarding
pan/bi: Implement barriers
pan/decode: Fix tiler printing on Bifrost
pan/decode: Pretty print 22-bit pixel formats
pan/decode: Disambiguate border colours
panfrost: Label groups in GenXML
panfrost: Track coverage, early fragment tests
panfrost: Flesh out pixel kill / zs update
panfrost: Handle PIPE_FORMAT_NONE as ‘constant’
panfrost: Flesh out allow_forward_pixel_to_kill check
panfrost: Export bifrost_get_blend_desc with type size
panfrost: Add RT conversion sysval
panfrost: Fix NULL deref for an empty frag shader
panfrost: Spell fix
panfrost: Take panfrost_dev for AFBC selection
panfrost: Set border colour on Bifrost sampler
panfrost: Remove useless check
pan/bi: Fix RA of node 0 again
pan/bi: Don’t inline 64-bit constants
pan/bi: Fix LD_GCLK staging count
pan/bi: Don’t read alpha out of bounds
pan/bi: Allow @rNULL with tied operands
pan/bi: Add SEG_ADD.i64 pseudoinstruction
pan/bi: Add 32-bit atomic pseudoinstruction
pan/bi: Lower atomic pseudo-instructions
pan/bi: Extract bi_atom_opc from NIR intrinsic
pan/bi: Add ATOM_C1 promotion check
pan/bi: Handle computational atomics
pan/bi: Materialize *DTSEL_IMM in the scheduler
pan/bi: Implement image_atomic_exchange
pan/bi: Implement image_atomic_comp_swap
pan/bi: Implement shader_clock intrinsic
pan/bi: Fix blend shaders using LD_TILE with MRT
pan/bi: Flesh out LD_TILE emit
pan/bi: Elucidate slot 6/7 operation
pan/bi: Preload sample ID for sample shading
pan/bi: Implement interpolateAtSample
pan/bi: Add imm_f16 helper
pan/bi: Implement interpolateAtOffset
pan/bi: Allow dynamically uniform tex indices
pan/bi: Use explicit move even for RT#0 of MRT
panfrost: Comment on state of ARB_shader_clock
panfrost: Advertise FRAMEBUFFER_NO_ATTACHMENTS
docs/features: Mark atomics/images done on Bifrost
panfrost/ci: Mark flaky test
gallium/tessellator: Remove XBOX 360 code
gallium/tessellator: Remove unused includes
gallium/tessellator: Rename D3D11 defines
pan/bi: Fix more jumps to terminal blocks
pan/bi: Optimize out redundant jumps to #0x0
pan/bi: Fix elimination of repeated branches
panfrost: Fix infinite loop spilling
panfrost: Fix NULL dereference adding cbuf to batch
panfrost: Remove redundant NULL check
panfrost: Fix NULL deref in pan_mfbd.c
panfrost: Fix NULL derefs in pan_cmdstream.c
panfrost: Fix NULL deref in pan_sfbd
panfrost: Raise TEXTURE_BUFFER_OFFSET_ALIGNMENT
panfrost: Hide MSAA 8x/16x support
panfrost: Fix UNORM 16 rendering
panfrost: Reinterpret format for reload blits
panfrost: Fix typo in midgard.xml
panfrost: Don’t advertise OES_copy_image
pan/bi: Use nir_opt_sink/move for constants
pan/bi: Reduce liveness calculations in DCE
pan/bi: Inline `bytemask of read components`
pan/bi: Mark branches as having side effects
pan/bi: Mark DISCARD as having side effects
pan/bi: Make bi_writemask take a destination
pan/bi: Allow spilling with multiple destinations
pan/bi: Annotate instructions by destination count
pan/bi: Adapt builder to dest count
pan/bi: Remove unused definitions
pan/bi: Do copyprop in linear-time
panfrost/lcra: Fix constraint counting
pan/bi: Use replace_index in more places
pan/bi: Allow negating constants
pan/bi: Implement fsin/fcos
pan/bi: Mark message-passing sources/dests live
pan/bi: Set clause_state.message conservatively
pan/bi: Treat +DISCARD.f32 as message-passing
nir/lower_viewport_transform: Allow geom/tess
pan/bi: Implement u{add, sub}_sat
nir: Unify memory atomics
meson: Remove kmsro from gallium-drivers
pan/bi: Document register conventions
pan/bi: Add bi_foreach_block_rev
pan/bi: Handle 16-bit blend sr_count
pan/bi: Only run copyprop once
pan/bi: Only run DCE once
pan/bi: Remove TODO: RA warnings
pan/bi: Remove stale todo/assert
panfrost: Deduplicate UBO count assignment
panfrost: Deduplicate Bifrost fau_count
panfrost: Only check blend work count on midgard
vulkan: Deduplicate mesa stage conversion
pan/bi: Enable all nir_opt_move/sink optimizations
pan/bi: Split writemasks for memory stores
pan/bi: Lower large arrays to scratch
pan/bi: Add bi_swz_16 helper
pan/bi: Optimize MKVEC.v2i16 generation
pan/bi: Lower swizzles
pan/bi: Fill in some more conversions
pan/bi: Generalize f2i16, f2u16
pan/bi: Remove conversion lowering
nir: Add nir_type_convert
nir: Add {i2f, u2f, f2i, f2u} helpers
nir/lower_idiv: Convert to lower_instructions
nir/lower_idiv: Factor out numer/denom load
nir/lower_idiv: Add 8-bit and 16-bit lowering path
pan/bi: Determine block successors correctly
panfrost: Fix AFBC body_size for shared resources
panfrost: Enable AFBC buffer sharing
nir: Add varying precision linking helper (v2)
docs: Add some notes on building for macOS
panfrost: Fix formats converting uninit from AFBC
Andreas Bergmeier (1):
v3dv: Output a message if file open fails in physical_device_init
Andres Gomez (29):
ci: recover tracie dashboard URLs for failing traces
ci: correct the trace image URLs in the piglit summary
ci: make piglit runner less noisy and show a better failure message
ci: clean paths used in the piglit runner
ci: correct piglit’s HTML summary location for artifacts upload
ci: make sure piglit’s artifacts are not overwritten
ci: correct artifacts location for piglit’s runner messages
ci: tracie dashboard URLs only in the failure after the testcase
ci: piglit runner colors diff output on failures
ci: remove pytest since we don’t need it any more
ci: only install piglit dependencies when installing piglit
ci: build gfxreconstruct v0.9.5
ci: add libdrm to the x86_test-vk container
.mailmap: colapse duplicates for Timothy Arceri
.mailmap: resolve duplicates for Icecream95
.mailmap: resolve duplicates for Christopher Li
.mailmap: resolve duplicates for Emmanuel Vadot
.mailmap: resolve duplicates for Indrajit Das
.mailmap: resolve duplicates for James Xiong
.mailmap: resolve duplicates for Jan Zielinski
.mailmap: resolve duplicates for Lin Johnson
.mailmap: resolve duplicates for Mark Menzynski
.mailmap: resolve duplicates for Matthias Hopf
.mailmap: resolve duplicates for Matthias Lorenz
.mailmap: resolve duplicates for Maya Rashish
.mailmap: resolve duplicates for Mun Gwan-gyeong
.mailmap: resolve duplicates for Satyeshwar Singh
.mailmap: resolve duplicates for Yogesh Mohan Marimuthu
.mailmap: add an alias for Eleni Maria Stea
Andrew McMahon (1):
util: add mesa_glthread for Half Life 2 and Black Mesa.
Andrii Simiklit (7):
st/mesa: fix pbo upload/download for arrays of textures with only 1 layer
iris: don’t emit IRIS_DIRTY_VF depending on trash in restart_index
mesa: ensure parameter list capacity before associating uniform storage
glsl/linker: Fix xfb stride alignment for buffers containing 64bit types
gitlab-ci: remove fixed tests
spirv: repair ssa defs for switchs with only default case
nir/spirv: remove unused fields from `vtn_builder`
Antonio Caggiano (4):
zink: check shader stencil output
zink: support stencil-export
zink: fix destroy batch
ci: Use lock file to build deqp-runner
Anuj Phogat (32):
intel/anv: Fix condition to set MipModeFilter for YUV surface
intel/anv: Fix condition for planar yuv surface
intel: Rename files with gen_ prefix in common code to intel_
intel: Rename “gen_” prefix used in common code to “intel_”
intel: Fix broken alignment due to gen_ prefix renaming
intel: Rename “GEN_” prefix used in common code to “INTEL_”
i965: Remove blank line at EOF
i965: Rename files with “intel_” prefix to “brw_”
intel/isl: Drop intel_ prefix in function names
anv: Remove redundant #if checks
intel: Remove GEN_IS_HASWELL macro
intel: Simplify version checks involving haswell
intel: Remove GEN_IS_G4X macro
intel: Simplify few version checks involving G4X
intel: Rename GEN_VERSIONx10 macro to GFX_VERx10
intel: Rename GEN_GEN macro to GFX_VER
intel: Rename ISL_DEV_GEN to ISL_GFX_VER
intel: Rename genx10 field in gen_device_info struct to verx10
intel: Rename gen field in gen_device_info struct to ver
intel: Rename genx keyword in filenames to gfxx
intel: Rename GENx prefix in macros to GFXx in build files
intel: Rename GENx prefix in macros to GFXx in source files
intel: Rename genx keyword to gfxx in build files
intel: Rename genx keyword to gfxx in source files
intel: Rename Genx keyword to Gfxx
intel: Rename GENx keyword to GFXx
intel: Rename IS_GEN* macros to IS_GFX_VER*
intel: Make line wrapping changes due to IS_GFX_VER_BETWEEN
intel: Remove unused MAKE_GEN macro
intel: Rename GEN_{ALL, LT, ..} macros to GFX_{ALL, LT, ..}
intel: Rename GEN:BUG:### to Wa_###
intel: Rename WA_### to Wa_###
Arcady Goldmints-Orlov (14):
v3dv: Fix uninitialized variable warnings
nir: add more intrinsics to divergence analysis
nir: handle v3d intrinsics in divergence analysis
nir: store the results of divergence analysis on loops
broadcom/compiler: Use ANYA for branches in uniform ifs
broadcom/compiler: Emit uniform loops using uniform control flow
broadcom/compiler: Enable PER_QUAD TMU access only in uniform control flow
v3dv: Only lower local arrays of size up to 2 to if-chains
broadcom/compiler: improve generation of if conditions
Revert “broadcom/compiler: improve generation of if conditions”
v3dv: initialize render_fd at the top of physical_device_init
broadcom/compiler: Add a v3d_compile argument to vir_set_[pu]f
broadcom/compiler: Skip bool_to_cond where possible
broadcom/compiler: Merge instructions more efficiently
Arno Messiaen (1):
lima/ppir: increase usage of pipeline regs
Axel Davy (76):
st/nine: Reduce system memory allocated by D3DUSAGE_AUTOGENMIPMAP
st/nine: Do not allow depth buffer render targets
st/nine: Clamp GetAvailableTextureMem
st/nine: Unmap buffers after full unlock
st/nine: Track formats compatible with FETCH4
st/nine: Implement experimental FETCH4
st/nine: Enable DF24 support
st/nine: Add new debug and error checks
st/nine: Refactor ht_guid_delete
st/nine: Protect *PrivateData also for Volumes
st/nine: Fix leak at device destruction
driconf: Rename csmt_int back to csmt_force
st/nine: Simplify checks for driconf options
st/nine: Add new function to know if we are the worker
st/nine: Add RAM memory manager for textures
st/nine: Use the texture memory helper
st/nine: Control the memfd virtual limit
st/nine: Add driconf option to limit texture memory
st/nine: Set default dynamic_texture_workaround to true
st/nine: Check memfd_create support
st/nine: Fix compilation issue in nine_debug
st/nine: Optimize EndScene
st/nine: Implement SYSTEMMEM buffers same as MANAGED
st/nine: Refactor DrawPrimitiveUp
st/nine: Optimize DrawPrimitiveUp
st/nine: Use correct bind flag at buffer creation
gallium/util: Add new u_box helpers
st/nine: Track pending MANAGED buffer uploads
st/nine: Optimize dynamic systemmem buffers
st/nine: Force DYNAMIC SYSTEMMEM for sw vertex processing
st/nine: Always use DYNAMIC with SYSTEMMEM
st/nine: Use stream_uploader for bad cases of systemmem
st/nine: detect worker threads syncs for systemmem
radeonsi: Limit the size of the in-memory shader cache
radeonsi: fix leak when the in-memory cache is full
st/nine: Disable fpu exceptions during init
st/nine: Fix crash on texture creation failure
st/nine: Fix cubetexture early destruction
st/nine: Add missing breaks
st/nine: Fix invalid NULL check
st/nine: Prevent use after free on dtor
st/nine: Fix reading invalid pointer
st/nine: Fix compilation warnings
st/nine: Fix read outside bounds for some textures
st/nine: Fix value of pipe_draw_info’s max_index vertex
st/nine: Prevent negative reference count
st/nine: Improve Surface GetContainer
st/nine: Fix alpha to coverage states
st/nine: Enable multisampling also without depth buffer
st/nine: Handle D3DFMT_NULL multisampling
st/nine: Remove errors on unsupported lock flags
st/nine: Increase number of constants of vs1_sw
st/nine: Ignore swizzle on samplers
st/nine: Clamp max_anisotropy
st/nine: Refuse depth buffers as rendertargets
st/nine: Fix ps ff BLENDTEXTUREALPHA
st/nine: Fix ff has_aNrm computation
st/nine: Catch redundant scissor and viewport settings
st/nine: Pseudo implement set/getClipstatus
st/nine: Improve Reset on Ex devices
st/nine: Pseudo implement Create*Ex functions
st/nine: Complete *Ex stubs
st/nine: Add logging to Ex function
st/nine: Have NOOVERWRITE win over DISCARD
st/nine: Do not memset buffers twice
st/nine: Add fallback for YUV formats
st/nine: Use PIPE_MAP_ONCE for persistent buffers
st/nine: Disable buffer_upload when csmt is off
st/nine: Allow to override the vram size
st/nine: Make it optional to use a sw renderer
st/nine: Lower texture_memory_limit default
st/nine: Bump num of backbuffers for tearfree thread_submit
st/nine: Improve performance with thread_submit
st/nine: Default thread_submit to true
st/nine: Default tearfree_discard to true
st/nine: Fix compilation error on non-x86 platforms
Bas Nieuwenhuizen (87):
ac/surface: Fix GFX9 sparse mip info.
radv: Do not use a pipe offset for aliased sparse images.
radv: Add a trivial implementation of VK_KHR_deferred_host_operation
radv: Use stricter HW resolve swizzle compat check.
radv: Expose VK_KHR_workgroup_memory_explicit_layout.
radv: Do not hash vk_object_base in descriptor set layout.
amd/common: Add modifier size helper.
radv: Extract DCC format support handling.
radv: Use the surface offset from ac_surface instead of a plane offset.
radv: Don’t relayout images with modifiers.
radv: Add format modifier format queries.
radv: Add drm format modifier queries.
radv: Add image layout with drm format modifiers.
radv: Enable DRM format modifiers on GFX9+.
radv: Enable modifiers with the WSI.
radv: Add modifier fails for CTS bug.
radv: Fix assert.
radv: Implement VK_KHR_zero_initialize_workgroup_memory.
radv: Improve spilling on discrete GPUs.
radv: Fix vram override with fully visible VRAM.
radv: Remove custom icd json generation.
radv: Define supported extensions in C.
radv: Ignore WC flags for VRAM.
radv: Determine swizzles correctly.
radv: Add plane width/height helpers.
radv: Use u_format helpers when possible.
radv: Remove VK_SWIZZLE_*.
radv: Do no use vk_format for getting divisors.
radv: Do not use generated table for plane formats.
radv: Stop checking for MULTIPLANE layout.
radv: Stop using plane_count.
radv: Only support format with a PIPE_FORMAT.
radv: Start using util_format_description for everything.
radv: Remove the format table.
radv: Remove vk_format_has_stencil/depth helpers.
radv: Properly handle modifier import failure.
radv: Do pipe misalignment check per plane.
radv: Don’t use dedicated memory info to indicate sharing.
vulkan/device_select: Stop using device properties 2.
amd/common: constify ac_surface_set_umd_metata.
radv: Handle UMD metadata on import.
radv: Use shared code for setting opaque metadata.
amd/common: Add retile map size helper.
radv: Implement initialization of displayable DCC.
radv: Implement displayable DCC retiling.
radv: Add DCC info to the metadata.
radv: Use ac_surface DCC settings for shareable images.
radv: Enable displayable DCC.
radv: Disable displayable DCC for GFX8 properly.
ac/rgp: Only report double the prims per clock on GFX10.
radv: Expose robustBufferAccessUpdateAfterBind correctly.
frontends/va: Use correct size for secondary planes.
radv: Enable linear sampling for depth textures.
radv: Add sam option.
radv: Add nodisplaydcc option.
radv: Use correct DCC compressed block size for sampling.
radv: Dedupe winsyses per device.
radv: Allow extra planes for DCC.
radv: Enable sharing with DCC with modifiers.
radv: Ensure we never decompress or FCE read-only textures.
radv: Allow DCC for images with modifiers that are read-only.
radv: Use 8x8 meta compute workgroups.
radv: Enable DCC for image stores on GFX10.
radv: Only set WRITE_COMPRESS_ENABLE on supported HW.
vulkan: Fix descriptor set creation with zero bindings.
lavapipe: Free sorted descriptor array.
zink: Remove initialization of some arrays
zink: Only set the needed number of scissors.
radv: Flush caches for shader read operations.
nir: Fix shader calls with nir_opt_dead_write_vars.
nir: Extract shader_info->cs.shared_size out of union.
nir: Remove nir_shader->shared_size.
nir: Do not reset shared_size in nir_lower_io.
radv: Support DCC without a fast clear value.
radv: Support DCC without DCC/FCE predicates.
radv: Add retiling for foreign queues.
radv: Support DCC modifiers fully.
radv: Add clang-format for AMD code.
radv: Format.
radv: Update editorconfig.
radv: Re-enable retiling.
radv: Refactor cs_domain to be a winsys function.
radv: Use VRAM cmdbuffers in more situations.
radv/winsys: Remove use_local_bos
radv: Fix memory leak on descriptor pool reset with layout_size=0.
amd/common: Use cap to test kernel modifier support.
radv: Only require DRM 3.23.
Bastian Beranek (1):
glx: Assign unique serial number to GLXBadFBConfig error
Ben Niu (1):
util: When building ‘ARM64EC’, don’t use x64 intrinsics which need to be emulated
Benjamin Tissoires (3):
CI: windows: augment the timeout of building the windows container
CI: windows: split the layers to meet new registry requirements
CI: windows: Force using LLVM 12
BillKristiansen (1):
d3d12: fix for upside-down multisample stencil blit
Boris Brezillon (91):
panfrost: Don’t skip the test with a 4k shader
panfrost: Fix tiler job injection (again)
panfrost: Get rid of IS_BIFROST
panfrost: Don’t memset the last attribute buffer entry twice
panfrost: Only allocate the extra attribute buffer entry on Bifrost
panfrost: Set attribs and attrib_bufs to NULL when attrib_count = 0
panfrost: Rename and move pan_render_condition_check()
panfrost: Use dev->arch where appropriate
panfrost: Add a panfrost_compile_shader() helper
panfrost: Update ctx->batch when a fresh batch is requested
panfrost: Fix a polygon list corruption in the multi-context case
panfrost: Don’t add the tiler BO when it’s not accessed
pan/bi: Add an is_terminal_block() helper
pan/bi: Make sure we never branch to an non-existing clause
pan/bi: Add uclz() support
pan/bi: Support bit_count()
panfrost: Use panfrost_get_shader_options() in panfrost_build_blit_shader()
panfrost: Hide backend compiler internals
panfrost: Prefix shader related helpers with pan_shader_
panfrost: Move sysval_to_id out of panfrost_sysvals
panfrost: Keep the compiler inputs in the context
panfrost: Move the shader compilation logic out of the gallium driver
panfrost: Provide a helper to prepare the shader related parts of an RSD
panfrost: Use the pan_shader_prepare_rsd() helper
panfrost: Rename pan_blend.h into pan_blend_cso.h
panfrost: Move the blend lowering code out of the gallium driver
panfrost: Move the blend logic out of the gallium driver
Revert “pan/bi: Optimize out redundant jumps to #0x0”
pan/bi: Move int64 lowering before idiv lowering
panfrost: Split the direct and indirect draw logic
panfrost: Add a parameter to suppress next job prefetching
panfrost: Allow passing an explicit global dependency when queuing a job
panfrost: Add a pan_section_offset() helper
panfrost: Move pan_special_varying definition to pan_encoder.h
pan/bi: Extend the bi_builder to support type variants correctly
panfrost: Add a knob to disable the UBO -> push constants optimization
panfrost: Allow passing an explicit UBO index for the sysval UBO
panfrost: Print the correct UBO size when dumping UBO information
panfrost: Don’t count the special vertex/instance ID attributes on Bifrost
panfrost: Split the sampler and texture count
panfrost: Expose panfrost_modifier_to_layout()
pan/gen_pack: Parse alignment requirements
panfrost: Specify descriptor alignment requirements
panfrost: Provide various helpers to simplify descriptor allocation
panfrost: Define the Surface and Surface-with-stride descriptors
panfrost: Emit surface descriptors with pan_pack()
panfrost: Use the descriptor allocators where appropriate
panfrost: Get rid of panfrost_pool_alloc()
panfrost: Move the blend shader cache at the device level
panfrost: Use the blend shader cache attached to the device
panfrost: Don’t reserve space in the color buffer for disabled RTs
panfrost: Skip disabled RTs when selecting a RT for transaction elimination
panfrost: Stop including pan_device.h from pan_bo.h
panfrost: Add helpers to support indirect draws
panfrost: Prepare things for indirect draws
panfrost: Hook up indirect draw support
panfrost: s/panfrost_slice/pan_image_slice_layout/
panfrost: Move image states out of pan_image_layout
panfrost: Add a format field to pan_image_layout
panfrost: Stop passing a depth > 1 when creating 2D textures
panfrost: Add extra info to the pan_image_layout struct
panfrost: Split pan_image in two
panfrost: Add an offset field so we can attach a sub-buffer to an image
panfrost: Move out-of-band CRC info to pan_image
panfrost: Move special Z32_S8X24 case out of panfrost_setup_layout()
panfrost: Add a pan_image_layout_init() helper
panfrost: Patch the gallium driver to use pan_image_layout_init()
panfrost: Pass an image view to panfrost_new_texture()
panfrost: Provide a helper to calculate the polygon list size
panfrost: Provide a helper to retrieve image surface pointers
panfrost: Pass a const device to panfrost_sample_positions()
pan/midg: Use the sampler index passed to the texture instruction
panfrost: Add various helpers to simplify FB desc emission
panfrost: Add an helper to emit fragment jobs
panfrost: Add align info to the draw and draw padding definitions
panfrost: Add the early ZS pre frame mode
panfrost: s/pandecode_vertex_tiler_postfix_pre/pandecode_dcd/
panfrost: Decode pre/post frame DCDs
panfrost: Extend pan_fb_info to allow passing a tile enable map
panfrost: Extend pan_fb_info to allow passing pre/post frame DCDs
panfrost: Always pass a non-NULL screen to set_damage_region()
panfrost: Create a blitter library to replace the existing preload helpers
panfrost: Fix partial update
panfrost: Use the generic preload and FB helpers in the gallium driver
panfrost: Kill the old tile-buffer preload logic
panfrost: Pass a tile enable map to avoid reloading untouched tiles
panfrost: Fix pan_blitter_get_blit_shader()
panfrost: Don’t advertise AFBC mods when the format is not supported
panfrost: Reserve thread storage descriptor in panfrost_launch_grid()
panfrost: Fix indirect draws
panfrost: Fix ZS reloading on Bifrost v6
Boyuan Zhang (2):
frontend/va/image: add pipe flush for vlVaPutImage
frontends/omx/h265: search entire dpb list
Caio Marcelo de Oliveira Filho (43):
intel/fs: Separate SLM size calculation from encoding
nir: Add a data pointer to the callback in nir_remove_dead_variables
spirv: Don’t remove variables used by resource indexing intrinsics
nir/linking: Remove system_value handling from helper
compiler: Use util/bitset.h for system_values_read
ci: Add nouveau chipset 162 to shader-db runs
vulkan: Update XML and headers to 1.2.168
spirv: Update headers and metadata from latest Khronos commit
nir: Two shared memory *blocks* may alias each other
spirv: Implement SPV_KHR_workgroup_memory_explicit_layout
anv: Implement VK_KHR_workgroup_memory_explicit_layout
spirv: Don’t bother counting num_images/num_textures
spirv: Don’t remove dead variables in `create_library` mode
spirv: Store SPIR-V version of the module
spirv: Refactor variable initializer code
spirv: Recognize zero initializers in Workgroup variables
nir: Add nir_zero_initialize_shared_memory
anv: Implement VK_KHR_zero_initialize_workgroup_memory
spirv: Fail when parsing invalid Initializers
spirv: Use OpEntryPoint to identify valid I/O variables
spirv: Count variables *after* unused ones are removed
spirv: Skip creating unused variables in SPIR-V >= 1.4
spirv: Allow variable pointers pointing to an array of blocks
intel/compiler: Use gl_varying_slot_name_for_stage()
freedreno/ir3: Use gl_varying_slot_name_for_stage()
etnaviv: Use gl_varying_slot_name_for_stage()
st/atifs: Use gl_varying_slot_name_for_stage()
compiler: Drop now unused gl_varying_slot_name()
spirv: Reuse nir_is_per_vertex_io()
spirv: Explicitly break when finished handling SpvDecorationBuiltIn
spirv: Update a couple of comments in variable handling
anv: Lower ViewIndex to zero when multiview is disabled
spirv: Update headers and metadata from latest Khronos commit
nir: Handle deref_atomic_fadd in a couple of passes
intel/compiler: Make vue_map parameter const for brw_compile_fs
intel/compiler: Use a struct for brw_compile_fs parameters
intel/compiler: Use a struct for brw_compile_vs parameters
intel/compiler: Refactor the shader INTEL_DEBUG checks
intel/compiler: Make brw_postprocess_nir take debug_enabled as a parameter
intel/compiler: Make vec4 generator take debug_enabled as a parameter
intel/compiler: Make visitors take debug_enabled as a parameter
intel/compiler: Use INTEL_DEBUG=blorp to dump blorp shaders
intel/compiler: Use a struct for brw_compile_cs parameters
Chad Versace (30):
anv/image: Replace bo_is_owned with from_gralloc (v2)
anv/image: Rename anv_image_plane::surface -> primary_surface
anv/image: Move vkGetImageMemoryRequirements
anv/image: Drop duplicate ‘format’ in anv_image_create()
anv/image: Fix interpretation of ‘disjoint’
anv/android: Fix size check for imported gralloc bo
anv: Add anv_surface_is_valid()
anv/image: Clean up anv_GetImageMemoryRequirements2
anv: Refactor anv_image_get_compression_state_addr
anv/image: Add anv_image_address()
blorp/gen12: Don’t use aux address if implicit CCS
anv/image: Make memory layout more explicit
vulkan: Track dependencies of Python imports
anv/image: Simplify assertions in anv_image_from_swapchain()
anv/image: Fix tiling if VkImageSwapchainCreateInfoKHR
anv/image: In vkCreateDmaBufImageINTEL use modifiers
anv/image: Check that anv_image is compatible with its modifier
anv/image: Refactor check_memory_bindings()
anv/image: Fix cleanup of failed image creation
anv/image: Add ANV_IMAGE_MEMORY_BINDING_PRIVATE
anv/image: Fix Vk*ImagePlaneMemory*Info for modifier images
anv: Move assert in vkGetImageSubresourceLayout
anv/image: Fix vkGetImageSubresourceLayout for modifier images
anv: Implement image acquire/release of modifier images
anv: Declare anv_layout_to_* as pure functions
anv/image: Add ‘offset’ param to add_surface()
anv/image: Support VkImageDrmFormatModifierExplicitCreateInfoEXT
anv: Enable VK_EXT_image_drm_format_modifier
anv: Remove vkCreateDmaBufINTEL (v4)
anv: Drop unused anv_image_create_info::stride
Charmaine Lee (1):
gallivm: increase size of texture target enum bitfield
Chia-I Wu (38):
virgl: update headers
virgl: add support for VIRGL_CAP_V2_UNTYPED_RESOURCE
targets/libgl-xlib: add support for virgl
virgl: update headers from virglrenderer
venus: add driver skeleton
venus: add generated venus-protocol headers
venus: add experimental renderers
venus: add a CS encoder/decoder
venus: add a ring buffer
venus: initial support for vkCreateInstance
venus: initial support for VkPhysicalDevice commands
venus: initial support for VkDevice commands
venus: initial support for queue/fence/semaphore
venus: initial support for VkDeviceMemory commands
venus: initial support for buffers/images/samplers
venus: initial support for descriptor sets
venus: initial support for render pass and fb
venus: initial support for events and queries
venus: initial support for module and pipelines
venus: initial support for command buffers
venus: advertise extensions promoted to 1.1
venus: advertise extensions promoted to 1.2
venus: initial support for transform feedback
venus: initial support for WSI
venus: update venus-protocol headers
venus: prepare for splitting vn_device.[ch]
venus: split out vn_command_buffer.[ch]
venus: split out vn_pipeline.[ch]
venus: split out vn_query_pool.[ch]
venus: split out vn_render_pass.[ch]
venus: split out vn_descriptor_set.[ch]
venus: split out vn_buffer.[ch]
venus: split out vn_image.[ch]
venus: split out vn_device_memory.[ch]
venus: split out vn_queue.[ch]
venus: include individual venus-protcol headers
ci: enable venus in some meson build jobs
venus: check vn_renderer_info::vk_xml_version
Christian Gmeiner (26):
etnaviv: handle NULL views in set_sampler_views
vc4: add drm-shim
ci: Update baremetal kernel to 5.11 plus patches
nir: add load_texture_rect_scaling
nir: add has_txs flag
nir/lower_tex: ‘txs free’ tex_rect lowering
nir/lower_tex: wider usage of nir_tex_instr_src_index(..)
gallium: add PIPE_CAP_TEXRECT
gallium/st: lower rectangle textures if not supported
ttn: lower rectangle textures if not supported
etnaviv: nir: support nir_intrinsic_load_texture_rect_scaling
etnaviv: let st lower rect tex
vc4: let st lower rect tex
etnaviv: nir: add ubo lowering pass
etnaviv: use nir_lower_uniforms_to_ubo(..)
etnaviv: fix etna_nir_lower_ubo_to_uniform pass
etnaviv: extend lower ubo tests
gallium: call util_cpu_detect()
etnaviv: use nir_lower_idiv(..) before opt loop
ci/bare-metal: fix fastboot
etnaviv: etnaviv: put sampler limit determination into own function
etnaviv: factor out TS state emitting
etnaviv: add support for NTE
etnaviv: rename struct members
ci/bare-metal: no need to use tee
etnaviv: tell the truth if alpha-test is supported
Connor Abbott (61):
nir/lower_tex: Handle sized tex destination types
freedreno/ir3: Handle sized tex destination types
ntt: Handle sized tex destination types
nir/lower_bool: Rewrite dest_type for boolean destinations
brw/vec4: Don’t convert tex dest type to glsl_type
radv/meta: Use sized types for nir_tex_instr::dest_type
v3dv/meta: Use sized types for nir_tex_instr::dest_type
intel/blorp: Use sized types for nir_tex_instr::dest_type
anv: Use sized types for nir_tex_instr::dest_type
dxil: Use sized types for nir_tex_instr::dest_type
panfrost/blit: Use sized types for nir_tex_instr::dest_type
d3d12/blit: Use sized types for nir_tex_instr::dest_type
nir: Use sized types for nir_tex_instr::dest_type
st/mesa: Use sized types for nir_tex_instr::dest_type
gallium/nir: Use sized types for nir_tex_instr::dest_type
ttn: Use sized types for nir_tex_instr::dest_type
st/atifs: Use sized types for nir_tex_instr::dest_type
glsl/nir: Use sized types for nir_tex_instr::dest_type
vtn: Use sized types for nir_tex_instr::dest_type
ptn: Use sized types for nir_tex_instr::dest_type
nir: Validate nir_tex_instr::dest_type bitsize
nir/lower_tex: Assume that nir_tex_instr::dest_type is sized
panfrost: Assume that nir_tex_instr::dest_type is sized
ir3: Assume that nir_tex_instr::dest_type is sized
ntt: Assume that nir_tex_instr::dest_type is sized
freedreno/a6xx: Document threadsize-related fields
freedreno/cffdec: Use rb trees for tracking buffers
ir3/parser: Fix parsing of “0.0” in @const line
freedreno/computerator: Fix example assembly
ir3/parser: Support labels
ir3/parser: Add ability to specify branchstack
freedreno/computerator: Add branching example
freedreno/computerator: Fix thrsz type
freedreno/a6xx: Fix compute threadsize type
freedreno/registers: Handle typed registers with fields
freedreno/a6xx: Cleanup SP_XS_CTRL_REG0 definitions
freedreno: Add local_size to ir3_shader_variant
ir3: Calcuate max_waves and threadsize
turnip: Use threadsize calculated by ir3
freedreno: Use threadsize calculated by ir3
freedreno/computerator: Use threadsize calculated by ir3
freedreno: Report max_waves in shaderdb output
freedreno/computerator: Add script for finding reg file size
util/bitset: Avoid out-of-bounds reads
freedreno/a3xx: Fix SP_FS_CTRL_REG1_INITIALOUTSTANDING
ir3/legalize: Fix last input (ss) insertion
ir3: Fix valid flags for STIB
ir3/cp_postsched: Set address of uses for relative mov’s
ir3: Don’t copy propagate arrays in ir3_cp
ir3/postsched: Make sure to schedule inputs before kill
vtn: Handle ZeroExtend/SignExtend image operands
tu: Expose VK_KHR_spirv_1_4 and VK_EXT_scalar_block_layout
tu: Expose VK_KHR_relaxed_block_layout
ir3/sched: Don’t penalize uses of already-waited tex/SFU
ir3/sched: Don’t schedule too many tex/SFU instructions
ir3: Fix list corruption in legalize_block()
tu: Correctly preserve old push descriptor contents
ir3: Prevent oob writes to inputs/outputs array
nir/lower_clip_disable: Fix store writemask
tu: Fix SP_GS_PRIM_SIZE for large sizes
ir3/postsched: Fix dependencies for a0.x/p0.x
Corentin Noël (1):
ci: Use lavacli from master
Daniel Schürmann (67):
aco: fix VOP3P assembly, VN and validation
aco/RA: fix subdword operands on VOP3P instructions
aco: allow constants/literals on every src position for VOP3P
aco: allow SGPRs on every src position for VOP3P
aco: change usesModifiers() considering opsel_hi on packed instructions
aco: create helpers to emit vop3p instructions
aco: emit packed 16bit instructions
radv: vectorize 16bit instructions
aco: simplify multiply-add combining
aco: optimize packed mul+add to v_pk_fma_f16
aco: optimize packed clamp
aco: optimize packed fneg
aco: optimize v_pk_fma_f16 -> v_pk_fmac_f16 on GFX10
aco: propagate swizzles when optimizing packed clamp & fma
aco: remove divergent branches which only jump over very few instructions
aco/optimizer: don’t copy-prop logical phis
aco/optimizer: don’t propagate subdword temps of different size
aco: generalize subdword constant copy lowering
aco/validate: validate that p_create_vector operands are aligned unless they are subdword operands
aco/validate: ensure that Operand and Definition size matches for parallelcopies
aco/validate: relax subdword restrictions
aco: propagate temporaries into PSEUDO instructions if it can take it
aco/optimizer: expand subdword vectors with SGPRs on all generations
aco/optimizer: convert extract_vector with index 0 into parallelcopies if possible
radv: don’t vectorize shift operations
aco: fix VCC hint on boolean subgroup operations
aco: fix nir_intrinsic_ballot with wave32
aco: fix shared VGPR allocation on RDNA2
aco: change gpr_alloc_granule to full alignment
aco: refactor GPR limit calculation
aco: don’t decrease the vgpr_limit when encountering bpermute
aco: also consider VCC in get_reg_specified()
aco: check get_reg_specified() on register hints
aco: don’t abort() if disassembly fails
aco: use VCC as regular SGPR pair on GFX10
aco: don’t create unnecessary exec phi on merge blocks
aco: handle non-temp phi definitions and operands
aco: make all exec accesses non-temporaries
aco: remove dead code for the handling of exec temporaries
aco: fix assertion in insert_exec_mask pass
nir: lower load_helper to is_helper if the shader uses demote()
nir: lower is/load_helper to zero if no helper lanes are needed
aco: remove special handling of load_helper_invocation
aco: don’t rematerialize exec
aco: value number VOPC instructions with different exec masks
aco/value_numbering: use can_eliminate() function to avoid unnecessary hashmap lookups
aco/optimizer: set VCC hint on new v_cmp_* definitions
aco/ra: allow VCC on SMEM sbase operand on GFX10+
.mailmap: fix email for Daniel Schürmann
aco/ra: split affinity creation into separate function
aco/ra: split register_file initialization into separate function
aco/ra: refactor SSA repairing during register allocation
aco/ra: iterate backwards when coalescing phis
aco/ra: allow m0 in get_reg_specified()
aco/ra: remove exec handling for phis
aco/spill: refactor spill decision taking
aco/spill: reload spilled exec masks directly to exec
aco/spill: spill phi constants and exec directly to VGPR
aco/spill: don’t count phis as variable access
aco/spill: refactor some more spill decision taking
aco/spill: refactor live-in registerDemand calculation
aco/spill: use correct next_use_distances at loop header
aco: lower p_spill with constants correctly
aco: fix kill flags on phi operands
aco: add new reindex_ssa() pass
aco/cssa: rewrite lower_to_cssa pass
aco/cssa: don’t create parallelcopies for constants and exec
Daniel Stone (3):
CI: Try really hard to get updated Windows TLS certs
CI: Trigger Windows builds for llvmpipe & Vulkan changes
CI: Change LAVA job visibility
Danylo Piliaiev (50):
turnip/ir3: handle image load/stores produced by AtomicLoad/Store
turnip: make GS use correct varyings size from previous stage
ir3: add debug option to override shader assembly
freedreno/ir3/parser: add cat7 support
turnip: don’t emit tess consts if they are not used
freedreno: clamp scissor bounds
freedreno/a2xx: fix scissors clamp bounds
turnip: enable inheritedQueries
turnip: consider HW limit on number of views when apply multipos opt
turnip: consider tile_max_h when calculating tiling config
turnip,freedreno/a6xx: tell hw the size of shared mem used by CS
turnip/ir3: check for bindless IBOs in atomic dests fixup
turnip: fix leak of tu_shader object during compute pipeline creation
ir3: prevent duplication of instruction’s dependencies
ir3: make mark_kill_path exit early if instr is already seen
ir3: disallow moving memory writes over discard
freedreno/hw: fix populating branch targets in isa_decode pre-pass
turnip: fix SP_HS_WAVE_INPUT_SIZE value
freedreno/a5xx: port handling of PIPE_BUFFER textures from a6xx
ir3: use OPC_GETBUF to get size of sampler buffers
turnip: lower device index to zero
turnip: fill VkMemoryDedicatedRequirements
turnip: set zmode to A6XX_EARLY_Z if FS forces early fragment test
turnip: implement intrinsic_vulkan_resource_reindex
ci/freedreno: run freedreno jobs on any change in src/freedreno/
ir3: fix oob access to regs array for getbuf,getinfo,rgetinfo
ir3/isa,parser: fix encoding and parsing of bindless s2en SAM
ir3: match mova1 mnemonic when writing to A1
freedreno/isa: assert if field’s range is out of bitset’s range
ir3: disallow .sat on SEL instructions
ir3: update info about applicability of saturation modifier
turnip: expose several already implemented extensions
nir: add nir_shader_as_str function
turnip: implement VK_KHR_pipeline_executable_properties
turnip: clamp to zero negative upper left corner of viewport
turnip,ir3: account for dispatch group offsets
freedreno/a6xx: copy full 64bit of primitive counter
freedreno/a6xx: fix primitive counters debug output
ir3/isa: account for randomly set by blob lowest bit of ibo atomics
glsl/linker: Fix attempts to split up 64bit varyings between slots
glsl/linker: Fix xfb with explicit locations and 64bit types
ir3: nir_op_f2f16 should round to even
ir3: convert shift amount to 16b for 16b shifts
turnip: enable infinities for f16 math and document the register
turnip: enable VK_KHR_16bit_storage on A650
turnip: handle format list for compressed formats
docs: mark float_controls,float16_int8,16bit_storage as done on Turnip
turnip: fix alignment of non-32b types in workgroup memory
turnip: implement variableMultisampleRate
turnip: support copying both aspects of D32_SFLOAT_S8_UINT
Dave Airlie (163):
device-select-layer: update for vulkan 1.2
lavapipe: fix missing piece of VK_KHR_get_physical_device_properties2
vk-device-select: add device group support
lavapipe: refactor image surface creation
lavapipe: rewrite attachment clearing for conditional rendering.
gallium: add a cond rendering hook for vulkan.
llvmpipe: handle vulkan conditional rendering
lavapipe: add VK_EXT_conditional_rendering support.
CI: add lavapipe to llvmpipe rules.
lavapipe: add support for external memory/fd/sempahore extensions
llvmpipe: handle firstvertex for vulkan draw parameters
lavapipe: handle shader draw parameters
lavapipe: add missing loader interface negoitation
lavapipe: move to subclassing instance/physical device.
lavapipe: add missing wsi entrypoint.
lavapipe: sort extensions in proper order.
lavapipe: use common dispatch layer.
radv: move queue object to a common base object
radv: remove all entrypoint enabled debug option
radv: move to subclassed instance/physical_device structs
radv: port to using common dispatch code.
zink: don’t pick a cpu device ever.
llvmpipe: add a mutex around debug resource tracking
llvmpipe: fix use after free with fs variant cleanup
lavapipe: reset shader constant buffers after execution
glsl: fix leak in gl_nir_link_uniform_blocks
llvmpipe: enable GL spir-v support
util/format: add helper to check if a format is scaled.
llvmpipe: don’t support scaled formats outside vertex buffers
lavapipe: add support for 2/10/10/10 scaled formats.
lavapipe: add support for missing 10/10/10/2 formats.
lavapipe: add reference counting to descriptor set layout
lavapipe: avoid pointer to pipeline layout in execution
lavapipe: set viewport state dirty on first execute
lavapipe: implement physical device group enumeration
lavapipe/meson: drop megadrivers build req
lavapipe: fix some void ptr arithmetic
lavapipe: use msvc compatible 0 init
lavepipe: some misc msvc fixes
lavapipe: make OPT macro MSVC compatible
lavapipe: use os_time for timing related things
vulkan/util: add api to reset object magic + private data.
radv: reset object base on recycled command buffers
tu: reset object base on recycled command buffers
lavapipe: reset object base on recycled command buffers
util: add optimised memset64
u_surface: use optimised memset64
llvmpipe: zs clear use 64-bit memset
lavapipe: use clear interface for renderpass clears
glx: proposed fix for setSwapInterval
zink: use extensioned draw indirect functions.
zink/ci: update results now that we are testing zink/lavapipe
lavapipe: add calibrated timestamp support
zink/ci: update results for GL 3.3 testing enables
zink/ci: disable arb_timer_query tests
lavapipe: use the common icd generator
lavapipe: fix msvc initialiser
lavapipe: add dll definition file instead of using PUBLIC
lavapipe: fix icd generation for windows
meson/llvm: add native for gallium swrast
lavapipe: handle tessellation domain winding
lavapipe: enable KHR_maintenance2
lavapipe: enable KHR_maintenace3
lavapipe: fix descriptor set layout freeing.
lavapipe: fix depth texturing swizzle
lavapipe: use null probe path on win32
ci: try building lavapipe on windows
zink/instance: work with vulkan 1.0 and later loader.
lavapipe: expose a 1.0 vulkan API for now.
lavapipe: Define supported extensions in C
lavapipe: VK_EXT_extended_dynamic_state support
lavapipe: reorder descriptor set stages to get correct binding
lavapipe: sort bindings before creating descriptor set
clover: fix array images view creation
lavapipe: fix pipeline vp/scissor mixup.
lavapipe: fix dynamic viewport/scissor pipeline emission
draw: fix uses viewport index for tess eval shader
draw/prim_assembler: write correct decomposed primitive lengths
llvmpipe: add support for shader viewport layer
lavapipe: enable EXT_shader_viewport_index_layer
zink/ci: update results after layer extensions enabled in lavapipe
util/panfrost/glsl: rename BITSET_LAST_BIT to BITSET_LAST_BIT_SIZED
util/bitset: add a new last bit api
shader_info: convert textures_used to a bitset.
gallium: add a sampler reduction cap + settings
gallium: add a view mask to the draw command
gallivm: mark subpass input attachments as 2d arrays
gallivm: add support for load_view_index intrinsic
draw: add interface to notify renderer of the current view index
draw: refactor out the instances drawing code
draw: add view_mask rendering support
draw: pass the view index to the render driver
draw/vs: pass the view index to the vertex shader
draw: add tess/gs support for multiview index
llvmpipe: add the view index callback from draw
llvmpipe: add view index support to rasterizer
lavapipe: add clear support for multiview
lavapipe: add draw support for multiview
lavapipe: add input attachment support for multiview
lavapipe: add render pass support for multiview
lavapipe: enable KHR_multiview
llvmpipe: add reduction mode support
lavapipe: add EXT_sampler_filter_minmax support
lavapipe: add support for VK_KHR_create_renderpass2
lavapipe: move queue to base object
lavapipe: move to the common casting interfaces
lavapipe: move to common create render pass code
lavapipe: add single ssbo variable pointer support.
docs: update lavapipe features.txt
lavapipe: enable KHR_uniform_buffer_standard_layout
lavapipe: enable EXT_scalar_block_layout
lavapipe: add missing break
lavapipe: fix writing availability for queries.
lavapipe: add host query reset
gallivm: convert packing to uint64 not double
lavapipe: only init immutable samplers for correct types.
lavapipe: add support for KHR_buffer_device_address.
lavapipe: bump maxMemoryAllocationCount
lavapipe: fix image format properties
lavapipe: add missing sampler minmax properties
lavapipe: add missing device group api
lavapipe: drop unused vk_format in image struct
lavapipe: fix templated descriptor updates
gallivm: fix non-32bit ubo loads
gallivm/nir: handle bool registers.
nir: port fp16 casting code from dxil
nir: lower 64-bit floats to 32-bit first.
gallivm: use fp16 casts lowering
lavapipe: enable 8/16-bit storage extensions
llvmpipe: fix cube image size query
st/glthread: allow for invalid L3 cache id.
util: rework AMD cpu L3 cache affinity code.
gallivm: add 64-bit atomic support for ssbo/shared.
gallivm: add 64-bit atomic global support
lavapipe: enable KHR_shader_atomic_int64
lavapipe: only reference pCounterBuffers if non-NULL
lavapipe: fail out if spirv->nir fails
lavapipe: fix only clearing depth or stencil paths.
zink/ci: update results after lavapipe clear fixes
lavapipe: add support for KHR_imageless_framebuffer
drisw: move zink down the list below the sw drivers.
zink/ci: handle getting correct drisw driver.
llvmpipe: when depth clamp is disable clamp to 0.0/1.0
llvmpipe: always take depth clamping from state tracker
ci: update zink/virgl results for depth clamping fixes
lavapipe: add vulkan 1.1 properties/features apis
lavapipe: fix missing protected memory properties
gallivm: add subgroup vote 64-bit and feq support.
gallivm: move get_flt_bld to header.
gallivm: add subgroup system values support
gallivm: add subgroup elect intrinsic support.
gallivm: add subgroup reduction + in/ex scan support
gallivm: add subgroup ballot support
gallivm: add subgroup read invocation support
gallivm: add subgroup lowering support
gallivm: add compute shader subgroup system values support
lavapipe: enable subgroups features
lavapipe: enable correct workgroup sizing
lavapipe: enable Vulkan 1.1 support
docs: update lavapipe bits for 1.1
lavapipe: add vk1.1 image swapchain support
lavapipe: add dummy sampler ycbcr conversion
lavapipe: fix mipmapped resolves.
David McFarland (1):
radv: fix divide by zero with no tesselation params
Douglas Anderson (1):
gallium/indices: Use “__restrict” to help the compiler
Drew Davenport (1):
radeonsi: Report multi-plane formats as unsupported
Dylan Baker (33):
VERSION: bump for 21.1.0 cycle
docs: add release notes for 20.3.3
docs: Add sha256sum for 20.3.3
docs: update calendar and link releases notes for 20.3.3
docs: update calendar for 21.0.0-rc1
bin/post_version: convert the csv.reader into a concrete list
docs: add release notes for 20.3.4
docs: Add sha256sum for 20.3.4
docs: update calendar and link releases notes for 20.3.4
docs: update calendar for 21.0.0-rc2
docs: update calendar for 21.0.0-rc3
Scons: check for timespec_get on windows as well as unices
docs: Remove 21.0 features from features_new.txt
docs: add release notes for 21.0.0
docs: update calendar and link releases notes for 21.0.0
docs: Add calendar entries for 21.0 release.
docs: Extend calendar entries for 21.0 by 1 releases.
docs: Add calendar entries for 21.1 release candidates.
docs: add release notes for 20.3.5
docs: Add hashes for 20.3.5
docs: update calendar and link releases notes for 20.3.5
docs: add release notes for 21.0.1
docs: Add 21.0.1 hashes
docs: update calendar and link releases notes for 21.0.1
docs: add release notes for 21.0.2
relnotes: Add sha256sum for 21.0.2
docs: update calendar and link releases notes for 21.0.2
meson: OpenMP is supposed to be optional
.pick_status.json: Update to ee9b744cb5d1466960e78b1de44ad345590e348c
VERSION: bump for 21.1.0-rc3
.pick_status.json: Update to cbd6e5f2e592a9834a03004a473537f25aea4336
.pick_status.json: Update to ede0b3c643279f4126fb10552a2f1d00be27f16d
.pick_status.json: Update to b80720acb13e1014aea89e6bd25f22d43df85356
Edward O’Callaghan (1):
clover: Implement CL_MEM_OBJECT_IMAGE1D
Eleni Maria Stea (7):
anv: Added the VK_EXT_sample_locations extension to the anv_extensions list
anv: Implement physical device properties for VK_EXT_sample_locations
anv/state: Take explicit sample locations in emit helpers
anv: Add support for sample locations
anv: Removed unused header file
anv: Enabled the VK_EXT_sample_locations extension
iris: fix in fences backend for ext_external_objects edge case
Ella-0 (1):
glsl: build without bison
Enrico Galli (2):
microsoft/spirv_to_dxil: Add support for load_vulkan_descriptor
microsoft/spirv_to_dxil: Use non-zero exit code on failed compilations
Eric Anholt (207):
gallium/ttn: Add support for TGSI_OPCODE_I64NEG/ABS.
gallium/ntt: Stop lowering integer source mods.
gallium/tgsi: Assert that we don’t see integer abs modifiers.
gallium/tgsi: Remove support for f64 src modifiers.
gallium/tgsi: Rewrite the docs on source modifiers.
gallium/tgsi: garbage collect unused TGSI_UTIL_SIGN_MODE.
mesa/st: Make a single helper for the NIR-to-TGSI transfer.
mesa/st: Lower shader images before handing off to NIR-to-TGSI.
mesa/st: Dump nir-to-tgsi output when ST_DEBUG=tgsi or nir is set.
gallium/ntt: Don’t vectorize IBFE/UBFE/BFI.
gallium/ntt: Add support for store_per_vertex_output.
gallium/ntt: Avoid referencing undefined channels of system values.
ci/freedreno: Mark some a5xx separate_shader tests as xfails.
ci/freedreno: Fix up the xfail/flake handling of a3xx texture functions.
ci/freedreno: Remove a bunch of stale flakes from a3xx.
ci/freedreno: Drop some long-unseen a5xx flakes.
ci/freedreno: Drop skip list stuff from a5xx flakes.
ci/freedreno: Remove some long-unseen a6xx known flakes.
util/format: Fix pack/unpack of A1R5G5B5_UINT.
mesa: Add some little unit tests showing format unpack behavior.
mesa: Drop incorrect statement about Z unpack behavior.
mesa: Replace the float[4] unpack code with util/format’s.
mesa: Make _mesa_unpack_rgba_block() use the u_format pack/unpack.
util: Move most of src/mesa/main/format_utils.h to util/format/
util: Fix UBSan failure on _mesa_unorm_to_unorm.
util: Fix rounding of unpack_unorm8 from small unorm formats.
mesa: Reuse util_format’s unpack_8unorm.
mesa: Reuse util_format’s unpack functions for pure integer formats.
util: Give a reasonable answer when unpacking z32unorm from floats.
mesa: Use a bunch of util functions for Z/S unpacking.
mesa: Move the rest of format_unpack.py out of code generation.
util/format: Simplify the generated unpack code.
swrast: Use util_format_write_4/4ub for the scattered pixel writes.
mesa/main: Replace float pack function with util_format_pack_rgba().
mesa/main: Replace the uint format packing code with util/format’s.
ci/piglit: Upgrade to a newer piglit in our containers.
ci/freedreno: Fix xfail setup for sampler3d_float_vertex.
nir_to_tgsi: Store directly to TGSI outputs when possible.
r300,i915g: Report no shader buffers or images on non-TCL HW.
nir_to_tgsi: Fix buffer overflow in atomic image compswap.
swr: Don’t report support for shader images.
panfrost: Stub out set_shader_images().
gallium: Fix leak of shader images on context destruction.
util/bitset: Avoid dereferencing the bitset for size == 0.
ci: Add a fractional deqp run of softpipe with asan enabled.
freedreno/a6xx: Skip the body of emit_state if we’re clean.
freedreno: Move blend gmem checks to a blend dirty state check.
freedreno: Move framebuffer state checks under a ctx->dirty flag.
freedreno: Skip some batch dependency tracking if !ctx->dirty.
ci/freedreno: Detect cheza HFI errors and restart the run.
ci/freedreno: Ban vs-clip-vertex-enables which flakes in CI.
ci/freedreno: Ban more flaky clip-enables tests.
ci/freedreno: Make a630 piglit_shader run a manual run, too.
freedreno: Use a real type instead of void * for the fd_batch->key.
freedreno: Early-out from the resource write path when we’re the writer.
freedreno: Remove duplicate bc invalidate on flush_write_batch().
ci: Update baremetal kernel to 5.11-rc5 plus patches.
mesa/st: Allocate the gl_context with 16-byte alignment.
ci/freedreno: Drop pointless GIT_STRATEGY setting for a630.
ci/freedreno: Use the new nginx cache for trace downloads.
ci/freedreno: Use the http cache for artifacts downloads, too.
ci/docs: Update CI farm requirements suggestions.
docs/ci: Document setting up the http cache for traces.
ci/lava+baremetal: Add an xserver to the root fs.
ci/freedreno: Do our piglit runs against Xorg.
ci/freedreno: Add Valve games and other traces now that we have GLX.
freedreno: Make sure that queries are disabled during shadow blits.
freedreno: rename batch->active_providers to query_providers_used.
freedreno: Backport a5xx/a6xx fix for active query handling.
freedreno: Drop pointless clear of used providers.
freedreno/a6xx: Skip guessing VSC size with indirect TF draw counts.
docs: Document PIPE_CAP_STREAM_OUTPUT_PAUSE_RESUME.
freedreno/a6xx: Add support for glDrawTransformFeedback().
ci/deqp: Bump runner to 0.5.1 for recent runtime perf improvements.
ci/freedreno: bump VK coverage to 1/4 of the CTS.
ci/freedreno: Run a3xx gles3 in parallel and increase coverage.
ci/virgl: Fix GLES31 testing on desktop GL.
freedreno: Force updating active queries on batch reordering.
freedreno: Remove FD_STAGE_* in favor of a “disable_all” flag.
freedreno/a5xx: Don’t forget to count our custom blits against queries.
mesa/st: Always precompile the first shader variant.
mesa/st: Assume that the default variant is always first in the list.
vc4: Remove vestiges of alpha test lowering.
vc4: Stop advertising support for PIPE_CAP_TWO_SIDED_COLOR.
vc4: Stop advertising support for VS color clamping.
v3d: Clean up vestiges of alpha test lowering.
v3d: Stop advertising support for PIPE_CAP_TWO_SIDED_COLOR.
v3d: Stop advertising support for PIPE_CAP_*_COLOR_CLAMPED.
v3d: Stop advertising support for flat shading.
gallium: Document behavior of more lowering pipe caps.
freedreno: Add missing dep on freedreno tracepoints.
gallium: Flip the default value of PIPE_CAP_SHAREABLE_SHADERS.
virgl: Drop a context dependency from part of the shader compile path.
v3d/qpu: Avoid leaking memory in the QPU disasm test.
mesa/st: Make sure to unbind cb0 on transition away from gs/tess shaders.
ci: Allow better customization of the name of the artifacts for minio.
ci/freedreno: Add a fractional gles31 run with asan enabled.
ci/freedreno: Drop the “arm64” in front of job names.
ci: Move specific driver testing to separate files in separate dirs.
ci/freedreno: Fix a5xx piglit runs.
ci/freedreno: Remove stray BM_DTB definition.
ci/bare-metal: Use an upstream kernel for db820c.
ci/a5xx: Update the piglit expectations.
ci/a5xx: Increase our dEQP GLES3 fraction by 4x.
ci: Move the dEQP and traces expectations to the per-driver CI dirs.
ci: Move the piglit expectations lists to the per-driver CI dirs.
ci/zink: Add tests of gles2, gles3, and gl33 on lavapipe.
zink: Use mesa_loge() for should-never-be-reached initialization errors.
zink: Remove NULL checks after GET_PROC_ADDR_INSTANCE().
softpipe: Fix the const buffer overflow check.
mesa: Get the FXT1 compressor/decompressor off of GL types.
mesa: Move the FXT1 compressor/decompressor to util/
llvmpipe: Enable FXT1 texture decompression.
v3d: Replace driver lowering of GL_CLAMP with mesa/st’s.
ci/piglit: Stop including the test counts at the end of expectations.
ci/iris: Move the traces yml file to the driver-specific dir.
mesa: Always make sure uniform storage doesn’t get reallocated.
freedreno: Remove uniform variables after finalizing NIR.
freedreno: Drop custom driver lowering of two-sided color.
freedreno: Drop custom driver lowering of GL’s color clamping.
freedreno: Use the mesa/st frontend lowering of GL_CLAMP.
freedreno/a5xx+: Stop recompiling on texture samples changes.
freedreno/a5xx+: Drop the unused no_decode_srgb flag.
freedreno/a5xx: Fix cube image load/stores.
nir: Add a nir_src_is_undef() helper, like nir_src_is_const().
nir/vec_to_movs: Don’t generate MOVs for undef channels.
ci: Move deqp-default-skips.txt back to .gitlab-ci/
ci/lava: Move the per-driver gitlab-ci.yml to each driver.
ci/lava: Move the driver expectation files to the per-driver CI dir.
tgsi_exec: Roll the loops for condmask handling.
tgsi_exec: Jump over entirely non-taken THEN or ELSE branches.
ci/freedreno: Also retest when only CI configuration changes.
ci/freedreno: Switch the fastboot boards to using nfsroot.
ci/a5xx: Run all of gles2 in one job.
ci/a3xx: Run all of GLES3 dEQP.
ci/a5xx: Increase the gles3/31 coverage.
ci/a5xx: Update piglit expectations.
ci/zink: Add another primitive restart flake.
ci/turnip: Mark a flaky WSI test.
lima: stop encoding the texture format in the shader key
lima: don’t look at dirty bits for setup of FS key
lima: upload the shader to a BO at shader creation
lima: avoid stomping over bound shader state when creating new shaders
nir-to-tgsi: Fix handling of partial writemasks on SSA/REG decls.
docs: Add some documentation of game GL buffer object mapping behavior.
freedreno/a5xx: Introduce an event write helper like a6xx has.
freedreno/a5xx: Flush depth at the end of sysmem, like a6xx does.
ci/freedreno: Mark another a5xx TF flake.
u_format: Mark the generated pack/unpack src/dst args as restrict.
mesa/st: Unify st_get_vp_variant() and st_get_common_variant().
mesa/st: Add perf debug for draw-time variant compiles.
mesa/st: Fix precompile misses on compat GL VSes writing to color outputs.
virgl: Update GLES expectations.
ci/freedreno: Add three more a5xx flakes from the last day.
freedreno/a5xx: Fix the texel buffer alignment requirement.
freedreno/a5xx: Fix the max texture buffer size.
ci/panfrost: Disable t860/radeonsi testing while the runners are struggling.
ci: Bump deqp-runner to v0.6.3.
ci/freedreno: Switch the piglit testing to the new piglit runner.
ci/bare-metal: Restart a run on intermittent kernel lockups.
ci/freedreno: Mark an a630 piglit flake from async shader compiling.
ci/freedreno: Mark the rest of the glx_arb_sync_control@timing as flakes.
nir_to_tgsi: Respect PIPE_SHADER_CAP_TGSI_SQRT_SUPPORTED.
freedreno/a5xx: Fix stream-output binning handling.
freedreno/ir3: Demote centroid usage to pixel on non-msaa.
ci/freedreno: Mark all of dEQP TF as flaky.
ci/bare-metal: Move the db820c lockup detect to the right boot script.
ci/freedreno: Mark glx-swap-copy as a flake on a630.
freedreno/a6xx: Rename the RB_BLIT_INFO.INTEGER field to SAMPLE_0.
freedreno/a6xx: Disable sample averaging on depth/stencil resolves.
freedreno: Move the ir3 linked shader cache to the context.
freedreno/a3xx: Switch to using ir3_cache for looking up our VS/FS.
freedreno/a4xx: Switch to using ir3_cache for looking up our VS/FS
freedreno/a5xx: Switch to using ir3_cache for looking up our VS/FS
turnip: Fix KGSL build since common dispatch rework.
broadcom: Disbale CLIF dumping when libexpat isn’t available.
ci/android: Make sure we don’t detect system libexpat.
ci/android: Build the v3dv driver.
iris: Flag for resolves when stencil enable changes, too.
freedreno: Assert that TF prims generated can ignore active_queries.
freedreno/ir3: Move max-tf-vtx calculation to a .c file
freedreno: Move max-tf-vtx calculation to just the HW that needs it.
freedreno: Move the primitives generated/written updates after the draw.
freedreno: Don’t count SW TF queries on a6xx.
freedreno: Clamp TF prims written to buffer size pre-a6xx.
ci/freedreno: Mark a630 as flaky on arb_draw_indirect-transform-feedback
nir: Update clip_distance_array_size in clip lowering.
freedreno/a6xx: Use the frontend userclip lowering.
freedreno/a5xx: Add support for clip distances and use them for userclip.
freedreno/a5xx: Use VALIDREG/CONDREG like a6xx do.
ci/freedreno: Demote a630-asan to a manual test for now.
ci: Drop the custom db820c kernel/dtb from the kernel+rootfs.
ci/freedreno: Add more new traces for a630 (minetest, TDM, pioneer, glyphy).
ci/freedreno: Rename a306-test and a530-test to drop “arm64” from the name.
ci/freedreno: Add trace testing on a3xx, a5xx.
freedreno/a5xx: Fix alpha test vs early Z bugs.
freedreno/a6xx: Fix alpha tests.
ci/freedreno: Switch to the trimmed glxgears trace.
ci/freedreno: Fix up the a5xx border color flake annotation.
ci: Uprev deqp runner to 0.6.5.
ci: Uprev piglit to 6a4be9e9946d (“piglit: NOTE! Default branch is now main”)
ci: bump bare-metal kernel to bring in an a530 stability fix
freedreno: Fix YUV sampler regression.
nir_to_tgsi: Use ARL instead of UARL in the !native_integers case.
nir: Generate load_ubo_vec4 directly for !PIPE_CAP_NATIVE_INTEGERS
freedreno/a6xx: Don’t try to do Z-as-RGBA blits for mismatched formats.
ci/virgl: Mark a couple of new Crash tests as flakes.
Eric Engestrom (12):
VERSION: bump to 21.1.0-rc1
.pick_status.json: Update to c74d93cf0187e07cdfacc448a947a8cae485eb41
.pick_status.json: Update to 95d9d811c91076d50385b2fbd330335b68688c69
.pick_status.json: Update to fcb5ba58165cd407408f8dd9a102f0c5e16a9956
VERSION: bump for 21.1.0-rc2
.pick_status.json: Mark 8acf361db4190aa5f7c788019d1e42d1df031b81 as denominated
.pick_status.json: Update to 35a28e038107410bb6a733c51cbd267aa79a4b20
.pick_status.json: Update to 7e905bd00f32b4fa48689a8e6266b145662cfc48
.pick_status.json: Update to 72eca47c660b6c6051be5a5a80660ae765ecbaa5
.pick_status.json: Update to f3d2fade82c168a7ffffa4bd7bf22585c45c711b
.pick_status.json: Update to f5d6a1b916fb163ee72e6a6f356937b1fbac53e0
.pick_status.json: Update to 1d418e79b8a0f4270775277b7115b88ac4c77113
Erico Nunes (15):
lima: introduce fs and vs shader cache
lima/ppir: fix creation of mov node for non-ssa tex dest
lima: set yuv formats as external_only
lima: enable r and rg pixel formats again
lima: always set stride in texture descriptor
lima: implement GL_EXT_texture_swizzle
docs/features: add lima features
lima: fix max sampler views
lima: run nir dce after nir_lower_vec_to_movs
lima/ppir: remove liveness info from blocks
lima/ppir: remove use of live_out
lima/ppir: rework liveness data structures to bitset
lima: fix half float render
lima: enable rg formats for fp16 render
lima: increase epsilon for depthrange near == far
Erik Faye-Lund (158):
zink: handle NULL views in zink_set_sampler_views
zink: fix vertex-stride wrangling
docs: fix sphinx-warnings due to lacking escaping
docs: fix broken link
docs: turn non-code into comment
docs/features: add missing features for zink
docs/features: remove a few redundant zink mentions
zink: always expose linear float textures
zink: respect feature-cap for robust buffer access
zink: respect feature-cap for independent blending
zink: respect feature-cap for sample-shading
zink: respect feature-cap for multi-draw indirect
zink: check for extension instead of function
zink: require vulkan memory model for tesselation
zink: make all xfb caps depend on extension
zink: respect fragment-shader depth-layout
zink: clone shader before lowering clip_halfz
docs/zink: add missing colon
docs/zink: add two missing required features
docs/zink: document the independentBlend requirement for GL3
docs/zink: fix phrasing of GL 3.3 requirements
docs/zink: add GL 4.0 requirements
docs/zink: add GL 4.1 requirements
docs/zink: add GL 4.2 requirements
docs/features: mark off two more extensions for zink
docs/zink: correct vk version for GL 4.2
mesa/main: remove leftover bumpmap code
compiler/nir: add texcoord replace lowering pass
gallium/st: lower point-sprites if not supported
zink: request texcoord replace lowering
docs/features: mark ssbos as done for zink
zink: remove stale TODO
zink: be more careful about limits when unsupported
zink: correct return-type for function
zink: only emit SpvCapabilityDerivativeControl when needed
zink: only emit cap when needed
zik: correct spir-v caps for textures and images
zink: do not insist shaders come from glsl
zink: add a get_primitive_mode-helper
zink: add a get_spacing-helper
zink: refactor vertex-order emitting
zink: wrap some long lines
docs: fix invalid rst syntax
zink: check for error when calling vkEnumeratePhysicalDevices
zink: explicitly check for VK_NULL_HANDLE
zink: support using lavapipe
CI: always expose docs artifacts
ci: make sure all lava-builders have libvulkan
ci: run piglit on zink with lavapipe
lavapipe: report correct value for minMemoryMapAlignment
ci: document arm oddity in build-rules
zink: correctly handle 64 valid timestamp bits
zink: enable excluded test
ci: enable max texture size tests for zink
lavapipe: handle null-buffers for xfb
ci: disable sporadically failing test
zink: drop extra set of parens
zink: do not use extra staging resource unless needed
zink: don’t always require linear display-targets
zink: limit host-visible bind-flags
zink: ignore irrelevant bind-flags
zink: use gallium api to copy to display-target
zink: add X32_S8X24 format
zink: correct inaccurate comment
lavapipe: fix primitive-restart for uint8 indices
zink: fix emulation of no mipfilter
zink: fix free of ralloced pointer
gallium/st: fix shader_has_one_variant
gallium/st: fix shader_has_one_variant
gallium/st: reserve space in default uniform block for lowered constants
docs: remove stray newline
docs: remove excessive wrapping
docs: remove excessive quoting
docs: document zink GL 4.3 requirements
docs: document zink GL 4.4 requirements
docs: document zink GL 4.5 requirements
docs: document zink GL 4.6 requirements
docs: simplify format requirements
zink: factor out interpolation to helper
zink: emit all interpolation modes
zink: check for pipeline statistics feature
zink: check for depth-bias-clamp feature
zink: check for stores and atomics features
zink: add missing required feature
zink: check for mirror-clamp extension
zink: fix vector comparison
zink: drop bool attempt in float vector compares
zink: do not open-code vector-compares
zink: follow spir-v 1.0 spec
docs: Add 21.0.0 hashes
zink: tighten emitted image spir-v caps
zink: remove no-longer-needed clipdist1 patching
frontends/va: correct check for invalid format
zink: handle errors in nir_to_spirv
zink: pre-populate locations in variables
zink: do not depend on shader_slots_reserved for xfb
zink: use pre-populated shader-locations
lavapipe: report correct value for maxTexelBufferElements
docs: do not try to copy missing file
compiler/glsl: avoid null-pointer deref
docs: remove bogus zink-requirement
docs: remove zink incorrect requirement
zink: do not enable unused extension
docs: clarify VK_KHR_external_memory requirement
zink: check base-requirements
zink: assert that pstage is within range
zink: simplify shader-removal
zink: document why we’re calling pipe_shader_type_from_mesa
docs: appling -> applying
docs: sytem -> system
docs: ie. -> i.e.
docs: vulkan -> Vulkan
zink: do not request scoped memory barriers
docs: optimisation -> optimization
docs: opencl -> OpenCL
docs: Xorg -> X.Org
docs: nops -> NOPs
docs: lod -> LOD
docs: lex / yacc -> Lex / Yacc
docs: dfsm -> DFSM
docs: fix incorrect possessive form
docs: fix invalid rst
docs: fix rst-quoting issues in release-notes
docs: spell out full name of gitlab instance
docs: spell out development
docs: spell out environment
docs: spell out freedesktop.org
docs: no-op’d -> disabled
docs: fix release notes for 20.3.5
ci: turn sphinx-build warnings into errors
bin/gen_release_notes.py: more robust rST escaping
compiler/glsl: correct the number of string-arguments
compiler/glsl: fix volatile string
compiler/glsl: clean up output
glsl: fix is_integer_16_32
glsl: fix int16 type
glsl: tolerate int16 loop counters
gallium/st: correct range for float16
gallium/st: correct range for int16
zink: document scalarBlockLayout requirement
zink: fix typo in function name
compiler/glsl: drop rogue argument to _mesa_glsl_error
compiler/glsl: do not cast struct to string
lavapipe: do not subtract 8 from enum
lavapipe: check all vertex-stages
lavapipe: check all graphics stages
lavapipe: ask pipe-driver for int16 support
zink: do not clear on cpu
zink: fall back from cached to non-cached memory
zink: do not dereference NULL pointer
zink: verify that src/dst support blitting
zink: verify that source-format support linear-filter
zink: fix stencil-export cap emission
gallivm: handle 16-bit input in i2b32
zink: do not read outside of array
zink: do not require vulkan memory model for shader-images
zink: correct image cap checks
zink: fix shader-image requirements
Fan Yugang (1):
intel/tools: Show unknown instructions in decoded state.
Francisco Jerez (9):
intel/gen12: Fix memory corruption issues in fused Gen12 parts.
intel/genxml: Fix pixel hashing 3DSTATE_3D_MODE field definitions for Gen12 and Gen12.5.
intel/genxml: Define 3DSTATE_SUBSLICE_HASH_TABLE command for Gen12 and Gen12.5.
intel/dev: Implement pixel pipe subslice counting for Gen12+.
iris/gen11+: Calculate pixel hashing tables instead of hardcoding.
iris/gen12: Implement programming of pixel pipe hashing tables.
anv/gen11+: Calculate pixel hashing tables instead of hardcoding.
anv/gen12: Implement programming of pixel pipe hashing tables.
iris/gen12: Work around push constant corruption on context switch.
Georg Lehmann (1):
vulkan/device_select: Only call vkGetPhysicalDeviceProperties2 if the device supports it.
Gert Wollny (89):
r600/nir: clone shader before first query to shader key
r600/sfn: fix use of b32all/and
r600: Add flags to INTERP_X and INTERP_Z two-slot ops
r600/sb: Add support for INTERP_X and INTERP_Z ops
r600/nir: pass array info to r600_shader for sb
r600/sfn: update shader array info
r600/sfn: Keep array registers alive for the whole shader
r600/sb: fix boundary assert for mem-instruction decoding
r600/sb: fall back to un-optimized byte code when ra_init fails
r600: Enable sb also for NIR
compiler/nir: Add support for lowering stores with nir_lower_instruction
r600/sfn: Fix use of cnde_int for bcsel
r600/sfn: Set unnormalized flag for z-coordinate when fetching from array
r600/sfn: Add the position input as varying
r600/sfn: Fix FS inputs when reading from the same position
r600/sfn: Fix dual source blend lowered to FRAG_DATA
r600/sfn: Use the constant buffer ID when given
gallium/tgsi_to_nir: Handle SAMPLE_MASK output in FS
gallium/tgsi-to-nir: Take property NUM_CLIPDIST_ENABLED into account
r600/sfn: Handle memory_barrier_atomic_counters
r600/sfn: Fix indirect_file flag for IMAGES
r600/sfn: remove duplicate barriers
r600/sfn: Base instr lowering class on nir_lower_instruction code
nir: Add flag to tex instruction to indicate lowering cube to array
nir: Add r600 specific CUBE opcode to evaluate cube texture coords and face
r600/sfn: Add support for cube_r600 instruction
r600/sfn: add lowering pass for cube textures
r600/sfn: fix gather with cube lowering
r600/sfn: use lower bool to int32 and lower int_tg4 only on shader clone
r600/sfn: use lowering pass for cube textures
r600/sfn: remove old cube texturing code
r600/sfn: Lower FS inputs to temps late and, and lower interpolate at
r600/sfn: set info about using helper_invocation to skip sb
r600/sfn: lower isign and iabs in nir
r600/sfn: Allow any channel for the helper invocation evaluation
r600: unify nir shader options evaluation
r600/sfn: remove code for nir_op_fsign since it is lowered
r600/sfn: remove unused emit_alu_op2_split_src_mods
r600/sfn: remove some old debug output
r600/sfn: encode component in address for local IO
nir: disaallow reordering for r600 shared load and remove component field
r600/sfn: handle querying the number of layers in cube arrays
r600/sfn: Fix loading TES gl_PatchVerticesIn
r600: Don’t optimize using source modifiers on literals
r600: Enable GLSL 450 for nir shaders.
r600/sfn: Update status
nir: Add r600 specific intrinsic for loading the tesselation coords
r600/sfn: lower intrinsic_load_tess_coord to driver version
r600/sfn: eliminate loading unused component loads from shared memory
virgl: implement support for PIPE_CAP_STRING_MARKER
r600/sfn: sort alu opcodes in switch statememt
r600/sfn: remove unused code
r600/sfn: fix buffer offset for ssbo writes
r600/sfn: Fix including/not including c++ parts of header
r600/sfn: lower bitfield_extract and bitfield_insert in NIR
r600/sfn: lower idiv, imod, etc in nir
r600/sfn remove some leftover debug output
nir: add opcodes for *find_msb_rev and lowering
nir: Add opcodes for fused comp + csel and optimizations
nir: Add r600 specific sin and cos variants
r600/sfn: Add algebraic lowering for fsin and fcos
r600/sfn: optimize comp+csel using fused ops
r600/sfn: lower find_msb variants to find_msb_rev
r60/sfn: don’t lower scomp
r600: Handle negate of second operator in TGSI_OPCODE_UADD
r600/sfn: Make some value pool functions private
r600/sfn: Add skelton for visitor pattern
r600/sfn: remove extra parameter from alu assemebly emission
r600/sfn: fix some formatting
r600/sfn: switch assembler creation to use visitor
r600/sfn: drop the local register mep
r600/sfn: lower VS IO and drop old deref code
r600/sfn: lowered FS output IO
r600/sfn: remove old deref code
r600/sfn: force dual source blend output handling in some cases
r600/sfn: remove find_msb lowering in driver
r600/sfn: clean up multi-sample texture load
r600/sfn: clean up value pool interface usage in emit_stream
r600/sfn: use get_temp_vec4 directly when fetching
r600/sfn: make allocate_temp_register private to valuepool
r600: Fix texture buffer offset alignment
r600: don’t set an index_bias for indirect draw calls
r600: Don’t advertise support for scaled int16 vertex formats
r600/sfn: allocate number of VS outputs based on max driver_location
r600/sfn: Only fetch the constants that are needed in fdd*
r600: Enable sb for nir only on specific request
Revert “r600: don’t set an index_bias for indirect draw calls”
Revert “r600: Don’t advertise support for scaled int16 vertex formats”
r600: don’t set an index_bias for indirect draw calls
Giovanni Mascellani (2):
disk_cache: Fail creation when cannot inizialize queue.
anv: Allow null handle in DestroyDescriptorUpdateTemplate.
Greg V (1):
meson: Add missing lavapipe dep
Gustavo Padovan (4):
gitlab-ci: extend x86_64 kernel config to suport Intel devices
gitlab-ci: build the iris gallium driver as well
gitlab-ci: add intel APL and GLK devices with manual triggers
traces-iris: fix expectation for Intel GLK
Hans-Kristian Arntzen (2):
radv: Take image alignment into account when allocating MUTABLE pool.
radv: Allocate buffer list for MUTABLE descriptor types as well.
Hoe Hao Cheng (19):
zink/codegen: add some new attributes to Extension
zink/codegen: make ‘struct’ optional in Version
zink/codegen: enable instance extension unconditionally if promoted
zink/codegen: codegen-ize load_instance_extensions()
zink/codegen: adding/fixing comments and copyright notice
zink/codegen: find promotion version using vulkan registry
zink: remove excessive checks for loader version
zink: expose PIPE_CAP_ANISOTROPIC_FILTER
zink: VK_KHR_draw_indirect_count is a device extension
zink/codegen: introduce ExtensionRegistry
zink/codegen: more validation in zink_instance
zink/codegen: introduce notion of non-standard extensions
zink/codegen: make zink_device_info accept vk.xml
zink/codegen: perform basic validation in zink_device_info
zink/codegen: validate has_properties and has_features
zink/codegen: fix type annotations
zink/codegen: do not enable extensions that are now core
zink: enable KHR_shader_draw_parameters on Vulkan <1.2
zink: fix detection of KHR_maintenance1/2
Hyunjun Ko (5):
turnip: Return correct value of tu6_load_state_size
nir: Set access at lower_ubo_vec4
ir3: fix has_src() to return correctly in ir3_nir_lower_tex_prefetch
ir3: Add nonuniform encodings to ir3 encoder and parser
turnip: Enable nonuniform descriptor indexing
Iago Toral Quiroga (93):
v3dv: only update uniforms for dirty descriptors if stage has descriptors
v3dv: disable early Z writes if Z writes are disabled
v3dv: don’t wait for idle on occlusion query pool resets
v3dv: use PIPE_TIMEOUT_INFINITE
v3dv: refactor checks for subpass attachment clears
v3dv: refactor checks for subpass attachment loading
v3dv: refactor checks for subpass attachment stores
v3dv: do not emit full tile buffers clears to handle Z/S clears
v3dv: enable early Z/S clears
v3dv: fix disabling Early Z for the whole frame
broadcom/compiler: fix indentation with TABs
broadcom/compiler: prepare TMU spilling code to account for TMU pipelining
broadcom/compiler: implement pipelining for general TMU operations
broadcom/compiler: support pipelining of tex instructions
broadcom/compiler: refactor image load/store TMU emission code
broadcom/compiler: support pipelining of image load/store instructions
broadcom/compiler: disable TMU pipelining if we fail to register allocate
broadcom/compiler: disallow spilling if TMU pipelining was enabled
broadcom/compiler: log spilling shaders to perf output
broadcom/compiler: let QPUs stall on TMU input/config overflows
v3dv: handle D/S buffer to image copies with the texel buffer path
v3dv: batch copies in the copy_buffer_to_image_blit path
v3dv: allow a component swizzle in copy_buffer_to_image_shader
v3d/common: use spaces instead of TABs
v3dv: serialize pipeline compilation when debugging shaders
v3dv: add a perf trace when a device is created with robust buffer access
v3d/compiler: fix QPU scheduler TMU sequence shuffling
broadcom/compiler: add V3D_QPU_WADDR_UNIFA
broadcom/compiler: pass a devinfo to check if an instruction writes to TMU
broadcom/compiler: name registers correctly based on V3D version
broadcom/compiler: don’t check for GFXH-1633 on V3D 4.2.x
broadcom/compiler: add a helper to check if an instruction writes unifa
broadcom/compiler: disallow unifa overlap with thread switch/end
broadcom/compiler: preserve ordering of unifa/ldunifa sequences
broadcom/compiler: ensure 3-slot delay between unifa and ldunifa
broadcom/compiler: disallow reading two uniforms in the same instruction
broadcom/compiler: do not DCE ldunifa
broadcom/compiler: emit ldunifarf when needed
broadcom/compiler: use unifa for UBO loads from uniform addresses
broadcom/compiler: don’t emit redundant ldunif
broadcom/compiler: use a helper function to decide on TMU spilling
broadcom/compiler: don’t dump shader-db stats for failed shaders
broadcom/compiler: fix ldunif optimization
broadcom/compiler: allow dead code elimination of unused trailing ldunifa
broadcom/compiler: remove unused leading ldunifa
broadcom/compiler: add a constant alu optimization pass
broadcom/compiler: skip unnecessary unifa writes
broadcom/compiler: use nir_opt_sink
v3dv: fix branching to large secondaries with more than one BCL buffer.
broadcom/compiler: fix DAG pre-remove for merged instructions
broadcom/compiler: fix indentation style
broadcom/compiler: track pipelineable ldvary sequences
broadcom/compiler: pipeline smooth ldvary sequences
broadcom/compiler: allow pipelining of flat and noperspective varyings
broadcom/compiler: ldvary pipelining tracking and documentation clean-ups
broadcom/compiler: drop the destination for unused ldunifa
broadcom/compiler: be more aggressive skipping unifa writes
broadcom/compiler: always restart ldvary pipelining when scheduling ldvary
broadcom/compiler: ldvary doesn’t implicitly write to r3 since V3D 4.1
broadcom/compiler: fix flags check for ldvary merge
broadcom/compiler: add an additional sanity check assert to the ldvary fixup
broadcom/compiler: move code block around
broadcom/compiler: simplify ldvary pipelining
broadcom/compiler: disallow ldunif during ldvary sequences if possible
v3dv: call util_cpu_detect() when initializing the instance
broadcom/compiler: flag wrtmuc with a read dependency on last_tmu_config
broadcom/compiler: be more flexible scheduling TMU writes
vulkan/util: call glsl_type_singleton_init_or_ref from vk_instance_init
compiler/glsl: call util_cpu_detect from glsl_type_singleton_init_or_ref
broadcom/compiler: fix end of tmu sequence detection
broadcom/compiler: use nir_opt_load_store_vectorize
broadcom/compiler: use nir_lower_wrmasks to simplify TMU general stores
broadcom/compiler: handle implicit uniform loads when optimizing constant alu
broadcom/compiler: optimize constant vfpack
broadcom/compiler: use nir_lower_undef_to_zero
v3dv/pipeline_cache: fix assert
broadcom/compiler: convert add to mul when possible to allow merge
broadcom/compiler: add a v3d_qpu_writes_accum helper
broadcom/compiler: try to fill up delay slots after a thrsw
broadcom/compiler: flag TMU read dependencies against last TMU config
broadcom/compiler: flag TMU reads with a read dependency on last TMU config
broadcom/compiler: dump instruction index when failing to pack instructions
broadcom/compiler: add a NOP count stat to shader-db
broadcom/compiler: try to fill up delay slots after a branch instruction
broadcom/compiler: try to fill up delay slots after unconditional branch
broadcom/compiler: implement restriction for branch after setmsf
broadcom/compiler: optimize branch emission for uniform break/continue
v3dv: fix index buffer binding
broadcom/compiler: add a definition for the unifa skip distance
broadcom/compiler: allow compilation strategies to limit minimum thread count
broadcom/compiler: sort constant UBO loads by index and offset
broadcom/compiler: rename unifa tracking fields
v3dv: fix descriptor set limits
Ian Romanick (33):
i965: Don’t advertise OpenGL 3.3+ if driconf disables GL_ARB_blend_func_extended
i965: Use allow_higher_compat_version option during screen initialization
i965: Don’t parse driconf again
nir/algebraic: Fix a >> #b << #b for sizes other than 32-bit
nir/algebraic: add patterns for a >> #b << #b and a << #b >> #b
nir/algebraic: Partially revert 3f782cdd2591
intel/eu/validate: Add some checks for CMP and CMPN
intel/compiler: Enable the ability to emit CMPN instructions
intel/compiler: Make the CMPN builder work like the CMP builder
intel/compiler: Use CMPN for min / max on Gen4 and Gen5
nir/algebraic: Fix some min/max of b2f replacements
nir/algebraic: Remove some redundant b2f logic-op reduction patterns
nir/algebraic: Add some max/min optimizations with 3 variables
nir/range-analysis: C++ linkage
nir/range_analysis: Handle vectors better in ssa_def_bits_used
intel/compiler: Silence unused parameter warnings in files that include brw_eu.h
intel: Silence unused parameter warnings in files that include gen_device_info.h
intel: Silence unused parameter warnings in files that include genX_pack.h
intel/compiler: Relax some conditions in try_copy_propagate
gallium/dri: Remove dri2_format_mapping::cpp
nir/search: Constify instruction parameter to search helpers
nir/algebraic: Apply addition property of equality more conservatively
nir/algebraic: Apply addition property of equality to the other ordering too
nir/range_analysis: Refactor fsat handling
nir/range_analysis: Add “is finite” range analysis tracking
nir/range_analysis: Add “is a number” range analysis tracking
nir/range_analysis: Fix analysis of fmin, fmax, or fsat with NaN source
nir/search: Use range analysis for is_finite
nir/range_analysis: Simplify analysis of bcsel
mesa: Add anything dynamically indexed before any non-dynamically indexed
mesa: Clean up _mesa_layout_parameters after previous commit
tgsi_exec: Fix NaN behavior of saturate
tgsi_exec: Fix NaN behavior of min and max
Icecream95 (60):
pan/bi: Lower 64-bit integers
pan/bi: Handle 64-bit pack and unpack operations
pan/bi: Add some compute intrinsic loads
pan/bi: Set compute lowering options
pan/bi: Improve interoperability of the command-line disassembler
pan/bi: Implement load/store intrinsics
pan/bi: Implement load_kernel_input
panfrost: Set bifrost_props for compute shaders
pan/bi: Improve unknown intrinsic error
panfrost: Use the correct NIR options for OpenCL on Bifrost
pan/bi: Use pan_nir_lower_64bit_intrin
panfrost: Add a sysval for local_group_size
panfrost: Add a sysval for local_work_dim
panfrost: Assert on sysval overflow
pan/mdg: Limit int64 vectorization
pan/mdg: Don’t reorder loads/stores past each other
pan/mdg: Allow 64-bit src_bitsize for comparison operations
pan/bi: Add w0 to the ‘h01’ swizzle bucket
pan/bi: Lower umul_high
panfrost: Set TLS for compute jobs
pan/bi: Implement saturated add/sub operations
pan/bi: Implement ihadd/irhadd operations
pan/bi: Implement packing ops between 32-bit vec1 and 16-bit vec2
pan/mdg: Fix spilling when scratch memory is used
pan/bi: Iterate from zero when setting RA interference
panfrost: Add a function to determine if a resource is 2D
panfrost: Only checksum resources when it makes sense to
panfrost: Add a debug flag to disable checksumming
panfrost: Transaction elimination support
panfrost: Fix the tile size assertion
pan/decode: Free mapped memory objects on BO unreference
panfrost: Add support for INTEL_blackhole_render
panfrost: Use normal malloc/free instead of ralloc for surfaces
panfrost: Add the tiler heap to fragment jobs
pan/bi: Return the size of the last clause from bi_pack
pan/bi: Fix shader prefetch size
panfrost: Fix clear color packing for 12-byte formats
pan/bi: Don’t check liveness unless the index is valid
pan/bi: Use the correct size for UBO loads
pan/bi: Remove check for first_ubo_is_default_ubo
pan/bi: Implement image load/store
pan/bi: nir_intrinsic_image_size support
st/mesa: Update constants on alpha test change if it’s lowered
panfrost: Disable early-z when alpha test is used
pan/mdg: Rename load/store operations
pan/mdg: Use appropriate sizes for global loads/stores
pipe-loader,gallium/drm: Fix the kmsro pipe_loader target
pipe-loader: Stop trying to use kmsro for vgem
panfrost: Implement panfrost_set_global_binding
panfrost: Flush output after disassembling shaders
panfrost: Only do point coord replacement for PIPE_PRIM_POINTS
panfrost: Only add resource checksum BOs to the batch once
panfrost: Align BO size to 4096 bytes
panfrost: Add fast path for graphics work group computation
panfrost: Unset shared/scanout binding flags for staging resources
pan/bi: Skip nir_opt_move/sink for blend shaders
panfrost: Fix shader texture count
pan/decode: Allow frame shader DCDs to be in another BO than the FBD
pan/mdg: Fix calculation of available work registers
panfrost: Fix viewport scissor for preload draws
Ilia Mirkin (55):
nv50/ir: ignore FS_BLEND_EQUATION_ADVANCED
nv50,nvc0: explicitly list recently-added caps
st/mesa: fix broken moves for u2i64 and related ops
nv50/ir: clear dnz flag when converting mul/mad to simpler ops
glsl: only expose int64 atomics when extension is enabled
cso: set index_bounds_valid = true for arrays draws
nvc0: index_bias is now only set for indexed draws
nvc0/ir: add fixup to deal with interpolateAtSample with non-MSAA
nv50,nvc0: clear internal vbo masks based on the trailing slots
ci: remove nouveau from shader-db runs
nouveau: reinstate fencing on screen destroy
nv50: add PIPE_CAP_NIR_IMAGES_AS_DEREF to unsupported list
nv50,nvc0: add scissored clear support
st/mesa: do scissored clears on depth/stencil as well when supported
i965: support GL_EXT_color_buffer_half_float
mesa: fix conditions for fp16 render format eligibility
mesa: fix fbo attachment size check for RBs, make it trigger in ES2
mesa: add tracking of reduction mode
st/mesa: add EXT_texture_filter_minmax support
nvc0: enable minmax reductions on gm200+
docs: add notes about nvc0 support of ARB/EXT_texture_filter_minmax
mesa: only report INCOMPLETE_FORMATS for GLES1 / desktop
gallium,st: add missing viewport swizzles
nv50: initialize target for blit source surfaces
nv50,nvc0: remove explicit target argument from view creation
nv50: add appropriate space check before adding new pushbuffer
nvc0: ensure sufficient push space for indirect data
nvc0: fix reported driver queries for Pascal and later GPUs
mesa: fix restoring of texture attributes for msaa binding points
nv50: adapt texture and constbuf paths for compute shaders
nv50: add resource tracking for shader images and buffers
nv50: implement memory barrier handling
nv50: add texture, constbuf, image, buffer validation
nv50: pass in third axis via user param
nv50/ir: retrieve (n)ctaid.z from first user param
nv50/ir: force shared memory indirect to be an address
nv50/ir: do not use inline offsets for global, ensure indirect access
nv50/ir: fix emission of RED
nv50/ir: lower buffer to global
nv50/ir: fix emitting movs from imm to short registers
nv50/ir: fix emission of cvt with half-reg destinations
nv50/ir: fix emission of logic ops on half-regs
nv50/ir: fix emission of shifts on half-regs
nv50/ir: logic ops on half-regs can’t take an immediate
nv50/ir: add support for 16-bit immediates
nv50/ir: fix emission of 16-bit add
nv50/ir: fix emission of cas without a destination
nv50: fix expression for ucp offset
nv50/ir: avoid inlining results of a locked load
nv50/ir: fix emission of ld/st lock/unlock
st/mesa: adapt for the case where buffers are not supported in frag
nv50/ir: fix texture size for msaa textures
nv50: emulate indirect draws
nv50/ir: fake SV_THREAD_KILL support
nv50: enable ARB_framebuffer_no_attachments
Italo Nicola (15):
panfrost: fix attribute continuation decoding
panfrost: add 3d attribute buffer continuation to XML
panfrost: decode 3d attribute continuation
panfrost: add resource modifier conversion
panfrost: implement gallium->set_shader_images
panfrost: emit shader image attribute descriptors
panfrost: implement image_size sysval
pan/mdg: create nir pass to lower image coord bitsize
pan/mdg: enable image bitsize lowering pass
pan/mdg: add ld_image opcodes
pan/mdg: rename st_image opcodes and add float16 versions
pan/mdg: implement shader image instructions
pan/mdg: implement nir_intrinsic_image_size
panfrost: advertise images for midgard
pan/mdg: prevent csel_v from being scheduled alongside writeout
Iván Briano (4):
anv: don’t advertise mipmaps for linear 3D surfaces on BDW
anv: move buffer size alignment into helper function
anv: use helper function to get the buffer size
intel, anv: propagate robustness setting to nir_opt_load_store_vectorize
James Jones (4):
nouveau: Stash supported sector layout in screen
nouveau: Use DRM_FORMAT_MOD_NVIDIA_BLOCK_LINEAR_2D
nouveau: no modifier != the invalid modifier
nouveau: Use format modifiers in buffer allocation
James Park (22):
radv: Use linker pragma to simulate weak functions
radv: Remove unnecessary headers
radv: Stub sections that don’t have _WIN32 support
radv: Modify radv_descriptor_set for MSVC legality
radv: Pointer arithmetic on char/uint8_t, not void
radv: Disable calibrated timestamps on Windows
radv: Use typed outarray API
radv: Fix struct initialization for MSVC
gallium/tessellator: Fix warning suppression
microsoft: Fix comma in variadic macro for MSVC
ac: Remove unnecessary header
radv: Use typed outarray API
amd: Disable surface modifier test on Windows
radv: Pointer arithmetic without void*
radv: Update JSON generator if Windows
vulkan: Use typed outarray API
vulkan: Fix source list for vulkan_wsi on Windows
vulkan: Update dispatch table gen for Windows
vulkan/util: Use util_bitcount
ac/rgp: BSD elf library compatibility
amd: Hide amdgpu_drm.h on Windows
amd: Hide drm_fourcc.h on Windows
James Zhu (1):
amd: add Aldebaran chip enum
Jan Beich (2):
ac: prefer system EM_AMDGPU definition
ac/rgp: define EM_AMDGPU if missing for compatibility
Faith Ekstrand (195):
intel/tools: Decode COMPUTE_WALKER
intel/fs: Allow compute dispatch without a pushed subgroup ID on Gen12-HP
anv: Add a general state pool
intel/fs: Emit code for Gen12-HP indirect compute data
anv: Enable push constants on gen12-hp
intel/genxml,anv,iris: Drop the legacy compute path from gen125.xml
anv: Add a trivial implementation of VK_KHR_deferred_host_operation
anv: Exit early from cmd_buffer_apply_pipe_flushes
anv: Take the set of stages to flush in flush_descriptor_sets
anv: Only flush descriptors used by the pipeline
anv: Early-exit from cmd_buffer_flush_state
nir/lower_int64: Add a level of wrapper functions
nir/lower_int64: Fix lowering of f2[ui]64 for 16-bit float
nir/lower_int64: Add lowering for some 64-bit subgroup ops
nir/lower_int64: Add lowering for 64-bit iadd shuffle/reduce
nir/lower_int64: Lower 64-bit vote_ieq
intel/compiler: Return 1 for immediates in regs_read
intel/compiler: Move brw_reg_type_for_bit_size to brw_reg_type.h
intel/reg,fs: Handle immediates properly in subscript()
intel/fs: QUAD_SWIZZLE requires packed data
intel/fs: Support 64-bit SEL_EXEC on Gen11+
intel/fs: Support 64-bit SHUFFLE on Gen11+
intel/fs: Support 64-bit CLUSTER_BROADCAST on Gen11+
intel/fs: Properly lower 64-bit MUL on 64-bit-incapable platforms
intel/fs: Refactor our shuffle emit code
intel/fs: Implement umin/umax shuffle
anv: Advertise shaderInt64 on Gen11+
anv: Break SAMPLE_PATTERN and MULTISAMPLE emit into helpers
intel/fs: Add an ex_desc field to fs_inst for SHADER_OPCODE_SEND
anv: Drop anv_dump
anv: Fix an old parameter name in GetDeviceQueue
anv: Refactor anv_queue_finish()
anv: Add an anv_queue_family struct
nir/from_ssa: Respect and populate divergence information
vulkan/meson: Add missing dependencise on vk_extensions_gen.py
anv: Clean up the vk_device on the CreateDevice error path
radv: Properly clean up vk_device
turnip: Properly clean up vk_device
v3dv: Properly clean up vk_device
lavapipe: Properly clean up vk_device
vulkan: Move vk_device to its own file
vulkan: Add a return code to vk_device_init
vulkan: Add common extension tables
anv: Use the common extension table struct
vulkan: Add common dispatch table generation
vulkan: Add dispatch table loading helpers
vulkan-overlay-layer: Use the new dispatch tables
vulkan: Add dispatch table lookup helpers
vulkan: Add common instance and physical device structs
vulkan: Add generators for instance trampoline functions
vulkan: Add entrypoint tables and related helpers
vulkan: Add common Get*ProcAddr implementations
vulkan: Add a common entrypoint table generator
anv: Add a single anv_genX switch macro
anv: Use the common dispatch framework
vulkan: Add framework for common entrypoints
vulkan,anv: Move GetDeviceProcAddr to common code
vulkan,anv: Add common entrypoints for VK_EXT_private_data
anv: Make Get*MemoryRequirements a wrapper
vulkan,anv: Move a bunch of trivial wrappers to common code
vulkan,anv: Move VK_KHR_copy_commands2 wrappers to common code
vulkan: Add a truly common VK_EXT_debug_report implementation
anv: Switch to the common VK_EXT_debug_report
turnip: Use the common dispatch framework
turnip: Use common entrypoints for VK_EXT_private_data
turnip: Drop some legacy wrappers in favor of common code
turnip: Switch to the common VK_EXT_debug_report
lavapipe: Drop some wrappers in favor of common code
v3dv: Drop v3dv_instance::app_info
v3dv: Use common entrypoints for VK_EXT_private_data
v3dv: Switch to the common VK_EXT_debug_report
radv: Use common entrypoints for VK_EXT_private_data
radv: Switch to the common VK_EXT_debug_report
vulkan: Make vk_debug_report_callback derive from vk_object_base
anv: Use vk_object_base::type for debug_report
vulkan: Use vk_object_base::type for debug_report
vulkan: Make the debug_report implementation internal
anv,radv: Use common entrypoints for VK_KHR_deferred_operation
vulkan: Rework vk_device_init and friends
vulkan: Drop the type_prefix parameter from gen_extensions
nir: Add some ssa-only fast-paths for nir_src rewrite
nir: Drop the lower_mem_constant_vars declaration
vulkan: Add a common helper for enumerating instance extension properties
vulkan: Rework extension disabling on Android
anv: Pull the patch version from the XML
anv: Make anv_icd.py more generic and independent
anv,vulkan: Move anv_icd.py to a common location
anv: Move extension tables to anv_device.c
anv: Add fake graphics-only and compute-only queue families
nir: Add a couple helpers for phis and cursors
nir/lower_bit_size: Support phi instructions
intel/nir: Lower 8-bit phis on Gen11+
nir: Add some range analysis for used bits
nir/algebraic: Clean up up-cast of down-cast when we can
nir/algebraic: Covert up-cast of down-cast to extract on Intel
spirv: Store the nir_function in vtn_function
spirv: Delete the impl for prototype-only functions
nir: Don’t optimize bcsel-of-shuffle across blocks
nir: Fix parameter order in the bcsel-of-shuffle optimization
nir/opt_large_constants: Handle generic pointers
intel/fs: Shuffle can’t handle source modifiers
anv/formats: Advertise linear sampling on depth formats
anv/android: Re-implement AcquireImageANDROID
intel/mi_builder: Create a context in the tests
intel/mi_builder: Delete a bogus comment
intel/mi_builder: Fix a misleading comment
intel/mi_builder: Short-circuit shifts in more cases
intel/mi_builder: Add constant folding
intel/mi_builder: Rewrite unit tests in terms of constant folding
intel/mi_builder: Add tests for gen_mi_z and gen_mi_nz
intel: Rename gen_mi_builder.h to mi_builder.h
intel/mi_builder: Drop the gen_ prefix
intel/mi_builder: Use AddCSMMIOStartOffset for LRI
intel/mi_builder: Add ieq/ine helpers
intel/mi_builder: Support inverted values in mi_store
intel/mi_builder: Add load/store_offest on GFX 12.5+
genxml: Clean up MI_SET_PREDICATE
intel/batch_decoder: Don’t follow predicated MI_BATCH_BUFFER_START
intel/mi_builder: Use softpin for tests on gen8+
intel/mi_builder: Return an address from __gen_get_batch_address
intel/mi_builder: Add control-flow support
nir: Add and use a new nir_ssa_def_rewrite_uses_src helper
nir: Make nir_ssa_def_rewrite_uses take an SSA value
nir: Make nir_ssa_def_rewrite_uses_after take an SSA value
intel/mi_builder: Fix some indentation
intel/mi_builder: Fix a couple of #ifs
anv: Drop anv_extensions.py
turnip: Move the CreateRenderPass wrapper to common code
anv: Move multialloc to common code
vulkan: Use VK_MULTIALLOC in CreateRenderPass
anv: Move vk_format helpers to common code
vulkan: Use correct aspectMask in CreateRenderPass
vulkan: Add some asserts and checks for multiview in CreateRenderPass
vulkan: Preserve preserve attachments in CreateRenderPass
anv: Drop CreateRenderPass
radv/meta: Use CreateRenderPass2
radv: Drop CreateRenderPass
intel/fs: Use INTEL_MASK for pushish constant address masking
intel/fs: Handle payload node interference in destinations
vulkan: Use ALWAYS_INLINE for multialloc
vk/alloc: Handle zero sizes better in vk_multialloc_add
vulkan/alloc: Add VK_MULTIALLOC_DECL macros
vulkan/util: Add a type parameter to vk_multialloc_add
vulkan/alloc: Use char * for pointer arithmetic
anv,genxml: Handle L3SQCREG1_SQGHPCI in GenXML
anv: Add an anv_batch_write_reg macro
iris: Add an iris_write_reg macro
genxml: Make 1-bit L3$ config register fields bool on Gen7
intel/fs,rt: Add a predicate to load_global_const_block
anv: Use load_global_constant for shader constants
anv: Use nir_shader_instructions_pass in apply_pipeline_layout
anv/apply_pipeline_layout: Refactor descriptor chasing code
anv/apply_pipeline_layout: Rework the early pass index/offset helpers
anv/apply_pipeline_layout: Lower UBO loads in the early pass
anv/apply_pipeline_layout: Run DCE between the early and late passes
anv/apply_pipeline_layout: Move bounds checking later for index/offset
anv/apply_pipeline_layout: Plumb through a UBO address format
anv/apply_pipeline_layout: Add some switch statements
nir: Add a new 64+32-bit address format
anv: Use 64bit_global_32bit_offset for SSBOs
anv: Rework the 64bit_bounded_global resource index format
anv: Zero out the last dword of UBO/SSBO descriptors in the shader
anv/apply_pipeline_layout: Apply dynamic offsets in load_ssbo_descriptor
anv/apply_pipeline_layout: Refactor all our descriptor address builders
anv/apply_pipeline_layout: Rework the desc_addr_format helper
anv/apply_pipeline_layout: Use the new helpers for early lowering
anv/apply_pipeline_layout: Use the new helpers for images
nir/lower_io: Support global addresses for UBOs in nir_lower_explicit_io
anv: Add a pass for lowering A64 UBO access
anv: Do UBO loads with global addresses for bindless
anv/apply_pipeline_layout: Add support for A64 descriptor access
nir: Add image atomic_fmin/fmax intrinsics
spirv: Add support for SPV_EXT_shader_atomic_float_min_max
intel/fs: Add support for 16-bit A64 float and integer atomics
intel/genxml: Binding table pointers are 15 bits on GFX version 12.5+
intel/tools: Handle milti-LRI in the batch decoder
intel/tools: Handle GT_MODE in the batch decoder
intel/genxml: Make BindingTablePoolEnable a bool
intel/tools: Handle BINDING_TABLE_POOL_ALLOC in batch decoding
anv: Align inline uniform data to ANV_UBO_ALIGNMENT
anv: Implement VK_EXT_conservative_rasterization
anv: Fix coverage masks for VK_EXT_conservative_rasterization
intel: Drop gen_device_info::has_resource_streamer
anv: Clean up anv_device_memory::base on failure
anv: Refactor framebuffer creation
anv: Clean up anv_descriptor_pool::base on the error path
anv: Clean up anv_semaphore::base on the error path
vulkan: Add a vk_object_multialloc helper
anv: Use vk_object_alloc/free
anv: Make memory type and queue family pointers const
intel: fix querying mip levels on null surfaces on SKL and prior
intel/compiler: Don’t insert barriers for NULL sources
anv: Use the same re-order mode for streamout as for GS
intel/isl: Fix isl_color_value_unpack to match the prototype
intel/nir: Set lower txs with non-zero LOD
Jeremy Huddleston (5):
darwin: Use the system libexpat
util: Fix pointer to integer conversion error when using libunwind
darwin: Use the system libunwind
Fall back on clock_gettime when timespec_get() is unavailable
Adjust dylib compatibility versions to match what was set by mesa-18.3’s autotools-based builds
Jesse Natalie (76):
nir: Work around MSVC x86 internal compiler error
main: Undefine MemoryBarrier for Windows
glapi: Undefine MemoryBarrier
mapi: Undefine MemoryBarrier
drisw: Disable automatic use of layered drivers with LIBGL_ALWAYS_SOFTWARE
wgl: Refactor screen creation to a function
wgl: Add a loop for screen creation with an ordered list of fallbacks
d3d12: Fail screen creation if a shader validator is needed and can’t be created
wgl: Disable automatic use of layered drivers with LIBGL_ALWAYS_SOFTWARE
CI: Use a sha for the Windows SPIRV-LLVM-Translator dependency
microsoft/clc: Add -fgnu89-inline to clang args
microsoft/clc: Add test with inline function
clover: Add -fgnu89-inline to Clang command line
microsoft/clc: Only apply float scaling to 32bit fdiv
microsoft/clc: Let lower_vars_to_explicit_types fill kernel input driver_location
microsoft/clc: Fix wrap modes for inline samplers for integer textures
microsoft/clc: Move inline samplers to the end of the variable list
microsoft/clc: Use driver_location for metadata instead of re-computing offsets
microsoft/clc: Re-order dead variable removal after uniform vars_to_explicit_types
microsoft/clc: Add a test with an unused kernel arg
glapi: Support “ELF” TLS on Windows
docs: Document USE_ELF_TLS can work on Windows too
meson/gallium: Add an option to not use LLVM for gallium draw module
d3d12: Handle null constant buffers
nir: Add a nir_after_instr_and_phis helper
microsoft/compiler: Don’t separate phis while inserting upcasts
d3d12: Move descriptor pools to screen, and add lock
d3d12: Handle is_new_style_shadow comparison filtering
d3d12: Really handle null constant buffers
u_format: Add restrict to fn pointer and manual format pack/unpack/fetch
panfrost: Add a Meson dependency on bi_opcodes.h for bifrost_compiler
meson, util: Make zlib optional again
nir: Temporarily disable optimizations for MSVC ARM64
wgl: Fix wglCreatePbufferARB pixel format lookup
d3d12: Use ID3D12Device9::CreateCommandQueue1 when available
d3d12: Use CreateDXGIFactory2 and use the debug flag when appropriate
wgl: Add unit test infrastructure for OpenGL32.dll on Windows
wgl: Add a context to framebuffer destruction
d3d12: Add a constant for num_buffers
d3d12: Clean up swapchains on framebuffer destruction
wgl, d3d12: Add a d3d12-specific test for swapchain leaks
microsoft/compiler: Move blob_init earlier to prevent crash on failure
microsoft/compiler: Add copy_prop_vars to optimization loop
microsoft/compiler: Add a lowering pass to split clip/cull distance compact arrays
microsoft/compiler: Enable dxil_nir.h to be included from C++
microsoft/compiler: Support compact arrays for clip/cull in nir_to_dxil
d3d12: Use compact arrays for clip/cull distance
microsoft/spirv_to_dxil: Implement TODO for removing dead functions
spirv_to_dxil: Handle clip/cull distance
microsoft/compiler: Fix barrier flag for shared memory
microsoft/spirv_to_dxil: Lower globals to function_temp
microsoft/spirv_to_dxil: Lower io arrays
microsoft/compiler: Support fp16 i/o vars
nir: Add a new opcode for [un]packing doubles
microsoft/compiler: Add a lowering pass to emit double [un]pack instructions
microsoft/compiler: Implement new double pack/unpack alu ops
microsoft/spirv_to_dxil: Support doubles
microsoft/compiler: Add some more float16 support
meson: Refuse to build lavapipe without llvmpipe
vtn: Don’t warn about linkage capability if we’re creating a NIR library
vtn: Add a cap for CL drivers to support read-write images
microsoft/clc: Update unit test to always use COMMON state for buffers
meson: For MSVC, suppress warnings generated by useless delayloads
driconf: Remove default values from string driconf entries
CI: Enable -werror for Windows
vtn: Support scoped control barriers for OpenCL too
nir_opt_deref: ptr_as_array(deref_cast<T*>(x))[0] isn’t the same as x[0] if the cast has alignment
nir: Fix MSVC warning C4334 (32bit shift cast to 64bit)
d3d12: Fix MSVC warning C4334 (32bit shift cast to 64bit)
microsoft/clc: Fix MSVC unreferenced variable warnings
microsoft/clc: Fix undeclared function warning
microsoft/compiler: Fix MSVC warning C4334 (32bit shift cast to 64bit)
shader_enums: Fix MSVC warning C4334 (32bit shift cast to 64bit)
gallium/aux: Fix MSVC warning C4334 (32bit shift cast to 64bit)
llvmpipe: Fix MSVC warning C4334 (32bit shift cast to 64bit)
xmlconfig: Fix MSVC warning C4334 (32bit shift cast to 64bit)
Jesse Schwartzentruber (1):
glcpp: Fix undefined behaviour in glcpp
Joel Linn (2):
freedreno/a2xx: fix/add RBBM perfcounter
freedreno/a2xx: add RB perfcounter 1-3
Jonathan Marek (13):
turnip: fix logicOp
turnip: delete unused vk_format_parse.py file
turnip: use vk_format_is_int to disable COLOR_ATTACHMENT_BLEND_BIT
turnip: IMAGE_FILTER_{LINEAR,CUBIC}_BIT only for non-integer formats
turnip: don’t always use 3d ops for blit_image
turnip: add missing register write to disable dithering
freedreno/registers: use macro instead of inline function for array regs
freedreno/a6xx: update perfcntr registers (declare as arrays)
freedreno/a6xx: always use reg64 for address registers (no LO/HI)
freedreno/a6xx: update some registers
freedreno/a6xx: set SP_PERFCTR_ENABLE in computerator
turnip: implement VK_KHR_shader_float_controls
turnip: enable VK_KHR_shader_float16_int8
Jordan Justen (28):
intel/genxml/gen125: Add CFE_STATE and COMPUTE_WALKER
intel/compiler: Disable push constants on gen12-hp
anv: Emit CFE_STATE for gen12-hp
anv: Don’t use MEDIA_INTERFACE_DESCRIPTOR_LOAD for gen12-hp
anv: Use COMPUTE_WALKER for gen12-hp
iris: Add support for COMPUTE_WALKER
iris: Fix android build due to missing link to libmesa_iris_gen125
anv: Add exec_flags to anv_queue
anv: Turn device->queue into an array
anv: Print queue number with INTEL_DEBUG=bat
anv: Support i915 query (DRM_IOCTL_I915_QUERY) from Linux v4.17
anv: Gather engine info from i915 if available
anv: Add anv_gem_count_engines
anv: Support multiple engines with DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT
anv: Add ANV_QUEUE_OVERRIDE env-var to override advertised queues
i965: Call util_cpu_detect() early in screen creation
intel: Use GEN_VERSIONx10 in more places
intel/dev: Add devinfo genx10 field
intel: Use devinfo genx10 field
anv: Restructure mem heap/type init code
anv: Put cache memory type first on non-llc platforms
anv: Add mem heap/type support for local-mem
anv: Drop has_slm in emit_l3_config for gen11+
anv: Use fallback paths if DRM_I915_QUERY_ENGINE_INFO fails
i965/gen11: Fix must-be-ones bit positions in 3D_MODE
genxml/gen12: 3D_MODE bits 31:16 are no longer must-be-one
Revert “intel/compiler: Silence unused parameter warning in update_inst_scoreboard”
intel/compiler: Fix INTEL_DEBUG=hex
Jose Maria Casanova Crespo (4):
v3d: Enables DRM_FORMAT_MOD_BROADCOM_SAND128 support
v3d: YUV formats at is_dmabuf_modifier_supported are external_only
v3d: YUV formats at query_dmabuf_modifiers are external_only
v3d: DRM_FORMAT_MOD_BROADCOM_SAND128 only available for NV12 format.
Joshua Ashton (3):
lavapipe: handle NULL pStrides in CmdBindVertexBuffers2EXT
lavapipe: implement CmdBindVertexBuffers with CmdBindVertexBuffers2EXT
lavapipe: enable KHR_image_format_list
José Fonseca (6):
scons: Add u_format_pack.h include path.
wgl: Match opengl32.dll export ordinals.
util: Always use timespec_get on Windows.
appveyor: Remove integration.
scons: Remove.
gitlab-ci: Build meson-mingw32-x86_64 w/o zlib.
Juan A. Suarez Romero (40):
v3d: fix dest offset in TFU setup
v3d: use a compatible supported format for TFU-based blit
vc4/ci: Replace expect script by python script
ci/vc4: allow custom timeout values for activity
ci/vc4: rename stage to Broadcom
ci/vc4: Add piglit job
ci: Bump deqp to current vulkan-cts-1.2.5.1
ci: add option to overwrite CPU arch
ci/v3d: Add V3D and V3DV testing
ci/v3d: Update expected resuls for piglit
ci/piglit: allow parallel piglit jobs
ci/vc4/v3d: Parallelize piglit jobs
ci/piglit: fix parallel piglit results
ci/baremetal: highlight message errors
ci/broadcom: retry always when serial log timeout
ci: Bump deqp to vk-gl-cts 1.2.5.2
ci/broadcom: allow custom kernels
vc4: destroy renderonly object if present
ci/armXX: add libgl1-mesa-dev dependency
ci/v3dv: add flaky test in the skip list
ci/vc4/v3d: run piglit testsuite against Xorg
ci/broadcom: use new piglit runner
ci/broadcom: update piglit expected results
ci/v3d: run full GLES3 and GLES31 testsuite
broadcom/compiler: fix unused value
v3dv: fix unused value
ci/v3dv: update flaky tests
broadcom/cle: do not leak spec
ci/broadcom: update expected list
v3d: use uint type in _gen_unpack_uint
broadcom/compiler: fix first_component assertion
broadcom/compiler: use signed pointers for packed condition
ci/broadcom: use SNMP to turn on/off devices
broadcom/compiler: use VPM offsets in GS load_per_vertex input
v3d: use GS_BIN inputs as VS_BIN outputs
v3dv: fix assertion
ci: Update VK-GL-CTS to 1.2.6.0
v3d: do not emit attribute if has no resource
ci/v3dv: skip Vulkan waiver tests
util/hash_table: do not leak u64 struct key
Jérôme Glisse (3):
gallium: add support for SVM (Share Virtual Memory) migrate
clover: implement clEnqueueSVMMigrateMem
nouveau: add support for SVM migrate
Karol Herbst (9):
clover: track allocated svm pointers
clover/api: make use of validate_mem_migration_flags in clEnqueueMigrateMemObjects
nouveau: print warning about unhandled cap only once
clover: simplify image arguments
clover: rework quering image max sizes
clover: Fix build with llvm-12.
clover: Add missing include for llvm-12 build fix
tegra/context: fix regression in tegra_draw_vbo
tegra/context: unwrap indirect_draw_count as well
Keith Packard (2):
glx: Provide glvnd wrapper for glXSwapIntervalEXT
wsi/x11: Fix type of target_msc argument to x11_present_to_x11_dri3
Kenneth Graunke (62):
vbo: Don’t set node->min_index = max_index = indices_offset when merging
vbo: Only mark merged line strips as lines when actually converting them
tnl: Try not to botch index buffer munging when start > 0.
tnl: Respect `start` when converting indices to GLuint
tnl: Reset nr_bos to 0 between map/unmap cycles.
Revert “mesa: allow half float textures based on ARB_half_float_pixel”
iris: Consider resolves after changing a resource’s aux state
iris: Drop find_existing_assembly optimization from program cache
iris: Drop iris_print_program_cache().
iris: Refactor iris_debug_recompile interface to take a shader.
intel: Produce a “constrained” output from gen_get_urb_config()
iris: Reconfigure the URB only if it’s necessary or possibly useful
iris: Move the URB size checks into iris_update_compiled_xs
iris: Properly handle new unbind_num_trailing_slots parameters
iris: Use shader_info rather than vs_prog_data for draw parameter checks
iris: Minor code restyling in iris_bind_vs_state
iris: Move VS draw parameter dirty flagging to iris_bind_vs_state
iris: Refcount shader variants
iris: Store a list of shader variants in the shader itself
iris: Enable PIPE_CAP_SHAREABLE_SHADERS.
iris: add hooks to call INTEL_MEASURE
iris: Fill out scratch base address dynamically
iris: Remove context from iris_debug_recompile
iris: Remove context from iris_upload_shader()
iris: Remove context from iris_compile_vs and friends
iris: Remove context from iris_create_uncompiled_shader
iris: Remove context from iris_disk_cache_retrieve
iris: Make a pin_scratch_space() helper
iris: Reference the shader variant for last_vue_map as well
iris: Pin surface state buffers after possibly updating the clear color
i965: Rename use_intel_mipree_map_blit to use_blitter_to_map
i965: Rename intel_batchbuffer_* to brw_batch_*.
i965: Rename intel_screen to brw_screen
i965: Rename intel_texture_{object,image} to brw_texture_{object,image}
i965: Rename intel_renderbuffer to brw_renderbuffer
i965: Rename intel_mip* to brw_mip*.
i965: Use __func__ in blorp perf_debug macros
i965: Rename intel_buffer_object to brw_buffer_object
i965: Rename intel_image_format and intel_buffer to brw_*
i965: Rename the rest of intel_* functions to brw_*
i965: Rename intelInit and brwInit camel-case functions to brw_*
i965: Rename some camel-case local variables
i965: Rename more camel-case functions to brw and underscore style
i965: Rename DRI extension structs to be “brw” instead of “intel”
i965: Eliminate all tabs except in brw_defines.h
tnl: Call _mesa_matrix_analyse to make sure the inverse MVP is updated
glsl/float64: Bump #version to 400
iris: Defer uploading of surface states
iris: Defer stream output target space allocation until set time
iris: Rework zeroing of stream output buffer offsets
iris: Support rebinding of stream output targets
iris: Use different shader uploaders for precompile vs. draw time
iris: Make various classes inherit from u_threaded_context base classes
iris: Use thread safe slab allocators in transfer_map handling
iris: Enable u_threaded_context
vbo: Fix vbo_sw_primitive_restart for start > 0
intel/genxml: Add a partial GT_MODE definition for Gen11+.
iris: Delete stale comment in iris_lost_context_state
intel: Fix release build breakage
Half-revert “gallium/dri2: Pass the resource that corresponds to the plane”
intel: Mark an otherwise unused variable in intel_dump_gpu as ASSERTED
ci: Enable iris testing in meson-release
Kristian Høgsberg (1):
macros: Add thread-safety annotation macros
Leo Liu (12):
radeon/vcn: clean the message buffers and their indexes logic
radeon/vcn: add dynamic dpb interface
radeon/vcn: add dynamic dpb buffer Tier1 support
radeon/vcn: enable dynamic dpb Tier1 support
radeon/vcn: add dynamic dpb Tier2 message buffer interface
radeon/vcn: implement dynamic dpb Tier2 support
radeon/vcn: enable dynamic dpb Tier2 support
meson: bump drm amdgpu version to 2.4.105
ci: Fix meson-i386 build failed after libdrm bump version
include/drm-uapi: bump AMDGPU headers
ac: add function for querying video capabilities
radeonsi: replace the hard coded video decode and encode caps
Lepton Wu (3):
virgl: Don’t destroy resource while it’s in use.
virgl: Use atomic operation directly.
virgl: move new added field to the end.
Lionel Landwerlin (96):
anv: add transfer usage for color/depth/stencil attachments
anv: don’t disable KHR_performance_query in debug mode
intel/mi_builder: optimize 64bit immediate register loads & memory stores
intel/mi_builder: fix self modifying batches
intel/perf: restructure i915 perf version checks
intel/perf: add definition for generic perf counters
intel/perf: link queries back to the gen_perf_config object
intel/perf: move gt_frequency to results
anv: Fix stencil layout in render passes
intel: silence unused var warnings in release builds
anv: fix invalid programming of BLEND_STATE
intel/common: store sample position in plain arrays
anv: pass context to reset stats helper
anv: store queue creation flags on anv_queue
genxml: PERFCNT registers are available since HSW
intel/perf: prep work to enable new perf counters
intel/perf: query register descriptions
intel/perf: add performance query layout using MI_SRM
intel/perf: switch query code to use query layout
anv: fix layout comment
anv: remove unused query pool field
intel/perf: rename lkf into ehl
intel/perf: add reorder script
intel/perf: reorder xml files
intel/perf: remove reordering script
intel/perf: update files from IGT
intel/perf: small ICL equation refactor
intel/perf: add async compute metrics
intel/dev: identify tigerlake
intel/perf: break TGL perf configs in GT1/2
intel/dev: identify rocketlake
intel/perf: add RKL support
intel/perf: add DG1 support
intel/perf: drop the special READ_REG operator
anv: compute commands required to implement perf queries
anv: switch khr perf query code to use query layout
anv: switch intel perf queries to query layout
anv: add a comment describing has_relocs field
anv: break up internal queueing function
anv: only signal wsi fence BO on last command buffer
drm-shim: report support for timeline semaphores
intel/stub: plug some gaps in our ioctl faking
anv: print out perf permission warning only once
anv: discard all timeline wait/signal value=0
vulkan: document flags choice for vkGetDeviceQueue
genxml: add MI_SET_APPID on Gen12+
genxml: Add PIPE_CONTROL protected memory bits
isl: add external parameter to isl_mocs()
anv: track command buffer pool flags
anv: track buffer creation flags
intel/dev: identify alderlake
intel/perf: Add Alderlake metrics
intel/perf: fix roll over PERF_CNT counter accumulation
anv: reset binary syncobj to be signaled before submission
anv: don’t wait for completion of work on vkQueuePresent()
anv: Fix wait_count missing increment
anv: make use of new helper function directly in anv_QueueSubmit()
anv: track the end of the command buffers
anv: end command buffer with a potential jump
anv: allow multiple command buffers in anv_queue_submit
anv: group as many command buffers into a single execbuf
anv: fix missing general state pool in validation list
anv: implement INTEL_DEBUG=submit
anv: fix MI_PREDICATE_RESULT write
intel/tools: fix meson warning
intel/dev: add helpers to compute subslice/eu total
intel/dev: add warning on missing kernel uAPI for Gen8+
iris: use gen_device_info helper to get subslice total
i965: stop using get_param for things queried by gen_device_info
anv: stop using get_param for things queried by gen_device_info
intel/dev: switch over to mesa log infrastructure
anv: move L3 config emission to genX_state.c
anv: move L3 initialization to device init on Gen11+
intel: install intel_device_info
intel/fs/vec4: add missing dependency in write-on-write fixed GRFs
intel/dev: store size of CS prefetch
intel/mi_builder: use device info to use the right CS prefetch size
anv: use the device size of CS prefetch to pad secondary buffer calls
meson: switch vulkan layer to list of choices
intel: Add null hw layer
gitlab-ci: fix vulkan build layer enabling
intel/nullhw: fix build
etnaviv/drm: only print out fence error on non timeout
intel/fs/copy_prop: check stride constraints with actual final type
intel/fs: implement another copy propagation restriction
intel/compiler: lower bit sizes in NIR postprocessing
anv: put correct number of BT prefetch for compute on XeHP+
intel/fs: limit OW reads to 8 owords on XeHP+
microsoft: fixup clc_log() define
anv: bump internal descriptor index fields to 32bits
anv: fix 3DSTATE_MULTISAMPLE emission on gen8+
anv: disable baked in pipeline bits from dynamic emission path
spirv: fix uToAccelerationStructure handling
spirv: fixup pointer_to/from_ssa with acceleration structures
vulkan/wsi/display: don’t report support if there is no drm fd
i965/bufmgr: fix invalid assertion
Lucas Stach (5):
renderonly: remove layering violations
renderonly: close the gpu fd when destroying renderonly
etnaviv: don’t try to copy PIPE_BUFFER with the 3D engine
etnaviv: remove stale comment in etna_resource_copy_region
Revert remaining half of “gallium/dri2: Pass the resource that corresponds to the plane”
Lukas Feller (2):
v3dv: fix assertion in job_compute_frame_tiling
v3dv: fix stride in buffer copy
Marcin Ślusarz (20):
intel/perf: export information about units of performance counters
intel/compiler: cache computed register pressure benefit
intel/tools/aub: print better error message when mmap fails
intel/tools/aub: handle truncated input file
intel/tools/aub: remove superfluous new line from error messages
intel/dump_gpu: mark bo as unmapped if its address changes
anv: fix memory allocation error handling
iris: fix decode_get_bo
i965: fix decode_get_bo
intel/batch_decoder: catch invalid sampler state pointer
intel/batch_decoder: drop bogus check
intel/batch_decoder: fix decoding of sampler states
intel/batch_decoder: assert on invalid sampler pointer
intel/aub_viewer: catch invalid sampler state pointer
intel/aub_viewer: drop bogus check
intel/aub_viewer: fix decoding of sampler states
gallium: add PIPE_CAP_ALLOW_DYNAMIC_VAO_FASTPATH
iris: disable dynamic VAO fastpath on GFX version 9
gallium/u_threaded: implement INTEL_performance_query hooks
gallium/u_threaded: offload begin/end_intel_perf_query
Marek Olšák (406):
mesa: always set valid index bounds for non-indexed draws for classic drivers
st/nine: stop using cso_set_sampler_views
st/xa: stop using cso_set_sampler_views
gallium/tests: stop using cso_set_sampler_views
gallium/api: add state invalidate interface as alternative to cso_save/restore
gallium/hud: don’t use cso_context to restore VBs, constbuf 0 and sampler views
gallium/pp: don’t use cso_context to restore VBs, constbuf 0 and sampler views
st/mesa: don’t use cso_context to restore VBs, sampler views for glBitmap
st/mesa: don’t use cso_context to restore VBs for glClear
st/mesa: don’t use cso_context to restore VBs, sampler views for glDrawPixels
st/mesa: don’t use cso_context to restore VBs, sampler views for glDrawTex*OES
st/mesa: don’t use cso_context to restore VBs, etc. for PBO glReadPixels
st/mesa: don’t use cso_context to restore VBs, etc. for PBO glTexSubImage
st/mesa: don’t use cso_context to set const bufs, sampler views and images
st/mesa: replace st->pipe with pipe in a few places
cso_context: remove ability to restore VBs, const bufs, sampler views, images
st/mesa: unbind sampler views, images, and vertex buffers after meta ops
st/mesa: optimize binding and unbinding shader images
radeonsi: constant buffer cleanups
radeonsi: don’t clear unaligned bits when unbinding vertex buffers
radeonsi: move emit_cache_flush functions into si_gfx_cs.c
radeonsi: don’t pass pipe_draw_info into si_emit_vs_state
radeonsi: don’t pass pipe_draw_info into si_emit_ia_multi_vgt_param
radeonsi: translate pipe_prim_type only when it changes
radeonsi: don’t pass pipe_draw_info into si_emit_derived_tess_state
radeonsi: don’t compute average vertex count in si_draw_vbo
radeonsi: fix si_num_prims_for_vertices for PIPE_PRIM_POLYGON
radeonsi: make cik_emit_prefetch_L2 templated and move it to si_state_draw.cpp
radeonsi: add a specialized function for CP DMA L2 prefetch
radeonsi: make sctx->vertex_elements always non-NULL
radeonsi: remove MRT-draw-calls, spill-draw-calls, spill-compute-calls
radeonsi: get out of si_emit_vs_state early for blit vertex shaders
radeonsi: rearrange condition for streamout workaround on gfx7 and gfx8
radeonsi: don’t use si_get_vs_state in most places
radeonsi: trim the size of si_vgt_param_key and si_vgt_stages_key
mesa: fix alpha channel of ETC2_SRGB8 decompression for !bgra
radeonsi: unify uploaders on APUs too
radeonsi: don’t pass pipe_draw_info into si_emit_draw_registers
radeonsi: don’t set context_roll for non-gfx9 in templated functions
radeonsi: add si_get_user_data_base selecting user data registers
radeonsi: evaluate sh_base in si_emit_vs_state at compile time
radeonsi: inline the last use of si_get_vs_state
radeonsi: evaluate si_get_vs in si_draw_vbo at compile time
radeonsi: enable the GS tri strip adj workaround with primitive_restart
radeonsi: clear dirty_atoms and dirty_states only if we entered the emit loop
radeonsi: move variables closer to their use in most draw state functions
radeonsi: don’t validate inlinable uniforms at draw time
radeonsi: allow instance_count == 0 on chips that handle it correctly
glthread: remove marshal=”draw” because it doesn’t do much
glthread: don’t sync with NV_half_float vertex attrib functions
glthread: add specialized versions of unmarshal_Draw funcs without user buffers
glthread: track all matrix stack depths
glthread: implement glGetIntegerv for states that glthread tracks
glthread: rename inside_dlist to ListMode for future use
glthread: remove if (COMPAT) conditions from functions that are GL-compat-only
mesa: add _mesa_get_list helper
glthread: add display list support to fix state tracking with display lists
mesa: remove _mesa_initialize_exec_dispatch from draw.c by autogenerating it
mesa: remove redundant glRect functions for display lists
mesa: optimize glCallLists by using loops inside a switch
mesa: simplify handling OPCODE_CONTINUE for display lists
mesa: simplify terminating display list loops
mesa: remove STATE_INTERNAL
mesa: combine STATE_ENV, STATE_LOCAL enums with STATE_xxx_PROGRAM
mesa: flatten STATE_MATERIAL and STATE_LIGHTPROD tokens
mesa: eliminate the switch statement for STATE_TEXGEN
glsl: remove unused internal builtin gl_CurrentAttribVertMESA
glsl: split gl_CurrentAttribFragMESA into elements
mesa: skip memmove in optimize_state_parameters if it’s no-op
mesa: rename STATE_LIGHT_ATTRIBS -> STATE_LIGHT_ARRAY for consistency
mesa: optimize get_local_param_pointer and program_local_parameters4fv
mesa: don’t allocate local parameters in fetch_state
mesa: merge local and env program parameters for faster uploads
mesa: sort state vars with constant indexing for ARB programs
mesa: add upper bound to limit program state var iterations
mesa: compute gl_program_parameter_list::UniformBytes accurately
mesa: don’t handle STATE_* enums in fetch_state that don’t do anything
mesa: sort and tightly pack STATE_* enums to generate better switch code
mesa: merge equivalent switch cases in prog_statevars.c
st/mesa: enable state var merging to improve fetch_state performance
radeonsi: add new possibly faster command submission helpers
radeonsi: clear dirty_states if si_pm4_bind_state is unbinding or no-op
radeonsi: don’t mark NULL states as dirty in si_pm4_reset_emitted
radeonsi: optimize translating index_size to index_type
radeonsi: don’t use rasterizer_discard to validate draws, only check ps_shader
radeonsi: add internal blitter_running flag
radeonsi: simplify determining whether render condition is enabled at draw time
radeonsi: inline si_blend_color and si_clip_state structures
radeonsi: move y_inverted out of si_viewports
radeonsi: don’t set vertex buffer dirty flags when they don’t do anything
radeonsi: move if (sctx->vertex_buffers_dirty) into the upload function
radeonsi: rename SI_SGPR_RW_BUFFERS to SI_SGPR_INTERNAL_BINDINGS
radeonsi: skip some code for ALLOW_PRIM_DISCARD_CS if tess or GS is enabled
radeonsi: enable accidentally disabled fast launch with non-indexed tri strips
radeonsi: iterate from draw 1 for total/min_direct_count computation
st/mesa: don’t enable smoothing if multisampling is enabled
Revert “gallium/u_upload_mgr: allow use of FLUSH_EXPLICIT with persistent mappings”
gallium: add take_ownership param into set_constant_buffer to eliminate atomics
gallium: add unbind_num_trailing_slots to set_vertex_buffers
gallium: add unbind_num_trailing_slots to set_shader_images
gallium: add unbind_num_trailing_slots to set_sampler_views
gallium: add take_ownership param into set_vertex_buffers to eliminate atomics
cso_context,u_vbuf: add take_ownership param into set_vertex_buffers
st/mesa: eliminate all atomic ops when setting vertex buffers
st/mesa: skip atomics when binding UBOs
gallium/u_upload_mgr: eliminate all atomics for the upload buffer
gallium/u_threaded: add a null constant buffer codepath
gallium/u_threaded: unify user and non-user codepaths in set_constant_buffer
gallium/util: optimize pipe_vertex_buffer_reference binding the same buffer
gallium,u_threaded: add pipe_draw_info::take_index_buffer_ownership
st/mesa: set take_index_buffer_ownership to skip an atomic in u_threaded
gallium/u_vbuf: skip draws with 0 vertices
radeonsi: fix centroid with VRS coarse shading
glthread: fix interpreting vertex size == GL_BGRA for vertex attribs
glthread: fix glVertexAttribDivisor calls not being tracked by non-VBO uploads
glapi: guard against invalid XML definitions for glthread
ac,radeonsi: track memory usage in KB to reduce types from uint64 to uint32
radeonsi: optimize no-op cases in si_upload_shader_descriptors
radeonsi: mark shader_pointers dirty once outside the upload descriptors loop
radeonsi: move si_pm4_delete_state logic into si_pm4_free_state
radeonsi: delete si_pm4_delete_state
radeonsi: don’t check for redundant and NULL states in si_emit_all_states
radeonsi: optimize si_emit_prefetch_L2 when it’s split
radeonsi: reorganize si_draw_vbo for lower register pressure (part 1)
radeonsi: reorganize si_draw_vbo for lower register pressure (part 2)
radeonsi: set VB user SGPRs in si_upload_vertex_buffer_descriptors
radeonsi: prefetch VB descriptors right after uploading
radeonsi: precompute NGG cull flags in si_create_rs_state
mesa: remove/replace FLUSH_VERTICES when it doesn’t do anything
mesa: optimize most _mesa_ActiveTexture calls in glPopAttrib
mesa: optimize glPopAttrib(GL_VIEWPORT_BIT)
mesa: don’t push/pop gl_texture_object::Target
mesa: fix glPopAttrib for many texture fields
mesa: flush glBegin/End before changing GL_DEPTH_STENCIL_TEXTURE_MODE
mesa: for every state change, remember states we changed for glPopAttrib
mesa: fix trivial bugs in glPopAttrib
mesa: optimize out _NEW_ALL in glPopAttrib(GL_ENABLE_BIT)
mesa: only pop states in glPopAttrib that have been changed since glPushAttrib
mesa: partially skip glPush/PopAttrib for MSAA textures and texture buffers
mesa: don’t save gl_shared_state in glPushAttrib
mesa: don’t push/pop default texture attributes redundantly
mesa: pop all textures up to NumCurrentTexUsed, not just MaxTextureUnits
mesa: don’t count buffer references for the context that created them
radeonsi: set current_rast_prim at bind time for tess and GS
radeonsi: simplify the NGG culling condition in si_draw_vbo
radeonsi: tune NGG shader culling vertex threshold for each chip
radeon: decrease the size of radeon_cmdbuf by switching prev fields to uint16
Revert “gallium/u_vbuf: skip draws with 0 vertices”
gallium/u_vbuf: skip non-indirect draws with 0 vertices
winsys/amdgpu,radeonsi: add HUD counters for how much memory is wasted by slabs
winsys/amdgpu: clean up slab alignment code, handle small buffers better
winsys/amdgpu,pb_slab: add slabs with 3/4 of power of two sizes to save memory
winsys/amdgpu: expand the slab allocation range to [256 B, 1 MB]
winsys/amdgpu: optimize out conditionals in amdgpu_lookup_buffer
winsys/amdgpu: remove amdgpu_winsys_bo::num_cs_references to remove atomics
winsys/amdgpu: pack amdgpu_winsys_bo::is_shared and protect it by a mutex
winsys/amdgpu: move amdgpu_winsys_bo::cpu_ptr into the u.real union
winsys/amdgpu: move amdgpu_winsys_bo::is_shared to the u.real union
winsys/amdgpu: move amdgpu_winsys_bo::is_user_ptr to the u.real union
winsys/amdgpu: move amdgpu_winsys_bo::use_reusable_pool to the u.real union
winsys/amdgpu: don’t inc/dec num_active_ioctls for backing BOs of sparse BOs
winsys/amdgpu: don’t set unused usage for backing BOs of sparse BOs
winsys/amdgpu: try not to skip any code with RADEON_NOOP=1 to test CPU perf
tgsi_to_nir: translate SAMPLEID
tgsi_to_nir: translate FBFETCH
gallium/u_tests: test no-op fragment shader instead of NULL fragment shader
winsys/amdgpu: disallow pb_cache for backing buffers of sparse buffers
ac/gpu_info: print use_late_alloc
ac/gpu_info: rename num_tcc_blocks -> max_tcc_blocks
ac/gpu_info: add radeon_info::num_tcc_blocks
ac/gpu_info: remove redundant radeon_info::num_sdp_interfaces
ac/gpu_info: inline get_l2_cache_size and set cache sizes farther down
ac/gpu_info: conceal L2 cache sizes
amd: sort chip enums based on hw revision
radeonsi: skip s_sendmsg(gs_alloc_req) for NGG passthrough on new chips
radeonsi: add debug options nodisplaytiling and nodisplaydcc
amd: update addrlib
mesa: optimize draw index type checking
mesa: precompute all valid primitive types at context creation
mesa: precompute draw time prim validation during state changes
mesa: move check_valid_to_render call into _mesa_valid_prim_mode
mesa: fold most of check_valid_to_render into _mesa_update_valid_to_render_state
mesa: inline check_valid_to_render
mesa: add skeleton code for DrawPixels/CopyPixels/Bitmap precomputed validation
mesa: don’t report 1 for GL_VALIDATE_STATUS if user didn’t validate pipeline
mesa: move shader pipeline validation from draws to state changes
mesa: move sampler uniform validation from draws to state changes
mesa: move some uniform debug code from draws to state changes
mesa: move FBO completeness checking from draws to state changes
mesa: move ARB program and integer FBO validation from draws to state changes
mesa: move GL_FILL_RECTANGLE validation from draws to state changes
mesa: move blending validation from draws to state changes
mesa: inline _mesa_valid_to_render now that it doesn’t do validation
mesa: optimize the dual source blend error checking using a bitmask
mesa: remove VERBOSE_DRAW
mesa: remove optional draw validation code to increase performance
mesa: call _mesa_update_state() before validation
mesa: remove an optional GL error about mapped buffers during execution
mesa: skip MultiDrawArrays with primcount == 0
mesa: don’t skip draws with count == 0 or numInstances == 0
mesa: add a separate valid primitive mask just for glDrawElements
mesa: move disallowed TFB in DrawElements on GLES from draws to state changes
mesa: validate numInstances in common functions to unify code
mesa: optimize set_varying_vp_inputs by precomputing the conditions
mesa: move gl_context::varying_vp_inputs into ctx->VertexProgram._VaryingInputs
mesa: set _DrawVAOEnabledAttribs only when it changes
mesa: precompute _mesa_get_vao_vp_inputs
mesa: precompute draw time determination of enabled vertex arrays
mesa: gather errors and call _mesa_error only once in validate_Draw
mesa: inline _mesa_set_draw_vao and set_varying_vp_inputs for draw calls
mesa: inline draw validate functions
mesa: add debug code to catch missing _mesa_update_valid_to_render_state calls
ac/surface: use family_id so as not to crash with SI_FORCE_FAMILY in addrlib
radeonsi: for tess, determine the minimum num_patches before optimizing tg size
radeonsi: improve comments in si_emit_derived_tess_state
radeonsi: allocate filled_size for streamout targets in set_streamout_buffers
radeonsi: do late NIR optimizations after uniform inlining
radeonsi: fix the value of uses_bindless_samplers
radeonsi: gather info about bindless images and memory stores with strstr(intr)
radeonsi: gather shader info about indirect UBO/SSBO/samplers/images
radeonsi: gather shader info about VMEM usage for MEM_ORDERED
radeonsi: set MEM_ORDERED optimally
glthread: assume all parameters are fixed if marshal_sync is present
glthread: don’t declare pointers with const in unmarshal functions
glthread: don’t sync when using pixel buffer objects
glthread: ignore the return value of glUnmapBuffer, don’t sync, and return true
i915: use align_calloc for the context to fix m32 crashes
radeon,r200: use align_calloc for the context to fix m32 crashes
nouveau_vieux: use align_calloc for the context to fix m32 crashes
mesa: remove unnecessary NewState flagging for glPopAttrib(GL_ENABLE_BIT)
mesa: move fixed-func-related _mesa_update_state code closer together
mesa: split _NEW_LIGHT into 3 flags: _NEW_LIGHT_(FF_PROGRAM|CONSTANTS|STATE)
mesa: rework _MESA_NEW_NEED_EYE_COORDS to reduce fixed-func program updates
mesa: don’t compute the inverted projection matrix if not used
mesa: don’t compute the ModelView * Projection matrix if not used
mesa: add _NEW_MATERIAL to reduce the weight of _NEW_LIGHT_CONSTANTS
mesa: don’t update derived material values in _mesa_update_state and elsewhere
mesa: remove _NEW_VARYING_VP_INPUTS in favor of _NEW_FF_(VERT|FRAG)_PROGRAM
mesa: remove _NEW_LIGHT_FF_PROGRAM in favor of _NEW_FF_(VERT|FRAG)_PROGRAM
mesa: don’t push/pop ctx->Texture._* derived states
mesa: remove the fixed-func vert prog dependency on all texture states
mesa: sort state parameters for ffvp to enable better parameter merging
mesa: merge STATE_LIGHTPROD parameters
mesa: merge STATE_LIGHT_ATTENUATION and STATE_LIGHT_POSITION_* parameters
vbo: optimize copy_to_current functions
vbo: don’t call update_color_material in copy_to_current if it’s a no-op
mesa: be precise about when to set _NEW_CURRENT_ATTRIB and _NEW_MATERIAL
mesa: move _mesa_update_pixel out of _mesa_update_state
mesa: only update fixed-func programs on texture matrix enablement changes
mesa: don’t update fixed-func vert prog on irrelevant _NEW_TRANSFORM changes
mesa: don’t update fixed-func programs on irrelevant _NEW_POINT changes
mesa: don’t update fixed-func programs on irrelevant _NEW_FOG changes
mesa: don’t update fixed-func programs on irrelevant _NEW_RENDER_MODE changes
mesa: don’t update the fixed-func frag prog on irrelevant _NEW_COLOR changes
mesa: don’t update tnl spaces on irrelevant _NEW_POINT/TEXTURE_STATE changes
mesa: skip a subset of _mesa_update_state if no relevant flags are set
radeonsi: don’t index si_context::shaders with enum gl_shader_stage
ac/llvm: fix ac_build_atomic_rmw with LLVM 13
radeonsi: don’t crash on NULL images in si_check_needs_implicit_sync
ac/llvm: add support for 16-bit source operands for samplers
ac/llvm: implement 16-bit and 64-bit fpow correctly
ac/llvm: fix visit_load_ubo_buffer to use SMEM for 16 bits instead of VMEM
ac/llvm: add type parameter into ac_build_buffer_load to fix 16-bit TES inputs
ac/llvm: open code fpow on LLVM 12 using fmul.legacy
driconf: add performance tweaks for viewperf
ac/surface: select best swizzle mode for 3D sampler performance
ac,radeonsi: add sampler changes for Aldebaran
ac: set the TCC line size for Aldebaran
ac/llvm: unpack thread IDs on Aldebaran
ac: handle bigger instruction prefetch for Aldebaran
ac,radeonsi: use correct VGPR granularity on Aldebaran
ac: remove switch cases for pc_lines for compute-only chips
radeonsi: enable RGP on gfx10.3
gallium/u_threaded: don’t sync in create_stream_output_target
gallium: add pipe_screen::num_contexts for skipping mutex locking in util_range
radeonsi: update pipe_screen::num_contexts
ac/llvm: handle demote in LLVM 13 that just added support for it
ac/gpu_info: fix more non-coherent RB and GL2 combinations
radeonsi: use pipe_sampler_state::border_color_is_integer to simplify stuff
mesa: fix Blender crash due to optimizations in buffer reference counting
mesa: add assertions for buffer reference counts
mesa: fix a oldNum typo in reallocation in _mesa_reserve_parameter_storage
mesa: don’t overallocate ParameterValues 4 times (v2)
mesa: clear reserved parameter storage because it’s stored in the shader cache
mesa: fix parameter reservation size
st/mesa: add a driconf option to transcode ETC2 to DXTC
util: add most missing formats with reversed RGB channel order
util: fail assertion in util_format_linear if it can’t translate SRGB format
util: add new helper util_format_rgb_to_bgr
radeonsi: select the optimal micro tile mode at clear regardless of fast clear
radeonsi: add a fast path for MSAA resolving with RGB -> BGR swizzling
amd/addrlib: add back the incorrect original DCC checking
amd/addrlib: prevent defining regparm differently
amd/addrlib: define endianess differently
amd: update addrlib
ac/llvm: don’t set unsupported xnack options to fix LLVM crashes on gfx6-8
radeonsi: disable sparse buffers on gfx7-8
radeonsi: set the clear/copy cache policy based on L2 cache size
radeonsi: don’t insert start/stop pipeline stat events if it has no effect
radeonsi: never set DISABLE_WR_CONFIRM for CP DMA clears and copies
radeonsi: rename internal compute sync flags
radeonsi: remove unused SI_CP_DMA_SKIP_* definitions
radeonsi: merge CP DMA flags with internal compute flags
radeonsi: inline clear_buffer in si_screen_clear_buffer
radeonsi: set compute/cpdma sync flags in the outermost caller
radeonsi: reduce syncing in si_dcc_decompress
radeonsi: reduce syncing for initializing new buffers
radeonsi: reduce syncing in si_compute_expand_fmask when it’s already idle
radeonsi: don’t do an L2 flush in compute_do_clear_or_copy if we’re not syncing
radeonsi: rename and apply SI_OP_CPDMA_SKIP_CACHE_FLUSH to compute as well
radeonsi: use the optimal packet order before draw packets for VS flushes too
radeonsi: add SI_CONTEXT_PFP_SYNC_ME to skip syncing PFP for image operations
radeonsi: return false from si_is_format_supported instead of NULL
radeonsi: don’t use constbuf and set cache policy for 12-byte clear shader
radeonsi: don’t use a constant buffer for the copy_image compute shader
radeonsi: decrease the maximum variable block size
radeonsi: pack the variable block size in one SGPR, 10 bits per component
amd: fix parsing the last dword of DMA_DATA packets
ac/surface: add CMASK info for level 0
radeonsi: determine accurately whether the framebuffer state has DCC MSAA
radeonsi: remove si_screen::dcc_msaa_allowed
radeonsi: parallelize CMASK and DCC clears
radeonsi: return success/failure from si_alloc_separate_cmask
radeonsi: add num_layers variable into si_do_fast_color_clear
radeonsi: group and parallelize all clears in si_texture_create_object
radeonsi: set better default depth clear value
radeonsi: enable HTILE with mipmapping on gfx9+
radeonsi: unset PIPE_CLEAR_* flags for non-existent buffers
radeonsi: turn the loops over color buffers into while loops in si_clear
radeonsi: don’t use CP DMA for clears/copies except for very small ones
ac/surface/tests: move shareable code into ac_surface_test_common.h
radeonsi: fix si_compute_copy_image if DCC decompression happens before a copy
gallium/pb: pass an optional winsys pointer to the buffer destroy function
winsys/radeon: rename radeon_bo_reference -> radeon_ws_bo_reference
radeon_winsys.h: add a new function radeon_bo_reference that takes a winsys
radeon_winsys.h: add a winsys parameter to most winsys buffer functions
winsys/amdgpu: remove amdgpu_winsys_bo::ws
winsys/amdgpu: add amdgpu_cs::ws to reduce dereferences
gallium/pb: change pb_buffer::alignment to alignment_log2
gallium/pb: remove 8 bytes from pb_buffer by packing variables
winsys/amdgpu: remove another 8 bytes from amdgpu_winsys_bo by packing better
ac/surface: split dcc level info from surface_info to save space
ac/surface: overlap color and Z/S fields using a union in legacy_surf_layout
ac/surface: change legacy_surf_level::offset to 32-bit offset_256B shifted by 8
ac/surface: inline and reorder gfx9_surf_flags for better packing
ac/surface: pack gfx9_surf_meta_flags better
ac/surface: pack gfx9_surf_layout:resource_type better to save 8 bytes
ac/surface: pack radeon_surf::num_htile_levels better
ac/surface: pack alignments by storing log2 in radeon_surf
ac/surface: overlap color and Z/S fields using a union in gfx9_surf_layout
ac/surface: pack radeon_surf better
ac/surface: unify htile_levels and dcc_levels as meta_levels
ac/surface: unify htile_* and dcc_* fields as meta_* fields
ac/surface: use named “color and “zs” structures in unions
radeonsi: don’t cache FMASK transactions from CB in L2
radeonsi: restructure DCC disablement into a switch
radeonsi: allow trivial DCC clears for shared textures with DCC constant encode
radeonsi: implement per-level DCC and CMASK fast clears for gfx10+
radeonsi: implement Z/S fast clear for non-zero mipmap levels
radeonsi: parallelize Z/S conversion into TC-compatible with fast color clears
radeonsi: clean up some mess around htile_stencil_disabled
radeonsi: add si_can_fast_clear_depth/stencil helpers
radeonsi: indent the code for TC-compatibility HTILE transition
radeonsi: implement fast Z/S clears using clear_buffer on HTILE
radeonsi: enable DCC fast clears for non-zero mipmap levels and 0/1 clear values
radeonsi: when transitioning to TC-compat HTILE, try to do a proper clear
radeonsi: do Z-only or S-only HTILE clear using a compute shader doing RMW
radeonsi: refine fast clears for small buffers, always use them for large HTILE
radeonsi: try to fix DCC coherency issues with DCC decompression
radeonsi: allow DCC_DECOMPRESS via CB with MSAA textures
ac/surface: only apply the 3D swizzle mode tuning to gfx10+
ac/surface/tests: test Sienna Cichlid and Navy Flounder
ac/surface/tests: fix a random segfault in the modifier test
amd/addrlib: expose DCC address equations to drivers
meson: add an optional OpenMP dependency for AMD tests
ac/surface: add a test of DccAddrFromCoord prototype outside of addrlib
ac/surface: limit the number of swizzle modes that can have displayable DCC
ac,radeonsi: rewrite DCC retiling without the DCC retile map
radeonsi: fix and enable full DCC with MSAA 2x on gfx9
radeonsi: implement DCC MSAA 4x/8x fast clear using DCC equations on gfx9
radeonsi: enable DCC for MSAA 4x and 8x on gfx9
radeonsi: move binding the internal compute shader into si_launch_grid_internal
radeonsi: unify internal compute with SSBOs in si_launch_grid_internal_ssbos
compiler: move TEXTURE_COORD/VERTEX_GENERIC_ATTRIB limits into shader_enums.h
nir: add src and dest types to all IO loads and stores for mediump
nir: add new VARYING_SLOTs and shader info for packed 16-bit varyings
nir: add many passes that lower and optimize 16-bit input/outputs and samplers
glsl: pack 16-bit uniforms in the NIR linker
mesa: implement glUniform for packed FP16 uniforms
mesa: implement glGetUniform for FP16 uniforms
mesa: implement glGetActiveUniform for FP16 uniforms
glsl: lower mediump uniforms to FP16 based on an option
gallium: add PIPE_SHADER_CAP_FP16_CONST_BUFFERS for FP16 uniforms
st/mesa: fix nir_lower_io if it’s done right after IO vectorization
ac/llvm: implement 16-bit packed VS outputs and FS inputs
radeonsi: implement 16-bit VS->PS varyings
radeonsi: implement 16-bit VS inputs
radeonsi: optimize and legalize 16-bit samplers
radeonsi: kill 16-bit VS outputs if PS doesn’t use them or doing Z-only draw
radeonsi: enable FP16 for mediump on gfx9+ if radeonsi_fp16=true
nir: handle mediump varyings in varying compaction helpers
radeonsi: don’t decompress DCC for float formats in si_compute_copy_image
radeonsi: fix automatic DCC retiling after DCC clear and DCC decompression
radeonsi: fix automatic DCC retiling after compute image stores
radeonsi: make the gfx9 DCC MSAA clear shader depend on the number of samples
util: fix (re-enable) L3 cache pinning
Marek Vasut (2):
compiler/nir: Increment shader input count and mark as used when adding new gl_PointCoord
etnaviv: Fix point sprite Z,W coordinate replacement
Mark Janes (12):
intel: Print GPU timing data based on INTEL_MEASURE
anv: enable timestamp for INTEL_MEASURE
anv: implement anv layer of INTEL_MEASURE
blorp: add hook for INTEL_MEASURE
anv: add hooks to call INTEL_MEASURE
iris: implement iris layer of INTEL_MEASURE
iris: add a iris_context reference to iris_batch
intel: stop tracking submission state in INTEL_MEASURE
intel: support secondary command buffers in INTEL_MEASURE
intel: combine common gather routines in INTEL_MEASURE
intel: check setuid before writing output file in INTEL_MEASURE
Revert “blorp/gen12: Don’t use aux address if implicit CCS”
Matt Turner (8):
docs/freedreno: Fix a few typos
turnip: Remove unused TU_DEBUG_IR3 flag
docs: Mark VK_KHR_maintenance1 as done on turnip
ci: Use CI_PROJECT_ROOT_NAMESPACE
tu: Skip tu_tiling_config_update_tile_layout() if not using gmem
ci: Disable panfrost g52
Remove Scons leftovers
ir3: Don’t count (nopX) towards the wrong category
Matti Hamalainen (2):
gallium: Fix broken trace XML output
gallium/tools: update trace scripts to Python 3
Mauro Rossi (29):
android: r600/sfn: add sfn_nir_lower_64bit.cpp to Makefile.sources
android: freedreno/hw/isa: Add description of ir3 ISA
android: freedreno/ir3: Switch over to new encoder/decoder
android: pan/mdg: create nir pass to lower image coord bitsize
android: intel: Print GPU timing data based on INTEL_MEASURE
android: anv: implement anv layer of INTEL_MEASURE
android: iris: implement iris layer of INTEL_MEASURE
android: radv: port to using common dispatch code.
android: radv: fix building error in radv_android.c
android: util/fossilize_db: add missing sources to Makefile.sources
android: ac/rgp: fix building error
android: mesa: Move the FXT1 compressor/decompressor to util/
android: pan/bi: reorder static dependencies in gallium/dri
driconf: avoid Non-ASCII character error in driconf_static.py
android: driconf: Generate a static table when no xmlconfig
android: i965: Rename files with “intel_” prefix to “brw_”
android: util: create some standalone compression helpers
android: anv: add libcutils shared dependency
android: r600/sfn: fix sfn_nir_algebraic.c gen rules
android: vulkan/util: add vk_descriptors.{c,h} to Makefile.sources
android: amd/addrlib: define endianess to build
android: panfrost: Use the blend shader cache attached to the device
vulkan/util: Fix implicit declaration of ffs for Android build
android: anv: Remove anv_intel.c from Makefile.sources
android: anv: fix build error in anv_android.c
compiler/glsl: fix include for Android build
android: panfrost/lib: add pan_cs.c to Makefile.sources
android: gallium/radeonsi: add nir include path
android: amd/common: add nir include path
Michael Tang (5):
microsoft/compiler: Make resource_state_manager only build with_gallium_d3d12
util: Make os_read_file use O_BINARY on Windows
microsoft/spirv_to_dxil: Fix spirv2dxil I/O to use binary mode
microsoft/spirv_to_dxil: Add lowering pass to handle gl_PerVertex
microsoft/spirv_to_dxil: Add extra lowering functions according to the docs on nir_inline_functions
Michel Dänzer (53):
ci: Remove .gitlab-ci/meson-build.bat
ci: Use meson test directly instead of ninja test
wsi/x11: Use get_screen_resources_current in wsi_x11_detect_xwayland
ci: Enable process isolation for softpipe & freedreno piglit jobs
ci: Use GNU time as meson test wrapper
ci: Run ‘time’ in the background and propagate signals to test process
ci: Fix MESA_TEMPLATES_COMMIT value
ci: Update to newer ci-fairy
ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_shader
ci: Set GALLIVM_PERF=no_filter_hacks for llvmpipe-piglit-quick_gl
ci: Set GALLIVM_PERF=nopt,no_filter_hacks for llvmpipe-gles2
ci: Use MESA_ namespace for image variables in Windows jobs
ci: Use MESA_IMAGE_TAG everywhere
ci: Move FDO_DISTRIBUTION_TAG assignment to template
ci: Add and use .set-image template to construct docker image name
ci: Incorporate base image tag into dependent image tags
ci: Append build image tag to LAVA tag used for minio path
ci: Add trailing slash to path for documentation preview
ci: Restrict meson-gallium job to gstreamer runners
ci: Disable scons-win64 job
ci: Move meson-build.sh to meson/build.sh
ci: Drop SIGINT handling from meson test wrapper script
ci: Move /usr/bin/time check from meson test wrapper to build script
aco/tests: Use _exit in child process
ci: Add strace to the x86_build docker image
ci: Run meson tests in strace if it’s available and can be used
ci: Don’t run meson tests in strace for meson-mingw32-x86_64 job
intel/tools: Use subprocess.Popen to read output directly from a pipe
Revert “ci: Restrict meson-gallium job to gstreamer runners”
glcpp: Fully initialize struct gl_context
ci: Disable valgrind in some build jobs
glsl/tests: Bump glcpp valgrind test timeout to 240 seconds
glsl/tests: Don’t use tempfiles
glsl/tests: Use exit code 126 to detect valgrind errors
Revert “ci: disable glcpp tests for now”
Revert “meson: add enable-glcpp-tests option”
Revert “glsl/test: Don’t run whitespace tests in parallel”
ci: Remove INCLUDE_PIGLIT
ci: Build ARM baremetal rootfs in native container
ci: Merge ARM testing docker images to a single arm_test one
wsi/x11: Wait for fences with IMMEDIATE on Xwayland
ci: Fix HTML summary path for piglit OpenCL job artifacts
intel/blorp: Initialize texture_data[0]
ci: Do not install armhf LLVM packages
ci: Bump LLVM/clang from 10 to 11
ci: Move docker images from Debian buster to bullseye
ci: Install librenderdoc from Debian bullseye
ci: Install spirv-tools from Debian bullseye
ci: Install llvm-spirv from Debian bullseye
ci: Install GLVND from Debian bullseye
ci: Install Rust & cargo from Debian for x86_test* images
ci: Do not append ci-templates commit hash to Windows docker image tag
ci: Update to latest ci-templates
Michel Zou (25):
vulkan/lavapipe: add missing VKAPI_ATTR/CALL
vulkan: Fix windows api conflict
zink: Fix win32 build
vulkan: Fix windows api conflict
meson: invalid keyword argument dependencies
zink: fix win32 build
util: fix gcc vsnprintf overflow
glapi: keep declspec(thread) msvc-specific
vulkan: implement wsi_win32 backend
lavapipe: add mingw32 def file
lavapipe: set empty dll prefix
gallium: remove DROP_PIPE_LOADER_MISC
meson/xmlconfig: win32 regex fallback
meson: detect winflex/bison only on native win32
turnip: update features.txt
lavapipe: update features.txt
vulkan: fix CreateRenderPass prototype
swr: extern declaration for win32 intrinsics
swr: fix win32 intrinsics
swr: Fix SWR_CONTEXT pre-declaration
swr: fix unused SplitString warning
swr: fix deprecated llvm 11 declaration warning
swr: fix array-bounds warning
lavapipe: Fix type narrowing
docs: missing lvp win32surface ext in features.txt
Mike Blumenkrantz (775):
zink: clamp sampler+samplerview limits
util/hash_table: optimize rehash for empty table and no-func clears
util/set: optimize rehash for empty table and no-func clears
util/set: add the found param to search_or_add
util/set: split off create() into an init() function
zink: optimize renderpass hash table
nir/lower_uniforms_to_ubo: set explicit_binding on uniform_0
zink: add spirv builder function for runtime array type
zink: add util function for emitting ntv atomic ops
zink: add set_shader_buffers pipe_context method
zink: hook up ssbo shader bindings
zink: emit ssbo variables in ntv
zink: modify ubo loading in ntv to work for ssbos
zink: start supporting atomic shader ops
zink: split UBOs and samplers into ‘read’ batch references during draw
zink: flag ssbo buffer resources as having pending writes on batch
zink: add more usage bits for buffer types
zink: partially enable SSBO pipe cap
zink: only emit streamout targets during draw if we have them
zink: rework framebuffer state
zink: add batch flag for checking renderpass state
zink: remove renderpass refcounting
zink: ralloc zink_framebuffer structs
zink: rename param in zink_create_framebuffer
zink: use ‘fb’ variable name for zink_framebuffer objects in zink_framebuffer.c
zink: decouple renderpass from framebuffer state
zink: move zink_clear to zink_clear.c
zink: start to refactor clearing
zink: handle clears with scissor regions
zink: break out scissor region testing for clear functions
zink: break out color/zs no_rp clear into separate functions
zink: break out some of the u_blitter setup into util function
zink: add a pipe_context::clear_texture hook
zink: enable PIPE_CAP_CLEAR_TEXTURE
zink: reduce blendfactor when alpha_to_one is set
zink: tweak xfb slot mapping in ntv
zink: process ubos with location values set as long as they’re actually ubos
zink: add VK_KHR_driver_properties
zink: enable WSI-faking for RADV too
zink: rename zink_context::*image_views -> sampler_views
zink: add ntv util function for getting image type
zink: rewrite image/sampler glsl -> vk type functions for robustness
zink: add spirv_builder function for hexops
zink: add spirv builder functions for image ops
zink: add ntv function for emitting variable access decorations
zink: verify format caps and add storage image usage when possible in creation
zink: add ‘has_draw’ flag to batch struct
zink: add a pipe_context::memory_barrier hook
zink: add shader image support to zink_binding()
zink: add new ‘sampler_types’ variable to ntv_context struct
zink: handle image variable types in ntv
zink: handle more atomic ops in ntv
zink: handle nir_intrinsic_memory_barrier in ntv
zink: add nir_var_uniform case to get_storage_class()
zink: expand ntv array derefs to track image derefs
zink: add handling for all basic image ops in ntv
zink: enable early frag test execution in ntv when necessary
zink: enable image caps in ntv when a shader has images
zink: handle image descriptors during zink_shader creation
zink: break out bufferview creation into separate function
zink: add a pipe_context::set_shader_images hook
zink: handle shader image descriptor updates during draw
zink: check if multisample support exists for shader image formats
zink: export shader image caps using features
zink: GLSL 420
docs/features: mark off GL 4.2 for zink
zink: set PIPE_CAP_COPY_BETWEEN_COMPRESSED_AND_PLAIN_FORMATS
zink: force per-sample interpolation
zink: set PIPE_CAP_FRAMEBUFFER_NO_ATTACHMENT
zink: set PIPE_CAP_ROBUST_BUFFER_ACCESS_BEHAVIOR
zink: support VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL usage
zink: add layout member to barrier setup in draw
zink: support PIPE_FORMAT_X24S8_UINT
zink: check correct caps for PIPE_CAP_IMAGE_LOAD_FORMATTED
zink: enable PIPE_CAP_SAMPLER_VIEW_TARGET
gallium/u_inlines: add helper for simplifying pipe_context::resource_copy_region
zink: add function for waiting on a specific batch’s fence
zink: don’t force a renderpass start when setting framebuffer state
spirv: handle NoContraction in GLSL450 alu ops
zink: fix streamout for clipdistance
zink: add a VkExternalMemoryImageCreateInfo for PIPE_BIND_SHARED images
zink: set lower_mul_2x32_64 when 64bit int support is available
zink: enable PIPE_CAP_TEXTURE_MIRROR_CLAMP_TO_EDGE
zink: flag gfx pipeline dirty using newer mechanism
zink: guarantee surface lifetimes for shader images
st/bitmap: use GL_CLAMP_TO_EDGE for bitmap samplers
st/drawpixels: use GL_CLAMP_TO_EDGE instead of GL_CLAMP for samplers
zink: don’t export PIPE_CAP_MAX_COMBINED_SHADER_BUFFERS value
zink: add spirv builder function for OpAtomicStore
zink: flag ssbo buffer resources as having pending writes per stage
zink: handle null ssbo attachments without crashing
zink: handle more ssbo ops in ntv
zink: rework ssbo indexing and binding
zink: support nir_intrinsic_store_ssbo
zink: implement get_ssbo_size nir intrinsic
zink: flatten out ssbo/ubo variable decls in ntv
zink: export ssbo caps
Revert “glcpp: disable ‘windows’ tests”
meson: add enable-glcpp-tests option
ci: disable glcpp tests for now
zink: add barrier helper for buffer resources
zink: add a stage param for buffer resource barriers
zink: add helper function for checking if access flags include write access
zink: improve barrier helper for buffer resources and add check for barrier need
zink: flag previous vertex stages as dirty when toggling a later stage
zink: add shader key for vs shaders
zink: flag shaders as needing update when clip_halfz changes
zink: move tess/geom shader info to vs shader key
glsl: support 64bit integer loop iterators
radv: print image array size in debug mode
zink: move maintenance2 extension to right file
zink: unify shader image unbind codepath
zink: be a little more precise about query types in one conditional
radv: null bo list pointer for null descriptors on update
radv: zero the bo descriptor array when allocating a new set
zink: force 4 component formats for samplerview/render textures
zink: support nir_intrinsic_memory_barrier_buffer
zink: add defines for compute batch and gfx batch count
zink: bump resource usage flags to allow 5 batches
zink: make get_resource_usage() public
zink: make zink_batch_reference_resource_rw return usage info
zink: wait on compute batch when necessary during transfer map
zink: add spirv_builder function for emitting a 3word literal exec mode
zink: handle COMPUTE bindings in compiler/ntv
zink: handle COMPUTE setup in ntv
zink: handle COMPUTE glsl variables
zink: implement shared load/store nir ops in ntv
zink: add handling for shared atomic ops in ntv
zink: handle nir_intrinsic_memory_barrier_shared in ntv
zink: ignore compute batch when starting/ending batches
zink: take a pipe_reference param in zink_batch_reference_program
zink: refactor batch creation
zink: make allocate_descriptor_set() take more params instead of a gfx_program
zink: explicitly get shader stage from shader during binding setup in draw
zink: rename pipeline_cache_entry -> gfx_pipeline_cache_entry
zink: add compute programs and pipelines
zink: break out descriptor updating into separate function
zink: setup compute batch and add handling
zink: handle memory barriers for compute batch
zink: handle descriptor set updates for compute operations
zink: flush gfx/compute batches when the other pipeline needs resource sync
zink: add launch_grid pipe_context hook for compute handling
zink: export compute-specific shader/compute caps
zink: enable compute
zink: GLSL 430
features: mark off GL 4.3 for zink
zink: add spirv_builder wrapper for vote intrinsics
zink: handle vote intrinsics in ntv
zink: rework viewport handling
zink: handle nir_texop_texture_samples
zink: add a texture barrier hook
zink: use = and not |= for VkMemoryPropertyFlags during resource creation
zink: set HOST_COHERENT bit for coherent resource creation
zink: track persistent, non-coherent, writable transfer map count for resources
zink: slightly refactor batch resource referencing in update_descriptors()
zink: flush all resources with persistent maps on work batch before draw/compute
zink: enable PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
zink: rename zink_context::dummy_buffer -> dummy_vertex_buffer
zink: create dummy xfb buffer
zink: handle null xfb buffers
zink: use better mapping for PIPE_FORMAT_X24S8_UINT
zink: handle nir_intrinsic_load_helper_invocation
zink: fix xfb buffer refcounting
zink: add PIPE_BIND_QUERY_BUFFER to the all-purpose resource creation path
zink: add a get_query_result_resource hook
zink: enable PIPE_CAP_TGSI_ARRAY_COMPONENTS
zink: enable PIPE_CAP_QUERY_BUFFER_OBJECT
zink: GLSL 440
zink: enable PIPE_CAP_CONDITIONAL_RENDER_INVERTED
zink: enable PIPE_CAP_CLIP_HALFZ
zink: enable PIPE_CAP_TGSI_TXQS
zink: enable PIPE_CAP_TEXTURE_BARRIER
zink: GLSL 450
features: mark off GL 4.5 for zink
zink: add spirv interfaces for bo and image/sampler/push variables
zink: lower flrp64 and ffma64 when in softfp64 mode
zink: always use query->type for starting/stopping xfb queries
zink: make the xfb_query_pool into an array
zink: break out cpu query reading for qbos into separate function
zink: put SO_OVERFLOW queries on the primgen list
zink: support SO_OVERFLOW pipe query types
zink: fix streamout for tess stage
zink: flag exact alu op results in ntv with NoContraction
zink: unset generated TCS if its parent TESS is unset
zink: hook up cs invocation queries to the compute batch
zink: add support for pipeline statistics queries
zink: fix slot mapping for legacy gl io with tess stages
zink: handle 1bit undef values in ntv
zink: add handling for ARB_shader_draw_parameters variables in ntv
zink: create a struct for tracking push constant layout
zink: rework tcs injection to be more compatible with new push const struct
zink: add push constant value to indicate whether the current draw is indexed
zink: wrap shader gl_BaseVertex access with a bcsel based on push constant state
zink: add a draw_id param to vs push constants
zink: add a vs shader key for rewriting gl_DrawID
zink: break out push constant creation in compiler and add drawid value
zink: rewrite drawid based on shader key value
zink: add util function for submitting the compute batch
zink: enable PIPE_CAP_TGSI_VOTE
zink: enable PIPE_CAP_DRAW_PARAMETERS
zink: enable PIPE_CAP_POLYGON_OFFSET_CLAMP
zink: enable PIPE_CAP_QUERY_SO_OVERFLOW
zink: enable pipeline statistics cap
zink: PIPE_CAP_GL_SPIRV
zink: GLSL 460
features: mark off GL 4.6 and ES 3.1 for zink
zink: support nir_intrinsic_group_memory_barrier
zink: fix device codegen extension detection
zink: add nir_intrinsic_memory_barrier_image handling
zink: use nir_shader_instructions_pass for draw params pass
zink: add flag for no-oping fence finish
zink: hook up valid_buffer_range for buffer resources using util_range
zink: create a VkPipelineCache object on the screen and use it
zink: add a disk cache for pipeline objects
gallium/trace: add a pipe_screen::get_compiler_options method
zink: handle dual blending override from driconf
zink: move command pool to the batch
nir/lower_tex: rewrite tex/txb -> txd/txl before saturating srcs
mesa/st: add pipe_sampler_state::border_color_is_integer
mesa/st: add PIPE_CAP_GL_CLAMP
zink: enable GL_CLAMP cap
gallium/trace: remove transfer_map assert
zink: add helper function for getting pipeline stage from shader stage
zink: set buffer resource barriers for descriptor resources in update_descriptors()
zink: rework xfb counter resource barriers
zink: rework xfb barrier transitions when reusing as vertex inputs
zink: remove aspect param from zink_resource_barrier
zink: add a VkPipelineStageFlags param to zink_resource_barrier()
zink: add helper for image resource barriers and avoid unnecessary barriers
zink: use define for max descriptor array size
zink: add generic wrapper for checking whether a resource needs a barrier
zink: avoid emitting unnecessary pipeline barriers during update_descriptors
zink: break out barrier transitioning in update_descriptors
zink: combine resource barriers where possible during update_descriptors
zink: take struct zink_batch param instead of direct cmdbuf in barrier helpers
zink: assert batch is not in a renderpass when emitting pipeline barrier
zink: add barriers for index and draw param buffers
zink: add access param for image resource barriers
zink: add access info for update_descriptor image barriers
zink: add batch references for resources in clear functions
zink: improve barrier usage for clear functions
zink: zink_resource_barrier -> zink_resource_image_barrier
zink: add general zink_resource_barrier() wrapper
zink: be more explicit with image barriers for copy operations
zink: fix surface creation for cube slices
zink: tag some missing ES features
zink: update relnotes
zink: just call context destructor on creation fail
zink: add buffer barriers for resource_copy_region
zink: break out buffer copying into util function with batch param
zink: just end the current renderpass in zink_batch_no_rp()
zink: break out even more of zink_blit state saving
zink: use vkGetFenceStatus when we’re obviously checking for status
zink: fix buffer resource usage flags
zink: break out query result buffer copying into util function
zink: simplify some of the qbo direct buffer write code
zink: better handling for availability queries on qbos when query/resource is busy
zink: improve batch flushing for queries when compute batches are involved
zink: always use 64bit flag for query results
zink: handle scissor+viewport states dynamically if extension is available
zink: remove ‘scissors’ member of viewport state
zink: always set VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT for non-staging resources
zink: add available|visible masks to all barriers in ntv
zink: set conformant ubo/ssbo size limits
zink: destroy renderpass objects on context destroy
zink: rename ‘has_draw’ flag on batches and set it when the batch is used
zink: move gfx pipeline creation closer to the bind point
zink: only reset pipeline hash conditionally when updating fb state
zink: simplify barrier usage
zink: beef up zink_transfer_flush_region
zink: only wait on last write-batch for resources during transfer_map
zink: change some transfer_map cases of waiting on cs batch to flushing cs
zink: handle PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE in transfer_map for buffers
zink: update ci results
zink: disable some builtin-gl-sample-mask sample shading tests on ci
zink: actually disable sample mask tests on ci
lavapipe: fix color-only renderpass clears
zink: ralloc the main context
zink: create framebuffer and renderpass objects just before vkCmdBeginRenderPass()
zink: defer pipe_context::clear calls when not currently in a renderpass
zink: also defer fb clears when conditional render is active
zink: break out region overlap testing function into helper
zink: add helper for converting pipe_box -> u_rect
zink: add another helper for checking whether one rect covers another
zink: break out fb clear apply into helper function
zink: add helper for applying/discarding clears based on a rect
zink: discard pending clears during blit/copy if we’ll overwrite the data
zink: add yet another clear helper, this time for applying overlap regions
zink: optimize the remaining read cases of applying pending clear calls
zink: move all the clear stuff to zink_clear.h
zink: always do full-fb clears in renderpass begin when possible
zink: ci changes
zink: improve descriptor set oom handling
zink: ci updates
zink: set PIPE_CAP_TEXTURE_BORDER_COLOR_QUIRK
zink: force 128 fs input components on intel drivers
zink: add some spirv builder functions for spec constants
zink: support gl_LocalGroupSize
zink: add more ci flakes
util/bitscan: add u_foreach_bit macros
v3dv: remove for_each_bit() macro
radv: for_each_bit -> foreach_bit
freedreno/vulkan: for_each_bit -> foreach_bit
anv: for_each_bit -> foreach_bit
zink: use 0 as default for spec constants
zink: no-op descriptor updating for draws without descriptors
nir/texcoord_replace: add a yinvert param
zink: store prim mode to context during draw
zink: handle point sprite
zink: ci updates
zink: avoid memset during update_descriptors() for resources refs
zink: move samplerview referencing around in update_descriptors()
zink: reorder zink_bind_vertex_buffers()
zink: create a single fence per batch on startup and then reuse
zink: only flush batches in pipe_context::flush if they actually have work
zink: add a define for compute batch count
zink: add util function for returning previous batch
zink: handle PIPE_FLUSH_DEFERRED
zink: handle VK_IMAGE_LAYOUT_PRESENT_SRC_KHR barriers
zink: set VK_IMAGE_LAYOUT_PRESENT_SRC_KHR on fb resources at eof flush
zink: setup CmdBindVertexBuffers2EXT member in screen for dynamic state
zink: make dynamic state usage in pipeline creation more explicit/flexible
zink: use dynamic vertex buffer strides
zink: rename zink_context::buffers -> vertex_buffers (and usage mask)
zink: add zink_program struct as a base class for compute/gfx structs
zink: use zink_program in zink_batch_reference_program()
zink: ralloc zink program structs
zink: unref programs last in batch reset
zink: properly size descriptorset layout binding stack array
zink: increment batch->descs_used during update_descriptors flushing
zink: do batch-program tracking after possibly cycling batch in update_descriptors()
zink: add spirv builder methods for OpImageQueryLevels
zink: hook up nir_texop_query_levels
zink: relax tessellation shader reqs
zink: ci updates
zink: fix dynamic bo lowering for ssbo stores
zink: pre-fetch all format properties during screen init
zink: use pre-fetched format properties everywhere
zink: don’t start renderpasses during descriptor update
zink: add more usage bits for buffer resource creation
zink: handle null src for fb refs
zink: track all framebuffers per batch
zink: store total memory size on zink_screen
zink: track resource mem usage per batch
zink: force batch flush if batches are using more than 1/10 total system memory
mesa/st: clamp scissored clear regions to fb size
mesa/st: no-op scissored clear calls with size zero
zink: handle GLSL_SAMPLER_DIM_EXTERNAL in ntv
zink: ci updates
mesa/st: even better no-oping for clears
zink: apply only the pending zs clear bits during deferred clears
zink: enable PIPE_CAP_CLEAR_SCISSORED
zink: export PIPE_CAP_TGSI_VS_LAYER_VIEWPORT
zink: use staging resource for write transfer_map in order to not stall
zink: ci updates
zink: rewrite macro for getting KHR device functions
zink: add vk/spirv caps/extension for shader LAYER variable
zink: remove ntv streamout assert
zink: fix streamout emission for super-enhanced layouts
zink: fix slot mapping for fat io variables
zink: fix location usage for explicit xfb outputs
zink: run more nir passes for tess shaders
zink: stop allocating xfb slot map
zink: handle direct xfb output from output variables
zink: evaluate existing slot map during program init and force new map as needed
zink: rename variable in update_so_info()
zink: use info.has_transform_feedback_varyings to determine xfb enablement
zink: pass so_info directly to update_so_info()
zink: use slightly stricter check for update_so_info() callsite
zink: only export necessary xfb outputs to ntv
zink: don’t pass so_info to ntv at all unless it’s necessary
zink: unref ctx->framebuffer on context destroy
zink: fix instance/device versioning (for real this time)
zink: simplify some update_descriptor code
zink: move descriptor sets/pools from batches to programs
zink: store and reuse descriptorsets after batch completion
zink: move descriptor set alloc function to zink_program.c
zink: use more precise sizing for descriptor pools
zink: add helper function for cycling a batch
zink: even better handling for descriptor oom
zink: remove flushes for batch descriptor use
zink: add bucket allocating for descriptor sets
zink: add scaling factor for descriptor set bucket allocations
zink: add caching for descriptor sets
zink: add second level cache for descriptor sets
zink: move streamout to draw_vbo
zink: reorder descriptor barrier applying during updating
zink: move surface refs to the end of descriptor updating
zink: split descriptor sets based on usage
zink: use dynamic offsets for first ubo
zink: introduce descriptor states
zink: add a null sampler view descriptor hash to the screen
zink: pre-hash sampler views and states
zink: store last-used descriptor set for each type of set for quick reuse
zink: actually flag all used resources as used during update_descriptors
zink: add program pointer to desc set struct
zink: move descriptor set allocation near the top of update_descriptors
zink: only batch-reference the program in use once per descriptor update
zink: improve descriptor cache invalidation
zink: add flag for recycled descriptor sets
zink: don’t double iterate all the per-batch sets on reset
zink: add VkPipelineLayout to zink_program meta struct
zink: split out ubo descriptor updating
zink: break out ssbo descriptor updating
zink: break out sampler descriptor updating
zink: break out image descriptor updating
zink: deduplicate VkWriteDescriptorSet setup
zink: break out descriptor stuff into new files
zink: break out all the descriptor pool/layout stuff into a new struct
zink: change program pointer on struct zink_descriptor_set to pool pointer
zink: track number of sets currently allocated per descriptor pool
zink: move descriptor type to pool object from set
zink: allow reuse of zink_descriptor_pools between programs
zink: remove intermediate func for descriptor set getting
zink: simplify check for knowing whether descriptor updating is needed
zink: pre-size descriptor transition hash table
zink: move descriptor binding out of the update codepath
zink: reuse descriptor barriers across draws
zink: track resource count on descriptor pool object
zink: directly use resource count from pool instead of accumulating every time
zink: remove struct zink_descriptor_resource from descriptor updating
zink: don’t create descriptor barrier hash tables for cached descriptor set
zink: always use VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL for sampler bindings
zink: remove image layouts from descriptor states
zink: avoid hashing states without descriptors
zink: fix arrays of texel buffer descriptors
zink: ci updates
zink: move vertex_buffers_enabled_mask to non-hashed part of pipeline state
zink: optimize pipeline hashing
zink: implement an extremely dumb resource memory cache
zink: ci updates
zink: remove debug printf
lavapipe: fix push descriptor set indexing
lavapipe: set more resource bind flags using image/buffer usage bits
zink: move buffer<->image copying to pipe_context::resource_copy_region hook
zink: remove extraneous flush in transfer_map_region_flush
zink: ci updates
zink: optimize resource usage tracking
zink: use _mesa_set_search_and_add() for set management
zink: ralloc screen objects
zink: implement a surface cache
zink: use a safer iteration for fb surfaces during rp init
zink: determine whether the vulkan driver requires mesa flush wsi
zink: force mesa flush implicit fencing on ANV
zink: force explicit fence only on first frame flush
zink: use internal api for first-frame fence
zink: return true from program ref functions upon free
zink: unset ctx->program pointers when an unref destroys the object
zink: stop leaking programs
vk/util: add unified shader module struct/functions
vk/util: add a util macro for initializing stack vk_shader_module structs
lavapipe: use common interfaces for shader modules
radv: use common interfaces for shader modules
v3dv: use common interfaces for shader modules
tu: use common interfaces for shader modules
anv: use common interfaces for shader modules
zink: add batch usage flags for sampler views/states and desc sets
zink: avoid looping for non-ubo descriptor updates based on set usage
zink: break out batch id finding for resource usage into util function
zink: move resource internals to a separate struct
zink: split out backing resource object create/destroy
zink: track resource_object usage instead of resource usage
zink: handle cached descriptor set punting
zink: add some asserts for pipeline barriers to check renderpass state
zink: add util function for checking whether a shader descriptor is a buffer
zink: add util function for checking whether shader descriptor is buffer from program
zink: use an explicit zink_buffer_view struct
zink: explicitly use zink_surface objects for sampler/image view objects
zink: store bufferview hash to bufferview struct
zink: simplify bufferview and imageview descriptor state hashing
zink: add extra batch tracking for sampler views
zink: massively beef up batch tracking for shader images
zink: add helper function for getting a resource for a descriptor
zink: update null descriptor hashes to reflect current descriptor states
zink: improve debug asserts for samplers/images during descriptor updates
zink: properly handle null bufferview descriptor states
zink: cache bufferviews
zink: add missing null check
zink: unset last_vertex_stage_dirty after applying it
zink: run nir_convert_from_ssa last during compile
zink: use intermediate var for glsl non-array type during shader create
zink: break out bo array type construction into ntv util function
zink: also break out whole ntv bo struct pointer construction
zink: add unsized array type to get_glsl_type_element() handling
zink: add debug info about missing atomic ops
zink: add ntv util function for checking if a glsl type is an atomic counter
zink: break out sized uint array construction into util function
zink: flatten binding numbers a bit
zink: directly set nir variable bindings for reuse during ntv
zink: move zink_binding() to compiler.c
zink: apply Delete All The Code methodology to the ubo/ssbo variables
zink: set ntv variable descriptor sets during compile phase
zink: ci updates
ci/panfrost: disable the rest of these jobs temporarily
zink: hook up resource bind history
zink: remove direct samplerview batch-tracking
zink: add a pipe_context::invalidate_resource hook
zink: set valid region for streamout buffers on bind
zink: handle streamout buffer rebinds
zink: invalidate resources on map when discarding range
zink: enable PIPE_CAP_INVALIDATE_BUFFER
zink: switch to deqp-runner for piglit jobs
zink: always use requested format for sampler view creation
zink: ci updates
zink: more consolidation for null sampler/image view hashing
zink: add a pipe_context::fence_server_sync hook
zink: add enum for different queues
zink: refactor resource_sync_writes_from_batch_usage() to manage batch id internally
zink: convert ZINK_RESOURCE_ACCESS defines to enum
zink: abstract zink_get_resource_usage() and move it to be internal
zink: return enum zink_queue from zink_batch_reference_resource_rw()
zink: split out batch resource-set clearing into separate function
zink: move active query pruning to batch reset
zink: move batch init into zink_batch.c
zink: also move batch destructor into zink_batch.c
zink: move other batch-tracking implementations to unified codepath
zink: use macro to streamline batch struct member init
zink: remove query batch-tracking init from begin_query()
zink: move fence reset to zink_fence_init()
zink: clear framebuffer state on context destroy
zink: enable spirv extension for post depth coverage
compiler/spirv: fix image sample queries
zink: handle nir_intrinsic_image_deref_samples
zink: flatten 2d_array surfaces when necessary
lavapipe: support VK_KHR_copy_commands2
lavapipe: rewrite cmdbufs to always do descriptor binds/pushes first
lavapipe: force state updates when beginning queries
llvmpipe/setup: force fs constant updating upon beginning queries
zink: break out surface viewtype clamping into util function
zink: improve surface viewtype clamping
zink: correctly clamp samplerview surface types
ci/lavapipe: split out lavapipe ci into lavapipe dir
llvmpipe/setup: use bigger hammer to force fs constant updating correctly
zink: split off a bunch of batch struct members to new batch state struct
zink: rewrite queue dispatch to use monotonic batch ids instead of hardcoded ones
zink: more accurately check samplecount caps for shader images
zink: make fb ref func return bool on free
zink: add explicit surface/bufferview batch-tracking functions
zink: use surface references for fb attachments
zink: break out surface destroy function into a screen function
zink: use a custom surface referencing function whenever unrefing a surface
zink: implement a global framebuffer cache
vk: consolidate dynamic descriptor binding sorting
ci: update xfails for ppc64le and s390x
zink: break out buffer mapping part of zink_transfer_map
zink: cache transfer maps
zink: unify clear color conversion code
nir: add nir_lower_indirect_builtin_uniform_derefs()
st/glsl_to_nir: lower indirect derefs of builtins in non-packed uniform case
softpipe: ci updates
zink: move ‘batch_id’ and ‘is_compute’ members to fence
zink: make batch usage unsetting function public
zink: always reset batch states when finding a new one
zink: move batch-tracked resources to fence object
zink: fix spirv image operand ordering
zink: fix multisampled shader image load/store
zink: force PIPE_SWIZZLE_1 for X channels in samplerviews
zink: handle blitting of color formats with ignored alpha channels
zink: emulate PIPE_FORMAT_R8G8B8X8_UNORM
zink: ci updates
zink: relax unreachable() to debug_printf when waiting on batch
zink: rework public batch flush function to be useful again
zink: move zink_flush_compute() users to zink_flush_queue()
zink: always flag xfb barrier on gfx flush when appropriate
zink: simplify some queue-related query code
zink: refactor clears a little to track a bitfield of enabled clears on the context
zink: trigger pending clears during flush
zink: ci updates
zink: add wrapper to reset batch state structs
zink: call clear() instead of reset() for batch states on context destroy
zink: unify gfx and compute batches
zink: isolate gfx stage bits when updating shader modules
zink: store conditional render predicate to query and split out start/stop
zink: only update conditional render buffer when it needs to be updated
zink: toggle conditional render when beginning/ending a renderpass
zink: ci updates
zink: handle gallium multi draws more effectively
zink: create separate upload mgr for constants
zink: explicitly use stream uploader for staging buffers
zink: add buffer_subdata hook
zink: avoid unnecessary resource refs during descriptor update
zink: remove handling for resource flushing between compute/gfx batches
zink: remove unnecessary flush during image maps
zink: add more rp cache asserts
compiler/spirv: use undefs when extending image coords
zink: don’t generate sampled image type for non-sampled images
util/set: stop leaking u32 key sets which pass a mem ctx
lavapipe: fix CmdCopyQueryPoolResults for partial pipeline statistics queries
lavapipe: use the passed offset for CmdCopyQueryPoolResults
lavapipe: stop tracking draw start/count on rendering state
zink: ci updates
lavapipe: ignore templateType when descriptor template isn’t for push descriptors
lavapipe: remove lvp_descriptor_update_template::descriptor_set_layout
zink: fix handling for image types in resource_copy_region hook
zink: also fix image buffer layer copying
lavapipe: fix array texture region copies
zink: only do shader updates when relevant stages are dirty
zink: use correct surface ref function for context destroy
zink: stall when we start getting a lot of uncompleted batches
zink: reset all fences when waiting on batch state
zink: fix format support detection for storage texel buffers and shader images
zink: break out image/buffer create info structs into helper funcs
zink: make descriptor state invalidate public
zink: reorder barrier util functions to set up barrier struct before batch
zink: break out barrier struct initializing into helper funcs
zink: create separate vk image/buffer objects for shader image use
zink: incrementally add image usage flags based on device caps
zink: add color output bit and/or use linear tiling for sampled images
zink: check image format props before creating image
zink: toggle between linear/optimal tiling during image creation
zink: flatten out buffer creation usage flags codepath
zink: ralloc shader cache and keys
zink: rework border color handling
zink: clean up query creation failure paths
zink: create result buffers for all query streams
zink: remove flush from query buffer copy
zink: manually handle more bool query types for copying
zink: remove special casing for occlusion qbos
zink: rewrite query internals
zink: bump pools up to 5k queries each
zink: don’t use PARTIAL bit for query results with time queries
zink: reorder availability handling for (user) qbos
zink: remove explicit fencing for query results
zink: ci updates
lavapipe: refactor base draw dispatch to handle multidraws
lavapipe: refactor indexed draw dispatch to handle multidraws
aux/draw: stop copying draw params unnecessarily
aux/draw: rewrite PRIM_RESTART_LOOP macro as a function
aux/draw: pass the full draw params through to draw_instances()
aux/draw: pass the full draw params through to draw_pt_arrays_restart()
aux/draw: move draw param sanitization to end of function
aux/draw: track increment_draw_id value from draw info
aux/draw: pass full draw params to draw_pt_arrays()
llvmpipe: stop flattening multidraws
lavapipe: ignore unused clearvalues when beginning renderpass
zink: rework texture_barrier hook
zink: move update_descriptors & related funcs to zink_descriptors.c
zink: move descriptor barrier handling to main update function
zink: simplify some descriptor update function parameters
zink: use GENERAL layout for sampler images that are also bound as shader images
zink: rework some includes
zink: rework memory_barrier hook
zink: add locking for descriptor pools
zink: add locking for resource maps
zink: manually invoke cpu detection during screen init
zink: add locking for batch states
zink: add function for checking whether a batch is done
zink: split fence finish func
zink: add locking for fence resources
zink: explicitly reset a couple more batch state members
zink: assume fence has already completed if a batch state isn’t found
zink: rename init_batch_state to get_batch_state
zink: store context to batch state
zink: make a local screen pointer in zink_flush
zink: remove zink_fence_init()
zink: move VkQueue to batch object
zink: break out queue submit into separate functions
zink: also check for device lost reset on flush
zink: remove zink_create_fence()
zink: track coherent resource objects
zink: use cached memory for all resources when possible
radv: stop zeroing radv_draw_info during draw
radv: refactor draw dispatch
radv: track whether gl_BaseInstance is used
radv: simplify vs draw param counting during setup
radv: set gfx pipeline vtx_emit_num to the number of sgprs
radv: track whether drawid is used on the pipeline struct
radv: track whether baseinstance is used on the pipeline struct
radv: break out vertex shader param emission into separate function
radv: make vertex param sgpr count more explicit
radv: reorder vertex shader params
radv: don’t emit baseinstance and drawid if neither is used
radv: don’t reset vertex state params on pipeline bind if reg layout matches
zink: implement threaded context
zink: ci updates
zink: handle PIPE_MAP_DONTBLOCK for buffer read maps
zink: add set_context_param hook
zink: add batch tracking id for program struct
zink: track last completed batch id to optimize checking states
zink: handle expired deferred fences more reasonably
zink: hook up timeline semaphore signalling during batch submission
zink: add timeline semaphore fastpath for checking/triggering batch completion
zink: optimize batch states for timeline use
zink: enforce device lost status
zink: be more explicit about blit layer/depth usage
zink: use VkSubresourceLayout::depthPitch as layer_stride when mapping 3D imgs
zink: zink_push_constant -> zink_gfx_push_constant
zink: use max_rt to determine number of blend state attachments
zink: emit ImageCubeArray cap when accessing arrayed cube dimension images
zink: fix layercount for array texture blits
zink: add some asserts to avoid zero-sized blit regions
features: mark off ARB_compute_variable_group_size for zink
features: mark off GL_OES_viewport_array for zink
zink: store shader_info to ntv_context struct
zink: only emit SpvCapabilitySampleMaskPostDepthCoverage if the mode is set
zink: enable PIPE_CAP_TGSI_TES_LAYER_VIEWPORT
features: mark off ARB_shader_viewport_layer_array for zink
zink: avoid cached memory allocations when not requested
util/threaded_context: support pipe_context::set_sample_locations
zink: hook up cs push constant for nir_intrinsic_load_work_dim
zink: use better usage flags for staging resources
zink: use vkGetPhysicalDeviceFormatProperties2 when available
zink: use 2 variant to check image format props during create
zink: only use host mem for staging resources with linear tiling
zink: move cmdpool reset to batch state reset
zink: split total_mem off to total_video_mem, use total_mem for tc
zink: relax maybe_flush mem threshold
zink: relax maybe_flush batch count threshold
zink: check last_finished first in fence_finish early out case
zink: defer timestamp query pool resets to end_query
zink: reset queries when suspending if >50% of total pool is used
zink: don’t use cached mem for staging resources
zink: flag DYNAMIC resources as coherent
zink: drop VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT from compute path
aux/trace: add a set_inlinable_constants hook
intel: avoid dumping null cs sampler/binding states
zink: emit WorkgroupSize when not using ExecutionModeLocalSize
lavapipe: add some asserts for blit region extents
zink: export PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER
aux/trace: add screen deduplication for zink+lavapipe tracing
aux/trace: add a bunch of methods for lavapipe
util/set: add macro for destructively iterating set entries
util/hash_table: add macro for destructively iterating entries
aux/trace: add GALLIUM_TRACE_TRIGGER mode
zink: add a pipe_screen::finalize_nir hook
zink: implement uniform inlining
zink: add env var to force uniform inlining
zink: remove atomic usage from batch tracking comparisons
zink: bypass separate stencil path in resource_reference_rw when not a zs image
zink: fix conditional when assigning tess variable io
zink: stop unmapping resources
zink: simplify clear-apply on fb state change
zink: use set_foreach_remove()
zink: use explicit subpass deps
zink: hook up EXT_fragment_shader_interlock
zink: support ARB_fragment_shader_interlock
aux/trace: dump all the blend state members
features: mark off ARB_fragment_shader_interlock for zink
gallium/threaded_context: add another rule for buffer mapping
zink: fix CI flakiness in glx-multithread-clearbuffer
zink: make timeline semaphores per-screen
zink: handle checking batch completion from other contexts without timelines
zink: only unmap PIPE_MAP_ONCE in synchronous mode
zink: don’t lose existing pNext when using wsi_image_create_info in image creation
anv: fix debugoptimized build compile
zink: move descriptor state management to descriptors.c
zink: make a bunch of descriptor functions static
zink: create separate linear tiling image for scanout
zink: flag anv for mesa image create wsi
zink: disable mutable formats for zs formats and scanout images
aux/trace: enhance trigger mode to dump context states during bind
aux/trace: dump current fb state on trigger-mode draw if it hasn’t been seen yet
aux/trace: do deep dumps of fb state for triggered traces
aux/trace: use ralloc_free for ralloc()ed state pointers
zink: compare against screen batch id when determining which semaphore to use
zink: always copy the nir shader before compiling
zink: fix tcs slot map eval for user vars
zink: fix tcs input reservation for user vars
zink: merge copy-to-scanout path into non-deferred flush path
zink: force scanout sync when mapping scanout resource
zink: use undefined layout for first scanout obj transition
zink: move scanout sync to end of batch
zink: add a flag indicating whether scanout object needs updating
zink: move wsi flush info conditional to queue submission
zink: directly set batch->state->flush_res from flush_resource hook
zink: add clear-on-flush mechanic deeper into flush codepath
Revert “zink: force scanout sync when mapping scanout resource”
softpipe: fix render condition checking
softpipe: fix streamout queries
softpipe: ci updates
zink: track persistent resource objects, not resources
zink: restore previous semaphore (prev_sem) handling
zink: use cached memory for staging resources
zink: only reset query on suspend if the query has previously been stopped
zink: when performing an implicit reset, sync qbos
Nanley Chery (22):
gallium: Map _DRI_IMAGE_FORMAT_NONE to NULL
gallium: Flush GL API resources in eglCreateImage
iris: Disable aux as needed in iris_flush_resource
blorp: Assert 8x4 alignment for a HiZ op on Gen8-9
i965,iris: Delete misleading HiZ sampling comments
iris: Drop an XXX comment about sampling HiZ arrays
iris: Drop a stale comment about HiZ sampling
iris: Delete redundant assertion in iris_hiz_exec
iris: Drop batch param from iris_resource_prepare_render
iris: Fix the depth aspect aux usage in iris_blit
iris: Keep aux_usage in iris_blorp_surf_for_resource
iris: Fix aux usage of depth buffer prepare/finish
iris: Loosen aux state getter/setter assert on HiZ
iris: Don’t avoid aux state getter/setter with HiZ
iris: Drop iris_resource::aux::has_hiz
iris: Call iris_sample_with_depth_aux earlier
iris: Set BO maps to NULL in bo_free
drm-uapi: Update drm_fourcc.h for new TGL modifier
isl: Describe I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC
iris: Support clear color plane imports for RC_CCS_CC
iris: Support RC_CCS_CC modifier in plane queries
iris: Support I915_FORMAT_MOD_Y_TILED_GEN12_RC_CCS_CC
Neha Bhende (3):
mesa: set states in fast path for restoring light attributes
gallium/u_vbuf: use updated pipe_draw_start_count while using draw_vbo
nir_to_tgsi: Fix indices for CMP in nir_to_tgsi for nir_op_fcsel
Philipp Zabel (1):
meson: Fix missing xcb-xrandr dependency for Vulkan X11 WSI
Pierre Moreau (4):
docs/features: Add OpenCL status
spirv: Ignore WorkgroupSize in non-compute stages
nv50: Replace hardcoded texture/constbuf count with define
nv50: Update texture indices to match stage indices
Pierre-Eric Pelloux-Prayer (55):
ac: add ifdef __cplusplus guard to header
radeonsi: invalidate compute sgprs in si_rebind_buffer
radeonsi: inhibit clockgating when using SQTT
ci: split src/mesa/**/* matching rule
radeonsi/sqtt: use more event identifier
radeonsi/sqtt: fix SQTT bo size overflow
radeonsi/sqtt: allow AMD_THREAD_TRACE_TRIGGER to be a frame number
radeonsi/sqtt: forward string markers to sqtt
radeonsi: don’t use cp_dma prefetch on GFX6
gallium/u_upload_mgr: lower risk of hitting an assert
radeonsi: fix indentation issue in si_texture.c
radeonsi: store si_context::xxx_shader members in union
radeonsi: fix read from compute / write from draw sync
radeonsi: fix si_check_render_feedback
radeonsi: replace force_cp_dma arg of si_clear_buffer by enum
radeonsi: enable dcc image stores on gfx10+
radeonsi: force dcc clear to use compute clear
mesa: update vao _EnabledWithMapMode in copy_array_object
radeonsi: properly set SPI_SHADER_PGM_HI_ES
ac/rgp: make the max gap between shader code a warning
ac/rtld: make ac_rtld_upload returns the code size
ac/rgp: move radv/sqtt functions to ac
radeonsi/sqtt: keep a copy of the uploaded shader code
radeonsi/sqtt: remove duplicate token
radeonsi/sqtt: don’t always use WGP 0
radeonsi/sqtt: export shader code to RGP
radeonsi/sqtt: fix user event max size
frontends/va: fix protected slice data buffer read size
mesa/st: fix lower_tex_src_plane in multiple samplers scenario
dlist: remove ListExt feature
mesa: remove 2 recursive lock usages of _mesa_HashTable
mesa/hash: make the mtx non-recursive
mesa/hash: switch to simple_mtx
mesa: make _mesa_HashTable InDeleteAll debug only
vbo/dlist: use DrawGallium(Complex)
nir/lower_tex: ignore texture_index if tex_instr has deref src
mesa/st: fix st_nir_lower_tex_src_plane arguments
mesa/st: ignore texture_index if tex_instr has deref src
gallium/u_threaded: split draws that don’t fit in a batch
st/draw: remove st_draw_vbo
vbo: inline vbo_primitive_restart in brw_primitive_restart
radeonsi/rgp: export barriers
radeonsi/rgp: export compute shader programs
gallium/u_threaded: skip refcounting only once
driconf: add workarounds for Teardown
amdgpu,radeon: add needs_reset param to ctx_query_reset_status
radeonsi: submit cs to failed context instead of skipping them
radeonsi: use SI_CONTEXT_FLAG_AUX when recreating the aux context
radeonsi: do not recreate the aux context from the aux context
radeonsi: only recreate the aux_context when soft recovery failed
radeonsi: re-create the aux context in si_create_context
amdgpu,radeon: add full_reset_only param to ctx_query_reset_status
radeonsi: avoid querying gpu state if possible
r600/sb: Use assignments for resetting struct r600_sb::literal
driconf: add workaround for Golf With Friends
Qiang Yu (1):
lima: fix xserver page flip fail for full screen client
Rhys Perry (141):
nir/loop_unroll: unroll more aggressively if it can improve load scheduling
aco: fix convert_to_SDWA() check in add_subdword_definition()
aco: add test for incorrect convert_to_SDWA() check
radv: fix max_waves estimation on GFX10.3
aco: fix num_waves on GFX10+
aco: have emit_wqm() take Builder instead of isel_context
aco: add emit_mimg() helper
aco: move VADDR to the end of the operand list
aco: use non-sequential addressing
aco: only require texture coordinates to be in WQM if NSA is used
aco: add affinity for non-sequential MIMG operands
radv,aco: don’t use MUBUF for multi-channel loads on GFX8 with robustness2
nir/lower_io: fix array_length lowering if buffer is smaller than offset
radv,aco: use deref_buffer_array_length
radv: use nir_opt_access
nir/sink,nir/move: sink/move reorderable load_ssbo
radv: sink load_ssbo
aco: don’t consider a phi trivial if same’s register doesn’t match the def
aco: remove Format::{VOP3A,VOP3B}
aco: add instruction cast and format-check methods
aco: use instruction cast methods
aco: use format-check methods
aco: return references in instruction cast methods
aco: fix WQM for texture instructions with args before the coordinates
nir/opt_uniform_atomics: recognize more complicated invocation comparisons
nir/opt_uniform_atomics: fix elect detection
aco: disable a*1.0 optimization if the instruction is precise
nir/algebraic: optimize out exact a*1.0 if it’s used only as a float
aco: optimize a*0.0
aco: optimize out a*1.0 if it’s used as a float
nir/algebraic: optimize out exact a+0.0 if it’s used only as a float
nir/algebraic: eliminate exact a*0.0 if float execution mode allow it
aco: don’t affect isPrecise() after applying output modifiers
nir,spirv: allow non-uniform OpArrayLength
radv,ac/nir: implement non-uniform get_ssbo_size
aco: implement non-uniform get_ssbo_size
radv: round-up num_records division in radv_flush_vertex_descriptors
radv: correctly enable WGP_MODE for NGG and GS
radv: correctly enable WGP_MODE for tessellation control
aco: add fallback algorithm in get_reg()
aco: always set exec_live=false
aco: optimize AC_FETCH_FORMAT_SNORM alpha adjust
aco: do not flag all blocks WQM to ensure we enter all nested loops in WQM
aco: rewrite setting of Exact_Branch
aco: remove loop to flag loop blocks as WQM
aco: fix adjust_vertex_fetch_alpha
radv: use a more relaxed alignment for upload buffer allocations
radv: fix max_lds_per_simd on GFX10
radv: switch MaxWaves statistic to wave32 waves
ac: split lds_granularity into encode and allocation granularities
radv: use lds_{encode,alloc}_granularity
radv: round up max_lds_per_simd / lds_per_wave
aco: fix waves calculation for wave32
aco: add Program::wgp_mode
radv,aco: add radv_nir_compiler_options::wgp_mode
aco: consider that GFX10.3 allocates LDS in 1024 byte blocks
aco: add DeviceInfo
aco: fix transition_to_{WQM,Exact} if exec.back() is not in exec
radv: relax shared alignment requirements in mem_vectorize_callback
radv,aco: allow unaligned LDS access on GFX9+
aco/lower_phis: fix all_preds_uniform with continue_or_break
nir/dce: replace instruction worklist with ssa def bitset
nir: inline nir_foreach_{src,dest}
nir/dce: perform DCE for unlooped instructions in a single pass
aco: calculate all p_as_uniform and v_readfirstlane_b32 sources in WQM
aco: use p_as_uniform for get_sampler_desc and convert_pointer_to_64_bit
nir: fix build at -O1
nir: add nir_ssa_def_is_unused()
nir/copy_prop: remove unused copies
nir/copy_prop: visit copies instead of sources
nir/copy_prop: use nir_{instr,if}_rewrite_{src,condition}_ssa
Revert “radv,aco: allow unaligned LDS access on GFX9+”
aco: add missing usable_read2 check
nir/opt_shrink_vectors: add option to skip shrinking image stores
radv: don’t shrink image stores for The Surge 2
radv: don’t set sx_blend_opt_epsilon for V_028C70_COLOR_10_11_11
radv,aco: remove aco_compiler_statistics
radv: cache pipeline statistics
aco: set compr for fp16 exports
radv/llvm: fix enabled_channels for compressed exports
aco: simplify loop_nest_depth tracking in isel
aco: track divergent and uniform branch depth
aco: move wait_imm to aco_ir.h
aco: lower p_constaddr into separate instructions earlier
aco: add instruction classes
aco: add latency and inverse throughput statistics
aco: add print option to print program without temporary IDs
aco: add ACO_DEBUG=perfinfo
aco: remove vmem/smem score statistics
aco: fix NSA MIMG followed by MUBUF/MTBUF
aco/tests: add test for NSAToVMEMBug
aco: fix NSA following writelane
aco/tests: add test for waNsaCannotFollowWritelane
nir: Don’t update base in vectorize_loads()
aco: implement 64-bit VGPR {u,i}find_msb
aco: use uadd32_sat() helper for nir_op_uadd_sat
aco: use a single instruction for uadd32_sat() on GFX8
aco: implement image_deref_samples
aco: add aco_print_program() flag to print kill flags
aco: add aco_print_program() flags to print live_out and register demand
docs: document ACO_DEBUG=perfinfo
aco: add ACO_DEBUG=liveinfo
radv: lower variables to ssa before nir_propagate_invariant
radv: lower view_index to zero if multiview is disabled
ci: add expected fail for RADV
aco: don’t optimize min(a*1.0, …) to min(a, …) on GFX8
aco: use -1.0*x and 1.0*|x| for fneg/fabs
aco/tests: add tests for denormal-aware propagation
ac: invalidate metadata after hs_emit_write_tess_factors()
aco/tests: fix isel.sparse.clause for LLVM 12+
lavapipe: fix initialization of pipe_stream_output with unwritten outputs
nir/gather_info: implement partial masking of struct and compact I/O
nir/lower_tex: handle deref casts
nir_to_tgsi: run constant folding after nir_opt_algebraic
aco: fix integer tg4 workaround with unnormalized coordinates
draw: fix pstipple, aaline and aapoint without LLVM
aco: ensure loops nested in a WQM loop are in WQM
nir/gather_info: fix partial masking of compact I/O with location_frac!=0
radv: remove second nir_lower_idiv
nir/lower_idiv: add options to use fp32 for 8-bit division lowering
nir/lower_idiv: make lowered divisions exact
aco: fix 16-bit u2f32
aco: fix 16-bit f2{u8,i8} on GFX6/7
radv: don’t use fp16 for 8-bit division lowering before GFX9
nir: add nir_block_get_predecessors_sorted() helper
nir/lcssa: fix nondeterminism in predecessor iteration
nir/loop_unroll: fix is_indirect_load() with load_global
radv: fix conditions for running nir_opt_vectorize
aco/ra: use original names when renaming loop carried phi operands
aco/ra: remove live-in temporary from live_out_per_block when moving it
radv: fix barrier in radv_decompress_dcc_compute shader
radv: fix clearing DCC-compressed e5b9g9r9 images
aco: set TRUNC_COORD=0 for nir_texop_tg4
ac/nir: set TRUNC_COORD=0 for nir_texop_tg4
Revert “radeonsi: set TRUNC_COORD=0 for Total War: WARHAMMER to fix it”
aco: don’t update register demand during RA validation
aco: allow SDWA sels smaller than the operand size
radv: disable VK_FORMAT_R64_SFLOAT
vulkan: fix use-after-free in vk_common_DestroyDebugReportCallbackEXT
radv: fix use-after-free upon GS copy shader cache hits
radv,ac/llvm: use a dword alignment for descriptor loads
Rob Clark (143):
freedreno/ir3: Fix ldg decoding/parsing
freedreno/ir3: Decouple ir3_info collection from assembler
freedreno/ir3: Add some new “logical” opcodes
freedreno/hw: Add isaspec mechanism for documenting/defining an ISA
freedreno/hw/isa: Add description of ir3 ISA
freedreno/hw/isa: Add expression caching
freedreno/ir3/tests: Switch disasm test over to new decoder
freedreno/ir3: Switch over to new encoder/decoder
freedreno/ir3: Small resinfo disasm tweak
freedreno/ir3: Better sstall estimation
freedreno/ir3: Realign disasm shader stats
freedreno/ir3/decode: Switch over to new disasm
freedreno/ir3: Remove legacy packed-struct encoding
frontend/dri: Expose RGB[AX]_SRGB as well
freedreno/isa: Fix branch/jump offset encoding
freedreno/a6xx: Add r2d support for GMEM resolves
gallium/util: Add helpers to determine if z/s is written
freedreno/a6xx: Don’t early-z if there are stencil writes
r300: Use util_writes_depth_stencil() helper
radeonsi: Use util_writes_stencil() helper
freedreno: Add perf_warn() trace helper
freedreno: Add fmt/args macros for pipe_resource
freedreno/a6xx: Add helper to check if UBWC is supported
freedreno: Add perf_warn() for missed UBWC opportunities
ci/freedreno/a6xx: Skip vs-output-array-vec2-index-wr-before-gs
freedreno/a6xx: Fix 3dmark misrendering with unwritten MRTs
mesa: Remove _mesa_destroy_context()
freedreno/decode: Fix overflow
freedreno: Put an upper limit on VSC size
freedreno: Misc cleanup
freedreno/a5xx: Drop fd5_compute_stateobj
freedreno/a6xx: Drop fd6_compute_stateobj
freedreno/ir3+a5xx+a6xx: De-duplicate create_compute_state()
freedreno/ir3: Add ir3_shader_state
freedreno/ir3: Move ir3_compiler_create()
freedreno/ir3: Add ir3_screen_fini()
freedreno/ir3: Reshuffle ir3_shader_create()
freedreno/ir3: Reshuffle compute state creation
freedreno/ir3: Async shader compile
freedreno/ir3: Add missing shader prog cache invalidation
freedreno: Quiet fallthrough warnings
freedreno: Split batch_flush_reset_dependencies()
freedreno: driver-thread annotations
freedreno/ir3/print: More sane ssa src/dst display
freedreno/ir3/print: Improve branch printing
util/fossilize_db: Fix compile error with clang
freedreno: Handle InvalidateBufferData() case
freedreno: Add perf_debug logging for bo stalls
freedreno: Workaround for UNSYNC+DISCARD_RANGE
driconf: Generate a static table when no xmlconfig
xmlconfig: Reshuffle to keep attr processing
xmlconfig: Add static driconfig support
freedreno/ir3: Drop foreach_bit() macro
freedreno: Drop foreach_bit() macro
etnaviv: Drop foreach_bit() macro
v3d: Drop foreach_bit() macro
freedreno: Fix think-o in fd_resource_wait()
freedreno/ir3: Fix initial_variants_synchronous() condition
freedreno: Add FD_DBG() macro
freedreno: Slight perf_debug rework
freedreno: Add macro for duration based warns
util/u_queue: Ensure num_cpu_mask_bits is valid
util: Add accessor for util_cpu_caps
freedreno/a6xx: Always pass ctx to fd6_emit_textures()
freedreno/a6xx: Fix uncompressed resource vs stale CSO
freedreno/ir3: Add comments about shader key/gen
freedreno: Deduplicate fixup_shader_state()
freedreno/a6xx: Fix compile warning
driconf: Add ignore_map_unsynchronized option
freedreno: Remove dead-cells MBR workaround
util: Extract thread-id helpers from u_current
gallium/u_threaded: Add helper to assert driver thread
gallium/u_threaded: use mesa_log for debug msgs
freedreno: Fix u_blitter constant-buffer leak
freedreno: Factor out common fd_resource init
freedreno: Split out batch/resource tracking
freedreno: Restructure transfer_map()
freedreno: Extend threaded_resource
freedreno: Extend threaded_transfer
freedreno: Extract out helper for transfer-map flag munging
freedreno: Add fd_replace_buffer_storage()
freedreno: Add transfer_pool_unsync
freedreno/a6xx: Move UBWC demotion to first sampler view bind
freedreno: Check cb0 in rebind_resource()
freedreno: threaded_context support
freedreno: threaded_context async flush support
freedreno: Fix fd_fence_finish()
freedreno/drm: Avoid unitialized timestamp in submit fail
freedreno/drm: Split softpin “reloc” functions
freedreno/drm: Split 64b vs 32b paths
freedreno/drm: Move emit_reloc_tail to head
freedreno/drm: Inline iova calculation
freedreno/ir3: Precompute whether we need driver-params
freedreno: Add helpers to mark dirty state
freedreno: Add mapping to generation specific dirty state
freedreno/a6xx: Convert to dirty_groups
freedreno: Small dirty flag re-org
freedreno: Add dirty bit for state that needs rsc tracking
freedreno: Don’t ignore geom/tess stage resources
freedreno: Split out helper for updating sw stats
freedreno: Only collect sw stats when required
freedreno/a6xx/vsc: Be more tolerate of degenerate prims
freedreno: Drop u_trim_pipe_prim() from fast-paths
u_draw: Add helper to emultate multi-draw
freedreno: Use multi-draw helper
freedreno: Handle multi-draw edge cases
freedreno: Push multi-draw closer to backend
freedreno/a6xx: Emit streamout state on every draw
freedreno: Add draw cost estimation
freedreno/batch: Export key/hash fxns
freedreno/batch: Add a way to clone a batch key
freedreno: Add gmem_reason_mask
freedreno/a6xx: Fix sRGB/snorm vs sysmem clear path
freedreno: Autotune bypass vs GMEM rendering decision
freedreno/a6xx: Fix typo
freedreno: Make headers C++ happy
freedreno/fdperf: Use os_read_file()
freedreno: Split out devicetree helpers
ci: Disable panfrost t760
freedreno/a6xx: Fix indirect+patches draws
freedreno/a6xx: Fix obsolete comment
d3d12: Use util_draw_multi() helper
etnaviv: Use util_draw_multi() helper
i915: Use util_draw_multi() helper
iris: Use util_draw_multi() helper
lima: Use util_draw_multi() helper
llvmpipe: Use util_draw_multi() helper
nouveau: Use util_draw_multi() helper
r300: Use util_draw_multi() helper
r600: Use util_draw_multi() helper
softpipe: Use util_draw_multi() helper
svga: Use util_draw_multi() helper
tegra: Use util_draw_multi() helper
vc4: Use util_draw_multi() helper
v3d: Use util_draw_multi() helper
virgl: Use util_draw_multi() helper
freedreno: Don’t handle multi-draw in indirect case
util/primconvert: Handle indirect and multi-draw
freedreno: Add .clang-format
freedreno: Some manual reformatting
freedreno: Re-indent
freedreno: Manual fixups
freedreno: Add missing foreach macros and update indentation
Rohan Garg (8):
virgl: Cache depth and stencil buffers
ci: Ensure that jobs inherting the ci-deqp jobs artifact meson logs
intel/genxml: Free resource before exiting
intel/compiler: Free resources on test teardown
virgl: update headers
virgl: Return total video memory if available
virgl: Add support for querying detailed memory info
virgl: Support the ETC1_RGB8 format as virglrenderer supports it
Roman Stratiienko (1):
egl: android: use num_planes param in createImageFromDmaBufs()
Ruijing Dong (1):
radeon/vcn: release si buffer for encoding at the end.
Ryan Neph (1):
Revert “virgl: fix BGRA emulation artifacts during window resize”
Sagar Ghuge (7):
anv: Invalidate the correct AUX-TT entry
anv: Skip CCS ambiguate which preceed fast-clears
intel/mi_builder: Added support for command streamer shift operations
anv: Add anv_memregion structure
Revert “Revert “blorp/gen12: Don’t use aux address if implicit CCS””
intel/blorp: Fix condition to figure out aux_address
anv: Set correct binding table entry count
Samuel Iglesias Gonsálvez (9):
turnip: disable UBWC on Z24_S8 MSAA images on A630
turnip: set sparseAddressSpaceSize to zero
turnip: fix UINT64_MAX size wrapping in tu_GetBufferMemoryRequirements()
turnip: fix resolve MSAA D24_UNORM_S8_UINT image to S8_UINT
turnip: fix resolve MSAA D32_SFLOAT_S8_UINT image to S8_UINT
util: fix parsing of /proc/meminfo MemAvailable value
turnip: keep track of memory heap usage, size and flags
turnip: VK_EXT_memory_budget implementation
turnip: set depth plane control zmode to A6XX_LATE_Z when sample mask is written
Samuel Pitoiset (218):
radv: do not invalidate the L2 metadata cache on compute queues
ci: mark some sparse CTS as expected failures on RAVEN
radv: flush L2 metadata as part of CB/DB flush instead of CS_DONE on GFX9
radv: add a comment explaining the micro tile mode resolve
radv: enable TC-compat HTILE with D32S8 and MSAA on GFX9+
radv: enable TC-compat HTILE for D16S8 on GFX9+
radv: restore invalidating the vector cache for internal meta operations
radv: flush L2 for images affected by the pipe misaligned issue on GFX10+
ci: exclude one CTS test that timeout most of the time for RADV CI
radv: remove redundant check in radv_process_depth_stencil()
radv: remove unnecessary radv_image::tc_compatible_htile
radv: remove redundant check in depth_view_can_fast_clear()
radv: fix a sync issue with geometry shader primitives query on GFX10+
radv: fix overflow when computing the SQTT buffer size
radv: inhibit clock gating when tracing with SQTT
ac/rgp: add support for GFX10.3
ac,radv: add SQTT support on GFX10.3
radv: enable SQTT support on GFX10.3
radv: fix separate depth/stencil layout in render pass
radv: add multi-layer support to FMASK color expand
radv: use the range aspect mask in FMASK color expand
radv: use a workgroup size of 8x8 for FMASK color expand
radv: only decompress the depth/stencil aspect that needs to be resolved
radv: enable sparseImageInt64Atomics/sparseImageFloat32Atomics
radv,aco: fix shifting input VGPRs for the LS VGPR init bug on GFX9
radv: synchronize Cmd{Set,Write}Event() using PS_DONE/CS_DONE events
radv: add support for emitting PS_DONE/CS_DONE on GFX6-8
radv: remove radv_util.h
radv: remove stub() macros
radv: remove unused EMPTY constant in radv_descript_set.c
nir/algebraic: mark more optimization with fsat(NaN) as inexact
ac/surface: store HTILE mip info into the surface
radv: use the image view range when fast clearing depth
radv: check if HTILE is enabled per-level instead of the entire image
radv: do not decompress/resummarize levels without HTILE
radv: remove mipmaps related assertions when initializing HTILE
radv: add support for fast clearing levels of the HTILE buffer
radv: teach radv_htile_enabled() about the number of HTILE levels
radv: enable TC-compat HTILE for mipmaps on GFX10+
radv: re-disable TC-compat HTILE for D32S8 on all generations
radv: fix centroid with VRS coarse shading
radv/winsys: move the initial BO domain to radeon_winsys_bo
radv: prefer CP DMA for GTT buffer copies/clears on dGPUs due to slow PCIe
radv: fix waiting on the last enabled RB for occlusion queries
radv/winsys: use an array for the global BO list instead of a list
radv/winsys: remove the radv_amdgpu_winsys_bo::ws indirection
radv/winsys: remove useless continue preamble CS for IBs path
radv/winsys: remove useless is_local check in radv_amdgpu_cs_add_buffer()
radv/winsys: remove unused radeon_bo_usage enum
radv/winsys: simplify the user fence logic for submission
radv/winsys: remove unused fields in radv_amdgpu_cs_request
radv/winsys: stop zeroing radv_amdgpu_cs_request
radv: use less AMDGPU contexts by creating only one per queue priority
radv: add radeon_winsys_bo::use_global_list
radv: stop using VM_ALWAYS_VALID on APUs
radv/winsys: move the debug_all_bos check outside of the add/del helpers
radv/winsys: set use_global_list to avoid adding a BO twice
radv/winsys: add buffer_make_resident() to the API
radv/winsys: add the resident BOs to the list of BOs at submit time
radv/winsys: enable the global BO list unconditionally
radv: use the global BO list from the winsys
radv: fix printing the debug option names
radv: fix double free when creating a fence failed
radv: stop allocating useless ESGS scratch BO on GFX10+
radv: fix memory leaks if a submission fails
radv: do not overallocate the SQTT buffer
radv: adjust an error message related to the SQTT buffer size
radv: add support for resizing the SQTT buffer automatically
ac/rgp: append the number of seconds to the generated RGP file
radv: emit pipeline bind markers for SQTT
radv: only make the WSI images resident if the global BO list is used
radv/winsys: set use_global_list inside the critical section
radv: only apply the MRT output NaN fixup to non-meta shaders
radv: create the start/stop CS for SQTT dynamically
radv: move SQTT parameters initialization to radv_thread_trace_init()
radv: remove an outdated TODO about SQTT cache flushes
radv: make sure to allocate enough space when emitting SQTT userdata
radv: stop emitting pipeline bind markers
radv: do not allow to capture SQTT on the compute queue
radv: add support for user event markers with SQTT
radv: only emit pipeline bind markers for application pipelines
radv: use the pipeline key as hash for pipeline bind markers
radv: set correct value for OFFCHIP_BUFFERING on GFX10+
radv: make the border color BO a resident buffer
radv: make the trace BO a resident buffer
radv: make the TMA/TBA BOs resident buffers
radv: emit the trap handler registers earlier
radv: rework radv_cmd_buffer_resolve_subpass() a bit
radv: emit missing subpass resolve marker for SQTT
ac/rgp: fill CPU info by parsing /proc/cpuinfo
radv: store a pointer to the code in radv_shader_variant
radv: add support for exporting pipelines with RGP
radv: add support for instruction timing with RGP
radv: do not scale the depth bias for D16_UNORM depth surfaces
include/drm-uapi: bump AMDGPU headers
ac/rgp: recognize more memory types
ac/rgp: report LDS size in CU mode on GFX10+
ac/rgp: report the number of memory operations per clock
ac/rgp: report the number of primitives per clock
radv: remove duplicate REG_INCLUDE_CONTEXT setting for SQTT
radv: always select the first active CU when profiling with SQTT
radv: fix exporting SQTT pipelines with LLVM
radv: exclude perf counters for SQTT also on GFX10.3
Revert “radv: do not overallocate the SQTT buffer”
radeonsi,radv: do not overallocate the SQTT buffer size
radv: remove useless decompression of the DS resolve attachment
radv: do not trace inactive shader engines with SQTT
ac/sqtt: fix determining if the trace is complete on GFX10+
radv: double the SQTT buffer size when it is resized
radv: trigger a new SQTT capture automatically after resizing the buffer
radv: bump the initial SQTT buffer size to 32MB per SE
radv: fix RGP barrier layout transition for TC-compatible CMASK images
Revert “radv: stop using VM_ALWAYS_VALID on APUs”
radv: cleanup enabling TC-compat HTILE for depth surfaces
radv: remove useless check about mips+layers for TC-compat HTILE images
radv: skip useless FCE when fast-clearing MSAA images with DCC enabled
radv: re-enable TC-compat HTILE for MSAA D32S8 images on GFX9+
radv: do not declare push constants for DCC decompress on compute
radv: check if dynamic VRS state changed
radv: check if dynamic line stipple state changed
radv: disable sampling with VK_FORMAT_R64_SFLOAT
radv: fix meta save/restore state with non renderable images
radv: fix potential clears with non renderable images on GFX9+
radv: fix initialization of disable_compression when clearing color image
radv: add missing SQTT events for copy_commands2/create_renderpass2
radv: remove useless DCC disable check for 3D images on GFX10+
radv: rework radv_use_dcc_for_image() a bit
vulkan: add missing vk_shader_module.c/h includes to Makefile
radv: use common entrypoints for VK_KHR_copy_commands2
radv: do not enable TC-compat CMASK if the image isn’t readable by a shader
radv: remove redundant check when enabling TC-compat CMASK
radv: make sure FMASK is enabled for TC-compat CMASK
radv: only configure the CMASK tiling for TC-compat on GFX8
radv: initialize TC-compat CMASK images with the DCC clear code
radv: enable TC-compat CMASK on GFX10+
radv: add notccompatcmask debug option
radv: extend the dirty bits to 64-bit
ac/surface: init CMASK slice size on GFX9+
radv: fix clearing CMASK layers on GFX9+
radv: initialize CMASK with correct clear codes
radv: restore previous MRT CB_SHADER_MASK logic
radv: gather if the FS uses perspective or linear interpolations
radv: determine if a pipeline is candidate for flat shading
radv: enable VRS 2x2 coarse shading for flat shading on GFX10.3+
radv: add RADV_DEBUG=novrsflatshading option
ci: update list of expected CTS failures for RADV
vulkan: add common entrypoints for VK_KHR_create_renderpass2
radv: use common entrypoints for VK_KHR_create_renderpass2
turnip: use common entrypoints for VK_KHR_create_renderpass2
lavapipe: use common entrypoints for VK_KHR_create_renderpass2
anv: use common entrypoints for VK_KHR_create_renderpass2
radv: report that degenerated triangles are not culled
radv: require DRM 3.35+
ac/surface: do not allocate FMASK or CMASK for stencil-only surfaces on GFX9+
radv: do not fixup DCC after compute color resolves if DCC stores enabled
radv: only set WRITE_COMPRESS_ENABLE for storage image descriptors
radv: use a sampled image descriptor for reads for the MSAA color decompress
radv: compress FMASK for all layouts except GENERAL
radv: cleanup FMASK expand transitions
radv: do not force enable FMASK during MSAA blits
radv: use COLOR_ATTACHMENT_OPTIMAL for fast clear/hw resolve operations
ac: add ac_get_family_name() helper
radv: change RADV_FORCE_FAMILY to use family name instead of LLVM processor name
radv: try to keep HTILE compressed with DEPTH_STENCIL_READ_ONLY_OPTIMAL
radv: clean up fence syncobj code
ac: add ac_gpu_info::has_image_load_dcc_bug
aco: fix get_sampler_desc() for image loads
aco: implement a workaround for the image load DCC hw bug on GFX10.3
radv: allow DCC for storage images on GFX10.3 with RADV_PERFTEST=dccstores
radv: handle implicit subpass dependencies per attachment
radv: init CMASK/FMASK/DCC in parallel
radv: perform MSAA color decompression for storage images with DCC
radv: enable DCC stores with MSAA 4x/8x on GFX10+
radv: simplify a check when enabling DCC for concurrent images
radv: enable DCC for concurrent images on GFX10
radv: make sure FMASK decompress and FCE are performed on gfx queue
radv: add MSAA support to ClearColorImage() on compute queue
radv: do not clamp framebuffer dimensions to the minimum dimension
radv: add MSAA support to CopyImage() on compute queue
radv: use explicit VRS mode when configuring PA_CL_VRS_CNTL
radv: allow to force VRS rates on GFX10.3 with RADV_FORCE_VRS
radv: fix needed dynamic state for VRS
amd/addrlib: expose HTILE address equations to drivers on GFX10+
ac/surface: rename ac_surface_dcc_address_test.c
ac/surface: add a test of HtileAddrFromCoord prototype outside of addrlib
ac/surface: rename gfx9_dcc_equation to gfx9_meta_equation
ac/surface: increase gfx9_meta_equation::gfx10_bits by 4 elements
ac/surface: copy the HTILE equations to the surface
ac/surface: implement HtileAddrFromCoord in NIR
ac/surface: store the HTILE pitch to the surface
radv: expose R8_UINT as the only supported format for VRS attachments
radv: do not allow MSAA with fragment shading rate attachments
radv: do not enable DCC for fragment shading rate attachments
radv: determine if attachment VRS is enabled
radv: configure the VRS HTILE encoding size
radv: do not use the whole HTILE buffer for depth when VRS is used
radv: update the HTILE clear word when VRS is used
radv: allow HTILE for very small images if VRS attachment is used
radv: create an image for VRS if no depth/stencil attachment is bound
radv: handle the VRS attachment subpass
radv: bind our internal depth buffer when not provided by the app
radv: add support for copying VRS rates into HTILE
radv: copy VRS rates to HTILE when beginning a subpass
radv: configure the VRS combiners when an attachment is used
radv: advertise attachmentFragmentShadingRate on GFX10.3
ac: add missing BUF_DATA_FORMAT_10_11_11 vertex format on GFX10+
radv: keep DCC compressed for clears on compute with image stores
aco: fix opquantize2f16 on GFX6-7
radv: fix fast clearing depth-only or stencil-only aspects with HTILE
radv: fix emitting depth bias when beginning a command buffer
radv: fix emitting default depth bounds state on GFX6
radv/winsys: fix allocating the number of CS in the sysmem path
radv/winsys: fix resetting the number of padded IB words
radv: make sure CP DMA is idle before executing secondary command buffers
radv: fix various CMASK regressions on GFX9
radv: fix computation of the number of user SGPRS for NGG GS state
radv: check if DCC is enabled when resolving different levels
radv/winsys: fix executing huge secondary command buffers on GFX6
Serge Martin (1):
clover: return CL_INVALID_VALUE when origin or region are NULL
Simon Ser (15):
nouveau/nvc0: fix linear buffer alignment for scan-out/cursors
nouveau/nv50: fix linear buffer alignment for scan-out/cursors
frontends/va: extract pipe format to DRM format mapping
frontends/va: add support for VA_EXPORT_SURFACE_COMPOSED_LAYERS
frontends/va: add pipe to DRM format mapping for NV12 and P010
radeonsi/uvd: make format modifiers-aware
egl: use render node for wl_drm if available
gbm: fail early when modifier list only contains INVALID
gbm: remove fprintf calls in gbm_dri_bo_create
egl/wayland: avoid unnecessary roundtrip when authenticated
gbm: add gbm_bo_get_fd_for_plane
egl: fix software flag in _eglAddDevice call on DRM
egl: only take render nodes into account when listing DRM devices
Revert “egl: Don’t add hardware device if there is no render node v2.”
radv: fix format feature reporting for modifiers
Simon Zeni (1):
egl/dri2: enable EGL_WL_bind_wayland_display in EGL device platform
Stéphane Marchesin (1):
virgl: Add simple disk cache
SureshGuttula (3):
va/picture : Added failure check for stability
frontends/va: Update conditional checks for code stability.
frontends/va : Fix memory leaks incase of error returns
Tamara Schmitz (1):
util: add mesa_glthread for Valheim in OpenGL mode.
Tapani Pälli (17):
mesa: add GL_SR8_EXT, GL_SRG8_EXT for color/srgb format queries
intel/perf: cleanup, remove duplicate function declaration
intel/perf: introduce additional ralloc context parameter
i965: use aligned malloc for context instead of ralloc
mesa: add check that non base level attachment is mipmap complete
gitlab-ci: bump piglit commit for windows
anv: toggle on sample shading if it is set in the shader
anv/android: fix compilation failure
anv: fix compilation due to missing vk_format_from_android
mesa: check cube completeness for cube fbo attachments
anv/android: fix image creation with external format
android: add some more stub functions for cross compilation
intel/common: disable batch decoder on Android platform
loader: prefer iris on Android
iris: clamp PointWidth in 3DSTATE_SF like i965 does
egl: support no error attribute set to false with ES 1.1
glx: revert “Downgrade sRGB-ful fbconfigs”
Thong Thai (2):
frontends/va/config: Fix check for packed header config
radeon: Add cropping to encoded H.265 when padding is used
Timothee Chabat (1):
llvmpipe: increase PIPE_CAP_MAX_TEXTURE_BUFFER_SIZE value
Timothy Arceri (23):
util/disk_cache: do crc32 check on compressed data for ZSTD
util/disk_cache: move cache path strdup call back into disk_cache.c
util/disk_cache: use a new cache dir for the single file cache feature
util/mesa_sha1: add helper to reconvert sha1 hex strings
util/fossilize_db: add basic fossilize db util to read/write shader caches
util/disk_cache: make use of single file cache when env var set
nir: handle negatives in ffma reassociation optimisation
util/disk_cache: fix crash in fossilize_db
util/disk_cache: move cache tests to the util directory
util/disk_cache: make MESA_DISK_CACHE_READ_ONLY_FOZ_DBS a relative path
Revert “glsl: default to compat shaders in compat profile”
glsl: fix declarations of gl_MaxVaryingFloats
util: create some standalone compression helpers
util/disk_cache: make use of the new compression helpers
util/fossilize_db: remove compression from foz db helper
util/compress: make compression function inputs const
util/disk_cache: separate file reads from cache item validation
util/disk_cache: detangle cache item creation from disk writing
util/disk_cache: add cache item headers to single file cache entries
glsl: add compilation errors for attribute and varying qualifiers
glsl: enforce restrictions on builtin functions moved to compat
mesa: fix incomplete GL_NV_half_float implementation
util: disable glthread in CSGO
Timur Kristóf (55):
radv: Only enable sparse features on Polaris and newer.
tgsi_to_nir: Fix uniform ranges.
aco: Fix LDS statistics of tess control shaders.
radv/llvm: Fix reporting LDS stats of tess control shaders.
aco: Disallow LSHS temp-only I/O when VS output is written indirectly.
pan/bi: Use correct enum type for NIR intrinsics.
aco: Use ASSERTED to avoid unused variable warning.
intel/compiler: Use assume() instead of assert() for array bounds.
intel/compiler: Make room for maximum dest size in nir_emit_texture.
anv: Use unreachable() in anv_genX.
anv: Use ASSERTED for results that are only used in asserts.
nir: Add new nir_builder helpers for iadd with no_unsigned_wrap.
nir: Add nir_builder helper for I/O address offset calculations.
nir: Add a few more algebraic optimizations to help address calculation.
nir: Fix unsigned upper bound of local_invocation_index for non-CS stages.
nir: Shrink vectors for load_shared.
nir: Add unsigned upper bound for TCS load_invocation_id.
nir: Add default unsigned upper bound configuration.
nir: Add AMD-specific buffer load/store intrinsics.
nir: Add nir_opt_offsets to fold const adds into load/store offsets.
nir: Add tessellation related AMD-specific intrinsics.
nir: Add AMD-specific Geometry Shader related intrinsics.
aco: Implement new buffer load/store intrinsics.
aco: Implement the new tessellation I/O related NIR intrinsics.
aco: Implement new Geometry Shader intrinsics.
ac/llvm: Implement AMD-specific buffer load/store intrinsics.
ac/llvm: Implement the new tessellation intrinsics.
ac/llvm: Implement new Geometry Shader intrinsics.
ac/llvm: Make shared loads/stores work correctly for non-CS stages.
ac/llvm: Make sure to always emit integer comparison for nir_op_ieq.
ac/llvm: Add constant offset to load/store_shared.
ac/llvm: Emit more efficient code for load_shared.
ac: Add NIR passes to lower VS->TCS->TES I/O to memory accesses.
ac: Add NIR passes to lower ES->GS I/O to memory accesses.
radv: Lower IO and set driver locations earlier.
radv: Save I/O usage data to both shader infos for merged stages.
radv: Calculate tess patches and LDS use outside the backend compilers.
radv: Determine tcs_in_out_eq in radv_pipeline instead of the compiler.
radv: Fill some tess shader info earlier.
radv: Reorder some NIR optimizations in preparation for the I/O changes.
radv: Use new, NIR-based I/O lowering.
radv/llvm: Only store TCS outputs where they are really needed.
radv/llvm: Delete superfluous tess and ESGS I/O code.
aco: Delete superfluous tess and ESGS I/O code.
aco: Fix constant address offset calculation for ds_read2 instructions.
ac/llvm: Fix alignment of shared load intrinsics.
aco: Optimize workgroup exclusive scan to better avoid bank conflicts.
aco: Align NGG scratch size to 16 so a single ds_read can always read it.
aco: Remove useless s_setprio near gs_alloc_req.
aco: Use s_setprio 3 at the beginning of every VS and TES.
aco: Extract ngg_nogs_export_prim_id to a separate function.
aco: Set block_kind_export_end in create_vs/fs_exports.
aco: Emit fewer branches for NGG VS/TES with late primitive export.
aco: Add a simple heuristic to decide early or late primitive export.
aco: Mark VCC clobbered for iadd8 and iadd16 reductions on GFX6-7.
Tomeu Vizoso (17):
ci: Fix selection of linker in Android builds
ci: Move container files into their own dir
ci: Move out expect files from .gitlab-ci
ci: Disable two radeonsi jobs
Revert “ci/panfrost: disable the rest of these jobs temporarily”
Revert “ci/panfrost: Disable t860/radeonsi testing while the runners are struggling.”
Revert “CI: Disable Panfrost T760”
ci: Fix visibility property of LAVA jobs
ci/fdo: Use trimmed traces for Valve games
gallium/dri2: Pass the resource that corresponds to the plane
ci: Use a single template for LAVA jobs
ci: Set more reasonable timeouts for LAVA jobs
ci: Don’t retry failed test runs
ci: Disable t720 LAVA jobs
Revert “ci: Disable t720 LAVA jobs”
Revert “ci: Disable panfrost g52”
Revert “ci: Disable panfrost t760”
Tony Wasserka (34):
aco/ra: Update register use bounds before recursing in get_regs_for_copies
aco/ra: Introduce PhysRegInterval helper class
aco/ra: Conservatively refactor existing code to use PhysRegInterval
aco/ra: Remove always-false conditions
aco/ra: Add iterator interface for PhysRegInterval
aco/ra: Use std::find_if(_not) to clean up get_reg_simple
aco/ra: Use std::all_of to simplify a loop
aco/ra: Conservatively refactor get_reg_specified to use PhysRegInterval
aco/ra: Move commonly repeated code to a helper function
aco/ra: Add helpers to test for intersection/containment of reg intervals
aco/ra: Use std::all_of to simplify a loop
aco/ra: Remove unused function parameter
aco/ra: Use PhysReg for member functions of PhysRegInterval
aco/ra: Use PhysReg when indexing into RegisterFile’s containers
aco/ra: Use PhysRegInterval for collect_vars parameters
aco/ra: Use PhysRegInterval for count_zero
aco/ra: Fix print_regs using the wrong constant to check for blocked slots
aco/ra: Fix build with print_regs enabled
aco/ra: Remove preprocessor guards for print_regs
aco/ra: Add helper to get a PhysRegInterval for the register demand
aco: Fix vector::reserve() being called with the wrong size
radv: Fix improper max_index_count argument for indexed draws
ac: Add has_zero_index_buffer_bug to ac_gpu_info
radv: Skip 0-sized index buffers only when necessary
aco/ra: Avoid unnecessary copying of std::vectors
aco/isel: Don’t emit unsupported i16<->f16 conversion opcodes on GFX6/7
aco/isel: Fix i64/u64->float32 conversion for large inputs
aco/isel: Don’t request sign extension when truncating signed integers
aco/isel: Add documentation and asserts for convert_int
aco/isel: Fix large inputs being truncated in int32->f16 conversions
aco/isel: Add documentation for (u)int64->f16 conversion
ci: skip pipeline_barrier tests that currently crash on RADV
gitlab: rename RADV bug report template
aco/spill: Fix improper handling of exec phis
Vasily Khoruzhick (10):
lima: add precompile debug flag
lima/ppir: don’t use list_length() in loop in regalloc and liveness analysis
lima: update dEQP fails and skips lists
lima: relax checks of imported BO
lima: rename *_shader_state to *_compiled_shader
lima: rename lima_{fs,vs}_bind_state to lima_{fs,vs}_uncompiled_shader
lima: implement shader disk cache
lima: compute nir_sha1 for shader key even if disk cache is disabled
lima: use passed surface to get mipmap level for reload, not cbuf
lima: limit number of draws per job
Vinson Lee (31):
panfrost: Fix typos.
nouveau: Fix typos.
nv50/ir: Initialize DataArray members in constructor.
r600/sfn: Remove StoreMerger unused member b.
nv50/ir: Add InsertConstraintsPass constructor.
nv50/ir: Initialize CodeEmitter members in constructor.
nv50/ir: Initialize RegAlloc member func in constructor.
clover: Add constructor for global_argument.
lima: Fix typos.
v3dv: Fix assert.
nvc0/ir: Initialize NVC0LoweringPass member gpEmitAddress.
nvc0/ir: Initialize SchedDataCalculator members in constructor.
nv50/ir: Initialize BindArgumentsPass member sub in constructor.
virgl: Convert errno to string.
r600/sfn: Initialize FragmentShaderFromNir member m_pos_input.
etnaviv: Fix memory leak in etna_vertex_elements_state_create.
nv50/ir: Initialize ValueDef member origin in constructors.
nv50/ir: Initialize Instruction members.
aco: Initialize ds_state.front.writeMask.
r600: Fix typos.
llvmpipe: Fix typos.
nir/lower_tex: Change coord type to int.
gv100/ir: Initialize CodeEmitterGV100 members in constructor.
zink: Remove leftover dead code.
nv50/ir: Add constructor for NV50LegalizePostRA.
iris: Fix typos.
clover: Add constructor for sampler_argument.
ac: Fix emit_split_buffer_store modulus operation.
freedreno: Fix file descriptor leak.
glsl: Initialize parcel_out_uniform_storage members.
Remove leftover dead code.
Víctor Manuel Jáquez Leal (1):
frontends/va/context: don’t set max_references with num_render_targets
Witold Baryluk (3):
lavapipe: Defer lavapipe warning to CreateDevice
util: Use explicit relaxed reads for u_queue
radv: memset the alignment hole in cache_entry to 0
Xin He (1):
virgl: use atomic operations when increase sub_ctx_id
Yannik Marek (1):
turnip: fix alpha to coverage in no color and unused attachment cases
Yevhenii Kharchenko (2):
st/mesa: fix PBO download for TEXTURE_1D_ARRAY textures
intel/compiler: remove unused member ‘input_vue_map’
Yevhenii Kolesnikov (3):
iris: only set point sprite overrides if actually using points
nir/from_ssa: consider defs in sibling blocks
nir/from_ssa: don’t check for interference within the same set
Yiwei Zhang (3):
venus: properly enable WSI for different platforms
venus: bring up Android support
venus: implement vn_debug_init_once with os_get_option
Yogesh Mohan Marimuthu (7):
ac/rgp: add ac_msgpack.h/c
ac/rgp: add rgp co, col, pso data structures
ac/rgp: add helper function to write rgp elf oject
ac/rgp: expose data structure to populate co, col, pso database
ac/rgp,radeonsi,radv: pass struct thread_trace_data to ac_sqtt_dump_data()
ac/rgp: dump co, col, pso database to rgp profile file
ac/rgp: set gfxip in elf_hdr.e_flags
chenli (1):
mesa: update oudated members for debug and check
cheyang (3):
frontend/dri: fix doesn’t support RGBA ordering still expose RGBA in config
glsl: redeclare built-in variable with separate shader
virgl: add astc 2d compressed formats