Mesa 22.3.0 Release Notes / 2022-12-02¶
Mesa 22.3.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.3.1.
Mesa 22.3.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.3.0 implements the Vulkan 1.3 API, but the version reported by the apiVersion property of the VkPhysicalDeviceProperties struct depends on the particular driver being used.
SHA256 checksum¶
644bf936584548c2b88762111ad58b4aa3e4688874200e5a4eb74e53ce301746 mesa-22.3.0.tar.xz
New features¶
GL_ARB_shader_clock on llvmpipe
VK_KHR_shader_clock on lavapipe
Mesa-DB, the new single file cache type
VK_EXT_attachment_feedback_loop_layout on RADV, lavapipe
VK_KHR_global_priority on RADV
GL_KHR_blend_equation_advanced_coherent on zink
VK_EXT_load_store_op_none on RADV
VK_EXT_mutable_descriptor_type on RADV
VK_EXT_shader_atomic_float on lvp
VK_EXT_shader_atomic_float2 on lvp
GL_NV_shader_atomic_float on llvmpipe
VK_EXT_image_robustness on v3dv
VK_EXT_extended_dynamic_state3 on lavapipe
VK_EXT_extended_dynamic_state3 on RADV
VK_EXT_pipeline_robustness on v3dv
Mali T620 on panfrost
Shader disk cache on Panfrost
support for R8G8B8, B8G8R8, R16G16B16 and 64-bit vertex buffer formats on RADV
initial GFX11/RDNA3 support on RADV
various ray tracing optimizations on RADV
extendedDynamicState2PatchControlPoints on RADV (VK_EXT_extended_dynamic_state2 feature)
Radeon Raytracing Analyzer integration (using RADV_RRA_* environment variables)
None
Bug fixes¶
r600,regression: Wrong color on a Minecraft shaderpack on Cayman
[iris/crocus] Native CS:GO OpenGL: fire produces black rendering artifacts
VDPAU GL interop is broken, causing Black and White video
panfrost: application crashes with 22.2.4/22.3.0-rc3
etnaviv: compiler assertion fail in glmark2 terrain
anv: dEQP-VK.pipeline.monolithic.multisample.variable_rate.8_1_fb_1 failure
DG2: Age of Empire IV incorrect rendering
r600: Sky not rendered correctly with the NIR backend on Transport Fever 2
“intel/compiler: Signed integer range analysis for imul_32x16 generation” regresses several OpenCL tests
aco: Missing 8-bit uadd_carry
!16168 broke Xephyr -glamor fallback to swrast
panfrost/rk3399: performance drop in emulationstation and in RetroArch menu [mesa >= 21.3.8, batocera.linux, bisected]
d3d12/VA-API: [-wmissing-prototypes] with MSYS2 MinGW-W64 UCRT64 GCC
clover: windows: library filename has `-1` suffix and a `lib` prefix when built with mingw
freedreno: !19236 broke anitchamber trace
radv, dxvk: Rendering errors in World of Tanks after “Switch to dynamic rendering only”
gen9 gt3e/gt4e skus fail dEQP-VK.pipeline.multisample.sample_locations_ext.*
Intel - GPU Hang when starting new game in Hellblade: Senua’s Sacrifice
v3d: Wrong colors (pink) in videos in Firefox (likely YUV->RGB shader issue)
anv/zink: cts failures on ICL
panfrost t860 glmark-es2 regression
panfrost_drm.h build error
radv: Artifacts in multiple games with yuzu (regression, bisected)
Doom (1993) Ray-Traced has render glitches.
radv: Flickering in Spider-Man Remastered (Regression) (Bisected)
radv: Hitman 2 using Direct3D 12 has discolored squares on RDNA2 with DCC enabled
panfrost/midgard - on Duckstation PSX emulator: segfault on GLES 3.0 and bad shader compilations on 3.3
nouveau: Updating to Mesa*22.2.0 makes videos have corrupted colors in Firefox
[radeonsi] OpenGL rendering issue with Unreal Tournament 99 & OldUnreal 4.69 rc4
Replace the functionals in util/debug.h with util/u_debug.h
gallium: nir_opt_access desynchronizes image access modifiers in NIR with Program->sh.ImageAccess
[radv/navi21] No sprites being rendered in Quake 2 RTX
Hacknet does not render on Panfrost
!19259 broke some piglit arb_tessellation_shader tests with radeonsi if TCS passthrough shader is cached
panfrost g52 issue
[Intel] Doom Eternal crashes shortly after launching
GravityMark segfault when using ray tracing ANV
nir: Incorrect idiv lowering
intel-clc fails with “Unsupported SPIR-V capability” and SEGFAULT.
Navi 14 hangs running “rendercheck -t cacomposite -f a8r8g8b8” since !18170
glx=xlib can not be built under ubuntu 22.04
radv: incorrect query result for VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT
crocus: EGL_ANDROID_native_fence_sync extension is missing
freedreno/a6xx: spec@arb_tessellation_shader@execution@tess-instance-id fail
r300: wrong primitive positions in CXBX-R emulator with nine and RADEON_DEBUG=notcl
EGL re-initialization can fail silently
Rusticl: fails to create program if source size is stated, but last char is a null terminator
r300: register allocation sometimes generate invalid swizzles
Mesa git Upgrade causes cursor detection issues in Wayland, issue was not in 22.3.0-git.20220920.8d66c45.fc36
Proposal: Remove rbug, graw, graw tests, xa, xvmc
intrinsics.h:112:21: error: use of undeclared identifier ‘intel_sub_group_shuffle’
tu: broken since dynamic pcp
radv: Crash in dEQP-VK.ray_query.misc.dynamic_indexing
t860: mediapipe application failed
glthread: radeonsi: offset textures in game starsector with glthread enabled
Crashing on Windows VM
zink: descriptor-handling regression
hasvk: noperspective is broken on Haswell hardware (Intel(R) HD Graphics 4400)
util/u_atomic.h can not be included in util/u_debug.h
radv: dynamic patch control points broken
Exanima renders with the wrong colors.
Missing tile cache flushes causing corruptions
turnip: compute shader hang in the Monster Hunter World
anv_private.h:118:10: fatal error: anv_entrypoints.h: No such file or directory
freedreno: mis-rendering on gardensofkadesh/homeworld
piglit.spec.egl 1_4.egl-ext_egl_image_storage times out
nouveau: tegra124: GL_OUT_OF_MEMORY error
r600: Shadows incorrecly rendered on Counter-Strike: Global Offensive with the NIR backend
r300: regalloc doesn’t handle brk correctly
Recent WSI commit breaks every Vulkan application on RDNA 2 GPUs
8775f08bf11 makes warcraft 3 crash with free(): double free detected in tcache 2
anv: probable ccs issue on icl
iris: remap_tess_levels assertion failure in shader-db runs
RADV: Mafia & Mafia III :Definitive Edition graphical issues with certain effects
Cyberpunk 2077 ground reflectiveness issues using RADV
[RADV] Grand Theft Auto V: Shadow rendering bug on Steam Deck
rusticl: fails to build on non-Linux: cannot find value `stderr` in this scope
llvmpipe-piglit-rusticl fail at api/clenqueuefillimage
Broken build with Clang-16 due to: aco_register_allocation.cpp:382:7: error: no matching function for call to ‘printf’
src/gallium/drivers/r600/sfn/sfn_instr.cpp:92:33: error: expected primary-expression before ‘int’
r600: Make NIR the default backend
undefined reference to `intel_ds_begin_xfb’
data-race leads to crash in u_trace_context_init()
radeonsi/radv: Discrepancy in handling wd_switch_on_eop
Shadows rendering issue in Deathloop
RADV: Regression with RPCS3 where nothing renders
[RADV][bisected] commit 3714c89d0ebf0c541d8f7a7a807ce7c1bfe3cfea at least lead to GPU hang when I run the game “Quake II RTX”
eglCreateContext doesn’t generate EGL_BAD_MATCH when share_context is on a different EGLDisplay
Intel - Homerun Clash misrendering issue
r300: dEQP-GLES2.functional.shaders.indexing.tmp_array.float_dynamic_write_dynamic_loop_read_fragment regression
turnip/a660: dEQP-VK.spirv_assembly.instruction.terminate_invocation.terminate.subgroup_ballot failure due to “movmsk” reordered with “kill”
WSI reports 11 RGB bits is unsupported in X11, using zink/swrast
[radeonsi] Graphical corruption in Valve Source-based games
RADV: VK_EXT_load_store_op_none support?
radv: extendedDynamicState2PatchControlPoints
Vega 8 rendering GDM grey blank login screen after recent change
r300: possibility of merging ADD and MUL into MAD when effectively only 2 sources are used
MESA_DEBUG=incomplete_tex shows unnecessary validation during glClear
anv: Performance drop with Vulkan on Wayland
lima: crash during dEQP-EGL execution
Regression from https://gitlab.freedesktop.org/mesa/mesa/-/commit/8fcb4aa0ebd7b9d0d8f80986fb817afea2fc4a87
radv: Enable instruction timing with RGP for RT
Updates to 22.2 RCs cause artifacts on nouveau and blank screen on VirtIO
nouveau: corruption on NVAC after switching to the NIR backend
egl: Remove big-display-lock
DG2: vulkancts tests spin forever
[regression][bisected] v3dv: dEQP-VK.api.object_management.alloc_callback_fail_multiple.graphics_pipeline fails
v3dv: evaluating reducing current value of DEFAULT_MAX_BO_CACHE_SIZE
venus-lavapipe flakes
amd: LPDDR4 and LPDDR5 hits an assertion failure in ac_memory_ops_per_clock
zink: GL_TEXTURE_LOD_BIAS vs mipLodBias, and GTF-GL46.gtf21.GL3Tests.texture_lod_bias.texture_lod_bias_all failure on Turnip
ci: radeonsi-raven-skqp also tests RADV but only runs on radeonsi changes
Gallium OpenGL megadriver fails to build if LLVM is enabled but not required by any component built
panfrost: crash in dEQP test
bitpack_helpers.h:34:10: fatal error: valgrind.h: No such file or directory
[gen9_iris] piglit causes crash on 4GB-memory machine when running spec/!opengl 1.1/max-texture-size
Abort due to “Unknown intrinsic: intrinsic store_deref” (firefox, radeonsi)
radv: missing support for some 3-component vertex formats in RDNA2
radv: radv_translate_buffer_dataformat overhead
nir: Replacing GC with manual memory management
turnip: dEQP-VK.subgroups.vote.graphics.subgroupallequal_*int regression on a635
regression from !17949
r600/sfn: xonotic shows a big performance regression when using the NIR backend with sb disabled
r600/sfn: register allocation fails for a number of piglits and deqp tests
DG2 corruption in gnome desktop from F36
d3d12: Delete custom OpenGLOn12 target, add option to override libgallium_wgl.dll name
radeonsi: error allocating sparse buffers.. bug?
RADV: vulkaninfo fails to report extended VkShaderStageFlagBits for VK_KHR_ray_tracing_pipeline
[radeonsi] Transform feedback with array outputs fails
[BISECTED/radeonsi] Flickering triangles with wayfire cube
re-evaluate the linker for CI
[RADV] (Vega/Navi) Halo: The Master Chief Collection: Texture issue on Halo 3 and Reach
../src/util/u_queue.c:218: util_queue_fence_destroy: Assertion `fence->signalled’ failed for iris when disabled UTIL_FUTEX_SUPPORTED
Freedreno turnip mesa cause emulation close after 15-20min gameplay
glsl: textureGatherOffset param broken
turnip: broken after switching to userspace vma
turnip: gfxbench aztec ruins crashes on zink
!16863 disabled all meson tests in CI
intel unittests failed a lot because recents commits Job Failed #27063524
Microsoft CLC runtime crash (at least on 32-bit) since !12510
Job Failed #26465985
v3dv: android: VTS big regression after 316728a55bc8fe398be1ac2796a22f8c91fb886c
radeonsi: driver crashes with kwin-effects-cube
[Turnip] Final Fantasy X: Incorrect hair rendering
iris: Suboptimal usage of HiZ + CCS for mipmapped buffers
Document state of Dozen Vulkan support in features.txt for MesaMatrix site..
turnip: gfxbench car chase crash on zink
[r300] - osu! - Shader optimizations cause black and glitchy rendering
[Bisected] Microsoft CLC: build failure with MSVC and Dshared-llvm=disabled with AMDGPU target available
Android.mk: meson enables flags based on the libraries installed on the host system
anv: invalid returns from vkCreateDescriptorPool
[Bisected][RadeonSI] Blender crashes on startup
lavapipe CI times out
turnip: depth/stencil regressions
radv regression: Hitman 2 rendering issue
llvmpipe: assert in KHR-Single-GL45.enhanced_layouts.xfb_all_stages
android: vulkan: Disable blocked KHR_performance_query extension (v3dv, turnip, anv)
Poor performance/utilization with Splitgate
[Bisected][RADV] Rendering issues and performance drop with GFX10 on RPCS3
freedreno_gmem.c crashes Firefox Nightly in Khronos
freedreno / mesa 22.1.3 crashes Firefox Nightly
!17693 broke piglit oes_egl_image_external_essl3
VK_PRESENT_MODE_IMMEDIATE_KHR rendering artifacts
dzn: Build failure when it’s the only driver built - 22.2-devel regression
d3d12: Unresolved external symbols from Version.lib
a618 vk_full timing out at 60 minutes instead of 120
Changes¶
Adam Jackson (25):
egl: Remove some can’t-happen supported API checks
egl: Move an error check earlier in EGL_BUFFER_AGE_EXT query
wsi/x11: Defer clearing image busy flag for non-shm upload
egl/kopper: Don’t add EGL_SWAP_BEHAVIOR_PRESERVED_BIT configs
glx: Use XSaveContext, delete glxhash.c
Revert “glx: Use XSaveContext, delete glxhash.c”
wsi/x11: Fix the is-visual-supported check
nouveau: const cleanup
egl/dri2: Respect the arguments to dri2_set_blob_cache_funcs
egl/dri2: Fix a typo in a comment
egl/dri2: Fix some thinkos in old context release
glx/dri*: Unify glx_context subclassing
glx/dri: Avoid a weird indirection in driFetchDrawable
glx: Remove some excess work from the GLX_FBCONFIG_ID fallback
egl: Fix a bunch of maybe-uninitialized warnings
egl: Promote _eglLock/UnlockDisplay to internal API
egl: Untangle some spaghetti around _eglLookupDisplay
egl: Factor out the eglTerminate write-lock pattern
egl: Rewrite eglSetBlobCacheFuncsANDROID to use the standard macros
mesa/fbo: Don’t force both read/draw bindings to zero
egl: Formatting fix
egl: Factor some common terminate cleanup up to common code
egl/dri2: Fix a weird conditional in dri2_make_current
egl: Remove a bogus restriction from eglMakeCurrent
rusticl: meson devenv support
Adrián Larumbe (5):
panfrost: Handle Job VA cycles when decoding a dump file
panfrost: Remove documentation reference to deprecated parameter
panfrost: Add compiler args option for building usermode tools
panfrost: Sync panfrost_drm.h from drm-misc-next
panfrost: Add userspace crash dump decoder and analyser
Alejandro Piñeiro (11):
v3dv/bo: reduce DEFAULT_MAX_BO_CACHE_SIZE to 64
v3dv/pipeline: use a array instead of individual pointer to stages
v3dv/pipeline: keep qpu_insts around if we expect them to be used later
v3d: replace all TODO around for FIXME
broadcom/compiler: don’t call nir_opt_load_store_vectorize on all v3d_optimize_nir calls
broadcom/compiler: update how we compute return_words_of_texture_data on non-ssa
broadcom/compiler: add more lowerings/optimizations on v3d_optimize_nir
v3dv/pipeline: use v3d_optimize_nir
broadcom/compiler: pass a strategy struct to vir_compile_init
broadcom/compiler: call nir_opt_gcm with a custom strategy
v3dv/bo: reset bo and then call gem close
Alejandro Tafalla (1):
freedreno: Fix graphic glitches on a4xx and a5xx
Alessandro Astone (3):
Android.mk: Disable lmsensors
Android.mk: Filter out –build-id=md5 linker flag
Android.mk: Provide a custom entry name to ensure meson checks succeed
Alex Brachet (1):
nir: Fix qsort comparator function
Alyssa Rosenzweig (414):
docs/asahi: Document varying interpolation
agx: Fix packing of samplers in texture instrs
agx: Fix ld_var cf packing
asahi: Plumb through lower_clip_fs
asahi: Extend counts in BIND packets
asahi: Allow large uniform records
asahi: Dump all textures&samplers
asahi: Fix using multiple textures/samplers
asahi: Use a single bind texture/sampler per pipeline
asahi: Split vertex/fragment pipeline binds
asahi: Correct bind fragment pipeline size
asahi: Encode known bits of Linkage in the XML
asahi: Fix varying XML
asahi: Decode Interpolation packets
asahi,agx: Rewrite varying linking
agx: Add AGX_MESA_DEBUG=noopt option
agx: Model perspective coefficient reg in the IR
agx: Rename varying load instructions
agx: Use split instead of extract for ldcf
agx: Implement noperspective interpolation
agx: Lower more ALU operations
agx: Align 64-bit register pairs
agx: Assert that registers are naturally aligned
agx: Extract umul_high implementation
agx: Implement nir_op_umul_high
agx: Stop using broken idiv lowering
agx: Handle type-changing splits
agx: Remove p_extract
agx: Only emit the used components of gl_FragCoord
asahi: Don’t advertise ARB_clip_control yet
asahi: Identify depth clip mode bit
pan/decode: Don’t pass around memory handles
pan/decode: Remove pandecode_msg
pan/decode: Stop passing job index around
pan/decode: Stop passing suffixes around
pan/decode: Simplify pandecode_fbd
pan/decode: Reorder MFBD decoding
pan/decode: Unify SFBD/MFBD decoding
pan/decode: Defeature disassembler stats
pan/decode: Centrally declare pandecode entrypoints
pan/decode: Clean up _bifrost_ decode routines
pan/mdg: Remove disassembler stats
panfrost: Don’t segfault on unknown models
pan/bi: Implement some extracts and inserts
pan/bi: Fuse [US][8|16]_TO_F32 ops
pan/bi: Test int8/16 -> float32 opts
pan/bi: Optimize bitwise arithmetic of booleans
pan/bi: Optimize pattern from nir_lower_idiv
pan/bi: Don’t use the broken idiv lowering
pan/bi: Use nir_opt_idiv_const
asahi: Fix warning building for macOS 12.0
pan/bi: Don’t reorder image loads across stores
pan/bi: Don’t allow ATEST to take a temporary
pan/bi: Handle info.fs.untyped_color_outputs on Valhall
panfrost: Handle untyped_color_outputs on Bifrost
panfrost: Set blit output variable types correctly
panfrost: Don’t saturate in Bifrost blend shaders
panfrost: Promote blend shader outputs 8->16-bit
panfrost: Avoid blend shader when not blending
panfrost: Don’t compile empty blend shaders
panfrost: Invert no_colour to enabled
panfrost: Simplify blitter blend shader creation
panfrost: Include mask in replace blend shader name
panfrost: Assert that blend shaders are nontrivial
r600/sfn: Don’t use broken idiv lowering
gallium: Inline away util_make_fragment_tex_shader_writemask
gallium: Inline away util_make_fragment_tex_shader interp_mode
gallium: Remove util_make_fragment_tex_shader_xrbias
pan/mdg: Replicate swizzles for scalar sources
pan/mdg: Reexpress umul_high packing
pan/mdg: Use correct idiv lowering
pan/mdg: Always write return address to r1.w
pan/mdg: Print 3 sources for CSEL
panfrost/ci: Update G72 xflakes list
gallium: Add u_default_set_debug_callback
v3d: Use u_default_set_debug_callback
vc4: Use u_default_set_debug_callback
softpipe: Use u_default_set_debug_callback
lima: Use u_default_set_debug_callback
etnaviv: Use u_default_set_debug_callback
r300: Use u_default_set_debug_callback
panfrost: Route shader-db to debug, not stderr
pan/bi: Implement general 8-bit vector construction
pan/va: Handle 8-bit lane when lowering constants
pan/bi: Implement nir_op_vec8 and nir_op_vec16
pan/bi: Assert that vectors are sufficiently small
docs/asahi: Document image layouts
asahi: Identify compressed render target fields
asahi: Rename ‘tiled 64x64’ to ‘twiddled’
asahi: Add XML for multisampled textures
asahi: Fix bind sizes
asahi: Fix ASTC enums
ail: Introduce image layout module
ail: Rewrite tiled memcpy for correctness
asahi: Handle 2-channel sRGB textures
asahi: Fix is_format_supported returns
asahi: Advertise ETC1
asahi: Advertise ASTC formats
asahi: Rename our fake twiddled DRM modifier
ail: Add unit tests for miptree layouts
pan/bi: Fix dual texturing with uniforms
pan/bi: Fix out-of-bounds write in va_lower_split_64bit
pan/bi: Consider all dests in helper_block_update
pan/bi: Model [IF]CMP_{OR,AND,MULTI} ops
pan/va: Split out compare instructions
pan/bi: Set I->nr_dests, I->nr_srcs
pan/bi: Model 3rd source for ATEST
pan/bi: Consider nr_srcs/dests in CSE
pan/bi: Use nr_{srcs,dests} in bi_foreach_{src,dest}
pan/bi: Add validation for nr_srcs/nr_dests
pan/bi: Remove trivial dest[0] = bi_null()
pan/bi: Clean up destination printing
pan/bi: Improve register printing
pan/bi: Register allocate BLEND dest on Valhall
pan/bi: Don’t remove dests in DCE
pan/bi: Use bi_emit_split_i32 for trimming vecs
pan/bi: Introduce TEXC_DUAL psuedoinstruction
pan/bi: Assert destinations are non-NULL
pan/bi: Assume destinations are non-NULL
pan/bi: Don’t read nonexistant destinations
pan/bi: Don’t read nonexistant sources
pan/bi: Add variable dest/src support to builder
pan/bi: Use variable src/dest for collect/split
pan/bi: Use safe helpers to remove srcs/dests
pan/bi: Rebuild some instructions when lowering
pan/bi: Rebuild DISCARD when optimizing
pan/va: Use builder in va_lower_isel
pan/bi: Use builder for MUX -> CSEL opt
pan/bi: Use builder for IADD -> IADDC opt
pan/bi: Use builder for atomic lowering in scheduler
pan/bi: Reduce memory of scheduler access array
pan/bi: Dynamically allocate source/dests
pan/bi: Don’t write registers in optimizer tests
pan/bi: Add bi_after_block_logical helper
pan/bi: Lift bi_predecessor_index helper
pan/bi: Add phi nodes
pan/bi: Validate phi ordering
pan/bi: Don’t lower FAU for phis
pan/bi: Remove bogus assert lowering branches
pan/bi: Don’t optimize if without else
pan/bi: Don’t reorder phis in pre-RA scheduling
pan/bi: Validate before&after pre-RA sched
pan/bi: Inline DCE into bi_lower_vector
pan/bi: Translate phis from NIR
pan/bi: Add SSA-based liveness pass
pan/bi: Add brainless out-of-SSA pass
pan/bi: Reduce some moves when going out-of-SSA
pan/bi: Preserve SSA form from NIR
pan/bi: Clean up after converting to SSA
pan/bi: Clear reg in squeeze_index
pan/bi: Don’t use bi_temp_reg
pan/bi: Assume SSA in copyprop
pan/bi: Assume SSA in mod prop
pan/bi: Assume SSA in CSE
pan/bi: Assume non-null sources in constant folding
pan/bi: Assume SSA in minor passes
pan/bi: Assume SSA when scheduling for pressure
pan/bi: Assume SSA when translating NIR
pan/bi: Assume SSA for helper invocation analysis
pan/bi: Move non-SSA liveness into RA
pan/bi: Remove NIR registers from the IR
pan/bi: Get rid of bi_get_node
pan/bi: Inline node_to_index
pan/bi: Remove bi_max_temp
pan/bi: Simplify bi_get_index prototype
pan/bi: Add and use bi_foreach_ssa_src macro
pan/bi: Strengenth assert in the validator
pan/bi: Remove assert(bi_is_ssa(dest))
pan/bi: Add and use bi_replace_src helper
pan/bi: Add and use bi_num_successors helper
agx: Fix tib access in internal shaders
agx: Fix float copyprop of neg(neg) case
agx: Add more unit tests for float copyprop
agx: Don’t hardcode uniform enums
agx: Defeature indirect vbufs
agx: Plumb through nir_op_txf
asahi: Fix Indexed Draw command
asahi: Split up unk 2b
asahi: Note some more unknowns in the XML
asahi: Make ctx->zs a pointer
asahi: Export agx_blitter_save
asahi: Handle empty fragment shaders
asahi: Use util_blitter_clear
asahi: Trim garbage at end of set shader
asahi: Relax assert in decoder
asahi: Label batch flush reasons
asahi: Fix depth for cube maps
asahi: Fix nonmipmapped array textures
asahi: Fix “stride” for tiled textures
asahi: Identify and use first level field of texture
asahi: Correct SET_SHADER_EXTENDED disambig bit
asahi: Add 1D and 1D Array enums
asahi: Handle out-of-bounds clear_stencil
asahi: Fix depth/stencil buffers
asahi: Identify stencil test enable
asahi: Split RASTERIZER into constituent words
asahi: Identify object type field via PowerVR
asahi: Don’t use lower_wpos_pntc
asahi: Match PPP data structures with PowerVR
asahi: Hoist constant PPP state to start of batch
asahi: Dirty track everything
asahi: Make BO list growable
asahi: Annotate VDM/CDM commands as per PVR
asahi: Express VDM commands according to PowerVR
asahi: Handle Stream Link VDM commands
asahi: Allocate new cmdbufs if out of space
docs/envvars: Document Asahi variables
pan/decode: Fix job cycle detection
nir/lower_blend: Avoid emitting unnecessary fsats
panfrost: Respect buffer offset for OpenCL
panfrost: Honour cso->req_local_mem
nir: Add nir_intrinsic_texture_base_agx sysval
agx,asahi: Implement nir_intrinsic_load_texture_base_agx
agx: Make p_combine take a dynamic src count
agx: Implement texture offsets and comparators
agx: Implement txd
agx: Implement load_global(_constant)
agx: Lower txs to a descriptor crawl
agx: Don’t use nir_find_variable_with_driver_location
asahi: Don’t crash on <4 channel render targets
asahi: Handle blending with MRT
u_transfer_helper: Handle Z24X8 for drivers that don’t use the interleaved transfer_map
u_transfer_helper: Pack Z24S8 to Z24-in-Z32F and S8
asahi: Assert cache line alignment on Z/S buffers
asahi: Identify ZLS Control word from PowerVR
asahi: Identify CDM block types
asahi: Decode CDM commands separate from VDM
asahi: Shuffle IOGPU structs
asahi: Identify IOGPU compute header
asahi: Decode IOGPU compute header
asahi: Assert that u_transfer_helper is well-behaved
asahi: Use the internal format internally
asahi: Identify spill buffer histogram
asahi: Simplify IOGPU attachment packing
asahi: Identify shared memory fields
asahi: Consolidate magic numbers for USC controls
asahi/genxml: Overflow up to words when packing
asahi: Overhaul USC control packing
asahi: Identify pixel stride
asahi: Identify shared memory layouts
panfrost: Evict the BO cache when allocation fails
rusticl: Build Panfrost
panfrost: Adapt emit_shared_memory for indirect dispatch
agx: Convert and clamp array indices in NIR
panfrost: Default pipe->clear_texture impl
panfrost: Allow compiling MESA_SHADER_KERNEL
panfrost: Upload default sampler for txf
panfrost: Bump PIPE_CAP_MAX_TEXTURE_ARRAY_LAYERS
panfrost: Advertise PIPE_CAP_INT64
panfrost: Honour flush-to-zero controls on Valhall
panfrost: Assume launch_grid parameters always change
pan/va: Fix missing swizzle on CLZ.v2u16
pan/bi: Unit test swizzle lowering
pan/bi: Lower some 8-bit swizzles
pan/bi: Test some 8-bit swizzle lowering
pan/bi: Lower swizzles for 8-bit shifts
pan/bi: Strip negate when lowering swizzles
pan/va: Pack IADD.sat bit
pan/va: Fix v4s8 form of R2 opcodes
pan/bi: Handle uhadd, urhadd opcodes
pan/va: Pack .rhadd bit
pan/bi: Add HADD.v4s8.rhadd packing test cases
pan/va: Add 8-bit integer max assembler case
pan/bi: Lower 8-bit min/max to bcsel+comparison
pan/bi: Lower f2i8, f2u8
pan/bi: Remove bogus assert for pack_32_2x16
pan/bi: Allow selecting from an 8-bit vec8
pan/bi: Handle swizzles in unpack_64_2x32_split_{x,y}
pan/bi: Lower <32-bit bit_count
pan/bi: Lower fisnormal
pan/bi: Scalarize phis before the opt loop
pan/bi: Call nir_lower_64bit_phis
pan/bi: Use .auto for image stores
pan/bi: Fix 1D array indexing on Valhall
pan/bi: Stub out scoped_barrier
pan/bi: Implement unpack_64_2x32
agx: Fix bfi_mask packing
agx: Emit fewer combines for intrinsics
agx: Use 16-bit immediates
agx: Validate immediates
agx: Test fsat+f2f16 together
agx: Ensure that the optimizer sees legitimate SSA
agx: Pass mask into ld/st_tile instructions
agx: Account for mask when writing registers
agx: Remove load_kernel_input path
panfrost: Remove load_kernel_input path
nir/lower_system_values: Fix cs_local_index_to_id with variable workgroups
asahi: Eliminate “Pixel Format” type from GenXML
asahi/genxml: Defeature uint/float
panfrost,asahi: Remove unused prepare macro
panfrost,asahi: Remove unused function
asahi,panfrost: Remove exact attribute
asahi: Use a header more like Intel’s GenXML
asahi: Remove no-direct-packing
agx: Add iterators for phi/non-phi instructions
agx: Set PIPE_SHADER_CAP_INDIRECT_CONST_ADDR
agx: Emit smaller combines for nir_op_vec2/3
agx: Don’t prefix pseudo-ops
agx: Improve printing of immediate sources
agx: Switch to dynamic allocation of srcs/dests
agx: Dynamically size split instruction
agx: Rename “combine” to “collect”
agx: Emit trap at pack-time, not during isel
agx: Print instructions as “dest = src”
agx: Print agx_dim appropriately
agx: Preload vertex/instance ID only at start
agx: Write to r0l with a “nesting” instruction
agx: Introduce ra_ctx data structure
agx: Pass in max regs as a paramter to RA
agx: Reserve live-in regs at the start of block
panfrost/ci: Disable t720 jobs
nir: Be smarter fusing ffma
mesa,gallium: Revert “Make point coord origin a CAP”
panfrost/ci: Remove stale fail
pan/mdg: Lower PIPE_COMPUTE_CAP_MAX_THREADS_PER_BLOCK on Midgard
pan/mdg: Limit work registers for large workgroups
pan/mdg: Fix 16-bit alignment with spiller
nir: Fix nir_fmax_abs_vec_comp
nir: Usher nir_normalize_cubemap_coords into 2022
mesa: Fix multiple matrix pops in a row
nir/lower_io: Set interpolated_input dest_type
u_transfer_helper: Handle Z24S8 with z24_in_z32f but no interleaving
asahi: Lower point sprites in driver
gallium: Default to PIPE_CAP_MIXED_COLORBUFFER_FORMATS
panfrost: Remove NIR_SERIALIZED support
asahi: Hold a reference to BOs in a batch
nir/opt_preamble: Move load_texture_base_agx
agx: Remove command line compiler
asahi: Remove AGX_FAKE_DEVICE environment variable
asahi: Precompile for shader-db
asahi: Route shader-db stats to debug callback
asahi: Identify “Uniform high” USC word
asahi: Identify more shader-related fields
asahi: Remove “padding” field
asahi: Make agx_varyings a union
asahi: Use USC_UNIFORM_HIGH
asahi: Rename LOD clamps tests to fit other packing
asahi: Don’t use unnecessary test fixture
asahi: Add group tests
asahi: Support preamble shaders
agx: Be less sloppy about high uniforms
agx: Check that we don’t push too much
agx: Make push_count public
agx: Handle multiple functions
agx: Align preamble shaders
agx: Add uniform_store instruction
agx: Allow larger indices for ld/st
agx: Strengthen assert for packing ld/st instructions
agx: Implement scalar load/store_preamble
agx: Handle uniforms passed to COLLECT
agx: Restrict copyprop of uniforms
agx: Handle 64-bit moves
agx: Avoid reading high uniforms from device_load
agx: Report GPRs to the driver
asahi: Set uniform counts accurately
asahi: Set GPR count accurately
agx: Add agx_nir_opt_preamble pass
agx: Use agx_nir_opt_preamble
panfrost: Don’t use lower_wpos_pntc on Midgard
panfrost: Use proper formats for pntc varying
etnaviv: Use correct idiv lowering
nir/lower_idiv: Remove imprecise_32bit_lowering
nir/lower_idiv: Inline convert_instr_precise
panfrost: Zero polygon list for fragment-only
panfrost: Don’t allow VS side effects on midgard
pan/bi: Clean up sysval handling a bit
pan/mdg: Fix 64-bit address arithmetic
panfrost: Use compute-based XFB on Midgard
panfrost: Avoid a XFB special case
panfrost: Lower MAX_BLOCK_SIZE on Midgard
pan/mdg: Don’t schedule across memory barrier
panfrost,asahi: Support ARB_buffer_storage
gallium: Stub support for Asahi + DRM
gallium: Only use Asahi’s software path on macOS
panfrost/ci: Disable trace-based testing
panfrost: Enable rendering to 16-bit and 32-bit
panfrost: Add lots of perf_debug annotations
asahi: Identify counts for compute kernels
softpipe: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
i915g: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
etnaviv: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
gallium: Default to PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
nir/opt_algebraic: Fuse c - a * b to FMA
pan/bi: Don’t lower outputs for compute
panfrost: Don’t use nir_variable in the compilers
pan/mdg: Disassemble the .a32 bit
pan/mdg: Don’t pair ST_VARY.a32 with other instrs
pan/mdg: Use .u32 for flat shading
pan/mdg: Use bifrost_nir_lower_store_component
panfrost: Don’t allocate space for empty varyings
panfrost: Don’t use nir_variable to link varyings
panfrost: Delete set_global_resources
panfrost: Move small compute functions to pan_context.c
panfrost: Remove bogus assert
panfrost: Consolidate all shader compiling code
panfrost: Merge pan_assemble.c into pan_shader.c
panfrost: Remove unused req_input_mem copy
panfrost: Rename structs to panfrost_(un)compiled_shader
panfrost: Remove uncompiled_shader->active_variant
panfrost: Use u_dynarray for variants
panfrost: Make fixed_varying_mask a fragment-only key
panfrost: Precompile transform feedback program
panfrost: Precompile shaders
panfrost: Implement a disk cache
docs/new_features: Add Panfrost disk cache
panfrost: Don’t copy resources if replaced
panfrost: Replace resource shadowing flush
panfrost: Fix build with Perfetto (again)
panfrost: Copy resources when necessary
panfrost: Require 64-byte alignment on imports
panfrost: Fix reference counting with batch->resources
panfrost: Use PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY
pan/mdg: Fix out-of-order execution
panfrost: Revert “Require 64-byte alignment on imports”
Andri Yngvason (1):
gallium/vl: Add opaque rgb pixel formats
Anton Bambura (1):
panfrost: Enable Mali-T620
António Monteiro (2):
freedreno: get timestamp from os_time_get_nano instead of os_time_get
gallium/util: remove network class
Axel Davy (6):
frontend/nine: Skip invalid swvp calls
frontend/nine: Fix buffer tracking out of bounds
frontend/nine: Fix ATOC handling
frontend/nine: Fix cso restore bug
frontend/nine: Fix shader multi-use crash
frontend/nine: Fix ff position_t fallback when w = 0
Bas Nieuwenhuizen (56):
vulkan/wsi: Take max extent into consideration for modifier selection.
radv: Remove redundant radv_QueuePresentKHR.
radv: Add binding code for 3d sparse images.
radv: Add 3d tile shapes for sparse binding.
radv: Expose 3d sparse images.
amd/common: Don’t rely on DCN support checks with modifiers.
amd/common: Disable DCC retile modifiers on RDNA1
radv: Don’t flatten bottom AS exit if statement.
radv: Store top of stack in a register.
Revert “radv/rt: use derefs for the traversal stack”
radv: Use constant for ray traversal exit condition.
radv: Use nested ifs for pushing child nodes in traversal loop.
radv: Add scratch stack to reduce LDS stack in RT traversal.
ac/surface: Fix some warnings.
radv: Hardcode root node id.
radv: Translate the BVH copy shader to glsl from nir_builder.
radv: Remove aabb bounds from instance nodes.
radv: Use proper matrices for instance nodes.
radv: Use GLSL matrices for instance transforms in BVH.
radv: Use deterministic order for dumping acceleration stuctures.
radv: Properly initialize all memory in RRA dumps.
radv: Do an early check of distance in triangle culling.
vulkan/wsi/x11: Fix double free of modifiers.
radv: Clean up unused fields in BVH IR.
radv: Add a field for the offset of the bvh in the blas.
radv: Simplify buffer copy address generation.
radv: Start the BVH after the header.
radv: Generate parent links in BVH.
radv: Only emit parents from parents that actually end up in the tree.
radv: Split global & local bvh node variable.
radv: Add traversal backtracking with a short stack.
radv: Properly annotate all the invalid node usage.
radv: Implement pipeline-wide skiptriangles/skipaabbs.
radv: Consider inactive internal nodes never in the tree.
radv: Constify entry_size.
radv: Use a VkPipelineCache handle for meta shaders.
radv: Rework modification detection of the meta cache.
radv: Mark dEQP-VK.ray_query.misc.dynamic_indexing as crashing in CI.
aco: Pre-split result of bvh64_intersect_ray_amd.
radv: Improve gfx11 clear colors for DCC.
radv: Use correct primgrp size for gfx11.
radv: Add BVH IR header.
radv: Make the number of internal nodes be written on the GPU.
radv: Add PLOC shader
radv: Use PLOC for BVH building
radv: Speculatively tune RT pipelines for GFX11.
radv: Use correct types for loading the rings with LLVM.
radv: Handle GSVS ring intrinsic correctly with LLVM.
radv: Handle attribute ring intrinsic correctly with LLVM.
radv: Fix compute scratch buffer emission.
radv: Make the compute scratch waves per SE as well.
radv: Fix custom build id with C90 compilation.
radv: Use correct init order for ETC2 image views
radv: Fix sampler types in ETC2 decode.
vulkan: Remove asserts that weren’t valid for RADV ETC2 emulation.
radv: reserve space for the scissor in vkCmdBeginRendering.
Benjamin Tissoires (1):
CI: convert to use the new S3 server instead of the legacy minio
Boris Brezillon (1):
ci/panvk: Skip dEQP-VK.api.object_management.max_concurrent.query_pool
Brian Paul (113):
st_pbo/compute: fix memset() warning
lavapipe: s/u_foreach_bit/u_foreach_bit64/ in handle_pipeline_access()
llvmpipe: further bump LP_MAX_TGSI_SHADER_IMAGES to 64
llvmpipe: always pass non-zero writemask to assign_reg()
util: allow GALLIUM_LOG_FILE=stdout
gallivm: move lp_build_nir_aos_context declaration, etc
gallivm: change texture/sampler_index params to unsigned
llvmpipe: asst. formatting, clean-ups in lp_state_fs.c
gallivm: asst. clean-ups in lp_bld_sample_soa.c
gallivm: fix nir AOS swizzling issues
lavapipe: remove continue statements in emit_state() to be more consistent
lavapipe: zero-init sampler objects
cso: asst. clean-ups in cso_hash.[ch]
cso: use util_bitcount
cso: asst. clean-ups in cso_cache.[ch]
cso: asst. clean-ups in cso_context.[ch]
draw: asst. clean-ups in draw_context.[ch]
draw: asst. clean-ups in draw_vs_llvm.c
draw: asst. clean-ups in draw_vs_variant.c
draw: asst. clean-ups in draw_vs.[ch]
draw: remove goto in llvm_pipeline_generic()
draw: remove unused draw_has_llvm()
draw: asst. clean-ups in draw_pipe.h
draw: asst. clean-ups in draw_pt_fetch.c
draw: asst. clean-ups in draw_pt_post_vs.c
draw: asst. clean-ups in draw_pipe_cull.c
draw: asst. clean-ups in draw_pipe_clip.c
draw: asst. clean-ups in draw_pipe_flatshade.c
draw: asst. clean-ups in draw_pipe_offset.c
draw: asst. clean-ups in draw_pipe_pstipple.c
draw: asst. clean-ups in draw_pipe_twoside.c
draw: asst. clean-ups in draw_pipe_unfilled.c
draw: asst. clean-ups in draw_pipe_user_cull.c
draw: asst. clean-ups in draw_pipe_util.c
draw: asst. clean-ups in draw_pipe_wide_line.c
draw: asst. clean-ups in draw_pipe_wide_point.c
draw: asst. clean-ups in draw_vertex.[ch]
draw: asst. clean-ups in draw_pt_so_emit.c
draw: asst. clean-ups in draw_pipe_aapoint.c
draw: asst. clean-ups in draw_llvm.c
draw: asst. clean-ups in draw_cliptest_tmp.h
draw: asst. clean-ups in draw_gs.[ch]
draw: asst. clean-ups in draw_prim_assembler.[ch]
draw: asst. clean-ups in draw_pipe.c
draw: asst. clean-ups in draw_pt_vsplit_tmp.h
draw: asst. clean-ups in draw_split_tmp.h
draw: asst. clean-ups in draw_pt.c
draw: clean-up count assignment in draw_pt_arrays()
draw: asst. clean-ups in draw_private.h
draw: asst. clean-ups in draw_pt_fetch_shade_pipeline_llvm.c
draw: replace double conditional expression with if/else
draw: make draw_geometry_shader_run() return void
draw: fix some const-correctness in draw_vbo()
draw: move vs_slot var in tgsi/llvm_fetch_gs_input()
draw: s/start_or_maxelt/start/ in llvm VS code
draw: fix vertex id offset bug
draw: fix base vertex bug
llvmpipe: asst. clean-ups in lp_rast.h
llvmpipe: asst. clean-ups in lp_rast_debug.c
llvmpipe: asst. clean-ups in lp_rast_priv.h
llvmpipe: asst. clean-ups in lp_rast_rect.c
llvmpipe: asst. clean-ups in lp_rast.c
llvmpipe: asst. clean-ups in lp_rast_linear.c
llvmpipe: asst. clean-ups in lp_rast_linear_fallback.c
gallium: whitespace fixes in p_context.h, p_screen.h
llvmpipe: asst. clean-ups in lp_context.[ch]
llvmpipe: asst. clean-ups in lp_surface.c
llvmpipe: asst. clean-ups in lp_screen.[ch]
llvmpipe: asst. clean-ups in lp_query.c
llvmpipe: asst. clean-ups in lp_setup.c
llvmpipe: asst. clean-ups in lp_setup_rect.c
llvmpipe: asst. clean-ups in lp_setup_vbuf.c
llvmpipe: asst. clean-ups in lp_setup_line.c
llvmpipe: asst. clean-ups in lp_setup_point.c
llvmpipe: remove gotos in do_rect_ccw()
llvmpipe: asst. clean-ups in lp_setup_tri.c
llvmpipe: asst. clean-ups in lp_bld_alpha.c
llvmpipe: asst. clean-ups in lp_bld_blend_aos.c
llvmpipe: asst. clean-ups in lp_bld_depth.c
llvmpipe: asst. clean-ups in lp_bld_interp.c
llvmpipe: asst. clean-ups in lp_debug.h
llvmpipe: asst. clean-ups in lp_draw_arrays.c
llvmpipe: asst. clean-ups in lp_fence.c
llvmpipe: asst. clean-ups in lp_flush.[ch]
llvmpipe: asst. clean-ups in lp_linear_interp.c
llvmpipe: asst. clean-ups in lp_linear_sampler.c
llvmpipe: asst. clean-ups in lp_scene.c
llvmpipe: asst. clean-ups in lp_scene.h
llvmpipe: asst. clean-ups in lp_state_sampler.c
llvmpipe: asst. clean-ups in lp_state_derived.c
llvmpipe: asst. clean-ups in lp_state_clip.c
llvmpipe: asst. clean-ups in lp_state_cs.c
llvmpipe: asst. clean-ups in lp_state_gs.c
llvmpipe: asst. clean-ups in lp_state_rasterizer.c
llvmpipe: asst. clean-ups in lp_state_so.c
llvmpipe: asst. clean-ups in lp_state_surface.c
llvmpipe: asst. clean-ups in lp_state_tess.c
llvmpipe: asst. clean-ups in lp_state_vertex.c
llvmpipe: asst. clean-ups in lp_test_blend.c
llvmpipe: asst. clean-ups in lp_test_conv.c
llvmpipe: asst. clean-ups in lp_test_format.c
llvmpipe: asst. clean-ups in lp_test_main.c
llvmpipe: asst. clean-ups in lp_tex_sample.c
llvmpipe: asst. clean-ups in lp_texture.[ch]
llvmpipe: improve some if/switch code in llvmpipe_get_shader_param()
frontend/dri: assorted clean-ups in dri-screen.c
frontends/dri: clean-ups in dri_util.c
glx: clean-ups in create_context.c
glx: clean-ups in drisw_glx.c
llvmpipe: s/uint/enum pipe_prim_type/ in lp_setup_context.h
llvmpipe: fix comment typo
llvmpipe: asst. clean-ups in lp_state_fs.c
llvmpipe: check rectangle vertices have equal W components
Caio Oliveira (38):
intel/compiler: Print more details when fs_visitor::validate() fails
intel/compiler: Call get_mesh_urb_handle one level up in call-stack
intel/compiler: Get URB handle in emit_task/mesh_intrinsic functions
intel/compiler: Make component() work for FIXED_GRF/ARF
intel/compiler: Remove INTEL_DEBUG=tcs8
intel/compiler: Rename 8_PATCH to MULTI_PATCH
intel/compiler: Use fs_reg helpers for TCS icp_handle selection
intel/compiler: Use fs_reg helpers for GS icp_handle selection
intel/compiler: Create fs_visitor::emit_tcs_barrier()
intel/compiler: Add helper for barrier message payload setup for gfx >= 125
intel/compiler: Use builder to allocate fs regs for TCS store output
intel/compiler: Make a type for Thread Payload and FS variant
intel/compiler: Use FS thread payload only for FS
intel/compiler: Create struct for TCS thread payload
intel/compiler: Store Patch URB output in TCS thread payload struct
intel/compiler: Store Primitive ID in TCS thread payload struct
intel/compiler: Store start of ICP handles in TCS thread payload struct
intel/compiler: Create and use struct for TES thread payload
intel/compiler: Create and use struct for VS thread payload
intel/compiler: Create and use struct for TASK and MESH thread payloads
intel/compiler: Create and use struct for GS thread payload
intel/compiler: Store start of ICP handles in GS thread payload struct
intel/compiler: Create and use struct for Bindless thread payload
intel/compiler: Export brw_get_subgroup_id_param_index()
intel/compiler: Create and use struct for CS thread payload
intel/compiler: Make thread_payload struct abstract
intel/compiler: Add a few more brw_ud* helpers
intel/compiler: Use brw_ud* helpers in thread payload code
nir/lower_task_shader: Don’t fail adding a launch when last instruction is a jump
spirv: Pass vtn_block into vtn_emit_branch()
spirv: Add workaround to ignore OpReturn after OpEmitMeshTasksEXT
spirv: Call vtn_emit_ret_store() only when handling return branch
spirv: Make a helper function to check glslang/shaderc
spirv: Enable OpEmitMeshTasksEXT workaround for Clay Shader Compiler
intel/compiler: Explicitly include build-id when linking intel_clc
nir: Don’t reorder volatile intrinsics
intel/compiler: Fix dynarray usage in intel_clc
intel/compiler: Fix missing tie-breaker in brw_nir_analyze_ubo_ranges() ordering code
Caleb Cornett (3):
wgl: Homogenize read framebuffer reference counting logic
wgl: Always release local references in stw_make_current_by_handles
wgl: Release the context before deleting it in wglDeleteContext
Chad Versace (43):
venus: Remove cryptic pointer arithmetic on present attachments
venus: Drop vn_present_src_attachment::acquire
venus: Track subpass properties
venus/pipeline: Refactor vn_fix_graphics_pipeline_create_info
venus/pipeline: Add pipeline state bools for ignore rules
venus/pipeline: Split ignore rules for pViewportState, pMultisampleState
venus/pipeline: Fix ignore rule for pDepthStencilState
venus/pipeline: Fix ignore rule for pColorBlendState
venus/pipeline: Ignore pViewportState::pViewports
venus/pipeline: Ignore pViewportState::pScissors
venus/pipeline: Ignore basePipelineHandle
venus/pipeline: Fix ignore rules for VK_KHR_dynamic_rendering
venus/pipeline: Fix ignore rules for VK_EXT_extended_dynamic_state
venus: Dedupe pipeline handle creation
venus: Fix failure path on pipeline creation
venus: Enable VK_EXT_pipeline_creation_cache_control
venus: Sort passthrough extensions
vulkan: Make vk_copy_struct_guts() public
venus: Simplify vn_GetPhysicalDeviceFeatures2
venus: Simplify vn_GetPhysicalDeviceProperties2
venus: Enable VK_KHR_shader_integer_dot_product
venus: Enable VK_KHR_shader_non_semantic_info
venus: Enable VK_KHR_shader_terminate_invocation
venus: Enable VK_KHR_zero_initialize_workgroup_memory
venus: Enable VK_EXT_subgroup_size_control
venus: Enable VK_EXT_texel_buffer_alignment
venus: Enable VK_EXT_ycbcr_2plane_444_formats
venus: Enable VK_KHR_format_feature_flags2
venus: Enable VK_EXT_private_data
venus: Enable VK_EXT_tooling_info
venus: Document VK_EXT_texture_compression_astc_hdr support
venus: Enable VK_EXT_pipeline_creation_feedback
venus: Rename some feature/property structs
venus: Refactor VN_ADD_TO_PNEXT
venus: Add macros VN_SET_CORE_*
venus: Fix features/properties for unavailable extensions
venus: Use VkPhysicalDeviceVulkan13{Features,Properties}
venus/queue: Rename some local vars
venus: Change signature of vn_get_fence_feedback_cmd
venus: Add vn_queue_wait_idle_before_present()
venus: Refactor vn_command_buffer_builder temp storage
venus: Enable VK_KHR_synchronization2
venus: Enable Vulkan 1.3
Charmaine Lee (6):
svga: fix mksstats build
svga: fix SetConstantBufferOffset command opcode
svga: compare graphics shader stages against COMPUTE
mesa/st: fix reference to nir->info after nir_to_tgsi
svga: support TGSI_SEMANTIC_TEXCOORD in swtnl draw context
svga: fix invalid component access of domain location
Chia-I Wu (83):
vulkan: sort ALLOWED_ANDROID_VERSION by api levels
vulkan: fix ALLOWED_ANDROID_VERSION for api level 26
vulkan: fix ALLOWED_ANDROID_VERSION up to api level 29
vulkan: extend ALLOWED_ANDROID_VERSION up to api level 31
turnip: add tu_common.h as the common header
turnip: remove includes that are already in tu_common.h
turnip: add tu_drm.h
turnip: add tu_suballoc.h
turnip: update tu_cs.h
turnip: add tu_query.h
turnip: add tu_image.h
turnip: add tu_formats.h
turnip: update tu_descriptor_set.h
turnip: add tu_shader.h
turnip: add tu_pipeline.h
turnip: add tu_clear_blit.h
turnip: add tu_dynamic_rendering.h
turnip: add tu_lrz.h
turnip: add tu_pass.h
turnip: add tu_wsi.h
turnip: update tu_autotune.h
turnip: add tu_device.h
turnip: add tu_cmd_buffer.h
turnip: add tu_android.h
turnip: update tu_util.h
turnip: move away from tu_private.h
turnip: remove tu_private.h
turnip: remove headers from libtu_files
turnip: use SPDX-License-Identifier
vulkan: disallow VK_KHR_performance_query on android
turnip: fix a use-after-free in autotune
turnip: remove unused member in tu_submission_data
turnip: handle fence wrapping in autotune
freedreno/pps: improve interaction with turnip
turnip: lower the queue priority to 1
turnip: pCreateInfo->pPoolSizes[i] is wordy
turnip: trim down host size of tu_descriptor_pool
turnip: trim down bo size of tu_descriptor_pool
turnip: improve perfetto sync_timestamp
turnip: fix a missing trace_end_gmem_clear
turnip: move trace_start_gmem_store before cond exec
turnip: fix gem_store tracepoint
turnip: tidy up tracepoint header includes
util/u_trace: include the generated header first
util/u_trace: add PERFETTO HeaderScope
turnip: add tu_clone_trace_range helper
turnip: convert tu_perfetto_state to a stack
turnip: clean up tu_perfetto.h
turnip: rename some tracing stages
turnip: add cmd_buffer tracepoint
turnip: improve tracing of secondary cmd buffers
ir3: fix predicate splitting in scheduler
util/perf: move u_perfetto to here
util/perf: add cpu_trace.h
util/perf: fix multiple tracepoints in a scope
util/perfetto: add a simple C wrapper for track events
util/perf: support and prefer perfetto for cpu trace
venus: use MESA_TRACE_*
pps: enable track_event in system.cfg
docs: update perfetto with the latest status
vulkan/wsi: add cpu tracepoints to swapchain functions
vulkan/wsi: add cpu tracepoints for internal waits
turnip: add some cpu tracepionts
freedreno: get cpu timestamp again after FD_TIMESTAMP
util/perf: ignore ut->enabled for iterators
util/perf: remove u_trace::enabled
util/perf: add u_trace_instrument
util/perf: simplify u_trace_instrument
util/perf: use ALWAYS_INLINE for tracepoints
turnip: reduce MAX_STORAGE_BUFFER_RANGE
vulkan: update ALLOWED_ANDROID_VERSION for api level 33
subprojects: uprev perfetto to v29.0
turnip: fix error handling for tu_queue_init
turnip: add tu_physical_device::submitqueue_priority_count
turnip: add support for VK_KHR_global_priority
turnip: use vk_buffer
turnip: use vk_descriptor_set_layout
vulkan: update comments to device enumeration callbacks
turnip: fix kgsl tu_enumerate_devices return code
turnip: advertise VkExternalFenceProperties correctly
venus: fix VkImageFormatListCreateInfo for AHB
freedreno/pps: use 64-bit reads when possible
freedreno/pps: loop countables by references
Christian Gmeiner (18):
lima/ci: There is no need to redefine HWCI_TEST_SCRIPT
lima/ci: Make use of .lava-piglit
isaspec: Move isa_decode(..) declaration
ci: include etnaviv support in ARM64 container
ci: switch to mkbootimg.py
ci/bare-metal: introduce BM_MKBOOT_PARAMS
ci/etnaviv: add GC7000 support
etnaviv: Remove possibility to force MSAA
etnaviv: rs: Color resolve works
etnaviv: rs: Directly call etna_try_rs_blit(..)
etnaviv: rs: msaa: Set cache mode for SMALL_MSAA
etnaviv: Update headers from rnndb
etnaviv: blt: Add color resolve support
etnaviv: blt: Directly call etna_try_blt_blit(..)
Revert “etnaviv: completely turn off MSAA”
etnaviv: Support negative float inline immediates
etnaviv: nir: lower extract byte/word
etnaviv: Hide MSAA support behind debug flag
Christophe (2):
zink: add profile documentation
Zink: add Zink profiles file
Connor Abbott (49):
tu: Decouple vertex input state from shader
tu: Implement VK_EXT_vertex_input_dynamic_state
tu: Fix sysmem depth attachment clear flushing
ir3/spill: Fix extracting from a vector at the end of a block
nir: Free instructions more often
tu/lrz: Fix multiple subpass case with secondaries
tu/lrz: Fix multiple depth attachment case with secondaries
tu: Fix descriptor set size bounds
tu: Don’t preload variable-count descriptors
tu: Initial implementation of VK_EXT_inline_uniform_block
tu: Also set SP_FS_MRT_REG for unused attachments
tu: Fix case where vertex input is set but not vertex buffers
tu: Remove unused need_indirect_descriptor_sets
tu: Group pipeline state based on VkPipeline*StateCreateInfo
tu: Rename RB_MSAA_CNTL to RB_BLIT_GMEM_MSAA_CNTL
tu: Always set RB_BLIT_GMEM_MSAA_CNTL when clearing GMEM
tu: Make MSAA emission always dynamic
tu: Split out primtype calculation for tess
ir3: Don’t use msaa key for a6xx+
tu: Nuke tu_pipeline_cache
tu: Don’t use layer_zero/view_zero in shader key
tu, ir3: Move multi_pos_output to ir3_shader_variant
tu: Don’t use output state to compute render components
tu, ir3: Determine dual-src blend from shader for FS outputs
tu: Emit *_OUTPUT_CNTL1 as part of blend state
tu: Move no_earlyz computation to blend/msaa state
tu: Split up prim order computation
tu: Use vk_pipeline_shader_stage_to_nir
tu: Abstract driver-specific const state
tu: Initial implementation of VK_EXT_graphics_pipeline_library
tu: Fix maxPerStageDescriptorUpdateAfterBindInputAttachments
tu: Set textures_used for input attachments correctly
ir3/analyze_ubo_ranges: Account for reserved consts
Revert “freedreno,ir3: rename Z_CLAMP_ENABLE to Z_CLIP_DISABLE”
freedreno/a6xx, tu: GRAS_CL_CNTL::UNK5 is Z_CLAMP_ENABLE
tu: Fix setting RB_DEPTH_CNTL::Z_CLAMP_ENABLE
ir3: Delete outputs from fixup_regfootprint()
ir3: Move fixup_regfootprint() to ir3_collect_info()
ir3/analyze_ubo_ranges: Account for reserved consts better
ir3: Add missing cat5 encoding to asm parser
tu: Fix param_stride placement
tu: DS primitive stride does not use patch control points
tu: Implement extendedDynamicState2PatchControlPoints
freedreno: Add LABEL flush
tu: Add compute shader instrlen workaround
tu: tu: Clear patchControlPoints dirty state with static patchControlPoints
tu: Use right enum for compute active_shader_stages
tu: Fix binding NULL descriptor sets
ir3: Don’t save/restore disasm string pointer
Constantine Shablya (3):
nir: add a pass to remove non-uniform access qualifier when the operands are uniform
radv: use nir_opt_uniform_access
anv: use nir_opt_uniform_access
Corentin Noël (9):
virgl/ci: Update virglrenderer
ci: disable the freedreno farm.
virgl/ci: Update virglrenderer
gallivm: avoid the use of an uninitialized value
virgl: Add TEXTURE_SHADOW_LOD capability support
virgl: Add nir_lower_tex pass
mesa/main: do not copy the exact size of the string
gallium/hud: use snprintf(…, “%s”, …) instead of strncpy
ci: Remove Wno-error=stringop-truncation from debian-arm64-asan
Damian Korczowski (1):
d3d12: Fix placed footprint of subresources
Daniel Schürmann (20):
nir/opt_algebraic: a & ~a -> 0
aco: use std::vector::reserve() more often
aco/live_var_analysis: implement faster merging of live_out sets for some cases
aco/optimizer: disallow can_eliminate_and_exec() with s_not
aco/optimizer: do can_eliminate_and_exec() optimization later
aco/optimizer: optimize s_and(exec, s_and(x, y)) more aggressively
aco/optimizer: change inverse_comparison in-place
radv/rt: create separate radv_rt_pipeline struct
radv/rt: inline radv_rt_pipeline_create_() helper into radv_rt_pipeline_create()
aco: simplify operands_offset calculation in create_instruction()
aco: implement custom memory resource
aco: use monotonic_buffer_resource for instructions
aco: implement allocator_traits for monotonic_allocator<T>
aco/opt_value_numbering: use monotonic_allocator for unordered_map
aco/spill: Fix spilling of Phi operands
aco/ra: only rename fixed Operands if the copy-location matches
aco: change thread_local memory resource to pointer
nir: add AMD RT traversal intrinsics
radv/rt: create traversal shader independent from main shader
radv/rt: overwrite hit args with undef in case of a miss
Daniel Stone (4):
ci: Use mold for x86-64 and AArch64 builds
CI: Collabora farm down for maintenance
CI: Re-enable Collabora devices
Revert “panfrost/ci: Disable t720 jobs”
Danilo Krummrich (10):
nv50/ir/nir: add conversion ops for bit width < 32
nv50/ir/nir: convert to 32 bit for all OP_SET opcodes
nv50/ir/nir: avoid 8/16 bit dest regs for OP_MOV
nv50/ir: add isUnsignedIntType() and isIntType() helpers
nv50/ir/nir: convert 8/16 bit src to 32 bit for {i,u}2f64
nv50/ir/nir: always round towards zero for f2i/f2u
nv50/ir: add intermediate conversion for f2{i,u}{8,16}
nv50/ir: split and cvt 64bit integers for {i,u}2{i,u}{8,16}
nv50/ir: handle S8/S16 integers converting to S64
nv50/ir: handle U8/U16 integers converting to U64
Danylo Piliaiev (26):
tu: Flush depth on depth img transition from undef layout
tu: Disable LRZ write when alpha-to-coverage is enabled
freedreno: Disable LRZ write when alpha-to-coverage is enabled
tu: Assert that if draw state is enabled it has valid iova
tu: Switch to userspace iova allocations if kernel supports it
tu: Enable bufferDeviceAddressCaptureReplay
tu: Disable userspace iova allocations
tu: Implement VK_EXT_attachment_feedback_loop_layout
freedreno: PC_SO_STREAM_CNTL_STREAM_ENABLE has per-stream enable bits
tu: Fix streamout with tess_use_shared
tu: Update HS_WAVE_INPUT_SIZE formula
util/u_trace: Add locking for ctx_list
freedreno: Name more *_DBG_ECO_CNTL regs
freedreno: Add all variable magic regs to device-info tables
tu: Use newly obtained magic reg values
tu: Trivially expose VK_EXT_rasterization_order_attachment_access
ir3: Prevent reordering movmsk with kill
turnip: implement VK_EXT_multi_draw
turnip: Implement VK_EXT_mutable_descriptor_type
tu: Expose Vulkan 1.3
tu: Do not DCE unused output vars used for transform feedback
tu: Lazily init VSC to fix dynamic rendering in secondary cmdbufs
tu: Reset whether there is DS resolve for dynamic subpass
tu: Fix the size of patch control points state
freedreno: Add ‘replay’ tool which allows to replay cmdstreams
freedreno/fdl: Increase alignment for UBWC images
Dave Airlie (85):
gallivm: fix printf hook for cached shaders.
llvmpipe: add shader clock support
lavapipe: enable shader clock
draw: fix up jit type creation for gs/tcs/tes
llvmpipe/gallivm/draw: introduce a buffer type.
zink: add defines for the shader stage templates.
virgl: abstract virgl shader stages from pipe shader stages.
svga: compare shader type against compute not tess eval.
gallium/tgsi: reorder pipe shader type defines.
gallium/iris/crocus: collapse a bunch of conversion functions.
gallium: fixup some inconsistent uses of enum pipe_shader_type.
gallium: use gl shader types as the basis for the gallium ones
gallivm/nir/st: lower image derefs in advance.
lavapipe: lower images to non-derefs in vulkan side
lavapipe: scan shader for info before lowering images.
llvmpipe/ci: update ci results for clover.
draw: don’t touch info values that aren’t valid.
nir_to_tgsi_info: drop const_buffers_declared
crocus: sync performance monitor code with iris.
vulkan: update rest of the headers to v1.3.225
gallivm: drop unused parameter to lp_build_sample_aos
gallivm/sample: remove unused base parameter from dynamic callbacks.
gallivm: don’t indirect image/sampler destroy.
llvmpipe: finish rendering before flushing frontbuffer resources.
radv: move to using common record_result.
turnip: use common command record result.
panvk: use common command buffer record result.
dozen: move to use common command buffer result code.
lavapipe: fix 3d depth stencil image clearing.
gallivm: add atomic 32-bit float support
llvmpipe: export GL_NV_shader_atomic_float
lavapipe: export VK_KHR_shader_atomic_float
docs: add new llvmpipe/lavapipe atomic float extensions
lavapipe: use slow clear path if conditional rendering.
llvmpipe: handle different blocksizes for sampler/image views
lavapipe: take layers into account around render surface creation.
lavapipe: handle view mask layer count properly for begin rendering.
llvmpipe: memset empty images in the key
llvmpipe: bind sampler views/images properly.
gallivm: handle llvm coroutines for llvm > 15
gallivm: fix buffer_type for LLVM 15
lavapipe: add fmin/fmax to image lowering.
gallivm/nir: fix fmin/fmax translation
gallivm/nir: bitcast when non-float ptr type.
llvmpipe/fs: start passing explicit context pointer type.
llvmpipe/fs: convert thread data ptr to opaque ptr friendly apis
llvmpipe/fs: convert linear context to opaque pointers friendly
llvmpipe/cs: convert cs context to opaque friendly api
llvmpipe/cs: convert cs thread data to opaque friendly api
llvmpipe/fs: fix invocations access for opaque ptrs.
llvmpipe/setup: move setup code to explicit pointers.
llvmpipe/cs: move compute code to explicit pointer types
gallivm/struct: add opaque ptr friendly pointer accessors.
llvmpipe/fs: add mask_type for mask_store accesses.
llvmpipe/fs: pass explicit mask_type into interp code.
llvmpipe/fs: port depth code to opaque pointer api
llvmpipe/fs: add sample position type to the interp interface
llvmpipe/fs: pass mask type to alpha to coverage handler
llvmpipe/fs: use explicit api in viewport code.
llvmpipe/fs: handle explicit types around blending and c/zs bufs calcs
llvmpipe/fs: cleanup some remaining mask handling and reuse types
llvmpipe/fs: convert outputs handling to explicit api
gallivm/nir: move to explicit pointer interfaces.
gallivm/nir: fixup atomic path for explicit pointers.
gallivm/sample: move border color load to explicit pointers
gallivm/llvmpipe: hand sample position type in for loading.
llvmpipe/fs/linear: port to explicit pointers.
draw: fix gs/tes explicit pointer handling
draw: handle primid for tess being a different pointer type
gallivm/tgsi: port tgsi to explicit types.
gallium/tgsi: handle temps/outputs array.
vulkan: update beta and video headers to 1.3.230
llvmpipe/tests: port to new pointer interfaces.
gallivm/llvmpipe: add opaque pointers support to sampler
draw/llvmpipe: move texture/sampler/image member load to opaque.
draw/llvmpipe: add way to return pointer types to generic code.
gallivm/sample: use retrieved types to do opaque pointer loads.
gallivm: remove legacy pointer_get apis
gallivm/sample: move some first_level/last_level calcs out
gallivm/nir: drop some unused struct members.
gallivm/sample: refactor multisample offset calcs code.
glsl/types: fix dword slots calc for float16 matricies.
clover/llvm: add kernel arg info for opaque pointers
nir/lower_bool_to_int32: add support for lowering functions.
gallivm: add coro malloc hooks earlier and always.
David Heidelberg (71):
ci: compress LAVA rootfs with zstd instead of gzip
ci: replace gzip usage with zstd where posible
ci/bin: ignore Gitlab GQL cache
ci: Turn off the entire Lima farm (devices report out-of-space)
ci: move DXVK instalation outside of x86_test-vk
ci: make shellcheck happy on dxvk script
ci: separate wine setup into own script
ci: Windows runner is experiencing DNS issues; disable Microsoft farm
ci: prepare piglit-traces for WINE and DXVK
ci/lavapipe: implement traces
docs/ci: show how to run traces locally
ci/lavapipe: wine flakes, switch to manual for now
ci: use apt-get in x86_test-vk instead of apt
ci: do not install i386 sub-architecture in VK images
ci: traces: update freedreno and broadcom to brotli compressed traces
ci: GraphQL was already implemented in ci_run_n_monitor.py
ci: implement stress testing jobs in ci_run_n_monitor.py
ci: fix leftover tag in image-tags.yml
ci: rename debian-gallium to debian-build-testing
ci: move lava-test into debian-build-testing
ci: make shellcheck happy about .gitlab-ci/container/ directory
ci: use shellcheck for .gitlab-ci/container/ directory
ci: drop last bits of wine32
ci: bump cross compilation to LLVM 13 where possible
ci: uprev piglit 2022-08-30
ci: set venus on lavapipe to manual due to flakes
ci: print env as other setups do
ci/lava: print set-job-env-vars.sh as other setups do
ci/traces: do not keep a cache, which will be wiped a few steps later
ci/test: collapse printing env
ci/lava: collapse printing env
ci/freedreno: convert traces to new YAML format
ci/virgl: convert traces to new YAML format
ci/llvmpipe: convert traces to new YAML format
ci/lavapipe: convert traces to new YAML format
ci/broadcom: convert traces to new YAML format
ci/panfrost: convert traces to new YAML format
ci/radeonsi: convert traces to new YAML format
ci/intel: convert traces to new YAML format
ci/i915: convert traces to new YAML format
ci/crocus: convert traces to new YAML format
ci: check traces.yml files with yamllint
ci: performance traces: make use of no-perf label
ci: export whole results/ directory for all traces jobs
ci: split ci_run_n_monitor into script and shared parts
ci: introduce update_traces_checksum.py
ci: uprev piglit 2022-09-08
ci: use xargs instead of find -exec
ci: add jq utility
ci/traces: remove first line with YAML version to prevent failure
ci/radeonsi: drop glmark2 terrain trace
ci/panfrost: drop glmark2 terrain trace
ci/intel: drop glmark2 terrain trace
ci/lava: add wine and apitrace into amd64 rootfs container
ci/lava: prepare wineprefix for GL and DXVK
ci/dxvk: fix DXVK 64-bit only wine setup
ci: also handle default wine rootfs (for testing)
ci/traces: prevent showing wine instalation dialog
ci/radeonsi: add traces for radeonsi Zork
ci/amd: move radeonsi in amd directory
ci: uprev DXVK to 1.10.3
ci/traces: Blender demo (Cube Diorama) flakes on Intel APL
ci/freedreno: add Guilherme Gallo into restricted traces access list
ci/panfrost: deduplicate gitlab-ci.yml
ci/panfrost: enable piglit-gl on g52 again and deparalelize
ci/panfrost: Humus Portal trace got fixed, update checksum
ci/panfrost: re-enable traces on t760
ci/linker: update mold to 1.6 and enable on s390x
ci/zink: rename zink job to zink-lvp to better describe it
ci/freedreno: disable antichambers trace
ci/update_traces_checksum.py: check if checksum is in the array, not it’s value
David Riley (1):
drm-shim: Allow drm-shim to work with glibc fortify.
Dawn Han (11):
Update venus-protocol to add extension `VK_VALVE_mutable_descriptor_type`
Increase enum type in vn_descriptor_set.
Update bitset when init descriptor layout.
Track bitset when create descriptor pool
Enable .VALVE_mutable_descriptor_type in physical_device
venus: support the promoted VK_EXT_mutable_descriptor_type
venus: Update mutable descriptor struct type
venus: extend lifetime of push descriptor set layout
venus: extend VkPipelineLayout lifetime for batched VkCmdPushConstants()
venus: implement vkCmdPushDescriptorSetWithTemplateKHR
venus: enable VK_KHR_push_descriptor
Diogo Ivo (1):
nouveau: treat DRM_FORMAT_INVALID as implicit modifier
Dmitry Baryshkov (1):
freedreno/registers: update hdmi registers to add more 8x74 regs
Dmitry Osipenko (11):
util/disk_cache: Add option to disable compression
util/disk_cache: Enable testing of uncompressed caches
util/disk_cache: Append to disk_cache_load_cache_index() with _foz
util/disk_cache: Move struct cache_entry_file_data to the disk_cache_os.h
util/disk_cache: Make disk_cache_os.h usable by C++ code
util/disk_cache: Add new mesa-db cache type
virgl: Fix unmapping of blob resources
llvmpipe: Align persistent mappings to page size
ci: Bump crosvm version
ci: Update virgl-iris-traces checksums
ci/virgl: Enable virgl-iris-traces
Dylan Baker (47):
docs: reset new features
docs: add release notes for 22.1.5
docs: Add sha256 sum for 22.1.5
docs: add release notes for 22.1.4
docs: Add sha256 sum for 22.1.4
docs: update calendar and link releases notes for 22.1.4
docs: update calendar and link releases notes for 22.1.5
docs: update calendar for 22.2.0-rc1
docs: add release notes for 22.2.0
docs: Add sha256 sum for 22.2.0
docs: update calendar and link releases notes for 22.2.0
docs: Add calendar entries for 22.2 release.
intel/genxml: use a single pattern for res
intel/genxml: use a set for lookups
intel/genxml: don’t use parens with python assert statement
intel/genxml: add type annotations to gen_sort_tags.py
intel/genxml: use `a not in {x, y}` instead of `a != x or a != y`
intel/genxml: remove unused variable in gen_sort_tags.py
intel/genxml: don’t overwrite the input of gen_sort_tags in place
intel/genxml: add ‘nonzero’ to gen_sort_tags
intel/genxml: add a validation mode to gen_sort_tags
intel/genxml: run gen_sort_tags on all of the xml
meson: run genxml sort tests
docs: add release notes for 22.2.1
docs: Add sha256 sum for 22.2.1
docs: update calendar and link releases notes for 22.2.1
intel/genxml: write a space before the ‘/>` closing tag
intel/genxml: re-process with space before `/>`
intel/genxml: remove newlines between xml islands
intel/genxml: re-process with extra whitespace removed
intel/genxml: use ElementTree.write and .indent
intel/genxml: reprocess xml with elementree output
intel/genxml: split the processing code up
intel/genxml: use a main() function
intel/genxml: use Path.replace instead of unlink and rename
docs: add release notes for 22.2.2
docs: Add sha256 sum for 22.2.2
docs: update calendar and link releases notes for 22.2.2
docs: Extend calendar entries for 22.2 by 2 releases.
util/indicies: move common static functions to private header
util/indicies: use itertools.product instead of deeply nested loops
util/indicies: write a file with u_indicies_gen.py
util/indicies: simplify some of u_indicies_gen.py
util/indicies: use itertools.product in u_unfilled_gen.py
util/indicies: convert u_unfilled_gen.py to write a file
util/glsl2spirv: fix type error in argument handling
util/glsl2spirv: fix appending extra flags
Ella Stanforth (2):
util: fix missing fcntl.h on musl
vulkan: wsi: fix musl build
Emma Anholt (108):
ci/bare-metal: Re-open serial and everything after test phase timeout.
zink: Take the tiling path for resources with modifiers.
zink: Replace the “optimal_tiling” flag with a “linear” flag instead.
ci/zink: Re-enable a630 zink-on-turnip traces job using gbm as the backend.
ci/swrast: Add some flakes I’ve noticed in the IRC channel.
ci: Add testing of the khr-single tests.
ci: Upgrade deqp-runner to 0.15.0.
zink: Make sure that we keep the existing ici pNext chain on inserts.
tu: Move the vkCreateImage format list checks to helper functions.
tu: Treat viewFormatCount==0 as no format list.
tu: Use the format list to decide whether we can do UBWC with MUTABLE.
ci/tu+zink: Re-enable the traces that were asserting about UBWC compatibility.
ir3: Suppress disasm of internal shaders unless IR3_SHADER_DEBUG=internal.
tu: Only emit as many bindless regs as we have seen descriptor sets.
tu: Only emit as many VPC interp/repl regs as will be referenced.
tu: Only emit FS output regs for as many MRTs as we have (but at least 1).
tu: Emit only as many VBs as we’ve ever seen bound on the command buffer.
ci/tu: Add another cwe_after_bind fail that appeared in the reshuffle.
ci: Move ‘never’ rules includes above “on_success” rules includes.
ci: disable the freedreno farm.
freedreno/regs: Add a bit of documentation of what SKIP_IB2 does.
turnip: Fix enabling of IB2 skipping.
nir/lower_mediump: Lower FS outputs to 16-bit when the value was upconverted.
nir_to_tgsi: Add support for TG4 with explicit offsets.
nir_to_tgsi: Add support for 64-bit fsign/isign.
nir_to_tgsi: Add support for demote, is_helper_invocation, and subgroup ops.
nir: Make nir_lower_discard_if() handle demotes and terminates, too.
nir_to_tgsi: Use nir_lower_discard_if for demote_if.
nir_to_tgsi: Add support for bindless textures and images.
turnip: Make sure bandwidth config per pixel starts from 0.
freedreno/ir3: Move chip-specific nir compiler options to C code.
freedreno/ir3: Switch to NIR for a3xx/a4xx’s vertex id lowering.
gallium,glsl: Delete PIPE_CAP_VERTEXID_NOBASE and lower_vertex_id.
nir: Add a pass to lower mediump temps and shared mem.
spirv: Mark phis as mediump instead of directly lowering them to 16 bit.
turnip: Enable lowering of mediump temps/CS shared to 16-bit.
turnip: Treating non-d/s-write pipelines as not having d/s feedback loops.
mesa: Remove PIPE_CAP_CS_DERIVED_SYSTEM_VALUES_SUPPORTED/lower_cs_derived.
zink: Don’t upload shader immediate arrays through UBO 0.
zink: Don’t lower indirect derefs of temp arrays.
Revert “ci: disable the freedreno farm.”
ci: Add support for Jetson TK1.
nouveau: Fix compiler warnings about silly address checks in ir_print.
ci/turnip: Add missing a618 full-run bypass fails.
turnip: Only emit descriptor loads for active stages in the pipeline.
freedreno/ir3: Consistently lower mediump inputs to 16-bit (when we can).
nir/lower_mediump_vars: Don’t lower mediump shared vars with atomic access.
mesa: Lower mediump temps and CS shared when the driver supports FP16+INT16.
turnip: Add some missing LRZ disable debug.
turnip: Ignore dynamic color write enables past our number of attachments.
turnip: Don’t look at RB.Z_READ_ENABLE for setting LRZ.Z_TEST_ENABLE.
turnip: Skip rather than invalidate LRZ on gl_FragDepth writes.
turnip: Ignore pDescriptorCounts[] for non-variable-count layouts.
turnip: Keep a host copy of push descriptor sets.
ci/turnip: Use all 9 a618 runners at once for VK testing.
ci/turnip: Bump the full-run a618 runner count to 3.
ci/turnip: Re-enable the compressed cubemap tests.
ci/turnip: Allow running spirv_ids_abuse in full VK runs.
ci/turnip: Drop a couple of spillall skips.
ci/turnip: Move some 15-second-ish test skips to pre-merge skips.
ci/nouveau: Drop BM_POE_TIMEOUT.
ci/nouveau: Rearrange job setup variables.
ci/nouveau: fix up Jetson Nano
ci/nouveau: Update gm20b xfails.
ci: Update kernel to drm-next-2022-08-12-1
turnip: Fix leak of autotune fence BOs.
turnip: Add TU_DEBUG=bos to print stats of BOs live at submit time.
turnip: Fix the “written stencil is unmodified” check.
turnip: Use the simplified stencil write flags for the LRZ-allowed check.
ci/zink+turnip: Add a manual full run of the dEQP CTS.
turnip: Fix busy-waiting on syncobjs with OS_TIMEOUT_INFINITE.
util/dag: Move the callback function pointer to the state.
util/dag: Add a validation function.
freedreno/ir3: Validate our scheduling DAGs after construction.
nir/nir_opt_copy_prop_vars: Don’t leak dynarray memory during the pass.
nir/vars_to_ssa: Always do OOB load/store removal.
glsl: Remove lower_output_reads.
glsl: Remove do_set_program_inouts.
glsl: Remove opt_array_splitting.
glsl: remove opt_structure_splitting.
glsl: Remove lower_vec_index_to_swizzle.
ci/iris: Update iris traces checksums.
turnip: Don’t use the dynamic color write enable during non-dynamic.
ci/zink: Clear stale xfails for turnip.
zink: Skip border color clamping for compressed formats.
zink: Enable ASTC texture format translation.
zink: Map ETC1 to ETC2 to avoid uncompressing in the frontend.
ci/zink: Add some more flakes for turnip.
zink: Fix RelaxedPrecision decoration of texture samples.
zink: Decorate mediump outputs as RelaxedPrecision.
turnip: Add a perf_debug for feedback-related performance traps.
turnip: Move the ubwc_possible check before mutable formats.
turnip: Add perf_debug for UBWC being disabled due to mutable formats.
turnip: Add perf debug for more UBWC-disable cases that we could support.
zink: Fix dummy CB path decision for VK_EXT_cwe presence.
turnip: Be sure we blit depth, not stencil, for Z32FS8 -> Z32F resolves.
nir/opt_phi_precision: Fix missing swizzles when narrowing phi srcs.
turnip: Enable LRZ testing (not writing) in the presence of discards.
ci/freedreno: Update CivV trace expectation.
ci/freedreno: Update known flakes/timeouts.
turnip: Fix reservation for indirect compute’s IR3_DP_SUBGROUP_ID_SHIFT.
zink: No need to use a 2-sample dummy image for bindless without null descs.
zink: Lazily allocate the dummy surfaces.
zink: Enable mesa/st frontend shader caching.
rusticl: Fix the invalid memory migration flags check.
iris: Disable GLSL lower_const_arrays_to_uniforms.
gallium: update docs about PIPE_CAP_PREFER_IMM_ARRAYS_AS_CONSTBUF.
ir3/ra: Make sure we don’t pick a preferred reg overflowing the file.
Eric Engestrom (56):
bin/gen_release_notes.py: bump advertised vulkan version to 1.3
pvr: fix memleak in error paths
vk/device-select-layer: fix .sType of VkPhysicalDeviceGroupProperties
docs/features: add missing extensions supported by anv
docs/features: add missing extensions supported by lavapipe
docs/features: add missing extensions supported by radv
docs/features: add missing extensions supported by turnip
docs/features: add missing extensions supported by venus
docs/features: start tracking extensions supported by dozen
docs/features: start tracking extensions supported by panvk
docs/features: start tracking extensions supported by powervr
docs/features: drop unsupported VK_KHR_display & VK_KHR_get_display_properties2 for lavapipe
ci: rename GitHub CI workflow from `ci` to `macos` to be a bit more explicit about what it covers
meson: drop duplicate `lib` in lib name
wsi/x11: fix memleak in wsi_x11_connection_create()
aco: drop unused variable
anv: convert assert into unreachable to avoid fallthrough error
meson: replace manual compiler flags with meson arguments
vc4: introduce VC4_DBG() macro to make VC4_DEBUG checks consistent
v3d: introduce V3D_DBG() macro to make V3D_DEBUG checks consistent
wayland: avoid writing interface names as free-form strings
vc4: drop dead qir_POW() helper
v3dv: implement VK_EXT_shader_module_identifier
docs: move rusticl readme into docs/
broadcom: fix dependencies in static_library() calls
docs: add release notes for 22.1.6
docs: update calendar and link releases notes for 22.1.6
docs: add release notes for 22.1.7
docs: update calendar and link releases notes for 22.1.7
ci: unexport local variable (and fix formatting)
ci: bump mold to 1.5
docs/release-calendar: add 22.3 schedule
v3dv: drop error overwrite
vc4: don’t lower uadd_carry
vc4: don’t use imprecise_32bit_lowering for idiv lowering
vc4: pre-compile shaders to make up for the lack of draw calls in shader-db
vc4: use PIPE_MASK_RGBA name instead of its value 0xf
vc4: send shaderdb output through KHR_debug
vc4: mark piglit copypixels-(draw-)sync as flaky
VERSION: bump to 22.3.0-rc1
.pick_status.json: Update to 1174f376096ed6ceebb0fb2810456f1501a68df7
zink: add missing build_id linker args
vk/runtime: drop incorrect UNUSED annotation
v3dv: avoid freeing already-freed memory
VERSION: bump for 22.3.0-rc2
.pick_status.json: Update to 9bd11f65238ce101bf846f5528f9088630e983f7
ci: avoid triggering vc4 & v3d tests on v3dv-only MRs
VERSION: bump for 22.3.0-rc3
.pick_status.json: Update to f2e535e4fed5bdc13e11a443316a4b77cd5eb81a
v3d(v): account for debug flags when using the cache
.pick_status.json: Mark 56bd81ee21cb42e4a5afa2939514b570a1283754 as denominated
VERSION: bump for 22.3.0-rc4
.pick_status.json: Update to 22be0d09a005b4b955a46b65a919cfd786d6814f
.pick_status.json: Mark 470fbb35efe1935242b346427ec0fa22b40fff2b as denominated
commit_in_branch.py: add support for checking staging branches
docs: add release notes for 22.3.0
Erico Nunes (1):
ci: enable lima farm
Erik Faye-Lund (226):
docs: fixup link to virgl docs
zink: add have_D32_SFLOAT_S8_UINT boolean
zink: do not use VK_FORMAT_D32_SFLOAT_S8_UINT without checking
zink: remove needless check
glsl/tests: do not perform eol-conversion on windows
zink: type_main -> type_void_func
zink: add spirv_builder_function_call
zink: wrap discard in a function
zink: fix conditions for draw-parameters
zink: fixup indent in caps-check
mesa/main: simplify implmementation of _mesa_is_format_etc2
mesa/main: simplify implementation of _mesa_is_format_astc_2d
mesa/st: simplify st_compressed_format_fallback
mesa/st: avoid double-mapping if both images are the same
mesa/st: do not use memcpy when using compressed fallback
mesa/st: add context-flag for bptc-support
mesa: add format-helper for bptc
mesa: add _mesa_unpack_bptc-function
mesa/st: implement fallback for bptc
mesa/st: enable bptc extension with fallback
zink: allow X32 -> A32
mesa/main: remove always-true define
mesa/main: add fp16-versions of bptc decompression functions
mesa: fall-back to fp16 for bptc-textures
gallium/u_transfer_helper: clean up boolean flags
gallium/u_transfer_helper: add in-place interleave flag
zink: use full transfer-helper api
gallium/u_transfer_helper: hide deinterleave helpers
mesa/st: also override mip filter for integer textures
mesa/st: always force integer filtering to nearest
mesa/st: force nearest-filtering for fp32 textures
zink: request forcing of fp32-samplers to nearest when needed
mesa/st: do not blit when using compressed fallback
zink: clamp miplodbias when creating sampler
zink: add ntv support for demote
zink: add spirv_builder support for is_helper_invocation
zink: add ntv support for is_helper_invocation
zink: expose demote when supported
zink: lower discard/demote depending on derivatives
Revert “Revert “ci: set venus on lavapipe to manual due to flakes””
mesa/st: use _mesa_generate_mipmap for fallback-formats
mesa/st: do not fallback to srgba formats for dxt
util: allow unpacking less than a block from dxt
mesa/st: add context-flags for s3tc
mesa: add format-helpers for s3tc
mesa/main: add _mesa_unpack_s3tc
mesa/st: implement fallback for s3tc
mesa/st: enable s3tc extensions with fallback
v3d: do not pretend to fake rgtc-support
vc4: respect z-offset in tiled blits
vc4: do not attempt to do deep tiled blits
docs/zink: remove bptc from required formats for gl4.2
docs/zink: document rgtc requirement
mesa/st: add context-flag for rgtc
mesa: add format-helper for rgtc
util/format: fix broken indentation
util/format: allow unpacking less than a block from rgtc
util/format: implement rgtc -> r8 / r8g8 unpack
mesa/main: add _mesa_unpack_rgtc
mesa/st: implement fallback for rgtc
mesa/st: do not fall back to uncompressed for rgtc
mesa/st: enable rgtc extension with fallback
panfrost: do not fake rgtc-support
docs: update staus of mark GL_ARB_texture_compression_bptc
lima: don’t store width in resource-level
lima: do not align width/height for non-shared resources
mesa/st: add context-flag for latc
mesa: add format-helper for latc
mesa/main: add support for latc in _mesa_unpack_rgtc
mesa/st: implement fallback for latc
mesa/st: do not fall back to uncompressed for latc
mesa/st: enable latc extensions with fallback
freedreno: do not fake rgtc-support
u_transfer_helper: rip out fake_rgtc code
mesa/st: always use normalized coords for samplers
mesa/st: always use normalized coords for samplers
mesa/st: always use normalized coords for samplers
zink: assert on unnormalized texcoords
docs: add an amber article
zink: emulate latc formats with rgtc
zink: fix luminance clears
zink: fixup indent
zink: refactor swizzle-clamping code
zink: fix luminance/luminance-alpha emulation
zink: correct emulation of luminance-alpha formats
ci/crocus: update ci results
mesa/main: fix broken indent
mesa/main: don’t copy signed rgtc via float
docs: fixup broken rst syntax
gallium/u_threaded_context: remove stale comment
gallium: normalized_coords -> unnormalized_coords
zink: fix broken pool-alloc consolidation
zink: fixup dynarray-type
zink: use util_dynarray_clear
mesa/st: rip out point-sprite cap
mesa/main: remove driver-cap for ARB_point_sprite
mesa/st: move static asserts out of translate_prim
mesa/st: remove translate_mode
docs: correct spelling of “implemented”
docs: correct spelling of “attempts”
docs: correct spelling of “bug fixes”
docs: correct spelling of “specified”
docs: correct spelling of “hierarchical”
docs: correct spelling of “implementation”
docs: correct spelling of “to”
docs: correct spelling of “Khronos”
docs: correct spelling of “choosing”
docs: correct spelling of “subtly”
docs: correct spelling of “Raspbian”
docs: correct spelling of “shareable”
docs: correct spelling of “simplification”
docs: correct spelling of “synced”
docs: correct spelling of “maximum”
docs: correct spelling of “hierarchy”
docs: correct spelling of “commutativity”
docs: correct spelling of “compression”
docs: correct spelling of “laid”
docs: correct spelling of “average”
docs: correct spelling of “addition”
docs: correct spelling of “explicitly”
docs: correct spelling of “rasterizer”
docs: fractionary -> fractional
docs: ie. -> i.e.
docs: correct spelling of “correctly”
docs: correct spelling of “traveling”
docs: correct spelling of “freedreno”
zink: rework primitive rasterization type logic
zink: reuse rast_prim for line-rasterization check
docs: correct spelling of “addition”
docs: correct spelling of “passes”
docs: correct spelling of “irrespective”
docs: correct spelling of “semantic”
docs: correct spelling of “specifies”
docs: correct spelling of “Gouraud”
docs: correct spelling of “Copr”
docs: spell out “build directory”
docs: spell out “SHA256 checksum”
docs: spell out “environment variable”
docs: spell out “distribution”
docs: use the official spelling of SHA-1
docs: eg. -> e.g.
docs: XOR’d -> XORed
docs: consistently upper-case VC4, V3D etc
docs: consistently spell DRI in all-caps
docs: consistently spell ANV in allcaps
docs: consistently spell URL in allcaps
docs: consistently spell OK in allcaps
docs: consistently use CMake
docs: consistently spell API all-caps
docs: consistently spell VirGL in camel-case
docs: consistently spell Haswell in camel-case
docs: use consistent casing for dEQP
docs: ip -> IP
docs: irc -> IRC
docs: xorg -> X.Org
docs: pci -> PCI
docs: cpu -> CPU
docs: gpu -> GPU
docs: rgb -> RGB
docs: perfetto -> Perfetto
docs: lavapipe -> Lavapipe
docs: freedreno -> Freedreno
docs: adreno -> Adreno
docs: radeon -> Radeon
docs: nouveau -> Nouveau
docs: llvmpipe -> LLVMpipe
docs: vulkan -> Vulkan
docs: lima -> Lima
docs: ppir -> PPIR
docs: autotools -> Autotools
docs: ArchLinux -> Arch Linux
docs: meson -> Meson
docs: Gitlab -> GitLab
docs: xyzw -> XYZW
docs: hw -> HW
docs: lava -> LAVA
docs: skqp -> SkQP
docs: servo -> Servo
docs: Linux fbdev -> Linux Framebuffer
docs: virtualisation -> virtualization
docs: dependant -> dependent
docs: healthcheck -> health check
docs: vmware -> VMware
docs: spell out “distribution”
docs: spell out “transform and lighting”
docs: de-duplicated -> deduplicated
docs: de-nominate -> denominate
docs: freedreno -> Freedreno
docs: llvmpipe -> LLVMpipe
docs: softpipe -> Softpipe
docs: panfrost -> Panfrost
docs: piglit -> Piglit
docs: ini -> INI
docs: swr -> OpenSWR
docs: yml -> YAML
docs: xml -> XML
docs: Adreno aXXX -> Adreno XXX
docs: remove non-existent directory
docs: do not mention classic swrast
docs: name correct driver
docs: clean up labels
docs: add missing link to mesa3d.org
docs: add links to usenet groups
docs: link to replacement forum
docs: Android.mk -> ndk-build
docs: gitlab -> GitLab
docs: nVidia -> NVIDIA
docs: spell ATI codenames in allcaps
docs: nfs -> NFS
docs: fixup rebase mistake
zink: correct depth-bias enable condition
zink: only set line-width if drawing lines
zink: consider polygon-mode for rast_prim
zink: do not read is_generated unless in tcs shader
zink: put union fields into structs named by the shader-stages
docs/zink: fix and cleanup rst syntax
docs: fixup broken link syntax
docs: do not mention EGL_MESA_drm_display
docs: remove stale envvar-reference
zink: fix json-errors in profile-file
zink: remove needless requirements
zink: fix incorrect requirements
zink: update textureCompressionBC requirement
docs/zink: add missing required device-feature
mesa: treat unsupported queries as dummies
d3d12: fix max-array-layers
Fabian Vogt (1):
gallivm: Fix LLVM optimization with the new pass manager
Feng Jiang (5):
virgl/vtest: fix memory overwrite problem in virgl_vtest_send_get_caps()
gallium: add key size to the structure pipe_picture_desc
vl: change vl_video_buffer_destroy() to non-static
gallium/util: add a new helper function pipe_buffer_size()
virgl: add support for hardware video acceleration
Filip Gawin (5):
r300: add list of deqp gles2 r400 failures
r300: add khr r400 failures
gallium: avoid using float based conditions in loops
r300: don’t use smooth line if not requested
r300: update r400 tests
Francisco Jerez (4):
intel/fs: Fix horiz_offset() to handle FIXED_GRFs with non-trivial 2D regions.
nir/lower_int64: Enable lowering of 64-bit float to 64-bit integer conversions.
nir/lower_int64: Implement lowering of 64-bit integer to 64-bit float conversions.
nir/lower_int64: Fix float16 to int64 conversions.
Frank Binns (13):
pvr: get free list min size from the runtime info
pvr: reset all command buffer state in pvr_cmd_buffer_reset()
pvr: Implement vkResetCommandBuffer
pvr: remove redundant TODO
pvr: remove image pointer from image view struct
pvr: set samplerAnisotropy to false
pvr: cube map tex state packing fixes
pvr: don’t setup attachment tex state for images with input attachment bit unset
pvr: finish render job sample count setup
pvr: add required pixel formats
pvr: remove implicit sync support
pvr: setup buffer and image format feature bits
CODEOWNERS: remove rajnesh-kanwal as an Imagination maintainer
Friedrich Vock (28):
amd/common: move ac_memory_ops_per_clock into ac_gpu_info.h
amd/common: Remove redundant code for determining memory ops per clock
radv/winsys: Return VK_ERROR_INVALID_EXTERNAL_HANDLE if buffer imports fail
radv: Generalize instance count in BVH states to leaf node count
radv: Add metadata to acceleration structures
radv: Add Radeon Raytracing Analyzer trace dumping utilities
radv: Add Radeon Raytracing Analyzer capturing layer
radv: Enable Radeon Raytracing Analyzer traces
docs: Add documentation about RADV RRA tracing
radv: Use radv_CmdUpdateBuffer instead of radv_update_buffer_cp for geometry info writes
radv: Free geometry infos in radv_CmdBuildAccelerationStructuresKHR
radv: Correct accel struct header size
radv: Rename internal node shader to lbvh_internal
radv: Split CmdBuildAccelerationStructuresKHR into different functions
radv: Add BVH IR types
radv: Add conversion shader for internal nodes
radv: Add conversion shader for leaf nodes
radv: Create pipelines for conversion meta shaders
radv: Build acceleration structures using BVH IR
radv: Rename emulated float helpers
radv: Use a struct for AABBs
radv: Add radv_indirect_unaligned_dispatch
radv/rt: Fix internal converter synchronization
radv/rt: Dispatch internal converter indirectly
radv/rt: Track number of inactive leaf nodes
radv: Add global sync utilities
radv: Add REF as a typename macro to .clang-format
radv: Use spirv1.5 instead of vulkan1.2
Georg Lehmann (40):
aco: Check that we don’t override exec_val operands during branching sequence optimization.
aco/assembler: Fix v_cmpx with SDWA.
aco: Fix optimizing branching sequence with s_and_saveexec.
aco/assembler: Fix v_cmpx pre GFX10.
aco: Use v_cmpx pre GFX10.
aco: Force tex operand to have the correct sub dword size before packing.
nir: Add nir_ssa_scalar_is_undef.
nir/fold_16bit_tex_image: Add an option to fold image sources.
aco: Implement storage image A16.
aco: Combine 16bit undef and constants instead of using s_pack.
radv: Fold 16bit image sources.
nir: Print selection control for nir_if.
nir/opt_algebraic: Optimize check for single bit.
nir/opt_algebraic: Optimize d3d9 pow with fmulz.
aco: Fix image instructions with lod when 2d_view_of_3d is enabled on GFX9.
ac/llvm: Fix image instructions with lod for 2d on GFX9.
aco: Use plain VOPC for vcmpx when possible.
nir/opt_algebraic: Optimize unpacking of upcasts to 64bit integers.
radv: Enable VK_EXT_load_store_op_none.
aco: Use v_fmaak/v_fmamk if two operands are the same literal.
aco: Unswizzle v_pk_fma_f16 literals to produce more v_pk_fmac_f16.
radv: Fix GLSL BDA struct alignment and use pointer arithmetic SIZEOF.
nir/opt_algebraic: Optimize more (a cmp b ? a : b) to min/max.
aco: Use s_pack_ll for s_bfe operand on GFX9+.
nir: Print nir_selection_control_divergent_always_taken.
nir/opt_algebraic: Mirror optimizations for find_msb_rev.
aco: Implement [ui]find_msb_rev.
ac/llvm: Implement [ui]find_msb_rev.
nir/opt_algebraic: Add an option to lower uclz.
radv,aco: Lower uclz in NIR.
nir/opt_algebraic: Optimize various find_msb_rev patterns.
nir: Fix ifind_msb_rev constant folding.
aco: fmaak/fmamk can’t use SDWA.
aco: Don’t use opsel for p_insert.
ac/llvm: Implement signed idot on GFX11.
aco: Implement signed idot instructions on GFX11.
radv: Use available dot product instructions on gfx11.
radeonsi: Use available dot product instructions on gfx11.
aco: Use opsel for the third operand.
aco: Use s_pack_ll_b32_b16 for scalar zero extend.
Gert Wollny (95):
radeonsi-raven/ci: Move spec@arb_timer_query@timestamp-get to flakes
llvmpipe: Double number of SSBOs
r600/sfn: Schedule shift instruction on R600 in t-slot
r600/sfn: Add GS thread fix just like the TGSI code path
r600/sfn: Sort FS inputs to make interpolated values come first
r600/sfn: Fix color outputs when color0 writes all
r600/sfn: Initialize out buffer when printing op
r600: Force NOPs when loading AR on R600 class hardware
r600/sfn: Handle R600 scratch read
r600: Don’t use SB with R600 style scratch reads
r600: Fix SCRATCH OP de-assembly
nir_lower_atomics_to_ssbo: Initialize deref struct
r600/sfn: Handle color0 writes all on R700 like on EG
r600/sfn: Don’t tag mem-ring and stream instructions as exports
r600/sfn: Don’t schedule GDS instructions early
r600/sfn: Don’t scan the whole block for ready instructions
r600/sfn: Use a heuristic to keep SSBO setup and store close
r600: Fix reporting TGSI IR support
r600/sfn: Use a low number for unused target register
virgl: Fix buffer overflow warning:
virgl: Fix ubsan warnings:
virgl: when reading back wait first, then do the transfer
virgl/ci: remove some flakes
r600/sfn: override register ID when it doesn’t matter
r600/sfn: ACK all image stores, also at end of loop
r600/sfn: more peephole optimization with conditionals
r600/sfn: Override VPM if access in helpers is requested
r600/sfn: Don’t scalarize fdd instructions
virgl: Add some formats that the CTS uses
mesa/glsl: Add support for NV_shader_noperspective_interpolation
r600: set nir option lower_cs_local_index_to_id
virgl: Report CONSTANT_BUFFER_SIZE according to GL_MAX_UNIFORM_BLOCK_SIZE
r600/sfn: Lower tex,txl,txb and txf to backend
r600/sfn: lower txd to backend in nir
r600/sfn: lower txf_ms in nir
r600/sfn: copy-propagate single source texture values
r600/sfn: print tex prepare instructions
r600/sfn: Don’t allocate un-used components in texture ops
r600/sfn: Add an easy access to get an instruction as ALU
r600/sfn: Don’t assert when setting one value
r600/sfn: Copy propagate into TEX source
r600/sfn: drop some unused code
r600/sfn: copy propagate register load chains
r600/sfn: VS inputs are effectively SSA
r600/sfn: Add a free-channel mask when testing whether a register can switch channel
r600/sfn: fix some channel pinning
r600/sfn: Handle shifts on Cayman
r600/sfn: only use 3 channels on Cayman for trans ops
r600/sfn: Make sure texture lowering is done in the right order
r600/sfn: lower tg4 to backend in NIR
r600: Add slot to ALU disassambly
r600: Make NIR the default shader IR
nir_lower_to_source_mods: Don’t sneek in an abs modifier from parent
r600/sfn: Only run 64 bit ops lowering passes when really needed
r600/sfn: Always start a new CF after a KILL instruction
r600/sfn: don’t propagate registers into conditional test
r600/sfn: Add peephole optimization for kill instructions
r600/sfn: Delete final lowered nir shader early
r600/sfn: Fix typo
r600/sfn: Use the correct allocator for loop lists
r600/sfn:explicitly initialize the memory pool
r600/sfn: assert on use of abs modifier in op3
r600/sfn: Unroll loops after doing some optimizations
r600/sfn: Always enforce LDS operation order
r600/sfn: Make sure all components are usable when lowering TF inputs
r600/sfn: run cleanup passes after late algebraic opt
nir: move fusing csel and comparisons to opt_late_algebraic
r600/sfn: Unify the handling of resource IDs in instruction
r600/sfn: Handle nir_op_seq and nir_op_sne
r600: Fix printing t-channel in diss-assambly
r600/sfn: Add test for channel changes in TEX source from opt
r600/sfn: Allow copy-prop of group dest into origin
r600/sfn: Trigger TEX CF based on max TEX CF size
r600/sfn: improve scheduling of tex sources
r600/sfn: Increase scheduling priority on uniform reads and non-ssa writes
r600/sfn: elimiate dead registers too
r600: Account for color and clipvertex when evaluating LDS space
r600/sfn: evaluate LDS location for color and clip-vertex too
r600/sfn: Add .clang-format file and apply style
r600: declare for counter locally and fix signed/unsigned warning
r600: Only count ALU registers that are not clause local
r600: Print MOVA_INT dest on Cayman
r600/sfn: Handle load_workgroup_size
r600/sfn: lower uniforms to UBOs
r600/sfn: remove load_uniform handling
etnaviv: Create MSAA surfaces with PE compatible tiling
nir/algeraic_opt: use double options too for lowering ftrunc@64
r600/sfn: Fix source modifiers for ffract64
r600/sfn: Fix f2u32 and remove backend lowring of f2u64 and f2i64
r600/sfn: Honor shader key w.r.t. atomic counter layout
r600/sfn: Fix location for reading cube array image dimensions
r600/sfn: sort FS color outputs before all other outputs
virgl: don’t a use staging when a resources created with the shared flag
virgl: Fix injection of double from const mov instruction
r600/sfn: always use four slots for Cayman trans ops
Giancarlo Devich (4):
mesa: Fix stack corruption for PIPE_QUERY_TIMESTAMP
d3d12: Add cache managers for separate buffer usage cases
gallium/pipe: Align allocation size in `pb_cache_manager_create_buffer`
d3d12: Don’t align already-aligned size in `d3d12_bufmgr_create_buffer`
Glenn Kennard (1):
nv30: Fix non-scissored clears after a scissor has been set
Guilherme Gallo (29):
ci/lava: Customise sections timeouts via envvars
ci/lava: Add timeout header info for LAVA GL Sections
ci/bin: Add utility to find jobs dependencies
ci/bin: Sort imports from ci_run_n_monitor.py
ci/bin: Make ci_run_n_monitor finds dependencies automatically
ci/bin: Add script to expand jobs manifest
ci/bin: Cache GQL queries
ci/bin: Print job needs DAG in ci_run_n_monitor
ci/skqp: Add an option to run all tests
ci/skqp: Show reports on crashes
ci/skqp: Fix paths in skqp-runner
ci/skqp: Fix Nima-Cpp fetching error
ci/skqp: Build list_gpu_unit_tests and list_gms
ci/skqp: Add support for commenting tests files
ci/skqp: Use SKQP_BIN_DIR instead of hardcoded /skqp dir
ci/skqp: Put generated tests files in artifacts
ci/skqp: Supress irrelevant shellcheck warnings
ci/skqp: Remove .baremetal-skqp-test in favor of .skqp-test
ci/skqp: Add gitlab sections for uncluttering
ci/freedreno: skqp: run with new tests files
ci/radeonsi: skqp: Add fail test files for raven
ci/radeonsi: Add zork jobs and rules
ci/bin: Fix requirements.txt
ci/bin: Remove whitespace from token files
ci: Fix kernel+rootfs.* jobs
ci: Update piglit with s3 support
ci: Update piglit-traces tests expectations
ci: Update ci-fairy in CI, rootfs and containers
freedreno/ci: Skip civilization-v/CivilizationV-trim trace
Hans-Kristian Arntzen (3):
vulkan: Update to 1.3.228 headers.
radv: Implement VK_EXT_mutable_descriptor_type.
vk/runtime: Fix narrowing of timeline signal and wait value to u32.
Iago Toral Quiroga (87):
broadcom/compiler: don’t use imprecise_32bit_lowering for idiv lowering
broadcom/compiler: use nir_opt_idiv_const
broadcom/compiler: simplify code emitted for centroid coordinates
nir/lower_alu: drop unnecessary iand on uadd_carry result
broadcom/compiler: track number of TMU operations in prog data
v3dv: move check_needs_load/store helpers to unversioned code
v3dv: track if a job is compatible with double-buffer mode
v3dv: fix tile state allocation
v3dv: add a v3dv_job_allocate_tile_state helper
v3dv: postpone tile state allocation for render pass jobs
v3dv: tell job_compute_frame_tiling whether we want to use double-buffer mode
v3dv: add a heuristic for double-buffer mode
v3dv: vkCmdClearAttachments no longer generates its own RCL
v3d,v3dv: lower texel buffer aligment requirements
v3dv: implement VK_EXT_texel_buffer_alignment
v3dv: add a helper to destoy pipeline layouts
v3dv: ref/unref pipeline layout objects
v3dv: set maxBufferSize property
v3dv: add a v3dv_image_init helper
v3dv: add a get_image_memory_requirements helper
v3dv: implement vkGetDeviceImageMemoryRequirementsKHR
v3dv: add a get_buffer_memory_requirements helper
v3dv: add a buffer_init helper
v3dv: implement vkGetDeviceBufferMemoryRequirementsKHR
v3dv: implement vkGetDeviceImageSparseMemoryRequirementsKHR
v3dv: expose VK_KHR_maintenance4
nir/lower_variable_initializers: implement non-scoped barrier path
v3dv: implement VK_KHR_zero_initialize_workgroup_memory
v3dv: also check GS stage on image access for binning barriers
v3dv: implement vkCmdPipelineBarrier2
v3dv: port remaining entry points to KHR_synchronization2
v3dv: use VkPipelineStageFlagBits2 when checking semaphore wait stage
v3dv: expose VK_KHR_synchronization2
v3dv: implement VK_KHR_workgroup_memory_explicit_layout
v3dv: switch to common code for command buffer lifecycles
v3dv: expose VK_EXT_tooling_info
v3dv: fix swap_rb and channel_reverse flags in image views
v3dv: expose VK_EXT_border_color_swizzle
v3dv: ref pipeline layout earlier during pipeline init
v3dv: implement VK_EXT_depth_clip_control
v3dv: expose VK_EXT_attachment_feeback_loop_layout
v3dv: fix variable type
v3dv: limit heap size to 4GB
broadcom/simulator: add a helper to get the amount of free heap memory
v3dv: implement VK_EXT_memory_budget
v3dv: expose VK_EXT_primitive_topology_list_restart
v3dv: don’t load an attachment for unaligned render area if we are not storing
v3dv: expose VK_EXT_load_store_op_none
v3dv: don’t return incompatible driver if GPU is not present
v3dv: fix program id for binning shaders
broadcom/compiler: detect unifa write from signal
broadcom/compiler: check signal writes to magic regs when updating scoreboard
v3dv: optimize ldunif load into unifa write
v3dv: fix VK_EXT_texel_buffer_alignment
broadcom/compiler: increase V3D_MAX_BUFFE_RANGE to 2^30 bytes
broadcom/compiler: fix robust buffer access
broadcom/compiler: handle shared stores with robust buffer access
broadcom/compiler: don’t apply robust buffer access to shared variables
broadcom/compiler: rename v3d_nir_lower_robust_buffer_access.c
broadcom/compiler: rename static helpers involved with robust buffer access
broadcom/compiler: add a lowering for robust image access
v3dv: expose VK_EXT_image_robustness
v3dv: use NIR_PASS with v3d_nir_lower_robust_image_access
v3dv: use enabled features from vk_device
broadcom/compiler: trivial code clean-up
vulkan/runtime: include robustness info when hashing a shader stage
v3dv: implement VK_EXT_pipeline_robustness
v3dv: drop layout refs for all allocated sets from a pool on destroy / reset
broadcom/compiler: handle vec2 load/store index
v3dv: refactor events
v3dv: re-enable sync_fd import/export
v3dv: return out of host memory if we fail to create event pipelines
v3dv: split event implementation to a separate file
v3dv: remove unnecessary check for NULL
v3dv: do a better job at cleaning up the device on init failure
v3dv: fix incorrect return type
v3dv: handle allocation failure during pipeline initialization
v3dv: do better cleanup on failure during pipeline cache operation
v3dv: increase limit for active event objects
v3dv: always check VK_ACCESS_2_MEMORY_READ_BIT for read accesses
v3dv: make the helper to emit pipeline barriers public to other files
v3dv: fix event synchronization
v3dv: vkCmdWaitEvents2 takes an array of VkDependencyInfo
v3dv: use vk_alloc instead of malloc
broadcom/compiler: avoid using ldvary sequence to hide latency of branching
v3dv: fix debug dump on BO free
v3dv: ignore imported BOs when tracking BO memory usage
Ian Romanick (8):
nir: spirv: Allow 32-bit version of nir_intrinsic_is_sparse_texels_resident
radeonsi: r600: d3d12: st: Use NIR lowering for tg4 offset arrays instead of GLSL lowering
glsl: Remove lower_offset_arrays pass
nir/comparison_pre: See through an inot to apply the optimization
intel/fs: Fix constant propagation into 32x16 integer multiplication
nir/range_analysis: Set higher default maximum for max_workgroup_count
nir/loop_analyze: Fix get_iteration for nir_op_ine
nir/loop_analyze: Fix get_iteration for nir_op_fneu
Igor Torrente (3):
vulkan: Add vk_clock_gettime and vk_time_max_deviation
radv: anv: Use the new vk_clock_gettime and vk_time_max_deviation functions
venus: Fix dEQP-VK.pipeline.timestamp.calibrated.host_domain_test failure
Ikshwaku Chauhan (1):
Revert “radeon: add EFC support to only VCN2.0 devices”
Illia Abernikhin (2):
utils: Move functions from debug.* to u_debug.*
utils: Merge util/debug.* into util/u_debug.* and remove util/debug.*
Illia Polishchuk (2):
mesa: skip extra state updates for clear calls
driconf/Intel: Add lower_depth_range_rate option workaround for Homerun Clash misrendering issue
Isaac Bosompem (1):
virgl: Set use_staging in resource_from_handle
Italo Nicola (6):
etnaviv: skip disk cache initialization on standalone compiler
etnaviv: fix standalone compiler to work without a tgsi backend
clc: add 32-bit target
rusticl: use 32-bit address format for 32-bit devices
rusticl: correctly check global argument size
rusticl: fix MemConstant invalid arg size check
Iván Briano (13):
anv: emit scissors when the pipeline changes
anv: pipelineStageCreationFeedbackCount is allowed to be 0
anv: populate rt shader groups if they were found in the cache
anv: Set meshShaderQueries for mesh shader ext features
intel/utrace: create the callback events for xfb trace points
anv/grl: Add a GRL file parser
anv: set READ/WRITE_WITHOUT_FORMAT for buffer views
vulkan_hasvk: set READ/WRITE_WITHOUT_FORMAT for buffer views
anv: compile_upload_rt_shader expects a valid pointer
anv: use DX rules for point rasterization
hasvk: use DX rules for point rasterization
anv: support VK_PIPELINE_CREATE_RAY_TRACING_SKIP_*
anv: enable rayTraversalPrimitiveCulling feature
James Park (2):
vulkan: Augment _WIN32 stub comparison
meson,amd: Remove Windows libelf wrap
James Zhu (4):
amd/common: some ASICs with gfx9 use compute rings for render
util/format: add util format y8_400_unorm
frontends/va: add support for yuv400 and yuv444
radeonsi/vcn: enable jpeg decode of yuv444 and yuv400
Jami Kettunen (1):
freedreno/ir3: Switch to NIR for a5xx’s vertex id lowering.
Jan Beich (1):
util: unify FreeBSD futex_wait signature with Linux/OpenBSD/Windows
Faith Ekstrand (115):
nir: Clean up and improve nir_dedup_inline_samplers
intel/fs_reg_allocate: Improve compressed instruction self-interference
intel/rt: Handle halts in any-hit shaders properly
intel/rt: Handle multiple exits in lower_shader_returns
genxml: Add BVH data structures
anv: Don’t require 32-bit addresses for scratch on Gen12.5+
vulkan,anv,dozen: Use VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
radv: Use both aspects for depth/stencil blit destinations
radv: Use VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT for render loops
radv/meta: Respect render area for MSAA resolves
radv/meta: Fix a stack use-after-free with sample locations
radv/meta: Drop subpass_att from radv_fast_clear_color
radv/meta: Use Begin/EndRendering for resolves
radv/meta: s/dest/dst/ in a few functions
radv/meta: Use Begin/EndRendering for clears
radv: Drop set/restore_subpass
radv/meta: Drop redundant depth_view_can_fast_clear
radv: Add a image_transition helper for separate depth/stencil layouts
radv: Don’t assume layout == stencilLayout for stencil-only
util,intel: Pull the bit packing helpers from genxml to a common header
broadcom: Use util/bitpack_helpers.h
util: Add util_bitpack_[su]fixed_clamp helpers
asahi: Use util/bitpack_helpers.h
panfrost: Use util/bitpack_helpers.h
anv: Use nir_intrinsic_load_layer_id for ViewId in fragment shaders
anv: Decouple primitive replication check from the fragment shader
anv: Stop looking at the pipeline in multiview lowering
nir: Track per-view outputs in shader_info
intel/compiler: Store the number of position slots in the VUE map
anv: Drop anv_pipeline::use_primitive_replication
pvr: Only destroy the physcial device if it exists
vulkan/cmd_buffer: add record_state to the common command buffer.
vulkan/cmd_queue: Drop vk_cmd_queue::error
vulkan: Add a concept of recycling an object
vulkan: Re-order arguments to vk_command_pool_init
vulkan: Re-order arguments to vk_command_buffer_init
vulkan: Add a vk_command_buffer_ops struct
vulkan: Add a common vkResetCommandBuffer() implementation
vulkan: Add a common vkAllocateCommandBuffers() implementation
vulkan: Recycle command buffers in vk_command_pool
radv: Move to the common command pool framework
tu: Move to the common command pool framework
lvp: Move to the common command pool framework
vulkan,docs: Add documentation Vulkan command pools
vulkan: Dirty VP_VIEWPORTS/SCISSORS when copying viewports/scissors
radv: Set the window scissor to the render area, not framebuffer
radv: Only copy the render area from VRS to HTILE
radv: Leave image layouts alone when doing HW MSAA resolves
radv: Switch to dynamic rendering only
rusticl: Call nir_scale_fdiv
vulkan/runtime: Add a comon vk_descriptor_update_template
anv: Switch to the common descriptor update template struct
vulkan/runtime: Compact descriptor update templates
panvk: Fix buffer views
spirv: Don’t use libclc for wait_group_events
nir: Add a helper for finding a function by name
nir/load_libclc: Don’t add generic variants that already exist
vulkan: Record more enabled robustness features
vulkan: Add a helper for gathering pipeline robustness
iris: Use a larger alignment for buffer allocations
iris: Fix more BO alignments
iris: Handle resource offsets in buffer copies
iris: Stop looking at textures_used for samplers
iris: Split max #defines for textures/samplers/images
iris: Support up to 64 images
iris: Support up to 128 textures
intel/fs: Always use integer types for indirect MOVs
intel/fs: SEL_EXEC uses the integer pipe for 64-bit stuff
intel/mi_builder: add a way to reserve a register
intel/mi_builder: Add a helper for incrementing reference counts
anv/formats: Advertise ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT
anv: Add an anv_address_map helper
anv: Implement VK_KHR_pipeline_library
anv: Set up the memory-backed FIFO buffer
anv: Add extern “C” guards
anv: Add support for compiling OpenCL-style kernels
anv: Add support for OpenCL-style kernel dispatch
anv: Import GRL
anv/grl: Build OpenCL kernels
anv/grl: Add a helper for dispatching our pre-built kernels
intel/grl: Parse GRL files and generate C
anv: Build BVHs on the GPU with GRL
anv: Advertise ray-tracing on DG2
intel/devinfo: DG2 supports ray-tracing
vulkan/wsi: Support configuring swapchain images as part of swapchain init
vulkan/wsi/x11: Configure images via params passed to wsi_swapchain_init()
vulkan/wsi/wayland: Configure images via params passed to wsi_swapchain_init()
vulkan/wsi/display: Configure images via params passed to wsi_swapchain_init()
vulkan/wsi/win32: Configure images via params passed to wsi_swapchain_init()
vulkan/wsi: Always configure images in wsi_swapchain_init()
vulkan/wsi: Don’t expose as many image configure helpers
vulkan/wsi: Add a typedef for memory type select callbacks
vulkan/wsi: Add a supports_scanout flag
vulkan: Use altlen when available for array lengths
vulkan: Rename viewport_state::negative_one_to_one
vulkan: Add a dynamic state for vp.depth_clip_negative_one_to_one
vulkan: Add more dynamic rasterizer state
vulkan: Add dynamic state for tessellation domain origin
vulkan: Add more dynamic multisample states
vulkan: Add more dynamic color blend states
vulkan,lavapipe: Use a tri-state enum for depth clip enable
iris: Set SamplerCount in shader packets
nir: Reformat a comment
nir: Use nir_shader_instructions_pass in nir_lower_readonly_images_to_tex
nir: Misc. style fixes to nir_lower_readonly_images_to_tex
nir: Unconditionally call nir_trim_vector in nir_lower_readonly_images_to_tex
nir/types: Add some asserts to glsl_get_struct_field()
nouveau/codegen: Support bindless texture queries
intel/lower_mem_access_bit_sizes: Compute alignments automatically
intel: Don’t cross DWORD boundaries with byte scratch load/store
vulkan: Handle VK_SUBPASS_EXTERNAL at the end of a subpass
vulkan: Unconditionally add barriers for missing external subpass deps
vulkan: Add state for extraPrimitiveOverestimationSize
vulkan: Add a common implementation of CmdSetSampleLocationsEnableEXT
vulkan: Add a dummy vk_common_CmdSetColorBlendAdvancedEXT()
Jeremy Rand (1):
llvmpipe: bump LP_MAX_THREADS to 32
Jesse Natalie (82):
ci/windows: Re-enable Windows runners
dzn: Disable extensions that require multi-view
dzn: Use D3D12 constants instead of naked numbers for device limits
ci/windows: Disable Windows builds while the runner is offline again
ci/windows: Windows runner is back online
ci/windows: Install Graphics-Tools package on the base image
egl/wgl: Don’t require a native display to support window surfaces
egl/wgl: Implement QuerySurface
wgl: Split pbuffer creation into two functions
egl/wgl: Implement PBuffer surfaces
egl/wgl: Set YInvert attribute to always true
egl/wgl: Implement bind/release texture buffer
wgl: Allow per-framebuffer swap interval overrides
egl/wgl: Support eglSwapInterval
egl/wgl: Support eglWaitClient
egl/wgl: Support eglWaitNative
egl,wgl: Support eglCreateImageKHR
wgl: Pass smapi explicitly to context creation
wgl: Pass smapi explicitly to framebuffer creation
egl/wgl: Use a per-display st_manager
egl/wgl: Hook up image validate/get in smapi
egl/wgl: Support EGL_MESA_query_driver
egl/wgl: Support sync objects
wgl: Use pfi instead of iPixelFormat more often
egl/wgl: Delete unused variables/code
egl/wgl: Fix some awkward sizeof formatting
meson: Don’t include glsl compiler if flex/bison aren’t found
microsoft/compiler: Discard shouldn’t be marked readnone
dxil_nir_lower_int_cubemaps: When not lowering samplers, don’t touch sampler types
microsoft/compiler: Fix PSV struct when numthreads is 0
microsoft/clc: Handle a null clc logger
gallium/windows: Delete OpenGLOn12.dll target
meson: Add an option to specify the WGL gallium megadriver filename
mesa: Expose GL_NV_ES1_1_compatibility
microsoft/compiler: Always emit a shader at the max-supported shader model
microsoft/compiler: Support up to shader model 6.5
microsoft/compiler: Add struct and function defs for SM6.6 handle funcs
microsoft/compiler: Add dynamic create handle helper
microsoft/compiler: Add getters for res bind/props structs
microsoft/compiler: Delete double-assignment of sampler metadata field
microsoft/compiler: Pass lower_bound, upper_bound, space to createhandle
microsoft/compiler: Handle SM6.6 handles
microsoft/compiler: SM6.6 is supported
microsoft/compiler: Support SM6.7
d3d12: Get max supported shader model
dzn: Get max supported shader model
u_atomic: Add a helper for pointer compare-exchange
d3d12: Change displayable format logic
ci/windows: Update build container image with all deps so wraps can be disabled
deps: Update DirectX-Headers req to 1.606.4
d3d12: Move some things from screen late-init to early-init
d3d12: Store the d3d12 module reference on the screen
d3d12: Support device factories in addition to global device creation
d3d12: Attempt to use the Agility SDK
d3d12: Use ID3D12DeviceConfiguration for root signature serialization
d3d12: Release sharing contract in flush_frontbuffer
dzn: Store the d3d12 module reference on the instance
dzn: Support device factories in addition to global device creation
dzn: Use architecture props to return correct device type
dzn: Attempt to use the Agility SDK
dzn: Use ID3D12DeviceConfiguration for root signature serialization
ci/windows: Update vk-gl-cts to pick up new zlib dependency
d3d12: Don’t put permanently-resident resources in the residency bo list
d3d12: Don’t multiply cube array sizes by 6
d3d12: Set PIPE_CAP_MAX_TEXTURE_UPLOAD_MEMORY_BUDGET
dzn: Set factory flags before creating device
d3d12: Advertise PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
include: Add WGL version of GL interop extensions
mesa, dri2: Move interop helpers from dri2 to state tracker
include: Add a flush interop method
mesa: Make fence_sync not static
mesa/st: Split interop object lookup from export
mesa/st: Implement the new flush method
dri: Implement the new flush method
glx: Implement the new flush method
egl/dri2: Implement the new flush method
wgl: Implement interop methods
egl/wgl: Implement interop methods
include: Add driver data to v2 of mesa_glinterop_device_info
gallium: Add screen methods for driver-private data on interop interface
mesa/st: Query driver for interop data
d3d12: Hook up driver-private interop data
Jessica Clarke (1):
panfrost/blend: Fix invalid const values leading to NIR validation errors
Joan Bruguera (1):
nv50/ir/nir: ignore sampler for TXF/TXQ ops.
John Brooks (5):
radv: Add get_addrlib function to radv_radeon_winsys
vulkan: Introduce vk_format_is_block_compressed function
radv: Only apply mipmap view adjustments to block compressed images
radv: Fix corrupted mipmap copies on GFX9+
radv: Fix mipmap views on GFX10+
Jonathan (3):
gallium/u_threaded: buffer subdata merging (v2)
gallium/u_threaded: Prepare for buffer sharedness tracking
gallium/u_threaded: buffer sharedness tracking
Jonathan Gray (2):
iris: check i915 features after hw gen
util: include sys/time.h for timespec functions
Jordan Justen (15):
iris: Drop extra file-descriptor dup in iris_drm_screen_create()
intel/pci_ids: Update ADL-S strings
intel/pci_ids: Add 0x468b ADL-S PCI-id
intel/pci_ids: Update ATS-M device names
intel/pci_ids: Update DG2 device names
intel/pci_ids: Add dg2 0x5698 pci-id
intel/pci_ids: Drop non-upstream dg2 pci-ids
intel/compiler: Use builder to allocate fs regs for gs control data bits
intel/devinfo: Add MTL platforms enums and intel_device_info_is_mtl()
intel/l3: Use L3 full-way allocation setting for gfx12.5 (DG2, MTL)
anv/meson: Use anv_flags and anv_cpp_flags in genX compiles
meson: Deprecate vulkan-rt-drivers intel
meson: Define with_intel_vk_rt based on with_intel_clc
intel/compiler: Broadcast lower code should check 64-bit int support
ci/d3d12: Update quick_shader results with 24 fixes from !19128
Jose Maria Casanova Crespo (4):
CI: Igalia farm is down
Revert “CI: Igalia farm is down”
vc4: consolidate shader-db output
v3d: Minor fixes on sand8 blit based on sand30 modifications
Joshua Ashton (2):
radv: Remove workarounds for D3D9 feedback loops
freedreno: Disable 8bpp_ubwc on a6xx gen2
José Fonseca (1):
util: Add macro util_get_cpu_caps in u_cpu_detect.c for avoid accidentally call it in u_cpu_detect.c
José Roberto de Souza (34):
intel: Simply intel_gem_create_context_engines()
anv: Remove duplicated memset() in physical device creation
anv: Remove anv_app_info
anv: Free vmas in case device creation fails in pthread_mutex_init(&device->mutex
anv: Do not duplicate intel_device_info memory in each logical device
anv: Only wait for queue sync if execbuf was properly executed
anv: Do not copy garbage to batch_bo
anv: Nuke anv_execbuf_init()
anv: Group all context operations during device creation
anv: Nuke dead code
anv: Return earlier in anv_gem_get_tiling() when not supported
intel/compiler/fs: Fix compilation of shaders with SHADER_OPCODE_SHUFFLE of float64 type
intel/compiler/fs: Use DF to load constants when has_64bit_int is not supported
vulkan_hasvk: Nuke dead code around I915_ENGINE_CLASS_COMPUTE
anv: Nuke cmd_parser_version
intel/dev: Adjust prefetch_size values for MTL engines
intel: Share code to read render timestamp
intel: Make engine related functions and types not i915 dependent
intel/dev: Split i915 specific parts of intel_get_device_info_from_fd()
anv: Move fetch of i915 physical device parameters
anv: Split i915 specific parts of anv_queue_submit_simple_batch()
anv: Use Vulkan types for priority as much as possible
anv: Split the debug part of anv_queue_exec_locked()
intel: Convert missing i915 engine types to intel
intel: Convert i915 engine type to intel in tools/ common/ and ds/
intel: Add and use intel_engines_class_to_string()
hasvk: Nuke code around local memory
hasvk: Fix build around intel_measure_state_changed() call
iris: Fix enablement of protected contexts
intel/perf: Use intel_device_info functions to compute subslice and eu totals
iris: Nuke pci_id from iris_screen
iris: Drop duplicated errno handling in iris_bo_wait()
iris: Do not export iris_bo_wait()
iris: Set priority for replaced engine context
Juan A. Suarez Romero (3):
vc4/simulator: use i915/amd ioctls for BO
vc4: properly restore vc4 debug option
vc4: store tex sampler in proper register
Julia Tatz (1):
zink: Advertise PIPE_CAP_NATIVE_FENCE_FD
Juston Li (6):
venus: Enable VK_EXT_texture_compression_astc_hdr
venus: sync venus protocol headers for VK_EXT_primitive_topology_list_restart
venus: add support for VK_EXT_primitive_topology_list_restart
venus: sync to latest venus protocol headers
venus: add support for VK_EXT_multi_draw
venus: use buffer cache for vkGetDeviceBufferMemoryRequirements
Kai Wasserbäch (22):
chore(deps): clover: raise the minimum LLVM version to 11.0.0
fix(FTBFS): meson: raise C++ standard to C++17
chore(docs): rusticl: improve list of build dependencies
fix: util/format: unused variable ‘desc’ [-Wunused-variable]
fix: nir: unused variable ‘else_block’ [-Wunused-variable]
fix: ac/llvm: unused variable ‘offset’ [-Wunused-variable]
fix: mesa: unused variable ‘ret’ [-Wunused-variable]
fix: mesa/st: variable ‘texobj’ set but not used [-Wunused-but-set-variable]
fix: mesa/st: unused variable ‘src’ [-Wunused-variable]
fix: gallivm: variable ‘type_kind’ set but not used [-Wunused-but-set-variable]
fix: r600/sb: unused variable ‘repdep2’ [-Wunused-variable]
fix: r600/sb: unused variable ‘fop’ [-Wunused-variable]
fix: r600/sb: unused variable ‘r’ [-Wunused-variable]
fix: r600/sfn: variable ‘opinfo’ set but not used [-Wunused-but-set-variable]
fix: r600/sb: warning: unused variable ‘{b,nl}’ [-Wunused-variable]
fix: r600/sfn: unused variable ‘splitpos’ [-Wunused-variable]
fix: r600/sfn: unused variable ‘{splitpos,param}’ [-Wunused-variable]
fix: r600/sfn: variable ‘fail’ set but not used [-Wunused-but-set-variable]
fix: r600/sfn: unused variable ‘spi_sid’ [-Wunused-variable]
fix: iris: unused variable ‘devinfo’ [-Wunused-variable]
fix: zink: unused variable ‘intr’ [-Wunused-variable]
fix: frontends/va: unused variable ‘max_pipe_hevc_slices’ [-Wunused-variable]
Karmjit Mahil (30):
pvr: Fix bo mapping on alloc with PVR_BO_ALLOC_FLAG_CPU_ACCESS.
pvr: Compete pvr_calc_fscommon_size_and_tiles_in_flight().
pvr: Fix calculation in rogue_max_compute_shared_registers().
pvr: Change indentation from tab to spaces for xml files.
pvr: Set descriptor dirty flag based on other flags.
pvr: Finish setting up job resolve info.
pvr: Remove unimplemented push descriptor code.
pvr: Add depth_bias_array handling on dbenable.
pvr: Add clear program in pvr_device.
pvr: Add static clear control stream templates in pvr_device.
pvr: Add static clear VDM state in pvr_device.
pvr: Add graphics pipeline barrier handling.
Revert “pvr: Make pvr_cmd_pack() macro clearly internal”
pvr: Implement clear ppp state emission from template.
pvr: Add mid fragment pipeline barrier if needed.
pvr: Handle VK_CULL_MODE_FRONT_AND_BACK.
pvr: Emit cs words for load op on vkCmdBeginRenderPass().
pvr: Add basic skeleton for event sub cmd.
pvr: Remove struct pvr_emit_state and emit header directly.
pvr: Add csb helpers macros to write into raw buffer.
pvr: Make control stream word writing stricter.
pvr: Complete pvr_emit_ppp_state().
pvr: Add assert for texturestate being 0 in when emitting ppp state.
pvr: Add EMIT_MASK in pvr_emit_ppp_state().
pvr: Fix possible seg fault on csb copy.
pvr: Fix overflow before widen warning for rgn headers size calculation.
pvr: Handle pipeline barrier vk_sync.
pvr: Remove outdated comments.
pvr: Add PBE accum format size in bytes.
pvr: Change pvr_get_hw_clear_color() to pack based on accum formats.
Karol Herbst (189):
printf: extract clovers printf impl
printf: add some unit tests
nir: serialize printf metadata for CL kernels
nir/lower_images: extract from clover
nir: extract the clc inline sampler dedup pass from clc
microsoft/clc: drop inline sampler reordering
clc: undefine spirv defs to work around LLVMs headers
vtn: silence warning about linkage
gallium: mark the input data as const in pipe_grid_info
util/memstream: insert null terminator on windows
ci: update fails list
ci: bumping all tags to make sure we don’t have hidden fails
nvc0: limit max global and alloc size
ci: update CI to reflect clovers LLVM version bump
nv50: fix code heap after pipe_shader_enum change
nouveau: use the contexts pushbuf and client where possible
nouveau/mm: make code thread safe
nouveau/buffer: simplify uses of nouveau_fence_work
nouveau/fence: rework nouveau_fence_emit so we can call it on emitted fences
nouveau: move nouveau_context initialization to common code
nouveau: wrap nouveau_bo_map
nouveau: wrap nouveau_bo_wait
nouveau: wrap all nouveau_pushbuf_space calls
nouveau: wrap nouveau_pushbuf_validate
nouveau: wrap nouveau_pushbuf_refn
nouveau: use PUSH_KICK instead of nouveau_pushbuf_kick
nouveau/fence: make the fence struct part of the fence API
nv50: remove nouveau_fence_signalled prior nouveau_fence_wait
nv50: remove nv50_bufctx_fence call in vbo_kick_notify
nouveau/fence: per context fence
nouveau: per context client and pushbuf
nouveau: make fencing race free
nvc0: make state handling race free
nv50: race free state tracking
nv50/ir: fix OP_UNION resolving when used for vector values
nv50: properly flush the TSC cache on 3D
rusticl: added
rusticl: finish implementing clBuildProgram
rusticl/util: add static_assert macro
rusticl: implement clFinish and clFlush
rusticl: implement clEnqueueReadBuffer
rusticl/mem: support ops on subbuffers
rusticl/kernel: basic implementation
rusticl: nir bindings
rusticl: translate spirv to nir and first steps to kernel arg handling
rusticl/kernel: more clGetKernelWorkGroupInfo props
rusticl/kernel: clGetKernelWorkGroupInfo allows a NULL device
rusticl/mem: use helper context for COPY_HOST_PTR buffers
rusticl/event: wrong but non crashing impl of clWaitForEvents
rusticl: hack for CL 3.0
rusticl/mesa: add fencing support
rusticl/event: proper eventing support
rusticl/kernel: implement clCreateKernelsInProgram
rusticl/kernel: implement clEnqueueTask
rusticl/program: undefine __IMAGE_SUPPORT__ if images are unsupported
rusticl/queue: fix clReleaseCommandQueue
rusticl/mem: implement clCopyBuffer
rusticl/mem: implement clFillBuffer
rusticl/event: implement marker and barrier
rusticl/mem: add clEnqueueMigrateMemObjects stub
rusticl/program: support compiling libraries
rusticl: implement clUnloadPlatformCompiler
rusticl/api: add param to query which contains application provided values
rusticl/program: implement clCreateProgramWithBinary
rusticl/event: add fake impl of clGetEventProfilingInfo
rusticl/kernel: implement CL_KERNEL_COMPILE_WORK_GROUP_SIZE
rusticl/mem: finish clEnqueueMigrateMemObjects
rusticl/kernel: run driver requested lowering passes
rusticl/kernel: add support for offsets
rusticl/kernel: add missing preprocessor definitions
rusticl: advertize CL 1.1 and CL 1.2 extensions
rusticl/context: implement clSetContextDestructorCallback
rusticl/kernel: implement clCloneKernel
rusticl/device: set required double fp config values
rusticl/device: advertize atomic caps
rusticl: claim support for generic pointers
rusticl/program: add il stubs
rusticl: add svm func stubs
rusticl/icd: add more func pointers
rusticl/kernel: report SIMD width as work group sizes
rusticl/kernel: sweep nir to reduce peak memory usage
rusticl/device: expose cles_khr_int64 for compatible embedded devices
rusticl/mem implement the memory *WithProperties API
rusticl/pipe: add clGetPipeInfo stub end return CL_INVALID_MEM_OBJECT
rusticl/program: add stubs for program ctors and dtors
rusticl/kernel: add stub for clGetKernelSubGroupInfo
rusticl/event: timeout wait on condvar to abort on reaped worker threads
rusticl: add support for printf
rusticl/spirv: add print method
rusticl/mesa: support mapping textures
rusticl/mem: support read/write/copy ops for images
rusticl/memory: rework mapping tracking
rusticl/mem: implement maping images
rusticl/mem: implement fill image
rusticl/mem: implement copy image
rusticl/mem: implement clCreateImage2D and 3D
rusticl/mem: implement copies between buffers and images
rusticl/mesa/context: un Arc the PipeContext
rusticl/mem: implement clCreateSamplerWithProperties
rusticl/kernel: support for images
rusticl/kernel: inline samplers
rusticl/kernel: lower memcpy
rusticl/device: add retain/release callbacks for luxmark v4
rusticl/device: implement cl_khr_3d_image_writes
rusticl/kernel: set CL_DEVICE_PREFERRED_WORK_GROUP_SIZE_MULTIPLE
rusticl/kernel: run some more opt passes
rusticl: get rid of a few clones
rusticl/memory: don’t map more than necessary for copy operations
rusticl/device: fix api consistency_device_and_host_timer test
rusticl/queue: implement missing CL 3.0 bits
rusticl/device: fix compiler features_macro
rusticl/mem: add user_ptr fallback shadow buffer
rusticl/mesa: make resource_from_user_memory an optinal feature
rusticl/kernel: implement image_format and image_order
rusticl/mem: fix IMAGE1D_BUFFER
rusticl/mem: only write pitch when required
rusticl: port to Rust 2018
rusticl: kernel caching
rusticl/kernel: prepare for nir caching
rusticl/kernel: cache the nir as well
rusticl: fix compiler features_macro
rusticl/kernel: optimize local size
rusticl: the CTS is a piece of shit
rusticl/kernel: implement CL_KERNEL_ATTRIBUTES
rusticl/program: some boilerplate code for SPIR-V support
rusticl/memory: kernel read_write images prep work
rusticl: disable fp64 support
rusticl/device: allow overwriting the device_type via env
rusticl/program: parse quoted paths in args
rusticl/kernel: fix local buffers
rusticl/device: report mesas version for CL_DRIVER_VERSION
rusticl/icd: implement clGetExtensionFunctionAddressForPlatform
rusticl/icd: add some way of debugging CL function calls
rusticl/kernel: use real references for arguments
rusticl: proper PIPE_MAP flags for internal maps
rusticl: call glsl_type_singleton_init_or_ref
rusticl/program: some more API validation
ci: rusticl with llvmpipe
rusticl: add README file
rusticl/device: print error when libclc fails to load
rusticl/mem: return errors for OOB accesses
rusticl/device: fix custom device detection
rusticl/mem: fix image OOB checks
rusticl/mem: align fill pattern buffer to 4 bytes
rusticl: limit global mem to 2GB
rusticl/kernel: assign locations before passing the nir to drivers
ac/llvm: support non 32 bit sized workgroup ids
ac/llvm: fix load_const for vectors with more than 4 elements
ac/llvm: fix load/store_shared for vectors with more than 4 elements
ac/llvm: fix load_ubo for vectors with more than 4 elements
radeonsi: stop vectorizing unpack_32_2x16_split
iris: use images_used instead of num_images
iris: speed up walking global bindings
iris: bump IRIS_MAX_GLOBAL_BINDINGS to 128
rusticl/kernel: preserve fp16 denorms to fix vload/vstore_half
rusticl: add support for coherent resources
rusticl/mesa: add bx() method to PipeTransfer
rusticl: rework resource mappings a little
rusticl: add helper ctx wrapper for coherent and direct mapping
rusticl/mem: rewrite the (un)mapping code
lp: claim being UMA
rusticl/mem: propper CL_MEM_ALLOC_HOST_PTR support
radeonsi: fail creating textures from user memory
nir/lower_cl_images: set binding
radeonsi: lower hadd and fisnormal
rusticl: remove blit code
rusticl: add RUSTICL_ENABLE to have a global way of enabling devices
docs: Add documentation for Rusticl’s env variables
ci/llvmpipe: update to new RUSTICL_ENABLE var
zink: handle more opcodes for CL
zink: handle f2f16_rtz
zink: fix spirv_builder_spec_const_uint
aux/trace: add set_global_binding
rusticl: force BIND_LINEAR on staging resources
rusticl/mem: can only map staging textures directly
rusticl: add small bitset impl
rusticl/nir: add reads_sysval wrapper
rusticl/kernel: lower system values before gathering info
rusticl/kernel: add work_dim lowering
zink: remove leftover work_dim lowering code
rusticl/kernel: fix more 32 bit problems
nir/algebraic: add 8 and 64 bit urol and uror lowering
nir/algebraic: support CL vector accessors
nir/algebraic: generalize vector_cmp lowering
nir/algebraic: add vec8/16 cmp lowering
iris: invalidate sysvals if grid dimension changes
glsl: fix buffer texture type
rusticl/device: put space at the end of CL_DEVICE_VERSION
nir/lower_int64: fix shift lowering
Kenneth Graunke (53):
intel/compiler: Use named NIR intrinsic const index accessors
iris: Pass devinfo to iris_resource_level_has_hiz()
iris: Enable HiZ for non-8x4 aligned miplevels on Icelake and later
iris: Always retain ISL_AUX_USAGE_HIZ_CCS_WT in texture aux usage
iris: Clean up iris_sample_with_depth_aux()
intel/compiler: Drop variable group size lowering
iris: Fix PIPE_CAP_UMA
iris: Use linear for exported resources if we can’t convey tiling
intel/compiler: Change dg2_plus check to devinfo->verx10 >= 125
iris: Delete unused iris_screen::aperture_bytes field
iris: Don’t print out XXX messages if resource creation fails
iris: Fall back if iris_map_copy_region can’t create a staging resource
iris: don’t create staging resources larger than half the aperture
crocus: Don’t print out XXX messages if resource creation fails
crocus: Fall back if iris_map_copy_region can’t create a staging resource
crocus: Fix memory leaks on iris_resource_create failure paths
anv: Fail to create a device on ver < 9
anv: Drop checks for version 8 or 9
anv: Delete image param support.
anv: Delete batch buffer growing code.
anv: Delete shader constants UBO from descriptor sets
anv/tests: Don’t use relocations in a test case
anv: Delete “back” allocation from state pool
anv: Delete relocation support from anv_block_pool
anv: Delete “back” allocation from anv_block_pool
anv: Drop state pool relocation munging
anv: Delete use_relocations flag
anv: Delete softpin checks
anv: Delete anv_reloc_list_add()
anv: Delete wrapper BOs for relocations
anv: Delete relocation support from batch submission
anv: Delete has_a64_buffer_access flag
anv: Delete has_bindless_images and has_bindless_samples flags
anv: Make a helper function for pinning a state pool’s BOs
anv: Drop offset from anv_reloc_list_append
anv: Inline write_reloc into the only remaining caller
anv: Remove anv_batch_emit_reloc and just open-code it
intel/compiler: Use subgroup invocation for ICP handle loads
iris: Ignore aux for copy_region source if there’s no unresolved color
intel/compiler: Use an existing URB write to end TCS threads when viable
st/mesa: Optionally call nir_vectorize_tess_levels()
intel/compiler: Vectorize gl_TessLevelInner/Outer[] writes
intel/genxml: Add XY_FAST_COLOR_BLT
blorp: Make blitter_supports_aux accessible from multiple files.
blorp: Implement blitter clears via XY_FAST_COLOR_BLT
blorp: Fix typo in blorp_xy_block_copy_blt
Revert “intel/compiler: Vectorize gl_TessLevelInner/Outer[] writes”
iris: Add miplevel parameters to iris_resource_texture_aux_usage
intel/compiler: Vectorize gl_TessLevelInner/Outer[] writes [v2]
iris: Use nir_intrinsic_load_global_constant for large constants
intel/compiler: Run nir_opt_large_constants before scalarizing consts
st/mesa: Let nir_opt_access() infer non-readable
nir: Drop infer_non_readable option for nir_opt_access()
Konrad Kleine (1):
Update docs/drivers/llvmpipe.rst
Konstantin Kharlamov (5):
loader/dri3: simplify check for reply
loader/dri3: remove a no-op free call
meson: remove source_root() call in nir compiler path
meson: remove source_root() call in main meson.build
.mailmap: change spelling for Constantine Kharlamov
Konstantin Seurer (63):
radv/nir_lower_abi: Use instructions_pass
radv: Move accel struct structs to bvh/bvh.h
radv: Move radv_acceleration_structure
radv: Remove acceleration structure host builds
radv: Always emulate fmin/fmax
radv: Remove accel_struct_build
radv: Remove unused push constant structs
radv: Add create_build_pipeline_spv helper
radv: Add the basics for GLSL bvh kerrnels
radv: Add a GLSL morton kernel implementation
radv: Switch to the GLSL morton implementation
radv: Add a GLSL internal kernel implementation
radv: Switch to the GLSL internal implementation
radv: Add a GLSL leaf kernel implementation
radv: Switch to the GLSL leaf implementation
lavapipe: Remove st_shader_stage_to_ptarget
radv: Fix stack size calculation with stage ids
radv: Inline bvh build headers
radv/ci: Remove host build related fails
lavapipe: Set ss_dirty in emit_state
radv: Advertise subgroup ops for rt stages
vulkan: Add common physical device management
radv: Use the common physical device enumeration
anv: Use the common physical device enumeration
turnip: Use the common physical device enumeration
lvp: Use the common physical device enumeration
panvk: Use the common physical device enumeration
v3dv: Use the common physical device enumeration
radv: Proper handling for inactive instance nodes
radv: Deduplicate push constant structs
radv/rra: Map accel struct VAs to handles
radv/rra: Remove redundant bounds validation
radv: Make the radv_buffer_get_va parameter const
radv/rra: Replace aliasing assert with a warning
radv: Explicitly store the VA of accel structs
radv: Cleanup radv_GetInstanceProcAddr
radv: Add a common traversal build helper
radv/rq: Use the common traversal helper
radv/rtpso: Use the common traversal helper
radv: Use scalar layout for BDA references
radv: Add and use AS and scratch layout structs
radv: Fix incorrect build info indexing
radv: Use cache_uuid for accel struct compatibility
radv: Remove main_loop_case_visited
radv/rra: Transcode nodes recursively
radv: Rename node_internal to node_box32
radv: Add radv_bvh_node_box16
radv: Use half floats for box16 coords
radv/rra: Handle box16 nodes
radv/rra: Calculate bvh size requirements recursively
radv: Remove create_accel_build_shader
radv/rra: Fix dumps in the case of aliasing
radv/rra: Validate before gathering bvh info
radv/rra: Add basic header validation
radv/rra: Continue dumping accel structs if validation fails
radv/rra: Use the accel struct type for header validation
radv/rt: Fix setting tmax for opaque AABBs
radv/rt: Load instance id and custom index on demand
radv/rt: Set vars.arg in the traversal shader
radv/rt: Restore prev barycentrics when rejecting hits
radv/rra: Fix copying accel structs that were not built yet
radv/ray_queries: Fix AABB handling
radv/rt: Check space before emitting descriptors
Kostiantyn Lazukin (1):
vulkan/cmd_queue: Do not generate unreachable vk_free_* calls.
Kuixi Ren (1):
radeonsi/vcn: Add ability to encode with ltr
Laurent Bigonville (1):
Try to fix FTBFS on kfreebsd architecture
Leandro Ribeiro (9):
vulkan/wsi/wayland: move some structs to beginning of code
vulkan/wsi/wayland: remove unnecessary spaces in struct fields
vulkan/wsi/wayland: introduce struct wsi_wl_surface
vulkan/wsi/wayland: take ownership of wsi_wl_surface when creating chain
vulkan/wsi/wayland: move wl_surface and wl_display from chain to struct wsi_wl_surface
vulkan/wsi/wayland: remove refcount from struct wsi_wl_display
vulkan/wsi/wayland: add default dma-buf feedback support
vulkan/wsi/wayland: add per-surface dma-buf feedback support
vulkan/wsi/wayland: avoid useless re-allocations when receiving per-surface dma-buf feedback
Leo Liu (2):
meson: add with_gallium_virgl to allow it as VA backend driver
frontends/va: fix build error for vaSyncBuffer with older VA
LingMan (10):
rusticl: Fix compilation if stdout and/or stderr aren’t symbols
rusticl/bindgen: Use `allowlist-*` instead of `whitelist-*` switches
docs/rusticl: Document minimum required bindgen version
rusticl/api: Use iterators in create_program_with_source
rusticl/api: Drop UTF-8 conversion of input source
rusticl/api: Fix creating a program if a nul byte is within the specified string length
rusticl/api: Factor pushing to the Vec out of the if
rusticl/api: Shrink unsafe block
rusticl/api: Don’t check the program source for nul bytes needlessly
rusticl/api: Interpret `lengths` as a slice of Option<NonZeroUsize>
Lionel Landwerlin (152):
anv: fixup PIPE_CONTROL restriction on gfx8
intel/ds: track untyped dataport flushes
intel/fs: store num of resume shaders in prog_data
intel/fs: fixup simd selection with shader calls
intel/compiler: document units of brw_ubo_range fields
intel/nir: specify synchronous value for tracing op
anv: don’t return incorrect error code for vkCreateDescriptorPool
intel/drm-shim: update shim to support DG2
anv: fix GetPipelineExecutableStatistics for ray tracing pipelines
anv: fixup assertions on lowered storage formats
anv: fix assert in memory budget code when extension is not supported
anv: prevent trying to mmap non host visible memory
anv: remove the LOCAL_MEM allocation bit
intel/fs: fix load_scratch intrinsic
intel/fs: fixup scratch load/store handling on Gfx12.5+
intel/fs: switch compute push constant loads to LSC
intel/fs: remove unused opcode
intel/fs: fixup SEND validation check on overlapping src0/src1
intel/fs: switch register allocation spilling to use LSC on Gfx12.5+
intel/fs: port block a64/surface messages to use LSC
intel/fs: bump max SIMD size for A64 atomics with LSC
intel: add a hasvk vulkan driver
hasvk: remove entrypoints for gfx9+
hasvk: stop advertising Vk 1.3 on non-softpin
hasvk: remove acceleration structure code
hasvk: remove ray tracing code
hasvk: remove mesh code
anv: silence fedora build warning
anv: remove support for gfx7/8
anv: remove unused gfx7 code
anv/tests: remove back allocation tests
anv/hasvk: tweak loading failure messages
anv: remove non present field in upstream spec
vulkan: fixup 1.3.226 update
anv: enable EXT_depth_clamp_zero_one
hasvk: expose VK_EXT_depth_clamp_zero_one
anv: add a new NO_LOCAL_MEM allocation flag
anv: don’t export flush_compute_state
anv: don’t export gfx state flushing helper
anv: combine flushes in Draw/DrawIndexed/DrawIndirectByteCountEXT
anv: add missing tracepoint
blorp: defined operations for debug purposes
intel/utrace: make blorp tracepoints more readable
anv: trace xfb queries
anv: clear descriptorsets if AllocateDescriptorSets fails
anv: add support for EXT_mutable_descriptor_type
anv: add missing wokraround for texture cache invalidate
intel/nir/rt: fixup generate hit
intel/nir/rt: spill/fill the entire ray query data
intel/nir/rt: remove ray query mem hit writes at initialization
intel/nir/rt: fix ray query proceed level
intel/nir/rt: change scratch check validation
intel/nir/rt: store ray query state in scratch
intel/fs: fixup a64 messages
intel/nir/rt: fixup alignment of memcpy iterations
ci: add python3-ply to debian/fedora images
ci: disable intel-clc on fedora
ci: build our own version of the LLVM SPIRV translator
ci/debian: don’t use libclc from the system
ci: bump llvm to 13 for some builders
ci: disable intel-clc on debian-vulkan
anv: remove HDC flush from invalidate bits
meson: bump required llvm-spirv version with intel-clc
intel/devinfo: Rename & implement num_dual_subslices
intel/rt: fix procedural primitive ID access
intel/nir: reuse rt helper
intel/fs: take a builder arg for resolve_source_modifiers()
intel/nir: fixup preserved metadata in rayquery lowering
intel/nir: fix potential invalid function impl ptr usage
intel/nir: disable assert on async stack id
intel/fs: disable split_array_vars on opencl kernels
genxml: add missing no duplicate anyhit flag
intel/mi_builder: allow half GP registers for dereferencing
anv: disable SIMD16 for RT shaders
anv: add new command buffer space allocation
anv: setup scratch space correctly for RT shaders
anv: bump client visible address heap to 32GiB
anv: use the right dispatch size for tracing shaders
anv: flag BO for write combine when CPU visible and potentially in lmem
iris: better error message with GuC loading failures
intel: add INTEL_DEBUG=capture-all to capture everything upon hang
pps: enable track_event in intel.cfg
anv: add grl build dependency on entrypoints
nir: fix NIR_DEBUG=validate_ssa_dominance
vulkan/runtime: don’t lookup the pipeline disk cache if disabled
anv: remove unused code
anv: comment out the Gfx8/9 VB cache key workaround for newer Gens
anv: limit calls into cmd_buffer_flush_dynamic_state
anv: optimize 3DSTATE_VF emission
anv: remove multiple push descriptors
isl: avoid gfx version switch cases on the hot path
anv: limit push constant reemission
anv: track descriptor set layout flags
anv: initialization pipeline layout to 0s
anv: add analysis for push descriptor uses and store it in shader cache
anv: reduce BT emissions & surface state writes with push descriptors
anv: add a layer for hitman3
nir/lower_shader_calls: rematerialize more trivial values
nir/lower_shader_calls: lower scratch access to format internally
nir/lower_shader_calls: avoid respilling values
nir/lower_shader_calls: rematerialize values in more complex cases
nir/lower_shader_calls: add NIR_PASS_V internally
nir/lower_shader_calls: cleanup shaders a bit more post split
nir/lower_shader_calls: add an option structure for future optimizations
nir/lower_shader_calls: add a pass to trim scratch values
nir/lower_shader_calls: add a pass to sort/pack values on the stack
nir/lower_shader_calls: move scratch loads closer to where they’re needed
nir/lower_shader_calls: run opt_cse after lower stack intrinsics
radv: tweak lower_shader_calls parameters
anv: enable localized loads for lower_shader_calls
anv: disable mesh in memcpy
anv: init major/minor before WSI
vulkan/wsi/wl: correctly find whether the compositor uses the same GPU
nir/divergence_analysis: add some missing RT intrinsics
nir/divergence_analysis: add missing desc_set_address_intel
intel/clc: assert when libclc shader is not found
drm-uapi: bump headers
isl: add new MOCS field for protected buffers
intel/common: add detection of protected context support
dri: rename PROTECTED_CONTENT in PROTECTED_SURFACE
gallium: rename PROTECTED_CONTENT cap into PROTECTED_SURFACE
egl: Add EGL_EXT_protected_content support
st/gallium: plumb protected context creation
iris: handle protected BO creation
iris: Emit protection & session ID on protected command buffers
iris: enable protected contexts
intel/fs: require UNDEFs register offsets to be aligned to REG_SIZE
intel/fs: make split_virtual_grfs deal with partial undefs
intel/fs: reduce liveness of variables in lowering passes
intel/fs: use fs implementation of dump_instructions
intel/compiler: don’t allocate compaction arrays on the stack
anv: remove shader fp64 inspection after parsing
anv: Reduce RHWO optimization (Wa_1508744258)
anv: fix missing VkPhysicalDeviceExtendedDynamicState3PropertiesEXT handling
anv: fixup invalid enum for nir environment
anv: split internal surface states from descriptors
anv: bump pool bucket max allocation size
anv: get rid of ilog2_round_up
intel/perf: allocate cleared counter infos
intel/perf: fix B/C counters accumulation in non query mode
nir/lower_explicit_io: fix metadata preserve
nir/lower_shader_calls: update metadata before validation
nir/lower_shader_calls: wrap only jumps rather than entire code blocks
Revert “nir/lower_shader_calls: put inserted instructions into a dummy block”
intel/fs: put scratch surface in the surface state heap
anv: fix 3d state initialization
anv: ensure CPS is initialized when KHR_fragment_shading_rate is disabled
anv: fixup context initialization on DG2
intel/fs: improve Wa_22013689345 workaround
blorp: support negative offsets in addresses
anv: generate correct addresses for state pool offsets
nir/divergence: add missing btd_shader_type_intel
Liviu Prodea (5):
d3d12/dzn/spirv2dxil: Require version library
Microsoft clc: strip lib prefix Otherwise OpenCLon12 ICD can’t load it
meson: Microsoft / maybe Intel CLC need the all-targets workaround just like clover
meson: Only draw with llvm depends on native directly Tests, softpipe or AMD drivers don’t depend on it directly
clc/clover: Link clang statically when shared-llvm is disabled
Lucas Stach (38):
etnaviv: properly check number of layers in surface creation
etnaviv: fix TS buffer allocation for 3D textures
etnaviv: allow 3D textures with TS in transfer
etnaviv: don’t expose array and 3D texture support on pre-halti GPUs
etnaviv: expose ARB_draw_instanced
etnaviv: mark instanced draw extensions as supported in docs/features.txt
etnaviv: move checking for MC2.0 for TS into screen init
etnaviv: use linear PE rendering only on properly aligned surfaces
etnaviv: add debug option to disable linear PE feature
etnaviv: fill alpha channel for DXT1_RGB textures
etnaviv: don’t use TS with multi-layer resources
etnaviv: texture-desc: sample 1D textures using 2D mode
etnaviv: texture-desc: drop superfluous condition
etnaviv: rewrite sampler TS check
etnaviv: slim down etna_shader_key
etnaviv: pass shader key by reference
etnaviv: properly reference flush_resources
etnaviv: move etna_layout_multiple into etnaviv_resource.c
etnaviv: assert valid layout in etna_layout_multiple
etnaviv: compute linear resource Y alignment in etna_layout_multiple
etnaviv: handle compressed texture formats in etna_layout_multiple
etnaviv: increase alignment for MSAA resources
etnaviv: rs: fix MSAA alignment adjustment
etnaviv: rs: try to find exact format match first
etnaviv: properly size TS buffer for MSAA resources
etnaviv: set LOGIC_OP_UNK24 for MSAA rendering on SMALL_MSAA GPUs
etnaviv: disable PE_COLOR_FORMAT_OVERWRITE with MSAA
etnaviv: blt: scale operations by MSAA mode
etnaviv: blt: try to find exact format match first
etnaviv: update headers from rnndb
etnaviv: fix late Z with MSAA active
etnaviv: fix shader register control with MSAA
etnaviv: switch to late Z when linear PE is used
etnaviv: fix tile status interaction with write mappings
etnaviv: always use RS align when GPU has TEXTURE_HALIGN feature
etnaviv: rs: fix blits with insufficient alignment for dual pipe operation
etnaviv: blt: use correct TS offset in clear operations
etnaviv: fix wrong surface TS clear size
Luis Felipe Strano Moraes (8):
anv: fix FTBFS on grl due to changes in clang 15
anv: reword info flag in intel_clc’s getopt to avoid clash
anv: add missing separator to help for intel_clc
anv: fixing typo on description of output flag for intel_clc
anv: added proper handling for input argument in intel_clc
anv: adding parsetab.py to the .gitignore for grl
meson: simplified meson for enabling ray-tracing on Intel
meson: only enable intel-clc for x86_64 builds
M Henning (1):
nv/nir: Set ssbo CacheMode from intrinsic access
Marcin Ślusarz (53):
intel/compiler: fix mesh urb write regression
nir/lower_task_shader: print shader after each step
intel/compiler: add support for non-zero base in [load|store]_shared intrins
Revert “nir/lower_task_shader: don’t use base index for shared memory intrinsics”
anv: disable task redistribution
spirv, compiler: add “bool nv” to shader_info.mesh
intel/compiler: implement EXT_mesh_shader
anv: check EXT_mesh_shader whenever NV_mesh_shader is checked
anv: replace VK_SHADER_STAGE_[TASK|MESH]_BIT_NV with VK_SHADER_STAGE_[TASK|MESH]_BIT_EXT
anv: implement EXT_mesh_shader
anv: implement draw calls for EXT_mesh_shader
anv: enable EXT_mesh_shader
anv: fix emission of primitive replication packet for mesh stage
nir: add uses_wide_subgroup_intrinsics to task/mesh shader_info
anv: add support for anv_assume_full_subgroups to task & mesh stages
anv: small cleanup of anv_graphics_pipeline_compile
nir, anv, hasvk, radv: pull uses_wide_subgroup_intrinsics into shader_info
intel/compiler: remove second shading rate lowering for mesh
intel/compiler: print shader after successful brw_nir_lower_shading_rate_output
intel/compiler: use nir_lower_task_shader pass
nir/lower_task_shader: lower small stores & loads to shared when requested
intel/compiler/task: use shared memory for small task payload loads & stores
intel/compiler: refactor brw_nir_lower_mem_access_bit_sizes
intel/compiler: add support for 8/16 bits task payload loads
radv: use nir_shader_instructions_pass in radv_nir_lower_ycbcr_textures
iris: remove invalid nir_metadata_preserve from iris_fix_edge_flags
crocus: remove invalid nir_metadata_preserve from crocus_fix_edge_flags
glsl: use nir_shader_instructions_pass in gl_nir_lower_atomics
glsl: use nir_shader_instructions_pass in gl_nir_lower_images
glsl: use nir_shader_instructions_pass in gl_nir_lower_samplers_as_deref
nir: use nir_shader_instructions_pass in nir_lower_alu
nir: use nir_shader_instructions_pass in nir_lower_bool_to_bitsize
nir: use nir_shader_instructions_pass in nir_lower_bool_to_float
nir: use nir_shader_instructions_pass in nir_lower_bool_to_int32
nir: use nir_shader_instructions_pass in nir_lower_64bit_phis
nir: use nir_shader_instructions_pass in nir_lower_clamp_color_outputs
nir: use nir_shader_instructions_pass in nir_lower_clip_disable
nir: use nir_shader_instructions_pass in nir_lower_clip_halfz
nir: use nir_shader_instructions_pass in nir_lower_drawpixels
nir: use nir_shader_instructions_pass in nir_lower_fb_read
nir: use nir_shader_instructions_pass in nir_lower_frexp
nir: use nir_metadata_none instead of its value
nir: use nir_shader_instructions_pass in nir_lower_interpolation
nir: use nir_shader_instructions_pass in nir_lower_samplers
nir: use nir_shader_instructions_pass in nir_split_var_copies
nir: use nir_shader_instructions_pass in nir_split_per_member_structs
intel/compiler: fix loading of draw_id from task & mesh payload
anv: add support for mesh shading in INTEL_MEASURE
intel/ds: add new category/stage for draw mesh events
anv: add mesh shading tracepoints
intel/genxml: fix width of 3DSTATE_TASK_CONTROL.MaximumNumberofThreadGroups
anv: set 3DSTATE_[MESH|TASK]_CONTROL.MaximumNumberofThreadGroups
anv: program 3DSTATE_MESH_DISTRIB with the recommended values
Marek Olšák (135):
nir: add nir_intrinsic_image_samples_identical
nir: add nir_intrinsic_image_descriptor_amd
nir: add nir_texop_descriptor_amd
nir: add shader_info::uses_resource_info_query for txs, levels, samples, etc.
ac/llvm: implement nir_intrinsic_image_deref_samples_identical
ac/llvm: implement nir_intrinsic_image_deref_descriptor_amd
ac/llvm: implement nir_texop_descriptor_amd
ac/nir: add ac_nir_lower_resinfo
radeonsi,radv: run ac_nir_lower_resinfo
ac/llvm: remove all resinfo code now that it’s lowered
radeonsi: implement a non-scaled compute blit+resolve and use it on gfx11
radeonsi: don’t assume that TC_ACTION_ENA invalidates L1 cache on gfx9
radeonsi/ci: update failing tests on navi21
radeonsi: fix a regression due to reordering PIPE_SHADER_*
ac/llvm: handle external textures in ac_nir_lower_resinfo
radeonsi: merge both fail paths in si_set_vb_descriptor
radeonsi: add vertex buffers into the BO list in set_vertex_buffers
radeonsi: remove vb_descriptors_gpu_list only used for debugging
radeonsi: remove temporary si_context::vb_descriptor_user_sgprs
radeonsi: use si_cp_dma_prefetch_inline for prefetching VBO descriptors
radeonsi: use do..while loops and other cosmetic changes in display list path
ttn: set the correct sampler declaration type in the presense of txs and lod
gallivm: fix TXQ crash with MSAA samplers
gallivm: initialize texture_unit_offset in emit_size_query
gallium/u_blitter: remove unused code for integer MSAA resolve
gallium/u_blitter: fix the has_txf support condition
gallium/u_blitter: treat Z scaling as scaled blits
gallium/u_blitter: clean up IMMs in util_make_fs_blit_msaa_gen
gallium/u_blitter: make nearest filtering emulation using TXF conformant
gallium/u_blitter: make the bilinear filter for MSAA resolving conformant
glthread: unbind framebuffers in glDeleteFramebuffers
glthread: call _mesa_glthread_DeleteBuffers unconditionally
glthread: track GL_READ_FRAMEBUFFER bindings too
glthread: track glBindFramebufferEXT, not just glBindFramebuffer
glthread: add missing code for GL_ARB_sparse_texture
util/xmlconfig: allow drivers to override option values
radeonsi: rename stop_exec_on_failure -> allow_context_lost
radeonsi: allow lost context with aux_contexts
winsys/amdgpu: terminate process on CS rejection when unrobust context is lost
winsys/amdgpu: flatten huge if and reorder code in amdgpu_cs_submit_ib
winsys/amdgpu: change num_rejected_cs to a bool flag
radeonsi/ci: make the running script easy to use
Revert “mesa: implement a display list / glBitmap texture atlas”
mesa: create glBitmap textures while creating display lists
st/mesa: fix potential use-after-free in draw_bitmap_quad
ci: update pass/fail results for spec@!opengl 1.0@gl-1.0-dlist-bitmap
winsys/amdgpu: use cached GTT for command buffers and don’t set the 32BIT flag
ci: disable the freedreno farm.
radeonsi/ci: add skips of tests not built on Linux
radeonsi: don’t pass num_patches via derived_tess_state, pass it via si_context
radeonsi: make the primitive type constant with tessellation
radeonsi: move *rs to its only use in si_draw
radeonsi: remove the prim_restart_tri_strips_only option
radeonsi: move fixing ngg_culling into si_update_shaders
radeonsi: unify the logic that sets rast_prim
radeonsi: precompute GS_OUT_PRIM in advance
radeonsi: set GS_STATE_OUTPRIM and PROVOKING_VTX_INDEX only when they change
radeonsi: cosmetic changes in si_emit_rasterizer_prim_state
radeonsi: remove 1 draw packet order codepath, keep the first one
radeonsi: move patch_vertices-related tessellation updates out of si_draw
radeonsi: move set_patch_vertices into si_state_shaders.cpp
ac/gpu_info: handle LPDDR4 and 5 in ac_memory_ops_per_clock
ac/surface: disallow 256KB swizzle modes on gfx11 APUs
radeonsi: set VS_OUT_MISC_SIDE_BUS_ENA=1 for clip distance exports on gfx10.3
mesa: fix glDrawRangeElementsBaseVertex should be compiled into display list
glthread: fix draws not compiled into a display list should generate an error
glthread: generate errors for glGet functions between glBegin/End
glthread: always sync for glShaderSource because invalid params can crash
glthread: fix glGetIntegerv(GL_CLIENT_ACTIVE_TEXTURE)
glthread: work around GL_INVALID_OPERATION with OpenGL ES 1.x draws
frontend/dri: make the backgroundCallable extension optional
frontend/dri: sync glthread when calling from the app side
radeonsi: simplify radeonsi_zerovram implementation
driconf: disable glthread for DeusEx:MD and F1 2015 due to a perf drop
radeonsi/ci: add glx@glx-swap-event_async to CI failures for glthread
radeonsi: don’t flush asynchronously for fence_server_signal
glthread: execute glSignalSemaphoreEXT synchronously
radeonsi: enable glthread by default
gallium/u_threaded: add an option for unsychronized create_fence_fd
mesa: replace ALLOC_PRIMS with persistently-allocated context arrays
mesa: remove _mesa_draw_gallium_fallback by adapting st_feedback_draw_vbo
mesa: remove unused code using _mesa_prim
mesa: clean up st_indirect_draw_vbo interface and callers
mesa: trivial simplifications in _mesa_reference_buffer_object_
mesa: inline _mesa_reference_buffer_object
mesa: inline _mesa_handle_bind_buffer_gen and correct things
mesa: restructure bind_buffer_object for better performance
mesa: remove unused gl_buffer_object::Data and Written
mesa: reorder and pack gl_buffer_object
vbo: don’t call _glapi_set_dispatch for GL_COMPILE_AND_EXECUTE loopback
mesa: don’t restore the dispatch at the end of glCallList
mesa: remove unused function _mesa_get_dispatch
mesa: initialize OutsideBeginEnd directly instead of through Exec
glapi: rename ‘vtxfmt’ to ‘beginend’ to make it clear
api_hw_select_init_h.py: simplify the code
mesa: remove deprecated comments
mesa: rename GL dispatch initialization functions to make the intent clear
glthread: use GLenum16 for enums, but clamp it to 0xffff to get correct errors
glthread: use 8-bit GLenum for prim modes where it results in better packing
glthread,hud: draw per-frame values and expose the number of batches per frame
glthread: skip glMultMatrixf if it’s identity
mesa: use memcmp instead of floating-point comparisons in glMultMatrixf
mesa: make glPopMatrix a no-op if the matrix hasn’t changed
radeonsi: rename si_create_multi_fence -> si_alloc_fence
winsys/amdgpu: fix (enable) preemption for chained IBs
radeonsi: fix max_dw computation for CS preambles
gl_marshal.py: remove/simplify parameters
gl_marshal.py: move the unmarshal table into a separately generated file
gl_marshal.py: rework how the marshal dispatch table is initialized
gl_marshal.py: remove the -O1 hack and manual SET_* inlining
gl_marshal.py: inline functions for readability
gl_marshal.py: simplify print_sync_call and rename to print_call
glthread: use a constant expression instead of cmd_size in custom functions
glthread: add more DrawArrays/Elements variants with fewer fields
glapi: remove EXT and ARB suffixes from Draw functions
glthread: demystify Draw function names
glthread: rewrite CallList merging and do it in the app thread
gallium/u_threaded: don’t call simplify_draw_info redundantly
gl_marshal.py: C style fixups
glthread: merge and collapse glBindBuffer calls that unbind and then bind
glthread remove the unused *last pointer from unmarshal functions
glthread: don’t sync for glIsEnabled(GL_BLEND, GL_LIGHTING, GL_POLYGON_STIPPLE)
cso: start without u_vbuf by default if it’s not always used
cso: constify some parameters to remove typecasts
cso: fix broken optimization for sampler state lookups
cso: don’t destroy CSOs that are saved
cso: inline more functions because some parameters like key_size are literals
cso: make memcmp and hash computation use a literal key size for blend state
driconf: add a workaround for a cursor issue with kwin_wayland
driconf: add a workaround for Cossacks 3
nir: add nir_intrinsic_optimization_barrier_vgpr_amd for LLVM
radeonsi: force the MSAA resolve shader to use 1 clause for MSAA loads
radeonsi/gfx11: fix compute scratch buffer - WAVES is always per SE
st/mesa: suppress async glthread flushing for GLX_EXT_texture_from_pixmap
st/vdpau: fix interop with GL
Marek Vasut (1):
etnaviv: Use old set of state registers for PE configuration on GC880
Mario Kleiner (1):
vulkan/wsi/display: Reset connector state in vkReleaseDisplay().
Mark Collins (8):
tu: Implement VK_EXT_non_seamless_cube_map
tu: Allocate private memory per-device instead of per-pipeline
tu: Clamp priority in DRM submitqueue creation
tu: Expose VK_EXT_tooling_info using common implementation
tu: Retain allocated CSes in tu_autotune_on_submit
tu: Optimize hash_renderpass_instance by removing XXH64_update
tu: Only write `A6XX_PC_PRIMITIVE_CNTL_0` if changed
tu: Clean up variable usage in `tu6_draw_common`
Mark Janes (6):
Revert “anv: Do not copy garbage to batch_bo”
anv: Track BOs that need a write-combined mapping
anv: Use WC mapped local memory for block pool BO
anv: Allocate buffers with write-combined local memory
anv: compile anv_acceleration_structure.c
anv: work around improper buffer usage in hitman3
Martin Krastev (1):
meson: add svga gallium driver to ‘auto’ group on arm/aarch64
Martin Roukala (né Peres) (20):
radv/ci: document a recent regression
radv/ci: move some tests from the vega10 fail to its flake list
radv/ci: add more tests to the flake list of vega10
radv/ci: skip host_write_transfer_src.1048576 on renoir
radv/ci: bump the console activity timeout of VanGogh to 3 minutes
radv/ci: uprev boot2container
radv/ci: disable the POLARIS10 jobs
radv/ci: disable kabini’s vkd3d job
radv/ci: run vkcts on the two steam decks in parallel
radv/ci: document an unstable test
radv/ci: move some tests from the renoir fail to its flake list
ci/b2c: add support for the new format of CI_RUNNER_TAGS
radv/ci: bump the job count on navi21
radv/ci: run two jobs in parallel to reduce the execution time
zink: update the RADV expectations
zink: mark a test as a flake in RADV expectations
zink/ci: mark another test as fixed after the frontend caching series
zink/ci: add another subtest to the list of known failures for radv
Revert “glx: Fix drawable refcounting for naked Windows”
Revert “glx/dri: Fix DRI drawable release at MakeCurrent time”
Matt Coster (3):
util: Include stddef.h in util/macros.h
pvr: Add pvr_csb_unpack().
pvr: Fix assignment to ISP back_a.sref
Matt Turner (4):
intel/tools: Also look for ‘batch’ tag
freedreno/ir3: Don’t use the broken idiv lowering
freedreno/ir3: Use nir_opt_idiv_const
intel/dev: Set display_ver = 13 on all ADL/RPL/DG2
Mauro Rossi (5):
util: glsl2spirv.py: ensure ‘#endif’ is printed in new line
hasvk: fix android build and reported API version
Android.mk: Fix gnu++14 related build failures
r600/sfn: allow building with clang 6 (Android 9)
AOSP: Add intel_hasvk vulkan library suffix
Max Kellermann (2):
gallium/u_threaded: add missing reference counts for draw_multi slots
gallium/u_threaded: fix offset calculation for draw_multi slots
Michael Skorokhodov (1):
egl: Return EGL_BAD_MATCH for invalid share_list
Michael Tang (3):
microsoft/compiler: Add dxil_logger type and parameter to nir_to_dxil
nir: add nir_instr_as_str
microsoft/compiler: Change calls to NIR_INSTR_UNSUPPORTED to log to dxil_logger instead
Michel Dänzer (6):
gallivm: Fix LLVMAtomicRMWBinOpFMax spelling
lavapipe: Fix float32_atomic_min_max spelling
winsys/amdgpu: Set RADEON_FLAG_32BIT again
radeonsi/ci: Test piglit quick_shader profile as well
Revert “egl/glx: add fallback for zink loading”
vulkan/wsi/wayland: Set num_modifier_lists = 0 if num_drm_modifiers == 0
Mihai Preda (21):
gallivm: LLVM-15 opaque pointers: disable LLVMGetElementType(ptr_type)
gallivm: drop unused “emit_load” in lp_llvm_buffer_member()
gallium: drop unused macros in draw_llvm.h
gallivm: fixes for LLVM-15 opaque pointers in lp_bld_nir_aos.c
gallivm: fixes for LLVM-15 opaque pointers in lp_bld_nir_soa.c
gallivm: fixes for LLVM-15 opaque pointers in lp_bld_jit_types.c
gallivm: fixes for LLVM-15 opaque pointers in lp_bld_format_s3tc.c
gallivm: fixes for LLVM-15 opaque pointers in lp_bld_struct.c
gallivm: fixes for LLVM-15 opaque pointers in lp_bld_format_soa.c
gallium/draw: fix LLVM opaque pointer warnings in store_clip()
gallium/draw: fix LLVM opaque pointer warnings in generate_clipmask()
gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_fetch_input()
gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_end_primitive()
gallium/draw: fix LLVM opaque pointer warnings in draw_gs_llvm_epilogue()
gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_fetch_input()
gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_fetch_output()
gallium/draw: fix LLVM opaque pointer warnings in draw_tcs_llvm_emit_store_output()
gallium/draw: fix LLVM opaque pointer warnings in store_aos()
gallivm: LLVM opaque pointer fixes in lp_bld_sample.c
gallivm: LLVM opaque pointers: add lp_build_array_get[_ptr]2 in lp_bld_struct.c
gallivm: LLVM opaque pointers: use lp_build_array_get_ptr2() in lp_bld_nir_soa.c
Mike Blumenkrantz (443):
zink: handle mutable swapchain images with dmabuf
zink: store VkFormatFeatureFlags on creation
zink: use stored format features for blit functionality
zink: use modifier feature flags during surface creation when necessary
zink: init cache_put program fence on program creation
zink: always set vertex dynamic states
zink: hook up pipeline_library extensions
zink: change zink_create_gfx_program signature
zink: break out program primtype->idx conversion function
zink: reorganize zink_gfx_pipeline_state a little
zink: set program pipeline array idx earlier in zink_get_gfx_pipeline
zink: add a graphics pipeline library implementation
tgsi_to_nir: fix clipdistance store writemask
tgsi_to_nir: handle compact arrays for clipdistance
zink: force flush clears on fb change if fb geometry changes
zink: force a new framebuffer for clear_depth_stencil if the clear region is big
zink: use maintenance4
zink: allow sw loading with D3D_ALWAYS_SOFTWARE for nine
zink: drop mode_changed check from linewidth/depthbias draw updates
zink: handle unscaled depth bias from nine
zink: handle !half_pixel_center
zink: fix return for PIPE_CAP_DEPTH_CLIP_DISABLE
zink: explicitly set nir cursor in rewrite_and_discard_read
zink: handle invalid gl_TexCoord reads
zink: rewrite all undefined shader reads as 0001 instead of undef
zink: export PIPE_CAP_MULTISAMPLE_Z_RESOLVE
zink: support PIPE_QUERY_TIMESTAMP_DISJOINT
nine: check return on resource_get_handle
zink: add u_queue.h to kopper header
zink: demote dmabuf tiling to linear if modifiers aren’t supported
zink: use modifier_aspect to check for modifier plane in zink_resource_get_param
zink: don’t add modifiers if EXT_image_drm_format_modifier isn’t present
zink: add all format modifiers when adding for dmabuf export
zink: don’t fixup sparse texops
zink: remove an old RGBA4 nvidia workaround
vulkan: Update the XML and headers to 1.3.224
radv: fix return type for meta resolve shaders
nir/validate: clamp unsized tex dests to 32bit
nir/validate: add some (light) validation for sampler type matching
radv: remove stupid conditional from draw path
radv: force inlining on another draw function
mesa: fix blending when using luminance/intensity emulation
mesa: require render target bind for A/L/I in format selection
mesa/st: add ignore_srgb_decode param to st_convert_sampler
mesa/st: plumb glsl130_or_later through sampler creation
mesa/st: use plumbed value for srgb_skip_decode in sampler conversion
gallium: convert PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE to enum
gallium: add PIPE_QUIRK_TEXTURE_BORDER_COLOR_SWIZZLE_ALPHA_NOT_W
util/format: handle SRGB in util_format_luminance_to_red()
zink: stop modifying samplerview swizzle on base struct
zink: add some format functions for emulating alpha formats
zink: reject native blits for emulated alpha formats
zink: handle emulated alpha format clears
zink: support emulating alpha formats using new border color quirk
zink: add a driver workaround for broken L4A4 on nvidia
mesa: track format swizzles on teximage objects
mesa/st: use pre-calculated format swizzle for samplerviews
mesa: track gl_texture_object swizzle internally
mesa/st: use tracked samplerview swizzle values
mesa/st: simplify sampler border color swizzling
zink: remove cached descriptor mode
zink: remove checks for lazy descriptor mode + templates ext
zink: remove descriptor vtable
zink: delete a lot of descriptor code
zink: move lazy descriptor functions into zink_descriptors.c
zink: delete unused struct types
zink: move all types/enums into zink_types.h
zink: move lazy descriptor data types into zink_types.h
zink: delete some unused descriptor struct members
zink: remove descriptor dummy_set
zink: merge context descriptor data structs
zink: merge batch descriptor data structs
zink: merge context descriptor data onto context struct
zink: merge program descriptor data onto program struct
zink: merge batch descriptor data onto batch state
zink: reorder some descriptor structs
zink: rename _lazy descriptor stuff
zink: use statically sized array for descriptor allocation
zink: ZINK_SHADER_COUNT -> ZINK_GFX_SHADER_COUNT
zink: explicitly define ZINK_GFX_SHADER_COUNT
zink: PIPE_SHADER_TYPES -> MESA_SHADER_STAGES
zink: remove all pipe_shader_type usage
zink: delete zink_shader_stage()
zink: fix program cache comparisons
zink: require EXT_non_seamless_cube_map for GPL support
zink: (correctly) require extendedDynamicState2PatchControlPoints for GPL
zink: use a maybe more accurate wild guess for pcp-less gpl
zink: require VK_KHR_descriptor_update_template
zink: add an id member for zink_descriptor_pool_key
zink: use a dynarray instead of hash table for tracking pools
zink: use a single allocation for zink_descriptor_layout_key
zink: rework descriptor pool overflow
nir: add uses_bindless flag for shader_info
zink: bail out of dmabuf resource creation when srgb explosion is expected
zink: iterate over all modifiers and nuke the ones that aren’t supported
zink: try to reuse swapchain modifier for dmabuf export
ci: remove broken device-select-layer from build
vk/render_pass: don’t deref null resolve attachments
Revert “zink: try to reuse swapchain modifier for dmabuf export”
Revert “zink: add all format modifiers when adding for dmabuf export”
zink: deduplicate some program creation code
zink: deduplicate some program destroy code
zink: move gfx program update/creation into zink_program.c
zink: remove cpu conditional render hack
zink: add c++ guards to zink_pipeline.h
zink: move pipeline cache structs to zink_program.h
zink: move gfx pipeline recalc to c++
zink: move pipeline state comparison to c++ template
zink: use template to eliminate more instructions in pipeline state comparison
zink: remove some gfx pipeline state members
zink: fix shader key struct packing
zink: rework bit iteration in update_gfx_shader_modules to use for loop
zink: simplify shader key comparison by splitting out non-generated tcs
zink: plumb some screen info through gfx shader creation
zink: plumb screen info through shader key comparison
zink: split out nonseamless/inline shader module info calculation
zink: split out gfx shader module creation from cache searching
zink: split out first-time shader module creation
zink: use a list for free batch states
zink: add templates for pipeline stage comparison
zink: use stage comparison template to ignore vertices_per_patch
zink: cache dynamic render vs renderpass pipelines separately
zink: make program cache values more intelligible
zink: change u_foreach_bit to regular for loop in zink_gfx_program_update
zink: use dynarray instead of list for internal shader cache
zink: pass shader stage as param for gfx module update
zink: constify shader module variable
zink: make zink_bo.h compile in c++
zink: add more c++ guards to headers
zink: remove c++ guard from zink_resource.h
zink: move zink_batch_resource_usage_set to be static inline
zink: add is_buffer param to zink_batch_resource_usage_set
zink: use PIPE_CAP_RGB_OVERRIDE_DST_ALPHA_BLEND
zink: merge all the batch state sets onto the struct
zink: make batch internal api static again
zink: split resource tracking into two sets for buffer/texture
zink: track which stages in gfx programs are using inlined uniforms
zink: add gfx pipeline lookup shortcut
st_pbo/compute: handle download failures with fallback
st_pbo/compute: fix 1D_ARRAY offsets
st_pbo/compute: fix 1D coord dimension by pre-trimming vectors
st_pbo/compute: pre-clamp shader geometry to 16bit
st_pbo/compute: pre-clamp loaded geometry based on coord components
zink: handle nir_intrinsic_sparse_residency_code_and mechanics
zink: ignore nir_texop_lod for tex dest matching
vulkan: Update the XML and headers to 1.3.225
zink: support PIPE_CAP_FBFETCH_COHERENT
tu: fix invalid free on alloc failure
lavapipe: stop tracking descriptor image layout
lavapipe: use cso for compute samplers too
lavapipe: remove lvp_sampler::state
lavapipe: replace lvp_sampler internals with pipe_sampler_state
lavapipe: use pipe_sampler_state directly in descriptor info
lavapipe: delete lvp_buffer::offset
lavapipe: use gallium buffer descriptor types directly
lavapipe: apply VK_WHOLE_SIZE to bufferviews at creation
lavapipe: create gallium descriptor image/sampler view types for views
lavapipe: delete some code
zink: use screen param for zink_descriptor_program_deinit
zink: allow programs to solely manage descriptor deinit
zink: create compute programs from compute shaders directly
zink: initialize cache_get_thread unconditionally
zink: add use_local_size flag to compute programs
zink: don’t call util_queue_fence_init in zink_screen_get_pipeline_cache()
zink: add param to allow cache_get jobs to run directly
zink: add a pipeline shortcut for basic compute programs
zink: merge compute program hash table onto program struct
zink: don’t add compute base pipeline to hash table
zink: remove use_local_size from compute pipeline state
zink: stop zeroing local size if current compute doesn’t use it
zink: use different key comparison for local_size-using compute pipelines
zink: track whether shader has cube samplers
zink: move compute pipeline cache update to caller
zink: add a param to allow zink_screen_update_pipeline_cache to run directly
zink: move compute descriptor binds down in execution
zink: add precompilation for compute shaders
zink: add partial async shader compile support
zink: add locking for descriptor layout caches
zink: add a context pointer to zink_program struct
zink: init fbfetch/bindless ctx stuff on shader create
zink: generate sha1 for compute programs
zink: add function to check whether a shader has cube samplers
zink: defer all compute shader creation
zink: don’t emit entrypoints for function temp variables
zink: check the variable mode before taking samplemask path in ntv
zink: explicitly use unsigned types for bit shifts
zink: store VkImageViewUsageCreateInfo for surface creation
zink: only add srgb mutable for images with modifiers
zink: avoid needing mutable for z/s sampling
zink: don’t set MUTABLE by default
zink: don’t emit illegal interpolation
vulkan: initialize a variable
llvmpipe: don’t assume pipe_context is always available in flush_frontbuffer
mesa: add GLSL_SOURCE
zink: add spirv builder function for demote
zink: hook up demote extension
zink: fix sharedmem ops with bit_size!=32
zink: flag all assigned output slots as mapped
zink: add a ci skip for anv
mesa/st: split out builtin shader finish
st_pbo/compute: use split shader finish funcs
mesa/st: move compute pbo shutdown to compute pbo file
gallium: add pipe_screen::driver_thread_add_job
st_pbo/compute: use new shader interface to perform async shader creation
mesa/st: add specialized pbo download shaders
mesa/st: add MESA_COMPUTE_PBO env var
zink: implement async nir creation
lavapipe: VK_EXT_attachment_feedback_loop_layout
lavapipe: ARM/EXT_rasterization_order_attachment_access
docs: add more features
radv: avoid bottlenecking on sequential sparse buffer binds
zink: handle split acquire/present
zink: uncap ssbo size
zink: remove special-casing for 64bit runtime array emission
zink: always set var used by get_ssbo_size to the 32bit var
zink: simplify ntv shader descriptor emission
zink: emit Aliased decoration for aliased bo descriptors
zink: fix atomic ssbo indexing with non-32bit values
zink: handle 64bit float atomics
zink: export PIPE_CAP_IMAGE_ATOMIC_FLOAT_ADD
zink: export PIPE_CAP_SHADER_ATOMIC_INT64
zink: don’t add void clears if a full clear already exists
zink: split up get_clear_data()
zink: make void clears more robust
zink: rewrite clears on fb bind if only the format has changed
zink: add have_vulkan13 to device info
zink: add functions for using ‘2’ variants of pipeline barriers
zink: add screen interfaces for pipeline barriers
zink: use screen interfaces for pipeline barriers
zink: fix/relax resolve geometry check
zink: defer acquire semaphore destruction
zink: fix atomic ssbo fadd offsets
st/bitmap: use normalized coords in samplers with lowered rects
st/drawpixels: use normalized coords in samplers with lowered rects
zink: disable GPL when sample shading is in use
anv: force inline more pipe flush functions
ci: add a panfrost flake
ci: add nouveau flakes
egl/glx: add fallback for zink loading
zink: don’t call CmdBindVertexBuffers2EXT with no attributes
zink: don’t always set VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT with gpl
zink: clamp z/s formats to aspected format for border colors
zink: move color channel clamping to zink_format.c
zink: add border color clamping when customBorderColorWithoutFormat isn’t supported
zink: add srgb border color clamping
zink: add stencil border color clamping
zink: check format compatibility up front when creating framebuffer surface
zink: rework flush_frontbuffer to always flush
zink: defer more semaphore destruction
zink: rework batch tracking for resources
zink bump batch state limit a bit
zink: split out bind_sampler_states hook for drivers without EXT_non_seamless_cube_map
zink: remove batch tracking/usage from view types
zink: remove batch usage from sampler states
zink: delete more sw conditional render handling
zink: delete some descriptor caching cruft
glsl: fix gl_CullDistance xfb linking
zink: handle culldistance xfb outputs like clipdistance
zink: track a mask of gfx stages remaining in gfx programs
zink: track the owner context for gfx programs
zink: use screen params for program reference functions
zink: don’t try to delete programs from the cache if stages have been modified
zink: add locking for program caches
zink: use program’s context for cache deletion
zink: use screen param for zink_shader_free()
zink: PIPE_CAP_SHAREABLE_SHADERS
radv: ALWAYS_INLINE radv_after_draw
radv: ALWAYS_INLINE radv_flush_descriptors
radv: ALWAYS_INLINE radv_is_streamout_enabled()
radv: store pointer to sgprs for last vertex stage
radv: use direct access to last_vgt_api_stage_locs for sgpr emission
zink: add a bool flag for decomposed vertex elements
zink: check on init whether decomposed attrs are needed
zink: wrap zink_shader_key_base access for nonseamless cubemap use
zink: remove a bunch of casts from shader key inlines
zink: handle inline uniforms during first-time shader generation
zink: copy the non-dirty shader stages when updating gfx program
zink: move to AoS for gfx program shader modules
zink: ALWAYS_INLINE bind_gfx_stage
zink: add some padding to small shader keys for byte-alignment
zink: add ‘optimal_keys’ handling for shader keys
zink: use optimal_keys to massively reduce size of pipeline cache comparisons
zink: split dirty_shader_stages for gfx and compute
zink: simplify bit tracking in zink_gfx_program_update()
zink: be even more granular with optimal_key program updates
zink: unspaghettify some program update code
lavapipe: set writemask for compute shader buffers
lavapipe: propagate shader access info across libraries
zink: copy optimal key always
zink: add asserts to verify optimal key state
zink: fix some batch tracking leaks
zink: free vertex_state_cache on shutdown
zink: always unset var->data.explicit_xfb_buffer
zink: fix sparse queue creation
zink: fix handling for ssbos that are just runtime arrays
zink: name bo variables using bitsize
zink: avoid overflow when clamping bufferviews
zink: allow reordered clear_buffer calls
zink: remove color_write_missing driver workaround
zink: only emit runtime array for ssbos if present
mesa: set normalized_coords for bindless texture buffer samplers
zink: enable VK_ATTACHMENT_LOAD_OP_DONT_CARE for zs in renderpasses
zink: remove zink_context::new_swapchain
zink: rename fb_binds -> fb_bind_count
zink: reorder zink_resource a little
zink: add a mask of fb attachment idx for resources
zink: use feedback loop layout to correctly handle implicit feedback loops
zink: always set VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT sometimes
nir/opt_undef: add a pass to clean up 64bit undefs
zink: don’t flatten 64bit arrays during rewrite
zink: always run optimize_nir after lower_64bit_vars
zink: split up lower_64bit_vars pass
zink: also lower 64bit function temps
aux/trace: dump line_rectangular member of rasterizer state
aux/trace: dump depth_clamp for rasterizer state
zink: always unflag unordered_write when binding image descriptors
zink: set layouts before possibly reordering image copies
zink: move zink_screen_get_pipeline_cache() calls out to callers
zink: rework ZINK_PIPELINE_LIBRARY_FORCE into ZINK_DEBUG flag
zink: move create_pipeline_lib to zink_program.c
zink: hook up VK_EXT_depth_clamp_zero_one
zink: pass actual screen->threaded to zink_tc_context_unwrap()
vulkan: Update the XML and headers to 1.3.230
lavapipe: dynamic state3
zink: add a draw barrier when unbinding a sampler-bound fb surface
zink: replace mixed_zs with zs feedback loops
glthread: use signed vertex buffer offsets when available, don’t require them
glthread: handle DeleteBuffers(n=-1) gracefully
zink: fix/improve handling for multi-component bitfield ops
zink: export PIPE_CAP_ALLOW_MAPPED_BUFFERS_DURING_EXECUTION
zink: export PIPE_CAP_MAP_UNSYNCHRONIZED_THREAD_SAFE
pipe-loader: fix zink driinfo header path
zink: enable glthread by default
zink: call flush_resource when presenting garbage
lavapipe: improve blend handling on pipeline binds
zink: use dynamic state3 rasterization states when available
zink: use more dynamic state3 when available
zink: add tgl ci skip
zink: don’t access prog->shaders array during pipeline compile
zink: compress zink_gfx_output_key members
zink: further compress zink_gfx_output_key lookups
zink: set VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT
zink: require optimal_keys for GPL
zink: add param to disable optimization when combining pipeline libraries
zink: move binding_map to hw_state part of vertex state
zink: reorder zink_destroy_gfx_program()
zink: don’t deref prog->shaders during pipeline construction
zink: use an extra pipeline state bit to track coherent fbfetch usage for gpl outputs
zink: reenable GPL
zink: define zink_pipeline_dynamic_state3 as zink_rasterizer_hw_state
zink: set depth clamp
remove xvmc
delete rbug
delete graw tests
vk/graphics_state: don’t set default sample locations if rast samples is dynamic
zink: allow creating full pipelines unoptimized
zink: gfx_pipeline_cache_entry -> zink_gfx_pipeline_cache_entry
zink: change zink_gfx_program::last_pipeline -> struct zink_gfx_pipeline_cache_entry
zink: implement async gfx precompile
zink: add ZINK_DEBUG=shaderdb
zink: move descriptor layout/pool stuff to screen object
zink: add a safety assert in descriptor updates
zink: add some bda handling
zink: handle global and scratch vars
zink: move descriptor function up in file
zink: handle oom better during descriptor updating
zink: fix pool overflow handling on batch reset
zink: rework/improve descriptor pool overflow handling on batch reset
zink: delete view objects when unsetting resource usage in batch reset
zink: prevent ballooning of view object memory
lavapipe: store compiler options to physical device
zink: check core feature for pipeline cache control
zink: don’t add other usage bits for transient images
zink: clamp line_stipple_factor to 1 if stipple is disabled
zink: unset rp_changed after initializing renderpass attachments
zink: disable fbfetch when flushing clears
glthread: fix buffer allocation size with non-signed buffer offset path
zink: enable tc cpu storage on some buffers
zink: clamp feedback loop layout to GENERAL if the ext isn’t supported
zink: delete some big struct members from zink_context
zink: reorder context init to handle COMPUTE_ONLY
zink: clamp shader bindings for compute descriptors
zink: add ci flake
zink: move spec constant emission to the types/consts block
zink: set default spec constant value to 1
zink: add docs for zink_batch.c
zink: delete/cleanup some descriptor #defines
zink: delete unused descriptor struct field
zink: start on some type docs
zink: fix duplicate VK_DYNAMIC_STATE_LINE_STIPPLE_EXT setting
zink: fix ds3 line stipple enable handling
driconf: add mesa_glthread=false for gfxbench
lavapipe: store binding offset for buffers
lavapipe: fix BufferDeviceAddress usage
zink: fix gpl compile optimization
zink: decrement ZINK_FBFETCH_BINDING
zink: don’t flag ubo0 as used in shaders with indirect ubo access
zink: allow direct memory mapping for any COHERENT+CACHED buffer
zink: allocate/place memory using memoryTypeIndex directly
zink: support multiple heaps per memory type
zink: delete unused zink descriptor mode
zink: rename some variables in descriptor code
zink: ZINK_DESCRIPTOR_TYPES -> ZINK_DESCRIPTOR_BASE_TYPES
zink: add more zink_descriptor_type enum values to improve readability
zink: delete unused descriptor function
zink: stop passing pointer to changed_sets to populate_sets()
zink: add some descriptor docs
zink: add some docs for c++ pipeline state functions
zink: simplify some program descriptor helpers
zink: split out uniform decriptor bindings in shader data
zink: flag push state changed in batch changed conditional
zink: rescope/simplify some push descriptor code
zink: elide a buffer samplerview update conditional
zink: handle broken resource mapping deadlocks
zink: simplify swapchain imageview handling
zink: delete stale comment for zink_surface
zink: simplify conditional for surface rebind no-ops
zink: use zink_resource_object::views to defer deferred storage view deletion
zink: delete unused zink_surface member
zink: add some breadcrumbs for VK_EXT_multisampled_render_to_single_sampled
zink: add docs for zink_surface
zink: match bitsizes in bo rewriting
zink: pass KERNEL shaders through successfully
zink: rework sampler emission
zink: pass image type to image emission
zink: add a nir pass for CL image typing and sampler tracking
zink: simplify image deref handling
zink: add some spirv builder handling for sampled image ops
zink: emit explicit samplers in ntv based on sampler_mask
zink: always take the compact descriptor size path with kernel shaders
zink: add handling on the vk side for discrete sampler descriptors
zink: add handling for CL-style discrete shader samplers
zink: rip out unused kernel push constant
zink: fix weird formatting
zink: don’t force attachment usage for images when unsupported
zink: always add MUTABLE with EXTENDED_USAGE for image creation
zink: don’t double-deref bindless texture arrays in shaders
util/tc: split out flush and deferred flush calls
util/tc: split out dsa and fs state cso handling
util/tc: implement renderpass tracking
zink: add a context flag to indicate when blitter is running
zink: use tc renderpass tracking to optimize renderpasses
zink: enable renderpass optimizing for turnip jobs
Ming Li (1):
docs: Add d3d10umd and lavapipe to the doc for the gallium frontends.
Mykhailo Skorokhodov (8):
util: Add glsl2spirv.py script
nir: Make lower_double_ops recognize SPIR-V mangling
nir: Add assert in nir_lower_doubles
glsl/meson: Add variable to export float64.glsl
anv/meson: Add float64_spv_h custom target
anv: Add softtp64 workaround
drirc: Add fp64_workaround_enabled option
drirc: Apply fp64_workaround_enabled to DOOM Eternal
Nanley Chery (8):
mesa/st: Set PIPE_MAP_DISCARD_RANGE in fallback_copy_image
mesa/st: Add and use st_texture_image_insert_transfer
mesa/st: Add and use st_texture_image_transfer::box
mesa/st: Don’t map compressed texture fallbacks for reads
mesa/st: Fix indentation in st_MapTextureImage
mesa/st: Drop st_texture_image_transfer::map
iris: Enable INTEL_MEASURE for compute dispatches on XeHP
iris: Reduce use of RHWO optimization (Wa_1508744258)
Nicholas Bishop (2):
crocus: Advertise PIPE_CAP_NATIVE_FENCE_FD
crocus: fix off-by-one error when clearing stale syncobjs
Oleksii Bozhenko (2):
vulkan/wsi: Pass wsi_image_create_info into anv_GetPhysicalDeviceImageFormatProperties2
anv: Allow aliasing with modifiers for WSI images
Omar Akkila (5):
ci: Merge common builds in debian test jobs
ci: Move crosvm to the base test image
ci: Build crosvm with opaque fd mapping support
ci: Enable virtio-experimental in testing
ci: Add vulkan dEQP tests for venus
Paul Gofman (1):
vbo/dlist: keep buffers used in loopback_vertex_list() mapped.
Pavel Ondračka (22):
r300: fix variables detection for paired ALU and TEX instructions in different branches
r300: allow constant swizzles with inline constant
r300: fix negate mask computation when merging movs
r300: check for identical saturate mode when merging MOVs
r300: run dataflow optimizations in separate loops
r300: generalize the merge_movs pass
r300: don’t merge w channel in fragment shaders
r300: merge MOVs into ADD using the 0 swizzle
r300: merge MOVs with MULs or ADDs in merge channels
r300: Set more shadow sampler lowering in precompiles.
r300: allow presubtract when both ADD sources are negative
r300: run copy propagate once more after merging channels
r300: merge together MOV and MAD instructions
r300: add special path for merging movs with the same source
r300: add some synchronization for KIL
r300: fix register rewrite when converting rbg instructions to alpha
r300: reduce CPU overhead in IF transformation pass
Revert “r300: be less agresive with copy propagate in loops”
r300: fix reader detection with breaks
r300: be more careful when pair merging with presubtract
r300: fix generation of invalid swizzles in regalloc
r300: respect buffer offset in r300_set_constant_buffer
Pedro J. Estébanez (5):
nir2dxil: Lower texture projections
nir2dxil: Use native helper lane intrinsic on SM >= 6.6
microsoft/spirv2dxil: Refactor to make SM and validator versions public
microsoft/spirv2dxil: Change `spirv_to_dxil()` to receive SM and validator versions
microsoft/spirv2dxil: Support pack_32_2x16 and pack_32_4x8
Pierre Moreau (11):
nv50,nvc0: Do not resize global residents if unnecessary
nv50: Rename fixups to relocs
nv50: Rename interps to fixups
nv50: Report actual VRAM size
nv50: Disallow allocating more than VRAM size
nv50: Mark RESOURCE_FROM_USER_MEMORY_COMPUTE_ONLY as unsupported
nv50/ir: Handle non-32-bit values when cst folding SPLIT
nv50/peephole: Disallow combining sub 4-byte ld/st for now
nv50/ra: Fix the offset computation for compounds
nv50/ir: Avoid generating splits of splits
nv50/nir: A group barrier is CTA-level not global-level
Pierre-Eric Pelloux-Prayer (72):
loader: don’t return empty string in loader_get_dri_config_device_id
loader: allow DRI_PRIME=vendor_id:device_id syntax
vulkan/device_select: print the dri_prime warning only if needed
vulkan/device_select: allow DRI_PRIME=vendor_id:device_id
docs: document DRI_PRIME
gallium/dri2: make protected buffer checks opt-in
amdgpu/bo: update uses_secure_bos when importing buffers
radeonsi: allocate BIND_RENDER_TARGET as tmz instead of SCANOUT
radeonsi: print radeon_bo_flag when AMD_DEBUG=vm is used
nir: add a nir_opt_if_options enum
radeonsi/tests: remove left-over debug print
radeonsi/tests: add testing of the khr-single tests
radeonsi/tests: update raven expected results
radeonsi/tests: update navi21 expected results
radeonsi/tests: cosmetic changes
radeonsi: prevent u_blitter recursion in si_update_ps_colorbuf0_slot
radeonsi: use LOAD_CONTEXT_REG_INDEX for VGT_STRMOUT_DRAW_OPAQUE
ac/llvm: add a return value to ac_nir_translate
radeonsi: deal with ac_nir_translate failures
radv: deal with ac_nir_translate failures
radeonsi: use nir_opt_large_constants earlier
radeonsi/sqtt: set stable pstate if possible
mesa: avoid reading back textures from VRAM
mesa: simplify _mesa_texstore_z24_s8 and s8_z24
mesa: remove fallback for GL_DEPTH_STENCIL
radeonsi: invalidate L2 when using dcc stores
egl/wayland: fix glthread crashes
winsys/amdgpu: init ‘r’ before using it
radeonsi/gfx11: don’t set VERTS_PER_SUBGRP to 0
tc: do a GPU->CPU copy to initialize cpu_storage
tc: don’t use CPU storage for glBufferData
ac/llvm: remove unused vars hash table
radeonsi: remove USE_LDS_SYMBOLS
radeonsi: use nir_lower_explicit_io to get rid of mem_shared deref
ac/llvm: drop visit_deref
ac/llvm: simplify get_memory_ptr
ac/llvm: add helpers to get pointer types of ac_arg
ac/llvm: remove LLVMBuildGEP usages
ac/llvm: add a ac_llvm_pointer type
ac/llvm: port functions to use ac_llvm_pointer
ac/llvm: switch ac_build_gep_ptr to LLVMBuildGEP2
ac/llvm: switch ac_build_pointer_add to LLVMBuildGEP2
ac/llvm: add type param to ac_build_load_invariant
ac/llvm: add xxxx2 functions to iteratively port to opaque pointers
ac/llvm: store lds as ac_llvm_pointer
ac/llvm: store constant_data and scratch as ac_llvm_pointer
ac/llvm: remove unneeded casts
radv/llvm: use ac_build_gep0_type to get args types
radeonsi: use ac_get_arg_pointee_type to get the right type
radeonsi: use LLVMBuildGEP2 in si_build_gep_i8_var
radeonsi: make ngg_gs_get_vertex_storage return a ac_llvm_pointer
radeonsi: port the remaining code to opaque pointers
ac/llvm: remove gep_2 and others temporary functions
radv/llvm: replace LLVMBuildLoad by LLVMBuildLoad2
ac/llvm: add ac_get_ptr_arg
ac/llvm: pass ac_llvm_ptr instead of separate type/ptr
Revert “ac: use LLVMContextSetOpaquePointers if available”
radeonsi: zero init using the correct components count
radeonsi/sqtt: notify sqtt when we skip a flush
radeonsi/sqtt: re-export shaders in a single bo
radeonsi/sqtt: allow to disable spm counters
radeonsi/tests: handle flakes file for all test suite
radeonsi/tests: simplify the script
radeonsi/tests: update expected results for navi21
radeonsi/tests: update expected results for navi10
radeonsi/tests: update expected results for polaris11
radeonsi: simplify si_prefetch_shaders
radeonsi/sqtt: simplify condition to determine if sqtt is on
radeonsi: store the shader gpu adress in si_shader
radeonsi: handle sqtt pipeline in shader prefetch
radeonsi/gfx11: enable sdma copy DRI_PRIME
radeonsi: update db_eqaa even if msaa is disabled
PixelyIon (1):
tu: Make KGSL wait IOCTLs interrupt-safe
Qiang Yu (62):
nir/lower_gs_intrinsics: fix primitive count for points
radeonsi: fix tcs_out_lds_offsets arg alignment
winsys/amdgpu: fix non-page-aligned sparse buffer creation
nir,ac/llvm: add nir_intrinsic_load_half_line_width_amd
nir,ac/llvm: add nir_intrinsic_load_viewport_xy_scale_and_offset
ac/nir/ngg,radv: use nir_load_viewport_xy_scale_and_offset
ac/nir/cull: support caller react when primitive is rejected
ac/nir/ngg: support line culling
ac/nir/ngg: fix and simplify gs store output lower
ac/nir/ngg: use same driver location for gs output
ac/nir/ngg: save and restore output bit size for gs
ac/nir/ngg: save and restore position output base for nogs
ac/nir/ngg: add gs culling
ac/nir/ngg: support component position store
ac/nir/ngg: support clipdist culling
ac/llvm: cast tes_u/v_replaced to float
radeonsi: implement nir_intrinsic_load_half_line_width_amd
radeonsi: implement nir_intrinsic_load_viewport_xy_scale_and_offset
radeonsi: implement cull nir intrinsics
ac/llvm: move culling replaced registers to abi
radeonsi: use replaced values when present
radeonsi: vs load input re-calculate vertex index after culling
radeonsi: add and implement load_user_clip_plane abi
nir: fix nir_xfb_info buffer_to_stream length
nir: add nir_intrinsic_load_num_vertices_per_primitive_amd
nir: add nir_intrinsic_load_streamout_buffer_amd
nir,ac/llvm: add nir_intrinsic_load_ordered_id_amd
nir: add nir_intrinsic_ordered_xfb_counter_add_amd
ac/llvm: implement nir_intrinsic_ordered_xfb_counter_add_amd
ac/nir/ngg: cleanup prim id to prepare for streamout
ac/nir/ngg: nogs support streamout
ac/nir/ngg: ngg_gs_load_out_vtx_primflag support stream
ac/nir/ngg: support multi stream per output slot for gs
ac/nir/ngg: support gs streamout
radeonsi: implement nir_intrinsic_load_num_vertices_per_primitive_amd
radeonsi: implement nir_intrinsic_load_streamout_buffer_amd
radeonsi: print out remove_streamout shader key
nir,ac/llvm,radv: add nir_intrinsic_load_provoking_vtx_in_prim_amd
ac/nir/ngg: use nir_load_provoking_vtx_in_prim_amd in ngg lower
radv: count gen_prims_queries_enabled
radv: split active_pipeline_gds_queries
nir,ac/nir/ngg,radv: split shader_query_enabled_amd
ac/nir/ngg,radv: use different counters for shader queries
nir,ac,radv: add primitive count add intrinsics
nir: add nir_load_prim_xfb_query_enabled_amd
ac/nir/ngg: add query param to ac_nir_lower_ngg_gs
ac/nir/ngg: add streamout emitted primitive query
radeonsi: implement llvm abi atomic_add_prim_count
radeonsi: implement nir shader query enabled intrinsics
ac/llvm: get back intrinsics used by NGG
ac/nir/ngg: support user edge flags for ngg lower
ac/nir/ngg: pass primitive_id_location as param for nogs lower
nir: add two amd ngg lds base load intrinsics
ac/nir/ngg,radv: move LDS layout calculation out of nir ngg lowering
ac/nir/ngg: allow passthrough with vs primitive id output
ac/nir/ngg: save and restore no_varying/no_sysval_output
ac/nir/ngg,ac/llvm,aco: save nogs ngg culling one lds dword
ac/nir/ngg: add one odd dword to nogs culling pervertex lds
ac/nir/ngg: fix nogs culling with nuw add
ac/nir/ngg: remove nuw for negative value add
ac/llvm: fix gfx11 fs input load for 16bit varying
ac/llvm: fix 16bit varying llvm compile error
Rajnesh Kanwal (48):
pvr: Implement vkResetDescriptorPool API.
pvr: Fix clang-format issue.
pvr: Implement vkGetPhysicalDeviceImageFormatProperties2 API.
pvr: Implement vkCmdDrawIndirect API.
pvr: Implement vkCmdDrawIndexedIndirect API.
pvr: Fix multiple file descriptor leaks.
pvr: Implement vkCreateEvent and vkDestroyEvent APIs.
pvr: Implement vkCmdSetEvent2 API.
pvr: Implement vkCmdResetEvent2 API.
pvr: Implement vkCmdWaitEvents2 API.
pvr: Implement vkSetEvent API.
pvr: Implement vkResetEvent API.
pvr: General reformatting and renaming some fields.
pvr: Replace pvr_renderpass_surface_initop with VkAttachmentLoadOp.
pvr: Add support for generating render pass hw setup data.
pvr: Use ~0 for masks instead of ~0U.
pvr: Add missing output register write in pvr_CreateRenderPass2.
pvr: Rename userpass_spawn to isp_userpass.
pvr: Add const to structs that are not supposed to be modified.
pvr: Add attachment resolve support.
pvr: Add support to create subpass load ops.
pvr: Pass load-op struct instead of idx to support subpass load-ops.
pvr: Implement vkCmdNextSubpass API.
pvr: implement vkcmddispatchindirect api.
pvr: Handle indirect buffer address in pvr_setup_descriptor_mappings.
pvr: Convert attachment indexes to unsigned.
pvr: Remove redundant instruction buffer check.
pvr: Remove redundant assignment error.instruction.
pvr: Remove framebuffer NULL check from pvr_CmdBeginRenderPass2.
pvr: Remove dead code from pvr_perform_start_of_render_clears.
pvr: Zero init pbe_cs_words to avoid passing on garbage.
pvr: Fix Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) errors.
pvr: Call VALGRIND_FREELIKE_BLOCK before unmapping to avoid use after free.
pvr: Add assert to check for non-NULL binding_desc.
pvr: Implement vkGetEventStatus API.
pvr: Add pvr_csb_emit_link function to support secondary buffer links.
pvr: Fix check in pvr_cmd_uses_deferred_cs_cmds.
pvr: Add support for PVR_CMD_STREAM_TYPE_GRAPHICS_DEFERRED stream.
pvr: Create deferred control stream for secondary command buffers.
pvr: Reserve space for vdm state for deferred secondary buffer.
pvr: Add support to copy a control stream to another control stream.
pvr: Implement vkCmdExecuteCommands API.
pvr: Update buffer type macro names for consistency.
pvr: Fix heap type of availability_buffer allocation.
pvr: Fix allocation size passed in pvr_cmd_buffer_alloc_mem.
pvr: Remove double error reporting.
pvr: Split pds compute shader create and upload code for reuse.
pvr: Add vulkan shader factory headers for Query and clear APIs.
Renato Pereyra (1):
venus: Increase vn_relax sleep time
Rhys Perry (117):
aco: fix LdsBranchVmemWARHazard with 2+ branch chains
aco: set has_VMEM,has_DS=false after a branch
aco: only add vscnt wait when visiting VMEM/DS
aco: improve VcmpxPermlaneHazard workaround
aco: fix hash statistic
docs/radv: advertise VK_KHR_global_priority
aco: fix consecutive exec writes when finding exec_copy instruction
aco: rename is_cmp to is_fp_cmp
aco: fix assembly of vopc_sdwa writing exec
aco: fix re-write of uses of exec_val’s lo/hi half
aco: test branch opcode if removing it in try_optimize_branching_sequence
aco: remove val_and_copy_adjacent
aco: improve vcc check for instructions between exec_val and exec_copy
aco: test for one and_savexec opcode in try_optimize_branching_sequence
aco: fix long-jump version of discard early exit
radv: remove claimed support for sRGB vertex buffer formats
radv: fix 16-bit support in radv_lower_vs_input
aco: fix 16-bit VS inputs
radv/llvm: fix packed VS inputs on GFX6/GFX10+
aco: don’t expand vec3 VS input load to vec4 on GFX6
aco: allow direct_fetch=true for vec4 VS input loads
nir/print: support nir_texop_descriptor_amd
aco: add SCC clobber in build_cube_select
nir/lower_tex: ignore width of cube textures
radv: enable ac_nir_lower_resinfo for ACO
aco: remove dead code for querying image size/samples/levels
util/ralloc: add HEADER_ALIGN macro
util: add freelist allocator with mark/sweep
nir/serialize: remove unused parameter from read_src()
Revert “nir: Drop the unused instr arg for src/dest copy functions.”
nir: adjust nir_src_copy signature to take a nir_instr *
nir: use a GC context for instructions
util/format,vulkan/format: update p_format for Vulkan vertex buffers
ac: add ac_vtx_format_info
radv: add radv_is_vertex_buffer_format_supported
radv,aco: use pipe_format for static vertex input state
radv,aco: use pipe_format for dynamic vertex input state
radv: remove radv_translate_vertex_format
radv: enable R8G8B8, B8G8R8 and R16G16B16 vertex formats
radv,aco: implement 64-bit vertex inputs
radv: enable 64-bit vertex formats
aco/ra: handle empty def_reg interval in get_regs_for_copies
aco/ra: remove bounds parameter from get_regs_for_copies()
aco/ra: rework fixed operands
nir/algebraic: optimize bits=umin(bits, 32-(offset&0x1f))
nir/algebraic: optimize fabs(bcsel(b, fneg(a), a))
radv: disable EXT_vertex_input_dynamic_state when using DGC
radv: shrink zero-initialization in vkCmdSetVertexInputEXT
radv: use nir_ubfe_imm
radv: remove unnecessary .align_mul=4
radv: fix dynamic RT stack size with VGPR spilling
aco: DCE ra_ctx::defs_done
aco: rename Interp_instruction to VINTRP_instruction
aco: add reg() helper to assembler
aco: fix assembly of MUBUF-to-LDS loads
aco: add GFX11 opcode numbers
aco/gfx11: don’t use more than 1 NSA dword
aco: update assembler for GFX11
aco: limit GFX11 to 128 VGPRs for now
aco: add LDSDIR instruction format
aco: add VINTERP instruction format
aco: omit read-only memory_sync_info when printing
aco/tests: add GFX11 assembly tests
aco: mostly implement FS input loads on GFX11
aco: fix VMEMtoScalarWriteHazard s_waitcnt mitigation
aco: improve VMEMtoScalarWriteHazard s_waitcnt mitigation
aco: use some helpers in GFX10 hazard workarounds
aco: improve printing of sgpr_null
aco: improve printing of s_waitcnt_depctr
aco: add VMEMtoScalarWriteHazard tests
aco/gfx11: swap ds_cmpst_* data operands
aco: improve wait_imm unpack
aco/gfx11: fix s_waitcnt printing
aco: update sendmsg enum from LLVM
aco/gfx11: deallocate VGPRs at the end of the shader
aco/gfx11: update form_hard_clauses
aco: limit hard clauses to 63 instructions
aco: fix assembler.gfx11.vinterp test
aco: add search_backwards helper
aco/gfx11: workaround VcmpxPermlaneHazard
aco/gfx11: workaround LdsDirectVALUHazard
aco/gfx11: workaround LdsDirectVMEMHazard
aco/gfx11: workaround VALUTransUseHazard
aco/gfx11: workaround VALUPartialForwardingHazard
aco/gfx11: workaround VALUMaskWriteHazard
aco: add ACO_DEBUG=force-waitdeps
nir/algebraic: optimize b<<a + c<<a
ac/llvm: fix mixing non-uniform/uniform sampler/texture descriptors
ac/llvm: ignore g16 if the image opcode doesn’t use derivatives
aco/gfx11: optimize LS/HS load_local_invocation_index
aco: swap v_perm_b32 operands
radv,nir: add intrinsics for streamout and GS copy shaders
ac/nir: add legacy streamout and GS copy shader helpers
ac/nir: micro-optimize boolean expression
ac/nir: add ac_nir_lower_ngg_options
aco: add storage_gds
aco: insert waitcnt before/after ds_ordered_count
nir,ac/nir,aco,radv: replace has_input_*_amd with more general intrinsics
aco: don’t split swizzled store_buffer_amd on GFX9+
ac/nir: lower gfx11 vertex parameter exports
radv/gfx11: don’t create fmask copy/expand pipelines
radv/gfx11: don’t create texop_samples_identical
radv,aco: don’t use lower_to_fragment_fetch_amd on GFX11+
aco: fix typo in branch lowering
aco/gfx11: perform FS input loads in WQM
aco/gfx11: fix FS input loads in quad-divergent control flow
radv/llvm: fix GS shaders on GFX8/9
docs: update new_features.txt for non-extension additions to RADV
radv: increase gfx1100/gfx1101 physical vgprs
ac/gpu_info: increase gfx1100/gfx1101 physical vgprs
aco/gfx11: increase gfx1100/gfx1101 physical vgprs
radeonsi: increase gfx1100/gfx1101 physical vgprs
nir/lower_bit_size: lower uadd_carry
radv: lower 8/16-bit uadd_carry/usub_borrow
radv: disable MRT compaction with dual-source blending
aco: ensure MRT0 is written with dual source blending
ac/nir: mask shift operands
Riteo (1):
vulkan/device_select_wayland: fix a memory leak with DRM device handling
Rob Clark (106):
gbm: Add USE_FRONT_RENDERING flag
freedreno: Disable UBWC for frontbuffer rendering
freedreno/drm: Fix potential bo cache vs export crash
freedreno/gmem: Fix col0 calc
freedreno: Drop fixed upper bound on # of tiles
freedreno/drm: Add FD_VA_SIZE param
freedreno: Cap reported video memory by VA size
freedreno/drm: Avoid lock in fd_pipe_del()
egl: atrace support
freedreno/drm/virtio: Add some atrace
util: Fix vs2019 build error
egl: Drop _eglSetFuncName() return
egl: Drop unused _EGL_FUNC_START() arg
egl: Remove redundant fxn param
egl: Convert to simple_mtx_t
egl: Add some locking asserts
egl/dri2: Indenting fix
egl/dri2: Error path cleanups
llvmpipe: Add some missing locking
freedreno: Extract helper to check for batch dependency
freedreno: Simplify add_dep logic
freedreno: Avoid deferred-flush dependency loops
Revert “ci: disable the freedreno farm.”
freedreno/a6xx: Random indent fixes
freedreno/drm: Let backend hint about upload vs map
freedreno/drm: Add offset param for fd_bo_upload()
freedreno: Add support for upload transfers
Revert “ci: disable the freedreno farm.”
egl/wgl: Make ref_count atomic
egl/dri2: Make ref_count atomic
egl/dri2: Add display lock
egl: Make RefCount atomic
egl: Introduce rwlock to protect eglTerminate()
egl: Relax locking
freedreno: Misc indent fix
freedreno: nr_rings -> nr_priorities
freedreno: Remap high/norm/low priorities
freedreno/virtio: Don’t upload if we have valid range
freedreno/drm/virtio: Don’t prefer upload for mapped buffers
freedreno/drm/virtio: Handle read after upload
freedreno: We really don’t need aligned vbo’s
freedreno: Update github wiki links
freedreno/ir3: GC unused macro
freedreno/drm: Inline fd_bo_get_iova()
freedreno/drm: Add fd_ringbuffer_attach_bo()
freedreno/a6xx: Drop “hardpin” support
freedreno/drm: Simplify emit_reloc_common
freedreno/a6xx: Skip IBO state when unused
freedreno/a6xx: Pre-calculate user const state size
freedreno: Drop unused arg
freedreno/a6xx: Move user const upload to bind
freedreno/a6xx: Simplify fd6_build_user_consts()
freedreno: Handle xfb invalidation
freedreno: Use TC cpu-storage to shadow buffers
freedreno/drm: Don’t call kernel with no ops
freedreno: Add perf-debug trace
isaspec: Fix out of date comment
gallium/u_threaded: Add some atrace/perfetto
gallium/u_threaded: Add optional call-id tracing
freedreno: Fix fence unref race
docs: Update freedreno features
mesa/st: ARB_vertex_attrib_64bit depend on glsl>=410
freedreno/a6xx: Remove unused param
freedreno/ir3: Fix clipvertex with GS+tess
freedreno/ir3: Lower all the 64b
freedreno/a6xx: Fix MAX_GEOMETRY_OUTPUT_VERTICES cap
freedreno/a6xx: Fix primitives-generated query
freedreno/a6xx: Update caps
freedreno/a6xx: Drop max_scissor tracking
Revert “egl: Factor some common terminate cleanup up to common code”
nir: Add helper to create passthrough TCS shader
radeonsi: Use nir passthrough TCS helper
freedreno: Dirty the TCS state if patch_vertices change
freedreno/ir3: Passthrough TCS support
freedreno: Add tess_state support
freedreno: Passthrough TCS support
v3d/ci: Add a flake
Revert “mesa/st: ARB_vertex_attrib_64bit depend on glsl>=410”
freedreno: Don’t advertise TGSI support for GS/tess
freedreno/a6xx: Move layer_zero handling to interp state
freedreno/ir3: Drop unused view_zero/layer_zero lowering
freedreno/a6xx: Fix buffer size clamping
freedreno/a6xx: Support AMD_vertex_shader_layer
freedreno: support multiple viewports
freedreno: Massage scissor state at bind time
freedreno: Move guardband calc to bind time
freedreno/a6xx: Support GL_ARB_viewport_array + gl43
freedreno/a6xx: Enable GL_ARB_texture_mirror_clamp_to_edge
freedreno: Enable GL_ARB_enhanced_layouts
freedreno/ci: Small bit of xfails cleanup
docs: Update features.txt
nir: Add way to create passthrough TCS without VS nir
freedreno: Add ARB_gl_spirv support
freedreno/a6xx: Use box to pass 2d clear params
freedreno/a6xx: Implement ARB_clear_texture
freedreno/a3xx+: Enable ARB_shader_texture_image_samples
freedreno/a3xx+: Enable ARB_derivative_control
freedreno/ir3: Unconditionally lower subgroup ops
freedreno/a6xx: Enable ARB_shader_group_vote
freedreno/a6xx: Fix occlusion queries
freedreno/a6xx: Remove unused field
freedreno/a5xx+a6xx: Add base class for query samples
freedreno/batch: Add a global epilogue
freedreno: Core ARB_query_buffer_object support
freedreno/a6xx: ARB_query_buffer_object support
freedreno/a6xx: Mark gl45 supported
Rohan Garg (3):
anv, iris: Disable pre fetching the binding table entries on DG2
intel/compiler: Support 16 bit float ops
anv: Enable 16 bit float ops on devices that have a LSC
Roland Scheidegger (4):
lavapipe: initialize index_bias to zero for non-indexed draws
gallivm: always do per-pixel LOD for cube maps
llvmpipe: fix front/back face system value in the fs
gallivm: remove dead cube map lod calculation code
Roman Gilg (2):
loader/dri3: Simplify buffer age query
loader/dri3: Add DRI performance option to wait for next buffer on swap
Roman Stratiienko (6):
v3dv: Enable sync_fd importing/exporting on Android
v3dv: Limit API version to v1.0 for Android
v3dv: Avoid swapchain_info handling on Android
lima: Ensure jobs initialized before calling lima_job_fini()
Android: Use libgbm_mesa name for SDK30+
meson: Enable system_has_kms_drm for android
Ruijing Dong (30):
frontends/va: improve enc quality interface change
radeonsi/vcn: add enc quality bits interface
radeonsi/vcn: dpb change for supporting pre-encoding
radeonsi/vcn: support encoding preset modes
radeonsi/vcn: support VBAQ modes
radeonsi/vcn: remove rate control double begin IBs
radeonsi/vcn: add AUD syntax to h264 encoding
frontend/va: remove some unnecessary code
frontends/va: change getEncParamPreset location
frontends/va: add max_frame_size into rate control
frontends/va: add HRD, filler data enable and etc
frontends/va: enable sao in hevc encoding
radeon/vcn: process invalid frame rate in encoding
radeonsi/vcn: support async
radeonsi/vce: using fixed value for vce 52
gallium/pipe/video: group avc encoder seq structure
radeonsi/vce: apply avc seq parameters
frontends/omx: apply avc seq parameters
frontends/va: apply avc seq parameters
radeonsi/vcn: use avc seq paramters
frontends/va: add aspect ratio and vui timing info
radeonsi/vcn: support aspect ratio and vui timing info
d3d12: Updating refactored fields in pipe_h264_enc_picture_desc
frontends/va: fix av1 decoding image distortion issue
gallium/pipe/video: add data struct for dbk in avc encoding.
frontends/va: add h264 dbk enc parameters
radeonsi/vcn: enable dbk in avc encoding
radeonsi/vcn: enable multi-slice encoding
frontends/va: fixed an av1 decoding image corruption issue.
frontends/va: fixed an av1 dec image corruption.
Ryan Houdek (1):
vulkan/wsi: Add dep_libudev to idep dependencies
Sagar Ghuge (5):
intel/isl: Setting L1 caching policy to Write-back mode
anv: Specify Untyped L1 cache policy for stateless accesses
iris: Specify Untyped L1 cache policy for stateless accesses
anv: Handle bits to flush data-port’s Untyped L1 data cache
iris: Handle new untyped dataport cache flush PIPE_CONTROL field
Sajeesh Sidharthan (1):
radeonsi/vcn: set current pic index correctly
Sami Kyöstilä (1):
intel/ds: Update to Perfetto API v28.0
Samuel Pitoiset (329):
vulkan: add support for VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT
radv: implement VK_EXT_attachment_feedback_loop_layout
radv: ignore out-of-order rasterization if stencil write mask is dynamic
radv: rework shaders ref counting
radv: use ref counting for VS prologs and PS epilogs
radv: remove RADV_META_SAVE_SAMPLE_LOCATIONS
radv: simplify saving/restoring all dynamic states
radv: remove unused states parameter from some radv_emit_XXX() helpers
radv: simplify radv_bind_dynamic_state() slightly
radv: fix gathering XFB info if there is dead outputs
radv: respect the render area for depth/stencil resolves
radv: fix cleaning the meta query state if an error occured
radv: properly ignore PSO states that are dynamic
radv: remove one useless check about line width and dynamic state
radv: simplify dynamic states uses when determining NGG culling settings
radv: do not set registers for PSO states that are dynamic
radv: remove radv_invariant_geom workarounds for DX games
radv: explain why radv_invariant_geom is still needed for SotTR DX
radv: remove unecessary radv_pipeline::uses_dynamic_stride
radv: copy line stipple factor/pattern only if the state isn’t dynamic
radv: copy the sample locations only if the state isn’t dynamic
zink: stop skipping bunch of GLESx tests
vulkan: initialize discardRectangleCount even if the state is dynamic
vulkan: fix initializing the primitive topology when it’s dynamic
vulkan: add attachment sample count info AMD support
radv: store the provoking vertex mode in the graphics pipeline info
radv: simplify the depth clip enable/disable logic
radv: do not translate polygon mode during gfx info initialization
radv: do not translate logic op during gfx info initialization
radv: do not translate blend op/factor during gfx info initialization
radv: do not translate primitive topology during gfx info initialization
radv: slightly change the color write enable mask
radv: call vk_graphics_pipeline_state_fill() when initializing gfx pipelines
radv: convert radv_tessellation_info to vk_tessellation_state
radv: convert radv_viewport_info to vk_viewpoert_state
radv: convert radv_discard_rectangle_info to vk_discard_rectangles_state
radv: convert radv_rasterization_info to vk_rasterization_state
radv: convert radv_depth_stencil_info to vk_depth_stencil_state
radv: convert radv_fragment_shading_rate_info to vk_fragment_shading_rate_state
radv: convert radv_input_assembly_info to vk_input_assembly_state
radv: convert radv_multisample_info to vk_multisample_state
radv: convert radv_color_blend_info to vk_color_blend_state
radv: convert radv_rendering_info to vk_render_pass_state
radv: convert radv_vertex_input_info to vk_vertex_input_state
radv: remove radv_graphics_pipeline_info completely
radv: advertise VK_KHR_global_priority
radv: remove unused pCreateInfo from radv_pipeline_init_blend_state()
radv: add radv_graphics_pipeline_import_info() helper
radv: introduce a new pipeline type for graphics libs
radv: store vk_graphics_pipeline_state to radv_graphics_pipeline
radv: prevent accessing rasterization state when it’s NULL
radv: add a very initial implementation of VK_EXT_graphics_pipeline_library
radv: do not compress DCC in presence of render loops on GFX10+
radv: remove useless check when creating the noop FS
radv: copy linked I/O info for merged stages in radv_fill_shader_info
radv: copy the whole radv_shader_info struct for merged stages
radv: add a radv_postprocess_nir() helper
radv: move lowering FS intrinsics to radv_postprocess_nir()
radv: move dumping NIR shaders to the previous similar loop
radv: remove unused parameter in radv_lower_io_to_mem()
radv: use NIR_PASS with radv_export_implicit_primitive_id
radv: remove useless parameter from radv_link_shaders()
radv: add radv_remove_point_size() linking helper
radv: rework linking shaders in NIR
radv: move assigning driver locations to the new linking helpers
radv: move lowering patch vertices to radv_pipeline_link_tcs()
radv: move lowering the view index to radv_pipeline_link_shaders()
radv: remove redundant assignment of tcs.tcs_vertices_out
radv: remove unused tcs_vertices_out assignment for VS
radv: remove unused num_tess_patches assignment for VS
radv: merge gather_tess_info() with radv_fill_shader_info()
radv: stop setting CB_COLOR_CONTROL.ROP3 from the pipeline
radv: stop clearing bitfields for registers that are emitted dynamically
radv: cleanup dynamic states in radv_emit_graphics_pipeline()
radv: stop emitting RMW context registers for updating sample locations
radv: re-emit viewports if negative one to one or depth clamp mode changed
radv: remove bogus assertion about independent set layouts with GPL
radv: fix missing initialization of the pipeline layout when creating a lib
radv: destroy the pipeline layout if creating a library failed
aco: fix wrong size for 1D images and A16 on GFX9
ac: constify ac_compute_cs_workgroup_size()
radv: stop duplicating radv_es_output_info
radv: use esgs_itemsize when calling ac_nir_lower_es_outputs_to_mem
radv: compute the ESGS itemsize outside of radv_nir_shader_info_pass()
radv: remove dead code about task ring when binding a compute pipeline
radv: replace cs.uses_task_rings by ms.has_task
radv/llvm: remove unused parameter in handle_vs_outputs_post()
radv: stop duplicating radv_vs_output_info
radv: fill radv_vs_output_info unconditionally for vertex related stages
radv: remove redundant VS output parameter assignments
radv: add a helper that links shader info between stages
radv: link primitive ID/clip distance shader info from the new helper
radv: stop gathering info for FS before other stages
radv: move filling cs.block_size
radv: add gather_shader_info_fs() helper
radv: add gather_shader_info_mesh() helper
radv: add gather_shader_info_gs() helper
radv: add gather_shader_info_tes() helper
radv: add gather_shader_info_tcs() helper
radv: add gather_shader_info_vs() helper
radv: add gather_shader_info_cs() helper
radv: add gather_shader_info_task() helper
radv: move more CS info to gather_shader_info_cs()
radv: move more MS info to gather_shader_info_ms()
radv: move determining NGG shader info to radv_fill_shader_info()
radv: store binning settings into the physical device
radv: make sure to emit BREAK_BATCH when color write enable is dynamic
radv: remove useless parameter in si_write_scissors()
radv: split emitting guardband into a separate helper
radv: rework dirtying scissors when the line width changes
radv: emit the guardband state separately from the scissor state
radv: allow null descriptor set layouts in pipeline layouts
radv: determine if the topology uses adjacency from the shaders on GFX9+
radv: fix bogus assertion with RADV_FORCE_VRS
aco: remove unused isel_context::tcs_num_patches
radv: stop setting as_ls for the TCS stage
radv: stop setting as_es for the GS stage
radv: stop setting num_tess_patches for the GS stage
radv: stop setting esgs_itemsize to the GS stage
radv: cleanup helpers that compute NGG info and GS info on GFX9+
radv: move computing wave_size/ballot_bit_size to the shader info pass
radv: move computing NGG info and GS info to radv_nir_shader_info_link()
radv: refactor radv_nir_shader_info_link()
radv: move determining other NGG settings in radv_link_shaders_info()
radv: simplify determining if NGG passthrough can be enabled
radv: cleanup computing the workgroup size for all stages
radv: add and use a helper that merges shader info for merged stages on GFX9+
radv: remove unused parameters in radv_fill_shader_info()
radv: determine as_ls/as_es in radv_link_shaders_info()
radv: constify radv_shader_info where it’s missing
radeonsi/ci: trigger radeonsi-raven-skqp for any RADV changes
radv: gather MRTs that are written by the fragment shader
radv: compact MRTs to save PS export memory space
radv: only expose sparseResidencyImage3D on GFX9+
radv: emit SQTT markers for RT related commands
radv: capture RT pipelines from the SQTT layer
radv: fix reporting RT shaders in RGP
radv: do not lower color exports for FS that need an epilog
radv: add radv_remove_color_exports() helper
radv: do not try to remove color exports for FS that need an epilog
radv: keep track of the code size for VS prologs and PS epilogs
radv: create a PS epilog from a library without the main FS
radv: add support for emitting and prefetching PS epilogs
radv: import PS epilog from libraries if present
radv: fix hw remapping of MRT holes with color attachments without export
radv: fix pipelineStageCreationFeedbackCount when it’s 0
radv: add a pointer to radv_shader_binary in radv_shader
radv/ci: re-enable dEQP-VK.renderpass2.depth_stencil_resolve.*_samplemask
radv: store the VS prologs/PS epilogs VA at upload time
radv: split upload_shader_part() in two parts
radv: store the binary to radv_shader_part
radv: upload the PS epilog in the existing pipeline BO
radv: reword a comment about dynamic states when rasterization is disabled
radv: emit the LDS size for TCS directly from the pipeline on GFX9+
radv: add radv_pipeline_key::dynamic_patch_control_points
radv: skip computing some tess info when patch control points is dynamic
radv: set workgroup_size to 256 when patch control points is dynamic
aco: prevent a division by zero when patch control points is dynamic
radv: add shader arguments for dynamic patch control points
radv: add ABI lowering support for dynamic patch control points
radv: pass the number of patch control points to si_get_ia_multi_vgt_param()
radv: move emitting PRIMGROUP_SIZE for <= GFX9 from the cmdbuf
radv: move emitting GE_CNTL for non-NGG pipelines from the cmdbuf
radv: implement dynamic patch control points
radv: advertise extendedDynamicState2PatchControlPoints
radv: stop setting redundant viewport/scissor for internal operations
radv: do not bind NULL graphics pipeline when restoring the meta state
radv: reset the compute pipeline when the saved one was NULL
radv: stop dirtying the graphics pipeline when restoring it
radv: stop checking for NULL pipelines in radv_CmdBindPipeline()
radv/ci: cleanup lists of failures/flakes
radv: disable VK_EXT_graphics_pipeline_library with LLVM
radv: rename radv_pipeline_key::vs::dynamic_vs_input to has_prolog
radv: prepare the VS input state for prologs created with GPL
radv: bind the VS input state for prologs created with GPL
radv: enable the VS prologs cache if graphicsPipelineLibrary is enabled
radv: do not remove PSIZ for VS when the topology is unknown
Revert “radv: upload the PS epilog in the existing pipeline BO”
nir: add nir_intrinsic_load_sample_positions_amd
radv: add nir_intrinsic_load_sample_positions_amd in the ABI
radv: run nir_opt_cse before lowering FS intrinsics
radv,aco: lower barycentric_at_sample in NIR
radv: do not link shaders when the next stage is unknown
radv: allow to build the main FS in a graphics pipeline library
radv,aco: do not compact MRTs if the pipeline uses a PS epilog
radv: rename radv_thread_trace_set_pstate() to radv_device_set_pstate()
radv: acquire pstate on-demand when capturing with RGP
radv: constify radv_lookup_user_sgpr()
radv: add radv_pipeline_key::dynamic_rasterization_samples
radv: declare shader arguments for the number of samples for FS
nir: add nir_load_rasterization_samples_amd
radv: lower nir_load_rasterization_samples_amd in ABI
nir,radv: pass the number of samples to load_sample_positions_amd
radv: add barycentric_at_sample lowering when the number of samples is dynamic
radv: emit the rasterization samples through an user SGPR if needed
radv: make sure to initialize wd_switch_on_eop before checking its value
radv: pass a VkSampler to write_sampler_descriptor()
radv: remove unnecessary radv_buffer_view::vk_format
radv: rework and rename radv_make_buffer_descriptor()
zink/ci: skip ext_external_objects from Piglit with RADV
zink/ci: skip arb_shader_clock with RADV
zink/ci: skip GLX tests with RADV
zink/ci: update list of expected failures with RADV on NAVI10
zink/ci: update list of flakes for Piglit with RADV on NAVI10
radv/ci: add piglit testing with Zink on NAVI10
radv: do not free the GS copy shader binary if created from a library
radv: import the GS copy shader from a library if present
radv: determine the last VGT api stage from the active_stages bitfield
radv: allow to build the pre-rasterization stages in a library
radv: remove useless gfx10_ngg_info::enable_vertex_grouping
radv: determine the last VGT api stage also for GPL
radv: use the maximum number of vertices per primitives for NGG with GPL
radv: enable NGG culling unconditionally for GPL but disable it dynamically
radv: rework multiview lowering in NIR slightly
radv: fix handling ViewportIndex with GPL
radv: fix handling primitive ID and clip/cull distances with GPL
radv: fix handling multiview with GPL
radv: fix emitting RBPLUS state when MRTs are compacted
radv: remove NULL checks when binding a graphics pipeline
radv: fix initializing the attribute mask for VS input state and GPL
radv: fix initializing the blend state for NULL render pass with GPL
radv: ignore shader stages that don’t need to be imported with GPL
radv: add a new drirc option to enable a unified heap on APUs
radv: enable the unified heap on APUs for Red Dead Redemption 2
radv: fix and rework shaders upload with GPL
radv: always re-emit patch control points when a pipeline with tess is bound
radv: move the disk cache to the vk_physical_device struct
radv: use SHA1_DIGEST_LENGTH in the pipeline cache
radv: do not create a noop FS when the FS is imported from a library
radv: discard the PS epilog when the pipeline doesn’t use a fragment shader
ac/llvm: add missing nir_intrinsic_bindless_image_atomic_{fmin,fmax}
radv: set SAMPLE_MASK_TRACKER_WATERMARK to 15 on GFX11
radv: use correct VGT_TESS_DISTRIBUTION settings on GFX11
radv: do not use memory for waiting for cache flushes on GFX11
radv: drop the ES vertex count requirement on GFX11
radv: add RADEON_FLAG_DISCARDABLE
radv: create and configure the ring BO for attributes
radv: declare shader arguments for attributes via memory
nir: add nir_intrinsic_load_ring_attr_{offset}_amd
radv: add lowering for nir_intrinsic_load_ring_attr_{offset}_amd
radv: allocate more space for pipeline statistics query on GFX11
ac: add radeon_info::has_vrs_ds_export_bug
radv: advertise fragmentShadingRateWithShaderDepthStencilWrites on NAVI23+
aco: fix tcs_wave_id unpacking on GFX11
radv: declare new dynamic states
radv: add support for dynamic polygon mode
radv: add support for dynamic tessellation domain origin
radv: add support for dynamic logic op enable
radv: add support for dynamic line stipple enable
radv: add support for dynamic alpha to coverage enable
radv: add support for dynamic sample mask
radv: add support for dynamic depth clip enable
radv: add support for dynamic conservative rasterization mode
radv: add support for dynamic depth clip negative one to one
radv: add support for dynamic provoking vertex mode
radv: add support for dynamic depth clamp enable
radv: advertise VK_EXT_extended_dynamic_state3
radv: disable VK_AMD_texture_gather_bias_lod on GFX11
radv: disable AMD_shader_explicit_vertex_parameter on GFX11
radv/llvm: do not set COMPR for exports on GFX11
ac/nir,radv/llvm: add support for the attribute ring
aco,radv/llvm: do not export parameters on GFX11
ac: fix has_vrs_ds_export_bug for VanGogh
radv: disable {shader,sparse}ImageFloat32AtomicMinMax on GFX11
radv: disable shaderBufferFloat64AtomicMinMax on GFX11
radv: disable dual source blending in more situations
ac/llvm: add support for device clock on GFX11
aco: add support for s_sendmsg_rtn_b{32,64}
aco: split the sendmsg enumeration into sendmsg_rtn
aco: add support for device clock on GFX11
ac/nir/ngg: fix emitting streamout output by using packed location
radv: fix suspending/resuming pipeline statistics queries with GDS
radv: fix VRS limit when attachmentFragmentShadingRate is disabled
radv/llvm: fix dual source blending on GFX11
radv: move nir_opt_idiv_const/nir_lower_idiv after NGG lowering
ac/nir/ngg: fix emitting streamout output by using packed location
radv: implement transform feedback queries with NGG streamout
Revert “radv: add a pointer to radv_shader_binary in radv_shader”
aco: create a new builder variant for ds_add_rtn
aco: implement NIR intrinsics for NGG streamout
aco: remove invalid assertions for NGG streamout
radv/llvm: prevent emitting streamout outputs for NGG
radv: call nir_io_add_intrinsic_xfb_info() after IO lowering
radv: lower NIR intrinsics for NGG streamout
radv: do not unconditionally disable NGG streamout lowering in NIR
radv: reword an incorrect comment about primitives generated query
radv: use 32-bit GDS counters for primitives generated query with NGG
radv: suspend/resume primitives generated query separately for legacy/NGG
radv: fix primitives generated query with NGG only
radv: set the correct buffer size for NGG streamout
radv: enable all possible features with NGG streamout
radv: allow to enable NGG streamout with RADV_PERFTEST=ngg_streamout
radv: enable VK_EXT_transform_feedback with NGG streamout on GFX11
ac/nir: stop using nir_gather_xfb_info_from_intrinsics
radv: assign IO var locations for VS/TES with NGG streamout
radv/amdgpu: add a kernel GDS management workaround for -ENOMEM
radv: use defines instead of magic values for GDS counters offset
radv: move GDS counters after reserved GDS offsets for streamout
radv: fix fallback for extreme geometry with tessellation on GFX11
radv: fix setting MIN_LOD for texture descriptors on GFX11
radv: make the GDS/GDS OA buffer objects resident
radv: invalidate L2 instead of only writeback L2 when using DCC stores
radv: re-emit the guardband state when restoring meta operations
ac/nir,radv: rework and fix NGG queries enables for VS/TES
ac/nir: do not convert GS outputs to the expected variable size on GFX11
radv: re-emit NGG culling settings when conservative rast mode is dynamic
radv: enable lowering of subgroup shuffle in NIR on GFX11+
aco: fix p_interp_gfx11 to not overwrite SCC
aco: fix missing SCC for p_interp_gfx11 in emit_interp_mov_instr()
aco: add p_dual_src_export_gfx11 for dual source blending on GFX11
aco: fix dual source blending on GFX11
aco: fix FS inputs loads in WQM with 16-bit
radv: suspend/resume XFB queries with NGG for meta operations
zink: require extendedDynamicState3ColorBlendEquation for full ds3
radv: stop overallocating LDS for VS/TES when NGG streamout is enabled
radv: fix computing the pervertex LDS size with NGG streamout
radv: enable NGG XFB queries only if streamout is enabled
radv: re-mit streamout buffers to unbind them when NGG streamout is disabled
radv: fix NGG streamout when it’s never enabled in runtime
radv: fix possible hangs with NGG streamout and secondary cmdbuf
aco: fix emitting DEALLOC_VGPRS in the discard block
radv: re-emit dynamic depth clamp enable if depth clip enable changed
radv: make sure to mark DCC as compressed on GFX11
radv: introduce RADV_DEBUG=nofmask
radv: set missing SPI_SHADER_PGM_xxx registers on GFX11
radv: set INTERPOLATE_COMP_Z to 0 on GFX11
radv: do not enable DCC for MSAA images without FMASK
radv: do not enable NGG culling on GFX11
radv: disable VRS entirely on GFX11
Sarah Walker (3):
pvr: Update FWIF compute register structure
pvr: Remove STRIP_RENDERING members from FWIF
pvr: Update FWIF 3d and compute register structures
Sathishkumar S (2):
frontends/va: support yuv 400/444 rt_formats in vaconfig
frontends/va: reallocate surface for yuv400/yuv444 picture
Sergei Chernyadyev (1):
radv: fix setting results for initialization failures in thread trace and trap handler
Shuicheng Lin (1):
iris: return failure if iris_resource_configure_main fail
Sil Vilerino (76):
gallium/va: vaDeriveImage to check PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
d3d12: Implement cap PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP
frontends/va: Add HEVC decode slice descriptors
frontends/va: Add HEVC decode args: IntraPicFlag, no_pic_reordering_flag, no_bipred_flag
frontends/vdpau: Fill HEVC Decode param IntraPicFlag
frontends/omx: Fill HEVC Decode param IntraPicFlag
frontends/va: Mark IsLongTerm in HEVC decode args
frontends/va: Add HEVC Encode support multi slice and extend pipe args
frontends/va: Extend single to multiple L0-L1 references for HEVC Encode
frontends/va: Support HEVC caps regarding features, block sizes, prediction direction
d3d12/va: Name convention rename PIPE_VIDEO_SUPPORTS_CONTIGUOUS_PLANES_MAP to PIPE_VIDEO_CAP_SUPPORTS_CONTIGUOUS_PLANES_MAP
gallium/vl: Allow vl_zscan.h to be included from C++
gallium/vl: Rename s_addr variable in vl_idct.c as it conflicts with windows existing inaddr.h keyword definition
d3d12: Add HEVC Decode/Encode
d3d12: Avoid extra allocation, copies when generating DXVA_Slice_Hxxx_Short arrays
d3d12: Avoid local allocations for D3D12_RESOURCE_BARRIER on hot paths
d3d12: Avoid heap allocations on hot path d3d12_video_decoder_dxva_picparams_from_pipe_picparams_hevc
d3d12: Fill feedback in d3d12_video_encoder_encode_bitstream so vaSyncSurface properly populates buf->coded_size
d3d12: Fix leak in d3d12_video_proc when re-creating ID3D12VideoProcessor
d3d12: Fix winsys displaytarget leak in d3d12_resource
d3d12: Fix leak in d3d12_resource_from_resource and usage in d3d12 video dec, enc
d3d12: Add support for importing d3d12_video_buffer from handle
d3d12: Allow formats other than NV12 in d3d12_video_buffer
d3d12: Allow video processing for formats other than NV12
d3d12: Add VPBlit processor check for D3D12_FEATURE_VIDEO_PROCESS_MAX_INPUT_STREAMS
d3d12: d3d12_video_buffer_create_impl make resident after checking for resource creation
frontends/va: Implement vaSyncBuffer
d3d12: Update HEVC Encode GOP on I frames too
d3d12: Video process - Remove unnecessary batches flush
d3d12: Add initialization values for d3d12_video_encoder
d3d12: Report PIPE_VIDEO_CAP_REQUIRES_FLUSH_ON_END_FRAME
d3d12: Add support for PIPE_VIDEO_CAP_ENC_SUPPORTS_ASYNC_OPERATION
d3d12: Change type of m_FenceValue to uint64_t in d3d12_video_encoder
d3d12: Export some util functions from d3d12_fence for d3d12 video
d3d12: Keep track of feedbacks from previous encode executions
d3d12: Change d3d12_video_encoder to not automatically flush
d3d12: Move encode configuration and capabilities into separate structs
d3d12: Encoder to use independent command allocators per in flight resource set
d3d12: d3d12_video_encoder add reset() to prevent leaks on re-allocation
d3d12: Have d3d12_video_encoder keep separate references for enc, heap and dpb allocations for in flight resources
d3d12: Make d3d12 encode operations async and do not block waiting
d3d12: Add output buffer to inflight resourceset
d3d12: Fix redundant/inconsistent initializations for d3d12_video_encoder
d3d12: Enhance get_feedback not enough buffers message
d3d12: Extract into common variable for metadata slot calculation
d3d12: Make get_feedback return correctly on error when writing *size=0
d3d12: Relax slice caps requirements for video encode
d3d12: Fix out of bounds index check for texture array DPB
d3d12: Add debug verbosity for output reconstructed picture
d3d12: Fix texture array DPB encode path
d3d12: Fix usage of %ld with PRIu64 instead for cross-platform build
d3d12: Replace size_t with uint64_t in d3d12_video_encoder definitions for cross-plat compatibility
frontends/va: Add more params from VADecPictureParameterBufferAV1 and VASliceParameterBufferAV1 to pipe_av1_picture_desc
frontends/va: Support AV1 Decode with multiple tiles (num_elements > 1) in a single VASliceParameterBufferAV1 buffer
frontends/va: Use is_video_format_supported in vlVaVidEngineBlit instead of format list
frontends/va: Fix AV1 decode qm_* parameters reading from VADecPictureParameterBufferAV1
d3d12: Add support for AV1 Video Decode
d3d12: Support more video formats
d3d12: Fix aliased usage of m_SliceControlBuffer in d3d12_video_decoder_prepare_dxva_slices_control_XXXX
d3d12: Style variable fix in d3d12_video_decoder_prepare_dxva_slices_control_av1
frontends/va: Add VP9 decode multi slice information
frontends/va: Add VP9 decode ref/mode_deltas information
d3d12: Add VP9 Decode support
d3d12: Fix get_index7bits - Reuse previously freed indices
d3d12: HEVC Encode workaround for edge case in caps reporting not contemplated by upper layer interface
d3d12: Fix HEVC wrong caps detection due to bad parenthesis in condition
d3d12: HEVC Set D3D12_VIDEO_ENCODER_CODEC_CONFIGURATION_HEVC_FLAG_USE_ASYMETRIC_MOTION_PARTITION when required by caps
gallium/vl: Add vl_winsys_win32 support
frontends/va: Add windows VA frontend support via vl_winsys_win32 and libva-win32
d3d12: resource_from_handle to validate importing resource ptr from same d3d12 device
CI: Add gallium-va and video-codecs in windows-vs2019 and debian-mingw32-x86_64
d3d12: Create d3d12_resource objects for video usage keeping their DXGI_…_UNORM formats
d3d12: HEVC Decode - Fix slice size and offsets translation from VA to DXVA
frontend/va: Fix WIN32 VA_DRIVER_INIT_FUNC declaration. Remove declspec as it uses .def file
ci: Add va frontend to windows-build-rules
d3d12: Video Screen - Do not crash if HEVC not supported, return no support instead
Simon Fels (1):
venus: drop duplicated YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT
Simon Ser (2):
vulkan/wsi/x11: detect Xwayland via the XWAYLAND extension
egl: fix error string for dri2_create_image_dma_buf()
Simon Zeni (10):
mesa: fix EXT_EGL_image_storage target validation
gallium: track if st_egl_image was created by a dmabuf
mesa: simplify st_egl_image binding process for texture storage
mesa/st: check egl image and texture target match before binding
mesa: fix GL_INVALID_OPERATION in glEGLImageTargetTexStorageEXT
mesa: unlock texture on error path in glEGLImageTargetTexStorageEXT
egl: fix Xlib include in egldisplay.h
egl: set API symbols public
EGL: sync headers with Khronos
meson: remove unused EGL_NO_X11 definition
Sonny Jiang (1):
radeonsi/vcn: add decode support for gfx1101 and gfx1103
SoroushIMG (22):
zink: Fix incorrect emission of SPIR-V shift ops
zink: track min_samples state for per sample shading
zink: lower 64bit vars for drivers without float64
zink: optimise lower_64bit_vars for when int64 is supported
zink: lower 64bit pack when float64 not supported
zink: fix nir_op_unpack_64_2x32 emission
zink: fix spirv temp func variable class emission
nir: track whether a loop contains soft fp64 ops
nir: allow to fine tune unrolling for loops with soft fp64 ops
zink: enable loop unrolling for loops that have soft fp64
zink: enable native ETC2 if vk driver supports it
zink: fix invalid Offset set for variables which do not need an offset
zink: stop enabling minmax filtering when not supported
zink: fix isNan mismatch between NIR and SPIR-V
lavapipe: stop allocating 0 size const buffer
zink: cleanup pushconst interface between driver/compiler
zink: use unified pushconst layour for passthorugh tcs
zink: cleanup zink_pipeline_layout_create
zink: add pushconst only pipeline layout
zink: add new framebuffer_is_layered state
zink: clamp gl_Layer output to 0, if framebuffer is not layered
zink: limit gl_Layer clamping to drivers that need it
Sunil Khatri (1):
winsys/amdgpu: clamp up the alignment if zero
Sviatoslav Peleshko (2):
iris: Always initialize shader compilation queue ready fence
driconf/intel: Use fake vendor to WA bad detection in Source engine games
Tapani Pälli (40):
glsl: allow image*Shadow keywords on ES and GLSL >= 420
glsl: add check for too large atomic counter buffer offset
iris: implement Wa_14015946265 for DG2
anv: implement Wa_14015946265 for DG2
intel/compiler: implement Wa_14014595444 for DG2
intel/compiler: fix assert from ver to verx10
intel/genxml: add VFG_PREEMPTION_CHICKEN_BITS register
anv: disable preemption on VFG, Wa_14015207028 for DG2
iris: disable preemption on VFG, Wa_14015207028 for DG2
anv: remove vk_sample_locations_state from emit_multisample
intel/common: clamp sample location coordinate range
anv: remove primitive_topology from 3DPRIMITIVE calls
mesa/st: fix a set_sampler_views call parameter order
anv: implement Wa_14016118574
iris: implement Wa_14016118574
anv: limit to default fast clear color when image used for transfer
intel: revert preemption disable via VFG changes
intel/fs: mark debug variables with ASSERTED
anv: mark debug variables with ASSERTED
mesa: mark debug variables with ASSERTED
anv: dynamic state for polygon mode
anv: dynamic state for tessellation domain origin
anv: dynamic rasterization stream
anv: dynamic line stipple enable
anv: dynamic line rasterization mode
anv: dynamic state for logic op enable
anv: dynamic alpha to one enable
anv: dynamic states for depth clip and clamp
anv: dynamic provoking vertex mode
anv: dynamic color write mask
anv: dynamic color blend equation
anv: dynamic multisample sample mask
anv: toggle on EXT_extended_dynamic_state3
anv: move emit_shading_rate to gfx8_cmd_buffer
anv: fill AlphaToCoverageEnable lazily from state
intel/compiler: run nir_opt_idiv_const before nir_lower_idiv
anv: remove some unused functions
hasvk: remove some unused functions
iris: setup stage bitmask for Wa_22011440098
anv: setup stage bitmask for Wa_22011440098
Tatsuyuki Ishi (4):
radv: Implement radv_flush_before_query_copy to workaround UE Vulkan bugs.
radv: Remove unused functions.
radv: Remove unused radv_deferred_queue_submission.
radv,lvp,anv: Delete pre-common dispatch leftover.
Thomas Debesse (7):
r600: set clear_buffer = u_default_clear_buffer
r600: info.stage MESA_SHADER_KERNEL as MESA_SHADER_COMPUTE
nv50: call nir_lower_flrp
clover: implement CLOVER_DEVICE_TYPE like RUSTICL_DEVICE_TYPE
Revert “gallium/clover: pass -no-opaque-pointers to Clang”, opaque pointers are now implemented
gallium/clover: pass -opaque-pointers to Clang on LLVM 15 and 16
crocus: set clear_buffer = u_default_clear_buffer
Thomas H.P. Andersen (15):
nvc0: fix a warning -Wconstant-conversion
radeonsi: avoid a use-after-free
d3d12: fix warnings for missing-braces on clang
r600: fix warnings for missing-braces on clang
ci: remove missing-braces from no-error
util: avoid deprecated builtin has_trivial_destructor
spirv: avoid allocating memory twice
hasvk: Switch to the common descriptor update template struct
panvk: Implement VK_KHR_descriptor_update_template
spirv: mark function unused
llvmpipe: mark function unused
llvmpipe: drop unused function
panfrost: avoid warning about unused function
vulkan: avoid warning about unused function
vulkan: drop const for descriptor set
Timothy Arceri (24):
Revert “nir: Preserve offsets in lower_io_to_scalar_early”
glsl: dont lower precision for textureGatherOffsets
glsl: make packed varying helper needs_lowering() external
glsl: fix location for array subscript
nir: update nir_is_supported_terminator_condition()
nir: support loop unrolling with inot conditions
glsl: remove GLSL IR inverse comparison optimisations
nir/loop_analyze: delay instruction cost calculation
nir/loop_analyze: remove cost of redundant selects
util/conf: enable init to zero workaround for Exanima
util/radeonsi: enable zerovram workaround for Exanima
radv: add radv_zero_vram workarounds for OpenGL games
glthread: fix matrix stack depth tracking
mesa: add EXT_debug_label support
glthread: leave dlist dispatch in place for Begin/End
glsl/glsl_to_nir: remove unreachable code
glsl: move rule inside lower_packing_builtins()
glsl: drop sub to add neg lowering in GLSL IR
glsl: always do {CARRY,BORROW}_TO_ARITH lowering
glsl: move lower instructions logic inside that pass
st/glsl_to_ir: remove stale comment
st/glsl_to_ir: remove stale include
mesa: fix typo from adding glGetObjectLabelEXT
nir: fix typo in lower_double options handling
Timur Kristóf (64):
ac/nir/cull: Move some code from cull_bbox into helper functions.
ac/nir/cull: Move the contents of cull_bbox into ac_nir_cull_triangle.
ac/nir/cull: Change if condition for bounding box culling.
ac/nir/ngg: Move LDS store of accepted flag into the inner branch.
ac/nir/cull: Make cull functions more consistent.
aco: Optimize branching sequence during SSA elimination.
aco: Remove branch instruction when exec is constant non-zero.
ac/nir/cull: Tweak phi for cull_small_primitive branch.
ac/nir/cull: Fix typo in bounding box culling.
aco: Add faster code path to store_lds for consecutive write mask.
aco: Fix invalidated reference in branching sequence optimization.
aco: Check for instructions that inhibit the branching sequence optimization.
aco/optimizer_postRA: Don’t try to optimize dead instructions.
aco: Support s_cselect_b64 in SCC no-compare optimization.
aco: Improve SCC nocompare optimization when SCC is clobbered.
aco: Fix p_init_scratch for task shaders.
vulkan, spirv: Update to Vulkan 1.3.226 and latest SPIR-V headers.
spirv: Support EXT_mesh_shader indices and mark them per-primitive.
spirv: Add mesh_shading capability for EXT_mesh_shader.
spirv: Support EXT_mesh_shader mesh/task stages.
spirv: Support EXT_mesh_shader SetMeshOutputsEXT.
spirv: Support the CullPrimitiveEXT mesh shader built-in.
spirv: Support TaskPayloadWorkgroupEXT storage class.
spirv, nir: Handle EmitMeshTasksEXT opcode.
ac/nir/ngg: Add EXT_mesh_shader primitive indices.
ac/nir/ngg: Add EXT_mesh_shader CullPrimitiveEXT output.
ac/nir/ngg: Add EXT_mesh_shader vertex/primitive count.
radv: Implement EXT_mesh_shader draw calls.
radv: Enable EXT_mesh_shader on RDNA2 with RADV_PERFTEST=ext_ms
nir/lower_system_values: Add shortcut for 1D workgroups.
nir/gather_info: Clear cross-invocation output mask.
radv: Replace NV_mesh_shader macros with EXT.
radv: Enable subgroup feature bits for mesh and task shaders.
radv: Change max preferred task workgroup invocations to 64.
radv: Remove dead shader temps after linking.
ac/nir/ngg: Don’t use LDS for same-invocation indices and cull outputs.
ac/nir/ngg: Don’t initialize same-invocation mesh shader outputs.
aco/tests: Add post-RA optimizer testcase for partially overwritten VCC.
aco/tests: Add post-RA DPP test cases with control flow.
aco/tests: Add post-RA SCC no-compare tests cases with control flow.
aco/optimizer_postRA: Mark a register overwritten when predecessors disagree.
aco/optimizer_postRA: Don’t assume all operand registers were written by same instr.
aco/optimizer_postRA: Fix logical control flow handling.
aco/optimizer_postRA: Clarify terminology.
aco: Change inverse-comparison optimization to work with s_not
spirv: Treat EmitMeshTasksEXT as a terminating instruction.
radv: Use a fallback for marketing name when libdrm doesn’t know it.
ac/nir/ngg: Fix cross-invocation indices and cull outputs.
aco: Fix build error with std::max on GCC 12
nir: Document the flatten/dont_flatten selection control options.
nir: Add selection control enum for always taken divergent branches.
aco: Allow explicitly removing jumps on GFX10+ when beneficial.
ac/nir/ngg: Remove jumps from some branches where we know LGKMCNT==0.
ac/nir/tess: Remove jump from tess factor writes.
nir, ac, aco: Add ACCESS intrinsic index to load/store_buffer_amd.
aco: Cleanup load_vmem_mubuf and store_vmem_mubuf functions.
nir, ac, aco: Add index src to load_buffer_amd/store_buffer_amd.
aco: Optimize MUBUF 0 offset when idxen is also being used.
aco/optimizer_postRA: Use unique_ptr + array for instruction indices.
aco/optimizer_postRA: Speed up reset_block() with predecessors.
aco/optimizer_postRA: Properly handle vccz/execz/scc in reset_block.
aco/optimizer_postRA: Delete dead instructions more efficiently.
aco: Move is_dead to aco_ir.h to allow it to get inlined.
aco: Add ACO_DEBUG=novalidateir option.
Tomeu Vizoso (16):
radeonsi/ci: Move libva and piglit jobs to Raven Ridge boards
radv/ci: Put one more board to run the CTS on Stoney Ridge
iris/ci: Test on Jasper Lake Chromebooks
iris/ci: Set FDO_CI_CONCURRENT for all Chromebook jobs
ci: Report failures to GitLab for LAVA jobs
ci: Make sure that the Crosvm control socket has been removed
Revert “ci: set venus on lavapipe to manual due to flakes”
ci: Crosvm won’t remove the control socket file on stop
Revert “Revert “Revert “ci: set venus on lavapipe to manual due to flakes”””
ci: Uprev ci-templates
ci: Use –no-install-recommends to avoid problems with –no-remove
ci: Install sysvinit-core without –no-remove
ci: Stop explicitly passing env vars to FDO_DISTRIBUTION_EXEC command
gallium: Add PIPE_CAP_QUERY_TIMESTAMP_BITS
ci: Run RadeonSI jobs on changes to src/amd/ci
radeonsi,radv/ci: Increase coverage
Victor Hermann Chiletto (1):
radv: refactor descriptor set layout tracking
Vinson Lee (10):
bin/perf-annotate-jit.py: Update to Python 3.
zink: Remove duplicate variable zero.
pan/bi: Fix memory leaks.
egl/dri2: Fix missing return with dri2_egl_error_unlock.
radv: Use count_tes_user_sgprs return value.
d3d12: Initialize d3d12_video_encoder_references_manager_hevc::m_current_frame_idx.
radv: Fix file descriptor leak.
zink: Remove duplicate variable zm.
r600/sfn: Initialize TestInstrFromString member m_instr_factory.
v3d: Fix initializer-overrides warning.
Väinö Mäkelä (1):
hasvk: Correctly set NonPerspectiveBarycentricEnable on gfx7
Xin LI (1):
meson: Improve detection of qsort_r().
Yiwei Zhang (52):
venus: increase busy wait order in vn_relax
venus: double the abort timeout to allow long shader compiles
venus: fix external memory ext filtering
venus: require necessary extensions for common wsi support
venus: avoid feedback for external fence
venus: use a separate sync fence for Android wsi
venus: lazily create queue wait fence and make it non-external
venus: avoid pre-allocating the feedback pool
venus: sync to latest venus protocol headers for syncFdFencing
venus: stub out renderer sync_fd fencing features
venus: put android wsi on the sub-optimal path
venus: fix vn_GetFenceFdKHR
venus: fix vn_GetSemaphoreFdKHR
venus: query renderer sync_fd props to fill the feature stubs
venus: re-implement sync_fd external fence
venus: re-implement sync_fd external sempahore
venus: avoid scrubing wsi/external sempahores
venus: allow no external memory handle when renderers lacks support
venus/ci: mark a test as flake
venus: some clang format fixes
venus: enable zink required extensions on Android
venus: enable KHR_driver_properties on Android
venus: double the abort timeout
loader: use os_get_option for driver override
zink: fix core support on Android
zink: fix zink_create_fence_fd to properly import
zink: fix in-fence lifecycle
zink: implement fence_get_fd required by EGL android platform
venus: clean up vn_QueueSubmit
venus: force synchronous submission for external signal semaphore
venus: fix an oob in descriptor pool state restoration
venus: vn_ResetDescriptorPool to reset mutable type states
venus: zero out the pipeline handles
venus: avoid fixing pipeline if not derivative
venus: ignore pInheritanceInfo if not secondary command buffer
venus: ensure to clear VkPipelineCreationFeedback::flags if needed
mesa/st: emit string marker based on PIPE_CAP_STRING_MARKER
meson: libelf is optional
venus/ci: remove redundant crosvm patch
venus: move vendor ext to bottom and sort the ext list
docs: update venus extension support
docs: move VK_EXT_extended_dynamic_state3 out from 1.3
ci/venus: enable render server for venus testing
venus: avoid accessing local var in VN_ADD_EXT_TO_PNEXT_OF
venus: remove redundant codes
venus: handle VkAndroidHardwareBufferFormatProperties2ANDROID
venus: sync to latest venus protocol headers
venus: add VK_EXT_primitives_generated_query support
venus: add VK_EXT_depth_clip_control support
docs: update to latest venus driver support
venus: handle VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT
venus: fix android wsi with global fencing disabled
Yonggang Luo (218):
meson: Place all pre_args about HAVE_DRI* into single place
meson: Cleanup usage dri_drivers as it’s a dead option
d3d12: Fixes compile error with mingw/gcc-x64 when static linkage to runtime library
meson: clc compiler test only works on win32
microsoft/clc: Fixes compiling errors with clang/mingw64 in clc/clc_compiler_test.cpp
util: open_memstream also support on MacOS
c11: Fixes the declaration of timespec_get in time.h for macOS
egl: Remove eglextchromium.h and import eglext_angle.h
egl: wire up ANGLE_sync_control_rate
egl/x11: Split declaration of dri2_format_for_depth into header platform_x11.h
egl/x11: implement ANGLE_sync_control_rate
ci/windows: Setup proper MESA_IMAGE_TAG for Windows build/test image
c11: It’s should detect PTHREAD_DESTRUCTOR_ITERATIONS when define TSS_DTOR_ITERATIONS
c11: call impl_tss_dtor_invoke with tls callback for win32
c11: Implement and use of thrd_current properly on win32
util: Implement util_thread_get_time_nano on win32
util: Fixes typo in function os_get_total_physical_memory
util: Implement os_get_available_system_memory on Win32
util: Use `DETECT_OS_WINDOWS` instead `WIN32` in u_process.c
util: Enable tests that disabled for msvc/mingw
zink: Use DETECT_OS_WINDOWS instead of ‘WIN32’
meson: Enable graw tests on mingw
util: Add os_create_anonymous_file support on win32
nine: Fixes compile of nine_pipe.h with clang ../../src/gallium/frontends/nine/nine_pipe.h:377:9: error: unannotated fall-through between switch labels [-Werror,-Wimplicit-fallthrough] default: ^ ../../src/gallium/frontends/nine/nine_pipe.h:377:9: note: insert ‘break;’ to avoid fall-through default:
panfrost: Do no use designated initializer for union
intel: Fixes compile error of aubinator_viewer.cpp with gcc
util: Fixes memory leak in create_cache_item_header_and_blob
util: Fixes memory leak in u_printf_test.cpp
util: Fixes invalid assumption that return non null by function util_format_fetch_rgba_func
util: Disable usage of __attribute__((__const__)) when the compiler is clang
ci: Improve MacOS github ci
ci: Enable llvmpipe on MacOS
c11: Remove mtx_try from mtx enums as it’s not a part of c11 standard
c11: #include <threads.h> when the os/platform provide it
anv: Fixes struct anv_device::info is not initialized with struct anv_physical_device
meson: Use different STRACEDIR folder for intel_devinfo_override_test
meson: add enable-glcpp-tests option
ci: disable glcpp tests for now
Revert “ci: disable unit tests”
util: Use literal instead call to list_inithead in u_queue.c
mapi: Remove unused ENTRY_CURRENT_TABLE_GET
mapi: Remove usage of _glapi_check_multithread and _glapi_destroy_multithread
mapi: Remove reference to unused _gl_DispatchTSD
mapi: Move shared _glapi_set_context and _glapi_set_dispatch into u_current.c
mapi: Move shared stub into u_current.c
mapi: Access _glapi_tls_Dispatch directly without need of macro
docs: Remove document about USE_ELF_TLS
mapi: Improve comment about _glapi_tls_Dispatch and _glapi_tls_Context
aco: Use unreachable instead assert(false)
amd/compiler: Fixes warning [-Wunused-variable] in test_to_hw_instr.cpp
amd/compiler: Fixes warning [-Wunused-variable] in test_optimizer_postRA.cpp
nir: Fixes [-Wdeprecated-declarations] in serialize_tests.cpp
util: Fix [-Wdeprecated-declarations] in mesa-sha1_test.cpp
glsl: Fixes [-Wdeprecated-declarations] in list_iterators.cpp
intel/compiler: Fixes [-Wdeprecated-declarations] in test_eu_compact.cpp
intel/compiler: Fixes [-Wdeprecated-declarations] in test_eu_validate.cpp
virgl: Fixes [-Wdeprecated-declarations] in virgl_staging_mgr_test.cpp
osmesa: Fixes [-Wdeprecated-declarations] in test-render.cpp
ci: Remove -Wno-error=deprecated-declarations cpp option from debian-clang
util: Remove unused rtasm_cpu_has_sse2
util: Rename util_cpu_detect to _util_cpu_detect_local
util: Improve has_sse has_sse2 has_sse3 has_sse4_1 has_avx disable handling
util: Handling GALLIUM_NOSSE in u_cpu_detect.c
util: Handling LP_FORCE_SSE2 in u_cpu_detect.c
llvmpipe: Remove the hack for LLVM4 in lp_bld_init.c
gallium: Fixes memory leak of translate_test.c
util: Use environment variable GALLIUM_OVERRIDE_CPU_CAPS to remove usage of util_cpu_caps in translate_test.c
util: Move detect_done out of struct util_cpu_caps_t
util: Add api util_call_once_with_context
util: Add extern “C” guard in simple_mtx.h
util: Remove the need of _MTX_INITIALIZER_NP in simple_mtx.h
meson/panfrost: Add dep_valgrind for libpanfrost_pixel_format to fixes the compiling error:
llvmpipe: Fixes warning [-Wimplicit-fallthrough] in lp_bld_swizzle.c
llvmpipe: Fixes warning [-Wimplicit-fallthrough] in lp_bld_sample_soa.c
radeonsi: Fixes warning [-Wimplicit-fallthrough] in si_descriptors.c
freedreno: Fixes warning [-Wimplicit-fallthrough] in freedreno_util.h
freedreno: Fixes warning [-Wimplicit-fallthrough] in fd4_texture.h
freedreno: Fixes warning [-Wimplicit-fallthrough] in fd2_texture.c
freedreno: Fixes warning [-Wimplicit-fallthrough] in fd3_texture.c
freedreno: Fixes warning [-Wimplicit-fallthrough] in fd5_texture.h
freedreno: Fixes warning [-Wimplicit-fallthrough] in fd5_emit.c
freedreno: Fixes warning [-Wimplicit-fallthrough] in fd6_emit.c
vdpau: Fixes warning [-Wimplicit-fallthrough] in vdpau_private.h
v3dv: Fixes warning [-Wimplicit-fallthrough] in v3dvx_pipeline.c
v3dv: Remove redundant unreachable in v3dvx_pipeline.c
st: Fixes warning [-Wimplicit-fallthrough] in st_texture.c
llvmpipe: Remove llvm version guard LLVM_VERSION_MAJOR <=> 4
meson: bump the minimal required llvm version to 5.0.0
util: Refactoring check_cpu_caps_override out
util: Add ssse3 and avx cpu caps override option
util: Move the detect of max_vector_bits into u_cpu_detect.c
util: add support for detecting avx512 vector bit size
llvmpipe: Always using util_get_cpu_caps to get cpu caps for llvm on x86
llvmpipe: Enable avx512 support in llvm
docs: document LP_NATIVE_VECTOR_WIDTH GALLIUM_OVERRIDE_CPU_CAPS GALLIUM_NOSSE LP_FORCE_SSE2
ci: EXTRA_OPTIONS -> EXTRA_OPTION for debian-clang
ci: Enable GALLIUM_DUMP_CPU=true only in the clang job
ci: Enable all possible meson build options for clang
ci: Add debian-clang-release build pipeline
ci/fedora: Re-enable vulkan-layers=device-select,overlay
gallium/hud: Fixes compile error in hud/hud_context.c:
util: Fixes comment about debug_get_option
mesa: direct use of mtx_recursive is not c11 conformance
radeonsi: direct use of mtx_recursive is not c11 conformance
svga: direct use of mtx_recursive is not c11 conformance
c11: Update the values of enum mtx_plain, mtx_recursive, mtx_timed to make sure mtx_recursive != mtx_plain | mtx_recursive
drm-shim: drop gnu99 override
clover: Fixes use of designated initializers requires in c++ that doesn’t support by MSVC
radv: Remove the redundant #include <gelf.h> and #include <libelf.h> in ac_binary.c
aco: Convert to use u8 literal for Unicode character to fixes msvc warning
util: Add util_call_once for optimize call to util_call_once_with_context out for hot path
util: getting get_tracefile in u_trace.c to be thread safe
util: Remove the macro DEBUG_GET_ONCE_FILE_OPTION
radv/r600/clover: Getting libelf to be optional
radv: Getting radeon_icd to be generated properly on win32
dzn: rename module_dir to icd_lib_path for consistence
lavapipe/meson: rename module_dir to icd_lib_path and swap two lines for consistence
Update 22.2.0.rst
ci: debian-clang: drop -Wno-error=unused-function
r600/sfn: Fixes ‘numeric_limits’ is not a member of ‘std’ error in sfn/sfn_instr.cpp
aco: Fixes compiling error about char8_t with c++20
ci/docs: Stick to specific version of python packages
util: Remove the include of windows.h when compiling with MSVC
util: Implement atomic operations consistently across compilers and testing for it
util/mesa/wide: Rename _SIMPLE_MTX_INITIALIZER_NP to SIMPLE_MTX_INITIALIZER
util: Turn -DWINDOWS_NO_FUTEX to be pre_args
ci/windows: Enable gles1 for msvc
ci/windows: Remove -Dlibelf:warning_level=1 as libelf subproject are already removed
ci/windows: Getting the default supported windows version to be 7 when using mingw
gallium: delete graw
nir: No need redefine snprintf anymore in nir.h
d3d10ump: No need define snprintf anymore in InputAssembly.cpp
util: Move the implementation of futex_wake and futex_wait from futex.h to futex.c
docs: Remove graw related words
docs: Remove rbug related documents
nouveau: Remove XVMC_VL environment variable usage
docs: Remove document about XvMC
meson: add dep_valgrind dependency for ‘dxil_compiler’
util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_stack.c
util: Call function mtx_init on exit_mutex to replace the usage of _MTX_INITIALIZER_NP in u_queue.c
util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_symbol.c
util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_stack_android.cpp
util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in u_debug_memory.c
util: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_M in u_debug_refcnt.c
mapi: Use util_call_once to init exec_mem and mutex instead _MTX_INITIALIZER_NP
mapi: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER in stub.c
gallium/auxiliary: Remove the need of _MTX_INITIALIZER_NP by using simple_mtx_t/SIMPLE_MTX_INITIALIZER
egl/wgl: Use util_call_once_data to replace usage of mtx_t glFlushMutex
egl/dri2: Use util_call_once_data to replace usage of mtx_t glFlushMutex
mesa: Use util_call_once_data instead of mtx_t init_once_lock
util: #include “c11/threads.h” when necessary in simple_mtx.h
util: #include “util/macros.h” in u_cpu_detect.h for ATTRIBUTE_CONST
c11: Remove the code for Windows XP
meson/mesa/wide: define WIN32_LEAN_AND_MEAN with pre_args
util: Remove the guard WIN32_WINNT >= 0x0600 in u_thread.h
c11: Getting the macro guard of HAVE_PTHREAD in c11/threads.h to be consistence with util/u_uthread.h
util: #include <windows.h> in disk_cache_os.c
llvmpipe: #include <windows.h> in lp_rast.c
util: Remove include of windows.h in memstream.h
util: Remove include of windows.h in rwlock.h
util: Move the function implementation from u_thread.h to u_thread.c
glx: Guard usage of infer_zink && !explicit_zink in glxext.c
glx: Trim trailing spaces in in glx/glxext.c
glx: Remove redundant #ifndef GLX_USE_APPLEGL in glx/glxext.c
glx: Adopt guard of glx_direct and glx_accel in #if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
glx: Adot #ifdef GLX_USE_WINDOWSGL in #if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
st: Remove st_api_type because ST_API_OPENVG is not an option anymore
ci: libxvmc-dev is not a dependence anymore
meson: upgrade zlib wrap
ci: upgrade zlib to 1.2.13 in mesa_deps_build.ps1
ci: Add Get-Date in each package build in mesa_deps_build.ps1
ci: Move building libva before clone llvm-project in mesa_deps_build.ps1
ci: Install the clang-cl compiler within mesa_deps_vs2019.ps1
ci: Trigger building visual studio docker image
meson: with_glx never assigned to ‘gallium-xlib’, so need add with_glx == ‘xlib’ for dep_glproto
meson: with_glx never assigned to ‘gallium-xlib’, remove ‘gallium-xlib’
xlib: Remove macro guard with GLX_INDIRECT_RENDERING in xlib.c
ci/macos: Building both dri and xlib version of glx
hgl: Remove non-nused hgl_create_st_api
st: move function st_visual_have_buffers into st_manager.c
st: OpenVG are removed, remove st_api::profile_mask as it’s constant
st: OpenVG are removed, remove st_api::feature_mask as it’s constant
st: Remove st_api::destroy
st: Turn st_api::destroy_drawable to be direct accessed function st_api_destroy_drawable
st: Turn st_api::get_current to be direct accessed function st_api_get_current
st: Turn st_api::make_current to be direct accessed function st_api_make_current
st: Turn st_api::create_context to be direct accessed function st_api_create_context
st: Turn st_api::query_versions to be direct accessed function st_api_query_versions
xlib: Implement xmesa_get_name by return literal “Mesa “ PACKAGE_VERSION directly
st: Remove struct st_api, st_gl_api_create and st_gl_api.h
aco: Do not define NOMINMAX as it’s already defined in pre_args now
util: Remove non used UTIL_MAX_L3_CACHES in u_thread.h
util: Merge duplicated function prototype in u_thread.h that named with util_barrier*
util: Move UTIL_MAX_CPUS from u_thread.h to u_cpu_detect.h
util: #include “c11/threads.h” instead of #include “util/u_cpu_detect.h” u_format.c
xlib: Fixes compiling on linux
xlib: Remove the linkage hack in lib.c by use meson link_whole option
gallium: Remove mgl* prefix in linker script osmesa.sym and libgl-xlib.sym
xlib: Indent with space and trim trailing spaces of xlib files
ci/macOS: Getting the installed binary to be artifacts
ci: Getting debian-clang-release to building with glx=xlib
xlib: Getting xmesa_strict_invalidate to be function
xlib: Remove the usage of global constructor in xlib.c, so the xm_public.h are removed
docs: -Ddri-drivers= option is deprecated, do not use it anymore
docs: There is only glx=xlib option now
docs: There is no more swrast driver
android: -Ddri-drivers= is not needed anymore
glx: Fixes apple/apple_visual.c that include non-exist util/debug.h
ci: Fixes macos.yml
radv: Fixes prototypes
meson: Refactoring shared gen_vs_module_defs_normal_command out
meson: fixes mingw-clang32 building
clover: Rename *OpenCL.def to *OpenCL.def.in
clover: Fixes building with mingw-x86
meson: Fixes name_prefix for clover on mingw
clover: empty soversion when on win32
util: Test __PPC64__ for getting PIPE_ARCH_PPC_64 respond to __PPC64__ take effect
gallivm: use valid LLVM_VERSION_MAJOR instead of LLVM_VERSION
Yusuf Khan (7):
nouveau: implement and enable PIPE_CAP_QUERY_MEMORY_INFO
tu: remove tu_syncobj_to_fd
nouveau: get timestamp from os_time_get_nano instead of os_time_get
nouveau: put nv04 push macros in nouveau_winsys
nv50/ir: nir_op_b2i8 and nir_op_b2i16
gallium/util: add a helper for get_timestamp
nouveau: enable PIPE_CAP_UMA when appropriate
jenneron (1):
docs/panfrost: Document Mali-T620 support
noasakurajin (1):
disable zinks shader cache when the needed functions do not exist
nyanmisaka (2):
gallium: Do not include offscreen winsys if glx is disabled
radeonsi: Inherit the old modifier when reallocating the texture.
semjon00 (4):
hasvk: don’t export flush_compute_state
hasvk: don’t export gfx state flushing helper
hasvk: combine flushes in Draw/DrawIndexed/DrawIndirectByteCountEXT
hasvk: force inline more pipe flush functions
sjfricke (2):
isl: fix bug where sb.MOCS is not being set
anv: fix assert to build with shader cache disabled