aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-08-10Merge branch 'josevalim/large-binary-strings/PR-1131/OTP-13794'Björn Gustavsson
* josevalim/large-binary-strings/PR-1131/OTP-13794: Move expansion of strings in binaries to v3_core
2016-08-09Merge branch 'maint'Lukas Larsson
Conflicts: OTP_VERSION
2016-08-09Merge branch 'maint-19' into maintLukas Larsson
Conflicts: lib/ssl/src/ssl.appup.src
2016-08-08Updated OTP versionOTP-19.0.3Erlang/OTP
2016-08-08Prepare releaseErlang/OTP
2016-08-08Merge branch 'lukas/kernel/fix_os_cmd_background_compat/OTP-13741' into maint-19Erlang/OTP
* lukas/kernel/fix_os_cmd_background_compat/OTP-13741: kernel: Use ^D as eot for os:cmd on unix platforms
2016-08-08Merge branch 'raimo/ssl/version-selection/maint-19/OTP-13753' into maint-19Erlang/OTP
* raimo/ssl/version-selection/maint-19/OTP-13753: Improve version selection
2016-08-08Merge branch 'ingela/inets/mod_esi-handle-PUT-DELETE/OTP-13688' into maint-19Erlang/OTP
* ingela/inets/mod_esi-handle-PUT-DELETE/OTP-13688: inets: Prepare for release inets: Fix typo in doc inets: Add mod_esi test for PUT inets: Unify mod_esi "PUT" callback input inets: Add mod_esi support for PUT AND DELETE
2016-08-08kernel: Use ^D as eot for os:cmd on unix platformsLukas Larsson
This is needed as doing only an 'exit' will only exit the program, but any children started in the program that have stdout/stderr still open will keep the port open until they terminate. i.e. os:cmd("while true; do echo sleep 1; sleep 1; done&"). would block os:cmd forever because the while loop keeps its copies of stdout/stderr open forever. It could be argued that this is correct behaviour, and it is the way it works on windows, but changing this breaks backwards compatability for os:cmd which is not acceptable.
2016-08-08inets: Prepare for releaseIngela Anderton Andin
2016-08-08inets: Fix typo in docIngela Anderton Andin
2016-08-08inets: Add mod_esi test for PUTRaimo Niskanen
2016-08-08inets: Unify mod_esi "PUT" callback inputRaimo Niskanen
Change it to { Input :: string() | undefined, Body :: string() }
2016-08-08inets: Add mod_esi support for PUT AND DELETEIngela Anderton Andin
2016-08-08Merge branch 'maint'Raimo Niskanen
2016-08-08Merge branch 'duncaen/crypto/fix-algo_cipher-array-size/PR-1140/OTP-13789' ↵Raimo Niskanen
into maint * duncaen/crypto/fix-algo_cipher-array-size/PR-1140/OTP-13789: Fix segfault in crypto by increasing algo_cipher array
2016-08-05Merge branch 'maint'Hans Nilsson
2016-08-05Merge branch 'maint-18' into maintHans Nilsson
Conflicts: OTP_VERSION lib/ssh/doc/src/notes.xml lib/ssh/test/ssh_sup_SUITE.erl lib/ssh/vsn.mk otp_versions.table
2016-08-05Merge branch 'maint'Björn Gustavsson
* maint: Update primary bootstrap beam_block: Fix potentially unsafe optimization in move_allocates/1
2016-08-05Update primary bootstrapBjörn Gustavsson
2016-08-05Merge branch 'bjorn/compiler/not_live/ERL-202/OTP-13780' into maintBjörn Gustavsson
* bjorn/compiler/not_live/ERL-202/OTP-13780: beam_block: Fix potentially unsafe optimization in move_allocates/1
2016-08-05beam_block: Fix potentially unsafe optimization in move_allocates/1Björn Gustavsson
beam_block has an optimization that only is safe when it is applied immediately after code generation. That is pointed out in a comment: NOTE: Moving allocation instructions is only safe because it is done immediately after code generation so that we KNOW that if {x,X} is initialized, all x registers with lower numbers are also initialized. That assumption may not be true after other optimizations, such as the beam_utils:live_opt/1 optimization. The new beam_reorder pass added in OTP 19 runs before beam_block. Therefore, the optimization is potentially unsafe. The optimization is also unsafe if compilation is started from assembly code in a .S file. Rewrite the optimization to make it safe. See the newly added comment for details. ERL-202
2016-08-05Merge branch 'maint'Björn Gustavsson
* maint: Improve format_warning/1 spec
2016-08-05Merge branch 'elbrujohalcon/dialyzer/fix-spec/PR-1134/OTP-13786' into maintBjörn Gustavsson
* elbrujohalcon/dialyzer/fix-spec/PR-1134/OTP-13786: Improve format_warning/1 spec
2016-08-04Updated OTP versionOTP-18.3.4.3Erlang/OTP
2016-08-04Update release notesErlang/OTP
2016-08-04Merge branch 'hans/ssh/sup_fix_ssh_supc_type/OTP-13782' into maint-18Erlang/OTP
* hans/ssh/sup_fix_ssh_supc_type/OTP-13782: ssh: update test suite for supervisors ssh: sshc_sup to use worker for ssh_con_handler ssh: update version number
2016-08-04ssh: update test suite for supervisorsHans Nilsson
2016-08-04ssh: sshc_sup to use worker for ssh_con_handlerLukas Larsson
2016-08-04ssh: update version numberHans Nilsson
2016-08-04Merge branch 'maint'Raimo Niskanen
2016-08-04Merge branch 'ellbee/odbc/configure-OS-X-El-Capitan/PR-1137/OTP-13781' into ↵Raimo Niskanen
maint * ellbee/odbc/configure-OS-X-El-Capitan/PR-1137/OTP-13781: Make ODBC configure handle OS X El Capitan
2016-08-04Move expansion of strings in binaries to v3_coreJosé Valim
This speeds up the compilation of binary literals with string values in them. For example, compiling a file with a ~340kB binary would yield the following times by the compiler: Compiling "foo" parse_module : 0.130 s 5327.6 kB transform_module : 0.000 s 5327.6 kB lint_module : 0.011 s 5327.8 kB expand_module : 0.508 s 71881.2 kB v3_core : 0.463 s 11.5 kB Notice the increase in memory and processing time in expand_module and v3_core. This happened because expand_module would expand the string in binaries into chars. For example, the binary <<"foo">>, which is represented as {bin, 1, [ {bin_element, 1, {string, 1, "foo"}, default, default} ]} would be converted to {bin, 1, [ {bin_element, 1, {char, 1, $f}, default, default}, {bin_element, 1, {char, 1, $o}, default, default}, {bin_element, 1, {char, 1, $o}, default, default} ]} However, v3_core would then traverse all of those characters and convert it into an actual binary, as it is a literal value. This patch addresses this issue by moving the expansion of string into chars to v3_core and only if a literal value cannot not be built. This reduces the compilation time of the file mentioned above to the values below: Compiling "bar" parse_module : 0.134 s 5327.6 kB transform_module : 0.000 s 5327.6 kB lint_module : 0.005 s 5327.8 kB expand_module : 0.000 s 5328.7 kB v3_core : 0.013 s 11.2 kB
2016-08-03Fix segfault in crypto by increasing algo_cipher arrayDuncaen
2016-08-02Merge branch 'maint'Raimo Niskanen
2016-08-02Merge branch 'efine/inets/validate-inet6fb4/ERL-200/PR-1132/OTP-13776' into ↵Raimo Niskanen
maint * efine/inets/validate-inet6fb4/ERL-200/PR-1132/OTP-13776: Test inet6fb4 in basic suite Actually verify result of testcase Fix inets_sup_SUITE for local tests Add test for inet6fb4 validation Fix httpd_conf:validate_properties/1 for ipfamily
2016-08-01Merge branch 'maint'Björn-Egil Dahlberg
2016-08-01Merge branch 'comtihon/fprof/fix-gc-tags/PR-1136/OTP-13778' into maintBjörn-Egil Dahlberg
* comtihon/fprof/fix-gc-tags/PR-1136/OTP-13778: fix gc_start\end bug
2016-08-01Merge branch 'maint'Raimo Niskanen
2016-08-01Merge branch 'raimo/erts/prim_inet-unknown-address-families/OTP-13775' into ↵Raimo Niskanen
maint * raimo/erts/prim_inet-unknown-address-families/OTP-13775: Handle AF_UNSPEC and AF_UNDEFINED correctly
2016-08-01Merge branch 'raimo/SCTP-socket-stats/ERL-102/OTP-13773' into maintRaimo Niskanen
* raimo/SCTP-socket-stats/ERL-102/OTP-13773: Fix SCTP send stats in inet_drv Test inet:getstat/1 dead for SCTP send Fix test suite compilation warnings
2016-08-01Merge branch 'egil/erts/dont-copy-literals/OTP-13529'Björn-Egil Dahlberg
* egil/erts/dont-copy-literals/OTP-13529: erts: Refactor literal purge area arguments erts: No need to literal opt message token erts: Don't copy literals in enif_send erts: Fix literal size calculation in check_process_code erts: Remove the need for copying of literals
2016-08-01erts: Refactor literal purge area argumentsBjörn-Egil Dahlberg
2016-08-01erts: No need to literal opt message tokenBjörn-Egil Dahlberg
2016-08-01erts: Don't copy literals in enif_sendBjörn-Egil Dahlberg
2016-08-01erts: Fix literal size calculation in check_process_codeBjörn-Egil Dahlberg
We want to know the total size of literals of all heap fragmens.
2016-08-01erts: Remove the need for copying of literalsBjörn-Egil Dahlberg
* Literals are not copied between processes for messages or spawn Increases performance of message sent and processes spawned when literals are involved in messages or arguments.
2016-08-01Test inet6fb4 in basic suiteRaimo Niskanen
2016-07-29Make ODBC configure handle OS X El CapitanLee Bannard
Change ODBC configure.in script to recognize OS X El Capitan (Darwin v15.x)
2016-07-29Actually verify result of testcaseRaimo Niskanen