Mesa (master): 21 new commits

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Apr 24 02:35:49 UTC 2019


URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bb1aff3007f4dcb0149e82e205e7451bcd4942de
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Wed Apr 24 02:18:28 2019 +0000

    panfrost/midgard: Add "op commutes?" property
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1f345bc7d62fac1773afef7310174ad209ae986b
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Wed Apr 24 01:15:15 2019 +0000

    panfrost/midgard: Refactor opcode tables
    
    We create an all-encompassing opcode table for handling name and
    properties, removing a number of ad hoc opcode tables which became
    brittle and quickly out of date. While we're at it, we fix some
    incorrect opcodes relating to ball/bany, and move a small function out
    to midgard_compile.c. Together these changes should allow compilation
    without warnings, along with helping the codebase health considerably.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=4d995e0da818ee089c02f868b5bb17dbefbd7b4c
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Mon Apr 22 04:58:53 2019 +0000

    panfrost/midgard: Optimize MIR in progress loop
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=e9f84f1447b53a279779280172756f70c09eda91
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Mon Apr 22 04:56:25 2019 +0000

    panfrost/midgard: Implement copy propagation
    
    Most copy prop should occur at the NIR level, but we generate a fair
    number of moves implicitly ourselves, etc... long story short, it's a
    net win to also do simple copy prop + DCE on the MIR. As a bonus, this
    fixes the weird imov precision bug once and for good, I think.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=fcdfb67711e5d990be399d3a09695c0f6992ade1
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Mon Apr 22 03:25:42 2019 +0000

    panfrost/midgard: Set integer mods
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=422aceb407f63ef23659c890a9536101e4f654f7
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Mon Apr 22 03:08:25 2019 +0000

    panfrost/midgard: Document sign-extension/zero-extension bits (vector)
    
    For floating point ops, these bits determine the "negate?" and "abs?"
    modifiers. For integer ops, it turns out they control how sign/zero
    extension work, useful for mixing types.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=b453c877d91839cf4af32456ee39843433f43b65
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Mon Apr 22 02:56:53 2019 +0000

    panfrost/midgard: Update integer op list
    
    In the future, we might want to switch to a table-based approach, but
    for now, at least have it current.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b380a7868a588a0aabd31b6f01e9bcd674b26ae
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 19:13:27 2019 +0000

    panfrost/midgard: Remove unused mir_next_block
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=879ff866b68e0de0c56d5211b94b75cf443eda1f
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 19:12:10 2019 +0000

    panfrost/midgard: Fix off-by-one in successor analysis
    
    This reduces register pressure substantially since we get smaller
    liveness ranges.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=521ac6e5b1c58f76076a6a2973b8a44a07cedbc9
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 16:22:44 2019 +0000

    panfrost/midgard: Track loop depth
    
    This fixes nested loops.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=84f09ff43328f2cb56c041fee36735802de8a378
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 16:11:11 2019 +0000

    panfrost/midgard: Dead code eliminate MIR
    
    We reshuffle the existing "dead move elimination" pass into a generic
    dead code elimination layer, fixing bugs incurred with looping in the
    process.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=328a5ef598db141ffbec638fb831f9047cb687bf
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 05:11:37 2019 +0000

    panfrost: Use actual imov instruction
    
    The bug this worked around is no longer applicable, it seems -- remove
    the hack that breaks more than it fixes.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=12cd89da816336bf40f989f092c62ea473906aac
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 05:11:02 2019 +0000

    panfrost: Disable indirect outputs for now
    
    The hardware needs this lowered anyway; for now, might as well use
    mesa's default lowering for pure conformance reasons.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=9db5816e02b23054453ccd7a1fa99a99fa5c5995
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 04:09:10 2019 +0000

    panfrost/midgard: imul can only run on *mul
    
    This restriction makes sense logically. Not sure why it wasn't obeyed
    before. In conjunction with previous commit's disclaimer, fixes
    dEQP-GLES2.functional.shaders.loop.for_dynamic_iterations.*
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a1aaf72915cef87dec738646d0a40f1d0e44a876
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 03:59:05 2019 +0000

    panfrost/midgard: Don't try to inline constants on branches
    
    Along with a corresponding fix to the move elimination pass (not
    included here yet -- I just have it disabled for now), this will fix
    dEQP-GLES2.functional.shaders.loops.for_uniform_iterations.*
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=c0fb2605dcd473722a871cc1416d68d901b3917d
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 03:29:47 2019 +0000

    panfrost: Respect backwards branches in RA
    
    Fixes a bunch of issues with looping. Honestly, I'm not sure why loops
    worked at all before.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=7d45bd9c91443ad3aa1c4bd1e281a64cc39f43a1
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 01:43:08 2019 +0000

    panfrost/midgard: Remove useless MIR dump
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8b15f8a343ce43604fee803f8979de60068f2658
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sun Apr 21 00:09:13 2019 +0000

    panfrost/midgard: Respect component of bcsel condition
    
    Fixes a bunch of non-vec4 indexing.varying_array tests.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6a466c0a06ab756fd6874490c8f356a47845243f
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sat Apr 20 23:52:42 2019 +0000

    panfrost/midgard: Implement indirect loads of varyings/UBOs
    
    This adds preliminary support for indirect loads of varying arrays and
    uniform arrays, bringing a few new tests in shader.indexing.* to
    passing, although there remains a number of cases still missing.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1f7b3884c9ba3f176e096c8aa4dff19fad0453cb
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sat Apr 20 23:39:29 2019 +0000

    panfrost/midgard: Pipe through varying arrays
    
    Varying arrays sometimes are lowered to a series of directly accessed
    varyings (which we handled okay), but when indirectly accessed, they
    appear as a single array; we need to handle this as well.
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>

URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=042d0bb5c3b457e92f8de2427ee258778b51aef4
Author: Alyssa Rosenzweig <alyssa at rosenzweig.io>
Date:   Sat Apr 20 23:37:14 2019 +0000

    panfrost/mdg/disasm: Print raw varying_parameters
    
    The semantics of this field are not well understood; it is better to
    print it unconditionally along with the other unknown state, rather than
    silently eat the value. Without this change, some critical state was
    being lost in some shaders (notably, the offset for load/store
    scratchpad intructions found in shaders that spill registers.)
    
    Signed-off-by: Alyssa Rosenzweig <alyssa at rosenzweig.io>




More information about the mesa-commit mailing list