0eaf35a | Jameson Nash | 13 December 2021, 17:00:32 UTC | scheduler: improve libuv wakeup event ordering Ensures better that we support nesting of threaded regions and access to this variable from any thread. Previously, it appears that we might toggle this variable on another thread (via thread migration), but would then not successfully wake up the thread 0 and cause it to resume sleeping on the event loop. | 26 January 2022, 18:01:51 UTC |
6df6105 | Jameson Nash | 13 December 2021, 16:10:22 UTC | scheduler: use explicit memory fences These were previously implied (on TSO platforms, such as x86) by the atomic_store to sleeping and the sleep_locks acquire before the wake_check loop, but this makes it more explicit. We might want to consider in the future if it would be better (faster) to acquire each possible lock on the sleeping path instead, so that we do each operation with seq_cst, instead of using a fence to only order the operations we care about directly. | 26 January 2022, 18:01:51 UTC |
9c7cfa9 | Jameson Nash | 13 December 2021, 17:23:31 UTC | handle exit signal failure | 26 January 2022, 18:01:14 UTC |
7b636ff | Jameson Nash | 10 December 2021, 20:33:05 UTC | svec: optimize allocations in debug The svec set method needs to do a little bit more work (for asserts and write barriers), which is not necessary if we know it was just allocated. | 26 January 2022, 18:01:14 UTC |
2010d95 | Steven G. Johnson | 26 January 2022, 17:41:17 UTC | docs: add FAQ on soft-scope (#43681) Co-authored-by: Ian Butterworth <i.r.butterworth@gmail.com> | 26 January 2022, 17:41:17 UTC |
bc8e1f2 | Dilum Aluthge | 26 January 2022, 17:40:26 UTC | In `Base.runtests`, after tests fail, load `InteractiveUtils` from `@stdlib` (#43804) In `Base.runtests`, if the tests fail, before loading `InteractiveUtils`, set the `LOAD_PATH` to only include `@stdlib`. In theory, it's possible that someone has a setup where their load path has a package named `InteractiveUtils`. So, to increase the probability that we are actually loading the correct `InteractiveUtils` stdlib, let's set `Base.LOAD_PATH` to only include `@stdlib`. After we load `InteractiveUtils`, we restore the original contents of `Base.LOAD_PATH`. | 26 January 2022, 17:40:26 UTC |
8bdb045 | Jameson Nash | 26 January 2022, 17:37:55 UTC | Merge pull request #43865 from JuliaLang/jn/replcompletemethods [REPLCompletions] improved handling of completions | 26 January 2022, 17:37:55 UTC |
051ab3b | Tim Holy | 26 January 2022, 14:48:12 UTC | Manually split `string(a::Union{Char, String, SubString{String}, Symbol}...)` (#43939) * Manually split `string(a::Union{Char, String, SubString{String}, Symbol}...)` 4 is one too many for automatic Union-splitting. Poor inference in this method accounts for more than 1000 invalidations. | 26 January 2022, 14:48:12 UTC |
f1e7f52 | Daniel Karrasch | 26 January 2022, 08:43:08 UTC | Add `rdiv!` for `Bidiagonal` + small improvements (#43779) Co-authored-by: Steven G. Johnson <stevenj@alum.mit.edu> | 26 January 2022, 08:43:08 UTC |
3f0ae6e | Lilith Orion Hafner | 26 January 2022, 04:21:44 UTC | Fix fpsort! for non Int indices (#43934) * Extend allowsmissing and ismissing to Integer * Test #43925 | 26 January 2022, 04:21:44 UTC |
15df9c0 | Jeff Bezanson | 26 January 2022, 04:21:20 UTC | fix deadlock between `require_lock` and package callbacks (#43936) | 26 January 2022, 04:21:20 UTC |
6c1eb93 | Keno Fischer | 26 January 2022, 03:58:53 UTC | pow: Make n == 0 special case obvious to constprop (#43920) Should have been part of #43907, but I forgot. | 26 January 2022, 03:58:53 UTC |
b34cb17 | Keno Fischer | 26 January 2022, 03:57:28 UTC | adce_pass: Drop phinode edges that can be proved unused (#43922) * optimizer: lift more comparisons This commit implements more comparison liftings. Especially, this change enables the compiler to lift `isa`/`isdefined` checks (i.e. replace a comparison call with ϕ-node by CFG union-splitting). For example, the code snippet below will run 500x faster: ```julia function compute(n) s = 0 itr = 1:n st = iterate(itr) while isdefined(st, 2) # mimic our iteration protocol with `isdefined` v, st = st s += v st = iterate(itr, st) end s end ``` Although it seems like the codegen for `isa` is fairly optimized already and so I could not find any performance benefit for `isa`-lifting (`code_llvm` emits mostly equivalent code), but I hope it's more ideal if we can do the equivalent optimization on Julia level so that we can just consult to `code_typed` for performance optimization. * adce_pass: Drop phinode uses that can be proved unused Union splitting introduces patterns like: Consider a case like: ``` f(x::Float64) = println(x) f(x::SomeBigStruct) = nothing ``` ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: b = new(SomeBigStruct, ...)::SomeBigStruct 3: c = phi(a, b) if !isa(c, Float64) goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` Now, #43227 will turn this into: ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: b = new(SomeBigStruct, ...)::SomeBigStruct 3: c = phi(a, b) cond = phi(true, false) if !cond goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` But even though dynamically `b` is never used, it doesn't get deleted, because there's still a use in the PhiNode `c`. This PR teaches adce to recognize this situation and, for PhiNodes that are only ever used by PiNodes, drop any edges that are known to be unused. E.g. in the above case, the adce improvements would turn it into: ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: b = new(SomeBigStruct, ...)::SomeBigStruct 3: c = phi(a) cond = phi(true, false) if !cond goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` Which in turn would let regular DCE drop the allocation: ``` goto 2 if not ... 1: a = ::Float64 goto 3 2: nothing 3: c = phi(a) cond = phi(true, false) if !cond goto 5 4: d = PiNode(c, Float64) println(d) goto 6 5: nothing 6: return nothing ``` Co-authored-by: Shuhei Kadowaki <aviatesk@gmail.com> Co-authored-by: Ian Atol <ian.atol@juliacomputing.com> | 26 January 2022, 03:57:28 UTC |
40bceb2 | Paul Berg | 26 January 2022, 03:51:36 UTC | Show modules with invalid name using var"" (#43932) | 26 January 2022, 03:51:36 UTC |
de21be7 | Olivier MATHIEU | 25 January 2022, 18:18:45 UTC | Fix obsolete builtins list in devdocs/function (#35271) Generates the list programmatically now, since we will never remember to update it (though it is perhaps a bit odd that we include this list in the first place, when it is just generated by reflection). | 25 January 2022, 18:18:45 UTC |
177baf8 | Jeffrey Lin | 25 January 2022, 18:10:52 UTC | fix show(::LinRange) (#35448) Fixes #35437 This could be refined further (see comments in the PR), but it fixes the issue. | 25 January 2022, 18:10:52 UTC |
a400a24 | Keno Fischer | 25 January 2022, 08:53:24 UTC | Revert "IO: tie lifetime of handle field to container (#43218)" (#43924) This reverts commit 5cd31b581e2935aebc21217c1dc87ec4bde8f877. | 25 January 2022, 08:53:24 UTC |
cdd2f62 | Shuhei Kadowaki | 25 January 2022, 08:47:12 UTC | optimizer: lift more comparisons (#43227) This commit implements more comparison liftings. Especially, this change enables the compiler to lift `isa`/`isdefined` checks (i.e. replace a comparison call with ϕ-node by CFG union-splitting). For example, the code snippet below will run 500x faster: ```julia function compute(n) s = 0 itr = 1:n st = iterate(itr) while isdefined(st, 2) # mimic our iteration protocol with `isdefined` v, st = st s += v st = iterate(itr, st) end s end ``` Although it seems like the codegen for `isa` is fairly optimized already and so I could not find any performance benefit for `isa`-lifting (`code_llvm` emits mostly equivalent code), but I hope it's more ideal if we can do the equivalent optimization on Julia level so that we can just consult to `code_typed` for performance optimization. | 25 January 2022, 08:47:12 UTC |
2682819 | Keno Fischer | 25 January 2022, 01:30:52 UTC | Fix searchsorted in Core.Compiler (#43918) | 25 January 2022, 01:30:52 UTC |
d7e3d99 | Jameson Nash | 06 January 2022, 19:33:25 UTC | [REPLCompletions] improve implementation of completions - Restrict method completion to ignore strictly less specific ones - Fix various lookup bugs - Improve slurping of final expression Inspired by https://github.com/JuliaLang/julia/pull/43572 Co-authored-by: Lionel Zoubritzky <lionel.zoubritzky@gmail.com> | 24 January 2022, 23:50:20 UTC |
4ab81fc | Jameson Nash | 06 January 2022, 19:12:39 UTC | gf: make Builtins more like regular functions Now we can fully handle all type signatures in ml_matches and give back the complete list (though potentially slowly). | 24 January 2022, 23:50:20 UTC |
295cee5 | Jameson Nash | 06 January 2022, 21:19:33 UTC | [REPLCompletions] fix missing bounds handling Caused `foo).<tab>` to crash, for example. | 24 January 2022, 23:50:19 UTC |
d900ab1 | Jameson Nash | 06 January 2022, 23:13:42 UTC | [REPLCompletions] handle #=comments=# in find_start_brace | 24 January 2022, 23:50:19 UTC |
4063761 | Jameson Nash | 06 January 2022, 22:11:29 UTC | [REPLCompletions] handle possibility of syntax errors | 24 January 2022, 23:50:19 UTC |
5cd31b5 | Jameson Nash | 24 January 2022, 23:17:23 UTC | IO: tie lifetime of handle field to container (#43218) Rather than freeing this memory as soon as possible, ensure that the lifetime of the handle is always >= the container object. This lets us examine some (limited) aspects of the handle without holding a lock. And we also examine and fix numerous other thread-safety and synchronization bugs too. | 24 January 2022, 23:17:23 UTC |
6be85dc | Jameson Nash | 24 January 2022, 23:03:06 UTC | Merge pull request #43095 from JuliaLang/jn/tevents enhance Threads.Events with ordering and (auto)reset | 24 January 2022, 23:03:06 UTC |
c3b29a3 | Jameson Nash | 24 January 2022, 22:24:24 UTC | switch staticdata to a pre-order worklist instead of recursion (#43879) Avoids stack-overflow when the graph has long linked lists. | 24 January 2022, 22:24:24 UTC |
06ad3f4 | Keno Fischer | 24 January 2022, 21:07:41 UTC | Make various core math functions easier for the compiler to reason about (#43907) * ldexp: Break inference loop We have an inference loop fma_emulated -> ldexp -> ^(::Float64, ::Int) -> fma -> fma_emulated. The arguments to `^` are constant, so constprop will figure it out, but it does require a bunch of extra processing. There is a simpler way to write this using elementary bit operations. Since resolving the inference loop requires constprop, this was breaking #43852. That is fixable, but I think we should also make this change to avoid having an unnecessary inference loop in our basic math functions, which will make future analyses easier. * Make fma_emulated easier for the compiler to reason about The fact that the `exponent` call in `fma_emulated` requires reasoning about the ranges of the floating point values in question, which the compiler is not capable of doing (and is unlikely to ever do automatically). Thus, in order for the compiler to know that `fma_emulated` (and by extension `fma`) is :nothrow in a post-#43852 world, create a separate version of the `exponent` function that assumes its precondition. We could use `@assume_effects` instead, but this version is currently slightly easier on the compiler. * pow: Make integer vs float branch obvious to constprop The integer branch is nothrow, so if the caller does something like `^(x::Float64, 2.0)`, we'd like to discover that. | 24 January 2022, 21:07:41 UTC |
9769024 | Mosè Giordano | 24 January 2022, 19:46:44 UTC | [deps] Update PCRE2 URL (#43884) | 24 January 2022, 19:46:44 UTC |
4bfc788 | Steven G. Johnson | 24 January 2022, 18:03:57 UTC | improve VersionNumber docs (#43893) * improve VersionNumber docs * numeric constructor example * more links * tweak | 24 January 2022, 18:03:57 UTC |
99f0284 | Simeon Schaub | 24 January 2022, 15:05:04 UTC | remove duplicate definition of `indent_width` (#43908) | 24 January 2022, 15:05:04 UTC |
580f51d | Rogerluo | 23 January 2022, 07:47:15 UTC | add docstring for new kwargs in code_typed (#40719) | 23 January 2022, 07:47:15 UTC |
2865d97 | Viral B. Shah | 23 January 2022, 07:43:24 UTC | Fix sparse checksums (#43898) * Fix sparse checksums * Update URLs for SuiteSparse.jl and SparseArrays.jl (#43894) They are now in the JuliaSparse org. (cherry picked from commit 3d2ed5ad4c9f6465a4c42408247338cae12483cd) * Bump SuiteSparse.jl and SparseArrays.jl Update their checksums | 23 January 2022, 07:43:24 UTC |
f4ee0d2 | Ian Butterworth | 23 January 2022, 01:02:20 UTC | Revert "Update URLs for SuiteSparse.jl and SparseArrays.jl (#43894)" (#43897) This reverts commit 3d2ed5ad4c9f6465a4c42408247338cae12483cd. | 23 January 2022, 01:02:20 UTC |
3d2ed5a | Viral B. Shah | 22 January 2022, 20:14:18 UTC | Update URLs for SuiteSparse.jl and SparseArrays.jl (#43894) They are now in the JuliaSparse org. | 22 January 2022, 20:14:18 UTC |
1db8b8f | Elliot Saba | 22 January 2022, 04:38:39 UTC | [buildkite] Lock to sandbox v1.2 (#43890) | 22 January 2022, 04:38:39 UTC |
816c6a2 | Simeon Schaub | 21 January 2022, 20:05:48 UTC | support line number offset in parsing (#43876) This adds an extra keyword argument `lineno` to `Meta.parseatom` and `Meta.parseall`, which causes the emitted `LineNumberNode`s to start at the given line number instead. | 21 January 2022, 20:05:48 UTC |
a327428 | Tim Holy | 21 January 2022, 18:11:32 UTC | Fix asan for jl_precompile_toplevel_module (#43885) PR #43793 passed the buildkite test but the logs for #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. | 21 January 2022, 18:11:32 UTC |
5f79cb3 | Elliot Saba | 21 January 2022, 12:01:49 UTC | [LinearAlgebra] Bump libblastrampoline to v4.0.0 (#43877) This version allows loading of dual-interface libraries, such as MKL v2022+. It enables both providing a suffix hint when loading a library (to force detection of ILP64 or LP64 symbols) as well as being able to load the same library for multiple interfaces. | 21 January 2022, 12:01:49 UTC |
4e83cce | Tim Holy | 21 January 2022, 09:24:19 UTC | Track method roots by precompile module (#43793) 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. | 21 January 2022, 09:24:19 UTC |
416d60d | DilumAluthgeBot | 21 January 2022, 01:59:35 UTC | 🤖 Bump the Pkg stdlib from c3139663 to 66482586 (#43871) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> | 21 January 2022, 01:59:35 UTC |
f290339 | Keno Fischer | 20 January 2022, 22:35:32 UTC | Add lazy string type (#33711) | 20 January 2022, 22:35:32 UTC |
cc96240 | Keno Fischer | 20 January 2022, 22:34:57 UTC | Remove sqrt from the volatile list (#43786) The LLVM IR spec now explicitly says that this intrinsic is required to be rounded correctly. That means that without fasthmath flag (which we do not set here), this intrinsic must have the bitwise correctly rounded answer and should thus not differ between compile and runtime. If there is still a case where it does differ, that is likely some other underlying bug that we should fix instead. Before: ``` julia> f() = sqrt(2) f (generic function with 1 method) julia> @code_typed f() CodeInfo( 1 ─ %1 = Base.Math.sqrt_llvm(2.0)::Float64 └── return %1 ) => Float64 ``` After: ``` julia> @code_typed f() CodeInfo( 1 ─ return 1.4142135623730951 ) => Float64 ``` | 20 January 2022, 22:34:57 UTC |
23b4743 | Simeon Schaub | 20 January 2022, 21:45:59 UTC | Revert "add generic fallback for haskey (#42679)" (#43880) This reverts commit ecc0398361495fb08368bf5a38ea3d740e067f52. | 20 January 2022, 21:45:59 UTC |
867c98f | Pete Vilter | 20 January 2022, 18:20:53 UTC | alloc profiler: fix analyzegc error (#43875) | 20 January 2022, 18:20:53 UTC |
2e854a4 | Jameson Nash | 20 January 2022, 17:47:06 UTC | Merge pull request #43685 from JuliaLang/vc/llvm_asan Pickup TSAN/ASAN and LLVM assertion build fixes from #43418 | 20 January 2022, 17:47:06 UTC |
f67371d | Keno Fischer | 20 January 2022, 14:06:30 UTC | Switch `getindex(::IRCode, ::Int)` to return Instruction (#43829) This function is a helper to abstract over both the inserted and the pending instruction streams. However, it predates the `Instruction` abstraction and currently returns the stmt directly. The original design was to have separate view types to access every field, but since we have the `Instruction` abstraction now, we should just use it, enabling things like: ``` ir[SSAValue(idx)][:flags] |= IR_FLAG_EFFECT_FREE ``` I want to do more with flags in the future, so this is a prepratory refactor in that direction. | 20 January 2022, 14:06:30 UTC |
a6624d9 | Keno Fischer | 20 January 2022, 14:05:56 UTC | Merge pull request #43870 from JuliaLang/kf/openlibmbump Bump openlibm to 0.8.1 | 20 January 2022, 14:05:56 UTC |
88b1f92 | Valentin Churavy | 20 January 2022, 11:54:46 UTC | [LateLowerGC] Change undef FCA into zeroinit (#43867) | 20 January 2022, 11:54:46 UTC |
f6ea7cc | Jakob Nybo Nissen | 20 January 2022, 11:29:17 UTC | Elaborate `code_native` funciton and macro docstring (#43860) | 20 January 2022, 11:29:17 UTC |
05d3e84 | Sasank | 20 January 2022, 05:22:10 UTC | Document use of `/` in LinearAlgebra (#43632) Co-authored-by: Viral B. Shah <ViralBShah@users.noreply.github.com> Co-authored-by: Simon Byrne <simonbyrne@gmail.com> | 20 January 2022, 05:22:10 UTC |
cc73f50 | Keno Fischer | 20 January 2022, 00:39:56 UTC | Add test for sqrt rounding | 20 January 2022, 01:19:47 UTC |
a55aa57 | Keno Fischer | 20 January 2022, 00:35:56 UTC | Bump OpenLibm to 0.8.1 | 20 January 2022, 01:19:47 UTC |
487f0b4 | Jameson Nash | 19 January 2022, 23:48:42 UTC | Merge pull request #43664 from dnadlinger/aarch64-darwin Switch aarch64-darwin codegen to JITLink (ObjectLinkingLayer) and small code model | 19 January 2022, 23:48:42 UTC |
ef23d6d | Pete Vilter | 19 January 2022, 20:51:00 UTC | Allocation profiler (#42768) ## Overview Record the type and stack of every allocation (or only at a given sample interval), and return as Julia objects. Alternate approach to existing alloc profiler PR: https://github.com/JuliaLang/julia/pull/33467 Complementary to garbage profiler PR: https://github.com/JuliaLang/julia/pull/42658 (maybe there's some nice way to meld them) This may be reinventing the wheel from #33467, but I'm not sure why that one needs stuff like LLVM passes. I mimicked some stuff from it, but this was my attempt to get something up and running. Could easily be missing stuff. ## Usage: ```julia using Profile.Allocs res = Allocs.@profile sample_rate=0.001 my_func() prof = Allocs.fetch() # do something with `prof` ``` See also: https://github.com/JuliaPerf/PProf.jl/pull/46 for support for visualizing these. Co-authored-by: Nathan Daly <nhdaly@gmail.com> | 19 January 2022, 20:51:00 UTC |
5864e43 | Martin Holters | 19 January 2022, 06:23:10 UTC | Fix `tmerge` for (partially) const types with undef fields (#43812) When `tmerge` is applied to `Const`/`PartialStruct` and a field is `Const` in one of the types and `Union{}` (i.e. undef) in the other, the resulting field type must not be `Const` (as the resursively called `tmerge` produces). Fixes #43784. | 19 January 2022, 06:23:10 UTC |
8ec5580 | Tim Besard | 19 January 2022, 02:34:38 UTC | Remove have_fma from the public API exports. (#43854) | 19 January 2022, 02:34:38 UTC |
aa1bd28 | N5N3 | 18 January 2022, 22:43:43 UTC | Fix `extrema(x; dims)` for inputs with `NaN/missing` (#43604) * Define `extrema` using `mapreduce`; support `init` * Fix tests for SparseArrays * API clean and export `extrema!` * Re-implement `reducedim_init` for extrema * Merge `master` to pull in https://github.com/JuliaLang/SparseArrays.jl/pull/63 * Mark `BigInt` tests as broken Co-authored-by: Milan Bouchet-Valat <nalimilan@club.fr> Co-authored-by: Simeon Schaub <simeondavidschaub99@gmail.com> Co-authored-by: Takafumi Arakaki <aka.tkf@gmail.com> Co-authored-by: Tim Holy <tim.holy@gmail.com> | 18 January 2022, 22:43:43 UTC |
1f266b8 | Keno Fischer | 18 January 2022, 19:22:19 UTC | Move typeassert effect-free modeling to the proper place (#43830) This was open-coded inside inlining, but the effect-free modeling code should be with the other builtins (in preparation of calling it from more places). | 18 January 2022, 19:22:19 UTC |
51ded1c | Tim Besard | 18 January 2022, 19:13:16 UTC | Simplify loading code from stdin during precompilation. (#43853) | 18 January 2022, 19:13:16 UTC |
eb724e0 | Bogumił Kamiński | 18 January 2022, 18:33:12 UTC | Add defalg methods to resolve potential dispatch ambiguities (#43426) We could also consider adding `defalg(v::AbstractArray{<:Number}) = DEFAULT_UNSTABLE`, but it is unlikely that someone will want to do `Union` of `<:Number` and something other than `Missing` that still would support comparison. Relevant for https://github.com/JuliaStrings/InlineStrings.jl/issues/21 (and other custom types that will want to add `defalg` support allowing for `Union` with `Missing`). | 18 January 2022, 18:33:12 UTC |
c5158f4 | Takafumi Arakaki | 18 January 2022, 04:41:11 UTC | Fix typos in runtime_intrinsics.c (#43850) | 18 January 2022, 04:41:11 UTC |
45acb76 | DilumAluthgeBot | 17 January 2022, 18:56:28 UTC | 🤖 Bump the SparseArrays stdlib from 205b770 to 16dd9bd (#43848) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> | 17 January 2022, 18:56:28 UTC |
d6cd37a | Shuhei Kadowaki | 17 January 2022, 17:31:46 UTC | InteractiveUtils: add const annotations (#43846) | 17 January 2022, 17:31:46 UTC |
4b036f0 | Fredrik Ekre | 17 January 2022, 16:43:12 UTC | Update Documenter to latest version. (#43843) | 17 January 2022, 16:43:12 UTC |
591f066 | Viral B. Shah | 17 January 2022, 13:15:05 UTC | Move sparse matrix tests to the new SparseArrays.jl repo (#43832) * Move sparse matrix tests to the new SparseArrays.jl repo | 17 January 2022, 13:15:05 UTC |
f03e839 | Keno Fischer | 17 January 2022, 08:23:18 UTC | Fix splatnew test (#43835) The function being tested currently throws: ``` julia> _construct_structwithsplatnew() ERROR: TypeError: in new, expected Int64, got a value of type String Stacktrace: [1] StructWithSplatNew @ ./REPL[15]:3 [inlined] [2] _construct_structwithsplatnew() @ Main ./REPL[16]:1 [3] top-level scope @ REPL[18]:1 ``` As a result, compiler precision improvements can cause the test to fail, which is not intended. Fix the fieldtype of the struct to make sure it doesn't throw. | 17 January 2022, 08:23:18 UTC |
8667272 | Keno Fischer | 17 January 2022, 07:28:15 UTC | Small test cleanup (#43831) Deconflict some identifiers, make test run properly in Main module. | 17 January 2022, 07:28:15 UTC |
dd0c14b | Lionel Zoubritzky | 17 January 2022, 02:11:59 UTC | Fix getindex and setindex! on 0-dimensional reinterpretarray (#43819) | 17 January 2022, 02:11:59 UTC |
75a1d0f | Valentin Churavy | 16 January 2022, 23:05:41 UTC | [LLVM] Add support for building experimental targets (#43822) | 16 January 2022, 23:05:41 UTC |
8536522 | David Widmann | 16 January 2022, 23:05:17 UTC | Use `GlobalRef` of `Core.CodeInfo` in `@generated` (#43823) Co-authored-by: Simeon Schaub <schaub@mit.edu> | 16 January 2022, 23:05:17 UTC |
b65c19a | Valentin Churavy | 16 January 2022, 23:01:19 UTC | [LLVM] Remove LLVM 11 patches from source-tree (#43824) | 16 January 2022, 23:01:19 UTC |
3522661 | Daniel Matz | 16 January 2022, 06:03:21 UTC | Add specialization of foreach for tuples (#31901) | 16 January 2022, 06:03:21 UTC |
a32a066 | Fons van der Plas | 15 January 2022, 22:22:19 UTC | [REPL] More accurate `ends_with_semicolon` (#43374) * More accurate `ends_with_semicolon` Co-authored-by: Steven G. Johnson <stevenj@mit.edu> | 15 January 2022, 22:22:19 UTC |
39c7355 | pchintalapudi | 15 January 2022, 17:57:20 UTC | Clean up more uses of jl_LLVMContext (#43791) | 15 January 2022, 17:57:20 UTC |
49c667d | N5N3 | 15 January 2022, 15:33:40 UTC | Try to fix `fma` on windows (#43530) * enable fma on Windows | 15 January 2022, 15:33:40 UTC |
bff3eb6 | Jameson Nash | 15 January 2022, 15:01:59 UTC | Revert "Profile: Faster data dict lookup (#43805)" (#43814) | 15 January 2022, 15:01:59 UTC |
7ab26e0 | Shuhei Kadowaki | 15 January 2022, 02:11:07 UTC | Merge pull request #43797 from ianatol/ia/condfolding Allow branch folding to look at type information, fix Conditional bug | 15 January 2022, 02:11:07 UTC |
7b1cc4b | Lionel Zoubritzky | 14 January 2022, 21:53:34 UTC | Allow reinterpreting singleton types (#43500) | 14 January 2022, 21:53:34 UTC |
14154fc | Ian Butterworth | 14 January 2022, 19:21:40 UTC | Profile: Faster data dict lookup (#43805) | 14 January 2022, 19:21:40 UTC |
de85dea | Daniel Karrasch | 14 January 2022, 18:34:31 UTC | Optimize `permutedims` on *diagonals (#43792) Co-authored-by: Michael Abbott <32575566+mcabbott@users.noreply.github.com> | 14 January 2022, 18:34:31 UTC |
f15b4c3 | Daniel Karrasch | 14 January 2022, 18:14:13 UTC | Cleanup `copy_oftype`-like functions in factorizations (#43700) Co-authored-by: Daan Huybrechs <daan.huybrechs@kuleuven.be> | 14 January 2022, 18:14:13 UTC |
35a5172 | Keno Fischer | 12 January 2022, 22:04:01 UTC | Fix bug where Conditional wasn't being marked as ConstAPI | 14 January 2022, 17:16:52 UTC |
a9edea1 | Keno Fischer | 12 January 2022, 20:35:21 UTC | Allow branch folding to look at type information Folds things like: ``` %a = complicated()::Const(true) goto if not %a ``` | 14 January 2022, 17:16:04 UTC |
b57d2e1 | Kristoffer Carlsson | 14 January 2022, 15:38:39 UTC | move SparseArrays to the external repo https://github.com/JuliaLang/SparseArrays.jl (#43813) | 14 January 2022, 15:38:39 UTC |
5064528 | Nick Robinson | 14 January 2022, 13:30:26 UTC | Show only the "Test Passed" message when a test passes (#43795) This restores the behavior of how `at-test` shows a test pass in Julia v1.0 - v1.6, reverting the display changes introduced when storing more info in the `Pass` type in #36879, closes #43794. | 14 January 2022, 13:30:26 UTC |
f70a86a | tomtuamnuq | 14 January 2022, 08:43:14 UTC | Add description of local kw in global scope (#42794) | 14 January 2022, 08:43:14 UTC |
5289a5e | Dilum Aluthge | 14 January 2022, 07:09:58 UTC | `InteractiveUtils.versioninfo(; verbose = true)`: remove unnecessary blank line before "Memory" (#43810) | 14 January 2022, 07:09:58 UTC |
294b0df | Keno Fischer | 14 January 2022, 01:14:08 UTC | Fix nothrow modeling of have_fma (#43785) Allows functions that make use of fma to be considered ConstAPI (so long has both have_fma branches return the same constant). | 14 January 2022, 01:14:08 UTC |
5847647 | pchintalapudi | 14 January 2022, 00:58:32 UTC | Track memops more accurately (#43778) | 14 January 2022, 00:58:32 UTC |
49f4f78 | t-bltg | 13 January 2022, 21:31:30 UTC | Add trailing nl for `display(::TextDisplay, ...)` (#43787) Fixes #43766. | 13 January 2022, 21:31:30 UTC |
89f2332 | Mark Kittisopikul | 13 January 2022, 19:48:27 UTC | Fix #43004 by commenting out broken throw tests (#43739) | 13 January 2022, 19:48:27 UTC |
9da2dad | Erik Schnetter | 13 January 2022, 18:27:31 UTC | Define show for CartesianIndices (#43780) | 13 January 2022, 18:27:31 UTC |
1b33119 | Jameson Nash | 13 January 2022, 17:13:44 UTC | Merge pull request #43701 from JuliaLang/jn/43578 workaround a dyld/libunwind deadlock issue, since macOS 12.1 | 13 January 2022, 17:13:44 UTC |
b351286 | Jameson Nash | 13 January 2022, 17:11:57 UTC | fix ranges PR conflict (#43790) We cannot safely use reverse, so we do not anymore. That is now causing conflict between #43059 and #29842. And this is likely clearer anyways. Closes #43788 | 13 January 2022, 17:11:57 UTC |
99d4e65 | Valentin Churavy | 13 January 2022, 14:49:03 UTC | Handle freeze instruction in FindBaseValue (#43728) | 13 January 2022, 14:49:03 UTC |
a401aac | pchintalapudi | 13 January 2022, 14:25:40 UTC | Remove global basic pointer types (#43754) Co-authored-by: Prem Chintalapudi <premc@csail.mit.edu> | 13 January 2022, 14:25:40 UTC |
8997a90 | pchintalapudi | 12 January 2022, 21:32:21 UTC | Remove global thunk attribute (#43782) | 12 January 2022, 21:32:21 UTC |
32abe71 | Jeff Bezanson | 12 January 2022, 20:55:22 UTC | fix typo in doc string for `display` (#43781) | 12 January 2022, 20:55:22 UTC |
267b124 | Jameson Nash | 12 January 2022, 05:20:32 UTC | macOS: extend the workaround to cover the dyld/exc_server deadlock issue, since 12.1 Later, we should probably switch to using mach_exc_server generated from `mig mach_exc.defs`. | 12 January 2022, 19:57:52 UTC |