Age | Commit message (Collapse) | Author |
|
* lukas/erts/misc_fixes:
erts: Fix a bunch of compiler warnings
kernel: Fix gen_tcp_misc indentation
erts: Fail port_SUITE:huge_env if error code > 127
erts: Add lcnt prototype for dist locks update
|
|
Correct erlang:is_builtin/3 for apply/2 and yield/0
|
|
* bjorn/compiler/eliminate-v3_life/OTP-14712:
Eliminate the v3_life pass
|
|
|
|
* ingela/public_key-test:
public_key: Check that ec curve used for test is supported
|
|
erlang:is_builtin(erlang, M, F) returns false for apply/2 and
yield/0. The documentation for erlang:is_builtin/3 says that it
returns true for BIFs that are implemented in C. apply/2 and
yield/0 are implemented in C (as BEAM instructions), and
therefore the correct return value is true.
Also see a similar argument that was made for apply/3 in the past:
http://erlang.org/pipermail/erlang-bugs/2015-October/005101.html
https://bugs.erlang.org/browse/ERL-500
|
|
|
|
The v3_life pass does not do enough to be worth being its own
pass. Essentially it does two things:
* Calculates life-time information starting from the annotations
that v3_kernel provides. That part can be moved into v3_codegen.
* Rewrites the Kernel Erlang records to similar plain tuples
(for example, #k_cons{hd=Hd,tl=Tl} is rewritten to {cons,Hd,Tl}).
That rewriting is not needed and can be eliminated.
|
|
Guard test for error case was not updated to handle httpc stream concept
properly.
|
|
|
|
|
|
* ingela/inets/not-chunked-esi/OTP-14656:
inets: httpd - Fix broken handling of POST requests
|
|
* maint:
parsetools: Fix unused functions warnings in leexinc.hrl
|
|
maint
* hasse/parsetools/unused_funcs_leexinc/ERL-497/OTP-14697:
parsetools: Fix unused functions warnings in leexinc.hrl
|
|
|
|
* ingela/inets/http-sync-close/OTP-14696:
inets: Make sure httpd:stop_service is synchronous
|
|
New chunk mechanism of body data in POST requests added in
5d01c70ca399edf28e99dc760506329689fab6ba
broke handling of POST body data not using the new mechanism.
Added better regression test
|
|
* maint:
Updated OTP version
Update release notes
Update version numbers
erts: Fix so that bind correct schedulers
Update version
Fix error handling when decoding an AVP with an alternate dictionary
Remove unused function arguments
Fix faulty recursion
vsn -> 2.1.2
Update appup for ERIERL-14684
Fix speling error 'sndbuf' -> 'recbuf'
Add zlib:set_controlling_process/2
|
|
* maint-20:
Updated OTP version
Update release notes
Update version numbers
erts: Fix so that bind correct schedulers
Update version
Fix error handling when decoding an AVP with an alternate dictionary
Remove unused function arguments
Fix faulty recursion
vsn -> 2.1.2
Update appup for ERIERL-14684
Fix speling error 'sndbuf' -> 'recbuf'
Add zlib:set_controlling_process/2
|
|
|
|
* anders/diameter/decode/OTP-14684:
vsn -> 2.1.2
Update appup for ERIERL-14684
|
|
* anders/diameter/decode/ERIERL-85:
Fix error handling when decoding an AVP with an alternate dictionary
Remove unused function arguments
Fix faulty recursion
|
|
* raimo/snmp/option-recbuf-broken-for-snmpm/OTP-13372:
Update version
Fix speling error 'sndbuf' -> 'recbuf'
|
|
|
|
|
|
base64:decode(List) optimized reimplementation
OTP-14624
|
|
|
|
* siri/rb/fix-bad_form/ERL-261/OTP-13906:
[rb] Don't fail for unexpected type of report
|
|
* bjorn/compiler/match-literals:
Optimize instructions for comparing a register with a literal
Optimize matching of literals for single-valued types
|
|
* maint:
fix win32 share filename join/split (#1604)
Correct io_vec handling
|
|
* dgud/wx/fix-empty-binaries/OTP-14688:
Correct io_vec handling
|
|
Handle UNC (shared) path on win32, previously "//dir/.." and "\\\\dir\.." was cleaned up to
"/dir/.." which was not correct.
OTP-14693
|
|
Conflicts:
lib/ssl/src/inet_tls_dist.erl
|
|
* ingela/ssl/dist-crl:
ssl: Do not provide IP address to ssl:connect in erlang distribution over TLS
|
|
|
|
* ingela/public_key/ecc-keys/RRL-482/OTP-14620:
public_key: Handle formatting of ECC params from DER to crypto API
|
|
Solves ERL-482
|
|
If a type only has one clause and if the pattern is literal,
the matching can be done more efficiently by directly comparing
with the literal.
Example:
find(String, "") -> String;
find(String, <<>>) -> String;
find(String, SearchPattern) ->
.
.
.
Without this optimization, the relevant part of the code would look
this:
{test,bs_start_match2,{f,3},2,[{x,1},0],{x,2}}.
{test,bs_test_tail2,{f,4},[{x,2},0]}.
return.
{label,3}.
{test,is_nil,{f,4},[{x,1}]}.
return.
{label,4}.
.
.
.
That is, if {x,1} is a binary, a match context will be built to
test whether {x,1} is an empty binary.
With the optimization, the code will look this:
{test,is_eq_exact,{f,3},[{x,1},{literal,<<>>}]}.
return.
{label,3}.
{test,is_nil,{f,4},[{x,1}]}.
return.
{label,4}.
.
.
.
|
|
As TLS clients will perform a hostname check against certificates
the IP-address does not make much sense.
|
|
* maint:
Bump version of crash dumps to 0.4
Verify that binaries of different sizes are dumped correctly
Don't dump literal areas that are not referenced at all
Dump literals separately to avoid incomplete heap data
Implement dumping of maps in crash dumps
Buffer writing of crash dumps
Conflicts:
erts/emulator/beam/erl_alloc.types
|
|
* bjorn/improve-crash-dumps/OTP-14685:
Bump version of crash dumps to 0.4
Verify that binaries of different sizes are dumped correctly
Don't dump literal areas that are not referenced at all
Dump literals separately to avoid incomplete heap data
Implement dumping of maps in crash dumps
Buffer writing of crash dumps
|
|
|
|
OTP-13764
Implement uniform floats with decreasing distance towards 0.0
|
|
|
|
When a literal was used from several processes, the literal would
be dumped in only one of the processes. The other processes
that referenced the literals would have incomplete heap data.
|
|
Maps would be dumped as the atom 'undefined', which is
not very informative.
|
|
|
|
|
|
|
|
|