Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5 |
|
#
03506bc0 |
| 19-Nov-2024 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Add missing attribute to remove/merge/extract operations (#116729)
|
Revision tags: llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4 |
|
#
515d3f7d |
| 04-Apr-2024 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Reorder addRPath parameters (#87601)
It matches up with other _attribute_ adding member functions and helps
simplify InterfaceFile assignment for InstallAPI.
|
Revision tags: llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2 |
|
#
4460fa88 |
| 30-Jan-2024 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Introduce granularity for handling ObjC Interface symbols (#79928)
ObjCInterfaceRecords roughly align to the objc-classes key in tbd-files.
They condensely represent up to 3 symbols. The
[TextAPI] Introduce granularity for handling ObjC Interface symbols (#79928)
ObjCInterfaceRecords roughly align to the objc-classes key in tbd-files.
They condensely represent up to 3 symbols. The problem here is that when
represented this way, we lose granularity when these symbols could have
different linkages or outright don't exist. This can happen frequently
in interoptable code generated by the swift compiler. This adds fields
and utility functions to express unique properties for these symbols. If
the record does represent the same properties across all of its symbols,
it will be treated the same in the TBD. Otherwise it will be printed in
global's section.
Reviewed seperately before by Juergen Ributzka
show more ...
|
Revision tags: llvmorg-18.1.0-rc1 |
|
#
d9a9872e |
| 27-Jan-2024 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Rename SymbolKind to EncodeKind (#79622)
A distinction that doesn't _usually_ matter is that the
MachO::SymbolKind is really a mapping of entries in TBD files not
symbols. To better unde
[TextAPI] Rename SymbolKind to EncodeKind (#79622)
A distinction that doesn't _usually_ matter is that the
MachO::SymbolKind is really a mapping of entries in TBD files not
symbols. To better understand this, rename the enum so it represents an
encoding mapped to TBDs as opposed to symbols alone.
For example, it can be a bit confusing that "GlobalSymbol" is a enum
value when all of those values can represent a GlobalSymbol.
show more ...
|
Revision tags: llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5 |
|
#
e17efa60 |
| 09-Nov-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[llvm][TextAPI] Add new `not_for_dyld_shared_cache` attribute to file… (#71735)
… format.
Formats >= TBDv4 will now encode new attribute that the system static
linker wil read when tbd files rep
[llvm][TextAPI] Add new `not_for_dyld_shared_cache` attribute to file… (#71735)
… format.
Formats >= TBDv4 will now encode new attribute that the system static
linker wil read when tbd files replace binary dylibs.
show more ...
|
Revision tags: llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0 |
|
#
455bf3d1 |
| 15-Sep-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Consolidate TextAPI Reader/Writer APIs. (#66108)
Both Swift & LLD use TextAPI reader/writer apis to interface with TBD
files. Add doc strings to document what each API does. Also, add
sh
[TextAPI] Consolidate TextAPI Reader/Writer APIs. (#66108)
Both Swift & LLD use TextAPI reader/writer apis to interface with TBD
files. Add doc strings to document what each API does. Also, add
shortcut APIs for validating input is a TBD file.
This reduces the differences between downstream and how tapi calls into
these APIs.
show more ...
|
#
f9fe6032 |
| 07-Sep-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Support more constructors for PackedVersions
TBD files now record minimum deplyoment versions and tapi interfaces with apple system linker by a packed version encoding. Support mapping bet
[TextAPI] Support more constructors for PackedVersions
TBD files now record minimum deplyoment versions and tapi interfaces with apple system linker by a packed version encoding. Support mapping between that and `VersionTuple`s.
show more ...
|
Revision tags: llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3 |
|
#
913f21ae |
| 11-Aug-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Express MH_SIM_SUPPORT in tbd files.
This adds a new optional flag sim_support which is the same as MH_SIM_SUPPORT in the MachO header.
Reviewed By: ributzka
Differential Revision: https
[TextAPI] Express MH_SIM_SUPPORT in tbd files.
This adds a new optional flag sim_support which is the same as MH_SIM_SUPPORT in the MachO header.
Reviewed By: ributzka
Differential Revision: https://reviews.llvm.org/D157433
show more ...
|
Revision tags: llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1 |
|
#
3b731391 |
| 28-Jul-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Make min-os deployment version optional in tbd-v5.
The minOS version is recorded in tbd-v5 so the linker can report diagnostics when a library and client are misconfigured.
Dylibs should
[TextAPI] Make min-os deployment version optional in tbd-v5.
The minOS version is recorded in tbd-v5 so the linker can report diagnostics when a library and client are misconfigured.
Dylibs should always have a minOS recorded, but in was not recorded in previous TBD versions. To accommodate the format transition, treat unrecorded minOS versions as 0.
Reviewed By: zixuw
Differential Revision: https://reviews.llvm.org/D156487
show more ...
|
#
16c1f436 |
| 25-Jul-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Add functionality to manipulate over InterfaceFiles
InterfaceFile is the in-memory representation for tbd files. Add APIs to merge, extract, remove, and inline reexported libraries.
Revie
[TextAPI] Add functionality to manipulate over InterfaceFiles
InterfaceFile is the in-memory representation for tbd files. Add APIs to merge, extract, remove, and inline reexported libraries.
Reviewed By: zixuw
Differential Revision: https://reviews.llvm.org/D153398
show more ...
|
Revision tags: llvmorg-18-init |
|
#
0882c70d |
| 24-Jul-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Introduce SymbolSet
SymbolSet is a structure that acts as a simple container class for exported symbols that belong to a library interface. It allows tapi to decouple the globals from the
[TextAPI] Introduce SymbolSet
SymbolSet is a structure that acts as a simple container class for exported symbols that belong to a library interface. It allows tapi to decouple the globals from the other library attributes. It's uniqued by symbol name and `kind`, which all contain their assigned target triples.
Reviewed By: zixuw
Differential Revision: https://reviews.llvm.org/D149860
show more ...
|
Revision tags: llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1 |
|
#
f991f308 |
| 31-Mar-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[llvm][TextAPI] compare deployment versions for equality check
|
#
39748656 |
| 23-Mar-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[llvm][TextAPI] Handle implicitly upgraded deployment versions
Sometimes the clang driver will receive a target triple where the deployment version is too low to support the platform + arch. In thos
[llvm][TextAPI] Handle implicitly upgraded deployment versions
Sometimes the clang driver will receive a target triple where the deployment version is too low to support the platform + arch. In those cases, the compiler upgrades the final minOS which is what gets recorded ultimately by the linker in LC_BUILD_VERSION. TextAPI should also reuse this logic for capturing minOS in recorded TBDv5 files.
Reviewed By: ributzka
Differential Revision: https://reviews.llvm.org/D145690
show more ...
|
Revision tags: llvmorg-16.0.0, llvmorg-16.0.0-rc4 |
|
#
9b29de1c |
| 22-Feb-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[llvm][TextAPI] Clean up minor bugs in YAML TextStub
* Always print out maccatalyst in format * Traverse symbols via InterfaceFile symbol APIs * Properly track addition of flags.
Reviewed By: ribut
[llvm][TextAPI] Clean up minor bugs in YAML TextStub
* Always print out maccatalyst in format * Traverse symbols via InterfaceFile symbol APIs * Properly track addition of flags.
Reviewed By: ributzka
Differential Revision: https://reviews.llvm.org/D144428
show more ...
|
#
d6f9b97b |
| 22-Feb-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
Reland "[TextAPI] Implement TBDv5 Writer"
Create writer for new JSON format. The new JSON format allows practically all attributes to be defined per target in a universal library however the interna
Reland "[TextAPI] Implement TBDv5 Writer"
Create writer for new JSON format. The new JSON format allows practically all attributes to be defined per target in a universal library however the internal representation only allows one for the time being. For now the write will always write those attributes as default available for all targets (install name, compatability & current version, swift abi, flags e.g. flatnamepace & app exenstion safety)
rdar://102076911
Reviewed By: ributzka
Differential Revision: https://reviews.llvm.org/D144339
show more ...
|
#
b2b50980 |
| 22-Feb-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
Revert "[TextAPI] Implement TBDv5 Writer"
This reverts commit 8217932aabcb271df7eb30e069fdace904299cba.
Breaks buildbots.
|
#
8217932a |
| 22-Feb-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Implement TBDv5 Writer
Create writer for new JSON format. The new JSON format allows practically all attributes to be defined per target in a universal library however the internal represe
[TextAPI] Implement TBDv5 Writer
Create writer for new JSON format. The new JSON format allows practically all attributes to be defined per target in a universal library however the internal representation only allows one for the time being. For now the write will always write those attributes as default available for all targets (install name, compatability & current version, swift abi, flags e.g. flatnamepace & app exenstion safety)
rdar://102076911
Reviewed By: ributzka
Differential Revision: https://reviews.llvm.org/D144339
show more ...
|
Revision tags: llvmorg-16.0.0-rc3 |
|
#
b70d87bc |
| 18-Feb-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Capture new properties from TBD to InterfaceFile
* Deployment Versions for targets * Run Search Paths * Text vs Data Segment attributes to symbols
Reviewed By: pete
Differential Revision
[TextAPI] Capture new properties from TBD to InterfaceFile
* Deployment Versions for targets * Run Search Paths * Text vs Data Segment attributes to symbols
Reviewed By: pete
Differential Revision: https://reviews.llvm.org/D144158
show more ...
|
#
79320a0c |
| 18-Feb-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
Reland "[TextAPI] Implement TBDv5 Reader"
Introduce initial reader for TBDv5 which is in JSON. This captures all the currently understood fields within the internal structure `InterfaceFile`. New fi
Reland "[TextAPI] Implement TBDv5 Reader"
Introduce initial reader for TBDv5 which is in JSON. This captures all the currently understood fields within the internal structure `InterfaceFile`. New fields will be followed up in future PRs.
Reviewed By: pete
Differential Revision: https://reviews.llvm.org/D144156
show more ...
|
#
b861b122 |
| 17-Feb-2023 |
Cyndy Ishida <cyndy_ishida@apple.com> |
[TextAPI] Implement TBDv5 Reader
[TextAPI] Implement TBDv5 Reader
Introduce initial reader for TBDv5 which is in JSON. This captures all the currently understood fields within the inter
[TextAPI] Implement TBDv5 Reader
[TextAPI] Implement TBDv5 Reader
Introduce initial reader for TBDv5 which is in JSON. This captures all the currently understood fields within the internal structure `InterfaceFile`.
New fields & follow up tests will be followed up in future PRs.
Reviewed By: pete
Differential Revision: https://reviews.llvm.org/D144156
show more ...
|