History log of /external/llvm/tools/llvm-nm/llvm-nm.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
cddc3e03e4ec99c0268c03a126195173e519ed58 04-Mar-2016 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master LLVM for rebase to r256229

http://b/26987366

(cherry picked from commit f3ef5332fa3f4d5ec72c178a2b19dac363a19383)

Change-Id: Ic75dcb63191d65df1b69724576392c0aaeb47728
/external/llvm/tools/llvm-nm/llvm-nm.cpp
6948897e478cbd66626159776a8017b3c18579b9 01-Jul-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master LLVM for rebase to r239765

Bug: 20140355: This rebase pulls the upstream fix for the spurious
warnings mentioned in the bug.

Change-Id: I7fd24253c50f4d48d900875dcf43ce3f1721a3da
/external/llvm/tools/llvm-nm/llvm-nm.cpp
4c5e43da7792f75567b693105cc53e3f1992ad98 08-Apr-2015 Pirama Arumuga Nainar <pirama@google.com> Update aosp/master llvm for rebase to r233350

Change-Id: I07d935f8793ee8ec6b7da003f6483046594bca49
/external/llvm/tools/llvm-nm/llvm-nm.cpp
ebe69fe11e48d322045d5949c83283927a0d790b 23-Mar-2015 Stephen Hines <srhines@google.com> Update aosp/master LLVM for rebase to r230699.

Change-Id: I2b5be30509658cb8266be782de0ab24f9099f9b9
/external/llvm/tools/llvm-nm/llvm-nm.cpp
37ed9c199ca639565f6ce88105f9e39e898d82d0 01-Dec-2014 Stephen Hines <srhines@google.com> Update aosp/master LLVM for rebase to r222494.

Change-Id: Ic787f5e0124df789bd26f3f24680f45e678eef2d
/external/llvm/tools/llvm-nm/llvm-nm.cpp
c6a4f5e819217e1e12c458aed8e7b122e23a3a58 21-Jul-2014 Stephen Hines <srhines@google.com> Update LLVM for rebase to r212749.

Includes a cherry-pick of:
r212948 - fixes a small issue with atomic calls

Change-Id: Ib97bd980b59f18142a69506400911a6009d9df18
/external/llvm/tools/llvm-nm/llvm-nm.cpp
dce4a407a24b04eebc6a376f8e62b41aaa7b071f 29-May-2014 Stephen Hines <srhines@google.com> Update LLVM for 3.5 rebase (r209712).

Change-Id: I149556c940fb7dc92d075273c87ff584f400941f
/external/llvm/tools/llvm-nm/llvm-nm.cpp
36b56886974eae4f9c5ebc96befd3e7bfe5de338 24-Apr-2014 Stephen Hines <srhines@google.com> Update to LLVM 3.5a.

Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
/external/llvm/tools/llvm-nm/llvm-nm.cpp
bc884fd9f7bdb64d250be639edc8dc85a20a1975 02-Nov-2013 Rafael Espindola <rafael.espindola@gmail.com> move getSymbolNMTypeChar to the one program that needs it: nm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193933 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
abe68f59174c7418ae73de0a87587abe0be1fb03 19-Sep-2013 Andrew Trick <atrick@apple.com> Revert "Encapsulate PassManager debug flags to avoid static init and cxa_exit."

Working on a better solution to this.

This reverts commit 7d4e9934e7ca83094c5cf41346966c8350179ff2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190990 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
7d4e9934e7ca83094c5cf41346966c8350179ff2 19-Sep-2013 Andrew Trick <atrick@apple.com> Encapsulate PassManager debug flags to avoid static init and cxa_exit.

This puts all the global PassManager debugging flags, like
-print-after-all and -time-passes, behind a managed static. This
eliminates their static initializers and, more importantly, exit-time
destructors.

The only behavioral change I anticipate is that tools need to
initialize the PassManager before parsing the command line in order to
export these options, which makes sense. Tools that already initialize
the standard passes (opt/llc) don't need to do anything new.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190974 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
5159718095bd8a18c1661889e93af3aca8eaa5aa 10-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Don't crash in 'llvm -s' when an archive has no symtab.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186029 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
40d40dd44edbac3c20a4f3305f208ab48c2c219a 03-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Make llvm-nm return 1 on error.

