aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/Object/nm-universal-binary.test
AgeCommit message (Collapse)AuthorFilesLines
2016-06-20Add support for Darwin’s 64-bit universal files with 64-bit offsets and ↵Kevin Enderby1-0/+19
sizes for the objects. Darwin added support in its Xcode 8.0 tools (released in the beta) for universal files where offsets and sizes for the objects are 64-bits to allow support for objects contained in universal files to be larger then 4gb. The change is very straight forward. There is a new magic number that differs by one bit, much like the 64-bit Mach-O files. Then there is a new structure that follow the fat_header that has the same layout but with the offset and size fields using 64-bit values instead of 32-bit values. rdar://26899493 llvm-svn: 273207
2014-08-08pr20589: Fix duplicated arch flag.Rafael Espindola1-0/+10
llvm-svn: 215216
2014-07-24Add an implementation for llvm-nm’s -print-file-name option (aka -o and -A).Kevin Enderby1-0/+10
The -print-file-name option in llvm-nm is to precede each symbol with the object file it came from. While code for the parsing of this option and its aliases existed there was no code to implement it. llvm-svn: 213906
2014-06-30Add the -arch flag support to llvm-nm to select the slice out of a Mach-OKevin Enderby1-2/+14
universal file. This also includes support for -arch all, selecting the host architecture by default from a universal file and checking if -arch is used with a standard Mach-O it matches that architecture. llvm-svn: 212054
2014-06-19Fix the output of llvm-nm for Mach-O files to use the characters ‘d’ and ↵Kevin Enderby1-1/+1
‘b’ for data and bss symbols instead of the generic ’s’ for a symbol in a section. llvm-svn: 211321
2014-06-19Change the output of llvm-nm and llvm-size for Mach-O universal files (akaKevin Enderby1-4/+4
fat files) to print “ (for architecture XYZ)” for fat files with more than one architecture to be like what the darwin tools do for fat files. Also clean up the Mach-O printing of archive membernames in llvm-nm to use the darwin form of "libx.a(foo.o)". llvm-svn: 211316
2014-05-20Update MachOObjectFile::getSymbolAddress so it returns UnknownAddressOrSizeKevin Enderby1-1/+1
for undefined symbols, so it matches what COFFObjectFile::getSymbolAddress does. This allows llvm-nm to print spaces instead of 0’s for the value of undefined symbols in Mach-O files. To make this change other uses of MachOObjectFile::getSymbolAddress are updated to handle when the Value is returned as UnknownAddressOrSize. Which is needed to keep two of the ExecutionEngine tests working for example. llvm-svn: 209253
2014-05-20Revert r209235 as it broke two tests:Kevin Enderby1-1/+1
Failing Tests (2): LLVM :: ExecutionEngine/MCJIT/stubs-sm-pic.ll LLVM :: ExecutionEngine/MCJIT/stubs.ll llvm-svn: 209236
2014-05-20Update MachOObjectFile::getSymbolAddress so it returns UnknownAddressOrSizeKevin Enderby1-1/+1
for undefined symbols. Allowing llvm-nm to print spaces instead of 0’s for the value of undefined symbols in Mach-O files. llvm-svn: 209235
2014-05-14Teach llvm-nm to know about fat archives (aka MachOUniversal filesKevin Enderby1-5/+18
containing archives). First step as other tools will be updated next. llvm-svn: 208812
2014-05-09Fix llvm-nm to print the full 64-bit address for symbols in 64-bit object files.Kevin Enderby1-2/+2
The implementation might be better to have a method is64Bit() in the class SymbolicFile instead of having the static routine isSymbolList64Bit() in llvm-nm.cpp . But this is very much in the sprit of isObject() and getNMTypeChar() in llvm-nm.cpp that has a series of if else statements based on the specific class of the SymbolicFile. I can update this if folks would like. Also the tests were updated to be explicit about checking the address for 64-bits or 32-bits from object files. llvm-svn: 208463
2013-06-18Basic support for parsing Mach-O universal binaries in LLVMObject libraryAlexey Samsonov1-0/+6
llvm-svn: 184191