1 //===- MBlazeIntrinsicInfo.h - MBlaze Intrinsic Information -----*- 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 contains the MBlaze implementation of TargetIntrinsicInfo. 11 // 12 //===----------------------------------------------------------------------===// 13 #ifndef MBLAZEINTRINSICS_H 14 #define MBLAZEINTRINSICS_H 15 16 #include "llvm/Target/TargetIntrinsicInfo.h" 17 18 namespace llvm { 19 20 class MBlazeIntrinsicInfo : public TargetIntrinsicInfo { 21 public: 22 std::string getName(unsigned IntrID, Type **Tys = 0, 23 unsigned numTys = 0) const; 24 unsigned lookupName(const char *Name, unsigned Len) const; 25 unsigned lookupGCCName(const char *Name) const; 26 bool isOverloaded(unsigned IID) const; 27 Function *getDeclaration(Module *M, unsigned ID, Type **Tys = 0, 28 unsigned numTys = 0) const; 29 }; 30 31 } 32 33 #endif 34