[PATCH] D48751: nm: Add -no-weak flag for hiding weak symbols
Keith Smiley via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 29 10:59:10 PDT 2018
keith updated this revision to Diff 153541.
keith added a comment.
Revert unnecessary FileCheck prefix
Repository:
rL LLVM
https://reviews.llvm.org/D48751
Files:
test/tools/llvm-nm/X86/weak.test
tools/llvm-nm/llvm-nm.cpp
Index: tools/llvm-nm/llvm-nm.cpp
===================================================================
--- tools/llvm-nm/llvm-nm.cpp
+++ tools/llvm-nm/llvm-nm.cpp
@@ -81,6 +81,11 @@
cl::aliasopt(ExternalOnly), cl::Grouping,
cl::ZeroOrMore);
+cl::opt<bool> NoWeakSymbols("no-weak",
+ cl::desc("Don't show weak symbols"));
+cl::alias NoWeakSymbols2("W", cl::desc("Alias for --no-weak"),
+ cl::aliasopt(NoWeakSymbols), cl::Grouping);
+
cl::opt<bool> BSDFormat("B", cl::desc("Alias for --format=bsd"),
cl::Grouping);
cl::opt<bool> POSIXFormat("P", cl::desc("Alias for --format=posix"),
@@ -768,8 +773,10 @@
bool Undefined = SymFlags & SymbolRef::SF_Undefined;
bool Global = SymFlags & SymbolRef::SF_Global;
+ bool Weak = SymFlags & SymbolRef::SF_Weak;
if ((!Undefined && UndefinedOnly) || (Undefined && DefinedOnly) ||
- (!Global && ExternalOnly) || (SizeSort && !PrintAddress))
+ (!Global && ExternalOnly) || (SizeSort && !PrintAddress) ||
+ (Weak && NoWeakSymbols))
continue;
if (PrintFileName) {
if (!ArchitectureName.empty())
Index: test/tools/llvm-nm/X86/weak.test
===================================================================
--- test/tools/llvm-nm/X86/weak.test
+++ test/tools/llvm-nm/X86/weak.test
@@ -1,4 +1,5 @@
# RUN: llvm-nm -B -S %p/Inputs/weak.obj.elf-x86_64 | FileCheck --match-full-lines %s
+# RUN: llvm-nm -W -B -S %p/Inputs/weak.obj.elf-x86_64 | count 0
CHECK: w weak_extern_func
CHECK: w weak_extern_var
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D48751.153541.patch
Type: text/x-patch
Size: 1652 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180629/fbb7b046/attachment.bin>
More information about the llvm-commits
mailing list