- Notifications
You must be signed in to change notification settings - Fork5.1k
PlaceInterfaceMethod is now more optimized#96703
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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
PlaceInterfaceMethod is now more optimized#96703
Uh oh!
There was an error while loading.Please reload this page.
Conversation
davidwrighton commentedJan 9, 2024
- It naturally has an O(NM) algorithm, we reduce it to O(N(Msmaller)), and make the constant factor faster
- We take a local copy of the declared methods and name hashes, and the scan is now a straight linear scan of 32 bit memory DWORDS, and naturally skips nonpublic and non virtual methods.
- It naturally has an O(N*M) algorithm, we reduce it to O(N*(Msmaller)), and make the constant factor faster- We take a local copy of the declared methods and name hashes, and the scan is now a straight linear scan of 32 bit memory DWORDS, and naturally skips nonpublic and non virtual methods.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
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.
LGTM!
* PlaceInterfaceMethod is now more optimized- It naturally has an O(N*M) algorithm, we reduce it to O(N*(Msmaller)), and make the constant factor faster- We take a local copy of the declared methods and name hashes, and the scan is now a straight linear scan of 32 bit memory DWORDS, and naturally skips nonpublic and non virtual methods.---------Co-authored-by: Aaron Robinson <arobins@microsoft.com>