Age | Commit message (Collapse) | Author |
|
* bjorn/kernel/code-loading:
kernel application: Start code server first
code: Reduce overhead of native code checking for loaded modules
|
|
* bjorn/debugger:
debugger: Optimize evaluation of new map creation
dbg_iload: Correct translation of generators
debugger test suite: Scale down t_frequency_table/1
|
|
When the code server has started, it will read the .beam files
for all loaded modules to see whether they contain native code
that should be loaded. To make that as fast as possible when
we have no native code, start the code server as early as possible
to minimize the number .beam files that must be read from disk.
The code server does not use the 'file' module, so it is OK to
start the code server before starting the file_server process.
On my computer, the time for checking the loaded modules for
native code is reduced from roughly 2 ms to 1.5 ms.
|
|
When the code server has been started, the function
load_native_code_for_all_loaded/0 will check whether the .beam
files for all loaded modules contain any native code. If there
is native code, it will be loaded.
If there is no native code, on my computer the check will take about
10 ms. That time can be reduced to about 2 ms if we replace the call
to code beam_lib:chunks/2 with a call to prim_file:read_file/1 to read
the file and a call to code:get_chunk/2 to check whether the chunk for
native code is present.
Furthermore, the entire check can be spawned off to a separate
process and done in parallel with OTP starting up.
|
|
* egil/fix-tmp-alloc-fd-async/OTP-12710:
erts: Use a lockable allocator on 'sys_write_buf'
|
|
* egil/strengthen-dialyzer-tests:
dialyzer: Strengthen maps tests
|
|
OTP-12708
|
|
* ia/ssh/docs:
ssh: No description in v-tag
ssh: Fix missed alphabetic ordering and indentation
ssh: Use correct ASCII char for quote
ssh: Fix links
|
|
|
|
|
|
|
|
|
|
* joudinet/fix-ac-egrep-cpp-usage:
erts: Fix incorrect use of AC_EGREP_CPP
OTP-12706
|
|
* dgud/wx/event-additions/OTP-12660:
wx: Add missing data in events
|
|
Some events where missing useful information.
May require user code recompilation, since some records in wx.hrl
have chnaged it's definition.
|
|
* dgud/wx/optimize-queues:
wx: Fix delete object
wx: Optimize command queues
wx: Optimize OpenGL invocations
|
|
delete_object used a deleted reference
|
|
Remove allocations
|
|
* erland/OTP18/inets/time_dialyzer/OTP-12441:
inets: Remove dialyzer warning for inets_lib
|
|
sys_write_buf allocator type is used from async-threads and needs
to be lockable. In the SMP case the temporary allocator is lockable but
not in the Non-SMP case.
To remedy this the binary-allocator is used for the Non-SMP case,
which is lockable.
|
|
* peppe/add_obsolete_app_warnings:
Declare webtool and test_server as obsolete
OTP-10922
OTP-10923
|
|
* peppe/common_test/ct_telnet_modifications:
Set TCP option {nodelay,true} as default for telnet connections
Increase speed of keep_alive (NOP) polls
OTP-12678
|
|
* peppe/jcl_mode_improvements:
Fix problem with unitialized edlin text buffer
Fix shell crash when in switch command mode
OTP-12673
|
|
* origin/peppe/common_test/ct_gen_conn_problem:
Improve code
OTP-10365
|
|
'origin/peppe/common_test/improve_suite_error_reports'
* origin/peppe/common_test/improve_suite_error_reports:
Add missing events and hook function calls
Improve error reports in log when suite compilation fails
OTP-10816
|
|
* origin/peppe/common_test/test_categories:
Reintroduce functions for backwards compatibility
Update handling of failing all/0 function in test suites
Add tests for the get_testspec_terms functionality
Introduce test categories for OTP tests
OTP-11962
|
|
* origin/peppe/common_test/remove_old_scripts:
Remove obsolete installation scripts and update documentation
OTP-12421
|
|
* ia/ssl/docs:
ssl: Add missing tag
ssl: Put back marker
ssl: Fix links
ssl: Align with application naming rules
ssl: Keep information in one place only
ssl: Correct makefile
|
|
|
|
* ia/ssh/test-openssh-cuddle:
ssh: Add openSSH interop check
|
|
|
|
* hans/ssh/rekey/OTP-12692:
ssh: Fix bug causing rekeying once per minute after 1st Gbyte Thanks Simon
|
|
The port stats are not accumulated so that once rekey_limit bytes
(by default, 1GB) have been transmitted the connection will be
rekeyed every minute, not after the next 1GB.
|
|
|
|
Make sure that we recognize map literals at load time, as we
do for lists and tuples. Also use maps:from_list/1 to build
a new map instead of building it up from scratch inserting one
key/value pair at the time.
|
|
The pattern in the generator for a list or binary comprehension
was processed as an expression instead of as a pattern. That
happened to work because expressions and patterns were translated
in the same way.
In the future we might want to process expressions and patterns
differently.
|
|
t_frequency_table/1 would take about 40 seconds on my computer.
Scale down the number of iterations 100 times to speed it up.
The large number of iterations does not find any more bugs in
the debugger.
|
|
|
|
* hb/line_abstraction/OTP-12195: (21 commits)
Ensure that erl_anno is used when building the primary bootstrap
erl_docgen: Use module erl_anno
wx: Use module erl_anno
diameter: Use module erl_anno
dialyzer: Use module erl_anno
eunit: Use module erl_anno
hipe: Use module erl_anno
edoc: Use module erl_anno
syntax_tools: Use module erl_anno
test_server: Use module erl_anno
tools: Use module erl_anno
parsetools: Use module erl_anno
kernel: Use module erl_anno
asn1: Use module erl_anno
debugger: Use module erl_anno
stdlib: Silence some of qlc's warnings
stdlib: Use module erl_anno
compiler: Use module erl_anno
emulator: Use module erl_anno
Update primary bootstrap
...
|
|
As the erl_anno module is used by the compiler, it must be included
in the set of modules that are used when building the primary
bootstrap.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|