SystemZ.td revision 288943
190792Sgshapiro//===-- SystemZ.td - Describe the SystemZ target machine -----*- tblgen -*-===//
2147078Sgshapiro//
390792Sgshapiro//                     The LLVM Compiler Infrastructure
490792Sgshapiro//
590792Sgshapiro// This file is distributed under the University of Illinois Open Source
690792Sgshapiro// License. See LICENSE.TXT for details.
790792Sgshapiro//
890792Sgshapiro//===----------------------------------------------------------------------===//
990792Sgshapiro
1090792Sgshapiro//===----------------------------------------------------------------------===//
11157001Sgshapiro// Target-independent interfaces which we are implementing
1290792Sgshapiro//===----------------------------------------------------------------------===//
1390792Sgshapiro
1490792Sgshapiroinclude "llvm/Target/Target.td"
1590792Sgshapiro
1690792Sgshapiro//===----------------------------------------------------------------------===//
1790792Sgshapiro// SystemZ supported processors and features
1890792Sgshapiro//===----------------------------------------------------------------------===//
1990792Sgshapiro
2090792Sgshapiroinclude "SystemZProcessors.td"
2190792Sgshapiro
2290792Sgshapiro//===----------------------------------------------------------------------===//
2390792Sgshapiro// Register file description
2490792Sgshapiro//===----------------------------------------------------------------------===//
2590792Sgshapiro
2690792Sgshapiroinclude "SystemZRegisterInfo.td"
2794334Sgshapiro
2894334Sgshapiro//===----------------------------------------------------------------------===//
2994334Sgshapiro// Calling convention description
3090792Sgshapiro//===----------------------------------------------------------------------===//
3190792Sgshapiro
3290792Sgshapiroinclude "SystemZCallingConv.td"
3390792Sgshapiro
3490792Sgshapiro//===----------------------------------------------------------------------===//
3590792Sgshapiro// Instruction descriptions
36141858Sgshapiro//===----------------------------------------------------------------------===//
37141858Sgshapiro
3890792Sgshapiroinclude "SystemZOperators.td"
3990792Sgshapiroinclude "SystemZOperands.td"
4090792Sgshapiroinclude "SystemZPatterns.td"
4190792Sgshapiroinclude "SystemZInstrFormats.td"
4290792Sgshapiroinclude "SystemZInstrInfo.td"
4390792Sgshapiroinclude "SystemZInstrVector.td"
4490792Sgshapiroinclude "SystemZInstrFP.td"
4590792Sgshapiro
4690792Sgshapirodef SystemZInstrInfo : InstrInfo {}
4790792Sgshapiro
4890792Sgshapiro//===----------------------------------------------------------------------===//
4990792Sgshapiro// Assembly parser
50157001Sgshapiro//===----------------------------------------------------------------------===//
51157001Sgshapiro
52157001Sgshapirodef SystemZAsmParser : AsmParser {
53157001Sgshapiro  let ShouldEmitMatchRegisterName = 0;
54157001Sgshapiro}
55157001Sgshapiro
56157001Sgshapiro//===----------------------------------------------------------------------===//
57157001Sgshapiro// Top-level target declaration
58157001Sgshapiro//===----------------------------------------------------------------------===//
59157001Sgshapiro
60157001Sgshapirodef SystemZ : Target {
61157001Sgshapiro  let InstructionSet = SystemZInstrInfo;
6290792Sgshapiro  let AssemblyParsers = [SystemZAsmParser];
6390792Sgshapiro}
6490792Sgshapiro