//===- Lanai.td - Describe the Lanai Target Machine --------*- tablegen -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// //===----------------------------------------------------------------------===// // Target-independent interfaces which we are implementing //===----------------------------------------------------------------------===// include "llvm/Target/Target.td" //===----------------------------------------------------------------------===// // Register File, Calling Conv, Instruction Descriptions //===----------------------------------------------------------------------===// include "LanaiSchedule.td" include "LanaiRegisterInfo.td" include "LanaiCallingConv.td" include "LanaiInstrInfo.td" def LanaiInstrInfo : InstrInfo; //===----------------------------------------------------------------------===// // Lanai processors supported. //===----------------------------------------------------------------------===// def : ProcessorModel<"generic", LanaiSchedModel, []>; def : ProcessorModel<"v11", LanaiSchedModel, []>; def LanaiInstPrinter : AsmWriter { string AsmWriterClassName = "InstPrinter"; bit isMCAsmWriter = 1; } //===----------------------------------------------------------------------===// // Declare the target which we are implementing //===----------------------------------------------------------------------===// def Lanai : Target { // Pull in Instruction Info: let InstructionSet = LanaiInstrInfo; let AssemblyWriters = [LanaiInstPrinter]; }