<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/llvm/lib/TextAPI/Symbol.cpp, branch users/nico/python-2</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[TextAPI] Introduce granularity for handling ObjC Interface symbols (#79928)</title>
<updated>2024-01-30T02:36:48+00:00</updated>
<author>
<name>Cyndy Ishida</name>
<email>cyndy_ishida@apple.com</email>
</author>
<published>2024-01-30T02:36:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=4460fa8814d4c86e1d22f830078d7bad69bc0ecc'/>
<id>4460fa8814d4c86e1d22f830078d7bad69bc0ecc</id>
<content type='text'>
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</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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</pre>
</div>
</content>
</entry>
<entry>
<title>[TextAPI] Rename SymbolKind to EncodeKind (#79622)</title>
<updated>2024-01-27T00:12:50+00:00</updated>
<author>
<name>Cyndy Ishida</name>
<email>cyndy_ishida@apple.com</email>
</author>
<published>2024-01-27T00:12:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=d9a9872ec4760762fdc467ef283cea302a3742e5'/>
<id>d9a9872ec4760762fdc467ef283cea302a3742e5</id>
<content type='text'>
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.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.</pre>
</div>
</content>
</entry>
<entry>
<title>[llvm] Use StringRef::{starts,ends}_with (NFC) (#74956)</title>
<updated>2023-12-12T05:01:36+00:00</updated>
<author>
<name>Kazu Hirata</name>
<email>kazu@google.com</email>
</author>
<published>2023-12-12T05:01:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=586ecdf205aa8b3d162da6f955170a6736656615'/>
<id>586ecdf205aa8b3d162da6f955170a6736656615</id>
<content type='text'>
This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}::{starts,ends}_with in C++20.

I'm planning to deprecate and eventually remove
StringRef::{starts,ends}with.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch replaces uses of StringRef::{starts,ends}with with
StringRef::{starts,ends}_with for consistency with
std::{string,string_view}::{starts,ends}_with in C++20.

I'm planning to deprecate and eventually remove
StringRef::{starts,ends}with.</pre>
</div>
</content>
</entry>
<entry>
<title>[TextAPI] Introduce Records &amp; RecordSlice Types (#74115)</title>
<updated>2023-12-02T21:19:01+00:00</updated>
<author>
<name>Cyndy Ishida</name>
<email>cyndy_ishida@apple.com</email>
</author>
<published>2023-12-02T21:19:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=b04b89753daf9751a81ffbcfbfbe6c610fb88af8'/>
<id>b04b89753daf9751a81ffbcfbfbe6c610fb88af8</id>
<content type='text'>
`Record`'s hold target triple specific information about APIs and
symbols. This holds information about the relationship between ObjC
symbols and their linkage properties. It will be used to compare and run
significant operations between the frontend representation of symbols in
AST and symbol information extracted from Mach-O binaries. This differs
from the lighter weight Symbol and SymbolSet class where they are
deduplicated across targets and only represent exported symbols, that
class is mostly used for serializing.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`Record`'s hold target triple specific information about APIs and
symbols. This holds information about the relationship between ObjC
symbols and their linkage properties. It will be used to compare and run
significant operations between the frontend representation of symbols in
AST and symbol information extracted from Mach-O binaries. This differs
from the lighter weight Symbol and SymbolSet class where they are
deduplicated across targets and only represent exported symbols, that
class is mostly used for serializing.</pre>
</div>
</content>
</entry>
<entry>
<title>[TextAPI] Introduce SymbolSet</title>
<updated>2023-07-24T19:01:25+00:00</updated>
<author>
<name>Cyndy Ishida</name>
<email>cyndy_ishida@apple.com</email>
</author>
<published>2023-07-24T18:55:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0882c70df222a89c15f2776b85a60696e6ecd712'/>
<id>0882c70df222a89c15f2776b85a60696e6ecd712</id>
<content type='text'>
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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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
</pre>
</div>
</content>
</entry>
<entry>
<title>[TextAPI] Add support for TBDv5 Files to nm &amp; tapi-diff</title>
<updated>2023-02-23T03:39:26+00:00</updated>
<author>
<name>Cyndy Ishida</name>
<email>cyndy_ishida@apple.com</email>
</author>
<published>2023-02-23T01:13:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=bc85cf1687435f28fb01b1aa5303317e6118490c'/>
<id>bc85cf1687435f28fb01b1aa5303317e6118490c</id>
<content type='text'>
This includes handling of new attributes for symbols &amp; rpath.
In the event that an older format file is compared to tbd_v5, ignore these new attributes.

Reviewed By: ributzka

Differential Revision: https://reviews.llvm.org/D144529
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This includes handling of new attributes for symbols &amp; rpath.
In the event that an older format file is compared to tbd_v5, ignore these new attributes.

Reviewed By: ributzka

Differential Revision: https://reviews.llvm.org/D144529
</pre>
</div>
</content>
</entry>
<entry>
<title>[TextAPI] move source code files out of subdirectory, NFC</title>
<updated>2021-04-05T17:24:42+00:00</updated>
<author>
<name>Cyndy Ishida</name>
<email>cyndy_ishida@apple.com</email>
</author>
<published>2021-04-05T16:59:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=0116d04d04f20e9ae62ba847075840c3cb298080'/>
<id>0116d04d04f20e9ae62ba847075840c3cb298080</id>
<content type='text'>
TextAPI/ELF has moved out into InterfaceStubs, so theres no longer a
need to seperate out TextAPI between formats.

Reviewed By: ributzka, int3, #lld-macho

Differential Revision: https://reviews.llvm.org/D99811
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
TextAPI/ELF has moved out into InterfaceStubs, so theres no longer a
need to seperate out TextAPI between formats.

Reviewed By: ributzka, int3, #lld-macho

Differential Revision: https://reviews.llvm.org/D99811
</pre>
</div>
</content>
</entry>
</feed>
