1 //===-- SystemZ.td - Describe the SystemZ target machine -----*- tblgen -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 //===----------------------------------------------------------------------===//
11 // Target-independent interfaces which we are implementing
12 //===----------------------------------------------------------------------===//
14 include "llvm/Target/Target.td"
16 //===----------------------------------------------------------------------===//
17 // SystemZ supported processors and features
18 //===----------------------------------------------------------------------===//
20 include "SystemZProcessors.td"
22 //===----------------------------------------------------------------------===//
23 // Register file description
24 //===----------------------------------------------------------------------===//
26 include "SystemZRegisterInfo.td"
28 //===----------------------------------------------------------------------===//
29 // Calling convention description
30 //===----------------------------------------------------------------------===//
32 include "SystemZCallingConv.td"
34 //===----------------------------------------------------------------------===//
35 // Instruction descriptions
36 //===----------------------------------------------------------------------===//
38 include "SystemZOperators.td"
39 include "SystemZOperands.td"
40 include "SystemZPatterns.td"
41 include "SystemZInstrFormats.td"
42 include "SystemZInstrInfo.td"
43 include "SystemZInstrFP.td"
45 def SystemZInstrInfo : InstrInfo {}
47 //===----------------------------------------------------------------------===//
49 //===----------------------------------------------------------------------===//
51 def SystemZAsmParser : AsmParser {
52 let ShouldEmitMatchRegisterName = 0;
55 //===----------------------------------------------------------------------===//
56 // Top-level target declaration
57 //===----------------------------------------------------------------------===//
59 def SystemZ : Target {
60 let InstructionSet = SystemZInstrInfo;
61 let AssemblyParsers = [SystemZAsmParser];