Age | Commit message (Collapse) | Author |
|
|
|
Put guard_cg_list/6 directly after guard_cg/5.
|
|
The function guard_cg/5 handles constructs found within
the records #k_guard_clause{] and #k_protected{}.
Since #k_guard_clause{} can only contain a #k_protected{},
and #k_protected{} in turn cannot contain a #cg_block{},
the clause for handling #cg_block{} in guard_cg/5 is never
executed and can be removed.
|
|
The variable being added will already be there (added by v3_kernel).
|
|
bjorng/bjorn/compiler/fix-excessive-allocations/ERL-514
Avoid excessive stack frame allocation
OTP-14808
|
|
|
|
When converting a comparison BIF (such as '=:=') to a test
instruction, run the other optimizations on the result.
When trying to combine is_eq_exact tests, handle the case
that is_eq_exact is followed by a jump instead of a label
to handle a test that has been newly converted from a BIF.
Taken together, those changes will coalesce more is_eq_exact
instructions into select_val instructions.
|
|
A 'case' or 'if' that does not occur last in a function clause will
always force a stack frame. The reasoning behind this is that in most
uses of 'case' there will be a function call from within the
'case'. When there is a function call, the stack frame is needed both
to save the continuation pointer and to save any X registers that will
need to survive the call.
When there is no function call from a 'case', the resulting stack
frame is annoying. There will be register shuffling, and the existence
of the stack frame may thwart many optimizations (for example, in
beam_dead).
Therefore, add an extra pass to v3_codegen to avoid creating a
stack frame when not needed.
https://bugs.erlang.org/browse/ERL-514
|
|
Conflicts:
lib/ssl/src/ssl_cipher.erl
lib/ssl/src/ssl_handshake.erl
|
|
* ingela/ssl/cipher-suites/OTP-14749:
ssl: Use maps for cipher suites internally
|
|
This is a preparation for improvements to come in option handling and
support for TLS-1.3
|
|
|
|
* peppe/common_test/auto_cleanup/OTP-13832:
Add tests and doc for the new remaining_test_procs function
Implement function that finds disposable test processes
Tag Common Test system processes using process dictionary
Add app name tag in process dictionary
OTP-13832
|
|
|
|
* origin/raimo/ssl-dist-bench/OTP-14657:
Write SSL distribution benchmarks
Polish SSL distribution
Handle whitebox test message
Correct distribution doc
Use SNI when connecting
Use -ssl_dist_optfile options
Read in -ssl_dist_optfile to ETS
Facilitate test certs with common root
Stop checking DNS name for SNI
|
|
* raimo/ssl-dist-optfile-backport/OTP-14657:
Use SNI when connecting
Use -ssl_dist_optfile options
Read in -ssl_dist_optfile to ETS
Facilitate test certs with common root
Stop checking DNS name for SNI
|
|
|
|
* peppe/common_test/index_last_test/OTP-14281:
Show links to latest test run by using an html redirection file
OTP-14281
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* maint:
mnesia: Fix error handling in abort write
|
|
* dgud/mnesia/backup-error-handling/OTP-14776:
mnesia: Fix error handling in abort write
|
|
add hibernate_after to the gen options type spec
|
|
* maint:
debugger: Do not quote variables and button names in windows
|
|
* hasse/debugger/fix_unicode/OTP-14802:
debugger: Do not quote variables and button names in windows
|
|
v3_kernel could generate a #k_break{} with only one variable, even if
the preceding code and succeding code expected more than one value. It
happened to work anyway because the value returned from the break was
not actually used.
|
|
We used to not care about the number of values returned from the
'after infinity' clause in a receive (because it could never be
executed). It is time to start caring because this will cause problem
when we will soon start to do some more aggressive optimizizations.
|
|
* bjorn/compiler/clean-up-codegen:
bs_match_SUITE: Cover more clauses in v3_codegen:bs_rename_ctx/4
Clean up and comment code generation for basic blocks
Stop trying to maximize the use of x(0)
Clean up collection of basic blocks
|
|
|
|
|
|
|
|
The bug was introduced in commit 7eaaf5.
|
|
* maint:
crypto: engine_SUITE update
crypto: fix pubkey_to_privkey
|
|
* hans/crypto/fix_wrong_error_return_privkey_to_pubkey:
crypto: engine_SUITE update
crypto: fix pubkey_to_privkey
|
|
* maint:
public_key: Separated failing gen_ec_param test case into two because two different curve classes were tested in one TC and on one test machine only one was supported
|
|
because two different curve classes were tested in one TC and on one test machine only one was supported
|
|
|