aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2019-01-17sys_core_inline: Kill *all* fun annotations when inliningBjörn Gustavsson
sys_core_inline didn't kill fun annotations in variables, which could lead to duplicated wrapper functions for funs. That was basically harmless because the duplicated functions were eventually discarded.
2019-01-17beam_ssa_type: Eliminate redundant 'succeeded' instructionsBjörn Gustavsson
The beam_ssa_type pass would leave redundant 'succeeded' instructions, and depend on the live optimization pass to remove them. Update beam_ssa_type to remove redundant 'succeeded' instructions. This will not improve the generated code, but will improve compilation times since it eliminates instructions and variables.
2019-01-17ssh: Adjust some calls to io:format()Hans Bolinder
2019-01-17xmerl: Adjust a call to io:format()Hans Bolinder
2019-01-17sasl: Adjust some calls to io:format()Hans Bolinder
2019-01-17common_test: Adjust some calls to io:format()Hans Bolinder
2019-01-17Move out helper functions to engine loopRaimo Niskanen
This strategy improves speed benchmarks and reduces the amount of garbage that is produced. More: * Handle transition options as loop function arguments instead of in a record. * Shorten the state_enter loop and make it more efficient by making it more part of the loop and less a loop restart. * Simplify the internal timeout action handling somewhat.
2019-01-17ssl: Correct 3des_ede_cbc checkIngela Anderton Andin
Could cause ssl to claim to support 3des_ede_cbc when cryptolib does not
2019-01-16Move optimizations of bs_put* instruction to beam_ssa_optBjörn Gustavsson
Do the optimizations of bs_put* instructions in beam_ssa_opt and remove the beam_bs pass. This can lead to a slight improvement of compilation times.
2019-01-16Refactor string operandsBjörn Gustavsson
There are two instructions that take string operands: {bs_put_string,Fail,NumberOfBytes,{string,String}} {bs_match_string,Fail,Register,NumberOfBits,{string,String}} In the canonical BEAM code that is passed to beam_asm, string String is currently represented as a list. (The string in bs_match_string is a bitstring before the beam_z compiler pass.) That is wasteful, because there will be unnecessary conversions between lists and binaries. Change the representation of String to be a binary. Furthermore, bs_put_string is an optimization of a bs_put_binary instruction with a literal binary operand. Currently, the bs_put_string instruction is introduced in beam_bs. Delay the introduction of bs_put_string to the beam_z pass. That will simplify optimizations and allow us to do the optimization currently done in beam_bs in a SSA pass in a future commit.
2019-01-16Move coalescing of bs_skip to beam_ssa_optBjörn Gustavsson
The optimization can be applied in a few more places if done before ssa_opt_bsm_shortcut (for example, in unicode:cbv/2).
2019-01-16[logger] Update bench marks to report percent instead of 0.XXSiri Hansen
Also remove some compiler warnings from test suite.
2019-01-16Merge branch 'maint'Björn Gustavsson
* maint: beam_type: Eliminate compiler crash when arithmetic expression fails Conflicts: lib/compiler/src/beam_type.erl
2019-01-16Merge branch 'bjorn/compiler/beam_type/ERL_829/OTP-15518' into maintBjörn Gustavsson
* bjorn/compiler/beam_type/ERL_829/OTP-15518: beam_type: Eliminate compiler crash when arithmetic expression fails
2019-01-16Merge branch 'maint'Rickard Green
* maint: Updated OTP version Prepare release
2019-01-16Merge branch 'maint-21' into maintRickard Green
* maint-21: Updated OTP version Prepare release
2019-01-16Merge pull request #2091 from bjorng/bjorn/compiler/beam_ssa_typeBjörn Gustavsson
Improve type optimizations
2019-01-16Merge branch 'maint'Ingela Anderton Andin
2019-01-16Merge branch 'ingela/ssl/test-cuddle' into maintIngela Anderton Andin
* ingela/ssl/test-cuddle: ssl: Cuddle tests
2019-01-16ssl: Cuddle testsIngela Anderton Andin
2019-01-16Merge branch 'maint'Hans Bolinder
* maint: syntax_tools: Fix pretty-printing of type funs
2019-01-16Merge branch 'hasse/syntax_tools/fun_types/ERL-815/OTP-15519' into maintHans Bolinder
* hasse/syntax_tools/fun_types/ERL-815/OTP-15519: syntax_tools: Fix pretty-printing of type funs
2019-01-16[logger] Minor fix in logger_olp_SUITE to avoid error in end_per_testcaseSiri Hansen
2019-01-16[logger] Remove info and reset functions from handler modulesSiri Hansen
These are not documented, and only used in test. The test now uses logger_olp directly instead.
2019-01-16[logger] Remove some unused variable warningsSiri Hansen
2019-01-16[logger] Store proxy config in logger ets tableSiri Hansen
This is to ensure that logger_proxy gets the same config after a restart.
2019-01-16[logger] Log mode change and flushes in logger_proxySiri Hansen
2019-01-16[logger] Move out overload protection macros from logger_h_common.hrlSiri Hansen
The new file logger_olp.hrl is added.
2019-01-16[logger] Allow logger_olp callbacks to return {stop,...}Siri Hansen
2019-01-16Add logger_stress_SUITE to benchmarks specSiri Hansen
2019-01-16[logger] Add idle timer in logger_olpSiri Hansen
2019-01-16[logger] Use persistent_term for storing proxy referenceSiri Hansen
2019-01-16[logger] Add test for restart of logger proxySiri Hansen
2019-01-16[logger] Add API function for configuring logger proxySiri Hansen
2019-01-16[logger] Add logger_stress_SUITESiri Hansen
2019-01-16[logger] Add tests for logger_proxySiri Hansen
2019-01-16[logger] Overload protect logging from erts and remote nodesSiri Hansen
2019-01-16[logger] Split overload protection functionality to own moduleSiri Hansen
2019-01-16Merge branch 'maint'Hans Bolinder
* maint: Fix erl_parse:af_constraint() Fix erl_parse:af_fun_type() Add literal character to erl_parse:abstract_type/0 type
2019-01-16Fix encrypt_config_file and decrypt_config_fileYakubovsky Dmitriy
Variable Key is the input parameter and it will never match to the "Key" result of make_crypto_key/1 In current case we'll always receive bad match when using encrypt_config_file and decrypt_config_file functions.
2019-01-16Merge pull request #2074 from gomoripeti/singleton_char_typeHans Bolinder
Fixes in erl_parse:abstract_type/0 type
2019-01-16Merge branch 'maint'Hans Bolinder
* maint: Fix sorting in lists.xml
2019-01-16Merge branch 'jfw7/stdlib/fix_doc_lists/PR-2049' into maintHans Bolinder
* jfw7/stdlib/fix_doc_lists/PR-2049: Fix sorting in lists.xml
2019-01-15Prepare releaseErlang/OTP
2019-01-15Merge branch 'john/erts/prim_file-init-restart/OTP-15495/ERL-821' into maint-21Erlang/OTP
* john/erts/prim_file-init-restart/OTP-15495/ERL-821: Remove an unused variable Spawn prim_file helper as a system process
2019-01-15Merge branch 'peterdmv/ssl/fix-srp-encode-decode/ERL-790/OTP-15477' into ↵Erlang/OTP
maint-21 * peterdmv/ssl/fix-srp-encode-decode/ERL-790/OTP-15477: ssl: Fix encoding/decoding of the SRP extension
2019-01-15Merge branch 'ingela/ssl/enhance-error-handling/OTP-15505' into maint-21Erlang/OTP
* ingela/ssl/enhance-error-handling/OTP-15505: ssl: Cuddle test cases ssl: Fix test case ssl: Fix two invalid gen_statem returns
2019-01-15Merge branch 'ingela/maint-21/active-once/ERL-371/OTP-15504' into maint-21Erlang/OTP
* ingela/maint-21/active-once/ERL-371/OTP-15504: ssl: Guarantee active once data delivery
2019-01-15Merge branch 'lars/xmerl/bug-in-detect-charset/OTP-15492' into maint-21Erlang/OTP
* lars/xmerl/bug-in-detect-charset/OTP-15492: [xmerl] Fix detect charset crash
2019-01-15Merge branch 'lukas/ssl/benchmark_basic_test'Lukas Larsson
* lukas/ssl/benchmark_basic_test: inets: Decrease benchmark TC timeout inets: Fix crypto:rand_bytes usage in benchmarks ssl: Only run a basic fast test in test cycle