This series is dedicated to improving the Midgard compiler, specifically regarding the sections about indirect indexing and looping constructs. In the process, a number of orthogonal bugs/mysteries touched by these tests were fixed. The net result is that we are now passing all of:
dEQP-GLES2.functional.shaders.loops.* We're also passing a fair amount of shaders.indexing.*, but there are some more RA issues to sort out (some of the more complex shaders there are failing due to running out of registers; spilling isn't implemented yet). Alyssa Rosenzweig (19): panfrost/mdg/disasm: Print raw varying_parameters panfrost/midgard: Pipe through varying arrays panfrost/midgard: Implement indirect loads of varyings/UBOs panfrost/midgard: Respect component of bcsel condition panfrost/midgard: Remove useless MIR dump panfrost: Respect backwards branches in RA panfrost/midgard: Don't try to inline constants on branches panfrost/midgard: imul can only run on *mul panfrost: Disable indirect outputs for now panfrost: Use actual imov instruction panfrost/midgard: Dead code eliminate MIR panfrost/midgard: Track loop depth panfrost/midgard: Fix off-by-one in successor analysis panfrost/midgard: Remove unused mir_next_block panfrost/midgard: Update integer op list panfrost/midgard: Document sign-extension/zero-extension bits (vector) panfrost/midgard: Set integer mods panfrost/midgard: Implement copy propagation panfrost/midgard: Optimize MIR in progress loop .../drivers/panfrost/midgard/disassemble.c | 45 +- .../drivers/panfrost/midgard/helpers.h | 38 +- .../drivers/panfrost/midgard/midgard.h | 15 +- .../panfrost/midgard/midgard_compile.c | 401 ++++++++++++++---- src/gallium/drivers/panfrost/pan_screen.c | 3 + 5 files changed, 393 insertions(+), 109 deletions(-) -- 2.20.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev