-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Refactor Direct Lookup #28845
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactor Direct Lookup #28845
Conversation
@swift-ci test |
@swift-ci test source Compatibility |
@swift-ci test compiler performance |
include/swift/AST/Decl.h
Outdated
/// scope; it should be manipulated through \c isLookupTablePopulated() | ||
/// and \c setLookupTablePopulated(). | ||
/// scope; it should be manipulated through \c isLookupTableDirty() | ||
/// and \c setLookupTableDirty(). | ||
llvm::PointerIntPair<MemberLookupTable *, 1, bool> LookupTable; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note to self: If this works out, make this a unique_ptr.
Build failed |
Oh boy, cascading infrastructure failures. @swift-ci test |
@swift-ci test source compatibility |
@swift-ci test compiler performance |
Build failed |
Build failed |
@swift-ci please smoke test |
32364a3
to
0a1419e
Compare
@swift-ci please smoke test |
1 similar comment
@swift-ci please smoke test |
0a1419e
to
d772b10
Compare
d772b10
to
b8ef2bd
Compare
The old name lookup would frequently try to flush and rebuild the name lookup cache. Instead, never flush the cache, and use the cache misses as an opportunity to load members and bring the lookup table up to date with any added extensions.
b8ef2bd
to
1a9bdaf
Compare
@swift-ci please test |
@swift-ci please test source compatibility |
@swift-ci please test compiler performance |
⛵️ |
The old name lookup would frequently try to flush and rebuild the name lookup cache. Instead, never flush the cache, and use the cache misses as an opportunity to load members and bring the lookup table up to date with any added extensions.
Whether this is an improvement over the status quo remains to be seen.
This is built on #28840 for a little extra fun... Only the last commit really matters.