[llvm] r190151 - [mips][msa] Made the operand register sets optional for the ELM_INSVE formats
Daniel Sanders
daniel.sanders at imgtec.com
Fri Sep 6 05:50:52 PDT 2013
Author: dsanders
Date: Fri Sep 6 07:50:52 2013
New Revision: 190151
URL: http://llvm.org/viewvc/llvm-project?rev=190151&view=rev
Log:
[mips][msa] Made the operand register sets optional for the ELM_INSVE formats
Their default is to be the same as the result register set.
No functional change
Modified:
llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td
Modified: llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td?rev=190151&r1=190150&r2=190151&view=diff
==============================================================================
--- llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td (original)
+++ llvm/trunk/lib/Target/Mips/MipsMSAInstrInfo.td Fri Sep 6 07:50:52 2013
@@ -927,14 +927,14 @@ class MSA_INSERT_DESC_BASE<string instr_
}
class MSA_INSVE_DESC_BASE<string instr_asm, SDPatternOperator OpNode,
- RegisterClass RCD, RegisterClass RCWS,
+ RegisterClass RCWD, RegisterClass RCWS = RCWD,
InstrItinClass itin = NoItinerary> {
- dag OutOperandList = (outs RCD:$wd);
- dag InOperandList = (ins RCD:$wd_in, uimm6:$n, RCWS:$ws);
+ dag OutOperandList = (outs RCWD:$wd);
+ dag InOperandList = (ins RCWD:$wd_in, uimm6:$n, RCWS:$ws);
string AsmString = !strconcat(instr_asm, "\t$wd[$n], $ws[0]");
- list<dag> Pattern = [(set RCD:$wd, (OpNode RCD:$wd_in,
- immZExt6:$n,
- RCWS:$ws))];
+ list<dag> Pattern = [(set RCWD:$wd, (OpNode RCWD:$wd_in,
+ immZExt6:$n,
+ RCWS:$ws))];
InstrItinClass Itinerary = itin;
string Constraints = "$wd = $wd_in";
}
@@ -1571,14 +1571,10 @@ class INSERT_H_DESC : MSA_INSERT_DESC_BA
class INSERT_W_DESC : MSA_INSERT_DESC_BASE<"insert.w", int_mips_insert_w,
MSA128W, GPR32>;
-class INSVE_B_DESC : MSA_INSVE_DESC_BASE<"insve.b", int_mips_insve_b,
- MSA128B, MSA128B>;
-class INSVE_H_DESC : MSA_INSVE_DESC_BASE<"insve.h", int_mips_insve_h,
- MSA128H, MSA128H>;
-class INSVE_W_DESC : MSA_INSVE_DESC_BASE<"insve.w", int_mips_insve_w,
- MSA128W, MSA128W>;
-class INSVE_D_DESC : MSA_INSVE_DESC_BASE<"insve.d", int_mips_insve_d,
- MSA128D, MSA128D>;
+class INSVE_B_DESC : MSA_INSVE_DESC_BASE<"insve.b", int_mips_insve_b, MSA128B>;
+class INSVE_H_DESC : MSA_INSVE_DESC_BASE<"insve.h", int_mips_insve_h, MSA128H>;
+class INSVE_W_DESC : MSA_INSVE_DESC_BASE<"insve.w", int_mips_insve_w, MSA128W>;
+class INSVE_D_DESC : MSA_INSVE_DESC_BASE<"insve.d", int_mips_insve_d, MSA128D>;
class LD_DESC_BASE<string instr_asm, SDPatternOperator OpNode,
ValueType TyNode, RegisterClass RCWD,
More information about the llvm-commits
mailing list