Skip to content

Conversation

@topolarity
Copy link
Member

@topolarity topolarity commented Nov 21, 2025

This adds a new test target: make test-JL-stdlibs, which precompiles a supported set of standard libraries using JuliaLowering.

To accomplish this, it also adds a basic incremental sysimage build target (julia-sysimg-JL-release / julia-sysimg-JL-debug) that modifies the base sysimage to include JuliaLowering.

Currently 34 / 51 pkgimage-based stdlibs can be compiled with JuliaLowering:

  • Passing: ArgTools, Future, LibCURL_jll, Logging, OpenSSL_jl, Tar, dSFMT_jll, Base64, GMP_jll, LibGit2_jll, MPFR_jll, PCRE2_jll, UUIDs, libLLVM_jll, CRC32c, LLD_jll, LibSSH2_jll, MozillaCACerts_jll, Printf, Unicode, Mmap, nghttp2_jll, Distributed, LLVMLibUnwind_jll, LibUV_jll, NetworkOptions, Serialization, Zlib_jll, p7zip_jll, Downloads, LibCURL, LibUnwind_jll, OpenLibm_jll, SuiteSparse_jll, Zstd_jll
  • Failing: Statistics, StyledStrings, SparseArrays, Profile, JuliaSyntaxHighlighting, DelimitedFiles, Markdown, Dates, LibGit2, Downloads, InteractiveUtils, Test, SharedArrays, REPL, TOML, Pkg, LazyArtifacts

TODO:

  • move the precompilepkgs invocation / stdlib filtering to a normal Julia test file if possible
  • add this to the default / all test targets
  • fix-up the source file dependencies (esp. for JuliaLowering)

@topolarity topolarity requested a review from mlechu November 21, 2025 20:15
This performs an "incremental" sysimage build to add JuliaLowering to
Base after-the-fact.
This has a significant blacklist for now, but eventually we should be
able to build all of our stdlibs with JuliaLowering (and even include it
by default in the sysimage)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant