[llvm] r212347 - Mark intrinsic functions as llvm-specific.

Rafael Espindola rafael.espindola at gmail.com
Fri Jul 4 08:58:00 PDT 2014


Author: rafael
Date: Fri Jul  4 10:58:00 2014
New Revision: 212347

URL: http://llvm.org/viewvc/llvm-project?rev=212347&view=rev
Log:
Mark intrinsic functions as llvm-specific.

Modified:
    llvm/trunk/lib/Object/IRObjectFile.cpp
    llvm/trunk/test/Object/mangle-ir.ll

Modified: llvm/trunk/lib/Object/IRObjectFile.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Object/IRObjectFile.cpp?rev=212347&r1=212346&r2=212347&view=diff
==============================================================================
--- llvm/trunk/lib/Object/IRObjectFile.cpp (original)
+++ llvm/trunk/lib/Object/IRObjectFile.cpp Fri Jul  4 10:58:00 2014
@@ -245,6 +245,11 @@ uint32_t IRObjectFile::getSymbolFlags(Da
       Res |= BasicSymbolRef::SF_FormatSpecific;
   }
 
+  if (auto *F = dyn_cast<Function>(GV)) {
+    if (F->getName().startswith("llvm."))
+      Res |= BasicSymbolRef::SF_FormatSpecific;
+  }
+
   return Res;
 }
 

Modified: llvm/trunk/test/Object/mangle-ir.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Object/mangle-ir.ll?rev=212347&r1=212346&r2=212347&view=diff
==============================================================================
--- llvm/trunk/test/Object/mangle-ir.ll (original)
+++ llvm/trunk/test/Object/mangle-ir.ll Fri Jul  4 10:58:00 2014
@@ -2,7 +2,13 @@
 
 target datalayout = "m:o"
 
+; CHECK-NOT: memcpy
 ; CHECK: T _f
+; CHECK-NOT: memcpy
+
 define void @f() {
+  tail call void @llvm.memcpy.p0i8.p0i8.i64(i8* null, i8* null, i64 0, i32 1, i1 false)
   ret void
 }
+
+declare void @llvm.memcpy.p0i8.p0i8.i64(i8* nocapture, i8* nocapture readonly, i64, i32, i1)





More information about the llvm-commits mailing list