This is a small compatibility improvement with gnu nm and makes llvm-nm more
useful as a testing tool.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@185546 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
9c22f87b1374b06dc6c07f6e8047890e390bbe2d 18-Jun-2013 Alexey Samsonov <samsonov@google.com> Basic support for parsing Mach-O universal binaries in LLVMObject library

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@184191 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
ea3e57d0a11941aa9834730771d64a62cc8f66bd 14-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove unused header.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183968 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
9f1d9fd1964d82f3e801efb71518144492cdf290 12-Jun-2013 Rafael Espindola <rafael.espindola@gmail.com> Remove the program class.

It was only used to implement ExecuteAndWait and ExecuteNoWait. Expose just
those two functions and make Execute and Wait implementations details.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183864 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
0f76e648d800d7641b4e6e6decb90949cd680b03 03-Feb-2013 Michael J. Spencer <bigcheesegs@gmail.com> [Object][Archive] Improve performance.

Improve performance of iterating over children and accessing the member file
buffer by caching the file size and moving code out to the header.

This also makes getBuffer return a StringRef instead of a MemoryBuffer. Both
fixing a memory leak and removing a malloc.

This takes getBuffer from ~10% of the time in lld to unmeasurable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
0b8c9a80f20772c3793201ab5b251d3520b9cea3 02-Jan-2013 Chandler Carruth <chandlerc@gmail.com> Move all of the header files which are involved in modelling the LLVM IR
into their new header subdirectory: include/llvm/IR. This matches the
directory structure of lib, and begins to correct a long standing point
of file layout clutter in LLVM.

There are still more header files to move here, but I wanted to handle
them in separate commits to make tracking what files make sense at each
layer easier.

The only really questionable files here are the target intrinsic
tablegen files. But that's a battle I'd rather not fight today.

I've updated both CMake and Makefile build systems (I think, and my
tests think, but I may have missed something).

I've also re-sorted the includes throughout the project. I'll be
committing updates to Clang, DragonEgg, and Polly momentarily.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
f010c464a11444733ec67e31aace8bcebeaf2588 04-Dec-2012 Chandler Carruth <chandlerc@gmail.com> Sort the #include lines for tools/...

Again, tools are trickier to pick the main module header for than
library source files. I've started to follow the pattern of using
LLVMContext.h when it is included as a stub for program source files.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@169252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
ed074e9a1b69a55e91d9f8976cdced3a06d6058a 13-Nov-2012 Daniel Dunbar <daniel@zuster.org> llvm-nm: Make sort more stable when symbol names are equal.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167866 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
206252cc9f5509b27aa0761c677fdee8daff001c 13-Nov-2012 Shankar Easwaran <shankare@codeaurora.org> Adding changes to support GNU style archive library reading

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
18505b352212a5e9eac07a8555ded232b5ece894 18-Sep-2012 Jan Sjödin <jan_sjodin@yahoo.com> Add hidden flag to exclude aliases from output.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164158 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
32811bef956e0fae4329e6515420d85f7e510660 17-Aug-2012 Bill Wendling <isanbard@gmail.com> Change the `linker_private_weak_def_auto' linkage to `linkonce_odr_auto_hide' to
make it more consistent with its intended semantics.

The `linker_private_weak_def_auto' linkage type was meant to automatically hide
globals which never had their addresses taken. It has nothing to do with the
`linker_private' linkage type, which outputs the symbols with a `l' (ell) prefix
among other things.

The intended semantic is more like the `linkonce_odr' linkage type.

Change the name of the linkage type to `linkonce_odr_auto_hide'. And therefore
changing the semantics so that it produces the correct output for the linker.

