blob: 7607dca0280c2eb045c0388c374f2711b153699f [file] [log] [blame]
Brian Gaekee785e532004-02-25 19:28:19 +00001//===- 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// Get the target-independent interfaces which we are implementing...
14//
15include "../Target.td"
16
17//===----------------------------------------------------------------------===//
18// Register File Description
19//===----------------------------------------------------------------------===//
20
Chris Lattnera85d46e2004-02-28 19:45:39 +000021include "SparcV8RegisterInfo.td"
22include "SparcV8InstrInfo.td"
Brian Gaekee785e532004-02-25 19:28:19 +000023
24def SparcV8InstrInfo : InstrInfo {
25 let PHIInst = PHI;
26}
27
28def SparcV8 : Target {
29 // Pointers are 32-bits in size.
30 let PointerType = i32;
31
32 // According to the Mach-O Runtime ABI, these regs are nonvolatile across
33 // calls:
Misha Brukmane07c2aa2004-02-25 21:02:21 +000034 let CalleeSavedRegisters = [];
Brian Gaekee785e532004-02-25 19:28:19 +000035
36 // Pull in Instruction Info:
37 let InstructionSet = SparcV8InstrInfo;
38}