Skip to content
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.11.0-rc1 #54611

Merged
merged 71 commits into from
Jun 25, 2024
Merged
Changes from 1 commit
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
84bde3f
typeintersect: fix incorrect innervar handling under circular env (#5…
N5N3 May 28, 2024
862f863
[backport] v1.11: mark Lockable as `public` and update NEWS.md for Lo…
ericphanson May 29, 2024
0df6f80
[LBT] Upgrade to v5.9.0 (#54361)
amontoison May 5, 2024
b1a30d2
CLI: Use `GetModuleHandleExW` to locate libjulia.dll (#54617)
topolarity May 29, 2024
9e2cb49
Allow libquadmath to also fail as it is not available on all systems …
ViralBShah May 30, 2024
166a82c
ensure we set the right value to gc_first_tid (#54645)
d-netto May 31, 2024
7ed2a6d
Construct LazyString in error paths for tridiag (#54648)
jishnub Jun 4, 2024
2cea685
inference: fix too conservative effects for recursive cycles (#54323)
aviatesk Jun 5, 2024
c0f71e7
inference: follow up #54323, override ssaflags with new cycle effects…
aviatesk Jun 7, 2024
92f5aa5
Switch to Pkg mode prompt immediately and load Pkg in the background …
IanButterworth Jun 4, 2024
10c2e64
Improve error message in inplace transpose (#54669)
jishnub Jun 4, 2024
9353607
Add boundscheck in bindingkey_eq to avoid OOB access due to data race…
gbaraldi Jun 5, 2024
60cc3ab
make: Fix `sed` command for LLVM libraries with no symbol versioning …
topolarity Jun 5, 2024
77f4bc6
LazyString in reinterpretarray error messages (#54704)
jishnub Jun 7, 2024
05f40c3
make `AbstractPipe` public (#54191)
LilithHafner May 23, 2024
207ada2
Aggressive constprop in trevc! to stabilize triangular eigvec (#54635)
jishnub May 31, 2024
26053dc
make elsize public (#54554)
LilithHafner May 31, 2024
baf763d
fix missing uuid check on extension when finding the location of an e…
KristofferC Jun 4, 2024
ddd5c28
Rename at-scriptdir project argument to at-script and search upwards …
oxinabox May 28, 2024
4bc3d07
Fixes for bitcast bugs with LLVM 17 / opaque pointers (#54548)
maleadt May 22, 2024
6b4b5ef
Add `jl_getaffinity` and `jl_setaffinity` (#53402)
carstenbauer May 25, 2024
90acf2a
Set storage class of julia globals to dllimport on windows to avoid a…
gbaraldi May 29, 2024
45b38b3
more precise aliasing checks for SubArray (#54624)
mbauman Jun 5, 2024
5b3a5e4
🤖 [master] Bump the Distributed stdlib from 6a07d98 to 6c7cdb5 (#54679)
DilumAluthgeBot Jun 5, 2024
bab6633
Fix tbaa annotation on union selector bytes inside of structs (#54604)
gbaraldi Jun 5, 2024
e8662da
Fix assertion/crash when optimizing function with dead basic block (#…
gbaraldi Jun 6, 2024
0653044
Unalias source from dest in copytrito (#54474)
jishnub May 15, 2024
d07a863
Accomodate for rectangular matrices in `copytrito!` (#54587)
dkarrasch May 29, 2024
b69fc57
Backport "Avoid concatenating LazyString in setindex! for triangular …
jishnub Jun 10, 2024
c057940
Don't test with opaque pointers
gbaraldi Jun 10, 2024
4d53a38
Fix trampoline assembly for build on clang 18 on apple silicon (#54634)
gbaraldi May 30, 2024
fe51261
fix prepend StackOverflow issue (#54718)
vtjnash Jun 7, 2024
115d090
Reimplement dummy pkg prompt as standard prompt (#54674)
IanButterworth Jun 9, 2024
b7aed98
LazyString in interpolated error messages involving types (#54737)
jishnub Jun 10, 2024
90c432f
Document GenericMemory and AtomicMemory (#54642)
oscardssmith Jun 10, 2024
cfe9c49
make: use `readelf` for LLVM symbol version detection (#54713)
topolarity Jun 10, 2024
e6dd695
REPL: improve prompt! async function handler (#54760)
IanButterworth Jun 11, 2024
2dec97f
fix double-counting and non-deterministic results in `summarysize` (#…
JeffBezanson Jun 11, 2024
a6d098e
REPL: Fully populate the dummy Pkg prompt (#54759)
IanButterworth Jun 11, 2024
193fee8
lowering: Recognize argument destructuring inside macro hygiene (#54702)
Keno Jun 8, 2024
9874d82
Don't let setglobal! implicitly create bindings (#54678)
Keno Jun 8, 2024
63b66b8
Fix uuidkey of exts in fast path of `require_stdlib` (#54730)
IanButterworth Jun 9, 2024
95a3792
Handle no-postdominator case in finalizer pass (#54765)
topolarity Jun 13, 2024
592afcb
Don't expose guard pages to malloc_stack API consumers (#54591)
fingolfin Jun 9, 2024
5bccb82
TOML: Improve type-stability of BigInt/UInt support (#53955)
topolarity Apr 5, 2024
0211c83
[TOML] remove Dates hack, replace with explicit usage (#54755)
vtjnash Jun 13, 2024
d3e7b45
add try/catch around scheduler to reset sleep state (#54721)
vtjnash Jun 8, 2024
f41f896
bump Pkg to latest 1.11
Jun 13, 2024
8bdf1fa
effects: add new `@consistent_overlay` macro (#54322)
aviatesk Jun 18, 2024
6aba3b2
Revert "Test and fix non-int-length bug in `view(::Memory, ::Union{Un…
Jun 18, 2024
fc09c27
Revert "Make reshape and view on Memory produce Arrays and delete wra…
Jun 18, 2024
410cac7
REPL: spawn to avoid blocking typing, fix pkg repl transition sequenc…
IanButterworth Jun 18, 2024
0c06ae1
unexport wrap
Jun 19, 2024
1d4cf2c
REPL.prompt!: don't use Char peek (#54865)
IanButterworth Jun 21, 2024
31dac53
add sticky task warning to `@task` and `schedule` (#54815)
IanButterworth Jun 18, 2024
b04de54
REPL: fix projname when project_file is missing (#54795)
IanButterworth Jun 14, 2024
202151d
make recommendation clearer on manifest version mismatch (#54779)
IanButterworth Jun 13, 2024
ffb88e8
fix REPL prompt on 1.10
KristofferC Jun 22, 2024
dff9905
bump Pkg to latest v1.11
KristofferC Jun 22, 2024
06fdfd7
add missing compat entry to edit (#54769)
palday Jun 12, 2024
b12f4e1
[LinearAlgebra] Improve resilience to unknown libblastrampoline flags…
staticfloat Jun 13, 2024
639f62e
Add missing word in manifest warning (#54802)
christiangnrd Jun 14, 2024
83ff230
Artifacts: Change Dict{AbstractPlatform} to Dict{Platform} to reduce …
mkitti Jun 19, 2024
46d0705
fix var name in `reseteof(s::BufferStream)` (#54859)
IanButterworth Jun 21, 2024
82d961b
`nextind`, `prevind` doc strings: correct the Markdown (#54876)
nsajko Jun 22, 2024
cf4f1ba
serialization: fix relocatability bug (#54738)
vtjnash Jun 22, 2024
782386f
Revert "[LBT] Upgrade to v5.9.0 (#54361)"
KristofferC Jun 23, 2024
a88c638
Do not add type tag size to the `alloc_typed` lowering for GC allocat…
gbaraldi Jun 18, 2024
9cf8b19
Add openlibm to sysimg link line on windows (#53672)
Keno Jun 18, 2024
0db324c
mark failing double counting test as broken on i686-linux (#54896)
IanButterworth Jun 23, 2024
c644312
Fix calling LLVM_SIZE on windows (#53902)
Zentrik Apr 1, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix tbaa annotation on union selector bytes inside of structs (#54604)
We currently cause a alias analysis contradiction by saying that the
unionselbytes are on the stack, even if they are on a struct. LLVM is
then able to figure out that we giving it a impossible alias situation
(the object doesn't alias itself) and triggers UB.

https://godbolt.org/z/ssEKMzsPf

We may want to do a benchmarks run on this to see if anything too
critical hasn't regressed.

Fixes #54599

---------

Co-authored-by: Cody Tapscott <84105208+topolarity@users.noreply.github.com>
(cherry picked from commit 30542e0)
  • Loading branch information
gbaraldi authored and KristofferC committed Jun 7, 2024
commit bab6633bae650173cc5cdf55cf00c4fe8ceb7bf3
2 changes: 1 addition & 1 deletion src/cgutils.cpp
Original file line number Diff line number Diff line change
@@ -2740,7 +2740,7 @@ static jl_cgval_t emit_getfield_knownidx(jl_codectx_t &ctx, const jl_cgval_t &st
else {
ptindex = emit_struct_gep(ctx, cast<StructType>(lt), staddr, byte_offset + fsz1);
}
auto val = emit_unionload(ctx, addr, ptindex, jfty, fsz, al, tbaa, !jl_field_isconst(jt, idx), union_max, ctx.tbaa().tbaa_unionselbyte);
auto val = emit_unionload(ctx, addr, ptindex, jfty, fsz, al, tbaa, !jl_field_isconst(jt, idx), union_max, strct.tbaa);
if (val.V && val.V != addr) {
setNameWithField(ctx.emission_context, val.V, get_objname, jt, idx, Twine());
}
9 changes: 9 additions & 0 deletions test/compiler/codegen.jl
Original file line number Diff line number Diff line change
@@ -887,3 +887,12 @@ end
ex54166 = Union{Missing, Int64}[missing -2; missing -2];
dims54166 = (1,2)
@test (minimum(ex54166; dims=dims54166)[1] === missing)

function foo54599()
pkgid = Base.identify_package("Test")
println(devnull,pkgid)
println(devnull, pkgid.uuid)
pkgid.uuid
end

@test foo54599() !== nothing