Age | Commit message (Collapse) | Author |
|
|
|
|
|
OTP-13087
|
|
OTP-13086
|
|
OTP-13082
* sverk/binary_split_bif:
erts: Minor refactor for binary find BIF backend
erts: Refactor BIF for binary:match,matches,split
erts: Refactor backend of binary:split
erts: Replace 0 with THE_NON_VALUE
stdlib: Add BIF option 'trim_all' to binary:split/3
stdlib: Add BIF binary:split/2 and binary:split/3
Conflicts:
bootstrap/lib/stdlib/ebin/binary.beam
|
|
* Use NULL instead of THE_NON_VALUE for non-Eterm variable.
* Add BinaryFindState_bignum struct to avoid unnecessary type casting.
|
|
with an common do_binary_find() used by match, matches and split.
|
|
to reduce code volume.
|
|
|
|
|
|
|
|
|
|
* lukas/erts/win32_bool_fix/OTP-13079:
erts: bool is a reserved word, use boolean instead
|
|
|
|
* lukas/erts/process_mem_test_fix/OTP-13077:
erts: Don't run processes tests on lcnt with little memory
|
|
|
|
* lrascao/fix/build_fail_on_enabled_dist_debug:
Fix build fail when enabling distribution debug messages
|
|
A new {line_delimiter, byte()} option allows line-oriented TCP-based
protocols to use a custom line delimiting character. It is to be
used in conjunction with {packet, line}.
This option also works with erlang:decode_packet/3 when its first argument
is 'line'.
|
|
|
|
A new {line_delimiter, byte()} option allows line-oriented TCP-based protocols
to use a custom line delimiting character. It is to be used in conjunction
with {packet, line}.
This option also works with erlang:decode_packet/3 when its first argument
is 'line'.
|
|
|
|
* kostis/hipe-native-bif-warning:
Take out unused code that results in a gcc warning
OTP-13041
|
|
|
|
* bjorn/erts/builtin/OTP-13034:
Teach erlang:is_builtin/3 that erlang:apply/3 is built-in
|
|
Binary vheap mature is not necessary for binary gc.
|
|
erlang:is_builtin(erlang, apply, 3) returns 'false'. That seems to be
an oversight in the implementation of erlang:is_builtin/3 rather than
a conscious design decision. Part of apply/3 is implemented in C (as a
special instruction), and part of it in Erlang (only used if apply/3
is used recursively). That makes apply/3 special compared to all other
BIFs.
From the viewpoint of the user, apply/3 is a built-in function,
since it cannot possibly be implemented in pure Erlang.
Noticed-by: Stavros Aronis
|
|
|
|
|
|
Another process may already have been placed in this slot
since the free och the process struct can be scheduled for
later.
|
|
* maint:
erts: Make sure to deal with EINTR write failures
|
|
* lukas/erts/ttsl_eintr/OTP-12987:
erts: Make sure to deal with EINTR write failures
|
|
|
|
* goertzenator/enif_make_pid-unused_param:
fix unused parameter warning in enif_make_pid
OTP-12989
|
|
* mikpe/erts-binary_to_integer-fix:
erts: fix binary_to_integer boundary case
OTP-12988
|
|
|
|
|
|
* sverk/inet-packet-ssl_tls-passive:
erts: Fix inet packet mode ssl_tls for passive mode
|
|
* maint:
Add configure switch --disable-saved-compile-time
Fix ethread events with timeout
Improve choice of clock sources at build time
|
|
* rickard/disable-saved-compile-time/OTP-12971:
Add configure switch --disable-saved-compile-time
Conflicts:
HOWTO/INSTALL.md
|
|
* rickard/event-tmo/OTP-12954:
Fix ethread events with timeout
|
|
|
|
Caused stack corruption leading to VM crash on windows.
{packet,ssl_tls} is undocumented by the way.
|
|
|
|
Conflicts:
erts/emulator/beam/erl_printf_term.c
erts/emulator/beam/erl_term.c
erts/emulator/beam/utils.c
|
|
of a process with a matchstate on the stack.
|
|
If the process stack contained a match state
the print function would crash the vm as it was not
recognized by tag_val_def().
Add new MATCHSTATE_DEF returned by tag_val_def().
All other callers either ignore it or has a default
clause to handle invalid terms.
|
|
|
|
* sverk/hipe-fix-literal-crc:
erts,hipe,dialyzer: Fix hipe checkum of target runtime system
erts: Change THE_NON_VALUE to not be hard coded in hipe compiler
OTP-12962
OTP-12963
OTP-12964
|
|
Main problem:
A faulty HIPE_LITERAL_CRC was not detected by the loader.
Strangeness #1:
Dialyzer should ask the hipe compiler about the target checksum,
not an internal bif.
Strangeness #2:
The HIPE_SYSTEM_CRC checksum was based on the HIPE_LITERALS_CRC
checksum.
Solution:
New HIPE_ERTS_CHECKSUM which is an bxor of the two (now independent)
HIPE_LITERALS_CRC and HIPE_SYSTEM_CRC.
HIPE_LITERALS_CRC represents values that are assumed to stay constant
for different VM configurations of the same arch, and are therefor
hard coded into the hipe compiler.
HIPE_SYSTEM_CRC represents values that may differ between VM variants.
By default the hipe compiler asks the running VM for this checksum,
in order to create beam files for the same running VM.
The hipe compiler can be configured (with "make XCOMP=yes ...") to
create beam files for another VM variant, in which case HIPE_SYSTEM_CRC
is also hard coded.
ToDo:
Treat all erts properties the same. Either ask the running VM or hard
coded into hipe (if XCOMP=yes). This will simplify and reduce the risk
of dangerous mismatches. One concern might be the added overhead
from more frequent calls to hipe_bifs:get_rts_param.
|
|
|