1 //===- MSP430.td - Describe the MSP430 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 //===----------------------------------------------------------------------===//
9 // This is the top level entry point for the MSP430 target.
10 //===----------------------------------------------------------------------===//
12 //===----------------------------------------------------------------------===//
13 // Target-independent interfaces
14 //===----------------------------------------------------------------------===//
16 include "llvm/Target/Target.td"
18 //===----------------------------------------------------------------------===//
19 // Subtarget Features.
20 //===----------------------------------------------------------------------===//
22 : SubtargetFeature<"ext", "ExtendedInsts", "true",
23 "Enable MSP430-X extensions">;
25 //===----------------------------------------------------------------------===//
26 // MSP430 supported processors.
27 //===----------------------------------------------------------------------===//
28 class Proc<string Name, list<SubtargetFeature> Features>
29 : Processor<Name, NoItineraries, Features>;
31 def : Proc<"generic", []>;
33 //===----------------------------------------------------------------------===//
34 // Register File Description
35 //===----------------------------------------------------------------------===//
37 include "MSP430RegisterInfo.td"
39 //===----------------------------------------------------------------------===//
40 // Calling Convention Description
41 //===----------------------------------------------------------------------===//
43 include "MSP430CallingConv.td"
45 //===----------------------------------------------------------------------===//
46 // Instruction Descriptions
47 //===----------------------------------------------------------------------===//
49 include "MSP430InstrInfo.td"
51 def MSP430InstrInfo : InstrInfo;
53 def MSP430InstPrinter : AsmWriter {
54 string AsmWriterClassName = "InstPrinter";
55 bit isMCAsmWriter = 1;
58 //===----------------------------------------------------------------------===//
60 //===----------------------------------------------------------------------===//
63 let InstructionSet = MSP430InstrInfo;
64 let AssemblyWriters = [MSP430InstPrinter];