https://github.com/JuliaLang/julia

sort by:
Revision Author Date Message Commit Date
e9183b9 Add valgrind suppression file for codegen Running `test-precompile` under valgrind generates about 12,000 warnings, of which the vast majority come from LLVM/codegen. This adds a suppression file to make it easy to exclude these warnings. 28 February 2022, 11:48:25 UTC
fe1264a define round/trunc/ceil/floor to Bool (#25085) 26 February 2022, 06:08:19 UTC
a2e4226 return immediately from `ht_keyindex` if dictionary is empty (#44341) Avoids hashing the input key for empty dictionaries. Inspired by rust-lang/hashbrown#305. 25 February 2022, 18:06:42 UTC
2e2c16a Fix `@simd` for non 1 step CartesianPartition (#42736) 25 February 2022, 17:18:10 UTC
9af12d3 Add some additional information to `LinearAlgebra.versioninfo()` (#44220) 25 February 2022, 16:38:08 UTC
9b8253c irrational `sign()` (#37949) 25 February 2022, 14:51:03 UTC
76fc067 Make sure all the relocations are filled in for partially cloned target (#44262) We collect the relocations (i.e. the GOT slots that is used in the code) for each target in `tgt.relocs`. Needing a relocation, however, does not imply that the function is cloned for this target within the group (It does mean that at least one target in the group has it cloned). The previous version would miss the relocation in this case. This was triggerred with the following cloning situation caller: clone_1 callee: clone_1, clone_1.clone_3 Since caller.clone_1 may call either callee.clone_1 or callee.clone_1.clone_3 a relocation for callee will be used and is required to be initialized. In addition to target 1, target 2 (and in fact target 3) within group 1 will also use caller.clone_1. However, since callee isn't cloned for target 2 the previous version wouldn't have saved this slot in the relocation array. 25 February 2022, 14:48:24 UTC
c9cb015 add docs for creating a symbol from an enum instance (#44342) 25 February 2022, 14:47:23 UTC
c6b5fa2 Indicate defaults in comandline help (#44223) Co-authored-by: Gerhard Aigner <aigner@trium.de> Co-authored-by: Jameson Nash <vtjnash@gmail.com> 25 February 2022, 09:37:43 UTC
b6ffbeb Add devdocs on 32-bit docker builds (#44300) Co-authored-by: Mosè Giordano <giordano@users.noreply.github.com> 25 February 2022, 09:34:34 UTC
163c032 Distributed: Propagate package environment to local workers. (#43270) Local workers now inherit the package environment of the main process, i.e. the active project, LOAD_PATH, and DEPOT_PATH. This behavior can be overridden by passing the new `env` keyword argument, or by passing `--project` in the `exeflags` keyword argument. Fixes #28781, and closes #42089. 25 February 2022, 08:36:39 UTC
6b29ebd [macOS] Codesign binary-dist tarballs (#44305) Because we're starting to distribute macOS tarballs as well, let's codesign them by default, when possible. 24 February 2022, 22:52:14 UTC
f20d5de fix #43411, wrapped `NamedTuple` can be bitstype more often (#44311) 24 February 2022, 22:08:37 UTC
21e5a26 also set the version in `pkgorigins` (#44318) 24 February 2022, 21:35:41 UTC
8ae9dd5 Distributed: Update documentation for addprocs(...). (#44331) 24 February 2022, 19:13:15 UTC
6850940 [OpenBLAS_jll] Update to v0.3.20 (#44321) 24 February 2022, 18:36:07 UTC
df81bf9 Cache external CodeInstances (#43990) 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 of methods from Base or previously-loaded 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, as long as there is a backedge linking it back to a method owned by a module being precompiled. (The latter condition ensures it will actually be called by package methods, and not merely transiently generated for the purpose of, e.g., metaprogramming or variable initialization.) This makes precompilation more intuitive (now it saves all relevant inference results), and substantially reduces latency for inference-bound packages. Closes #42016 Fixes #35972 Issue #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. 24 February 2022, 07:30:09 UTC
fb85cb3 Merge pull request #44316 from pchintalapudi/pc/no-getpointerelement Remove uses of getPointerElementType 24 February 2022, 00:35:22 UTC
0201ac8 expose `Filesystem.touch` for `Filesytem.File` objects (#44307) 23 February 2022, 22:03:06 UTC
1b47efb Make sure `range(start; step, length)` uses TwicePrecision when possible, fixes #44292. (#44313) 23 February 2022, 20:07:30 UTC
262c6f1 Fix warnings about unused static function (#44255) 23 February 2022, 19:10:59 UTC
7b2d1e0 Remove uses of getPointerElementType 23 February 2022, 19:05:43 UTC
ed53276 Define `isempty(g::Generator)` and `Base.isdone(g::Generator)` (#44308) Co-authored-by: Fredrik Ekre <ekrefredrik@gmail.com> 23 February 2022, 18:57:11 UTC
4737a6e Merge pull request #44317 from imciner2/im/gcwarning gc: Cast to jl_value_t* to avoid compiler warning 23 February 2022, 18:56:47 UTC
0079041 gc: Cast to jl_value_t* to avoid compiler warning 23 February 2022, 15:27:25 UTC
629eb86 Fix M1 tail call issue when building (#44279) 23 February 2022, 12:38:45 UTC
333a3a3 fix `BLAS.spr!` docstring (#44303) 23 February 2022, 12:32:17 UTC
114e33b Fix typo in manual's description of `isdone` (#44306) Closes #44283 23 February 2022, 08:02:06 UTC
26b0b6e inference: remove `CachedMethodTable` (#44240) Since we couldn't confirm any performance benefit from `CachedMethodTable` in the current infrastructure (see the benchmark results in #44240), now I'd like to propose to eliminate that entirely and save a bit of space. 23 February 2022, 05:08:22 UTC
aa2421d Documentation: added example to the function hasfield. (From #41782) (#44274) Co-authored-by: Johnny Chen <johnnychen94@hotmail.com> (cherry picked from commit 9c0e5b0d186ea95a06d5b0bdc4bc19d1a17b444d) 23 February 2022, 03:36:20 UTC
0db596e Remove uses of PointerType::getElementType for opaque pointers (#44310) Co-authored-by: Jameson Nash <vtjnash@gmail.com> 23 February 2022, 03:12:06 UTC
dee1cd2 [contrib] Update `download_cmake.sh` to CMake 3.19.3 and support aarch64 (#44267) * [contrib] Update `download_cmake.sh` to CMake 3.19.3 and support Linux aarch64 * [contrib] Fix `download_cmake.sh` for macOS, it was broken already before This also works on aarch64-apple-darwin. 23 February 2022, 00:16:23 UTC
afd9926 Implement the conversion of AbstractUnitRanges to OrdinalRanges (#40038) Co-authored-by: Jameson Nash <vtjnash@gmail.com> 22 February 2022, 20:39:17 UTC
4e57966 Fix thread-safety violation in Allocations Profiler: Create a new per-thread backtrace buffer in ptls (#44116) * Fix thread-safety violation in Allocations Profiler: Re-use the shared `ptls->bt_data` buffer from the thread-local storage for the buffer, to ensure that each thread has a separate buffer. This buffer is shared with the exception throwing mechanism, but is safe to share since julia exception throwing never interleaves with allocations profiling. * Approach two: Create a separate per-thread allocations backtrace buffer. * Update src/gc-alloc-profiler.cpp Co-authored-by: Jameson Nash <vtjnash@gmail.com> * Update src/gc-alloc-profiler.cpp Co-authored-by: Jameson Nash <vtjnash@gmail.com> * fix type error (#44235) * Update src/gc-alloc-profiler.cpp Co-authored-by: Jameson Nash <vtjnash@gmail.com> Co-authored-by: Pete Vilter <7341+vilterp@users.noreply.github.com> 22 February 2022, 20:33:25 UTC
e492025 Distributed test suite: wrap another non-thread-safe test in `poll_while` (#44280) 22 February 2022, 19:19:29 UTC
8df488b Fix invalidations of various analysis results (#44284) 22 February 2022, 16:20:22 UTC
6fa255d Avoid pointer indirection for blas call (#44271) 22 February 2022, 15:31:40 UTC
cfd6119 🤖 Bump the Pkg stdlib from e31a3dc7 to 3aa15055 (#44297) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 22 February 2022, 05:36:30 UTC
01855a7 Mark stack as non-executable (#43481) The linker is unable to detect that executable stack is not required and so marks libjulia.so as requiring it Pass `-Wl,-z,noexecstack` to ensure that the stack is marked as not executable. This improves security and allows Julia to run on systems where SELinux has been configured to disallow executable stacks. AFAIK no change is needed on OSes other than Linux as they do not allow executable stacks by default. 22 February 2022, 03:35:19 UTC
76cf176 Doc build steps needed for analyzegc (#43901) 21 February 2022, 21:29:06 UTC
c5bc69c Fix bad precompile statements via an output lock (#44252) 21 February 2022, 15:37:54 UTC
ac922b0 Regenerate all the checksums (#44275) 21 February 2022, 15:04:07 UTC
d75eea1 Add tests for issue #28869. (#44291) for the issue (and a trivial typo fix). 21 February 2022, 15:03:01 UTC
0b48b91 Fix aliasing bug in copy!(x, x) for x::AbstractSet and x::AbstractDict, fixes #41268 (#44265) 21 February 2022, 09:47:52 UTC
0a294f9 doc: minor tweak on `startswith`/`endswith` docs (#44288) This change makes it more clear whether `startswith(prefix)` is equivalent to: - `s -> startswith(s, prefix)` or - `s -> startswith(prefix, s)` 21 February 2022, 09:44:26 UTC
1777553 inference: override return type inference by const-prop more carefully (#44282) A return type derived by const-prop' inference can be wider than that of non const-prop' inference in rare cases e.g. when there are cycles but cached result is still accurate. This commit checks if the const-prop'ed result is really more accurate than non-const result. fix https://github.com/Ferrite-FEM/Tensors.jl/issues/178 21 February 2022, 06:15:52 UTC
f879d20 Merge pull request #44276 from JuliaLang/vc/newpm3 Make another wave of passes NewPM compatible 20 February 2022, 17:01:56 UTC
f45b6ad [CPUID] Add ISA entries for A64FX and M1 (#44194) * [CPUID] Rework how current ISA is determined * [CPUID] Add ISA entry for A64FX * [CPUID] Add ISA entry for Apple Silicon M1 * [CPUID] Simplify collection of full set of features for architecture * [CPUID] Remove AES from A64FX ISA, not all chips appear to have it 20 February 2022, 16:17:43 UTC
6936433 Merge pull request #44270 from dnadlinger/debuginfo-fix-arm32 debuginfo: Fix build on 32-bit ARM 20 February 2022, 15:13:30 UTC
b0a3130 [LLVM][PM] Make LowerPTLS NewPM compatible 20 February 2022, 14:55:30 UTC
7ad142b [LLVM][PM] Make MultiVersioning NewPM compatible 20 February 2022, 14:55:30 UTC
a292df3 [LLVM][PM] Make GCInvariantVerifier NewPM compatible 20 February 2022, 14:55:30 UTC
e69fe9b [LLVM][PM] Make LowerExcHandlers NewPM compatible 20 February 2022, 14:55:30 UTC
e723d37 Profile: Use grace period to avoid trailing signals from timer (#44268) 20 February 2022, 14:40:11 UTC
6409a8a Add more negative stride support to BLAS Level 1/2 functions (#42957) 20 February 2022, 10:20:01 UTC
94838dc CI: enable assertions (both Julia assertions and LLVM assertions) for the `llvmpasses` job (#44278) 20 February 2022, 09:31:41 UTC
e454858 In the `sysimage.mk` Makefile, set the `JULIA_NUM_THREADS=1` environment variable when running the `generate_precompile.jl` script (#44281) 20 February 2022, 09:20:18 UTC
7615063 Make more passes NewPM compatible (#44277) * Make PropagateAddrspaces and RemoveAddrspaces NewPM compatible * Fix LateGCLower analysis invalidation * Fix missing return 20 February 2022, 07:25:23 UTC
2714b92 Profile.Allocs: jl_raw_alloc_t.task is untyped pointer (#44269) 20 February 2022, 04:52:38 UTC
2816a6f effects: make `:terminates_globally` functional on recursive functions (#44210) As with loop, it's hard to prove termination of recursive call automatically. But with this commit we can manually specify termination at least. ```julia Base.@assume_effects :terminates_globally function recur_termination1(x) x == 1 && return 1 1 < x < 20 || throw("bad") return x * recur_termination1(x-1) end @test fully_eliminated() do recur_termination1(12) end Base.@assume_effects :terminates_globally function recur_termination2(x) x == 1 && return 1 1 < x < 20 || throw("bad") return _recur_termination2(x) end _recur_termination2(x) = x * recur_termination2(x-1) @test fully_eliminated() do recur_termination2(12) end ``` 20 February 2022, 04:16:59 UTC
ad52223 Make AllocOpt NewPM compatible (#44273) 20 February 2022, 02:23:28 UTC
d849ed7 fix EscapeAnalysis.jl documentation (#44257) 20 February 2022, 02:05:33 UTC
c9ac2ea debuginfo: Fix build on 32-bit ARM This slipped through in 955d4271, as we aren't building for 32 bit ARM during CI right now. GitHub: Fixes #44254. 20 February 2022, 00:15:44 UTC
f3e3554 Merge pull request #44245 from JuliaLang/vc/llvm_14 Fix build against LLVM 14 19 February 2022, 23:33:10 UTC
627016a Update LBT to 5.0.1 for source build (#44258) 19 February 2022, 22:13:58 UTC
623ceb7 Ensure that `open(::Function, ::Cmd)` waits for termination (#44078) On Windows, we observed occasional issues where an error within the function callback to the `open(::Function, ::Cmd)` method would cause problems due to assuming that the opened process had finished by the time the `open()` call was finished. In most cases this was true, however on Windows, it was found that we need to explicitly `wait()` upon the process object to ensure that all file handles held by the subprocess were properly closed by the time `open()` is finished. Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 19 February 2022, 17:47:41 UTC
928f63c Fix dot(::Adjoint, ::Adjoint) for numbers that don't commute under multiplication (#44219) Co-authored-by: Fredrik Ekre <ekrefredrik@gmail.com> 19 February 2022, 17:46:55 UTC
4061e8f fix #44239, regression in keyword args in getindex (#44246) 19 February 2022, 17:45:05 UTC
749a658 Add docstring to `String` (#43943) The type `String` itself did not have a docstring, instead the type is documented through two of its constructors. Add docstring to `String`, and remove redundant information from the constructor docstrings. In particular, mention that `String`s, while they are interpreted as being UTF8 encoded, do not assume strings are valid UTF8, and may be arbitrary byte sequences. 19 February 2022, 15:43:33 UTC
5bd0545 Fix get/set_fpcr_aarch64 (#44256) On Aarch64, the `fpcr` register is 64bit wide, although the top 32bit are currently unused and reserved for future usage. Nevertheless, we should safe and restore the full 64 bit, not just 32 bit. This also silences a compiler warning about this. Reference: <https://developer.arm.com/documentation/ddi0595/2021-06/AArch64-Registers/FPCR--Floating-point-Control-Register> 19 February 2022, 15:41:17 UTC
f852c88 Fix missing `jl_effective_threads` declaration (#44251) 19 February 2022, 15:31:44 UTC
700c69b fix deprecated AlignedLoad 19 February 2022, 15:29:13 UTC
074d761 fix some missing includes 19 February 2022, 15:29:13 UTC
ed9851b AttrBuilder now takes LLVMContext 19 February 2022, 15:29:12 UTC
f544321 Extend doc-string for `@deprecate` (#42892) 19 February 2022, 08:49:10 UTC
3453775 Use uv_thread_getaffinity when --threads=auto (#42340) Co-authored-by: Jameson Nash <vtjnash@gmail.com> 19 February 2022, 03:24:22 UTC
482b04c Elaborate what egal means (#44248) Several people were confused by what `egal` means here. Put `===` in parentheses so people know what is meant. 19 February 2022, 02:53:17 UTC
f5d9b86 fix bug in `addenv` for environment entries with embedded `=` (#44212) Co-authored-by: Jameson Nash <vtjnash@gmail.com> Co-authored-by: Fredrik Ekre <ekrefredrik@gmail.com> 18 February 2022, 21:32:57 UTC
15dcd5b Fix build warning in gc-alloc-profiler.cpp: cast to (size_t) (#44180) `std::vector::size()` returns a `size_t`, so we need to cast the int `jl_n_threads` to a `size_t` for the comparison. 18 February 2022, 21:25:34 UTC
923fe92 Fix CITATION.cff (#44236) 18 February 2022, 20:45:07 UTC
2fe57fd Merge pull request #42463 from JuliaLang/vc/newpm2 [LLVM] Convert more passes to NewPM 18 February 2022, 19:58:13 UTC
6c51d9e fix nothrow check for `get_binding_type` (#44229) This got missed in #43671. 18 February 2022, 18:04:07 UTC
39e849a set type of statement when processing `GlobalRef`s (#44200) Co-authored-by: Shuhei Kadowaki <40514306+aviatesk@users.noreply.github.com> Co-authored-by: Jameson Nash <vtjnash@gmail.com> 18 February 2022, 18:03:35 UTC
daa0849 `AbstractInterpreter`: make it easier to overload pure/concrete-eval (#44224) fix #44174. 18 February 2022, 14:05:27 UTC
b8e5d7e Reduce number of `getindex(::Type, ...)` methods (#44127) Previously, there were special cases for `T[]`, `T[a]`, `T[a,b]` and `T[a,b,c]`. Together with the general case for more elements, that meant five methods to consider in cases like `T[x...]` where the length of `x` was not known at compile time. That was beyond the inference limit and such a call would be inferred as `Any`. So this change gets rid of all the special cases. The loop-based general case worked well if all arguments were of the same type, but otherwise suffered from type-instability inside the loop. Without the special cases for low element count this would be hit more often, so for the non-homogeneous case, the loop is replaced with a call to `afoldl` that basically unrolls the loop for up to 32 elements. 18 February 2022, 08:47:33 UTC
ea3d788 [LLVM][PM] Make FinalLowerGC NewPM compatible 18 February 2022, 04:09:10 UTC
7600bfd [LLVM][PM] Make JuliaLICM NewPM compatible 18 February 2022, 03:22:21 UTC
8db9654 [LLVM][PM] Make LateLowerGC NewPM compatible 18 February 2022, 03:22:21 UTC
1ad2396 make `cat(As..., dims=Val((1,2,...))` work (#44211) 17 February 2022, 21:31:22 UTC
4abb47f Add AbstractString to strings documentation (#43935) 17 February 2022, 21:13:45 UTC
17379e0 Fixes to compile=all (#44213) - adds a null check to `jl_get_unspecialized` - prevents an infinite loop in `jl_compile_all_defs` 17 February 2022, 20:00:18 UTC
68bae54 Merge pull request #44214 from JuliaLang/vc/new_pm_plugin [NewPM] add pass plugin 17 February 2022, 17:57:28 UTC
072c041 Profile: Minor fixes. Signal handling fix. (#44199) 17 February 2022, 17:52:29 UTC
105c77a Allow more time for profile print when Sockets and Threads watchdogs request info (#44218) 17 February 2022, 17:46:29 UTC
7b39515 Set VERSION to 1.9.0-DEV, move 1.8 NEWS to HISTORY, update SPDX (#44203) 17 February 2022, 07:33:22 UTC
7a1c20e Eagerly do boundscheck when indexing CartesianIndices with CartesianIndices (#42235) 17 February 2022, 03:58:34 UTC
2aaa25a 🤖 Bump the Pkg stdlib from b4da4946 to e31a3dc7 (#44208) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> 17 February 2022, 03:51:39 UTC
4930fc9 add reverse iteration for Cmd (#43498) 17 February 2022, 01:06:53 UTC
3887e01 [NewPM] add pass plugin 16 February 2022, 21:21:57 UTC
7889b2a edit NEWS for 1.8 (#44209) 16 February 2022, 21:17:44 UTC
back to top