aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2017-02-28erts: Convert small sub-binaries to heap-binariesBjörn-Egil Dahlberg
In many cases sub-binaries costs more memory than converting them to heap-binaries. Sub-binaries also has a hidden cost of pinning larger binaries in memory. By converting binaries this cost is reduced. Byte aligned sub-binaries upto 24 bytes (64-bit) or 12 bytes (32-bit) are converted.
2017-02-27Merge branch 'egil/pretty-print-maps-smaller/OTP-14239'Björn-Egil Dahlberg
* egil/pretty-print-maps-smaller/OTP-14239: stdlib: Use erts_internal:maps_to_list/2 in io_lib_pretty Update preloaded erts_internal.beam erts: Test erts_internal:maps_to_list/2 erts: Introduce erts_internal:maps_to_list/2
2017-02-24Merge pull request PR-1348 OTP-14238 from margnus1/drop-old-llvmSverker Eriksson
ErLLVM: Drop support for LLVM<3.9 in R20
2017-02-23Merge branch 'sverker/enif_select/OTP-13684'Sverker Eriksson
* sverker/enif_select: (31 commits) Remove debug printout and comment Fix nif_SUITE:select for old linux Add docs for enif_compare_monitors and ErlNifMonitor Fix ErlNifMonitor handling Remove faulty debug ASSERT erts: Skip nif_SUITE:select on windows Fix enif_select for windows Fix whitebox monitor tests Fix erl_nif doc Expand nif_SUITE:monitor_frenzy to verify dtor calls Expand nif_SUITE:monitor_frenzy with binary_to_term erts: Avoid revival of dying resource by dec_term erts: Add enif_compare_monitors erts: Try fix enif_select for windows erts: Change return value for enif_select erts: Add pid argument to enif_select erts: Beautify enif_select erts: Fix bad_fd_in_pollset error case for enif_select erts: Add enif_monitor_process and enif_demonitor_process erts: Rename ErlNifResource as ErtsResource ...
2017-02-23Remove debug printout and commentSverker Eriksson
2017-02-23Merge branch 'maint'Sverker Eriksson
2017-02-23Merge branch 'sverker/include-module-literal-size/OTP-14228' into maintSverker Eriksson
again * sverker/include-module-literal-size: erts: Beautify loaded() erts: Fix literal size bug when only old instance exists
2017-02-23erts: Test erts_internal:maps_to_list/2Björn-Egil Dahlberg
2017-02-23erts: Introduce erts_internal:maps_to_list/2Björn-Egil Dahlberg
2017-02-22Fix nif_SUITE:select for old linuxSverker Eriksson
with pipe capacity equal to PIPE_BUF meaning pipe must be empty to be writable.
2017-02-22Merge branch 'maint'Lukas Larsson
2017-02-21erts: Beautify loaded()Sverker Eriksson
by removing some unnecessary conditions and remove unused and faulty summation for 'cur' and 'old'.
2017-02-21erts: Fix literal size bug when only old instance existsSverker Eriksson
fix for already merged but not releases 808b2f4d53e446aed07f85716c5c4b85abb3d18a
2017-02-21erts: Emasculate binaries that are scheduled in port_controlLukas Larsson
2017-02-20Fix ErlNifMonitor handlingSverker Eriksson
2017-02-20Remove faulty debug ASSERTSverker Eriksson
Why did I add that?
2017-02-20erts: Skip nif_SUITE:select on windowsSverker Eriksson
for now...
2017-02-20Fix enif_select for windowsSverker Eriksson
2017-02-20Fix whitebox monitor testsSverker Eriksson
2017-02-20Expand nif_SUITE:monitor_frenzy to verify dtor callsSverker Eriksson
2017-02-20Expand nif_SUITE:monitor_frenzy with binary_to_termSverker Eriksson
to provoke resource revival race.
2017-02-20erts: Avoid revival of dying resource by dec_termSverker Eriksson
2017-02-20Merge branch 'master' into sverker/enif_selectSverker Eriksson
Conflicts: erts/emulator/beam/erl_binary.h erts/emulator/beam/erl_monitors.c erts/emulator/beam/erl_nif.c erts/emulator/beam/global.h erts/emulator/test/nif_SUITE_data/nif_SUITE.c
2017-02-20erts: Add enif_compare_monitorsSverker Eriksson
# Conflicts: # erts/emulator/test/nif_SUITE_data/nif_SUITE.c
2017-02-20Merge branch 'rickard/magic-references-fixes'Sverker Eriksson
* rickard/magic-references-fixes: Fix driver monitor implementation Handle magic refs in db_cleanup_offheap_comp()
2017-02-20Fix driver monitor implementationRickard Green
2017-02-19erts: Drop workarounds for ErLLVM w/ LLVM < 3.9Magnus Lång
2017-02-17Teach make_preload to handle the new 'AtU8' chunkBjörn Gustavsson
26b59dfe67 introduced the new 'AtU8' chunk to support Unicode atoms. make_preload strips the pre-loaded BEAM files so that they only contain essential chunks. It expects to find the old 'Atom' chunk. Teach make_preload to read the new 'AtU8' chunk instead of the old chunk. Also produce a nice error message if someone by mistake compiles the pre-loaded modules with an OTP 19 compiler.
2017-02-16Handle magic refs in db_cleanup_offheap_comp()Rickard Green
2017-02-16Merge branch 'maint'Sverker Eriksson
2017-02-16Merge branch 'sverker/enif_send-noproc-fix/OTP-14229' into maintSverker Eriksson
* sverker/enif_send-noproc-fix: erts: Fix enif_send from noproc and no msg_env
2017-02-16Merge branch 'maint'Sverker Eriksson
2017-02-16Merge branch 'sverker/include-module-literal-size/OTP-14228' into maintSverker Eriksson
* sverker/include-module-literal-size: erts: Add size of literals to module code size
2017-02-16Merge branch 'maint' into 'master'Sverker Eriksson
2017-02-16Merge branch 'sverker/round-bug/OTP-14227' into maintSverker Eriksson
* sverker/round-bug/OTP-14227: erts: Fix round/1 for large floats
2017-02-15Merge branch 'fix-source-typos'Björn Gustavsson
* fix-source-typos: (25 commits) Fixed typos in system/doc Fixed typos in lib/xmerl Fixed typos in lib/wx Fixed typos in lib/stdlib Fixed typos in lib/snmp Fixed typos in lib/ssl Fixed typos in lib/ssh Fixed typos in PKCS-8.asn1 file Fixed typos in lib/parsetools Fixed typos in lib/orber Fixed typos in lib/mnesia Fixed typos in lib/megaco Fixed typos in lib/kernel Fixed typos in lib/jinterface Fixed typos in lib/inets Fixed typos in lib/hipe Fixed typos in lib/eunit Fixed typos in lib/erl_interface Fixed typos in lib/eldap Fixed typos in lib/edoc ...
2017-02-14erts: Add deallocation veto for magic destructorsSverker Eriksson
A magic destructor can return 0 and thereby take control and prolong the lifetime of a magic binary.
2017-02-14erts: Fix round/1 for large floatsSverker Eriksson
1> round(6209607916799025.0). 6209607916799026 Problem: Adding/subtracting 0.5 and large double floats between (1 bsl 52) and (1 bsl 53) does not give reliable results. Solution: Use round() function in math.h.
2017-02-14Fixed typos in ertsAndrew Dryga
2017-02-13Magic indirectionRickard Green
2017-02-09erts: Try fix enif_select for windowsSverker Eriksson
by simply disable "delayed deselect".
2017-02-09erts: Change return value for enif_selectSverker Eriksson
to negative int as error and positive as success.
2017-02-09erts: Add pid argument to enif_selectSverker Eriksson
2017-02-09erts: Beautify enif_selectSverker Eriksson
indentation and comments only
2017-02-09erts: Fix bad_fd_in_pollset error case for enif_selectSverker Eriksson
2017-02-09erts: Add enif_monitor_process and enif_demonitor_processSverker Eriksson
2017-02-08Merge branch 'maint'Raimo Niskanen
Conflicts: OTP_VERSION
2017-02-08Merge branch 'maint-19' into maintRaimo Niskanen
Conflicts: OTP_VERSION
2017-02-07Merge branch 'raimo/efile_drv-read_file-use-fstat/OTP-14184' into maint-19Erlang/OTP
* raimo/efile_drv-read_file-use-fstat/OTP-14184: Use fstat if it exists in efile_openfile
2017-02-07Merge branch 'sverker/bin2term-zlib-bug/ERL-340/OTP-14159' into maint-19Erlang/OTP
* sverker/bin2term-zlib-bug/ERL-340/OTP-14159: erts: Fix binary_to_term for compressed and zlib >= v1.2.9