From 95aa960b715315bf99918544211d0639b77c0f3a Mon Sep 17 00:00:00 2001 From: Kevin Enderby Date: Tue, 20 May 2014 21:10:15 +0000 Subject: Revert r209235 as it broke two tests: Failing Tests (2): LLVM :: ExecutionEngine/MCJIT/stubs-sm-pic.ll LLVM :: ExecutionEngine/MCJIT/stubs.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209236 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Object/MachOObjectFile.cpp | 12 ++---------- test/Object/nm-trivial-object.test | 8 ++++---- test/Object/nm-universal-binary.test | 2 +- 3 files changed, 7 insertions(+), 15 deletions(-) diff --git a/lib/Object/MachOObjectFile.cpp b/lib/Object/MachOObjectFile.cpp index 9c581d3784..0951460ccb 100644 --- a/lib/Object/MachOObjectFile.cpp +++ b/lib/Object/MachOObjectFile.cpp @@ -472,18 +472,10 @@ error_code MachOObjectFile::getSymbolAddress(DataRefImpl Symb, uint64_t &Res) const { if (is64Bit()) { MachO::nlist_64 Entry = getSymbol64TableEntry(Symb); - if ((Entry.n_type & MachO::N_TYPE) == MachO::N_UNDF && - Entry.n_value == 0) - Res = UnknownAddressOrSize; - else - Res = Entry.n_value; + Res = Entry.n_value; } else { MachO::nlist Entry = getSymbolTableEntry(Symb); - if ((Entry.n_type & MachO::N_TYPE) == MachO::N_UNDF && - Entry.n_value == 0) - Res = UnknownAddressOrSize; - else - Res = Entry.n_value; + Res = Entry.n_value; } return object_error::success; } diff --git a/test/Object/nm-trivial-object.test b/test/Object/nm-trivial-object.test index 20ac6621e7..1117492898 100644 --- a/test/Object/nm-trivial-object.test +++ b/test/Object/nm-trivial-object.test @@ -55,14 +55,14 @@ WEAK-ELF64: 0000000000000000 V x2 ABSOLUTE-ELF64: 0000000000000123 a a1 ABSOLUTE-ELF64: 0000000000000123 A a2 -macho: U _SomeOtherFunction +macho: 00000000 U _SomeOtherFunction macho: 00000000 T _main -macho: U _puts +macho: 00000000 U _puts macho64: 0000000000000028 s L_.str -macho64: U _SomeOtherFunction +macho64: 0000000000000000 U _SomeOtherFunction macho64: 0000000000000000 T _main -macho64: U _puts +macho64: 0000000000000000 U _puts Test that nm uses addresses even with ELF .o files. diff --git a/test/Object/nm-universal-binary.test b/test/Object/nm-universal-binary.test index c20c733dcd..faf4812e53 100644 --- a/test/Object/nm-universal-binary.test +++ b/test/Object/nm-universal-binary.test @@ -13,7 +13,7 @@ CHECK-AR: 0000000000000068 s EH_frame0 CHECK-AR: 000000000000003b s L_.str CHECK-AR: 0000000000000000 T _main CHECK-AR: 0000000000000080 S _main.eh -CHECK-AR: U _printf +CHECK-AR: 0000000000000000 U _printf CHECK-AR: macho-universal-archive.x86_64.i386:i386:foo.o: CHECK-AR: 00000008 S _bar CHECK-AR: 00000000 T _foo -- cgit v1.2.3