| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[lld/mac] For catalyst outputs, tolerate implicitly linking against mac-only tbd files Before this, clang empty.cc -target x86_64-apple-ios13.1-macabi \ -framework CoreServices -fuse-ld=lld would error out with ld64.lld: error: path/to/MacOSX.sdk/System/Library/Frameworks/ CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/ Versions/A/CarbonCore.tbd( /System/Library/Frameworks/ CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/ Versions/A/CarbonCore) is incompatible with x86_64 (macCatalyst) Now it works, like with ld64. Differential Revision: https://reviews.llvm.org/D124336 | 4 年前 | |
[lld-macho] Implement ICF ICF = Identical C(ode|OMDAT) Folding This is the LLD ELF/COFF algorithm, adapted for MachO. So far, only -icf all is supported. In order to support -icf safe, we will need to port address-significance tables (.addrsig directives) to MachO, which will come in later diffs. check-{llvm,clang,lld} have 0 regressions for lld -icf all vs. baseline ld64. We only run ICF on __TEXT,__text for reasons explained in the block comment in ConcatOutputSection.cpp. Here is the perf impact for linking chromium_framekwork on a Mac Pro (16-core Xeon W) for the non-ICF case vs. pre-ICF: N Min Max Median Avg Stddev x 20 4.27 4.44 4.34 4.349 0.043029977 + 20 4.37 4.46 4.405 4.4115 0.025188761 Difference at 95.0% confidence 0.0625 +/- 0.0225658 1.43711% +/- 0.518873% (Student's t, pooled s = 0.0352566) Reviewed By: #lld-macho, int3 Differential Revision: https://reviews.llvm.org/D103292 | 4 年前 |