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
10//===----------------------------------------------------------------------===//
11// Target-independent interfaces which we are implementing
12//===----------------------------------------------------------------------===//
13
14include "llvm/Target/Target.td"
15
16//===----------------------------------------------------------------------===//
17// SystemZ supported processors and features
18//===----------------------------------------------------------------------===//
19
20include "SystemZProcessors.td"
21
22//===----------------------------------------------------------------------===//
23// Register file description
24//===----------------------------------------------------------------------===//
25
26include "SystemZRegisterInfo.td"
27
28//===----------------------------------------------------------------------===//
29// Calling convention description
30//===----------------------------------------------------------------------===//
31
32include "SystemZCallingConv.td"
33
34//===----------------------------------------------------------------------===//
35// Instruction descriptions
36//===----------------------------------------------------------------------===//
37
38include "SystemZOperators.td"
39include "SystemZOperands.td"
40include "SystemZPatterns.td"
41include "SystemZInstrFormats.td"
42include "SystemZInstrInfo.td"
43include "SystemZInstrVector.td"
44include "SystemZInstrFP.td"
45
46def SystemZInstrInfo : InstrInfo {}
47
48//===----------------------------------------------------------------------===//
49// Assembly parser
50//===----------------------------------------------------------------------===//
51
52def SystemZAsmParser : AsmParser {
53  let ShouldEmitMatchRegisterName = 0;
54}
55
56//===----------------------------------------------------------------------===//
57// Top-level target declaration
58//===----------------------------------------------------------------------===//
59
60def SystemZ : Target {
61  let InstructionSet = SystemZInstrInfo;
62  let AssemblyParsers = [SystemZAsmParser];
63}
64