1//===-- BPF.td - Describe the BPF Target Machine -----------*- 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 10include "llvm/Target/Target.td" 11 12include "BPFRegisterInfo.td" 13include "BPFCallingConv.td" 14include "BPFInstrInfo.td" 15 16def BPFInstrInfo : InstrInfo; 17 18class Proc<string Name, list<SubtargetFeature> Features> 19 : Processor<Name, NoItineraries, Features>; 20 21def : Proc<"generic", []>; 22 23def BPFInstPrinter : AsmWriter { 24 string AsmWriterClassName = "InstPrinter"; 25 bit isMCAsmWriter = 1; 26} 27 28def BPFAsmParserVariant : AsmParserVariant { 29 int Variant = 0; 30 string Name = "BPF"; 31 string BreakCharacters = "."; 32} 33 34def BPF : Target { 35 let InstructionSet = BPFInstrInfo; 36 let AssemblyWriters = [BPFInstPrinter]; 37 let AssemblyParserVariants = [BPFAsmParserVariant]; 38} 39