Index: llvm/trunk/test/tools/llvm-nm/X86/sysv-i386.test =================================================================== --- llvm/trunk/test/tools/llvm-nm/X86/sysv-i386.test +++ llvm/trunk/test/tools/llvm-nm/X86/sysv-i386.test @@ -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 | | | | Index: llvm/trunk/test/tools/llvm-nm/X86/sysv-x86_64.test =================================================================== --- llvm/trunk/test/tools/llvm-nm/X86/sysv-x86_64.test +++ llvm/trunk/test/tools/llvm-nm/X86/sysv-x86_64.test @@ -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 | | | | Index: llvm/trunk/tools/llvm-nm/llvm-nm.cpp =================================================================== --- llvm/trunk/tools/llvm-nm/llvm-nm.cpp +++ llvm/trunk/tools/llvm-nm/llvm-nm.cpp @@ -709,9 +709,13 @@ } 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"; } }