URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=02babc834a508adf7726f783abf97dd2fe13e763
Author: Alyssa Rosenzweig <[email protected]>
Date:   Sun Jun 12 09:49:24 2022 -0400

    asahi: Identify stencil test enable
    
    There are a pair of flags controlling the stencil test. One enables
    stencil testing in general, the other enables two-sided stencil. Compare
    the identical "twosided" flag in src/imagination/csbgen/rogue_ppp.xml's
    STATE_ISPCTL structure, at the samebit offset even. Evidently this word of
    the "Rasterizer" is, in fact, a derivative of STATE_ISPCTL.
    
    Fixes
    
       dEQP-GLES2.functional.fragment_ops.depth_stencil.*
       dEQP-GLES2.functional.fragment_ops.interaction.basic_shader.*
       dEQP-GLES2.functional.fragment_ops.random.*
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b891d60efa812bb6eaaafd5062cdd0759510f0ba
Author: Alyssa Rosenzweig <[email protected]>
Date:   Sun May 15 13:22:08 2022 -0400

    asahi: Fix depth/stencil buffers
    
    There are a bunch of bits we need to set right to get depth/stencil
    loads/stores working, including with independent settings for each. The
    kernel "helps" us here.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7cb21eb5956d3e60f86b0d1728d3861743b1b265
Author: Alyssa Rosenzweig <[email protected]>
Date:   Sat Sep 3 17:06:09 2022 -0400

    asahi: Handle out-of-bounds clear_stencil
    
    Just use the bottom 8-bits (we have only 8-bit stencil formats),
    otherwise we fail an assertion in GenXML. In this case the wrapping
    behaviour is ok.
    
    Fixes:
    
       dEQP-GLES2.functional.depth_stencil_clear.depth_stencil
       dEQP-GLES2.functional.depth_stencil_clear.stencil
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=66f116497618b20dbf5326b989c4522933f19f5c
Author: Alyssa Rosenzweig <[email protected]>
Date:   Sat Sep 3 15:02:20 2022 -0400

    asahi: Add 1D and 1D Array enums
    
    To finish out the enum.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2bdb8ba3ce3c8f4ccda533f67ed4ed0667bf5345
Author: Alyssa Rosenzweig <[email protected]>
Date:   Sat Sep 3 14:01:03 2022 -0400

    asahi: Correct SET_SHADER_EXTENDED disambig bit
    
    This is still a guess, but a considerably firmer one as it now corrects
    handles the clear pipelines emitted by Metal as well as the regular
    vertex/fragment shader, and gets rid of the preshader special cases
    seen there. Fixes decode of clear pipeline's preshaders.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=210f4aff1e24967b6fa25b228c09d2a8d0b617cb
Author: Alyssa Rosenzweig <[email protected]>
Date:   Sat Sep 3 11:53:46 2022 -0400

    asahi: Identify and use first level field of texture
    
    As we recently discovered, the layout of level L of a mipmapped 2D image
    of size WxH is /not/ the same as the layout of a non-mipmapped 2D image
    of size minify(W, L) x minify(H, L). The difference occurs due to
    subtleties of the "power of two" miptrees which can force a level to use
    a larger tile size than it would have required at root level. To handle
    this quirk correctly, the driver must not implement texture views with
    address arithmetic -- it must supply instead the base width/height of a
    texture and use first/last level fields on the texture descriptor to map
    it. Similar issues occur when writing a particular level of a mipmapped
    texture, which was handled correctly in the colour case but not the Z/S
    case.
    
    Fixes
    
       dEQP-GLES2.functional.texture.mipmap.cube.generate.*
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=1d72d3feb6427752427cd9f7e2e99070240b0884
Author: Alyssa Rosenzweig <[email protected]>
Date:   Fri Sep 2 23:19:54 2022 -0400

    asahi: Fix "stride" for tiled textures
    
    It doesn't exist, but there's a count of mip levels for writeable image
    descs. Setting that appropriately matters at high mip levels.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4442be1155a567f9117d8ea33493990bf0b7e52f
Author: Alyssa Rosenzweig <[email protected]>
Date:   Fri Sep 2 22:39:07 2022 -0400

    asahi: Fix nonmipmapped array textures
    
    pot_level can be greater than the number of levels actually included --
    don't overallocate. Fix the issue and add a representative unit test.
    Fixes:
    
       dEQP-GLES2.functional.texture.size.cube.512x512_rgb888
    
    Fixes: 6ff75da8aa4 ("ail: Introduce image layout module")
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a41d73278497abc61d111dcf718cd82a73ad680d
Author: Alyssa Rosenzweig <[email protected]>
Date:   Fri Sep 2 22:23:05 2022 -0400

    asahi: Fix depth for cube maps
    
    For cube maps, depth=1 in the hardware (but 6 in Gallium). Likewise for
    cube map arrays, depth=n in the hardware (but 6n in Gallium). We need to
    divide to compensate. This will be relevant for cube map arrays in the
    future -- add the dimension XML for cube map arrays too.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=99a5b11af54a754dbb4cc4ca8a07446a527b4c25
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Jun 16 23:30:29 2022 -0400

    asahi: Label batch flush reasons
    
    This was helpful in identifying the bottleneck in Inochi2D (the clears).
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e66a901bc84f17bd40998cb4f25348ee6dfbc9dd
Author: Alyssa Rosenzweig <[email protected]>
Date:   Tue Aug 9 21:53:59 2022 -0400

    asahi: Relax assert in decoder
    
    Seen == 0x8 with >4 render targets.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9542f9586443de828f83afcd33c1149a198b5940