Note: The old linkage name `linker_private_weak_def_auto' will still parse but
is not a synonym for `linkonce_odr_auto_hide'. This should be removed in 4.0.
<rdar://problem/11754934>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162114 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
4d616646966b9effa05472ff3575fc3ce4df2b29 07-Jun-2012 Michael J. Spencer <bigcheesegs@gmail.com> [llvm-nm] Update documentation to cover object file support and arguments.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
51cf8661637c114e4b4f178bd2677a6bb246be0d 10-Mar-2012 Benjamin Kramer <benny.kra@googlemail.com> Fix uses of the C99 PRI format macros not to conflict with C++11 UDLs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
c46255a32ec92c427e621b6d7eabd887962ce4a4 29-Feb-2012 David Meyer <pdox@google.com> In the ObjectFile interface, replace isInternal(), isAbsolute(), isGlobal(), and isWeak(), with a bitset of flags.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151670 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
dfa1896b6b61e708f002b814794890ff308172ee 28-Feb-2012 Michael J. Spencer <bigcheesegs@gmail.com> [Object] Add {begin,end}_dynamic_symbols stubs and implementation for ELF.
Add -D option to llvm-nm to dump dynamic symbols.

Patch by David Meyer.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151600 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
aba65b05fc5dd8649725431e38359b7fa1ab59e8 25-Dec-2011 Rafael Espindola <rafael.espindola@gmail.com> Remove unused variables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@147261 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
a740e19e7e4ef29a7404fac3ac7e513beacf1bf7 14-Dec-2011 Michael J. Spencer <bigcheesegs@gmail.com> llvm-nm: refactor in order to support reading files from stdin.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146524 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
b0436a73054fe676b216a0cf872d1fc433125c62 29-Nov-2011 Danil Malyshev <dmalyshev@accesssoftek.com> Fixed ObjectFile functions:
- getSymbolOffset() renamed as getSymbolFileOffset()
- getSymbolFileOffset(), getSymbolAddress(), getRelocationAddress() returns same result for ELFObjectFile, MachOObjectFile and COFFObjectFile.
- added getRelocationOffset()
- fixed MachOObjectFile::getSymbolSize()
- fixed MachOObjectFile::getSymbolSection()
- fixed MachOObjectFile::getSymbolOffset() for symbols without section data.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
790552c20fbd8daa77d343419f0f6ec4e7fa1457 27-Nov-2011 Chandler Carruth <chandlerc@gmail.com> Revert r145180 as it is causing test failures on all the bots.

Original commit message:
Fixed ObjectFile functions:
- getSymbolOffset() renamed as getSymbolFileOffset()
- getSymbolFileOffset(), getSymbolAddress(), getRelocationAddress() returns same result for ELFObjectFile, MachOObjectFile and COFFObjectFile.
- added getRelocationOffset()
- fixed MachOObjectFile::getSymbolSize()
- fixed MachOObjectFile::getSymbolSection()
- fixed MachOObjectFile::getSymbolOffset() for symbols without section data.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145182 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
9b24738bd1dc791eb2c21b5562fcfe4b7b99fe2a 27-Nov-2011 Danil Malyshev <dmalyshev@accesssoftek.com> Fixed ObjectFile functions:
- getSymbolOffset() renamed as getSymbolFileOffset()
- getSymbolFileOffset(), getSymbolAddress(), getRelocationAddress() returns same result for ELFObjectFile, MachOObjectFile and COFFObjectFile.
- added getRelocationOffset()
- fixed MachOObjectFile::getSymbolSize()
- fixed MachOObjectFile::getSymbolSection()
- fixed MachOObjectFile::getSymbolOffset() for symbols without section data.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145180 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
9df3b916cdd0e1b44b6d63a8b2a1adcffe5bfa86 28-Oct-2011 Stepan Dyatkovskiy <stpworld@narod.ru> uint64 formatted output: replaced %llx with PRIx64 macro.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143191 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
232b1f268c5df559a1f73656fb1f226437c957a1 26-Oct-2011 Michael J. Spencer <bigcheesegs@gmail.com> llvm-nm: Use correct format string. Patch by Stepan Dyatkovskiy!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142984 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
1a9908daebd5c416d71ff7fe9c8250074d817733 10-Oct-2011 Benjamin Kramer <benny.kra@googlemail.com> llvm-nm: Don't leak bitcode buffers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141534 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
01a4db3ed4d199da33fa1ce0e1c7b7b9b1c3ccdf 07-Oct-2011 Michael J. Spencer <bigcheesegs@gmail.com> Fix GCC again.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141389 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
9142ae2cf802dbcd1c622154ac9b5305fb26c38f 27-Sep-2011 Michael J. Spencer <bigcheesegs@gmail.com> Add binary archive support to llvm-nm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@140627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
ac241fe9f0d73c6f632e4f7f89e06b698d39da54 14-Sep-2011 Benjamin Kramer <benny.kra@googlemail.com> Object: make the following changes into SymbolRef

