1 //=====-- XCoreSubtarget.h - Define Subtarget for the XCore -----*- C++ -*--==//
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 //===----------------------------------------------------------------------===//
10 // This file declares the XCore specific subclass of TargetSubtarget.
12 //===----------------------------------------------------------------------===//
14 #ifndef XCORESUBTARGET_H
15 #define XCORESUBTARGET_H
17 #include "llvm/Target/TargetSubtarget.h"
18 #include "llvm/Target/TargetMachine.h"
25 class XCoreSubtarget
: public TargetSubtarget
{
30 /// This constructor initializes the data members to match that
31 /// of the specified module.
33 XCoreSubtarget(const TargetMachine
&TM
, const Module
&M
,
34 const std::string
&FS
);
36 bool isXS1A() const { return IsXS1A
; }
37 bool isXS1B() const { return IsXS1B
; }
39 /// ParseSubtargetFeatures - Parses features string setting specified
40 /// subtarget options. Definition of function is auto generated by tblgen.
41 void ParseSubtargetFeatures(const std::string
&FS
, const std::string
&CPU
);
43 } // End llvm namespace