blob: 1070544f0773efbbe33581e78f6e16751f15f8b3 [file] [log] [blame]
Anton Korobeynikov37171572009-05-03 12:57:15 +00001//====-- MSP430Subtarget.h - Define Subtarget for the MSP430 ---*- C++ -*--===//
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//
10// This file declares the MSP430 specific subclass of TargetSubtarget.
11//
12//===----------------------------------------------------------------------===//
13
14#ifndef LLVM_TARGET_MSP430_SUBTARGET_H
15#define LLVM_TARGET_MSP430_SUBTARGET_H
16
17#include "llvm/Target/TargetSubtarget.h"
18
19#include <string>
20
21namespace llvm {
Anton Korobeynikov37171572009-05-03 12:57:15 +000022
23class MSP430Subtarget : public TargetSubtarget {
24 bool ExtendedInsts;
25public:
26 /// This constructor initializes the data members to match that
Daniel Dunbarb711cf02009-08-02 22:11:08 +000027 /// of the specified triple.
Anton Korobeynikov37171572009-05-03 12:57:15 +000028 ///
Daniel Dunbarb711cf02009-08-02 22:11:08 +000029 MSP430Subtarget(const std::string &TT, const std::string &FS);
Anton Korobeynikov37171572009-05-03 12:57:15 +000030
31 /// ParseSubtargetFeatures - Parses features string setting specified
32 /// subtarget options. Definition of function is auto generated by tblgen.
Anton Korobeynikov7357d8f2009-05-23 19:50:50 +000033 std::string ParseSubtargetFeatures(const std::string &FS,
34 const std::string &CPU);
Anton Korobeynikov37171572009-05-03 12:57:15 +000035};
36} // End llvm namespace
37
38#endif // LLVM_TARGET_MSP430_SUBTARGET_H