aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2017-04-21Implement Xoroshiro116+ and improve statisticalsRaimo Niskanen
Implement Xoroshiro116+ as 'exrop' with fixes. Deprecate all old algorithms but reincarnate 'exs1024' as 'exs1024s' and 'exsplus' as 'exsp' with fixes. Fixes: * Avoid skew for uniform integers caused by using a simple 'rem' operation for range confinement. Correctness requires retry with new random value for an unfortunate first value. * Implement a correct algorithm that collects enough random bits for ranges larger than the generator's precision. * Fix uniform density for floats by acquiring 53 bits then multiplying with 2.0^(-53) which produces floats on the form N * 2.0^(-53).
2017-04-04Merge branch 'g-andrade/strong-random-numbers/PR-1367/OTP-14317'Raimo Niskanen
* g-andrade/strong-random-numbers/PR-1367/OTP-14317: Clean up documentation and test cases Attempt faster approach to strong random floats Allow for crypto upgrades when using rand plugin fixup! Support cryptographically strong rand plugin fixup! Support cryptographically strong rand plugin fixup! Support cryptographically strong rand plugin fixup! Support cryptographically strong rand plugin No longer expose strong_rand_(range|float) Support cryptographically strong rand plugin Restyle crypto strong numeric generators for usage in rand Support generation of strong random numbers
2017-04-04Merge branch 'ingela/inets/tests-cuddle'Ingela Anderton Andin
* ingela/inets/tests-cuddle: inets: Do not test https/ftps if crypto can not start
2017-04-04Merge branch 'hasse/debugger/fix_edit_variable/OTP-14318'Hans Bolinder
* hasse/debugger/fix_edit_variable/OTP-14318: debugger: Enable editing of bit strings in the bindings area debugger: Remove a debug printout
2017-04-04Clean up documentation and test casesRaimo Niskanen
2017-04-03Merge PR-1076 from g-andrade/feature/ets_conditional_insert OTP-14319Sverker Eriksson
ETS: Allow for conditional insertions
2017-04-03debugger: Enable editing of bit strings in the bindings areaHans Bolinder
The evaluated string looked like "V=<<1>>", which cannot be scanned correctly. A space after "=" fixes the bug.
2017-04-03debugger: Remove a debug printoutHans Bolinder
2017-04-03stdlib: Fix xmllint warningsHans Bolinder
Commit d2be06f introduced xmllint warnings.
2017-04-03Merge branch 'dgud/observer/keep-selection/OTP-14270'Dan Gudmundsson
* dgud/observer/keep-selection/OTP-14270: observer: (re)store config observer: Use event info to get active tab observer: Keep sel after column change tv observer: Keep port selection after refresh observer: Keep tv selection after refresh
2017-04-03inets: Do not test https/ftps if crypto can not startIngela Anderton Andin
2017-03-31Merge PR-1390 from kostis/on_load-no_native OTP-14316Sverker Eriksson
Add a no_native option to modules with an on_load
2017-03-31Merge branch 'egil/kernel/refactor-supervisor/OTP-14315'Björn-Egil Dahlberg
* egil/kernel/refactor-supervisor/OTP-14315: Update primary bootstrap kernel: Refactor supervision tree
2017-03-30kernel: Refactor supervision treeBjörn-Egil Dahlberg
Use maps in definitions to make them more readable.
2017-03-30Merge branch 'goeldeepak/erts/fix_inet_gethost_long/ERL-61/PR-1345/OTP-14310'Lukas Larsson
* goeldeepak/erts/fix_inet_gethost_long/ERL-61/PR-1345/OTP-14310: This patch fixes the issue in which erlang fails to start if the hostname is 64 characters on a linux system.
2017-03-28observer: (re)store configDan Gudmundsson
Store config when exiting app and restore config when starting again.
2017-03-28Merge PR-1392 from margnus1/hipe-range-fixpoint-bug OTP-14306Sverker Eriksson
HiPE: Fix ERL-278: Fix range analysis miscompilation bug
2017-03-28hipe_icode_range: Add comment about side-effectsMagnus Lång
2017-03-28observer: Use event info to get active tabDan Gudmundsson
Previously changing tabs during high cpu-load, could make the change go unnoticed, and thus the graphs did not get updated.
2017-03-28observer: Keep sel after column change tvDan Gudmundsson
2017-03-28observer: Keep port selection after refreshDan Gudmundsson
2017-03-28observer: Keep tv selection after refreshDan Gudmundsson
Selection was lost after updates
2017-03-28Merge branch 'lukas/kernel/gen_tcp_close_docs'Lukas Larsson
* lukas/kernel/gen_tcp_close_docs: kernel: Expand gen_tcp:close docs with send text
2017-03-28kernel: Expand gen_tcp:close docs with send textLukas Larsson
This commit attempts to clarify some of the guarantees given by the TCP standard when issuing close. This is quite a complex topic so there are probably corner cases still left, but this at least tells the user that things can go wrong when doing a close.
2017-03-27Merge PR-1386 from kostis/hipe-const-alignment OTP-14302Sverker Eriksson
hipe: Fix alignment of byte-sized constants
2017-03-27Merge pull request #1387 from margnus1/hipe-spilllimit-fixSverker Eriksson
HiPE: Fix off-by-one bug in register allocators Fix for PR-1380
2017-03-27hipe: Fix range analysis of calls with ignored resMagnus Lång
HiPE's range analysis would not update the arguments of a callee when the result of the call was ignored. Fixes ERL-278.
2017-03-27Add a no_native option wherever there is an on_loadKostis Sagonas
This is a poor man's solution that allows to build and test the system with all files compiled to native code simply by setting the ERL_COMPILER_OPTS environment variable. Better solutions, like automatically setting the no_native option whenever the compiler sees an on_load attribute, obviously exist but require more time to implement.
2017-03-27hipe: Fix range analysis of 'rem' operatorMagnus Lång
erl_bif_types contains a fixed and improved copy-paste (obvious from the dead Max_range2_leq_zero if branches) of hipe_icode_range:range_rem/2. For now, delete the dead code and propagate back fixes and improvements to hipe_icode_range.
2017-03-24Remove inets from runtime dependencies in toolsJosé Valim
Commit d8ff1e3 removed cover_web and therefore tools no longer depends on inets.
2017-03-24Fix double hit bug of select/3 with bound keySverker Eriksson
2017-03-24Merge branch 'egil/compiler/is_tagged_tuple/OTP-12148'Björn-Egil Dahlberg
* egil/compiler/is_tagged_tuple/OTP-12148: Update primary bootstrap compiler: Cover beam_record in tests hipe: Transform is_tagged_tuple instruction compiler: Add is_tagged_tuple instruction
2017-03-24compiler: Cover beam_record in testsBjörn-Egil Dahlberg
2017-03-24hipe: Transform is_tagged_tuple instructionBjörn-Egil Dahlberg
2017-03-24compiler: Add is_tagged_tuple instructionBjörn-Egil Dahlberg
Rewrite the instruction stream on tagged tuple tests. Tagged tuples means a tuple of any arity with an atom as its first element. Typically records, ok-tuples and error-tuples. from: ... {test,is_tuple,Fail,[Src]}. {test,test_arity,Fail,[Src,Sz]}. ... {get_tuple_element,Src,0,Dst}. ... {test,is_eq_exact,Fail,[Dst,Atom]}. ... to: ... {test,is_tagged_tuple,Fail,[Src,Sz,Atom]}. ...
2017-03-23HiPE: Fix off-by-one in register allocatorsMagnus Lång
hipe_regalloc_loop considers SpillLimit to be an inclusive lower bound, the allocators considered it to be an exclusive lower bound. The allocators are changed to also consider it an inclusive lower bound. This caused the register allocators to occasionally spill the first "unspillable" temporary. This caused a failure in a newly added assertion when hipe-compiling dets_v9 on x86.
2017-03-23Merge branch 'ingela/ssl/make-cert-test-data/OTP-14294'Ingela Anderton Andin
* ingela/ssl/make-cert-test-data/OTP-14294: ssl, public_key: Add functionality for generating X509 cert test data
2017-03-23ssl, public_key: Add functionality for generating X509 cert test dataIngela Anderton Andin
For now this functionality is located in ssl. And existing public_key function is extended. However some of the functionality may be moved to public_key in a later stage.
2017-03-23Merge branch 'ingela/ssl/dtls-frag'Ingela Anderton Andin
* ingela/ssl/dtls-frag: dtls: Handle overlapping fragments
2017-03-23dtls: Handle overlapping fragmentsIngela Anderton Andin
Fragment reassembling needs to handle that a smaller fragment then sent originally might overlap an earlier received fragment.
2017-03-23ssh: disable problematic crypto in ssh_bench_SUITEHans Nilsson
2017-03-23ssh: new benchmark suite: ssh_bench_SUITEHans Nilsson
2017-03-23ssh: remove old ssh_benchmark_SUITEHans Nilsson
Seem to draw much resources (time & prim mem)
2017-03-23Remove ctab_array since apparently is not usedKostis Sagonas
2017-03-23Remove (now) unnecessary argument of pack_constantsKostis Sagonas
2017-03-23ets: Polish select_replace/2 documentationGuilherme Andrade
2017-03-22Add more complete key-safety checkSverker Eriksson
2017-03-22Reject unsafe matchspecs on ets:select_replace/2Guilherme Andrade
Preemptively fail operation with badarg if the replacement object might have a different key.
2017-03-22Disable ets:select_replace/2 for bagsGuilherme Andrade
The existing implementation presented both semantic inconsistencies and performance issues.
2017-03-22Add unit tests for ets:select_replace/2Guilherme Andrade