This patch series generally improves the state of branching in the
Midgard compiler. Notably, in addition to resolving a number of bugs
breaking branching in real apps, it implements support for extended
branches (far jumps). In total, the series enables much more
sophisticated branching, fixing a nontrivial shader in a target app.
Performance is wanting at the moment, but Midgard is believed to use
small warp sizes, so this should be fixable in the future.

Alyssa Rosenzweig (7):
  panfrost/midgard: Refactor tag lookahead code
  panfrost/midgard: Fix nested/chained if-else
  panfrost: Rectify doubleplusungood extended branch
  panfrost: Update extended branch disassembly
  panfrost/midgard: Emit extended branches
  panfrost: Dynamically set discard branch targets
  panfrost: Verify and print brx condition in disasm

 .../drivers/panfrost/midgard/disassemble.c    |  24 ++-
 .../drivers/panfrost/midgard/helpers.h        |   7 +
 .../drivers/panfrost/midgard/midgard.h        |   3 +-
 .../panfrost/midgard/midgard_compile.c        | 202 +++++++++++++-----
 4 files changed, 171 insertions(+), 65 deletions(-)

-- 
2.20.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to