-
-
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
Backports for 1.9.0-rc1 #48733
Backports for 1.9.0-rc1 #48733
Conversation
Some users tried to pass a `dlopen()` handle into `lbt_forward()` which sadly works just fine, despite `ccall()` declaring its first argument as being a `Cstring`. I guess it's trivial to convert a `Ptr{Cvoid}` into a `Cstring`, so this just goes through. To protect against this, restrict `path` to be an `AbstractString`. (cherry picked from commit 8492031)
(cherry picked from commit 43c6f75)
(cherry picked from commit ecfaef3)
) (cherry picked from commit aaab409)
(cherry picked from commit 9c4a40c)
7a8b438
to
aa1d668
Compare
I found some lattice issues when implementing `MustAlias` under the new extendable lattice system in another PR. (cherry picked from commit ee0f3fc)
aa1d668
to
6ded08d
Compare
We used to have this hack before #48246, but I removed it because I had hoped we don't need. Unfortunately, we weren't able to infer consistency of ``` @inbounds (1,2)[1] ``` With this hack, constprop is able to independently prove inbounded-ness, overriding the usual consistency taintaing that happens for inbounds. (cherry picked from commit 113c2f3)
(cherry picked from commit 2a0b9dd)
(cherry picked from commit 6bd658e)
(cherry picked from commit 4a75129)
Many of these test were hiding output or using semi-deprecated functions or failing to cleanup output or setting the wrong variables. (cherry picked from commit b48104d)
* effects: taint `:nothrow` effect on unknown `:static_parameter` (conservatively) With this commit, we taint `:nothrow` effect property correctly on access to unknown `:static_parameter`, e.g.: ```julia unknown_sparam_throw(::Union{Nothing, Type{T}}) where T = (T; nothing) @test Core.Compiler.is_nothrow(Base.infer_effects(unknown_sparam_throw, ((Type{Int},)))) @test !Core.Compiler.is_nothrow(Base.infer_effects(unknown_sparam_throw, ((Nothing,)))) ``` This commit implements a very conservative analysis, and thus there is a room for improvement still, e.g.: ```julia unknown_sparam_nothrow(x::Ref{T}) where {T} = (T; nothing) @test_broken Core.Compiler.is_nothrow(Base.infer_effects(unknown_sparam_nothrow, (Ref,))) ``` * inference: improve `:nothrow` modeling for `:static_parameter` (#46820) * Fix test with free type params * Test: Ignore ::Type{T} in detect_unbounded These are only technically unbounded because of the existence of ill-formed types. However, this function is supposed to be an API sanity check and ordinary users should never have ill-formed types, so for the purpose we want here, allow unboundedness in Type{T}. --------- Co-authored-by: Keno Fischer <keno@juliacomputing.com> Co-authored-by: Elliot Saba <staticfloat@gmail.com> (cherry picked from commit b5d17ea)
(cherry picked from commit c0d2c57)
* Run dsymutil on pkgimgs for apple platforms + LLD bump to get dsymutil from the jll (cherry picked from commit d8c2250)
(cherry picked from commit 56667bb)
* [OpenBLAS_jll] Upgrade to new build optimised for PowerPC This only difference compared to previous build is that this one enables use of dynamic architecture detection also for the PowerPC architecture. --------- Co-authored-by: Valentin Churavy <v.churavy@gmail.com> (cherry picked from commit aacfcf0)
On 64-bit, we have enough space to encode (1) the tag, (2) the `depmods` index, and (3) the offset all in a single 64-bit pointer field. This means we don't need the external `link_id` arrays, which reduces the size of many pkgimages by ~5%. On 32-bit, we don't have enough bits to implement this strategy. However, most linkages seem to be against the sysimage, and so by giving that a separate tag we can achieve similar compression because the `link_id` lists will be much shorter. Co-authored-by: Tim Holy <tim.holy@gmail.com> (cherry picked from commit 8e3e970)
(cherry picked from commit 0975906)
f805a02
to
50b8c13
Compare
We need to make sure that libjulia-internal is loaded and placed first in the DynamicLibrary search order so that calls to runtime intrinsics are resolved to the correct library when multiple libjulia-*'s have been loaded (e.g. when we `ccall` into a PackageCompiler.jl-created shared library). (cherry picked from commit fd45943)
* Update MbedTLS to 2.28.2 * Update deps/mbedtls.mk * Update mbedtls checksum (cherry picked from commit 127fb73)
* Always use `-Wl,--warn-unresolved-symbols` in MSAN builds * Use `-Wl,--warn-unresolved-symbols` only on Linux and FreeBSD (cherry picked from commit a07f512)
(cherry picked from commit 48b4caa)
Co-authored-by: Jameson Nash <vtjnash@gmail.com> Co-authored-by: Dilum Aluthge <dilum@aluthge.com> (cherry picked from commit 6412a56)
* enable using external code in pkgimages This was unintentionally disabled (and incomplete) in the original PR for pkgimages. Co-authored-by: Valentin Churavy <v.churavy@gmail.com> (cherry picked from commit c136b7e)
(cherry picked from commit 7e57dc7)
Memoizing this can save a lot of repeated effort for queries such as `@which eltype(String)`. Otherwise we repeatedly try to check if `eltype(::Type)` is a good way to cache that result, even though it never gets better the more we check it. (cherry picked from commit bdcd5e2)
d5651bc
to
b07fb40
Compare
There is actually almost no cases where `jl_alloc_svec_uninit` is safe, since if was safe, you would likely would prefer to use the `jl_svec` constructor instead. (cherry picked from commit 0608824)
188m for this testset is exceeding our timeout on master this takes |
(cherry picked from commit 3850e88)
This ensures that the value gets set after all possible compilation has occurred. (cherry picked from commit 0ec704e)
(cherry picked from commit 39e34ee)
* Fix sorting missing values with offset indices * Add tests (cherry picked from commit 7eb9615)
* Fix heapsize hint and use a line so that large machines utilize more of their ram (cherry picked from commit 51db8af)
@nanosoldier |
Your package evaluation job has completed - possible new issues were detected. |
Backported PRs:
path
to be anAbstractString
inlbt_forward()
#48567GotoIfNot
can throw #48583insert_extension_triggers
idempotent #48586:nothrow
effect on unknown:static_parameter
#46791nonoverlayed
when bailing out inference #48838:inaccessiblememonly
#48854PATCHELF_SET_RPATH_ARG
#48788libjulia-internal
to ORCJIT symbol resolution #48712-Wl,--warn-unresolved-symbols
in MSAN builds #48835:inaccessiblememonly
#48854Non-merged PRs with backport label:
enq_work
behavior when single-threaded #48702--heap-size-hint
arg handling #48050