]> granicus.if.org Git - clang/commitdiff
Remove TargetInfo::getTargetPrefix().
authorDaniel Dunbar <daniel@zuster.org>
Mon, 24 Aug 2009 09:54:37 +0000 (09:54 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Mon, 24 Aug 2009 09:54:37 +0000 (09:54 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79907 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/TargetInfo.h
lib/Basic/Targets.cpp
lib/CodeGen/CGBuiltin.cpp

index 000e4f7e4aa88b9e8abeac4069c8f4630a31c8cb..f48d1a3a60e86d84c10fd12ffe8391f382d1174b 100644 (file)
@@ -284,10 +284,6 @@ public:
   virtual const char *getClobbers() const = 0;
   
 
-  /// getTargetPrefix - Return the target prefix used for identifying
-  /// llvm intrinsics.
-  virtual const char *getTargetPrefix() const = 0;
-    
   /// getTriple - Return the target triple of the primary target.
   const llvm::Triple &getTriple() const {
     return Triple;
index 4b8abc457c7a8e0078d314928789dbfacf5729d0..305ca2d8d265487a7f9e2cfb25d67ae6c988de45 100644 (file)
@@ -377,9 +377,6 @@ public:
            "  void* reg_save_area;"
            "} __builtin_va_list[1];";*/
   }
-  virtual const char *getTargetPrefix() const {
-    return "ppc";
-  }
   virtual void getGCCRegNames(const char * const *&Names,
                               unsigned &NumNames) const;
   virtual void getGCCRegAliases(const GCCRegAlias *&Aliases,
@@ -582,9 +579,6 @@ public:
     Records = BuiltinInfo;
     NumRecords = clang::X86::LastTSBuiltin-Builtin::FirstTSBuiltin;
   }
-  virtual const char *getTargetPrefix() const {
-    return "x86";
-  }
   virtual void getGCCRegNames(const char * const *&Names,
                               unsigned &NumNames) const {
     Names = GCCRegNames;
@@ -1051,9 +1045,6 @@ public:
   virtual const char *getVAListDeclaration() const {
     return "typedef char* __builtin_va_list;";
   }
-  virtual const char *getTargetPrefix() const {
-    return "arm";
-  }
   virtual void getGCCRegNames(const char * const *&Names,
                               unsigned &NumNames) const {
     // FIXME: Implement.
@@ -1127,9 +1118,6 @@ public:
   virtual const char *getVAListDeclaration() const {
     return "typedef void* __builtin_va_list;";
   }
-  virtual const char *getTargetPrefix() const {
-    return "sparc";
-  }
   virtual void getGCCRegNames(const char * const *&Names,
                               unsigned &NumNames) const;
   virtual void getGCCRegAliases(const GCCRegAlias *&Aliases,
@@ -1258,9 +1246,12 @@ namespace {
     }
     virtual void getTargetBuiltins(const Builtin::Info *&Records,
                                    unsigned &NumRecords) const {}
-    virtual const char *getVAListDeclaration() const { return "";}
-    virtual const char *getClobbers() const {return "";}
-    virtual const char *getTargetPrefix() const {return "pic16";}
+    virtual const char *getVAListDeclaration() const { 
+      return "";
+    }
+    virtual const char *getClobbers() const {
+      return "";
+    }
     virtual void getGCCRegNames(const char * const *&Names,
                                 unsigned &NumNames) const {}
     virtual bool validateAsmConstraint(const char *&Name,
@@ -1305,9 +1296,6 @@ namespace {
       Records = 0;
       NumRecords = 0;
     }
-    virtual const char *getTargetPrefix() const {
-      return "msp430";
-    }
     virtual void getGCCRegNames(const char * const *&Names,
                                 unsigned &NumNames) const;
     virtual void getGCCRegAliases(const GCCRegAlias *&Aliases,
@@ -1366,9 +1354,6 @@ namespace {
       Records = 0;
       NumRecords = 0;
     }
-    virtual const char *getTargetPrefix() const {
-      return "s390x";
-    }
 
     virtual void getDefaultLangOptions(LangOptions &Opts) {
       TargetInfo::getDefaultLangOptions(Opts);
@@ -1439,10 +1424,6 @@ namespace {
       NumRecords = 0;
     }
 
-    virtual const char *getTargetPrefix() const {
-      return "bfin";
-    }
-
     virtual void getGCCRegNames(const char * const *&Names,
                                 unsigned &NumNames) const;
 
@@ -1536,11 +1517,12 @@ namespace {
     }
     virtual void getTargetBuiltins(const Builtin::Info *&Records,
                                    unsigned &NumRecords) const {}
-    virtual const char *getClobbers() const {return "";}
+    virtual const char *getClobbers() const {
+      return "";
+    }
     virtual const char *getVAListDeclaration() const {
       return "typedef void* __builtin_va_list;";
     }
-    virtual const char *getTargetPrefix() const {return "tce";}
     virtual void getGCCRegNames(const char * const *&Names,
                                 unsigned &NumNames) const {}
     virtual bool validateAsmConstraint(const char *&Name,
index 8f5da42b412bff5d039c49a06e9559b2db395248..9ba5f71f3c6aa4eb6c56f7dfb4a7b3dd613cd839 100644 (file)
@@ -557,8 +557,10 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
   
   // See if we have a target specific intrinsic.
   const char *Name = getContext().BuiltinInfo.GetName(BuiltinID);
-  Intrinsic::ID IntrinsicID =
-    Intrinsic::getIntrinsicForGCCBuiltin(Target.getTargetPrefix(), Name);
+  Intrinsic::ID IntrinsicID = Intrinsic::not_intrinsic;
+  if (const char *Prefix =
+      llvm::Triple::getArchTypePrefix(Target.getTriple().getArch()))  
+    IntrinsicID = Intrinsic::getIntrinsicForGCCBuiltin(Prefix, Name);
   
   if (IntrinsicID != Intrinsic::not_intrinsic) {
     SmallVector<Value*, 16> Args;
@@ -610,12 +612,16 @@ RValue CodeGenFunction::EmitBuiltinExpr(const FunctionDecl *FD,
 
 Value *CodeGenFunction::EmitTargetBuiltinExpr(unsigned BuiltinID,
                                               const CallExpr *E) {
-  const char *TargetPrefix = Target.getTargetPrefix();
-  if (strcmp(TargetPrefix, "x86") == 0)
+  switch (Target.getTriple().getArch()) {
+  case llvm::Triple::x86:
+  case llvm::Triple::x86_64:
     return EmitX86BuiltinExpr(BuiltinID, E);
-  else if (strcmp(TargetPrefix, "ppc") == 0)
+  case llvm::Triple::ppc:
+  case llvm::Triple::ppc64:
     return EmitPPCBuiltinExpr(BuiltinID, E);
-  return 0;
+  default:
+    return 0;
+  }
 }
 
 Value *CodeGenFunction::EmitX86BuiltinExpr(unsigned BuiltinID,