Age | Commit message (Collapse) | Author |
|
We can avoid calling eq() from the is_eq_exact_literal/3
and is_ne_exact_literal/3 instructions if the source operand is
an immediate (since a literal is either a boxed or a list, never
an immediate).
|
|
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}.
.
.
.
|
|
typo in OTP Design Principles
|
|
OTP-13764
Implement uniform floats with decreasing distance towards 0.0
|
|
* bjorn/erts/cuddle-with-tests:
Eliminate use of deprecated functions in string
Eliminate warnings for ignoring the result of an expression
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* lukas/erts/win_user_home_dir/OTP-14691:
erts: Use PROFILE dir as home on windows
|
|
|
|
* ingela/dtls/no-packet-upd/OTP-14664:
ssl: No support for packet option over unreliable transport
|
|
* sverker/on_load-nonblocking/OTP-14680:
erts: Remove scheduler blocking during finish_after_on_load_2
|
|
|
|
* sverker/dist-send-noreply-opt/OTP-14689:
erts: Improve distribution send operations
|
|
|
|
* ingela/ssl/extend-hostname-check/OTP-14632/OTP-14655:
ssl: Fix test cases to work on all test platforms
public_key: Fix dialyzer spec
ssl: Sessions must be registered with SNI if exists
ssl: Extend hostname check to fallback to checking IP-address
public_key, ssl: Handles keys so that APIs are preserved correctly
|
|
* siri/observer/multiple-ms-clauses/ERL-489:
Allow multiple clauses in match spec
|
|
* maint:
stdlib: Make ets:i/1 exit cleaner upon ^D (old Erlang shell)
|
|
* hasse/stdlib/fix_ets_i_1/OTP-14663:
stdlib: Make ets:i/1 exit cleaner upon ^D (old Erlang shell)
|
|
|
|
|
|
* lukas/jinterface/disable-travis:
jinterface: Skip tests when hostname cannot be resolved
|
|
* dgud/dot_erlang/OTP-14439:
fixup! Do not load .erlang from current dir
erlc: Do not load .erlang
escript: Do not load .erlang
dialyzer: Do not load .erlang
reltool: Add no_dot_erlang bootfiles
Enable usage of no_dot_erlang in bootstrap
Do not load .erlang from current dir
|
|
* dgud/kernel/get_chars_raw_echo_off:
Let io:get_chars/2 (echo off) fetch chars without eol
|
|
|
|
* sverker/cerl-rr:
erts: Add -rr option to cerl start script
|
|
Check that the hostname can be resolved by the native resolver.
What normally has happened when it cannot is that gethostname()
returned a fqdn and `hostname -s` is not part of /etc/hosts.
This is solved on the erlang side by adding `hostname -s` to inet_db,
but java does not have a similar mechanism, so it fails when
it tries to connect to `hostname -s`.
This caused jinterface tests to fail when run in such an environment,
and travis-ci recently started doing this.
|
|
Conflicts:
lib/ssl/src/ssl_connection.erl
|
|
* ingela/ssl/funtion-name-macro:
ssl: Use ?FUNCTION_NAME
|
|
Use ?FUNCTION_NAME macro to enhance code as we will not back-port this
version of the ssl application to versions pre OTP 19.
|
|
Document the guarantees provided by get_stacktrace
OTP-14687
|
|
|
|
|
|
|
|
|
|
|
|
Use hradcoded rsa keys as this will work on all legacy platforms.
In test case dns_name_reuse only do the relevant client check in the
final test.
|
|
|
|
Instead of using C:\Windows we use the profile path as the
home path on windows. The profile path normally resolves
to C:\Users\%USERNAME%. This fixes an issue where the default
path to the .erlang.cookie was not the same for jinterface as
for erl.
|
|
|
|
|
|
* ingela/ssl/remove-deprcated-string:
ssl: Use new string functions
|
|
|
|
|
|
If no SNI is available and the hostname is an IP-address also check
for IP-address match. This check is not as good as a DNS hostname check
and certificates using IP-address are not recommended.
|
|
|
|
(Slightly) optimize catch and try/catch
OTP-14683
|