]> git.saurik.com Git - apple/ld64.git/blob - ChangeLog
ld64-47.2.tar.gz
[apple/ld64.git] / ChangeLog
1
2 ----- Tagged ld64-47
3
4
5 ----- Tagged ld64-46
6
7 2006-03-10 Nick Kledzik <kledzik@apple.com>
8
9 <rdar://problem/4419505> ld64 should figure out architecture from .o files
10 * unit-tests/test-cases/auto-arch: added
11 * src/ld.cpp: added Linker::inferArchitecture() to scan .o files are infer architecture to link
12 * src/MachOReaderArchive.hpp: enhanced validFile() to look deeper into archive and really valdate
13 * src/MachOWriterExecutable.hpp: stop using fOptions.architecture()
14 * src/Options.cpp: stop defaulting to ppc64
15
16
17 2006-03-09 Nick Kledzik <kledzik@apple.com>
18
19 <rdar://problem/4465004> Need "intentionally left blank" dylib stubs
20 * unit-tests/include/common.makefile: add VALID_ARCHS
21 * unit-tests/run-all-unit-tests: set up VALID_ARCHS
22 * unit-tests/test-cases/blank-stubs: add test case
23 * src/ld.cpp: in addDylib(), detect and ignore blank stubs
24 * src/MachOReaderDylib.hpp: in constructor, handle blank stubs
25
26 2006-03-09 Nick Kledzik <kledzik@apple.com>
27
28 <rdar://problem/4471424> crash in stub with 2GB pagezero
29 * src/MachOWriterExecutable.hpp: StubAtom<ppc64> can't be no-pic if a large zero-page is used
30
31 2006-03-06 Nick Kledzik <kledzik@apple.com>
32
33 * src/Options.cpp: addSectionAlignment, warn if -sectalign alignment is not a power of two
34
35 ----- Tagged ld64-45
36
37
38 2006-03-06 Nick Kledzik <kledzik@apple.com>
39
40 <rdar://problem/4466930> LP64/9A122: ld64: hang when trying to link DiscRecording framework
41 * src/Options.cpp: addSectionAlignment, warn on zero. Use log2() for alignment conversion
42
43
44 ----- Tagged ld64-44
45
46 2006-03-04 Nick Kledzik <kledzik@apple.com>
47
48 * src/MachOReaderRelocatable.hpp: fix again test for detection of anonymous non-lazy-pointer.
49 Error out if .o file contains old __DWARFA style dwarf.
50
51 2006-03-02 Nick Kledzik <kledzik@apple.com>
52
53 * src/ld.cpp: only re-map page aligned sub-parts of a fat file. A conformat mmap() requires alignment.
54
55 ----- Tagged ld64-43
56
57 2006-03-02 Nick Kledzik <kledzik@apple.com>
58
59 * src/MachOReaderRelocatable.hpp: <rdar://problem/4464370> tighten detection of anonymous non-lazy-pointer
60
61 ----- Tagged ld64-42
62
63 2006-02-28 Nick Kledzik <kledzik@apple.com>
64
65 * src/MachOReaderRelocatable.hpp: fix x86 __IMPORT permissions for class Segment
66
67 2006-02-28 Nick Kledzik <kledzik@apple.com>
68
69 <rdar://problem/4461240> SWB: ld64-37 (can't resolve symbol ___dso_handle)
70 * src/MachOWriterExecutable.hpp: add class DsoHandleAtom
71
72 2006-02-28 Nick Kledzik <kledzik@apple.com>
73
74 * unit-tests/test-cases/literals-coalesce-alignment: added test case
75 * src/ld.cpp: when coalescing strings pick one with greater alignment
76 <rdar://problem/4458660> ld64: CG link failed because lo14 reference to anonymous non-lazy-pointer not aligned
77 * unit-tests/test-cases/relocs-c/test.c: tweak to fail like 4458660
78 * src/MachOReaderRelocatable.hpp: detect anonymous non-lazy-pointer and transform into real non-lazy-pointers
79
80 ----- Tagged ld64-41
81
82 2006-02-24 Nick Kledzik <kledzik@apple.com>
83
84 * src/Options.cpp: Warning about -no_dead_strip_inits_and_terms and -i options.
85 Fix -weak-l option.
86
87 ----- Tagged ld64-40
88
89 2006-02-24 Nick Kledzik <kledzik@apple.com>
90
91 <rdar://problem/4454698> Leopard9A113: ppc64 libstdc++.dylib initializer crashes in pthread_once
92 * unit-tests/test-cases/multiple-entry-points: added
93 * src/MachOReaderRelocatable.hpp: make sure that if there are multiple symbols with the same
94 address, that we properly make zero length atoms for all but last symbol
95
96 2006-02-24 Nick Kledzik <kledzik@apple.com>
97
98 * src/Options.cpp: <rdar://problem/4456093> ld64 doesn't realpath(3) B&I tracing paths
99
100 2006-02-24 Nick Kledzik <kledzik@apple.com>
101
102 * src/Options.cpp: <rdar://problem/4457078> 9A110: ld64 can't deal with section names >16 chars
103
104 2006-02-23 Nick Kledzik <kledzik@apple.com>
105
106 * src/MachOWriterExecutable.hpp: use vector.reserve() to minimize re-allocations
107 * src/Options.cpp: use vector.reserve() to minimize re-allocations
108 * src/MachOReaderRelocatable.hpp: use vector.reserve() to minimize re-allocations
109 * src/MachOReaderDylib.hpp: use vector.reserve() to minimize re-allocations
110 * src/ld.cpp: use vector.reserve() to minimize re-allocations
111
112 2006-02-23 Nick Kledzik <kledzik@apple.com>
113
114 <rdar://problem/4455927> ld64 creates corrupt executables (and has malloc errors) with -headerpad option
115 * src/MachOWriterExecutable.hpp: Change LoadCommandsPaddingAtom<A>::setSize() to update fLargestAtomSize
116 * unit-tests/test-cases/header-pad: added
117
118 2006-02-23 Nick Kledzik <kledzik@apple.com>
119
120 <rdar://problem/4455192> ld64 creates invalid static executables
121 * src/MachOWriterExecutable.hpp: Change MachHeaderAtom<A>::copyRawContent() to create correct header
122 for static executables. Change SymbolTableLoadCommandsAtom to skip LC_DYSYMTAB for static executables
123 * src/machochecker.cpp: Add tests that static executables are well formed
124 * unit-tests/test-cases/static-executable: added
125
126 2006-02-22 Nick Kledzik <kledzik@apple.com>
127
128 * src/Options.cpp: <rdar://problem/4453468> chnage printf on unknown arg to a throw
129
130 ----- Tagged ld64-39
131
132 2006-02-20 Nick Kledzik <kledzik@apple.com>
133
134 * unit-tests/test-cases/read-only-relocs: added new test case
135 * src/MachOWriterExecutable.hpp: <rdar://problem/4448922> detect and error on relocs in read-only sections
136 * src/MachOReaderRelocatable.hpp: fix parsing of i386 absolute addressing relocs
137
138 2006-02-20 Nick Kledzik <kledzik@apple.com>
139
140 * unit-tests/test-cases/stabs-coalesce: added new test case
141 * src/ld.cpp.hpp: <rdar://problem/4449226> in collectStabs removed unused stabs
142
143 ----- Tagged ld64-38
144
145 2006-02-17 Nick Kledzik <kledzik@apple.com>
146
147 * src/MachOWriterExecutable.hpp: <rdar://problem/4434578> set correct n_sect field of stabs
148
149 2006-02-15 Nick Kledzik <kledzik@apple.com>
150
151 * src/MachOReaderArchive.hpp: <rdar://problem/4441920> with -all_load skip over both kinds of SYMDEFs
152 * unit-tests/test-cases/archive-basic/Makefile: add -all_load test case
153
154 ----- Tagged ld64-37
155
156 2006-02-13 Eric Christopher <echristo@apple.com>
157
158 * src/MachOWriterExecutable.hpp (assignFileOffsets): Simplify. Add comments.
159 Adjust whitespace.
160
161 2006-02-13 Nick Kledzik <kledzik@apple.com>
162
163 * src/MachOWriterExecutable.hpp: in Writer<x86>::fixUpReferenceRelocatable() fix kPCRel32 for external case
164
165 2006-02-13 Nick Kledzik <kledzik@apple.com>
166
167 * unit-tests/test-cases/zero-fill: added
168 * src/machochecker.cpp: check that S_ZEROFILL have no file offset
169 * src/MachOWriterExecutable.hpp: rework assignFileOffsets() to fix rdar://problem/4441145
170
171 2006-02-12 Nick Kledzik <kledzik@apple.com>
172
173 * src/MachOReaderRelocatable.hpp: <rdar://problem/4440880> fix use of first zero-length c-string in .o file
174
175 2006-02-12 Nick Kledzik <kledzik@apple.com>
176
177 * src/MachOReaderRelocatable.hpp: <rdar://problem/4440905> fix uninitialized fAlignment
178
179 2006-02-12 Nick Kledzik <kledzik@apple.com>
180
181 * unit-tests/test-cases/relocs-asm/relocs-asm.s: add pointer-diff cases
182 * src/Architectures.hpp: make size explicit in ppc/ppc64 kPointerDiff
183 * src/MachOReaderRelocatable.hpp: don't allow kPointerDiff64 for ppc (just ppc64)
184 * src/MachOWriterExecutable.cpp: set proper r_length for ld -r of kPointerDiff
185
186 ----- Tagged ld64-36
187
188 2006-02-08 Nick Kledzik <kledzik@apple.com>
189
190 * src/MachOReaderRelocatable.cpp: rdar://problem/4438677 Handle when a .o file dwarf line info entries but no functions
191
192 2006-02-08 Nick Kledzik <kledzik@apple.com>
193
194 * src/MachOWriterExecutable.cpp: Properly set address of first TEXT section
195 Keep S_COALESCED attribute for __eh_frame
196
197 2006-02-08 Nick Kledzik <kledzik@apple.com>
198
199 * src/ld.cpp: Temporarily turn allowable client errors into warnings
200 * unit-tests/test-cases/allowable-clientMakefile: Temporarily let warnings be ok for above
201 * src/MachOWriterExecutable.hpp: fix ld -r to not use external relocations for symbols make static
202
203 2006-02-08 Nick Kledzik <kledzik@apple.com>
204
205 * src/ld.cpp: A sibling in an umbrella can always link with its other siblings
206 * unit-tests/test-cases/allowable-client: add test case for above
207
208 2006-02-08 Nick Kledzik <kledzik@apple.com>
209
210 * src/MachOReaderRelocatable.hpp: support LOCAL non-lazy pointers to hidden symbols
211 * src/machochecker.cpp: verify indirect symbol table
212 * unit-tests/test-cases/private-non-lazy: added test case
213
214 2006-02-07 Nick Kledzik <kledzik@apple.com>
215
216 * src/MachOWriterExecutable.hpp: fix calculation of file offsets in ld -r mode
217 * src/machochecker.cpp: verify segment file offsets are within file
218
219 ----- Tagged ld64-35
220
221 2006-02-06 Nick Kledzik <kledzik@apple.com>
222
223 * ld.cpp: allow parent of sub-framework to link
224 * unit-tests/test-cases/allowable-client/Makefile: added cases for parent and clients of parent
225
226 2006-02-04 Nick Kledzik <kledzik@apple.com>
227
228 * unit-tests/test-cases/relocs-c/test.c: added some array cases
229 * src/MachOReaderRelocatable.hpp: factor out makeReferenceToEH()
230 * src/MachOWriterExecutable.hpp: add initial support for non-lazy pointer synthesis
231
232 ----- Tagged ld64-34
233
234 2006-02-04 Nick Kledzik <kledzik@apple.com>
235
236 * src/ld.cpp: <rdar://problem/4432917> fix -no_arch_warnings
237 <rdar://problem/4432932> fix -undefined warning
238 Do BINCL/EINCL optimization for gfull stabs
239 Implement "essential symbols" for stabs (-Sp)
240 Fix allowable clients to only test on direct libraries
241 * src/MachOReaderRelocatable.hpp: support BINCL/EINCL stabs
242
243 2006-02-03 Nick Kledzik <kledzik@apple.com>
244
245 * src/machochecker.cpp: add code to check load command alignment
246 * src/MachOWriterExecutable.hpp: make load command alignment depend on architecture
247
248 2006-02-03 Nick Kledzik <kledzik@apple.com>
249
250 * unit-tests/test-cases/literals-coalesce: added
251 * src/MachOReaderRelocatable.hpp: assure all targets of low14 ppc relocs are at least 4-byte alignmented
252
253 ----- Tagged ld64-33
254
255 2006-02-02 Nick Kledzik <kledzik@apple.com>
256
257 * src/MachOReaderRelocatable.hpp: properly coalesce 8-byte literals
258 * src/MachOWriterExecutable.hpp: support ppc64::kPointerDiff32
259
260 ----- Tagged ld64-32
261
262 2006-02-02 Nick Kledzik <kledzik@apple.com>
263
264 * src/MachOReaderRelocatable.hpp: support anonymous zero fill atoms
265
266 2006-02-02 Nick Kledzik <kledzik@apple.com>
267
268 * src/ld.cpp: A weak definition is good enough, do not search archives for a non-weak one
269 * unit-tests/test-cases/archive-weak: add test case for above
270 * src/MachOReaderRelocatable.hpp: an atom should never have a by-name reference to itself
271 * src/Options.cpp: prevent .eh symbols from being exported via a -exported_symbols_list
272
273 2006-02-01 Nick Kledzik <kledzik@apple.com>
274
275 * src/MachOReaderRelocatable.hpp: Support -macosx_version_min 10.5
276
277 2006-02-01 Nick Kledzik <kledzik@apple.com>
278
279 * src/MachOReaderRelocatable.hpp: don't try to parse debug_line dwarf if no symboled atoms
280
281 ----- Tagged ld64-31
282
283 2006-02-01 Eric Christopher <echristo@apple.com>
284
285 * unit-tests/test-cases/allow-stack-execute/Makefile: Move otool handling...
286 * unit-tests/include/common.makefile: ... here.
287 * unit-tests/bin/fail-if-stdin.pl: New.
288 * unit-tests/test-cases/no-uuid: Ditto.
289 * src/ld.cpp (Linker::) Add fCreateUUID.
290 (::Linker): Initialize.
291 (::collectStabs): Use. Set if dwarf or we have a UUID already.
292 (::writeOutput): Pass as argument to Writer::write along with option.
293 * src/Options.h (Option::emitUUID): Declare.
294 (Option::fEmitUUID): Ditto.
295 * src/Options.cpp (Option::emitUUID): New.
296 (parse): Handle -no_uuid.
297 * src/MachOReaderRelocatable (Reader::Reader): Handle LC_UUID.
298 * src/ExecutableFile.h (Writer::Write): Add createUUID boolean.
299 * src/MachOWriterExecutable: Add UUID forward declaration.
300 (fUUIDAtom): New.
301 (UUIDLoadCommandAtom): Emit LC_UUID if fEmit. New function emit. Size
302 to zero at start.
303 (Writer::writer): Add handle for LC_UUID. If createUUID emit LC_UUID.
304 (MachHeaderAtom::copyRawContent): Don't count a load command if its size is
305 0.
306 (UUIDLoadCommandAtom::copyRawContent): Depend on fEmit.
307
308
309 2006-01-31 Nick Kledzik <kledzik@apple.com>
310
311 * unit-tests/test-cases/dwarf-debug-notes : Added
312 * src/ld.cpp: don't generate debug note for .eh symbols
313 * src/MachOReaderRelocatable.hpp: make dwarf line info to atom matching faster and better
314
315 2006-01-31 Nick Kledzik <kledzik@apple.com>
316
317 * ld64.xcodeproj/project.pbxproj : Make buildable on Leopard
318 * src/MachOFileAbstraction.hpp: make buildable without latest cctools headers
319
320 2006-01-31 Nick Kledzik <kledzik@apple.com>
321
322 * src/MachOReaderRelocatable.hpp: better error message for bad relocs
323 * src/ObjectDump.cpp: add emacs tab settings
324 * src/SectCreate.h: ditto
325 * src/SectCreate.cpp: ditto
326 * src/machochecker.cpp: ditto
327 * src/ExecutableFile.h: ditto
328
329 2006-01-30 Eric Christopher <echristo@apple.com>
330
331 * src/ExecutableFile.h: Indent.
332
333 2006-01-30 Nick Kledzik <kledzik@apple.com>
334
335 * src/MachOReaderRelocatable.hpp: performance improvements
336 * src/ld.cpp: now that stubs are synthesized in write, don't need to special case anymore
337
338 2006-01-30 Nick Kledzik <kledzik@apple.com>
339
340 * src/MachOReaderRelocatable.hpp: fix parsing of pcc relocs
341 * unit-tests/test-cases/relocs-asm/relocs-asm.s: add test case for above
342
343 2006-01-29 Nick Kledzik <kledzik@apple.com>
344
345 * unit-tests/test-cases/weak_import: added test case
346 * src/ld.cpp: move code for weak_import mismatch to writer
347 * src/ObjectFile.h: remove ImportWeakness methods
348 * src/MachOReaderDylib.hpp: ditto
349 * src/SectCreate.cpp: ditto
350 * src/Architectures.hpp: add new ReferenceKinds for weak_imports
351 * src/MachOReaderRelocatable.hpp: implement new ReferenceKinds
352 * src/MachOWriterExecutable.hpp: handle new ReferenceKinds and weak_import mismatches
353
354 2006-01-29 Nick Kledzik <kledzik@apple.com>
355
356 * src/Options.cpp: verify -allow_stack_execute is only used on main executables
357
358 2006-01-29 Nick Kledzik <kledzik@apple.com>
359
360 * src/MachOReaderRelocatable.hpp: sync with latest dwarf reader from Geoff
361 * src/debugline.c: sync with latest dwarf reader from Geoff
362
363 2006-01-27 Eric Christopher <echristo@apple.com>
364
365 * src/ld.cpp (Linker::syntesizeStabs): Correct spelling. Update all uses.
366
367 2006-01-27 Eric Christopher <echristo@apple.com>
368
369 * src/Options.h (Options): Add hasExecutableStack, fExecutableStack.
370 * src/Options.cpp (Options::hasExecutableStack): New.
371 (Options::parse): Parse -allow_stack_execute.
372 * src/MachOWriterExecutable.hpp (MachHeaderAtom::copyRawContent):
373 Implement MH_ALLOW_STACK_EXECUTION.
374 * unit-tests/include/common.makefile (FAIL_IF_EMPTY): New.
375 * unit-tests/bin/fail-if-no-stdin.pl: New file.
376 * unit-tests/test-cases/allow-stack-execute: New directory.
377
378 2006-01-27 Nick Kledzik <kledzik@apple.com>
379
380 * src/MachOFileAbstraction.hpp: rely on latest system headers
381 * src/MachOWriterExecutable.hpp: fix ppc stubs.
382 wrote new relocationNeededInFinalLinkedImage() to replace common code
383
384 2006-01-27 Eric Christopher <echristo@apple.com>
385
386 * src/ld.cpp (logTraceInfo): New.
387 (Linker::addArchive): Use.
388 (Linker::addDylib): Ditto.
389 * src/ObjectFile (ReaderOptions::fTraceOutputFile): New.
390 * src/MachOReaderArchive.hpp (Reader::Reader): Move trace
391 logging to Linker::addArchive.
392 * src/Options.cpp (parsePreCommandLineEnvironment): Check
393 LD_PRINT_FILE if tracing dylibs or archives.
394
395 2006-01-26 Nick Kledzik <kledzik@apple.com>
396
397 * src/MachOWriterExecutable.hpp: handle NULL strings in SO debug notes
398
399 2006-01-26 Nick Kledzik <kledzik@apple.com>
400
401 * src/MachOWriterExecutable.hpp: fix header padding calculation and thread state
402
403 2006-01-26 Nick Kledzik <kledzik@apple.com>
404
405 Rewrite all stabs processing.
406 Move sythesize of debug notes into ld.cpp
407
408 2006-01-26 Nick Kledzik <kledzik@apple.com>
409
410 * src/MachOWriterExecutable.hpp: fix ppc and ppc64 stub relocs
411
412 2006-01-25 Nick Kledzik <kledzik@apple.com>
413
414 * ld64.xcodeproj/project.pbxproj: special case building in Curry
415
416 2006-01-25 Nick Kledzik <kledzik@apple.com>
417
418 * src/MachOWriterExecutable.hpp: fix bugs in stub/lazy-pointer synthesis
419
420 2006-01-24 Eric Christopher <echristo@apple.com>
421
422 * src/ld.cpp (Linker::createReaders): Change logging title to XBS.
423 (Linker::addDylib): Ditto.
424 * src/MachOReaderArchive.hpp (Reader::Reader): Ditto.
425 * src/Options.h (fPrintOptions): New.
426 * src/Options.cpp (Options::Options): Initialize above.
427 (Options::checkForFile): Change logging title to XBS.
428 (Options::findFramework): Ditto.
429 (Options::parse): Add log for options.
430 (Options::parsePreCommandLineEnvironmentSettings): Add LD_TRACE_ARCHIVES,
431 LD_TRACE_DYLIBS, and LD_PRINT_OPTIONS.
432
433 2006-01-24 Nick Kledzik <kledzik@apple.com>
434
435 * src/MachOReaderRelocatable.hpp: better C++ eh parsing
436
437 2006-01-23 Eric Christopher <echristo@apple.com>
438
439 * unit-tests/bin/fail-if-exit-zero.pl: New.
440 * unit-tests/include/common.makefile (FAIL_IF_SUCCESS): Use.
441 * unit-tests/allowable-client: New test.
442 * src/ld.cpp (Linker::addDylib): Check allowable clients before adding dylib.
443 * src/Options.h (allowableClients): New.
444 (clientName): Ditto.
445 (fAllowableClients): Ditto.
446 (fClientName): Ditto.
447 * src/Options.cpp: Implement above.
448 (parse): Handle -allowable_client and -client_name.
449 * src/MachOReaderDylib.hpp (getAllowableClients): New.
450 (fAllowableClients): Ditto.
451 (Reader): Process LC_SUB_CLIENT load command.
452 * src/ObjectFile.h (parentUmbrella): New.
453 (getAllowableClients): New.
454 * src/MachOWriterExecutable.hpp (AllowableClientLoadCommandsAtom): New.
455
456 2006-01-23 Nick Kledzik <kledzik@apple.com>
457
458 * unit-tests/test-cases/archive-basic: added
459 * src/ld.cpp: fix shadowed local variable
460 * src/FileAbstraction.hpp: <rdar://problem/4417372> ld64 shouldn't inline when building debug
461
462 2006-01-23 Nick Kledzik <kledzik@apple.com>
463
464 * src/ld.cpp: fix symbol not found error message
465 * src/MachOReaderDylib.hpp: add logging to hash table
466 * src/MachOReaderRelocatable.hpp: enable stabs processing. Handle static functions with stubs
467 handle labeled cstrings.
468 * src/MachOWriterExecutable.hpp: properly suppress atoms not in symbol table. fix low14 error check.
469 add StubAtomHelper.
470 * unit-tests/test-cases/relocs-literals/test.c: add more interesting edge cases
471
472 2006-01-17 Nick Kledzik <kledzik@apple.com>
473
474 * src/MachOReaderRelocatable.hpp: tweaks to synthesizing debug notes
475
476 2006-01-16 Nick Kledzik <kledzik@apple.com>
477
478 * src/debugline.{sh}: added
479 * src/MachOReaderRelocatable.hpp: synthesize debug notes SOL from dwarf
480 * src/MachOWriterExecutable.hpp: fix lazy pointer section
481 * src/ObjectDump.hpp: Fix conditionalization
482 * unit-tests/test-cases/dwarf-strip: added
483
484 2006-01-11 Nick Kledzik <kledzik@apple.com>
485
486 * src/MachOReaderRelocatable.hpp: support Tiger crt1.o build with old ld64
487 * src/ObjectDump.hpp: Support -arch option
488
489 2006-01-10 Nick Kledzik <kledzik@apple.com>
490
491 * src/MachOWriterExecutable.hpp: fix stubs for ppc64
492 * src/MachOFileAbstraction.hpp: fix typo for macho_routines
493 * ld64.xcodeproj/project.pbxproj: add machochecker target
494 * src/machochecker.cpp: new skeleton for checking mach-o file bit
495 * unit-tests/: Add support for running machochecker
496
497 2006-01-10 Nick Kledzik <kledzik@apple.com>
498
499 * src/MachOReaderRelocatable.hpp: warn if dwarf can't be parsed
500 * src/MachOReaderArchive.hpp: modTime for OSO stabs from archives is .a modTime
501
502 2006-01-09 Nick Kledzik <kledzik@apple.com>
503
504 * track modification time of .o files so that sythesized OSO stab will have it
505
506 2006-01-09 Nick Kledzik <kledzik@apple.com>
507
508 * src/MachOFileAbstraction.hpp: add macho_uuid_command
509 * src/MachOWriterExecutable.cpp: add UUID load command to generated files
510
511 2006-01-09 Nick Kledzik <kledzik@apple.com>
512
513 * src/MachOReaderDylib.hpp: no longer keep dylib memory mapped
514 * src/ld.cpp: don't track dylib sizes because they are not longer memory mapped
515
516 2006-01-05 Nick Kledzik <kledzik@apple.com>
517
518 * src/MachOReaderRelocatable.hpp: support new relocations
519
520 2006-01-05 Nick Kledzik <kledzik@apple.com>
521
522 * src/MachOReaderDylib.hpp: support MH_DYLIB_STUB
523 * src/MachOReaderRelocatable.hpp: Add Geoff's comp unit extractor
524
525 2006-01-05 Nick Kledzik <kledzik@apple.com>
526
527 refactor: transform Atom::dontStripName() to getSymbolTableInclusion()
528 * src/ld.cpp: pass dyld_stub_binding_helper to writer
529 * src/MachOReaderRelocatable.hpp: update synthesized stabs
530 Ignore stubs and lazy pointers in .o files
531 Support initializers and terminators
532 * src/MachOWriterExecutable.hpp: synthesize stubs and lazy pointers as needed
533 * ld64.xcodeproj/project.pbxproj: change Release target to build with dwarf
534
535 2006-01-03 Eric Christopher <echristo@apple.com>
536
537 * src/Options.h (multipleDefinitionsInDylibs): Declare.
538 (overridingDefinitionInDependentDylib): Ditto.
539 (warnOnMultipleDefinitionsInObjectFiles): Ditto.
540 (multiplyDefined): Remove.
541 (multiplyDefinedUnused): Ditto.
542 (fMultiplyDefined): Ditto.
543 (fWarnOnMultiplyDefined): New.
544 (fMultiplyDefinedDynamic): Ditto.
545 * src/Options.cpp (Options::Options): Initialize above.
546 (overridingDefinitionInDependentDylib): New.
547 (multipleDefinitionsInDylibs): Ditto.
548 (warnOnMultipleDefinitionsInObjectFiles): Ditto.
549 (parse): Update comments. Fix parsing of -y option.
550 Update error message for -dead_strip. Parse above
551 options.
552
553 2006-01-02 Nick Kledzik <kledzik@apple.com>
554
555 * Refactor: move Atom::writeContent() to Writer
556
557 2005-12-23 Nick Kledzik <kledzik@apple.com>
558
559 * Reworked, simplify, and document test harness
560 * unit-tests/README: Added
561
562 2005-12-23 Nick Kledzik <kledzik@apple.com>
563
564 * src/MachOReaderRelocatable.hpp: fixes for Objective-C
565 * unit-tests/test-cases/relocs-objc: Added
566
567 2005-12-22 Nick Kledzik <kledzik@apple.com>
568
569 * src/MachOReaderRelocatable.hpp: fix check that next reloc is pair
570 * src/MachOReaderRelocatable.hpp: Add code to synthesize essential stabs from dwarf
571
572 2005-12-21 Nick Kledzik <kledzik@apple.com>
573
574 * src/MachOReaderRelocatable.hpp: Fix parsing of literal sections
575 * src/MachOWriterExecutable.hpp: Fix writing of literal sections
576 * unit-tests/test-cases/relocs-literals: Added
577
578 2005-12-15 Eric Christopher <echristo@apple.com>
579
580 * src/Options.h (enum Treatment): New.
581 (enum PICTreatment): Delete.
582 (enum VersionMin): New.
583 (prebind): Declare.
584 (macosxVersionMin): Ditto.
585 (multiplyDefined): Ditto.
586 (multiplyDefinedUnused): Ditto.
587 (setVersionMin): Ditto.
588 (setPICTreatment): Delete.
589 (setReadOnlyRelocTreatment): Ditto.
590 (picTreatment): Adjust return type.
591 (parseTreatment): New.
592 (fPrebind): Ditto.
593 (fVersionMin): Ditto.
594 (fPICTreatment): Change type.
595 (fMultiplyDefined): New.
596 (fMultiplyDefinedUnused): Ditto.
597 (fLimitUndefinedSymbols): Ditto.
598
599 * src/Options.cpp: Fix whitespace. Add comments on options.
600 (Options::Options): Add initializers for new variables.
601 (Options::prebind): New.
602 (Options::macosxVersionMin): Ditto.
603 (Options::parseTreatment): Ditto.
604 (Options::setVersionMin): Ditto.
605 (Options::setReadOnlyRelocTreatment): Delete.
606 (Options::setPICTreatment): Ditto.
607 (Options::Parse): Update for above. Add comments.
608
609 2005-12-15 Nick Kledzik <kledzik@apple.com>
610
611 * src/MachOReaderRelocatable.hpp: Add comments about dwarf
612
613 2005-12-14 Nick Kledzik <kledzik@apple.com>
614
615 * src/ELFFileAbstraction.hpp: Added
616 * src/ELFReaderRelocatable.hpp: Added
617 * Lot of fixes for new architecture
618
619 2005-12-13 Nick Kledzik <kledzik@apple.com>
620
621 * src/MachOReaderRelocatable.hpp: check for S_ATTR_DEBUG and ignore those sections
622 * unit-tests/test-cases/dwarf-ignore: added
623
624 2005-12-12 Nick Kledzik <kledzik@apple.com>
625
626 * Added test harness and three initial tests:
627 relocs-asm, relocs-c, and hello-world
628
629 2005-12-12 Nick Kledzik <kledzik@apple.com>
630
631 * src/MachOReaderRelocatable.hpp: Massive refactoring:
632 Now there are three Atom classes, Chopping into Atoms
633 is done on label boundaries or by knowledge of special
634 sections, Share lots of ppc/ppc64 code.
635 Stabs process code is temporarily disabled.
636
637 2005-12-12 Nick Kledzik <kledzik@apple.com>
638
639 * src/ObjectDump.cpp: Add command line options: -no_content, -stabs, -no_sort
640
641 2005-12-11 Eric Christopher <echristo@apple.com>
642
643 * src/Options.cpp: Reformat.
644 * src/Options.h: Ditto.
645
646 2005-12-07 Eric Christopher <echristo@apple.com>
647
648 * src/MachOReaderRelocatable.hpp (Atom::getAlignment):
649 When calculating alignment of an Atom, take into account
650 the alignment from which we pulled the Atom.
651
652 2005-12-06 Nick Kledzik <kledzik@apple.com>
653
654 * src/Options.cpp src/Options.h: Add design comments
655
656 2005-12-05 Eric Christopher <echristo@apple.com>
657
658 * src/ld.cpp (Linker::createWriter): Uncomment ppc64 and
659 i386 linkers.
660
661 2005-12-05 Eric Christopher <echristo@apple.com>
662
663 * ChangeLog: New file.
664
665 2005-12-02 Nick Kledzik <kledzik@apple.com>
666
667 * src/ObjectFile.h: Add design comments
668
669 2005-11-28 Nick Kledzik <kledzik@apple.com>
670
671 * Refactor Atom to use getDefinitionKind()
672
673 2005-11-21 Nick Kledzik <kledzik@apple.com>
674
675 * src/MachOWriterExecutable.hpp: don't generate section for commons in -r mode
676
677 2005-11-18 Nick Kledzik <kledzik@apple.com>
678
679 * x86 tweaks
680
681 2005-11-18 Nick Kledzik <kledzik@apple.com>
682
683 * src/ObjectDump.cpp: make work with command line arguments
684
685 2005-11-18 Nick Kledzik <kledzik@apple.com>
686
687 * Massive rework to remove preprocessor conditionals and use templates
688
689 2005-11-14 Nick Kledzik <kledzik@apple.com>
690
691 * Created new Subversion repository for ld64 from cvs tag ld64-27.2