]> git.saurik.com Git - apple/ld64.git/blobdiff - ChangeLog
ld64-62.1.tar.gz
[apple/ld64.git] / ChangeLog
index 7436b2b688ce6a840cbd9df757ae392c09502b4d..ce470b099478b0df82881abeb3b35bc899771038 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
 
------ Tagged ld64-59.4
+2006-09-22      Nick Kledzik    <kledzik@apple.com>
+
+       ld64.xcodeproj/project.pbxproj: change install name back to ld64
+       src/Options.cpp: remove support for rolling over to ld_classic
+       src/ld.cpp: remove support for rolling over to ld_classic
+
+
+----- Tagged ld64-62
+
+2006-08-15      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/4681062> wrong error message when symbol is found in unused indirect library
+       src/ld.cpp: remove indirect libraries if they are not re-exported
+       unit-tests/test-cases/indirect-dylib: added test case
+
+
+2006-08-15      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/3930461> alignment needs to be richer
+       src/ObjectFile.h: define ObjectFile::Alignment class for tracking rich alignment info
+       src/ld.cpp: modify SymbolTable::add() to work with new Alignment type
+       src/MachOReaderRelocatable.hpp: use new Alignment type. Remove alignAtLeast() and handleAnonymousNonLazyPointers()
+       src/MachOWriterExecutable.hpp: update for new Alignment type, use modulus when calculating layout address
+       src/ObjectDump.cpp: print richer Alignment info
+       unit-tests/test-cases/align-modulus: added test case
+       
+
+2006-08-11      Nick Kledzik    <kledzik@apple.com>
+
+       remove OPEN_SOURCE conditionals around x86_64 support
+
+
+2006-07-31      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/4654131> ld64 while linking cc1 [ when dead_strip is ON]
+       src/ld.cpp: Add ivar fAtomsWithUnresolvedReferences to track atoms not initially resolvable
+       unit-tests/test-cases/dead_strip-archive: added test case
+       
+
+2006-07-31      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/4656617> x86_64: instructions with immediate and rip-relative operands need to use new relocation types
+       src/MachOWriterExecutable.hpp: generate new reloc types in -r mode      
+       src/MachOReaderRelocatable.hpp: parse new reloc types
+       unit-tests/test-cases/relocs-asm/relocs-asm.s: add test cases for new reloc type
+       
+
+2006-07-18      Nick Kledzik    <kledzik@apple.com>
+
+       src/MachOReaderRelocatable.hpp: suppress warning about dwarf info parsing for one benign no-op case
+       the compiler emits when there are not functions in the __text section
+       
+
+2006-07-17      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/4634840> faster debug note generateion
+       src/ld.cpp: rework collectDebugInfo() to produce all debug notes in one pass, intead of a 
+       pass per .o file. Added timing info for collectDebugInfo() to -print_statistics
+       unit-tests/test-cases/dwarf-debug-notes-r/Makefile: add expliced -arch to ld -r 
+       unit-tests/test-cases/dwarf-debug-notes-r/expected-stabs: alter for new debug notes order
+       
+
+2006-07-17      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/4623994> ld64 VSIZE is 1.18GB when building Finder ppc64
+       src/ld.cpp: fixed typo in createReader() that prevented dylibs from being unmapped
+
+----- Tagged ld64-61.1
 
 2006-07-11      Nick Kledzik    <kledzik@apple.com>
+       
+       <rdar://problem/4622049> ld64-61: gcc DejaGnu tests failing due to -arch followed by unknown architecture name
+       src/Options.cpp: map ppc750, ppc7400, ppc7450, and ppc970 to ppc. Improve error message
 
-       remove conditionals around x86_64 support
+2006-07-11      Nick Kledzik    <kledzik@apple.com>
 
------ Tagged ld64-59.3
+       <rdar://problem/4622769> If -arch is missing, rollover to ld_classic does not happen
+       src/Options.h: make gotoClassicLinker() public
+       src/ld.cpp: call gotoClassicLinker() if the inferred architecture is ppc or i386
 
-2006-07-02      Nick Kledzik    <kledzik@apple.com>
+----- Tagged ld64-61
 
-       <rdar://problem/4664607> x86_64: instructions with immediate and rip-relative operands need to use new relocation types
-       back port fix for 4656617 to Inca branch
+2006-06-29      Nick Kledzik    <kledzik@apple.com>
 
