[PATCH] D65834: TLI: Darwin sometimes does not support _bcmp, so do not emit it for Darwin
Alex Lorenz via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 6 16:39:20 PDT 2019
arphaman created this revision.
arphaman added reviewers: jfb, t.p.northover.
Herald added subscribers: dexonsmith, jkorous, hiraditya, fedor.sergeev.
Herald added a project: LLVM.
Not all Darwin targets support _bcmp in all circumstances. Unfortunately after https://reviews.llvm.org/D56593 clang started emitting _bcmp for all Darwin targets. This patch reverts the previous behavior for Darwin.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D65834
Files:
llvm/lib/Analysis/TargetLibraryInfo.cpp
llvm/test/Transforms/InferFunctionAttrs/annotate.ll
Index: llvm/test/Transforms/InferFunctionAttrs/annotate.ll
===================================================================
--- llvm/test/Transforms/InferFunctionAttrs/annotate.ll
+++ llvm/test/Transforms/InferFunctionAttrs/annotate.ll
@@ -241,8 +241,8 @@
; CHECK: declare i64 @atoll(i8* nocapture) [[G2]]
declare i64 @atoll(i8*)
-; CHECK-DARWIN: declare i32 @bcmp(i8* nocapture, i8* nocapture, i64) [[G2]]
; CHECK-LINUX: declare i32 @bcmp(i8* nocapture, i8* nocapture, i64) [[G2]]
+; CHECK-DARWIN-NOT: declare i32 @bcmp(i8* nocapture, i8* nocapture, i64) [[G2]]
; CHECK-UNKNOWN-NOT: declare i32 @bcmp(i8* nocapture, i8* nocapture, i64) [[G2]]
; CHECK-NVPTX-NOT: declare i32 @bcmp(i8* nocapture, i8* nocapture, i64) [[G2]]
declare i32 @bcmp(i8*, i8*, i64)
Index: llvm/lib/Analysis/TargetLibraryInfo.cpp
===================================================================
--- llvm/lib/Analysis/TargetLibraryInfo.cpp
+++ llvm/lib/Analysis/TargetLibraryInfo.cpp
@@ -58,7 +58,7 @@
return TT.isGNUEnvironment() || TT.isMusl();
// Both NetBSD and OpenBSD are planning to remove the function. Windows does
// not have it.
- return TT.isOSFreeBSD() || TT.isOSSolaris() || TT.isOSDarwin();
+ return TT.isOSFreeBSD() || TT.isOSSolaris();
}
/// Initialize the set of available library functions based on the specified
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D65834.213747.patch
Type: text/x-patch
Size: 1335 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190806/bc63437a/attachment.bin>
More information about the llvm-commits
mailing list