1235633Sdim//===-- XCoreSubtarget.h - Define Subtarget for the XCore -------*- 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 XCore specific subclass of TargetSubtargetInfo. 11193323Sed// 12193323Sed//===----------------------------------------------------------------------===// 13193323Sed 14193323Sed#ifndef XCORESUBTARGET_H 15193323Sed#define XCORESUBTARGET_H 16193323Sed 17252723Sdim#include "llvm/Target/TargetMachine.h" 18224145Sdim#include "llvm/Target/TargetSubtargetInfo.h" 19193323Sed#include <string> 20193323Sed 21224145Sdim#define GET_SUBTARGETINFO_HEADER 22224145Sdim#include "XCoreGenSubtargetInfo.inc" 23224145Sdim 24193323Sednamespace llvm { 25224145Sdimclass StringRef; 26193323Sed 27224145Sdimclass XCoreSubtarget : public XCoreGenSubtargetInfo { 28235633Sdim virtual void anchor(); 29193323Sed 30193323Sedpublic: 31193323Sed /// This constructor initializes the data members to match that 32198090Srdivacky /// of the specified triple. 33193323Sed /// 34224145Sdim XCoreSubtarget(const std::string &TT, const std::string &CPU, 35224145Sdim const std::string &FS); 36193323Sed 37193323Sed /// ParseSubtargetFeatures - Parses features string setting specified 38193323Sed /// subtarget options. Definition of function is auto generated by tblgen. 39224145Sdim void ParseSubtargetFeatures(StringRef CPU, StringRef FS); 40193323Sed}; 41193323Sed} // End llvm namespace 42193323Sed 43193323Sed#endif 44