[llvm] r193080 - [mips][msa] Direct Object Emission support for MOVE.v.

Matheus Almeida matheus.almeida at imgtec.com
Mon Oct 21 05:43:54 PDT 2013


Author: matheusalmeida
Date: Mon Oct 21 07:43:54 2013
New Revision: 193080

URL: http://llvm.org/viewvc/llvm-project?rev=193080&view=rev
Log:
[mips][msa] Direct Object Emission support for MOVE.v.


Modified:
    llvm/trunk/lib/Target/Mips/MipsMSAInstrFormats.td
    llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td
    llvm/trunk/test/MC/Mips/msa/test_elm.s

Modified: llvm/trunk/lib/Target/Mips/MipsMSAInstrFormats.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsMSAInstrFormats.td?rev=193080&r1=193079&r2=193080&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Mips/MipsMSAInstrFormats.td (original)
+++ llvm/trunk/lib/Target/Mips/MipsMSAInstrFormats.td Mon Oct 21 07:43:54 2013
@@ -146,7 +146,12 @@ class MSA_3R_INDEX_FMT<bits<3> major, bi
 }
 
 class MSA_ELM_FMT<bits<10> major, bits<6> minor>: MSAInst {
+  bits<5> ws;
+  bits<5> wd;
+
   let Inst{25-16} = major;
+  let Inst{15-11} = ws;
+  let Inst{10-6} = wd;
   let Inst{5-0} = minor;
 }
 

Modified: llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td?rev=193080&r1=193079&r2=193080&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td (original)
+++ llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td Mon Oct 21 07:43:54 2013
@@ -2158,8 +2158,8 @@ class MOD_U_W_DESC : MSA_3R_DESC_BASE<"m
 class MOD_U_D_DESC : MSA_3R_DESC_BASE<"mod_u.d", urem, MSA128DOpnd>;
 
 class MOVE_V_DESC {
-  dag OutOperandList = (outs MSA128B:$wd);
-  dag InOperandList = (ins MSA128B:$ws);
+  dag OutOperandList = (outs MSA128BOpnd:$wd);
+  dag InOperandList = (ins MSA128BOpnd:$ws);
   string AsmString = "move.v\t$wd, $ws";
   list<dag> Pattern = [];
   InstrItinClass Itinerary = NoItinerary;

Modified: llvm/trunk/test/MC/Mips/msa/test_elm.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Mips/msa/test_elm.s?rev=193080&r1=193079&r2=193080&view=diff
==============================================================================
--- llvm/trunk/test/MC/Mips/msa/test_elm.s (original)
+++ llvm/trunk/test/MC/Mips/msa/test_elm.s Mon Oct 21 07:43:54 2013
@@ -16,6 +16,7 @@
 # CHECK:        splati.h        $w24, $w28[1]           # encoding: [0x78,0x61,0xe6,0x19]
 # CHECK:        splati.w        $w13, $w18[0]           # encoding: [0x78,0x70,0x93,0x59]
 # CHECK:        splati.d        $w28, $w1[0]            # encoding: [0x78,0x78,0x0f,0x19]
+# CHECK:        move.v          $w23, $w24              # encoding: [0x78,0xbe,0xc5,0xd9]
 
 # CHECKOBJDUMP:        copy_s.b        $13, $w8[2]
 # CHECKOBJDUMP:        copy_s.h        $1, $w25[0]
@@ -31,6 +32,7 @@
 # CHECKOBJDUMP:        splati.h        $w24, $w28[1]
 # CHECKOBJDUMP:        splati.w        $w13, $w18[0]
 # CHECKOBJDUMP:        splati.d        $w28, $w1[0]
+# CHECKOBJDUMP:        move.v          $w23, $w24
 
                 copy_s.b        $13, $w8[2]
                 copy_s.h        $1, $w25[0]
@@ -46,3 +48,4 @@
                 splati.h        $w24, $w28[1]
                 splati.w        $w13, $w18[0]
                 splati.d        $w28, $w1[0]
+                move.v          $w23, $w24





More information about the llvm-commits mailing list