https://github.com/JuliaLang/julia

sort by:
Revision Author Date Message Commit Date
9ab2caf PartialTuple support in getfield tfunc 05 October 2018, 18:11:53 UTC
6e7a9e9 Don't eliminate PiNodes for mismatched types E.g. if we had `PiNode(1, CartesianIndex)`, we would eliminate that because `1` was a constant. However, leaving this in allows the compiler to realize that this code is unreachable, as well as guarding codegen against having to wrok through invalid IR. 05 October 2018, 17:48:56 UTC
17aa232 do not widenconst PartialTuple return types unless necessary for cache validity 05 October 2018, 02:47:24 UTC
73e761e add needed widenconst to various typeintersect calls 05 October 2018, 02:46:33 UTC
1aa26f0 Turn some asserts into runtime traps instead Unfortunately, we cannnot always rely on :invokes to have argument values that match the declared ssa types (e.g. if the :invoke is dynamically unreachable). Because of that, we cannot assert here, but must instead emit a runtime trap. 04 October 2018, 22:56:35 UTC
c75af8b refactor inference result cache lookup to better respect argtype transformations 03 October 2018, 23:38:33 UTC
2a5629f add TODO 03 October 2018, 21:59:26 UTC
e46071c exploit PartialTuples in typeof_tfunc 03 October 2018, 21:59:26 UTC
6c2082d add another test 03 October 2018, 21:59:26 UTC
d78a03d minor cleanup 03 October 2018, 21:59:26 UTC
d9a4de6 revert sketchy cache refactor 03 October 2018, 21:59:26 UTC
6afb40e fix off-by-one error 03 October 2018, 21:59:26 UTC
343aed1 better cache matching for const args case 03 October 2018, 21:59:26 UTC
0e338a8 factor shared predicate into utility function 03 October 2018, 21:59:26 UTC
78a3f84 factor non-loop work out of loop (for clarity, not performance) 03 October 2018, 21:59:26 UTC
2c69c78 more asserts [ci skip] 03 October 2018, 21:59:26 UTC
4bac018 only check varargs for potential cache match if other args matched 03 October 2018, 21:59:26 UTC
b45539c factor out reused predicate 03 October 2018, 21:59:26 UTC
a15e391 split up InferenceResult argtypes computation for better cache correctness [ci skip] 03 October 2018, 21:59:26 UTC
6269c2c fix some over constrained type info 03 October 2018, 21:59:25 UTC
2a88e3c add test 03 October 2018, 21:59:25 UTC
9388d51 remove incorrect short circuit 03 October 2018, 21:59:25 UTC
58e74e0 tighter PartialTuple element type when element is Const Type 03 October 2018, 21:59:25 UTC
d09bf6d fix typo 03 October 2018, 21:59:25 UTC
fa8f949 fix tuple_tfunc caller 03 October 2018, 21:59:25 UTC
c9a3e83 allow passage of caller's argtypes into InferenceResult constructor to improve consistency between constructor and cache (instead of the caller handling this themselves by modifying the InferenceResult after construction) [ci skip] 03 October 2018, 21:59:25 UTC
7ceee6e clearer names for various InferenceResult things [ci skip] 03 October 2018, 21:59:25 UTC
c7b049d WIP add lattice element for Tuples 03 October 2018, 21:59:25 UTC
a984ad0 Fix #29451: parse(Int, s::AbstractString) when ncodeunits(s) > lastindex(s) (#29465) 03 October 2018, 21:45:04 UTC
6eb4921 Use recursion rather than iteration for error check in uncolon Inference has an easier time analyzing recursion (esp if structural over tuples) than iteration, which is why the rest of this function is using recursion. With sufficient inlining, LLVM does generally get rid of the extra error check and branch, but by switching to recursion, we make things easier on non-LLVM backends. 03 October 2018, 20:50:23 UTC
ea16391 fix #29468, bug in intersection of different-length vararg tuples (#29487) 03 October 2018, 20:12:45 UTC
37dc16e correct language in documentation (#29502) 03 October 2018, 18:41:36 UTC
db100ad More robust show for invalid CFG Despite the fact that the compiler should never generate invalid data structures, it is a good practice for the show functions to be able to handle these and indicate what the problem is. In this case, if the IR has more instructions than its supposed to according to the CFG, put all trailing instructions into a "!" basic block to indicate an error. 03 October 2018, 18:09:21 UTC
590ee83 Align StmtRange field names with UnitRange 03 October 2018, 18:09:21 UTC
434c065 move 1.0 news to HISTORY file; prepare NEWS file for 1.1 (#29490) [ci skip] 03 October 2018, 17:06:32 UTC
a897365 Upgrade to new Documenter. (#29470) 03 October 2018, 14:45:26 UTC
a9550d5 Removed unnecessary extra line (#29476) Line 73 cleared. 03 October 2018, 13:47:19 UTC
4412dd4 Add an option to disable building libssh2 tests These fail to build if mbedtls is not available in the global linker search path. Add a simple flag to disable them, since we don't use them. 03 October 2018, 01:06:14 UTC
59b6645 Still set rpath-link in RPATH_ESCAPED_ORIGIN We use this setting for linking curl, which itself needs to find libssh2 and mbedtls. However, while curl will indeed eventually be in the same directory as these two libraries, it is not during linking, causing link failures (unless we happen to have global copies of the same libraries that the linker can pick up). Add an rpath-link command with the absolute path to our library directory to make sure the dependent libraries get picked up at link time. 03 October 2018, 01:06:14 UTC
b0a37b5 Document scripting tips (#29423) 02 October 2018, 22:08:25 UTC
1f0f40f rm redundant `show` method for Enum types (#29460) 02 October 2018, 21:54:26 UTC
39117c9 tiny formatting fix on docs (#29463) C and Julia code were inside the same code block 02 October 2018, 16:45:30 UTC
dee7d77 Closed issue #29454 (#29475) Changed `String` to `BitSet` as a `mutable struct` example. 02 October 2018, 16:08:19 UTC
50e9275 fix unusual line spacing (#29474) 02 October 2018, 16:07:29 UTC
18652ea updated README.md (#29473) 02 October 2018, 16:06:48 UTC
9705c96 add elseif to reserved-words (#29222) 02 October 2018, 14:48:03 UTC
d769ad2 Merge pull request #13099 from JuliaLang/jn/no_copy_stacks no-copy stacks 02 October 2018, 12:41:41 UTC
a2df80e Don't error on help for keyword functions (#29308) Fixes #23991. Also allows for help where some arguments are undefined. 01 October 2018, 20:36:40 UTC
29b780e Improved English and egs (#29281) Improved English and egs The examples starting around line 80 showing how to create arrays with dimensions are unhelpful because in every case the dimensions are 2x2 so people don't get any sense of which dimension is which. So I've changed them all to 2x3 which doesn't take up any more vertical space but makes it much clearer which dimension is which. I don't like the Comprehensions example because the expression is much too complicated: the idea is to show comprehensions, so I think the expression should be a lot simpler. I changed the `searchsorted` eg to make the searched for number different from all the others to improve clarity. 01 October 2018, 18:39:47 UTC
2460b57 win,init: if stdio is not available, do not exit (#29374) Fix #28820 01 October 2018, 17:42:35 UTC
e721d35 slightly faster String allocation (#29254) Only a few % saved, but it essentially removes the cost of computing the sizeclass, so this should save on processor resources (frontend, BTP) also. And it makes the computation correct (previously the cutoff was slightly offset, so it would switch to the next larger size-class at 609 instead of at 624, for example). 01 October 2018, 15:53:31 UTC
61696f9 Merge pull request #29262 from JuliaLang/jn/interpret-phi interpreter: fix bugs with ssair phi-node handling 01 October 2018, 15:21:05 UTC
4851fab Merge pull request #29376 from JuliaLang/ksh/improvar Some improvements to variables and scoping manual 01 October 2018, 13:53:53 UTC
391f2dd Merge pull request #29446 from eli-schwartz/system-nondefault-llvm build: work correctly when linking to a system llvm which is not the default 01 October 2018, 00:58:50 UTC
f07d461 Allow eliminating nothrow intrinsics during optimization 30 September 2018, 23:59:04 UTC
d1fab72 build: work correctly when linking to a system llvm which is not the default It's erroneous to assume hardcoded -lLLVM works, when it will either not exist, or exist and be a symlink to -lLLVM-6.0, or exist and be a symlink to a completely invalid -lLLVM-7 Instead, use llvm-config for what it's meant to do, and acquire the linker --libs. In one case this means we can simplify on --libfiles rather than --libdir plus appending some hardcoded strings, and in another case we can simply drop a huge, confusingly repetitive invocation which was meant to work around very old llvm versions that are no longer supported. 30 September 2018, 19:30:53 UTC
ebfbe62 Add test for eliminating apply_type/TypeVar 30 September 2018, 17:33:18 UTC
8fa5296 Make TypeVar constructor a builtin Or more precisely make a builtin-equivalent of jl_new_typevar. This allows us to give it a proper nothrow tfunc, thus letting us eliminate it if it is not otherwise used. 30 September 2018, 17:33:18 UTC
f81749f Make apply_type nothrow tfunc more aggressive 30 September 2018, 17:33:18 UTC
2c86c1f Remove link missed in #26432 (#29434) 30 September 2018, 08:21:40 UTC
4d06e00 Merge pull request #29325 from JuliaLang/vc/restored check return from jl_restore_incremental correctly 30 September 2018, 01:52:30 UTC
f7f87c2 intrinsic casts: perform error checking (#29422) previously, we just let LLVM abort (even though this could potentially happen in dead-code). 29 September 2018, 22:36:48 UTC
8907aff Fix sentence fragment (#29431) Move whereas clause into subordinate position to avoid sentence fragment. 29 September 2018, 19:21:09 UTC
f42f7b7 fix #20872, handle UnionAll types in `which` (#29419) 29 September 2018, 19:20:25 UTC
9454c8d stdlib/SparseArrays: add rmul! and lmul! of sparse matrix with Diagonal (#29296) * Add rmul! and lmul! of sparse matrix with Diagonal 29 September 2018, 18:38:47 UTC
201cba5 Merge pull request #29341 from JuliaLang/sf/llvm_wasm Add `LLVM_EXPERIMENTAL_TARGETS` and default it to `WebAssembly` 29 September 2018, 14:01:36 UTC
75f798f Change from parametric T signature to Int32 in _ldexp_exp (#29401) __ldexp_exp(f) requires the second argument to be an Int32, so we might as well hard-code that here. It also seems that the old specification is actually not valid, or might have unexpected results, so we should just go with Int32, see #29400 . 29 September 2018, 13:17:09 UTC
3b3a163 avoid file ownership requirement in touch (#28819) Using `futimes` and passing NULL for the `times` parameter sets the current and access file times, but does not require file ownwership. From man page: > If times is NULL, the access and modification times are set to the current time. The caller must be the owner of the file, have permission to write the file, or be the superuser. 28 September 2018, 20:17:22 UTC
39f2561 interpreter: implement PhiC/Upsilon node handling 28 September 2018, 18:43:18 UTC
7638cb3 interpreter: redesign phi-node handling it is not valid to treat these like statements, since they are actually arguments to the basic block it turns out to be a bit hard to deal with this particular representation of phi nodes in an interpreter, since the information is spread out across multiple statements and could pop up at any time, but with some care, it is possible. we just need to be careful to process phi nodes as a block, and taking care to look for implicit edges. fix #29342 28 September 2018, 18:43:18 UTC
e2fb8d6 interpreter: fix bug with ssair phi-node handling 28 September 2018, 18:43:18 UTC
f93c6ef improve compiler performance somehow these were missed in the last round of `nospecialize` annotations in this file, but these are also very important for compiler performance (especially as we have now been adding more places where we inspect tuples with this method) 28 September 2018, 18:43:18 UTC
e1f42b1 fix `sizeof(str::AbstractString)` docstring (#29414) 28 September 2018, 17:52:46 UTC
6794778 fix #29208, incorrect `Union{}` result from type intersection (#29380) also fixes #29357 28 September 2018, 17:51:02 UTC
bc34c64 improve findnext/findprev docstring for strings (#29415) 28 September 2018, 17:48:58 UTC
ba41f69 doc: fix not-true-anymore example with promote_rule (#29416) 28 September 2018, 17:48:39 UTC
47668c8 Remove docstring relicts of findlast/findprev for regex (#29398) 27 September 2018, 20:57:15 UTC
8d5c109 Minor English fixes/improvements (#29391) 27 September 2018, 15:17:51 UTC
da964d6 Add SHA to UUIDs dependencies in Project.toml (#29375) A dependency on SHA was added to UUIDs in #28761 but the Project.toml was not updated to reflect that, resulting in warnings while building Julia. 26 September 2018, 21:54:19 UTC
4020729 Some improvements to variables and scoping manual 26 September 2018, 18:26:44 UTC
8eca2c2 UUIDs: add uuid5 function (#28761) This function matches Python and Rust behavior but does not match the `uuidgen` command-line tool. 26 September 2018, 17:58:59 UTC
493068b fix crash when interpreting optimized top-level expressions (#29217) 26 September 2018, 17:03:57 UTC
48f53d5 Pkg don't use startup.jl when building and testing (#29364) * don't use startup.jl when precompiling, building and testing (#470) unless the user has explicitly asked for it with --startup-file=yes (cherry picked from commit 40d7f27f2ff08ec466df536f267129a9f5e950b4) * do not precompile packages that have opt out to precompilation (cherry picked from commit 57f7380a2641944be12695e92a3ad9f4cc20e6f2) 26 September 2018, 15:15:38 UTC
7698523 Fix `big(typemin(T))` (#29340) 26 September 2018, 13:56:48 UTC
8d6c1ce always obey inline declarations if the calling signature is concrete (#29258) This implements the suggestion in https://github.com/JuliaLang/julia/pull/27857#issuecomment-421109530 25 September 2018, 21:45:45 UTC
48f5bb3 fix #29326, return type lowering interfering with closure optimization (#29346) 25 September 2018, 21:40:45 UTC
82503cd Fix: Complex SubArray times real Matrix (#29246) * gemm_wrapper! -> mul! (#29224) * testing for #29224 * code review update: More tests * Complex times real reinterpret trick fix for vectors and transposed matrices 25 September 2018, 07:47:39 UTC
94aa39b Minor English fixes in constructors.md (#29338) 25 September 2018, 06:38:41 UTC
993e7d7 avoid conversion from Char to String to Symbol in some LinearAlgebra routines (#29352) 25 September 2018, 06:36:35 UTC
c37f4aa Backticks and xrefs (#29349) 25 September 2018, 06:35:36 UTC
0b5e21c Some misisng paren and xrefs (#29351) 25 September 2018, 06:34:49 UTC
f2ad009 Add missing test dependencies to SparseArrays Project.toml (#29354) The tests use InteractiveUtils but it is not listed as a test dependency in the SparseArrays Project.toml file. This is causing SparseArrays to fail its tests when run on NewPkgEval, which means every package that uses SparseArrays gets their tests skipped. 25 September 2018, 04:10:44 UTC
2a35981 Merge pull request #29231 from haampie/quicksort-fewer-memops Sort the pivot, lo and hi value immediately in-place in quicksort 24 September 2018, 22:57:54 UTC
fa7d1a9 Fix inlinining's rewrite of _apply atypes (#29324) Inlining incorrectly computed the new atypes for an _apply call, leading to a cache miss and lack of inlining for call targets that are worth inlining for the given constant arguments, but not necessarily in general. 24 September 2018, 21:03:15 UTC
abd9072 Add `splitpath(p::AbstractString)` to Base.Filesystem. (#28156) 24 September 2018, 18:44:24 UTC
99e0b3b fix bug in parsing extended colon-like operators (#29314) 24 September 2018, 18:02:49 UTC
64a4f18 Minor docs correction for maxintfloat. (#29301) Fixes #29297, see discussion there. 24 September 2018, 17:28:03 UTC
6390fbf Add `LLVM_EXPERIMENTAL_TARGETS` and default it to `WebAssembly` This provides feature-parity between Julia-built LLVM and BinaryBuilder-built LLVM, allowing us to vendor dylibs (such as `libclang`) to users through BinaryProvider without causing segfaults within Julia due to mismatched features. While the `WebAssembly` backend changes enough within the built LLVM to make it so that we cannot simply take `libclang` from a build that has WASM support and use it within the offcial Julia library, it appears that it does not change the codepaths that Julia itself uses enough to cause any issues (at least in the testing that we have done). In LLVM 8, the WASM backend is expected to be promoted out of experimental. 24 September 2018, 12:50:13 UTC
8484f97 Improve noteworthy differences from R on ismissing (#29332) The R function is called is.na, and automatically works element-wise. 24 September 2018, 04:39:59 UTC
f474f75 check return from jl_restore_incremental correctly 23 September 2018, 00:06:55 UTC
back to top