]> git.saurik.com Git - apple/ld64.git/blame - ChangeLog
ld64-85.2.2.tar.gz
[apple/ld64.git] / ChangeLog
CommitLineData
d696c285 1
4f3e367c
A
22008-05-06 Nick Kledzik <kledzik@apple.com>
3
4 <rdar://problem/5905889> ARM ld should take W bit off of maxprot for __TEXT segment
5 * src/MachOWriterExecutable.hpp: for iPhone always set maxprot to be initprot in all segments
6
7
82008-05-06 Nick Kledzik <kledzik@apple.com>
9
10 <rdar://problem/5914343> encryptable images may not be signable
11 * src/MachOWriterExecutable.hpp: use minimum header padding when aligning __text section
9d2e0767 12
4f3e367c 13
9d2e0767 14----- Tagged ld64-85
77cc3118
A
15
162008-04-29 Nick Kledzik <kledzik@apple.com>
17
18 * ld64.xcodeproj/project.pbxproj: <llvm-c/lto.h> is moving from /usr/local/include to /Developer/usr/local/include
19
20
212008-04-29 Nick Kledzik <kledzik@apple.com>
22
23 <rdar://problem/5829579> ld doesn't honor "rightmost" -syslibroot argument
24 * src/Options.cpp: if last -syslibroot is /, then ignore all syslibroots
25
26
272008-04-29 Nick Kledzik <kledzik@apple.com>
28
29 <rdar://problem/5866582> GLRendererFloat has bad __eh_frame section caused by mixing llvm-gcc and gcc object files
30 * src/MachOReaderRelocatable.hpp: make all atoms in __eh_frame section have 1-byte alignment
31 * src/MachOWriterExecutable.hpp: make __eh_frame section have pointer sized alignment
32
33
342008-04-17 Nick Kledzik <kledzik@apple.com>
35
36 * src/MachOReaderRelocatable.hpp: better cpu subtype support
37
38
392008-04-14 Nick Kledzik <kledzik@apple.com>
40
41 <rdar://problem/5733759> ld64 has bad ARM branch island check
42 * src/MachOWriterExecutable.hpp: in addBranchIslands() don't force large arm programs to fail
43
44
452008-04-10 Nick Kledzik <kledzik@apple.com>
46
47 * src/MachOWriterExecutable.hpp: fix stubs used with lazy dylibs
48
49
50----- Tagged ld64-84.4
51
522008-04-10 Nick Kledzik <kledzik@apple.com>
53
54 <rdar://problem/5847206> SPEC2000/eon built with -mdynamic-no-pic won't run
55 * src/Architectures.hpp: added arm::kReadOnlyPointer
56 * src/MachOReaderRelocatable.hpp: generate arm::kReadOnlyPointer
57 * src/MachOWriterExecutable.hpp: use arm::kReadOnlyPointer
58 * src/machochecker.cpp: allow MH_PIE bit
59 * unit-tests/test-cases/switch-jump-table: added test cases
60
61
62----- Tagged ld64-84.3
183622f6 63
2f2f92e4 642008-04-09 Nick Kledzik <kledzik@apple.com>
a61fdf0a 65
2f2f92e4
A
66 <rdar://problem/5852023> -undefined dynamic_lookup busted
67 * src/ld.cpp: don't create proxy atom when scanning for dylib duplicates
68 * unit-tests/test-cases/tentative-and-archive: use -undefined dynamic_lookup
a61fdf0a 69
77cc3118
A
70
71----- Tagged ld64-84.2
72
732008-04-04 Nick Kledzik <kledzik@apple.com>
74
75 * src/ld.cpp: don't add .eh symbols to symbol table in -r mode
76 * unit-tests/test-cases/eh-coalescing-r: update to test out of order coalescing
77
78
2f2f92e4 79----- Tagged ld64-84.1
a61fdf0a 80
2f2f92e4 812008-03-28 Nick Kledzik <kledzik@apple.com>
a61fdf0a 82
2f2f92e4
A
83 <rdar://problem/5720961> ld should prefer architecture-specific variant over generic in fat object file
84 * src/Options.cpp: fully process -arch arguments into fArchitecture and fSubArchitecture
85 * src/ld.cpp: when -arch with a subtype is used, try to find the exact subtype from fat files
86 * unit-tests/test-cases/cpu-sub-types-preference: added test cases for arm and ppc
87
a61fdf0a 88
2f2f92e4 89----- Tagged ld64-84
a61fdf0a 90
2f2f92e4 912008-03-28 Nick Kledzik <kledzik@apple.com>
a61fdf0a 92
2f2f92e4 93 * src/LTOReader.hpp: don't print lto version, if lto is unavailable
a61fdf0a
A
94
95
2f2f92e4 962008-03-26 Nick Kledzik <kledzik@apple.com>
a61fdf0a 97
2f2f92e4
A
98 <rdar://problem/5575399> Add LD_WARN_COMMONS to BigBear builds
99 * src/Options.cpp: Add support for LD_WARN_FILE which copies all warnings to a side file
a61fdf0a
A
100
101
2f2f92e4 1022008-03-26 Nick Kledzik <kledzik@apple.com>
a61fdf0a 103
2f2f92e4
A
104 <rdar://problem/5797713> Need encryption tag in mach-o file
105 <rdar://problem/5811920> linker should adjust arm final linked images so __text is never on the same page as the load commands
106 * src/MachOFileAbstraction.hpp: add support for encryption_info_command
107 * src/Options.cpp: add support for LD_NO_ENCRYPT and -no_encryption
108 * src/MachOWriterExecutable.hpp: add EncryptionLoadCommandsAtom
109 * src/machochecker.cpp: validate LC_ENCRYPTION_INFO
a61fdf0a
A
110
111
2f2f92e4 1122008-03-25 Nick Kledzik <kledzik@apple.com>
a61fdf0a 113
2f2f92e4
A
114 <rdar://problem/5712533> ld64 does not recognize LLVM bitcode archive files
115 * src/MachOReaderArchive.hpp: renamed to src/ArchiveReader.hpp
116 * src/ArchiveReader.hpp: sniff each member and instantiate correct reader
117 * src/ld.cpp: rename mach_o::archive::Reader to archive::Reader
118 * ld64.xcodeproj/project.pbxproj: rename MachOReaderArchive.hpp to ArchiveReader.hpp
119 * unit-tests/test-cases/llvm-integration: added test case
a61fdf0a
A
120
121
2f2f92e4 1222008-03-25 Nick Kledzik <kledzik@apple.com>
a61fdf0a 123
2f2f92e4
A
124 <rdar://problem/5771658> ld64 should switch to new libLTO.dylib interface
125 <rdar://problem/5675690> Produce llvm bc file in 'ld -r' mode if all .o files are llvm bc
126 * src/LTOReader.hpp: rewrite from LLVMReader.hpp to use new lto_* C interface
127 * unit-tests/test-cases/llvm-integration: update and comment
128 * ld64.xcodeproj/project.pbxproj: update to lazy load libLTO.dylib
129 * src/ld.cpp: rework and simplify Linker::optimize()
130 * src/ObjectDump.cpp: Add -nm option
a61fdf0a
A
131
132
2f2f92e4 1332008-03-25 Nick Kledzik <kledzik@apple.com>
a61fdf0a 134
2f2f92e4
A
135 * src/MachOReaderRelocatable.cpp: Fix some .objc_class_name_ off by one problem
136 * src/MachOWriterExecutable.cpp: Fix some .objc_class_name_ off by one problem
a61fdf0a 137
a61fdf0a 138
2f2f92e4 1392008-03-24 Nick Kledzik <kledzik@apple.com>
a61fdf0a 140
2f2f92e4
A
141 <rdar://problem/5814613> Xcode 3.1 breaks linkage of libgcj.9.dylib from gcc 4.3.0
142 * src/MachOWriterExecutable.cpp: Make sure all ivars in Writer are initialized.
a61fdf0a 143
a61fdf0a 144
2f2f92e4 1452008-03-21 Nick Kledzik <kledzik@apple.com>
a61fdf0a 146
2f2f92e4 147 * src/Options.cpp: warn if -seg1addr value is not page aligned
a61fdf0a
A
148
149
2f2f92e4 1502008-03-21 Nick Kledzik <kledzik@apple.com>
a61fdf0a 151
2f2f92e4
A
152 <rdar://problem/5806437> Move ARM support outside of __OPEN_SOURCE__
153 * src/ld.cpp: remove __OPEN_SOURCE__ around arm support
154 * src/LLVMReader.hpp: remove __OPEN_SOURCE__ around arm support
155 * src/MachOReaderDylib.hpp: remove __OPEN_SOURCE__ around arm support
156 * src/ObjectFile.h: remove __OPEN_SOURCE__ around arm support
157 * src/MachOReaderRelocatable.hpp: remove __OPEN_SOURCE__ around arm support
158 * src/OpaqueSection.hpp: Cover arm support inside __OPEN_SOURCE__ macro check
159 * src/MachOWriterExecutable.hpp: remove __OPEN_SOURCE__ around arm support
160 * src/ObjectDump.cpp: remove __OPEN_SOURCE__ around arm support
161 * ld64.xcodeproj/project.pbxproj: remove ARM_SUPPORT from config.h
a61fdf0a
A
162
163
2f2f92e4 164----- Tagged ld64-83.2
a61fdf0a 165
2f2f92e4 1662008-03-15 Nick Kledzik <kledzik@apple.com>
a61fdf0a 167
2f2f92e4
A
168 <rdar://problem/5801620> ld64-83 removes OBJC_CLASS_$ symbols from projects, causes catastrophic results
169 * src/Options.cpp: restore "case CPU_TYPE_ARM" in switch statement for .objc_class symbols in .exp files
170 * unit-tests/test-cases/objc-exported_symbols_list: added test case
a61fdf0a 171
a61fdf0a 172
2f2f92e4 173----- Tagged ld64-83.1
a61fdf0a 174
2f2f92e4 1752008-03-14 Nick Kledzik <kledzik@apple.com>
a61fdf0a 176
2f2f92e4
A
177 <rdar://problem/5800466> -iphone_version_min ==> -iphoneos_version_min
178 * src/Options.cpp: support -iphoneos_version_min as well
a61fdf0a
A
179
180
2f2f92e4 181----- Tagged ld64-83
a61fdf0a 182
2f2f92e4 1832008-03-10 Nick Kledzik <kledzik@apple.com>
a61fdf0a 184
2f2f92e4
A
185 <rdar://problem/5791543> ld needs to strip iphone_version_min option if invoking ld_classic
186 * src/Options.cpp: suppress -iphone_version_min from being passed to ld_classic
a61fdf0a 187
a61fdf0a 188
2f2f92e4 1892008-03-04 Nick Kledzik <kledzik@apple.com>
a61fdf0a 190
2f2f92e4
A
191 <rdar://problem/4171253> ADOBE XCODE: Linker option to lazy load frameworks (cause dyld is too slow)
192 * src/MachOWriterExecutable.hpp: create lazy stubs and LC_LAZY_LOAD_DYLIB for lazy load dylibs
193 * src/Options.cpp: support -lazy-l, -lazy_library, and -lazy_framework
194 * src/MachOFileAbstraction.hpp: add LC_LAZY_LOAD_DYLIB and S_LAZY_DYLIB_SYMBOL_POINTERS until in cctools
195 * src/MachOReaderDylib.hpp: add isLazyLoadedDylib()
196 * src/ld.cpp: pass lazy helper atom to writer
197 * doc/man/man1/ld.1: document new options
198 * unit-tests/test-cases/lazy-dylib-objc: add test case
199 * unit-tests/test-cases/lazy-dylib: add test case
a61fdf0a
A
200
201
2f2f92e4 202----- Tagged ld64-82.7
a61fdf0a 203
2f2f92e4 2042008-03-07 Nick Kledzik <kledzik@apple.com>
a61fdf0a 205
2f2f92e4
A
206 <rdar://problem/5787149> duplicate symbol literal-pointer@__OBJC@__message_refs@...
207 * src/MachOReaderRelocatable.hpp: AnonymousAtom from S_LITERAL_POINTERS section should be weak
208 * unit-tests/test-cases/objc-selector-coalescing: added test case
a61fdf0a 209
a61fdf0a 210
2f2f92e4 211----- Tagged ld64-82.6
a61fdf0a 212
2f2f92e4 2132008-03-04 Nick Kledzik <kledzik@apple.com>
a61fdf0a 214
2f2f92e4
A
215 <rdar://problem/5779681> ld crashes building XsanFS for Snow Leopard Builds
216 * src/ld.cpp: add bool dylibsOnly parameter to addJustInTimeAtoms()
217 * unit-tests/test-cases/tentative-and-archive: added test case
a61fdf0a 218
2f2f92e4 2192008-03-04 Nick Kledzik <kledzik@apple.com>
a61fdf0a 220
2f2f92e4
A
221 <rdar://problem/5775822> ld64 should not force building with gcc 4.0
222 * ld64.xcodeproj/project.pbxproj: change rules to use "system" compiler instead of 4.0
a61fdf0a
A
223
224
2f2f92e4 2252008-02-29 Nick Kledzik <kledzik@apple.com>
a61fdf0a 226
2f2f92e4
A
227 <rdar://problem/5774730> Simulator frameworks are being build split-seg and not prebound
228 * src/Options.cpp: only splitseg if prebound
a61fdf0a
A
229
230
2f2f92e4 2312008-02-29 Nick Kledzik <kledzik@apple.com>
a61fdf0a 232
2f2f92e4
A
233 <rdar://problem/5774231> Linker should not make GSYM debug note for .objc_category_* symbols
234 * src/ld.cpp: suppress GSYM debug notes for absolute symbols
235 * unit-tests/test-cases/objc-category-debug-notes: added test case
a61fdf0a 236
a61fdf0a 237
2f2f92e4 2382008-02-29 Nick Kledzik <kledzik@apple.com>
a61fdf0a 239
2f2f92e4
A
240 <rdar://problem/5768970> non-ASCII CFString support is broken
241 * src/MachOReaderRelocatable.hpp: only name and coalesce cfstring constants if they use a __cstring
242 * unit-tests/test-cases/cfstring-utf16: add test case
a61fdf0a 243
a61fdf0a 244
2f2f92e4 2452008-02-25 Nick Kledzik <kledzik@apple.com>
a61fdf0a 246
2f2f92e4
A
247 <rdar://problem/5366363> ld -r -x
248 * doc/man/man1/ld.1: update man page to explain -r -x produces auto-stripped labels
a61fdf0a 249
a61fdf0a 250
2f2f92e4 251----- Tagged ld64-82.5
a61fdf0a 252
2f2f92e4 2532008-02-12 Nick Kledzik <kledzik@apple.com>
a61fdf0a 254
2f2f92e4
A
255 <rdar://problem/5738023> x86_64: -stack_size failure when large __bss is used
256 * src/ld.cpp: only move section already in __DATA segment to new __huge section
257 * unit-tests/test-cases/stack_size_no_addr: updated test case to add large bss section
a61fdf0a
A
258
259
2f2f92e4 260----- Tagged ld64-82.4
a61fdf0a 261
2f2f92e4 2622008-02-06 Nick Kledzik <kledzik@apple.com>
a61fdf0a 263
2f2f92e4
A
264 <rdar://problem/5726215> comdat warnings with ld -r of C++ .o files
265 * unit-tests/test-cases/eh-coalescing-r: added test case
266 * src/ld.cpp: in ld -r mode don't warn about if .eh symbols are not static
a61fdf0a
A
267
268
2f2f92e4 2692008-02-06 Devang Patel <dpatel@apple.com>
a61fdf0a 270
2f2f92e4
A
271 <rdar://problem/5724990> LTO of Bom framework with -dead_strip causes ld(1) crash
272 * src/LLVMReader.hpp: Check fAtom while determining LLVMReference target binding.
273 * unit-tests/test-cases/llvm-integration/Makefile: Add new test case.
274 * unit-tests/test-cases/llvm-integration/a15.c: New.
275 * unit-tests/test-cases/llvm-integration/b15.c: New.
276 * unit-tests/test-cases/llvm-integration/c15.c: New.
a61fdf0a 277
2f2f92e4 2782008-02-05 Nick Kledzik <kledzik@apple.com>
a61fdf0a 279
2f2f92e4 280 * src/ld.cpp: fix for -arch ppc -mdynamic-no-pic -pie so PPC_RELOC_HA16 reloc is used
a61fdf0a 281
2f2f92e4 282----- Tagged ld64-82.3
a61fdf0a 283
2f2f92e4 2842008-02-04 Nick Kledzik <kledzik@apple.com>
a61fdf0a 285
2f2f92e4
A
286 <rdar://problem/5721186> ld doesn't seem to understand $ld$add$os... and $ld$hide$os... for 10.6 moves
287 * src/ObjectFile.h: add 10.6
288 * src/Options.cpp: add 10.6 support
289 * src/MachOReaderDylib.hpp: recognize $os10.6$
a61fdf0a
A
290
291
2f2f92e4 292----- Tagged ld64-82.2
a61fdf0a 293
2f2f92e4 2942008-01-30 Devang Patel <dpatel@apple.com>
a61fdf0a 295
2f2f92e4
A
296 <rdar://problem/5714833> Can't build 64-bit Intel binaries with LTO
297 <rdar://problem/5714787> ld64 fails to build with llvm-gcc-4.2
298 * src/LLVMReader.hpp: Fix character count typo in strncmp call.
299 Use const char * to initialize temp. string.
300 * ld64.xcodeproj/project.pbxproj: use $(DEVELOPER_DIR) in header search construction
301 instead of hard coding /Developer.
a61fdf0a 302
2f2f92e4 303----- Tagged ld64-82.1
a61fdf0a 304
2f2f92e4 3052008-01-23 Nick Kledzik <kledzik@apple.com>
a61fdf0a 306
2f2f92e4 307 * src/MachOReaderRelocatable.hpp: don't bus error if S_LITERAL_POINTERS is missing relocs
a61fdf0a 308
a61fdf0a 309
2f2f92e4 3102008-01-22 Nick Kledzik <kledzik@apple.com>
a61fdf0a 311
2f2f92e4
A
312 <rdar://problem/5695496> ld uses 32-bits in some places to hold addresses when parsing 64-bit mach-o files
313 * src/MachOReaderRelocatable.hpp: use AddrToAtomMap type that switch address to 64-bits for 64-bit archs
314 * src/MachOWriterExecutable.hpp: verify BR14 does not overflow for external relocs
315 * unit-tests/test-cases/relocs-c: update test case to slide addresses to verify x86_64 .o files
a61fdf0a 316
a61fdf0a 317
2f2f92e4 318----- Tagged ld64-82
a61fdf0a 319
2f2f92e4 3202008-01-18 Nick Kledzik <kledzik@apple.com>
a61fdf0a 321
2f2f92e4
A
322 <rdar://problem/5694612> Bad grammar used in ld warning: cannot exported hidden symbol
323 * src/ld.cpp: fix typo in warning string
a61fdf0a
A
324
325
2f2f92e4 3262008-01-16 Nick Kledzik <kledzik@apple.com>
a61fdf0a 327
2f2f92e4
A
328 <rdar://problem/5565074> Bundle Loader does not work anymore when loader is a bundle
329 <rdar://problem/5590203> ld warns of incorrect architecture when linking a bundle to a bundle
330 * src/MachOReaderDylib.hpp: support linking against bundles via -bundle_loader. Clean up error messages
331 * unit-tests/test-cases/bundle_loader: update test case
332
a61fdf0a 333
2f2f92e4 3342008-01-16 Nick Kledzik <kledzik@apple.com>
a61fdf0a 335
2f2f92e4
A
336 <rdar://problem/5366363> ld -r -x creates debug notes (stabs) when it should not with -x (keep only global symbols)
337 * src/Options.cpp: in reconfigureDefaults() if -r and -x then -S
a61fdf0a
A
338
339
2f2f92e4 3402008-01-16 Nick Kledzik <kledzik@apple.com>
a61fdf0a 341
2f2f92e4
A
342 <rdar://problem/5566068> if ld crashes while writing output file, it should delete the half written file
343 * src/MachOWriterExecutable.hpp: wrap open/write/close in try block and add signal handlers all to delete
344 output file on failure.
a61fdf0a
A
345
346
2f2f92e4 3472008-01-16 Devang Patel <dpatel@apple.com>
a61fdf0a 348
2f2f92e4 349 * src/LLVMReader.hpp: Use __gnu_cxx::hash_map instead of hash supported by LLVM.
a61fdf0a
A
350
351
2f2f92e4 3522008-01-16 Nick Kledzik <kledzik@apple.com>
a61fdf0a 353
2f2f92e4
A
354 <rdar://problem/5593537> GC-supported library can't be linked into GC-required executable
355 * src/ld.cpp: loosen constraint that all objc code must be compiled with same GC settings and
356 allow gc-compatible code to be linked into anything.
357 * unit-tests/test-cases/objc-gc-checks: update test case
a61fdf0a
A
358
359
2f2f92e4 3602008-01-15 Nick Kledzik <kledzik@apple.com>
a61fdf0a 361
2f2f92e4
A
362 <rdar://problem/5687976> no debug notes for custom named data
363 * src/ld.cpp: in synthesizeDebugNotes() check getSymbolTableInclusion() instead of for leading underscore
364 * unit-tests/test-cases/dwarf-debug-notes: update test case
a61fdf0a 365
2f2f92e4 366----- Tagged ld64-81.5
a61fdf0a 367
2f2f92e4 3682008-01-14 Devang Patel <dpatel@apple.com>
a61fdf0a 369
2f2f92e4
A
370 <rdar://problem/5683813> llvm-gcc-4.2 fails to build Sqlite 3.5.4 with -O4
371 * src/LLVMReader.hpp: Resolve proxy references. Collect new unbounded references
372 after optimization.
373 * src/ld.cpp: Resolve additional unbounded references after optimization.
a61fdf0a
A
374
375
2f2f92e4 3762008-01-14 Nick Kledzik <kledzik@apple.com>
a61fdf0a 377
2f2f92e4
A
378 <rdar://problem/5655246> PPC Leopard (Xcode 3.0) linker ld gets "Bus error" sometimes
379 * src/MachOReaderRelocatable.hpp: use same code as x86 to parse ppc and arm sect-diff relocs
380 * src/MachOWriterExecutable.hpp: use same code as x86 to write ppc and arm sect-diff relocs
a61fdf0a
A
381
382
2f2f92e4 3832008-01-11 Nick Kledzik <kledzik@apple.com>
a61fdf0a 384
2f2f92e4
A
385 <rdar://problem/5637618> PPC Leopard (Xcode 3.0) linker ld reports "unknown scattered relocation type 4"
386 * src/MachOReaderRelocatable.hpp: add PPC_RELOC_HI16 to scattered reloc parsing
387 * unit-tests/test-cases/relocs-asm/relocs-asm.s: added tests for scattered hi/lo instructions
a61fdf0a 388
a61fdf0a 389
2f2f92e4 3902008-01-11 Nick Kledzik <kledzik@apple.com>
a61fdf0a 391
2f2f92e4 392 * doc/man/man1/ld.1: add doc for -no_implicit_dylibs, -read_only_stubs, -slow_stubs, -interposable_list
a61fdf0a 393
a61fdf0a 394
2f2f92e4 3952008-01-11 Nick Kledzik <kledzik@apple.com>
a61fdf0a 396
2f2f92e4
A
397 <rdar://problem/4800212> ld64(1) man page uses ambiguous term "suffix"
398 * doc/man/man1/ld.1: make meaning of "suffix" more explicit
a61fdf0a
A
399
400
2f2f92e4 4012008-01-11 Nick Kledzik <kledzik@apple.com>
a61fdf0a 402
2f2f92e4
A
403 <rdar://problem/5633081> Obj-C Symbols in Leopard Can't Be Weak Linked
404 * src/MachOWriterExecutable.hpp: set weak and lazy attributes on dummy .objc_class_name undefines
405 to dylibs to support Mac OS X 10.3.x dyld
406
a61fdf0a 407
2f2f92e4 4082008-01-11 Nick Kledzik <kledzik@apple.com>
a61fdf0a 409
2f2f92e4
A
410 <rdar://problem/5669751> Unknown error with linker (dyld: unknown external relocation type)
411 * src/ld.cpp: fix crash when SO stabs are not balanced
a61fdf0a
A
412
413
2f2f92e4 4142008-01-11 Devang Patel <dpatel@apple.com>
a61fdf0a 415
2f2f92e4
A
416 <rdar://problem/5667433> LTO does not work if expected output is a dynamic library
417 * src/LLVMReader.hpp: Supply arguments describing output kind to optimizer. Communicate
418 visibility info.
a61fdf0a 419
2f2f92e4 4202000-01-10 Nick Kledzik <kledzik@apple.com>
a61fdf0a 421
2f2f92e4
A
422 <rdar://problem/5680988> __cls_refs section is losing S_LITERAL_POINTERS section type
423 * src/MachOWriterExecutable.hpp: special case __cls_refs section
424 * unit-tests/test-cases/objc-literal-pointers: add test case
a61fdf0a
A
425
426
2f2f92e4 4272008-01-03 Nick Kledzik <kledzik@apple.com>
a61fdf0a 428
2f2f92e4
A
429 <rdar://problem/5667688> wrong EH information might be used
430 Created new kGroupSubordinate reference kind to model group comdat. The "signature" atom
431 has kGroupSubordinate references to the other atoms in the group. If the signature atom
432 is coalesced away, the linker follows kGroupSubordinate references and throws away the
433 other members of the group.
434 * unit-tests/test-cases/eh-coalescing: added test case
435 * src/ld.cpp: added markDead() and use propagate to subordinates
436 * src/Architectures.hpp: added kGroupSubordinate
437 * src/MachOReaderRelocatable.hpp: add kGroupSubordinate reference from a function to its .eh atom
438 and if used, from .eh atom to its LSDA atom.
439 * src/MachOWriterExecutable.hpp: handle kGroupSubordinate like kNoFixUp
a61fdf0a 440
2f2f92e4 441----- Tagged ld64-81.4.1
a61fdf0a 442
2f2f92e4 4432007-12-19 Devang Patel <dpatel@apple.com>
a61fdf0a 444
2f2f92e4 445 * src/LLVMReader.hpp: Add LLVM_LTO_VERSION #ifdef check.
a61fdf0a 446
2f2f92e4 4472007-12-19 Devang Patel <dpatel@apple.com>
a61fdf0a 448
2f2f92e4 449 * src/LLVMReader.hpp: Add fOptimizer NULL check before calling printVersion().
a61fdf0a 450
2f2f92e4 4512007-12-19 Devang Patel <dpatel@apple.com>
a61fdf0a 452
2f2f92e4
A
453 <rdar://problem/5655956> print LLVM LTO version number in verbose mode
454 * src/LLVMReader.hpp: Add printLLVMVersion() to print llvm version string in verbose mode.
455 * src/Options.cpp: Use printLLVMVersion() in verbose mode.
a61fdf0a 456
2f2f92e4 4572007-12-19 Devang Patel <dpatel@apple.com>
a61fdf0a 458
2f2f92e4
A
459 <rdar://problem/5655956> print LLVM LTO version number in verbose mode
460 * src/Options.h: Add verbose() method to check fVerbose flag.
461 * src/LLVMReader.hpp: Print LLVM version string in verbose mode.
a61fdf0a 462
2f2f92e4 463----- Tagged ld64-81.4
a61fdf0a 464
2f2f92e4 4652007-12-18 Devang Patel <dpatel@apple.com>
a61fdf0a 466
2f2f92e4 467 * src/LLVMReader.hpp: Invalidate input architecture when optimizer is not available.
a61fdf0a 468
2f2f92e4 469----- Tagged ld64-81.3
a61fdf0a 470
2f2f92e4 4712007-12-17 Nick Kledzik <kledzik@apple.com>
a61fdf0a 472
2f2f92e4
A
473 * ld64.xcodeproj/project.pbxproj: remove extraneous header search paths
474
a61fdf0a 475
2f2f92e4 4762007-12-17 Devang Patel <dpatel@apple.com>
a61fdf0a 477
2f2f92e4
A
478 * src/LLVMReader.hpp: Do not throw exception if LLVMReader is not able to
479 dlopen LTO library. Instead just flag input file as an invalid LLVM bitcode file.
a61fdf0a 480
a61fdf0a 481
2f2f92e4 4822007-12-14 Nick Kledzik <kledzik@apple.com>
a61fdf0a 483
2f2f92e4
A
484 <rdar://problem/5645908> gcc DejaGnu failure: gcc.dg/20020312-2.c (test for excess errors) (-fstack-protector-all)
485 * src/MachOWriterExecutable.hpp: fix Writer<x86>::generatesExternalTextReloc() to allow text relocs
486 * unit-tests/test-cases/read-only-relocs: updated test case to link a dynamic main executable compiled with -static
a61fdf0a
A
487
488
2f2f92e4 4892007-12-14 Devang Patel <dpatel@apple.com>
a61fdf0a 490
2f2f92e4
A
491 <rdar://problem/5648438> Enable Link Time Optimization in Opal
492 * src/LLVMReader.hpp: Locate LLVMlto.dylib relative to ld location in Developer folder.
493 * ld64.xcodeproj/project.pbxproj: Add {DEVELOPER_DIR}/usr/include in header search path.
494 * unit-tests/run-all-unit-tests: Set DYLD_FALLBACK_LIBRARY_PATH to find LLVMlto.dylib during unit testing.
495 * unit-tests/testcases/llvm-integration/Makefile: Point LLVMGCC and LLVMGXX to llvm-gcc-4.2 in Developer folder during unit testing.
496
497
4982007-12-13 Nick Kledzik <kledzik@apple.com>
a61fdf0a 499
2f2f92e4
A
500 <rdar://problem/5645446> SWB: failures due to ld: pointer in read-only segment not allowed in slidable image, used in ...
501 * src/MachOReaderRelocatable.hpp: in Reader<x86>::addRelocReference() handle weak pc-rel 32-bit vanilla relocs properly
502
503----- Tagged ld64-81.2
86b84c30 504