------ Tagged ld64-59.2
+       <rdar://problem/4606628> ld64 should be renamed to ld
+       src/Options.cpp: exec() ld_classic if -arch ppc or -arch i386 is seen
+       src/ld.cpp: alter version string
+       ld64.xcodeproj/project.pbxproj: change install location to /usr/bin/ld, add symlink from /usr/bin/ld64
+       doc/man/man1/ld.1: added
+       
+----- Tagged ld64-60
+
+2006-06-28      Nick Kledzik    <kledzik@apple.com>
+       
+       <rdar://problem/4604539> Can't link large ppc64 program: ld64 says "bl out of range"
+       MachOWriterExecutable.hpp: fix branch island generation to work for weak_import functions
+       and properly chain together branch islands
+       MachOReaderRelocatable.hpp: improve performance of huge .o file reading by sorted references
+       only when done
 
 2006-06-28      Nick Kledzik    <kledzik@apple.com>
 
        <rdar://problem/4603454> MySQL-36 fails to build with ld64-59
-       back port fix to Inca branch
+       src/MachOReaderRelocatable.hpp: back out fix for 4585335
+       src/MachOWriterExecutable.hpp: back out fix for 4585335
+
+2006-06-27      Nick Kledzik    <kledzik@apple.com>
+
+       src/MachOReaderRelocatable.hpp: handle N_GSYM without ending :G() since that is how 
+       dwarf debug notes are formed. 
+
+2006-06-23      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/4599239 objc class with no superclass causes bad undefined symbol
+       src/MachOReaderRelocatable.hpp: handle NULL superclass in objc_class
+       unit-tests/test-cases/relocs-objc/test.m: add case with no super class
+       
+
+2006-06-23      Nick Kledzik    <kledzik@apple.com>
+
+       <rdar://problem/4313369> ld64 doesn't support variant linking -framework fw,_debug
+       src/Options.cpp: enhance findFramework() to support suffixes
 
 ----- Tagged ld64-59
 
 2006-06-22      Nick Kledzik    <kledzik@apple.com>
 
        <rdar://problem/4596726> ld64 lost DWARF debug notes
-       MachOReaderRelocatable.hpp: add fHasUUID so kDebugInfoStabsUUID can be set later
+       src/MachOReaderRelocatable.hpp: add fHasUUID so kDebugInfoStabsUUID can be set later
        unit-tests/test-cases/dwarf-debug-notes-r: added test case
        
 2006-06-21      Nick Kledzik    <kledzik@apple.com>
 2006-06-21      Nick Kledzik    <kledzik@apple.com>
 
        <rdar://problem/4535036> ld64 seems to offset things incorrectly when using -r
-       src/MachOWriterExecutable.hpp: in -r mode, virtual sections don't increment address
+       src/MachOWriterExecutable.hpp: in -r mode, virtual sections should not increment address
 
 
 ----- Tagged ld64-58
 2006-06-15      Nick Kledzik    <kledzik@apple.com>
 
        <rdar://problem/4569407> ld64 bogus duplicate symbol name linking GNU libobjc
-       src/MachOReaderRelocatable.hpp: only special case Apple's objc runtime objc classes
+       src/MachOReaderRelocatable.hpp: only special case Apple objc runtime objc classes
 
 2006-06-15      Nick Kledzik    <kledzik@apple.com>
 
 
        <rdar://problem/4585335> jump table into middle of weak symbol causes error
        src/MachOReaderRelocatable.hpp: create direct references to the interior of weak symbols
-       src/MachOWriterExecutable.hpp: don't error on absolute references to interior of weak symbols
+       src/MachOWriterExecutable.hpp: do not error on absolute references to interior of weak symbols
 
 2006-06-13      Nick Kledzik    <kledzik@apple.com>
 
        * src/MachOReaderRelocatable.cpp: mark non-lazy-pointer atoms as scopeTranslationUnit if targetting a static symbol
 
 
-2006-04-27      Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4498971> dyld crashes ungracefully on x86_64 when there is an internal exception
-       * src/MachOWriterExecutable.cpp: allow non-zero PCRELGOT addends (used by C++ eh frames)
 
 2006-04-21      Nick Kledzik    <kledzik@apple.com>
 
 
 ----- Tagged ld64-50
 
