SystemZ.td revision 4403b930f867f61b48304a23a6843026b0b9a32a
1//===- SystemZ.td - Describe the SystemZ Target Machine ------*- tblgen -*-==//
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// This is the top level entry point for the SystemZ target.
10//===----------------------------------------------------------------------===//
11
12//===----------------------------------------------------------------------===//
13// Target-independent interfaces
14//===----------------------------------------------------------------------===//
15
16include "llvm/Target/Target.td"
17
18//===----------------------------------------------------------------------===//
19// Subtarget Features. 
20//===----------------------------------------------------------------------===//
21def FeatureX
22 : SubtargetFeature<"dummy", "DummyFeature", "true",
23                    "Some feature">;
24
25//===----------------------------------------------------------------------===//
26// SystemZ supported processors.
27//===----------------------------------------------------------------------===//
28class Proc<string Name, list<SubtargetFeature> Features>
29 : Processor<Name, NoItineraries, Features>;
30
31def : Proc<"generic",         []>;
32
33//===----------------------------------------------------------------------===//
34// Register File Description
35//===----------------------------------------------------------------------===//
36
37include "SystemZRegisterInfo.td"
38
39//===----------------------------------------------------------------------===//
40// Calling Convention Description
41//===----------------------------------------------------------------------===//
42
43include "SystemZCallingConv.td"
44
45//===----------------------------------------------------------------------===//
46// Instruction Descriptions
47//===----------------------------------------------------------------------===//
48
49include "SystemZInstrInfo.td"
50
51def SystemZInstrInfo : InstrInfo {} 
52
53//===----------------------------------------------------------------------===//
54// Target Declaration
55//===----------------------------------------------------------------------===//
56
57def SystemZ : Target {
58  let InstructionSet = SystemZInstrInfo;
59}
60
61