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