Author: Alyssa Rosenzweig <[email protected]>
Date:   Mon May 23 12:35:39 2022 -0400

    asahi: Trim garbage at end of set shader
    
    Unfortunately the actual size of this data structure is unclear.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=279eaec278cece738ce68c67d4a5c2a6383bf5ed
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Jun 16 23:29:18 2022 -0400

    asahi: Use util_blitter_clear
    
    To avoid flush, use util_blitter_clear to clear with rectangles when
    there is already content in the scene. This ~doubles the performance of
    Inochi2D, which does frequent stencil clears in the middle of the screen
    to implement masking.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=fb7860ed248f1baf1808493502654531ba9fa572
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Sep 1 17:44:02 2022 -0400

    asahi: Handle empty fragment shaders
    
    When an empty fragment shader is used with Metal, the stop command is
    still included but this special bit is set, suppressing tilebuffer
    access. Failing to do so but using empty shaders for u_blitter depth
    clears causes Glitch Lina:
    
       https://twitter.com/LinaAsahi/status/1537869064793575424
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f8799c97b27ceb8f02016cc5b6449c5d8679a7c7
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Jun 16 23:10:06 2022 -0400

    asahi: Export agx_blitter_save
    
    So we can use it for clears.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6b329b16f84712769621d7f284969ff604f9fc47
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Jun 16 23:08:48 2022 -0400

    asahi: Make ctx->zs a pointer
    
    When we save ZSA state with u_blitter, u_blitter just records the
    pointer for the state. It doesn't copy it. That requires an extra
    indirection on the context (as other drivers do) to fix restores of ZSA
    state with u_blitter.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=968bbca578d39a9d3312140e00529c660ba97f1e
Author: Alyssa Rosenzweig <[email protected]>
Date:   Wed Jun 1 20:43:54 2022 -0400

    asahi: Note some more unknowns in the XML
    
    Lot of r/e waiting here...
    
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=47831969c8dd9b6cba758e8326a2220c147e6ac0
Author: Alyssa Rosenzweig <[email protected]>
Date:   Mon May 23 13:13:16 2022 -0400

    asahi: Split up unk 2b
    
    Seems to be flags.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=5f57fe0bc93c587ba6ac646670a675d61d5d107f
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Sep 1 18:20:38 2022 -0400

    asahi: Fix Indexed Draw command
    
    Add the missing stub in the decoder for it, so we can decode indexed
    draws instead of reading back garbage, and fill in some known unknowns
    in the structure.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=10c9aceadff4edd2d0b5304ceb1f5bb8d8d625f8
Author: Alyssa Rosenzweig <[email protected]>
Date:   Sat Sep 3 15:31:15 2022 -0400

    agx: Plumb through nir_op_txf
    
    nir_op_txf maps to AGX's texture_load, which is encoded like
    texture_sample. The one outstanding question with this commit is the
    rules for the sample required ... in NIR and APIs (including Metal), txf
    is samplerless, but the AGX instruction consumes a sampler. Hopefully
    any sampler will do, though?
    
    Passes dEQP-GLES3.functional.shaders.texture_functions.texelfetch.*
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=44d79d39b6bdbc87e821de55e51d5cdd04e4ccb4
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Sep 1 23:08:26 2022 -0400

    agx: Defeature indirect vbufs
    
    vb_mask can include garbage vbufs, we can't rely on it. This will
    prevent a regression when switching to u_blitter based clears. This is
    also simpler and shrinks the VS shader key so all in all a good thing.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0fccd564b6269b6326042344bc8227388b17b4fe
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Sep 1 23:01:51 2022 -0400

    agx: Don't hardcode uniform enums
    
    Let the compiler number them for us, the numbers are meaningless.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=18bb64fd3a7cb9321681db60bd2f734216afd41a
Author: Alyssa Rosenzweig <[email protected]>
Date:   Fri Sep 2 22:51:47 2022 -0400

    agx: Add more unit tests for float copyprop
    
    Would have caught the bug fixed by the previous commit.
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=095415cdf716e2f4311d07e01f2c279518c140aa
Author: Alyssa Rosenzweig <[email protected]>
Date:   Fri Sep 2 22:53:59 2022 -0400

    agx: Fix float copyprop of neg(neg) case
    
    They should cancel each other. Fixes:
    
       dEQP-GLES2.functional.shaders.random.basic_expression.combined.0
    
    Fixes: 28801b48493 ("agx: Add forward optimizing pass for fmov")
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9645e46a53b5d0770e20b1d520989985a6cdc952
Author: Alyssa Rosenzweig <[email protected]>
Date:   Thu Sep 1 20:55:30 2022 -0400

    agx: Fix tib access in internal shaders
    
    The only case where tilebuffer access can be specially optimized is the
    st_tile used in internal clear (or reload) shaders. However, other
    shaders (like those used with u_blitter) may have nir->info.internal
    set, so we can't key off that. Instead, add a special key for this
    optimization to ensure correctness with other internal shaders.
    
    Fixes flaky tests in dEQP-GLES2.functional.color_clear.*
    
    Signed-off-by: Alyssa Rosenzweig <[email protected]>
    Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18380>

Reply via email to