swiftlang / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. This fork is used to manage Swift’s stable releases of Clang as well as support the Swift project.
https://llvm.org
Other
1.12k stars 331 forks source link

🍒 [clang][serialization] Blobify IMPORTS strings and signatures #9634

Closed jansvoboda11 closed 2 days ago

jansvoboda11 commented 3 days ago

This PR changes a part of the PCM format to store string-like things in the blob attached to a record instead of VBR6-encoding them into the record itself. Applied to the IMPORTS section (which is very hot), this speeds up dependency scanning by 2.8%.

(cherry picked from commit b769e3544a763a90abefd0dbe9254d83c765e1dc)

jansvoboda11 commented 3 days ago

@swift-ci please test

jansvoboda11 commented 2 days ago

@swift-ci please test