1//===-- BPFInstrFormats.td - BPF 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 10class InstBPF<dag outs, dag ins, string asmstr, list<dag> pattern> 11 : Instruction { 12 field bits<64> Inst; 13 field bits<64> SoftFail = 0; 14 let Size = 8; 15 16 let Namespace = "BPF"; 17 let DecoderNamespace = "BPF"; 18 19 bits<3> BPFClass; 20 let Inst{58-56} = BPFClass; 21 22 dag OutOperandList = outs; 23 dag InOperandList = ins; 24 let AsmString = asmstr; 25 let Pattern = pattern; 26} 27 28// Pseudo instructions 29class Pseudo<dag outs, dag ins, string asmstr, list<dag> pattern> 30 : InstBPF<outs, ins, asmstr, pattern> { 31 let Inst{63-0} = 0; 32 let isPseudo = 1; 33} 34