1 //===--- BlackfinInstrFormats.td ---------------------------*- 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 //===----------------------------------------------------------------------===// 11 // Instruction format superclass 12 //===----------------------------------------------------------------------===// 13 14 class InstBfin<dag outs, dag ins, string asmstr, list<dag> pattern> 15 : Instruction { 16 field bits<32> Inst; 17 18 let Namespace = "BF"; 19 20 dag OutOperandList = outs; 21 dag InOperandList = ins; 22 let AsmString = asmstr; 23 let Pattern = pattern; 24 } 25 26 // Single-word (16-bit) instructions 27 class F1<dag outs, dag ins, string asmstr, list<dag> pattern> 28 : InstBfin<outs, ins, asmstr, pattern> { 29 } 30 31 // Double-word (32-bit) instructions 32 class F2<dag outs, dag ins, string asmstr, list<dag> pattern> 33 : InstBfin<outs, ins, asmstr, pattern> { 34 } 35