- Add enum SymbolType and function getSymbolType()
- Add function isGlobal() - it's returns true for symbols that can be used in another objects, such as library functions.
- Rename function getAddress() to getOffset() and add new function getAddress(), because currently getAddress() returns section offset of symbol first byte. new getAddress() return symbol address.
- Change usage SymbolRef::getAddress() to getOffset() in tools/llvm-nm and tools/llvm-objdump.

Patch by Danil Malyshev!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139683 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
25b15777df42d5d608810f6881b6c98107481d69 25-Jun-2011 Michael J. Spencer <bigcheesegs@gmail.com> Object: Add proper error handling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133872 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
76fb9b0e5f553f03321777ff634eb245dd8a821e 25-Jun-2011 Michael J. Spencer <bigcheesegs@gmail.com> Modify llvm-nm to use new Binary creation method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133871 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
001c9205fca2220480589ec355cb6ec701a37e08 25-Jun-2011 Michael J. Spencer <bigcheesegs@gmail.com> Make Binary the parent of ObjectFile and update children to new interface.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133870 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
5e45dc40d329829ad23bf444f32dca221215e239 13-Jun-2011 Michael J. Spencer <bigcheesegs@gmail.com> Revert the last two commits in the series. r132911, r132912.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
bc437ebbca77cf8a7e2e47e3666c4a0114ccc2d1 13-Jun-2011 Michael J. Spencer <bigcheesegs@gmail.com> Modify llvm-nm to use new Binary creation method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132912 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
69aec36f9b3129ba6eb83d64cde31c3d86d6d39a 13-Jun-2011 Michael J. Spencer <bigcheesegs@gmail.com> Make Binary the parent of ObjectFile and update children to new interface.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132911 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
20d335aa04e31fe9a16004982e2a333914c1ee82 20-Jan-2011 Michael J. Spencer <bigcheesegs@gmail.com> llvm-nm: Update to use the new LLVMObject library.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@123897 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
3ff9563c3e391954b2e224afcf8b2b0fcc3888aa 16-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> MemoryBuffer now return an error_code and returns a OwningPtr<MemoryBuffer> via an out parm.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
333fb04506233255f10d8095c9e2de5e5f0fdc6f 09-Dec-2010 Michael J. Spencer <bigcheesegs@gmail.com> Support/MemoryBuffer: Replace all uses of std::string *ErrMsg with error_code &ec. And fix clients.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121379 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
1f6efa3996dd1929fbc129203ce5009b620e6969 29-Nov-2010 Michael J. Spencer <bigcheesegs@gmail.com> Merge System into Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
4a295d301d83f07ad2840abe25a1691aef481c83 31-Aug-2010 Michael J. Spencer <bigcheesegs@gmail.com> Cleanup Whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112587 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
4e34d502727df36cc2caa59307953444b1ee9914 24-Aug-2010 Bill Wendling <isanbard@gmail.com> - Add the LinkerPrivateWeakDefAutoLinkage to the Ada bindings.
- Support the LinkerWeak*Linkage types in llvm-nm and in LinkModules.cpp.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111952 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
5e721d768254a920b78b9129d79a84c0163cb3f4 01-Jul-2010 Bill Wendling <isanbard@gmail.com> Implement the "linker_private_weak" linkage type. This will be used for
Objective-C metadata types which should be marked as "weak", but which the
linker will remove upon final linkage. However, this linkage isn't specific to
Objective-C.

For example, the "objc_msgSend_fixup_alloc" symbol is defined like this:

.globl l_objc_msgSend_fixup_alloc
.weak_definition l_objc_msgSend_fixup_alloc
.section __DATA, __objc_msgrefs, coalesced
.align 3
l_objc_msgSend_fixup_alloc:
.quad _objc_msgSend_fixup
.quad L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".

