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