forked from JuliaLang/julia
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
commit 88a1cbf Author: Tim Holy <tim.holy@gmail.com> Date: Sat Feb 19 03:14:45 2022 -0600 Copy over CodeInstances too commit 48c91b3 Author: Tim Holy <tim.holy@gmail.com> Date: Thu Feb 17 14:22:02 2022 -0600 Exclude MethodInstances that don't link to worklist module This should prevent us from serializing too much code. commit 3241c4c Author: Tim Holy <tim.holy@gmail.com> Date: Thu Feb 17 12:23:12 2022 -0600 Add invalidation test commit ead1fd9 Author: Tim Holy <tim.holy@gmail.com> Date: Thu Feb 17 10:23:52 2022 -0600 Fix a failure to invalidate commit b44a8fc Author: Tim Holy <tim.holy@gmail.com> Date: Thu Jan 27 02:54:47 2022 -0600 Serialize external CodeInstances Prior to this PR, Julia's precompiled `*.ji` files saved just two categories of code: unspecialized method definitions and type-specialized code for the methods defined by the package. Any novel specializations needed from other code (Base, other packages) were not saved, and therefore effectively thrown away. This PR caches all the code---internal or external---called during package definition that hadn't been previously inferred. This makes precompilation more intuitive (now it saves all relevant inference results), and substantially reduces latency for inference-bound packages. Closes JuliaLang#42016 Fixes JuliaLang#35972 Issue JuliaLang#35972 arose because codegen got started without re-inferring some discarded CodeInstances. This forced the compiler to insert a `jl_invoke`. This PR fixes the issue because needed CodeInstances are no longer discarded by precompilation.
- Loading branch information
Showing
13 changed files
with
715 additions
and
96 deletions.
There are no files selected for viewing
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
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
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
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
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
Oops, something went wrong.