diff options
| author | Daniel Sanders <daniel.sanders@imgtec.com> | 2015-09-24 12:10:23 +0000 |
|---|---|---|
| committer | Daniel Sanders <daniel.sanders@imgtec.com> | 2015-09-24 12:10:23 +0000 |
| commit | 090f6e41c43a06f8f71edf6427fabff8317d2f77 (patch) | |
| tree | 4f033da130c9959d229c67daf96c8ee3ec34a78d /llvm/lib/Target/Mips/MipsMSAInstrFormats.td | |
| parent | 2d0ece960fb4d60f74eb9a97858da97a659aa2f8 (diff) | |
| download | bcm5719-llvm-090f6e41c43a06f8f71edf6427fabff8317d2f77.tar.gz bcm5719-llvm-090f6e41c43a06f8f71edf6427fabff8317d2f77.zip | |
[mips] Use PredicateControl for the MSA ASE instructions. NFC.
Reviewers: vkalintiris
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D13092
llvm-svn: 248486
Diffstat (limited to 'llvm/lib/Target/Mips/MipsMSAInstrFormats.td')
| -rw-r--r-- | llvm/lib/Target/Mips/MipsMSAInstrFormats.td | 24 |
1 files changed, 7 insertions, 17 deletions
diff --git a/llvm/lib/Target/Mips/MipsMSAInstrFormats.td b/llvm/lib/Target/Mips/MipsMSAInstrFormats.td index bff2d0fab1e..7d25ea56e3d 100644 --- a/llvm/lib/Target/Mips/MipsMSAInstrFormats.td +++ b/llvm/lib/Target/Mips/MipsMSAInstrFormats.td @@ -7,18 +7,12 @@ // //===----------------------------------------------------------------------===// -def HasMSA : Predicate<"Subtarget->hasMSA()">, - AssemblerPredicate<"FeatureMSA">; - -class MSAInst : MipsInst<(outs), (ins), "", [], NoItinerary, FrmOther> { - let Predicates = [HasMSA]; +class MSAInst : MipsInst<(outs), (ins), "", [], NoItinerary, FrmOther>, + PredicateControl, ASE_MSA { + let EncodingPredicates = [HasStdEnc]; let Inst{31-26} = 0b011110; } -class MSA64Inst : MSAInst { - let Predicates = [HasMSA, HasMips64]; -} - class MSACBranch : MSAInst { let Inst{31-26} = 0b010001; } @@ -27,10 +21,6 @@ class MSASpecial : MSAInst { let Inst{31-26} = 0b000000; } -class MSA64Special : MSA64Inst { - let Inst{31-26} = 0b000000; -} - class MSAPseudo<dag outs, dag ins, list<dag> pattern, InstrItinClass itin = IIPseudo>: MipsPseudo<outs, ins, pattern, itin> { @@ -100,7 +90,7 @@ class MSA_2R_FILL_FMT<bits<8> major, bits<2> df, bits<6> minor>: MSAInst { let Inst{5-0} = minor; } -class MSA_2R_FILL_D_FMT<bits<8> major, bits<2> df, bits<6> minor>: MSA64Inst { +class MSA_2R_FILL_D_FMT<bits<8> major, bits<2> df, bits<6> minor>: MSAInst { bits<5> rs; bits<5> wd; @@ -293,7 +283,7 @@ class MSA_ELM_COPY_W_FMT<bits<4> major, bits<6> minor>: MSAInst { let Inst{5-0} = minor; } -class MSA_ELM_COPY_D_FMT<bits<4> major, bits<6> minor>: MSA64Inst { +class MSA_ELM_COPY_D_FMT<bits<4> major, bits<6> minor>: MSAInst { bits<4> n; bits<5> ws; bits<5> rd; @@ -345,7 +335,7 @@ class MSA_ELM_INSERT_W_FMT<bits<4> major, bits<6> minor>: MSAInst { let Inst{5-0} = minor; } -class MSA_ELM_INSERT_D_FMT<bits<4> major, bits<6> minor>: MSA64Inst { +class MSA_ELM_INSERT_D_FMT<bits<4> major, bits<6> minor>: MSAInst { bits<6> n; bits<5> rs; bits<5> wd; @@ -450,7 +440,7 @@ class SPECIAL_LSA_FMT<bits<6> minor>: MSASpecial { let Inst{5-0} = minor; } -class SPECIAL_DLSA_FMT<bits<6> minor>: MSA64Special { +class SPECIAL_DLSA_FMT<bits<6> minor>: MSASpecial { bits<5> rs; bits<5> rt; bits<5> rd; |