Currently only supported on Darwin platforms.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107433 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
07d317711781d8c9268f7d6afcf1ba7eadf1d127 30-Jun-2010 Bill Wendling <isanbard@gmail.com> Revert r107205 and r107207.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107215 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
207855cff9b4811004b9720f28a5bd0adf3784b7 29-Jun-2010 Bill Wendling <isanbard@gmail.com> Introducing the "linker_weak" linkage type. This will be used for Objective-C
metadata types which should be marked as "weak", but which the linker will
remove upon final linkage. For example, the "objc_msgSend_fixup_alloc" symbol is
defined like this:

.globl l_objc_msgSend_fixup_alloc
.weak_definition l_objc_msgSend_fixup_alloc
.section __DATA, __objc_msgrefs, coalesced
.align 3
l_objc_msgSend_fixup_alloc:
.quad _objc_msgSend_fixup
.quad L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107205 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
8018f5d5a4134f8b2ceb315095996a552a80ee25 10-Sep-2009 Nuno Lopes <nunoplopes@sapo.pt> fix leakage of Module

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@81445 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
3d10a5a75794356a0a568ce283713adc3a963200 20-Jul-2009 Bill Wendling <isanbard@gmail.com> Add plumbing for the `linker_private' linkage type. This type is meant for
"private" symbols which the assember shouldn't strip, but which the linker may
remove after evaluation. This is mostly useful for Objective-C metadata.

This is plumbing, so we don't have a use of it yet. More to come, etc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76385 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
ac95cc79ac0b899d566cc29c0f646f39c2fa35c0 16-Jul-2009 Dan Gohman <gohman@apple.com> Convert more tools code from cerr and cout to errs() and outs().


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
0d7c695c74ae6d5f68cc07378c17491915e607d3 16-Jul-2009 Owen Anderson <resistor@mac.com> To simplify the upcoming context-on-type change, switch all command line tools to using the default global context for now.

This will let us to hardwire stuff to the global context in the short term while the API is sorted out.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75846 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
65f57c233cd4499e2e8b52a503201e64edfd6a9e 15-Jul-2009 Dan Gohman <gohman@apple.com> Use errs() instead of std::cerr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75791 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
31895e73591d3c9ceae731a1274c8f56194b9616 01-Jul-2009 Owen Anderson <resistor@mac.com> Hold the LLVMContext by reference rather than by pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74640 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
8b477ed579794ba6d76915d56b3f448a7dd20120 01-Jul-2009 Owen Anderson <resistor@mac.com> Add a pointer to the owning LLVMContext to Module. This requires threading LLVMContext through a lot
of the bitcode reader and ASM parser APIs, as well as supporting it in all of the tools.

Patches for Clang and LLVM-GCC to follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74614 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
266c7bbbbcc4b326dea82e577de1a415d6acc23e 13-Apr-2009 Chris Lattner <sabre@nondot.org> Add a new "available_externally" linkage type. This is intended
to support C99 inline, GNU extern inline, etc. Related bugzilla's
include PR3517, PR3100, & PR2933. Nothing uses this yet, but it
appears to work.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68940 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
cc14d25dd99e891c586bd56aa41796abbe4ac3d8 06-Mar-2009 Chris Lattner <sabre@nondot.org> Change various llvm utilities to use PrettyStackTraceProgram in
their main routines. This makes the tools print their argc/argv
commands if they crash.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66248 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
bb46f52027416598a662dc1c58f48d9d56b1a65b 15-Jan-2009 Rafael Espindola <rafael.espindola@gmail.com> Add the private linkage.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@62279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
7d5633e9074db9eaf796e677451f6642c0174fac 17-May-2008 Dale Johannesen <dalej@apple.com> Add CommonLinkage to lto (treated same as weak AFAICT)
and llvm-nm (prints as C).



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
21c62da287237d39d0d95004881ea4baae3be6da 29-Dec-2007 Chris Lattner <sabre@nondot.org> remove attributions from tools.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45421 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
82a13c9c4811e40d0ff858c508cb54d672ee926e 08-Oct-2007 Dan Gohman <gohman@apple.com> Move the space in overview output for commands out of each of the
commands and into the common code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42752 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
a99be51bf5cdac1438069d4b01766c47704961c8 05-Jul-2007 Gabor Greif <ggreif@gmail.com> Here is the bulk of the sanitizing.
Almost all occurrences of "bytecode" in the sources have been eliminated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37913 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
4a828eeed33a6f11698b625190bc7eafceee3100 28-Jun-2007 Lauro Ramos Venancio <lauro.venancio@gmail.com> llvm-nm must print the alias symbols.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37766 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
065344dfd5a7b3502098810b981eb0077e5d81f3 07-May-2007 Chris Lattner <sabre@nondot.org> use the new MemoryBuffer interfaces to simplify error reporting in clients.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
44dadffe4bd58ab32961ca5fe537e8ba69c09243 06-May-2007 Chris Lattner <sabre@nondot.org> switch tools to bitcode instead of bytecode


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
4d5aad2d99233fdee38cbbf844f65b7a74073954 06-May-2007 Chris Lattner <sabre@nondot.org> add bitcode reading support to llvm-nm


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36847 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
a145c6d76667f8a702f7da1a9836aba4729c9f85 29-Mar-2007 Reid Spencer <rspencer@reidspencer.com> Remove some non-sensical logic that prevented llvm-nm from working on any
file other than one named "-".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35478 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
ca5183d445954a9b2a570d6bbba1bc2b00ad6442 05-Mar-2007 Jeff Cohen <jeffc@jolt-lang.org> Unbreak VC++ build.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34917 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
f2e292ce58ca07d9bbe3cad75f8baa35bd85964a 07-Feb-2007 Chris Lattner <sabre@nondot.org> push bytecode decompressor out through APIs. Now the bytecode reader
api's look like this:

ModuleProvider *getBytecodeModuleProvider(
const std::string &Filename, ///< Name of file to be read
BCDecompressor_t *BCDC = Compressor::decompressToNewBuffer,
std::string* ErrMsg = 0, ///< Optional error message holder
BytecodeHandler* H = 0 ///< Optional handler for reader events
);

This is ugly, but allows a client to say:

getBytecodeModuleProvider("foo", 0);

If they do this, there is no dependency on the compression libraries, saving
codesize.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34012 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
5cbf985dcbc89fba3208e7baf8b6f488b06d3ec9 30-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid
confusion with external linkage types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
c30598bc3ad792eb8cc75b188eb872a28c62ab71 06-Dec-2006 Chris Lattner <sabre@nondot.org> make all llvm tools call llvm_shutdown when they exit, static'ify some stuff.

With this change, I can now move -stats to print when llvm_shutdown is called.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32250 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
2f2d32437a2bb55bb1dda4805a6ba743183f02a2 01-Aug-2006 Chris Lattner <sabre@nondot.org> no need to check readability here


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29449 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
8d8a7ffe580c622e7e43f1426bca64e517de0d06 07-Jul-2006 Reid Spencer <rspencer@reidspencer.com> Finish removal of EH usage from the Archive library. The REQUIRES_EH flag
in lib/Bytecode/Archive/Makefile is now removed. One small step closer to
a smaller LLVM.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29067 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
d74ea2bbd8bb630331f35ead42d385249bd42af8 24-May-2006 Chris Lattner <sabre@nondot.org> Patches to make the LLVM sources more -pedantic clean. Patch provided
by Anton Korobeynikov! This is a step towards closing PR786.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
c7f083297cd796c2fadb534307e4ef406fd68945 07-Jul-2005 Reid Spencer <rspencer@reidspencer.com> For PR495:
Change interface to Path class:
readable -> canRead
writable -> canWrite
executable -> canExecute

More (incremental) changes coming to close 495.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22345 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
3da94aec4d429b2ba0f65fa040c33650cade196b 22-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> Remove trailing whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21428 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
a3fcfff63300e1fb8be99bcb0581dff580d9b291 15-Mar-2005 Chris Lattner <sabre@nondot.org> method renamed


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20616 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
1ef8bdaedbd98bee35a573b8bc87149f2182cb5e 30-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
* Place a try/catch block around the entire tool to Make sure std::string
exceptions are caught and printed before exiting the tool.
* Make sure we catch unhandled exceptions at the top level so that we don't
abort with a useless message but indicate than an unhandled exception was
generated.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
b50ae1202105d7404c0157507a1febf4e579012a 15-Dec-2004 Reid Spencer <rspencer@reidspencer.com> For PR351:
Remove #inclusion of Support/FileUtilities.h which isn't needed any more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
11db4b8084270cb91446485b9534864ce52a95ef 13-Dec-2004 Reid Spencer <rspencer@reidspencer.com> PR351: \
Use sys::Path not FileUtilities to check file types


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
63efb7798051f2634167eee1e807f0dc7c3f13cf 14-Nov-2004 Reid Spencer <rspencer@reidspencer.com> *Fix usage of changed function prototype*Use Archive interface to symbol table for archives


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
551ccae044b0ff658fe629dd67edd5ffe75d10e8 02-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
9de7b334ec6f80a15f093f11b339f5741c964b34 29-Aug-2004 Reid Spencer <rspencer@reidspencer.com> The functions in Signal.h are now in the llvm::sys namespace - adjust


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
4d143ee01988e1b52e106ffccbb313937ca5e886 16-Jul-2004 Chris Lattner <sabre@nondot.org> IA64 compat


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14867 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
86f42bdad93677fa0ca33b27afb0f493028376cb 04-Jul-2004 Reid Spencer <rspencer@reidspencer.com> Add #include <iostream> since Value.h does not include it any more.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14623 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
bed85ff010b95923646ed4e187a5d432cedf67da 27-May-2004 Chris Lattner <sabre@nondot.org> Header file moved


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13813 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
09233fb86e237715d138db5dc5b72ada386089f2 21-Apr-2004 Alkis Evlogimenos <alkis@evlogimenos.com> Include cerrno (gcc-3.4 fix)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13091 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
f73b4ca7f9c5e4a19c3fba9fa0280768b4c64891 19-Feb-2004 Chris Lattner <sabre@nondot.org> Make sure to print a stack trace whenever an error signal is delivered to the
tool.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11632 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
8b1daa3e71109b8ae6a057a1def35ae0ab87ce37 19-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Unbreak the "-" as filename hack.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10099 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
820428711f651a6ae6b9caf78ae170a4434d1670 19-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Also print an error msg. for files we cannot currently deal with.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10097 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
08d03c79a238dba0ea7b59b38304c431bd392432 19-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Fix PR134, by checking FileOpenable() on each input file before analyzing its
type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10096 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
1c0b6982d28c910e7555d2c7a98f745f5d701827 17-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Include Support/FileUtilities.h.
Print module identifier in DumpSymbolNamesFromModule().
In DumpSymbolNamesFromFile(), check whether it is an archive or a bytecode
file, and call the corresponding reader function (ParseBytecodeFile or
ReadArchiveFile).
Unconditionally set MultipleFiles for archives.
Fixes PR117.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10044 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
d0fde30ce850b78371fd1386338350591f9ff494 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Put all LLVM code into the llvm namespace, as per bug 109.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
08020c13d026c6b61ca68e3f9da127a4d8be36ba 28-Oct-2003 Chris Lattner <sabre@nondot.org> Reorder #includes, drop unneeded one


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9548 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
1dd27b157bbe7d9e44fa72abbc8b0f08eba804ec 20-Oct-2003 Chris Lattner <sabre@nondot.org> fix file header


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
7c0e022c5c4be4b11e199a53f73bbdd84e34aa80 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added copyright header to all C++ source files.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9291 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
fc046d52e442324fe238e572c314f86dbc894f92 16-Oct-2003 Chris Lattner <sabre@nondot.org> Make llvm-nm work in "pipe mode"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9172 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
9eb52a5c2913ebb105463e2fe7500664902a4468 16-Oct-2003 Chris Lattner <sabre@nondot.org> Geeze, what is with Brian and these ifdef's?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9169 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp
972d3d7fff89c50612e86dfc8222da51bb23f387 16-Oct-2003 Brian Gaeke <gaeke@uiuc.edu> Okay, this is a little hack that "scratches an itch" of mine.
I dislike having to examine the output of "dis" to see what symbols
are in a bytecode file. So, here is a first cut at a "nm" utility for llvm.
Flame away.... :-)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/tools/llvm-nm/llvm-nm.cpp