Mesa 22.0.0 Release Notes / 2022-03-09¶
Mesa 22.0.0 is a new development release. People who are concerned with stability and reliability should stick with a previous release or wait for Mesa 22.0.1.
Mesa 22.0.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 22.0.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¶
e6c41928b5b9917485bd67cec22d15e62cad7a358bf4c711a647979987601250 mesa-22.0.0.tar.xz
New features¶
lavapipe,radv,anv KHR_dynamic_rendering
radv EXT_image_view_min_lod
VK_KHR_synchronization2 on RADV.
OpenSWR has been moved to the Amber branch
radeonsi, zink ARB_sparse_texture
d3d12 GLES3.1 (shader storage buffers, images, compute, indirect draw, draw params, ARB_framebuffer_no_attachments, ARB_sample_shading, and GLSL400)
radeonsi, zink ARB_sparse_texture2
zink EXT_memory_object, EXT_memory_object_fd, EXT_semaphore, EXT_semaphore_fd
anv VK_VALVE_mutable_descriptor_type
Vulkan 1.3 on RADV,Anv.
radeonsi, zink ARB_sparse_texture_clamp
Bug fixes¶
anv: Unable to import I915_FORMAT_MOD_Y_TILED surfaces produced by iHD vaapi driver
anv doesn’t always resolve aux buffers with private bindings on transition to external queue
Redraw freeze after upgrade to Xwayland 21.1.3
[ANV] Rendering corruption in DOOM Eternal
lavapipe: dEQP-VK.spirv_assembly.instruction.compute.float16.arithmetic_3.step fails
radv: When using VS+PS only, primitive ID is mixed up after NGG culling
[22.0.0_rc{1,2}] radeonsi: broken support for HD7850 (radeon 0000:0b:00.0: ring 0 stalled for more than…)
RADV: Texture seams in The Evil Within 2 (regression)
ANV: Bad output from TransformFeedback . Regression from Mesa 21. Something to do with VB+XFB -> VB+XFB dependency?
radv: CullDistance fail
Changing the buffer modifer via Wayland dmabuf-feedback apparently does not reliably reset the buffer age to 0
radv: causes hang untl gpu reset on navy_flounder
Crocus related crashes when running QT apps
Please add missing ray tracing Vulkan extensions to features.txt
[anv][bisected][regression][tgl] dEQP-VK.dynamic_rendering.suballocation.multisample_resolve.* failures
radv/aco: DXVKs strict float emulation causes black screen/graphical corruption on RDNA1
intel: env vars doc out of date
[REGRESSION][BISECTED] iris: Qutebrowser/QtWebEngine sporadically flashes the window in white
Flickering Intel Uhd 620 Graphics
Vulkan Wayland WSI returns empty surface formats
[radeon, rs690] piglit spec@glsl-1.10@execution@built-in-functions@fs-atan-float + 10 other ‘atan’ tests crash (mesa-22dev)
[bisected] artifacts in vaapi h.264 playback
[bisected] artifacts in vaapi h.264 playback
radv: msaa regression
[DG2] dEQP-GLES3.functional.shaders.derivate.fwidth* failures
FIFO present mode doesn’t wait
Dota2 lockup wsi/x11: Avoid a class of deadlocks in the WSI queue thread
[vulkan][intel] Implement VK_VALVE_mutable_descriptor_type
Broken Terraria & Glitches in Forza Horizon 4
radv: Q2RTX with cswave32 crashes the GPU
CopelliaSim crashes on adding vision sensor to a scene on Ubuntu 20+, runs fine on Ubuntu 18.04
radv: renderpass regression
Dirt Rally: Flickering glitches on certain foliage going from Mesa 21.2.5 to 21.3.0
FrontFacing input is broken on Intel/Vulkan
glGetActiveUniform failing with GL_INVALID_VALUE for no reason
llvmpipe: Unimplemented get_driver_uuid/get_device_uuid causes segfaults in e.g. Wine
All vulkan apps terminate with VK_ERROR_DEVICE_LOST
Texture rendering broken on Vega 56, probably due to MR 14171 (tested on Battlefield 1 / vkd3d-proton)
Major graphic distortions with RADV in DX11/DX12 with Mesa-git as of January 12th 2022
Setting mesa_glthread to true crashes Minecraft when Sodium optimisation mod is enabled.
ANV: deviceUUID assumes a single device per system
MESA Overlay Vulkan layer version
[radeonsi, regression, bisected]: Rendering issues with Factorio
Distorted graphics when running Battle.net app under Wine with Radeon hardware
[r300g] Battle.net app window content rotated and stretched
Freedreno reporting 10 MB of Video memory that’s causing issues with WineD3D on Poco F1
Panfrost - RK3399 - FACTORIO - glitches everywhere
Baldurs Gate 3 (Patch 6) - ribbon-like artifacts on textures
mesa >= 21.x (with llvmpipe) will break the game JVGS
Game Starsector crashes under certain circumstances with mesa 21.3.+
FreeSpace models incorrectly rendered on Polaris cards, causing system freeze
ci: Test with Skqp
ci: Test with Skqp
Metro Exodus (native) fails to launch
Poor performance on RX 580 (Polaris20)
VAAPI H.264 encoding is slow on Polaris vs. HEVC and Windows AMF
v3dv: Missing gem handle reference tracking logic
Incomplete evaluation of nested DEFINE macros
[r300g, bisected] piglit glsl-fs-discard-04 fails
Panfrost G52 Firefox terrible glitches on youtube playback
prim restart broken on crocus by prim restart fix for d3d12
RADV: Invalid fast clear triggered
Assassin’s Creed Syndicate crashes with Mesa 21.3.0+ ACO
anv: dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store fails
seg-fault with soft fp64 on iris after register allocation change
Taking RGP traces on VANGOGH results in hangs
Flickering and blackscreen on Mpv and Clapper (and also low performance on glxgears)
intel/vec4: Rework texture handling to not use `ir_texture_opcode`
lavapipe leaks introduced in eb7eccc76f0a02b3a3291adaa39788b157979dc5
DXVK SIGBUS with Turnip on Poco F1 at loading to open world.
RADV: IsHelperInvocationEXT query is not considered volatile in ACO
[GraphicsFuzz] dEQP-VK.graphicsfuzz.stable-binarysearch-tree-nested-if-and-conditional
[bisected] Mesa 21.3.x breaks GBM with NVIDIA closed source driver 495.44
[DG2] dEQP-GL[45|ES31].functional.shaders.builtin_functions.pack_unpack.packhalf2x16_compute fail
Steam reports fatal error with missing OpenGL GLX extension not supported by display since December 6th
SNK HEROINES Tag Team Frenzy stuck on white screen
Run-time dependency dri found: NO
Rise of the Tomb Raider segfault
glsl/compiler: suspcious snippet of code (Unused variable)
GPU Crash in Yuzu 6600xt 5.15
anv: gfxbench 5.0 vulkan fails on android
[spirv-fuzz] lower_trivial_continues_block: Assertion `!first_instr || instr_is_continue(first_instr)’ failed.
[RADV] Crash in Metro Exodus in Caspain chapter and Sam’s Story
[nir][radv] more undefined shifts caught by gcc’s sanitizer
NIR validation failed after nir_copy_prop
lima: Corrupted Android-12 UI on Allwinner A64
RADV/ACO: Rendering glitches in Forza Horizon 5 windshields
NV_pixel_buffer_object extension can be available in a GLES2 context but the associated glGet constants don’t work
ThreadSanitizer: data races inside libvulkan_radeon.so
[radeonsi] Commit b1b491cdbbac1ccb785f5eb1802006f76ec253f5 leads to memory leak
dEQP-GLES31.*imulextended* compiling fp64 glsl 4.00 shader
anv: vkMapMemory fails “Memory object already mapped” with VA-API (mpv –gpu-api=vulkan –hwdec=vaapi)
RADV: crash in radv_GetPhysicalDeviceImageFormatProperties2
RADV/ACO: Monster Hunter Rise Demo renders wrong results
radv: Odd lack of implicit host memory invalidation
Regression/Bisected: Crash in Godot games when steam overlay enabled
RADV: IsHelperInvocationEXT query is not considered volatile in ACO
ANV: error submitting with the same semaphore for wait and signal - regression?
Vulkan does not work when 10-bit colors ( DefaultDepth 30) are enabled under Xorg on AMD/RADV
[TGL+] anv: some dEQP-VK.drm_format_modifiers.* fails
radv: SQTT generates trace with no data
Mesa 21.3rc3 - compile failure
iris: subslice assertion failure on some hardware during initialization
Final Fantasy V (Old version): Random text characters are not displayed
Diagonal rendering artifacts in Tomb Raider
vkCmdSetViewport sometimes ignored on Ivy Bridge, Haswell
dota2 black squares corruption
[hsw][bisected][regression] dEQP-VK.reconvergence.*nesting* failures
Piglit.spec.arb_shader_image_load_store.compiler.expression-allowed-1d_vert failed.
anv: dEQP-VK.wsi.wayland.<various> failures
freedreno: Crash in fd_bo_cache_alloc()
radv_android.c: build errors due to commit 49c3a88
dEQP-EGL.functional.sharing.gles2.multithread.* regression with Iris
[Turnip] Forsaken Remastered rendering issue
[radeonsi] Euro Truck Simulator 2: broken mimimap
Old Linux Rocket League version failing to start on Poco F1.
[regression][bisected] Launching Valheim OpenGL game leads to GPU Hang
Android Meson build regression: hardware/system information apps crash on Raspberry Pi 4
radv: format properties are broken with modifiers
anv: dEQP-VK.graphicsfuzz.cov-multiple-one-iteration-loops-global-counter-write-matrices fails
Changes¶
Aaron Watry (2):
clover: implement CL_IMAGE_BUFFER
clover/image: add dimension property
Adam Jackson (37):
mesa/x11: Remove the swrast-classic-based fake libGL
mesa: Remove unused _mesa_all_buffers_are_unmapped
mesa: Remove unused _mesa_get_render_format
mesa: Remove unused _mesa_DrawTexx{,v}
mesa: Remove unused _check_*TexGen*OES
mesa: Remove unused _mesa_apply_ci_transfer_ops
mesa: Remove unused _mesa_compressed_image_address
mesa: Remove unused _es_color4ub
mesa: Remove unused _es_RenderbufferStorageEXT
mesa: Remove unused _es_{,Get}TexGenfv
mesa: Remove unused _vbo_current_binding
mesa/vbo: Always use buffer objects for storage
mesa/program: Dead code cleanup
mesa: Remove unused execmem code
mesa: Make _mesa_generate_mipmap_level static
glapi: Remove remnants of EXT_paletted_texture and the imaging subset
docs: Remove no-longer-accurate text about the xlib driver
mesa: Remove unused _mesa_initialize_visual
dri: Remove unused driContextSetFlags
dri: Remove unused driUpdateFramebufferSize
dri: Remove unused driGetRendererString
glx: Fix GLX_NV_float_buffer fbconfig handling
mesa: Remove unused _mesa_allow_light_in_model
mesa: Remove unused _mesa_AllocTextureStorage_sw
mesa: Remove unused _mesa_bind_texture
mesa: Remove unused _mesa_format_fallback_rgbx_to_rgba
mesa: Remove unused _mesa_get_linear_format_srgb
mesa: Remove unused _mesa_convert_colors
mesa: Remove unused _mesa_all_varyings_in_vbos
mesa: Remove unused _mesa_delete_nameless_texture
mesa/math: Remove unused m_translate.c
mesa: Remove unused _mesa_is_alpha_to_coverage_enabled
mesa: Remove unused _mesa_is_front_buffer_{draw,read}ing
mesa: Remove unused _mesa_set_sampler_{filters,srgb_decode,wrap}
mesa: Remove unused src/mesa/x86-64
wsi/x11: Avoid a class of deadlocks in the WSI queue thread
dri_interface: Remove the remaining DRI1 API definitions
Alejandro Piñeiro (20):
v3dv/pipeline: don’t clone the nir shader at pipeline_state_create_binning
v3d/clif: add support for dumping GS shader state
broadcom/compiler: remove unused macro and function definition
v3d: remove unused include
v3d: remove static v3d_start_binning
gallium/u_blitter: clean up texcoords ZW when filling up just XY
v3d,v3dv: move TFU register definition to a common header
vulkan: move common format helpers to vk_format
broadcom/compiler: make shaderdb debug output compatible with shaderdb’s report tool
meson: bump meson requirement to 0.53.0
v3d: support for texture buffer objects
v3d: add support for no buffer object bound
v3d: restrict formats supported for PIPE_BIND_SHADER_IMAGE
v3d: enable ARB_texture_buffer_object and ARB_texture_buffer_range
broadcom/compiler: avoid unneeded sint/unorm clamping when lowering stores
v3dv: simplify v3dv_debug_ignored_stype
vulkan: return default string for undefined enum
v3dv: remove unused v3dv_descriptor_map_get_texture_format
v3dv: check correct format when load/storing on a depth/stencil buffer
vc4/nir_lower_blend: update write mask when we update num components
Alex Xu (Hello71) (5):
Use initial-exec TLS for glibc only, enable TLS elsewhere
Auto-enable TLSDESC support
meson: check for lld split TLSDESC bug (fixes #5665)
Fix TSD stubs for non-initial-exec case (fixes #5667).
meson: tlsdesc: minor reformatting, add comments
Alyssa Rosenzweig (179):
panfrost: Don’t allow rendering/texturing 48-bit
panfrost: Detect implementations support AFBC
panfrost,panvk: Use dev->has_afbc instead of quirks
panfrost: Remove unused MIDGARD_NO_AFBC quirk
panfrost: Fix gl_FragColor lowering
panfrost: Workaround ISSUE_TSIX_2033
panfrost: Add internal afbc_formats
panfrost: Decompress for incompatible AFBC formats
panfrost: Enable AFBC on v7
panfrost: Remove ancient TODO
panfrost: Remove duplicated #if
panfrost: Rename depth bias fields
panfrost: Add alpha_zero_nop/one_store predicate
panfrost: Test alpha_zero_nop/one_store predicates
panfrost: Pass through alpha_zero_nop/one_store
panvk: Pass through alpha_zero_nop/one_store flags
nir/lower_blend: Use correct clamp for SNORM
mesa: Require MRT support for GL3/ES3
nir/lower_pntc_ytransform: Support PointCoordIsSysval
pan/bi: Fix typo in helper invocation analysis
pan/bi: Make bi_index padding explicit
pan/bi: Add secondary staging count
pan/bi: Add second destination to TEXC
pan/bi: Add bifrost_texture_operation_mode enum
pan/bi: Add bifrost_dual_texture_operation struct
pan/bi: Use BIFROST_TEXTURE_OPERATION_SINGLE enum
pan/bi: Support dual texture scheduling
pan/bi: Add bi_dual_tex_as_u32 helper
pan/bi: Fix up dual texturing registers
pan/bi: Add dual texture fusing pass
pan/bi: Test dual texture fusing
pan/bi: Enable dual texture fusing pass
pan/mdg: Remove duplicate compiler option
pan/bi: Annotate Valhall instructions with units
pan/bi: Add full form of Valhall MUX instruction
pan/bi: Add sqrt form of Valhall FREXPM
pan/bi: Add Valhall’s special FMA_RSCALE instructions
pan/bi: Add XML for assembling Valhall image stores
pan/bi: Forbid unaligned staging registers on Valhall
pan/bi: Confirm IDP unit on Valhall
pan/bi: Suppress uniform validation for LD_BUFFER
pan/bi: Add XML for LD_BUFFER
asahi: Rename PANDECODE->AGXDECODE
asahi: Deflake addresses
asahi: Allocate special scratch buffers
asahi: Fix agx_map_* structures
asahi: Remove silly magic numbers
asahi: Remove obnoxious workaround
asahi: Fix BIND_PIPELINE sizing and alignment
panfrost: Collapse 0 parameters in drm-shim
panfrost: Handle AFBC_FEATURES in drm-shim
panfrost: Add empty tile flags to GenXML
panfrost: Only build GPU indirect kernels for v7
pan/bi: Link with Valhall disassembler
pan/va: Only hex dump when verbosely disassembling
panfrost: Add “hex” type to GenXML
panfrost: Add XML for Valhall data structures
panfrost: Zero initialize disassembler stats
panfrost: Don’t shadow Mesa’s fui()
panfrost: Add Valhall support to pandecode
pan/va: Improve assembler unit test output
pan/va: Disambiguate sign of CSEL instructions
pan/va: Add more assembler tests
pan/va: Make LD_VAR index more fine-grained
pan/va: Add sample/update modes to LD_VAR
pan/va: Add table parameter to LD_ATTR_IMM
pan/mdg: Fix definition of UBO unpack
docs/macos: Update for recent Mesa changes
pan/indirect_draw: Don’t upload garbage UBO
pan/indirect_draw: Split out update_dcd
pan/indirect_draw: Support IDVS jobs
panfrost: Track preloaded registers
panfrost: Set preload descriptor more accurately
panfrost: Remove unused shader info bits
panfrost: Fix Secondary Shader field
panfrost: Treat IDVS jobs as tiler for scoreboarding
panfrost: Add IDVS fields to shader_info
panfrost: Split out regalloc/preload helpers
panfrost: Remove regalloc from v6.xml
panfrost: Set secondary_* fields for IDVS
panfrost: Extract panfrost_draw_emit_vertex_section
panfrost: Emit IDVS jobs
panfrost: Extract panfrost_batch_skip_rasterization
panfrost: Skip rasterizer discard draws without side effects
panfrost: Align instance size for IDVS
panfrost: Add panfrost_compile_inputs->no_idvs option
pan/bi: Extract bi_finalize_nir
pan/bi: Allow UBO pushing to run multiple times
pan/bi: Add IDVS mode to bi_context
pan/bi: Remove the “wrong” stores in IDVS variants
pan/bi: Split out varying store paths
pan/bi: Use position shader ST_CVT path
pan/bi: Add helper to decide if IDVS should be used
pan/bi: Specialize shaders for IDVS
pan/va: Remove extra LD_VAR_IMM_F32 source
pan/va: Rename LEA_ATTR to LEA_VARY
pan/va: Add .signed bit to right shift instructions
pan/va: Generalize LD_VAR_IMM_* to support flat varyings
pan/bi: Don’t call useless NIR passes
panfrost: Make pan_merge macro more robust
pan/bi: Don’t read base for combined stores
pan/mdg: Don’t read base for combined stores
nir: Eliminate store_combined_output_pan BASE
panfrost: Simplify blend lowering pass
nir: Extend store_combined_output_pan
panfrost: Combine dual source blends
panfrost: Remove pan_nir_reorder_writeout
pan/bi: Use is_staging_src helper
pan/bi: Allow an extra staging source
pan/bi: Use fused dual source blending
pan/bi: Fix load_const of 1-bit booleans
gallium/util: Add pixel->blocks box helper
lima,panfrost: Correct pixel vs block mismatches
v3d: Use u_box_pixels_to_blocks helper
vc4: Use u_box_pixels_to_blocks helper
pan/decode: Remove hierarchy mask check
pan/decode: Include addresses for jobs
pan/decode: Track mmaps with a red-black tree
pan/decode: Add hexdump helper
pan/decode: Add pandecode_dump_mappings
pan/decode: Decode Valhall surface descriptor
panfrost: Remove FBD pointer on Bifrost XML
pan/decode: Don’t print Preload twice
pan/decode: Disassemble Bifrost quietly
pan/bi: Schedule around blend shader register clobbering
asahi: Fake more CAPs with dEQP hacks mode
asahi: Warn when hacks mode is enabled
asahi: Add XML for unknown 0x4a packet
asahi: Break out Fragment Parameters word
asahi: Rectify confusing XML comment
asahi: Route sample mask from shader
agx: Add sample_mask instruction
agx: Handle discard intrinsics
agx: Lower UBO loads to use per-element indexing
panfrost: Use u_reduced_prim for primitive checks
panfrost: Only cull polygons
pan/bi: Pull BLEND precolouring out of per-dest loop
pan/decode: Fix missing newlines in error messages
panfrost: Remove HAS_SWIZZLES quirk
panfrost: Remove MIDGARD_SFBD quirk
panfrost: Remove MIDGARD_BROKEN_FP16 quirk
panfrost: Remove NO_TILE_ENABLE_MAP quirk
panfrost: Remove MIDGARD_{NO_TYPED_BLEND_STORES,MISSING_LOADS}
panfrost: Don’t set NO_BLEND_PACKS on Bifrost
panfrost: Simplify format class selection
panfrost: Remove NO_BLEND_PACKS quirk
panfrost: Make primary_shader boolean
panfrost: Fix v9 “Stencil from shader” bit
panfrost: Don’t pass quirks to pan_lower_framebuffer
panfrost: Centralize our model list
panfrost: Replace panfrost_model_name with model->name
panfrost: Make the GPU allowlist implicit
panfrost: Get performance counters from table
pan/bi: Clean up quirks
pan/bi: Assume future Valhall is 16-wide warps
panfrost: Add Mali-G51 support
docs/panfrost: Add new Midgard/Bifrost chips
pan/va: Add .absolute bit to BRANCHZI
pan/va: Add missing <clamp/> to V2F32_TO_V2F16
pan/va: Add missing fields to LD_TILE
pan/va: Test LD_TILE assembly
pan/va: Fix MKVEC.v2i16 lane select
pan/va: Fix lane select for [US]_TO_[USF]32
pan/va: Vectorize 8->16-bit conversions
pan/va: Add 2-channel 8-bit swizzles for conversions
pan/va: Add lots of swizzle assembler tests
pan/va: Handle shift lanes in assembler
pan/va: Add ARM_shader_framebuffer_fetch asm test
pan/bi: Avoid *FADD.v2f16 hazard in optimizer
pan/bi: Avoid *FADD.v2f16 hazard in scheduler
pan/bi: Lower swizzles on CSEL.i32/MUX.i32
panvk: Use more reliable assert for UBO pushing
pan/bi: Specialize IDVS in NIR
panfrost: Fix FD resource_get_handle
panfrost: Fix set_sampler_views for big GL
panfrost: Handle NULL sampler views
panfrost: Handle NULL samplers
panfrost: Flush resources when shadowing
panfrost: Push twice as many uniforms
Andreas Baierl (1):
lima: Fix drawing wide lines
Antonio Caggiano (2):
gallium: add a link shader hook
virgl: Link shader program
Anuj Phogat (7):
genxml/gen125: Update 3DSTATE_TE fields
iris: Enable geometry distribution
anv: Enable geometry distribution
iris: Enable tessellation redistribution
anv: Enable tessellation redistribution
anv, iris: Add Wa_16011773973 for DG2
anv, iris: Add Wa_22011440098 for DG2
Bas Nieuwenhuizen (73):
radv: Fix modifier property query.
radv: Add bufferDeviceAddressMultiDevice support.
amd/rgp: Use VGH clocks for RGP workaround.
radv: Disable coherent L2 optimization on cards with noncoherent L2.
ci: Bump libdrm for the android image.
ci: Add libelf to the Android image.
amd/addrlib: Use alternative ADDR_C_ASSERT definition.
radv: Remove android build warning.
radv: Always use linker script when possible.
aco: Remove useless sub-expr.
meson: Check arguments before adding.
amd/addrlib: Ignore self-assign warnings.
util: Add support for clang::fallthrough.
ci: Add RADV to Android CI.
radv: Fix memory corruption loading RT pipeline cache entries.
radv: Add more checking of cache sizes.
radv: Don’t crash if VkExternalImageFormatProperties isn’t provided.
radv: Avoid using a new subpass for ds clears.
radv: Stop using a subpass for color clears.
radv: Remove the skipping of framebuffer emission if we don’t have a framebuffer.
radv: Set RB+ registers correctly without framebuffer.
radv: Don’t emit framebuffer state if there is no renderpass active.
radv: Add named constants for max framebuffer width/height.
radv: Do not use VK_FORMAT_UNDEFINED in meta passes.
radv: Support VK_KHR_dynamic_rendering for pipeline creation.
radv: Support Begin/EndRendering.
radv: Support dynamic rendering inheritance info.
radv: Expose the VK_KHR_dynamic_rendering extension.
radv/amdgpu: Add a syncobj per queue.
radv/winsys: Add queue family param to submit.
radv/amdgpu: Add support for submitting 0 commandbuffers.
radv: Use the winsys 0 cmdbuffer submission support.
radv: Set up ETC2 emulation wiring.
radv: Use the correct base format for reintepretation.
radv: Add extra plane for decoding ETC images with emulation.
radv: Add ETC2 decode shader.
radv: Deal with border colors with emulated ETC2.
radv: Expose the ETC2 emulation.
radv/amdgpu: Only wait on queue_syncobj when needed.
radv: Add safety check for RGP traces on VanGogh.
radv: Use correct buffer size for query pool result copies.
radv: Skip wait timeline ioctl with 0 handles.
radv/amdgpu: Use VkResult for wait_timeline_syncobj.
vulkan/runtime: Refactor queue submit to take an argument struct.
vulkan/runtime: Add sparse bind support.
radv: Use dispatch table for QueueWaitIdle in the SQTT layer.
radv: Use dispatch table for wsi_display.c
radv: Use vulkan runtime for device lost.
meson: Bump libdrm_amdgpu version req to 2.4.109.
radv: Initialize vk device drm fd.
radv: Add function to allow WSI signalling fences/semaphores.
radv: Set horizontal sync types.
radv: Use vk_command_buffer for preambles.
radv: Add new cs_submit2 winsys call.
radv: Add new submission path for use by the common sync framework.
radv: Delete lots of sync code.
radv: Remove syncobj reset mechanism.
radv: Rename submit2->submit.
radv: Remove dependencies on vk_common entrypoints.
radv: Set optimal copy alignment to 1.
radv: Add common entrypoint dependency.
radv: Use MAX_PUSH_CONSTANTS_SIZE for saved push constants.
radv: Use 16-bits to store push constant indices.
radv: 256 byte push constants.
Revert “nir/algebraic: distribute fmul(fadd(a, b), c) when b and c are constants”
util/fossilize_db: Fix double free in error handling.
vulkan/wsi/display: Add common implementation of VK_EXT_display_control.
anv: Remove VK_EXT_display_control support in favor of common impl.
radv: Remove VK_EXT_display_control support in favor of common impl.
radv/amdgpu: Fix handling of IB alignment > 4 words.
radv/amdgpu: Use aligned sizing for IB buffers.
radv: Handle SDMA for padding.
radv: Fix preamble argument order.
Biju Das (1):
kmsro: Add ‘rcar-du’ driver support
Boris Brezillon (16):
vulkan: Fix weak symbol emulation when compiling with MSVC
vulkan: Set unused entrypoints to vk_entrypoint_stub when compiling with MSVC
vulkan: Fix entrypoint generation when compiling for x86 with MSVC
microsoft/compiler: Fix dxil_nir_create_bare_samplers()
gallium/d3d12: Don’t use designated initializers
d3d12: Fix “use of designated initializers requires at least ‘/std:c++20’” error
microsoft/compiler: Fix sampler/texture array emission
microsoft/compiler: Skip images in redirect_texture_derefs()
microsoft/compiler: textureLoad() doesn’t take a LOD on MS textures
microsoft/spirv_to_dxil: Remove dead variables after the struct split pass
microsoft/spirv_to_dxil: Allow dumping NIR
microsoft/spirv_to_dxil: Support [un]conditional YZ-flip
microsoft/spirv_to_dxil: Discard PSIZ accesses
microsoft/spirv_to_dxil: Lower atomics to their dxil variants
microsoft/spirv_to_dxil: Make sure the SampleMask is a uint
microsoft/spirv_to_dxil: Define idep_libspirv_to_dxil
Boyuan Zhang (5):
radeon/vcn: update vcn1 enc interface
radeon/vcn: update vcn2 enc interface
radeon/vcn: remove redundancy for vcn2 enc
radeon/vcn: combine encode params func
radeon/vcn: combine session init func
Caio Oliveira (89):
nir/schedule: Handle nir_intrisic_scoped_barrier
nir: Add nir_var_mem_image
intel/fs: Consider nir_var_mem_image for TGM fences
anv: Use nir_foreach_image_variable
spirv: Use nir_var_mem_image
intel/compiler: Rename vec4 test fixtures
intel/compiler: Build all tests in a single binary
spirv: Use a single binary for gtests
nir: Use a single binary for gtests
util: Consolidate existing gtests in a single binary
util: Move tests in single file directories to tests/
util: Convert u_atomic_test to use gtest
util: Convert blob_test to use gtest
util: Convert mesa-sha1_test to use gtest
util: Convert rb_tree_test to gtest
util: Convert roundeven_test to use gtest
util: Convert sparse array multithread test to use gtest
util: Move test sources to tests/ directory
intel/compiler: Add helpers to select SIMD for compute shaders
intel/compiler: Use SIMD selection helpers for CS
intel/compiler: Use SIMD selection helpers for variable workgroup size
intel/compiler: Don’t use SIMD larger than needed for workgroup
anv: Get rid of “may be used initialized” warning in anv_QueueSubmit2KHR
anv: Make shaders array in anv_graphics_pipeline fit Task/Mesh
anv: Process FS last when compiling graphics pipeline
intel/compiler: Make brw_nir_populate_wm_prog_data() static
intel/compiler: Use gl_shader_stage_uses_workgroup() helpers
.mailmap: Simplify my name
intel/genxml: Add Mesh Shading structures
intel/genxml: Inline the BODY structs into the instructions
intel/dev: Add an intel_device_info::has_mesh_shading bit
intel/blorp: Add option to emit packets that disable Mesh
gtest: Add mesa-gtest-extras.h with array ASSERT/EXPECT macros
util: Change blob_test to use macro from mesa-gtest-extras.h
pan/bi: Make some headers compilable with C++
pan/bi: Use gtest for test-scheduler-predicates
pan/bi: Use gtest for test-packing
pan/bi: Use gtest for test-pack-formats
pan/bi: Use gtest for test-optimizer
pan/bi: Use gtest for test-constant-fold
pan/bi: Drop unused test helpers
util/ra: Add simple test for register set serialization
util/ra: Fix deserialization of register sets
gtest: Fix output of array ASSERT/EXPECT macros
intel: Add INTEL_DEBUG=task,mesh
intel/compiler: Properly lower WorkgroupId for Task/Mesh
intel/compiler: Handle per-primitive inputs in FS
intel/compiler: Don’t stage Task/Mesh outputs in registers
intel/compiler: Don’t lower Mesh/Task I/O to temporaries
intel/compiler: Add structs to hold TUE/MUE
intel/compiler: Make MUE available when setting up FS URB access
intel/compiler: Export brw_nir_lower_simd
intel/compiler: Add backend compiler basics for Task/Mesh
intel/compiler: Lower Task/Mesh local_invocation_{id,index}
intel/compiler: Implement Task Output and Mesh Input
intel/compiler: Implement Mesh Output
util: Convert cache test to use gtest
util: Use ralloc for strings in cache test
intel/compiler: Use a struct for brw_compile_tcs parameters
intel/compiler: Use a struct for brw_compile_tes parameters
intel/compiler: Use a struct for brw_compile_gs parameters
intel/compiler: Use a struct for brw_compile_bs parameters
nir: Initialize nir_register::divergent
meson: Bump version required for gtest protocol
Revert “nir: disable a NIR test due to undebuggable & locally unreproducible CI failures”
ci/windows: Remove line numbers of SPIR-V errors in spirv2dxil tests
spirv: Update headers and metadata to SPIR-V 1.6, revision 1
nir: Handle volatile semantics for loading HelperInvocation builtin
spirv: Identify non-temporal image operand added in SPIR-V 1.6
spirv: Use the incorporated names
anv/blorp: Split blorp_exec into a render and compute
anv: Refactor dirty masking in cmd_buffer_flush_state
anv: Simplify assertions related to graphics stages
anv: Add another case to INTEL_DEBUG=pc output
anv: Use pending pipe control mechanism in flush_pipeline_select()
anv/blorp: Apply pending pipe flushes after PIPELINE_SELECT
intel/fs/xehp: Add unit test for handling of RaR deps across multiple pipelines.
anv: SPIR-V 1.6 shaders imply ALLOW_VARYING_SUBGROUP_SIZE
anv: Fix subgroupSupportedStages physical property
intel: Only reserve space for Compute Engine out of URB in Gfx12LP
intel/compiler: Have specific mesh handling in calculate_urb_setup()
intel/compiler: Merge Per-Primitive attribute handling in Mesh case
compiler, intel: Add gl_shader_stage_is_mesh()
intel: Add INTEL_URB_DEREF_BLOCK_SIZE_MESH
intel/common: Add helper for URB allocation in Mesh pipeline
anv: Add boilerplate for VK_NV_mesh_shader
anv: Implement Mesh Shading pipeline
intel/dev: Enable Mesh Shading for DG2
anv: Add experimental support for VK_NV_mesh_shader
Caleb Callaway (2):
vulkan/overlay: support Vulkan 1.2
vulkan/overlay: revise and reformat README
Carsten Haitzler (3):
panfrost: Add GPU G76 to the set of known ids
kmsro: Add komeda DPU
panfrost: Don’t double-free when handling error for unsupported GPU
Charles Baker (5):
zink: Enable VK_KHR_image_format_list for VK_KHR_imageless_framebuffer
zink: Output PackHalf2x16 to uint not float
zink: Avoid redundant cast to uint on PackHalf2x16 result
zink: Set vertex binding stride without dynamic state extensions
Revert “zink: handle vertex buffer offset overflows”
Charles Giessen (10):
radv: Update description of vk_icdNegotiateLoaderICDInterfaceVersion
v3dv: Update LoaderICDInterfaceVersion to v4
panvk: Export vk_icdGetPhysicalDeviceProcAddr
freedreno, tu: Export vk_icdGetPhysicalDeviceProcAddr
radv: Update LoaderICDInterfaceVersion to v5
panvk: Update LoaderICDInterfaceVersion to v5
anv: Update LoaderICDInterfaceVersion to v5
lavapipe: Update LoaderICDInterfaceVersion to v5
freedreno, tu: Update LoaderICDInterfaceVersion to v5
v3dv: Update LoaderICDInterfaceVersion to v5
Charmaine Lee (1):
mesa: fix misaligned pointer returned by dlist_alloc
Cherser-s (1):
radv: handle VK_DESCRIPTOR_TYPE_SAMPLER in VK_VALVE_mutable_descriptor_type extension
Chia-I Wu (23):
venus: fix vn_instance_wait_roundtrip when seqno wraps
venus: prefer VIRTGPU_BLOB_MEM_HOST3D for shmems
venus: fix vn_buffer_get_max_buffer_size
venus: add vn_renderer_util.[ch]
venus: add vn_renderer_shmem_pool
venus: use vn_renderer_shmem_pool for reply shmems
venus: add vn_cs_encoder_storage_type
venus: add VN_CS_ENCODER_STORAGE_SHMEM_POOL for VkCommandBuffer
venus: cache shmems
venus: add some trace points
virgl: disable texture uploads with copy transfers
vulkan/wsi: add wsi_common_get_image
anv,lavapipe,v3dv: use wsi_common_get_image
freedreno/drm, turnip: set DRM_RDWR for exported dma-bufs
venus: fix VK_KHR_driver_properties
venus: format with clang-format
venus: remember the memory bound to a swapchain image
venus: handle VkBindImageMemorySwapchainInfoKHR
vulkan/wsi/x11: fix x11_image_init return value on errors
venus: updates to the doc
turnip: respect buf->bo_offset in transform feedback
glthread: call _mesa_glthread_BindBuffer unconditionally
venus: update venus-protocol to 1.3.204
Christian Gmeiner (25):
ci/etnaviv: add manual piglit testing
ci/bare-metal: armhf: move BM_ROOTFS to generic place
ci/etnaviv: armhf: switch to .baremetal-test-armhf
ci/etnaviv: no need to force nir anymore
ci/bare-metal: add .baremetal-test-arm64
ci/bare-metal: switch to common .baremetal-test-arm64
panfrost/ci: update piglit fails
etnaviv/ci: update piglit fails
i915g/ci: update piglit fails
iris/ci: update piglit fails
ci: Uprev piglit to af1785f31
mesa: always support occlusion queries
broadcom/ci: use .test-manual-mr
vc4: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY
i915: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY
lima: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY
isaspec: Add support for special {:align=} field
nir: make lower_sample_tex_compare a common pass
nir/nir_lower_tex_shadow: support tex_instr without deref src
etnaviv: make use of nir_lower_tex_shadow
etnaviv: fix FRONT_AND_BACK culling
etnaviv: add multiply_with_8 flag
etnaviv: use bytes for read TX data
etnaviv: add two new HI related perfmon counter
etnaviv: add support for INTEL_blackhole_render
Clayton Craft (1):
anv: don’t advertise vk conformance on GPUs that aren’t conformant
Connor Abbott (65):
vk/format, v3dv: Add a vulkan -> pipe swizzle helper
freedreno/fdl: Constify fdl6_get_ubwc_blockwidth()
freedreno/fdl: Add mip_level to fdl_layout
freedreno/fdl: Add fdl6_view
tu: Use fdl6_view in tu_image_view and cross-check
tu: Switch clear/blit to fdl6_view and cross-check
tu: Remove cross-check scaffolding
tu/clear_blit: Stop creating a franken-image for staging blits
ir3/cse: Support mov instructions
ir3: Use stp/ldp base offset for {load,store}_scratch
tu/clear_blit: Move around copy_format()/tu6_plane_format()
freedreno/a6xx: Rename GRAS_2D_BLIT_INFO
tu: Emit GRAS_LRZ_MRT_BUF_INFO_0
tu: Always write GRAS_LRZ_MRT_BUF_INFO_0
freedreno/a6xx: Emit GRAS_LRZ_MRT_BUF_INFO_0
ir3: Emit barriers for images again
ir3: Don’t emit barriers for make_available/make_visible
ir3/spill: Mark root as non-spillable after inserting
ir3/spill: Initial implementation of rematerialization
tu: Enable subgroupBroadcastDynamicId
tu: Add VK_KHR_buffer_device_address stubs
tu: Expose Vulkan 1.2
util/dag: Make edge data a uintptr_t
util/dag: Add dag_add_edge_max_data
ir3/sched: Rewrite delay handling
ir3/postsched: Fix copy-paste mistake
ir3/postsched: Handle sync dependencies better
ir3/delay: Ignore earlier definitions to the same register
ir3/postsched: Rewrite delay handling
ir3/postsched: Only prefer tex/sfu if they are soft-ready
ir3: Stop inserting nops during scheduling
ir3/ra: Consider reg file size when swapping killed sources
ir3/ra: Add missing asserts to ra_push_interval()
ir3/spill: Support larger spill slot offset
ir3/lower_pcopy: Fix shr.b illegal copy lowering
ir3/lower_pcopy: Fix bug with “illegal” copies and swaps
ir3/lower_subgroups: Fix potential infinite loop
ir3/ra: Fix logic bug in compress_regs_left
ir3: Bump type mismatch penalty to 3
ir3: Introduce systall metric and new helper functions
ir3: Use new (sy)/(ss) stall helpers in the compiler
ir3/sched: Rename tex/sfu to sy/ss
ir3/postsched: Rename tex/sfu to sy/ss
ir3: Use (ss) for instructions writing shared regs
ir3, freedreno: Add options struct for ir3_shader_from_nir()
ir3: Pass shader to ir3_nir_post_finalize()
ir3: Add wavesize control
tu, ir3: Support runtime gl_SubgroupSize in FS
tu: Implement VK_EXT_subgroup_size_control
freedreno/fdl: Fix reinterpreting “size-compatible” formats
nir: Reorder ffma and fsub combining
freedreno/a6xx: Name texture descriptor bit
tu/blit: Don’t set CLAMPENABLE in sampler for 3d path
tu: Report code size in pipeline statistics
tu: Initial link-time optimizations
nir/lower_subgroups: Rename lower_shuffle to lower_relative_shuffle
nir: Add support for lowering shuffle to a waterfall loop
ir3: Fix copy-paste mistakes in ir3_block_remove_physical_predecessor()
ir3: Rewrite (jp) insertion
ir3/cp: ir3: Prevent propagating shared regs out of loops harder
ir3,tu: Enable subgroup shuffles and relative shuffles
ir3/spill: Fix simplify_phi_nodes with multiple loop nesting
ir3: Use CAN_REORDER instead of NON_WRITEABLE
ir3: Don’t always set bindless_tex with readonly images
ir3/nir: Fix 1d array readonly images
Corentin Noël (1):
virgl: Disable cache for VIRGL_BIND_SAMPLER_VIEW
Cristian Ciocaltea (12):
ci: Uprev deqp-runner to 0.11.0
ci: Support building and installing deqp-runner from source
ci: Do not remove cmake
ci: Create results folder before starting virgl_test_server
virgl/ci: Force crosvm error when exit code file is missing
virgl/ci: Prevent static link of virglrenderer inside crosvm
virgl/ci: Do not hide crosvm output messages
virgl/ci: Fix identification of dEQP binary paths
iris/ci: Fix whl dEQP expectations
iris/ci: Fix piglit tests expectations on amly
panfrost/ci: Fix piglit tests expectations on G52
freedreno/ci: Fix dEQP tests expectations on A530
Daniel Schürmann (22):
nir/fold_16bit_sampler_conversions: skip sparse residency tex instructions
aco: add more D16 load/store instructions to RA and validator
aco: workaround GFX9 hardware bug for D16 image instructions
aco: implement D16 texture loads
radv: use nir_fold_16bit_sampler_conversions()
aco/optimizer: fix fneg modifier propagation on VOP3P
aco: change fneg for VOP3P to use fmul with +1.0
aco/optimizer: propagate and fold inline constants on VOP3P instructions
nir/opt_algebraic: lower fneg_hi/lo to fmul
aco/ra: fix get_reg_for_operand() in case of stride mismatches
aco: don’t allow SDWA on VOP3P instructions
aco/optimizer: keep instr_mod_labels after applying extract
aco/optimizer: apply extract from p_extract_vector
aco/optimizer: optimize extract(extract())
aco/optimizer: apply extract from subdword p_split_vector
aco: use explicit zero-padding for 64bit image loads in expand_vector()
aco: use p_create_vector(v2b,v2b) in get_alu_src_vop3p()
aco: don’t split VOP3P definitions
aco: validate VOP3P opsel correctly
nir: refactor nir_opt_move
nir/opt_if: merge two break statements from both branch legs
nir/opt_if: also merge break statements with ones after the branch
Daniel Stone (10):
CI: Disable Windows jobs
Revert “CI: Disable Windows jobs”
ci: Use common build script for libwayland
ci: Consistently build Wayland and protocols
ci: Upgrade to libdrm 2.4.109
zink/ci: Add GL4.6 tessellation flake
CI: Don’t stream wget directly into bash
Revert “gitlab-ci: disable radv-fossils”
Revert “ci: disable vs2019 windows build”
egl/wayland: Reset buffer age when destroying buffers
Danylo Piliaiev (54):
ir3/freedreno: account for component in build_tessfactor_base
turnip: add support for dirconf
driconf: add vk_dont_care_as_load workaround option
turnip: implement vk_dont_care_as_load workaround
drirc: Apply vk_dont_care_as_load workaround to Forsaken Remastered
nir/lower_amul: do not lower 64bit amul to imul24
ir3/freedreno: add 64b undef lowering
freedreno/ir3: disallow immediate addr/offset for ldg/ldg.a
freedreno/ir3: set proper dst size for {store,load}_{global,shared}_ir3
freedreno/ir3: use stg.a/ldg.a only if offset is reg or doesn’t fit
isaspec: inherite parent’s bitset gpu gen requirements
nir/serialize: Make more space for intrinsic_op allowing 1024 ops
ir3/ra: Check register file upper bound when updating preferred_reg
tu: fix rast state allocation size on a6xx gen4
freedreno/computerator: Support A660 gpu
vulkan/util: Handle depth-only formats in vk_att_ref_stencil_layout
ir3: print half-dst/src for ldib.b/stib.b
freedreno/ir3: add a6xx global atomics and separate atomic opcodes
freedreno/ir3: handle global atomics
turnip: implement VK_KHR_buffer_device_address
ir3/cp: Prevent setting an address on subgroup macros
freedreno,tu: Limit the amount of instructions preloaded into icache
ir3: Add gen4 new subgroup instructions
ir3: Use getfiberid for SubgroupInvocationID on gen4
ir3,turnip: Enable subgroup ops support in all stages on gen4
ir3,turnip: Add support for GL_KHR_shader_subgroup_quad
turnip: Fix operator precedence in address calculation macros for queries
ir3: Be able to reduce register limit for RA when CS has barriers
ir3: Assert that we cannot have enough concurrent waves for CS with barrier
tu: fix workaround for depth bounds test without depth test
ir3: New cat3 instructions
nir/algebraic: Separate has_dot_4x8 into has_sdot_4x8 and has_udot_4x8
ir3: Make nir compiler options a part of ir3_compiler
tu,ir3: Implement VK_KHR_shader_integer_dot_product
vulkan/wsi: create a common function to compare drm devices
tu: implement wsi hook to decide if we can present directly on device
tu: support VK_EXT_primitive_topology_list_restart
tu: expose VK_KHR_copy_commands2
tu: add reference counting for descriptor set layouts
turnip/perfetto: Optimize timestamp synchronization
turnip/trace: refactor creation and usage of trace flush data
turnip: rename tu_drm_get_timestamp into tu_device_get_gpu_timestamp
turnip/trace: process u_trace chunks on queue submission
turnip/perfetto: handle gpu timestamps being non-monotonic
turnip/trace: Delete unused start/end_resolve tracepoints
turnip: Drop references to layout of all sets on pool reset/destruction
tu: implement sysmem vs gmem autotuner
freedreno: Update gmem/sysmem debug options to be in line with turnip
tu: add debug option to force gmem
ci/freedreno: properly test sysmem and gmem paths
ir3: opt_deref in opt loop to remove unnecessary tex casts
turnip: Unconditionaly remove descriptor set from pool’s list on free
ir3: Limit the maximum imm offset in nir_opt_offset for shared vars
turnip: Use LATE_Z when there might be depth/stencil feedback loop
Dave Airlie (249):
brw/nir: remove unused function prototypes.
crocus: Delete the MI_COPY_MEM_MEM resource_copy_region implementation.
llvmpipe: fix userptr for texture resources.
clover: use max shader sampler view/images queries for clover.
llvmpipe: swizzle image stores for CL BGRA
radv: fence->user_ptr and ctx->fence_map are now totally unused.
lavapipe: drop EXT_acquire_xlib_display
vulkan/wsi: set correct bits for host allocations/exports for images.
vulkan/include: import the video codec headers.
vulkan: add new image types undef beta define to switch statements.
meson: allow building with vulkan beta extensions enabled.
llvmpipe: disable 64-bit integer textures.
llvmpipe: fix compressed image sizes.
intel/genxml: cleanup video xml collisions.
intel/genxml: fix some missing address from the 75 xml
intel/genxml: align QM field names across gens.
intel/genxml: fix Picure->Picture typo
intel/genxml: fix gen6 LD->VLD typo.
intel/genxml: generate video headers
util/vl: move gallium vl_vlc.h and vl_rbsp.h to shared code.
mtypes: drop some context pointers that are unused now
mesa: drop unused sw extensions init
mesa/dd: burn a bunch of legacy driver interfaces down
mesa/dd: remove some fbo driver hooks.
mesa/dd: remove NewSamplerObject
mesa/light: make _mesa_light static do_light.
iris/ci: comment out iris-cml-traces-performance due to hw unavailable
mesa/query: remove all the mesa queryobj code.
mesa/syncobj: drop unused syncobj code.
mesa: remove unused buffer object code.
mesa/transformfeedback: remove unused transform feedback code
mesa/barrier: remove unused barrier functions
mesa/externalobject: delete unused functions
intel/compiler: drop glsl options from brw_compiler
meson: make mesa/tests/glx depend on gallium
mesa/dd/st: move get strings pointer out of dd.h
mesa/dd/st: direct wire queries/timestamp/condrender.
mesa/st: direct call sync object functions
mesa/st: move barriers to direct call
mesa/st: move transformfeedback to direct calls
mesa/st: move external objects to direct calls
mesa/crocus/iris/blorp: drop minify macro in favour of u_minify
mesa: move _mesa_varying_slot_in_fs to shader_enums
anv: include futex.h explicitly in allocator.
brw/compiler: drop mtypes.h from compiler
intel/compiler: drop shader_info.h from compiler header
intel/crocus: push main/macros.h out to the users
mesa/st: move rendermode to direct call
mesa/st: move Enable to direct call
mesa/st: move query memory info to direct call
mesa/st: move perf query to direct call
mesa/st: move perfomance monitor to direct call
mesa/dd: drop purgeable interface
mesa/st: move fbo code to direct calling
mesa/st: move texture APIs to direct st calls
mesa/st: move Clear to new direct call
mesa/st: move pixel/bitmap functions to direct call
mesa/st: move clear/flush/finish to direct call
mesa/st: move some context functions to direct calls
mesa/st: move viewport to direct call
mesa/st: move copy image sub data to direct call
mesa/st: move program calls to direct call
mesa/st: replace most of buffer funcs with direct calls.
mesa/st: move blit function to direct call
mesa/st: convert the non-optional egl image to direct calls
mesa/st: convert DrawTex to direct call
mesa/st: move msaa functions to direct call
mesa/st: move compute to direct call
mesa/st: move draw indirect and xfb to direct calls.
mesa/st: drop Draw from dd function table.
treewide: drop mtypes/macros includes from main
crocus: cleanup bo exports for external objects
mesa/st: merge st buffer object into GL
mesa/st: start moving bufferobject alloc/free/reference to main.
mesa: add a pipe_context pointer to gl context
mesa: add a pointer to st_config_options to gl_context
mesa: add pointer to cso_context to gl_context
mesa/st: migrate most of state tracker buffer objects into mesa
mesa/st: make static the buffer object funcs that can be
mesa/bufferobj: rename bufferobj functions to be more consistent.
bufferobj: make sw clear buffer static, move it and rename it
bufferobj: inline buffer clearing
bufferobj: inline page commitment
bufferobj: cleanup subdata copies
mesa/st: rename access flag to transfer flag function
mesa/bufferobj: move invalidate buffer to optional feature
mesa/st: remove st_cb_bufferobjects*
mesa: inline mesa_initialize_buffer_object.
mesa/st: refactor compute dispatch to fill grid info earlier.
mesa/st: migrate compute dispatch to mesa
mesa/compute: refactor compute launch to look more like draw
mesa/st: move get sample position code to static in mesa
mesa/st: move msaa functionality into multisample.c
mesa/st: migrate barrier code into mesa
mesa/st: move st strings handling into mesa
mesa: drop texformat code this isn’t used.
mesa/st: use has_stencil_export instead of querying screen cap.
mesa: drop unused new renderbuffer code.
mesa: drop unused _mesa_new_program.
mesa/dd: drop unused InvalidateBufferSubData entry.
intel/compiler: remove gfx6 gather wa from backend.
intel/compiler: don’t lower swizzles in backend.
intel/compiler: drop unused decleration
mesa: remove StripTextureBorder option.
mesa/draw: drop the multi draw with indices fallback.
mesa/st: move default enabled extensions into mesa.
mesa: drop optional tex/tnl maintains mode.
mesa/st: merge NewDepthClamp state flag
mesa/st: drop the new array driver state bit
mesa/st: drop the rasterizer driver flags
mesa/st: remove the viewport driver state flags
mesa/st: drop NewBlend driver state flags
mesa/st: drop new depth/stencil state bits
mesa/st: drop poly stipple driver state bit
mesa/st: drop new tess state driver bit
mesa/st: drop new uniform driver state bit
mesa: drop unused transform feedback state driver flags
mesa/st: drop ssbo, image and sampler driver state flags bits
mesa/st: drop scissor/window rect driver state bits
mesa/st: drop clip plane driver state bits
mesa/st: drop new framebuffer srgb driver state bit
mesa/st: drop multisample mask/locations state drivers bits
mesa/st: remove conditionals for driver state bits that are always set.
intel/genxml/gen4-5: fix more Raster Operation in BLT to be a uint
crocus: fail resource allocation properly.
crocus: don’t create staging resources > half aperture
gallium/mesa: enhance PIPE_CAP_CLIP_PLANES to support override number
crocus: set max clip planes to 6 for gen4.
mapi: generate correct dispatch for EXT_draw_instanced
glsl/linker: cleanup passing gl_context unnecessarily
glsl: don’t pass gl_context to lower shared references.
glsl/linker: don’t pass gl_context just for constants in xfb code
glsl/linker: move more ctx->Consts to consts.
glsl/linker: remove direct gl_context usage in favour of consts/exts/api
glsl/linker: get rid of gl_context from link varyings
glsl/linker: get rid of gl_context from uniform assign paths
glsl/linker: get rid of gl_context from atomic counters paths
glsl/linker: remove gl_context from check image resources
glsl/linker: remove gl_context usage from more places.
glsl/nir/linker: avoid passing gl_context inside gl_nir linker
glsl/linker/uniform_blocks: don’t pass gl_context around.
glsl/linker: drop unused gl_context.
glsl/linker: remove a bunch more gl_context references.
glsl/nir: don’t pass gl_context to the convertor routine.
mesa/program: don’t use CALLOC_STRUCT for instructions.
mesa: rebalance the CALLOC_STRUCT/FREE force.
mesa/st/perfmon: rebalance CALLOC_STRUCT/FREE
mesa/st: get rid of ST_CALLOC_STRUCT use CALLOC_STRUCT
intel/compiler: add clamp_pointside to vs/tcs/tes keys.
crocus: only clamp point size on last stage.
amd: move vcn decoding regs + structs to a common file.
amd: move uvd decode definitions to common place
mesa/*: use an internal enum for tessellation primitive types.
mesa/*: add a shader primitive type to get away from GL types.
includes: add windows lean and mean guard.
nir: remove gl.h include from nir headers.
intel/brw: drop gl header from the brw backend.
glsl/parser: extract consts/exts/api out of context at start.
mesa: drop unused context parameter to shader program data reference.
mtypes: split gl extensions and consts out into a separate header
mesa/mtypes: move matrix enums to shader_enums.h
glsl: remove some deps on mtypes.h.
mesa: move some gl shader types to shader_types.h.
glsl: avoid rebuilding builtin functions on mtypes.h changes.
glsl: move ast_function.cpp off mtypes.h
mesa: move ast_to_hir.cpp off mtypes.h
mtypes: move gl_linked_shader and gl_shader_program to new shader_types.h
mtypes: move gl_program to shader_types.h
mtypes: more gl_active_atomic_buffer to shader_types.h
mtypes: move transform feedback internal structs to shader_types.h
mtypes: move uniform shader types to shader_types.h
mtypes: move bindless image/sampler objects to shader_types.h
mtypes: move gl_shader_variable to shader_types.h
glsl: move off mtypes.h in lots of places.
glsl/fp64: move context.h dependent checks into main.
glsl: drop some more context.h/mtypes.h interactions
vbo: drop unused mtypes.h
docs: update docs for new extension header.
mesa: more mtypes.h cleanups
mesa: split struct gl_config into it’s own header.
glsl: drop glheader.h include.
mesa/st: merge memoryobjects code from st into mesa
mesa/st: merge semaphore objects from st into mesa
mesa/st: merge the syncobj code from st into mesa
mesa/st: merge queryobj code from st into mesa.
mesa/st: merge condrender code from st into mesa.
mesa/st: merge st transform feedback object into gl one.
mesa/st: merge transform feedback code from st into mesa
mesa/st: merge perfmon object from st into mesa
mesa/st: merge perfmon counters/groups objects from st into mesa
mesa/st: merge perfmon groups init/cleanup from st into mesa
mesa/st: move perfmon code from st into mesa
mesa/st: cleanup last bits of st perfmon code.
mesa/st: merge texture object/image structs into mesa
mesa/st: merge texture obj/image alloc/free into mesa
intel/perf: use a function to do common allocations
meson: start building intel earlier.
mesa/st: move intel blackhole noop enable to frontend
mesa/st: remove st_context from debug callback
mesa/st: migrate debug callback code into mesa
mesa/st: drop last user of st_Enable.
mesa/st: directly call the uuid get funcs.
mesa/st: drop emit string marker device table entry.
mesa/st: move pin l3 cache to direct check/call.
mesa/dd: drop GetProgramBinaryDriverSHA1
mesa/st: drop useless tex parameter calls.
mesa/st: move st_TexParameter into mesa
mesa/st: drop release all sampler views wrapper
mesa/st/vdpau: direct call the vdpau functions.
mesa/st: move evaluate depth values into mesa
mesa/ctx: store screen pointer in ctx as well
mesa/st: inline st_max_shader_compiler_threads
mesa/st: move shader completion into mesa
mesa/st: move memory query into mesa.
mesa/st: drop some bindless wrappers
mesa/st: drop lots of perfquery wrappers
mesa/st: move perf query test to st_context, drop files.
mesa/st: merge st_renderbuffer into gl_renderbuffer.
mesa/st: move some renderbuffer code into mesa
mesa/st: merge framebuffer objects from st to mesa
mesa/st: move render/finish_render texture in to mesa.
mesa/st: move validate/discard framebuffer into mesa
mesa/st: move st_ReadBuffer functionality into mesa
mesa/st: move DrawBufferAllocate into mesa.
mesa/st: move st renderbuffer code into mesa renderbuffer
mesa/st: move map/unmap renderbuffer code into mesa
mesa/st: move st_new_renderbuffer_fb to manager
mesa/st: move some fbo helpers around.
mesa/st: fixup viewport drawable invalidation
mesa/st: migrate blit code into mesa
mesa/st: move last of renderbuffer functionality into mesa
mesa/st: move renderbuffer format choosing wrapper into mesa.
mesa/st: move manager colorbuffer interface to gl_context.
mesa/st: move invalidate_on_gl_viewport to ctx
mesa/st: move st_fb_orientation into a mesa function
mesa: consolidate setting no error state and checking suid.
mesa/st: collapse st_program into gl_program object.
mesa/st: move new ati fragment shader to mesa
mesa/st: move st_vertex_program to gl_vertex_program in mesa
mesa/st: move program new/delete into mesa
mesa/st: refactor program translation into one file.
crocus: find correct relocation target for the bo.
crocus: fix leak on gen4/5 stencil fallback blit path.
draw/so: don’t use pre clip pos if we have a tes either.
lavapipe: fix sampler + sampler view leaks.
lavapipe: reference gallium fences correctly.
vulkan/wsi: handle queue families properly for non-concurrent sharing mode.
crocus: change the line width workaround for gfx4/5
gallivm/nir: extract a valid texture index according to exec_mask.
Derek Foreman (3):
egl/wayland: Properly clear stale buffers on resize
panfrost: Support planar formats for scanout
panfrost: support PIPE_RESOURCE_PARAM_NPLANES query
Dylan Baker (54):
docs: add release notes for 21.2.4
docs: add sha256 sum for 21.2.4 release
docs: update calendar and link releases notes for 21.2.4
meson: use gtest protocol for gtest based tests when possible
docs: add release notes for 21.2.5
docs: add sha256 sums for 21.2.5
docs: update calendar and link releases notes for 21.2.5
turnip: don’t use mesa/macros.h to get utils/rounding.h
docs: add release notes for 21.2.6
docs: add sha256 sums for 21.2.6 relnotes
docs: update calendar and link releases notes for 21.2.6
docs/release-calendar: remove additional 21.2 releases
docs: Add calendar entries for 22.0 release candidates.
mesa/tests: ensure that util_cpu_detect has been called
classic/r100: Delete driver
classic/r200: Delete driver
classic/nouveau: Remove driver
classic/i915: Remove driver
classic/i965: Remove driver
mesa/dri: remove mega driver stub
include/pci_ids: Move PCI ids supported by both i965 and iris to iris
mesa/main/tests: remove dispatch sanity
mesa: Delete libmesa_classic
mesa: Merge libmesa_gallium and libmesa_common
mesa: move common/dri into gallium
meson: restore dri.pc file
CODEOWNERS: remove OpenSWR
new_features: Add OpenSWR removal
fixup! gallium/swr: Remove driver source
docs: move the release for 22.0 out
VERSION: bump for 22.0.0-rc1 release
.pick_status.json: Update to 0447a2303fb06d6ad1f64e5f079a74bf2cf540da
.pick_status.json: Update to 8335fdfeafbe1fd14cb65f9088bbba15d9eb00dc
.pick_status.json: Update to 5e9df85b1a4504c5b4162e77e139056dc80accc6
VERSION: bump version for 22.0.0-rc2
.pick_status.json: Update to 7955df28a6660d8dff77c79c345aa28aa7fa859c
.pick_status.json: Update to 22fc53493092a7507c1e2db47b0c8763158d7b2d
.pick_status.json: Update to 108e6eaa83eed3eb356f3cce835c5f5e3a836b8e
.pick_status.json: Mark b07372312d7053f2ef5c858ceb1fbf9ade5e7c52 as denominated
.pick_status.json: Update to 3759a16d8a883355effa435f46867951ce712dbe
.pick_status.json: Mark a8418abd748e8e761dda9c3594e29e560833d9ff as denominated
.pick_status.json: Update to 22efeec399fb55dcb364dabd65afab137d6f3fc3
.pick_status.json: Update to f030b75b7d2c359b90c18ee4ed83fa05265c12e0
.pick_status.json: Update to fd3451babd6cded6794561d74c8919576ba1f97d
llvmpipe: remove test that passes on 22.0 for some reason from the fail list
.pick_status.json: Update to b21e7e1ef7ba2c2cf97f073a8a01d6bc43835622
d3d12: mark incorrectly passing tests as expected failures
VERSION: bump for 22.0.0-rc3
.pick_status.json: Update to 48b3ef625e1909c1be31fbe10adb53734af38eb4
.pick_status.json: Update to 48b3ef625e1909c1be31fbe10adb53734af38eb4
ci/zink: mark tests fixed by previous commit as fixed
ci/zink: mark more expected passes as such
Revert “panfrost: Fix set_sampler_views for big GL”
.pick_status.json: Update to 342e6f83321a91816358dee82178809b2a8aeeaa
Edward O’Callaghan (4):
clover/images: Add array_size to implement CL_IMAGE_ARRAY_SIZE
clover: Implement CL_MEM_OBJECT_IMAGE2D_ARRAY
clover: Implement CL_MEM_OBJECT_IMAGE1D_BUFFER
clover: Implement CL_MEM_OBJECT_IMAGE1D_ARRAY
Eleni Maria Stea (1):
dri_drawable: missing header
Ella Stanforth (2):
v3dv: Implement VK_KHR_create_renderpass2
vulkan: Allow RegisterDisplayEventEXT before first page flip
Ella-0 (2):
v3dv: implement VK_EXT_host_query_reset
v3dv: enable VK_KHR_swapchain_mutable_format
Emma Anholt (204):
ci/lvp: Skip some slow tests under ASan.
loader: Avoid enumerating drm devices just to get an fd’s PCI ID.
freedreno/afuc: Disable the disassembler on 32-bit builds.
ci/deqp-runner: Drop SUMMARY_LIMIT env var.
ci/deqp-runner: Simplify the –jobs argument setup.
ci/deqp-runner: Use new deqp-runner’s built-in renderer/version checks.
ci/deqp-runner: Drop silly CSV env vars.
ci/deqp-runner: Move remaining asan runs to –env LD_PRELOAD=
ci/deqp-runner: Drop LD_LIBRARY_PATH=/usr/local for libkms workaround.
ci/deqp-runner: Don’t start GPU hang detection for making junit results.
ci/deqp-runner: Move more non-suite logic under the non-suite ‘if’.
ci/piglit-runner: Fix funny indentation of the piglit-runner command.
turnip: Switch tu6_format_texture() to a pipe_format.
turnip: Switch tu6_format_color() to a pipe_format.
turnip: Switch format_to_ifmt() to take a pipe_format.
util: Move freedreno’s snorm-to-unorm to util/, adding remaining cases.
turnip: Make copy_format() and tu6_plane_format() return pipe_format
gallium/u_blitter: Read MSAA z/s from sampler’s .x instead of .y or .z.
turnip: Drop the assertion about the temporary bit in sync fd imports.
ci/radeonsi: Use a deqp-runner suite suite for stoney.
ci/deqp-runner: Rename the deqp-drivername-*.txt files to drivername-*.txt
ci/piglit-runner: Merge piglit-driver-*.txt files into driver-*.txt.
ci: Enable testing radeonsi’s libva using libva-util unit tests.
ci/etnaviv: Fix the dependency for the build artifacts.
ci/etnaviv: Add some more deqp flakes I’ve seen in recent runs.
etnaviv: Switch to the NIR compiler by default.
i915g: Check for negate/swizzle on TGSI_OPCODE_KILL_IF’s src.yzw.
i915g: Make sure we consider negates/swizzles on bias/shadow coords.
i915g: Improve the explanation for the 1D Y swizzle.
ci: Uprev VK-GL-CTS to 1.2.7.2, and pull in piglit while I’m here.
freedreno: Fix gmem invalidating the depth or stencil of packed d/s.
freedreno/a6xx: Emit a null descriptor for unoccupied IBO slots.
freedreno/fdl6: Add an interface for setting up buffer descriptors.
turnip: Use the new shared buffer-view descriptor creation function.
turnip: Remove buffer-view cross-check code.
freedreno/fdl6: Add support for texture swizzles of A/L/I/LA/RGBx.
freedreno/a6xx: Use the fdl buffer view setup for img/ssbo descriptors.
freedreno: Fix layered rendering to just Z/S and not color.
freedreno/a6xx: Fix partial z/s clears with sysmem.
freedreno/a5xx: Use the defined names for 2D_BLIT_CNTL regs.
freedreno/a618: Mark a flaky test that triggers hangcheck.
freedreno/a6xx: Don’t try to generate mipmaps for SNORM with our blitter.
freedreno/a5xx+: Fix missing LA formats.
freedreno/a5xx: Diff reduction in fd5_layout to fd6_layout.
freedreno/a6xx: Try to fix drawing to z/s miplevel/layer offsets.
freedreno/a5xx: Remove bogus assertion about BO size.
freedreno/a5xx: Try to fix drawing to z/s miplevel/layer offsets.
freedreno/a5xx: Clean up a little bit of blitter array pitch setup.
freedreno/ir3: Fix off-by-one in prefetch safety assert.
turnip: Claim 1.2.7.1 CTS conformance.
freedreno: Fix the uniform/nonuniform handling for cat5 bindful modes.
freedreno: Fix constant-index assumptions in IBO loads.
ci/etnaviv: Mark the rest of uniform_api.random as flaky.
ci/etnaviv: Add more texturing flakes.
ci/bare-metal: Close serial and join serial threads before exit.
util: Rename PIPE_FORMAT_G8_B8_R8_420_UNORM.
util/format: Add G8_B8R8_420_UNORM to match Vulkan.
freedreno/fdl6: Skip redundant setting of TILE_ALL for NV12.
freedreno: Set layer_first on (2D) resource imports.
freedreno/a6xx: Create a fd6_view at sampler view update time.
freedreno/a6xx: Switch to relying on fd6_view for our texture descriptors.
freedreno/a6xx: Use fd6_view for non-buffer image descriptors, too.
freedreno/a6xx: Clean up sysmem fb read patching using fd6_view.
freedreno/a6xx: Drop an unused tile_mode arg.
freedreno/a6xx: Inline remaining fd6_tex_const_0() call.
mesa/st: Disable NV_copy_depth_to_color on non-doubles-capable HW.
freedreno/a6xx: Add some notes about piglit failures.
freedreno/ir3: Fix an off-by-one in so->outputs_count safety assert.
ci/freedreno: Enable the tes-input/tcs-input tests.
freedreno/a6xx: Do sparse setup of the TFB program.
ci/freedreno: Add notes explaining the KHR-GL* failures.
ci/freedreno: Add a link to the issue for color_depth_attachments.
freedreno/fdl: Dump the generated layout when a layout test fails.
freedreno: Fix the texturator unit test script.
freedreno/cffdump: Fix 64-bit reg decode in script mode.
freedreno/fdl: Add support for unit testing 3D texture array strides.
freedreno/cffdump: Fix up formatting of texturator unit test script output.
freedreno/cffdump: Handle the TILE_ALL flag in unit test generation.
freedreno/a6xx: Fix a bunch of 3D texture layout to match blob behavior.
freedreno: Stop exposing MSAA image load/store on desktop GL.
freedreno/a6xx: Disable sample averaging on z/s or integer blits.
freedreno/a6xx: Disable sample averaging on non-ubwc z24s8 MSAA blits.
freedreno/a5xx: Define a5xx_2d_surf_info like a6xx has.
freedreno/a5xx: Document the sRGB bit on RB_2D_SRC/DST info.
freedreno/a5xx: Emit MSAA state for sysmem rendering, too.
nir: Un-inline nir_builder_alu_instr_finish_and_insert()
nir: Un-inline more of nir_builder.h.
freedreno/ir3: Make a shared helper for the tess factor stride.
turnip: Move CP_SET_SUBDRAW_SIZE to vkCmdBindPipeline() time.
nir: Uninline a bunch of nir.h functions.
nir: Make nir_build_alu() variants per 1-4 arg count.
freedreno/a6xx: Allocate a fixed-size tess factor BO.
freedreno/a6xx: Skip emitting tess BO pointers past the shader’s constlen.
freedreno/a6xx: Set the tess BO ptrs in the program stateobj.
mesa/st: Remove GL_ARB_depth_clamp emulation support.
r300: Add deqp expectations for RV515.
r300: Turn a comment about presub into an assert.
r300: Fix mis-optimization turning -1 - x into 1 - x.
nouveau/nir: Use the address reg for indirect scratch access.
nir/algebraic: Move some generated-code algebraic opt args into a struct.
nir/algebraic: Drop the check for cache == None.
nir/algebraic: Replace relocations for nir_search values with a table.
nir/algebraic: Remove array-of-cond code
nir/algebraic: Move relocations for expression conds to a table.
nir/algebraic: Move relocations for variable conds to a table.
nir/algebraic: Pack various bitfields in the nir_search_value_union.
nir/algebraic: Mark the automaton’s filter tables as const.
nir/algebraic: Move all the individual transforms to a common table.
r300: Move the instruction filter for r500_transform_IF() to the top.
r300: Cache the var list in the peephole_mul_omod() loop.
r300: Ensure that immediates have matching negate flags too.
r300: Also consider ALU condition modifiers for loop DCE.
r300: Remove the non_normalized_coords from the shader key.
r300: Precompile the FS at shader creation time.
r300: Route shader stats output to ARB_debug_output.
r300/ci: Update loop expectations
loader: Restore i915g support.
r300/ci: Add some piglit expectations.
nir/nir_to_tgsi: Add support for “if” statements with !native_integers
nir_to_tgsi: Make !native_integers front face input match glsl_to_tgsi.
r300: Disable loop unrolling on r500.
r300: Request NIR shaders from mesa/st and use NIR-to-TGSI.
nir_to_tgsi: Enable nir_opt_move.
nir/nir_opt_move,sink: Include load_ubo_vec4 as a load_ubo instr.
nir_to_tgsi: Set the TGSI Precise flag for exact ALU instructions.
r300: Remove some dead compiler code.
r300: Remove support for SCS.
r300: Remove unused RC_OPCODE_ABS.
r300: Remove unused RC_OPCODE_XPD.
r300: Remove unused RC_OPCODE_SWZ.
r300: Remove unused RC_OPCODE_CLAMP.
r300: Remove unused RC_OPCODE_SFL
r300: Remove unused RC_OPCODE_DPH
ci/freedreno: Add known flakes from the last month.
ci/crocus: Add support for manual CI runs on my G41.
crocus: Clamp VS point sizes to the HW limits as required.
glsl: Delete the vectorization opt pass.
glsl: Delete the optimize_redundant_jumps pass.
glsl: Remove dead prototype for old do_discard_simplification().
glsl: Remove comment about non-existing DFREXP_TO_ARITH
glsl: Retire unused modes for lower_64bit_integer_instructions.
ci/r300: Add another xfail on the main branch.
r300/vs: Allocate temps we see a use as a source, too.
r300/vs: Reuse rc_match_bgnloop().
r300/vs: Fix flow control processing just after an endloop.
ci: Enable a build with MSan.
glcpp: Disable the valgrind tests.
softpipe: Drop the quad pstipple stage.
softpipe: Use the draw module’s poly stipple handling, like llvmpipe.
softpipe: Drop duplicate decl of softpipe_find_fs_variant
ci/crocus: Add manual CI for the new HSW box I have at home.
ci: Enable reporting to the flakes IRC channel for i915g and crocus.
ci/i915g: Add a couple more recent regressions.
nir_to_tgsi: Use the same address reg mappings as GLSL-to-TGSI did.
gallium: Delete PIPE_CAP_TGSI_ANY_REG_AS_ADDRESS
tgsi/exec: Simplify indirects now that they always use the ADDR file.
i915g: Turn off FP16 in the vertex shaders.
r300: Use uif() instead of pointer aliasing in program printing.
ci/r300: Update xfails from a full dEQP run.
r300: Fix omod failing to increase the number of channels stored.
nir_to_tgsi: Enable fdot_replicates flag.
ci: Shrink container/rootfs sizes.
nir_to_tgsi: Fix a bug in TXP detection after backend lowering.
ci/llvmpipe: Sort the list of traces.
ci/llvmpipe: Add a trace for the game JVGS, which got regressed recently.
ci: Add paraview traces to several drivers.
freedreno/ir3: Use nir_opt_offset for removing constant adds for shared vars.
nir: Apply nir_opt_offsets to nir_intrinsic_load_uniform as well.
r300: Drop unused r300_get_stats() call.
r300: Add consts (uniforms) count to the shader-db output.
nir/lower_dynamic_bo_access: Use copy_inst_indices for our cloned instrs.
nir: Add a .base field to nir_load_ubo_vec4.
nir/opt_offsets: Disable unsigned wrap checks on non-native-integers HW.
nir/opt_offsets: Also apply the max offset to top-level constant folding.
nir_to_tgsi: Use nir_opt_offsets for load_ubo_vec4.
nir/opt_offsets: Use nir_ssa_scalar to chase offset additions.
softpipe: respect !independent_blend_enable for color masks.
softpipe: Request that st fix up DST_ALPHA blending for RGB render targets.
ci/softpipe: Drop the GS sampling known-flakes.
nir/lower_locals_to_regs: Do an ad-hoc copy propagate on our generated MOV.
tgsi_exec: Fix shared var stores for >1 real invocation, and overflow checks.
softpipe: Improve some local var naming in compute shaders.
softpipe: Initialize the CS dispatch mask at machine setup time.
softpipe: Dispatch 4 CS invocations per tgsi_exec thread.
Revert “ci: freedreno: Update a530 dEQP fail expectation list”
ci/llvmpipe: Drop the skip of piglit edgeflag test.
ci/llvmpipe,softpipe: Switch piglit testing to piglit-runner.
ci/traces: Rename the piglit/run.sh script to piglit-traces.sh.
ci/traces: Drop the PIGLIT_PROFILES setting for traces replay.
ci/traces: Clean up the failure report message.
ci/traces: Drop the baseline file creation for trace results.
ci/traces: Drop PIGLIT_REPLAY_UPLOAD_TO_MINIO.
ci/traces: Always generate the junit XML.
ci/freedreno: Update hashes for closed traces.
vulkan: Fix leak of error messages
ci: Use a dlclose-disabling preload library for leak checking in Vulkan.
ci/freedreno: Switch 2 default a630 VK jobs to being GLES and VK ASan jobs.
turnip: Store the computed iova in the tu_buffer.
turnip: Store the computed iova in the tu_image.
r300: Disable fp16 and int16 in swtcl vertex shaders.
r300/r600: Add drm-shim support.
freedreno/isaspec: Add missing dep of encode.py/decode.py calls on isa.py
intel: Add missing dep of gen_*_header.py on utils.py.
i915g: Initialize the rest of the “from_nir” temporary VS struct.
Enrico Galli (3):
microsoft/compiler: Shadow tex instructions always use shadow samplers
microsoft/spirv_to_dxil: Add DXIL validation to spirv2dxil
ci/windows: Add validation tests for spriv_to_dxil
Eric Engestrom (33):
VERSION: bump to 21.4
docs: reset new_features.txt
VERSION: bump to 22.0
docs: update calendar for 21.3.0-rc1
docs: update calendar for 21.3.0-rc2
docs: update calendar for 21.3.0-rc3
docs: update calendar for 21.3.0-rc4
release-calendar: fix date for next 21.3 rc
meson: drop duplicate addition of surfaceless & drm to the list of platforms
meson: move `egl_native_platform` definition inside the `with_egl` block
meson: drop impossible `if no platform` branch
meson: always define `HAVE_{X11,XCB}_PLATFORM` when it’s enabled
meson: automatically define `HAVE_{some}_PLATFORM`
docs: update calendar for 21.3.0-rc5
docs/submittingpatches: add link to section describing how to make a backport MR
docs/submittingpatches: add formatting around the release branches names
docs/submittingpatches: mention use of the `-x` flag of `git cherry-pick` when backporting a commit
docs: update branchpoint instructions
docs: add release notes for 21.3.0
docs: update calendar and link releases notes for 21.3.0
docs: add 21.3.x release schedule
docs: add 22.0 branchpoint date for perspective
docs: add release notes for 21.3.1
docs: update calendar and link releases notes for 21.3.1
docs: add release notes for 21.3.2
docs: update calendar and link releases notes for 21.3.2
docs: add release notes for 21.3.3
docs: update calendar and link releases notes for 21.3.3
docs: add release notes for 21.3.4
docs: update calendar and link releases notes for 21.3.4
docs: add release notes for 21.3.5
docs: update calendar and link releases notes for 21.3.5
docs/release-calendar: add another 21.3.x since 22.0 has been delayed a bit
Erico Nunes (5):
ci: temporarily disable lima CI
mesa: fix GL_MAX_SAMPLES with GLES2
lima/gpir: avoid invalid write in regalloc
lima/ppir: initialize slots array for dummy/undef
lima/ppir: refactor bitcopy to use unsigned char
Erik Faye-Lund (9):
docs: update trademark disclaimer
CODEOWNERS: remove ownership of deleted code
ci: remove testing of deleted code
docs: remove mentions of deleted code
docs: remove stale notice about deleted dir
ensure csv-files are crlf on disk
bin/gen_calendar_entries: fix newlines on windows
docs: use http-redirect when possible
docs: remove incorrect drivers from extension
Felix DeGrood (2):
anv: increase binding table pool size to 64KB
pps: increase intel.cfg buffer size
Filip Gawin (8):
r300: improve precission of linear interpolation
r300: stub derivatives on r300 and r400 hardware
nir: assert that variables in optimize_atomic are initialized
glsl: fix trivial strict aliasing warning
radv: dont call calloc when BVH is empty
iris: fix mapping compressed textures
r300: fix handling swizzle in transform_source_conflicts
r300: replace recursive calls with loops
Francisco Jerez (28):
intel/fs/xehp: Teach SWSB pass about the exec pipeline of FS_OPCODE_PACK_HALF_2x16_SPLIT.
intel/fs: Add physical fall-through CFG edge for unconditional BREAK instruction.
intel/dev: Fix size of device info num_subslices array.
intel/dev: Add support for pixel pipe subslice accounting on multi-slice GPUs.
intel/dev: Implement DG2 restrictions requiring additional DSSes to be disabled.
intel/xehp: Implement XeHP workaround Wa_14013910100.
intel/xehp: Implement XeHP workaround Wa_14014148106.
intel/xehp: Update 3DSTATE_PS maximum number of threads per PSD.
intel/fs: Don’t assume packed dispatch for fragment shaders on XeHP.
intel/blorp/gfx12+: Drop unnecessary state cache invalidation from binding table setup.
intel/genxml: Fix SLICE_HASH_TABLE struct on XeHP.
iris: Merge gfx11_ and gfx12_upload_pixel_hashing_tables() into the same function.
intel: Move pixel hashing table computation into common header file.
intel: Minimal calculation of pixel hash table for arbitrary number of pixel pipes.
intel: Rename intel_compute_pixel_hash_table() to intel_compute_pixel_hash_table_3way().
iris: Program pixel hashing tables on XeHP.
anv: Program pixel hashing tables on XeHP.
intel/xehp: Switch to coarser cross-slice pixel hashing with table permutation.
iris/xehp: Implement workaround for 3D texturing+anisotropic filtering.
intel/fs/xehp: Merge repeated in-order read dependencies instead of replacement.
intel/fs: Move legal exec type calculation into helper function in lower_regioning pass.
intel/fs: Teach the lower_regioning pass how to split instructions of unsuported exec type.
intel/fs: Take into account region strides during SIMD lowering decision of SHUFFLE.
intel/fs: Fix destination suboffset calculations for non-trivial strides in SHUFFLE codegen.
intel/fs: Perform 64-bit SHUFFLE lowering in the lower_regioning pass.
intel/fs: Perform 64-bit SEL_EXEC lowering in the lower_regioning pass.
intel/fs: Honor strided source regions specified by the IR for CLUSTER_BROADCAST.
intel/fs: Perform 64-bit CLUSTER_BROADCAST lowering in the lower_regioning pass.
Georg Lehmann (8):
meson: Use get_supported_arguments more often.
meson: Remove some unnecessary loops.
amd/addrlib: Use get_supported_arguments to get compiler args.
radv: Increase maxFragmentCombinedOutputResources.
vulkan/wsi/wayland: Fix add_wl_shm_format alpha/opaqueness.
vulkan/wsi/wayland: Convert missing vulkan formats to shm formats.
vulkan/wsi/wayland: Add modifiers for RGB formats.
vulkan/wsi/wayland: Fix add_drm_format_modifier aplha/opaqueness.
Gert Wollny (7):
virgl: Add driconf tweak to force-enable reading back R8_SRGB textures
virgl: obtain supported number of shader sampler views from host
ci: pin virglrenderer version
virgl: Enable higher compatibility profiles if host supports it
util/primconvert: map only index buffer part that is needed
nir_lower_io: propagate the “invariant” flag to outputs
ntt: Set the output invariant flag according to the semantics
Greg V (2):
util: __getProgramName: remove check for ancient FreeBSD versions, simplify ifdefs
util: make util_get_process_exec_path work on FreeBSD w/o procfs
Guido Günther (6):
etnaviv/drm: Use etna_mesa_debug for debugging messages
etnaviv/drm: Add some bo debug output
etnaviv/drm: Print gpu model at debug verbosity
etnaviv/drm: Use mesa_log* for debugging
entaviv/drm: Use same log format as gallium bits
etnaviv: Use mesa_log*
Guilherme Gallo (14):
ci: Update linux kernel to v5.15
iris/ci: Fix traces for amly and deqp list for whl
ci/freedreno: Add maxcpus=2 to the kernel cmdline on a530
panfrost/ci: update piglit tests expectations on G52
ci: Update ci-fairy to version with –token-file support
ci: Uprev piglit
ci: Use ci-fairy minio login via token file
ci: Build skqp on ARM64 images
ci: Add a630_skqp jobs
ci: skqp: Add documentation on how to maintain skqp jobs
ci: Uprev Kernel to v5.16
ci: freedreno: Update a530 dEQP fail expectation list
ci: Add docs for Linux Kernel uprevs
virgl/ci: make crosvm-runner pass variables in a secure way
Hamish Arblaster (1):
zink: Fix building on macOS
Henry Goffin (1):
intel/compiler/test: Fix build with GCC 7
Hoe Hao Cheng (3):
zink/codegen: support platform tags
zink/codegen: remove core_since in constructor
zink/codegen: remove bogus print statement
Hyunjun Ko (10):
turnip: expose VK_KHR_driver_properties
anv: Fix to honor the spec to get stencil layout.
radv: Fix to honor the spec to get stencil layout.
vulkan/util: Move helper functions for depth/stencil images to vk_iamge
turnip: Enable VK_KHR_separate_depth_stencil_layouts
turnip: Use the new common device lost tracking
vulkan: fix typo
turnip: Porting to common vulkan implementation for synchronization.
turnip: Porting to common implementation for timeline semaphore
turnip: fix leaks of submit requests.
Iago Toral Quiroga (63):
v3dv: fix TLB buffer to image copy path for 3D images
v3dv: enable Vulkan 1.1
broadcom/compiler: disallow tsy barrier in thrsw delay slots
broadcom/compiler: fix assert that current instruction must be in current block
v3dv: refactor TFU jobs
broadcom/compiler: rework simultaneous peripheral access checks
broadcom/compiler: fix condition encoding bug
broadcom/compiler: padding fixes to QPU assembly dumps
broadcom/compiler: make opt passes set current block
broadcom/compiler: check that sig packing is valid when pipelining ldvary
broadcom/compiler: copy packing when converting add to mul
v3dv,v3d: don’t store swizzle pointer in shader/pipeline keys
v3d: use V3D_MAX_DRAW_BUFFERS instead of hardcoded constant
v3dv: account for multisampling when computing subpass granularity
v3dv: don’t use a global constant for default pipeline dynamic state
v3d,v3dv: move tile size calculation to a common helper
v3dv: fix internal bpp of D/S formats
broadcom/compiler: fix early fragment tests setup
broadcom/compiler: don’t allow RF writes from signals after thrend
broadcom/compiler: fix scoreboard locking checks
broadcom/compiler: don’t move ldvary earlier if current instruction has ldunif
broadcom/compiler: allow color TLB writes in last instruction
broadcom/compiler: relax restriction on VPM inst in last thread end slot
broadcom/compiler: emit passthrough Z write if shader reads Z
broadcom/compiler: track passthrough Z writes
v3d,v3dv: don’t disable EZ for passthrough Z writes
broadcom/compiler: improve documentation for Z writes
broadcom/compiler: improve thrsw merge
v3dv: add a refcount mechanism to BOs
v3dv: add swizzle helpers to identify formats wit R/B swap and reverse flags
v3dv: handle formats with reverse flag
v3dv: implement VK_EXT_4444_formats
v3dv: implement double-buffer mode
v3d: implement double-buffer mode
docs/features: flag VK_KHR_create_renderpass2 as implemented for v3dv
broadcom/simulator: handle DRM_V3D_PARAM_SUPPORTS_MULTISYNC_EXT
v3dv: implement VK_KHR_driver_properties
broadcom/compiler: add lowering pass to scalarize non 32-bit general load/store
broadcom/compiler: better document vectorization implications
broadcom/compiler: implement TMU general 16-bit load/store
broadcom/compiler: lower packing after vectorization
broadcom/compiler: support ldunifa with some 16-bit loads
broadcom/compiler: use ldunifa with unaligned constant offset
broadcom/compiler: implement 32-bit/16-bit conversion opcodes
broadcom/compiler: support f32 to f16 RTZ and RTE rounding modes
v3dv: support VK_KHR_16_bit_storage
broadcom/compiler: support 16-bit uniforms
v3dv: expose storagePushConstant16 feature from VK_KHR_16bit_storage
broadcom/compiler: support 8-bit general store access
broadcom/compiler: handle to/from 8-bit integer conversions
broadcom/compiler: support 8-bit loads via ldunifa
broadcom/compiler: allow vectorization to larger scalar type
broadcom/compiler: update comment on load_uniform fast-path
v3dv: support VK_KHR_8bit_storage
v3dv: drop signature of undefined function
v3dv: implement VK_KHR_imageless_framebuffer
v3dv: rework Vulkan 1.2 feature queries
v3dv: document why we don’t expose VK_EXT_scalar_block_layout
v3dv: support resolving depth/stencil attachments
v3dv: fallback to blit resolve if render area is not aligned to tile boundaries
v3dv: expose VK_KHR_depth_stencil_resolve
v3dv: don’t submit noop job if there is nothing to wait on or signal
broadcom/compiler: fix offset alignment for ldunifa when skipping
Ian Romanick (35):
nir/loop_unroll: Always unroll loops that iterate at most once
glsl/nir: Don’t build soft float64 when it cannot be used
nir/constant_folding: Optimize txb with bias of constant zero to tex
intel/compiler: Don’t predicate a WHILE if there is a CONT
intel/compiler: Don’t store “scalar stage” bits on Gfx8 or Gfx9
intel/stub: Suppress warnings about DRM_I915_QUERY_PERF_CONFIG
intel/stub: Implement DRM_I915_QUERY_ENGINE_INFO
intel/stub: Implement DRM_I915_QUERY_MEMORY_REGIONS
intel/stub: Implement I915_PARAM_HAS_USERPTR_PROBE
intel/fs: Use HF as destination type for F32TOF16 in fquantize2f16
mesa: OpenGL 1.3 feature GL_ARB_texture_border_clamp is not optional
mesa: OpenGL 1.3 feature GL_ARB_texture_cube_map is not optional
mesa: OpenGL 1.3 feature GL_ARB_texture_env_combine is not optional
mesa: OpenGL 1.3 feature GL_ARB_texture_env_dot3 is not optional
mesa: OpenGL 1.3 and OpenGL ES 1.0 are not optional
intel/stub: Silence “initialized field overwritten” warning
intel/stub: Implement shell versions of DRM_I915_GEM_GET_TILING and DRM_I915_SEM_GET_TILING
intel/fs: Fix gl_FrontFacing optimization on Gfx12+
ntt: Extend ntt_compile::addr_declared and ntt_compile::addr_reg
mesa: OpenGL 1.4 feature GL_ARB_depth_texture is not optional
mesa: OpenGL 1.4 feature GL_ARB_texture_env_crossbar is not optional
mesa: OpenGL 1.4 feature GL_EXT_blend_color is not optional
mesa: OpenGL 1.4 feature GL_EXT_blend_func_separate is not optional
mesa: OpenGL 1.4 feature GL_EXT_blend_minmax is not optional
mesa: OpenGL 1.4 feature GL_EXT_point_parameters is not optional
mesa: OpenGL ES 1.1 is not optional
gallivm/nir: Call nir_lower_bool_to_int32 after nir_opt_algebraic_late
nir: All set-on-comparison opcodes can take all float types
intel/fs: Don’t optimize out 1.0*x and -1.0*x
spriv: Produce correct result for GLSLstd450Step with NaN
spirv: Produce correct result for GLSLstd450Modf with Inf
spirv: Produce correct result for GLSLstd450Tanh with NaN
nir: Properly handle various exceptional values in frexp
nir: Produce correct results for atan with NaN
nir: Add missing dependency on nir_opcodes.py
Icecream95 (9):
panfrost: Set PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION
pan/bi: Add interference between destinations
pan/bi: Check dependencies of both destinations of instructions
panfrost: Set dirty state in set_shader_buffers
panfrost: Re-emit descriptors after resource shadowing
pan/bi: Make disassembler build reproducibly
panfrost: Fix ubo_mask calculation
pan/bi: Skip psuedo sources in ISA.xml
pan/bi: Don’t assign slots for the blend second source
Ilia Mirkin (50):
freedreno: support lua54
meson: build freedreno tools when other parts of freedreno not enabled
freedreno: check batch size after the fallback blitter clear
freedreno/ir3: fix setting the max tf vertex when there are no outputs
freedreno/a4xx: fix min/max/bias lod sampler settings
mesa: add missing state to state string computation
nv50,nvc0: expose R8/RG8_SRGB formats for texturing
mesa: add just a tiny bit of debug info to some _mesa_problem calls
freedreno: prefer float immediates when float values are involved
freedreno/a[345]xx: add R8/RG8 SRGB formats
a5xx: remove astc srgb workaround logic
freedreno/ir3: fix image-to-tex flags, remove 3d -> array hack
nir: remove double-validation of src component counts
freedreno/a4xx: add proper buffer texture support
freedreno/a5xx: re-express buffer textures more logically
freedreno/a6xx: re-express buffer textures more logically
freedreno/a4xx: fix stencil-textured border colors
freedreno/a4xx: indicate whether outputs are uint/sint
freedreno/a4xx: include guesses from a3xx for some of the constid’s
freedreno/a4xx: hook up sample mask/id, used to determine helper invocs
freedreno/ir3: adjust condition for when to use ldib
mesa: check target/format for Tex(ture)StorageMem*
mesa: move around current texture object fetching
freedreno/a4xx: add missing SNORM formats to help tests pass
freedreno/a4xx: add some missing legacy formats to help TBOs
freedreno/a5xx: add missing L8A8_UNORM format to support TBOs
freedreno/a[345]xx: fix unorm/snorm blend factors when they’re “over”
nir: always keep the clip distance array size updated
nir: apply interpolated input intrinsics setting when lowering clipdist
freedreno/ir3: remove unused actual_in counting
nir/lower_clip: replace bogus comment about gl_ClipDistance reading in GL
nir/lower_clip: location offset goes into offset, not base
nir/lower_clip: increment num_inputs/outputs by appropriate amount
nir/lower_clip: support clipdist array + no vars
freedreno/ir3: indicate that clipdist arrays are in use
freedreno/ir3: get the post-lowering clip/cull mask
ci: move windowoverlap exclusion to all-skips
freedreno/ci: add piglit runs for a306
freedreno/ci/a306: add additional skip which hangchecks
freedreno/a3xx: add some legacy formats
freedreno/ci/a306: separate msaa fails
freedreno/ci/a306: split off the f32 blend / texturing failures
freedreno/ci/a306: split off snorm blending failures
freedreno/a5xx: enable OES_gpu_shader5
gitlab-ci: serial close can leave an active read
gitlab-ci: detect a3xx gpu hang recovery failure
nv50,nvc0: add new caps to list
nv50: don’t claim support for format-less stores
freedreno/ci/a306: add more skips
freedreno/ci/a306: increase concurrency
Italo Nicola (4):
virgl/vtest: use correct resource stride in flush_frontbuffer
virgl/vtest: implement resource_create_front
virgl: flush cmd buffer when flushing frontbuffer
drisw: do an MSAA resolve when copying the backbuffer
Iván Briano (15):
intel/nir: also allow unknown format for getting the size of a storage image
anv: Remove unused struct member
anv: add functions to set up fake render passes
anv: allocate fake render pass on pipeline creation
anv: Split out state attachments allocation
anv: allocate fake render pass for continuation command buffers
anv: Split attachment clearing code into their own functions
anv: split end_subpass into more discrete components
anv: implement the meat of VK_KHR_dynamic_rendering
anv: Enable VK_KHR_dynamic_rendering
anv: Handle resolveImageLayout on dynamic rendering
anv: Report the right conformance version
anv: make the pointer valid before we assign stuff into it
anv: only advertise 64b atomic floats if 64b floats are supported
intel/compiler: make CLUSTER_BROADCAST always deal with integers
Jakob Bornecrantz (1):
vulkan-device-select: Don’t leak drmDevicePtr
James Jones (1):
gbm: Don’t pass default usage flags on ABIs < 1
James Park (5):
vulkan, radv: Support backslash in ICD paths
aco: Work around MSVC restrict in c99_compat.h
ac: Align ADDR_FASTCALL with addrlib
radv: Match function definitions to declarations
meson: Update libelf wrap for Windows
Jan Beich (1):
meson: disable -Werror=thread-safety on FreeBSD
Jan Zielinski (3):
gallium/swr: Remove driver source
gallium/swr: Remove common code and build options
gallium/swr: clean up the documentation after SWR removal from main
Faith Ekstrand (158):
vulkan/log: Tweak our handling of a couple error enums
vulkan/log: Don’t assert on non-client-visible objects
vulkan/wsi/win32: Delete the wrapper entrypoints
i965: Emit a NULL surface for buffer textures with no buffer
nir: Add a nir_foreach_image_variable() iterator
i965/uniforms: Handle images as a separate pass
amd/llvm/nir: Add support for nir_var_mem_image
aco: Add support for nir_var_mem_image
glsl/nir_linker: nir_var_mem_image is also a GL uniform
nir/gl_nir_lower_samplers_as_deref: Support nir_var_mem_image
nir/gl_nir_lower_images: Support nir_var_mem_image
st/nir: Assign uniform locations to nir_var_mem_image vars
ntt: Separate image and sampler handling
llvmpipe: Support image variables living in nir_var_mem_image
nir/lower_readonly_images_to_tex: Also rewrite variable modes
clover: Insert dummy uniform variables for images
clover: Use nir_foreach_image_variable for images
zink: Images can live in nir_var_mem_image now
ir3: Check for nir_var_mem_image in shared_barrier handling
spirv: Assert that OpTypeForwardPointer only points to structs
glsl: Use nir_var_mem_image for images
ttn: Use nir_var_mem_image
st/pbo: Use nir_var_mem_image for images
nir: Validate image variable modes
aco: Split var_mem_image barrier handling from global/ssbo
intel/fs: Stop emitting TGM fences for nir_var_mem_ssbo
nir/gl_nir_lower_images: Require nir_var_mem_image
ir3: Images are always nir_var_mem_image
nir: Drop our attempt at typed-based image mode validation
nir: s/nir_var_mem_image/nir_var_image/g
nir: Re-arrange the variable modes
nir/serialize: Pack deref modes better
compiler/types: Combine image and sampler type serialization
compiler/types: Unify the guts of get_sampler/image_count
compiler/types: Add a texture type
nir: Allow texture types
nir/deref: Also optimize samplerND -> textureND casts
lavapipe: Allow for texture types
clover/nir: Don’t remove texture variables
spirv: Use texture types for sampled images
compiler/types: Add a wrap_in_arrays helper
anv: Implement VK_EXT_global_priority_query
glsl/nir/linker: Also remove image variables
vulkan/vk_extensions_gen: Drop support for extra includes
vulkan/vk_extensions_gen: Stop including vk_object.h
v3dv: Use vk_instance_get_proc_addr_unchecked for WSI
lavapipe: Use vk_instance_get_proc_addr_unchecked for WSI
vulkan: Rework mako error handling in python generators
vulkan: Drop unnecessary [en]coding comments from python generators
vulkan/dispatch_table: EntrypointBase doesn’t need to derive from object
vulkan: Break entrypoint parsing into its own file
vulkan: Move trampoline code-gen to its own file
vulkan: Move all the common object code to runtime/
lavapipe: Don’t wrap errors returned from vk_device_init in vk_error
intel: Add has_bit6_swizzle to devinfo
anv,iris: Advertise a max 3D workgroup size of 1024^3
anv/allocator: Add a couple of helpers
anv: Pull aperture size from devinfo
anv/allocator: Use anv_device_release_bo in anv_block_pool_finish
anv: Rename anv_bo::index to exec_obj_index
anv: Add get/set_tiling helpers
anv: Add a couple more checks in MapMemory
anv: Fix FlushMappedMemoryRanges for odd mmap offsets
anv: Add helpers in anv_allocator for mapping BOs
anv: Always set bindless surface base on SKL+
anv: Int64 atomics don’t need to depend on softpin
anv: Add a anv_use_relocations helper and use it
anv: Add a use_relocations physical device bit
anv: Stop checking for HAS_EXEC_FENCE
anv: Add an anv_bo_is_pinned helper
anv: Also disallow CCS_E for multi-LOD images
anv: Move device memory maps back to anv_device_memory
vulkan: Pull the device lost framework from ANV
anv: Use the new common device lost tracking
vulkan/device: Add a check_status hook
anv: Wire up the new status check
vulkan: Add a vk_sync base class
vulkan/meson: Re-arrange libvulkan_util deps a bit
vulkan/util: Include stdlib.h
vulkan/vk_device: Add a drm_fd field
vulkan: Add a common vk_drm_syncobj struct
c11/threads: Re-align return values for timed waits
vulkan: Add an emulated timeline sync type
vulkan: Add a common implementation of VkFence
vulkan: Add a common implementation of VkSemaphore
vulkan: Add common implementations of vkQueueSubmit and vkQueueWaitIdle
vulkan/device: Log the timeline mode when lost
vulkan/wsi: Drop wsi_common_get_current_time()
wsi/display: Rework wsi_fence a bit
vulkan/wsi/display: Wrap wsi_display_fence in a vk_sync
anv: Delete ANV_SEMAPHORE_TYPE_DUMMY
anv: Add a BO sync type
anv: Remove the last remnants of in/out fences
anv: Use helpers in util/os_time.h in the query code
anv: Convert to the common sync and submit framework
vulkan: Add an emulated binary vk_sync type
anv: Remove unnecessary syncobj wrappers
anv: Simplify submit_simple_batch()
vulkan,anv: Auto-detect syncobj features
vulkan: Add a dummy sync type
vulkan/sync: Rework asserts a bit
crocus: wm_prog_key::key_alpha_test uses GL enums
intel/fs,vec4: Drop uniform compaction and pull constant support
intel/fs,vec4: Drop support for shader time
intel/blorp: Stop depending on prog_data binding tables
intel/fs,vec4: Drop prog_data binding tables
intel/compiler: Get rid of wm_prog_key::frag_coord_adds_sample_pos
intel/fs: Drop high_quality_derivatives
anv: Stop doing too much per-sample shading
intel/dev: Add gtt_size to devinfo
Revert “anv: Stop doing too much per-sample shading”
vulkan/queue: Handle WSI memory signal information
anv: Implement vk_device::create_sync_for_memory
anv: Drop anv_sync_create_for_bo
radeonsi/nir: Check for VARYING_SLOT_PRIMITIVE_ID not SYSTEM_VALUE
nir: Add a new sample_pos_or_center system value
intel/fs: Return fs_reg directly from builtin setup helpers
intel/fs: Rework emit_samplepos_setup()
intel/fs: Implement the sample_pos_or_center system value
anv,nir: Use sample_pos_or_center in lower_wpos_center
anv/pipeline: Get rid of sample_shading_enable
intel/fs: Be more conservative in split_virtual_grfs
intel/fs: Use OPT() for split_virtual_grfs
intel/eu: Don’t double-loop as often in brw_set_uip_jip
Revert “intel/fs: Do cmod prop again after scheduling”
intel/fs: Reset instruction order before re-scheduling
intel/fs: Add a NONE scheduling mode
vulkan/runtime: Validate instance version on 1.0 implementations
anv,radv,v3dv: Move AcquireImageANDROID to common code
radv: Move QueueSignalReleaseImageANDROID to common code
anv: Use the common QueueSignalReleaseImageANDROID from RADV
v3dv: Use the common QueueSignalReleaseImageANDROID from RADV
turnip: Use vk_common_AcquireImageANDROID
turnip: Use vk_common_QueueSignalReleaseImageANDROID for DRM
intel/compiler: Stop using GLuint in brw_compiler.h
intel/fs: Use compare_func for wm_prog_key::alpha_test_func
spirv,radv: Fix some GL enum comments
vulkan/runtime: Implement 1.3 features/properties
anv/pass: Don’t set first_subpass_layout for stencil-only attachments
.mailmap: Switch Faith Ekstrand to @collabora.com
anv: Implement 1.3 features/properties
anv: Advertise Vulkan 1.3
vulkan/wsi: Set MUTABLE_FORMAT_BIT in the prime path
vulkan/wsi/drm: Break create_native_image in pieces
vulkan/wsi: Add a helper for the configure/create/bind pattern
vulkan/wsi/drm: Break create_prime_image in pieces
vulkan/wsi/x11: Split image creation
vulkan/wsi/wayland: Split image creation
vulkan/wsi/display: Split image creation
vulkan/wsi/win32: Delete unnecessary copy+paste from DRM
vulkan/wsi/win32: Break create_win32_image in pieces
vulkan/wsi/drm: Drop wsi_create_native/prime_image
wsi/common: Set VK_IMAGE_CREATE_ALIAS_BIT
vulkan/wsi: Add image create and bind helpers
anv/image: Add some asserts when binding swapchain images
anv/image: Call into WSI to create swapchain images
anv: Call vk_command_buffer_finish if create fails
anv: Don’t assume depth/stencil attachments have depth
Jason2013 (1):
Fix typo
Jesse Natalie (236):
microsoft/clc: Images use nir_var_mem_image
util/hash_table: Clear special 0/1 entries for u64 hash table too
microsoft/compiler: Use textures for SRVs
u_prim_restart: Fix index scanning with start offset
d3d12: Don’t accumulate timestamp queries
u_threaded_context: Support including from C++
d3d12: Inherit from threaded_query
d3d12: Resources inherit from threaded_resource
d3d12: Inherit from threaded_transfer
d3d12: Use thread safe slab allocators in transfer_map handling
d3d12: Pass explicit context to pre/post draw surface blits
d3d12: Hook up threaded context
d3d12: Fully init primconvert config
d3d12: Fix Linux fence wait return value
d3d12: Handle non-infinite wait timeouts > 49.7 days as infinite
util/libsync: Fix timeout handling if poll() wakes up early
d3d12: Don’t wait for *all* batches when synchronizing a resource
d3d12: Don’t wait for GPU reads to do CPU reads
mesa/main: Fix use of alloca() without #include “c99_alloca.h”
clc: Use kernel_arg_type_qual string to add const type qualifier to arg metadata
microsoft/clc: Add a test for arg metadata
d3d12: Fix incorrect hash table usage
meson: Don’t override built-in cpp_rtti option, error if it’s invalid
meson: Allow mismatching RTTI for MSVC
android: Add a BOARD CFlags option so build can be customized
mesa/main, android: Log errors to logcat
android,d3d12: Support using DirectX-Headers dependency from AOSP
android: Allow forcing softpipe
d3d12: Support BGRA 555 and 565 formats
d3d12: Support PIPE_CAP_MIXED_COLOR_DEPTH_BITS
d3d12: Support RGBX formats mapped to RGBA
microsoft/compiler: Handle GLES external textures
gallium, windows: Use HANDLE instead of FD for external objects
winsys/d3d12: Populate winsys handle format
d3d12: Handle import/export of fd shared handles
d3d12: Make format list all use macros
d3d12: Generate format table using a macro list
d3d12: Generate a pipe format -> typeless mapping table too
d3d12: Validate opened D3D12 resource matches pipe template
CI/windows: Uprev piglit
CI/windows: Upload result.txt as an artifact
CI/windows: Move D3D12 test YML to D3D12 driver folder
CI/windows: Move SPIRV-to-DXIL test YML to microsoft folder
CI/windows: Move reference files to relevant ci subdirectories
CI/d3d12: Add a quick_shader run
d3d12: Support compat level 330
windows: Use TLS context/dispatch with shared-glapi
d3d12: Handle depth readback on drivers that require full-resource copies for depth
nir: Add an ‘external’ texture type for parity with samplers
d3d12: Force emulation of all YUV formats using per-plane formats
d3d12: Handle opening planar resources
d3d12: Allow creating planar resources
d3d12: Use overall resource format + plane format to get format info
microsoft/compiler: Implement inot
microsoft/compiler: Remove algebaric pass for inot
ci/windows: Remove line numbers from assertions in spirv2dxil tests
glapi: Never use dllimport/dllexport for TLS vars on Windows
microsoft/compiler: Support lowered io (nir_intrinsic_load_input/store_output)
microsoft/compiler: Lower io
microsoft/compiler: Delete non-sysval deref load/store code
microsoft/compiler: Load synthesized sysvals via lowered io
d3d12: Fix NV12 resource importing
softpipe: Add a dummy field to sp_fragment_shader_variant_key
CI: Trigger Windows build on softpipe changes
microsoft/compiler: Emit SSBOs from 0 -> count for GL (non-kernel, non-Vulkan) shaders
microsoft/compiler: Hook up uavs-at-every-stage flag
microsoft/compiler: Handle write masks in SSBO lowering pass
d3d12: Support SSBOs in root signatures
d3d12: Always create buffers as UAV-capable
d3d12: Support setting SSBOs on the context and turning them into descriptors
d3d12: Use DXIL load/store lowering pass
d3d12: Set SSBO support caps
d3d12: Avoid a debug warning trying to unmap a not-mapped resource
d3d12: Replace pipe cap literals with D3D12 defines when available
d3d12: Enable cubemap arrays
microsoft/compiler: Position should always be no-perspective
d3d12: Handle cubemap gather on int cubemaps
d3d12: Enable texture gather
microsoft/compiler: Fix LOD instruction to return 2 values
gallium/aux: Move index offsetting from prim restart to primconvert
microsoft/compiler: Change vulkan_environment bool to an enum
microsoft/compiler: Put SSBO and image handles in separate arrays
microsoft/compiler: Emit GL images in descriptor space 1 with driver_location instead of binding
microsoft/compiler: Unify handle retrieval between images and UBO/SSBO
microsoft/compiler: Emit SRVs/UAVs as arrays
microsoft/compiler: Fix array-of-array handling for derefs of textures/images
microsoft/compiler: Handle images as derefs for GL
microsoft/compiler: Implement atomic image ops
microsoft/compiler: Handle forced early depth
microsoft/compiler: Hook up memory/control barriers
microsoft/compiler: Fix handling of fp16-in-32bit-val ops to handle high bits
d3d12: Shrink 2D array size so that max-layer cube arrays can be created
d3d12: Fix format table typeless-ness for A8 and RGBA1010102
d3d12: Rename UAV -> SSBO to disambiguate with image UAVs
d3d12: Add missed SSBO binding enum value
d3d12: Figure out if we can support GL shader images
d3d12: Handle format support queries for shader images
d3d12: Init null UAVs
d3d12: Retrieve shader image dimensions during shader compiles
d3d12: Handle images in the root signature
d3d12: Handle set_shader_images
d3d12: Create textures as UAV-capable when appropriate
d3d12: Fill out shader image descriptor tables
d3d12: Lower cube images to 2D arrays via existing int cubemap lowering pass
d3d12: Handle memory barriers
d3d12: Handle bitcasting of shader images
d3d12: Set appropriate caps for shader images
nir_opt_dead_cf: Remove dead ifs
shader_info: tess.spacing needs to be unsigned
microsoft/compiler: Move workgroup_size lowering from clc
microsoft/compiler: Handle more GL memory barriers
d3d12: Limit sampler view count to 32
d3d12: Keep state vars last in the per-stage root parameters
d3d12: Remove draw_info from selection_context
d3d12: Stop trying to set D3D12_DIRTY_SHADER during bindings
d3d12: Compile, bind, and cache compute PSOs
d3d12: Support compute root signatures
d3d12: Hook up compute shader variations
d3d12: Implement launch_grid
d3d12: Implement num workgroups as a state var
d3d12: Handle indirect dispatch
d3d12: Run DXIL shared atomic lowering pass
d3d12: Enable compute
docs: Update d3d12 extension list and new_features.txt
d3d12/ci: Skip flaky tex-miplevel-selection and timestamp tests
mesa/st: Assert that NIR drivers that support tess use tess levels as inputs
d3d12: Export d3d12_get_state_var from d3d12_nir_passes.c
d3d12: Fix re-enabling predication after temporary disablement
d3d12: Predication fix: re-enable after restarting a batch if needed
d3d12: Predication fix: For boolean queries used for predication, D3D12 uses uint64, so clear at least a uint64 in the result
d3d12: Declare support for inverted conditional render
d3d12: Upgrade first vertex state var into all vertex draw params
d3d12: Enable base instance and draw params extensions
d3d12: Add a command signature cache for indirect draws
d3d12: Handle draw indirect and multi-draw indirect
d3d12: Handle indirect twoface draws
d3d12: Add a compute transformation to handle indirect draws that need draw params
d3d12: Enable draw and multi-draw indirect
docs: Update d3d12 features
d3d12: When no framebuffer attachments are present, use ForcedSampleCount instead of SampleDesc.Count for MSAA
d3d12: When no framebuffer attachments are present, the viewport must be clamped to framebuffer size
d3d12: Support ARB_framebuffer_no_attachments
docs: Update d3d12 feature list
ci/windows: Use 2 container stages
microsoft/compiler: Handle variables declared per-sample
microsoft/compiler: Handle load_sample_pos_at_id
microsoft/compiler: Always have at least one GS active stream
microsoft/compiler: Handle ‘pull model’ explicit interpolation intrinsics
microsoft/compiler: Handle textureGatherCmp
microsoft/compiler: Handle input coverage
microsoft/compiler: Handle tex texture/sampler offset srcs
microsoft/compiler: Handle load_invocation_id for GS and HS
microsoft/compiler: Emit samplers as array types
microsoft/compiler: Handle bitfield_insert
microsoft/compiler: Use ibfe/ubfe for bitfield extract instead of lowering to shifts
microsoft/compiler: Handle msb/lsb/bfrev
microsoft/compiler: Lower helper invocations
d3d12: Sample mask output needs to be uint-typed
d3d12: Lower load_sample_pos to load_sample_pos_at_id
d3d12: Report sample positions
d3d12: Modify shaders when MSAA is disabled
d3d12: Relax multisampling direct copy requirements
d3d12: Temp resources for same-resource copies can be MSAA too
d3d12: Report number of GS streams
d3d12: Apply GS point sprite lowering to fixed-function point size too
d3d12: Run point sprite lowering pass on multi-stream GS when safe
d3d12: Support dynamic UBO/SSBO indexing
d3d12: When mapping a non-directly-mappable resource for write, readback first
d3d12: Set sample-rate shading and GLSL 400 caps
docs: Update d3d12 features
mesa/st: Lower user clip planes for tess eval too
microsoft/compiler: Force integer I/O vars to use flat/constant interpolation
microsoft/compiler: Use driver_location instead of location for inter-stage varying index in GL
microsoft/compiler: Semantic table should be de-duped for multi-row semantics too
microsoft/compiler: Multi-row output semantics need to write multiple never_writes_masks
microsoft/compiler: Getting a builtin function with an undeclared signature should be unreachable
microsoft/compiler: Add mapping from MESA_SHADER_* to DXIL_*_SHADER for tessellation
microsoft/compiler: Fix typo in enum entry
microsoft/compiler: Emit statically-indexed resource handles and scratch later
microsoft/compiler: Support emitting multiple functions into a DXIL module
microsoft/compiler: Emit functions with actual function names
microsoft/compiler: Emit all NIR functions into the DXIL module
microsoft/compiler: Handle store_per_vertex_output for HS outputs
microsoft/compiler: Split hull (tess ctrl) shaders into main and patch constant funcs
microsoft/compiler: Delete misleading TODO comments about semantic table
microsoft/compiler: Emit HS PSV validation and entrypoint metadata
microsoft/compiler: Fix I/O signatures for tess shaders
microsoft/compiler: Overlap patch and non-patch varyings so both are separately 0-indexed
microsoft/compiler: When sorting patch varyings, adjust location to be in normal varying range
microsoft/compiler: Gather patch const signature and handle tess factor in it
microsoft/compiler: Add patch constant signature into PSV and as container blob
microsoft/compiler: Add a pass for hull and domain shaders to shrink tess level vars
microsoft/compiler: For store_output from HS, use storePatchConstant
microsoft/compiler: For load_input from DS, use loadPatchConstant
microsoft/compiler: Handle load_per_vertex_output as LoadOutputControlPoint
microsoft/compiler: Handle load_output in the HS stage as reading a previously written patch constant
microsoft/compiler: Handle domain location intrinsic
microsoft/compiler: Emit DS PSV validation and entrypoint metadata
microsoft/compiler: Primitive ID should only be added as a sysval in geometry shaders
microsoft/compiler: Location_frac needs to be included in sort order
microsoft/compiler: Handle clip/cull distance as an input to tess shaders
d3d12: Enable PIPE_CAP_TGSI_TEXCOORD
d3d12: Initial plumbing for tesselation
d3d12: Link tesselation control and eval shaders
d3d12: Handle patch_vertices and patch topology
d3d12: Handle passthrough TCS in the case where eval is bound
d3d12: Add a state variable for patch_vertices_in
d3d12: Update varying creation logic to handle location_frac
d3d12: Handle input clip array size in the shader key
d3d12: Set caps for tesselation
microsoft/compiler: Fix UAV resource ID counting for static indexed handles
d3d12: Fix compute transform for multi-draw indirect with dynamic count + state vars
d3d12: Add UAV barriers for UAVs that are being used by compute transforms
d3d12: Include SO buffer count as a PSO dirty bit
d3d12: Support transform feedback pause/resume
d3d12: Move indirect compute to real indirect dispatches
d3d12: SO buffer filled size is only 32-bit
d3d12: Add a comment for what the existing compute transform does
d3d12: Add a couple compute transforms for “fake” SO buffers
d3d12: Add a compute transform for draw auto
d3d12: Move compute transform state save/restore to compute_transforms.cpp
d3d12: Move “fake” SO buffer handling to compute transforms instead of CPU readback
d3d12: Implement DrawAuto aka DrawTransformFeedback
d3d12: Compute transform UBO0 is actually binding 1
d3d12: Rewrite subquery logic
d3d12: Switch primitives-generated query to use XFB, GS, and IA data
d3d12: ARB_transform_feedback2
microsoft/compiler: Correctly support I/O on variables with location_frac
microsoft/compiler: Support multiple GS output streams
d3d12: Unpack multi-stream varyings
d3d12: Fix xfb varying matching for vars with location_frac
d3d12: Handle indexed queries
d3d12: ARB_transform_feedback3
microsoft/compiler: Only prep phis for the current function
microsoft/compiler: Only treat tess level location as special if it’s a patch constant
tc: CPU storage needs to be freed with align_free
Jianxun Zhang (7):
intel: provide pci bus and dev info in base device struct
intel: use PCI info to compute device uuid
anv: remove private pci fields
intel: dump PCI info in intel_dev_info
intel: remove chipset_id
intel: add swizzle flag into driver uuid
anv: refactor queue chain
Jonathan Gray (6):
util: unbreak non-linux mips64 build
util: fix util_cpu_detect_once() build on OpenBSD
radv: use MAJOR_IN_SYSMACROS for sysmacros.h include
util/u_atomic: fix build on clang archs without 64-bit atomics
util: fix build with clang 10 on mips64
util: use correct type in sysctl argument
Jonathan Marek (3):
freedreno/layout: Fix the UBWC block size for the Y plane
turnip: enable UBWC for NV12
turnip: use SUBDRAW_SIZE and constant sized tess bos
Jordan Crouse (1):
turnip: Update the msm_kgsl.h header with the sanitized 4.19 version
Jordan Justen (50):
intel/genxml: Update genxml to support tessellation/geometry distribution
intel/dev/test: Assert (verx10 / 10) == ver
Revert “iris: Disable I915_FORMAT_MOD_Y_TILED_GEN12* on adl-p/display 13”
iris: Use mi_builder in iris_load_indirect_location()
intel/genxml/125: Update COMPUTE_WALKER POSTSYNC_DATA struct
anv,blorp,iris: Set MOCS for COMPUTE_WALKER post-sync operation
intel/dev: Add platform enum with DG2 G10 & G11
intel: Add intel_gem_count_engines
intel: Add intel_gem_create_context_engines
iris: Add iris_init_batches
iris/batch: Move kernel context init to iris_init_non_engine_contexts
iris/batch: Add exec_flags field
iris: Move away from “hw” for some context terminology
iris: Destroy all batches with a new iris_destroy_batches() function
iris: Make iris_kernel_context_get_priority() public
iris/batch: Add support for engines contexts
intel/l3: Make DG1 urb-size exception more generic
iris: Not all gfx12+ have aux_map_ctx
anv: Align buffer VMA to 2MiB for XeHP
iris: Align buffer VMA to 2MiB for XeHP
nir/lower_tex: Add filter for tex offset lowering
intel/compiler: Use nir_lower_tex_options::lower_offset_filter for tg4 on XeHP
intel/genxml/12.5: Remove bt-pool enable from 3DSTATE_BINDING_TABLE_POOL_ALLOC
anv: Add BINDING_TABLE_POOL_BLOCK_SIZE
intel/compiler: Adjust TCS instance-id for dg2+
isl: Don’t enable HDC:L1 caches on DG2
intel: Add device info for DG2
intel: Add *disabled* device ids for DG2
intel/devinfo: Adjust L3 banks for DG2
iris: Use mi_builder to set 3DPRIM registers for draws
iris: Use mi_builder for load/store reg/mem/imm functions
intel/dev: Add max_threads_per_psd field to devinfo for gfx8+
anv,blorp,crocus,i965,iris: Use devinfo->max_threads_per_psd for gfx8+
intel/dev: Add intel_hwconfig_types.h from random post on the internet
intel/dev: Add intel_print_hwconfig_table()
intel/dev: Print urb size with intel_dev_info
intel/dev: Add intel_device_info::apply_hwconfig
intel/dev: Set intel_device_info::apply_hwconfig for DG2
intel/dev: Apply settings from hwconfig if devinfo::apply_hwconfig is set
intel/dev: Recalculate max_cs_threads after applying hwconfig changes
intel/gem: Return length from intel_i915_query_alloc
intel/dev: Add DG1 PCI id 0x4909
intel/dev: Add device ids for ADL-N
intel/dev: Add device info for RPL
intel/genxml: Extend length of 3DSTATE_WM_HZ_OP for gfx12.5
intel/genxml: Extend length of 3DSTATE_DEPTH_BUFFER for gfx12.5
isl: Enable compression with Tile4
intel/fs: Assert that old pull-const code is not used if devinfo->has_lsc
anv: Align GENERAL_STATE_POOL_MIN_ADDRESS to 2MiB
anv: Align state pools to 2MiB on XeHP
Joshua Ashton (8):
radv: Always inline descriptor writes
radv: Split off cmd_buffer variant of descriptor set updates
radv: Split off cmd_buffer variant of descriptor set template updates
nvc0: Fix uninitialized width/height/depth warning.
radv: Refactor S_FIXED to radv_float_to_{s,u}fixed
radv: Expose min_lod in *_make_texture_descriptor
vulkan: Update the XML and headers to 1.2.199
radv: Implement VK_EXT_image_view_min_lod
José Fonseca (4):
d3d10umd: Rename Dxgi.h to DxgiFns.h.
d3d10umd: Update for transfer interface changes.
d3d10umd: Fix MSVC build.
d3d10umd: Update for set_sampler_views take_ownership parameter.
Juan A. Suarez Romero (22):
vc4/ci: update expected results
v3dv/ci: update expected results
broadcom/compiler: handle array of structs in GS/FS inputs
broadcom/compiler: apply constant folding on early GS lowering
nir: add NIR_DEBUG envvar
mesa: allow TEXTURE_BUFFER target for ARB_texture_buffer_range
st/pbo: do not use GS for NIR preferred shaders
gallium/util: add helper to clamp colors to valid range
v3d: clamp clear color
gallium: add new PIPE_CAP_IMAGE_STORE_FORMATTED
st/pbo: add the image format in the download FS
st/pbo: set layer coord for array textures
v3d: enable ARB_texture_view
tgsi-to-nir: initialize NIR_DEBUG envvar
nir: use call_once() to init debug variable
broadcom/ci: restructure expected results
softpipe: enable PIPE_CAP_IMAGE_STORE_FORMATTED
d3d12: enable PIPE_CAP_IMAGE_STORE_FORMATTED
mesa/st: do not expose ARB_shader_image_load_store if not fully implemented
mesa: fix MAX_GEOMETRY_IMAGE_UNIFORMS check support
v3d/doc: do not expose ARB_shader_image_load_store
v3d: keep clear color untouched
Karol Herbst (5):
spirv: Don’t add 0.5 to array indicies for OpImageSampleExplicitLod
clover/image: add templated basic_image class to simplify image subclassing
clover/format: Full rework on how we declare supported images.
clover/formats: pass in cl_mem_flags for better format checking
clover/api: fix clGetMemObjectInfo for images
Kenneth Graunke (82):
intel: Drop Tigerlake revision 0 workarounds
crocus: Replace devinfo->ver[x10] checks with GFX_VER[x10]
intel/genxml: Fix Indirect Object Access Upper Bound on Gfx4
intel/genxml: Add an “mbz” data type
intel/genxml: Drop “Hierarchical Depth Buffer MOCS” field
intel/genxml: Change 3DSTATE_CONSTANT_XS::MOCS to be MBZ on Gfx8.
isl: Fill in MOCS even for SURFTYPE_NULL surfaces.
isl: Fill in MOCS for NULL depth, stencil, and HiZ buffers.
blorp: Fill in MOCS even for SURFTYPE_NULL surfaces.
blorp: Fill in MOCS for null depth/stencil/HiZ buffers.
blorp: Use a non-zero MOCS for disabled constant buffers
iris: Drop unnecessary parenthesis
iris: Set Bindless Sampler State MOCS
iris: Set default MOCS for NULL depth/stencil/HiZ buffers
iris: Set MOCS on 3DSTATE_CONSTANT_XS on Gfx9+
iris: Set MOCS on 3DSTATE_CONSTANT_ALL packets that disable all buffers
iris: Set MOCS on NULL vertex buffers
iris: Set MOCS on NULL stream output buffers
iris: Fix MOCS for buffer copies
anv: Set default MOCS for NULL depth/stencil/HiZ buffers
anv: Set MOCS for 3DSTATE_CONSTANT_XS on Gfx7.x as well
anv: Set MOCS in 3DSTATE_CONSTANT_XS even if there isn’t a buffer.
anv: Set MOCS on NULL vertex buffers
anv: Set MOCS on NULL stream output buffers
crocus: Set MOCS for most state base addresses on pre-Gen8
crocus: Tidy the ifdefs for emitting STATE_BASE_ADDRESS
crocus: Set MOCS for index buffers on Gen6+
crocus: Set MOCS on NULL stream output buffers
crocus: Set default MOCS for NULL depth/stencil/HiZ buffers
crocus: Set MOCS for push constant buffers where possible
crocus: Set MOCS for 3DSTATE_SO_BUFFERS on Gfx7.x too
crocus: Fix MOCS for buffer copies.
i965: Use ISL for MOCS rather than open coding it everywhere
i965: Set default MOCS for NULL depth/stencil/HiZ buffers
i965: Set MOCS for push constant buffers on Haswell and Gfx9+
i965: Set MOCS on NULL stream output buffers
i965: Set MOCS for 3DSTATE_SO_BUFFERS on Gfx7.x too
i965: Set MOCS for 3DSTATE_INDEX_BUFFER on Gfx6/7 as well.
i965: Fix MOCS for BLORP buffer copies
i965: Port STATE_BASE_ADDRESS to genxml and fix bugs
i965: Set MOCS for Bindless Surface/Sampler State base addresses
intel/genxml: Add an field option for nonzero=”true”
intel/genxml: Assert that all MOCS fields are non-zero on Gfx7+
intel/genxml: Include blitter commands in gen*_pack.h
intel/genxml: Allow MI_FLUSH_DW on the blitter
intel/genxml: Add XY_BLOCK_COPY_BLT on Tigerlake and later.
iris: Fix parameters to iris_copy_region in reallocate_resource_inplace
intel/genxml: Simplify prefix handling for field value lists
intel/genxml: Collapse leading underscores on prefixed value defines
intel/genxml: Fix MI_FLUSH_DW to actually specify the length properly
intel/genxml: Fix XY_BLOCK_COPY_BLT destination tiling field type
intel/genxml: Decode VALIGN/HALIGN values in XY_BLOCK_COPY_BLT
iris: Make a helper function for cross-batch dependency flushing
iris: Check for cross-batch flushing whenever a buffer is newly written.
iris: Tidy code in iris_use_pinned_bo a bit
blorp: Fix compute-blits for rectangles not aligned to the workgroup
blorp: Don’t try to use the 3D stencil write hardware for compute
blorp: Assert that BLORP_BATCH_PREDICATE_ENABLE isn’t set for compute
blorp: Disallow multisampling for BLORP compute blits and copies.
iris: Rename is_render_target to is_dest in a few blit functions
isl: Move some genxml surface state helpers into an include file
intel/vec4: Use ir_texture_opcode less in emit_texture()
intel/vec4: Use nir_texop in emit_texture instead of translating
intel/vec4: Inline emit_texture and move helpers to brw_vec4_nir.cpp
intel/compiler: Use uppercase enum values in brw_ir_performance.cpp
intel/fs: Reuse the same FS input slot for VUE header fields.
iris: Use prog_data->inputs rather than shader info in SBE code.
iris: Do primitive ID overrides in 3DSTATE_SBE not SBE_SWIZ
iris: Directly access BOs rather than using iris_resource_bo(…)
intel: Allow copy engine class in intel_gem_create_context_engines()
intel/genxml: Add XY_BLOCK_COPY_BLT Color Depth enum values
intel/dev: Add a has_flat_ccs flag
blorp: Add a blorp_address::local_hint flag
isl: Add isl_dev->mocs.blitter_{src,dst} fields
blorp: Add support for blorp_copy via XY_BLOCK_COPY_BLT
iris: Create an IRIS_BATCH_BLITTER for using the BLT command streamer
iris: Only have one blorp_batch_init/finish in iris_copy_region()
iris: Set BLORP_BATCH_USE_{COMPUTE,BLITTER} flags for the target batch
iris: Implement iris_blorp_exec() for the blitter engine
iris: Fix and refactor check for clear color being fully zero
iris: Make an iris_foreach_batch macro that skips unsupported batches
blorp: Add blorp_measure hooks to the blitter codepaths
Khem Raj (1):
v3dv: account for 64bit time_t on 32bit arches
Konstantin Seurer (4):
lavapipe: Fixed maxFragmentCombinedOutputResources
anv: Fixed maxFragmentCombinedOutputResources
turnip: Fixed maxFragmentCombinedOutputResources
panvk: Fixed maxFragmentCombinedOutputResources
Kostiantyn Lazukin (3):
util/u_trace: Replace Flag with IntEnum to support python3.5
util/ra: use adjacency matrix for undirected graph
util/ra: Fix numeric overflow during bitset allocation
Krunal Patel (2):
frontends/va: use un-padded width/height in ExportSurfaceHandle
frontend/va: Setting the size of VADRMPRIMESurfaceDescriptor
Leandro Ribeiro (12):
egl: remove unnecessary spaces after types
egl/wayland: replace EGL_DRI2_MAX_FORMATS by EGL_DRI2_NUM_FORMATS
egl/wayland: deprecate drm_handle_format() and drm_handle_capabilities()
egl/wayland: do not try to access memory if allocation failed
egl/wayland: move formats and modifiers to a separate struct
egl/wayland: remove unused constant EGL_DRI2_NUM_FORMATS
loader: add function to get render node from dev_t
egl/wayland: add initial dma-buf feedback support
egl/wayland: move loader_dri_create_image() calls to separate functions
egl/wayland: use surface dma-buf feedback to allocate surface buffers
egl/wayland: do not try to bind to wl_drm if not advertised
egl/wayland: fix surface dma-buf feedback error exits
Lepton Wu (1):
driconf: Fix unhandled tags in static conf
Lionel Landwerlin (119):
vulkan/wsi/wayland: don’t expose surface formats not fully supported
anv: fix push constant lowering with bindless shaders
pps: remove counter_ids fields
pps: add an intel config file
docs: put a list of commands to setup perfetto
intel/dev: printout timestamp period
intel/pps: provide accurate min sampling period
intel/pps: reuse timestamp_frequency from intel_device_info
intel/dev: fix HSW GT3 number of subslices in slice1
intel/dev: don’t forget to set max_eu_per_subslice in generated topology
intel/dev: reuse internal functions to set mask
intel/dev: fix subslice/eu total computations with some fused configurations
intel/perf: fix perf equation subslice mask generation for gfx12+
intel/devinfo: use compatible type for ARRAY_SIZE
intel/devinfo: fix wrong offset computation
intel: remove 2 preproduction pci-id for ADLS
intel: move away from booleans to identify platforms
intel/dev: also test crocus & i915 pci-ids
anv: don’t forget to add scratch buffer to BO list
anv: fix multiple wait/signal on same binary semaphore
anv: don’t try to close fd = -1
anv: initialize anv_bo_sync base fields
intel/fs: fix shader call lowering pass
pps: allow drivers to report timestamps in their own time domain
intel/perf: add a helper to read timestamp from reports
pps: fixup sporadic missing counters
intel/ds: drop timestamp correlation code
intel/perf: track end timestamp of queries
intel/ds: drop unused constructors
intel/ds: isolate intel/perf from the pps-producer
intel/pps: tweak intel config some more
intel/ds: remove verbose messages
intel: move timestamp scaling helper to intel/perf
anv: fix execbuf syncobjs/syncobj_values array leak
util/u_trace: refcount payloads
nir/opt_deref: don’t try to cast empty structures
util/u_trace: add end_of_pipe property to tracepoints
util/u_trace/perfetto: add new env variable to enable perfetto
intel/nir: preserve access value when duping intrinsic
nir/lower_io: include the variable access in the lowered intrinsic
nir/print: printout ACCESS_STREAM_CACHE_POLICY
nir: add a new access flag to allow access in helper invocations
nir: add intrinsics for ray queries
nir: track variables representing ray queries
nir: add a ray query optimization pass
spirv: handle ray query intrinsics
intel/debug: reclaim 7 unused bits from classic driver
genxml: fix compilation with P/I defines
genxml: protect _length defines in genX_bits.h
docs/envvars: update after INTEL_DEBUG cleanup
util/u_vector: prevent C++ warning on cast from void* to something else
vulkan: fix missing handling of WSI memory signal
anv,wsi: simplify WSI synchronization
gitlab-ci: disable radv-fossils
intel/devinfo: adjust subslice array size
util/u_trace: protect against reentrant calls
anv: don’t leave anv_batch fields undefined
anv: limit compiler valid color outputs using NIR variables
intel/dev: fixup chv workaround
ci: disable vs2019 windows build
intel/devinfo: printout pixel pipes in info printout
intel/devinfo: printout devinfo struct size
intel/devinfo: add a helper to check for slice availability
intel/devinfo: drop num_eus_per_subslice field
anv: fix perf queries
intel/dev: extract slice/subslice total computation
intel/devinfo: split out l3/pixelpipes counting
intel/devinfo: deal with i915 topology query change
intel/fs: disable VRS when omask is written
blorp: add description & helpers to printout ops
isl: add helpers to printout ops
anv: expose a couple of emit helper to build utrace buffer copies
intel/dev,perf: Use a single timescale function
intel/blorp: add measure_end entry point
anv: implement u_trace support
intel/ds: reuse intel_ioctl()
intel/ds: allow user to select metric set at start time
intel/ds: don’t forget to reset upper dword timestamp read
intel/ds: use the right i915_drm.h include location
intel/ds: use a per GPU clock ID
util/u_process: protect entrypoints for c++
anv: add perfetto source
pps: enable anv source in example config file
tools/pps: limit intel cfg to 250ms of sampling
iris: utrace/perfetto support
intel/dev: fix ppipe_mask computation
anv: fix missing descriptor copy of bufferview/surfacestate content
genxml: reduce amount of generated code
anv: verify that the format supports multisampling
anv: switch a bunch of struct/enum to 1.3 versions
relnotes/features: updates for Vulkan 1.3
intel/ci: expected failure for 1.3 with older CTS
docs: start some documentation on Anv
docs/anv: list environment variables
docs/anv: add descriptor memory layout
anv: tidy long lines in descriptor code
docs: update INTEL_DEBUG environment variable documentation
intel/tracepoint: simplify tracepoint descriptions
util/u_trace: make mako conditional code easier to read
util/utrace: make generated code a tiny bit nicer to look at
compiler: add VARYING bit for primitive shading rate
genxml: gen12.5 changes for CPS
genxml: add new 3DSTATE_PS_EXTRA bit
intel/dev: details CPS feature support
isl: add support for coarse pixel control surfaces
isl: disable CPB surface compression
nir/builder: add ishl_imm helper
intel/compiler: add a new pass to lower shading rate into HW format
intel/compiler: add primitive rate output support
anv: force primitive shading rate write in last geometry stage
anv/pass: rely on precomputed dynamic rendering pass/subpass more
anv: Update VK_KHR_fragment_shading_rate for newer HW
intel/fs: don’t set allow_sample_mask for CS intrinsics
intel/nir: fix shader call lowering
anv: fix conditional render for vkCmdDrawIndirectByteCountEXT
nir: fix lower_memcpy
anv/genxml/intel/fs: fix binding shader record entry
anv: fix fast clear type value with external images
intel/fs: fix total_scratch computation
Lorenz Brun (1):
frontends/va: Return error in vaRenderPicture if decoder is NULL
Louis-Francis Ratté-Boulianne (7):
microsoft/compiler: add support for load_layer_id
microsoft/compiler: Add subpass input types
microsoft/compiler: Use SRVs for read-only images
microsoft/spirv_to_dxil: check for variables r/w access
microsoft/spirv_to_dxil: lower input attachments
microsoft/spirv_to_dxil: Lower push constant loads to UBO loads
microsoft/spirv_to_dxil: Allow passing a vulkan -> d3d12 binding mapping table
Lucas Stach (11):
etnaviv: fix alpha blend with dither on older GPUs
etnaviv: initialize vertex attributes on context reset
egl/wayland: break double/tripple buffering feedback loops
etnaviv: drm: fix size limit in etna_cmd_stream_realloc
etnaviv: drm: properly handle reviving BOs via a lookup
etnaviv: drm: export BO idle check function
etnaviv: drm: rename _etna_bo_del
etnaviv: drm: defer destruction of softpin BOs
egl/dri2: remove superfluous flush when changing the context
egl/dri2: short-circuit dri2_make_current when possible
etnaviv: draw: only mark resources as read/written when the state changed
M Henning (2):
nouveau/nir: Use natural alignment for scalars
nouveau/nir: Lower 64-bit phis
Manas Chaudhary (2):
panvk: Add check for null fence
panvk: Fix pointer corruption in panvk_add_wait_event_syncobjs
Maniraj D (1):
egl: set TSD as NULL after deinit
Manuel Stoeckl (2):
gbm: add missing R16 case in gbm_bo_get_bpp
gbm: add GBM_FORMAT_GR1616 and RG1616
Marcin Ślusarz (41):
iris: fix scratch address patching for TESS_EVAL stage
intel: fix INTEL_DEBUG environment variable on 32-bit systems
intel/decoder: Dump Task/Mesh shaders
spirv: handle SpvOpMemberName
intel/compiler: extract brw_nir_load_global_const out of rt code
intel/compiler: Get mesh_global_addr from the Inline Parameter for Task/Mesh
intel/compiler: Load draw_id from XP0 in Task/Mesh shaders
nir: limit lower_clip_cull_distance_arrays input to traditional stages
nir/print: simplify printing of IO semantics
nir/print: expand printing of io semantics.gs_streams
nir/print: compact printing of intrinsic indices
nir/print: move print_load_const_instr up
nir/print: group hex and float vectors together
nir/print: print const value near each use of const ssa variable
intel/compiler: disable workaround not applicable to gfx >= 11
spirv: handle ViewportMaskNV builtin/cap from SPV_NV_mesh_shader
compiler: add new MESH_VIEW_COUNT/MESH_VIEW_INDICES system values
spirv: add MeshViewCountNV/MeshViewIndidcesNV builtins from SPV_NV_mesh_shader
nir: add load_mesh_view_count and load_mesh_view_indices intrinsics
spirv: handle multiview bits of SPV_NV_mesh_shader
nir: remove invalid assert affecting per-view variables
spirv: mark [Clip|Cull]DistancePerViewNV variables as compact
nir: handle per-view clip/cull distances
freedreno/rnn: normalize line endings in rules-ng.xsd
microsoft/compiler: normalize line endings
ci/windows: normalize line endings
radv/ci: add line endings exception for files generated with wine
Add new rules to .gitattributes
intel/compiler: handle gl_[Clip|Cull]Distance in mesh shaders
intel/compiler: handle gl_[Clip|Cull]Distance from mesh in fragment shaders
intel/compiler: Use Task/Mesh InlineData for the first few push constants
anv: Enable conditional rendering in vkCmdDrawMeshTasksNV
anv: Add support for non-zero firstTask in vkCmdDrawMeshTasksNV
anv: Add support for UBOs, SSBOs and push constants in Mesh pipeline
anv: Implement indirect dispatch for Mesh pipeline
anv: tell the hardware about gl_[Clip|Cull]Distance in mesh shaders
anv: include ClipDistance array in mesh shader per-vertex output
anv: Put first few push constants directly into Task/Mesh InlineData
intel/compiler: fix array & struct IO lowering in mesh shaders
anv: don’t set color state when input state was requested
intel/compiler: ignore per-primitive attrs when calculating flat input mask
Marek Olšák (240):
gallium/util: add some extern “C” guards
radeonsi: si_state_shaders.c -> cpp
radeonsi: split si_shader_key into ps and ge parts to minimize memcmp overhead
radeonsi: don’t memcmp inlined uniform values if uniform inlining is disabled
radeonsi: don’t pass NULL into si_get_nir_shader
radeonsi: replace the GS prolog with a monolithic shader variant
radeonsi: enable shader culling on Navi1x consumer SKUs as well
ac,radeonsi: print a lowercase codename in the renderer string
radeonsi: reorder and don’t print patch level DRM version in the renderer string
ac/llvm: use fmac instead of mul+sub in face culling
ac/llvm: add helper ac_build_is_inf_or_nan
ac/llvm: accept primitives whose face culling determinant is Inf or NaN
gallium,vbo: add PIPE_BIND_VERTEX_STATE for display lists
gallium/u_threaded: implement pipelined partial buffer uploads using CPU storage
mesa: fix crashes in the no_error path of glUniform
radeonsi: add SI_MAX_VRAM_MAP_SIZE definition
radeonsi: add an option to use CPU storage uploads for threaded context
radeonsi: change bind_history to track usage in each shader stage
radeonsi: rebind a buffer only in shader stages where it’s been bound
radeonsi: don’t sync PS or CS before (clear|copy)_buffer based on bind history
radeonsi: don’t update bind_history for internal buffer clears and copies
radeonsi: don’t sync before clear_buffer and copy_buffer if the buffer is idle
radeonsi: properly destroy buffers on failure
winsys/amdgpu: remove force_chaining parameter from cs_check_space
winsys/amdgpu: set max_ib_size and max_check_space_size later in cs_check_space
radeonsi: don’t set inline_uniforms for viewperf because it’s enabled by default
amd/addrlib: change how the license is formatted to match internal tree
amd/addrlib: cosmetic addrlib update
mesa: discard draws with count=0 to decrease overhead
st/mesa: don’t crash when draw indirect buffer has no storage
mesa: remove USAGE_ELEMENT_ARRAY_BUFFER because it’s unused and adding overhead
mesa: move setting USAGE_PIXEL_PACK_BUFFER out of BindBuffer to reduce overhead
mesa: remove redundant flagging USAGE_ARRAY_BUFFER
mesa: add a no_error path to _mesa_handle_bind_buffer_gen
glthread: don’t execute display lists if they have no effect
glthread: don’t sync for glIsEnabled with a few enums
glthread: add an option to make glCheckFramebufferStatus a no-op
glthread: add a trivial thread-safe way to skip display list execution
radeonsi: enable shader culling for indirect draws
radeonsi: remove unused parameters in si_emit_draw_packets
gallium/radeon: change the BO priority definitions to bits
gallium/radeon: remove/merge some BO priorities and remove holes
gallium/radeon: remove unused RADEON_DEPENDENCY_START_FENCE
gallium/radeon: merge BO read/write usage flags with priority flags
winsys/amdgpu: simplify parameter passing and derefs in cs_add_buffer
winsys/amdgpu: remove an amdgpu_cs dereference from amdgpu_cs_add_buffer
winsys/amdgpu: don’t clear RADEON_USAGE_SYNCHRONIZED for last_added_bo_usage
winsys/amdgpu: increase the BO hash list size
winsys/amdgpu: don’t use ip_instance and ring fields of fence and IB structures
winsys/amdgpu: move BO fence array updates to the CS thread
winsys/amdgpu: optimize looping inefficiencies in add_bo_fence_dependencies
radeonsi: don’t invoke si_decompress_depth if textures are not dirty at binding
mesa: fix locking when destroying/overwriting/adding display lists
mesa: remove display list OPCODE_NOP
mesa: remove PADDING_64BIT by adding the dlist header into vbo_save_vertex_list
vbo: return a GL error earlier in vbo_save_playback_vertex_list_gallium
vbo: use int16_t for vbo_save_vertex_list::gallium::private_refcount
vbo: restructure vbo_save_vertex_list to get more cache hits
mesa: use alloca in search_resource_hash
glsl: add gl_resource_name to precompute “name” properties later
mesa: don’t compute the same strlen up to 3x in _mesa_program_resource_find_name
mesa: precompute strlen in gl_resource_name::length and use it
mesa: rename locals in _mesa_program_resource_find_name for clarity
mesa: preparse [ and [0] in gl_resource_name and use it in shader_query.cpp
mesa: handle hash collisions in program resource lookups (e.g. uniforms)
mesa: add separate hash tables for each GLSL resource type
mesa: skip strlen when hashing strings for ProgramResourceHash
radeonsi: print the border color error message only once
util: add a util_bitcount variant that selects POPCNT through C++ template arg
st/mesa: change st_atom_array.c to cpp
st/mesa: use POPCNT in st_update_array if the CPU supports it
mesa: change gl_vertex_array_object::NewArrays to bool
mesa: add NewVertexBuffers/NewVertexElements flags to indicate state changes
cso: add missing parameters into cso_set_vertex_buffers
st/mesa: don’t update vertex elements when GL doesn’t change them
driconf: set vblank_mode=0 for viewperf2020
gallium/util: fix util_can_blit_via_copy_region with unbound render condition
gallium/u_blitter: disable sample shading for all blits
gallium/u_blitter: do MSAA copies in 1 pass using sample shading
gallium/u_blitter: work around broken sample shading in llvmpipe and zink
radeonsi: fix 2 issues with depth_cleared_level_mask
radeonsi: add a faster clear path for glClearTexImage
radeonsi: rename stencil_cleared_level_mask -> stencil_cleared_level_mask_once
radeonsi: allow and finish TC-compatible MSAA HTILE
radeonsi: fix a typo preventing a fast depth-stencil clear
radeonsi: increase tc_max_cpu_storage_size
vbo: utilize structure padding to optimize indirection cold->prims[0].begin
driconf: disallow 10-bit pbuffers for viewperf2020/maya due to X errors
gallium: rename PIPE_CAPF_MAX_POINT_WIDTH -> MAX_POINT_SIZE
gallium: add missing point and line CAPs
radeonsi: set correct point and line limits
st/mesa: use new point and line CAPs
nir: add new SSA instruction scheduler grouping loads into indirection groups
radeonsi: enable nir_group_loads for better performance
radeonsi: fix shader culling with integer pixel centers
radeonsi: fix view culling for wide lines
radeonsi: use ac_build_load_to_sgpr in gfx10_emit_ngg_culling_epilogue
radeonsi: make si_get_small_prim_cull_info static
radeonsi: set PERPENDICULAR_ENDCAP_ENA for wide AA lines
radeonsi: set EXTRA_DX_DY_PRECISION for lines where it’s supported
radeonsi: add si_state_rasterizer::ngg_cull_flags_lines and rename the others
ac,radeonsi: cull small lines in the shader using the diamond exit rule
radeonsi: unify GFX9_VSGS_NUM_USER_SGPR and GFX9_TESGS_NUM_USER_SGPR
radeonsi: add dcc_msaa option to enable DCC for MSAA
radeonsi: improve memory instruction tracking
radeonsi: remove an incorrect comment at lds_byte0_accept_flag
radeonsi: make si_llvm_emit_clipvertex non-static
radeonsi: unify how ngg_cull_flags are set
radeonsi: cull against clip planes, clipvertex, clip/cull distances in shader
radeonsi: inline declare_vs_specific_input_sgprs
radeonsi: don’t use GS SGPR6 for the small prim cull info
glx: add a workaround to glXDestroyWindow for Viewperf2020/Sw
radeonsi: separate culling code from VS/TES (to be reused by GS)
radeonsi: restructure code that declares merged VS-GS and TES-GS SGPRs
radeonsi: add is_gs parameter into si_vs_needs_prolog
radeonsi: simplify si_get_vs_key_outputs for GS
radeonsi: don’t use ctx.stage outside of si_llvm_translate_nir
radeonsi: implement shader culling in GS
radeonsi: deduplicate min_esverts code in gfx10_ngg_calculate_subgroup_info
mesa: don’t add attenuation constants if ffvp doesn’t use them
mesa: add allow_glsl_compat_shaders for shader-db
ac/gpu_info: don’t fail on amdgpu_query_video_caps_info failures
ac/surface: allow gfx6-8 to enter the gfx9 DCC codepath for SI_FORCE_FAMILY
mesa: add a more straightforward callback for replacing shaders
driconf: enable glthread for all Unigine benchmarks
driconf: enable glthread for Minecraft
driconf: enable glthread for Basemark GPU
radeonsi: don’t print uninitialized inlined_uniform_values
radeonsi: add wave32 flag into prolog/epilog keys
radeonsi: add si_shader::wave_size because it will vary
radeonsi: use si_shader::wave_size
radeonsi: don’t use si_get_wave_size in si_get_ir_cache_key
radeonsi: clean up compute_wave_size use in si_compute_blit.c
radeonsi: propagate si_shader::wave_size to VGT_SHADER_STAGES
radeonsi: don’t use compute_wave_size directly
radeonsi: centralize wave size computation in si_get_shader_wave_size
radeonsi: rename si_get_shader_wave_size and make it non-inline
mesa: remove SourceChecksum from shader structures
mesa: rename gl_shader::sha1 to disk_cache_sha1
mesa: add shader source SHA1s that are propagated up to glCompileShader
mesa: add gl_linked_shader::linked_source_sha1
mesa: don’t compute the same SHA1 twice in glShaderSource
util: add SHA1 printing and comparison functions
nir: add shader_info::source_sha1, its initialization and printing
radeonsi: print source_sha1 as part of shader dumps
radeonsi: print the shader stage for shader-db dumps
glthread: don’t sync for more glGetIntegerv enums for glretrace
mesa: use simple_mtx_t for TexMutex (v2)
nir: handle more intrinsics in divergence analysis
nir: disable a NIR test due to undebuggable & locally unreproducible CI failures
nir: serialize divergent fields
nir: add nir_has_divergent_loop function
glsl: fix setting compiled_source_sha1 without a shader cache
radeonsi: add Wave32 heuristics and shader profiles
radeonsi: print more stats for shader-db
radeonsi: add shader profiles that disable binning
radeonsi: unroll loops of up to 128 iterations
mesa: include less stuff in dlist.c
mesa: inline vbo_initialize_save_dispatch and rename the functions
mesa: inline _mesa_install_arrayelt_vtxfmt
mesa: inline _mesa_install_eval_vtxfmt
mesa: inline _mesa_install_dlist_vtxfmt
mesa: move _mesa_initialize_vbo_vtxfmt calls to a common place and inline
mesa: inline _vbo_install_exec_vtxfmt
mesa: move the ES2 check from vbo_init_tmp.h to install_vtxfmt
glapi: rename exec=”dynamic” to exec “vtxfmt” to make it self-explanatory
mesa: don’t set CallList* redundantly in _mesa_initialize_save_table
mesa: rename dlist functions to match dispatch function names
glapi: rename gl_genexec.py to api_exec_init.py, api_exec.c to api_exec_init.c
glapi: move apiexec API condition determination to common code
glapi: replace dispatch.h inline functions with macros for faster compilation
mesa: add EXT suffix to VertexAttribI*EXT to match glapi name
vbo: rename vertex functions to match GL dispatch names
vbo: rename ES vertex functions to match GL dispatch names
glapi: move reusable glapi printing code to apiexec.py
glapi: autogenerate _mesa_initialize_save_table with python
glapi: autogenerate api_save.h with save_* function declarations
mesa: remove api_exec.h and move its contents into context.h
glapi: autogenerate all _mesa_* forward declarations in api_exec_decl.h
glapi: autogenerate install_vtxfmt with python
mesa: remove GLvertexformat
vbo: expose all exec entrypoints for glthread and match api_exec_decl.h names
glthread: add nop dispatch
glthread: set marshal functions in dispatch only if they exist in the API
glthread: inline _mesa_glthread_restore_dispatch and merge disable & destroy
glthread: fix restoring the dispatch in destroy when the context is not current
glthread: disable glthread if the context is lost
mesa: use ctx->GLThread.enabled now that it’s correct
mesa: rename _ae_ArrayElement -> _mesa_ArrayElement to match glapi
mesa: remove COPY_DISPATCH code that doesn’t do anything
glapi: add missing no_error settings for implemented functions
mesa,vbo: make ES wrapper functions static
mesa: remove all GL func forward declarations because they are autogenerated
mesa: use nop dispatch for ColorTable/Convolution/Histogram
radeonsi: add a debug option that disables DCC for all exported buffers
driconf: enable glthread for Minecraft-FTB, Stellaris, Battletech
ac/gpu_info: set cu_mask correctly for Arcturus
ac/gpu_info: add AMD_CU_MASK environment variable to set CU_EN
radeonsi: set COMPUTE_DESTINATION_EN_SEn to spi_cu_en
radeonsi: program COMPUTE_STATIC_THREAD_MGMT_SE4..7 on Arcturus
radeonsi: apply spi_cu_en to CU_EN
radv: set COMPUTE_DESTINATION_EN_SEn to spi_cu_en
radv: apply spi_cu_en to CU_EN
radeonsi: pack si_pm4_state
radeonsi: replace SI_PM4_MAX_DW with a max_dw field
radeonsi: decrease the size of si_pm4_state::pm4 except for cs_preamble_state
amd/registers: work around an assertion in parse_kernel_headers.py
ac/llvm: add vindex into ac_build_buffer_store_dword
ac/llvm: remove the num_channels parameter from ac_build_buffer_store_dword
radeonsi: modifiers can’t disable DCC
radeonsi: make get_thread_id_in_tg non-static
radeonsi: clean up si_export_mrt_color
radeonsi: set done=1 for PS exports at the end of si_llvm_build_ps_epilog
radeonsi: remove unnecessary code that was used to find the last export
radeonsi: export mrtz before color exports
radeonsi: simplify compacted_mrt_index in si_export_mrt_color
radeonsi: reorder slots for internal buffers, reuse a slot for GS_QUERY_BUF
radeonsi: don’t bind the ESGS ring twice, handle the difference in the shader
radeonsi: remove unused si_shader::prolog2
radeonsi: pass sample_coverage VGPR index to the PS prolog instead of guessing
radeonsi: move smoothing to the main shader part to remove 1 live VGPR
radeonsi: do opt_large_constants & lower_indirect_derefs after uniform inlining
radeonsi: use nir->scratch_size instead of ac_count_scratch_private_memory
radeonsi: change si_shader_output_values::vertex_stream to a bitmask
radeonsi: move si_nir_scan_shader into si_shader_info.c
radeonsi: add into the disk cache key whether cached shaders contain LLVM IR
radeonsi: move the GS copy shader into shader variants
ac: move ac_exp_param.h to ac_nir.h
ac/nir: move ac_are_tessfactors_def_in_all_invocs into radeonsi
radeonsi: print all streamout info
radeonsi: print the number of param exports for shader-db
ac/surface: allow displayable DCC with any resolution (e.g. 8K)
radeonsi: rename uses_vmem_* flags
radeonsi: apply fbfetch/indirect_descriptor to uses_vmem_load_other earlier
radeonsi: determine MEM_ORDERED after generating a shader variant
winsys/radeon: fix a hang due to introducing spi_cu_en
amd: add a workaround for an SQ perf counter bug
ac/surface: add more elements to meta equations because HTILE can use them
radeonsi: fix register shadowing after the pm4 state size was decreased
radeonsi: fix an assertion failure with register shadowing
Marius Hillenbrand (3):
util/cpu_detect: Add flag for IBM Z (s390x)
llvmpipe: Use lp_build_round_arch on IBM Z (s390x)
util/cpu_detect, gallium: use cpu_family CPU_S390X instead of separate flag
Markus_included (1):
Fixed you’re to your
Martin Roukala (né Peres) (1):
radv/ci: mark the dEQP fails related to a missing VKCTS 1.3 as expected
Matt Turner (7):
util/format: Add PIPE_FORMAT_Y8_UNORM as an “other” layout format
tu: Expose required VK_FORMAT_FEATURE bits for planar YUV formats
ir3: Add support for (dis)assembling flat.b
freedreno/ir3: Add infrastructure for flat.b
freedreno/ir3: Use flat.b to load flat varyings on a6xx
freedreno/ir3: Use immediate for flat.b’s src1
intel/genxml: capitalize decoder mode select properly
Matti Hamalainen (3):
aux/trace: print enum names instead of integer values in gallium traces
aux/trace: implement missing trace calls
aux/trace: cosmetic cleanup
Mauro Rossi (3):
android: define cpp_rtti=false because libLLVM is built w/o RTTI
Revert “android: define cpp_rtti=false because libLLVM is built w/o RTTI”
android: define cpp_rtti=false because libLLVM is built w/o RTTI (v2)
Melissa Wen (14):
v3dv: drop unused variable on handle_set_event_cpu_job
v3dv: wrap wait semaphores info in v3dv_submit_info_semaphores
v3dv: store wait semaphores in event_wait_cpu_job_info
drm-uapi/v3d: extend interface for multiple semaphores support
v3dv: check multiple semaphores capability
v3dv: enable multiple semaphores on cl submission
v3dv: enable multiple semaphores for tfu job
v3dv: enable multiple semaphores for csd job
v3dv: enable GPU jobs to signal multiple semaphores
v3dv: track submitted jobs by GPU queue type
v3dv: handle wait semaphores in the first job by queue
v3dv: process signal semaphores in the very last job
v3dv: signal fence when all submitted jobs complete execution
v3dv: move sems_info from event_wait job to wait_thread info
Michael Tang (2):
microsoft/spirv_to_dxil: turn sysvals into input varyings
microsoft/compiler: Use memcpy instead of a union to write dxil_features
Michel Dänzer (1):
Revert “wsi/x11: Avoid a class of deadlocks in the WSI queue thread”
Michel Zou (8):
vulkan: fix uninitialized variables
lavapipe: fix unused variable
llvmpipe: Fix Wpointer-to-int-cast
meson: check -mtls if has_exe_wrapper
meson: correctly detect linker arguments
zink: fix -Warray-bounds warning
zink: fix unused variable warning
vulkan/wsi: drop unused wsi_create_win32_image
Mike Blumenkrantz (278):
nir/print: print bindless info as applicable
aux/pb: add a tolerance for reclaim failure
virgl: remove unused pipebuffer include
aux/pb: more correctly check number of reclaims
zink: use static array for detecting VK_TIME_DOMAIN_DEVICE_EXT
zink: add a read barrier for indirect dispatch
zink: fully zero surface creation struct
zink: clear descriptor refs on buffer replacement
zink: assert compute descriptor key is valid before hashing it
zink: don’t update lazy descriptor states in hybrid mode
zink: move push descriptor updating into lazy-only codepath
zink: add an early return for zink_descriptors_update_lazy_masked()
zink: move last of lazy descriptor state updating back to lazy-only code
lavapipe: stop reading renderpass during pipeline creation
lavapipe: remove some unused struct members
lavapipe: use framebuffer attachment_count member instead of renderpass
lavapipe: remove lvp_subpass_attachment::in_render_loop
lavapipe: remove lvp_subpass_attachment::layout
lavapipe: add attachment index to lvp_render_pass_attachment
lavapipe: remove lvp_subpass::max_sample_count
lavapipe: remove lvp_subpass_attachment and use lvp_render_pass_attachment refs
lavapipe: remove last VK_ATTACHMENT_UNUSED check
lavapipe: store subpass directly to rendering_state
lavapipe: simplify some attachment derefs
lavapipe: remove lvp_subpass::has_color_att
lavapipe: pull layer count from render state during resolve
lavapipe: clamp attachment clear rect sizes
zink: don’t ralloc zink_resource structs
zink: align pipe_resource and sampler_view allocations to cachelines
zink: use ctx params for program ref/destroy functions
zink: fix descriptor interface param for program_deinit
zink: remove descriptor pools from hash table on deletion
zink: unref descriptor pools in hybrid mode when they explode
zink: always invalidate descriptor sets on pool free
zink: don’t clear descriptor pool cache on context destroy
zink: stop leaking descriptor pool references
zink: rescue surfaces/bufferviews for cache hits during deletion
zink: rename zink_descriptor_layout_key::num_descriptors -> num_bindings
zink: eliminate a hole in zink_descriptor_layout_key
zink: reduce hashed region of zink_descriptor_layout_key
zink: split out descriptor pool sizing into separate struct
zink: detect prim type more accurately for tess/gs lines
zink: don’t break early when applying fb clears
zink: only reset zink_resource::so_valid on buffer rebind
zink: don’t check rebind count outside of buffer/image rebind function
zink: add notes about binding points which aren’t counted in util funcs
zink: stop exporting PIPE_SHADER_CAP_FP16_DERIVATIVES
zink: don’t add dynamic vertex pipeline states if no attribs are used
zink: fix gl_SampleMaskIn spirv generation
zink: more accurately update samplemask for fs shader keys
nir/lower_samplers_as_deref: rewrite more image intrinsics
nir/lower_io_to_scalar: add support for bo and shared io
zink: run optimize_nir() only once during compile
zink: move bo load offset adjustment to compiler passes
zink: run lower_io_to_scalar before rewriting bo access
zink: move all 64-32bit shader load rewriting to nir pass
zink: move ssbo store offset adjustment to compiler passes
zink: move shared intrinsic offset adjustments to compiler passes
zink: move all 64-32bit shader store rewriting to nir pass
zink: add more glsl base types to get_glsl_basetype()
zink: move all shader bo/sharedmem access to compiler passes
zink: add better handling for CUBE_COMPATIBLE bit
zink: cache bo SpvId array types
zink: use align64 for allocation sizes
zink: set aspectMask for renderpass2 VkAttachmentReference2 structs
zink: always use explicit lod for texture() when legal in non-fragment stages
zink: be more permissive for injecting LOD into texture() instructions
zink: inject LOD for sampler version of OpImageQuerySize
zink: flag renderpass change when toggling fbfetch
zink: be more spec-compliant for unnormalizedCoordinates samplers
zink: don’t clamp cube array surfacess to cubes
zink: don’t clamp 2D_ARRAY surfaces to 2D
zink: error when trying to allocate a bo larger than heap size
zink: clamp max buffer sizes to smallest buffer heap size
zink: explicitly enable VK_EXT_shader_subgroup_ballot
zink: add more int/float types to cast switching in ntv
zink: force float dest types on some alu results
zink: stop double printing validation messages
zink: add SpvCapabilityStorageImageMultisample for multisampled storage images
zink: reject all storage multisampling if the feature is unsupported
gallium: add PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY
zink: set PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY
zink: add queue locking
build: add sha1_h to llvmpipe build
mesa/st: rework psiz lowering
mesa/st: lower psiz for shader precompile
anv: disable debug logging spam
zink: set fbfetch state on lazy batch data when enabling it
zink: always use lazy (non-push) updating for fbfetch descriptors
vk: update headers for 1.2.197
lavapipe: fix cmd queuing for dynamic render
lavapipe: VK_KHR_dynamic_rendering
features: add dynamic render for lavapipe
zink: do a better job conserving locations for packed xfb outputs
zink: clamp PIPE_SHADER_CAP_MAX_INPUTS for xfb
zink: remove lazy ci job
zink: add khr46 to ci
aux/primconvert: handle singular incomplete restarts
zink: rework cached fbfetch descriptor fallback
lavapipe: add some asserts for descriptor dynamic offsets
gallivm: handle TGSI SampleId sysval
Revert “gallium/u_blitter: work around broken sample shading in llvmpipe and zink”
aux/trace: fix PIPE_QUERY_PIPELINE_STATISTICS_SINGLE tracing
aux/trace: support pipe_context::get_query_result_resource
aux/trace: trace pipe_screen::is_format_supported better
aux/trace: fix vertex state tracing
aux/trace: add pipe_context::render_condition_mem
zink: set new point/line caps
zink: update radv ci passes
zink: flatten out draw templates a bit
zink: declare int/float size caps inline with type usage
zink: simplify 64bit vertex attrib lowering
zink: add another compiler pass to convert 64bit vertex attribs
zink: add 1DShadow sampler handling for drivers (radv) that don’t support it
zink: radv ci updates for 1dshadow stuff
zink: implement cs uniform inlining
zink: always inline uniforms when running on a cpu driver
zink: ci updates
zink: be more consistent about applying module hash for gfx pipeline
zink: update gfx pipeline shader module pointer even if the program is unchanged
aux/primconvert: break out primconvert internals into util function
aux/primconvert: support pipe_context::draw_vertex_state
zink: stop running discard_if in generated tcs
zink: always add VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT for 3D images
move util/indices to core util
mesa: convert unsupported primtypes during display list compilation
zink: block suballocator caching for swapchain/dmabuf images
zink: set suballocator bo size to aligned allocation size
zink: implement pipe_context::draw_vertex_state
zink: stop using VK_IMAGE_LAYOUT_PREINITIALIZED for dmabuf
zink: always set matching resource export type for dmabuf creation
dri2: set dimensions on dmabuf import planes
zink: implement multiplanar modifier handling
zink: add error for bo allocation failure
zink: always use slab allocation placement for domains
zink: set zink_resource_object::host_visible based on actual bo placement
zink: demote BAR allocations to device-local on oom
zink: use IMMUTABLE for dummy xfb buffer
zink: fix memory availability reporting
zink: fail context creation more gracefully
zink: clamp to 500 max batch states on nvidia
gallium: add pipe_screen::is_compute_copy_faster hook
gallium: rename PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER
mesa/st: make sampler_type_for_target public
mesa/st: make some pbo functions public
gallium: implement compute pbo download
aux/pb: add a new slab alloc function for reclaiming all bo objects
zink: use pb_slab_alloc_reclaimed(reclaim_all) for BAR heap sometimes
zink: enable PIPE_TEXTURE_TRANSFER_COMPUTE on non-cpu drivers
zink: explicitly init glsl
zink: add a compiler pass to scan for shader image use
zink: set batch state queue on creation
zink: be consistent about waiting on context queue on context destroy
mesa/vbo: be more comprehensive for degenerate primitive conversion in dlists
radv: fix xfb query copy param ordering
zink: add missing assert for 8bit vertex decompose
zink: add some wsi instance extensions
zink: always unset vertex shader variant key data when changing last vertex stage
zink: add extra synchronization for buffer descriptor binds
zink: use device-local heap for sparse backing allocations
zink: add a better threshold for clamping query pool resets on suspend
zink: always set number of timestamp results to 1 for internal qbo
zink: fix availability buffer sizing/copying for xfb queries
zink: skip readback of qbos with no results
Revert “zink: when performing an implicit reset, sync qbos”
zink: use even more accurate stride values for query result copies
zink: ci updates
zink: add flake
aux/trace: copy over stream_output_target_offset method from context
util/vbuf: fix buffer translation sizing
zink: remove SpvMemorySemanticsMakeVisibleMask from nir_intrinsic_memory_barrier
zink: add some nv ci results
aux/trace: add pipe_context::fence_server_signal tracing
zink: update gfx_pipeline_state.vertex_strides when necessary
zink: check EXT_image_drm_format_modifier for dmabuf support
Revert “zink: update gfx_pipeline_state.vertex_strides when necessary”
zink: add VK_KHR_external_semaphore_fd to device exts
zink: add VK_KHR_external_memory_capabilities to instance exts
zink: add driver/device uuid screen hooks
zink: implement GL semaphores
zink: implement external memory object resource handling
zink: enable EXT_external_objects pipe caps
util: add ptralloc
lavapipe: replace hard pointer calcs in dynamic render with ptralloc
lavapipe: replace hard pointer calcs in push descriptors with ptralloc
zink: update nv ci baseline
zink: add deqp ci baseline for nv
lavapipe: fix ptralloc typo
zink: add get_sparse_texture_virtual_page_size hook
zink: set up image create bits for sparse textures
zink: support sparse texture range commits
zink: allow sparse buffers to be suballocated
zink: stop allocating such massive staging regions for buffer maps
zink: fake sparse R9G9B9E5 support as needed
zink: implement sparse shader instructions in ntv
zink: always set actual_dest_type for ntv tex instruction emission
zink: handle residency return value from sparse texture instructions
zink: rename zink_so_info -> zink_shader_info
zink: always pass shader info to ntv
zink: add nir_intrinsic_image_deref_sparse_load to image scanning in compiler
zink: only allocate ntv residency info if it will be used
zink: emit sparse residency cap in ntv
zink: handle min_lod texture operands
zink: batch sparse texture binds
zink: handle sparse texture miptail commits
zink: enable ARB_sparse_texture pipe caps
zink: ARB_sparse_texture2
docs: add features/relnotes for zink sparse texture support
zink: fix non-modifer dmabuf usage
zink: link with vulkan utils
zink: hook up planar image format creation
vulkan/wsi: add VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT for swapchain image caps
lavapipe: remove unused struct member
zink: update nv fails
zink: update radv fails list
zink: never use SpvOpImageQuerySizeLod for texel buffers
zink: add anv (icl) fails
zink: handle bogus xfb draws
zink: reorder fbfetch flag-setting to avoid null deref
zink: return 256 for PIPE_CAP_MIN_MAP_BUFFER_ALIGNMENT
anv: silence wsi debug logging
zink: unify some context casts in zink_create_sampler_view
zink: emit same number of timeline signals as semaphore signals
zink: flag has_work when a GL semaphore is signalled
zink: allow resource creation without VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
zink: use VkImageViewUsageCreateInfo to remove attachment bits
zink: always create a separate VkBuffer for storage use
zink: use the storage buffer for bufferview creation when format allows
zink: flag all buffer resources with PIPE_BIND_SHADER_IMAGE
zink: simplify buffer case for zink_resource_object_init_storage()
zink: remove tmp buffer rebinds
aux/tc: add tc_buffer_write to replace pipe_buffer_write usage
zink: fix vertex buffer mask computation for null buffers
zink: replace qbo pipe_buffer_write usage with tc_buffer_write
zink: replace other pipe_buffer_write usage with pipe_buffer_write_nooverlap
zink: make pipe_buffer_write usage trigger compiler errors
zink: ci updates
zink: clamp tbo creation to maxTexelBufferElements
zink: add vertex shader pipeline bit for generated barrier construction
zink: print an error when the device is lost
zink: fix waiting on current batch id
zink: handle swizzled offset/count values for shader bitfield ops
zink: enable VK_EXT_shader_atomic_float
zink: add warning printf for drivers missing VK_EXT_shader_atomic_float
zink: cast image atomic op params/results based on image type
zink: use SpvScopeDevice over SpvScopeWorkgroup for atomic shader ops
aux/vbuf: use local var for modifying unaligned_vb_mask during update
aux/vbuf: move mask-clearing for vbuf updates after buffer scanning
aux/vbuf: add fastpath for skipping identical vbuf updates
mesa: stop truncating MESA_GLSL=dump
zink: ARB_sparse_texture_clamp
docs: update features/relnotes for zink sparse texture clamp
zink: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS
llvmpipe: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS
zink: add VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT for query binds
zink: use scanout obj when returning resource param info
zink: fix PIPE_CAP_TGSI_BALLOT export conditional
zink: reject invalid draws
zink: min/max blit region in coverage functions
aux/draw: fix llvm tcs lane vec generation
lavapipe: use util_pack_color_union() for generating clear colors
zink: ci updates
lavapipe: ci updates
zink: always set VkPipelineMultisampleStateCreateInfo::pSampleMask
zink: always invalidate streamout counter buffer if not resuming
zink: ci updates
zink: fix cached descriptor set invalidation for array bindings
zink: free push descriptor pools on deinit
zink: don’t free non-fbfetch dsl structs when switching to fbfetch
gallivm: avoid division by zero when computing cube face
zink: always update shader variants when rebinding a gfx program
zink: use a fence for pipeline cache update jobs
zink: wait on program cache fences before destroying programs
zink: fix descriptor cache pointer array allocation
zink: mark fbfetch push sets as non-cached
zink: stop leaking descriptor sets
zink: invalidate non-punted recycled descriptor sets that are not valid
zink: set shader key size to 0 for non-generated tcs
Mike Lothian (1):
meson: Fix dri.pc dridriverdir
Mykhailo Skorokhodov (3):
iris: Add missed tile flush flag
Revert “iris: add tile cache flush to iris_copy_region”
nir: Fix read depth for predecessors
Nanley Chery (82):
iris: Convert some mod_info checks to asserts
iris: Disable the MC_CCS modifier with norbc
iris: Set DISABLE_AUX_BIT for AUX_USAGE_NONE modifiers
iris: Refactor the assignment to possible_usages
intel/isl: Allow creating non-Y-tiled ASTC surfaces
iris: Allow GPU-based uploads of ASTC textures
anv: Require transfer features for transfer usages
anv: Allow transfer-only linear ASTC images
anv: Drop code from get_blorp_surf_for_anv_buffer
intel/isl: Unify fmt checks in isl_surf_supports_ccs
iris: Enable CCS_E on 32-bpc float formats on TGL+
iris: Drop redundant iris_resource_disable_aux call
intel/isl: Restore CCS_E support for YUYV and UYVY
iris: Drop the YCRCB cases in finish_aux_import
intel/isl: Drop extra devinfo checks for CCS support
intel/isl: Require aux map for some 64K alignment
intel/blorp: Modify the SKL+ CCS resolve rectangle
intel/blorp: Modify get_fast_clear_rect for XeHP
iris: Change a param of iris_resource_init_aux_buf
iris: Use the aux BO and surf less during init
iris: Move some BO setup to iris_resource_init_aux_buf
iris: Simplify iris_get_aux_clear_color_state_size
iris: Don’t allocate a clear color BO for some Z/S
iris: Drop row pitch param from iris_get_ccs_surf
iris: Don’t allocate and initialize CCS on XeHP
iris: Don’t assert a NULL aux BO during aux config
iris: Modify the comment about zeroing CCS
iris: Update the initial CCS state on XeHP
iris: Free the local cache bucket in bufmgr_destroy
iris: Replace bo->real.local with bo->real.heap
iris: Add and use flags_to_heap
iris: Use a num_buckets pointer in add_bucket
iris: Replace “local” with “heap” in bufmgr fn params
iris: Add and use BUCKET_ARRAY_SIZE
iris: Add and use bucket_info_for_heap
iris: Rework the DEVICE_LOCAL heap
iris: Disable the SMEM fallback for CCS on XeHP
iris: Use util packing fns in convert_clear_color
blorp: Drop multisampled code in blorp_can_hiz_clear_depth
intel/isl: Rework HiZ image align calculations
intel/isl: Update comment for the XeHP HiZ block
intel/isl: Use a new HiZ format on XeHP+
intel/isl: Require Y-tiling for depth on gfx4-5
intel/isl: Allow HiZ with Tile4/64 surfaces
intel/isl: Return false more in isl_surf_get_hiz_surf
anv,iris: Flush tile cache after color fast clears
anv,iris: Depth stall around color fast clears
intel: Rename the PSD bit in PIPE_CONTROL for XeHP
anv,iris: PSS Stall Sync around color fast clears
anv,iris: Flush HDC before color fast clears
anv: Don’t fill lowered_storage_image_param on SKL+
intel/isl: Don’t check pitch in isl_surf_get_mcs_surf
intel/isl: Strengthen MCS SINT format restriction
Revert “intel/isl: Don’t reconfigure aux surfaces for MCS”
intel/gen125.xml: Increase Auxiliary Surface Pitch
intel/isl: Allow creating MCS in Tile4 memory
anv: Drop assert against modifier with aux on gfx12
anv: Disable CCS_E for some 8/16bpp copies on TGL+
anv: Use ANV_FAST_CLEAR_DEFAULT_VALUE for CCS on TGL+
anv: Re-enable CCS_E on TGL+
anv: Drop redundant disabling of non-renderable CCS
anv: Disable the SMEM fallback for local memory
anv: Require the local heap for CCS on XeHP
anv: Don’t allocate VMA for CCS on XeHP
isl: Enable compression with multisampled Tile64
iris: Explicitly rely on gallium fallbacks for YUV
intel/isl: Support YUV pipe-to-isl format mapping
iris: Drop stale media compression import code
iris: Use iris_format_for_usage in map_aux_addresses
intel: Rename a RenderCompressionFormat field
intel/isl: Support the XeHP media compression format
iris: Support the XeHP media compression format
iris: Refactor a ternary in iris_resource_get_param
iris: Pick the right BO in iris_resource_get_param
iris: Return non-zero stride for clear color plane
intel/isl: Simplify Z-buffer tiling config during emit
intel/isl: Fix depth buffer TiledSurface programming
intel/isl: Add more PRM text for HiZ/STC requirement
iris: Don’t fast clear with the view format
Revert “anv: Require the local heap for CCS on XeHP”
anv: Refactor anv_image_init_from_create_info
anv: Disable aux if the explicit modifier lacks it
Neha Bhende (11):
st: Fix 64-bit vertex attrib index for TGSI path
st: Fix comments in commit be6d584de43966e
svga: Add GL43 commands support
svga: Add utility to check for GL43 support
tgsi: Add hw_atomic_declared in tgsi_info
svga: Add support for compute shader, shader buffers and image views
svga: shader translation for compute, image views and shader buffers
svga: add GL43 resource validation at draw time
svga: enable GL43 on SVGA GL43 capable device
svga: enable PIPE_CAP_IMAGE_STORE_FORMATTED on gl43 capable device
svga: store shared_mem_size in svga_compute_shader instead of svga_context
Neil Roberts (1):
v3d: Update prim_counts when prims generated query in flight without TF
Nicholas Bishop (1):
mesa/get: allow NV_pixel_buffer_object constants in GLES2
Niklas Haas (1):
wsi/x11: support depth 30 visuals
Omar Akkila (1):
llvmpipe: page-align memory allocations
Paulo Zanoni (12):
iris: also dump bo’s imported and exported flags
iris: destroy our mutexes a little later
iris: fix off-by-one error when clearing stale syncobjs
iris: call brw_process_intel_debug_variable() earlier
iris: extract iris_hw_context_set_unrecoverable()
intel/fs: Assert the GPU supports 64bit ops if present at lower_scoreboard time.
iris: improve error checking in functions that call vma_alloc()
iris: sprinkle some assertions for bufmgr->lock
iris: save some iris_syncobj_reference() calls at update_bo_syncobjs()
iris: implement inter-context busy-tracking
iris: handle IRIS_MEMZONE_BINDER with a real vma_heap like the others
iris: fix register spilling on compute shaders on XeHP
Pavel Asyutchenko (6):
llvmpipe: fix wrong assumption on FB fetch shader opacity
llvmpipe: fix gl_FragColor and gl_LastFragData[0] combination
llvmpipe: protect from doing FB fetch of missing buffers
llvmpipe: fix FB fetch with non 32-bit render target formats
llvmpipe: remove dead args from load_unswizzled_block
llvmpipe: enable PIPE_CAP_FBFETCH_COHERENT
Pavel Ondračka (9):
r300: Document the RADEON_DEBUG options
r300: Replace RADEON_NO_TCL with RADEON_DEBUG=notcl
r300: Remove broken optimization in rc_transform_KILL
r300: use point sprite coordinates only when drawing points (v5)
r300: fix translate_LRP
r300: properly initialize new_vs in r300_draw_init_vertex_shader
r300: Disable integers and indirect temporary addressing with swctl
r300: Set consistent PIPE_SHADER_CAP_PREFERRED_IR
r300: fix transformation of abs modifiers with negate
Philipp Zabel (1):
etnaviv: fix emit_if in case the else block ends in a jump
Pierre Moreau (1):
nv50/nir: Switch to the common NIR options
Pierre-Eric Pelloux-Prayer (57):
radeonsi: use viewport offset in quant_mode determination
gallium/dri: replace bool with flag parameter
gallium/dri: add createImageFromFds2
gallium/dri: let the driver know if the imported image is DRI_PRIME buffer
radeon_winsys.h: add a parameter to buffer_from_handle
winsys/amdgpu: add uncached flag to the imported DRI_PRIME buffer
radeonsi/gfx10.3: enable SDMA for DRI_PRIME copies
radeonsi: use PIPE_BIND_DRI_PRIME instead of is_dri_blit_image
Revert “gallium: add a is_dri_blit_image bool to pipe_blit_info”
glsl/drirc: add an option for gl_ClipVertex / gl_CullDistance checks
drirc: enable do_dce_before_clip_cull_analysis for ANSA
mesa: don’t reset SamplersValidated if nothing changed
glsl/nir: mark samplers inside a block as bindless
radeonsi: treat nir_intrinsic_load_constant as a VMEM operation
ac/surface: use a less strict condition in is_dcc_supported_by_L2
radeonsi/sdma: fix bogus assert
radeonsi: fix ps_uses_fbfetch value
ac/surface: don’t validate DCC settings if DCC isn’t possible
vbo/dlist: free copied.buffer if no vertices were copied
glx/drirc: add a force_direct_glx_context option
mesa: enable force_direct_glx_context for DiscoveryStudio2020
llvmpipe: add missing NIR alu-op handling
mesa: print a warning when an extension can’t be disabled
mesa: don’t use dummy_true for some MESA extensions
mesa/init: replace call_once with manual implementation
drirc: add mesa_extension_override option
drirc: add options for BETA CAE Ansa application.
mesa: always call _mesa_update_pixel
mesa: remove NEW_COPY_TEX_STATE
radeonsi/sqtt: fix shader stage values
radeonsi/sqtt: fix FINISH_DONE / BUSY usage
radeonsi/sqtt: reserve a vmid when sqtt is enabled
radeonsi: unreference framebuffer state after use
radeonsi/sqtt: increase the default buffer size to 32MB
radeonsi: fix fast clear / depth decompression corruption
radeonsi: silence a warning
radeonsi: use max_zplanes after the last write
glx: fix querying GLX_FBCONFIG_ID for Window
radeonsi: don’t use perp. end caps when line smoothing is on
glthread: only log glthread destroy reason when it’s not NULL
radeonsi/gfx8: use the proper dcc clear size
vbo/dlist: fix loopback crash
vbo/dlist: add vertices to incomplete primitives
amd: add SDMA_NOP_PAD
radv: partial sdma support
radv: allocate the prime buffer as uncached
vulkan/wsi: add use_prime_blit param to wsi_swapchain_init
vulkan/wsi: add a private transfer pool to exec the DRI_PRIME blit
radv: implement wsi’s private transfer queue using SDMA
radeonsi/gfx10: fix si_texture_get_offset for mipmapped tex
radeonsi,radv: fix usages of surf_pitch
radeonsi/tests: update expected results
radeonsi/tests: add expected results for vega20
driconf: enable vs_position_always_invariant for Dirt Rally
mesa: use less temporaries in build_lighting
radeonsi: limit loop unrolling for LLVM < 13
radeonsi: change rounding mode to round to even
Qiang Yu (76):
driconf: add executable_regexp application attribute
drirc: add Mari application workaround
xmlconfig_test: add unit test for executable_regexp
radeonsi: add radeonsi_force_use_fma32 driconf option
driconf: support META application
glx/dri3: fix glXQueryContext does not return GLX_RENDER_TYPE value
loader/dri3: fix piglit egl-copy-buffer test
ci: remove egl-copy-buffers from fail list
glx: no need to create extra pixmap for pbuffer
glx: check drawable type before create drawble
glx: add drawable type argument when create drawable
loader/dri3: add drawable type set by GLX and EGL
loader/dri3: remove unused present capability query
loader/dri3: pack window present event setup into a function
loader/dri3: setup present event with drawable type info
loader/dri3: replace is_pixmap with drawable type
loader/dri3: rename dri3_fake_front_buffer
loader/dri3: stop doing anything in swap buffer for some drawable
loader/dri3: support glx pbuffer swap
glx: fix regression for drawable type detection
glapi: should not add alias function to static_data.py
gallium: add caps for sparse texture support
mesa: add ARB_sparse_texture extension
mesa: add ARB_sparse_texture constants
gallium: add screen get_sparse_texture_virtual_page_size callback
gallium: add get_sparse_texture_virtual_page_size for noop/rbug/trace
mesa: add ARB_sparse_texture query in glGetInternalformativ
mesa: add ARB_sparse_texture texture param set/get
mesa/st: add st_GetSparseTextureVirtualPageSize interface
mesa: glTexStorage* support sparse texture allocation
mesa/st: add st_TexturePageCommitment interface
mesa: implement glTexPageCommitmentARB/glTexturePageCommitmentEXT
mesa/st: update NumSparseLevels from pipe_resource
winsys/radeon: change surface_init flags to 64bit
ac/surface: fix prt_first_mip_tail calculation for gfx9+
ac/surface: add prt_tile_depth
radeonsi: support alloc a sparse texture
radeonsi: use staging buffer for sparse texture when transfer map
radeonsi: implement get_sparse_texture_virtual_page_size
radeonsi: support texture resource commit
radeonsi: enable ARB_sparse_texture
nir: fix nir_tex_instr hash not count is_sparse field
gallium/dd_debug: add get_sparse_texture_virtual_page_size
gallium: add PIPE_CAP_QUERY_SPARSE_TEXTURE_RESIDENCY
mesa: add ARB_sparse_texture2 extension
mesa/main: relax alignment check when ARB_sparse_texture2 available
glsl: add ARB_sparse_texture2 extension
glsl: ir_texture support sprase texture
glsl: add _texture related sparse texture builtin functions
glsl: add _textureCubeArrayShadow related sparse texture builtin func
glsl: add _texelFetch related sparse texture builtin function
glsl: add sparse texture image load builtin functions
glsl: add vec5 glsl types
glsl/nir: convert sparse ir_texture to nir
glsl/nir: convert sparse image load to nir
glsl/nir: adjust sparse texture nir_variable
glsl: add sparseTexelsResidentARB builtin function
glsl/nir: convert is_sparse_texels_resident to nir
radeonsi: lower nir_intrinsic_is_sparse_texels_resident
mesa/main: allow multi sample sparse texture
mesa/main: export _is_multisample_target for external usage
gallium: add multi_sample parameter to get_sparse_texture_virtual_page_size
radeonsi: enable multi sample sparse texture support
radeonsi: enable ARB_sparse_texture2
gallium: add PIPE_CAP_CLAMP_SPARSE_TEXTURE_LOD
mesa: add ARB_sparse_texture_clamp extension
glsl: add ARB_sparse_texture_clamp extension
glsl: ir_texture add clamp field
glsl: _texture support clamp parameter
glsl: _textureCubeArrayShadow support clamp
glsl: add ARB_sparse_texture_clamp builtin functions
glsl/nir: convert ir_texture->clamp to nir
radeonsi: enable ARB_sparse_texture_clamp
radeonsi: workaround Specviewperf13 Catia hang on GFX9
radeonsi: fix depth stencil multi sample texture blit
glx: fix pbuffer refcount init
Rafael Antognolli (2):
intel/compiler: Assert that unsupported tg4 offsets were lowered for XeHP
intel: Emit 3DSTATE_BINDING_TABLE_POOL_ALLOC for XeHP
Renato Pereyra (2):
anv: Enable implicit CCS for external images
anv: add helper methods related to enabling CCS for external images
Rhys Perry (83):
radv: Use nir_var_mem_image in meta shaders
aco: disable mul(cndmask(0, 1, b), a) optimization sometimes
aco: simplify emit_stream_output()
radv: don’t use a separate cache entry for GS copy shaders
aco: use std::vector and IDSet in RA validator
docs: update radv extensions in features.txt
nir/algebraic: optimize Cyberpunk 2077’s open-coded bitfieldReverse()
nir/lower_system_values: replace local_invocation_id components with zero
radv: lower load_local_invocation_index with 1D workgroups
aco: optimize load_local_invocation_index with single-wave workgroups
aco: consider pseudo-instructions reading exec in needs_exec_mask()
aco/spill: use spills_entry instead of spills_exit to kill linear VGPRs
radv: make RADV_FORCE_FAMILY case-insensitive
radv: fix max_render_backends for Sienna Cichlid null winsys
spirv: run nir_copy_prop before nir_rematerialize_derefs_in_use_blocks_impl
radv: stop running copy-propagation before nir_opt_deref
nir/lower_tex: don’t calculate texture_mask for texture_index>=32
nir/lower_subgroups: fix left shift of -1
aco: properly update use counts if a extract is still used
nir/dce: fix DCE of loops with a halt or return instruction in the pre-header
nir/cf: fix insertion of loops/ifs after jumps
nir/tests: add DCE test for loops following a jump
aco: don’t create DPP instructions with SGPR operands
nir/opt_offsets: fix try_extract_const_addition recursion
nir/opt_offsets: remove need to loop try_extract_const_addition
nir/algebraic: optimize a*#b & -4
radv: add radv_meta_init_shader
radv: include RT shaders in RADV_DEBUG=shaders,shaderstats
radv: clone shader in radv_shader_compile_to_nir
radv: initialize workgroup_size in radv_meta_init_shader
aco: don’t create unnecessary addition in indirect get_sampler_desc()
aco: improve clrx disassembly
aco: use more predictable tiebreaker when forming MADs
aco: create v_fmamk_f32/v_fmaak_f32 from nir_op_ffma
aco: swap operands if necessary to create v_madak/v_fmaak
aco: swap multiplication operands if needed to create v_fmac_f32/etc
radv,aco: implement nir_op_ffma
radv,aco: don’t lower some ffma instructions
radv: have the null winsys set more fields
aco: fix check_vop3_operands() for f16vec2 ffma fneg combine
nir/opt_load_store_vectorize: improve ssbo/global alias analysis
nir/algebraic: optimize more 64-bit imul with constant source
nir/opt_access: infer CAN_REORDER for global access
aco: disallow SMEM offsets that are not multiples of 4
aco: skip &-4 before SMEM
aco: remove SMEM constant/addition combining out of the loop
radv: increase maxTaskOutputCount to 65535
nir/lower_shader_calls: fix store_scratch write_mask
ac/nir: fix store_buffer_amd write_masks
nir/uniform_atomics: fix is_atomic_already_optimized without workgroups
aco: remove pack_half_2x16(a, 0) optimization
radv: add RADV_DEBUG=splitfma
radv: set radv_split_fma=true for Proton SotTR
nir/unsigned_upper_bound: don’t follow 64-bit f2u32()
aco: use p_extract for SGPR nir_op_unpack_half_2x16_split_y
nir: add nir_op_fmulz and nir_op_ffmaz
radv,aco,ac/llvm: implement fmulz and ffmaz
aco: consider legacy multiplications in optimizer
aco: create v_mac_legacy_f32/v_fmac_legacy_f32
nir/algebraic: add ignore_exact() wrapper
nir/algebraic: optimize open-coded fmulz/ffmaz
nir: add some missing nir_alu_type_get_base_type
nir/algebraic: optimize expressions using fmulz/ffmaz
nir/builder: set write mask if not provided
nir/builder: assume scalar alignment if not provided
radv: avoid providing a write_mask to intrinsic builders
radv: avoid providing an align_mul to intrinsic builders
radv: avoid providing an align_offset to intrinsic builders
ac/nir: avoid providing a write_mask to intrinsic builders
ac/nir: avoid providing an align_mul to intrinsic builders
ac/nir: use shorter builder names
radv: fix raytracing with wave32
radv: use wave32 for raytracing
radv: use 8x4 workgroups for wave32 RT
radv: fix optimized MSAA copies with suballocated images
aco: fix neg(abs(mul(a, b))) if the mul is not VOP3
aco: optimize abs(mul(a, b))
aco: preserve pass_flags during format conversions
aco: fix v_mac_legacy_f32
aco: don’t encode src2 for v_writelane_b32_e64
radv: fix R_02881C_PA_CL_VS_OUT_CNTL with mixed cull/clip distances
anv: Enable nir_opt_access
radv: include disable_aniso_single_level and adjust_frag_coord_z in key
Rob Clark (63):
freedreno: Fix for large epilogues
freedreno/ir3+isa: Cleanup bindless cat5 samp/tex encoding
freedreno/isa: Fixes for validation
freedreno/ir3/tests: Fix indentation
freedreno/ir3/tests: Add additional disasm test vectors
freedreno/ir3: Don’t lower s2en if samp/tex is too large
isaspec: Fix derived field width
isaspec: Do not emit duplicate field encodes
isaspec: Add bitfield size assertions
freedreno/isa: Add immed reg accessors
freedreno/ir3/tests: Don’t skip encode test if decode fails
freedreno/ir3/tests: Add some 8/16b ldg/stg tests
freedreno/isa: Fix ldg/stg “halfness”
freedreno/computerator: Fix mergedregs
freedreno/ir3: 64b intrinsic lowering
freedreno/ir3: Lower 64b phis
freedreno/ir3: Add load/store_global lowering
isaspec: Fix gpu_id for default_options
freedreno: Skip built-in shaders for clover
freedreno/ir3: Handle MESA_SHADER_KERNEL
freedreno: implement set_compute_state()
freedreno/ir3: vec8+vec16 support
freedreno/ir3: implement load_work_dim intrinsic
freedreno/ir3: Add support for load_kernel_input
freedreno/ir3: Move lower_idiv_options
freedreno: Fix set_global_binding
freedreno/ir3: Deal with zero-source instructions
freedreno/ir3: 16b bools
freedreno/ir3: 8bit fixes
freedreno/ir3: Fix load/store_global_ir3 type
freedreno/ir3: Fix reg size validation
freedreno/ir3: Add wide load/store lowering
freedreno/ir3: Add ihadd/uhadd
freedreno/ir3: Get req_local_mem from pipe_compute_state
freedreno/ir3: Fix validation of subgroup macros
freedreno/drm: Add some asserts
freedreno/drm: Move suballoc_bo to device
freedreno/ir3/print: Show end’s outidxs
freedreno/ir3: xfb fix for duplicate outputs
freedreno: Add PIPE_SHADER_IR_NIR_SERIALIZED support
freedreno: caps for clover
isaspec: Add prototypes for expr evaluators
freedreno/crashdec: Split out mempool decoding
freedreno/crashdec: HFI queue decoding
freedreno/crashdec: Fallback to chip_id for GPU id
freedreno/crashdec: Basing GMU log decoding
freedreno/ir3: Handle instr->address when cloning
freedreno/computerator: Fix @buf header
freedreno/computerator: Mark shader bo for dumping
freedreno/ir3: Dump const state with shader disasm
clover: Move min image support check
freedreno: Report system memory as video memory
freedreno: Small dev_id_compare() cleanup
freedreno: Rearrange dev_id_compare() logic
freedreno: Handle wildcard fuse-id in device matching
freedreno: Update chip-ids
freedreno/decode: Handle chip-id
mesa/st: Lowered ucp should still mark rast state dirty
freedreno: Pass shader cache key instead of shader key
freedreno: Add FD_DIRTY_RASTERIZER_CLIP_PLANE_ENABLE
freedreno/a6xx: Fix clip_mask
freedreno/a5xx: Fix clip_mask
freedreno: Add missing generated header dependency
Rohan Garg (7):
intel/fs: OpImageQueryLod does not support arrayed images as an operand
ci: Do not remove libgbm-dev
ci: Move common variables out into a separate file
ci: Do not remove wget
ci/piglit: Start vtest server if driver is set to virpipe
anv: Enable VK_VALVE_mutable_descriptor_type
docs: Update features and new_features for anv
Roland Scheidegger (1):
llvmpipe: adjust rounding for viewport scissoring
Roman Gilg (1):
vulkan/wsi/x11: document implementation
Roman Stratiienko (6):
android.mk: Add missing variables to the make target
v3dv: Fix dEQP-VK.info#instance_extensions test
v3dv: Fix V3DV_HAS_SURFACE preprocessor condition
v3dv: Hotfix: Rename remaining V3DV_HAS_SURFACE->V3DV_USE_WSI_PLATFORM
v3d: Don’t force SCANOUT for PIPE_BIND_SHARED requests
v3dv: add Android support
Ruijing Dong (6):
frontends/omx: preserve omx to keep current mode for avc decoding
frontends/va: preparing to disable h264 extension flag in vaapi dec path
radeon/vcn: enable dynamic dpb Tier2 support for h264 dec vaapi path
radeon/vcn: enable dynamic dpb Tier2 for hevc dec vaapi path
frontend/va: Keep surface buf addr before reallocation
radeon/vcn: Updating render_pic_list for correction
Ryan Houdek (1):
util/xmlconfig: Allow DT_UNKNOWN files
Ryan Neph (1):
venus: ignore framebuffer for VkCommandBuffer executed outside of render pass
Sagar Ghuge (16):
intel/compiler: Set correct cache policy for A64 byte scattered read
intel/genxml: Add new Primitive ID Not Required bit field to 3DSTATE_DS
intel/compiler: Track primitive id in domain/evaluation shader
anv: Drop hint if primitive id is required or not
iris: Drop hint if primitive id is required or not
anv: Pass correct aux usage while filling out surface state
anv: Enable CCS for storage image formats
intel/compiler: Set correct return format for brw_SAMPLE
intel/compiler: Don’t hardcode padding source type to 32bit
intel/compiler: Fix instruction size written calculation
intel/compiler: Add helper to support half float payload with padding
intel/fs: Define and set correct sampler simd mode
intel/compiler: Prepare disasm for 16-bit sampler params
anv, iris: Implement Wa_14014890652 for DG2
intel/genxml: Add L1 Cache Control bit field
intel/genxml: Add Un-Typed Data-Port Cache Flush field to pipe control
Sajeesh Sidharthan (1):
frontends/va/av1: handle multiple slice params
Samuel Pitoiset (158):
aco: do not return an empty string when disassembly is not supported
radv: fix removing PSIZ when it’s not emitted by the last VGT stage
radv: fix OpImageQuerySamples with non-zero descriptor set
radv: do not remove PSIZ for streamout shaders
aco: fix invalid IR generated for b2f64 when the dest is a VGPR
aco: fix emitting stream outputs when the first component isn’t zero
radv: add an assertion to prevent GPU hangs when VRS isn’t supported
ac/rgp: remove useless code related to GFX6-7
aco: fix loading 64-bit inputs with fragment shaders
radv,aco: decouple shader_info/options from radv_shader_args
radv: re-emit prolog inputs when the nontrivial divisors state changed
radv: remove old RADV_TRACE_FILE warning
radv: fix build errors with Android
radv: report error messages when the driver can’t be initialized
aco: only load streamout buffers if streamout is enabled
radv: lower the viewport index to zero when the VGT stage doesn’t export it
radv: fix invalid wait_dst_stage_mask type
ac/nir: remove bogus assertion about the position for culling
zink: add CI lists and deqp-suite configuration for RADV
radv: move freeing the trigger SQTT file at a better place
radv: remove useless checks about GFX7 for SQTT
radv: enable SQTT instruction timing by default
radv: stop reporting SQTT/RGP support as experimental
docs: document RADV_THREAD_TRACE_* envvars
radv: rename radv_shader_variant to radv_shader
radv: only enable VK_EXT_display_control for vrcompositor (SteamVR)
radv: optimize subpass barrier flushes for imageless framebuffers
Revert “radv: only enable VK_EXT_display_control for vrcompositor (SteamVR)”
radv: remove unused parameter in radv_emit_subpass_barrier()
radv/sqtt: reserve a VMID for better profiling
radv/sqtt: stop calling radv_cs_add_buffer() for the thread trace BO
radv: do not expose buffer features for depth/stencil formats
ac/rgp: fix alignment of code object records to follow the RGP spec
radv: only emit PGM_LO for the vertex prolog
ac/rgp: add support for queue event timings
ac/rgp: add support for clock calibration
radv/winsys: use same IBs padding as the kernel
zink: update the CI lists for RADV
radv/sqtt: fix GPU hangs when capturing from the compute queue
ac: add initial SPM support
ac/rgp: add support for dumping SPM data
radv: fix a sync issue on GFX9+ by clearing the upload BO fence
ac/spm: fix determing the SPM wire
ac/spm: fix determining the counter slot
zink: update the CI lists for RADV
zink: skip one GLES31 subset to avoid GPU hangs on Navi10
nir: fix constant expression of ibitfield_extract
radv: simplify re-using cache entries in radv_pipeline_cache_insert_shaders()
radv: disable HTILE for D32S8 format and mipmaps on GFX10
util/queue: fix a data race detected by TSAN when finishing the queue
radv: allow TC-compat CMASK with storage images on GFX10+
radv: ignore the descriptor set layout when creating descriptor template
radv: convert remaining enums/structs to 1.2 versions
ac: change family names to uppercase in ac_get_family_name()
radv/winsys: report the real family name instead of OVERRIDDEN
radv: fix emitting VBO when vertex input dynamic state is used
radv: make radv_break_on_count() a non-static function
radv: make radv_copy_buffer() a non-static function
radv: implement optimized MSAA copies using FMASK
ac/nir: fix left shift of 1 by 31 places detected by UBSAN
radv: fix OOB access for inline push constants detected by UBSAN
aco: fix right shift of exponent 32 detected by UBSAN
radv: implement vkCmdWriteTimestamp2KHR()
radv: implement vkCmd{Reset,Set}Event2KHR()
radv: implement vkCmdWriteBufferMarker2AMD()
radv: implement vkCmdWaitEvents2KHR()/vkCmdPipelineBarrier2KHR()
radv: implement vkQueueSubmit2KHR()
radv: add support for VkMemoryBarrier2KHR
radv: add support for creating device-only events
radv: add support for new pipeline stages and access masks
radv: add support for VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR
radv: switch the remaining stages/access to VK_PIPELINE_STAGE_2/VK_ACCESS_2
radv: advertise VK_KHR_synchronization2
radv: fix accessing NULL pointers when destroy the VRS image
radv: add a workaround to fix a segfault with Metro Exodus (Linux native)
radv: configure the number of SGPRs/VGPRs directly from the arguments
radv: copy the user SGPRs locations outside of radv_declare_shader_args()
radv: constify radv_shader_info in radv_declare_shader_args()
radv/llvm: stop trying to eliminate VS outputs
radv/llvm: constify radv_shader_info
radv: fix resetting the entire vertex input dynamic state
radv: remove never reached free() when compiling shaders
radv: add a helper function to upload a shader binary
radv: upload shader binaries after they are all compiled
radv: pass a pointer to a pipeline for the create/insert cache functions
radv: upload shader binaries of a pipeline contiguously in memory
radv: move a comment at the right place in CmdBindVertexBuffers2EXT()
radv: constify radv_vertex_binding in CmdSetVertexInputEXT()
radv: constify radv_vs_input_state() in more places
radv: fix dynamic rendering with VRS
radv: avoid prefixing few VkXXX structures by struct
radv/sqtt: always dump pipelines and shaders ISA
radv: add few helpers for configuring performance counters
radv: add initial SPM support on GFX10+
radv: fix resume/suspend render pass with depth/stencil attachment
radv: mark GFX10.3 (aka RDNA2) as conformant products with CTS 1.2.7.1
Revert “radv: Add bufferDeviceAddressMultiDevice support.”
radv: do not perform depth/stencil resolves for suspended render pass
nir/lower_tex: add lower_lod_zero_width
radv: enable lower_lod_zero_width
radv: fix dynamic rendering inheritance if the subpass index isn’t 0
radv: ignore dynamic inheritance if the render pass isn’t NULL
radv/winsys: remove useless has_sparse_vm_mappings checks
radv/winsys: clear the PRT VA range when destroying a virtual BO
radv/winsys: stop using reference counting for virtual BOs
radv/winsys: update sparse mappings with OP_REPLACE instead of OP_MAP/OP_UNMAP
ac/nir: add an option to disable anisotropic filtering for single level images
radv,aco: do not disable anisotropy filtering for non-mipmap images
radv: fix dynamic rendering global scissor
radv: remove unnecessary NULL checks in vkMapMemory()/vkUnmapMemory()
radv/winsys: stop zeroing few structs in buffer_from_fd()
radv/winsys: remove radv_amdgpu_winsys_bo::is_shared
radv: fix restoring subpass during hw/fs color resolves
radv: re-enable fast clears for images that support comp-to-single
radv: re-apply “Do not access set layout during vkCmdBindDescriptorSets.”
radv: fix clears with value of “1” and different DCC signedness
radv: stop checking buffer size in vkCreateBuffer()
radv: print number of levels with RADV_DEBUG=img
radv: fix copying mutable descriptors to sampler descriptors
radv: add drirc radv_disable_htile_layers and enable it for F1 2021
aco: fix a dynamic-stack-buffer-overflow when printing instructions
aco: do not print prologs disassembly if no disassembler
radv,aco: keep track of the prolog disassembly if necessary
radv: save the vertex prolog to the trace BO for debugging
radv: dump the VS prolog disassembly to the hang report
radv: add UMR markers for the vertex prolog
radv: do not use the common entrypoint for the Metro Exodus layer
radv: remove remaining dead code related to the old sync code
radv/winsys: remove unused syncobj functions
radv: stop checking if dynamic states changed
radv: reset VRS if the current subpass doesn’t have a VRS attachment
radv: fix computing the fb size in presence of dynamic VRS attachment
radv: only clear VRS_HTILE_ENCODING on GFX10.3+
radv: allow to disable anisotropic filtering for single level image with drirc
radv: enable radv_disable_aniso_single_level for Battlefield 1 & V
radv/winsys: fix zero submit if no timeline semaphore support
vulkan/runtime: fix accessing NULL pointers detected by UBSAN
radv: fix missing destroy for the overallocation mutex
radv: fix computing the number of color samples if no attachments
radv: optimize CPU overhead of si_cp_dma_prefetch() slightly
radv: disable attachmentFragmentShadingRate for RADV_DEBUG=nohiz
radv: fix copying VRS rates to HTILE if the depth/stencil is cleared
radv: fix copying VRS rates if the ds attachment uses mips
radv/winsys: set GTT_WC flag for CS IBs on GFX6
radv: do not restore NULL compute pipelines after meta operations
radv: stop checking if pipelines are NULL during draws/dispatches
vulkan: Update the XML and headers to 1.3.204
radv: implement 1.3 features/properties
radv: report textureCompressionASTC_HDR as not supported
radv: add a no-op version of vkGetPhysicalDeviceToolPropertiesEXT()
radv: switch a bunch of struct/enum to 1.3 versions
radv: bump conformance version to 1.3.0.0 for RDNA2
radv: advertise Vulkan 1.3
radv/ci: mark dEQP-VK.api.version_check.version as expected failure on Stoney
radv/winsys: fix missing buffer_make_resident() for the null winsys
Revert “radv: re-apply “Do not access set layout during vkCmdBindDescriptorSets.””
radv/winsys: fix initializing debug/perftest options if multiple instances
radv: enable radv_disable_aniso_single_level for The Evil Within 1&2
Scott Anderson (1):
egl/wayland: Remove unused wayland enum
Sergii Melikhov (1):
vulkan: Unlock before return.
Shmerl (1):
docs/features: Add VK_KHR_acceleration_structure, VK_KHR_pipeline_library, VK_KHR_ray_query, VK_KHR_ray_tracing_pipeline.
Silvestrs Timofejevs (2):
egl: introduce a log level getter function
egl: add config debug printout
Simon McVittie (1):
meson: Try to link all-targets module if Gallium OpenCL is enabled
Simon Ser (4):
renderonly: write down usage rules
vulkan/wsi/wayland: use enum wl_shm_format
vulkan/wsi/wayland: use DRM_FORMAT_INVALID
vulkan/wsi/wayland: remove format switch from wl_shm_format_for_vk_format
Stefan Brüns (1):
llvmpipe: Add get_{driver,device}_uuid implementations
Tapani Pälli (18):
iris: clear bos_written when resetting a batch
vulkan/wsi: provide api for drivers to setup syncobj fd
radv: setup syncobj fd via wsi_device_setup_syncobj_fd
anv: setup syncobj fd via wsi_device_setup_syncobj_fd
vulkan/wsi: implement missing wsi_register_device_event
anv: allow VK_IMAGE_LAYOUT_UNDEFINED as final layout
glsl: fix invariant qualifer usage and matching rule for GLSL 4.20
iris: unref syncobjs and free r/w dependencies array for slab entries
mesa: free idalloc storage for display lists
mesa: free vbo_save_vertex_list store prims
mesa: refactor GetProgramiv to use program resource list
mesa: move GetProgramInterfaceiv as a shader_query function
mesa: change GetProgramiv name length queries to use program resources
intel/genxml: add PIPE_CONTROL field for L3 read only cache invalidation
anv: invalidate L3 read only cache when VF cache is invalidated
iris: invalidate L3 read only cache when VF cache is invalidated
iris: fix a leak on surface states
mesa/st: always use DXT5 when transcoding ASTC format
Tatsuyuki Ishi (3):
aco: support DPP8
aco: lower masked swizzle to DPP8
radv/sqtt: Add and enable basic EXT_debug_utils support.
Thierry Reding (2):
tegra: Use private reference count for sampler views
tegra: Use private reference count for resources
Thomas H.P. Andersen (49):
nine: remove dead code
svga: fix bitwise/logical and mixup
meson: drop compatability with < 0.48
meson: drop a comment relating to old meson version
docs: update the required meson version
meson: drop a temp formatting variable
ci: clean up debian-clang no-error list
gallivm: avoid a self-assign warning
ci: debian-clang: drop -Wno-error for self-assign
lavapipe: fix implicit-fallthrough warning
i915g: fix implicit-fallthrough warning
r300: remove a set but not used variable
r600: remove a set but not used variable
glx: remove a set but not used variable
gallium/u_threaded: drop unused function
gallium/tgsi_exec: drop unused function
draw: drop unused function
microsoft/compiler: dxil_nir_opt_alu_deref_srcs: return progress
lavapipe: fix string-plus-int warning
i915g: avoid left shifting a negative number
panvk: use FALLTHROUGH to stop a warning
panvk: cast negative value to unint8_t
ci: debian-clang: build more drivers
tu/clear_blit: use || when working with bools
r600/sb: silence a sometimes-uninitialized warning
ci: debian-clang: -Wno-error for sometimes-uninitialized
zink: malloc/sizeof mismatch
xa: fix compile warning for -Wabsolute-value
broadcom/compiler: fix compile warning -Wabsolute-value
ci: debian-clang: drop -Wno-error=absolute-value
replace 0 with NULL for NULL pointers
freedreno: silence sometimes-uninitialized warning
freedreno: drop dead assignment
meson: add check kwarg to run_command
ci: clean up debian-android no-error list
anv: drop unused label
ci: debian-android: drop -Wno-error=unused-label
vulkan/vk_extensions_gen: fix -Wextern-initializer warning
ci: debian-android: drop -Wno-error=extern-initializer
microsoft/compiler: fix -Wbitwise-instead-of-logical warning
anv: avoid warning about unused function
vc4: drop unused function
v3d: avoid warning about unused function
v3d: avoid warning about unused function
broadcom: drop unused functions
panfrost: mark two variables as unused
anv: drop a set but unused variable
anv: drop a set but unused variable
svga: silence -Wsometimes-uninitialized
Thomas Wagner (1):
util: use anonymous file for memory fd creation
Thong Thai (8):
frontends/va: disable packed header support for h264 encoder
frontends/va/enc: hardcode h265 encoder ref pic list size
radeon/vcn: increase encoder dpb size
frontends/va/enc: allow for frames to be marked as (not) referenced
radeon: hardcode uvd/vce encoder not_referenced value to false
radeon/vcn: implement encoder dpb management
frontends/va/enc: default motion estimation parameters for performance
radeonsi: add check for graphics to si_try_normal_clear
Timothy Arceri (16):
mesa: fix buffer overrun in SavedObj texture obj array
mesa: remove old tnl device driver header files
mesa: remove _mesa_ir_link_shader()
mesa: make _mesa_associate_uniform_storage() static
mesa: remove GLSL IR to Mesa IR code
mesa/st: move _mesa_generate_parameters_list_for_uniforms() code to st
mesa: move _mesa_ensure_and_associate_uniform_storage() to uniform_query.cpp
mesa: tidy up ir_to_mesa.{cpp,h} includes, comments, etc
mesa: rename ir_to_mesa.{cpp,h} -> link_program.{cpp,h}
mesa: update or remove out of date references to ir_to_mesa
doc: update source tree doc to reflect recent classic/swrast deletions
util: add dri config option force_compat_shaders
util: add workaround for SNK HEROINES Tag Team Frenzy
mesa: make struct in gl_program a union and remove FIXME
glsl/glcpp: make sure to expand new token after concatenation
glsl/st: move st_nir_opts() into gl compiler common code
Timur Kristóf (44):
radv: Use MESA_VULKAN_SHADER_STAGES to make room for mesh/task.
aco: Fix how p_is_helper interacts with optimizations.
nir: Rename nir_get_io_vertex_index_src and include per-primitive I/O.
nir: Print Mesh Shader specific info.
nir: Fix nir_lower_io with per primitive outputs.
nir, spirv: Don’t mark NV_mesh_shader primitive indices as per-primitive.
nir: Add new option to lower invocation ID from invocation index.
nir: Lower cull and clip distance arrays for mesh shaders.
nir: Don’t compact per-vertex and per-primitive outputs together.
nir: Group per-primitive outputs at the end for driver location assign.
nir: Fix sorting per-primitive outputs.
util: Add util_widen_mask function.
aco: Use util_widen_mask.
radv: Use util_widen_mask.
nir: Print task and mesh shader I/O variable names.
aco: Clean up and fix quad group instructions with WQM.
aco/optimizer_postRA: Fix combining DPP into VALU.
aco/optimizer_postRA: Fix applying VCC to branches.
spirv: Allow VRS with mesh shaders.
gitlab-ci: Disable radv-fossils again.
ac/nir/ngg: Lower NV mesh shaders to NGG semantics.
radv: Add radv_pipeline_has_mesh helper.
radv: Add mesh shader specific info.
radv: Cleanup PS input generation.
radv: Cleanup VS output param assignment.
radv: Add support for per-primitive mesh shader outputs.
radv: Setup shader arguments for mesh shaders.
radv: Compile mesh shaders and apply the necessary NIR lowerings.
radv: Set output driver locations for mesh shaders.
radv: Create mesh shading pipelines.
radv: Add support for mesh shading pipelines in the command buffer.
aco: Add Mesh and Task shader stages.
aco: Update README about NGG and mesh shaders.
aco: Add 1D workgroup_id support for mesh shaders.
aco: Use the correct outinfo for mesh shaders.
aco: Export per-primitive mesh shader output attributes.
radv: Implement NV_mesh_shader draw calls.
radv: Enable NV_mesh_shader with a perftest flag.
radv: Note when a mesh shader writes the primitive shading rate.
radv: Lower primitive shading rate for mesh shaders.
aco: Emit VRS rate when it’s per-primitive.
radv: Support VRS for mesh shaders.
radv: Disable IB2 on compute queues.
ac/nir/ngg: Fix mixed up primitive ID after culling.
Tomeu Vizoso (13):
ci: Add support for lazor Chromebooks
ci: Let manual LAVA jobs have a longer timeout than others
freedreno/ci: Test Turnip on Adreno 618
ci: Create symlink to /install early
ci: Don’t set GALLIVM_PERF in the scripts
virgl/ci: Set GALLIVM_PERF=nopt,no_quad_lod
ci: Remove syslogd
virgl/ci: Run each dEQP instance in its own VM
ci: Uprev Crosvm
lvp: Free the driver_data pointer for all commands
anv/ci: Test with deqp-vk on Tiger Lake
anv/tests: Free BO cache and device mutex
ci: Rebalance Iris jobs
Topi Pohjolainen (6):
intel/compiler: Handle new sampler descriptor fields for 16bit sampler
intel/compiler/fs: Add support for 16-bit sampler msg payload
intel/compiler: Demote sampler params to 16-bit for CMS/UMS/MCS
intel/compiler: Prepare ld2dms_w for 4 mcs components
intel/compiler: Add new variant for TXF_CMS_W
intel/compiler: Deprecate ld2dms and use ld2dms_w instead
Uday Kiran Pichika (2):
iris: enable adaptive sync for IRIS
anv: enable adaptive sync for ANV
Vadym Shovkoplias (3):
intel/fs: Fix a cmod prop bug when cmod is set to inst that doesn’t support it
anv: Include viewport size in scissor rectangle
glthread: Check out of bounds for MultiDrawElementsBaseVertex cmd
Vasily Khoruzhick (14):
gallium: add PIPE_CAP_PREFER_POT_ALIGNED_VARYINGS
lima: enable PIPE_CAP_PREFER_POT_ALIGNED_VARYINGS
lima: add native txp support
lima: add support for 3D textures
lima: handle 1D samplers
lima: add more wrap modes
lima/ppir: check if mul node is a source of add node before inserting
lima/ppir: implement gl_FragDepth support
lima: fix crash with sparse samplers
lima: disasm: use last argument as a filename
lima: disasm: call util_cpu_detect() to init CPU caps
lima: implement dual source blend
lima: use 1 as blend factor for dst_alpha for SRC_ALPHA_SATURATE
lima: fix blending with min/max ops
Viktoriia Palianytsia (1):
glsl: fix for unused variable in glsl_types.cpp
Vinson Lee (17):
anv: Fix assertion.
radv: Fix memory leak on error path.
clover: Add constructor for image_rd_argument.
zink: Remove duplicate variable unsized.
intel/compiler: Change selected_simd return type to int.
intel/compiler: Initialize SIMDSelectionTest member error.
vulkan/wsi: Unlock before return on error path.
microsoft/spirv_to_dxil: Fix non-Windows build.
virgl: Allocate qdws after virgl_init_context to avoid leak.
ac/rgp: Initialize clock_calibration with memset.
ir3: Make shift operand 64-bit.
panfrost: Avoid double unlock.
isaspec: Sort field names to generate deterministic output.
radv: Fix memory leak on error path.
r600/sfn: Remove unused AluInstruction members.
isaspec: Remove duplicate return statement.
v3dv: Add missing unlocks on errors.
Witold Baryluk (2):
zink: Do not access just freed zink_batch_state
zink: Fully initialize VkBufferViewCreateInfo for hashing
Xiaohui Gu (1):
iris: Mark a dirty update when vs_needs_sgvs_element value changed
Yiwei Zhang (27):
dri_interface: remove obsolete interfaces
dri_interface: remove gl header
venus: refactor private descriptor_set helpers to be private
venus: assign valid memoryTypeIndex of exportable ahb memory for image
venus: release queues on device creation failure
venus: refactor to add vn_device_init
venus: refactor to add vn_buffer_init
venus: refactor the ahb buffer mem_type_bits query api
venus: add struct vn_buffer_memory_requirements
venus: add struct vn_image_memory_requirements
venus: add buffer cache init and usage flows
venus: implement vn_buffer_get_max_buffer_size
venus: implement vn_buffer_cache_get_memory_requirements
venus: implement vn_buffer_cache_entries_create
venus: refactor vn_device_memory_simple_alloc
venus: simplify device memory pool alloc and refcount
venus: defer roundtrip waiting to vkFreeMemory time
venus: track memory type property flags in vn_device_memory
venus: move bo allocation for mappable memory to vn_MapMemory
venus: subtract appended header size in vn_CreatePipelineCache
venus: VkExternalImageFormatProperties is optional
tu: VkExternalImageFormatProperties is optional
venus: update some obsolete assumptions described
venus: track whether a fence is external
Revert “venus: remove vn_ring_wait_all”
venus: make vn_QueueSubmit async for native submissions
venus: properly destroy deferred ahb image before real image creation
Yonggang Luo (2):
vulkan: Open registry XML files as UTF-8
win32: Fixes thread local on win32 with clang/mingw (!14062)
mwezdeck (1):
virgl/drm: New optimization for uploading textures
orbea (1):
build: add sha1_h for lp_texture.c
satmandu (1):
Fix compilation on armv7l with gcc 11.2.0
shanshengwang (1):
radeon/vce: Limiting max supported refernce frames to 1 for h264 encoding