Revert r209235 as it broke two tests:
authorKevin Enderby <enderby@apple.com>
Tue, 20 May 2014 21:10:15 +0000 (21:10 +0000)
committerKevin Enderby <enderby@apple.com>
Tue, 20 May 2014 21:10:15 +0000 (21:10 +0000)
Failing Tests (2):
    LLVM :: ExecutionEngine/MCJIT/stubs-sm-pic.ll
    LLVM :: ExecutionEngine/MCJIT/stubs.ll

llvm-svn: 209236

llvm/lib/Object/MachOObjectFile.cpp
llvm/test/Object/nm-trivial-object.test
llvm/test/Object/nm-universal-binary.test

index 9c581d3..0951460 100644 (file)
@@ -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;
 }
index 20ac662..1117492 100644 (file)
@@ -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.
index c20c733..faf4812 100644 (file)
@@ -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