summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/MipsMSAInstrFormats.td
diff options
context:
space:
mode:
authorJack Carter <jack.carter@imgtec.com>2013-09-30 17:58:07 +0000
committerJack Carter <jack.carter@imgtec.com>2013-09-30 17:58:07 +0000
commitc3b25686b9b26439505873ad7e49342750507133 (patch)
treef11c4f10e2d8f19d01e2f2481741e73fd5bf9d6c /llvm/lib/Target/Mips/MipsMSAInstrFormats.td
parentbe904775d2bfa7e421b571e6d7708694ace5bcfb (diff)
downloadbcm5719-llvm-c3b25686b9b26439505873ad7e49342750507133.tar.gz
bcm5719-llvm-c3b25686b9b26439505873ad7e49342750507133.zip
[mips][msa] Direct Object Emission for I5 instructions.
This patch adds Direct Object Emission support for I5 instructions: addvi.{b,h,w,d}, ceqi.{b,h,w,d}, clei_s.{b,h,w,d}, clei_u.{b,h,w,d}, clti_s.{b,h,w,d}, clti_u.{b,h,w,d}, maxi_s.{b,h,w,d}, maxi_u.{b,h,w,d}, mini_s.{b,h,w,d}, mini_u.{b,h,w,d}, subvi.{b,h,w,d}. Patch by Matheus Almeida llvm-svn: 191687
Diffstat (limited to 'llvm/lib/Target/Mips/MipsMSAInstrFormats.td')
-rw-r--r--llvm/lib/Target/Mips/MipsMSAInstrFormats.td7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/Target/Mips/MipsMSAInstrFormats.td b/llvm/lib/Target/Mips/MipsMSAInstrFormats.td
index 053af339b75..cda01b669f0 100644
--- a/llvm/lib/Target/Mips/MipsMSAInstrFormats.td
+++ b/llvm/lib/Target/Mips/MipsMSAInstrFormats.td
@@ -134,8 +134,15 @@ class MSA_ELM_D_FMT<bits<4> major, bits<6> minor>: MSAInst {
}
class MSA_I5_FMT<bits<3> major, bits<2> df, bits<6> minor>: MSAInst {
+ bits<5> imm;
+ bits<5> ws;
+ bits<5> wd;
+
let Inst{25-23} = major;
let Inst{22-21} = df;
+ let Inst{20-16} = imm;
+ let Inst{15-11} = ws;
+ let Inst{10-6} = wd;
let Inst{5-0} = minor;
}
OpenPOWER on IntegriCloud