Age | Commit message (Collapse) | Author |
|
|
|
* jj1bdx/stdlib/rand-jump/PR-1235/OTP-14038:
Add jump functions to rand module
|
|
|
|
|
|
* tokitori/stdlib/optimize-sets/PR-1212/OTP-14035:
Speed up sets:add_element/2 and sets:del_element/2
|
|
|
|
* github/pr/1227:
Update configure to work better on Mac
|
|
Jump functions returns the state after performing jump calculation to a
rand module internal state, which is equivalent to perform a large
number of calls of calculating new states for XorShift*/+ algorithms.
This commit add jump functions for exsplus and exs1024 algorithms, and a
wrapper function jump/1. The wrapper function will cause error with
reason "not_implemented" if the jump function for the algorithm is not
implemented.
This commit adds following new functionalities:
- Add new functions rand:jump/0 and rand:jump/1
- Add the member jump to type alg_handler(), a fun for performing
the jump function
- Add jump functions for exsplus, equivalent to 2^64 calls
- Add jump functions for exs1024, equivalent to 2^512 calls
- Revise seed_put/1, seed/1, seed/2
See <https://github.com/erlang/otp/pull/1235#discussion_r86950557>
- Add dummy jump function for exs64 calling
erlang:error(not_implemented)
- Add jump function test cases as follows:
* Add Common Test group reference_jump
* Add tests for jump/0 to reference_jump_procdict/1
* Rename tests for jump/1 to reference_jump_state/1
* Rename gen_jump/1 to gen_jump_1/1
* Add Common Tests reference_jump_procdict and reference_jump_state
to the group reference_jump
- Add jump function documentation
This commit also changes the Copyright year for Kenji Rikitake's code
from 2015 to 2015-2016.
|
|
* siri/appups-20.0:
Update sasl/test/test_lib.hrl with recent versions of kernel and stdlib
Update appups in kernel, stdlib and sasl for OTP-20
|
|
* tsloughter/mod_app/PR-1222/OTP-14029:
Accept default value of 'start_phases' and 'mod' in .app
|
|
* bjorn/compiler/tests:
guard_SUITE: Add more test of guards
compile_SUITE: Smoke test and cover more of v3_kernel_pp
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* peppe/common_test/fix_default_gl/ERL-279/OTP-13973:
Fix problem with printouts to incorrect parent group leader
OTP-13973
|
|
|
|
# Conflicts:
# lib/hipe/llvm/hipe_rtl_to_llvm.erl
|
|
* margnus1/hipe_llvm39_bugs/PR-1237:
hipe_rtl_to_llvm: Constants for bits per byte/word
hipe_llvm: Work around LLVM 3.9 sdesc bug
hipe_llvm: Fix incorrect atom alignment assumption
|
|
|
|
ECC certs should preferably use SHA2, this is what we want to be
testing. Also assembling of all available test suites must consider TLS version.
|
|
Update to look for -lodbc as well as default to /usr/local as you will need to brew install libiodbc.
|
|
The default value of 'mod' is '[]' and 'start_phases' is 'undefined'
in .app, but this value was not accepted if given in
the .app file. This is now corrected.
|
|
|
|
* ingela/ssl/tune-timeouts-packet_SUITE:
ssl: Change to more modest timeouts
|
|
|
|
* ingela/ssl/ECC-faulty-workaround:
ssl: Remove faulty workaround
|
|
We where never really satisfied with this workaround it was
a bit far fetched, so we are pleased to be able to remove it.
|
|
|
|
'gomoripeti/kernel/controlling_proc_badarg_doc/PR-1208/OTP-14022' into maint
* gomoripeti/kernel/controlling_proc_badarg_doc/PR-1208/OTP-14022:
controlling_process can return {error, badarg}
|
|
The constant ?WORD_WIDTH is renamed ?BITS_IN_WORD, and a new constant
?BITS_IN_BYTE is introduced.
Additionally, a bug in a currently unused case clause of
llvm_type_from_size/1 is fixed (the size of a word was hardcoded to 64
bits).
|
|
Optimize sets:add_element/2 when adding an element that is already present, and
sets:del_element/2 when the element to be deleted is not present. This optimization
can make certain operations, such as sets:union/2 with many overlapping elements,
up to two orders of magnitude faster.
|
|
|
|
* raimo/gen_statem-improvements/OTP-13929:
Log terminate to sys debug
Optimize event timeout
Rework timeout handling
Clarify the chapter 'Postponing Events' (ERL-284)
Fix doc and type for state enter calls
|
|
|
|
* jxck/fix-doc-typo/PR-1238:
fix typo on doc of maps
|
|
* richcarl/mnesia-app-module/PR-1223:
Make a separate application module for Mnesia
|
|
* maint:
New commands to ease looking up OTP documentation
|
|
* leoliu/tools/emacs-erldoc/PR-1197/OTP-14018:
New commands to ease looking up OTP documentation
|
|
typo
|
|
As of LLVM 3.9, the x86-call-frame-opt pass in LLVM's X86 backend causes
the stack descriptors to contain incorrect (or even negative) frame
sizes or root slot offsets.
This might cause LLVM-compiled modules to be rejected during loading
with a badarg exception in hipe_bifs:enter_sdecs/1 (which additionally
prints a "hipe_bifs_enter_sdesc_1: bad sdesc!" message to stderr), or it
might cause corruption or segmentation faults when walking stacks (f.ex.
during GC) containing frames compiled with ErLLVM.
As a workaround, we pass the -no-x86-call-frame-opt flag to llc when
the version is at least 3.9
|
|
ErLLVM was declaring atoms in the following manner:
@atom_ok = external constant i64
; Used inside a function like this
%var = ptrtoint i64* @atom_ok to i64
However, doing so makes LLVM think the `atom_ok` is 8-byte aligned,
since it refers to a i64 value. This resulted in LLVM occasionally
incorrectly optimising away type tests on atoms, causing incorrect
behaviour or even segfaults. One such case is in
bs_match_compiler:coverage_apply/2, in which an is_boxed test on a
literal atom was optimised away, causing the code to try and load the
"header" of an atom. This problem reproduces with LLVM versions 3.7
through 3.9.
By declaring atoms as i8 (byte) constants instead, LLVM no longer makes
these alignment assumptions, and the bug is fixed.
|
|
|
|
|
|
* kostis/hipe-bs_match_string/PR-1234/OTP-14005:
Add a test case that should now work
Fix the native code translation of bs_match_string
|
|
|
|
* ferd/ssl-allow-ecc-config/PR-1210/OTP-13959:
Add ECC curve selection order config in TLS server
|
|
|