]>
Commit | Line | Data |
---|---|---|
d696c285 | 1 | |
4f3e367c A |
2 | 2008-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 | ||
8 | 2008-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 | |
16 | 2008-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 | ||
21 | 2008-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 | ||
27 | 2008-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 | ||
34 | 2008-04-17 Nick Kledzik <kledzik@apple.com> | |
35 | ||
36 | * src/MachOReaderRelocatable.hpp: better cpu subtype support | |
37 | ||
38 | ||
39 | 2008-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 | ||
45 | 2008-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 | ||
52 | 2008-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 | 64 | 2008-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 | ||
73 | 2008-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 | 81 | 2008-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 | 91 | 2008-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 | 96 | 2008-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 | 102 | 2008-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 | 112 | 2008-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 | 122 | 2008-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 | 133 | 2008-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 | 139 | 2008-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 | 145 | 2008-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 | 150 | 2008-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 | 166 | 2008-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 | 175 | 2008-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 | 183 | 2008-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 | 189 | 2008-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 | 204 | 2008-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 | 213 | 2008-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 | 219 | 2008-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 | 225 | 2008-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 | 231 | 2008-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 | 238 | 2008-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 | 245 | 2008-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 | 253 | 2008-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 | 262 | 2008-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 | 269 | 2008-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 | 278 | 2008-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 | 284 | 2008-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 | 294 | 2008-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 | 305 | 2008-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 | 310 | 2008-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 | 320 | 2008-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 | 326 | 2008-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 | 334 | 2008-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 | 340 | 2008-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 | 347 | 2008-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 | 352 | 2008-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 | 360 | 2008-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 | 368 | 2008-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 | 376 | 2008-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 | 383 | 2008-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 | 390 | 2008-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 | 395 | 2008-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 | 401 | 2008-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 | 408 | 2008-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 | 414 | 2008-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 | 420 | 2000-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 | 427 | 2008-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 | 443 | 2007-12-19 Devang Patel <dpatel@apple.com> |
a61fdf0a | 444 | |
2f2f92e4 | 445 | * src/LLVMReader.hpp: Add LLVM_LTO_VERSION #ifdef check. |
a61fdf0a | 446 | |
2f2f92e4 | 447 | 2007-12-19 Devang Patel <dpatel@apple.com> |
a61fdf0a | 448 | |
2f2f92e4 | 449 | * src/LLVMReader.hpp: Add fOptimizer NULL check before calling printVersion(). |
a61fdf0a | 450 | |
2f2f92e4 | 451 | 2007-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 | 457 | 2007-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 | 465 | 2007-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 | 471 | 2007-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 | 476 | 2007-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 | 482 | 2007-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 | 489 | 2007-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 | ||
498 | 2007-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 |