swh:1:snp:a72e953ecd624a7df6e6196bbdd05851996c5e40

sort by:
Revision Author Date Message Commit Date
2299d55 Hide returns_twice function from LLVM passes LLVM has really bad support for returns_twice functions and can incorrectly move memory operations (both at IR and machine code level) due to missing control flow edge. By outlining the exception body, we can hide these functions from LLVM completely (they only exist in C code) and prevent all miscompilation. This also makes it much easier to check the correctness of heap to stack allocation optimization especially since not all memory operation intrinsics in LLVM has a volatile counterpart. This will obviously inhibit some valid optimizations too. These are mainly forwarding of memory operations from the caller to the exception body (since the other way around is almost always invalid) and can be improved with some simple IPO. This also makes it unnecessary to mark any memory operations on the stack with `volatile` this should also improve optimization in certain cases. Since we are scanning all the instructions in the outlined code anyway this also includes a simple optimization to delete exception frame that can't trigger. This implements a tweaked version of https://discourse.julialang.org/t/avoid-llvm-setjmp-bug/1140 Fix #17288 12 November 2017, 02:07:36 UTC
da34a89 disallow global method definitions inside functions; require `eval` (#24557) 11 November 2017, 17:03:02 UTC
0c65999 run NEWS-update.jl to fix links 10 November 2017, 20:07:50 UTC
2e4ef81 fix #24532 (FFTW deprecation) (#24540) 10 November 2017, 18:41:00 UTC
d77d2b1 Merge pull request #24554 from JuliaLang/jb/interp_misc misc. interpreter code cleanup 10 November 2017, 16:34:09 UTC
26eb512 codegen: fix type bug in dereferenceable_size (#24553) fix #24511 09 November 2017, 21:25:00 UTC
27665e8 fix regression in lowering `[x... y]` caused by #24538 (#24552) recursive calls to `expand-forms` should generally be tail calls, matching the usual top-down macro expansion order. 09 November 2017, 20:37:09 UTC
c47aaaa reorganize and clean up interpreter code removes some cruft and makes the code better match the structure of valid IR 09 November 2017, 17:06:52 UTC
6e31adb remove toplevel_eval_body 09 November 2017, 15:20:27 UTC
caa7f04 specialized complex^real methods (#24497) 09 November 2017, 06:02:49 UTC
d7a171e Skip memmove in del_at_beg when not needed. (#24503) This was likely previously done on linux in the glibc implementation. Fix #24494 09 November 2017, 05:42:10 UTC
6e3f716 Fix it's -> its (#24542) 09 November 2017, 05:40:46 UTC
fa2ea26 Merge pull request #24473 from JuliaLang/jb/interpretmore2 use interpreter when possible in `--compile=no` mode 09 November 2017, 05:19:16 UTC
ebd8831 runtime intrinsics: correct several (#24537) flipsign was using the wrong argument several others could trigger an LLVM assertion on divide-by-zero 09 November 2017, 05:13:38 UTC
cfef957 give better and earlier error for misplaced top-level-only constructs (#24538) 09 November 2017, 04:21:11 UTC
f60d438 Fix 32 bit implementation and Win64 calling convention 09 November 2017, 03:22:59 UTC
b276c71 Automatically compute stack layout for interpreter backtraces Makes changing the interpreter state struct less error prone 09 November 2017, 03:22:45 UTC
4656ccd fix some interpreter issues - `isdefined` on static parameter - stack overflow when interpreting a block with many exception handlers (as in some tests) due to never popping jmp_bufs - fix backtraces for non-top-level interpreted frames - remove invalid `pointer_from_objref(immutable)` test, where interpreter and compiler had different boxing behavior 09 November 2017, 03:22:39 UTC
5383a30 fix run-time implementation of ashr_int intrinsic (#24517) 09 November 2017, 03:17:28 UTC
8d67226 Merge pull request #24523 from JuliaLang/ksh/gcstrikesback GC fixes in libgit2 round 2 electric boogaloo 08 November 2017, 21:51:38 UTC
3077732 clarifications on display vs show (#24513) From the [mailing list](https://discourse.julialang.org/t/output-like-print/6930/7?u=stevengj) 08 November 2017, 19:37:26 UTC
10ab2be Merge pull request #24495 from JuliaLang/jn/grabbag7 couple improvements to debugging info printout 08 November 2017, 17:10:22 UTC
c80df3c Combine two test loops for bunchkaufman tests (#23626) * Combine two test loops for bunchkaufman tests * don't run for Int * Add interpolation? * Avoid the 2x2 pivot in the SingularException test 08 November 2017, 11:54:52 UTC
9528562 Do some git gc fixes for Keno? (#24504) 08 November 2017, 04:58:41 UTC
193c5b9 Merge pull request #24510 from JuliaLang/yyc/build/mingw Print gcc information using C locale 08 November 2017, 01:51:41 UTC
1684a6a GC fixes in libgit2 round 2 electric boogaloo 08 November 2017, 01:38:33 UTC
c8b73f6 Merge pull request #24514 from JuliaLang/kf/crossspawn Fix incorrect use of `exec`/omission of `spawn` in Makefile 08 November 2017, 01:30:50 UTC
72c5c84 fix #24468, line number from doc macro in error message (#24512) 08 November 2017, 01:27:05 UTC
27a28ca add news item for `Base.find_in_path` change (#24320) (#24507) 07 November 2017, 23:24:45 UTC
8e96fbc move crc32c to stdlib (#24489) * move crc32c to stdlib * fix capitalization 07 November 2017, 21:41:52 UTC
698ef27 Fix length calculation of broadcast over tuples (#23887) 07 November 2017, 20:30:08 UTC
9099d7b Fix incorrect use of `exec`/omission of `spawn` in Makefile In one case `exec` is the wrong thing to use, because it runs the command and the way it's used here it then tried to run whatever that command printed on standard output, which is incorrect (we just want to run the command). In the other case, we needed a spawn, but didn't have it. 07 November 2017, 17:53:26 UTC
5f45c59 use interpreter when possible in `--compile=no` mode make `JULIACODEGEN=none` builds work again 07 November 2017, 16:54:23 UTC
00dafe2 fix #23971, spurious macro expansion frame in top-level location info (#24492) 07 November 2017, 15:53:20 UTC
da74a3f Print gcc information using C locale Otherwise the "programs" and "libraries" keywords won't show up... 07 November 2017, 15:39:39 UTC
0c63ec7 Merge pull request #24481 from JuliaLang/yyc/iterator-bounds Mark `next` for iterator wrapper as `propagate_inbounds` 07 November 2017, 15:19:15 UTC
c8d52d2 unstick macOS 10.9 buildbot (#24493) 07 November 2017, 14:34:25 UTC
695fedb Improve typejoin involving an empty tuple (#24485) Don't just return `Tuple` when joining an empty and a non-empty tuple, instead return the appropriate vararg tuple, similar to otherwise joining tuples of unequal length. 07 November 2017, 09:10:34 UTC
7c2a42a Avoid checking the diagonal for non-real elements when constructing Hermitians (#17367) 07 November 2017, 08:23:53 UTC
9bdf041 Fix parse call in core test (#24502) 07 November 2017, 06:14:13 UTC
c2913cd Test error throwing for fwd/bwdTriSolve (#24463) * Test error throwing for fwd/bwdTriSolve * Use Matrix constructor instead of eye 07 November 2017, 06:04:53 UTC
23e0200 Remove obsolete chol!(Number) method. Supersedes #24224 (#24498) 07 November 2017, 05:27:00 UTC
36f40d5 fix soundness of inferred typevar bounds (#24406) from #24399 07 November 2017, 05:16:20 UTC
4fe309a Integrate interpreter frames into backtraces (#23973) Before: ``` julia> let error() end ERROR: Stacktrace: [1] error() at ./error.jl:44 ``` After: ``` julia> let error() end ERROR: Stacktrace: [1] error() at ./error.jl:44 [2] macro expansion at REPL[0]:2 [inlined] [3] In toplevel scope ``` The extra `macro expansion` frame is a pre-existing julia bug (#23971) that this PR doesn't address. The mechanism used here is to add a no-inline enter_interpreter stack frame that has a known stack layout (since it only has one local variable) and can thus be used to retrieve the interpreter state. I do not believe that this is guaranteed by the C standard, so depending on the whims of the compiler we may have to eventually write this function in assembly, but it seems to work well enough for now. One significant complication is that the backtrace buffer may now contain pointers to gc-managed data, so we need to make the gc aware that and can't be as non-chalant about copying the buffer around anymore. 07 November 2017, 05:08:17 UTC
1c122fc Merge pull request #24496 from JuliaLang/nl/makefile Fix building tarballs without Internet access and add instructions to check it 06 November 2017, 23:37:41 UTC
9696488 Merge pull request #24475 from JuliaLang/yyc/codegen/preserve Fix GC preserve optimization 06 November 2017, 21:39:12 UTC
0f09fc3 More LU tests and move stuff out of inner loops (#24241) 06 November 2017, 20:38:58 UTC
a6fa576 move parse(::String, ...) to Meta module (#24455) move syntax tests to new file syntax.jl 06 November 2017, 18:45:48 UTC
8cb3701 Add instruction to release-candidate target about testing builds without Internet It is generally a good idea to test that final tarballs build and pass the tests. Disabling Internet access allows ensuring that builds are reproducible, and is necessary for some build servers. 06 November 2017, 18:33:59 UTC
bd019a4 Exclude version_git.jl from list of dependencies for HTML docs This file is modified by the light-source-dist target when preparing tarballs. Depending on it means that the docs will be rebuilt when calling 'make install' from the tarballs. This requires downloading files, which is problematic for replicable builds and may not be possible on build servers. 06 November 2017, 18:26:37 UTC
3884efa loading: add rejection info for the error path not previously covered 06 November 2017, 17:45:03 UTC
82c7759 Distributed: dump all STDOUT after failed worker startup 06 November 2017, 17:44:55 UTC
7a5c75e dump compiles should use the type the function call syntax representation is more intended for human consumption, and not as precise or capable of to representing all calls 06 November 2017, 17:43:23 UTC
28dc9d3 Merge pull request #24337 from JuliaLang/jn/inference-edges inference: improve edge computations 06 November 2017, 17:38:44 UTC
6b3dd9d inference: avoid world age assertion (#24449) This was over-aggressive. It was only correct in the case where we where depending on the `.inferred` field or `.rettype` contents exactly. However, sometimes inference of the method instead depends on `.def.source`. fix #23981 fix #23768 06 November 2017, 17:36:44 UTC
088e52b Merge pull request #24480 from JuliaLang/yyc/tests/circle Enable dmesg printing on fail on circle CI 06 November 2017, 13:40:18 UTC
2298cc2 Specialize multi-arg + for Array (#24343) ... to avoid unnecessary creation of temporaries by repeatedly doing two-arg addition. 06 November 2017, 07:17:09 UTC
7e18247 Enable dmesg printing on fail on circle CI This should show us if there's any OOM or other network related issues. 05 November 2017, 23:26:20 UTC
59f8998 Mark `next` for iterator wrapper as `propagate_inbounds` These were previously relying on bug in the inliner. (#18261) 05 November 2017, 17:00:21 UTC
17019a0 Fix GC preserve optimization Only remove the call if all of the arguments are eliminated. 05 November 2017, 12:33:53 UTC
bd52564 Merge pull request #24474 from JuliaLang/yyc/codegen/test Fix llvmpasses tests 05 November 2017, 12:33:02 UTC
206b61c fix link in doc (#24476) 05 November 2017, 06:29:59 UTC
0ad245f Fix llvmpasses tests Also remove tests that's not needed anymore (tag handling) 04 November 2017, 22:20:21 UTC
33763a0 Add test, fix bug for chol and test for tridiag (#24411) 03 November 2017, 21:33:44 UTC
8cd97c5 remove redundant `type_alignment` function (#24434) 03 November 2017, 19:47:03 UTC
1bb71e9 update README wording on system package managers (#24456) - [clarification] a package manager does the installing, there are usually not specialised Julia installers, so the package manager installs Julia; - [grammar] neither/nor go well together. 03 November 2017, 19:41:20 UTC
d929f0b refactor cartesian.jl to use dispatch in macros (#24450) add a couple helpful type declarations 03 November 2017, 14:51:17 UTC
ae51693 Clarify precedence of numeric literal coefs over parenthesis (#21800) 03 November 2017, 14:39:22 UTC
e6d4f2b Merge pull request #24258 from JuliaLang/teh/dates Require stepsize in all Dates AbstractRange constructors 03 November 2017, 14:06:06 UTC
088ee7a Merge pull request #24448 from JuliaLang/yyc/errno Remove errno.jl 03 November 2017, 12:34:01 UTC
7a4ca9d Wrap cholmod tests in testsets to avoid global variables (#24446) * Wrap cholmod tests in testsets to avoid global variables * Wrap the body of a testset in lapack tests in a guardsrand to avoid intermittent errors 03 November 2017, 08:33:25 UTC
06d0016 Require stepsize in all Dates AbstractRange constructors 03 November 2017, 08:23:36 UTC
fe13a16 Merge pull request #24284 from JuliaLang/teh/cartindex Emit explanatory error message for iteration on CartesianIndex 03 November 2017, 08:18:30 UTC
c7d6391 Test IntSet overflow behavior with large unsigned ints (#24366) * add tests (cherry picked from commit e6390dc67659e7ba09f7a5c77aeaaaa3045313a0) 02 November 2017, 21:30:29 UTC
c734440 document maxdepth keyword for dump (#24288) (#24378) 02 November 2017, 21:29:02 UTC
a547d73 fix #24305, stack overflow when intersecting sequence of big unions (#24314) 02 November 2017, 21:03:40 UTC
8782c36 correct serialization of SubString{<:AbstractString} (#24275) 02 November 2017, 21:00:23 UTC
c67f7b5 Add doctests to complex.jl (#24429) 02 November 2017, 20:50:25 UTC
19f644d Merge pull request #24313 from JuliaLang/cv/mod-bigint Fix issue with mod(::BigInt, ::Unsigned) 02 November 2017, 19:22:32 UTC
68f1818 Merge pull request #24187 from stevengj/reverseiter Iterators.Reverse type for reverse-order iteration 02 November 2017, 18:15:31 UTC
098176c Clarify meaning of p in hexadecimal floating-point literals (#24376) 02 November 2017, 16:53:00 UTC
b1ea7d7 Remove errno.jl It is unused since 16d38127293b7ae2635ef7cc9e8e7aebcd1b978f 02 November 2017, 14:43:37 UTC
f16a119 Add rounding support for `Periods` (#24182) * Add rounding for Periods * Improve period rounding function type signatures * Use promote instead of Nanosecond to round periods Period rounding functions no longer unnecessarily convert all values to nanoseconds prior to rounding. * Minor refactoring for period rounding 02 November 2017, 12:39:29 UTC
e402daa Merge pull request #24341 from JuliaLang/yyc/codegen/fpo Enable FPO again on non-windows 02 November 2017, 12:25:20 UTC
37d47ba implement named tuples (#22194) Based on #16580, also much work done by quinnj. `(a=1, ...)` syntax is implemented, and `(; ...)` syntax is implemented but not yet enabled. 02 November 2017, 02:37:24 UTC
adc97b7 Merge pull request #24415 from Sacha0/eyediagonal deprecate eye(::Type{Diagonal{T}}, n), introduce Diagonal[{T}](s::UniformScaling, n) 01 November 2017, 23:54:32 UTC
b6a2394 Merge pull request #24413 from Sacha0/depoddfillbang deprecate fill!(A::[Diagonal|AbstractTriangular], x) = fillslots!(A, x) methods 01 November 2017, 23:53:33 UTC
4b06266 make default value of `rev` keyword argument type stable (#24422) this lets us remove the method overwrite during sysimg build 01 November 2017, 21:30:51 UTC
55736a0 add an enum type for jlcall_api (#24426) 01 November 2017, 19:18:03 UTC
c8ca085 Enable FPO again on non-windows or freebsd This was enabled when we were porting to 3.7 for better unwinding. The unwinding should have been improved (thanks to registering JIT functions to libunwind and a new libunwind version) on non-windows a lot that we don't need this anymore. The performance impact of this is likely small but it makes `code_native` for simple functions quite a bit simpler and has the biggest yet effect on the code size in system image (-4%). 01 November 2017, 18:30:45 UTC
3df06a6 Merge pull request #24340 from JuliaLang/yyc/codegen/disasm Improve debug info correctness and printing in disassembler 01 November 2017, 18:27:39 UTC
f92817a deprecate unused `initialized` argument to `sort`. (#24424) extracted from #22388 01 November 2017, 15:59:25 UTC
9b3fbf5 Improve debug info correctness and printing in disassembler * Mark functions with correct line numbers This is consistent with what Clang does. * Mark functions with correct argument types for non-zero debug level * Do not print extra debug info before disassembling starts 01 November 2017, 14:54:29 UTC
8dcc13e Merge pull request #24418 from JuliaLang/yyc/codegen/memcmp Mark `memcmp` as `readonly`, `nounwind` and `argmemonly` 01 November 2017, 14:49:03 UTC
5b95805 Remove unused function "imagePath" (#24394) 01 November 2017, 14:45:07 UTC
d95cf2d Merge pull request #24428 from JuliaLang/yyc/codegen/union-offset Fix tag gep for bits union field in mutable type 01 November 2017, 09:11:07 UTC
a62ca27 Merge pull request #24416 from JuliaLang/yyc/codegen/alloc Improve allocation optimization with gc_preserve intrinsics 01 November 2017, 02:27:22 UTC
d9fcc64 Fix tag gep for bits union field in mutable type Close #24363 01 November 2017, 01:44:42 UTC
3fa96bd Deprecate eye(::Type{Diagonal{T}}, m::Integer) method. 31 October 2017, 22:10:30 UTC
7a54d3d Add Diagonal[{T}](S::UniformScaling, n) constructors. 31 October 2017, 22:10:29 UTC
back to top