This implements ld64's checks for duplicate method names in categories &
classes.
In addition, this sets us up for implementing Obj-C category merging.
This diff handles the most of the parsing work; what's left is rewriting
those category / class structures.
Numbers for chromium_framework:
base diff difference (95% CI)
sys_time 2.182 ± 0.027 2.200 ± 0.047 [ -0.2% .. +1.8%]
user_time 6.451 ± 0.034 6.479 ± 0.062 [ -0.0% .. +0.9%]
wall_time 6.841 ± 0.048 6.885 ± 0.105 [ -0.1% .. +1.4%]
samples 33 22
Fixes https://github.com/llvm/llvm-project/issues/54912.
Issues seen with the previous land will be fixed in the next commit.
Reviewed By: #lld-macho, thevinster, oontvoo
Differential Revision: https://reviews.llvm.org/D142916
11 lines
408 B
Plaintext
11 lines
408 B
Plaintext
--- !tapi-tbd-v3
|
|
archs: [ i386, x86_64, arm64 ]
|
|
uuids: [ 'i386: 00000000-0000-0000-0000-000000000000', 'x86_64: 00000000-0000-0000-0000-000000000001', 'arm64: 00000000-0000-0000-0000-000000000002' ]
|
|
platform: macosx
|
|
install-name: '/usr/lib/libobjc.dylib'
|
|
current-version: 1281
|
|
exports:
|
|
- archs: [ i386, x86_64, arm64 ]
|
|
symbols: [ __objc_empty_cache ]
|
|
...
|