swh:1:snp:a72e953ecd624a7df6e6196bbdd05851996c5e40
- HEAD
- refs/branches/jn/codeinfo-lineno
- refs/heads/KristofferC-patch-1
- refs/heads/KristofferC-patch-2
- refs/heads/KristofferC-patch-3
- refs/heads/KristofferC-patch-4
- refs/heads/KristofferC-patch-5
- refs/heads/KristofferC-patch-6
- refs/heads/KristofferC-patch-7
- refs/heads/SubtypeError
- refs/heads/aa-tcp-write-opt-18
- refs/heads/aa/build-llvm-unwind
- refs/heads/aa/freebsd-llvm-libunwind
- refs/heads/aa/test-throws-nothing
- refs/heads/add-buffer-type
- refs/heads/add-buffer-type2
- refs/heads/adnan-alhomssi-aa-export-numstacks-counter
- refs/heads/adr/snapshot
- refs/heads/ajf/arrays-are-tables
- refs/heads/ajf/broadcast-dicts
- refs/heads/ajf/cartesianrange-array
- refs/heads/ajf/default-length-definition
- refs/heads/ajf/deprecatemultivaluenonscalarindexedassignment
- refs/heads/ajf/dict-iterate-values
- refs/heads/ajf/mappedarray
- refs/heads/ajf/pairs2
- refs/heads/ajf/propage_inbounds_broadcast
- refs/heads/ajf/skipmissing-length
- refs/heads/ajf/strides-trait
- refs/heads/amp-ref
- refs/heads/anj/map
- refs/heads/asan_tasks_eh
- refs/heads/avi/1.11-precompile-ext-absint
- refs/heads/avi/46713
- refs/heads/avi/47137-again
- refs/heads/avi/52991
- refs/heads/avi/EASROA
- refs/heads/avi/async-completion
- refs/heads/avi/bailout-effects
- refs/heads/avi/bailoutintrinsics
- refs/heads/avi/boundscheck-docs
- refs/heads/avi/boundserror
- refs/heads/avi/callinfo-effects
- refs/heads/avi/codegen-custom-lookup-oc
- refs/heads/avi/configconstprop
- refs/heads/avi/constType-Union
- refs/heads/avi/early_const_prop
- refs/heads/avi/effects-override-bittype
- refs/heads/avi/effects_constprop
- refs/heads/avi/elim-wasterful-constprop
- refs/heads/avi/follow-52415
- refs/heads/avi/gpucompiler-384
- refs/heads/avi/hunt-type-instabilities
- refs/heads/avi/inbounds-nothrow
- refs/heads/avi/infer_effects
- refs/heads/avi/infresult_iterator
- refs/heads/avi/inline_string
- refs/heads/avi/inlining-policy
- refs/heads/avi/inlining_cost
- refs/heads/avi/interval
- refs/heads/avi/jet413
- refs/heads/avi/kwinline
- refs/heads/avi/moreeffects
- refs/heads/avi/multisroa
- refs/heads/avi/mutablephi
- refs/heads/avi/optlifetime
- refs/heads/avi/plugin8
- refs/heads/avi/plugin8-2
- refs/heads/avi/remove-throw-block-unopt
- refs/heads/avi/return_type-max_methods
- refs/heads/avi/rm-allow_abstract
- refs/heads/avi/temp-methodinstance-to-invoke
- refs/heads/avi/turn-on-aliasedfieldanalysis
- refs/heads/avi/typed_hvcat-return_type
- refs/heads/avi/typelattice
- refs/heads/avi/typetypeinf
- refs/heads/avi/undef
- refs/heads/backport-1.1.0
- refs/heads/backports-release-1.1
- refs/heads/backports-release-1.10
- refs/heads/backports-release-1.11
- refs/heads/backports-release-1.6
- refs/heads/backports-release-1.8
- refs/heads/breakmore
- refs/heads/caf/bump-juliasyntax-0.4.7
- refs/heads/cjf/disallow-infix-macros
- refs/heads/cjf/fpe-exceptions
- refs/heads/cjf/hide-in-stacktrace-meta
- refs/heads/cjf/hide-stacktrace-frames
- refs/heads/cjf/internal-properties
- refs/heads/cjf/logging-custom-levels
- refs/heads/cjf/logging-custom-levels-wip
- refs/heads/cjf/remove-loaderror
- refs/heads/cjf/toplevel-backtraces
- refs/heads/cjf/toplevel-backtraces-via-interpframe-stack
- refs/heads/cjh/doxygen
- refs/heads/cjh/fix-4774
- refs/heads/cjh/parallel-bench
- refs/heads/ct/julia-opt-zone
- refs/heads/curry
- refs/heads/cv/abstractstring-eq
- refs/heads/cv/arm-hotfix
- refs/heads/cv/broadcast-steprange-timetype
- refs/heads/cv/char-code-reservation
- refs/heads/cv/dates-replace
- refs/heads/cv/fix-redundant-dict-error
- refs/heads/cv/generator-indexing
- refs/heads/cv/invalid-rational
- refs/heads/cv/namedtuple-pair
- refs/heads/cv/no-color-force-color
- refs/heads/da/devcontainer-update
- refs/heads/dcn-1.9-with-mem-pressure-callback
- refs/heads/dcn-3-color
- refs/heads/dcn-canonicalize-callable-names
- refs/heads/dcn-check-oldest-object-in-size-class
- refs/heads/dcn-compiler-obj-pools
- refs/heads/dcn-count-stack-bytes
- refs/heads/dcn-gc-interface
- refs/heads/dcn-gc-paper-1.9-branch
- refs/heads/dcn-gc-paper-dev-branch
- refs/heads/dcn-heap-size-hint-env
- refs/heads/dcn-null-out-gc-slots
- refs/heads/dcn-page-profiler-more-verbose-types
- refs/heads/dcn/docs
- refs/heads/dcn/mq
- refs/heads/dk/banded
- refs/heads/dk/blaspromo
- refs/heads/dk/choleskypivot
- refs/heads/dk/hvcat_scaling_number
- refs/heads/dk/missing
- refs/heads/dk/muladdmul
- refs/heads/dk/stable_div
- refs/heads/dont-tabcomplete-internals
- refs/heads/dpa/base-prompt-public-api
- refs/heads/dpa/ci-environment-variable
- refs/heads/dpa/deprecation_exec
- refs/heads/dpa/diagnostics-interactiveutils
- refs/heads/dpa/infodump-interactiveutils
- refs/heads/dpa/more-public-task-local-storage-methods
- refs/heads/dpa/new-global-load-path-entry
- refs/heads/dpa/parentmodule
- refs/heads/dpa/pidfile-windows-eacces
- refs/heads/dpa/sparsearrays
- refs/heads/dpa/versioninfo-official-release
- refs/heads/fe/--threads-propagate
- refs/heads/fe/-P
- refs/heads/fe/active-depot
- refs/heads/fe/backport-31967
- refs/heads/fe/deprecate-logging
- refs/heads/fe/depwarn-default
- refs/heads/fe/doctest-fix
- refs/heads/fe/errorexception
- refs/heads/fe/helpmode-stdout
- refs/heads/fe/hermsym-matrixfunc
- refs/heads/fe/integer-construction
- refs/heads/fe/misc
- refs/heads/fe/nvr
- refs/heads/fe/repr-versioninfo
- refs/heads/fe/rm-artifacts
- refs/heads/fe/ssh
- refs/heads/fe/structured-matrix-constructor
- refs/heads/fe/version-v2
- refs/heads/fix9475
- refs/heads/gb/analyzer-fun
- refs/heads/gb/branch-bits
- refs/heads/gb/gc-correct-constraint
- refs/heads/gb/gc-other-impl
- refs/heads/gb/gc-rever
- refs/heads/gb/hashtable_typelist
- refs/heads/gb/libfuncattrs
- refs/heads/gb/llvmpasses-dep
- refs/heads/gb/memcmo
- refs/heads/gb/memory-extra-check
- refs/heads/gb/mi-alias
- refs/heads/gb/pipeline-fun
- refs/heads/gb/rpath-fun
- refs/heads/gb/small-image
- refs/heads/gb/small-image2
- refs/heads/gb/stack-protect
- refs/heads/gb/vecalign
- refs/heads/gpu-broadcast
- refs/heads/id_norm
- refs/heads/jb/06_compiler_perf
- refs/heads/jb/39698
- refs/heads/jb/AbstractOneTo
- refs/heads/jb/IdUnitRangeparent
- refs/heads/jb/allowoverwrite
- refs/heads/jb/analyzevars
- refs/heads/jb/arraygcperf
- refs/heads/jb/badidentifierstart
- refs/heads/jb/bidi16
- refs/heads/jb/cg_temp
- refs/heads/jb/codeinfostuff
- refs/heads/jb/copyanonfns
- refs/heads/jb/copyfile
- refs/heads/jb/diagblockdiagonal
- refs/heads/jb/dotcolon
- refs/heads/jb/fastercat
- refs/heads/jb/fix14106
- refs/heads/jb/fix29501
- refs/heads/jb/fix38902
- refs/heads/jb/fix39834
- refs/heads/jb/fix47318
- refs/heads/jb/fix49318
- refs/heads/jb/fix52120
- refs/heads/jb/freethreadstate
- refs/heads/jb/gotofromtry
- refs/heads/jb/implicitssa
- refs/heads/jb/interpreter_opt
- refs/heads/jb/iowriteperf
- refs/heads/jb/jr/tuplelattice
- refs/heads/jb/latency10
- refs/heads/jb/latency12
- refs/heads/jb/latency3
- refs/heads/jb/latency33615
- refs/heads/jb/latency_experiments
- refs/heads/jb/limitedmethods
- refs/heads/jb/macrostuff
- refs/heads/jb/modprefixshow
- refs/heads/jb/news111
- refs/heads/jb/novaoverride
- refs/heads/jb/nullableget
- refs/heads/jb/open3
- refs/heads/jb/quietparams
- refs/heads/jb/r5rs
- refs/heads/jb/revinlinethresh
- refs/heads/jb/ruleinlinecost
- refs/heads/jb/serializeperf
- refs/heads/jb/shortstrlen
- refs/heads/jb/silentparams
- refs/heads/jb/simpler_intersection2
- refs/heads/jb/sjkelly-sjk/precomp_trace2
- refs/heads/jb/steprangegetindex
- refs/heads/jb/stripmeta
- refs/heads/jb/sysimgLogging
- refs/heads/jb/tasksize
- refs/heads/jb/taskwaitswitch
- refs/heads/jb/threadedregion-test
- refs/heads/jb/typedefIR2
- refs/heads/jb/typegetfield
- refs/heads/jb/typemap0
- refs/heads/jb/varlocs
- refs/heads/jcb/arrayviews
- refs/heads/jcb/evalmacrocallthrows
- refs/heads/jcb/juliarepl
- refs/heads/jcb/simdmdloop
- refs/heads/jh/setops
- refs/heads/jishnub/abstractqsimilar
- refs/heads/jishnub/blocktridiagonalindexing
- refs/heads/jishnub/getindexint
- refs/heads/jishnub/ntupleshow
- refs/heads/jishnub/onetopromoterule
- refs/heads/jishnub/oopmuldisambiguate
- refs/heads/jishnub/rangebroadcastambiguity
- refs/heads/jishnub/rangezero
- refs/heads/jishnub/tricopyto
- refs/heads/jishnub/twiceprecisionzero
- refs/heads/jishnub/upperlowertriangularfn
- refs/heads/jmw/null-syntax
- refs/heads/jn/26512
- refs/heads/jn/29872-compare
- refs/heads/jn/34886
- refs/heads/jn/37349
- refs/heads/jn/StructRet_abi
- refs/heads/jn/Tuple-applytype-bottom
- refs/heads/jn/array-inbounds-audit
- refs/heads/jn/atomic-modify-opt
- refs/heads/jn/avi/noopt-interp-irinterp-compare
- refs/heads/jn/backedge-fixup
- refs/heads/jn/backports-release-1.4
- refs/heads/jn/better-broadcast-inlining
- refs/heads/jn/bigfloat-mem
- refs/heads/jn/broadcast-some-more
- refs/heads/jn/check_sadd
- refs/heads/jn/compile-all-0.6
- refs/heads/jn/compile_all_generic_box
- refs/heads/jn/drop-inexact
- refs/heads/jn/exposed-hygiene
- refs/heads/jn/fix-macro-scope-design
- refs/heads/jn/fix34159
- refs/heads/jn/gc-pool-lazy
- refs/heads/jn/generalized-LOAD_PATH-compilecache
- refs/heads/jn/have_fma_sysimg
- refs/heads/jn/iddict
- refs/heads/jn/import-strtod
- refs/heads/jn/in-isequal
- refs/heads/jn/iocolor
- refs/heads/jn/iocolor2
- refs/heads/jn/ircode-memory
- refs/heads/jn/isdefined-safely
- refs/heads/jn/iterate
- refs/heads/jn/jb-subtype
- refs/heads/jn/jb-subtype-const-type-fix
- refs/heads/jn/jb-subtype-faster-isa-Type
- refs/heads/jn/jlinterpreter
- refs/heads/jn/kf-linecolstr
- refs/heads/jn/kf/iterate-wip
- refs/heads/jn/kf/newlocs
- refs/heads/jn/lazydoc
- refs/heads/jn/license-committers
- refs/heads/jn/llvmcall2
- refs/heads/jn/localize-multiversioning
- refs/heads/jn/memoize-freevars
- refs/heads/jn/methmatch-cache
- refs/heads/jn/mixed-equal
- refs/heads/jn/ml-match-opt
- refs/heads/jn/ml-matches-leaf-cache2
- refs/heads/jn/modulecoalescing
- refs/heads/jn/more-faster-typeset
- refs/heads/jn/more-inline-costs
- refs/heads/jn/msvclink
- refs/heads/jn/new-stdlib-script-docs
- refs/heads/jn/newir-test-fixes
- refs/heads/jn/noinline-structs
- refs/heads/jn/opt-makefile-compile-take2
- refs/heads/jn/release0.6-26833
- refs/heads/jn/requirenewmodule
- refs/heads/jn/simple-scope
- refs/heads/jn/slot-type-infer-optimize
- refs/heads/jn/steprange
- refs/heads/jn/subtype-sig-equal
- refs/heads/jn/test-warn-repr
- refs/heads/jn/threading
- refs/heads/jn/tune_whos
- refs/heads/jn/tuplecc
- refs/heads/jn/type-construction-normalization
- refs/heads/jn/typeinfo_arg
- refs/heads/jn/typename_hide_null_svec
- refs/heads/jn/undeffield-codegen-opt
- refs/heads/jn/unhandled_exception_handler
- refs/heads/jn/union-bits-layout
- refs/heads/jn/update-precompile-heuristic
- refs/heads/jn/widen_method_matchs
- refs/heads/jq-19-backport
- refs/heads/jq-dense-strings
- refs/heads/jq-tcp-socket-keepalive
- refs/heads/jq/40303
- refs/heads/jq/buffer
- refs/heads/jq/bufferall
- refs/heads/jr/betterspoof
- refs/heads/jr/cinfoworldboundstmp
- refs/heads/jr/compiledebug
- refs/heads/jr/moarpartialtuple
- refs/heads/jr/ptupleprop
- refs/heads/jr/tmp2
- refs/heads/jr/tupleconst
- refs/heads/jr/tuplekindtypefix
- refs/heads/jr/tuplelatticeold
- refs/heads/jr/wip
- refs/heads/julia-in-julia
- refs/heads/kc/1.9.0-beta3
- refs/heads/kc/JULIA_ENV
- refs/heads/kc/TM
- refs/heads/kc/arg_usings
- refs/heads/kc/artifact_str_world
- refs/heads/kc/assume_unchanged_loading
- refs/heads/kc/backport_gcc10
- refs/heads/kc/backport_vtj
- refs/heads/kc/backporter
- refs/heads/kc/backports-release-1.10
- refs/heads/kc/build_stdlib_env
- refs/heads/kc/cache_precompile
- refs/heads/kc/cglobal
- refs/heads/kc/codeloading2.0
- refs/heads/kc/complete_num
- refs/heads/kc/core_compiler_tracy
- refs/heads/kc/creating_packages_revert
- refs/heads/kc/debug_mode
- refs/heads/kc/debug_mode2
- refs/heads/kc/debug_precompile
- refs/heads/kc/debug_release-1.9
- refs/heads/kc/dir_dlload
- refs/heads/kc/doctest_meta2
- refs/heads/kc/doctests_CI
- refs/heads/kc/exception_trait
- refs/heads/kc/excise_libgit2_v2
- refs/heads/kc/extension
- refs/heads/kc/fix_init
- refs/heads/kc/fix_print_type
- refs/heads/kc/glue_modules
- refs/heads/kc/immut_dict
- refs/heads/kc/inline_print
- refs/heads/kc/inval
- refs/heads/kc/llvm-opt-zone
- refs/heads/kc/llvm-opt-zone2
- refs/heads/kc/llvm_pass_trac
- refs/heads/kc/loading_debug_error
- refs/heads/kc/loading_stuff
- refs/heads/kc/move_dates_anub
- refs/heads/kc/n_triggers
- refs/heads/kc/perf_ident
- refs/heads/kc/pidlock_repl_history
- refs/heads/kc/pkg3_patch
- refs/heads/kc/pkgdir_fix
- refs/heads/kc/pkgstdlib
- refs/heads/kc/precompile_overhead
- refs/heads/kc/precompile_with_pkg3
- refs/heads/kc/repl_fast
- refs/heads/kc/reuse_compile
- refs/heads/kc/reuse_precompile
- refs/heads/kc/seed_fast
- refs/heads/kc/set_threads
- refs/heads/kc/so_long_and_thanks_for_the_packages
- refs/heads/kc/sprint_displaysize
- refs/heads/kc/stat_reductions
- refs/heads/kc/stdlib
- refs/heads/kc/stdlib_markdown
- refs/heads/kc/stdlib_path_internal
- refs/heads/kc/stdlib_printing
- refs/heads/kc/str_lit_cont
- refs/heads/kc/substr_toml
- refs/heads/kc/substring_parse
- refs/heads/kc/test
- refs/heads/kc/test_inline
- refs/heads/kc/toml_loading
- refs/heads/kc/tracy_plot
- refs/heads/kc/tuple_afoldl
- refs/heads/kc/type_cache_insert_default
- refs/heads/kc/unused
- refs/heads/kc/upgradable_stdlibs
- refs/heads/kc/warn_using
- refs/heads/kc/was
- refs/heads/kc/weak_deps_2
- refs/heads/kc/whatdocstoshow
- refs/heads/kc/wip_stacktraces
- refs/heads/kc/zone
- refs/heads/kf/53515
- refs/heads/kf/anysparamlattice
- refs/heads/kf/asan2
- refs/heads/kf/bbmsan
- refs/heads/kf/cedarwip
- refs/heads/kf/cfgwip
- refs/heads/kf/circshift
- refs/heads/kf/closestcandidates
- refs/heads/kf/codegen
- refs/heads/kf/codeinstwip
- refs/heads/kf/codetypedconst
- refs/heads/kf/compiler_wip_dont_look
- refs/heads/kf/compilerperfwip
- refs/heads/kf/customlattice
- refs/heads/kf/cvppipeline
- refs/heads/kf/cwip
- refs/heads/kf/cyclepostorder
- refs/heads/kf/effectpreconds
- refs/heads/kf/erroroptwip
- refs/heads/kf/expzerocase
- refs/heads/kf/fastsysimg
- refs/heads/kf/fieldtypetfuncunion
- refs/heads/kf/filestdio
- refs/heads/kf/forcedartemp
- refs/heads/kf/gallium
- refs/heads/kf/getfieldlowering
- refs/heads/kf/heappromote
- refs/heads/kf/hooks3
- refs/heads/kf/ia/conditionalbug
- refs/heads/kf/incomplete2
- refs/heads/kf/incomplete_type
- refs/heads/kf/inferencefaster
- refs/heads/kf/interphook
- refs/heads/kf/iter
- refs/heads/kf/iteratewip
- refs/heads/kf/jb/rm_deps_3
- refs/heads/kf/jscall
- refs/heads/kf/loosenhardlimit
- refs/heads/kf/magiccompilerdustforceleste2
- refs/heads/kf/magiccompilerdustforceleste3
- refs/heads/kf/magiccompilerdustforceleste4
- refs/heads/kf/mimedata
- refs/heads/kf/mmap
- refs/heads/kf/multiany
- refs/heads/kf/newclidrivers
- refs/heads/kf/newdinfo
- refs/heads/kf/notworkingbadwip
- refs/heads/kf/opaque_closures2
- refs/heads/kf/permuteddimssimilar
- refs/heads/kf/reclimit
- refs/heads/kf/refactortodo
- refs/heads/kf/replfixes
- refs/heads/kf/rmwatchers
- refs/heads/kf/sanitizermake
- refs/heads/kf/stdioredirect
- refs/heads/kf/switchwip
- refs/heads/kf/sysimglinkopenlibm
- refs/heads/kf/topush
- refs/heads/kf/tpu
- refs/heads/kf/tpu2
- refs/heads/kf/tpu3
- refs/heads/kf/typeoftypes
- refs/heads/kf/typeofvalid
- refs/heads/kf/unionpenalties2
- refs/heads/kf/unionsplit2
- refs/heads/kf/uvint32
- refs/heads/kf/wasm
- refs/heads/kf/wasm2
- refs/heads/kf/wasm3
- refs/heads/kf/wasm4
- refs/heads/kf/wine-check_ws
- refs/heads/kf/winefix2
- refs/heads/kf/winfix
- refs/heads/kf/wip
- refs/heads/kf/wrapintops
- refs/heads/kf/xlademo
- refs/heads/kp-improve-rl
- refs/heads/kp/disable-gc-atexit
- refs/heads/kp/fix-53325
- refs/heads/kp/old_partr
- refs/heads/kp/schedtask
- refs/heads/ksh/pkgtestset
- refs/heads/ksh/sockdoc
- refs/heads/ksh/transcode
- refs/heads/lh/bump-jls
- refs/heads/lh/dict-token-api
- refs/heads/lh/fix-typos
- refs/heads/lh/fix-typos-base
- refs/heads/lh/prepared-comparisons
- refs/heads/lh/stacktrace-reverse-print
- refs/heads/lh/typos-fixup-base
- refs/heads/lh/using-as
- refs/heads/master
- refs/heads/mb/I,broadcast
- refs/heads/mb/aliasscopebroadcast
- refs/heads/mb/inbounds-expression
- refs/heads/mb/outline-broadcast
- refs/heads/mb/recursive-cat
- refs/heads/mb/self-aliasing-broadcasts
- refs/heads/mb/thisshouldhaveoccurredtome
- refs/heads/mb/transpose
- refs/heads/mb/true28866
- refs/heads/mb/viewdefault
- refs/heads/mh/circular_types
- refs/heads/mh/ctor-inferability
- refs/heads/mh/fix-38327
- refs/heads/mh/fix-38364
- refs/heads/mh/fix-50548
- refs/heads/mh/fix-50617
- refs/heads/mh/improve-tmeet-for-vararg-partialstruct
- refs/heads/mh/patch_rdims
- refs/heads/mh/rework_apply
- refs/heads/mh/totuple_builtin
- refs/heads/mji/zygote
- refs/heads/mp/ssh-key-debug
- refs/heads/nhd-alloc-profiler-types+reasons
- refs/heads/nhd-apply-generic-stack-args
- refs/heads/nhd-channel-funcs-nospecialize
- refs/heads/nhd-fix-typo
- refs/heads/nhd-getindex-propagate_inbounds
- refs/heads/nhd-heap-snapshot-sampling-3
- refs/heads/nhd-parse-type
- refs/heads/nhd-test_logs-kwargs
- refs/heads/nhd/REPL-completions-usings
- refs/heads/nhd/names-usings
- refs/heads/nl/Dict
- refs/heads/nl/broadcast2
- refs/heads/nl/cat
- refs/heads/nl/length
- refs/heads/nl/mapreducedim
- refs/heads/ob/cttx
- refs/heads/ob/rref
- refs/heads/ob/stackmaps
- refs/heads/origin/kf/ccsisdefined
- refs/heads/os/better-givens
- refs/heads/oscardssmith-exhaustive-Float160-tests
- refs/heads/pc/codeinfo-args
- refs/heads/pc/codlayer8
- refs/heads/pc/gm-stack
- refs/heads/pc/more-licm
- refs/heads/pc/reoptimize
- refs/heads/pc/sleep
- refs/heads/pc/zone
- refs/heads/pepijndevos-constpropcrimes
- refs/heads/pop-abstractset
- refs/heads/pv-alloc-profile-wrap-pool-alloc
- refs/heads/release-0.1
- refs/heads/release-0.2
- refs/heads/release-0.3
- refs/heads/release-0.4
- refs/heads/release-0.5
- refs/heads/release-0.6
- refs/heads/release-0.7
- refs/heads/release-1.0
- refs/heads/release-1.1
- refs/heads/release-1.10
- refs/heads/release-1.11
- refs/heads/release-1.2
- refs/heads/release-1.3
- refs/heads/release-1.4
- refs/heads/release-1.5
- refs/heads/release-1.6
- refs/heads/release-1.7
- refs/heads/release-1.8
- refs/heads/release-1.9
- refs/heads/revert-22049-kf/memcpyopt
- refs/heads/revert-26854-kc/bump_pkg3_6
- refs/heads/revert-28319-kc/precompiler_build2
- refs/heads/revert-29494-kf/uncolon_recursion
- refs/heads/revert-37410-slurp_assignment
- refs/heads/revert-44205-patch-1
- refs/heads/revert-45153-heaphoist-fix
- refs/heads/revert-45677-revert-45195-vc/llvm_14.0.2
- refs/heads/revert-50466-dcn/fix-50419
- refs/heads/revert-52003-revert-29919-sb/reduce-empty
- refs/heads/revert-52086-jn/sort-nonvector-collect
- refs/heads/rf/Bit
- refs/heads/rf/broaden-hash
- refs/heads/rf/conv-str-regex
- refs/heads/rf/defaults
- refs/heads/rf/digits-unsigned-nonrecur
- refs/heads/rf/iter-access
- refs/heads/rf/merge-iter
- refs/heads/rf/ndigits-bases
- refs/heads/rf/pure-push
- refs/heads/rf/pure-push-iocontext
- refs/heads/rf/rand-distrib
- refs/heads/rf/rand-f16-shift
- refs/heads/rf/rand-same-same
- refs/heads/rf/rand/default_rng_dispatch
- refs/heads/rf/rand/hash-seed
- refs/heads/rf/randn-bigfloat
- refs/heads/rf/randn-fillarray
- refs/heads/rf/randperm-ndl
- refs/heads/rf/regex-partial
- refs/heads/rf/regex-testset
- refs/heads/rf/repl/simplify
- refs/heads/rf/repl/switch-mode
- refs/heads/rf/seed-rng
- refs/heads/rf/show/sorted
- refs/heads/rf/typed-hash
- refs/heads/rf/union-immutable-set
- refs/heads/rf/unmerge-merge
- refs/heads/rf/xoshiro/randn
- refs/heads/rf/zeros-bang
- refs/heads/sb/accumulate
- refs/heads/sb/float-div
- refs/heads/sb/libgit2/peel
- refs/heads/sb/reduce-and
- refs/heads/sb/sigfpe2
- refs/heads/sb/task-fenv
- refs/heads/sb/test-scope
- refs/heads/sb/tmstruct-utc
- refs/heads/sds/codegen_globals_wip
- refs/heads/sds/eachindex
- refs/heads/sds/extended_slurp2
- refs/heads/sds/fix_hash_factorization
- refs/heads/sds/inline_bindings
- refs/heads/sds/invalid_argument
- refs/heads/sds/ir_indent
- refs/heads/sds/iter_cartesian
- refs/heads/sds/less_demangle
- refs/heads/sds/named_opaque
- refs/heads/sds/nonstandard_expr_printing
- refs/heads/sds/prop_destruct_macroexpand
- refs/heads/sds/repl_paste
- refs/heads/sds/shell_complete
- refs/heads/sds/timestimes
- refs/heads/sds/tkf/type-capturing
- refs/heads/sds/typedglobals2
- refs/heads/sds/unesc_backslash_cmd
- refs/heads/sf/DO_NOT_DELETE_THIS_BRANCH_unbuildable_commits_test
- refs/heads/sf/altered_treehashes
- refs/heads/sf/armv7l_fixes
- refs/heads/sf/cedar
- refs/heads/sf/cedar2
- refs/heads/sf/core_o_rama
- refs/heads/sf/lazy_jlls
- refs/heads/sf/no_more_base_blas
- refs/heads/sf/patchelf_builddir_not_srccache
- refs/heads/sf/phi_node_replacement
- refs/heads/sf/simplify_threading_check
- refs/heads/sgj/Test.GenericDimensionful
- refs/heads/sgj/combiningchardisplay
- refs/heads/sgj/displaydigits
- refs/heads/sgj/hess_eig
- refs/heads/sgj/iteratedfunction
- refs/heads/sgj/mapreduce_pairwise
- refs/heads/sgj/no_Lm_start
- refs/heads/shell_mode_windows
- refs/heads/show-container-type
- refs/heads/sjk/spqr
- refs/heads/sk/debuginfo=none
- refs/heads/sk/hash_uint
- refs/heads/sk/highlander.alt
- refs/heads/sk/highlander.alt1
- refs/heads/sk/highlander.alt2
- refs/heads/sk/jl_rng_split-comment
- refs/heads/sk/libgit2-ssh-network-options
- refs/heads/sk/newchar
- refs/heads/sk/precompile-blacklist
- refs/heads/sk/stringstate
- refs/heads/sk/unzip
- refs/heads/sk/vendored-packages
- refs/heads/sk/void
- refs/heads/sk/winpaths
- refs/heads/sort_readdir
- refs/heads/srp/repl-undo
- refs/heads/staging
- refs/heads/stevengj-patch-1
- refs/heads/stevengj-patch-2
- refs/heads/stevengj-patch-3
- refs/heads/stevengj-patch-5
- refs/heads/tan/readdlm2
- refs/heads/tb/avoid_oom
- refs/heads/tb/codegen-norecursion
- refs/heads/tb/cuda
- refs/heads/tb/debug_intrinsics
- refs/heads/tb/dinfo_abspath
- refs/heads/tb/excstack_without_handler_backport
- refs/heads/tb/features
- refs/heads/tb/generator_error
- refs/heads/tb/have_fminmax
- refs/heads/tb/inference_hooks
- refs/heads/tb/ircompact_ssavalue_render
- refs/heads/tb/llvm_type_ctor
- refs/heads/tb/map!_boundschecks
- refs/heads/tb/method_lookup_assertion
- refs/heads/tb/pmb_test
- refs/heads/tb/pointerref_addrspace
- refs/heads/tb/poison
- refs/heads/tb/riscv
- refs/heads/tb/strip_as
- refs/heads/tb/task_debug_build
- refs/heads/tb/task_switch_hook
- refs/heads/tb/tdma
- refs/heads/tb/tpu
- refs/heads/teh-vc/serialize_partial_rebase
- refs/heads/teh/bcast_range
- refs/heads/teh/cache_native
- refs/heads/teh/checkindex_traits
- refs/heads/teh/doc_skip_warn
- refs/heads/teh/make_backref_just_visited
- refs/heads/teh/minmax_isless
- refs/heads/teh/pctools
- refs/heads/teh/serialize_partial_recache
- refs/heads/teh/shareindexes
- refs/heads/teh/tuple_limit
- refs/heads/teh/unwrap_isequal
- refs/heads/teh/valgrind-codegen-suppress
- refs/heads/tk/geev
- refs/heads/tkf/jltapir-pr
- refs/heads/topolarity-ct/macroexpand-no-toplevel-recursion
- refs/heads/v1.0
- refs/heads/vc-gb/pc/sleep
- refs/heads/vc/TTLI
- refs/heads/vc/aliasscopes
- refs/heads/vc/amdas
- refs/heads/vc/backport_threadsafety
- refs/heads/vc/bump_llvm
- refs/heads/vc/ccall_safe_gc
- refs/heads/vc/compiler_instance_v2
- refs/heads/vc/dsweep
- refs/heads/vc/dynamicdomtree
- refs/heads/vc/eabi_half
- refs/heads/vc/excise_random
- refs/heads/vc/external_functions_rebase
- refs/heads/vc/fattr_pgcstack
- refs/heads/vc/fixthreadswitching
- refs/heads/vc/float128
- refs/heads/vc/float128_basic
- refs/heads/vc/float16_intrinsics
- refs/heads/vc/gdb-pp
- refs/heads/vc/hwloc
- refs/heads/vc/instrumentations
- refs/heads/vc/int128_atomics
- refs/heads/vc/ittapi_integration
- refs/heads/vc/julia_cong
- refs/heads/vc/julia_vec_shm
- refs/heads/vc/libffi
- refs/heads/vc/libuv_lock
- refs/heads/vc/licm
- refs/heads/vc/llvm-11-svm-back
- refs/heads/vc/llvm-dialects
- refs/heads/vc/llvm11_debug
- refs/heads/vc/llvm11again
- refs/heads/vc/llvm8
- refs/heads/vc/llvm_undef
- refs/heads/vc/loop-unroll
- refs/heads/vc/mlir
- refs/heads/vc/no_copy_stacks
- refs/heads/vc/pappa_demo
- refs/heads/vc/pir
- refs/heads/vc/ppc-llvm6
- refs/heads/vc/ppc_fixes
- refs/heads/vc/ppc_llvm9_revert
- refs/heads/vc/ppc_patch
- refs/heads/vc/ppc_unix_signals
- refs/heads/vc/ppc_yield
- refs/heads/vc/pragmas
- refs/heads/vc/preload_zlib
- refs/heads/vc/remove_track_allocations
- refs/heads/vc/restored-1.0.1
- refs/heads/vc/round_even
- refs/heads/vc/rv_passes
- refs/heads/vc/smallints
- refs/heads/vc/tapir
- refs/heads/vc/tapir2_rts
- refs/heads/vc/tapir3-codegen-chi
- refs/heads/vc/tapir_build
- refs/heads/vc/tomlcc
- refs/heads/vc/tsan_nort
- refs/heads/vc/uring
- refs/heads/vc/vsts
- refs/heads/vc/wasm
- refs/heads/vc/wasm2
- refs/heads/vc/weakref_tasks
- refs/heads/vc/win_poolalignment
- refs/heads/vc/ws
- refs/heads/vc/x86low
- refs/heads/vc/yhls/dynamicdomtree
- refs/heads/vs/SparseArrays-bump-ss7.5.1
- refs/heads/vs/rm-openlibm
- refs/heads/yyc/arm/crc32c
- refs/heads/yyc/arm/fenv-0.5
- refs/heads/yyc/bigint
- refs/heads/yyc/codegen/eh
- refs/heads/yyc/codegen/local-push
- refs/heads/yyc/codegen/no-safepoint
- refs/heads/yyc/codegen/wb2
- refs/heads/yyc/dft_split
- refs/heads/yyc/dftnew_rebase
- refs/heads/yyc/gc-alloc
- refs/heads/yyc/gc-debug-env
- refs/heads/yyc/gc/safepoint-rt
- refs/heads/yyc/gc/thread-DO-NOT-merge
- refs/heads/yyc/less-getfield
- refs/heads/yyc/ovldot
- refs/heads/yyc/test/release-0.6
- refs/heads/yyc/tests/appveyor
- refs/heads/yyc/tests/arm
- refs/heads/yyc/tests/llvm39
- refs/heads/yyc/tests/master
- refs/heads/yyc/travis-test
- refs/heads/yyc/typeinf/egal
- refs/heads/yyc/typeinf/pure
- refs/heads/zierenberg-master
- refs/remotes/KC/kc/error_msgs
- refs/remotes/origin/avi/validwidenconst
- refs/remotes/origin/backports-release-1.6
- refs/remotes/origin/dcn-canonicalize-callable-names
- refs/remotes/origin/dcn/adjust-n-gc-threads
- refs/remotes/origin/sgj/readuntil_inplace
- refs/tags/v0.1
- refs/tags/v0.1.1
- refs/tags/v0.1.2
- refs/tags/v0.2.0-rc1
- refs/tags/v0.2.0-rc2
- refs/tags/v0.3.0
- refs/tags/v0.3.0-rc1
- refs/tags/v0.3.0-rc2
- refs/tags/v0.3.0-rc3
- refs/tags/v0.3.0-rc4
- refs/tags/v0.3.1
- refs/tags/v0.3.10
- refs/tags/v0.3.11
- refs/tags/v0.3.12
- refs/tags/v0.3.2
- refs/tags/v0.3.3
- refs/tags/v0.3.4
- refs/tags/v0.3.5
- refs/tags/v0.3.6
- refs/tags/v0.3.7
- refs/tags/v0.3.8
- refs/tags/v0.3.9
- refs/tags/v0.4.0
- refs/tags/v0.4.0-rc1
- refs/tags/v0.4.0-rc2
- refs/tags/v0.4.0-rc3
- refs/tags/v0.4.0-rc4
- refs/tags/v0.4.1
- refs/tags/v0.4.2
- refs/tags/v0.4.3
- refs/tags/v0.4.4
- refs/tags/v0.4.5
- refs/tags/v0.4.6
- refs/tags/v0.4.7
- refs/tags/v0.5.0
- refs/tags/v0.5.0-rc0
- refs/tags/v0.5.0-rc1
- refs/tags/v0.5.0-rc2
- refs/tags/v0.5.0-rc3
- refs/tags/v0.5.0-rc4
- refs/tags/v0.5.1
- refs/tags/v0.5.2
- refs/tags/v0.6.0
- refs/tags/v0.6.0-pre.alpha
- refs/tags/v0.6.0-pre.beta
- refs/tags/v0.6.0-rc1
- refs/tags/v0.6.0-rc2
- refs/tags/v0.6.0-rc3
- refs/tags/v0.6.1
- refs/tags/v0.6.2
- refs/tags/v0.6.3
- refs/tags/v0.6.4
- refs/tags/v0.7.0
- refs/tags/v0.7.0-alpha
- refs/tags/v0.7.0-beta
- refs/tags/v0.7.0-beta2
- refs/tags/v0.7.0-rc1
- refs/tags/v0.7.0-rc2
- refs/tags/v0.7.0-rc3
- refs/tags/v1.0.0
- refs/tags/v1.0.0-rc1
- refs/tags/v1.0.1
- refs/tags/v1.0.2
- refs/tags/v1.0.3
- refs/tags/v1.0.4
- refs/tags/v1.0.5
- refs/tags/v1.1.0
- refs/tags/v1.1.0-rc1
- refs/tags/v1.1.0-rc2
- refs/tags/v1.1.1
- refs/tags/v1.10.0
- refs/tags/v1.10.0-alpha1
- refs/tags/v1.10.0-beta1
- refs/tags/v1.10.0-beta2
- refs/tags/v1.10.0-beta3
- refs/tags/v1.10.0-rc1
- refs/tags/v1.10.0-rc2
- refs/tags/v1.10.0-rc3
- refs/tags/v1.10.1
- refs/tags/v1.10.2
- refs/tags/v1.11.0-alpha1
- refs/tags/v1.11.0-alpha2
- refs/tags/v1.2.0
- refs/tags/v1.2.0-rc1
- refs/tags/v1.2.0-rc2
- refs/tags/v1.2.0-rc3
- refs/tags/v1.3.0
- refs/tags/v1.3.0-alpha
- refs/tags/v1.3.0-rc1
- refs/tags/v1.3.0-rc2
- refs/tags/v1.3.0-rc3
- refs/tags/v1.3.0-rc4
- refs/tags/v1.3.0-rc5
- refs/tags/v1.3.1
- refs/tags/v1.4.0
- refs/tags/v1.4.0-rc1
- refs/tags/v1.4.0-rc2
- refs/tags/v1.4.1
- refs/tags/v1.4.2
- refs/tags/v1.5.0
- refs/tags/v1.5.0-beta1
- refs/tags/v1.5.0-rc1
- refs/tags/v1.5.0-rc2
- refs/tags/v1.5.1
- refs/tags/v1.5.2
- refs/tags/v1.5.3
- refs/tags/v1.5.4
- refs/tags/v1.6.0
- refs/tags/v1.6.0-beta1
- refs/tags/v1.6.0-rc1
- refs/tags/v1.6.0-rc2
- refs/tags/v1.6.0-rc3
- refs/tags/v1.6.1
- refs/tags/v1.6.2
- refs/tags/v1.6.3
- refs/tags/v1.6.4
- refs/tags/v1.6.5
- refs/tags/v1.6.6
- refs/tags/v1.6.7
- refs/tags/v1.7.0
- refs/tags/v1.7.0-beta1
- refs/tags/v1.7.0-beta2
- refs/tags/v1.7.0-beta3
- refs/tags/v1.7.0-beta4
- refs/tags/v1.7.0-rc1
- refs/tags/v1.7.0-rc2
- refs/tags/v1.7.0-rc3
- refs/tags/v1.7.1
- refs/tags/v1.7.2
- refs/tags/v1.7.3
- refs/tags/v1.8.0
- refs/tags/v1.8.0-beta1
- refs/tags/v1.8.0-beta2
- refs/tags/v1.8.0-beta3
- refs/tags/v1.8.0-rc1
- refs/tags/v1.8.0-rc2
- refs/tags/v1.8.0-rc3
- refs/tags/v1.8.0-rc4
- refs/tags/v1.8.1
- refs/tags/v1.8.2
- refs/tags/v1.8.3
- refs/tags/v1.8.4
- refs/tags/v1.8.5
- refs/tags/v1.9.0
- refs/tags/v1.9.0-alpha1
- refs/tags/v1.9.0-beta1
- refs/tags/v1.9.0-beta2
- refs/tags/v1.9.0-beta3
- refs/tags/v1.9.0-beta4
- refs/tags/v1.9.0-rc1
- refs/tags/v1.9.0-rc2
- refs/tags/v1.9.0-rc3
- refs/tags/v1.9.1
- refs/tags/v1.9.2
- refs/tags/v1.9.3
- refs/tags/v1.9.4
Permalinks
To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.
Revision | Author | Date | Message | Commit Date |
---|---|---|---|---|
036e28d | Kristoffer | 29 September 2022, 21:09:34 UTC | allow to use SubString{String} in TOML parser | 29 September 2022, 21:09:34 UTC |
6e1e6fa | Glen Hertz | 29 September 2022, 19:13:05 UTC | Add `filter(func)` method (#41173) Add `filter(func)` method | 29 September 2022, 19:13:05 UTC |
f346735 | Jameson Nash | 29 September 2022, 18:52:37 UTC | avoid timing race in async test (#46941) This is the test from #27164. The test was checking whether sleep(1) (which is started first) or sleep(0.05) (which is nominally shorter) returned first. Use an Event instead so that they are explicitly ordered. Fixes #46360 | 29 September 2022, 18:52:37 UTC |
6863249 | Elliot Saba | 29 September 2022, 16:20:59 UTC | [LBT] Bump to v5.2.0 (#46960) This should fix issues on i686 linux and using Accelerate on aarch64 darwin. LBT itself is now much more thoroughly tested [0]. [0] https://buildkite.com/julialang/libblastrampoline | 29 September 2022, 16:20:59 UTC |
9fd4087 | Daniel Karrasch | 29 September 2022, 08:30:58 UTC | Generalize 2-arg `eigen` towards `AbstractMatrix` (#46797) | 29 September 2022, 08:30:58 UTC |
9118373 | Jameson Nash | 29 September 2022, 07:02:14 UTC | [FileWatching] improve lock_times test (#46942) Make this test slightly stricter to pass, to try to investigate #45982 better. | 29 September 2022, 07:02:14 UTC |
4b042c8 | Jameson Nash | 29 September 2022, 07:00:45 UTC | gf: detect more ambiguities (#46922) As long as we find at least one other method that conflicts fully, we know they will exist together for all subtypes, and always be ambiguous for all subtypes too. This is already the algorithm used by method insertion to decide if the new method is ambiguous with a "missing" method. Fix #46601 | 29 September 2022, 07:00:45 UTC |
5588623 | Jameson Nash | 29 September 2022, 06:53:32 UTC | remove bad test from get_updated_dict (#46944) PR #42328 (21ebabf7904061b4283b4428efa8fa4d6e8d0bc6) already fixed issue #35217 by removing the bad test. Now also remove the nonsensical comment condition from loading.jl. | 29 September 2022, 06:53:32 UTC |
170d643 | Jameson Nash | 29 September 2022, 06:51:37 UTC | codegen: fix compute_va_type issue with Type (#46953) Issue noted in #42498. This should be the same as Core.Compiler.tuple_tfunc. Otherwise we might accidentally constant-fold something like: code_llvm((x...) -> x isa Tuple{Type{Tuple{Any}},Int}, (Type{Tuple{Any}}, Int)) to return true. This is rarely a compile-sig in practice, so it does not usually affect code, but is observable there in the IR. | 29 September 2022, 06:51:37 UTC |
8e44510 | Udoh Jeremiah | 29 September 2022, 06:44:54 UTC | doc: add return type for ^ operator for strings (#46884) | 29 September 2022, 06:44:54 UTC |
7364207 | Udoh Jeremiah | 29 September 2022, 06:43:31 UTC | function signature for the "^" operator for regex (#46885) | 29 September 2022, 06:43:31 UTC |
ebaf4c8 | Udoh Jeremiah | 29 September 2022, 06:42:46 UTC | doc: update example on % for integers (#46893) | 29 September 2022, 06:42:46 UTC |
594fcd8 | Udoh Jeremiah | 29 September 2022, 06:39:29 UTC | doc: ndigits relationship with zero (#46900) | 29 September 2022, 06:39:29 UTC |
c548bd3 | Shuhei Kadowaki | 29 September 2022, 06:33:28 UTC | irinterp: clean up IR abstract interpretation subroutines [NFC] (#46917) * clean up `reprocess_instruction!` * setup `IRInterpretationState` for irinterp state management | 29 September 2022, 06:33:28 UTC |
75e96c5 | Erik Schnetter | 29 September 2022, 01:41:57 UTC | Correct typographical error in comment (#46959) | 29 September 2022, 01:41:57 UTC |
e7a5c36 | Tim Besard | 28 September 2022, 15:01:17 UTC | reland "Fix serialization of code instances" (#46939) If they are encountered in a Julia object directly, as opposed to e.g. during serialization of a method instance, we'll have first populated the backref table as part of jl_serialize_value, so we need to skip that check during code instance serialization. | 28 September 2022, 15:01:17 UTC |
b2c2abf | Jameson Nash | 28 September 2022, 14:18:20 UTC | Revert "Inlining: Remove outdated code path for GlobalRef movement (#46880)" (#46951) This reverts commit cda61ef68f49cab66f45b731b7cffbb79a1d3c90. This seems to be exposing (or less likely actually causing) some problems with GC rooting, dead-code elimination, and/or valid IR: #46940 and #46943 | 28 September 2022, 14:18:20 UTC |
3e0cd2c | Tim Besard | 28 September 2022, 14:17:48 UTC | IncrementalCompact: always show the separator. (#46946) There was an off-by-one error, but always showing the separator is even clearer, and consistent with how it's shown at the top when nothing has been compacted yet. | 28 September 2022, 14:17:48 UTC |
1afa368 | Dilum Aluthge | 28 September 2022, 06:36:02 UTC | Revert "Fix serialization of code instances. (#46373)" (#46936) This reverts commit ff4f86dce6660f717b2978ef9d9123f1ec3393ea. | 28 September 2022, 06:36:02 UTC |
d575b2e | apaz | 28 September 2022, 00:09:47 UTC | avoid a spurious use-after-realloc warning from gcc [NFC] (#46923) Co-authored-by: apaz-cli <Aaron.Pazdera@JuliaComputing.com> | 28 September 2022, 00:09:47 UTC |
6db1006 | Keno Fischer | 27 September 2022, 22:09:51 UTC | irinterp: Don't try to access undefined phi values (#46930) We don't see this case very often (or at all) on master, because complicated control flow structures are often not eligible for semi-concrete eval. But let's fix it anyway. | 27 September 2022, 22:09:51 UTC |
f1c4d54 | Fredrik Ekre | 27 September 2022, 19:15:51 UTC | Fix shift direction of circshift! for vectors (#46759) This patch fixes the shifting direction for circshift!(x::AbstractVector, n::Integer), which was opposite the direction of circshift(x, n) and circshift!(y, x, n). In addition, this patch fixes the method to also work correctly with offset arrays. Fixes #46533. | 27 September 2022, 19:15:51 UTC |
757f21e | Perry Fraser | 27 September 2022, 17:24:46 UTC | Don't error when transposing an empty buffer (#46925) | 27 September 2022, 17:24:46 UTC |
cda61ef | Keno Fischer | 27 September 2022, 15:48:05 UTC | Inlining: Remove outdated code path for GlobalRef movement (#46880) * Inlining: Remove outdated code path for GlobalRef movement We used to not allow GlobalRef in PhiNode at all (because they could have side effects). However, we then change the IR to make side-effecting GlobalRefs illegal in statement position in general, so now PhiNodes values are just regular value position, so there's no reason any more to try to move GlobalRefs out to statement position in inlining. Moreover, doing so introduces a bunch of unnecesary GlobalRefs that weren't being moved back. We could fix that separately by setting appropriate flags, but it's simpler to just get rid of this special case entirely. * Update test/compiler/inline.jl | 27 September 2022, 15:48:05 UTC |
ff4f86d | Tim Besard | 27 September 2022, 13:47:48 UTC | Fix serialization of code instances. (#46373) If they are encountered in a Julia object directly, as opposed to e.g. during serialization of a method instance, we'll have first populated the backref table as part of jl_serialize_value, so we need to skip that check during code instance serialization. | 27 September 2022, 13:47:48 UTC |
cb46d71 | DilumAluthgeBot | 27 September 2022, 13:20:15 UTC | 🤖 Bump the SuiteSparse stdlib from ed89e0f to e8285dd (#46919) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> | 27 September 2022, 13:20:15 UTC |
418edd3 | Camillo Schenone | 27 September 2022, 11:44:31 UTC | Reorder FileEvent field names in the documentation (#46905) When printing a FileEvent the user sees a text in the format `"path" => FileWatching.FileEvent(bool, bool, bool)` and by reading the documentation the user expect the three booleans to correspond to `changed`, `renamed`, `timedout` while instead the correct order is `renamed`, `changed`, `timedout`. This is just a correction to that. | 27 September 2022, 11:44:31 UTC |
698beed | Tim Holy | 27 September 2022, 09:54:25 UTC | Precompile correct invoke-targets (#46907) This fixes backedge-based invalidation when a precompiled `invoke` is followed by loading a package that adds new specializations for the `invoke`d method. An example is LowRankApprox.jl, where FillArrays adds a specialization to `unique`. | 27 September 2022, 09:54:25 UTC |
6fdcfd4 | Fredrik Ekre | 27 September 2022, 08:37:50 UTC | Update SparseArrays dependency (#46790) This patch updates SparseArrays. In particular it contains https://github.com/JuliaSparse/SparseArrays.jl/pull/260 which is necessary to make progress in #46759. All changes: - Fix ambiguities with Base. (https://github.com/JuliaSparse/SparseArrays.jl/pull/268) - add == for vectors (https://github.com/JuliaSparse/SparseArrays.jl/pull/248) - add undef initializers (https://github.com/JuliaSparse/SparseArrays.jl/pull/263) - Make sure reductions benefit from sparsity (https://github.com/JuliaSparse/SparseArrays.jl/pull/244) - Remove fkeep! from the documentation (https://github.com/JuliaSparse/SparseArrays.jl/pull/261) - Fix direction of circshift (https://github.com/JuliaSparse/SparseArrays.jl/pull/260) - Fix `vcat` of sparse vectors with numbers (https://github.com/JuliaSparse/SparseArrays.jl/pull/253) - decrement should always return a vector (https://github.com/JuliaSparse/SparseArrays.jl/pull/241) - change order of arguments in fkeep, fix bug with fixed elements (https://github.com/JuliaSparse/SparseArrays.jl/pull/240) - Sparse matrix/vectors with fixed sparsity pattern. (https://github.com/JuliaSparse/SparseArrays.jl/pull/201) | 27 September 2022, 08:37:50 UTC |
6c0aa6d | Hendrik Ranocha | 27 September 2022, 06:50:50 UTC | improve type stability of `handle_message(logger, ...` (#46906) | 27 September 2022, 06:50:50 UTC |
8003563 | William Moses | 26 September 2022, 21:35:04 UTC | Don't crash on variable sized gc allocations (#46914) | 26 September 2022, 21:35:04 UTC |
d97f248 | Elliot Saba | 26 September 2022, 18:23:15 UTC | [win] Disable MSYS2 path munging when calling `is.exe` (#46867) Tragically, I believe MSYS2 is messing with options such as `/VERYSILENT` turning them instead into `C:\msys2\VERYSILENT` or similar. | 26 September 2022, 18:23:15 UTC |
26304f7 | Keno Fischer | 26 September 2022, 12:02:57 UTC | lattice: Properly percolate down `tmerge` (#46881) We were skipping the parent lattice of the partials lattice, which may make external lattice implementation nonfunctional. Co-authored-by: Shuhei Kadowaki <40514306+aviatesk@users.noreply.github.com> | 26 September 2022, 12:02:57 UTC |
c0d5ffb | Keno Fischer | 26 September 2022, 07:27:47 UTC | irinterp: Add a hook for control-dependent phi evaluation (#46883) External AbstractInterpreters may want to modify the lattice elements of a phi to track additional information (e.g. by inspecting the branch condition of the idom). Currently, we don't pass enough information down to make this happen, so add a hook function that also takes (ir, idx) and a lazy domtree. Admittedly this is a bit ad-hoc, and would probably be better with some sort of general analysis manager, but this'll do for now. | 26 September 2022, 07:27:47 UTC |
60ee22c | Shuhei Kadowaki | 26 September 2022, 06:51:07 UTC | follow up #46897, improve type stability (#46909) | 26 September 2022, 06:51:07 UTC |
d5cde86 | Lilith Orion Hafner | 25 September 2022, 09:55:10 UTC | Don't prompt field names for tuples at the REPL (#46897) | 25 September 2022, 09:55:10 UTC |
e6d9979 | N5N3 | 24 September 2022, 14:32:19 UTC | Set `intersection = 1` during `intersect_sub_datatype` (#46882) | 24 September 2022, 14:32:19 UTC |
b43bc62 | Tim Holy | 24 September 2022, 13:00:24 UTC | Improve attribution of backedge-triggered invalidation (#46756) SnoopCompile attempts to attribute invalidations to specific causes, but until now it has not generally been able to handle what it called "delayed" invalidations, which arose when a MethodInstance backedge wasn't valid anymore. This dumps more data to the reporting stream and should allow SnoopCompile to assemble the full chain of causes. This also adds invalidation of the backedges of methods that fail to validate their external edges. | 24 September 2022, 13:00:24 UTC |
24cb92d | Jeff Bezanson | 23 September 2022, 06:14:47 UTC | use `invokelatest` to call `REPL.active_module` (#46866) REPL_MODULE_REF might be populated during execution, in which case we won't be able to see REPL methods yet. | 23 September 2022, 06:14:47 UTC |
ea9914e | Shuhei Kadowaki | 22 September 2022, 17:30:59 UTC | add simple test cases for [post-]domination analysis (#46860) | 22 September 2022, 17:30:59 UTC |
45623a8 | Jameson Nash | 22 September 2022, 16:33:49 UTC | staticdata: avoid needing unaligned loads, support 64-bit images (#46683) No functional changes intended here. | 22 September 2022, 16:33:49 UTC |
15f8fad | Lilith Orion Hafner | 22 September 2022, 11:10:48 UTC | Uncomment out bitset test (#46847) | 22 September 2022, 11:10:48 UTC |
a959ed8 | Keno Fischer | 22 September 2022, 09:29:13 UTC | Fix small logic bug in finalizer inlining Found while testing bigger examples. Fixes the logic introduced in #46651 | 22 September 2022, 09:29:13 UTC |
e636342 | Keno Fischer | 22 September 2022, 09:28:25 UTC | Add assume_fatal_throw optimizer option (#46856) This option frees the optimizer from having to prove nothrow in order to move certain side effects across call sites. It is currently enabled in finalizer inlining, but there may be opportunities to use it elsewhere in the future, as well as potentially plumbing it down to LLVM. The intended use case is not in the main compilation pipeline, but rather for alternative compilation modes where thrown errors are fatal and the state of the heap can not be observed after a thrown error. | 22 September 2022, 09:28:25 UTC |
70fa9b1 | Valentin Churavy | 22 September 2022, 06:15:36 UTC | Update to 14.0.6+0 (#46842) | 22 September 2022, 06:15:36 UTC |
892f76e | Ian Atol | 22 September 2022, 04:32:15 UTC | Minor cleanup to follow up 45062 (#46832) | 22 September 2022, 04:32:15 UTC |
62ac26a | Shuhei Kadowaki | 21 September 2022, 22:59:37 UTC | inlining: relax `finalizer` inlining control-flow restriction (#46651) Eager `finalizer` inlining (#45272) currently has a restriction that requires all the def/uses to be in a same basic block. This commit relaxes that restriction a bit by allowing def/uses to involve control flow when all of them are dominated by a `finalizer` call to be inlined, since in that case it is safe to insert the body of `finalizer` at the end of all the def/uses, e.g. ```julia const FINALIZATION_COUNT = Ref(0) init_finalization_count!() = FINALIZATION_COUNT[] = 0 get_finalization_count() = FINALIZATION_COUNT[] @noinline add_finalization_count!(x) = FINALIZATION_COUNT[] += x @noinline Base.@assume_effects :nothrow safeprint(io::IO, x...) = (@nospecialize; print(io, x...)) mutable struct DoAllocWithFieldInter x::Int end function register_finalizer!(obj::DoAllocWithFieldInter) finalizer(obj) do this add_finalization_count!(this.x) end end function cfg_finalization3(io) for i = -999:1000 o = DoAllocWithFieldInter(i) register_finalizer!(o) if i == 1000 safeprint(io, o.x, '\n') elseif i > 0 safeprint(io, o.x) end end end let src = code_typed1(cfg_finalization3, (IO,)) @test count(isinvoke(:add_finalization_count!), src.code) == 1 end let init_finalization_count!() cfg_finalization3(IOBuffer()) @test get_finalization_count() == 1000 end ``` To support this transformation, the domtree code also gains the ability to represent post-dominator trees, which is generally useful. | 21 September 2022, 22:59:37 UTC |
72be01b | pchintalapudi | 21 September 2022, 22:10:49 UTC | Insert bitcast after any additional phi nodes (#46854) Adjust bitcast insertion point to after any phi nodes | 21 September 2022, 22:10:49 UTC |
ff62f84 | DilumAluthgeBot | 21 September 2022, 21:50:07 UTC | 🤖 Bump the NetworkOptions stdlib from 4d3df64 to 8ce1e10 (#46853) Co-authored-by: Dilum Aluthge <dilum@aluthge.com> | 21 September 2022, 21:50:07 UTC |
2bd5a44 | pchintalapudi | 21 September 2022, 17:49:24 UTC | Track JITLink-allocated bytes (#46823) * Track JITLink-allocated bytes * Address review formatting | 21 September 2022, 17:49:24 UTC |
d093a1a | Keno Fischer | 21 September 2022, 15:36:21 UTC | Remove unused optimizer params (#46848) | 21 September 2022, 15:36:21 UTC |
d4f0567 | Jameson Nash | 21 September 2022, 13:01:33 UTC | dump: implement cycle handling in has_backedge_to_worklist (#46749) | 21 September 2022, 13:01:33 UTC |
ed01ee0 | Jameson Nash | 21 September 2022, 11:27:34 UTC | ccall: handle Union appearing as a field-type without crashing (#46787) We disallow union as the direct type, so perhaps we should disallow it as a field-type also, but since we do allow references in those cases typically, we will allow this also. Also DRY the emit_global code, since it had bit-rotted relative to the usual code path through emit_globalref (and apparently could still be run though for handling the first argument to cfunction). Fix #46786 | 21 September 2022, 11:27:34 UTC |
bb7c7eb | Jameson Nash | 21 September 2022, 11:27:15 UTC | [GCChecker] report FunctionDecl and type for missing JL_NOTSAFEPOINT calls (#46834) In C++, some calls are implicit, which makes the call alone ambiguous and the message unclear. This helps clarify it. | 21 September 2022, 11:27:15 UTC |
91d8e38 | Jameson Nash | 21 September 2022, 11:26:57 UTC | inference: remove allocation hot-spot exposed by Profile.Allocs examination (#46843) This Union{Pair,Nothing} accounted for several % of total inference allocations, and might stack-overflow on very large numbers of basic blocks with very unusual structures. | 21 September 2022, 11:26:57 UTC |
d7158dc | Mason Protter | 21 September 2022, 01:28:02 UTC | Update interfaces.md (#46833) AbstractArrays have never been required to be mutable, and we have many subtypes of `AbstractArray` in `Base` and `LinearAlgebra` that do not implement `setindex!` since they are immutable, or only implement it for a subset of their indices (e.g. `CartesianIndices`, the various range types, `Symmetric`, `Hermitian`, `Diagonal`, ). There is also a lot of hope and plans for more immutable, dynamic array support from Base, and of course a rich set of immutable arrays out there in the package ecosystem which do not have `setindex!` | 21 September 2022, 01:28:02 UTC |
ffa76f9 | Udoh Jeremiah | 21 September 2022, 01:26:00 UTC | consistency on typemax and typemin docs (#46827) * consistency on typemax and typemin docs The `typemax` and `typemin` docs isn't consistent with each other on its examples and `see also` section (see reasons below). While this isn't an issue when looking up the function with `help>` to work with integers, for floating-point types, its a big deal because: - On the `typemax` examples, there is a very good example there with a great comment, pointing users on to look into `floatmax`, if `typemax` doesn't serves them; but the `typemin` doesn't have this - which isn't great, since both `typemax` and `typemin` have great use. - The `see also` section on `typemax` point users to other available functions which might prove or introduce other points to consider if `typemax` isn't what they're looking for; for `typemin`, this isn't present. I provided examples on integers, just so the function isn't thought of like working for only floating points. Moreover, I feel like the current docs were written assuming users would always lookup `typemin` and `typemax` in `help>`, before using anyone of them. Most time this is true, but I think it's best not to assume. | 21 September 2022, 01:26:00 UTC |
67f994c | Keno Fischer | 20 September 2022, 23:11:31 UTC | Fix SROA miscompile in large functions (#46819) * Fix SROA miscompile in large functions During the development of #46775, we saw a miscompile in the compiler, specifically, we saw SROA failing to provide a proper PHI nest. The root cause of this turned out to be an incorrect dominance query. In particular, during incremental compaction, the non-compacted portion of the IncrementalCompact cfg is allocated, but not valid, so we must not query it for basic block information. Unfortunately, I don't really have a good test case for this. This code has grown mostly organically for a few years, and I think it's probably overdue for an overhaul. * optimizer: address TODO for computing `joint_effects` more efficiently Co-authored-by: Shuhei Kadowaki <aviatesk@gmail.com> | 20 September 2022, 23:11:31 UTC |
caf544b | pchintalapudi | 20 September 2022, 17:02:56 UTC | Deduplicate lifted PHI node edges (#46662) * Deduplicate lifted PHI node edges * Add gc lowering test * Simplify and clean up test case * Remove assertion for now | 20 September 2022, 17:02:56 UTC |
276af84 | Udoh Jeremiah | 20 September 2022, 12:57:34 UTC | use native Julia code in round example (#46841) | 20 September 2022, 12:57:34 UTC |
89c4a2a | Tim Besard | 20 September 2022, 07:05:38 UTC | Merge pull request #46796 from JuliaLang/tb/libuv Expose constrained memory limits and have the GC use them. | 20 September 2022, 07:05:38 UTC |
b6d2434 | Kristoffer Carlsson | 20 September 2022, 06:07:35 UTC | set number of openblas threads to 1 while precompiling (#46792) | 20 September 2022, 06:07:35 UTC |
417cdca | Udoh Jeremiah | 20 September 2022, 03:38:18 UTC | clear info on the exponent function (#46815) Co-authored-by: Daniel Karrasch <daniel.karrasch@posteo.de> | 20 September 2022, 03:38:18 UTC |
88ec96a | Shuhei Kadowaki | 20 September 2022, 00:21:13 UTC | compiler: some minor NFC clean-ups (#46835) | 20 September 2022, 00:21:13 UTC |
d354662 | Tim Besard | 19 September 2022, 12:10:03 UTC | Adapt GC to new APIs. | 19 September 2022, 20:28:53 UTC |
00f8938 | Tim Besard | 16 September 2022, 14:33:30 UTC | Expose constrained memory as Sys.(total|free)_memory; add Sys.physical_(total_free)_memory. | 19 September 2022, 20:28:53 UTC |
22f8faf | Tim Besard | 16 September 2022, 09:43:44 UTC | Bump libuv. | 19 September 2022, 20:25:20 UTC |
8af6731 | Kristoffer Carlsson | 19 September 2022, 13:13:19 UTC | typeassert `get` from `IOContext` (#46828) | 19 September 2022, 13:13:19 UTC |
eea2ca7 | Kristoffer Carlsson | 19 September 2022, 11:42:03 UTC | elaborate on how to check `:compact` on `IOContext` (#46826) * elaborate on how to check `:compact` on `IOContext` Co-authored-by: Shuhei Kadowaki <40514306+aviatesk@users.noreply.github.com> | 19 September 2022, 11:42:03 UTC |
21e8c7c | Kristoffer Carlsson | 19 September 2022, 08:16:31 UTC | Merge pull request #46781 from JuliaLang/kc/output_prompts Redo of "Add ability to add output prefixes to the REPL output and use that to implement an IPython mode" | 19 September 2022, 08:16:31 UTC |
16e9f4b | Shuhei Kadowaki | 19 September 2022, 01:35:40 UTC | follow up #46775, add missing annotations (#46817) | 19 September 2022, 01:35:40 UTC |
f794bdd | Shuhei Kadowaki | 18 September 2022, 10:14:10 UTC | follow up #46799, add test case for `CachedMethodTable` (#46818) | 18 September 2022, 10:14:10 UTC |
86e0c6a | Udoh Jeremiah | 18 September 2022, 01:00:01 UTC | fix typo on TwicePrecision docs (#46813) | 18 September 2022, 01:00:01 UTC |
433b11f | Shuhei Kadowaki | 18 September 2022, 00:49:25 UTC | NFC: simplify the default `limit` setting of `Core.Compiler.findall` (#46809) Use `limit=-1` instead of `limit=Int(typemax(Int32))`. | 18 September 2022, 00:49:25 UTC |
b3f25d7 | Keno Fischer | 17 September 2022, 22:01:55 UTC | inlining: Also apply statement effects when declining to inline (#46775) * inlining: Also apply statement effects when declining to inline When inlining, we already determine what the effects for all the different cases are, so that we can apply appropriate statement flags on each of the edges. However, if for some reason we decided to decline to inline, we weren't making use of this information. Fix that. * make it work. Co-authored-by: Shuhei Kadowaki <aviatesk@gmail.com> | 17 September 2022, 22:01:55 UTC |
b6cabf3 | Keno Fischer | 17 September 2022, 22:01:06 UTC | Use more of the actual inliner in finalizer inlining (#46753) * Use more of the actual inliner in finalizer inlining Currently the special-case inliner for finalizer generated incorrect code for unmatched sparams (which we had a test for, but which was unfortunately broken) and varargs (which we did not have a test for). Of course, we handle these cases correctly in actual inlining, so do some light refactoring to share more code between the two inlining paths. * Update base/compiler/ssair/inlining.jl Co-authored-by: Ian Atol <ian.atol@juliacomputing.com> Co-authored-by: Ian Atol <ian.atol@juliacomputing.com> | 17 September 2022, 22:01:06 UTC |
defc396 | Elliot Saba | 17 September 2022, 17:36:26 UTC | Disable MSYS2's path munging for `stringreplace` (#46803) This was causing our rewriting of the loader's RPATH emulation to fail after running `make install`, as MSYS2 was rewriting our list that looks like: ``` ../bin/libgcc_s_seh-1.dll:../bin/libopenlibm.dll:@../bin/libjulia-internal.dll:@../bin/libjulia-codegen.dll: ``` Into one that looked like: ``` ..\bin\libgcc_s_seh-1.dll;..\bin\libopenlibm.dll;@..\bin\libjulia-internal.dll;@..\bin\libjulia-codegen.dll; ``` By exporting `MSYS2_ARG_CONV_EXCL='*'` for all `stringreplace` invocations, we dodge this issue, as documented by MSYS2 [0]. [0] https://www.msys2.org/wiki/Porting/#filesystem-namespaces | 17 September 2022, 17:36:26 UTC |
c165aeb | Sagnac | 17 September 2022, 12:31:36 UTC | REPL docs: Document existing ^U keybind (#46811) This keybinding currently exists in Julia and is functional, but it wasn't mentioned in the manual. | 17 September 2022, 12:31:36 UTC |
1843ea3 | Udoh Jeremiah | 17 September 2022, 05:49:08 UTC | Typo error on REPL section (#46807) | 17 September 2022, 05:49:08 UTC |
2ef4aba | pchintalapudi | 17 September 2022, 05:47:13 UTC | Changes to support LLVM15 compilation (#46788) | 17 September 2022, 05:47:13 UTC |
e24dd3b | Shuhei Kadowaki | 17 September 2022, 02:59:15 UTC | inference: make `limit::Int` as a caching key of `CachedMethodTable` (#46799) Sometimes `Core.Compiler.findall(::Type, ::CachedMethodTable; limit::Int)` is called with different `limit` setting (in particularity `return_type_tfunc` calls it with `limit=-1`). The query should return different results given different `limit` settings, so its cache should also have different keys per different `limit` settings. fix #46722 | 17 September 2022, 02:59:15 UTC |
81f6c23 | Tim Besard | 16 September 2022, 19:52:42 UTC | Windows build improvements (#46793) * Include unistd.h to silence compilation warning. * Error when running in a MSYS shell. | 16 September 2022, 19:52:42 UTC |
260e986 | pchintalapudi | 16 September 2022, 16:18:04 UTC | Add julia pass pipeline to opt (#46191) * Use NewPM for optimization unless ASAN is in effect * Disable NewPM by default * Add julia pass pipeline to opt * Update llvm devdocs | 16 September 2022, 16:18:04 UTC |
54b4a53 | KristofferC | 24 August 2022, 08:11:10 UTC | add an ipython mode on top of the output prefix functionality | 16 September 2022, 14:01:46 UTC |
03ed550 | Daniel Karrasch | 16 September 2022, 10:50:19 UTC | Remove unnecessary `reducedim_init` specialization (#46777) | 16 September 2022, 10:50:19 UTC |
a7bef77 | Dilum Aluthge | 16 September 2022, 09:46:16 UTC | Make the "system image too large" error message more descriptive (#46570) | 16 September 2022, 09:46:16 UTC |
8c00e17 | Sobhan Mohammadpour | 16 September 2022, 09:43:59 UTC | Fix `mapreduce` on `AdjOrTrans` (#46605) Co-authored-by: Daniel Karrasch <Daniel.Karrasch@posteo.de> Co-authored-by: Daniel Karrasch <Daniel.Karrasch@posteo.de> Co-authored-by: Martin Holters <martin.holters@hsu-hh.de> | 16 September 2022, 09:43:59 UTC |
174b893 | Morten Piibeleht | 16 September 2022, 09:41:22 UTC | doc: guard release branch regex with ^...$ (#46647) | 16 September 2022, 09:41:22 UTC |
0fabe54 | Thomas Christensen | 15 September 2022, 15:29:38 UTC | Help inference of uninferred callers of `read(::IO, ::Type{String})` (#46577) | 15 September 2022, 15:29:38 UTC |
3d3f9ae | KristofferC | 24 August 2022, 07:47:22 UTC | add ability to add an output prefix to the REPL output | 15 September 2022, 14:48:29 UTC |
4026246 | Keno Fischer | 15 September 2022, 14:46:08 UTC | Add effect modeling for Core.compilerbarrier (#46772) The compiler barrier itself doesn't have any effects, though of course by pessimizing type information, it may prevent the compiler from discovering effect information it would have otherwise obtained. Nevertheless, particularly the weaker barriers like `:const` and `:conditional` should not, by themselves taint any effects. | 15 September 2022, 14:46:08 UTC |
00ea165 | Keno Fischer | 15 September 2022, 14:45:47 UTC | Cache binding pointer in GlobalRef (#46729) On certain workloads, profiling shows a surprisingly high fraction of inference time spent looking up bindings in modules. Bindings use a hash table, so they're expected to be quite fast, but certainly not zero. A big contributor to the problem is that we do basically treat it as zero, looking up bindings for GlobalRefs multiple times for each statement (e.g. in `isconst`, `isdefined`, to get the types, etc). This PR attempts to improve the situation by adding an extra field to GlobalRef that caches this lookup. This field is not serialized and if not set, we fallback to the previous behavior. I would expect the memory overhead to be relatively small, since we do intern GlobalRefs in memory to only have one per binding (rather than one per use). # Benchmarks The benchmarks look quite promising. Consider this artifical example (though it's actually not all that far fetched, given some of the generated code we see): ``` using Core.Intrinsics: add_int const ONE = 1 @eval function f(x, y) z = 0 $([:(z = add_int(x, add_int(z, ONE))) for _ = 1:10000]...) return add_int(z, y) end g(y) = f(ONE, y) ``` On master: ``` julia> @time @code_typed g(1) 1.427227 seconds (1.31 M allocations: 58.809 MiB, 5.73% gc time, 99.96% compilation time) CodeInfo( 1 ─ %1 = invoke Main.f(Main.ONE::Int64, y::Int64)::Int64 └── return %1 ) => Int64 ``` On this PR: ``` julia> @time @code_typed g(1) 0.503151 seconds (1.19 M allocations: 53.641 MiB, 5.10% gc time, 33.59% compilation time) CodeInfo( 1 ─ %1 = invoke Main.f(Main.ONE::Int64, y::Int64)::Int64 └── return %1 ) => Int64 ``` I don't expect the same speedup on other workloads, but there should be a few % speedup on most workloads still. # Future extensions The other motivation for this is that with a view towards #40399, we will want to more clearly define when bindings get resolved. The idea here would then be that binding resolution replaces generic `GlobalRefs` by GlobalRefs with a set binding cache, and any unresolved bindings would be treated conservatively by inference and optimization. | 15 September 2022, 14:45:47 UTC |
6bbc006 | pchintalapudi | 15 September 2022, 14:36:24 UTC | Add LLVM pipeline tests (#46542) * Add LLVM pipeline tests * Create per-pipeline optimization tests * Actually run the tests, drop unnecessary output * Move to lit tests instead of julia tests * Apply suggestions from code review `=` -> `in` Co-authored-by: Valentin Churavy <vchuravy@users.noreply.github.com> Co-authored-by: Valentin Churavy <vchuravy@users.noreply.github.com> | 15 September 2022, 14:36:24 UTC |
5e3e58e | Kristoffer Carlsson | 15 September 2022, 14:13:17 UTC | Revert "Add ability to add output prefixes to the REPL output and use that to implement an IPython mode (#46474)" (#46780) This reverts commit e1188455456035ff6a80ed20e424aa5c8ebf437d. | 15 September 2022, 14:13:17 UTC |
e118845 | Kristoffer Carlsson | 15 September 2022, 12:24:25 UTC | Add ability to add output prefixes to the REPL output and use that to implement an IPython mode (#46474) | 15 September 2022, 12:24:25 UTC |
6557542 | N5N3 | 15 September 2022, 11:43:57 UTC | Also merge var with unchanged bounds. (#46757) * Also merge var with unchanged bounds. The current `env` might not be valid if the var's bounds get fixed by another Unions decision. * Replace `v->var->lb` with `simple_meet` * Remove the unneeded NUll check. Co-Authored-By: Jameson Nash <vtjnash+github@gmail.com> | 15 September 2022, 11:43:57 UTC |
aae8c48 | Daniel Karrasch | 15 September 2022, 10:30:02 UTC | Specialize `inv` for cholesky of `Diagonal` (#46763) | 15 September 2022, 10:30:02 UTC |
997e336 | Shuhei Kadowaki | 15 September 2022, 06:56:19 UTC | inference: fixes and improvements for backedge computation (#46741) This commit consists of the following changes: * inference: setup separate functions for each backedge kind Also changes the argument list so that they are ordered as `(caller, [backedge information])`. * inference: fix backedge computation for const-prop'ed callsite With this commit `abstract_call_method_with_const_args` doesn't add backedge but rather returns the backedge to the caller, letting the callers like `abstract_call_gf_by_type` and `abstract_invoke` take the responsibility to add backedge to current context appropriately. As a result, this fixes the backedge calculation for const-prop'ed `invoke` callsite. For example, for the following call graph, ```julia foo(a::Int) = a > 0 ? :int : println(a) foo(a::Integer) = a > 0 ? "integer" : println(a) bar(a::Int) = @invoke foo(a::Integer) ``` Previously we added the wrong backedge `nothing, bar(Int64) from bar(Int64)`: ```julia julia> last(only(code_typed(()->bar(42)))) String julia> let m = only(methods(foo, (UInt,))) @eval Core.Compiler for (sig, caller) in BackedgeIterator($m.specializations[1].backedges) println(sig, ", ", caller) end end Tuple{typeof(Main.foo), Integer}, bar(Int64) from bar(Int64) nothing, bar(Int64) from bar(Int64) ``` but now we only add `invoke`-backedge: ```julia julia> last(only(code_typed(()->bar(42)))) String julia> let m = only(methods(foo, (UInt,))) @eval Core.Compiler for (sig, caller) in BackedgeIterator($m.specializations[1].backedges) println(sig, ", ", caller) end end Tuple{typeof(Main.foo), Integer}, bar(Int64) from bar(Int64) ``` * inference: make `BackedgePair` struct * add invalidation test for `invoke` call * optimizer: fixup inlining backedge calculation Should fix the following backedge calculation: ```julia julia> m = which(unique, Tuple{Any}) unique(itr) @ Base set.jl:170 julia> specs = collect(Iterators.filter(m.specializations) do mi mi === nothing && return false return mi.specTypes.parameters[end] === Vector{Int} # find specialization of `unique(::Any)` for `::Vector{Int}` end) Any[] julia> Base._unique_dims([1,2,3],:) # no existing callers with specialization `Vector{Int}`, let's make one 3-element Vector{Int64}: 1 2 3 julia> mi = only(Iterators.filter(m.specializations) do mi mi === nothing && return false return mi.specTypes.parameters[end] === Vector{Int} # find specialization of `unique(::Any)` for `::Vector{Int}` end) MethodInstance for unique(::Vector{Int64}) julia> mi.def unique(itr) @ Base set.jl:170 julia> mi.backedges 3-element Vector{Any}: Tuple{typeof(unique), Any} MethodInstance for Base._unique_dims(::Vector{Int64}, ::Colon) MethodInstance for Base._unique_dims(::Vector{Int64}, ::Colon) # <= now we don't register this backedge ``` | 15 September 2022, 06:56:19 UTC |
94c3a15 | Keno Fischer | 15 September 2022, 05:24:11 UTC | Improve nothrow analysis of :new with missing sparam (#46754) Similar to #46693, but for :new, rather than getfield. Unfortunately, this is somewhat limited as we don't really have the ability to encode type equality constraints in the lattice. In particular, it would be nice to analyze: ``` struct Foo{T} x::T Foo(x::T) where {T} = new{T}(x) end ``` and be able to prove this nothrow. If it's really important, we could probably pattern match it, but for the moment, this is not easy to do. Nevertheless, we can do something about the similar, but simpler pattern ``` struct Foo{T} x Foo(x::T) where {T} = new{T}(x) end ``` which is what this PR does. | 15 September 2022, 05:24:11 UTC |
e758982 | Hendrik Ranocha | 15 September 2022, 03:18:52 UTC | improve type stability of `tail/front(::NamedTuple)` (#46762) This fixes some invalidations when loading ChainRulesCore.jl. | 15 September 2022, 03:18:52 UTC |