Mark intrinsic functions as llvm-specific.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@212347 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Rafael Espindola 2014-07-04 15:58:00 +00:00
parent 2093081c8e
commit 40b9d67109
2 changed files with 11 additions and 0 deletions

View File

@ -245,6 +245,11 @@ uint32_t IRObjectFile::getSymbolFlags(DataRefImpl Symb) const {
Res |= BasicSymbolRef::SF_FormatSpecific;
}
if (auto *F = dyn_cast<Function>(GV)) {
if (F->getName().startswith("llvm."))
Res |= BasicSymbolRef::SF_FormatSpecific;
}
return Res;
}

View File

@ -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)