-2006-03-29      Nick Kledzik    <kledzik@apple.com>
-
-       * src/MachOWriterExecutable.hpp: fix x86_64 addends when -multi_module forces an external relocation
 
 2006-03-29      Nick Kledzik    <kledzik@apple.com>
 
        * src/Options.cpp: setup ReaderOptions.fForFinalLinkedImage
        * src/MachOReaderRelocatable.hpp: mark .eh symbols kSymbolTableNotIn when building final linked image
 
-2006-03-21     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4475928> Inca ld64-45 fatal error with C++ and asm() renaming
-       * src/MachOReaderRelocatable.hpp: fix Reader<x86_64>::makeReferenceToEH(() to walk relocations to find
-       target of eh symbol, rather assume target name is eh symbol name less .eh
-
 2006-03-21     Nick Kledzik    <kledzik@apple.com>
 
        <rdar://problem/4473742> ld64 does not parse optional second argument to -filelist
        * unit-tests/test-cases/filelist: added
        * src/Options.cpp: in Options::loadFileList() handle comma option
 
-2006-03-21     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4483625> 32-bit pointer difference out of range for cxx eh frame
-       * src/MachOReaderRelocatable.hpp: x86_64 doesn't have anonymous non-lazy-pointers
-       * src/machochecker.cpp: fix validFile() for x86_64
-       * unit-tests/run-all-unit-tests: add x86_64
-       * unit-tests/include/common.makefile: don't add -g to all compilers
-       * unit-tests/test-cases/relocs-asm/relocs-asm.s: add x86_64 test cases
-       * unit-tests/test-cases/relocs-c/Makefile: fix to work with x86_64
-       * src/ld.cpp: add hack to use i386 dylibs if x86_64 don't exist
-
-2006-03-19     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4483330> ld64 crashes whenever I try to link with dylib1.o
-       * src/MachOReaderRelocatable.hpp: in Reader<x86_64>::addRelocReference() fix local relocations
 
 ----- Tagged ld64-47.1
 
-2006-03-16     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4459633> ld64-41 in Leopard doesn't have x86_64 support
-       * ld64.xcodeproj/project.pbxproj: enable x86_64 for Leopard
 
 ----- Tagged ld64-47
 
-2006-03-14     Nick Kledzik    <kledzik@apple.com>
-
-       * src/Architectures.hpp: redo x86_64 relocation types
-       * src/MachOReaderRelocatable.hpp: redo x86_64 relocation types, make some section type illegal for x86_64
-       * src/MachOWriterExecutable.hpp: redo x86_64 relocation types
-
-2006-03-13     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4467122> ld64 -r does not handle internal relocations for x86_64
-       * src/MachOWriterExecutable.hpp: handle internal relocations in Writer<x86_64>::fixUpReferenceRelocatable()
-         and Writer<x86_64>::addObjectRelocs().
 
 ----- Tagged ld64-46
 
 
 ----- Tagged ld64-45
 
-2006-03-06     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4466930> <rdar://problem/4467982> ld64 failed: rel32 out of range when linking a dylib
-       * src/MachOWriterExecutable.cpp: in  Writer<x86_64>::fixUpReferenceFinal add (int32_t) cast
 
 2006-03-06     Nick Kledzik    <kledzik@apple.com>
 
        <rdar://problem/4466930> LP64/9A122: ld64: hang when trying to link DiscRecording framework
        * src/Options.cpp: addSectionAlignment, warn on zero.  Use log2() for alignment conversion
 
-2006-03-06     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4457818> x86_THREAD_STATE64_COUNT will change, ld64 must adapt
-       * src/MachOWriterExecutable.hpp: update ThreadsLoadCommandsAtom<x86_64> for new thread status layout
 
 ----- Tagged ld64-44
 
 
 ----- Tagged ld64-43
 
-2006-03-03     Nick Kledzik    <kledzik@apple.com>
-
-       <rdar://problem/4465443> RIP-relative offsets aren't handled properly when the instruction has immediate operands
-       * src/Architectures.hpp: add x86_64::kPCRel32_*
-       * src/MachOReaderRelocatable.hpp: generate x86_64::kPCRel32_*
-       * src/MachOWriterExecutable.hpp: process x86_64::kPCRel32_*
 
 2006-03-02     Nick Kledzik    <kledzik@apple.com>