Test commit.
[oota-llvm.git] / lib / Target / Mips / MicroMipsDSPInstrFormats.td
1 //===-- MicroMipsDSPInstrFormats.td - 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 class MMDSPInst<string opstr = "">
11     : MipsInst<(outs), (ins), "", [], NoItinerary, FrmOther>, PredicateControl {
12   let InsnPredicates = [HasDSP];
13   string BaseOpcode = opstr;
14   string Arch = "mmdsp";
15   let DecoderNamespace = "MicroMips";
16 }
17
18 class POOL32A_3R_FMT<bits<11> op> : MMDSPInst {
19   bits<5> rd;
20   bits<5> rs;
21   bits<5> rt;
22
23   let Inst{31-26} = 0b000000;
24   let Inst{25-21} = rt;
25   let Inst{20-16} = rs;
26   let Inst{15-11} = rd;
27   let Inst{10-0}  = op;
28 }