[PATCH] R600/SI: Remove M0 from DS assembly strings

Tom Stellard tom at stellard.net
Wed Feb 25 08:44:04 PST 2015


On Tue, Feb 24, 2015 at 06:51:16PM -0800, Matt Arsenault wrote:
> On 02/24/2015 06:09 PM, Tom Stellard wrote:
> >This matches the assembly syntax for the proprietary compiler.
> >---
> >  lib/Target/R600/SIInstrInfo.td                  | 12 +++----
> >  test/CodeGen/R600/32-bit-local-address-space.ll |  2 +-
> >  test/CodeGen/R600/atomic_cmp_swap_local.ll      | 10 +++---
> >  test/CodeGen/R600/ds_write2.ll                  | 20 +++++------
> >  test/CodeGen/R600/ds_write2st64.ll              |  8 ++---
> >  test/CodeGen/R600/local-64.ll                   | 48 ++++++++++++-------------
> >  test/CodeGen/R600/local-atomics.ll              | 22 ++++++------
> >  test/CodeGen/R600/local-atomics64.ll            |  4 +--
> >  test/CodeGen/R600/shl_add_ptr.ll                |  8 ++---
> >  9 files changed, 67 insertions(+), 67 deletions(-)
> >
> >
> LGTM. I've also been meaning to make M0 an implicit use instead of a
> single member register class

This will be challenging, because there are graphics shaders that use VINTRP
and DS instructions which both require different values to be in M0.

Maybe this will work better now that the DAGScheduler is disabled, but I
had trouble before where DS and VINTRP instructions were interleaved.

-Tom

> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits



More information about the llvm-commits mailing list