2020-02-19 19:26:47 +00:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
< html lang = "en" >
< head >
< meta http-equiv = "content-type" content = "text/html; charset=utf-8" >
< title > Mesa Release Notes< / title >
< link rel = "stylesheet" type = "text/css" href = "../mesa.css" >
< / head >
< body >
< div class = "header" >
< h1 > The Mesa 3D Graphics Library< / h1 >
< / div >
< iframe src = "../contents.html" > < / iframe >
< div class = "content" >
< h1 > Mesa 20.0.0 Release Notes / 2020-02-19< / h1 >
< p >
Mesa 20.0.0 is a new development release. People who are concerned
with stability and reliability should stick with a previous release or
2020-03-08 16:58:57 +00:00
wait for Mesa 20.0.1.
2020-02-19 19:26:47 +00:00
< / p >
< p >
Mesa 20.0.0 implements the OpenGL 4.6 API, but the version reported by
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 4.6. OpenGL
4.6 is < strong > only< / strong > available if requested at context creation.
Compatibility contexts may report a lower version depending on each driver.
< / p >
< p >
2020-03-06 19:22:40 +00:00
Mesa 20.0.0 implements the Vulkan 1.2 API, but the version reported by
2020-02-19 19:26:47 +00:00
the apiVersion property of the VkPhysicalDeviceProperties struct
depends on the particular driver being used.
< / p >
< h2 > SHA256 checksum< / h2 >
< pre >
bb6db3e54b608d2536d4000b3de7dd3ae115fc114e8acbb5afff4b3bbed04b34 mesa-20.0.0.tar.xz
< / pre >
< h2 > New features< / h2 >
< ul >
< li > OpenGL 4.6 on radeonsi.
< / li >
< li > GL_ARB_gl_spirv on radeonsi.
< / li >
< li > GL_ARB_spirv_extensions on radeonsi.
< / li >
< li > GL_EXT_direct_state_access for compatibility profile.
< / li >
< li > VK_AMD_device_coherent_memory on RADV.
< / li >
< li > VK_AMD_mixed_attachment_samples on RADV.
< / li >
< li > VK_AMD_shader_explicit_vertex_parameter on RADV.
< / li >
< li > VK_AMD_shader_image_load_store_lod on RADV.
< / li >
< li > VK_AMD_shader_fragment_mask on RADV.
< / li >
< li > VK_EXT_subgroup_size_control on RADV/LLVM.
< / li >
< li > VK_KHR_separate_depth_stencil_layouts on Intel, RADV.
< / li >
< li > VK_KHR_shader_subgroup_extended_types on RADV.
< / li >
< li > VK_KHR_swapchain_mutable_format on RADV.
< / li >
< li > VK_KHR_shader_float_controls on RADV/ACO.
< / li >
< li > GFX6 (Southern Islands) and GFX7 (Sea Islands) support on RADV/ACO.
< / li >
< li > Wave32 support for GFX10 (Navi) on RADV/ACO.
< / li >
< li > Compilation of Geometry Shaders on RADV/ACO.
< / li >
< li > Vulkan 1.2 on Intel, RADV.
< / li >
< li > GL_INTEL_shader_integer_functions2 and VK_INTEL_shader_integer_functions2 on Intel.
< / li >
< / ul >
< h2 > Bug fixes< / h2 >
< ul >
< li > drisw crashes on calling NULL putImage on EGL surfaceless platform (pbuffer EGLSurface)< / li >
< li > [radeonsi][vaapi][bisected] invalid VASurfaceID when playing interlaced DVB stream in Kodi< / li >
< li > [RADV] GPU hangs while the cutscene plays in the game Assassin' s Creed Origins< / li >
< li > ACO: The Elder Scrolls Online crashes on startup (Navi)< / li >
< li > Broken rendering of glxgears on S/390 architecture (64bit, BigEndian)< / li >
< li > aco: sun flickering with Assassins Creeds Origins< / li >
< li > !1896 broke ext_image_dma_buf_import piglit tests with radeonsi< / li >
< li > aco: wrong geometry with Assassins Creed Origins on GFX6< / li >
< li > valgrind errors since commit a8ec4082a41< / li >
< li > OSMesa osmesa_choose_format returns a format not supported by st_new_renderbuffer_fb< / li >
< li > Build error with VS on WIN< / li >
< li > Using EGL_KHR_surfaceless_context causes spurious " libEGL warning: FIXME: egl/x11 doesn' t support front buffer rendering." < / li >
< li > !3460 broke texsubimage test with piglit on zink+anv< / li >
< li > The screen is black when using ACO< / li >
< li > [Regression] JavaFX unbounded VRAM+RAM usage< / li >
< li > radv: implement VK_AMD_shader_explicit_vertex_parameter< / li >
< li > Civilization VI crashes when loading game (AMD Vega Mobile)< / li >
< li > [radeonsi] X-Server crashes when trying to start Guild Wars 2 with the commits from !3421< / li >
< li > aco: implement GFX6 support< / li >
< li > Add support for VK_KHR_swapchain_mutable_format< / li >
< li > radv: The Surge 2 crashes in ac_get_elem_bits()< / li >
< li > [Regression] JavaFX unbounded VRAM+RAM usage< / li >
< li > Use the OpenCL dispatch defnitions from OpenCL_Headers< / li >
< li > [regression][ilk,g965,g45] various dEQP-GLES2.functional.shaders.* failures< / li >
< li > aco: Dead Rising 4 crashes in lower_to_hw_instr() on GFX6-GFX7< / li >
< li > libvulkan_radeon.so crash with `free(): double free detected in tcache 2`< / li >
< li > Commit be08e6a causes crash in com.android.launcher3 (Launcher)< / li >
< li > anv: Regression causing issues for radv when there are no Intel devices< / li >
< li > Mesa no longer compiles with GCC 10< / li >
< li > [Navi/aco] Guild Wars 2 - ring gfx timeout with commit 3bca0af2< / li >
< li > [radv/aco] Regression is causing a soft crash in The Witcher 3< / li >
< li > [bisected] [radeonsi] GPU hangs/resets while playing interlaced content on Kodi with VAAPI< / li >
< li > [radeonsi] MSAA image not copied properly after image store through texture view< / li >
< li > T-Rex and Manhattan onscreen performance issue on Android< / li >
< li > VkSamplerCreateInfo compareEnable not respected< / li >
< li > VkSamplerCreateInfo compareEnable not respected< / li >
< li > Freedreno drm softpin driver implementation leaks memory< / li >
< li > [POLARIS10] VRAM leak involving glTexImage2D with non-NULL data argument< / li >
< li > [regression][bisected][ivb/byt] crucible test func.push-constants.basic.q0 causes gpu hang< / li >
< li > MR 3096 broke lots of piglit ext_framebuffer_object tests on Raven< / li >
< li > Rise of the Tomb Raider benchmark crash on Dell XPS 7390 2-in-1 w/ Iris Plus Graphics (Ice Lake 8x8 GT2)< / li >
< li > Raven Ridge (2400G): Resident Evil 2 crashes my machine< / li >
< li > Common practice of glGetActiveUniform leads to O(N²) behavior in Mesa< / li >
< li > Rocket League ingame artifacts< / li >
< li > [radv] SteamVR direct mode no longer works< / li >
< li > [ANV] unused create parameters not properly ignored< / li >
< li > [Bisected] Mesa fails to start alacritty with the wayland backend (AMD Vega).< / li >
< li > [iris] piglit test clip-distance-vs-gs-out fails due to VUE map mismatch between VS < -> GS stages< / li >
< li > [radv] SteamVR direct mode no longer works< / li >
< li > Blocky corruption in The Surge 2< / li >
< li > radeonsi: Floating point exception on R9 270 gpu for a set of traces< / li >
< li > [RADV] [Navi] LOD artifacting in Halo - The Master Chief Collection (Halo Reach)< / li >
< li > [CTS] dEQP-VK.api.image_clearing.core.clear_color_image.2d.linear.single_layer.r32g32b32_* fail on GFX6-GFX8< / li >
< li > Vulkan: Please consider adding another sample count to sampledImageIntegerSampleCounts< / li >
< li > Navi10: Bitrate based encoding with VAAPI/RadeonSI unusable< / li >
< li > [RADV] create parameters not properly ignored< / li >
< li > [regression][bdw,gen9,hsw,icl][iris] gltcs failures on mesa=8172b1fa03f< / li >
< li > Bugs in RadeonSI VAAPI implementation< / li >
< li > [GFX10] Glitch rendering Custom Avatars in Beat Saber< / li >
< li > intel/fs: Check for 16-bit immediates in fs_visitor::lower_mul_dword_inst is too strict< / li >
< li > i965/iris: assert when destroy GL context with active query< / li >
< li > Visuals without alpha bits are not sRGB-capable< / li >
< li > swapchain throttling: wait for fence has 1ns timeout< / li >
< li > radeonsi: OpenGL app always produces page fault in gfxhub on Navi 10< / li >
< li > [regression] KHR-GLES31.core.geometry_shader.api.program_pipeline_vs_gs_capture fails for various drivers< / li >
< li > [CTS] dEQP-VK.spirv_assembly.instruction.spirv1p4.entrypoint.tess_con_pc_entry_point hangs on GFX10< / li >
< li > [RADV] SPIR-V warning when compiling shader using storage multisampled image array< / li >
< li > [RADV] The Dead Rising 4 is causing a GPU hang with LLVM backend< / li >
< li > macOS u_thread.h:156:4: error: implicit declaration of function ' pthread_getcpuclockid' < / li >
< li > [Wine / Vulkan] Doom 2016 Hangs on Main Menu< / li >
< li > NULL resource when playing VP9 video through VDPAU on RX 570< / li >
< li > radeonsi: mpv --vo=vaapi incorrect rendering on gfx9+< / li >
< li > [BSW/BDW] skia lcdblendmode & lcdoverlap test failure< / li >
< li > Create a way to prefer iris vs i965 via driconf< / li >
< li > [Bisected] i965: CS:GO crashes in emit_deref_copy_load_store with debug Mesa< / li >
< li > radv/aco Jedi Fallen Order hair rendering buggy< / li >
< li > Inaccurate information on https://www.mesa3d.org/repository.html about how to get git write access.< / li >
< li > [RADV] VK_KHR_timeline_semaphore balloons in runtime< / li >
< li > Shadow of Mordor has randomly dancing black shadows on Talion' s face< / li >
< li > gen7 crucible failures func.push-constants.basic.q0 and func.shader-subgroup-vote.basic.q0< / li >
< li > GL_EXT_disjoint_timer_query failing with GL_INVALID_ENUM< / li >
< li > Unreal 4 Elemental and MatineeFightScene demos misrender< / li >
< li > gputest gimark has unwanted black liquorice flakes< / li >
< li > triangle strip clipping with GL_FIRST_VERTEX_CONVENTION causes wrong vertex' s attribute to be broadcasted for flat interpolation< / li >
< li > [bisected][regression][g45,g965,ilk] piglit arb_fragment_program kil failures< / li >
< li > glcts crashes since the enablement of ARB_shading_language_include< / li >
< li > Android build broken< / li >
< li > ld.lld: error: duplicate symbol (mesa-19.3.0-rc1)< / li >
< li > Divinity: Original Sin Enhanced Edition(Native) crash on start< / li >
< li > HSW. Tropico 6 and SuperTuxKart have shadows flickering< / li >
< li > GL_EXT_disjoint_timer_query failing with GL_INVALID_ENUM< / li >
< li > glxgears segfaults on POWER / Xvnc< / li >
< li > [regression][bdw,gen9,icl][iris] piglit failures on mesa f9fd04aca15fd00889caa666ba38007268e67f5c< / li >
< li > Redundant builds of libmesa_classic and libmesa_gallium< / li >
< li > [IVB,BYT] [Regression] [Bisected] Core dump at launching arb_compute_shader/linker/bug-93840.shader_test< / li >
< li > Vulkan drivers need access to format utils of gallium< / li >
< li > Disabling lower_fragdata_array causes shader-db to crash for some drivers< / li >
< li > GL_EXT_disjoint_timer_query failing with GL_INVALID_ENUM< / li >
< li > Android build broken by commit 9020f51 " util/u_endian: Add error checks" < / li >
< li > radv secure compile feature breaks compilation of RADV on armhf EABI (19.3-rc1)< / li >
< li > radv_debug.c warnings when compiling on 32 bits : cast to pointer from integer of different size< / li >
< li > Meson: Mesa3D build failure with standalone Mingw-w64 multilib< / li >
< li > [regression][bisected] KHR46 VertexArrayAttribFormat has unexpectedly generated GL_INVALID_OPERATION< / li >
< li > textureSize(samplerExternalOES, int) missing in desktop mesa 19.1.7 implementation< / li >
< li > zink: implicly casting integers to pointers, warnings on 32-bit compile< / li >
< li > Objects leaving trails in Firefox with antialias and preserveDrawingBuffer in three.js WebGLRednerer with mesa 19.2< / li >
< / ul >
< h2 > Changes< / h2 >
< ul >
< p > Aaron Watry (1):< / p >
< li > clover/llvm: fix build after llvm 10 commit 1dfede3122ee< / li >
< p > < / p >
< p > Adam Jackson (1):< / p >
< li > drisw: Cache the depth of the X drawable< / li >
< p > < / p >
< p > Afonso Bordado (4):< / p >
< li > pan/midgard: Optimize comparisions with similar operations< / li >
< li > pan/midgard: Move midgard_is_branch_unit to helpers< / li >
< li > pan/midgard: Optimize branches with inverted arguments< / li >
< li > pan/midgard: Fix midgard_compile.h includes< / li >
< p > < / p >
< p > Alan Coopersmith (1):< / p >
< li > intel/perf: adapt to platforms like Solaris without d_type in struct dirent< / li >
< p > < / p >
< p > Alejandro Piñeiro (4):< / p >
< li > v3d: adds an extra MOV for any sig.ld*< / li >
< li > mesa/main/util: moving gallium u_mm to util, remove main/mm< / li >
< li > nir/opt_peephole_select: remove unused variables< / li >
< li > turnip: remove unused descriptor state dirty< / li >
< p > < / p >
< p > Alexander van der Grinten (1):< / p >
< li > egl: Fix _eglPointerIsDereferencable w/o mincore()< / li >
< p > < / p >
< p > Alexander von Gluck IV (1):< / p >
< li > haiku/hgl: Fix build via header reordering< / li >
< p > < / p >
< p > Alyssa Rosenzweig (223):< / p >
< li > pipe-loader: Build kmsro loader for with all kmsro targets< / li >
< li > pan/midgard: Remove OP_IS_STORE_VARY< / li >
< li > pan/midgard: Add a dummy source for loads< / li >
< li > pan/midgard: Refactor swizzles< / li >
< li > pan/midgard: Eliminate blank_alu_src< / li >
< li > pan/midgard: Use fp32 blend shaders< / li >
< li > pan/midgard: Validate tags when branching< / li >
< li > pan/midgard: Fix quadword_count handling< / li >
< li > pan/midgard: Compute bundle interference< / li >
< li > pan/midgard: Add bizarre corner case< / li >
< li > pan/midgard: offset_swizzle doesn' t need dstsize< / li >
< li > pan/midgard: Extend offset_swizzle to non-32-bit< / li >
< li > pan/midgard: Extend swizzle packing for vec4/16-bit< / li >
< li > pan/midgard: Extend default_phys_reg to !32-bit< / li >
< li > panfrost/ci: Update T760 expectations< / li >
< li > pan/midgard: Fix printing of half-registers in texture ops< / li >
< li > pan/midgard: Disassemble half-steps correctly< / li >
< li > pan/midgard: Pass shader stage to disassembler< / li >
< li > pan/midgard: Switch base for vertex texturing on T720< / li >
< li > nir: Add load_output_u8_as_fp16_pan intrinsic< / li >
< li > pan/midgard: Identify ld_color_buffer_u8_as_fp16*< / li >
< li > pan/midgard: Implement nir_intrinsic_load_output_u8_as_fp16_pan< / li >
< li > pan/midgard: Pack load/store masks< / li >
< li > panfrost: Select format-specific blending intrinsics< / li >
< li > pan/midgard: Add blend shader selection bits for MRT< / li >
< li > pan/midgard: Implement linearly-constrained register allocation< / li >
< li > pan/midgard: Integrate LCRA< / li >
< li > pan/midgard: Remove util/ra support< / li >
< li > pan/midgard: Compute spill costs< / li >
< li > pan/lcra: Use Chaitin' s spilling heuristic< / li >
< li > pan/midgard: Copypropagate vector creation< / li >
< li > pan/midgard: Fix copypropagation for textures< / li >
< li > pan/midgard: Generalize texture registers across GPUs< / li >
< li > pan/midgard: Fix vertex texturing on early Midgard< / li >
< li > pan/midgard: Use texture, not textureLod, on early Midgard< / li >
< li > pan/midgard: Disassemble with old pipeline always on T720< / li >
< li > pan/midgard: Prioritize texture registers< / li >
< li > pan/midgard: Expand 64-bit writemasks< / li >
< li > pan/midgard: Implement i2i64 and u2u64< / li >
< li > pan/midgard: Fix mir_round_bytemask_down for !32b< / li >
< li > pan/midgard: Pack 64-bit swizzles< / li >
< li > pan/midgard: Use generic constant packing for 8/64-bit< / li >
< li > pan/midgard: Implement non-aligned UBOs< / li >
< li > pan/midgard: Expose more typesize helpers< / li >
< li > pan/midgard: Fix masks/alignment for 64-bit loads< / li >
< li > pan/midgard: Represent ld/st offset unpacked< / li >
< li > pan/midgard: Use shader stage in mir_op_computes_derivative< / li >
< li > panfrost: Stub out clover callbacks< / li >
< li > panfrost: Pass kernel inputs as uniforms< / li >
< li > panfrost: Disable tiling for GLOBAL resources< / li >
< li > panfrost: Set PIPE_COMPUTE_CAP_ADDRESS_BITS to 64< / li >
< li > pan/midgard: Introduce quirks checks< / li >
< li > panfrost: Add the lod_bias field< / li >
< li > nir: Add load_sampler_lod_paramaters_pan intrinsic< / li >
< li > pan/midgard: Implement load_sampler_lod_paramaters_pan< / li >
< li > pan/midgard: Add LOD bias/clamp lowering< / li >
< li > pan/midgard: Describe quirk MIDGARD_BROKEN_LOD< / li >
< li > pan/midgard: Enable LOD lowering only on buggy chips< / li >
< li > panfrost: Add lcra.c to Android.mk< / li >
< li > pan/midgard: Use lower_tex_without_implicit_lod< / li >
< li > panfrost: Add information about T720 tiling< / li >
< li > panfrost: Implement pan_tiler for non-hierarchy GPUs< / li >
< li > panfrost: Simplify draw_flags< / li >
< li > pan/midgard: Splatter on fragment out< / li >
< li > gitlab-ci: Remove non-default skips from Panfrost< / li >
< li > panfrost: Remove blend shader hack< / li >
< li > panfrost: Update SET_VALUE with information from igt< / li >
< li > panfrost: Rename SET_VALUE to WRITE_VALUE< / li >
< li > gallium/util: Support POLYGON in u_stream_outputs_for_vertices< / li >
< li > pan/midgard: Move spilling code out of scheduler< / li >
< li > pan/midgard: Split spill node selection/spilling< / li >
< li > pan/midgard: Simplify spillability test< / li >
< li > pan/midgard: Remove spill cost heuristic< / li >
< li > pan/midgard: Move bounds checking into LCRA< / li >
< li > pan/midgard: Remove consecutive_skip code< / li >
< li > pan/midgard: Remove code marked " TODO: remove me" < / li >
< li > pan/midgard: Dynamically allocate r26/27 for spills< / li >
< li > pan/midgard: Use no_spill bitmask< / li >
< li > pan/midgard: Don' t use no_spill for memory spill src< / li >
< li > pan/midgard: Force alignment for csel_v< / li >
< li > pan/midgard: Don' t try to free NULL in LCRA< / li >
< li > pan/midgard: Simplify and fix vector copyprop< / li >
< li > pan/midgard: Fix shift for TLS access< / li >
< li > panfrost: Describe thread local storage sizing rules< / li >
< li > panfrost: Rename unknown_address_0 -> scratchpad< / li >
< li > panfrost: Split stack_shift nibble from unk0< / li >
< li > panfrost: Add routines to calculate stack size/shift< / li >
< li > panfrost: Factor out panfrost_query_raw< / li >
< li > panfrost: Query core count and thread tls alloc< / li >
< li > panfrost: Route stack_size from compiler< / li >
< li > panfrost: Emit SFBD/MFBD after a batch, instead of before< / li >
< li > panfrost: Handle minor cppcheck issues< / li >
< li > pan/midgard: Remove unused ld/st packing hepers< / li >
< li > pan/midgard: Handle misc. cppcheck warnings< / li >
< li > panfrost: Calculate maximum stack_size per batch< / li >
< li > panfrost: Pass size to panfrost_batch_get_scratchpad< / li >
< li > pandecode: Add cast< / li >
< li > panfrost: Move nir_undef_to_zero to Midgard compiler< / li >
< li > panfrost: Move property queries to _encoder< / li >
< li > panfrost: Add panfrost_model_name helper< / li >
< li > panfrost: Report GPU name in es2_info< / li >
< li > ci: Remove T760/T860 from CI temporarily< / li >
< li > panfrost: Pass blend RT number through< / li >
< li > pan/midgard: Add schedule barrier after fragment writeout< / li >
< li > pan/midgard: Writeout per render target< / li >
< li > pan/midgard: Fix liveness analysis with multiple epilogues< / li >
< li > pan/midgard: Set r1.w magic< / li >
< li > panfrost: Fix FBD issue< / li >
< li > ci: Reinstate Panfrost CI< / li >
< li > panfrost: Remove fbd_type enum< / li >
< li > panfrost: Pack invocation_shifts manually instead of a bit field< / li >
< li > panfrost: Remove asserts in panfrost_pack_work_groups_compute< / li >
< li > panfrost: Simplify sampler upload condition< / li >
< li > panfrost: Don' t double-create scratchpad< / li >
< li > panfrost: Add PAN_MESA_DEBUG=precompile for shader-db< / li >
< li > panfrost: Let precompile imply shaderdb< / li >
< li > panfrost: Handle empty shaders< / li >
< li > pan/midgard: Use a reg temporary for mutiple writes< / li >
< li > pan/midgard: Hoist temporary coordinate for cubemaps< / li >
< li > pan/midgard: Set .shadow for shadow samplers< / li >
< li > pan/midgard: Set Z to shadow comparator for 2D< / li >
< li > pan/midgard: Add uniform/work heuristic< / li >
< li > pan/midgard: Implement textureOffset for 2D textures< / li >
< li > pan/midgard: Fix crash with txs< / li >
< li > pan/midgard: Lower txd with lower_tex< / li >
< li > panfrost: Decode shader types in pantrace shader-db< / li >
< li > pan/decode: Skip COMPUTE in blobber-db< / li >
< li > pan/decode: Prefix blobberdb with MESA_SHADER_*< / li >
< li > pan/decode: Append 0:0 spills:fills to blobber-db< / li >
< li > pan/midgard: Fix disassembler cycle/quadword counting< / li >
< li > pan/midgard: Bounds check lcra_restrict_range< / li >
< li > pan/midgard: Extend IS_VEC4_ONLY to arguments< / li >
< li > pan/midgard: Clamp LOD register swizzle< / li >
< li > pan/midgard: Expand swizzle for texelFetch< / li >
< li > pan/midgard: Fix fallthrough from offset to comparator< / li >
< li > pan/midgard: Do witchcraft on texture offsets< / li >
< li > pan/midgard: Generalize temp coordinate to non-2D< / li >
< li > pan/midgard: Implement shadow cubemaps< / li >
< li > pan/midgard: Enable lower_(un)pack_* lowering< / li >
< li > pan/midgard: Support loads from R11G11B10 in a blend shader< / li >
< li > pan/midgard: Add mir_upper_override helper< / li >
< li > pan/midgard: Compute destination override< / li >
< li > panfrost: Rename pan_instancing.c -> pan_attributes.c< / li >
< li > panfrost: Factor batch/resource out of instancing routines< / li >
< li > panfrost: Move instancing routines to encoder/< / li >
< li > panfrost: Factor out panfrost_compute_magic_divisor< / li >
< li > panfrost: Fix off-by-one in pan_invocation.c< / li >
< li > pan/decode: Fix reference computation for invocations< / li >
< li > panfrost: Slight cleanup of Gallium' s pan_attribute.c< / li >
< li > panfrost: Remove pan_shift_odd< / li >
< li > pan/decode: Handle gl_VertexID/gl_InstanceID< / li >
< li > panfrost: Unset vertex_id_zero_based< / li >
< li > pan/midgard: Factor out emit_attr_read< / li >
< li > pan/midgard: Lower gl_VertexID/gl_InstanceID to attributes< / li >
< li > panfrost: Extend attribute_count for vertex builtins< / li >
< li > panfrost: Route gl_VertexID through cmdstream< / li >
< li > pan/midgard: Fix minor typo< / li >
< li > panfrost: Remove MALI_SPECIAL_ATTRIBUTE_BASE defines< / li >
< li > panfrost: Update information on fixed attributes/varyings< / li >
< li > panfrost: Remove MALI_ATTR_INTERNAL< / li >
< li > panfrost: Inline away MALI_NEGATIVE< / li >
< li > panfrost: Implement remaining texture wrap modes< / li >
< li > panfrost: Add pan_attributes.c to Android.mk< / li >
< li > panfrost: Add missing #include in common header< / li >
< li > panfrost: Remove mali_alt_func< / li >
< li > panfrost; Update comment about work/uniform_count< / li >
< li > panfrost: Remove 32-bit next_job path< / li >
< li > glsl: Set .flat for gl_FrontFacing< / li >
< li > pan/midgard: Promote tilebuffer reads to 32-bit< / li >
< li > pan/midgard: Use type-appropriate st_vary< / li >
< li > pan/midgard: Implement flat shading< / li >
< li > panfrost: Identify glProvokingVertex flag< / li >
< li > panfrost: Disable some CAPs we want lowered< / li >
< li > panfrost: Implement integer varyings< / li >
< li > panfrost: Remove MRT indirection in blend shaders< / li >
< li > panfrost: Respect glPointSize()< / li >
< li > pan/midgard: Convert fragment writeout to proper branches< / li >
< li > pan/midgard: Remove prepacked_branch< / li >
< li > panfrost: Handle RGB16F colour clear< / li >
< li > panfrost: Pack MRT blend shaders into a single BO< / li >
< li > pan/midgard: Fix memory corruption in constant combining< / li >
< li > pan/midgard: Use better heuristic for shader termination< / li >
< li > pan/midgard: Generalize IS_ALU and quadword_size< / li >
< li > pan/midgard: Generate MRT writeout loops< / li >
< li > pan/midgard: Remove old comment< / li >
< li > pan/midgard: Identity ld_color_buffer as 32-bit< / li >
< li > pan/midgard: Use upper ALU tags for MFBD writeout< / li >
< li > panfrost: Texture from Z32F_S8 as R32F< / li >
< li > panfrost: Support rendering to non-zero Z/S layers< / li >
< li > panfrost: Implement sRGB blend shaders< / li >
< li > panfrost: Cleanup tiling selection logic< / li >
< li > panfrost: Report MSAA 4x supported for dEQP< / li >
< li > panfrost: Handle PIPE_FORMAT_R10G10B10A2_USCALED< / li >
< li > panfrost: Respect constant buffer_offset< / li >
< li > panfrost: Adjust for mismatch between hardware/Gallium in arrays/cube< / li >
< li > pan/midgard: Account for z/w flip in texelFetch< / li >
< li > panfrost: Don' t double-flip Z/W for 2D arrays< / li >
< li > pan/midgard: Support indirect UBO offsets< / li >
< li > panfrost: Fix linear depth textures< / li >
< li > pan/midgard: Bytemasks should round up, not round down< / li >
< li > panfrost: Identify un/pack colour opcodes< / li >
< li > pan/midgard: Fix recursive csel scheduling< / li >
< li > panfrost: Expose some functionality with dEQP flag< / li >
< li > panfrost: Compile tiling routines with -O3< / li >
< li > panfrost,lima: De-Galliumize tiling routines< / li >
< li > panfrost: Rework linear< ---> tiled conversions< / li >
< li > panfrost: Add pandecode entries for ASTC/ETC formats< / li >
< li > panfrost: Fix crash in compute variant allocation< / li >
< li > panfrost: Drop mysterious zero=0xFFFF field< / li >
< li > panfrost: Don' t use implicit mali_exception_status enum< / li >
< li > pan/decode: Remove last_size< / li >
< li > pan/midgard: Remove pack_color define< / li >
< li > pan/decode: Remove SHORT_SLIDE indirection< / li >
< li > panfrost: Fix 32-bit warning for `indices`< / li >
< li > pan/decode: Drop MFBD compute shader stuff< / li >
< li > pan/midgard: Record TEXTURE_OP_BARRIER< / li >
< li > pan/midgard: Disassemble barrier instructions< / li >
< li > pan/midgard: Validate barriers use a barrier tag< / li >
< li > pan/midgard: Handle tag 0x4 as texture< / li >
< li > pan/midgard: Remove float_bitcast< / li >
< li > pan/midgard: Fix missing prefixes< / li >
< li > pan/midgard: Don' t crash with constants on unknown ops< / li >
< li > pan/midgard: Use fprintf instead of printf for constants< / li >
< p > < / p >
< p > Andreas Baierl (14):< / p >
< li > lima: Beautify stream dumps< / li >
< li > lima: Parse VS and PLBU command stream while making a dump< / li >
< li > lima/streamparser: Fix typo in vs semaphore parser< / li >
< li > lima/streamparser: Add findings introduced with gl_PointSize< / li >
< li > lima/parser: Some fixes and cleanups< / li >
< li > lima/parser: Add RSW parsing< / li >
< li > lima/parser: Add texture descriptor parser< / li >
< li > lima: Rotate dump files after each finished pp frame< / li >
< li > lima: Fix dump file creation< / li >
< li > lima/parser: Fix rsw parser< / li >
< li > lima/parser: Fix VS cmd stream parser< / li >
< li > lima/parser: Make rsw alpha blend parsing more readable< / li >
< li > lima: Add stencil support< / li >
< li > lima: Fix alpha blending< / li >
< p > < / p >
< p > Andres Rodriguez (1):< / p >
< li > vulkan/wsi: disable the hardware cursor< / li >
< p > < / p >
< p > Andrii Simiklit (5):< / p >
< li > main: fix several ' may be used uninitialized' warnings< / li >
< li > glsl: fix an incorrect max_array_access after optimization of ssbo/ubo< / li >
< li > glsl: fix a binding points assignment for ssbo/ubo arrays< / li >
< li > glsl/nir: do not change an element index to have correct block name< / li >
< li > mesa/st: fix a memory leak in get_version< / li >
< p > < / p >
< p > Anthony Pesch (5):< / p >
< li > util: import xxhash< / li >
< li > util: move fnv1a hash implementation into its own header< / li >
< li > util/hash_table: replace _mesa_hash_data' s fnv1a hash function with xxhash< / li >
< li > util/hash_table: added hash functions for integer types< / li >
< li > util/hash_table: update users to use new optimal integer hash functions< / li >
< p > < / p >
< p > Anuj Phogat (2):< / p >
< li > intel: Add device info for 1x4x6 Jasper Lake< / li >
< li > intel: Add pci-ids for Jasper Lake< / li >
< p > < / p >
< p > Arno Messiaen (5):< / p >
< li > lima: fix stride in texture descriptor< / li >
< li > lima: add layer_stride field to lima_resource struct< / li >
< li > lima: introduce ppir_op_load_coords_reg to differentiate between loading texture coordinates straight from a varying vs loading them from a register< / li >
< li > lima: add cubemap support< / li >
< li > lima/ppir: add lod-bias support< / li >
< p > < / p >
< p > Bas Nieuwenhuizen (33):< / p >
< li > radv: Fix timeout handling in syncobj wait.< / li >
< li > radv: Remove _mesa_locale_init/fini calls.< / li >
< li > turnip: Remove _mesa_locale_init/fini calls.< / li >
< li > anv: Remove _mesa_locale_init/fini calls.< / li >
< li > radv: Fix disk_cache_get size argument.< / li >
< li > radv: Close all unnecessary fds in secure compile.< / li >
< li > radv: Do not change scratch settings while shaders are active.< / li >
< li > radv: Allocate cmdbuffer space for buffer marker write.< / li >
< li > radv: Enable VK_KHR_buffer_device_address.< / li >
< li > amd/llvm: Refactor ac_build_scan.< / li >
< li > radv: Unify max_descriptor_set_size.< / li >
< li > radv: Fix timeline semaphore refcounting.< / li >
< li > radv: Fix RGBX Android< -> Vulkan format correspondence.< / li >
< li > amd/common: Fix tcCompatible degradation on Stoney.< / li >
< li > amd/common: Always use addrlib for HTILE tc-compat.< / li >
< li > radv: Limit workgroup size to 1024.< / li >
< li > radv: Expose all sample counts for integer formats as well.< / li >
< li > amd/common: Handle alignment of 96-bit formats.< / li >
< li > nir: Add clone/hash/serialize support for non-uniform tex instructions.< / li >
< li > nir: print non-uniform tex fields.< / li >
< li > amd/common: Always initialize gfx9 mipmap offset/pitch.< / li >
< li > turnip: Use VK_NULL_HANDLE instead of NULL.< / li >
< li > meson: Enable -Werror=int-conversion.< / li >
< li > Revert " amd/common: Always initialize gfx9 mipmap offset/pitch." < / li >
< li > radv: Only use the gfx mipmap level offset/pitch for linear textures.< / li >
< li > spirv: Fix glsl type assert in spir2nir.< / li >
< li > radv: Emit a BATCH_BREAK when changing pixel shaders or CB_TARGET_MASK.< / li >
< li > radv: Use new scanout gfx9 metadata flag.< / li >
< li > radv: Disable VK_EXT_sample_locations on GFX10.< / li >
< li > radv: Remove syncobj_handle variable in header.< / li >
< li > radv: Expose VK_KHR_swapchain_mutable_format.< / li >
< li > radv: Allow DCC & TC-compat HTILE with VK_IMAGE_CREATE_EXTENDED_USAGE_BIT.< / li >
< li > radv: Do not set SX DISABLE bits for RB+ with unused surfaces.< / li >
< p > < / p >
< p > Ben Crocker (1):< / p >
< li > llvmpipe: use ppc64le/ppc64 Large code model for JIT-compiled shaders< / li >
< p > < / p >
< p > Bernd Kuhls (1):< / p >
< li > util/os_socket: Include unistd.h to fix build error< / li >
< p > < / p >
< p > Boris Brezillon (21):< / p >
< li > panfrost: MALI_DEPTH_TEST is actually MALI_DEPTH_WRITEMASK< / li >
< li > panfrost: Destroy the upload manager allocated in panfrost_create_context()< / li >
< li > panfrost: Release the ctx-> pipe_framebuffer ref< / li >
< li > panfrost: Move BO cache related fields to a sub-struct< / li >
< li > panfrost: Try to evict unused BOs from the cache< / li >
< li > gallium: Fix the -> set_damage_region() implementation< / li >
< li > panfrost: Make sure we reset the damage region of RTs at flush time< / li >
< li > panfrost: Remove unneeded phi nodes< / li >
< li > panfrost/midgard: Fix swizzle for store instructions< / li >
< li > panfrost/midgard: Print the actual source register for store operations< / li >
< li > panfrost/midgard: Use a union to manipulate embedded constants< / li >
< li > panfrost/midgard: Rework mir_adjust_constants() to make it type/size agnostic< / li >
< li > panfrost/midgard: Make sure promote_fmov() only promotes 32-bit imovs< / li >
< li > panfrost/midgard: Factorize f2f and u2u handling< / li >
< li > panfrost/midgard: Add f2f64 support< / li >
< li > panfrost/midgard: Fix mir_print_instruction() for branch instructions< / li >
< li > panfrost/midgard: Add 64 bits float < -> int converters< / li >
< li > panfrost/midgard: Add missing lowering passes for type/size conversion ops< / li >
< li > panfrost/midgard: Add a condense_writemask() helper< / li >
< li > panfrost/midgard: Prettify embedded constant prints< / li >
< li > panfrost: Fix the damage box clamping logic< / li >
< p > < / p >
< p > Brian Ho (14):< / p >
< li > turnip: Update tu_query_pool with turnip-specific fields< / li >
< li > turnip: Implement vkCreateQueryPool for occlusion queries< / li >
< li > turnip: Implement vkCmdBeginQuery for occlusion queries< / li >
< li > turnip: Implement vkCmdEndQuery for occlusion queries< / li >
< li > turnip: Update query availability on render pass end< / li >
< li > turnip: Implement vkGetQueryPoolResults for occlusion queries< / li >
< li > turnip: Implement vkCmdResetQueryPool< / li >
< li > turnip: Implement vkCmdCopyQueryPoolResults for occlusion queries< / li >
< li > anv: Properly fetch partial results in vkGetQueryPoolResults< / li >
< li > anv: Handle unavailable queries in vkCmdCopyQueryPoolResults< / li >
< li > turnip: Enable occlusionQueryPrecise< / li >
< li > turnip: Free event-> bo on vkDestroyEvent< / li >
< li > turnip: Fix vkGetQueryPoolResults with available flag< / li >
< li > turnip: Fix vkCmdCopyQueryPoolResults with available flag< / li >
< p > < / p >
< p > Brian Paul (4):< / p >
< li > s/APIENTRY/GLAPIENTRY/ in teximage.c< / li >
< li > nir: fix a couple signed/unsigned comparison warnings in nir_builder.h< / li >
< li > Call shmget() with permission 0600 instead of 0777< / li >
< li > nir: no-op C99 _Pragma() with MSVC< / li >
< p > < / p >
< p > C Stout (1):< / p >
< li > util/vector: Fix u_vector_foreach when head rolls over< / li >
< p > < / p >
< p > Caio Marcelo de Oliveira Filho (24):< / p >
< li > spirv: Don' t leak GS initialization to other stages< / li >
< li > glsl: Check earlier for MaxShaderStorageBlocks and MaxUniformBlocks< / li >
< li > glsl: Check earlier for MaxTextureImageUnits and MaxImageUniforms< / li >
< li > anv: Initialize depth_bounds_test_enable when not explicitly set< / li >
< li > spirv: Consider the sampled_image case in wa_glslang_179 workaround< / li >
< li > intel/fs: Lower 64-bit MOVs after lower_load_payload()< / li >
< li > intel/fs: Fix lowering of dword multiplication by 16-bit constant< / li >
< li > intel/vec4: Fix lowering of multiplication by 16-bit constant< / li >
< li > anv/gen12: Temporarily disable VK_KHR_buffer_device_address (and EXT)< / li >
< li > spirv: Implement SPV_KHR_non_semantic_info< / li >
< li > panfrost: Fix Makefile.sources< / li >
< li > anv: Drop unused function parameter< / li >
< li > anv: Ignore some CreateInfo structs when rasterization is disabled< / li >
< li > intel/fs: Only use SLM fence in compute shaders< / li >
< li > spirv: Drop EXT for PhysicalStorageBuffer symbols< / li >
< li > spirv: Handle PhysicalStorageBuffer in memory barriers< / li >
< li > nir: Add missing nir_var_mem_global to various passes< / li >
< li > intel/fs: Add FS_OPCODE_SCHEDULING_FENCE< / li >
< li > intel/fs: Add workgroup_size() helper< / li >
< li > intel/fs: Don' t emit fence for shared memory if only one thread is used< / li >
< li > intel/fs: Don' t emit control barrier if only one thread is used< / li >
< li > anv: Always initialize target_stencil_layout< / li >
< li > intel/compiler: Add names for SHADER_OPCODE_[IU]SUB_SAT< / li >
< li > nir: Make nir_deref_path_init skip trivial casts< / li >
< p > < / p >
< p > Chris Wilson (1):< / p >
< li > egl: Mention if swrast is being forced< / li >
< p > < / p >
< p > Christian Gmeiner (24):< / p >
< li > drm-shim: fix EOF case< / li >
< li > etnaviv: rs: upsampling is not supported< / li >
< li > etnaviv: add drm-shim< / li >
< li > etnaviv: drop not used config_out function param< / li >
< li > etnaviv: use a more self-explanatory param name< / li >
< li > etnaviv: handle 8 byte block in tiling< / li >
< li > etnaviv: add support for extended pe formats< / li >
< li > etnaviv: fix integer vertex formats< / li >
< li > etnaviv: use NORMALIZE_SIGN_EXTEND< / li >
< li > etnaviv: fix R10G10B10A2 vertex format entries< / li >
< li > etnaviv: handle integer case for GENERIC_ATTRIB_SCALE< / li >
< li > etnaviv: remove dead code< / li >
< li > etnaviv: remove not used etna_bits_ones(..)< / li >
< li > etnaviv: drop compiled_rs_state forward declaration< / li >
< li > etnaviv: update resource status after flushing< / li >
< li > gallium: add PIPE_CAP_MAX_VERTEX_BUFFERS< / li >
< li > etnaviv: check if MSAA is supported< / li >
< li > etnaviv: gc400 does not support any vertex sampler< / li >
< li > etnaviv: use a better name for FE_VERTEX_STREAM_UNK14680< / li >
< li > etnaviv: move state based texture structs< / li >
< li > etnaviv: move descriptor based texture structs< / li >
< li > etnaviv: add deqp debug option< / li >
< li > etnaviv: drop default state for PE_STENCIL_CONFIG_EXT2< / li >
< li > etnaviv: drm-shim: add GC400< / li >
< p > < / p >
< p > Connor Abbott (19):< / p >
< li > nir: Fix non-determinism in lower_global_vars_to_local< / li >
< li > radv: Rename ac_arg_regfile< / li >
< li > ac: Add a shared interface between radv, radeonsi, LLVM and ACO< / li >
< li > ac/nir, radv, radeonsi: Switch to using ac_shader_args< / li >
< li > radv: Move argument declaration out of nir_to_llvm< / li >
< li > aco: Constify radv_nir_compiler_options in isel< / li >
< li > aco: Use radv_shader_args in aco_compile_shader()< / li >
< li > aco: Split vector arguments at the beginning< / li >
< li > aco: Make num_workgroups and local_invocation_ids one argument each< / li >
< li > radv: Replace supports_spill with explict_scratch_args< / li >
< li > aco: Use common argument handling< / li >
< li > aco: Make unused workgroup id' s 0< / li >
< li > nir: Maintain the algebraic automaton' s state as we work.< / li >
< li > a6xx: Add more CP packets< / li >
< li > freedreno: Use new macros for CP_WAIT_REG_MEM and CP_WAIT_MEM_GTE< / li >
< li > freedreno: Fix CP_MEM_TO_REG flag definitions< / li >
< li > freedreno: Document CP_COND_REG_EXEC more< / li >
< li > freedreno: Document CP_UNK_A6XX_55< / li >
< li > freedreno: Document CP_INDIRECT_BUFFER_CHAIN< / li >
< p > < / p >
< p > Daniel Ogorchock (2):< / p >
< li > panfrost: Fix panfrost_bo_access memory leak< / li >
< li > panfrost: Fix headers and gpu_headers memory leak< / li >
< p > < / p >
< p > Daniel Schürmann (58):< / p >
< li > aco: fix immediate offset for spills if scratch is used< / li >
< li > aco: only use single-dword loads/stores for spilling< / li >
< li > aco: fix accidential reordering of instructions when scheduling< / li >
< li > aco: workaround Tonga/Iceland hardware bug< / li >
< li > aco: fix invalid access on Pseudo_instructions< / li >
< li > aco: preserve kill flag on moved operands during RA< / li >
< li > aco: rematerialize s_movk instructions< / li >
< li > aco: check if SALU instructions are predeceeded by exec when calculating WQM needs< / li >
< li > aco: value number instructions using the execution mask< / li >
< li > aco: use s_and_b64 exec to reduce uniform booleans to one bit< / li >
< li > amd/llvm: Add Subgroup Scan functions for SI< / li >
< li > radv: Enable Subgroup Arithmetic and Clustered for SI< / li >
< li > aco: don' t value-number instructions from within a loop with ones after the loop.< / li >
< li > aco: don' t split live-ranges of linear VGPRs< / li >
< li > aco: fix a couple of value numbering issues< / li >
< li > aco: refactor visit_store_fs_output() to use the Builder< / li >
< li > aco: Initial GFX7 Support< / li >
< li > aco: SI/CI - fix sampler aniso< / li >
< li > aco: fix SMEM offsets for SI/CI< / li >
< li > aco: implement nir_op_fquantize2f16 for SI/CI< / li >
< li > aco: only use scalar loads for readonly buffers on SI/CI< / li >
< li > aco: implement nir_op_isign on SI/CI< / li >
< li > aco: move buffer_store data to VGPR if needed< / li >
< li > aco: implement quad swizzles for SI/CI< / li >
< li > aco: recognize SI/CI SMRD hazards< / li >
< li > aco: fix disassembly of writelane instructions.< / li >
< li > aco: split read/writelane opcode into VOP2/VOP3 version for SI/CI< / li >
< li > aco: implement 64bit VGPR shifts for SI/CI< / li >
< li > aco: make 1/2*PI a literal constant on SI/CI< / li >
< li > aco: implement 64bit i2b for SI /CI< / li >
< li > aco: implement 64bit ine/ieq for SI/CI< / li >
< li > aco: disable disassembly for SI/CI due to lack of support by LLVM< / li >
< li > radv: only flush scalar cache for SSBO writes with ACO on GFX8+< / li >
< li > aco: flush denorms after fmin/fmax on pre-GFX9< / li >
< li > aco: don' t use a scalar temporary for reductions on GFX10< / li >
< li > aco: implement (clustered) reductions for SI/CI< / li >
< li > aco: implement inclusive_scan for SI/CI< / li >
< li > aco: implement exclusive scan for SI/CI< / li >
< li > radv: disable Youngblood app profile if ACO is used< / li >
< li > aco: return to loop_active mask at continue_or_break blocks< / li >
< li > radv: Enable ACO on GFX7 (Sea Islands)< / li >
< li > aco: use soffset for MUBUF instructions on SI/CI< / li >
< li > aco: improve readfirstlane after uniform ssbo loads on GFX7< / li >
< li > aco: propagate temporaries into expanded vectors< / li >
< li > nir: fix printing of var_decl with more than 4 components.< / li >
< li > aco: compact various Instruction classes< / li >
< li > aco: compact aco::span< T> to use uint16_t offset and size instead of pointer and size_t.< / li >
< li > aco: fix unconditional demote_to_helper< / li >
< li > aco: rework lower_to_cssa()< / li >
< li > aco: handle phi affinities transitively through parallelcopies< / li >
< li > aco: ignore parallelcopies to the same register on jump threading< / li >
< li > aco: fix combine_salu_not_bitwise() when SCC is used< / li >
< li > aco: reorder VMEM operands in ACO IR< / li >
< li > aco: fix register allocation with multiple live-range splits< / li >
< li > aco: simplify adjust_sample_index_using_fmask() & get_image_coords()< / li >
< li > aco: simplify gathering of MIMG address components< / li >
< li > docs: add new features for RADV/ACO.< / li >
< li > aco: fix image_atomic_cmp_swap< / li >
< p > < / p >
< p > Daniel Stone (2):< / p >
< li > Revert " st/dri: do FLUSH_VERTICES before calling flush_resource" < / li >
< li > Revert " gallium: add st_context_iface::flush_resource to call FLUSH_VERTICES" < / li >
< p > < / p >
< p > Danylo Piliaiev (12):< / p >
< li > intel/blorp: Fix usage of uninitialized memory in key hashing< / li >
< li > i965/program_cache: Lift restriction on shader key size< / li >
< li > intel/blorp: Fix usage of uninitialized memory in key hashing< / li >
< li > intel/fs: Do not lower large local arrays to scratch on gen7< / li >
< li > i965: Unify CC_STATE and BLEND_STATE atoms on Haswell as a workaround< / li >
< li > glsl: Add varyings to " zero-init of uninitialized vars" workaround< / li >
< li > drirc: Add glsl_zero_init workaround for GpuTest< / li >
< li > iris/query: Implement PIPE_QUERY_GPU_FINISHED< / li >
< li > iris: Fix value of out-of-bounds accesses for vertex attributes< / li >
< li > i965: Do not set front_buffer_dirty if there is no front buffer< / li >
< li > st/mesa: Handle the rest renderbuffer formats from OSMesa< / li >
< li > st/nir: Unify inputs_read/outputs_written before serializing NIR< / li >
< p > < / p >
< p > Dave Airlie (74):< / p >
< li > nir/serialize: pack function has name and entry point into flags.< / li >
< li > nir/serialize: fix serializing functions with no implementations.< / li >
< li > spirv: don' t store 0 to cs.ptr_size for non kernel stages.< / li >
< li > spirv: get the correct type for function returns.< / li >
< li > spirv/nir/opencl: handle some multiply instructions.< / li >
< li > nir: add 64-bit ufind_msb lowering support. (v2)< / li >
< li > nouveau: request ufind_msb64 lowering in the frontend.< / li >
< li > vtn/opencl: add clz support< / li >
< li > nir: fix deref offset builder< / li >
< li > llvmpipe: initial query buffer object support. (v2)< / li >
< li > docs: add llvmpipe to ARB_query_buffer_object.< / li >
< li > gallivm: split out the flow control ir to a common file.< / li >
< li > gallivm: nir-> tgsi info convertor (v2)< / li >
< li > gallivm: add popcount intrinsic wrapper< / li >
< li > gallivm: add cttz wrapper< / li >
< li > gallivm: add selection for non-32 bit types< / li >
< li > gallivm: add nir-> llvm translation (v2)< / li >
< li > draw: add nir info gathering and building support< / li >
< li > gallium: add nir lowering passes for the draw pipe stages. (v2)< / li >
< li > gallivm: add swizzle support where one channel isn' t defined.< / li >
< li > llvmpipe: add initial nir support< / li >
< li > nir/samplers: don' t zero samplers_used/txf.< / li >
< li > llvmpipe/images: handle undefined atomic without crashing< / li >
< li > gallivm/llvmpipe: add support for front facing in sysval.< / li >
< li > llvmpipe: enable texcoord semantics< / li >
< li > gallium/scons: fix graw-xlib build on OSX.< / li >
< li > llvmpipe: add queries disabled flag< / li >
< li > llvmpipe: disable occlusion queries when requested by state tracker< / li >
< li > draw: add support for collecting primitives generated outside streamout< / li >
< li > llvmpipe: enable support for primitives generated outside streamout< / li >
< li > aco: handle gfx7 int8/10 clamping on exports< / li >
< li > gallivm: add bitfield reverse and ufind_msb< / li >
< li > llvmpipe/nir: handle texcoord requirements< / li >
< li > gallivm: fix transpose for when first channel isn' t created< / li >
< li > gallivm: fix perspective enable if usage_mask doesn' t have 0 bit set< / li >
< li > gallivm/nir: cleanup code and call cmp wrapper< / li >
< li > gallivm/nir: copy compare ordering code from tgsi< / li >
< li > gallivm: add base instance sysval support< / li >
< li > gallivm/draw: add support for draw_id system value.< / li >
< li > gallivm: fixup base_vertex support< / li >
< li > llvmpipe: enable ARB_shader_draw_parameters.< / li >
< li > vtn: convert vload/store to single value loops< / li >
< li > vtn/opencl: add shuffle/shuffle support< / li >
< li > gallivm/nir: wrap idiv to avoid divide by 0 (v2)< / li >
< li > llvmpipe: switch to NIR by default< / li >
< li > nir: sanitize work group intrinsics to always be 32-bit.< / li >
< li > gallivm: add 64-bit const int creator.< / li >
< li > llvmpipe/gallivm: add kernel inputs< / li >
< li > gallivm: add support for 8-bit/16-bit integer builders< / li >
< li > gallivm: pick integer builders for alu instructions.< / li >
< li > gallivm/nir: allow 8/16-bit conversion and comparison.< / li >
< li > tgsi/mesa: handle KERNEL case< / li >
< li > gallivm/llvmpipe: add support for work dimension intrinsic.< / li >
< li > gallivm/llvmpipe: add support for block size intrinsic< / li >
< li > gallivm/llvmpipe: add support for global operations.< / li >
< li > llvmpipe: handle serialized nir as a shader type.< / li >
< li > llvmpipe: add support for compute shader params< / li >
< li > llvmpipe/nir: use nir_max_vec_components in more places< / li >
< li > gallivm: handle non-32 bit undefined< / li >
< li > llvmpipe: lower hadd/add_sat< / li >
< li > gallivm/nir: lower packing< / li >
< li > gallivm/nir: add vec8/16 support< / li >
< li > llvmpipe: add debug option to enable OpenCL support.< / li >
< li > gallivm: fixup const int64 builder.< / li >
< li > llvmpipe: enable ARB_shader_group_vote.< / li >
< li > gallium/util: add multi_draw_indirect to util_draw_indirect.< / li >
< li > llvmpipe: enable driver side multi draw indirect< / li >
< li > llvmpipe: add support for ARB_indirect_parameters.< / li >
< li > llvmpipe: add ARB_derivative_control support< / li >
< li > gallivm: fix gather component handling.< / li >
< li > llvmpipe: fix some integer instruction lowering.< / li >
< li > galllivm: fix gather offset casting< / li >
< li > gallivm: fix find lsb< / li >
< li > gallivm/nir: add missing break for isub.< / li >
< p > < / p >
< p > David Heidelberg (1):< / p >
< li > .mailmap: use correct email address< / li >
< p > < / p >
< p > David Stevens (1):< / p >
< li > virgl: support emulating planar image sampling< / li >
< p > < / p >
< p > Denis Pauk (2):< / p >
< li > gallium/swr: Enable support bptc format.< / li >
< li > docs/features: mark GL_ARB_texture_compression_bptc as done for llvmpipe, softpipe, swr< / li >
< p > < / p >
< p > Dongwon Kim (3):< / p >
< li > gallium: enable INTEL_PERFORMANCE_QUERY< / li >
< li > iris: INTEL performance query implementation< / li >
< li > gallium: check all planes' pipe formats in case of multi-samplers< / li >
< p > < / p >
< p > Drew Davenport (1):< / p >
< li > radeonsi: Clear uninitialized variable< / li >
< p > < / p >
< p > Drew DeVault (1):< / p >
< li > st_get_external_sampler_key: improve error message< / li >
< p > < / p >
< p > Duncan Hopkins (1):< / p >
< li > zink: make sure src image is transfer-src-optimal< / li >
< p > < / p >
< p > Dylan Baker (69):< / p >
< li > Bump VERSION to 20.0.0-devel< / li >
< li > docs/new_features: Empty the feature list for the 20.0 cycle< / li >
< li > nir: correct use of identity check in python< / li >
< li > r200: use preprocessor for big vs little endian checks< / li >
< li > r100: Use preprocessor to select big vs little endian paths< / li >
< li > dri/osmesa: use preprocessor for selecting endian code paths< / li >
< li > util/u_endian: Use _WIN32 instead of _MSC_VER< / li >
< li > util/u_endian: set PIPE_ARCH_*_ENDIAN to 1< / li >
< li > mesa/main: replace uses of _mesa_little_endian with preprocessor< / li >
< li > mesa/swrast: replace instances of _mesa_little_endian with preprocessor< / li >
< li > mesa/main: delete now unused _mesa_little_endian< / li >
< li > gallium/osmesa: Use PIPE_ARCH_*_ENDIAN instead of little_endian function< / li >
< li > util: rename PIPE_ARCH_*_ENDIAN to UTIL_ARCH_*_ENDIAN< / li >
< li > util/u_endian: Add error checks< / li >
< li > meson: Add dep_glvnd to egl deps when building with glvnd< / li >
< li > docs: add release notes for 19.2.3< / li >
< li > docs: add sha256 sum to 19.2.3 release notes< / li >
< li > docs: update calendar, add news item and link release notes for 19.2.2< / li >
< li > meson: gtest needs pthreads< / li >
< li > gallium/osmesa: Convert osmesa test to gtest< / li >
< li > osmesa/tests: Extend render test to cover other working cases< / li >
< li > util: Use ZSTD for shader cache if possible< / li >
< li > docs: Add release notes for 19.2.4< / li >
< li > docs: Add SHA256 sum for for 19.2.4< / li >
< li > docs: update calendar, add news item and link release notes for 19.2.4< / li >
< li > docs: Add relnotes for 19.2.5< / li >
< li > docs/relnotes/19.2.5: Add SHA256 sum< / li >
< li > docs: update calendar, add news item and link release notes for 19.2.5< / li >
< li > docs/release-calendar: Update for extended 19.3 rc period< / li >
< li > docs: Add release notes for 19.2.6< / li >
< li > docs: Add SHA256 sum for 19.2.6< / li >
< li > docs: update calendar, add news item and link release notes for 19.2.6< / li >
< li > gallium/auxiliary: Fix uses of gnu struct = {} extension< / li >
< li > meson: Add -Werror=gnu-empty-initializer to MSVC compat args< / li >
< li > docs: Add release notes for 19.2.7< / li >
< li > docs: Add SHA256 sums for 19.2.7< / li >
< li > docs: update calendar, add news item and link release notes for 19.2.7< / li >
< li > docs: Update mesa 19.3 release calendar< / li >
< li > meson/broadcom: libbroadcom_cle needs expat headers< / li >
< li > meson/broadcom: libbroadcom_cle also needs zlib< / li >
< li > docs: add release notes for 19.3.0< / li >
< li > docs/19.3.0: Add SHA256 sums< / li >
< li > docs: Update release notes, index, and calendar for 19.3.0< / li >
< li > dcos: add releanse notes for 19.3.1< / li >
< li > docs: Add release notes, update calendar, and add news for 19.3.1< / li >
< li > docs: add relnotes for 19.2.8< / li >
< li > docs/relnotes/19.2.8: Add SHA256 sum< / li >
< li > docs: Add release notes, news, and update calendar for 19.2.8< / li >
< li > docs: Add release notes for 19.3.2< / li >
< li > docs: add SHA256 sums for 19.3.2< / li >
< li > docs: Add release notes for 19.3.2, update calendar and home page< / li >
< li > docs: Update release calendar for 20.0< / li >
< li > docs: Add relnotes for 19.3.3 release< / li >
< li > docs: Add SHA 256 sums for 19.3.3< / li >
< li > docs: update news, calendar, and link release notes for 19.3.3< / li >
< li > VERSION: bump to 20.0.0-rc1< / li >
< li > bin/pick-ui: Add a new maintainer script for picking patches< / li >
< li > .pick_status.json: Update to 0d14f41625fa00187f690f283c1eb6a22e354a71< / li >
< li > .pick_status.json: Update to b550b7ef3b8d12f533b67b1a03159a127a3ff34a< / li >
< li > .pick_status.json: Update to 9afdcd64f2c96f3fcc1a28912987f2e8066aa995< / li >
< li > .pick_status.json: Update to 7eaf21cb6f67adbe0e79b80b4feb8c816a98a720< / li >
< li > VERSION: bump to 20.0-rc2< / li >
< li > .pick_status.json: Update to d8bae10bfe0f487dcaec721743cd51441bcc12f5< / li >
< li > .pick_status.json: Update to 689817c9dfde9a0852f2b2489cb0fa93ffbcb215< / li >
< li > .pick_status.json: Update to 23037627359e739c42b194dec54875aefbb9d00b< / li >
< li > VERSION: bump for 20.0.0-rc3< / li >
< li > .pick_status.json: Update to 2a98cf3b2ecea43cea148df7f77d2abadfd1c9db< / li >
< li > .pick_status.json: Update to 946eacbafb47c8b94d47e7c9d2a8b02fff5a22fa< / li >
< li > .pick_status.json: Update to bee5c9b0dc13dbae0ccf124124eaccebf7f2a435< / li >
< p > < / p >
< p > Eduardo Lima Mitev (2):< / p >
< li > turnip: Remove failed command buffer from pool< / li >
< li > turnip: Fix issues in tu_compute_pipeline_create() that may lead to crash< / li >
< p > < / p >
< p > Elie Tournier (4):< / p >
< li > Docs: remove duplicate meson docs for windows< / li >
< li > docs: fix ascii html representation< / li >
< li > nir/algebraic: i2f(f2i()) -> trunc()< / li >
< li > nir/algebraic: sqrt(x)*sqrt(x) -> fabs(x)< / li >
< p > < / p >
< p > Emmanuel Gil Peyrot (1):< / p >
< li > intel/compiler: Return early if read() failed< / li >
< p > < / p >
< p > Eric Anholt (102):< / p >
< li > ci: Make lava inherit the ccache setup of the .build script.< / li >
< li > ci: Switch over to an autoscaling GKE cluster for builds.< / li >
< li > Revert " ci: Switch over to an autoscaling GKE cluster for builds." < / li >
< li > mesa/st: Add mapping of MESA_FORMAT_RGB_SNORM16 to gallium.< / li >
< li > gallium: Add defines for FXT1 texture compression.< / li >
< li > gallium: Add some more channel orderings of packed formats.< / li >
< li > gallium: Add an equivalent of MESA_FORMAT_BGR_UNORM8.< / li >
< li > gallium: Add equivalents of packed MESA_FORMAT_*UINT formats.< / li >
< li > mesa: Stop defining a full separate format for RGBA_UINT8.< / li >
< li > mesa/st: Test round-tripping of all compressed formats.< / li >
< li > mesa: Prepare for the MESA_FORMAT_* enum to be sparse.< / li >
< li > mesa: Redefine MESA_FORMAT_* in terms of PIPE_FORMAT_*.< / li >
< li > mesa/st: Gut most of st_mesa_format_to_pipe_format().< / li >
< li > mesa/st: Make st_pipe_format_to_mesa_format an effective no-op.< / li >
< li > u_format: Fix swizzle of A1R5G5B5.< / li >
< li > ci: Use several debian buster packages instead of hand-building.< / li >
< li > ci: Make the skip list regexes match the full test name.< / li >
< li > ci: Use cts_runner for our dEQP runs.< / li >
< li > ci: Enable all of GLES3/3.1 testing for softpipe.< / li >
< li > ci: Remove old commented copy of freedreno artifacts.< / li >
< li > ci: Disable flappy blit tests on a630.< / li >
< li > ci: Expand the freedreno blit skip regex to cover more cases.< / li >
< li > util: Move gallium' s PIPE_FORMAT utils to /util/format/< / li >
< li > mesa: Move compile of common Mesa core files to a static lib.< / li >
< li > mesa/st: Simplify st_choose_matching_format().< / li >
< li > mesa: Don' t put sRGB formats in the array format table.< / li >
< li > mesa/st: Reuse st_choose_matching_format from st_choose_format().< / li >
< li > util: Add a mapping from VkFormat to PIPE_FORMAT.< / li >
< li > turnip: Drop the copy of the formats table.< / li >
< li > ci: Move freedreno' s parallelism to the runner instead of gitlab-ci jobs.< / li >
< li > ci: Use a tag from the parallel-deqp-runner repo.< / li >
< li > nir: Add a scheduler pass to reduce maximum register pressure.< / li >
< li > nir: Refactor algebraic' s block walk< / li >
< li > nir: Make algebraic backtrack and reprocess after a replacement.< / li >
< li > freedreno: Introduce a fd_resource_layer_stride() helper.< / li >
< li > freedreno: Introduce a fd_resource_tile_mode() helper.< / li >
< li > freedreno: Introduce a resource layout header.< / li >
< li > freedreno: Convert the slice struct to the new resource header.< / li >
< li > freedreno/a6xx: Log the tiling mode in resource layout debug.< / li >
< li > turnip: Disable timestamp queries for now.< / li >
< li > turnip: Fix unused variable warnings.< / li >
< li > turnip: Drop redefinition of VALIDREG now that it' s in ir3.h.< / li >
< li > turnip: Reuse tu6_stage2opcode() more.< / li >
< li > turnip: Add basic SSBO support.< / li >
< li > turnip: Refactor the graphics pipeline create implementation.< / li >
< li > turnip: Add a helper function for getting tu_buffer iovas.< / li >
< li > turnip: Sanity check that we' re adding valid BOs to the list.< / li >
< li > turnip: Move pipeline BO list adding to BindPipeline.< / li >
< li > turnip: Add support for compute shaders.< / li >
< li > ci: Disable egl_ext_device_drm tests in piglit.< / li >
< li > freedreno: Enable texture upload memory throttling.< / li >
< li > freedreno: Stop forcing ALLOW_MAPPED_BUFFERS_DURING_EXEC off.< / li >
< li > freedreno: Track the set of UBOs to be uploaded in UBO analysis.< / li >
< li > freedreno: Drop the extra offset field for mipmap slices.< / li >
< li > freedreno: Refactor the UBWC flags registers emission.< / li >
< li > freedreno: Move UBWC layout into a slices array like the non-UBWC slices.< / li >
< li > tu: Move our image layout into a freedreno_layout struct.< / li >
< li > freedreno: Move a6xx' s setup_slices() to a shareable helper function.< / li >
< li > freedreno: Switch the 16-bit workaround to match what turnip does.< / li >
< li > tu: Move UBWC layout into fdl6_layout() and use that function.< / li >
< li > turnip: Lower usub_borrow.< / li >
< li > turnip: Drop unused variable.< / li >
< li > turnip: Add support for descriptor arrays.< / li >
< li > turnip: Fix support for immutable samplers.< / li >
< li > ci: Fix caselist results archiving after parallel-deqp-runner rename.< / li >
< li > mesa: Fix detection of invalidating both depth and stencil.< / li >
< li > mesa/st: Deduplicate the NIR uniform lowering code.< / li >
< li > mesa/st: Move the vec4 type size function into core GLSL types.< / li >
< li > mesa/prog: Reuse count_vec4_slots() from ir_to_mesa.< / li >
< li > mesa/st: Move the dword slot counting function to glsl_types as well.< / li >
< li > i965: Reuse the new core glsl_count_dword_slots().< / li >
< li > nir: Fix printing of ~0 .locations.< / li >
< li > turnip: Refactor linkage state setup.< / li >
< li > mesa: Make atomic lowering put atomics above SSBOs.< / li >
< li > gallium: Pack the atomic counters just above the SSBOs.< / li >
< li > nir: Drop the ssbo_offset to atomic lowering.< / li >
< li > compiler: Add a note about how num_ssbos works in the program info.< / li >
< li > freedreno: Stop scattered remapping of SSBOs/images to IBOs.< / li >
< li > radeonsi: Remove a bunch of default handling of pipe caps.< / li >
< li > r600: Remove a bunch of default handling of pipe caps.< / li >
< li > r300: Remove a bunch of default handling of pipe caps.< / li >
< li > radeonsi: Drop PIPE_CAP_TGSI_ANY_REG_AS_ADDRESS.< / li >
< li > turnip: Fix some whitespace around binary operators.< / li >
< li > turnip: Refactor the intrinsic lowering.< / li >
< li > turnip: Add limited support for storage images.< / li >
< li > turnip: Disable UBWC on images used as storage images.< / li >
< li > turnip: Add support for non-zero (still constant) UBO buffer indices.< / li >
< li > turnip: Add support for uniform texel buffers.< / li >
< li > freedreno/ir3: Plumb the ir3_shader_variant into legalize.< / li >
< li > turnip: Add support for fine derivatives.< / li >
< li > turnip: Fix execution of secondary cmd bufs with nothing in primary.< / li >
< li > freedreno: Add some missing a6xx address declarations.< / li >
< li > freedreno: Fix OUT_REG() on address regs without a .bo supplied.< / li >
< li > turnip: Port krh' s packing macros from freedreno to tu.< / li >
< li > turnip: Convert renderpass setup to the new register packing macros.< / li >
< li > turnip: Convert the rest of tu_cmd_buffer.c over to the new pack macros.< / li >
< li > vulkan/wsi: Fix compiler warning when no WSI platforms are enabled.< / li >
< li > iris: Silence warning about AUX_USAGE_MC.< / li >
< li > mesa/st: Fix compiler warnings from INTEL_shader_integer_functions.< / li >
< li > ci: Enable -Werror on the meson-i386 build.< / li >
< li > tu: Fix binning address setup after pack macros change.< / li >
< li > Revert " gallium: Fix big-endian addressing of non-bitmask array formats." < / li >
< p > < / p >
< p > Eric Engestrom (58):< / p >
< li > meson: split out idep_xmlconfig_headers from idep_xmlconfig< / li >
< li > anv: add missing xmlconfig headers dependency< / li >
< li > radv: drop unnecessary xmlpool_options_h< / li >
< li > pipe-loader: drop unnecessary xmlpool_options_h< / li >
< li > loader: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > targets/omx: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > targets/va: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > targets/vdpau: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > targets/xa: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > targets/xvmc: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > dri: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > i915: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > nouveau: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > r200: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > radeon: replace xmlpool_options_h with idep_xmlconfig_headers< / li >
< li > meson: move idep_xmlconfig_headers to xmlpool/< / li >
< li > gitlab-ci: build a recent enough version of GLVND (ie. 1.2.0)< / li >
< li > meson: require glvnd 1.2.0< / li >
< li > meson: revert glvnd workaround< / li >
< li > meson: add variable to control the symbols checks< / li >
< li > meson: move the generic symbols check arguments to a common variable< / li >
< li > meson: add windows support to symbols checks< / li >
< li > meson: require `nm` again on Unix systems< / li >
< li > mesa/imports: let the build system detect strtok_r()< / li >
< li > egl: fix _EGL_NATIVE_PLATFORM fallback< / li >
< li > egl: move #include of local headers out of Khronos headers< / li >
< li > gitlab-ci: build libdrm using meson instead of autotools< / li >
< li > gitlab-ci: auto-cancel CI runs when a newer commit is pushed to the same branch< / li >
< li > CL: sync C headers with Khronos< / li >
< li > CL: sync C++ headers with Khronos< / li >
< li > vulkan: delete typo' d header< / li >
< li > egl: use EGL_CAST() macro in eglmesaext.h< / li >
< li > anv: add missing " fall-through" annotation< / li >
< li > vk_util: drop duplicate formats in vk_format_map[]< / li >
< li > meson: drop duplicate `lib` prefix on libiris_gen*< / li >
< li > meson: drop `intel_` prefix on imgui_core< / li >
< li > docs: reword a bit and list HTTPS before FTP< / li >
< li > intel: add mi_builder_test for gen12< / li >
< li > intel/compiler: add ASSERTED annotation to avoid " unused variable" warning< / li >
< li > intel/compiler: replace `0` pointer with `NULL`< / li >
< li > util/simple_mtx: don' t set the canary when it can' t be checked< / li >
< li > anv: drop unused #include< / li >
< li > travis: autodetect python version instead of hard-coding it< / li >
< li > util/format: remove left-over util_format_description_table declaration< / li >
< li > util/format: add PIPE_FORMAT_ASTC_*x*x*_SRGB to util_format_{srgb,linear}()< / li >
< li > util/format: add trivial srgb< -> linear conversion test< / li >
< li > u_format: move format tests to util/tests/< / li >
< li > amd: fix empty-body issues< / li >
< li > nine: fix empty-body-issues< / li >
< li > meson: simplify install_megadrivers.py invocation< / li >
< li > mesa: avoid returning a value in a void function< / li >
< li > meson: use github URL for wraps instead of completely unreliable wrapdb< / li >
< li > egl: drop confusing mincore() error message< / li >
< li > llvmpipe: drop LLVM < 3.4 support< / li >
< li > util/atomic: fix return type of p_atomic_add_return() fallback< / li >
< li > util/os_socket: fix header unavailable on windows< / li >
< li > freedreno/perfcntrs: fix fd leak< / li >
< li > util/disk_cache: check for write() failure in the zstd path< / li >
< p > < / p >
< p > Erico Nunes (17):< / p >
< li > lima: fix nir shader memory leak< / li >
< li > lima: fix bo submit memory leak< / li >
< li > lima/ppir: enable lower_fdph< / li >
< li > gallium/util: add alignment parameter to util_upload_index_buffer< / li >
< li > lima: allocate separate bo to store varyings< / li >
< li > lima: refactor indexed draw indices upload< / li >
< li > vc4: move the draw splitting routine to shared code< / li >
< li > lima: split draw calls on 64k vertices< / li >
< li > lima/ppir: fix lod bias src< / li >
< li > lima/ppir: remove assert on ppir_emit_tex unsupported feature< / li >
< li > lima: set shader caps to optimize control flow< / li >
< li > lima/ppir: remove orphan load node after cloning< / li >
< li > lima/ppir: implement full liveness analysis for regalloc< / li >
< li > lima/ppir: handle write to dead registers in ppir< / li >
< li > lima/ppir: fix ssa undef emit< / li >
< li > lima/ppir: split ppir_op_undef into undef and dummy again< / li >
< li > lima/ppir: fix src read mask swizzling< / li >
< p > < / p >
< p > Erik Faye-Lund (82):< / p >
< li > zink: heap-allocate samplers objects< / li >
< li > zink: emit line-width when using polygon line-mode< / li >
< li > anv: remove incorrect polygonMode=point early-out< / li >
< li > zink: use actual format for render-pass< / li >
< li > zink: always allow mutating the format< / li >
< li > zink: do not advertize coherent mapping< / li >
< li > zink: disable fragment-shader texture-lod< / li >
< li > zink: transition resources before resolving< / li >
< li > zink: always allow sampling of images< / li >
< li > zink: use u_blitter when format-reinterpreting< / li >
< li > zink/spirv: drop temp-array for component-count< / li >
< li > zink/spirv: support loading bool constants< / li >
< li > zink/spirv: implement bany_fnequal[2-4]< / li >
< li > zink/spirv: implement bany_inequal[2-4]< / li >
< li > zink/spirv: implement ball_iequal[2-4]< / li >
< li > zink/spirv: implement ball_fequal[2-4]< / li >
< li > zink: do advertize integer support in shaders< / li >
< li > zink/spirv: add support for nir_op_flrp< / li >
< li > zink: correct depth-stencil format< / li >
< li > nir: patch up deref-vars when lowering clip-planes< / li >
< li > zink: always allow transfer to/from buffers< / li >
< li > zink: implement buffer-to-buffer copies< / li >
< li > zink: remove no-longer-needed hack< / li >
< li > zink: move format-checking to separate source< / li >
< li > zink: move filter-helper to separate helper-header< / li >
< li > zink: move blitting to separate source< / li >
< li > zink: move drawing separate source< / li >
< li > st/mesa: unmap pbo after updating cache< / li >
< li > zink: use true/false instead of TRUE/FALSE< / li >
< li > zink: reject invalid sample-counts< / li >
< li > zink: fix crash when restoring sampler-states< / li >
< li > zink: delete query rather than allocating a new one< / li >
< li > zink: do not try to destroy NULL-fence< / li >
< li > zink: handle calloc-failure< / li >
< li > zink: avoid NULL-deref< / li >
< li > zink: avoid NULL-deref< / li >
< li > zink: avoid NULL-deref< / li >
< li > zink: error-check right variable< / li >
< li > zink: silence coverity error< / li >
< li > zink: enable PIPE_CAP_MIXED_COLORBUFFER_FORMATS< / li >
< li > zink: implement nir_texop_txd< / li >
< li > zink: implement txf< / li >
< li > zink: implement some more trivial opcodes< / li >
< li > zink: simplify front-face type< / li >
< li > zink: factor out builtin-var creation< / li >
< li > zink: implement load_vertex_id< / li >
< li > zink: use nir_fmul_imm< / li >
< li > zink: remove unused code-path in lower_pos_write< / li >
< li > nir/zink: move clip_halfz-lowering to common code< / li >
< li > etnaviv: use nir_lower_clip_halfz instead of open-coding< / li >
< li > st/mesa: use uint-samplers for sampling stencil buffers< / li >
< li > zink: fixup initialization of operand_mask / num_extra_operands< / li >
< li > util: initialize float-array with float-literals< / li >
< li > st/wgl: eliminate implicit cast warning< / li >
< li > gallium: fix a warning< / li >
< li > mesa/st: use float literals< / li >
< li > docs: fix typo in html tag name< / li >
< li > docs: fix paragraphs< / li >
< li > docs: open paragraph before closing it< / li >
< li > docs: use code-tag instead of pre-tag< / li >
< li > docs: use code-tags instead of pre-tags< / li >
< li > docs: use code-tags instead of pre-tags< / li >
< li > docs: move paragraph closing tag< / li >
< li > docs: remove double-closed definition-list< / li >
< li > docs: do not double-close link tag< / li >
< li > docs: do not use definition-list for sub-topics< / li >
< li > docs: use figure/figcaption instead of tables< / li >
< li > docs: remove trailing header< / li >
< li > docs: remove leading spaces< / li >
< li > docs: remove trailing newlines< / li >
< li > docs: use [1] instead of asterisk for footnote< / li >
< li > docs: remove pointless, stray newline< / li >
< li > docs: fixup indentation< / li >
< li > zink: implement nir_texop_txs< / li >
< li > zink: support offset-variants of texturing< / li >
< li > zink: avoid incorrect vector-construction< / li >
< li > zink: store image-type per texture< / li >
< li > zink: support sampling non-float textures< / li >
< li > zink: support arrays of samplers< / li >
< li > zink: set compareEnable when setting compareOp< / li >
< li > st/mesa: use uint-result for sampling stencil buffers< / li >
< li > Revert " nir: Add a couple trivial abs optimizations" < / li >
< p > < / p >
< p > Florian Will (1):< / p >
< li > radv/winsys: set IB flags prior to submit in the sysmem path< / li >
< p > < / p >
< p > Francisco Jerez (26):< / p >
< li > glsl: Fix software 64-bit integer to 32-bit float conversions.< / li >
< li > intel/fs/gen11+: Handle ROR/ROL in lower_simd_width().< / li >
< li > intel/fs/gen8+: Fix r127 dst/src overlap RA workaround for EOT message payload.< / li >
< li > intel/fs: Fix nir_intrinsic_load_barycentric_at_sample for SIMD32.< / li >
< li > intel/fs/cse: Fix non-deterministic behavior due to inaccurate liveness calculation.< / li >
< li > intel/fs: Make implied_mrf_writes() an fs_inst method.< / li >
< li > intel/fs: Try to vectorize header setup in lower_load_payload().< / li >
< li > intel/fs: Generalize fs_reg::is_contiguous() to register files other than VGRF.< / li >
< li > intel/fs: Rework fs_inst::is_copy_payload() into multiple classification helpers.< / li >
< li > intel/fs: Extend copy propagation dataflow analysis to copies with FIXED_GRF source.< / li >
< li > intel/fs: Add partial support for copy-propagating FIXED_GRFs.< / li >
< li > intel/fs: Add support for copy-propagating a block of multiple FIXED_GRFs.< / li >
< li > intel/fs: Allow limited copy propagation of a LOAD_PAYLOAD into another.< / li >
< li > intel/fs/gen4-6: Allocate registers from aligned_pairs_class based on LINTERP use.< / li >
< li > intel/fs/gen6: Constrain barycentric source of LINTERP during bank conflict mitigation.< / li >
< li > intel/fs/gen6: Generalize aligned_pairs_class to SIMD16 aligned barycentrics.< / li >
< li > intel/fs/gen6: Use SEL instead of bashing thread payload for unlit centroid workaround.< / li >
< li > intel/fs: Split fetch_payload_reg() into separate helper for barycentrics.< / li >
< li > intel/fs: Introduce barycentric layout lowering pass.< / li >
< li > intel/fs: Switch to standard vector layout for barycentrics at optimization time.< / li >
< li > intel/fs/cse: Make HALT instruction act as CSE barrier.< / li >
< li > intel/fs/gen7: Fix fs_inst::flags_written() for SHADER_OPCODE_FIND_LIVE_CHANNEL.< / li >
< li > intel/fs: Add virtual instruction to load mask of live channels into flag register.< / li >
< li > intel/fs/gen12: Workaround unwanted SEND execution due to broken NoMask control flow.< / li >
< li > intel/fs/gen12: Fixup/simplify SWSB annotations of SIMD32 scratch writes.< / li >
< li > intel/fs/gen12: Workaround data coherency issues due to broken NoMask control flow.< / li >
< p > < / p >
< p > Fritz Koenig (1):< / p >
< li > freedreno: reorder format check< / li >
< p > < / p >
< p > Georg Lehmann (3):< / p >
< li > Correctly wait in the fragment stage until all semaphores are signaled< / li >
< li > Vulkan Overlay: Don' t try to change the image layout to present twice< / li >
< li > Vulkan overlay: use the corresponding image index for each swapchain< / li >
< p > < / p >
< p > Gert Wollny (12):< / p >
< li > r600: Disable eight bit three channel formats< / li >
< li > virgl: Increase the shader transfer buffer by doubling the size< / li >
< li > gallium/tgsi_from_mesa: Add ' extern " C" ' to be able to include from C++< / li >
< li > nir: make nir_get_texture_size/lod available outside nir_lower_tex< / li >
< li > gallium: tgsi_from_mesa - handle VARYING_SLOT_FACE< / li >
< li > r600: Add functions to dump the shader info< / li >
< li > r600: Make it possible to include r600_asm.h in a C++ file< / li >
< li > r600/sb: Correct SB disassambler for better debugging< / li >
< li > r600: Fix maximum line width< / li >
< li > r600: Make SID and unsigned value< / li >
< li > r600: Delete vertex buffer only if there is actually a shader state< / li >
< li > mesa/st: glsl_to_nir: don' t lower atomics to SSBOs if driver supports HW atomics< / li >
< p > < / p >
< p > Guido Günther (2):< / p >
< li > etnaviv: drm: Don' t miscalculate timeout< / li >
< li > freedreno/drm: Don' t miscalculate timeout< / li >
< p > < / p >
< p > Gurchetan Singh (11):< / p >
< li > drirc: set allow_higher_compat_version for Faster Than Light< / li >
< li > virgl/drm: update UAPI< / li >
< li > teximage: split out helper from EGLImageTargetTexture2DOES< / li >
< li > glapi / teximage: implement EGLImageTargetTexStorageEXT< / li >
< li > dri_util: add driImageFormatToSizedInternalGLFormat function< / li >
< li > i965: track if image is created by a dmabuf< / li >
< li > i965: refactor intel_image_target_texture_2d< / li >
< li > i965: support EXT_EGL_image_storage< / li >
< li > st/dri: track if image is created by a dmabuf< / li >
< li > st/mesa: refactor egl image binding a bit< / li >
< li > st/mesa: implement EGLImageTargetTexStorage< / li >
< p > < / p >
< p > Hyunjun Ko (7):< / p >
< li > freedreno/ir3: cleanup by removing repeated code< / li >
< li > freedreno: support 16b for the sampler opcode< / li >
< li > freedreno/ir3: fix printing output registers of FS.< / li >
< li > freedreno/ir3: fixup when changing to mad.f16< / li >
< li > freedreno/ir3: enable half precision for pre-fs texture fetch< / li >
< li > turnip: fix invalid VK_ERROR_OUT_OF_POOL_MEMORY< / li >
< li > freedreno/ir3: put the conversion back for half const to the right place.< / li >
< p > < / p >
< p > Iago Toral Quiroga (32):< / p >
< li > v3d: rename vertex shader key (num)_fs_inputs fields< / li >
< li > mesa/st: make sure we remove dead IO variables before handing NIR to backends< / li >
< li > glsl: add missing initialization of the location path field< / li >
< li > v3d: fix indirect BO allocation for uniforms< / li >
< li > v3d: actually root the first BO in a command list in the job< / li >
< li > v3d: add missing plumbing for VPM load instructions< / li >
< li > v3d: add debug assert< / li >
< li > v3d: enable debug options for geometry shader dumps< / li >
< li > v3d: remove unused variable< / li >
< li > v3d: add initial compiler plumbing for geometry shaders< / li >
< li > v3d: fix packet descriptions for geometry and tessellation shaders< / li >
< li > v3d: emit geometry shader state commands< / li >
< li > v3d: implement geometry shader instancing< / li >
< li > v3d: add 1-way SIMD packing definition< / li >
< li > v3d: compute appropriate VPM memory configuration for geometry shader workloads< / li >
< li > v3d: we always have at least one output segment< / li >
< li > v3d: add support for adjacency primitives< / li >
< li > v3d: don' t try to render if shaders failed to compile< / li >
< li > v3d: predicate geometry shader outputs inside non-uniform control flow< / li >
< li > v3d: save geometry shader state for blitting< / li >
< li > v3d: support transform feedback with geometry shaders< / li >
< li > v3d: remove obsolete assertion< / li >
< li > v3d: do not limit new CL space allocations with branch to 4096 bytes< / li >
< li > v3d: support rendering to multi-layered framebuffers< / li >
< li > v3d: move layer rendering to a separate helper< / li >
< li > v3d: handle writes to gl_Layer from geometry shaders< / li >
< li > v3d: fix primitive queries for geometry shaders< / li >
< li > v3d: disable lowering of indirect inputs< / li >
< li > v3d: support precompiling geometry shaders< / li >
< li > v3d: expose OES_geometry_shader< / li >
< li > u_vbuf: don' t try to delete NULL driver CSO< / li >
< li > v3d: fix bug when checking result of syncobj fence import< / li >
< p > < / p >
< p > Ian Romanick (39):< / p >
< li > intel/compiler: Report the number of non-spill/fill SEND messages on vec4 too< / li >
< li > nir/algebraic: Add the ability to mark a replacement as exact< / li >
< li > nir/algebraic: Mark other comparison exact when removing a == a< / li >
< li > intel/fs: Disable conditional discard optimization on Gen4 and Gen5< / li >
< li > nir/range-analysis: Add pragmas to help loop unrolling< / li >
< li > nir/range_analysis: Make sure the table validation only occurs once< / li >
< li > nir/opt_peephole_select: Don' t count some unary operations< / li >
< li > intel/compiler: Increase nir_opt_peephole_select threshold< / li >
< li > nir/algebraic: Simplify some Inf and NaN avoidance code< / li >
< li > nir/algebraic: Rearrange bcsel sequences generated by nir_opt_peephole_select< / li >
< li > intel/compiler: Fix ' comparison is always true' warning< / li >
< li > mesa: Silence ' left shift of negative value' warning in BPTC compression code< / li >
< li > mesa: Silence unused parameter warning< / li >
< li > anv: Fix error message format string< / li >
< li > mesa: Extension boilerplate for INTEL_shader_integer_functions2< / li >
< li > glsl: Add new expressions for INTEL_shader_integer_functions2< / li >
< li > glsl_types: Add function to get an unsigned base type from a signed type< / li >
< li > glsl: Add built-in functions for INTEL_shader_integer_functions2< / li >
< li > nir: Add new instructions for INTEL_shader_integer_functions2< / li >
< li > nir/algebraic: Add lowering for uabs_usub and uabs_isub< / li >
< li > nir/algebraic: Add lowering for 64-bit hadd and rhadd< / li >
< li > nir/algebraic: Add lowering for 64-bit usub_sat< / li >
< li > nir/algebraic: Add lowering for 64-bit uadd_sat< / li >
< li > nir/algebraic: Add lowering for 64-bit iadd_sat and isub_sat< / li >
< li > compiler: Translate GLSL IR to NIR for new INTEL_shader_integer_functions2 expressions< / li >
< li > intel/fs: Don' t lower integer multiplies that don' t need lowering< / li >
< li > intel/fs: Add SHADER_OPCODE_[IU]SUB_SAT pseudo-ops< / li >
< li > intel/fs: Implement support for NIR opcodes for INTEL_shader_integer_functions2< / li >
< li > nir/spirv: Translate SPIR-V to NIR for new INTEL_shader_integer_functions2 opcodes< / li >
< li > spirv: Silence a bunch of unused parameter warnings< / li >
< li > spirv: Add support for IntegerFunctions2INTEL capability< / li >
< li > i965: Enable INTEL_shader_integer_functions2 on Gen8+< / li >
< li > gallium: Add a cap bit for OpenCL-style extended integer functions< / li >
< li > gallium: Add a cap bit for integer multiplication between 32-bit and 16-bit< / li >
< li > iris: Enable INTEL_shader_integer_functions2< / li >
< li > anv: Enable SPV_INTEL_shader_integer_functions2 and VK_INTEL_shader_integer_functions2< / li >
< li > nir/algebraic: Optimize some 64-bit integer comparisons involving zero< / li >
< li > relnotes: Add GL_INTEL_shader_integer_functions2 and VK_INTEL_shader_integer_functions2< / li >
< li > intel/fs: Don' t count integer instructions as being possibly coissue< / li >
< p > < / p >
< p > Icecream95 (16):< / p >
< li > gallium/auxiliary: Reduce conversions in u_vbuf_get_minmax_index_mapped< / li >
< li > gallium/auxiliary: Handle count == 0 in u_vbuf_get_minmax_index_mapped< / li >
< li > panfrost: Add negative lod bias support< / li >
< li > panfrost: Compact the bo_access readers array< / li >
< li > panfrost: Dynamically allocate shader variants< / li >
< li > panfrost: Add ETC1/ETC2 texture formats< / li >
< li > panfrost: Add ASTC texture formats< / li >
< li > pan/midgard: Fix bundle dynarray leak< / li >
< li > pan/midgard: Fix a memory leak in the disassembler< / li >
< li > pan/midgard: Support disassembling to a file< / li >
< li > pan/bifrost: Support disassembling to a file< / li >
< li > pan/decode: Support dumping to a file< / li >
< li > pan/decode: Dump to a file< / li >
< li > pan/decode: Rotate trace files< / li >
< li > panfrost: Don' t copy uniforms when the size is zero< / li >
< li > pan/midgard: Fix a liveness info leak< / li >
< p > < / p >
< p > Icenowy Zheng (2):< / p >
< li > lima: support indexed draw with bias< / li >
< li > lima: fix lima_set_vertex_buffers()< / li >
< p > < / p >
< p > Ilia Mirkin (7):< / p >
< li > gm107/ir: fix loading z offset for layered 3d image bindings< / li >
< li > nv50/ir: mark STORE destination inputs as used< / li >
< li > nv50,nvc0: fix destination coordinates of blit< / li >
< li > nvc0: add dummy reset status support< / li >
< li > gm107/ir: avoid combining geometry shader stores at 0x60< / li >
< li > nvc0: treat all draws without color0 broadcast as MRT< / li >
< li > nvc0: disable xfb' s which don' t have a stride< / li >
< p > < / p >
< p > Italo Nicola (1):< / p >
< li > intel/compiler: remove old comment< / li >
< p > < / p >
< p > Iván Briano (4):< / p >
< li > intel/compiler: Don' t change hstride if not needed< / li >
< li > anv: Export filter_minmax support only when it' s really supported< / li >
< li > anv: Export VK_KHR_buffer_device_address only when really supported< / li >
< li > anv: Enable Vulkan 1.2 support< / li >
< p > < / p >
< p > James Xiong (3):< / p >
< li > iris: try to set the specified tiling when importing a dmabuf< / li >
< li > gallium: dmabuf support for yuv formats that are not natively supported< / li >
< li > gallium: let the pipe drivers decide the supported modifiers< / li >
< p > < / p >
< p > Jan Vesely (2):< / p >
< li > clover: Initialize Asm Parsers< / li >
< li > clover: Use explicit conversion from llvm::StringRef to std::string< / li >
< p > < / p >
< p > Jan Zielinski (8):< / p >
< li > gallium/swr: Fix depth values for blit scenario< / li >
< li > swr/rasterizer: Add tessellator implementation to the rasterizer< / li >
< li > gallium/swr: Fix Windows build< / li >
< li > gallium/gallivm/tgsi: enable tessellation shaders< / li >
< li > gallium/gallivm: enable linking lp_bld_printf function with C++ code< / li >
< li > gallium/swr: implementation of tessellation shaders compilation< / li >
< li > gallium/swr: fix tessellation state save/restore< / li >
< li > docs: Update SWR tessellation support< / li >
< p > < / p >
< p > Jason Ekstrand (212):< / p >
< li > util: Add a util_sparse_array data structure< / li >
< li > anv: Move refcount to anv_bo< / li >
< li > anv: Use a util_sparse_array for the GEM handle -> BO map< / li >
< li > anv: Fix a relocation race condition< / li >
< li > anv: Stop storing the GEM handle in anv_reloc_list_add< / li >
< li > anv: Declare the bo in the anv_block_pool_foreach_bo loop< / li >
< li > anv: Inline anv_block_pool_get_bo< / li >
< li > anv: Replace ANV_BO_EXTERNAL with anv_bo::is_external< / li >
< li > anv: Handle state pool relocations using " wrapper" BOs< / li >
< li > anv: Fix a potential BO handle leak< / li >
< li > anv: Rework anv_block_pool_expand_range< / li >
< li > anv: Use anv_block_pool_foreach_bo in get_bo_from_pool< / li >
< li > anv: Rework the internal BO allocation API< / li >
< li > anv: Choose BO flags internally in anv_block_pool< / li >
< li > anv/tests: Zero-initialize instances< / li >
< li > anv/tests: Initialize the BO cache and device mutex< / li >
< li > anv: Allocate block pool BOs from the cache< / li >
< li > anv: Use the query_slot helper in vkResetQueryPoolEXT< / li >
< li > anv: Allocate query pool BOs from the cache< / li >
< li > anv: Set more flags on descriptor pool buffers< / li >
< li > anv: Allocate descriptor buffers from the BO cache< / li >
< li > util: Add a free list structure for use with util_sparse_array< / li >
< li > anv: Allocate batch and fence buffers from the cache< / li >
< li > anv: Allocate scratch BOs from the cache< / li >
< li > anv: Allocate misc BOs from the cache< / li >
< li > anv: Drop anv_bo_init and anv_bo_init_new< / li >
< li > anv: Add a device parameter to anv_execbuf_add_bo< / li >
< li > anv: Set the batch allocator for compute pipelines< / li >
< li > anv: Use a bitset for tracking residency< / li >
< li > anv: Zero released anv_bo structs< / li >
< li > anv: Use the new BO alloc API for Android< / li >
< li > anv: Don' t delete fragment shaders that write sample mask< / li >
< li > anv: Don' t claim the null RT as a valid color target< / li >
< li > anv: Stop compacting render targets in the binding table< / li >
< li > anv: Move the RT BTI flush workaround to begin_subpass< / li >
< li > spirv: Remove the type from sampled_image< / li >
< li > spirv: Add a vtn_decorate_pointer helper< / li >
< li > spirv: Sort out the mess that is sampled image< / li >
< li > nir/builder: Add a nir_extract_bits helper< / li >
< li > nir: Add tests for nir_extract_bits< / li >
< li > intel/nir: Use nir_extract_bits in lower_mem_access_bit_sizes< / li >
< li > intel/fs: Add DWord scattered read/write opcodes< / li >
< li > intel/fs: refactor surface header setup< / li >
< li > intel/nir: Plumb devinfo through lower_mem_access_bit_sizes< / li >
< li > intel/fs: Implement the new load/store_scratch intrinsics< / li >
< li > intel/fs: Lower large local arrays to scratch< / li >
< li > anv: Lock around fetching sync file FDs from semaphores< / li >
< li > anv: Plumb timeline semaphore signal/wait values through from the API< / li >
< li > spirv: Fix the MSVC build< / li >
< li > anv/pipeline: Assume layout != NULL< / li >
< li > genxml: Mark everything in genX_pack.h always_inline< / li >
< li > anv: Input attachments are always single-plane< / li >
< li > anv: Flatten descriptor bindings in anv_nir_apply_pipeline_layout< / li >
< li > anv: Delete dead shader constant pushing code< / li >
< li > anv: Stop bounds-checking pushed UBOs< / li >
< li > anv: Pre-compute push ranges for graphics pipelines< / li >
< li > intel/compiler: Add a flag to avoid compacting push constants< / li >
< li > anv: Re-arrange push constant data a bit< / li >
< li > anv: Rework push constant handling< / li >
< li > anv: Use a switch statement for binding table setup< / li >
< li > anv: More carefully dirty state in BindDescriptorSets< / li >
< li > anv: More carefully dirty state in BindPipeline< / li >
< li > anv: Use an anv_state for the next binding table< / li >
< li > anv: Emit a NULL vertex for zero base_vertex/instance< / li >
< li > nir: Validate that variables are in the right lists< / li >
< li > iris: Re-enable param compaction< / li >
< li > Revert " i965/fs: Merge CMP and SEL into CSEL on Gen8+" < / li >
< li > vulkan/enum_to_str: Handle out-of-order aliases< / li >
< li > anv/entrypoints: Better handle promoted extensions< / li >
< li > vulkan: Update the XML and headers to 1.1.129< / li >
< li > anv: Push constants are relative to dynamic state on IVB< / li >
< li > anv: Set up SBE_SWIZ properly for gl_Viewport< / li >
< li > anv: Respect the always_flush_cache driconf option< / li >
< li > iris: Stop setting up fake params< / li >
< li > anv: Drop bo_flags from anv_bo_pool< / li >
< li > anv: Add a has_softpin boolean< / li >
< li > blorp: Pass the VB size to the VF cache workaround< / li >
< li > anv: Always invalidate the VF cache in BeginCommandBuffer< / li >
< li > anv: Apply cache flushes after setting index/draw VBs< / li >
< li > anv: Use PIPE_CONTROL flushes to implement the gen8 VF cache WA< / li >
< li > anv: Don' t leak when set_tiling fails< / li >
< li > util/atomic: Add a _return variant of p_atomic_add< / li >
< li > anv: Disallow allocating above heap sizes< / li >
< li > anv: Stop tracking VMA allocations< / li >
< li > anv: Set up VMA heaps independently from memory heaps< / li >
< li > anv: Stop advertising two heaps just for the VF cache WA< / li >
< li > anv: Add an explicit_address parameter to anv_device_alloc_bo< / li >
< li > util/vma: Factor out the hole splitting part of util_vma_heap_alloc< / li >
< li > util/vma: Add a function to allocate a particular address range< / li >
< li > anv: Add allocator support for client-visible addresses< / li >
< li > anv: Use a pNext loop in AllocateMemory< / li >
< li > anv: Implement VK_KHR_buffer_device_address< / li >
< li > util/atomic: Add p_atomic_add_return for the unlocked path< / li >
< li > vulkan/wsi: Provide the implicitly synchronized BO to vkQueueSubmit< / li >
< li > vulkan/wsi: Add a hooks for signaling semaphores and fences< / li >
< li > anv: Always add in EXEC_OBJECT_WRITE when specified in extra_flags< / li >
< li > anv: Use submit-time implicit sync instead of allocate-time< / li >
< li > anv: Add a fence_reset_reset_temporary helper< / li >
< li > anv: Use BO fences/semaphores for AcquireNextImage< / li >
< li > anv: Return VK_ERROR_OUT_OF_DEVICE_MEMORY for too-large buffers< / li >
< li > anv: Re-capture all batch and state buffers< / li >
< li > anv: Re-emit all compute state on pipeline switch< / li >
< li > ANV: Stop advertising smoothLines support on gen10+< / li >
< li > anv: Flush the queue on DeviceWaitIdle< / li >
< li > anv: Unconditionally advertise Vulkan 1.1< / li >
< li > anv: Bump the advertised patch version to 129< / li >
< li > i965: Enable GL_EXT_gpu_shader4 on Gen6+< / li >
< li > anv: Properly advertise sampledImageIntegerSampleCounts< / li >
< li > anv: Drop unneeded struct keywords< / li >
< li > blorp: Stop whacking Z24 depth to BGRA8< / li >
< li > blorp: Allow reading with HiZ< / li >
< li > i965/blorp: Don' t resolve HiZ unless we' re reinterpreting< / li >
< li > intel/blorp: Use the source format when using blorp_copy with HiZ< / li >
< li > anv: Allow HiZ in TRANSFER_SRC_OPTIMAL on Gen8-9< / li >
< li > i965: Allow HiZ for glCopyImageSubData sources< / li >
< li > intel/nir: Add a memory barrier before barrier()< / li >
< li > intel/disasm: Fix decoding of src0 of SENDS< / li >
< li > genxml: Remove a non-existant HW bit< / li >
< li > anv: Don' t add dynamic state base address to push constants on Gen7< / li >
< li > anv: Flag descriptors dirty when gl_NumWorkgroups is used< / li >
< li > anv: Re-use flush_descriptor_sets in flush_compute_state< / li >
< li > intel/vec4: Support scoped_memory_barrier< / li >
< li > nir: Handle more barriers in dead_write and copy_prop< / li >
< li > nir: Handle barriers with more granularity in combine_stores< / li >
< li > llmvpipe: No-op implement more barriers< / li >
< li > nir: Add a new memory_barrier_tcs_patch intrinsic< / li >
< li > spirv: Add a workaround for OpControlBarrier on old GLSLang< / li >
< li > spirv: Add output memory semantics to OpControlBarrier in TCS< / li >
< li > nir/glsl: Emit memory barriers as part of barrier()< / li >
< li > intel/nir: Stop adding redundant barriers< / li >
< li > nir: Rename nir_intrinsic_barrier to control_barrier< / li >
< li > nir/lower_atomics_to_ssbo: Also lower barriers< / li >
< li > anv: Drop an unused variable< / li >
< li > intel/blorp: Fill out all the dwords of MI_ATOMIC< / li >
< li > anv: Don' t over-advertise descriptor indexing features< / li >
< li > anv: Memset array properties< / li >
< li > vulkan/wsi: Add a driconf option to force WSI to advertise BGRA8_UNORM first< / li >
< li > vulkan: Update the XML and headers to 1.2.131< / li >
< li > turnip: Pretend to support Vulkan 1.2< / li >
< li > anv: Bump the patch version to 131< / li >
< li > anv,nir: Lower quad_broadcast with dynamic index in NIR< / li >
< li > anv: Implement the new core version feature queries< / li >
< li > anv: Implement the new core version property queries< / li >
< li > relnotes: Add Vulkan 1.2< / li >
< li > anv: Drop some VK_IMAGE_TILING_OPTIMAL checks< / li >
< li > anv: Support modifiers in GetImageFormatProperties2< / li >
< li > vulkan/wsi: Move the ImageCreateInfo higher up< / li >
< li > vulkan/wsi: Use the interface from the real modifiers extension< / li >
< li > vulkan/wsi: Filter modifiers with ImageFormatProperties< / li >
< li > vulkan/wsi: Implement VK_KHR_swapchain_mutable_format< / li >
< li > anv/blorp: Rename buffer image stride parameters< / li >
< li > anv: Canonicalize buffer formats for image/buffer copies< / li >
< li > anv: Add an anv_physical_device field to anv_device< / li >
< li > anv: Take an anv_device in vk_errorf< / li >
< li > anv: Take a device in anv_perf_warn< / li >
< li > anv: Stop allocating WSI event fences off the instance< / li >
< li > anv: Drop the instance pointer from anv_device< / li >
< li > anv: Move the physical device dispatch table to anv_instance< / li >
< li > anv: Drop separate chipset_id fields< / li >
< li > anv: Re-arrange physical_device_init< / li >
< li > anv: Allow enumerating multiple physical devices< / li >
< li > anv/apply_pipeline_layout: Initialize the nir_builder before use< / li >
< li > intel/blorp: resize src and dst surfaces separately< / li >
< li > anv: Use TRANSFER_SRC_OPTIMAL for depth/stencil MSAA resolves< / li >
< li > anv: Add a layout_to_aux_state helper< / li >
< li > anv: Use isl_aux_state for HiZ resolves< / li >
< li > anv: Add a usage parameter to anv_layout_to_aux_usage< / li >
< li > anv: Allow HiZ in read-only depth layouts< / li >
< li > anv: Improve BTI change cache flushing< / li >
< li > intel/fs: Don' t unnecessarily fall back to indirect sends on Gen12< / li >
< li > intel/disasm: Properly disassemble indirect SENDs< / li >
< li > intel/isl: Plumb devinfo into isl_genX(buffer_fill_state_s)< / li >
< li > intel/isl: Add a hack for the Gen12 A0 texture buffer bug< / li >
< li > anv: Rework the meaning of anv_image::planes[]::aux_usage< / li >
< li > anv: Replace aux_surface.isl.size_B checks with aux_usage checks< / li >
< li > intel/aux-map: Add some #defines< / li >
< li > intel/aux-map: Factor out some useful helpers< / li >
< li > anv: Delete a redundant calculation< / li >
< li > isl: Add a helper for calculating subimage memory ranges< / li >
< li > anv: Add another align_down helper< / li >
< li > anv: Make AUX table invalidate a PIPE_* bit< / li >
< li > anv: Make anv_vma_alloc/free a lot dumber< / li >
< li > anv: Rework CCS memory handling on TGL-LP< / li >
< li > intel/blorp: Add support for CCS_E copies with UNORM formats< / li >
< li > intel/isl: Allow CCS_E on more formats< / li >
< li > intel/genxml: Make SO_DECL::" Hole Flag" a Boolean< / li >
< li > anv: Insert holes for non-existant XFB varyings< / li >
< li > intel/blorp: Handle bit-casting UNORM and BGRA formats< / li >
< li > anv: Replace one more aux_surface.isl.size_B check< / li >
< li > intel/mi_builder: Force write completion on Gen12+< / li >
< li > anv: Set actual state pool sizes when we have softpin< / li >
< li > anv: Re-use one old BT block in reset_batch_bo_chain< / li >
< li > anv/block_pool: Ensure allocations have contiguous maps< / li >
< li > anv: Rename a variable< / li >
< li > genxml: Add a new 3DSTATE_SF field on gen12< / li >
< li > anv,iris: Set 3DSTATE_SF::DerefBlockSize to per-poly on Gen12+< / li >
< li > intel/genxml: Drop SLMEnable from L3CNTLREG on Gen11< / li >
< li > iris: Set SLMEnable based on the L3$ config< / li >
< li > iris: Store the L3$ configs in the screen< / li >
< li > iris: Use the URB size from the L3$ config< / li >
< li > i965: Re-emit l3 state before BLORP executes< / li >
< li > intel: Take a gen_l3_config in gen_get_urb_config< / li >
< li > intel/blorp: Always emit URB config on Gen7+< / li >
< li > iris: Consolodate URB emit< / li >
< li > anv: Emit URB setup earlier< / li >
< li > intel/common: Return the block size from get_urb_config< / li >
< li > intel/blorp: Plumb deref block size through to 3DSTATE_SF< / li >
< li > anv: Plumb deref block size through to 3DSTATE_SF< / li >
< li > iris: Plumb deref block size through to 3DSTATE_SF< / li >
< li > anv: Always fill out the AUX table even if CCS is disabled< / li >
< li > intel/fs: Write the address register with NoMask for MOV_INDIRECT< / li >
< li > anv/blorp: Use the correct size for vkCmdCopyBufferToImage< / li >
< p > < / p >
< p > Jonathan Gray (4):< / p >
< li > winsys/amdgpu: avoid double simple_mtx_unlock()< / li >
< li > i965: update Makefile.sources for perf changes< / li >
< li > util/futex: use futex syscall on OpenBSD< / li >
< li > util/u_thread: don' t restrict u_thread_get_time_nano() to __linux__< / li >
< p > < / p >
< p > Jonathan Marek (98):< / p >
< li > freedreno: add Adreno 640 ID< / li >
< li > freedreno/ir3: disable texture prefetch for 1d array textures< / li >
< li > freedreno/registers: fix a6xx_2d_blit_cntl ROTATE< / li >
< li > etnaviv: blt: use only for tiling, and add missing formats< / li >
< li > etnaviv: separate PE and RS formats, use only RS only for tiling< / li >
< li > etnaviv: blt: set TS dirty after clear< / li >
< li > turnip: add display wsi< / li >
< li > turnip: add x11 wsi< / li >
< li > turnip: implement CmdClearColorImage/CmdClearDepthStencilImage< / li >
< li > turnip: fix sRGB GMEM clear< / li >
< li > util: add missing R8G8B8A8_SRGB format to vk_format_map< / li >
< li > freedreno/regs: update UBWC related bits< / li >
< li > turnip: implement UBWC< / li >
< li > etnaviv: avoid using RS for 64bpp formats< / li >
< li > etnaviv: implement 64bpp clear< / li >
< li > etnaviv: blt: fix partial ZS clears with TS< / li >
< li > etnaviv: support 3d/array/integer formats in texture descriptors< / li >
< li > turnip: fix integer render targets< / li >
< li > freedreno/registers: add missing MH perfcounter enum for a2xx< / li >
< li > freedreno/perfcntrs: add a2xx MH counters< / li >
< li > freedreno/perfcntrs/fdperf: fix u64 print on 32-bit builds< / li >
< li > freedreno/perfcntrs/fdperf: add missing a20x compatible< / li >
< li > freedreno/perfcntrs/fdperf: add missing a2xx case in select_counter< / li >
< li > turnip: fix display wsi fence timing out< / li >
< li > turnip: don' t skip unused attachments when setting up tiling config< / li >
< li > turnip: implement CmdClearAttachments< / li >
< li > turnip: don' t set unused BLIT_DST_INFO bits for GMEM clear< / li >
< li > turnip: MSAA resolve directly from GMEM< / li >
< li > turnip: allow writes to draw_cs outside of render pass< / li >
< li > turnip: add function to allocate aligned memory in a substream cs< / li >
< li > turnip: improve emit_textures< / li >
< li > turnip: implement border color< / li >
< li > turnip: add hw binning< / li >
< li > turnip: fix incorrectly failing assert< / li >
< li > freedreno/ir3: add GLSL_SAMPLER_DIM_SUBPASS to tex_info< / li >
< li > freedreno/registers: add a6xx texture format for stencil sampler< / li >
< li > turnip: fix hw binning render area< / li >
< li > turnip: fix tile layout logic< / li >
< li > turnip: update tile_align_w/tile_align_h< / li >
< li > turnip: set load_layer_id to zero< / li >
< li > turnip: set FRAG_WRITES_SAMPMASK bit< / li >
< li > turnip: fix VK_IMAGE_ASPECT_STENCIL_BIT image view< / li >
< li > turnip: no 8x msaa on 128bpp formats< / li >
< li > turnip: add dirty bit for push constants< / li >
< li > turnip: subpass rework< / li >
< li > turnip: CmdClearAttachments fixes< / li >
< li > turnip: implement subpass input attachments< / li >
< li > etnaviv: remove sRGB formats from format table< / li >
< li > etnaviv: sRGB render target support< / li >
< li > etnaviv: set output mode and saturate bits< / li >
< li > etnaviv: update INT_FILTER choice for GLES3 formats< / li >
< li > etnaviv: disable integer vertex formats on pre-HALTI2 hardware< / li >
< li > etnaviv: remove swizzle from format table< / li >
< li > etnaviv: add missing formats< / li >
< li > etnaviv: add missing vs_needs_z_div handling to NIR backend< / li >
< li > turnip: use single substream cs< / li >
< li > turnip: use common blit path for buffer copy< / li >
< li > turnip: don' t require src image to be set for clear blits< / li >
< li > turnip: implement CmdFillBuffer/CmdUpdateBuffer< / li >
< li > freedreno/ir3: lower mul_2x32_64< / li >
< li > turnip: fix emit_textures for compute shaders< / li >
< li > turnip: remove compute emit_border_color< / li >
< li > turnip: fix emit_ibo< / li >
< li > turnip: change emit_ibo to be like emit_textures< / li >
< li > turnip: remove duplicate A6XX_SP_CS_CONFIG_NIBO< / li >
< li > nir: add option to lower half packing opcodes< / li >
< li > freedreno/ir3: lower pack/unpack ops< / li >
< li > turnip: don' t set LRZ enable at end of renderpass< / li >
< li > freedreno/ir3: update prefetch input_offset when packing inlocs< / li >
< li > turnip: add cache invalidate to fix input attachment cases< / li >
< li > turnip: don' t set SP_FS_CTRL_REG0_VARYING if only fragcoord is used< / li >
< li > freedreno/ir3: fix vertex shader sysvals with pre_assign_inputs< / li >
< li > freedreno/registers: document vertex/instance id offset bits< / li >
< li > freedreno/ir3: support load_base_instance< / li >
< li > turnip: emit base instance vs driver param< / li >
< li > turnip: emit_compute_driver_params fixes< / li >
< li > turnip: compute gmem offsets at renderpass creation time< / li >
< li > turnip: implement secondary command buffers< / li >
< li > nir: fix assign_io_var_locations for vertex inputs< / li >
< li > turnip: minor warning fixes< / li >
< li > util/format: add missing vulkan formats< / li >
< li > turnip: disable B8G8R8 vertex formats< / li >
< li > etnaviv: fix incorrectly failing vertex size assert< / li >
< li > etnaviv: update headers from rnndb< / li >
< li > etnaviv: HALTI2+ instanced draw< / li >
< li > etnaviv: implement gl_VertexID/gl_InstanceID< / li >
< li > etnaviv: remove unnecessary vertex_elements_state_create error checking< / li >
< li > st/mesa: don' t lower YUV when driver supports it natively< / li >
< li > st/mesa: run st_nir_lower_tex_src_plane for lowered xyuv/ayuv< / li >
< li > freedreno/ir3: allow inputs with the same location< / li >
< li > turnip: remove tu_sort_variables_by_location< / li >
< li > turnip: fix array/matrix varyings< / li >
< li > turnip: hook up GetImageDrmFormatModifierPropertiesEXT< / li >
< li > turnip: set linear tiling for scanout images< / li >
< li > vulkan/wsi: remove unused image_get_modifier< / li >
< li > turnip: simplify tu_physical_device_get_format_properties< / li >
< li > etnaviv: implement UBOs< / li >
< li > turnip: hook up cmdbuffer event set/wait< / li >
< p > < / p >
< p > Jordan Justen (7):< / p >
< li > iris: Add IRIS_DIRTY_RENDER_BUFFER state flag< / li >
< li > iris/gen11+: Move flush for render target change< / li >
< li > iris: Allow max dynamic pool size of 2GB for gen12< / li >
< li > intel: Remove unused Tigerlake PCI ID< / li >
< li > iris: Fix some indentation in iris_init_render_context< / li >
< li > iris: Emit CS Stall before Instruction Cache flush for gen12 WA< / li >
< li > anv: Emit CS Stall before Instruction Cache flush for gen12 WA< / li >
< p > < / p >
< p > Jose Maria Casanova Crespo (1):< / p >
< li > v3d: Fix predication with atomic image operations< / li >
< p > < / p >
< p > Juan A. Suarez Romero (3):< / p >
< li > nir/lower_double_ops: relax lower mod()< / li >
< li > Revert " nir/lower_double_ops: relax lower mod()" < / li >
< li > nir/spirv: skip unreachable blocks in Phi second pass< / li >
< p > < / p >
< p > Kai Wasserbäch (4):< / p >
< li > nir: fix unused variable warning in nir_lower_vars_to_explicit_types< / li >
< li > nir: fix unused variable warning in find_and_update_previous_uniform_storage< / li >
< li > nir: fix unused function warning in src/compiler/nir/nir.c< / li >
< li > intel/gen_decoder: Fix unused-but-set-variable warning< / li >
< p > < / p >
< p > Karol Herbst (14):< / p >
< li > nv50/ir: fix crash in isUniform for undefined values< / li >
< li > nir/validate: validate num_components on registers and intrinsics< / li >
< li > nir/serialize: fix vec8 and vec16< / li >
< li > nir/tests: add serializer tests< / li >
< li > nir/tests: MSVC build fix< / li >
< li > spirv: handle UniformConstant for OpenCL kernels< / li >
< li > clover/nir: treat UniformConstant as global memory< / li >
< li > clover/nir: set spirv environment to OpenCL< / li >
< li > clover/spirv: allow Int64 Atomics for supported devices< / li >
< li > nir: handle nir_deref_type_ptr_as_array in rematerialize_deref_in_block< / li >
< li > nv50/ir: implement global atomics and handle it for nir< / li >
< li > nir/serialize: cast swizzle before shifting< / li >
< li > aco: use NIR_MAX_VEC_COMPONENTS instead of 4< / li >
< li > nv50ir/nir: support vec8 and vec16< / li >
< p > < / p >
< p > Kenneth Graunke (57):< / p >
< li > iris: Fix " Force Zero RTA Index Enable" setting again< / li >
< li > nir: Handle image arrays when setting variable data< / li >
< li > Revert " intel/blorp: Fix usage of uninitialized memory in key hashing" < / li >
< li > iris: Properly move edgeflag_out from output list to global list< / li >
< li > iris: Wrap iris_fix_edge_flags in NIR_PASS< / li >
< li > mesa: Handle GL_COLOR_INDEX in _mesa_format_from_format_and_type().< / li >
< li > iris: Change keybox parenting< / li >
< li > iris: Stop mutating the resource in get_rt_read_isl_surf().< / li >
< li > iris: Drop ' old_address' parameter from iris_rebind_buffer< / li >
< li > iris: Create an " iris_surface_state" wrapper struct< / li >
< li > iris: Maintain CPU-side SURFACE_STATE copies for views and surfaces.< / li >
< li > iris: Update SURFACE_STATE addresses when setting sampler views< / li >
< li > iris: Disable VF cache partial address workaround on Gen11+< / li >
< li > driconf, glsl: Add a vs_position_always_invariant option< / li >
< li > drirc: Set vs_position_always_invariant for Shadow of Mordor on Intel< / li >
< li > st/mesa: Add GL_TDFX_texture_compression_FXT1 support< / li >
< li > iris: Map FXT1 texture formats< / li >
< li > meson: Add a " prefer_iris" build option< / li >
< li > main: Change u_mmAllocMem align2 from bytes (old API) to bits (new API)< / li >
< li > meson: Include iris in default gallium-drivers for x86/x86_64< / li >
< li > util: Detect use-after-destroy in simple_mtx< / li >
< li > intel/genxml: Add a partial TCCNTLREG definition< / li >
< li > iris: Enable Gen11 Color/Z write merging optimization< / li >
< li > anv: Enable Gen11 Color/Z write merging optimization< / li >
< li > intel/decoder: Make get_state_size take a full 64-bit address and a base< / li >
< li > iris: Create smaller program keys without legacy features< / li >
< li > iris: Default to X-tiling for scanout buffers without modifiers< / li >
< li > iris: Alphabetize source files after iris_perf.c was added< / li >
< li > drirc: Final Fantasy VIII: Remastered needs allow_higher_compat_version< / li >
< li > iris: Make helper functions to turn iris shader keys into brw keys.< / li >
< li > iris: Fix shader recompile debug printing< / li >
< li > iris: Avoid replacing backing storage for buffers with no contents< / li >
< li > intel: Drop Gen11 WaBTPPrefetchDisable workaround< / li >
< li > st/nir: Optionally unify inputs_read/outputs_written when linking.< / li >
< li > iris: Set nir_shader_compiler_options::unify_interfaces.< / li >
< li > st/mesa: Allow ASTC5x5 fallbacks separately from other ASTC LDR formats.< / li >
< li > iris: Disable ASTC 5x5 support on Gen9 for now.< / li >
< li > iris: Delete remnants of the unimplemented ASTC 5x5 workaround< / li >
< li > iris: Allow HiZ for copy_region sources< / li >
< li > anv: Only enable EWA LOD algorithm when doing anisotropic filtering.< / li >
< li > Revert " nir: assert that nir_lower_tex runs after lowering derefs" < / li >
< li > i965: Simplify brw_get_renderer_string()< / li >
< li > iris: Simplify iris_get_renderer_string()< / li >
< li > intel: Use similar brand strings to the Windows drivers< / li >
< li > intel/compiler: Fix illegal mutation in get_nir_image_intrinsic_image< / li >
< li > iris: Fix export of fences that have already completed.< / li >
< li > st/mesa: Allocate full miplevels if MaxLevel is explicitly set< / li >
< li > iris: Drop some workarounds which are no longer necessary< / li >
< li > anv: Drop some workarounds that are no longer necessary< / li >
< li > intel: Fix aux map alignments on 32-bit builds.< / li >
< li > meson: Prefer ' iris' by default over ' i965' .< / li >
< li > loader: Check if the kernel driver is i915 before loading iris< / li >
< li > iris: Drop ' engine' from iris_batch.< / li >
< li > iris: Make iris_emit_default_l3_config pull devinfo from the batch< / li >
< li > iris: Support multiple chained batches.< / li >
< li > i965: Use brw_batch_references in tex_busy check< / li >
< li > loader: Fix leak of kernel driver name< / li >
< p > < / p >
< p > Kristian Høgsberg (62):< / p >
< li > freedreno/registers: Fix typo< / li >
< li > freedreno/registers: Move SP_PRIMITIVE_CNTL and SP_VS_VPC_DST< / li >
< li > freedreno/registers: Add comments about primitive counters< / li >
< li > freedreno/a6xx: Fix primitive counters again< / li >
< li > freedreno/a6xx: Clear sysmem with CP_BLIT< / li >
< li > freedreno: Add nogmem debug option to force bypass rendering< / li >
< li > freedreno/a6xx: Fix layered texture type enum< / li >
< li > freedreno/a6x: Rename z/s formats< / li >
< li > freedreno/a6xx: Add register offset for STG/LDG< / li >
< li > freedreno/ir3: Emit link map as byte or dwords offsets as needed< / li >
< li > freedreno/ir3: Add load and store intrinsics for global io< / li >
< li > freedreno: Don' t count primitives for patches< / li >
< li > freedreno/ir3: Add ir3 intrinsics for tessellation< / li >
< li > freedreno/ir3: Use imul24 in offset calculations< / li >
< li > freedreno/ir3: Add tessellation field to shader key< / li >
< li > freedreno/ir3: Extend geometry lowering pass to handle tessellation< / li >
< li > freedreno/ir3: Add new synchronization opcodes< / li >
< li > freedreno/ir3: End TES with chsh when using GS< / li >
< li > freedreno/ir3: Implement tess coord intrinsic< / li >
< li > freedreno/ir3: Implement TCS synchronization intrinsics< / li >
< li > freedreno/ir3: Setup inputs and outputs for tessellation stages< / li >
< li > freedreno/ir3: Don' t assume binning shader is always VS< / li >
< li > freedreno/ir3: Pre-color TCS header and primitive ID inputs< / li >
< li > freedreno/ir3: Allocate const space for tessellation parameters< / li >
< li > freedreno/a6xx: Build the right draw command for tessellation< / li >
< li > freedreno/a6xx: Allocate and program tessellation buffer< / li >
< li > freedreno/a6xx: Emit constant parameters for tessellation stages< / li >
< li > freedreno/a6xx: Program state for tessellation stages< / li >
< li > freedreno: Use bypass rendering for tessellation< / li >
< li > freedreno/a6xx: Only set emit.hs/ds when we' re drawing patches< / li >
< li > freedreno/blitter: Save tessellation state< / li >
< li > freedreno/a6xx: Only use merged regs and four quads for VS+FS< / li >
< li > freedreno/a6xx: Turn on tessellation shaders< / li >
< li > freedreno/ir3: Use regid() helper when setting up precolor regs< / li >
< li > freedreno/registers: Remove duplicate register definitions< / li >
< li > freedreno: New struct packing macros< / li >
< li > freedreno/registers: Add 64 bit address registers< / li >
< li > freedreno/a6xx: Drop stale include< / li >
< li > freedreno/a6xx: Include fd6_pack.h in a few files< / li >
< li > freedreno/a6xx: Convert emit_mrt() to OUT_REG()< / li >
< li > freedreno/a6xx: Convert emit_zs() to OUT_REG()< / li >
< li > freedreno/a6xx: Convert VSC pipe setup to OUT_REG()< / li >
< li > freedreno/a6xx: Convert gmem blits to OUT_REG()< / li >
< li > freedreno/a6xx: Convert some tile setup to OUT_REG()< / li >
< li > freedreno/a6xx: Silence warning for unused perf counters< / li >
< li > freedreno/a6xx: Document the CP_SET_DRAW_STATE enable bits< / li >
< li > freedreno/a6xx: Make DEBUG_BLIT_FALLBACK only dump fallbacks< / li >
< li > freedreno: Add debug flag for forcing linear layouts< / li >
< li > freedreno/a6xx: Program sampler swap based on resource tiling< / li >
< li > freedreno/a6xx: Pick blitter swap based on resource tiling< / li >
< li > freedreno/a6xx: Add fd_resource_swap() helper< / li >
< li > freedreno/a6xx: Use blitter for resolve blits< / li >
< li > freedreno/a6xx: RB6_R8G8B8 is actually 32 bit RGBX< / li >
< li > freedreno/a6xx: Use A6XX_SP_2D_SRC_FORMAT_MASK macro< / li >
< li > freedreno/a6xx: Handle srgb blits on the blitter< / li >
< li > freedreno/a6xx: Move handle_rgba_blit() up< / li >
< li > freedreno/a6xx: Rewrite compressed blits in a helper function< / li >
< li > freedreno/a6xx: Set up multisample sysmem MRTs correctly< / li >
< li > st/mesa: Lower vars to ssa and constant prop before gl_nir_lower_buffers< / li >
< li > ir3: Set up full/half register conflicts correctly< / li >
< li > iris: Advertise PIPE_CAP_NATIVE_FENCE_FD< / li >
< li > iris: Print warning and return *out = NULL when fd to syncobj fails< / li >
< p > < / p >
< p > Krzysztof Raszkowski (10):< / p >
< li > gallium/swr: Fix GS invocation issues - Fixed proper setting gl_InvocationID. - Fixed GS vertices output memory overflow.< / li >
< li > gallium/swr: Enable some ARB_gpu_shader5 extensions Enable / add to features.txt: - Enhanced textureGather. - Geometry shader instancing. - Geometry shader multiple streams.< / li >
< li > gallium/swr: Fix crash when use GL_TDFX_texture_compression_FXT1 format.< / li >
< li > gallivm: add TGSI bit arithmetic opcodes support< / li >
< li > gallium/swr: Fix glVertexPointer race condition.< / li >
< li > gallium/swr: Disable showing detected arch message.< / li >
< li > docs/GL4: update gallium/swr features< / li >
< li > gallium/swr: add option for static link< / li >
< li > gallium/swr: Fix gcc 4.8.5 compile error< / li >
< li > gallium/swr: simplify environmental variabled expansion code< / li >
< p > < / p >
< p > Lasse Lopperi (1):< / p >
< li > freedreno/drm: Fix memory leak in softpin implementation< / li >
< p > < / p >
< p > Laurent Carlier (1):< / p >
< li > egl: avoid local modifications for eglext.h Khronos standard header file< / li >
< p > < / p >
< p > Leo Liu (1):< / p >
< li > ac: add missing Arcturus to the info of pc lines< / li >
< p > < / p >
< p > Lepton Wu (2):< / p >
< li > gallium: dri2: Use index as plane number.< / li >
< li > android: mesa: Revert " android: mesa: revert " Enable asm unconditionally" " < / li >
< p > < / p >
< p > Lionel Landwerlin (60):< / p >
< li > intel/dev: set default num_eu_per_subslice on gen12< / li >
< li > intel/perf: add TGL support< / li >
< li > intel/perf: fix Android build< / li >
< li > mesa: check draw buffer completeness on glClearBufferfi/glClearBufferiv< / li >
< li > vulkan: bump headers/registry to 1.1.127< / li >
< li > anv: Properly handle host query reset of performance queries< / li >
< li > anv: implement VK_KHR_separate_depth_stencil_layouts< / li >
< li > mesa: check framebuffer completeness only after state update< / li >
< li > anv: invalidate file descriptor of semaphore sync fd at vkQueueSubmit< / li >
< li > anv: remove list items on batch fini< / li >
< li > anv: detach batch emission allocation from device< / li >
< li > anv: expose timeout helpers outside of anv_queue.c< / li >
< li > anv: move queue init/finish to anv_queue.c< / li >
< li > anv: allow NULL batch parameter to anv_queue_submit_simple_batch< / li >
< li > anv: prepare driver to report submission error through queues< / li >
< li > anv: refcount semaphores< / li >
< li > anv: prepare the driver for delayed submissions< / li >
< li > anv/wsi: signal the semaphore in the acquireNextImage< / li >
< li > anv: implement VK_KHR_timeline_semaphore< / li >
< li > intel/dev: flag the Elkhart Lake platform< / li >
< li > intel/perf: add EHL performance query support< / li >
< li > intel/perf: fix invalid hw_id in query results< / li >
< li > intel/perf: set read buffer len to 0 to identify empty buffer< / li >
< li > intel/perf: take into account that reports read can be fairly old< / li >
< li > intel/perf: simplify the processing of OA reports< / li >
< li > intel/perf: fix improper pointer access< / li >
< li > anv: fix missing gen12 handling< / li >
< li > anv: fix incorrect VMA alignment for CCS main surfaces< / li >
< li > anv: fix fence underlying primitive checks< / li >
< li > anv: fix assumptions about temporary fence payload< / li >
< li > intel/perf: drop batchbuffer flushing at query begin< / li >
< li > i965/iris: perf-queries: don' t invalidate/flush 3d pipeline< / li >
< li > anv: constify pipeline layout in nir passes< / li >
< li > anv: drop unused parameter from apply layout pass< / li >
< li > vulkan/wsi: error out when image fence doesn' t signal< / li >
< li > mesa: avoid triggering assert in implementation< / li >
< li > i965/iris/perf: factor out frequency register capture< / li >
< li > loader: fix close on uninitialized file descriptor value< / li >
< li > anv: don' t close invalid syncfd semaphore< / li >
< li > anv: fix intel perf queries availability writes< / li >
< li > anv: set stencil layout for input attachments< / li >
< li > iris: Implement Gen12 workaround for non pipelined state< / li >
< li > anv: Implement Gen12 workaround for non pipelined state< / li >
< li > anv: only use VkSamplerCreateInfo::compareOp if enabled< / li >
< li > anv: fix pipeline switch back for non pipelined states< / li >
< li > genxml: add new Gen11+ PIPE_CONTROL field< / li >
< li > iris: handle new PIPE_CONTROL field< / li >
< li > iris: implement another workaround for non pipelined states< / li >
< li > anv: implement another workaround for non pipelined states< / li >
< li > intel/perf: expose timestamp begin for mdapi< / li >
< li > intel/perf: report query split for mdapi< / li >
< li > anv: enable VK_KHR_swapchain_mutable_format< / li >
< li > anv: don' t report error with other vendor DRM devices< / li >
< li > anv: ensure prog params are initialized with 0s< / li >
< li > anv/iris: warn gen12 3DSTATE_HS restriction< / li >
< li > intel: Implement Gen12 workaround for array textures of size 1< / li >
< li > isl: drop CCS row pitch requirement for linear surfaces< / li >
< li > isl: add gen12 comment about CCS for linear tiling< / li >
< li > anv: implement gen9 post sync pipe control workaround< / li >
< li > anv: set MOCS on push constants< / li >
< p > < / p >
< p > Luis Mendes (1):< / p >
< li > radv: fix radv secure compile feature breaks compilation on armhf EABI and aarch64< / li >
< p > < / p >
< p > Marco Felsch (1):< / p >
< li > etnaviv: Fix assert when try to accumulate an invalid fd< / li >
< p > < / p >
< p > Marek Olšák (245):< / p >
< li > glsl: encode/decode types using a union with bitfields for readability< / li >
< li > glsl: encode vector_elements and matrix_columns better< / li >
< li > glsl: encode explicit_stride for basic types better< / li >
< li > glsl: encode array types better< / li >
< li > glsl: encode struct/interface types better< / li >
< li > st/mesa: call nir_opt_access only once< / li >
< li > st/mesa: call nir_lower_flrp only once per shader< / li >
< li > compiler: make variable::data::binding unsigned< / li >
< li > nir: pack nir_variable::data::stream< / li >
< li > nir: pack nir_variable::data::xfb_*< / li >
< li > radeonsi: use IR SHA1 as the cache key for the in-memory shader cache< / li >
< li > radeonsi: don' t keep compute shader IR after compilation< / li >
< li > radeonsi: keep serialized NIR instead of nir_shader in si_shader_selector< / li >
< li > nir: pack the rest of nir_variable::data< / li >
< li > nir/serialize: don' t expand 16-bit variable state slots to 32 bits< / li >
< li > nir/serialize: store 32-bit object IDs instead of 64-bit< / li >
< li > nir/serialize: pack nir_variable flags< / li >
< li > mesa: expose SPIR-V extensions in the Compatibility profile too< / li >
< li > util: add blob_finish_get_buffer< / li >
< li > radeonsi/nir: call nir_serialize only once per shader< / li >
< li > radeonsi/nir: fix compute shader crash due to nir_binary == NULL< / li >
< li > glsl/linker: pass shader_info to analyze_clip_cull_usage directly< / li >
< li > compiler: pack shader_info from 160 bytes to 96 bytes< / li >
< li > st/mesa: fix Sanctuary and Tropics by disabling ARB_gpu_shader5 for them< / li >
< li > st/mesa: rename DEBUG_TGSI -> DEBUG_PRINT_IR< / li >
< li > st/mesa: remove \n being only printed in debug builds after printed TGSI< / li >
< li > st/mesa: print TCS/TES/GS/CS TGSI in the right place & keep disk cache enabled< / li >
< li > st/mesa: add ST_DEBUG=nir to print NIR shaders< / li >
< li > st/mesa: remove unused TGSI-only debug printing functions< / li >
< li > gallium/noop: call finalize_nir< / li >
< li > radeonsi/nir: remove dead function temps< / li >
< li > radeonsi/nir: call nir_lower_flrp only once per shader< / li >
< li > radeonsi/nir: don' t lower fma, instead, fuse fma< / li >
< li > mesa: enable glthread for 7 Days To Die< / li >
< li > st/mesa: rename delete_basic_variant -> delete_common_variant< / li >
< li > st/mesa: decrease the size of st_fp_variant_key from 48 to 40 bytes< / li >
< li > st/mesa: start deduplicating some program code< / li >
< li > st/mesa: initialize affected_states and uniform storage earlier in deserialize< / li >
< li > st/mesa: consolidate and simplify code flagging program::affected_states< / li >
< li > st/mesa: trivially merge st_vertex_program into st_common_program< / li >
< li > st/mesa: rename st_common_program to st_program< / li >
< li > st/mesa: cleanups after unification of st_vertex/common program< / li >
< li > st/mesa: rename occurences of stcp to stp to correspond to st_program< / li >
< li > st/mesa: more cleanups after unification of st_vertex/common_program< / li >
< li > st/mesa: subclass st_vertex_program for VP-specific members< / li >
< li > st/mesa: call nir_sweep in st_finalize_nir< / li >
< li > st/mesa: keep serialized NIR instead of nir_shader in st_program< / li >
< li > st/mesa: call nir_serialize only once per shader< / li >
< li > nir: move data.image.access to data.access< / li >
< li > nir/print: only print image.format for image variables< / li >
< li > glsl_to_nir: rename image_access to mem_access< / li >
< li > nir: move data.descriptor_set above data.index for better packing< / li >
< li > nir: don' t use GLenum16 in nir.h< / li >
< li > ac: add radeon_info::num_rings and move ring_type to amd_family.h< / li >
< li > ac: fill num_rings for remaining IPs< / li >
< li > winsys/amdgpu: detect noop dependencies on the same ring correctly< / li >
< li > nir: strip as we serialize to remove the nir_shader_clone call< / li >
< li > nir/serialize: do ctx = {0} instead of manual initializations< / li >
< li > util/blob: add 8-bit and 16-bit reads and writes< / li >
< li > nir/serialize: pack instructions better< / li >
< li > nir/serialize: pack src better and limit the object count to 1M from 1G< / li >
< li > nir/serialize: don' t serialize var-> data for temporaries< / li >
< li > nir/serialize: deduplicate serialized var types by reusing the last unique one< / li >
< li > nir/serialize: try to store a diff in var data locations instead of var data< / li >
< li > nir/serialize: pack load_const with non-64-bit constants better< / li >
< li > nir/serialize: pack 1-component constants into 20 bits if possible< / li >
< li > nir/serialize: pack nir_intrinsic_instr::const_index[] better< / li >
< li > nir/serialize: try to pack two alu srcs into 1 uint32< / li >
< li > nir/serialize: don' t store deref types if not needed< / li >
< li > nir/serialize: don' t serialize mode for deref non-cast instructions< / li >
< li > nir/serialize: try to put deref-> var index into the unused bits of the header< / li >
< li > nir/serialize: cleanup - fold nir_deref_type_var cases into switches< / li >
< li > nir/serialize: try to pack both deref array src into 32 bits< / li >
< li > nir/serialize: remove up to 3 consecutive equal ALU instruction headers< / li >
< li > nir/serialize: reuse the writemask field for 2 src X swizzles of SSA ALU< / li >
< li > nir/serialize: serialize swizzles for vec8 and vec16< / li >
< li > nir/serialize: serialize writemask for vec8 and vec16< / li >
< li > nir/serialize: don' t serialize redundant nir_intrinsic_instr::num_components< / li >
< li > nir/serialize: use 3 unused bits in intrinsic for packed_const_indices< / li >
< li > nir/serialize: support any num_components for remaining instructions< / li >
< li > ac: set swizzled bit in cache policy as a hint not to merge loads/stores< / li >
< li > radeonsi: initialize the per-context compiler on demand< / li >
< li > radeonsi/nir: don' t run si_nir_opts again if there is no change< / li >
< li > st/mesa: don' t serialize all streamout state if there are no SO outputs< / li >
< li > st/mesa: don' t use redundant stp-> state.ir.nir< / li >
< li > st/mesa: don' t call ProgramStringNotify in glsl_to_nir< / li >
< li > st/mesa: propagate gl_PatchVerticesIn from TCS to TES before linking for NIR< / li >
< li > st/mesa: simplify looping over linked shaders when linking NIR< / li >
< li > st/mesa: don' t use ** in the st_nir_link_shaders signature< / li >
< li > st/mesa: add st_variant base class to simplify code for shader variants< / li >
< li > ac/nir: don' t rely on data.patch for tess factors< / li >
< li > radeonsi/nir: implement subgroup system values for SPIR-V< / li >
< li > radeonsi: simplify the interface of get_dw_address_from_generic_indices< / li >
< li > radeonsi: simplify get_tcs_tes_buffer_address_from_generic_indices< / li >
< li > radeonsi/nir: validate is_patch because SPIR-V doesn' t set it for tess factors< / li >
< li > radeonsi/nir: don' t rely on data.patch for tess factors< / li >
< li > radeonsi/nir: fix location_frac handling for TCS outputs< / li >
< li > radeonsi/nir: support interface output types to fix SPIR-V xfb piglits< / li >
< li > radeonsi: enable SPIR-V and GL 4.6 for NIR< / li >
< li > util/driconfig: print ATTENTION if MESA_DEBUG=silent is not set< / li >
< li > radeonsi/gfx10: simplify some duplicated NGG GS code< / li >
< li > radeonsi/gfx10: fix the vertex order for triangle strips emitted by a GS< / li >
< li > llvmpipe: implement TEX_LZ and TXF_LZ opcodes< / li >
< li > gallivm: implement LOAD with CONSTBUF but don' t enable it for llvmpipe< / li >
< li > st/mesa: support UBOs for Selection/Feedback/RasterPos< / li >
< li > st/mesa: save currently bound vertex samplers and sampler views in st_context< / li >
< li > st/mesa: support samplers for Selection/Feedback/RasterPos< / li >
< li > st/mesa: support SSBOs for Selection/Feedback/RasterPos< / li >
< li > st/mesa: support shader images for Selection/Feedback/RasterPos< / li >
< li > st/mesa: use a separate VS variant for the draw module< / li >
< li > st/mesa: remove st_vp_variant::num_inputs< / li >
< li > st/mesa: remove struct st_vp_variant in favor of st_common_variant< / li >
< li > st/mesa: don' t generate VS TGSI if NIR is enabled< / li >
< li > draw, st/mesa: generate TGSI for ffvp/ARB_vp if draw lacks LLVM< / li >
< li > st/mesa: release the draw shader properly to fix driver crashes (iris)< / li >
< li > st/dri: assume external consumers of back buffers can write to the buffers< / li >
< li > radeonsi: enable NIR by default and document GL 4.6 support< / li >
< li > radeonsi/gfx10: disable vertex grouping< / li >
< li > radeonsi/gfx10: simplify the tess_turns_off_ngg condition< / li >
< li > radeonsi: don' t rely on CLEAR_STATE to set PA_SC_GENERIC_SCISSOR_*< / li >
< li > ac: fix ac_get_i1_sgpr_mask for Wave32< / li >
< li > ac: fix the return value in cull_bbox when bbox culling is disabled< / li >
< li > radeonsi: deduplicate ES and GS thread enablement code< / li >
< li > radeonsi: disallow compute-based culling if polygon mode is enabled< / li >
< li > radeonsi: set is_monolithic for VS prologs when the shader is really monolithic< / li >
< li > radeonsi: don' t wrap the VS prolog in if (ES thread) .. endif< / li >
< li > radeonsi/gfx10: don' t insert NGG streamout atomics if they are never used< / li >
< li > radeonsi: allow generating VS prologs with 0 inputs< / li >
< li > radeonsi: fix determining whether the VS prolog is needed< / li >
< li > radeonsi: reset more fields in si_llvm_context_set_ir to fix reusing ctx< / li >
< li > radeonsi/gfx10: fix ngg_get_ordered_id< / li >
< li > amd/addrlib: update to the latest version< / li >
< li > ac/surface: fix an assertion failure on gfx9 in CMASK computation< / li >
< li > radeonsi/gfx10: don' t declare any LDS for NGG if it' s not used< / li >
< li > radeonsi/gfx10: enable NGG passthrough for eligible shaders< / li >
< li > radeonsi/gfx10: improve performance for TES using PrimID but not exporting it< / li >
< li > Revert " u_vbuf: Regard non-constant vbufs with non-instance elements as free" < / li >
< li > winsys/radeon: initialize pte_fragment_size< / li >
< li > radeonsi: preserve the scanout flag for shared resources on gfx9 and gfx10< / li >
< li > radeonsi: ignore PIPE_BIND_SCANOUT for imported textures< / li >
< li > radeonsi: remove the " display_dcc_offset == 0" assertion< / li >
< li > radeonsi: rename SDMA debug flags< / li >
< li > radeonsi: remove broken and unused SI SDMA image copy code< / li >
< li > radeonsi: add AMD_DEBUG=nodmaclear for debugging< / li >
< li > radeonsi: add AMD_DEBUG=nodmacopyimage for debugging< / li >
< li > radeonsi: rename dma_cs -> sdma_cs< / li >
< li > radeonsi: move SI and CIK+ SDMA code into 1 common function for cleanups< / li >
< li > radeonsi: disable SDMA on gfx8 to fix corruption on RX 580< / li >
< li > radeonsi: remove TGSI< / li >
< li > gallium: put u_vbuf_get_caps return values into u_vbuf_caps< / li >
< li > gallium/cso_context: move non-vbuf vertex buffer and element code into helpers< / li >
< li > gallium: bypass u_vbuf if it' s not needed (no fallbacks and no user VBOs)< / li >
< li > ac/gpu_info: always use distributed tessellation on gfx10< / li >
< li > radeonsi: fix monolithic pixel shaders with two-sided colors and SampleMaskIn< / li >
< li > radeonsi: fix context roll tracking in si_emit_shader_vs< / li >
< li > radeonsi: test polygon mode enablement accurately< / li >
< li > radeonsi: determine accurately if line stippling is enabled for performance< / li >
< li > radeonsi: clean up messy si_emit_rasterizer_prim_state< / li >
< li > ac: unify build_sendmsg_gs_alloc_req< / li >
< li > ac: unify primitive export code< / li >
< li > ac/gpu_info: add pc_lines and use it in radeonsi< / li >
< li > ac: add 128-bit bitcount< / li >
< li > ac: add ac_build_s_endpgm< / li >
< li > radeonsi/gfx9: force the micro tile mode for MSAA resolve correctly on gfx9< / li >
< li > radeonsi: rename desc_list_byte_size -> vb_desc_list_alloc_size< / li >
< li > radeonsi: add si_context::num_vertex_elements< / li >
< li > radeonsi: don' t allow draw calls with uninitialized VS inputs< / li >
< li > radeonsi: simplify si_set_vertex_buffers< / li >
< li > ac,radeonsi: increase the maximum number of shader args and return values< / li >
< li > radeonsi: put up to 5 VBO descriptors into user SGPRs< / li >
< li > radeonsi: don' t enable VBOs in user SGPRs if compute-based culling can be used< / li >
< li > radeonsi: fix assertion and other failures in si_emit_graphics_shader_pointers< / li >
< li > radeonsi: actually enable VBOs in user SGPRs< / li >
< li > radeonsi: don' t adjust depth and stencil PS output locations< / li >
< li > radeonsi: rename DBG_NO_TGSI -> DBG_NO_NIR< / li >
< li > radeonsi: remove TGSI from comments< / li >
< li > radeonsi: rename si_shader_info -> si_shader_binary_info< / li >
< li > radeonsi: fork tgsi_shader_info and tgsi_tessctrl_info< / li >
< li > radeonsi: merge si_tessctrl_info into si_shader_info< / li >
< li > radeonsi: clean up si_shader_info< / li >
< li > radeonsi: rename si_compile_tgsi_main -> si_build_main_function< / li >
< li > radeonsi: rename si_shader_create -> si_create_shader_variant for clarity< / li >
< li > radeonsi: fold si_create_function into si_llvm_create_func< / li >
< li > radeonsi: remove always constant ballot_mask_bits from si_llvm_context_init< / li >
< li > radeonsi: move PS LLVM code into si_shader_llvm_ps.c< / li >
< li > radeonsi: separate code computing info for small primitive culling< / li >
< li > ac/cull: don' t read Position.Z if it' s not needed for culling< / li >
< li > radeonsi: make si_insert_input_* functions non-static< / li >
< li > radeonsi: move VS_STATE.LS_OUT_PATCH_SIZE a few bits higher to make space there< / li >
< li > radeonsi/gfx10: separate code for getting edgeflags from the gs_invocation_id VGPR< / li >
< li > radeonsi/gfx10: separate code for determining the number of vertices for NGG< / li >
< li > radeonsi: fix si_build_wrapper_function for compute-based primitive culling< / li >
< li > radeonsi: work around an LLVM crash when using llvm.amdgcn.icmp.i64.i1< / li >
< li > radeonsi: move si_insert_input_* functions< / li >
< li > radeonsi: move tessellation shader code into si_shader_llvm_tess.c< / li >
< li > radeonsi: remove llvm_type_is_64bit< / li >
< li > radeonsi: move geometry shader code into si_shader_llvm_gs.c< / li >
< li > radeonsi: move code for shader resources into si_shader_llvm_resources.c< / li >
< li > radeonsi: remove useless #includes< / li >
< li > radeonsi: merge si_compile_llvm and si_llvm_compile functions< / li >
< li > gallium: add st_context_iface::flush_resource to call FLUSH_VERTICES< / li >
< li > st/dri: do FLUSH_VERTICES before calling flush_resource< / li >
< li > Revert " radeonsi: unbind image before compute clear" < / li >
< li > radeonsi: clean up how internal compute dispatches are handled< / li >
< li > radeonsi: don' t invoke decompression inside internal launch_grid< / li >
< li > radeonsi: fix doubles and int64< / li >
< li > radeonsi: turn an assertion into return in si_nir_store_output_tcs< / li >
< li > ac: add prefix bitcount functions< / li >
< li > ac: add ac_build_readlane without optimization barrier< / li >
< li > radeonsi/gfx10: update comments and remove invalid TODOs< / li >
< li > radeonsi/gfx10: correct VS PrimitiveID implementation for NGG< / li >
< li > radeonsi/gfx10: move s_sendmsg gs_alloc_req to the beginning of shaders< / li >
< li > radeonsi/gfx10: export primitives at the beginning of VS/TES< / li >
< li > radeonsi/gfx10: merge main and pos/param export IF blocks into one if possible< / li >
< li > radeonsi/gfx10: don' t initialize VGPRs not used by NGG passthrough< / li >
< li > radeonsi/gfx10: move GE_PC_ALLOC setting to shader states< / li >
< li > radeonsi/gfx10: implement NGG culling for 4x wave32 subgroups< / li >
< li > ac: add helper ac_build_triangle_strip_indices_to_triangle< / li >
< li > radeonsi/gfx10: rewrite late alloc computation< / li >
< li > radeonsi/gfx10: enable GS fast launch for triangles and strips with NGG culling< / li >
< li > radeonsi: use ctx-> ac. for types and integer constants< / li >
< li > radeonsi: move non-LLVM code out of si_shader_llvm.c< / li >
< li > radeonsi: move VS shader code into si_shader_llvm_vs.c< / li >
< li > radeonsi: move si_shader_llvm_build.c content into si_shader_llvm.c< / li >
< li > radeonsi: minor cleanup in si_shader_internal.h< / li >
< li > radeonsi: move si_nir_build_llvm into si_shader_llvm.c< / li >
< li > radeonsi: fold si_shader_context_set_ir into si_build_main_function< / li >
< li > radeonsi: move more LLVM functions into si_shader_llvm.c< / li >
< li > radeonsi: make si_compile_llvm return bool< / li >
< li > radeonsi: make si_compile_shader return bool< / li >
< li > radeonsi: change prototypes of si_is_multi_part_shader & si_is_merged_shader< / li >
< li > radeonsi: separate LLVM compilation from non-LLVM code< / li >
< li > util/simple_mtx: add a missing include to get ASSERTED< / li >
< li > gallium/util: add a cache of live shaders for shader CSO deduplication< / li >
< li > radeonsi: use the live shader cache< / li >
< li > radeonsi: restructure si_shader_cache_load_shader< / li >
< li > radeonsi: print shader cache stats with AMD_DEBUG=cache_stats< / li >
< li > radeonsi: expose shader cache stats to the HUD< / li >
< li > radeonsi: make screen available to shader part compilation< / li >
< li > radeonsi: fix a regression since the addition of si_shader_llvm_vs.c< / li >
< li > Revert " winsys/amdgpu: Close KMS handles for other DRM file descriptions" < / li >
< li > Revert " winsys/amdgpu: Re-use amdgpu_screen_winsys when possible" < / li >
< li > radeonsi: don' t report that multi-plane formats are supported< / li >
< li > radeonsi: fix the DCC MSAA bug workaround< / li >
< li > radeonsi: don' t wait for shader compilation to finish when destroying a context< / li >
< p > < / p >
< p > Marek Vasut (5):< / p >
< li > etnaviv: Replace bitwise OR with logical OR< / li >
< li > etnaviv: tgsi: Fix gl_FrontFacing support< / li >
< li > etnaviv: Report correct number of vertex buffers< / li >
< li > etnaviv: Do not filter out PIPE_FORMAT_S8_UINT_Z24_UNORM on pre-HALTI2< / li >
< li > etnaviv: Destroy rsc-> pending_ctx set in etna_resource_destroy()< / li >
< p > < / p >
< p > Mark Janes (3):< / p >
< li > Revert " st/mesa: call nir_serialize only once per shader" < / li >
< li > Revert " st/mesa: keep serialized NIR instead of nir_shader in st_program" < / li >
< li > iris: separating out common perf code< / li >
< p > < / p >
< p > Markus Wick (3):< / p >
< li > mapi/glapi: Generate sizeof() helpers instead of fixed sizes.< / li >
< li > mesa/glthread: Implement ARB_multi_bind.< / li >
< li > drirc: Enable glthread for dolphin/citra/yuzu.< / li >
< p > < / p >
< p > Martin Fuzzey (1):< / p >
< li > etnaviv: update Android build files< / li >
< p > < / p >
< p > Mathias Fröhlich (1):< / p >
< li > egl: Implement getImage/putImage on pbuffer swrast.< / li >
< p > < / p >
< p > Matt Turner (19):< / p >
< li > intel/compiler: Use ARRAY_SIZE()< / li >
< li > intel/compiler: Extract GEN_* macros into separate file< / li >
< li > intel/compiler: Split has_64bit_types into float/int< / li >
< li > intel/compiler: Don' t disassemble align1 3-src operands on Gen < 10< / li >
< li > intel/compiler: Limit compaction unit tests to specific gens< / li >
< li > intel/compiler: Add NF some more places< / li >
< li > intel/compiler: Add a INVALID_{,HW_}REG_TYPE macros< / li >
< li > intel/compiler: Split hw_type tables< / li >
< li > intel/compiler: Handle invalid inputs to brw_reg_type_to_*()< / li >
< li > intel/compiler: Handle invalid compacted immediates< / li >
< li > intel/compiler: Factor out brw_validate_instruction()< / li >
< li > intel/compiler: Validate some instruction word encodings< / li >
< li > intel/compiler: Add unit tests for new EU validation checks< / li >
< li > intel/compiler: Validate fuzzed instructions< / li >
< li > intel/compiler: Test compaction on Gen < = 12< / li >
< li > gitlab-ci: Skip ext_timer_query/time-elapsed< / li >
< li > intel/compiler: Move Gen4/5 rounding to visitor< / li >
< li > util: Explain BITSET_FOREACH_SET params< / li >
< li > util: Remove tmp argument from BITSET_FOREACH_SET macro< / li >
< p > < / p >
< p > Mauro Rossi (9):< / p >
< li > android: aco: fix Lower to CSSA< / li >
< li > android: radeonsi: fix build error due to wrong u_format.csv file path< / li >
< li > android: util/format: fix include path list< / li >
< li > android: radeonsi: fix build after vl refactoring (v2)< / li >
< li > android: nir: add a load/store vectorization pass< / li >
< li > android: util: Add a mapping from VkFormat to PIPE_FORMAT.< / li >
< li > android: radv: fix vk_format_table.c generated source build< / li >
< li > android: radeonsi,ac: fix building error due to ac changes< / li >
< li > android: radv: build radv_shader_args.c< / li >
< p > < / p >
< p > Michel Dänzer (36):< / p >
< li > gitlab-ci: Set arm job CCACHE_DIR properly< / li >
< li > gitlab-ci: Use separate arm64 build/test docker images< / li >
< li > gitlab-ci: Don' t build libdrm for ARM< / li >
< li > gitlab-ci: Use ninja -j4 for building dEQP< / li >
< li > gitlab-ci: Move artifact preparation to separate script< / li >
< li > gitlab-ci: Share dEQP build process between x86 & ARM test image scripts< / li >
< li > gitlab-ci: Sort packages in debian-install.sh< / li >
< li > gitlab-ci: Run piglit tests with llvmpipe< / li >
< li > gitlab-ci: Use separate docker images for x86 build/test jobs< / li >
< li > gitlab-ci: Delete install/bin from artifacts as well< / li >
< li > gitlab-ci: Document that ci-templates refs must be in sync< / li >
< li > gitlab-ci: Use functional container job names< / li >
< li > gitlab-ci: Rename container install scripts to match job names (better)< / li >
< li > gitlab-ci: Organize images using new REPO_SUFFIX templates feature< / li >
< li > gitlab-ci: Directly use host-mapped directory for ccache< / li >
< li > gitlab-ci: Stop reporting piglit test results via JUnit< / li >
< li > gitlab-ci: Stop storing piglit test results as JUnit< / li >
< li > gitlab-ci: Put HTML summary in artifacts for failed piglit jobs< / li >
< li > gitlab-ci: Update to current ci-templates master< / li >
< li > gitlab-ci: Run piglit glslparser & quick_shader tests separately< / li >
< li > glsl/tests: Use splitlines() instead of strip()< / li >
< li > gitlab-ci: Use the common run policy for LAVA jobs as well again< / li >
< li > gitlab-ci: Overhaul job run policy< / li >
< li > gitlab-ci: Don' t exclude any piglit quick_shader tests< / li >
< li > gitlab-ci: Test against LLVM / clang 9 on x86< / li >
< li > gitlab-ci: Stop using manual jobs for merge requests< / li >
< li > gitlab-ci: Set GIT_STRATEGY to none for the dummy job< / li >
< li > gitlab-ci: Use single if for manual job rules entry< / li >
< li > winsys/amdgpu: Keep a list of amdgpu_screen_winsyses in amdgpu_winsys< / li >
< li > winsys/amdgpu: Keep track of retrieved KMS handles using hash tables< / li >
< li > winsys/amdgpu: Only re-export KMS handles for different DRM FDs< / li >
< li > util: Add os_same_file_description helper< / li >
< li > winsys/amdgpu: Re-use amdgpu_screen_winsys when possible< / li >
< li > winsys/amdgpu: Close KMS handles for other DRM file descriptions< / li >
< li > winsys/amdgpu: Re-use amdgpu_screen_winsys when possible< / li >
< li > winsys/amdgpu: Close KMS handles for other DRM file descriptions< / li >
< p > < / p >
< p > Michel Zou (3):< / p >
< li > Meson: Check for dladdr with MinGW< / li >
< li > disk_cache_get_function_timestamp: check for dladdr< / li >
< li > Meson: Add llvm> =9 modules< / li >
< p > < / p >
< p > Miguel Casas-Sanchez (1):< / p >
< li > i965: Ensure that all 2101010 image imports can pass framebuffer completeness.< / li >
< p > < / p >
< p > Nanley Chery (3):< / p >
< li > gallium/dri2: Fix creation of multi-planar modifier images< / li >
< li > gallium: Store the image format in winsys_handle< / li >
< li > iris: Fix import of multi-planar surfaces with modifiers< / li >
< p > < / p >
< p > Nataraj Deshpande (1):< / p >
< li > egl/android: Restrict minimum triple buffering for android color_buffers< / li >
< p > < / p >
< p > Nathan Kidd (1):< / p >
< li > llvmpipe: Check thread creation errors< / li >
< p > < / p >
< p > Neha Bhende (3):< / p >
< li > st/mesa: release tgsi tokens for shader states< / li >
< li > svga: fix size of format_conversion_table[]< / li >
< li > svga: Use pipe_shader_state_from_tgsi to set shader state< / li >
< p > < / p >
< p > Neil Armstrong (3):< / p >
< li > Add support for T820 CI Jobs< / li >
< li > ci: Remove T820 from CI temporarily< / li >
< li > gitlab-ci/lava: add pipeline information in the lava job name< / li >
< p > < / p >
< p > Neil Roberts (9):< / p >
< li > nir/opcodes: Add a helper function to generate the comparison binops< / li >
< li > nir/opcodes: Add a helper function to generate reduce opcodes< / li >
< li > nir: Add a 16-bit bool type< / li >
< li > nir: Add a 8-bit bool type< / li >
< li > nir/lower_alu_to_scalar: Support lowering 8- and 16-bit reduce ops< / li >
< li > freedreno/ir3: Support 16-bit comparison instructions< / li >
< li > freedreno/ir3: Add implementation of nir_op_b16csel< / li >
< li > freedreno/ir3: Implement f2b16 and i2b16< / li >
< li > freedreno/ir3: Enabling lowering 16-bit flrp< / li >
< p > < / p >
< p > Paul Cercueil (5):< / p >
< li > kmsro: Extend to include ingenic-drm< / li >
< li > u_vbuf: Mark vbufs incompatible if more were requested than HW supports< / li >
< li > u_vbuf: Only create driver CSO if no incompatible elements< / li >
< li > u_vbuf: Regard non-constant vbufs with non-instance elements as free< / li >
< li > u_vbuf: Return true in u_vbuf_get_caps if nb of vbufs is below minimum< / li >
< p > < / p >
< p > Paul Gofman (1):< / p >
< li > state_tracker: Handle texture view min level in st_generate_mipmap()< / li >
< p > < / p >
< p > Paulo Zanoni (2):< / p >
< li > intel/compiler: remove the operand restriction for src1 on GLK< / li >
< li > intel/compiler: fix nir_op_{i,u}*32 on ICL< / li >
< p > < / p >
< p > Peng Huang (1):< / p >
< li > radeonsi: make si_fence_server_signal flush pipe without work< / li >
< p > < / p >
< p > Philipp Sieweck (1):< / p >
< li > svga: check return value of define_query_vgpu{9,10}< / li >
< p > < / p >
< p > Pierre Moreau (4):< / p >
< li > compiler/spirv: Fix uses of gnu struct = {} extension< / li >
< li > include/CL: Update OpenCL headers to latest< / li >
< li > clover: Use the dispatch table type from the OpenCL headers< / li >
< li > clover/meson: Define OpenCL header macros< / li >
< p > < / p >
< p > Pierre-Eric Pelloux-Prayer (54):< / p >
< li > radeonsi: tell the shader disk cache what IR is used< / li >
< li > mesa: enable msaa in clear_with_quad if needed< / li >
< li > mesa: pass vao as a function paramter< / li >
< li > mesa: add EXT_dsa glVertexArray* functions declarations< / li >
< li > mesa: rework _mesa_lookup_vao_err to allow usage from EXT_dsa< / li >
< li > mesa: add vao/vbo lookup helper for EXT_dsa< / li >
< li > mesa: add EXT_dsa glVertexArray* functions implementation< / li >
< li > mesa: add gl_vertex_array_object parameter to client state helpers< / li >
< li > mesa: add EXT_dsa glEnableVertexArrayEXT / glDisableVertexArrayEXT< / li >
< li > mesa: add EXT_dsa EnableVertexArrayAttribEXT / DisableVertexArrayAttribEXT< / li >
< li > mesa: extract helper function from _mesa_GetPointerv< / li >
< li > mesa: add EXT_dsa glGetVertexArray* 4 functions< / li >
< li > mesa: fix call to _mesa_lookup_vao_err< / li >
< li > radeonsi: fix shader disk cache key< / li >
< li > radeonsi: enable mesa_glthread for GfxBench< / li >
< li > mesa: update features.txt to reflect EXT_dsa status< / li >
< li > mesa: add ARB_framebuffer_no_attachments named functions< / li >
< li > mesa: add ARB_vertex_attrib_64bit VertexArrayVertexAttribLOffsetEXT< / li >
< li > mesa: add ARB_clear_buffer_object named functions< / li >
< li > mesa: add ARB_gpu_shader_fp64 selector-less functions< / li >
< li > mesa: add ARB_instanced_arrays EXT_dsa function< / li >
< li > mesa: add ARB_texture_buffer_range glTextureBufferRangeEXT function< / li >
< li > mesa: implement ARB_texture_storage_multisample + EXT_dsa functions< / li >
< li > mesa: extend vertex_array_attrib_format to support EXT_dsa< / li >
< li > mesa: add ARB_vertex_attrib_binding glVertexArray* functions< / li >
< li > mesa: add ARB_sparse_buffer NamedBufferPageCommitmentEXT function< / li >
< li > mesa: enable EXT_direct_state_access< / li >
< li > mesa: fix warning in 32 bits build< / li >
< li > radeonsi: implement sdma for GFX9< / li >
< li > radeonsi: display cs blit count for AMD_DEBUG=testdma< / li >
< li > radeonsi: use gfx9.surf_offset to compute texture offset< / li >
< li > radeonsi: fix multi plane buffers creation< / li >
< li > radeonsi: dcc dirty flag< / li >
< li > st/mesa: add a notify_before_flush callback param to flush< / li >
< li > st/dri: use st-> flush callback to flush the backbuffer< / li >
< li > radeonsi: disable dcc for 2x MSAA surface and bpe < 4< / li >
< li > gallium: refuse to create buffers larger than UINT32_MAX< / li >
< li > radeon/vcn2: enable rate control for hevc encoding< / li >
< li > radeonsi: check ctx-> sdma_cs before using it< / li >
< li > radeonsi: release saved resources in si_retile_dcc< / li >
< li > radeonsi: release saved resources in si_compute_expand_fmask< / li >
< li > radeonsi: release saved resources in si_compute_clear_render_target< / li >
< li > radeonsi: release saved resources in si_compute_copy_image< / li >
< li > radeonsi: release saved resources in si_compute_clear_12bytes_buffer< / li >
< li > radeonsi: release saved resources in si_compute_do_clear_or_copy< / li >
< li > radeonsi: fix fmask expand compute shader< / li >
< li > radeonsi: make sure fmask expand is done if needed< / li >
< li > radeonsi: unbind image before compute clear< / li >
< li > radeonsi: drop the negation from fmask_is_not_identity< / li >
< li > util: call bind_sampler_states before setting sampler_views< / li >
< li > radeonsi: move AMD_DEBUG tests to AMD_TEST< / li >
< li > docs: document AMD_DEBUG variable< / li >
< li > radeonsi: stop using the VM_ALWAYS_VALID flag< / li >
< li > radeonsi/ngg: add VGT_FLUSH when enabling fast launch< / li >
< p > < / p >
< p > Prodea Alexandru-Liviu (2):< / p >
< li > Meson: Remove lib prefix from graw and osmesa when building with Mingw. Also remove version sufix from osmesa swrast on Windows.< / li >
< li > Appveyor: Quickly fix meson build. As this required use of Python 3.8, mako module also had to be updated.< / li >
< p > < / p >
< p > Qiang Yu (3):< / p >
< li > lima: sync lima_drm.h with kernel< / li >
< li > lima: create heap buffer with new interface if available< / li >
< li > lima: add noheap debug option< / li >
< p > < / p >
< p > Rafael Antognolli (23):< / p >
< li > intel/isl: Add MOCS settings to isl_device.< / li >
< li > anv: Use mocs settings from isl_dev.< / li >
< li > iris: Use mocs from isl_dev.< / li >
< li > intel: Add workaround for stencil state.< / li >
< li > intel/genxml: Add 3DSTATE_CONSTANT_ALL packet.< / li >
< li > intel/aubinator: Decode 3DSTATE_CONSTANT_ALL.< / li >
< li > intel/blorp: Use 3DSTATE_CONSTANT_ALL to setup push constants.< / li >
< li > iris: Rework push constants emitting code.< / li >
< li > iris: Use 3DSTATE_CONSTANT_ALL when possible.< / li >
< li > anv: Move gen8+ push constant packet workaround.< / li >
< li > anv: Add get_push_range_address() helper.< / li >
< li > anv: Move code for emitting push constants into its own function.< / li >
< li > anv: Use 3DSTATE_CONSTANT_ALL when possible.< / li >
< li > iris: Add restriction to 3DSTATE_CONSTANT_ packets.< / li >
< li > util/os_socket: Add socket related functions.< / li >
< li > vulkan/overlay: Add a control socket.< / li >
< li > vulkan/overlay: Add support for a control socket.< / li >
< li > vulkan/overlay: Add a command to start capturing data to a file.< / li >
< li > vulkan/overlay: Add basic overlay control script.< / li >
< li > vulkan/overlay: Update docs.< / li >
< li > iris: Implement WA for push constants.< / li >
< li > utils/os_socket: Define ssize_t on windows.< / li >
< li > intel: Load the driver even if I915_PARAM_REVISION is not found.< / li >
< p > < / p >
< p > Rhys Perry (131):< / p >
< li > radv: adjust loop unrolling heuristics for int64< / li >
< li > aco: add Instruction::usesModifiers() and add more checks in the optimizer< / li >
< li > radv: fix radv_nir_get_max_workgroup_size when nir=NULL< / li >
< li > aco: use DPP instead of exec modification when lowering GFX10 shuffles< / li >
< li > aco: fix shuffle with uniform operands< / li >
< li > nir/divergence: improve DA of shuffle< / li >
< li > aco: fix read_invocation with VGPR lane index< / li >
< li > aco: don' t propagate vgprs into v_readlane/v_writelane< / li >
< li > aco: combine read_invocation and shuffle implementations< / li >
< li > radv: enable FP16/FP64 denormals earlier and only for LLVM< / li >
< li > aco: don' t combine literals into v_cndmask_b32/v_subb/v_addc< / li >
< li > aco: fix 64-bit fsign with 0< / li >
< li > aco: implement VK_KHR_shader_float_controls< / li >
< li > aco: refactor reduction lowering helpers< / li >
< li > aco: implement 64-bit integer reductions< / li >
< li > radv/aco: enable VK_KHR_shader_subgroup_extended_types< / li >
< li > nir: make nir_variable::{num_members,num_state_slots} a uint16_t< / li >
< li > nir: add nir_variable::index and nir_index_vars< / li >
< li > nir/large_constants: use nir_index_vars and nir_variable::index< / li >
< li > docs: update features.txt for RADV< / li >
< li > aco: improve waitcnt insertion around loops< / li >
< li > aco: fix copy+paste error< / li >
< li > aco: fix waitcnts for barriers at block ends< / li >
< li > nir: add nir_num_variable_modes and nir_var_mem_push_const< / li >
< li > radv: set alignment for load_ssbo/store_ssbo in meta shaders< / li >
< li > nir: add a load/store vectorization pass< / li >
< li > nir: add load/store vectorizer tests< / li >
< li > aco: enable load/store vectorizer< / li >
< li > aco: allow constant offsets for global/scratch instructions on GFX10< / li >
< li > aco: set dlc/glc correctly for image loads< / li >
< li > aco: propagate p_wqm on an image_sample' s coordinate p_create_vector< / li >
< li > aco: fix i2i64< / li >
< li > aco: fix incorrect cast in parse_wait_instr()< / li >
< li > aco: add v_nop inbetween exec write and VMEM/DS/FLAT< / li >
< li > aco: improve WAR hazard workaround with > 64bit stores< / li >
< li > aco: fix GFX10 opcodes for some global/flat atomics< / li >
< li > aco: fix assembly of FLAT/GLOBAL atomics< / li >
< li > aco: fix SADDR with FLAT on GFX10< / li >
< li > aco: don' t enable store_global for helper invocations< / li >
< li > aco: improve FLAT/GLOBAL scheduling< / li >
< li > aco: implement global atomics< / li >
< li > ac/llvm: fix pointer type for global atomics< / li >
< li > ac/llvm: improve sync scope for global atomics< / li >
< li > radv: set writes_memory for global memory stores/atomics< / li >
< li > aco: validate the CFG< / li >
< li > aco: handle loop exit and IF merge phis with break/discard< / li >
< li > aco: fix block_kind_discard s_andn2 definition to exec< / li >
< li > nir/lower_io_to_vector: don' t create arrays when not needed< / li >
< li > nir/load_store_vectorize: fix combining stores with aliasing loads between< / li >
< li > aco/wave32: fix comparison optimizations< / li >
< li > aco: improve jump threading with wave32< / li >
< li > aco: fix vgpr alloc granule with wave32< / li >
< li > aco: limit register usage for large work groups< / li >
< li > aco: set vm for pos0 exports on GFX10< / li >
< li > aco: fix imageSize()/textureSize() with large buffers on GFX8< / li >
< li > aco: fix uninitialized data in the binary< / li >
< li > aco: handle VOP3 modifiers when combining a constant comparison' s NaN test< / li >
< li > aco: handle omod successors with the constant in the first operand< / li >
< li > aco: check usesModifiers() when identifying a neg/abs< / li >
< li > aco: better handle neg/abs of sgprs< / li >
< li > aco: set exec_potentially_empty for demotes< / li >
< li > aco: don' t DCE atomics with return values< / li >
< li > aco: disable add combining for ds_swizzle_b32< / li >
< li > aco: check if multiplication/clamp is live when applying output modifier< / li >
< li > nir/divergence: handle load_primitive_id in GS< / li >
< li > nir/lower_gs_intrinsics: add option for per-stream counts< / li >
< li > aco: update IR validator< / li >
< li > aco: apply literals to split mads< / li >
< li > aco: combine two sgprs into a VALU if they' re the same< / li >
< li > aco: improve can_use_VOP3()< / li >
< li > aco: rewrite literal combining< / li >
< li > aco: rewrite apply_sgprs()< / li >
< li > aco: add check_vop3_operands()< / li >
< li > aco: be more careful with literals in combine_salu_{n2,lshl_add}< / li >
< li > aco: follow through temporary when merging tests into constant comparisons< / li >
< li > aco: allow applying two sgprs to an instruction< / li >
< li > aco: allow an extra SGPR with multiple uses to be applied to VOP3< / li >
< li > aco: take advantage of GFX10' s constant bus limit and VOP3 literals< / li >
< li > aco: improve creation of v_madmk_f32/v_madak_f32< / li >
< li > aco: fix clamp optimization< / li >
< li > aco: improve clamp optimization< / li >
< li > aco: add min(-max(), ) and max(-min(), ) optimization< / li >
< li > aco: don' t move literal to reg when making an instruction VOP3 on GFX10< / li >
< li > aco: allow input modifiers on v_cndmask_b32< / li >
< li > aco: replace extract_vector with copies< / li >
< li > aco: improve readfirstlane after uniform LDS loads< / li >
< li > aco: add integer min/max to can_swap_operands< / li >
< li > nir/sink,nir/move: move/sink load_per_vertex_input< / li >
< li > nir/sink,nir/move: move/sink nir_op_mov< / li >
< li > nir/algebraic: a & ~(a > > 31) -> imax(a, 0)< / li >
< li > aco: fix stack buffer overflow in apply_sgprs()< / li >
< li > aco: fix fall-through test in try_remove_simple_block() with back-edges< / li >
< li > aco: fix operand kill flags when a temporary is used more than once< / li >
< li > aco: fix off-by-one error when initializing sgpr_live_in< / li >
< li > radv: move gs copy shader creation before other variants< / li >
< li > aco: improve support for s_sendmsg< / li >
< li > radv/aco,aco: implement GS on GFX9+< / li >
< li > aco: implement GS on GFX7-8< / li >
< li > radv/aco: allow ACO for GS< / li >
< li > aco: explicitly mark end blocks for exports< / li >
< li > aco: remove needs_instance_id< / li >
< li > aco: implement GS copy shaders< / li >
< li > radv/aco: use ACO for GS copy shaders< / li >
< li > aco: use nir_move_copies< / li >
< li > aco: fix WaR check for > 64-bit FLAT/GLOBAL instructions< / li >
< li > aco: fix operand to scc when selecting SGPR ufind_msb/ifind_msb< / li >
< li > aco: always add sgprs to sgpr_ids when choosing literals< / li >
< li > aco: fix literal application with v_cndmask_b32/v_addc_co_u32/etc< / li >
< li > amd/common,radv: move vertex_format_table to ac_shader_util.{h,c}< / li >
< li > aco: rework vertex fetching a bit< / li >
< li > aco: skip unused channels at the start when fetching vertices< / li >
< li > aco: handle unaligned vertex fetch on GFX10< / li >
< li > aco: value-number MUBUF instructions< / li >
< li > aco: use MUBUF in some situations instead of splitting vertex fetches< / li >
< li > aco: fix rebase error from GS copy shader support< / li >
< li > aco: ensure predecessors' p_logical_end is in WQM when a p_phi is in WQM< / li >
< li > aco: run p_wqm instructions in WQM< / li >
< li > nir/algebraic: add patterns for a > > #b < < #b< / li >
< li > nir/algebraic: add some half packing optimizations< / li >
< li > aco: fix target calculation when vgpr spilling introduces sgpr spilling< / li >
< li > aco: don' t consider loop header blocks branch blocks in add_coupling_code< / li >
< li > aco: don' t update demand in add_coupling_code() for loop headers< / li >
< li > aco: only create parallelcopy to restore exec at loop exit if needed< / li >
< li > aco: don' t always add logical edges from continue_break blocks to headers< / li >
< li > aco: error when block has no logical preds but VGPRs are live at the start< / li >
< li > aco: set exec_potentially_empty after continues/breaks in nested IFs< / li >
< li > aco: improve assertion at the end of spiller< / li >
< li > aco: fill reg_demand with sensible information in add_coupling_code()< / li >
< li > aco: parallelcopy exec mask before s_wqm< / li >
< li > aco: fix exec mask consistency issues< / li >
< li > aco: fix gfx10_wave64_bpermute< / li >
< p > < / p >
< p > Ricardo Garcia (1):< / p >
< li > anv: Unify GetDeviceQueue and GetDeviceQueue2< / li >
< p > < / p >
< p > Rob Clark (89):< / p >
< li > freedreno/ir3: split pre-coloring to it' s own function< / li >
< li > freedreno/ir3: use SSA flag on dest register too< / li >
< li > freedreno/ir3: ir3_print tweaks< / li >
< li > freedreno/ir3/ra: move regs_count==0 check< / li >
< li > freedreno/ir3/ra: remove ir print after livein/out< / li >
< li > freedreno/ir3: remove obsolete comment< / li >
< li > freedreno/a3xx: fix SP_FS_MRT_REG.HALF_PRECISION< / li >
< li > freedreno/a4xx: fix SP_FS_MRT_REG.HALF_PRECISION< / li >
< li > freedreno/ir3: sync disasm changes from envytools< / li >
< li > freedreno/ir3: also track # of nops for shader-db< / li >
< li > freedreno: fix eglDupNativeFenceFD error< / li >
< li > freedreno/ir3: fix valgrind complaint with STLW< / li >
< li > freedreno/ir3: remove half-precision output< / li >
< li > freedreno/ir3: rename fanin/fanout to collect/split< / li >
< li > freedreno/ir3: remove impossible condition< / li >
< li > freedreno/ir3: add input/output iterators< / li >
< li > freedreno/ir3: show input/output wrmask' s in disasm< / li >
< li > freedreno/ir3: helper to print ir if debug enabled< / li >
< li > freedreno/ir3: remove first-vertex sysval< / li >
< li > freedreno/ir3: simplify creating sysval inputs< / li >
< li > freedreno/ir3: re-work shader inputs/outputs< / li >
< li > freedreno/ir3: only tex instructions have wrmask< / li >
< li > freedreno/ir3: fix gpu hang with pre-fs-tex-fetch< / li >
< li > freedreno/ir3: legalize cleanups< / li >
< li > freedreno/ir3: remove unused parameter< / li >
< li > freedreno/perfcntrs: small cleanup< / li >
< li > freedreno/perfcntrs: remove gallium dependencies< / li >
< li > freedreno/perfcntrs: move to shared location< / li >
< li > freedreno/perfcntrs: add accessor to get per-gen tables< / li >
< li > freedreno/perfctrs/a2xx: move CP to be first group< / li >
< li > freedreno/perfcntrs/a6xx: remove RBBM counters< / li >
< li > freedreno/perfcntrs: add fdperf< / li >
< li > freedreno/perfctrs/fdperf: periodically restore counters< / li >
< li > gitlab-ci: update deqp build so we can generate xml< / li >
< li > gitlab-ci/deqp: preserve full list of unexpected results< / li >
< li > gitlab-ci/deqp: preserve caselists for blocks with fails< / li >
< li > gitlab-ci/deqp: detect and report flakes< / li >
< li > gitlab-ci: bump arm test container< / li >
< li > gitlab-ci/deqp: generate xml results for fails/flakes< / li >
< li > gitlab-ci/deqp: generate junit results< / li >
< li > gitlab-ci/freedreno/a6xx: remove most of the flakes< / li >
< li > freedreno: use rsc-> slice accessor everywhere< / li >
< li > freedreno: switch to layout helper< / li >
< li > gitlab-ci: disable junit results for deqp< / li >
< li > freedreno/ir3: remove store_output lowered to store_shared_ir3< / li >
< li > freedreno/ir3: fix neverball assert in case of unused VS inputs< / li >
< li > nir/lower_clip: Fix incorrect driver loc for clipdist outputs< / li >
< li > freedreno/fdperf: use drmOpen()< / li >
< li > freedreno/a6xx: disable LRZ when blending< / li >
< li > freedreno/a5xx+a6xx: split LRZ layout to per-gen< / li >
< li > freedreno/a6xx: fix LRZ layout< / li >
< li > freedreno/a6xx: fix LRZ logic< / li >
< li > freedreno/a6xx: enable LRZ by default< / li >
< li > spirv: add OpLifetime*< / li >
< li > freedreno/ir3: add last-baryf shaderdb stat< / li >
< li > freedreno/ir3: add scheduler traces< / li >
< li > freedreno/ir3: add iterator macros< / li >
< li > freedreno/a6xx: fix OUT_REG() vs growable cmdstream< / li >
< li > nir+vtn: vec8+vec16 support< / li >
< li > freedreno/ir3: fix flat shading again< / li >
< li > nir: assert that nir_lower_tex runs after lowering derefs< / li >
< li > mesa/st: lower samplers before nir_lower_tex< / li >
< li > freedreno/ir3: rename instructions< / li >
< li > gitlab-ci: fix missing caselist.css/xsl< / li >
< li > freedreno/a6xx: limit scratch/debug markers to debug builds< / li >
< li > freedreno/a6xx: cleanup rasterizer state< / li >
< li > freedreno/a6xx: separate rast stateobj for prim restart< / li >
< li > freedreno/a6xx: drop a few more per-draw registers< / li >
< li > freedreno/a6xx: move dynamic program state to streaming stateobj< / li >
< li > freedreno/a6xx: add PROG_FB_RAST stateobj< / li >
< li > freedreno/drm: fix invalid-cmdstream-size with older kernels< / li >
< li > freedreno: use PIPE_CAP_RGB_OVERRIDE_DST_ALPHA_BLEND< / li >
< li > mesa/st: random whitespace cleanup< / li >
< li > freedreno/a6xx: remove special handling based on MRT format< / li >
< li > freedreno/a6xx: convert blend state to stateobj< / li >
< li > freedreno: extract vsc pipe bo from GMEM state< / li >
< li > freedreno: consolidate GMEM state< / li >
< li > freedreno: constify fd_tile< / li >
< li > freedreno: constify fd_vsc_pipe< / li >
< li > freedreno/a6xx: constify gmem state< / li >
< li > freedreno/a5xx: constify gmem state< / li >
< li > freedreno/a4xx: constify gmem state< / li >
< li > freedreno/a3xx: constify gmem state< / li >
< li > freedreno/a2xx: constify gmem state< / li >
< li > freedreno: get GMEM state from batch< / li >
< li > freedreno: add gmem state cache< / li >
< li > freedreno: add gmem_lock< / li >
< li > freedreno: remove flush-queue< / li >
< li > freedreno: allow ctx-> batch to be NULL< / li >
< p > < / p >
< p > Robert Foss (5):< / p >
< li > nir: Build nir_lower_point_size.c in libmesa_nir< / li >
< li > android: Add panfrost support to build scripts< / li >
< li > android: Fix u_format_table.c being generated twice< / li >
< li > panfrost: Prefix schedule_program to prevent collision< / li >
< li > android: Fix whitespace issue< / li >
< p > < / p >
< p > Rohan Garg (1):< / p >
< li > gitlab-ci: Use lavacli from packages< / li >
< p > < / p >
< p > Roland Scheidegger (3):< / p >
< li > gallium/scons: fix graw_gdi build< / li >
< li > util/atomic: Fix p_atomic_add for unlocked and msvc paths< / li >
< li > winsys/svga: use new ioctl for logging< / li >
< p > < / p >
< p > Roman Stratiienko (2):< / p >
< li > Android: Fix build issue without LLVM< / li >
< li > panfrost: Fix Android build< / li >
< p > < / p >
< p > Ross Zwisler (1):< / p >
< li > intel: limit shader geometry on BDW GT1< / li >
< p > < / p >
< p > Sagar Ghuge (1):< / p >
< li > intel/compiler: Clear accumulator register before EOT< / li >
< p > < / p >
< p > Samuel Iglesias Gonsálvez (1):< / p >
< li > main: fix coverity error in _mesa_program_resource_find_name()< / li >
< p > < / p >
< p > Samuel Pitoiset (202):< / p >
< li > radv: declare NGG scratch for VS or TES and only on GFX10< / li >
< li > radv: fix compute pipeline keys when optimizations are disabled< / li >
< li > docs: document all RADV environment variables< / li >
< li > radv: add a note about perftest/debug options< / li >
< li > radv: fix 32-bit compiler warnings< / li >
< li > nir: fix packing of nir_variable< / li >
< li > radv/gfx10: enable wave32 for compute based on shader' s wavesize< / li >
< li > radv: hardcode the number of waves for the GFX6 LS-HS bug< / li >
< li > radv: determine shaders wavesize at pipeline level< / li >
< li > radv: rely on shader' s wavesize when computing NGG info< / li >
< li > radv: implement VK_EXT_subgroup_size_control< / li >
< li > radv/gfx10: fix primitive indices orientation for NGG GS< / li >
< li > ac: handle pointer types to LDS in ac_get_elem_bits()< / li >
< li > gitlab-ci: build a specific libdrm version for ARM64< / li >
< li > gitlab-ci: build RADV on ARM64< / li >
< li > ac: fix build with recent LLVM< / li >
< li > radv: remove useless RADV_DEBUG=unsafemath debug option< / li >
< li > radv: make sure to not clear the ds attachment after resolves< / li >
< li > ac: add radeon_info::has_l2_uncached< / li >
< li > radv: implement VK_AMD_device_coherent_memory< / li >
< li > spirv: fix lowering of OpGroupNonUniformAllEqual< / li >
< li > ac: remove useless cast in ac_build_set_inactive()< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_shuffle()< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_readlane()< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_set_inactive()< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_dpp()< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_swizzle()< / li >
< li > ac: add 8-bit and 16-bit supports to get_reduction_identity()< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_wwm()< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_optimization_barrier()< / li >
< li > ac: add 16-bit float support to ac_build_alu_op()< / li >
< li > radv: advertise VK_KHR_shader_subgroup_extended_types on GFX8-GFX9< / li >
< li > radv: enable VK_KHR_shader_subgroup_extended_types on GFX6-GFX7< / li >
< li > docs: add missing new features for RADV< / li >
< li > pipe-loader: check that the pointer to driconf_xml isn' t NULL< / li >
< li > gitlab-ci: move building piglit into a separate script< / li >
< li > gitlab-ci: fix ldd check for Vulkan drivers< / li >
< li > gitlab-ci: add a job that only build things needed for testing< / li >
< li > gitlab-ci: do not build with debugoptimized for meson-main< / li >
< li > gitlab-ci: build swr in meson-main< / li >
< li > gitlab-ci: build GLVND in meson-clang< / li >
< li > gitlab-ci: remove now useless meson-swr-glvnd build job< / li >
< li > gitlab-ci: reduce the number of scons build< / li >
< li > radv: disable subgroup shuffle operations on GFX10< / li >
< li > ac/llvm: fix the local invocation index for wave32< / li >
< li > meson: only build imgui when needed< / li >
< li > radv: set the image view aspect mask during subpass transitions< / li >
< li > radv: set the image view aspect mask before resolves< / li >
< li > radv: rework creation of decompress/resummarize meta pipelines< / li >
< li > radv: create decompress pipelines for separate depth/stencil layouts< / li >
< li > radv: select the depth decompress path based on the aspect mask< / li >
< li > ac/llvm: fix warning in ac_build_canonicalize()< / li >
< li > radv: fix reporting subgroup size with VK_KHR_pipeline_executable_properties< / li >
< li > radv: fix enabling sample shading with SampleID/SamplePosition< / li >
< li > radv/gfx10: fix implementation of exclusive scans< / li >
< li > ac: add 8-bit and 16-bit supports to ac_build_permlane16()< / li >
< li > radv: enable VK_KHR_shader_subgroup_extended_types on GFX10< / li >
< li > ac/llvm: convert src operands to pointers if necessary< / li >
< li > radv: add more constants to avoid using magic numbers< / li >
< li > radv,ac/nir: lower deref operations for shared memory< / li >
< li > aco: drop useless lowering of deref operations for shared memory< / li >
< li > ac/llvm: fix atomic var operations if source isn' t a deref< / li >
< li > radv: remove dead shader input/output variables< / li >
< li > radv: simplify a check in radv_fixup_vertex_input_fetches()< / li >
< li > radv/gfx10: fix the vertex order for triangle strips emitted by a GS< / li >
< li > gitlab-ci: rename build-deqp.sh to build-deqp-gl.sh< / li >
< li > gitlab-ci: add a gl suffix to the x86 test image and all test jobs< / li >
< li > gitlab-ci: add a new job that builds a base test image for VK< / li >
< li > gitlab-ci: build cts_runner in the x86 test image for VK< / li >
< li > gitlab-ci: build dEQP VK 1.1.6 in the x86 test image for VK< / li >
< li > gitlab-ci: add a new base test job for VK< / li >
< li > gitlab-ci: allow to run dEQP Vulkan with DEQP_VER< / li >
< li > gitlab-ci: configure the Vulkan ICD export with VK_DRIVER< / li >
< li > gitlab-ci: build RADV in meson-testing< / li >
< li > gitlab-ci: add a job that runs Vulkan CTS with RADV conditionally< / li >
< li > radv: do not use VK_TRUE/VK_FALSE< / li >
< li > radv: move emission of two PA_SC_* registers to the pipeline CS< / li >
< li > radv: fix possibly wrong PA_SC_AA_CONFIG value for conservative rast< / li >
< li > radv: synchronize after performing a separate depth/stencil fast clears< / li >
< li > radv: do not init HTILE as compressed state when dst layout allows it< / li >
< li > radv: initialize HTILE for separate depth/stencil aspects< / li >
< li > radv: implement VK_KHR_separate_depth_stencil_layouts< / li >
< li > gitlab-ci: set RADV_DEBUG=checkir for RADV test jobs< / li >
< li > ac/nir: fix out-of-bound access when loading constants from global< / li >
< li > radv: enable SpvCapabilityImageMSArray< / li >
< li > radv: handle unaligned vertex fetches on GFX6/GFX10< / li >
< li > radv/gfx10: fix ngg_get_ordered_id< / li >
< li > radv/gfx10: fix the out-of-bounds check for vertex descriptors< / li >
< li > ac: declare an enum for the OOB select field on GFX10< / li >
< li > radv: init a default multisample state for the resolve FS path< / li >
< li > radv: ignore pMultisampleState if rasterization is disabled< / li >
< li > radv: ignore pTessellationState if the pipeline doesn' t use tess< / li >
< li > radv: ignore pDepthStencilState if rasterization is disabled< / li >
< li > radv: tidy up radv_pipeline_init_blend_state()< / li >
< li > radv: ignore pColorBlendState if rasterization is disabled< / li >
< li > radv: rely on pipeline layout when creating push descriptors with template< / li >
< li > radv: return the correct pitch for linear mipmaps on GFX10< / li >
< li > radv: record number of color/depth samples for each subpass< / li >
< li > radv: implement VK_AMD_mixed_attachment_samples< / li >
< li > ac/surface: use uint16_t for mipmap level pitches< / li >
< li > radv: do not fill keys from fragment shader twice< / li >
< li > spirv: add SpvCapabilityImageReadWriteLodAMD< / li >
< li > spirv,nir: add new lod parameter to image_{load,store} intrinsics< / li >
< li > amd/llvm: handle nir_intrinsic_image_deref_{load,store} with lod< / li >
< li > aco: handle nir_intrinsic_image_deref_{load,store} with lod< / li >
< li > radv: advertise VK_AMD_shader_image_load_store_lod< / li >
< li > radv/gfx10: disable vertex grouping< / li >
< li > radv/gfx10: determine if a pipeline is eligible for NGG passthrough< / li >
< li > radv/gfx10: do not declare LDS for NGG if useless< / li >
< li > radv/gfx10: add support for NGG passthrough mode< / li >
< li > radv/gfx10: improve performance for TES using PrimID but not exporting it< / li >
< li > radv: only use VkSamplerCreateInfo::compareOp if enabled< / li >
< li > radv/gfx10: enable all CUs if NGG is never used< / li >
< li > radv/gfx10: simplify some duplicated NGG GS code< / li >
< li > vulkan/overlay: Fix for Vulkan 1.2< / li >
< li > radv: update VK_EXT_descriptor_indexing for Vulkan 1.2< / li >
< li > radv: update VK_EXT_host_query_reset for Vulkan 1.2< / li >
< li > radv: update VK_EXT_sampler_filter_minmax for Vulkan 1.2< / li >
< li > radv: update VK_EXT_scalar_block_layout for Vulkan 1.2< / li >
< li > radv: update VK_KHR_8bit_storage for Vulkan 1.2< / li >
< li > radv: update VK_KHR_buffer_device_address for Vulkan 1.2< / li >
< li > radv: update VK_KHR_create_renderpass2 for Vulkan 1.2< / li >
< li > radv: update VK_KHR_depth_stencil_resolve for Vulkan 1.2< / li >
< li > radv: update VK_KHR_draw_indirect_count for Vulkan 1.2< / li >
< li > radv: update VK_KHR_driver_properties for Vulkan 1.2< / li >
< li > radv: update VK_KHR_image_format_list for Vulkan 1.2< / li >
< li > radv: update VK_KHR_imageless_framebuffer for Vulkan 1.2< / li >
< li > radv: update VK_KHR_shader_atomic_int64 for Vulkan 1.2< / li >
< li > radv: update VK_KHR_shader_float16_int8 for Vulkan 1.2< / li >
< li > radv: update VK_KHR_shader_float_controls for Vulkan 1.2< / li >
< li > radv: update VK_KHR_shader_subgroup_extended_types for Vulkan 1.2< / li >
< li > radv: update VK_KHR_uniform_buffer_standard_layout for Vulkan 1.2< / li >
< li > radv: update VK_KHR_timeline_semaphore for Vulkan 1.2< / li >
< li > radv: implement Vulkan 1.1 features and properties< / li >
< li > radv: implement Vulkan 1.2 features and properties< / li >
< li > radv: enable Vulkan 1.2< / li >
< li > aco: fix emitting SMEM instructions with no operands on GFX6-GFX7< / li >
< li > aco: do not select 96-bit/128-bit variants for ds_read/ds_write on GFX6< / li >
< li > aco: do not combine additions of DS instructions on GFX6< / li >
< li > aco: implement stream output with vec3 on GFX6< / li >
< li > aco: fix emitting slc for MUBUF instructions on GFX6-GFX7< / li >
< li > aco: print assembly with CLRXdisasm for GFX6-GFX7 if found on the system< / li >
< li > aco: fix constant folding of SMRD instructions on GFX6< / li >
< li > aco: do not use the vec3 variant for stores on GFX6< / li >
< li > aco: do not use the vec3 variant for loads on GFX6< / li >
< li > aco: add new addr64 bit to MUBUF instructions on GFX6-GFX7< / li >
< li > aco: implement nir_intrinsic_load_barycentric_at_sample on GFX6< / li >
< li > radv: fix double free corruption in radv_alloc_memory()< / li >
< li > radv: add explicit external subpass dependencies to meta operations< / li >
< li > radv: handle missing implicit subpass dependencies< / li >
< li > spirv: add SpvCapabilityFragmentMaskAMD< / li >
< li > nir: add two new texture ops for multisample fragment color/mask fetches< / li >
< li > spirv: add support for SpvOpFragment{Mask}FetchAMD operations< / li >
< li > nir/lower_input_attachments: lower nir_texop_fragment_{mask}_fetch< / li >
< li > ac/nir: add support for nir_texop_fragment_{mask}_fetch< / li >
< li > aco: add support for nir_texop_fragment_{mask}_fetch< / li >
< li > radv: advertise VK_AMD_shader_fragment_mask< / li >
< li > aco: fix printing assembly with CLRXdisasm on GFX6< / li >
< li > aco: fix wrong IR in nir_intrinsic_load_barycentric_at_sample< / li >
< li > aco: implement nir_intrinsic_store_global on GFX6< / li >
< li > aco: implement nir_intrinsic_load_global on GFX6< / li >
< li > aco: implement nir_intrinsic_global_atomic_* on GFX6< / li >
< li > aco: implement 64-bit nir_op_ftrunc on GFX6< / li >
< li > aco: implement 64-bit nir_op_fceil on GFX6< / li >
< li > aco: implement 64-bit nir_op_fround_even on GFX6< / li >
< li > aco: implement 64-bit nir_op_ffloor on GFX6< / li >
< li > aco: implement nir_op_f2i64/nir_op_f2u64 on GFX6< / li >
< li > ac/llvm: fix missing casts in ac_build_readlane()< / li >
< li > aco: combine MRTZ (depth, stencil, sample mask) exports< / li >
< li > aco: fix a hardware bug for MRTZ exports on GFX6< / li >
< li > aco: fix a hazard with v_interp_* and v_{read,readfirst}lane_* on GFX6< / li >
< li > aco: copy the literal offset of SMEM instructions to a temporary< / li >
< li > radv: enable ACO support for GFX6< / li >
< li > radv: print NIR shaders after lowering FS inputs/outputs< / li >
< li > radv: do not allow sparse resources with multi-planar formats< / li >
< li > radv: enable VK_AMD_shader_fragment_mask on GFX6-GFX7< / li >
< li > compiler: add a new explicit interpolation mode< / li >
< li > spirv: add support for SpvDecorationExplicitInterpAMD< / li >
< li > compiler: add PERSP to the existing barycentric system values< / li >
< li > compiler: add new SYSTEM_VALUE_BARYCENTRIC_*< / li >
< li > spirv: add support for SpvBuiltInBaryCoord*< / li >
< li > nir: add nir_intrinsic_load_barycentric_model< / li >
< li > nir: lower SYSTEM_VALUE_BARYCENTRIC_* to nir_load_barycentric()< / li >
< li > nir: add nir_intrinsic_interp_deref_at_vertex< / li >
< li > nir: lower interp_deref_at_vertex to load_input_vertex< / li >
< li > spirv: implement SPV_AMD_shader_explicit_vertex_parameter< / li >
< li > ac/llvm: implement VK_AMD_shader_explicit_vertex_parameter< / li >
< li > aco: implement VK_AMD_shader_explicit_vertex_parameter< / li >
< li > radv: gather which input PS variables use an explicit interpolation mode< / li >
< li > radv: implement VK_AMD_shader_explicit_vertex_parameter< / li >
< li > radv: bump conformance version to 1.2.0.0< / li >
< li > radv: remove the non conformant VK implementation warning on GFX10< / li >
< li > aco: fix VS input loads with MUBUF on GFX6< / li >
< li > radv/gfx10: add a separate flag for creating a GDS OA buffer< / li >
< li > radv/gfx10: implement NGG GS queries< / li >
< li > radv/gfx10: re-enable NGG GS< / li >
< li > radv: refactor physical device properties< / li >
< li > aco: fix MUBUF VS input loads when expanding vec3 to vec4 on GFX6< / li >
< li > aco: do not use ds_{read,write}2 on GFX6< / li >
< li > aco: fix waiting for scalar stores before " writing back" data on GFX8-GFX9< / li >
< li > aco: fix creating v_madak if v_mad_f32 has two sgpr literals< / li >
< li > nir: do not use De Morgan' s Law rules for flt and fge< / li >
< p > < / p >
< p > Samuel Thibault (3):< / p >
< li > loader: #define PATH_MAX when undefined (eg. Hurd)< / li >
< li > util: Do not fail to build on unknown pthread_setname_np< / li >
< li > meson: Do not require libdrm for DRI2 on hurd< / li >
< p > < / p >
< p > Satyajit Sahu (1):< / p >
< li > radeon/vcn: Handle crop parameters for encoder< / li >
< p > < / p >
< p > Sonny Jiang (1):< / p >
< li > radeonsi: use compute shader for clear 12-byte buffer< / li >
< p > < / p >
< p > Stephan Gerhold (1):< / p >
< li > kmsro: Add " mcde" entry point< / li >
< p > < / p >
< p > Tapani Pälli (33):< / p >
< li > nir: fix couple of compile warnings< / li >
< li > util/android: fix android build errors< / li >
< li > Revert " egl: implement new functions from EGL_EXT_image_flush_external" < / li >
< li > Revert " egl: handle EGL_IMAGE_EXTERNAL_FLUSH_EXT" < / li >
< li > Revert " st/dri: add support for EGL_EXT_image_flush_external" < / li >
< li > Revert " st/dri: assume external consumers of back buffers can write to the buffers" < / li >
< li > Revert " dri_interface: add interface for EGL_EXT_image_flush_external" < / li >
< li > mesa: allow bit queries for EXT_disjoint_timer_query< / li >
< li > Revert " mesa: allow bit queries for EXT_disjoint_timer_query" < / li >
< li > mesa: allow bit queries for EXT_disjoint_timer_query< / li >
< li > gitlab-ci: update Piglit commit, update skips< / li >
< li > mapi: add GetInteger64vEXT with EXT_disjoint_timer_query< / li >
< li > glsl: handle max uniform limits with lower_const_arrays_to_uniforms< / li >
< li > gitlab-ci: bump piglit checkout commit< / li >
< li > glsl: additional interface redeclaration check for SSO programs< / li >
< li > intel/compiler: add newline to limit_dispatch_width message< / li >
< li > intel/compiler: force simd8 when dual src blending on gen8< / li >
< li > dri: add __DRI_IMAGE_FORMAT_SXRGB8< / li >
< li > i965: expose MESA_FORMAT_B8G8R8X8_SRGB visual< / li >
< li > mesa/st/i965: add a ProgramResourceHash for quicker resource lookup< / li >
< li > mesa: create program resource hash in a single place< / li >
< li > iris: set depth stall enabled when depth flush enabled on gen12< / li >
< li > anv: set depth stall enabled when depth flush enabled on gen12< / li >
< li > isl/gen12: add reminder comment about missing WA with 3D surfaces< / li >
< li > anv: fix assert in GetImageDrmFormatModifierPropertiesEXT< / li >
< li > anv: add assert for isl_mod_info in choose_isl_tiling_flags< / li >
< li > anv: initialize clear_color_is_zero_one< / li >
< li > egl/android: fix buffer_count for applications setting max count< / li >
< li > anv/android: setup gralloc1 usage from gralloc0 usage manually< / li >
< li > anv/android: make format_supported_with_usage static< / li >
< li > intel/vec4: fix valgrind errors with vf_values array< / li >
< li > glsl: fix a memory leak with resource_set< / li >
< li > iris: fix aux buf map failure in 32bits app on Android< / li >
< p > < / p >
< p > Thomas Hellstrom (4):< / p >
< li > winsys/svga: Enable transhuge pages for buffer objects< / li >
< li > svga: Avoid discard DMA uploads< / li >
< li > gallium/util: Increase the debug_flush map depth< / li >
< li > svga: Fix banded DMA upload< / li >
< p > < / p >
< p > Thong Thai (8):< / p >
< li > st/va: Convert interlaced NV12 to progressive< / li >
< li > util/format: Add the P010 format used for 10-bit videos< / li >
< li > gallium: Add PIPE_FORMAT_P010 support< / li >
< li > st/va: Add support for P010, used for 10-bit videos< / li >
< li > radeon: Use P010 for decoding of 10-bit videos< / li >
< li > r600: Remove HEVC related code since HEVC is not supported< / li >
< li > mesa: Prevent _MaxLevel from being less than zero< / li >
< li > Revert " st/va: Convert interlaced NV12 to progressive" < / li >
< p > < / p >
< p > Timothy Arceri (66):< / p >
< li > glsl: just use NIR to lower outputs when driver can' t read outputs< / li >
< li > glsl: disable lower_fragdata_array() for NIR drivers< / li >
< li > mesa: add ARB_shading_language_include stubs< / li >
< li > glsl: add infrastructure for ARB_shading_language_include< / li >
< li > mesa: add ARB_shading_language_include infrastructure to gl_shared_state< / li >
< li > mesa: add helper to validate tokenise shader include path< / li >
< li > mesa: add _mesa_lookup_shader_include() helper< / li >
< li > mesa: add copy_string() helper< / li >
< li > mesa: add glNamedStringARB() support< / li >
< li > mesa: implement glGetNamedStringARB()< / li >
< li > mesa: make error checking optional in _mesa_lookup_shader_include()< / li >
< li > mesa: implement glIsNamedStringARB()< / li >
< li > mesa: implement glGetNamedStringivARB()< / li >
< li > mesa: split _mesa_lookup_shader_include() in two< / li >
< li > mesa: implement glDeleteNamedStringARB()< / li >
< li > glsl: add ARB_shading_language_include support to #line< / li >
< li > glsl: pass gl_context to glcpp_parser_create()< / li >
< li > glsl: add preprocessor #include support< / li >
< li > glsl: error if #include used while extension is disabled< / li >
< li > glsl: add can_skip_compile() helper< / li >
< li > glsl: delay compilation skip if shader contains an include< / li >
< li > mesa: add support cursor support for relative path shader includes< / li >
< li > mesa: add shader include lookup support for relative paths< / li >
< li > mesa: implement glCompileShaderIncludeARB()< / li >
< li > mesa: enable ARB_shading_language_include< / li >
< li > gitlab-ci: bump piglit checkout commit< / li >
< li > gitlab-ci: update for arb_shading_language_include< / li >
< li > compiler: move build definition of pp_standalone_scaffolding.c< / li >
< li > radv: add some infrastructure for fresh forks for each secure compile< / li >
< li > radv: add a secure_compile_open_fifo_fds() helper< / li >
< li > radv: create a fresh fork for each pipeline compile< / li >
< li > docs: update source code repository documentation< / li >
< li > glsl: move calculate_array_size_and_stride() to link_uniforms.cpp< / li >
< li > glsl: don' t set uniform block as used when its not< / li >
< li > glsl: make use of active_shader_mask when building resource list< / li >
< li > glsl/nir: iterate the system values list when adding varyings< / li >
< li > docs: remove mailing list as way of submitting patches< / li >
< li > glsl: move nir_remap_dual_slot_attributes() call out of glsl_to_nir()< / li >
< li > glsl: copy the how_declared field when converting to nir< / li >
< li > nir: add some fields to nir_variable_data< / li >
< li > glsl: copy the new data fields when converting to nir< / li >
< li > glsl: add support for named varyings in nir_build_program_resource_list()< / li >
< li > glsl: add subroutine support to nir_build_program_resource_list()< / li >
< li > st/glsl_to_nir: call gl_nir_lower_buffers() a little later< / li >
< li > st/glsl_to_nir: use nir based program resource list builder< / li >
< li > st/glsl_to_nir: fix SSO validation regression< / li >
< li > glsl: rename gl_nir_link() to gl_nir_link_spirv()< / li >
< li > glsl: add gl_nir_link_check_atomic_counter_resources()< / li >
< li > glsl: add new gl_nir_link_glsl() helper< / li >
< li > glsl: reorder link_and_validate_uniforms() calls< / li >
< li > mesa: add new UseNIRGLSLLinker constant< / li >
< li > glsl: use nir linker to link atomics< / li >
< li > glsl: add check_image_resources() for the nir linker< / li >
< li > glsl: use nir version of check_image_resources() for nir linker< / li >
< li > glsl: move check_subroutine_resources() into the shared util code< / li >
< li > glsl: call check_subroutine_resources() from the nir linker< / li >
< li > glsl: move uniform resource checks into the common linker code< / li >
< li > glsl: call uniform resource checks from the nir linker< / li >
< li > glsl: move calculate_subroutine_compat() to shared linker code< / li >
< li > glsl: call calculate_subroutine_compat() from the nir linker< / li >
< li > glsl: fix potential bug in nir uniform linker< / li >
< li > glsl: remove bogus assert in nir uniform linking< / li >
< li > glsl: fix check for matrices in blocks when using nir uniform linker< / li >
< li > glsl: count uniform components and storage better in nir linking< / li >
< li > glsl_to_nir: update interface type properly< / li >
< li > glsl: fix gl_nir_set_uniform_initializers() for image arrays< / li >
< p > < / p >
< p > Timur Kristóf (39):< / p >
< li > ac: Handle invalid GFX10 format correctly in ac_get_tbuffer_format.< / li >
< li > aco: Make sure not to mistakenly propagate 64-bit constants.< / li >
< li > aco: Treat all booleans as per-lane.< / li >
< li > aco: Optimize out trivial code from uniform bools.< / li >
< li > aco: Fix operand of s_bcnt1_i32_b64 in emit_boolean_reduce.< / li >
< li > aco: Remove superfluous argument from emit_boolean_logic.< / li >
< li > aco: Remove lower_linear_bool_phi, it is not needed anymore.< / li >
< li > aco: Optimize load_subgroup_id to one bit field extract instruction.< / li >
< li > aco/wave32: Change uniform bool optimization to work with wave32.< / li >
< li > aco/wave32: Replace hardcoded numbers in spiller with wave size.< / li >
< li > aco/wave32: Introduce emit_mbcnt which takes wave size into account.< / li >
< li > aco/wave32: Add wave size specific opcodes to aco_builder.< / li >
< li > aco/wave32: Use lane mask regclass for exec/vcc.< / li >
< li > aco/wave32: Fix load_local_invocation_index to support wave32.< / li >
< li > aco/wave32: Use wave_size for barrier intrinsic.< / li >
< li > aco/wave32: Allow setting the subgroup ballot size to 64-bit.< / li >
< li > aco/wave32: Fix reductions.< / li >
< li > aco: Fix uniform i2i64.< / li >
< li > ac/llvm: Fix ac_build_reduce in wave32 mode.< / li >
< li > aco/wave32: Set the definitions of v_cmp instructions to the lane mask.< / li >
< li > aco: Implement 64-bit constant propagation.< / li >
< li > aco: Allow optimizing vote_all and nir_op_iand.< / li >
< li > aco: Don' t skip combine_instruction when definitions[1] is used.< / li >
< li > aco: Optimize out s_and with exec, when used on uniform bitwise values.< / li >
< li > aco: Flip s_cbranch / s_cselect to optimize out an s_not if possible.< / li >
< li > nouveau/nvc0: add extern keyword to nvc0_miptree_vtbl.< / li >
< li > intel/compiler: Fix array bounds warning on GCC 10.< / li >
< li > radeon: Move si_get_pic_param to radeon_vce.c< / li >
< li > r600: Move get_pic_param to radeon_vce.c< / li >
< li > gallium: Fix a couple of multiple definition warnings.< / li >
< li > radeon: Fix multiple definition error with radeon_debug< / li >
< li > aco: Fix -Wstringop-overflow warnings in aco_span.< / li >
< li > aco: Fix maybe-uninitialized warnings.< / li >
< li > aco: Fix signedness compare warning.< / li >
< li > aco: Make a better guess at which instructions need the VCC hint.< / li >
< li > aco: Transform uniform bitwise instructions to 32-bit if possible.< / li >
< li > aco/gfx10: Fix VcmpxExecWARHazard mitigation.< / li >
< li > aco: Fix the meaning of is_atomic.< / li >
< li > aco/optimizer: Don' t combine uniform bool s_and to s_andn2.< / li >
< p > < / p >
< p > Tomasz Pyra (1):< / p >
< li > gallium/swr: Fix arb_transform_feedback2< / li >
< p > < / p >
< p > Tomeu Vizoso (38):< / p >
< li > gitlab-ci: Disable lima jobs< / li >
< li > gitlab-ci: Run only LAVA jobs in special-named branches< / li >
< li > panfrost: Add checksum fields to SFBD descriptor< / li >
< li > panfrost: Set 0x10 bit on mali_shader_meta.unknown2_4 on T720< / li >
< li > panfrost: Rework format encoding on SFBD< / li >
< li > panfrost: Take into account texture layers in SFBD< / li >
< li > panfrost: Decode blend shaders for SFBD< / li >
< li > panfrost: Generate polygon list manually for SFBD< / li >
< li > panfrost: Print the right zero field< / li >
< li > panfrost: Pipe the GPU ID into compiler and disassembler< / li >
< li > panfrost: Set depth and stencil for SFBD based on the format< / li >
< li > panfrost: Multiply offset_units by 2< / li >
< li > panfrost: Make sure the shader descriptor is in sync with the GL state< / li >
< li > gitlab-ci: Remove limit on kernel logging< / li >
< li > panfrost: Just print tiler fields as-is for Tx20< / li >
< li > panfrost: Rework buffers in SFBD< / li >
< li > gitlab-ci: Fix dir name for VK-GL-CTS sources< / li >
< li > panfrost: Don' t print the midgard_blend_rt structs on SFBD< / li >
< li > panfrost: Add quirks system to cmdstream< / li >
< li > panfrost: Simplify shader patching< / li >
< li > panfrost: White list the Mali T720< / li >
< li > gitlab-ci: Test Panfrost on T720 GPUs< / li >
< li > panfrost: Add PAN_MESA_DEBUG=sync< / li >
< li > panfrost: Hold a reference to sampler views< / li >
< li > pan/midgard: Remove undefined behavior< / li >
< li > nir: Don' t copy empty array< / li >
< li > util: Don' t access members of NULL pointers< / li >
< li > panfrost: Don' t lose bits!< / li >
< li > st/mesa: Don' t access members of NULL pointers< / li >
< li > panfrost: Handle Z24_UNORM_S8_UINT as MALI_Z32_UNORM< / li >
< li > panfrost: Increase PIPE_SHADER_CAP_MAX_OUTPUTS to 16< / li >
< li > panfrost: Dynamically allocate array of texture pointers< / li >
< li > panfrost: Map with size of first layer for 3D textures< / li >
< li > panfrost: Store internal format< / li >
< li > gitlab-ci: Update kernel for LAVA to 5.5-rc1 plus fixes< / li >
< li > gitlab-ci: Switch LAVA jobs to use shared dEQP runner< / li >
< li > gitlab-ci: Upgrade kernel for LAVA jobs to v5.5-rc5< / li >
< li > gitlab-ci: Consolidate container and build stages for LAVA< / li >
< p > < / p >
< p > Urja Rannikko (4):< / p >
< li > panfrost: free last_read/write tables in mir_create_dependency_graph< / li >
< li > panfrost: free allocations in schedule_block< / li >
< li > panfrost: add lcra_free() to free lcra state< / li >
< li > panfrost: free spill cost table in mir_spill_register< / li >
< p > < / p >
< p > Vasily Khoruzhick (31):< / p >
< li > lima: add debug prints for BO cache< / li >
< li > lima: align size before trying to fetch BO from cache< / li >
< li > lima: ignore flags while looking for BO in cache< / li >
< li > lima: set dithering flag when necessary< / li >
< li > lima: add support for gl_PointSize< / li >
< li > lima: enable tiling< / li >
< li > lima: handle DRM_FORMAT_MOD_INVALID in resource_from_handle()< / li >
< li > lima: expose tiled format modifier in query_dmabuf_modifiers()< / li >
< li > lima: use single BO for GP outputs< / li >
< li > lima: drop suballocator< / li >
< li > lima: fix allocation of GP outputs storage for indexed draw< / li >
< li > lima: postpone PP stream generation< / li >
< li > lima: don' t reload and redraw tiles that were not updated< / li >
< li > lima: fix PP stream terminator size< / li >
< li > lima: use linear layout for shared buffers if modifier is not specified< / li >
< li > lima: add debug flag to disable tiling< / li >
< li > lima: drop support for R8G8B8 format< / li >
< li > lima: fix PLBU_CMD_PRIMITIVE_SETUP command< / li >
< li > lima: fix viewport clipping< / li >
< li > lima: implement polygon offset< / li >
< li > lima: fix PIPE_CAP_* to mark features that aren' t supported yet< / li >
< li > lima: add new findings to texture descriptor< / li >
< li > lima: fix handling of reverse depth range< / li >
< li > ci: lava: pass CI_NODE_INDEX and CI_NODE_TOTAL to lava jobs< / li >
< li > ci: Re-enable CI for lima on mali450< / li >
< li > lima: implement invalidate_resource()< / li >
< li > nir: don' t emit ishl in _nir_mul_imm() if backend doesn' t support bitops< / li >
< li > lima: use imul for calculations with intrinsic src< / li >
< li > lima: ppir: don' t delete root ld_tex nodes without successors in current block< / li >
< li > lima: ppir: always create move and update ld_tex successors for all blocks< / li >
< li > lima: disable early-z if fragment shader uses discard< / li >
< p > < / p >
< p > Vinson Lee (9):< / p >
< li > swr: Fix build with llvm-10.0.< / li >
< li > panfrost: Fix gnu-empty-initializer build errors.< / li >
< li > scons: Bump C standard to gnu11 on macOS 10.15.< / li >
< li > util/u_thread: Restrict u_thread_get_time_nano on macOS.< / li >
< li > swr: Fix build with llvm-10.0.< / li >
< li > swr: Fix build with llvm-10.0.< / li >
< li > lima: Fix build with GCC 10.< / li >
< li > swr: Fix GCC 4.9 checks.< / li >
< li > panfrost: Remove unused anonymous enum variables.< / li >
< p > < / p >
< p > Wladimir J. van der Laan (2):< / p >
< li > u_vbuf: add logic to use a limited number of vbufs< / li >
< li > u_vbuf: use single vertex buffer if it' s not possible to have multiple< / li >
< p > < / p >
< p > X512 (1):< / p >
< li > util/u_thread: Fix build under Haiku< / li >
< p > < / p >
< p > Yevhenii Kolesnikov (5):< / p >
< li > glsl: Enable textureSize for samplerExternalOES< / li >
< li > meson: Fix linkage of libgallium_nine with libgalliumvl< / li >
< li > meta: Cleanup function for DrawTex< / li >
< li > main: allow external textures for BindImageTexture< / li >
< li > meta: Add cleanup function for Bitmap< / li >
< p > < / p >
< p > Zebediah Figura (1):< / p >
< li > Revert " draw: revert using correct order for prim decomposition." < / li >
< p > < / p >
< p > luc (1):< / p >
< li > zink: confused compilation macro usage for zink in target helpers.< / li >
< p > < / p >
< p > < / p >
< / ul >
< / div >
< / body >
< / html >