aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2016-10-12erts: Refactor out func_info into structLukas Larsson
This commit adds two new structs to be used to represent erlang code in erts. ErtsCodeInfo is used to describe the i_func_info header that is part of all Export entries and the prelude of each function. This replaces all the BeamInstr * that were previously used to point to these locations. After this change the code should never use BeamInstr * with offsets to figure out different parts of the func_info header. ErtsCodeMFA is a struct that is used to descripe a MFA in code. It is used within ErtsCodeInfo and also in Process->current. All function that previously took Eterm * or BeamInstr * to identify a MFA now use the ErtsCodeMFA or ErtsCodeInfo where appropriate. The code has been tested to work when adding a new field to the ErtsCodeInfo struct, but some updates are needed in ops.tab to make it work.
2016-10-03Merge branch 'maint'Lukas Larsson
2016-10-03Merge branch 'lukas/erts/bin_to_term_doc_example/PR-1181' into maintLukas Larsson
* lukas/erts/bin_to_term_doc_example/PR-1181: erts: Add examples to binary_to_term and term_to_binary
2016-10-03Merge branch 'maint'Lukas Larsson
2016-10-03Merge branch 'lukas/erts/fix_errno_name/OTP-13927' into maintLukas Larsson
* lukas/erts/fix_errno_name/OTP-13927: erts: Rename __errno in order to avoid conflict on openbsd
2016-09-29Merge branch 'maint'Rickard Green
* maint: Try to handle not yet available functionality in MacOSX SDK Check deployment target in configure on MacOSX Fix posix_memalign configure test
2016-09-29Merge branch 'rickard/macosx-config-mess/OTP-13904' into maintRickard Green
* rickard/macosx-config-mess/OTP-13904: Try to handle not yet available functionality in MacOSX SDK Check deployment target in configure on MacOSX Fix posix_memalign configure test
2016-09-29Merge branch 'maint'Siri Hansen
2016-09-28Document the order of directories added with code:add_pathsa/1Siri Hansen
code:add_pathsa/1 reverts the list of directories when adding it at the beginning of the code path. The command line option '-pa' behaves in the same way. This is now documented.
2016-09-28Try to handle not yet available functionality in MacOSX SDKRickard Green
2016-09-28Merge branch 'maint'Björn-Egil Dahlberg
2016-09-28Merge branch 'lucafavatella/erts/fix-typo-fp/PR-1177' into maintBjörn-Egil Dahlberg
* lucafavatella/erts/fix-typo-fp/PR-1177: Fix typo in configuration description
2016-09-27Merge branch 'maint'Sverker Eriksson
2016-09-27erts: Add examples to binary_to_term and term_to_binaryLukas Larsson
2016-09-27erts: Rename __errno in order to avoid conflict on openbsdLukas Larsson
2016-09-25Fix typo in configuration descriptionLuca Favatella
2016-09-23Merge branch 'sverker/remove-nif-reload/OTP-13908'Sverker Eriksson
* sverker/remove-nif-reload: erts: Cuddle nif_SUITE:consume_timeslice erts: Remove old doc note for erlang:load_nif erts: Remove deprecated nif 'reload' feature erts: Fix trace_nif_SUITE to load nif lib only once
2016-09-23Fix posix_memalign configure testRickard Green
2016-09-23erts: Make cerl -dump core work on macSverker Eriksson
2016-09-22Merge branch 'sverker/include-erl_nif/PR-1171'Sverker Eriksson
* sverker/include-erl_nif/PR-1171: Use more correct delimiters for erl_nif.h include
2016-09-22Merge branch 'maint'Sverker Eriksson
2016-09-21erts: Clearify run_erl docsSverker Eriksson
ERL-258
2016-09-21Merge branch 'sverker/ets-load-factor/OTP-13903'Sverker Eriksson
* sverker/ets-load-factor: erts: Unify reduction count for ets:select stdlib: Cuddle ets_SUITE for valgrind stdlib: Fix ets_SUITE:smp_select_delete erts: Tweak ets grow/shrink to keep up at contention erts: Fix ets_SUITE:memory erts: Suppress failed ETS memory checks erts: Reduce ets hash load factor erts: Enable a smaller first hash segment for ets erts: Redesign ets with separate segment tables erts: Remove unnecessary access of 'is_resizing' erts: Add ErtsSizeofMember macro erts: Add ErtsContainerStruct_ for array members
2016-09-21Merge tag 'OTP-19.1'Henrik Nord
=== OTP-19.1 === Changed Applications: - asn1-4.0.4 - common_test-1.12.3 - compiler-7.0.2 - crypto-3.7.1 - debugger-4.2.1 - dialyzer-3.0.2 - diameter-1.12.1 - edoc-0.8 - erl_docgen-0.6 - erl_interface-3.9.1 - erts-8.1 - eunit-2.3.1 - gs-1.6.2 - hipe-3.15.2 - ic-4.4.2 - inets-6.3.3 - jinterface-1.7.1 - kernel-5.1 - mnesia-4.14.1 - observer-2.2.2 - odbc-2.11.3 - parsetools-2.1.3 - reltool-0.7.2 - runtime_tools-1.10.1 - sasl-3.0.1 - snmp-5.2.4 - ssh-4.3.2 - ssl-8.0.2 - stdlib-3.1 - syntax_tools-2.1 - tools-2.8.6 - wx-1.7.1 - xmerl-1.3.12 Unchanged Applications: - cosEvent-2.2.1 - cosEventDomain-1.2.1 - cosFileTransfer-1.2.1 - cosNotification-1.2.2 - cosProperty-1.2.1 - cosTime-1.2.2 - cosTransactions-1.3.2 - eldap-1.2.2 - et-1.6 - megaco-3.18.1 - orber-3.8.2 - os_mon-2.4.1 - otp_mibs-1.1.1 - percept-0.9 - public_key-1.2 - typer-0.9.11 Conflicts: OTP_VERSION lib/gs/doc/src/notes.xml lib/gs/vsn.mk
2016-09-20Prepare releaseErlang/OTP
2016-09-19Use more correct delimiters for erl_nif.h includeTuncer Ayaz
Anywhere but the beam sources we shouldn't #include "erl_nif.h", because what "erl_nif.h" does is: (1) fail to find it outside of -I dirs, (2) then treat it as if it was written like <erl_nif.h>. Using <erl_nif.h> skips (1). More information can be found in 6.10.2 of the C standard. Because the examples use "erl_nif.h", NIF projects in the Erlang ecosystem copy this verbatim and make the same mistake.
2016-09-19erts: Unify reduction count for ets:selectSverker Eriksson
to be per object as the other select-variants and not per table slot.
2016-09-19erts: Tweak ets grow/shrink to keep up at contentionSverker Eriksson
2016-09-19erts: Fix ets_SUITE:memorySverker Eriksson
by simply asking for the size of struct ext_segtab
2016-09-19erts: Suppress failed ETS memory checksSverker Eriksson
due to the grow/shrink hysteresis of the meta tables
2016-09-19erts: Reduce ets hash load factorSverker Eriksson
for faster lookup/insert/delete at the expense of about one word per object.
2016-09-19erts: Enable a smaller first hash segment for etsSverker Eriksson
2016-09-19erts: Redesign ets with separate segment tablesSverker Eriksson
* Keep it simple(r) * To prepare for both dynamic sized segments and segtabs
2016-09-19erts: Remove unnecessary access of 'is_resizing'Sverker Eriksson
in tables without write_concurrency and remove it totally #ifndef ERTS_SMP
2016-09-19erts: Add ErtsSizeofMember macroSverker Eriksson
(in case it matters)
2016-09-19erts: Cuddle nif_SUITE:consume_timesliceSverker Eriksson
2016-09-19erts: Remove old doc note for erlang:load_nifSverker Eriksson
2016-09-19erts: Remove deprecated nif 'reload' featureSverker Eriksson
and instead let erlang:load_nif/2 return {error, {reload, _}} before even trying to load the library if a NIF library has already been successfully loaded for the calling module instance.
2016-09-15Merge branch 'maint'Raimo Niskanen
2016-09-15Merge branch 'raimo/diffserv-socket-option/OTP-13582' into maintRaimo Niskanen
* raimo/diffserv-socket-option/OTP-13582: Tune 'tclass' semantics Implement IPV6_TCLASS
2016-09-15erts: Fix trace_nif_SUITE to load nif lib only onceSverker Eriksson
2016-09-15Merge branch 'maint'Björn Gustavsson
* maint: erts: Add nif_SUITE:t_on_load erts: Improve nif_SUITE:upgrade test Don't leak old code when loading a modules with an on_load function Conflicts: erts/preloaded/ebin/erts_code_purger.beam erts/preloaded/ebin/erts_internal.beam erts/preloaded/src/erts_code_purger.erl
2016-09-15Merge branch 'bjorn/erts/on_load/ERL-240/OTP-13893' into maintBjörn Gustavsson
* bjorn/erts/on_load/ERL-240/OTP-13893: erts: Add nif_SUITE:t_on_load erts: Improve nif_SUITE:upgrade test Don't leak old code when loading a modules with an on_load function
2016-09-14Merge branch 'maint'Henrik Nord
Conflicts: OTP_VERSION
2016-09-14Merge branch 'maint-19' into maintHenrik Nord
2016-09-14Merge branch 'maint'Björn-Egil Dahlberg
2016-09-14Merge branch 'mcherep/erts/fix-doc-typo/PR-1165/OTP-13886' into maintBjörn-Egil Dahlberg
* mcherep/erts/fix-doc-typo/PR-1165/OTP-13886: Typo in documentation fixed
2016-09-14Prepare releaseErlang/OTP
2016-09-14Ensure we dont use an invalid live heap fragment pointerRickard Green
2016-09-14Update vheap size when moving msgq to heap after GCRickard Green