Sparc.td revision 981eefd5f78a6039dd081ebd3b4b48f15fa43aa6
1//===- SparcV8.td - Describe the SparcV8 Target Machine ---------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file was developed by the LLVM research group and is distributed under 6// the University of Illinois Open Source License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9// 10// 11//===----------------------------------------------------------------------===// 12 13//===----------------------------------------------------------------------===// 14// Target-independent interfaces which we are implementing 15//===----------------------------------------------------------------------===// 16 17include "../../Target.td" 18 19//===----------------------------------------------------------------------===// 20// Register File Description 21//===----------------------------------------------------------------------===// 22 23include "SparcV8RegisterInfo.td" 24 25//===----------------------------------------------------------------------===// 26// Instruction Descriptions 27//===----------------------------------------------------------------------===// 28 29include "SparcV8InstrInfo.td" 30 31def SparcV8InstrInfo : InstrInfo { 32 let PHIInst = PHI; 33 34 // Define how we want to layout our target-specific information field. 35 let TSFlagsFields = []; 36 let TSFlagsShifts = []; 37} 38 39//===----------------------------------------------------------------------===// 40// Declare the target which we are implementing 41//===----------------------------------------------------------------------===// 42 43def SparcV8 : Target { 44 // Pointers are 32-bits in size. 45 let PointerType = i32; 46 47 // FIXME: Specify callee-saved registers 48 let CalleeSavedRegisters = []; 49 50 // Pull in Instruction Info: 51 let InstructionSet = SparcV8InstrInfo; 52} 53