[SR-3764] Use IdentifierIDs in serialization's lookup tables #46349
Labels
compiler
The Swift compiler in itself
improvement
serialization
Area → compiler: Serialization & deserialization
Additional Detail from JIRA
md5: 99588a280e62b5fc59fdb265fe8314b1
Issue Description:
Serialization has a number of OnDiskHashTables keyed by Identifiers. Rather than use the existing uniqued identifier table in the serialized archive, however, they're just using raw string data. This is unnecessary and will become more of a problem when we start including lookup tables for members of nominal types.
Instead, we should have both serialization and deserialization use the existing IdentifierID mechanism to reference identifiers from the unique table. This deserialization can happen fairly eagerly; deserializing an identifier is pretty cheap.
(Note that we do not need to do this for the "local decls" table, which is keyed by mangled names. These names are likely not uttered anywhere else, so uniquing them would be a waste.)
The text was updated successfully, but these errors were encountered: