summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Mips/MipsInstrFormats.td
diff options
context:
space:
mode:
authorVladimir Medic <Vladimir.Medic@imgtec.com>2013-08-12 13:07:23 +0000
committerVladimir Medic <Vladimir.Medic@imgtec.com>2013-08-12 13:07:23 +0000
commit939877ee147dcbb02a345eed1a2ce3d42a98aa15 (patch)
tree8e200e13838b9ce96806f08788e22ac53e008975 /llvm/lib/Target/Mips/MipsInstrFormats.td
parent467ddb161c3120141d89fcb81a0f2f9500c47177 (diff)
downloadbcm5719-llvm-939877ee147dcbb02a345eed1a2ce3d42a98aa15.tar.gz
bcm5719-llvm-939877ee147dcbb02a345eed1a2ce3d42a98aa15.zip
This patch implements ei and di instructions for mips. Test cases are added.
llvm-svn: 188176
Diffstat (limited to 'llvm/lib/Target/Mips/MipsInstrFormats.td')
-rw-r--r--llvm/lib/Target/Mips/MipsInstrFormats.td18
1 files changed, 18 insertions, 0 deletions
diff --git a/llvm/lib/Target/Mips/MipsInstrFormats.td b/llvm/lib/Target/Mips/MipsInstrFormats.td
index 13227848791..28abb7eb745 100644
--- a/llvm/lib/Target/Mips/MipsInstrFormats.td
+++ b/llvm/lib/Target/Mips/MipsInstrFormats.td
@@ -520,6 +520,24 @@ class ER_FM<bits<6> funct>
let Inst{5-0} = funct;
}
+
+//===----------------------------------------------------------------------===//
+// Enable/disable interrupt instruction format <Cop0|MFMC0|rt|12|0|sc|0|0>
+//===----------------------------------------------------------------------===//
+
+class EI_FM<bits<1> sc>
+{
+ bits<32> Inst;
+ bits<5> rt;
+ let Inst{31-26} = 0x10;
+ let Inst{25-21} = 0xb;
+ let Inst{20-16} = rt;
+ let Inst{15-11} = 0xc;
+ let Inst{10-6} = 0;
+ let Inst{5} = sc;
+ let Inst{4-0} = 0;
+}
+
//===----------------------------------------------------------------------===//
//
// FLOATING POINT INSTRUCTION FORMATS
OpenPOWER on IntegriCloud