-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
precompile: fix the slowness #18191
Merged
Merged
precompile: fix the slowness #18191
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
kshyatt
added
performance
Must go faster
compiler:precompilation
Precompilation of modules
labels
Aug 22, 2016
@@ -422,6 +422,14 @@ A few other points to be aware of: | |||
4. WeakRef objects and finalizers are not currently handled properly by the serializer | |||
(this will be fixed in an upcoming release). | |||
|
|||
5. It is usually be to avoid capturing references to instances of internal metadata objects such as |
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.
best?
this works to avoid having `Expr(:invoke)` creating unintentional copies of LambdaInfo objects when they show up in the system image fix #18184
vtjnash
force-pushed
the
jn/precompile-fix-fast
branch
from
August 23, 2016 17:34
52d292a
to
a4bf6b8
Compare
assert(*bp != (uintptr_t)HT_NOTFOUND); | ||
*bp |= 1; assert(((uintptr_t)HT_NOTFOUND)|1); | ||
} | ||
// this'll need need a uid and unique-ing later |
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.
this'll need need a
…_list many types are easy to compute during deserialization, and don't need the full complexity of the flagref list to handle them some of these are easy to detect ahead-of-time, saving a small amount of deserialization effort
Fixes a crash while loading ASTInterpreter
vtjnash
force-pushed
the
jn/precompile-fix-fast
branch
from
August 23, 2016 19:36
a4bf6b8
to
2a8e892
Compare
Will this be part of the 0.5 release? |
Look at the labels :) |
This was referenced Sep 8, 2016
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
fix the bug in handling the LambdaInfo
Expr(:invoke)
, and optimize some other common cases, such that precompile is much faster for some packages (such as any that uses Compat).