Track method roots by precompile module#43793
Conversation
For roots of a method added during incremental compilation, track the toplevel module build_id. This will ultimately allow such roots to be "relocatable" in compressed IR, pending future changes in compression.
|
@nanosoldier |
|
Your package evaluation job has completed - possible new issues were detected. A full report can be found here. |
|
@nanosoldier |
|
Your package evaluation job has completed - possible new issues were detected. A full report can be found here. |
|
@nanosoldier |
|
Locally this passes the remaining PkgEval issues, so I think this is good to go. I have the next PR queued up behind this, so I'll leave this open for a week or so and then merge. As a preview, this + the next PR (which implements the changes to IR (de)compression) replaces #32705, except the increase in system image size is about 0.4% rather than 6%. So I think the concerns that doomed that approach don't apply. |
|
Your package evaluation job has completed - no new issues were detected. A full report can be found here. |
For roots of a method added during incremental compilation, track the toplevel module build_id. This will ultimately allow such roots to be "relocatable" in compressed IR, pending future changes in compression.
PR JuliaLang#43793 passed the buildkite test but the logs for JuliaLang#43881 show an address sanitzer failure. Removing jl_precompile_toplevel_module from jl_exported_data.inc fixes the error. For good measure, set it to NULL at the point of definition, even though it gets nulled during initialization.
For roots of a method added during incremental compilation, track the toplevel module build_id. This will ultimately allow such roots to be "relocatable" in compressed IR, pending future changes in compression.
PR JuliaLang#43793 passed the buildkite test but the logs for JuliaLang#43881 show an address sanitzer failure. Removing jl_precompile_toplevel_module from jl_exported_data.inc fixes the error. For good measure, set it to NULL at the point of definition, even though it gets nulled during initialization.
For roots of a method added during incremental compilation, track the
toplevel module
build_id. This will ultimately allow such roots to be"relocatable" in compressed IR, pending future changes in compression.
Part of #42016