Mesa is an open-source 3D graphics library that provides the commonly-used DRI and Gallium3D open-source Linux graphics drivers.
Other Activity This Week
- panfrost/ci: Update expectations list
Alyssa Rosenzweig: A bunch of blend tests fixed on T760.
- pan/midgard: Implement SIMD-aware dead code elimination
Alyssa Rosenzweig: We would like to eliminate not just entire dead instructions, but also dead components, which increases scheduler flexibility (since some
vector instructions can become scalar after eliminating dead components).
- pan/midgard: Implement per-byte liveness tracking
Alyssa Rosenzweig: Now that we have notion of byte masks, liveness tracking can be updated to reflect this extra granularity without loss of correctness.
- turnip: add support for pre-fs texture fetch
- freedreno/a6xx: add support for pre-fs texture fetch
- freedreno/ir3: Add support for texture sampling pre-dispatch
- freedreno/ir3: Add a NIR pass to select tex instructions eligible for pre-fetch
Eduardo Lima Mitev: The pass should run once at the end of shader compilation, for a4xx onwards.
- freedreno/ir3: add pre-dispatch tex fetch to disasm
Rob Clark: Useful to see in disassembly listing texture fetches that were moved to pre-dispatch.
- freedreno/ir3: add meta instruction for pre-fs texture fetch
Rob Clark: Add a placeholder instruction to track texture fetches made prior to FS shader dispatch.
- freedreno/ir3: Add data structures to support texture pre-fetch
- nir: Add new texop nir_texop_tex_prefetch
Eduardo Lima Mitev: This is like nir_texop_tex, but signals that the sampling coordinates are immutable during the shader stage, in a way that allows the HW that supports pre-dispatching sampling operations to pre-fetch the result prior to scheduling the shader stage.
This is introduced to support the feature in Freedreno.
- appveyor: Add support for building llvmpipe with meson
- meson: Add support for wrapping llvm
- etnaviv: add linear texture support on GC7000
Lucas Stach: It's just a matter of writing the addressing mode into the texture descriptor.
- etnaviv: GC7000: Texture descriptors
Wladimir J. van der Laan: Create a separate implementation file with texture-descriptor-based sampler views and sampler states.
- etnaviv: drm: add softpin interface
Lucas Stach: If softpin is available on the kernel side, we transparently replace the relocs with self-managed GPU virtual addresses.
- etnaviv: Rework resource status tracking
Marek Vasut: Have each context track which resources it marked as pending read and pending write.
- etnaviv: Make contexts track resources
Marek Vasut: Currently, the screen tracks all resources for all contexts, but this is not correct.
- intel/isl: Add gen12 depth/stencil surface alignments
- intel/genxml,isl: Add gen12 stencil buffer changes
Jordan Justen: Rework:
- intel/genxml,isl: Add gen12 depth buffer changes
Jordan Justen: Reworks:
- freedreno/a6xx: Implement PIPE_QUERY_PRIMITIVES_GENERATED for GS
Kristian H. Kristensen: When we don't have streamout enabled, we have to read this register to get the number of primitives emitted.
- st/mesa: Also enable GS when ESSLVersion > 320
Kristian H. Kristensen
- freedreno/a6xx: Support layered render targets
Kristian H. Kristensen
- freedreno/ir3: Setup ir3 inputs and outputs for GS
Kristian H. Kristensen: Inputs are the GS header, which contains vertex ID, local primitive ID and thread ID as well as primitive ID.
- freedreno/ir3: Implement primitive layout intrinsics
Kristian H. Kristensen: This implements the load_vs_primitive_stride_ir3, load_vs_vertex_stride_ir3 and load_primitive_location_ir3 intrinsics, used for getting the primitive layout strides and locations.
- freedreno/ir3: Implement lowering passes for VS and GS
Kristian H. Kristensen: This introduces two new lowering passes.
- freedreno/ir3: Add has_gs flag to shader key
Kristian H. Kristensen: Since the presence of GS changes how the VS operates we need to track that in the shader key.
- freedreno/ir3: Add intrinsics that map to LDLW/STLW
Kristian H. Kristensen: These intrinsics will let us do all the offset calculations in nir, which is nicer to work with and lets nir_opt_algebraic eat it all up.
- freedreno/ir3: Add new LDLW/STLW instructions
Kristian H. Kristensen: These access memory used for passing data between geometry stages.
- freedreno/ir3: Add support for CHSH and CHMASK instructions
Kristian H. Kristensen: Just add the constructors for now and special case similar to END so we don't remove them.
- gallivm: Fix saturated signed psub/padd intrinsics on llvm 8
Roland Scheidegger: LLVM 8 did remove both the signed and unsigned sse2/avx intrinsics in the end, and provide arch-independent llvm intrinsics instead.
- mesa/st: support lowering user-clip-planes automatically
- nir: support lowering clipdist to arrays
Erik Faye-Lund: This allows us to make sure clipdist is emitted as a scalar array rather than two vec4s.
- nir: add lowering-pass for point-size mov
- gallium: add flatshade lowering capability
Dave Airlie: This allows the driver to request flatshade lowering.
- nir: add a pass to lower flat shading
Dave Airlie: This takes any color or backcolor that has unspecified shading and converts it to flat shading.
- st/mesa: fix crash for drivers supporting nir defaulting to tgsi
Karol Herbst: nvc0 and I assume radeonsi as well hit an assert inside glsl_to_tgsi as atan instructions get inserted into the shader.