1234353Sdim//===-- MSP430Subtarget.h - Define Subtarget for the MSP430 ----*- C++ -*--===//
2193323Sed//
3193323Sed//                     The LLVM Compiler Infrastructure
4193323Sed//
5193323Sed// This file is distributed under the University of Illinois Open Source
6193323Sed// License. See LICENSE.TXT for details.
7193323Sed//
8193323Sed//===----------------------------------------------------------------------===//
9193323Sed//
10224145Sdim// This file declares the MSP430 specific subclass of TargetSubtargetInfo.
11193323Sed//
12193323Sed//===----------------------------------------------------------------------===//
13193323Sed
14193323Sed#ifndef LLVM_TARGET_MSP430_SUBTARGET_H
15193323Sed#define LLVM_TARGET_MSP430_SUBTARGET_H
16193323Sed
17224145Sdim#include "llvm/Target/TargetSubtargetInfo.h"
18234353Sdim#include <string>
19193323Sed
20224145Sdim#define GET_SUBTARGETINFO_HEADER
21224145Sdim#include "MSP430GenSubtargetInfo.inc"
22224145Sdim
23193323Sednamespace llvm {
24224145Sdimclass StringRef;
25193323Sed
26224145Sdimclass MSP430Subtarget : public MSP430GenSubtargetInfo {
27234353Sdim  virtual void anchor();
28193323Sed  bool ExtendedInsts;
29193323Sedpublic:
30193323Sed  /// This constructor initializes the data members to match that
31198090Srdivacky  /// of the specified triple.
32193323Sed  ///
33224145Sdim  MSP430Subtarget(const std::string &TT, const std::string &CPU,
34224145Sdim                  const std::string &FS);
35193323Sed
36193323Sed  /// ParseSubtargetFeatures - Parses features string setting specified
37193323Sed  /// subtarget options.  Definition of function is auto generated by tblgen.
38224145Sdim  void ParseSubtargetFeatures(StringRef CPU, StringRef FS);
39193323Sed};
40193323Sed} // End llvm namespace
41193323Sed
42193323Sed#endif  // LLVM_TARGET_MSP430_SUBTARGET_H
43