1//===-- VE.td - Describe the VE Target Machine -------------*- tablegen -*-===// 2// 3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4// See https://llvm.org/LICENSE.txt for license information. 5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6// 7//===----------------------------------------------------------------------===// 8// 9// 10//===----------------------------------------------------------------------===// 11 12//===----------------------------------------------------------------------===// 13// Target-independent interfaces which we are implementing 14//===----------------------------------------------------------------------===// 15 16include "llvm/Target/Target.td" 17 18//===----------------------------------------------------------------------===// 19// VE Subtarget features. 20// 21 22//===----------------------------------------------------------------------===// 23// Register File, Calling Conv, Instruction Descriptions 24//===----------------------------------------------------------------------===// 25 26include "VERegisterInfo.td" 27include "VECallingConv.td" 28include "VEInstrInfo.td" 29 30def VEInstrInfo : InstrInfo; 31 32//===----------------------------------------------------------------------===// 33// VE processors supported. 34//===----------------------------------------------------------------------===// 35 36class Proc<string Name, list<SubtargetFeature> Features> 37 : Processor<Name, NoItineraries, Features>; 38 39def : Proc<"ve", []>; 40 41//===----------------------------------------------------------------------===// 42// Declare the target which we are implementing 43//===----------------------------------------------------------------------===// 44 45def VEAsmWriter : AsmWriter { 46 string AsmWriterClassName = "InstPrinter"; 47 int PassSubtarget = 1; 48 int Variant = 0; 49} 50 51def VE : Target { 52 // Pull in Instruction Info: 53 let InstructionSet = VEInstrInfo; 54 let AssemblyWriters = [VEAsmWriter]; 55 let AllowRegisterRenaming = 1; 56} 57