1 //=====-- AlphaSubtarget.h - Define Subtarget for the Alpha --*- 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 Alpha specific subclass of TargetSubtargetInfo.
12 //===----------------------------------------------------------------------===//
14 #ifndef ALPHASUBTARGET_H
15 #define ALPHASUBTARGET_H
17 #include "llvm/Target/TargetSubtargetInfo.h"
18 #include "llvm/MC/MCInstrItineraries.h"
21 #define GET_SUBTARGETINFO_HEADER
22 #include "AlphaGenSubtarget.inc"
26 class AlphaSubtarget : public AlphaGenSubtargetInfo {
31 InstrItineraryData InstrItins;
34 /// This constructor initializes the data members to match that
35 /// of the specified triple.
37 AlphaSubtarget(const std::string &TT, const std::string &CPU,
38 const std::string &FS);
40 /// ParseSubtargetFeatures - Parses features string setting specified
41 /// subtarget options. Definition of function is auto generated by tblgen.
42 void ParseSubtargetFeatures(const std::string &FS, const std::string &CPU);
44 bool hasCT() const { return HasCT; }
46 } // End llvm namespace