[llvm-nm] Fix output formatting of -f sysv for 64bit targets

Differential Revision: https://reviews.llvm.org/D37347

llvm-svn: 312284
This commit is contained in:
Sam Clegg 2017-08-31 21:23:44 +00:00
parent 82b42ca714
commit 2b0d3a4740
4 changed files with 26 additions and 3 deletions

Binary file not shown.

View File

@ -0,0 +1,6 @@
RUN: llvm-nm -f sysv %p/Inputs/hello.obj.elf-i386 | FileCheck %s --strict-whitespace
CHECK: Name Value Class Type Size Line Section
CHECK: .L.str |00000000| r | |0000000f| |
CHECK: main |00000000| T | |00000015| |
CHECK: puts | | U | | | |

View File

@ -0,0 +1,13 @@
RUN: llvm-nm -f sysv %p/Inputs/hello.obj.elf-x86_64 | FileCheck %s --check-prefix=ELF --strict-whitespace
RUN: llvm-nm -f sysv %p/Inputs/hello.obj.macho-x86_64 2>&1 | FileCheck %s --check-prefix=MACHO --strict-whitespace
ELF: Name Value Class Type Size Line Section
ELF: main |0000000000000000| T | |0000000000000015| |
ELF: puts | | U | | | |
MACHO: Name Value Class Type Size Line Section
MACHO: EH_frame0 |0000000000000068| s | |0000000000000000| |
MACHO: L_.str |000000000000003b| s | |0000000000000000| |
MACHO: _main |0000000000000000| T | |0000000000000000| |
MACHO: _main.eh |0000000000000080| S | |0000000000000000| |
MACHO: _printf | | U | | | |

View File

@ -709,9 +709,13 @@ static void sortAndPrintSymbolList(SymbolicFile &Obj, bool printName,
} else if (OutputFormat == bsd && MultipleFiles && printName) {
outs() << "\n" << CurrentFilename << ":\n";
} else if (OutputFormat == sysv) {
outs() << "\n\nSymbols from " << CurrentFilename << ":\n\n"
<< "Name Value Class Type"
<< " Size Line Section\n";
outs() << "\n\nSymbols from " << CurrentFilename << ":\n\n";
if (isSymbolList64Bit(Obj))
outs() << "Name Value Class Type"
<< " Size Line Section\n";
else
outs() << "Name Value Class Type"
<< " Size Line Section\n";
}
}