aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2015-11-17Add the BIF size_shared/1 and debug cleanupNikolaos S. Papaspyrou
2015-11-17Add all the main machineryNikolaos S. Papaspyrou
Add functions size_shared, copy_shared_calculate and copy_shared_perform. Add the infrastructure for making these communicate with each other. Add debug information to other places in the VM, to watch interaction with the sharing-preserving copy. CAUTION: If you define the SHCOPY_DEBUG macro (after SHCOPY is actually used in the VM) and make the whole OTP, there will be a lot of debugging messages during make (it will also be enabled in erlc). You have been warned...
2015-11-16An implementation of lightweight unbounded queuesNikolaos S. Papaspyrou
2015-11-16Update primary bootstrapBjörn Gustavsson
2015-11-16Merge branch 'bjorn/cleanup'Björn Gustavsson
* bjorn/cleanup: beam_validator: Don't allow an 'undefined' entry label in a function beam_validator: Remove obsolete DEBUG support v3_kernel: Speed up compilation of modules with many funs beam_dict: Speed up storage of funs beam_asm: Speed up assembly for modules with many exports sys_core_dsetel: Use a map instead of a dict sys_pre_expand: Cover coerce_to_float/2 Cover code for callbacks in sys_pre_expand Cover sys_pre_expand:pattern/2 sys_pre_expand: Remove uncovered clause in pat_bit_size/2 sys_pre_expand: Clean up data structures sys_pre_expand: Remove vestiges of variable usage tracking sys_pre_expand: Remove imports of ordsets functions sys_pre_expand: Remove unnecessary inclusion of erl_bits.hrl io: Make a fast code path for i/o requests
2015-11-16beam_validator: Don't allow an 'undefined' entry label in a functionBjörn Gustavsson
Before 912fea0b beam_validator could validate disassembled files. That's probably why the entry label was allowed to be 'undefined'.
2015-11-16beam_validator: Remove obsolete DEBUG supportBjörn Gustavsson
No one has used the debug support in many years. Also, the debug support is not free. There are calls to lists:foreach/2 that will be executed even when debug support is turned off.
2015-11-16Merge branch 'maint'Henrik Nord
2015-11-16Merge branch 'c-rack/fix-typo-prim-inet' into maintHenrik Nord
* c-rack/fix-typo-prim-inet: Fix minor typo "timout" -> "timeout"
2015-11-16Merge branch 'zenhack/fix-erroneous-__uint32_t' into maintHenrik Nord
* zenhack/fix-erroneous-__uint32_t: Fix erroneous use of __uint32_t OTP-13105
2015-11-16Merge branch 'deadok22/jinterface-input-stream-read-any-etf-113' into maintHenrik Nord
* deadok22/jinterface-input-stream-read-any-etf-113: OtpInputStream: external fun terms in read_any() OTP-13106
2015-11-16Merge branch 'legoscia/erl-make-exit-code' into maintHenrik Nord
* legoscia/erl-make-exit-code: Make erl -make return non-zero exit code on failure OTP-13107
2015-11-16Merge branch 'kanatohodets/ssh-subsystem-typo' into maintHenrik Nord
* kanatohodets/ssh-subsystem-typo: Fix spelling of ssh 'subsystem' OTP-13108
2015-11-16Merge branch 'lucafavatella/dialyzer-remote-type'Henrik Nord
* lucafavatella/dialyzer-remote-type: Delete remote types-related dead code in erl_types OTP-13104
2015-11-13Merge branch 'maint'Zandra
2015-11-13Merge branch 'zandra/snmp-appup' into maintZandra
* zandra/snmp-appup: add a soft upgrade instruction to the snmp appup
2015-11-13Merge branch 'maint'Zandra
2015-11-13Merge branch 'zhird/johnheizenberg/snmp_config_check_imask_bugfix' into maintZandra
* zhird/johnheizenberg/snmp_config_check_imask_bugfix: fix snmp_conf check imask bug OTP-13101
2015-11-13Merge branch 'maint'Zandra
Conflicts: OTP_VERSION
2015-11-13Merge branch 'maint-18' into maintZandra
2015-11-13Merge branch 'rickard/l2b-b2l-yield/OTP-13096'Rickard Green
* rickard/l2b-b2l-yield/OTP-13096: Improve yield strategy for list_to_binary()/binary_to_list()
2015-11-13Merge branch 'rickard/gc-bump-reds/OTP-13097'Rickard Green
* rickard/gc-bump-reds/OTP-13097: Bump reductions on GC
2015-11-13Merge branch 'rickard/gc-after-bif-cond/OTP-13098'Rickard Green
* rickard/gc-after-bif-cond/OTP-13098: Use the same conditions when triggering GC after BIF
2015-11-12Merge branch 'rickard/ohmq/OTP-13047'Rickard Green
* rickard/ohmq/OTP-13047: Fragmented young heap generation and off_heap_message_queue option Refactor GC Introduce literal tag Conflicts: erts/doc/src/erlang.xml erts/emulator/beam/erl_gc.c
2015-11-12Merge branch 'sverk/literal-memory-range'Rickard Green
* sverk/literal-memory-range: erts: Refactor line table in loaded beam code erts: Refactor header of loaded beam code fix check_process_code for separate literal area erts: Add support for fast erts_is_literal() erts: Refactor erl_mmap to allow several mapper instances erts: Add new allocator LITERAL erts: Fix strangeness in treatment of MSEG_ALIGN_BITS erts: Cleanup main carrier creation erts: Remove unused erts_have_erts_mmap erts: Refactor config test for posix_memalign
2015-11-12Improve yield strategy for list_to_binary()/binary_to_list()Rickard Green
Avoid yield in the BIF when input is small. This either yielding before beginning to work in the BIF, or by allowing some more reductions before yielding.
2015-11-12Bump reductions on GCRickard Green
2015-11-12Use the same conditions when triggering GC after BIFRickard Green
2015-11-12Fragmented young heap generation and off_heap_message_queue optionRickard Green
* The youngest generation of the heap can now consist of multiple blocks. Heap fragments and message fragments are added to the youngest generation when needed without triggering a GC. After a GC the youngest generation is contained in one single block. * The off_heap_message_queue process flag has been added. When enabled all message data in the queue is kept off heap. When a message is selected from the queue, the message fragment (or heap fragment) containing the actual message is attached to the youngest generation. Messages stored off heap is not part of GC.
2015-11-12erts: Refactor line table in loaded beam codeSverker Eriksson
to use real C struct with correct types
2015-11-12Refactor GCRickard Green
2015-11-12erts: Refactor header of loaded beam codeSverker Eriksson
to use a real C struct instead of array.
2015-11-12Introduce literal tagRickard Green
2015-11-12fix check_process_code for separate literal areaSverker Eriksson
2015-11-12erts: Add support for fast erts_is_literal()Sverker Eriksson
2015-11-12erts: Refactor erl_mmap to allow several mapper instancesSverker Eriksson
2015-11-12Updated OTP versionOTP-18.1.4Erlang/OTP
2015-11-12Update release notesErlang/OTP
2015-11-12Merge branch ↵Erlang/OTP
'ia/maint-18/inets/httpd-chunk-length-handling/OTP-13061/nodelay/OTP-13062' into maint-18 * ia/maint-18/inets/httpd-chunk-length-handling/OTP-13061/nodelay/OTP-13062: inets: Prepare for release inets: Do not use internal or shell convenience functions in application Inets: Clean up code inets: httpd - Add possibility to specify socket options for HTTP inets: Remove debug macros that mimic call trace inets: Improve max header size handling inets: CT'ify http_format_SUITE inets: Terminate gracfully when an invalid chunked length header is encountered
2015-11-11Merge branch 'maint'Hans Nilsson
* maint: ssh: add better error handling in ssh_file
2015-11-11Merge branch 'hans/ssh/knownhost_loss/OTP-12699' into maintHans Nilsson
* hans/ssh/knownhost_loss/OTP-12699: ssh: add better error handling in ssh_file
2015-11-11Merge branch 'maint'Henrik Nord
2015-11-11Merge branch 'henrik/epmd-ctime' into maintHenrik Nord
* henrik/epmd-ctime: add missing time.h OTP-13095
2015-11-11Merge branch 'gomoripeti/tracedoc_fix' into maintHenrik Nord
* gomoripeti/tracedoc_fix: Fix typo in trace gc_start doc OTP-13094
2015-11-11Merge branch 'legoscia/patch-2' into maintHenrik Nord
* legoscia/patch-2: Remove mention of erlang:fault
2015-11-11inets: Prepare for releaseIngela Anderton Andin
2015-11-11Merge branch 'maint'Henrik Nord
2015-11-11Merge branch 'scrapinghub/not_streamed_once' into maintHenrik Nord
* scrapinghub/not_streamed_once: inets: fix {self, once} for not streamed request inets: send correct nonstreamed response with streaming OTP-13093
2015-11-11inets: Do not use internal or shell convenience functions in applicationIngela Anderton Andin
ssl:start/[1,2] is a shell convenience function and should not be called by other applications. inet_db:start is an internal function that we should not have to call. This was done for legacy reasons and is no longer needed.
2015-11-11Inets: Clean up codeIngela Anderton Andin
Remove point less instructions looking for return values, that in most cases no long exist, of which the result would anyhow be ignored