00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 #ifndef COMMA_CODEGEN_TARGETPROFILE_HDR_GUARD
00019 #define COMMA_CODEGEN_TARGETPROFILE_HDR_GUARD
00020 
00021 #include "comma/basic/TargetInfo.h"
00022 
00023 #include <string>
00024 
00025 namespace llvm {
00026 
00027 class Value;
00028 
00029 } 
00030 
00031 namespace comma {
00032 
00033 class TargetProfile {
00034 
00035 public:
00041     TargetProfile(const std::string &triple);
00042 
00044     const llvm::IntegerType *getArithIntTy() const;
00045 
00047     const llvm::IntegerType *getLongArithIntTy() const;
00048 
00050     const llvm::IntegerType *getPointerIntTy() const;
00051 
00054     const llvm::IntegerType *getPointerIndexTy() const;
00055 
00056 };
00057 
00058 } 
00059 
00060 #endif