blob: 0f08e3d8ca0f597b5e7da34d4c7d51a695a02a74 [file] [log] [blame]
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +00001//===- MSP430.td - Describe the MSP430 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 MSP430 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<"ext", "ExtendedInsts", "true",
23 "Enable MSP430-X extensions">;
24
25//===----------------------------------------------------------------------===//
26// MSP430 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 "MSP430RegisterInfo.td"
38
39//===----------------------------------------------------------------------===//
Anton Korobeynikovc8fbb6a2009-05-03 12:59:33 +000040// Calling Convention Description
41//===----------------------------------------------------------------------===//
42
43include "MSP430CallingConv.td"
44
45//===----------------------------------------------------------------------===//
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +000046// Instruction Descriptions
47//===----------------------------------------------------------------------===//
48
49include "MSP430InstrInfo.td"
50
Jakob Stoklund Olesenfddb7662010-04-05 03:10:20 +000051def MSP430InstrInfo : InstrInfo;
Anton Korobeynikovb7790e12009-11-07 17:12:21 +000052
53def MSP430InstPrinter : AsmWriter {
54 string AsmWriterClassName = "InstPrinter";
55}
56
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +000057//===----------------------------------------------------------------------===//
58// Target Declaration
59//===----------------------------------------------------------------------===//
60
61def MSP430 : Target {
62 let InstructionSet = MSP430InstrInfo;
Anton Korobeynikovb7790e12009-11-07 17:12:21 +000063 let AssemblyWriters = [MSP430InstPrinter];
Anton Korobeynikovf2c3e172009-05-03 12:57:15 +000064}
65