[llvm-commits] [llvm] r137158 - /llvm/trunk/lib/MC/MachObjectWriter.cpp

Jim Grosbach grosbach at apple.com
Tue Aug 9 15:12:37 PDT 2011


Author: grosbach
Date: Tue Aug  9 17:12:37 2011
New Revision: 137158

URL: http://llvm.org/viewvc/llvm-project?rev=137158&view=rev
Log:
Don't truncate MachO addresses.

Assigned symbol addresses get truncated to 32-bits, even on 64-bit platforms.
That's obviously bogus.
For example,

 .globl _foo
 .equ _foo, 0x987654321ULL


rdar://9922863


Modified:
    llvm/trunk/lib/MC/MachObjectWriter.cpp

Modified: llvm/trunk/lib/MC/MachObjectWriter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MachObjectWriter.cpp?rev=137158&r1=137157&r2=137158&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MachObjectWriter.cpp (original)
+++ llvm/trunk/lib/MC/MachObjectWriter.cpp Tue Aug  9 17:12:37 2011
@@ -291,7 +291,7 @@
   const MCSymbol &Symbol = Data.getSymbol();
   uint8_t Type = 0;
   uint16_t Flags = Data.getFlags();
-  uint32_t Address = 0;
+  uint64_t Address = 0;
 
   // Set the N_TYPE bits. See <mach-o/nlist.h>.
   //





More information about the llvm-commits mailing list