aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2018-11-30Merge branch 'maint'Hans Nilsson
* maint: crypto: Split function in otp_test_engine crypto: Update test engine with fake rsa support Correct typo in logger formatter docs
2018-11-30crypto: Split function in otp_test_engineHans Nilsson
Safer with one function to fetch public key and another for private key.
2018-11-30crypto: Update test engine with fake rsa supportHans Nilsson
We need to test the Engine interface not only for loading, key retrieval and hashing, so it is complemented with a fake rsa method to check sign/verify also.
2018-11-30Merge pull request #2034 from lpil/lpil/typoSiri Hansen
Correct typo in logger formatter docs
2018-11-30Merge branch 'maint'Rickard Green
* maint: Updated OTP version Prepare release
2018-11-30Merge branch 'maint-21' into maintRickard Green
* maint-21: Updated OTP version Prepare release
2018-11-29Prepare releaseErlang/OTP
2018-11-29Merge branch ↵Erlang/OTP
'sverker/kernel/net_kernel-failed-accept_pending/ERL-781/OTP-15438' into maint-21 * sverker/kernel/net_kernel-failed-accept_pending/ERL-781/OTP-15438: kernel: Fix bug in net_kernel for connection attempt from self
2018-11-29Merge branch 'maint'Siri Hansen
2018-11-29Merge branch 'siri/logger/ets-read-concurrency/ERL-782/OTP-15453' into maintSiri Hansen
* siri/logger/ets-read-concurrency/ERL-782/OTP-15453: [logger] Add read_concurrency to options for logger ets table
2018-11-29Merge branch 'siri/logger/refactor-built-in-handlers' into maintSiri Hansen
* siri/logger/refactor-built-in-handlers: [logger] Write asynchronously to disk log [logger] Add statistics counter for drops due to message bursts [logger] Further refactor built-in handlers [logger] Move common handler code to logger_h_common
2018-11-29Merge branch 'lukas/ssl/dist_benchmarks'Lukas Larsson
* lukas/ssl/dist_benchmarks: stdlib: Adjust binary bench to be faster ssl: Add scheduler utilization benchmark of plain/tls dist ssl: Link to tstsrvr to group_leader in test ssl: Add some benchmarks to test
2018-11-29stdlib: Adjust binary bench to be fasterLukas Larsson
When benchmarking releases before OTP-22 the binary:match function is very slow so it takes a long time to run the benchmarks. This commit makes the benchmark run for a shorter time which will make the results a bit less stable, but it will cut 1 hour from the benchmark regression so we will have to live with that.
2018-11-29ssl: Add scheduler utilization benchmark of plain/tls distLukas Larsson
2018-11-29ssl: Link to tstsrvr to group_leader in testLukas Larsson
If the check_ssl_node_up call is made by an rpc:call the calling process will terminate and thus the tstsrvr loop would terminate too early. We instead link with the group leader so that the look still terminates, but only if the parent node does.
2018-11-29ssl: Add some benchmarks to testLukas Larsson
The ssl benchmarks tend to break when doing other changes in ssl, so we add some of the benchmarks to be run as part of normal testing.
2018-11-28Correct typo in logger formatter docsLouis Pilfold
2018-11-28Merge branch 'maint'Siri Hansen
2018-11-28Merge branch 'siri/logger/doc-macros-in-hrl/ERL-787' into maintSiri Hansen
* siri/logger/doc-macros-in-hrl/ERL-787: [logger] Document that macros are defined in logger.hrl
2018-11-28Merge pull request #2033 from bjorng/bjorn/compiler/sharingBjörn Gustavsson
Add a code sharing optimization pass
2018-11-28Merge branch 'maint'Siri Hansen
2018-11-28Merge pull request #2008 from aronisstav/reltool-fix-erl-libs-windowsSiri Hansen
Make reltool correctly handle Windows 'ERL_LIBS' OTP-15454
2018-11-28Cover more code in beam_jumpBjörn Gustavsson
The previous optimizations caused some code in beam_jump to become uncovered. Add tests to cover more code. Also remove a clause in beam_jump:opt/3 that does not seem possible to cover anymore (this is safe, because the clause was an optimization).
2018-11-28beam_jump: Eliminate jumps to return instructionsBjörn Gustavsson
Eliminate a jump to a return sequence, replacing the jump with the return sequence. This optimization always save execution time and may also save code space.
2018-11-28beam_jump: Remove the unused #st.index fieldBjörn Gustavsson
181cfc4ef9d1 stopping used #st.index.
2018-11-28Cover some code in beam_peepBjörn Gustavsson
Some lines in beam_peep were no longer covered when the sharing optimization was added to beam_ssa_opt. Also remove some code from beam_peep that no longer seems possible to cover.
2018-11-28Share the code for semantically equivalent blocksBjörn Gustavsson
Share code for semantically equivalent blocks referred to to by `br` and `switch` instructions. A similar optimization is done in `beam_jump`, but doing it here as well is beneficial as it may enable other optimizations. Also, if there are many semantically equivalent clauses, this optimization can substanstially decrease compilation times.
2018-11-27Merge branch 'maint'Siri Hansen
2018-11-27Merge branch 'siri/cdv/div-bugfixes/OTP-15391' into maintSiri Hansen
* siri/cdv/div-bugfixes/OTP-15391: [cdv] Handle multiple "Yc" lines refering to the same refc binary [cdv] Speed up reading of dump with many processes
2018-11-27Merge branch 'siri/cdv/truncated-literals/OTP-15377' into maintSiri Hansen
* siri/cdv/truncated-literals/OTP-15377: [cdv] Fix handling of truncated literals
2018-11-27[logger] Document that macros are defined in logger.hrlSiri Hansen
2018-11-27[logger] Add read_concurrency to options for logger ets tableSiri Hansen
2018-11-26Merge branch 'maint'Rickard Green
* maint: kernel: Fix bug in net_kernel for connection attempt from self
2018-11-26Merge branch ↵Rickard Green
'sverker/kernel/net_kernel-failed-accept_pending/ERL-781/OTP-15438' into maint * sverker/kernel/net_kernel-failed-accept_pending/ERL-781/OTP-15438: kernel: Fix bug in net_kernel for connection attempt from self
2018-11-23kernel: Fix bug in net_kernel for connection attempt from selfSverker Eriksson
net_kernel crashed due to invalid return from handle_info. Could only happen if erts_internal:new_connection fails due to non-atom Node or if Node is the own node name.
2018-11-22Merge branch 'maint'Björn Gustavsson
* maint: Fix inadvertently suppressed warning for unused variable
2018-11-22Merge pull request #2026 from bjorng/bjorn/stdlib/fix-missing-warning/ERL-762Björn Gustavsson
Fix inadvertently suppressed warning for unused variable OTP-15437
2018-11-22Merge branch 'maint'Hans Nilsson
* maint: ssh: Add forgotten doc about the files ssh_host_ed*_key
2018-11-22Merge branch 'hans/ssh/eddsa/OTP-15094' into maintHans Nilsson
* hans/ssh/eddsa/OTP-15094: ssh: Add forgotten doc about the files ssh_host_ed*_key
2018-11-21ssh: Add forgotten doc about the files ssh_host_ed*_keyHans Nilsson
2018-11-21Merge branch 'maint'Björn Gustavsson
* maint: Fix internal consistency failure for is_function/2 Conflicts: lib/compiler/src/beam_utils.erl
2018-11-21Merge pull request #2023 from bjorng/bjorn/compiler/misc-improvementsBjörn Gustavsson
Enhance compiler optimizations
2018-11-21Sort move instructions on the Y registerBjörn Gustavsson
Sort sequences of `move` instructions on the Y register. When moving from X registers to Y registers, having the instructions sorted on Y registers give the loader more opportunities to use `move_window{3,4,5}` instructions. For examples, the following five instructions: move_xy x(2) y(0) move_xy x(1) y(1) move_xy x(0) y(2) move_xy x(5) y(3) move_xy x(4) y(4) can be replaced with: move_window5_xxxxxy x(2) x(1) x(0) x(5) x(4) y(0) When the Y registers are not ordered so that `move_window5` can be used, the loader would typically combine the first three moves to a `move3_xyxyxy` instruction and the last two moves to a `move2_par_xyxy` instruction. When moving from Y registers to X registers, sorting on the Y registers could potentially be more cache-friendly. It could also be worthwhile investigating a new `move_window` instruction in the BEAM interpreter that could move values from contiguous Y registers to X registers. Note that `scripts/diffable` can generate diffable dissambly files for the loaded BEAM code: $ scripts/diffable --dis 0 $ scripts/diffable --dis 1 $ diff -u 0 1
2018-11-21Merge branch 'peterdmv/ssl/first_client_hello/OTP-15373'Péter Dimitrov
* peterdmv/ssl/first_client_hello/OTP-15373: ssl: Fix property tests ssl: Improve the "start" and "negotiated" states ssl: Improve TLS 1.3 state machine ssl: Fix handling of "signature_algs" in ClientHello ssl: Fix default values of "signature_algs" ssl: Auto generate build dependencies ssl: Fix encode/decode of ClientHello (TLS 1.3) ssl: Change defaults for "supported_groups" ssl: Fix compilation warnings ssl: Implement the 'key_share' extension Change-Id: I31d5d376cee586f4824cd38703d56920d372ed2e
2018-11-21Fix inadvertently suppressed warning for unused variableBjörn Gustavsson
An external fun could inadvertently suppress warnings for unused variables, such as in this example: bug() -> BugVar = foo(), if true -> fun m:f/1 end. There would be no warning that `BugVar` was unused. The bug was introduced in ff432e262e652, which was the commit that extended external funs to allow variables. https://bugs.erlang.org/browse/ERL-762
2018-11-20Merge branch 'sverker/ets-ordered-set-fixups'Sverker Eriksson
2018-11-20stdlib: Fix bug in ets_SUITE:smp_ordered_iterationSverker Eriksson
Did fail on really slow unlucky machines.
2018-11-20Fix internal consistency failure for is_function/2Björn Gustavsson
There could be an internal consistency failure when using is_function/2, because an optimization did not take into account that is_function/2 can fail. https://bugs.erlang.org/browse/ERL-778
2018-11-20ssl: Fix property testsPéter Dimitrov
Replace hardcoded max size in 'choose' function with the length of supported groups. Change-Id: I4ac595cfee2c3cf0c9d9e1cffd0988940130a0d6
2018-11-20ssl: Improve the "start" and "negotiated" statesPéter Dimitrov
This change adds the capability to the TLS 1.3 server to process ClientHello messages and answer with ServerHello. Change-Id: I13f6cfac932574300338e7301c6162252a591c70