Age | Commit message (Collapse) | Author |
|
RaimoNiskanen/raimo/stdlib/gen_statem-clean_timeout-infinity/OTP-13073
Change gen_statem:call(_, _, {clean_timeout,infinity}) to use proxy
|
|
Rewrite a catch expression like this:
catch side_effect(),
...
to:
try
side_effect()
catch
_:_ ->
ok
end,
...
A try/catch is more efficient since no stack trace will be built
when an exception occurs.
|
|
Improve the receive optimization to be able to handle code
such as this:
Ref = make_ref(),
try
side_effect()
catch _:_ ->
ok
end,
receive
%% Clauses that all match Ref.
.
.
.
end
|
|
If a try/catch is used to ignore the potential exception caused by some
expression with a side effect such as:
try
side_effect()
catch _Class:_Reason ->
ok
end,
.
.
.
the generated code will be wasteful:
try YReg TryLabel
%% call side_effect() here
try_end Yreg
jump GoodLabel
TryLabel:
try_case YReg
%% try_case has set up registers as follows:
%% x(0) -> error | exit | throw
%% x(1) -> reason
%% x(2) -> raw stack trace data
GoodLabel:
%% This code does not use any x registers.
There will be two code paths that both end up at GoodLabel, and
the try_case instruction will set up registers that are never used.
We can do better by replacing try_case with try_end to obtain this
code:
try YReg TryLabel
%% call side_effect() here
try_end Yreg
jump GoodLabel
TryLabel:
try_end YReg
GoodLabel:
The jump optimizer (beam_jump) can further optimize this code
like this:
try YReg TryLabel
%% call side_effect() here
TryLabel:
try_end YReg
|
|
that checks the construction of exception information. The test is
taken from the compiler SUITE but part of it (the one that constructs
exceptions which differ between BEAM and HiPE) is commented out.
Related to the discussion of #1596.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* lars/doc-cleanup/OTP-14475:
[edoc] Remove unused module otpsgml_layout.erl
Remove unused files from the documentation build
|
|
* lars/erl_docgen/code-tag-fix/OTP-14674:
[erl_docgen] Fix spacing for code blocks
[erl_docgen] Change pdf to have the same style as html for code,warning,note
|
|
|
|
* anders/diameter/reg_monitor/OTP-14668:
vsn -> 2.1.1
Update appup and code_change for ERIERL-83
|
|
* anders/diameter/reg_monitor/ERIERL-83:
Fix missing monitor in diameter_reg
|
|
|
|
|
|
|
|
|
|
|
|
* maint:
Updated OTP version
Update release notes
Update version numbers
|
|
* maint-19:
Updated OTP version
Update release notes
Update version numbers
Conflicts:
OTP_VERSION
erts/doc/src/notes.xml
erts/vsn.mk
lib/compiler/doc/src/notes.xml
lib/compiler/vsn.mk
otp_versions.table
|
|
|
|
|
|
* sverker/19/on_load-on_load-bug/OTP-14612:
erts: Fix 'on_load' tracing bug for modules with -on_load
code_SUITE:on_load_trace_on_load
|
|
'john/compiler/fail-labels-in-blocks-otp-19/ERIERL-48/OTP-14522' into maint-19
* john/compiler/fail-labels-in-blocks-otp-19/ERIERL-48/OTP-14522:
compiler: Fix live regs update on allocate in validator
Take fail labels into account when determining liveness in block ops
|
|
The functions are not performance critical. Will be used
when errors occurs, CRL data base is managed or legacy OpenSSL names
are used for ciphers.
|
|
|
|
|
|
Commit fae8ca0c inadvertently removed the monitor at add/1 and
add_new/1. As a result, process death did not remove associations,
causing table diameter_reg to leak entries and stop/start of a service
to fail.
Add a testcase to detect the problem, which existing testcases miss.
|
|
Rand plugin for cached strong crypto bytes
OTP-13370
|
|
* lukas/erts/poll-thread/OTP-14346:
erts: Update +IOt and msacc docs
|
|
bjorng/bjorn/stdlib/wildcard-escaping/ERL-451/OTP-14577
Implement escaping of special characters in wildcards
|
|
Allow characters with special meaning to be escaped using
\ (which must be writen as \\ in a string). That allows
matching of filenames containing characters that are special
in wildcards.
This is an incompatible change, but note that the use of backslashes
in wildcards would already work differently on Windows and Unix. Take
for example this call:
filelib:wildcard("a\\b")
On Windows, filelib:wildcard/1 would look for a directory named
"a", and a file or directory named "b" inside it.
On Unix, filelib:wildcard/1 would look for a file named "a\\b".
With this commit applied, filelib:wildcard/1 will look for
a file named "ab" on both Windows and Unix.
https://bugs.erlang.org/browse/ERL-451
|
|
|
|
|
|
ECDSA and DSA (DSS) public/private encryption/decryption does not work
|
|
Testcases for ECDSA and DSA encrypt/decrypt and some other adaptions
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Instead of crashing, ^D now exits Erlang if started with -oldshell.
|
|
* maint:
Updated OTP version
Prepare release
Fix zlib merge snafu
ssh: fix broken printouts
ssh: exclude aes_gcm if peer is OpenSSH 6.2 (known bug)
Conflicts:
OTP_VERSION
|
|
* maint-20:
Updated OTP version
Prepare release
Fix zlib merge snafu
ssh: fix broken printouts
ssh: exclude aes_gcm if peer is OpenSSH 6.2 (known bug)
|