Akira Hatanaka | 329df55 | 2012-09-22 00:06:06 +0000 | [diff] [blame^] | 1 | //===- MipsDSPInstrFormats.td - Mips Instruction Formats ---*- tablegen -*-===// |
| 2 | // |
| 3 | // The LLVM Compiler Infrastructure |
| 4 | // |
| 5 | // This file is distributed under the University of Illinois Open Source |
| 6 | // License. See LICENSE.TXT for details. |
| 7 | // |
| 8 | //===----------------------------------------------------------------------===// |
| 9 | |
| 10 | def HasDSP : Predicate<"Subtarget.hasDSP()">, |
| 11 | AssemblerPredicate<"FeatureDSP">; |
| 12 | def HasDSPR2 : Predicate<"Subtarget.hasDSPR2()">, |
| 13 | AssemblerPredicate<"FeatureDSPR2">; |
| 14 | |
| 15 | // Fields. |
| 16 | class Field6<bits<6> val> { |
| 17 | bits<6> V = val; |
| 18 | } |
| 19 | |
| 20 | def SPECIAL3_OPCODE : Field6<0b011111>; |
| 21 | def REGIMM_OPCODE : Field6<0b000001>; |
| 22 | |
| 23 | class DSPInst : MipsInst<(outs), (ins), "", [], NoItinerary, FrmOther> { |
| 24 | let Predicates = [HasDSP]; |
| 25 | } |